tinybase 6.0.0-beta.1 → 6.0.0-beta.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/@types/_internal/queries/with-schemas/index.d.cts +6 -6
- package/@types/_internal/queries/with-schemas/index.d.ts +6 -6
- package/@types/_internal/store/with-schemas/index.d.cts +1 -1
- package/@types/_internal/store/with-schemas/index.d.ts +1 -1
- package/@types/_internal/ui-react/with-schemas/index.d.cts +13 -13
- package/@types/_internal/ui-react/with-schemas/index.d.ts +13 -13
- package/@types/checkpoints/index.d.cts +0 -1
- package/@types/checkpoints/index.d.ts +0 -1
- package/@types/checkpoints/with-schemas/index.d.cts +0 -1
- package/@types/checkpoints/with-schemas/index.d.ts +0 -1
- package/@types/indexes/index.d.cts +1 -2
- package/@types/indexes/index.d.ts +1 -2
- package/@types/indexes/with-schemas/index.d.cts +6 -7
- package/@types/indexes/with-schemas/index.d.ts +6 -7
- package/@types/mergeable-store/index.d.cts +1 -2
- package/@types/mergeable-store/index.d.ts +1 -2
- package/@types/mergeable-store/with-schemas/index.d.cts +1 -2
- package/@types/mergeable-store/with-schemas/index.d.ts +1 -2
- package/@types/metrics/index.d.cts +1 -2
- package/@types/metrics/index.d.ts +1 -2
- package/@types/metrics/with-schemas/index.d.cts +1 -2
- package/@types/metrics/with-schemas/index.d.ts +1 -2
- package/@types/persisters/index.d.cts +22 -23
- package/@types/persisters/index.d.ts +22 -23
- package/@types/persisters/persister-automerge/index.d.cts +6 -7
- package/@types/persisters/persister-automerge/index.d.ts +6 -7
- package/@types/persisters/persister-automerge/with-schemas/index.d.cts +5 -6
- package/@types/persisters/persister-automerge/with-schemas/index.d.ts +5 -6
- package/@types/persisters/persister-browser/index.d.cts +5 -6
- package/@types/persisters/persister-browser/index.d.ts +5 -6
- package/@types/persisters/persister-browser/with-schemas/index.d.cts +5 -6
- package/@types/persisters/persister-browser/with-schemas/index.d.ts +5 -6
- package/@types/persisters/persister-cr-sqlite-wasm/index.d.cts +7 -8
- package/@types/persisters/persister-cr-sqlite-wasm/index.d.ts +7 -8
- package/@types/persisters/persister-cr-sqlite-wasm/with-schemas/index.d.cts +10 -11
- package/@types/persisters/persister-cr-sqlite-wasm/with-schemas/index.d.ts +10 -11
- package/@types/persisters/persister-durable-object-storage/index.d.cts +5 -6
- package/@types/persisters/persister-durable-object-storage/index.d.ts +5 -6
- package/@types/persisters/persister-durable-object-storage/with-schemas/index.d.cts +5 -6
- package/@types/persisters/persister-durable-object-storage/with-schemas/index.d.ts +5 -6
- package/@types/persisters/persister-electric-sql/index.d.cts +7 -8
- package/@types/persisters/persister-electric-sql/index.d.ts +7 -8
- package/@types/persisters/persister-electric-sql/with-schemas/index.d.cts +10 -11
- package/@types/persisters/persister-electric-sql/with-schemas/index.d.ts +10 -11
- package/@types/persisters/persister-expo-sqlite/index.d.cts +8 -9
- package/@types/persisters/persister-expo-sqlite/index.d.ts +8 -9
- package/@types/persisters/persister-expo-sqlite/with-schemas/index.d.cts +11 -12
- package/@types/persisters/persister-expo-sqlite/with-schemas/index.d.ts +11 -12
- package/@types/persisters/persister-file/index.d.cts +3 -4
- package/@types/persisters/persister-file/index.d.ts +3 -4
- package/@types/persisters/persister-file/with-schemas/index.d.cts +3 -4
- package/@types/persisters/persister-file/with-schemas/index.d.ts +3 -4
- package/@types/persisters/persister-indexed-db/index.d.cts +3 -4
- package/@types/persisters/persister-indexed-db/index.d.ts +3 -4
- package/@types/persisters/persister-indexed-db/with-schemas/index.d.cts +2 -3
- package/@types/persisters/persister-indexed-db/with-schemas/index.d.ts +2 -3
- package/@types/persisters/persister-libsql/index.d.cts +4 -5
- package/@types/persisters/persister-libsql/index.d.ts +4 -5
- package/@types/persisters/persister-libsql/with-schemas/index.d.cts +7 -8
- package/@types/persisters/persister-libsql/with-schemas/index.d.ts +7 -8
- package/@types/persisters/persister-partykit-client/index.d.cts +4 -5
- package/@types/persisters/persister-partykit-client/index.d.ts +4 -5
- package/@types/persisters/persister-partykit-client/with-schemas/index.d.cts +3 -4
- package/@types/persisters/persister-partykit-client/with-schemas/index.d.ts +3 -4
- package/@types/persisters/persister-partykit-server/index.d.cts +1 -2
- package/@types/persisters/persister-partykit-server/index.d.ts +1 -2
- package/@types/persisters/persister-partykit-server/with-schemas/index.d.cts +1 -2
- package/@types/persisters/persister-partykit-server/with-schemas/index.d.ts +1 -2
- package/@types/persisters/persister-pglite/index.d.cts +5 -6
- package/@types/persisters/persister-pglite/index.d.ts +5 -6
- package/@types/persisters/persister-pglite/with-schemas/index.d.cts +8 -9
- package/@types/persisters/persister-pglite/with-schemas/index.d.ts +8 -9
- package/@types/persisters/persister-postgres/index.d.cts +8 -9
- package/@types/persisters/persister-postgres/index.d.ts +8 -9
- package/@types/persisters/persister-postgres/with-schemas/index.d.cts +11 -12
- package/@types/persisters/persister-postgres/with-schemas/index.d.ts +11 -12
- package/@types/persisters/persister-powersync/index.d.cts +7 -8
- package/@types/persisters/persister-powersync/index.d.ts +7 -8
- package/@types/persisters/persister-powersync/with-schemas/index.d.cts +10 -11
- package/@types/persisters/persister-powersync/with-schemas/index.d.ts +10 -11
- package/@types/persisters/persister-remote/index.d.cts +3 -4
- package/@types/persisters/persister-remote/index.d.ts +3 -4
- package/@types/persisters/persister-remote/with-schemas/index.d.cts +2 -3
- package/@types/persisters/persister-remote/with-schemas/index.d.ts +2 -3
- package/@types/persisters/persister-sqlite-wasm/index.d.cts +7 -8
- package/@types/persisters/persister-sqlite-wasm/index.d.ts +7 -8
- package/@types/persisters/persister-sqlite-wasm/with-schemas/index.d.cts +11 -12
- package/@types/persisters/persister-sqlite-wasm/with-schemas/index.d.ts +11 -12
- package/@types/persisters/persister-sqlite3/index.d.cts +5 -6
- package/@types/persisters/persister-sqlite3/index.d.ts +5 -6
- package/@types/persisters/persister-sqlite3/with-schemas/index.d.cts +8 -9
- package/@types/persisters/persister-sqlite3/with-schemas/index.d.ts +8 -9
- package/@types/persisters/persister-yjs/index.d.cts +4 -5
- package/@types/persisters/persister-yjs/index.d.ts +4 -5
- package/@types/persisters/persister-yjs/with-schemas/index.d.cts +3 -4
- package/@types/persisters/persister-yjs/with-schemas/index.d.ts +3 -4
- package/@types/persisters/with-schemas/index.d.cts +26 -27
- package/@types/persisters/with-schemas/index.d.ts +26 -27
- package/@types/queries/index.d.cts +1 -2
- package/@types/queries/index.d.ts +1 -2
- package/@types/queries/with-schemas/index.d.cts +10 -11
- package/@types/queries/with-schemas/index.d.ts +10 -11
- package/@types/relationships/index.d.cts +25 -2
- package/@types/relationships/index.d.ts +25 -2
- package/@types/relationships/with-schemas/index.d.cts +25 -2
- package/@types/relationships/with-schemas/index.d.ts +25 -2
- package/@types/store/index.d.cts +1 -2
- package/@types/store/index.d.ts +1 -2
- package/@types/store/with-schemas/index.d.cts +0 -1
- package/@types/store/with-schemas/index.d.ts +0 -1
- package/@types/synchronizers/index.d.cts +6 -7
- package/@types/synchronizers/index.d.ts +6 -7
- package/@types/synchronizers/synchronizer-broadcast-channel/index.d.cts +3 -4
- package/@types/synchronizers/synchronizer-broadcast-channel/index.d.ts +3 -4
- package/@types/synchronizers/synchronizer-broadcast-channel/with-schemas/index.d.cts +3 -4
- package/@types/synchronizers/synchronizer-broadcast-channel/with-schemas/index.d.ts +3 -4
- package/@types/synchronizers/synchronizer-local/index.d.cts +2 -3
- package/@types/synchronizers/synchronizer-local/index.d.ts +2 -3
- package/@types/synchronizers/synchronizer-local/with-schemas/index.d.cts +2 -3
- package/@types/synchronizers/synchronizer-local/with-schemas/index.d.ts +2 -3
- package/@types/synchronizers/synchronizer-ws-client/index.d.cts +5 -6
- package/@types/synchronizers/synchronizer-ws-client/index.d.ts +5 -6
- package/@types/synchronizers/synchronizer-ws-client/with-schemas/index.d.cts +5 -6
- package/@types/synchronizers/synchronizer-ws-client/with-schemas/index.d.ts +5 -6
- package/@types/synchronizers/synchronizer-ws-server/index.d.cts +30 -32
- package/@types/synchronizers/synchronizer-ws-server/index.d.ts +30 -32
- package/@types/synchronizers/synchronizer-ws-server/with-schemas/index.d.cts +34 -36
- package/@types/synchronizers/synchronizer-ws-server/with-schemas/index.d.ts +34 -36
- package/@types/synchronizers/synchronizer-ws-server-durable-object/index.d.cts +2 -3
- package/@types/synchronizers/synchronizer-ws-server-durable-object/index.d.ts +2 -3
- package/@types/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.d.cts +6 -7
- package/@types/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.d.ts +6 -7
- package/@types/synchronizers/synchronizer-ws-server-simple/index.d.cts +4 -5
- package/@types/synchronizers/synchronizer-ws-server-simple/index.d.ts +4 -5
- package/@types/synchronizers/synchronizer-ws-server-simple/with-schemas/index.d.cts +4 -5
- package/@types/synchronizers/synchronizer-ws-server-simple/with-schemas/index.d.ts +4 -5
- package/@types/synchronizers/with-schemas/index.d.cts +10 -11
- package/@types/synchronizers/with-schemas/index.d.ts +10 -11
- package/@types/ui-react/index.d.cts +489 -490
- package/@types/ui-react/index.d.ts +489 -490
- package/@types/ui-react/with-schemas/index.d.cts +494 -495
- package/@types/ui-react/with-schemas/index.d.ts +494 -495
- package/@types/ui-react-dom/index.d.cts +39 -40
- package/@types/ui-react-dom/index.d.ts +39 -40
- package/@types/ui-react-dom/with-schemas/index.d.cts +39 -40
- package/@types/ui-react-dom/with-schemas/index.d.ts +39 -40
- package/@types/ui-react-inspector/index.d.cts +2 -3
- package/@types/ui-react-inspector/index.d.ts +2 -3
- package/@types/ui-react-inspector/with-schemas/index.d.cts +41 -42
- package/@types/ui-react-inspector/with-schemas/index.d.ts +41 -42
- package/checkpoints/index.js +9 -9
- package/checkpoints/with-schemas/index.js +9 -9
- package/index.js +110 -110
- package/indexes/index.js +3 -3
- package/indexes/with-schemas/index.js +3 -3
- package/mergeable-store/index.js +150 -150
- package/mergeable-store/with-schemas/index.js +150 -150
- package/metrics/index.js +3 -3
- package/metrics/with-schemas/index.js +3 -3
- package/min/checkpoints/index.js +1 -1
- package/min/checkpoints/index.js.gz +0 -0
- package/min/checkpoints/with-schemas/index.js +1 -1
- package/min/checkpoints/with-schemas/index.js.gz +0 -0
- package/min/index.js +1 -1
- package/min/index.js.gz +0 -0
- package/min/indexes/index.js +1 -1
- package/min/indexes/index.js.gz +0 -0
- package/min/indexes/with-schemas/index.js +1 -1
- package/min/indexes/with-schemas/index.js.gz +0 -0
- package/min/mergeable-store/index.js +1 -1
- package/min/mergeable-store/index.js.gz +0 -0
- package/min/mergeable-store/with-schemas/index.js +1 -1
- package/min/mergeable-store/with-schemas/index.js.gz +0 -0
- package/min/metrics/index.js +1 -1
- package/min/metrics/index.js.gz +0 -0
- package/min/metrics/with-schemas/index.js +1 -1
- package/min/metrics/with-schemas/index.js.gz +0 -0
- package/min/persisters/index.js +1 -1
- package/min/persisters/index.js.gz +0 -0
- package/min/persisters/persister-automerge/index.js +1 -1
- package/min/persisters/persister-automerge/index.js.gz +0 -0
- package/min/persisters/persister-automerge/with-schemas/index.js +1 -1
- package/min/persisters/persister-automerge/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-browser/index.js +1 -1
- package/min/persisters/persister-browser/index.js.gz +0 -0
- package/min/persisters/persister-browser/with-schemas/index.js +1 -1
- package/min/persisters/persister-browser/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-cr-sqlite-wasm/index.js +1 -1
- package/min/persisters/persister-cr-sqlite-wasm/index.js.gz +0 -0
- package/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +1 -1
- package/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-durable-object-storage/index.js +1 -1
- package/min/persisters/persister-durable-object-storage/index.js.gz +0 -0
- package/min/persisters/persister-durable-object-storage/with-schemas/index.js +1 -1
- package/min/persisters/persister-durable-object-storage/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-electric-sql/index.js +1 -1
- package/min/persisters/persister-electric-sql/index.js.gz +0 -0
- package/min/persisters/persister-electric-sql/with-schemas/index.js +1 -1
- package/min/persisters/persister-electric-sql/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-expo-sqlite/index.js +1 -1
- package/min/persisters/persister-expo-sqlite/index.js.gz +0 -0
- package/min/persisters/persister-expo-sqlite/with-schemas/index.js +1 -1
- package/min/persisters/persister-expo-sqlite/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-file/index.js +1 -1
- package/min/persisters/persister-file/index.js.gz +0 -0
- package/min/persisters/persister-file/with-schemas/index.js +1 -1
- package/min/persisters/persister-file/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-indexed-db/index.js +1 -1
- package/min/persisters/persister-indexed-db/index.js.gz +0 -0
- package/min/persisters/persister-indexed-db/with-schemas/index.js +1 -1
- package/min/persisters/persister-indexed-db/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-libsql/index.js +1 -1
- package/min/persisters/persister-libsql/index.js.gz +0 -0
- package/min/persisters/persister-libsql/with-schemas/index.js +1 -1
- package/min/persisters/persister-libsql/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-partykit-client/index.js +1 -1
- package/min/persisters/persister-partykit-client/index.js.gz +0 -0
- package/min/persisters/persister-partykit-client/with-schemas/index.js +1 -1
- package/min/persisters/persister-partykit-client/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-partykit-server/index.js +1 -1
- package/min/persisters/persister-partykit-server/index.js.gz +0 -0
- package/min/persisters/persister-partykit-server/with-schemas/index.js +1 -1
- package/min/persisters/persister-partykit-server/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-pglite/index.js +1 -1
- package/min/persisters/persister-pglite/index.js.gz +0 -0
- package/min/persisters/persister-pglite/with-schemas/index.js +1 -1
- package/min/persisters/persister-pglite/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-postgres/index.js +1 -1
- package/min/persisters/persister-postgres/index.js.gz +0 -0
- package/min/persisters/persister-postgres/with-schemas/index.js +1 -1
- package/min/persisters/persister-postgres/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-powersync/index.js +1 -1
- package/min/persisters/persister-powersync/index.js.gz +0 -0
- package/min/persisters/persister-powersync/with-schemas/index.js +1 -1
- package/min/persisters/persister-powersync/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-remote/index.js +1 -1
- package/min/persisters/persister-remote/index.js.gz +0 -0
- package/min/persisters/persister-remote/with-schemas/index.js +1 -1
- package/min/persisters/persister-remote/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-sqlite-wasm/index.js +1 -1
- package/min/persisters/persister-sqlite-wasm/index.js.gz +0 -0
- package/min/persisters/persister-sqlite-wasm/with-schemas/index.js +1 -1
- package/min/persisters/persister-sqlite-wasm/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-sqlite3/index.js +1 -1
- package/min/persisters/persister-sqlite3/index.js.gz +0 -0
- package/min/persisters/persister-sqlite3/with-schemas/index.js +1 -1
- package/min/persisters/persister-sqlite3/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-yjs/index.js +1 -1
- package/min/persisters/persister-yjs/index.js.gz +0 -0
- package/min/persisters/persister-yjs/with-schemas/index.js +1 -1
- package/min/persisters/persister-yjs/with-schemas/index.js.gz +0 -0
- package/min/persisters/with-schemas/index.js +1 -1
- package/min/persisters/with-schemas/index.js.gz +0 -0
- package/min/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/relationships/index.js +1 -1
- package/min/relationships/index.js.gz +0 -0
- package/min/relationships/with-schemas/index.js +1 -1
- package/min/relationships/with-schemas/index.js.gz +0 -0
- package/min/store/index.js +1 -1
- package/min/store/index.js.gz +0 -0
- package/min/store/with-schemas/index.js +1 -1
- package/min/store/with-schemas/index.js.gz +0 -0
- package/min/synchronizers/index.js +1 -1
- package/min/synchronizers/index.js.gz +0 -0
- package/min/synchronizers/synchronizer-broadcast-channel/index.js +1 -1
- package/min/synchronizers/synchronizer-broadcast-channel/index.js.gz +0 -0
- package/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +1 -1
- package/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js.gz +0 -0
- package/min/synchronizers/synchronizer-local/index.js +1 -1
- package/min/synchronizers/synchronizer-local/index.js.gz +0 -0
- package/min/synchronizers/synchronizer-local/with-schemas/index.js +1 -1
- package/min/synchronizers/synchronizer-local/with-schemas/index.js.gz +0 -0
- package/min/synchronizers/synchronizer-ws-client/index.js +1 -1
- package/min/synchronizers/synchronizer-ws-client/index.js.gz +0 -0
- package/min/synchronizers/synchronizer-ws-client/with-schemas/index.js +1 -1
- package/min/synchronizers/synchronizer-ws-client/with-schemas/index.js.gz +0 -0
- package/min/synchronizers/synchronizer-ws-server/index.js +1 -1
- package/min/synchronizers/synchronizer-ws-server/index.js.gz +0 -0
- package/min/synchronizers/synchronizer-ws-server/with-schemas/index.js +1 -1
- package/min/synchronizers/synchronizer-ws-server/with-schemas/index.js.gz +0 -0
- package/min/synchronizers/synchronizer-ws-server-durable-object/index.js +1 -1
- package/min/synchronizers/synchronizer-ws-server-durable-object/index.js.gz +0 -0
- package/min/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.js +1 -1
- package/min/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.js.gz +0 -0
- package/min/synchronizers/synchronizer-ws-server-simple/index.js +1 -1
- package/min/synchronizers/synchronizer-ws-server-simple/index.js.gz +0 -0
- package/min/synchronizers/synchronizer-ws-server-simple/with-schemas/index.js +1 -1
- package/min/synchronizers/synchronizer-ws-server-simple/with-schemas/index.js.gz +0 -0
- package/min/synchronizers/with-schemas/index.js +1 -1
- package/min/synchronizers/with-schemas/index.js.gz +0 -0
- package/min/ui-react/index.js +1 -1
- package/min/ui-react/index.js.gz +0 -0
- package/min/ui-react/with-schemas/index.js +1 -1
- package/min/ui-react/with-schemas/index.js.gz +0 -0
- package/min/ui-react-dom/index.js +1 -1
- package/min/ui-react-dom/index.js.gz +0 -0
- package/min/ui-react-dom/with-schemas/index.js +1 -1
- package/min/ui-react-dom/with-schemas/index.js.gz +0 -0
- package/min/ui-react-inspector/index.js +1 -1
- package/min/ui-react-inspector/index.js.gz +0 -0
- package/min/ui-react-inspector/with-schemas/index.js +1 -1
- package/min/ui-react-inspector/with-schemas/index.js.gz +0 -0
- package/min/with-schemas/index.js +1 -1
- package/min/with-schemas/index.js.gz +0 -0
- package/package.json +4 -44
- package/persisters/index.js +120 -120
- package/persisters/persister-automerge/index.js +8 -8
- package/persisters/persister-automerge/with-schemas/index.js +8 -8
- package/persisters/persister-browser/index.js +8 -8
- package/persisters/persister-browser/with-schemas/index.js +8 -8
- package/persisters/persister-cr-sqlite-wasm/index.js +119 -119
- package/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +119 -119
- package/persisters/persister-durable-object-storage/index.js +12 -12
- package/persisters/persister-durable-object-storage/with-schemas/index.js +12 -12
- package/persisters/persister-electric-sql/index.js +119 -119
- package/persisters/persister-electric-sql/with-schemas/index.js +119 -119
- package/persisters/persister-expo-sqlite/index.js +119 -119
- package/persisters/persister-expo-sqlite/with-schemas/index.js +119 -119
- package/persisters/persister-file/index.js +10 -10
- package/persisters/persister-file/with-schemas/index.js +10 -10
- package/persisters/persister-indexed-db/index.js +8 -8
- package/persisters/persister-indexed-db/with-schemas/index.js +8 -8
- package/persisters/persister-libsql/index.js +119 -119
- package/persisters/persister-libsql/with-schemas/index.js +119 -119
- package/persisters/persister-partykit-client/index.js +23 -23
- package/persisters/persister-partykit-client/with-schemas/index.js +23 -23
- package/persisters/persister-partykit-server/index.js +13 -9
- package/persisters/persister-partykit-server/with-schemas/index.js +13 -9
- package/persisters/persister-pglite/index.js +128 -128
- package/persisters/persister-pglite/with-schemas/index.js +128 -128
- package/persisters/persister-postgres/index.js +128 -128
- package/persisters/persister-postgres/with-schemas/index.js +128 -128
- package/persisters/persister-powersync/index.js +119 -119
- package/persisters/persister-powersync/with-schemas/index.js +119 -119
- package/persisters/persister-remote/index.js +8 -8
- package/persisters/persister-remote/with-schemas/index.js +8 -8
- package/persisters/persister-sqlite-wasm/index.js +119 -119
- package/persisters/persister-sqlite-wasm/with-schemas/index.js +119 -119
- package/persisters/persister-sqlite3/index.js +119 -119
- package/persisters/persister-sqlite3/with-schemas/index.js +119 -119
- package/persisters/persister-yjs/index.js +14 -14
- package/persisters/persister-yjs/with-schemas/index.js +14 -14
- package/persisters/with-schemas/index.js +120 -120
- package/queries/index.js +16 -16
- package/queries/with-schemas/index.js +16 -16
- package/readme.md +3 -22
- package/relationships/index.js +3 -3
- package/relationships/with-schemas/index.js +3 -3
- package/releases.md +6 -6
- package/store/index.js +43 -43
- package/store/with-schemas/index.js +43 -43
- package/synchronizers/index.js +31 -31
- package/synchronizers/synchronizer-broadcast-channel/index.js +31 -31
- package/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +31 -31
- package/synchronizers/synchronizer-local/index.js +31 -31
- package/synchronizers/synchronizer-local/with-schemas/index.js +31 -31
- package/synchronizers/synchronizer-ws-client/index.js +25 -25
- package/synchronizers/synchronizer-ws-client/with-schemas/index.js +25 -25
- package/synchronizers/synchronizer-ws-server/index.js +65 -65
- package/synchronizers/synchronizer-ws-server/with-schemas/index.js +65 -65
- package/synchronizers/synchronizer-ws-server-durable-object/index.js +25 -25
- package/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.js +25 -25
- package/synchronizers/synchronizer-ws-server-simple/index.js +3 -3
- package/synchronizers/synchronizer-ws-server-simple/with-schemas/index.js +3 -3
- package/synchronizers/with-schemas/index.js +31 -31
- package/ui-react/index.js +31 -34
- package/ui-react/with-schemas/index.js +31 -34
- package/ui-react-dom/index.js +24 -24
- package/ui-react-dom/with-schemas/index.js +24 -24
- package/ui-react-inspector/index.js +3066 -3067
- package/ui-react-inspector/with-schemas/index.js +3066 -3067
- package/with-schemas/index.js +110 -110
- package/@types/tools/index.d.cts +0 -588
- package/@types/tools/index.d.ts +0 -588
- package/@types/tools/with-schemas/index.d.cts +0 -599
- package/@types/tools/with-schemas/index.d.ts +0 -599
- package/cli/index.js +0 -93
- package/min/tools/index.js +0 -1
- package/min/tools/index.js.gz +0 -0
- package/min/tools/with-schemas/index.js +0 -1
- package/min/tools/with-schemas/index.js.gz +0 -0
- package/tools/index.js +0 -3301
- package/tools/with-schemas/index.js +0 -3301
package/persisters/index.js
CHANGED
|
@@ -34,6 +34,14 @@ const arrayClear = (array, to) => array.splice(0, to);
|
|
|
34
34
|
const arrayPush = (array, ...values) => array.push(...values);
|
|
35
35
|
const arrayShift = (array) => array.shift();
|
|
36
36
|
|
|
37
|
+
const collSize = (coll) => coll?.size ?? 0;
|
|
38
|
+
const collHas = (coll, keyOrValue) => coll?.has(keyOrValue) ?? false;
|
|
39
|
+
const collIsEmpty = (coll) => isUndefined(coll) || collSize(coll) == 0;
|
|
40
|
+
const collValues = (coll) => [...(coll?.values() ?? [])];
|
|
41
|
+
const collClear = (coll) => coll.clear();
|
|
42
|
+
const collForEach = (coll, cb) => coll?.forEach(cb);
|
|
43
|
+
const collDel = (coll, keyOrValue) => coll?.delete(keyOrValue);
|
|
44
|
+
|
|
37
45
|
const object = Object;
|
|
38
46
|
const getPrototypeOf = (obj) => object.getPrototypeOf(obj);
|
|
39
47
|
const objEntries = object.entries;
|
|
@@ -65,14 +73,6 @@ const objValues = (obj) => object.values(obj);
|
|
|
65
73
|
const objSize = (obj) => size(objIds(obj));
|
|
66
74
|
const objIsEmpty = (obj) => isObject(obj) && objSize(obj) == 0;
|
|
67
75
|
|
|
68
|
-
const collSize = (coll) => coll?.size ?? 0;
|
|
69
|
-
const collHas = (coll, keyOrValue) => coll?.has(keyOrValue) ?? false;
|
|
70
|
-
const collIsEmpty = (coll) => isUndefined(coll) || collSize(coll) == 0;
|
|
71
|
-
const collValues = (coll) => [...(coll?.values() ?? [])];
|
|
72
|
-
const collClear = (coll) => coll.clear();
|
|
73
|
-
const collForEach = (coll, cb) => coll?.forEach(cb);
|
|
74
|
-
const collDel = (coll, keyOrValue) => coll?.delete(keyOrValue);
|
|
75
|
-
|
|
76
76
|
const mapNew = (entries) => new Map(entries);
|
|
77
77
|
const mapGet = (map, key) => map?.get(key);
|
|
78
78
|
const mapMap = (coll, cb) =>
|
|
@@ -109,14 +109,6 @@ const visitTree = (node, path, ensureLeaf, pruneLeaf, p = 0) =>
|
|
|
109
109
|
},
|
|
110
110
|
);
|
|
111
111
|
|
|
112
|
-
const setNew = (entryOrEntries) =>
|
|
113
|
-
new Set(
|
|
114
|
-
isArray(entryOrEntries) || isUndefined(entryOrEntries)
|
|
115
|
-
? entryOrEntries
|
|
116
|
-
: [entryOrEntries],
|
|
117
|
-
);
|
|
118
|
-
const setAdd = (set, value) => set?.add(value);
|
|
119
|
-
|
|
120
112
|
const INTEGER = /^\d+$/;
|
|
121
113
|
const getPoolFunctions = () => {
|
|
122
114
|
const pool = [];
|
|
@@ -131,6 +123,14 @@ const getPoolFunctions = () => {
|
|
|
131
123
|
];
|
|
132
124
|
};
|
|
133
125
|
|
|
126
|
+
const setNew = (entryOrEntries) =>
|
|
127
|
+
new Set(
|
|
128
|
+
isArray(entryOrEntries) || isUndefined(entryOrEntries)
|
|
129
|
+
? entryOrEntries
|
|
130
|
+
: [entryOrEntries],
|
|
131
|
+
);
|
|
132
|
+
const setAdd = (set, value) => set?.add(value);
|
|
133
|
+
|
|
134
134
|
const getWildcardedLeaves = (deepIdSet, path = [EMPTY_STRING]) => {
|
|
135
135
|
const leaves = [];
|
|
136
136
|
const deep = (node, p) =>
|
|
@@ -463,6 +463,110 @@ const getPlaceholders = (array, offset = [1]) =>
|
|
|
463
463
|
COMMA,
|
|
464
464
|
);
|
|
465
465
|
|
|
466
|
+
const COLUMN_NAME = 'ColumnName';
|
|
467
|
+
const STORE = 'store';
|
|
468
|
+
const JSON$1 = 'json';
|
|
469
|
+
const STORE_TABLE_NAME = STORE + 'TableName';
|
|
470
|
+
const STORE_ID_COLUMN_NAME = STORE + 'Id' + COLUMN_NAME;
|
|
471
|
+
const STORE_COLUMN_NAME = STORE + COLUMN_NAME;
|
|
472
|
+
const AUTO_LOAD_INTERVAL_SECONDS = 'autoLoadIntervalSeconds';
|
|
473
|
+
const ROW_ID_COLUMN_NAME = 'rowId' + COLUMN_NAME;
|
|
474
|
+
const TABLE_ID = 'tableId';
|
|
475
|
+
const TABLE_NAME = 'tableName';
|
|
476
|
+
const DELETE_EMPTY_COLUMNS = 'deleteEmptyColumns';
|
|
477
|
+
const DELETE_EMPTY_TABLE = 'deleteEmptyTable';
|
|
478
|
+
const DEFAULT_CONFIG = {
|
|
479
|
+
mode: JSON$1,
|
|
480
|
+
[AUTO_LOAD_INTERVAL_SECONDS]: 1,
|
|
481
|
+
};
|
|
482
|
+
const DEFAULT_TABULAR_VALUES_CONFIG = {
|
|
483
|
+
load: 0,
|
|
484
|
+
save: 0,
|
|
485
|
+
[TABLE_NAME]: TINYBASE + '_values',
|
|
486
|
+
};
|
|
487
|
+
const getDefaultedConfig = (configOrStoreTableName) =>
|
|
488
|
+
objMerge(
|
|
489
|
+
DEFAULT_CONFIG,
|
|
490
|
+
isString(configOrStoreTableName)
|
|
491
|
+
? {[STORE_TABLE_NAME]: configOrStoreTableName}
|
|
492
|
+
: (configOrStoreTableName ?? {}),
|
|
493
|
+
);
|
|
494
|
+
const getDefaultedTabularConfigMap = (
|
|
495
|
+
configsObj,
|
|
496
|
+
defaultObj,
|
|
497
|
+
tableField,
|
|
498
|
+
exclude,
|
|
499
|
+
then,
|
|
500
|
+
) => {
|
|
501
|
+
const configMap = mapNew();
|
|
502
|
+
objMap(configsObj, (configObj, id) => {
|
|
503
|
+
const defaultedConfig = slice(
|
|
504
|
+
objValues(
|
|
505
|
+
objMerge(
|
|
506
|
+
defaultObj,
|
|
507
|
+
isString(configObj) ? {[tableField]: configObj} : configObj,
|
|
508
|
+
),
|
|
509
|
+
),
|
|
510
|
+
0,
|
|
511
|
+
objSize(defaultObj),
|
|
512
|
+
);
|
|
513
|
+
if (!isUndefined(defaultedConfig[0]) && !exclude(id, defaultedConfig[0])) {
|
|
514
|
+
then(id, defaultedConfig[0]);
|
|
515
|
+
mapSet(configMap, id, defaultedConfig);
|
|
516
|
+
}
|
|
517
|
+
});
|
|
518
|
+
return configMap;
|
|
519
|
+
};
|
|
520
|
+
const getConfigStructures = (configOrStoreTableName) => {
|
|
521
|
+
const config = getDefaultedConfig(configOrStoreTableName);
|
|
522
|
+
const autoLoadIntervalSeconds = config[AUTO_LOAD_INTERVAL_SECONDS];
|
|
523
|
+
if (config.mode == JSON$1) {
|
|
524
|
+
const storeTableName = config[STORE_TABLE_NAME] ?? TINYBASE;
|
|
525
|
+
return [
|
|
526
|
+
1,
|
|
527
|
+
autoLoadIntervalSeconds,
|
|
528
|
+
[
|
|
529
|
+
storeTableName,
|
|
530
|
+
config[STORE_ID_COLUMN_NAME] ?? DEFAULT_ROW_ID_COLUMN_NAME,
|
|
531
|
+
config[STORE_COLUMN_NAME] ?? STORE,
|
|
532
|
+
],
|
|
533
|
+
setNew(storeTableName),
|
|
534
|
+
];
|
|
535
|
+
}
|
|
536
|
+
const {tables: {load = {}, save = {}} = {}, values = {}} = config;
|
|
537
|
+
const valuesConfig = slice(
|
|
538
|
+
objValues(objMerge(DEFAULT_TABULAR_VALUES_CONFIG, values)),
|
|
539
|
+
0,
|
|
540
|
+
objSize(DEFAULT_TABULAR_VALUES_CONFIG),
|
|
541
|
+
);
|
|
542
|
+
const valuesTable = valuesConfig[2];
|
|
543
|
+
const managedTableNames = setNew(valuesTable);
|
|
544
|
+
const excludedTableNames = setNew(valuesTable);
|
|
545
|
+
const tabularConfig = [
|
|
546
|
+
getDefaultedTabularConfigMap(
|
|
547
|
+
load,
|
|
548
|
+
{[TABLE_ID]: null, [ROW_ID_COLUMN_NAME]: DEFAULT_ROW_ID_COLUMN_NAME},
|
|
549
|
+
TABLE_ID,
|
|
550
|
+
(tableName) => collHas(excludedTableNames, tableName),
|
|
551
|
+
(tableName) => setAdd(managedTableNames, tableName),
|
|
552
|
+
),
|
|
553
|
+
getDefaultedTabularConfigMap(
|
|
554
|
+
save,
|
|
555
|
+
{
|
|
556
|
+
[TABLE_NAME]: null,
|
|
557
|
+
[ROW_ID_COLUMN_NAME]: DEFAULT_ROW_ID_COLUMN_NAME,
|
|
558
|
+
[DELETE_EMPTY_COLUMNS]: 0,
|
|
559
|
+
[DELETE_EMPTY_TABLE]: 0,
|
|
560
|
+
},
|
|
561
|
+
TABLE_NAME,
|
|
562
|
+
(_, tableName) => collHas(excludedTableNames, tableName),
|
|
563
|
+
(_, tableName) => setAdd(managedTableNames, tableName),
|
|
564
|
+
),
|
|
565
|
+
valuesConfig,
|
|
566
|
+
];
|
|
567
|
+
return [0, autoLoadIntervalSeconds, tabularConfig, managedTableNames];
|
|
568
|
+
};
|
|
569
|
+
|
|
466
570
|
const jsonString = JSON.stringify;
|
|
467
571
|
const jsonParse = JSON.parse;
|
|
468
572
|
const jsonStringWithUndefined = (obj) =>
|
|
@@ -919,110 +1023,6 @@ const createTabularPersister = (
|
|
|
919
1023
|
return persister;
|
|
920
1024
|
};
|
|
921
1025
|
|
|
922
|
-
const COLUMN_NAME = 'ColumnName';
|
|
923
|
-
const STORE = 'store';
|
|
924
|
-
const JSON$1 = 'json';
|
|
925
|
-
const STORE_TABLE_NAME = STORE + 'TableName';
|
|
926
|
-
const STORE_ID_COLUMN_NAME = STORE + 'Id' + COLUMN_NAME;
|
|
927
|
-
const STORE_COLUMN_NAME = STORE + COLUMN_NAME;
|
|
928
|
-
const AUTO_LOAD_INTERVAL_SECONDS = 'autoLoadIntervalSeconds';
|
|
929
|
-
const ROW_ID_COLUMN_NAME = 'rowId' + COLUMN_NAME;
|
|
930
|
-
const TABLE_ID = 'tableId';
|
|
931
|
-
const TABLE_NAME = 'tableName';
|
|
932
|
-
const DELETE_EMPTY_COLUMNS = 'deleteEmptyColumns';
|
|
933
|
-
const DELETE_EMPTY_TABLE = 'deleteEmptyTable';
|
|
934
|
-
const DEFAULT_CONFIG = {
|
|
935
|
-
mode: JSON$1,
|
|
936
|
-
[AUTO_LOAD_INTERVAL_SECONDS]: 1,
|
|
937
|
-
};
|
|
938
|
-
const DEFAULT_TABULAR_VALUES_CONFIG = {
|
|
939
|
-
load: 0,
|
|
940
|
-
save: 0,
|
|
941
|
-
[TABLE_NAME]: TINYBASE + '_values',
|
|
942
|
-
};
|
|
943
|
-
const getDefaultedConfig = (configOrStoreTableName) =>
|
|
944
|
-
objMerge(
|
|
945
|
-
DEFAULT_CONFIG,
|
|
946
|
-
isString(configOrStoreTableName)
|
|
947
|
-
? {[STORE_TABLE_NAME]: configOrStoreTableName}
|
|
948
|
-
: (configOrStoreTableName ?? {}),
|
|
949
|
-
);
|
|
950
|
-
const getDefaultedTabularConfigMap = (
|
|
951
|
-
configsObj,
|
|
952
|
-
defaultObj,
|
|
953
|
-
tableField,
|
|
954
|
-
exclude,
|
|
955
|
-
then,
|
|
956
|
-
) => {
|
|
957
|
-
const configMap = mapNew();
|
|
958
|
-
objMap(configsObj, (configObj, id) => {
|
|
959
|
-
const defaultedConfig = slice(
|
|
960
|
-
objValues(
|
|
961
|
-
objMerge(
|
|
962
|
-
defaultObj,
|
|
963
|
-
isString(configObj) ? {[tableField]: configObj} : configObj,
|
|
964
|
-
),
|
|
965
|
-
),
|
|
966
|
-
0,
|
|
967
|
-
objSize(defaultObj),
|
|
968
|
-
);
|
|
969
|
-
if (!isUndefined(defaultedConfig[0]) && !exclude(id, defaultedConfig[0])) {
|
|
970
|
-
then(id, defaultedConfig[0]);
|
|
971
|
-
mapSet(configMap, id, defaultedConfig);
|
|
972
|
-
}
|
|
973
|
-
});
|
|
974
|
-
return configMap;
|
|
975
|
-
};
|
|
976
|
-
const getConfigStructures = (configOrStoreTableName) => {
|
|
977
|
-
const config = getDefaultedConfig(configOrStoreTableName);
|
|
978
|
-
const autoLoadIntervalSeconds = config[AUTO_LOAD_INTERVAL_SECONDS];
|
|
979
|
-
if (config.mode == JSON$1) {
|
|
980
|
-
const storeTableName = config[STORE_TABLE_NAME] ?? TINYBASE;
|
|
981
|
-
return [
|
|
982
|
-
1,
|
|
983
|
-
autoLoadIntervalSeconds,
|
|
984
|
-
[
|
|
985
|
-
storeTableName,
|
|
986
|
-
config[STORE_ID_COLUMN_NAME] ?? DEFAULT_ROW_ID_COLUMN_NAME,
|
|
987
|
-
config[STORE_COLUMN_NAME] ?? STORE,
|
|
988
|
-
],
|
|
989
|
-
setNew(storeTableName),
|
|
990
|
-
];
|
|
991
|
-
}
|
|
992
|
-
const {tables: {load = {}, save = {}} = {}, values = {}} = config;
|
|
993
|
-
const valuesConfig = slice(
|
|
994
|
-
objValues(objMerge(DEFAULT_TABULAR_VALUES_CONFIG, values)),
|
|
995
|
-
0,
|
|
996
|
-
objSize(DEFAULT_TABULAR_VALUES_CONFIG),
|
|
997
|
-
);
|
|
998
|
-
const valuesTable = valuesConfig[2];
|
|
999
|
-
const managedTableNames = setNew(valuesTable);
|
|
1000
|
-
const excludedTableNames = setNew(valuesTable);
|
|
1001
|
-
const tabularConfig = [
|
|
1002
|
-
getDefaultedTabularConfigMap(
|
|
1003
|
-
load,
|
|
1004
|
-
{[TABLE_ID]: null, [ROW_ID_COLUMN_NAME]: DEFAULT_ROW_ID_COLUMN_NAME},
|
|
1005
|
-
TABLE_ID,
|
|
1006
|
-
(tableName) => collHas(excludedTableNames, tableName),
|
|
1007
|
-
(tableName) => setAdd(managedTableNames, tableName),
|
|
1008
|
-
),
|
|
1009
|
-
getDefaultedTabularConfigMap(
|
|
1010
|
-
save,
|
|
1011
|
-
{
|
|
1012
|
-
[TABLE_NAME]: null,
|
|
1013
|
-
[ROW_ID_COLUMN_NAME]: DEFAULT_ROW_ID_COLUMN_NAME,
|
|
1014
|
-
[DELETE_EMPTY_COLUMNS]: 0,
|
|
1015
|
-
[DELETE_EMPTY_TABLE]: 0,
|
|
1016
|
-
},
|
|
1017
|
-
TABLE_NAME,
|
|
1018
|
-
(_, tableName) => collHas(excludedTableNames, tableName),
|
|
1019
|
-
(_, tableName) => setAdd(managedTableNames, tableName),
|
|
1020
|
-
),
|
|
1021
|
-
valuesConfig,
|
|
1022
|
-
];
|
|
1023
|
-
return [0, autoLoadIntervalSeconds, tabularConfig, managedTableNames];
|
|
1024
|
-
};
|
|
1025
|
-
|
|
1026
1026
|
const createCustomSqlitePersister = (
|
|
1027
1027
|
store,
|
|
1028
1028
|
configOrStoreTableName,
|
|
@@ -93,14 +93,6 @@ const visitTree = (node, path, ensureLeaf, pruneLeaf, p = 0) =>
|
|
|
93
93
|
},
|
|
94
94
|
);
|
|
95
95
|
|
|
96
|
-
const setNew = (entryOrEntries) =>
|
|
97
|
-
new Set(
|
|
98
|
-
isArray(entryOrEntries) || isUndefined(entryOrEntries)
|
|
99
|
-
? entryOrEntries
|
|
100
|
-
: [entryOrEntries],
|
|
101
|
-
);
|
|
102
|
-
const setAdd = (set, value) => set?.add(value);
|
|
103
|
-
|
|
104
96
|
const INTEGER = /^\d+$/;
|
|
105
97
|
const getPoolFunctions = () => {
|
|
106
98
|
const pool = [];
|
|
@@ -115,6 +107,14 @@ const getPoolFunctions = () => {
|
|
|
115
107
|
];
|
|
116
108
|
};
|
|
117
109
|
|
|
110
|
+
const setNew = (entryOrEntries) =>
|
|
111
|
+
new Set(
|
|
112
|
+
isArray(entryOrEntries) || isUndefined(entryOrEntries)
|
|
113
|
+
? entryOrEntries
|
|
114
|
+
: [entryOrEntries],
|
|
115
|
+
);
|
|
116
|
+
const setAdd = (set, value) => set?.add(value);
|
|
117
|
+
|
|
118
118
|
const getWildcardedLeaves = (deepIdSet, path = [EMPTY_STRING]) => {
|
|
119
119
|
const leaves = [];
|
|
120
120
|
const deep = (node, p) =>
|
|
@@ -93,14 +93,6 @@ const visitTree = (node, path, ensureLeaf, pruneLeaf, p = 0) =>
|
|
|
93
93
|
},
|
|
94
94
|
);
|
|
95
95
|
|
|
96
|
-
const setNew = (entryOrEntries) =>
|
|
97
|
-
new Set(
|
|
98
|
-
isArray(entryOrEntries) || isUndefined(entryOrEntries)
|
|
99
|
-
? entryOrEntries
|
|
100
|
-
: [entryOrEntries],
|
|
101
|
-
);
|
|
102
|
-
const setAdd = (set, value) => set?.add(value);
|
|
103
|
-
|
|
104
96
|
const INTEGER = /^\d+$/;
|
|
105
97
|
const getPoolFunctions = () => {
|
|
106
98
|
const pool = [];
|
|
@@ -115,6 +107,14 @@ const getPoolFunctions = () => {
|
|
|
115
107
|
];
|
|
116
108
|
};
|
|
117
109
|
|
|
110
|
+
const setNew = (entryOrEntries) =>
|
|
111
|
+
new Set(
|
|
112
|
+
isArray(entryOrEntries) || isUndefined(entryOrEntries)
|
|
113
|
+
? entryOrEntries
|
|
114
|
+
: [entryOrEntries],
|
|
115
|
+
);
|
|
116
|
+
const setAdd = (set, value) => set?.add(value);
|
|
117
|
+
|
|
118
118
|
const getWildcardedLeaves = (deepIdSet, path = [EMPTY_STRING]) => {
|
|
119
119
|
const leaves = [];
|
|
120
120
|
const deep = (node, p) =>
|
|
@@ -83,14 +83,6 @@ const visitTree = (node, path, ensureLeaf, pruneLeaf, p = 0) =>
|
|
|
83
83
|
},
|
|
84
84
|
);
|
|
85
85
|
|
|
86
|
-
const setNew = (entryOrEntries) =>
|
|
87
|
-
new Set(
|
|
88
|
-
isArray(entryOrEntries) || isUndefined(entryOrEntries)
|
|
89
|
-
? entryOrEntries
|
|
90
|
-
: [entryOrEntries],
|
|
91
|
-
);
|
|
92
|
-
const setAdd = (set, value) => set?.add(value);
|
|
93
|
-
|
|
94
86
|
const INTEGER = /^\d+$/;
|
|
95
87
|
const getPoolFunctions = () => {
|
|
96
88
|
const pool = [];
|
|
@@ -105,6 +97,14 @@ const getPoolFunctions = () => {
|
|
|
105
97
|
];
|
|
106
98
|
};
|
|
107
99
|
|
|
100
|
+
const setNew = (entryOrEntries) =>
|
|
101
|
+
new Set(
|
|
102
|
+
isArray(entryOrEntries) || isUndefined(entryOrEntries)
|
|
103
|
+
? entryOrEntries
|
|
104
|
+
: [entryOrEntries],
|
|
105
|
+
);
|
|
106
|
+
const setAdd = (set, value) => set?.add(value);
|
|
107
|
+
|
|
108
108
|
const getWildcardedLeaves = (deepIdSet, path = [EMPTY_STRING]) => {
|
|
109
109
|
const leaves = [];
|
|
110
110
|
const deep = (node, p) =>
|
|
@@ -83,14 +83,6 @@ const visitTree = (node, path, ensureLeaf, pruneLeaf, p = 0) =>
|
|
|
83
83
|
},
|
|
84
84
|
);
|
|
85
85
|
|
|
86
|
-
const setNew = (entryOrEntries) =>
|
|
87
|
-
new Set(
|
|
88
|
-
isArray(entryOrEntries) || isUndefined(entryOrEntries)
|
|
89
|
-
? entryOrEntries
|
|
90
|
-
: [entryOrEntries],
|
|
91
|
-
);
|
|
92
|
-
const setAdd = (set, value) => set?.add(value);
|
|
93
|
-
|
|
94
86
|
const INTEGER = /^\d+$/;
|
|
95
87
|
const getPoolFunctions = () => {
|
|
96
88
|
const pool = [];
|
|
@@ -105,6 +97,14 @@ const getPoolFunctions = () => {
|
|
|
105
97
|
];
|
|
106
98
|
};
|
|
107
99
|
|
|
100
|
+
const setNew = (entryOrEntries) =>
|
|
101
|
+
new Set(
|
|
102
|
+
isArray(entryOrEntries) || isUndefined(entryOrEntries)
|
|
103
|
+
? entryOrEntries
|
|
104
|
+
: [entryOrEntries],
|
|
105
|
+
);
|
|
106
|
+
const setAdd = (set, value) => set?.add(value);
|
|
107
|
+
|
|
108
108
|
const getWildcardedLeaves = (deepIdSet, path = [EMPTY_STRING]) => {
|
|
109
109
|
const leaves = [];
|
|
110
110
|
const deep = (node, p) =>
|
|
@@ -33,6 +33,14 @@ const arrayClear = (array, to) => array.splice(0, to);
|
|
|
33
33
|
const arrayPush = (array, ...values) => array.push(...values);
|
|
34
34
|
const arrayShift = (array) => array.shift();
|
|
35
35
|
|
|
36
|
+
const collSize = (coll) => coll?.size ?? 0;
|
|
37
|
+
const collHas = (coll, keyOrValue) => coll?.has(keyOrValue) ?? false;
|
|
38
|
+
const collIsEmpty = (coll) => isUndefined(coll) || collSize(coll) == 0;
|
|
39
|
+
const collValues = (coll) => [...(coll?.values() ?? [])];
|
|
40
|
+
const collClear = (coll) => coll.clear();
|
|
41
|
+
const collForEach = (coll, cb) => coll?.forEach(cb);
|
|
42
|
+
const collDel = (coll, keyOrValue) => coll?.delete(keyOrValue);
|
|
43
|
+
|
|
36
44
|
const SINGLE_ROW_ID = '_';
|
|
37
45
|
const DEFAULT_ROW_ID_COLUMN_NAME = '_id';
|
|
38
46
|
const SELECT = 'SELECT';
|
|
@@ -62,14 +70,6 @@ const getPlaceholders = (array, offset = [1]) =>
|
|
|
62
70
|
COMMA,
|
|
63
71
|
);
|
|
64
72
|
|
|
65
|
-
const collSize = (coll) => coll?.size ?? 0;
|
|
66
|
-
const collHas = (coll, keyOrValue) => coll?.has(keyOrValue) ?? false;
|
|
67
|
-
const collIsEmpty = (coll) => isUndefined(coll) || collSize(coll) == 0;
|
|
68
|
-
const collValues = (coll) => [...(coll?.values() ?? [])];
|
|
69
|
-
const collClear = (coll) => coll.clear();
|
|
70
|
-
const collForEach = (coll, cb) => coll?.forEach(cb);
|
|
71
|
-
const collDel = (coll, keyOrValue) => coll?.delete(keyOrValue);
|
|
72
|
-
|
|
73
73
|
const object = Object;
|
|
74
74
|
const getPrototypeOf = (obj) => object.getPrototypeOf(obj);
|
|
75
75
|
const objEntries = object.entries;
|
|
@@ -101,13 +101,6 @@ const objValues = (obj) => object.values(obj);
|
|
|
101
101
|
const objSize = (obj) => size(objIds(obj));
|
|
102
102
|
const objIsEmpty = (obj) => isObject(obj) && objSize(obj) == 0;
|
|
103
103
|
|
|
104
|
-
const jsonString = JSON.stringify;
|
|
105
|
-
const jsonParse = JSON.parse;
|
|
106
|
-
const jsonStringWithUndefined = (obj) =>
|
|
107
|
-
jsonString(obj, (_key, value) => (value === void 0 ? UNDEFINED : value));
|
|
108
|
-
const jsonParseWithUndefined = (str) =>
|
|
109
|
-
jsonParse(str, (_key, value) => (value === UNDEFINED ? void 0 : value));
|
|
110
|
-
|
|
111
104
|
const mapNew = (entries) => new Map(entries);
|
|
112
105
|
const mapGet = (map, key) => map?.get(key);
|
|
113
106
|
const mapMap = (coll, cb) =>
|
|
@@ -152,6 +145,117 @@ const setNew = (entryOrEntries) =>
|
|
|
152
145
|
);
|
|
153
146
|
const setAdd = (set, value) => set?.add(value);
|
|
154
147
|
|
|
148
|
+
const COLUMN_NAME = 'ColumnName';
|
|
149
|
+
const STORE = 'store';
|
|
150
|
+
const JSON$1 = 'json';
|
|
151
|
+
const STORE_TABLE_NAME = STORE + 'TableName';
|
|
152
|
+
const STORE_ID_COLUMN_NAME = STORE + 'Id' + COLUMN_NAME;
|
|
153
|
+
const STORE_COLUMN_NAME = STORE + COLUMN_NAME;
|
|
154
|
+
const AUTO_LOAD_INTERVAL_SECONDS = 'autoLoadIntervalSeconds';
|
|
155
|
+
const ROW_ID_COLUMN_NAME = 'rowId' + COLUMN_NAME;
|
|
156
|
+
const TABLE_ID = 'tableId';
|
|
157
|
+
const TABLE_NAME = 'tableName';
|
|
158
|
+
const DELETE_EMPTY_COLUMNS = 'deleteEmptyColumns';
|
|
159
|
+
const DELETE_EMPTY_TABLE = 'deleteEmptyTable';
|
|
160
|
+
const DEFAULT_CONFIG = {
|
|
161
|
+
mode: JSON$1,
|
|
162
|
+
[AUTO_LOAD_INTERVAL_SECONDS]: 1,
|
|
163
|
+
};
|
|
164
|
+
const DEFAULT_TABULAR_VALUES_CONFIG = {
|
|
165
|
+
load: 0,
|
|
166
|
+
save: 0,
|
|
167
|
+
[TABLE_NAME]: TINYBASE + '_values',
|
|
168
|
+
};
|
|
169
|
+
const getDefaultedConfig = (configOrStoreTableName) =>
|
|
170
|
+
objMerge(
|
|
171
|
+
DEFAULT_CONFIG,
|
|
172
|
+
isString(configOrStoreTableName)
|
|
173
|
+
? {[STORE_TABLE_NAME]: configOrStoreTableName}
|
|
174
|
+
: (configOrStoreTableName ?? {}),
|
|
175
|
+
);
|
|
176
|
+
const getDefaultedTabularConfigMap = (
|
|
177
|
+
configsObj,
|
|
178
|
+
defaultObj,
|
|
179
|
+
tableField,
|
|
180
|
+
exclude,
|
|
181
|
+
then,
|
|
182
|
+
) => {
|
|
183
|
+
const configMap = mapNew();
|
|
184
|
+
objMap(configsObj, (configObj, id) => {
|
|
185
|
+
const defaultedConfig = slice(
|
|
186
|
+
objValues(
|
|
187
|
+
objMerge(
|
|
188
|
+
defaultObj,
|
|
189
|
+
isString(configObj) ? {[tableField]: configObj} : configObj,
|
|
190
|
+
),
|
|
191
|
+
),
|
|
192
|
+
0,
|
|
193
|
+
objSize(defaultObj),
|
|
194
|
+
);
|
|
195
|
+
if (!isUndefined(defaultedConfig[0]) && !exclude(id, defaultedConfig[0])) {
|
|
196
|
+
then(id, defaultedConfig[0]);
|
|
197
|
+
mapSet(configMap, id, defaultedConfig);
|
|
198
|
+
}
|
|
199
|
+
});
|
|
200
|
+
return configMap;
|
|
201
|
+
};
|
|
202
|
+
const getConfigStructures = (configOrStoreTableName) => {
|
|
203
|
+
const config = getDefaultedConfig(configOrStoreTableName);
|
|
204
|
+
const autoLoadIntervalSeconds = config[AUTO_LOAD_INTERVAL_SECONDS];
|
|
205
|
+
if (config.mode == JSON$1) {
|
|
206
|
+
const storeTableName = config[STORE_TABLE_NAME] ?? TINYBASE;
|
|
207
|
+
return [
|
|
208
|
+
1,
|
|
209
|
+
autoLoadIntervalSeconds,
|
|
210
|
+
[
|
|
211
|
+
storeTableName,
|
|
212
|
+
config[STORE_ID_COLUMN_NAME] ?? DEFAULT_ROW_ID_COLUMN_NAME,
|
|
213
|
+
config[STORE_COLUMN_NAME] ?? STORE,
|
|
214
|
+
],
|
|
215
|
+
setNew(storeTableName),
|
|
216
|
+
];
|
|
217
|
+
}
|
|
218
|
+
const {tables: {load = {}, save = {}} = {}, values = {}} = config;
|
|
219
|
+
const valuesConfig = slice(
|
|
220
|
+
objValues(objMerge(DEFAULT_TABULAR_VALUES_CONFIG, values)),
|
|
221
|
+
0,
|
|
222
|
+
objSize(DEFAULT_TABULAR_VALUES_CONFIG),
|
|
223
|
+
);
|
|
224
|
+
const valuesTable = valuesConfig[2];
|
|
225
|
+
const managedTableNames = setNew(valuesTable);
|
|
226
|
+
const excludedTableNames = setNew(valuesTable);
|
|
227
|
+
const tabularConfig = [
|
|
228
|
+
getDefaultedTabularConfigMap(
|
|
229
|
+
load,
|
|
230
|
+
{[TABLE_ID]: null, [ROW_ID_COLUMN_NAME]: DEFAULT_ROW_ID_COLUMN_NAME},
|
|
231
|
+
TABLE_ID,
|
|
232
|
+
(tableName) => collHas(excludedTableNames, tableName),
|
|
233
|
+
(tableName) => setAdd(managedTableNames, tableName),
|
|
234
|
+
),
|
|
235
|
+
getDefaultedTabularConfigMap(
|
|
236
|
+
save,
|
|
237
|
+
{
|
|
238
|
+
[TABLE_NAME]: null,
|
|
239
|
+
[ROW_ID_COLUMN_NAME]: DEFAULT_ROW_ID_COLUMN_NAME,
|
|
240
|
+
[DELETE_EMPTY_COLUMNS]: 0,
|
|
241
|
+
[DELETE_EMPTY_TABLE]: 0,
|
|
242
|
+
},
|
|
243
|
+
TABLE_NAME,
|
|
244
|
+
(_, tableName) => collHas(excludedTableNames, tableName),
|
|
245
|
+
(_, tableName) => setAdd(managedTableNames, tableName),
|
|
246
|
+
),
|
|
247
|
+
valuesConfig,
|
|
248
|
+
];
|
|
249
|
+
return [0, autoLoadIntervalSeconds, tabularConfig, managedTableNames];
|
|
250
|
+
};
|
|
251
|
+
|
|
252
|
+
const jsonString = JSON.stringify;
|
|
253
|
+
const jsonParse = JSON.parse;
|
|
254
|
+
const jsonStringWithUndefined = (obj) =>
|
|
255
|
+
jsonString(obj, (_key, value) => (value === void 0 ? UNDEFINED : value));
|
|
256
|
+
const jsonParseWithUndefined = (str) =>
|
|
257
|
+
jsonParse(str, (_key, value) => (value === UNDEFINED ? void 0 : value));
|
|
258
|
+
|
|
155
259
|
const INTEGER = /^\d+$/;
|
|
156
260
|
const getPoolFunctions = () => {
|
|
157
261
|
const pool = [];
|
|
@@ -908,110 +1012,6 @@ const createTabularPersister = (
|
|
|
908
1012
|
return persister;
|
|
909
1013
|
};
|
|
910
1014
|
|
|
911
|
-
const COLUMN_NAME = 'ColumnName';
|
|
912
|
-
const STORE = 'store';
|
|
913
|
-
const JSON$1 = 'json';
|
|
914
|
-
const STORE_TABLE_NAME = STORE + 'TableName';
|
|
915
|
-
const STORE_ID_COLUMN_NAME = STORE + 'Id' + COLUMN_NAME;
|
|
916
|
-
const STORE_COLUMN_NAME = STORE + COLUMN_NAME;
|
|
917
|
-
const AUTO_LOAD_INTERVAL_SECONDS = 'autoLoadIntervalSeconds';
|
|
918
|
-
const ROW_ID_COLUMN_NAME = 'rowId' + COLUMN_NAME;
|
|
919
|
-
const TABLE_ID = 'tableId';
|
|
920
|
-
const TABLE_NAME = 'tableName';
|
|
921
|
-
const DELETE_EMPTY_COLUMNS = 'deleteEmptyColumns';
|
|
922
|
-
const DELETE_EMPTY_TABLE = 'deleteEmptyTable';
|
|
923
|
-
const DEFAULT_CONFIG = {
|
|
924
|
-
mode: JSON$1,
|
|
925
|
-
[AUTO_LOAD_INTERVAL_SECONDS]: 1,
|
|
926
|
-
};
|
|
927
|
-
const DEFAULT_TABULAR_VALUES_CONFIG = {
|
|
928
|
-
load: 0,
|
|
929
|
-
save: 0,
|
|
930
|
-
[TABLE_NAME]: TINYBASE + '_values',
|
|
931
|
-
};
|
|
932
|
-
const getDefaultedConfig = (configOrStoreTableName) =>
|
|
933
|
-
objMerge(
|
|
934
|
-
DEFAULT_CONFIG,
|
|
935
|
-
isString(configOrStoreTableName)
|
|
936
|
-
? {[STORE_TABLE_NAME]: configOrStoreTableName}
|
|
937
|
-
: (configOrStoreTableName ?? {}),
|
|
938
|
-
);
|
|
939
|
-
const getDefaultedTabularConfigMap = (
|
|
940
|
-
configsObj,
|
|
941
|
-
defaultObj,
|
|
942
|
-
tableField,
|
|
943
|
-
exclude,
|
|
944
|
-
then,
|
|
945
|
-
) => {
|
|
946
|
-
const configMap = mapNew();
|
|
947
|
-
objMap(configsObj, (configObj, id) => {
|
|
948
|
-
const defaultedConfig = slice(
|
|
949
|
-
objValues(
|
|
950
|
-
objMerge(
|
|
951
|
-
defaultObj,
|
|
952
|
-
isString(configObj) ? {[tableField]: configObj} : configObj,
|
|
953
|
-
),
|
|
954
|
-
),
|
|
955
|
-
0,
|
|
956
|
-
objSize(defaultObj),
|
|
957
|
-
);
|
|
958
|
-
if (!isUndefined(defaultedConfig[0]) && !exclude(id, defaultedConfig[0])) {
|
|
959
|
-
then(id, defaultedConfig[0]);
|
|
960
|
-
mapSet(configMap, id, defaultedConfig);
|
|
961
|
-
}
|
|
962
|
-
});
|
|
963
|
-
return configMap;
|
|
964
|
-
};
|
|
965
|
-
const getConfigStructures = (configOrStoreTableName) => {
|
|
966
|
-
const config = getDefaultedConfig(configOrStoreTableName);
|
|
967
|
-
const autoLoadIntervalSeconds = config[AUTO_LOAD_INTERVAL_SECONDS];
|
|
968
|
-
if (config.mode == JSON$1) {
|
|
969
|
-
const storeTableName = config[STORE_TABLE_NAME] ?? TINYBASE;
|
|
970
|
-
return [
|
|
971
|
-
1,
|
|
972
|
-
autoLoadIntervalSeconds,
|
|
973
|
-
[
|
|
974
|
-
storeTableName,
|
|
975
|
-
config[STORE_ID_COLUMN_NAME] ?? DEFAULT_ROW_ID_COLUMN_NAME,
|
|
976
|
-
config[STORE_COLUMN_NAME] ?? STORE,
|
|
977
|
-
],
|
|
978
|
-
setNew(storeTableName),
|
|
979
|
-
];
|
|
980
|
-
}
|
|
981
|
-
const {tables: {load = {}, save = {}} = {}, values = {}} = config;
|
|
982
|
-
const valuesConfig = slice(
|
|
983
|
-
objValues(objMerge(DEFAULT_TABULAR_VALUES_CONFIG, values)),
|
|
984
|
-
0,
|
|
985
|
-
objSize(DEFAULT_TABULAR_VALUES_CONFIG),
|
|
986
|
-
);
|
|
987
|
-
const valuesTable = valuesConfig[2];
|
|
988
|
-
const managedTableNames = setNew(valuesTable);
|
|
989
|
-
const excludedTableNames = setNew(valuesTable);
|
|
990
|
-
const tabularConfig = [
|
|
991
|
-
getDefaultedTabularConfigMap(
|
|
992
|
-
load,
|
|
993
|
-
{[TABLE_ID]: null, [ROW_ID_COLUMN_NAME]: DEFAULT_ROW_ID_COLUMN_NAME},
|
|
994
|
-
TABLE_ID,
|
|
995
|
-
(tableName) => collHas(excludedTableNames, tableName),
|
|
996
|
-
(tableName) => setAdd(managedTableNames, tableName),
|
|
997
|
-
),
|
|
998
|
-
getDefaultedTabularConfigMap(
|
|
999
|
-
save,
|
|
1000
|
-
{
|
|
1001
|
-
[TABLE_NAME]: null,
|
|
1002
|
-
[ROW_ID_COLUMN_NAME]: DEFAULT_ROW_ID_COLUMN_NAME,
|
|
1003
|
-
[DELETE_EMPTY_COLUMNS]: 0,
|
|
1004
|
-
[DELETE_EMPTY_TABLE]: 0,
|
|
1005
|
-
},
|
|
1006
|
-
TABLE_NAME,
|
|
1007
|
-
(_, tableName) => collHas(excludedTableNames, tableName),
|
|
1008
|
-
(_, tableName) => setAdd(managedTableNames, tableName),
|
|
1009
|
-
),
|
|
1010
|
-
valuesConfig,
|
|
1011
|
-
];
|
|
1012
|
-
return [0, autoLoadIntervalSeconds, tabularConfig, managedTableNames];
|
|
1013
|
-
};
|
|
1014
|
-
|
|
1015
1015
|
const createCustomSqlitePersister = (
|
|
1016
1016
|
store,
|
|
1017
1017
|
configOrStoreTableName,
|