tinybase 5.4.4 → 5.4.6
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/checkpoints/index.js +6 -6
- package/checkpoints/with-schemas/index.js +6 -6
- package/cjs/checkpoints/index.cjs +6 -6
- package/cjs/checkpoints/with-schemas/index.cjs +6 -6
- package/cjs/es6/checkpoints/index.cjs +21 -19
- package/cjs/es6/checkpoints/with-schemas/index.cjs +21 -19
- package/cjs/es6/index.cjs +90 -75
- package/cjs/es6/indexes/index.cjs +20 -18
- package/cjs/es6/indexes/with-schemas/index.cjs +20 -18
- package/cjs/es6/mergeable-store/index.cjs +61 -46
- package/cjs/es6/mergeable-store/with-schemas/index.cjs +61 -46
- package/cjs/es6/metrics/index.cjs +30 -28
- package/cjs/es6/metrics/with-schemas/index.cjs +30 -28
- package/cjs/es6/persisters/index.cjs +81 -75
- package/cjs/es6/persisters/persister-automerge/index.cjs +41 -37
- package/cjs/es6/persisters/persister-automerge/with-schemas/index.cjs +41 -37
- package/cjs/es6/persisters/persister-browser/index.cjs +39 -35
- package/cjs/es6/persisters/persister-browser/with-schemas/index.cjs +39 -35
- package/cjs/es6/persisters/persister-cr-sqlite-wasm/index.cjs +74 -68
- package/cjs/es6/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs +74 -68
- package/cjs/es6/persisters/persister-durable-object-storage/index.cjs +40 -36
- package/cjs/es6/persisters/persister-durable-object-storage/with-schemas/index.cjs +40 -36
- package/cjs/es6/persisters/persister-electric-sql/index.cjs +74 -68
- package/cjs/es6/persisters/persister-electric-sql/with-schemas/index.cjs +74 -68
- package/cjs/es6/persisters/persister-expo-sqlite/index.cjs +74 -68
- package/cjs/es6/persisters/persister-expo-sqlite/with-schemas/index.cjs +74 -68
- package/cjs/es6/persisters/persister-file/index.cjs +40 -36
- package/cjs/es6/persisters/persister-file/with-schemas/index.cjs +40 -36
- package/cjs/es6/persisters/persister-indexed-db/index.cjs +45 -41
- package/cjs/es6/persisters/persister-indexed-db/with-schemas/index.cjs +45 -41
- package/cjs/es6/persisters/persister-libsql/index.cjs +74 -68
- package/cjs/es6/persisters/persister-libsql/with-schemas/index.cjs +74 -68
- package/cjs/es6/persisters/persister-partykit-client/index.cjs +40 -36
- package/cjs/es6/persisters/persister-partykit-client/with-schemas/index.cjs +40 -36
- package/cjs/es6/persisters/persister-partykit-server/index.cjs +18 -14
- package/cjs/es6/persisters/persister-partykit-server/with-schemas/index.cjs +18 -14
- package/cjs/es6/persisters/persister-pglite/index.cjs +83 -77
- package/cjs/es6/persisters/persister-pglite/with-schemas/index.cjs +83 -77
- package/cjs/es6/persisters/persister-postgres/index.cjs +89 -80
- package/cjs/es6/persisters/persister-postgres/with-schemas/index.cjs +89 -80
- package/cjs/es6/persisters/persister-powersync/index.cjs +81 -74
- package/cjs/es6/persisters/persister-powersync/with-schemas/index.cjs +81 -74
- package/cjs/es6/persisters/persister-remote/index.cjs +38 -34
- package/cjs/es6/persisters/persister-remote/with-schemas/index.cjs +38 -34
- package/cjs/es6/persisters/persister-sqlite-wasm/index.cjs +74 -68
- package/cjs/es6/persisters/persister-sqlite-wasm/with-schemas/index.cjs +74 -68
- package/cjs/es6/persisters/persister-sqlite3/index.cjs +74 -68
- package/cjs/es6/persisters/persister-sqlite3/with-schemas/index.cjs +74 -68
- package/cjs/es6/persisters/persister-yjs/index.cjs +43 -39
- package/cjs/es6/persisters/persister-yjs/with-schemas/index.cjs +43 -39
- package/cjs/es6/persisters/with-schemas/index.cjs +81 -75
- package/cjs/es6/queries/index.cjs +34 -32
- package/cjs/es6/queries/with-schemas/index.cjs +34 -32
- package/cjs/es6/relationships/index.cjs +22 -20
- package/cjs/es6/relationships/with-schemas/index.cjs +22 -20
- package/cjs/es6/store/index.cjs +51 -39
- package/cjs/es6/store/with-schemas/index.cjs +51 -39
- package/cjs/es6/synchronizers/index.cjs +52 -46
- package/cjs/es6/synchronizers/synchronizer-broadcast-channel/index.cjs +52 -46
- package/cjs/es6/synchronizers/synchronizer-broadcast-channel/with-schemas/index.cjs +52 -46
- package/cjs/es6/synchronizers/synchronizer-local/index.cjs +53 -47
- package/cjs/es6/synchronizers/synchronizer-local/with-schemas/index.cjs +53 -47
- package/cjs/es6/synchronizers/synchronizer-ws-client/index.cjs +56 -50
- package/cjs/es6/synchronizers/synchronizer-ws-client/with-schemas/index.cjs +56 -50
- package/cjs/es6/synchronizers/synchronizer-ws-server/index.cjs +72 -62
- package/cjs/es6/synchronizers/synchronizer-ws-server/with-schemas/index.cjs +72 -62
- package/cjs/es6/synchronizers/synchronizer-ws-server-durable-object/index.cjs +55 -49
- package/cjs/es6/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.cjs +55 -49
- package/cjs/es6/synchronizers/synchronizer-ws-server-simple/index.cjs +15 -11
- package/cjs/es6/synchronizers/synchronizer-ws-server-simple/with-schemas/index.cjs +15 -11
- package/cjs/es6/synchronizers/with-schemas/index.cjs +52 -46
- package/cjs/es6/tools/index.cjs +27 -20
- package/cjs/es6/tools/with-schemas/index.cjs +27 -20
- package/cjs/es6/ui-react/index.cjs +49 -35
- package/cjs/es6/ui-react/with-schemas/index.cjs +49 -35
- package/cjs/es6/ui-react-dom/index.cjs +14 -14
- package/cjs/es6/ui-react-dom/with-schemas/index.cjs +14 -14
- package/cjs/es6/ui-react-inspector/index.cjs +84 -72
- package/cjs/es6/ui-react-inspector/with-schemas/index.cjs +84 -72
- package/cjs/es6/with-schemas/index.cjs +90 -75
- package/cjs/index.cjs +38 -38
- package/cjs/indexes/index.cjs +5 -5
- package/cjs/indexes/with-schemas/index.cjs +5 -5
- package/cjs/mergeable-store/index.cjs +19 -19
- package/cjs/mergeable-store/with-schemas/index.cjs +19 -19
- package/cjs/metrics/index.cjs +12 -12
- package/cjs/metrics/with-schemas/index.cjs +12 -12
- package/cjs/persisters/index.cjs +10 -10
- package/cjs/persisters/persister-automerge/index.cjs +8 -8
- package/cjs/persisters/persister-automerge/with-schemas/index.cjs +8 -8
- package/cjs/persisters/persister-browser/index.cjs +7 -7
- package/cjs/persisters/persister-browser/with-schemas/index.cjs +7 -7
- package/cjs/persisters/persister-cr-sqlite-wasm/index.cjs +9 -9
- package/cjs/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs +9 -9
- package/cjs/persisters/persister-durable-object-storage/index.cjs +7 -7
- package/cjs/persisters/persister-durable-object-storage/with-schemas/index.cjs +7 -7
- package/cjs/persisters/persister-electric-sql/index.cjs +9 -9
- package/cjs/persisters/persister-electric-sql/with-schemas/index.cjs +9 -9
- package/cjs/persisters/persister-expo-sqlite/index.cjs +9 -9
- package/cjs/persisters/persister-expo-sqlite/with-schemas/index.cjs +9 -9
- package/cjs/persisters/persister-file/index.cjs +7 -7
- package/cjs/persisters/persister-file/with-schemas/index.cjs +7 -7
- package/cjs/persisters/persister-indexed-db/index.cjs +6 -6
- package/cjs/persisters/persister-indexed-db/with-schemas/index.cjs +6 -6
- package/cjs/persisters/persister-libsql/index.cjs +9 -9
- package/cjs/persisters/persister-libsql/with-schemas/index.cjs +9 -9
- package/cjs/persisters/persister-partykit-client/index.cjs +7 -7
- package/cjs/persisters/persister-partykit-client/with-schemas/index.cjs +7 -7
- package/cjs/persisters/persister-partykit-server/index.cjs +2 -2
- package/cjs/persisters/persister-partykit-server/with-schemas/index.cjs +2 -2
- package/cjs/persisters/persister-pglite/index.cjs +9 -9
- package/cjs/persisters/persister-pglite/with-schemas/index.cjs +9 -9
- package/cjs/persisters/persister-postgres/index.cjs +9 -9
- package/cjs/persisters/persister-postgres/with-schemas/index.cjs +9 -9
- package/cjs/persisters/persister-powersync/index.cjs +10 -10
- package/cjs/persisters/persister-powersync/with-schemas/index.cjs +10 -10
- 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 +9 -9
- package/cjs/persisters/persister-sqlite-wasm/with-schemas/index.cjs +9 -9
- package/cjs/persisters/persister-sqlite3/index.cjs +9 -9
- package/cjs/persisters/persister-sqlite3/with-schemas/index.cjs +9 -9
- package/cjs/persisters/persister-yjs/index.cjs +9 -9
- package/cjs/persisters/persister-yjs/with-schemas/index.cjs +9 -9
- package/cjs/persisters/with-schemas/index.cjs +10 -10
- package/cjs/queries/index.cjs +13 -13
- package/cjs/queries/with-schemas/index.cjs +13 -13
- package/cjs/relationships/index.cjs +5 -5
- package/cjs/relationships/with-schemas/index.cjs +5 -5
- package/cjs/store/index.cjs +14 -14
- package/cjs/store/with-schemas/index.cjs +14 -14
- package/cjs/synchronizers/index.cjs +11 -11
- package/cjs/synchronizers/synchronizer-broadcast-channel/index.cjs +11 -11
- package/cjs/synchronizers/synchronizer-broadcast-channel/with-schemas/index.cjs +11 -11
- package/cjs/synchronizers/synchronizer-local/index.cjs +11 -11
- package/cjs/synchronizers/synchronizer-local/with-schemas/index.cjs +11 -11
- package/cjs/synchronizers/synchronizer-ws-client/index.cjs +13 -13
- package/cjs/synchronizers/synchronizer-ws-client/with-schemas/index.cjs +13 -13
- package/cjs/synchronizers/synchronizer-ws-server/index.cjs +17 -17
- package/cjs/synchronizers/synchronizer-ws-server/with-schemas/index.cjs +17 -17
- package/cjs/synchronizers/synchronizer-ws-server-durable-object/index.cjs +14 -14
- package/cjs/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.cjs +14 -14
- package/cjs/synchronizers/synchronizer-ws-server-simple/index.cjs +1 -1
- package/cjs/synchronizers/synchronizer-ws-server-simple/with-schemas/index.cjs +1 -1
- package/cjs/synchronizers/with-schemas/index.cjs +11 -11
- package/cjs/tools/index.cjs +3 -3
- package/cjs/tools/with-schemas/index.cjs +3 -3
- package/cjs/ui-react/index.cjs +19 -12
- package/cjs/ui-react/with-schemas/index.cjs +19 -12
- package/cjs/ui-react-dom/index.cjs +4 -4
- package/cjs/ui-react-dom/with-schemas/index.cjs +4 -4
- package/cjs/ui-react-inspector/index.cjs +22 -22
- package/cjs/ui-react-inspector/with-schemas/index.cjs +22 -22
- package/cjs/with-schemas/index.cjs +38 -38
- package/es6/checkpoints/index.js +21 -19
- package/es6/checkpoints/with-schemas/index.js +21 -19
- package/es6/index.js +90 -75
- package/es6/indexes/index.js +20 -18
- package/es6/indexes/with-schemas/index.js +20 -18
- package/es6/mergeable-store/index.js +61 -46
- package/es6/mergeable-store/with-schemas/index.js +61 -46
- package/es6/metrics/index.js +30 -28
- package/es6/metrics/with-schemas/index.js +30 -28
- package/es6/persisters/index.js +81 -75
- package/es6/persisters/persister-automerge/index.js +41 -37
- package/es6/persisters/persister-automerge/with-schemas/index.js +41 -37
- package/es6/persisters/persister-browser/index.js +39 -35
- package/es6/persisters/persister-browser/with-schemas/index.js +39 -35
- package/es6/persisters/persister-cr-sqlite-wasm/index.js +74 -68
- package/es6/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +74 -68
- package/es6/persisters/persister-durable-object-storage/index.js +40 -36
- package/es6/persisters/persister-durable-object-storage/with-schemas/index.js +40 -36
- package/es6/persisters/persister-electric-sql/index.js +74 -68
- package/es6/persisters/persister-electric-sql/with-schemas/index.js +74 -68
- package/es6/persisters/persister-expo-sqlite/index.js +74 -68
- package/es6/persisters/persister-expo-sqlite/with-schemas/index.js +74 -68
- package/es6/persisters/persister-file/index.js +40 -36
- package/es6/persisters/persister-file/with-schemas/index.js +40 -36
- package/es6/persisters/persister-indexed-db/index.js +45 -41
- package/es6/persisters/persister-indexed-db/with-schemas/index.js +45 -41
- package/es6/persisters/persister-libsql/index.js +74 -68
- package/es6/persisters/persister-libsql/with-schemas/index.js +74 -68
- package/es6/persisters/persister-partykit-client/index.js +40 -36
- package/es6/persisters/persister-partykit-client/with-schemas/index.js +40 -36
- package/es6/persisters/persister-partykit-server/index.js +18 -14
- package/es6/persisters/persister-partykit-server/with-schemas/index.js +18 -14
- package/es6/persisters/persister-pglite/index.js +83 -77
- package/es6/persisters/persister-pglite/with-schemas/index.js +83 -77
- package/es6/persisters/persister-postgres/index.js +89 -80
- package/es6/persisters/persister-postgres/with-schemas/index.js +89 -80
- package/es6/persisters/persister-powersync/index.js +81 -74
- package/es6/persisters/persister-powersync/with-schemas/index.js +81 -74
- package/es6/persisters/persister-remote/index.js +38 -34
- package/es6/persisters/persister-remote/with-schemas/index.js +38 -34
- package/es6/persisters/persister-sqlite-wasm/index.js +74 -68
- package/es6/persisters/persister-sqlite-wasm/with-schemas/index.js +74 -68
- package/es6/persisters/persister-sqlite3/index.js +74 -68
- package/es6/persisters/persister-sqlite3/with-schemas/index.js +74 -68
- package/es6/persisters/persister-yjs/index.js +43 -39
- package/es6/persisters/persister-yjs/with-schemas/index.js +43 -39
- package/es6/persisters/with-schemas/index.js +81 -75
- package/es6/queries/index.js +34 -32
- package/es6/queries/with-schemas/index.js +34 -32
- package/es6/relationships/index.js +22 -20
- package/es6/relationships/with-schemas/index.js +22 -20
- package/es6/store/index.js +51 -39
- package/es6/store/with-schemas/index.js +51 -39
- package/es6/synchronizers/index.js +52 -46
- package/es6/synchronizers/synchronizer-broadcast-channel/index.js +52 -46
- package/es6/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +52 -46
- package/es6/synchronizers/synchronizer-local/index.js +53 -47
- package/es6/synchronizers/synchronizer-local/with-schemas/index.js +53 -47
- package/es6/synchronizers/synchronizer-ws-client/index.js +56 -50
- package/es6/synchronizers/synchronizer-ws-client/with-schemas/index.js +56 -50
- package/es6/synchronizers/synchronizer-ws-server/index.js +72 -62
- package/es6/synchronizers/synchronizer-ws-server/with-schemas/index.js +72 -62
- package/es6/synchronizers/synchronizer-ws-server-durable-object/index.js +55 -49
- package/es6/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.js +55 -49
- package/es6/synchronizers/synchronizer-ws-server-simple/index.js +15 -11
- package/es6/synchronizers/synchronizer-ws-server-simple/with-schemas/index.js +15 -11
- package/es6/synchronizers/with-schemas/index.js +52 -46
- package/es6/tools/index.js +27 -20
- package/es6/tools/with-schemas/index.js +27 -20
- package/es6/ui-react/index.js +49 -35
- package/es6/ui-react/with-schemas/index.js +49 -35
- package/es6/ui-react-dom/index.js +18 -14
- package/es6/ui-react-dom/with-schemas/index.js +18 -14
- package/es6/ui-react-inspector/index.js +88 -72
- package/es6/ui-react-inspector/with-schemas/index.js +88 -72
- package/es6/with-schemas/index.js +90 -75
- package/index.js +38 -38
- package/indexes/index.js +5 -5
- package/indexes/with-schemas/index.js +5 -5
- package/mergeable-store/index.js +19 -19
- package/mergeable-store/with-schemas/index.js +19 -19
- package/metrics/index.js +12 -12
- package/metrics/with-schemas/index.js +12 -12
- package/package.json +3 -3
- package/persisters/index.js +10 -10
- package/persisters/persister-automerge/index.js +8 -8
- package/persisters/persister-automerge/with-schemas/index.js +8 -8
- package/persisters/persister-browser/index.js +7 -7
- package/persisters/persister-browser/with-schemas/index.js +7 -7
- package/persisters/persister-cr-sqlite-wasm/index.js +9 -9
- package/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +9 -9
- package/persisters/persister-durable-object-storage/index.js +7 -7
- package/persisters/persister-durable-object-storage/with-schemas/index.js +7 -7
- package/persisters/persister-electric-sql/index.js +9 -9
- package/persisters/persister-electric-sql/with-schemas/index.js +9 -9
- package/persisters/persister-expo-sqlite/index.js +9 -9
- package/persisters/persister-expo-sqlite/with-schemas/index.js +9 -9
- package/persisters/persister-file/index.js +7 -7
- package/persisters/persister-file/with-schemas/index.js +7 -7
- package/persisters/persister-indexed-db/index.js +6 -6
- package/persisters/persister-indexed-db/with-schemas/index.js +6 -6
- package/persisters/persister-libsql/index.js +9 -9
- package/persisters/persister-libsql/with-schemas/index.js +9 -9
- package/persisters/persister-partykit-client/index.js +7 -7
- package/persisters/persister-partykit-client/with-schemas/index.js +7 -7
- package/persisters/persister-partykit-server/index.js +2 -2
- package/persisters/persister-partykit-server/with-schemas/index.js +2 -2
- package/persisters/persister-pglite/index.js +9 -9
- package/persisters/persister-pglite/with-schemas/index.js +9 -9
- package/persisters/persister-postgres/index.js +9 -9
- package/persisters/persister-postgres/with-schemas/index.js +9 -9
- package/persisters/persister-powersync/index.js +10 -10
- package/persisters/persister-powersync/with-schemas/index.js +10 -10
- 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 +9 -9
- package/persisters/persister-sqlite-wasm/with-schemas/index.js +9 -9
- package/persisters/persister-sqlite3/index.js +9 -9
- package/persisters/persister-sqlite3/with-schemas/index.js +9 -9
- package/persisters/persister-yjs/index.js +9 -9
- package/persisters/persister-yjs/with-schemas/index.js +9 -9
- package/persisters/with-schemas/index.js +10 -10
- package/queries/index.js +13 -13
- package/queries/with-schemas/index.js +13 -13
- package/readme.md +2 -2
- package/relationships/index.js +5 -5
- package/relationships/with-schemas/index.js +5 -5
- package/store/index.js +14 -14
- package/store/with-schemas/index.js +14 -14
- package/synchronizers/index.js +11 -11
- package/synchronizers/synchronizer-broadcast-channel/index.js +11 -11
- package/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +11 -11
- package/synchronizers/synchronizer-local/index.js +11 -11
- package/synchronizers/synchronizer-local/with-schemas/index.js +11 -11
- package/synchronizers/synchronizer-ws-client/index.js +13 -13
- package/synchronizers/synchronizer-ws-client/with-schemas/index.js +13 -13
- package/synchronizers/synchronizer-ws-server/index.js +17 -17
- package/synchronizers/synchronizer-ws-server/with-schemas/index.js +17 -17
- package/synchronizers/synchronizer-ws-server-durable-object/index.js +14 -14
- package/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.js +14 -14
- package/synchronizers/synchronizer-ws-server-simple/index.js +1 -1
- package/synchronizers/synchronizer-ws-server-simple/with-schemas/index.js +1 -1
- package/synchronizers/with-schemas/index.js +11 -11
- package/tools/index.js +3 -3
- package/tools/with-schemas/index.js +3 -3
- package/ui-react/index.js +19 -12
- package/ui-react/with-schemas/index.js +19 -12
- package/ui-react-dom/index.js +4 -4
- package/ui-react-dom/with-schemas/index.js +4 -4
- package/ui-react-inspector/index.js +22 -22
- package/ui-react-inspector/with-schemas/index.js +22 -22
- package/umd/checkpoints/index.js +14 -9
- package/umd/checkpoints/with-schemas/index.js +14 -9
- package/umd/es6/checkpoints/index.js +20 -19
- package/umd/es6/checkpoints/with-schemas/index.js +20 -19
- package/umd/es6/index.js +84 -75
- package/umd/es6/indexes/index.js +19 -18
- package/umd/es6/indexes/with-schemas/index.js +19 -18
- package/umd/es6/mergeable-store/index.js +55 -46
- package/umd/es6/mergeable-store/with-schemas/index.js +55 -46
- package/umd/es6/metrics/index.js +29 -28
- package/umd/es6/metrics/with-schemas/index.js +29 -28
- package/umd/es6/persisters/index.js +76 -75
- package/umd/es6/persisters/persister-automerge/index.js +38 -37
- package/umd/es6/persisters/persister-automerge/with-schemas/index.js +38 -37
- package/umd/es6/persisters/persister-browser/index.js +36 -35
- package/umd/es6/persisters/persister-browser/with-schemas/index.js +36 -35
- package/umd/es6/persisters/persister-cr-sqlite-wasm/index.js +69 -68
- package/umd/es6/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +69 -68
- package/umd/es6/persisters/persister-durable-object-storage/index.js +37 -36
- package/umd/es6/persisters/persister-durable-object-storage/with-schemas/index.js +37 -36
- package/umd/es6/persisters/persister-electric-sql/index.js +69 -68
- package/umd/es6/persisters/persister-electric-sql/with-schemas/index.js +69 -68
- package/umd/es6/persisters/persister-expo-sqlite/index.js +69 -68
- package/umd/es6/persisters/persister-expo-sqlite/with-schemas/index.js +69 -68
- package/umd/es6/persisters/persister-file/index.js +37 -36
- package/umd/es6/persisters/persister-file/with-schemas/index.js +37 -36
- package/umd/es6/persisters/persister-indexed-db/index.js +42 -41
- package/umd/es6/persisters/persister-indexed-db/with-schemas/index.js +42 -41
- package/umd/es6/persisters/persister-libsql/index.js +69 -68
- package/umd/es6/persisters/persister-libsql/with-schemas/index.js +69 -68
- package/umd/es6/persisters/persister-partykit-client/index.js +37 -36
- package/umd/es6/persisters/persister-partykit-client/with-schemas/index.js +37 -36
- package/umd/es6/persisters/persister-partykit-server/index.js +15 -14
- package/umd/es6/persisters/persister-partykit-server/with-schemas/index.js +15 -14
- package/umd/es6/persisters/persister-pglite/index.js +88 -83
- package/umd/es6/persisters/persister-pglite/with-schemas/index.js +88 -83
- package/umd/es6/persisters/persister-postgres/index.js +91 -86
- package/umd/es6/persisters/persister-postgres/with-schemas/index.js +91 -86
- package/umd/es6/persisters/persister-powersync/index.js +76 -74
- package/umd/es6/persisters/persister-powersync/with-schemas/index.js +76 -74
- package/umd/es6/persisters/persister-remote/index.js +35 -34
- package/umd/es6/persisters/persister-remote/with-schemas/index.js +35 -34
- package/umd/es6/persisters/persister-sqlite-wasm/index.js +69 -68
- package/umd/es6/persisters/persister-sqlite-wasm/with-schemas/index.js +69 -68
- package/umd/es6/persisters/persister-sqlite3/index.js +69 -68
- package/umd/es6/persisters/persister-sqlite3/with-schemas/index.js +69 -68
- package/umd/es6/persisters/persister-yjs/index.js +40 -39
- package/umd/es6/persisters/persister-yjs/with-schemas/index.js +40 -39
- package/umd/es6/persisters/with-schemas/index.js +76 -75
- package/umd/es6/queries/index.js +33 -32
- package/umd/es6/queries/with-schemas/index.js +33 -32
- package/umd/es6/relationships/index.js +21 -20
- package/umd/es6/relationships/with-schemas/index.js +21 -20
- package/umd/es6/store/index.js +48 -39
- package/umd/es6/store/with-schemas/index.js +48 -39
- package/umd/es6/synchronizers/index.js +49 -46
- package/umd/es6/synchronizers/synchronizer-broadcast-channel/index.js +49 -46
- package/umd/es6/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +49 -46
- package/umd/es6/synchronizers/synchronizer-local/index.js +50 -47
- package/umd/es6/synchronizers/synchronizer-local/with-schemas/index.js +50 -47
- package/umd/es6/synchronizers/synchronizer-ws-client/index.js +53 -50
- package/umd/es6/synchronizers/synchronizer-ws-client/with-schemas/index.js +53 -50
- package/umd/es6/synchronizers/synchronizer-ws-server/index.js +67 -62
- package/umd/es6/synchronizers/synchronizer-ws-server/with-schemas/index.js +67 -62
- package/umd/es6/synchronizers/synchronizer-ws-server-durable-object/index.js +52 -49
- package/umd/es6/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.js +52 -49
- package/umd/es6/synchronizers/synchronizer-ws-server-simple/index.js +12 -11
- package/umd/es6/synchronizers/synchronizer-ws-server-simple/with-schemas/index.js +12 -11
- package/umd/es6/synchronizers/with-schemas/index.js +49 -46
- package/umd/es6/tools/index.js +27 -23
- package/umd/es6/tools/with-schemas/index.js +27 -23
- package/umd/es6/ui-react/index.js +39 -36
- package/umd/es6/ui-react/with-schemas/index.js +39 -36
- package/umd/es6/ui-react-dom/index.js +14 -14
- package/umd/es6/ui-react-dom/with-schemas/index.js +14 -14
- package/umd/es6/ui-react-inspector/index.js +81 -72
- package/umd/es6/ui-react-inspector/with-schemas/index.js +81 -72
- package/umd/es6/with-schemas/index.js +84 -75
- package/umd/index.js +46 -41
- package/umd/indexes/index.js +13 -8
- package/umd/indexes/with-schemas/index.js +13 -8
- package/umd/mergeable-store/index.js +27 -22
- package/umd/mergeable-store/with-schemas/index.js +27 -22
- package/umd/metrics/index.js +20 -15
- package/umd/metrics/with-schemas/index.js +20 -15
- package/umd/persisters/index.js +18 -13
- package/umd/persisters/persister-automerge/index.js +16 -11
- package/umd/persisters/persister-automerge/with-schemas/index.js +16 -11
- package/umd/persisters/persister-browser/index.js +15 -10
- package/umd/persisters/persister-browser/with-schemas/index.js +15 -10
- package/umd/persisters/persister-cr-sqlite-wasm/index.js +17 -12
- package/umd/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +17 -12
- package/umd/persisters/persister-durable-object-storage/index.js +15 -10
- package/umd/persisters/persister-durable-object-storage/with-schemas/index.js +15 -10
- package/umd/persisters/persister-electric-sql/index.js +17 -12
- package/umd/persisters/persister-electric-sql/with-schemas/index.js +17 -12
- package/umd/persisters/persister-expo-sqlite/index.js +17 -12
- package/umd/persisters/persister-expo-sqlite/with-schemas/index.js +17 -12
- package/umd/persisters/persister-file/index.js +15 -10
- package/umd/persisters/persister-file/with-schemas/index.js +15 -10
- package/umd/persisters/persister-indexed-db/index.js +14 -9
- package/umd/persisters/persister-indexed-db/with-schemas/index.js +14 -9
- package/umd/persisters/persister-libsql/index.js +17 -12
- package/umd/persisters/persister-libsql/with-schemas/index.js +17 -12
- package/umd/persisters/persister-partykit-client/index.js +15 -10
- package/umd/persisters/persister-partykit-client/with-schemas/index.js +15 -10
- package/umd/persisters/persister-partykit-server/index.js +2 -2
- package/umd/persisters/persister-partykit-server/with-schemas/index.js +2 -2
- package/umd/persisters/persister-pglite/index.js +17 -12
- package/umd/persisters/persister-pglite/with-schemas/index.js +17 -12
- package/umd/persisters/persister-postgres/index.js +17 -12
- package/umd/persisters/persister-postgres/with-schemas/index.js +17 -12
- package/umd/persisters/persister-powersync/index.js +18 -13
- package/umd/persisters/persister-powersync/with-schemas/index.js +18 -13
- package/umd/persisters/persister-remote/index.js +13 -8
- package/umd/persisters/persister-remote/with-schemas/index.js +13 -8
- package/umd/persisters/persister-sqlite-wasm/index.js +17 -12
- package/umd/persisters/persister-sqlite-wasm/with-schemas/index.js +17 -12
- package/umd/persisters/persister-sqlite3/index.js +17 -12
- package/umd/persisters/persister-sqlite3/with-schemas/index.js +17 -12
- package/umd/persisters/persister-yjs/index.js +17 -12
- package/umd/persisters/persister-yjs/with-schemas/index.js +17 -12
- package/umd/persisters/with-schemas/index.js +18 -13
- package/umd/queries/index.js +13 -13
- package/umd/queries/with-schemas/index.js +13 -13
- package/umd/relationships/index.js +13 -8
- package/umd/relationships/with-schemas/index.js +13 -8
- package/umd/store/index.js +22 -17
- package/umd/store/with-schemas/index.js +22 -17
- package/umd/synchronizers/index.js +19 -14
- package/umd/synchronizers/synchronizer-broadcast-channel/index.js +19 -14
- package/umd/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +19 -14
- package/umd/synchronizers/synchronizer-local/index.js +19 -14
- package/umd/synchronizers/synchronizer-local/with-schemas/index.js +19 -14
- package/umd/synchronizers/synchronizer-ws-client/index.js +21 -16
- package/umd/synchronizers/synchronizer-ws-client/with-schemas/index.js +21 -16
- package/umd/synchronizers/synchronizer-ws-server/index.js +25 -20
- package/umd/synchronizers/synchronizer-ws-server/with-schemas/index.js +25 -20
- package/umd/synchronizers/synchronizer-ws-server-durable-object/index.js +22 -17
- package/umd/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.js +22 -17
- package/umd/synchronizers/synchronizer-ws-server-simple/index.js +1 -1
- package/umd/synchronizers/synchronizer-ws-server-simple/with-schemas/index.js +1 -1
- package/umd/synchronizers/with-schemas/index.js +19 -14
- package/umd/tools/index.js +3 -3
- package/umd/tools/with-schemas/index.js +3 -3
- package/umd/ui-react/index.js +13 -13
- package/umd/ui-react/with-schemas/index.js +13 -13
- package/umd/ui-react-dom/index.js +4 -4
- package/umd/ui-react-dom/with-schemas/index.js +4 -4
- package/umd/ui-react-inspector/index.js +30 -25
- package/umd/ui-react-inspector/with-schemas/index.js +30 -25
- package/umd/with-schemas/index.js +46 -41
- package/with-schemas/index.js +38 -38
|
@@ -36,7 +36,7 @@ const mathMax = math.max;
|
|
|
36
36
|
const mathFloor = math.floor;
|
|
37
37
|
const isFiniteNumber = isFinite;
|
|
38
38
|
const isInstanceOf = (thing, cls) => thing instanceof cls;
|
|
39
|
-
const isUndefined = (thing) => thing ==
|
|
39
|
+
const isUndefined = (thing) => thing == undefined;
|
|
40
40
|
const ifNotUndefined = (value, then, otherwise) =>
|
|
41
41
|
isUndefined(value) ? otherwise?.() : then(value);
|
|
42
42
|
const isTypeStringOrBoolean = (type) => type == STRING || type == BOOLEAN;
|
|
@@ -310,7 +310,7 @@ const getListenerFunctions = (getThing) => {
|
|
|
310
310
|
);
|
|
311
311
|
const delListener = (id) =>
|
|
312
312
|
ifNotUndefined(mapGet(allListeners, id), ([, idSetNode, idOrNulls]) => {
|
|
313
|
-
visitTree(idSetNode, idOrNulls ?? [EMPTY_STRING],
|
|
313
|
+
visitTree(idSetNode, idOrNulls ?? [EMPTY_STRING], undefined, (idSet) => {
|
|
314
314
|
collDel(idSet, id);
|
|
315
315
|
return collIsEmpty(idSet) ? 1 : 0;
|
|
316
316
|
});
|
|
@@ -351,7 +351,7 @@ const getCellOrValueType = (cellOrValue) => {
|
|
|
351
351
|
return isTypeStringOrBoolean(type) ||
|
|
352
352
|
(type == NUMBER && isFiniteNumber(cellOrValue))
|
|
353
353
|
? type
|
|
354
|
-
:
|
|
354
|
+
: undefined;
|
|
355
355
|
};
|
|
356
356
|
const isCellOrValueOrNullOrUndefined = (cellOrValue) =>
|
|
357
357
|
isUndefined(cellOrValue) || !isUndefined(getCellOrValueType(cellOrValue));
|
|
@@ -396,7 +396,7 @@ const idsChanged = (changedIds, id2, addedOrRemoved) =>
|
|
|
396
396
|
mapSet(
|
|
397
397
|
changedIds,
|
|
398
398
|
id2,
|
|
399
|
-
mapGet(changedIds, id2) == -addedOrRemoved ?
|
|
399
|
+
mapGet(changedIds, id2) == -addedOrRemoved ? undefined : addedOrRemoved,
|
|
400
400
|
);
|
|
401
401
|
const createStore = () => {
|
|
402
402
|
let hasTablesSchema;
|
|
@@ -870,7 +870,7 @@ const createStore = () => {
|
|
|
870
870
|
const callTabularListenersForChanges = (mutator) => {
|
|
871
871
|
const hasTablesNow = hasTables();
|
|
872
872
|
if (hasTablesNow != hadTables) {
|
|
873
|
-
callListeners(hasTablesListeners[mutator],
|
|
873
|
+
callListeners(hasTablesListeners[mutator], undefined, hasTablesNow);
|
|
874
874
|
}
|
|
875
875
|
const emptySortedRowIdListeners = collIsEmpty(
|
|
876
876
|
sortedRowIdsListeners[mutator],
|
|
@@ -1009,7 +1009,7 @@ const createStore = () => {
|
|
|
1009
1009
|
}
|
|
1010
1010
|
});
|
|
1011
1011
|
if (tablesChanged) {
|
|
1012
|
-
callListeners(tablesListeners[mutator],
|
|
1012
|
+
callListeners(tablesListeners[mutator], undefined, getCellChange);
|
|
1013
1013
|
}
|
|
1014
1014
|
}
|
|
1015
1015
|
}
|
|
@@ -1017,7 +1017,7 @@ const createStore = () => {
|
|
|
1017
1017
|
const callValuesListenersForChanges = (mutator) => {
|
|
1018
1018
|
const hasValuesNow = hasValues();
|
|
1019
1019
|
if (hasValuesNow != hadValues) {
|
|
1020
|
-
callListeners(hasValuesListeners[mutator],
|
|
1020
|
+
callListeners(hasValuesListeners[mutator], undefined, hasValuesNow);
|
|
1021
1021
|
}
|
|
1022
1022
|
const emptyIdAndHasListeners =
|
|
1023
1023
|
collIsEmpty(valueIdsListeners[mutator]) &&
|
|
@@ -1051,7 +1051,7 @@ const createStore = () => {
|
|
|
1051
1051
|
}
|
|
1052
1052
|
});
|
|
1053
1053
|
if (valuesChanged) {
|
|
1054
|
-
callListeners(valuesListeners[mutator],
|
|
1054
|
+
callListeners(valuesListeners[mutator], undefined, getValueChange);
|
|
1055
1055
|
}
|
|
1056
1056
|
}
|
|
1057
1057
|
}
|
|
@@ -1138,7 +1138,7 @@ const createStore = () => {
|
|
|
1138
1138
|
);
|
|
1139
1139
|
const addRow = (tableId, row, reuseRowIds = true) =>
|
|
1140
1140
|
transaction(() => {
|
|
1141
|
-
let rowId =
|
|
1141
|
+
let rowId = undefined;
|
|
1142
1142
|
if (validateRow(tableId, rowId, row)) {
|
|
1143
1143
|
tableId = id(tableId);
|
|
1144
1144
|
setValidRow(
|
|
@@ -1360,12 +1360,12 @@ const createStore = () => {
|
|
|
1360
1360
|
changedCells,
|
|
1361
1361
|
(table, tableId) =>
|
|
1362
1362
|
mapGet(changedTableIds, tableId) === -1
|
|
1363
|
-
?
|
|
1363
|
+
? undefined
|
|
1364
1364
|
: mapToObj(
|
|
1365
1365
|
table,
|
|
1366
1366
|
(row, rowId) =>
|
|
1367
1367
|
mapGet(mapGet(changedRowIds, tableId), rowId) === -1
|
|
1368
|
-
?
|
|
1368
|
+
? undefined
|
|
1369
1369
|
: mapToObj(
|
|
1370
1370
|
row,
|
|
1371
1371
|
([, newCell]) => newCell,
|
|
@@ -1423,7 +1423,7 @@ const createStore = () => {
|
|
|
1423
1423
|
);
|
|
1424
1424
|
collClear(changedValues);
|
|
1425
1425
|
}
|
|
1426
|
-
callListeners(finishTransactionListeners[0],
|
|
1426
|
+
callListeners(finishTransactionListeners[0], undefined);
|
|
1427
1427
|
transactions = -1;
|
|
1428
1428
|
callInvalidCellListeners(0);
|
|
1429
1429
|
if (!collIsEmpty(changedCells)) {
|
|
@@ -1434,7 +1434,7 @@ const createStore = () => {
|
|
|
1434
1434
|
callValuesListenersForChanges(0);
|
|
1435
1435
|
}
|
|
1436
1436
|
internalListeners[1]?.();
|
|
1437
|
-
callListeners(finishTransactionListeners[1],
|
|
1437
|
+
callListeners(finishTransactionListeners[1], undefined);
|
|
1438
1438
|
internalListeners[2]?.();
|
|
1439
1439
|
transactions = 0;
|
|
1440
1440
|
hadTables = hasTables();
|
|
@@ -1719,7 +1719,7 @@ const createStore = () => {
|
|
|
1719
1719
|
addListener(
|
|
1720
1720
|
args[argumentCount],
|
|
1721
1721
|
idSetNode[args[argumentCount + 1] ? 1 : 0],
|
|
1722
|
-
argumentCount > 0 ? slice(args, 0, argumentCount) :
|
|
1722
|
+
argumentCount > 0 ? slice(args, 0, argumentCount) : undefined,
|
|
1723
1723
|
pathGetters,
|
|
1724
1724
|
extraArgsGetter,
|
|
1725
1725
|
);
|
|
@@ -1839,15 +1839,15 @@ const validateMergeableContent = (mergeableContent) =>
|
|
|
1839
1839
|
cellStamps,
|
|
1840
1840
|
(cellStamp) =>
|
|
1841
1841
|
stampValidate(cellStamp, isCellOrValueOrNullOrUndefined),
|
|
1842
|
-
|
|
1842
|
+
undefined,
|
|
1843
1843
|
1,
|
|
1844
1844
|
),
|
|
1845
1845
|
),
|
|
1846
|
-
|
|
1846
|
+
undefined,
|
|
1847
1847
|
1,
|
|
1848
1848
|
),
|
|
1849
1849
|
),
|
|
1850
|
-
|
|
1850
|
+
undefined,
|
|
1851
1851
|
1,
|
|
1852
1852
|
),
|
|
1853
1853
|
) &&
|
|
@@ -1855,7 +1855,7 @@ const validateMergeableContent = (mergeableContent) =>
|
|
|
1855
1855
|
objValidate(
|
|
1856
1856
|
values,
|
|
1857
1857
|
(value) => stampValidate(value, isCellOrValueOrNullOrUndefined),
|
|
1858
|
-
|
|
1858
|
+
undefined,
|
|
1859
1859
|
1,
|
|
1860
1860
|
),
|
|
1861
1861
|
);
|
|
@@ -1950,7 +1950,7 @@ const createMergeableStore = (uniqueId) => {
|
|
|
1950
1950
|
thingsObj,
|
|
1951
1951
|
([thing, thingTime, incomingThingHash = 0], thingId) => {
|
|
1952
1952
|
const thingStampMap = mapEnsure(thingStampMaps, thingId, () => [
|
|
1953
|
-
|
|
1953
|
+
undefined,
|
|
1954
1954
|
EMPTY_STRING,
|
|
1955
1955
|
0,
|
|
1956
1956
|
]);
|
package/metrics/index.js
CHANGED
|
@@ -11,7 +11,7 @@ const math = Math;
|
|
|
11
11
|
const mathMax = math.max;
|
|
12
12
|
const mathMin = math.min;
|
|
13
13
|
const isFiniteNumber = isFinite;
|
|
14
|
-
const isUndefined = (thing) => thing ==
|
|
14
|
+
const isUndefined = (thing) => thing == undefined;
|
|
15
15
|
const ifNotUndefined = (value, then, otherwise) =>
|
|
16
16
|
isUndefined(value) ? otherwise?.() : then(value);
|
|
17
17
|
const isString = (thing) => getTypeOf(thing) == STRING;
|
|
@@ -19,7 +19,7 @@ const isFunction = (thing) => getTypeOf(thing) == FUNCTION;
|
|
|
19
19
|
const isArray = (thing) => Array.isArray(thing);
|
|
20
20
|
const size = (arrayOrString) => arrayOrString.length;
|
|
21
21
|
const test = (regex, subject) => regex.test(subject);
|
|
22
|
-
const getUndefined = () =>
|
|
22
|
+
const getUndefined = () => undefined;
|
|
23
23
|
|
|
24
24
|
const arrayEvery = (array, cb) => array.every(cb);
|
|
25
25
|
const arrayIsEqual = (array1, array2) =>
|
|
@@ -98,9 +98,9 @@ const numericAggregators = /* @__PURE__ */ mapNew([
|
|
|
98
98
|
[
|
|
99
99
|
(numbers) => mathMax(...numbers),
|
|
100
100
|
(metric, add) => mathMax(add, metric),
|
|
101
|
-
(metric, remove) => (remove == metric ?
|
|
101
|
+
(metric, remove) => (remove == metric ? undefined : metric),
|
|
102
102
|
(metric, add, remove) =>
|
|
103
|
-
remove == metric ?
|
|
103
|
+
remove == metric ? undefined : mathMax(add, metric),
|
|
104
104
|
],
|
|
105
105
|
],
|
|
106
106
|
[
|
|
@@ -108,9 +108,9 @@ const numericAggregators = /* @__PURE__ */ mapNew([
|
|
|
108
108
|
[
|
|
109
109
|
(numbers) => mathMin(...numbers),
|
|
110
110
|
(metric, add) => mathMin(add, metric),
|
|
111
|
-
(metric, remove) => (remove == metric ?
|
|
111
|
+
(metric, remove) => (remove == metric ? undefined : metric),
|
|
112
112
|
(metric, add, remove) =>
|
|
113
|
-
remove == metric ?
|
|
113
|
+
remove == metric ? undefined : mathMin(add, metric),
|
|
114
114
|
],
|
|
115
115
|
],
|
|
116
116
|
[
|
|
@@ -132,7 +132,7 @@ const getAggregateValue = (
|
|
|
132
132
|
force = false,
|
|
133
133
|
) => {
|
|
134
134
|
if (collIsEmpty(newValues)) {
|
|
135
|
-
return
|
|
135
|
+
return undefined;
|
|
136
136
|
}
|
|
137
137
|
const [aggregate, aggregateAdd, aggregateRemove, aggregateReplace] =
|
|
138
138
|
aggregators;
|
|
@@ -229,7 +229,7 @@ const getDefinableFunctions = (
|
|
|
229
229
|
const oldRowValue = mapGet(rowValues, rowId);
|
|
230
230
|
const newRowValue = hasRow(tableId, rowId)
|
|
231
231
|
? validateRowValue(getRowValue(getCell, rowId))
|
|
232
|
-
:
|
|
232
|
+
: undefined;
|
|
233
233
|
if (
|
|
234
234
|
!(
|
|
235
235
|
oldRowValue === newRowValue ||
|
|
@@ -244,7 +244,7 @@ const getDefinableFunctions = (
|
|
|
244
244
|
const oldSortKey = mapGet(sortKeys, rowId);
|
|
245
245
|
const newSortKey = hasRow(tableId, rowId)
|
|
246
246
|
? getSortKey(getCell, rowId)
|
|
247
|
-
:
|
|
247
|
+
: undefined;
|
|
248
248
|
if (oldSortKey != newSortKey) {
|
|
249
249
|
mapSet(changedSortKeys, rowId, newSortKey);
|
|
250
250
|
}
|
|
@@ -387,7 +387,7 @@ const getListenerFunctions = (getThing) => {
|
|
|
387
387
|
);
|
|
388
388
|
const delListener = (id) =>
|
|
389
389
|
ifNotUndefined(mapGet(allListeners, id), ([, idSetNode, idOrNulls]) => {
|
|
390
|
-
visitTree(idSetNode, idOrNulls ?? [EMPTY_STRING],
|
|
390
|
+
visitTree(idSetNode, idOrNulls ?? [EMPTY_STRING], undefined, (idSet) => {
|
|
391
391
|
collDel(idSet, id);
|
|
392
392
|
return collIsEmpty(idSet) ? 1 : 0;
|
|
393
393
|
});
|
|
@@ -444,7 +444,7 @@ const createMetrics = getCreateFunction((store) => {
|
|
|
444
444
|
value === true ||
|
|
445
445
|
value === false ||
|
|
446
446
|
value === EMPTY_STRING
|
|
447
|
-
?
|
|
447
|
+
? undefined
|
|
448
448
|
: value * 1,
|
|
449
449
|
addListener,
|
|
450
450
|
callListeners,
|
|
@@ -479,7 +479,7 @@ const createMetrics = getCreateFunction((store) => {
|
|
|
479
479
|
force,
|
|
480
480
|
);
|
|
481
481
|
if (!isFiniteNumber(newMetric)) {
|
|
482
|
-
newMetric =
|
|
482
|
+
newMetric = undefined;
|
|
483
483
|
}
|
|
484
484
|
if (newMetric != oldMetric) {
|
|
485
485
|
setMetric(metricId, newMetric);
|
|
@@ -11,7 +11,7 @@ const math = Math;
|
|
|
11
11
|
const mathMax = math.max;
|
|
12
12
|
const mathMin = math.min;
|
|
13
13
|
const isFiniteNumber = isFinite;
|
|
14
|
-
const isUndefined = (thing) => thing ==
|
|
14
|
+
const isUndefined = (thing) => thing == undefined;
|
|
15
15
|
const ifNotUndefined = (value, then, otherwise) =>
|
|
16
16
|
isUndefined(value) ? otherwise?.() : then(value);
|
|
17
17
|
const isString = (thing) => getTypeOf(thing) == STRING;
|
|
@@ -19,7 +19,7 @@ const isFunction = (thing) => getTypeOf(thing) == FUNCTION;
|
|
|
19
19
|
const isArray = (thing) => Array.isArray(thing);
|
|
20
20
|
const size = (arrayOrString) => arrayOrString.length;
|
|
21
21
|
const test = (regex, subject) => regex.test(subject);
|
|
22
|
-
const getUndefined = () =>
|
|
22
|
+
const getUndefined = () => undefined;
|
|
23
23
|
|
|
24
24
|
const arrayEvery = (array, cb) => array.every(cb);
|
|
25
25
|
const arrayIsEqual = (array1, array2) =>
|
|
@@ -98,9 +98,9 @@ const numericAggregators = /* @__PURE__ */ mapNew([
|
|
|
98
98
|
[
|
|
99
99
|
(numbers) => mathMax(...numbers),
|
|
100
100
|
(metric, add) => mathMax(add, metric),
|
|
101
|
-
(metric, remove) => (remove == metric ?
|
|
101
|
+
(metric, remove) => (remove == metric ? undefined : metric),
|
|
102
102
|
(metric, add, remove) =>
|
|
103
|
-
remove == metric ?
|
|
103
|
+
remove == metric ? undefined : mathMax(add, metric),
|
|
104
104
|
],
|
|
105
105
|
],
|
|
106
106
|
[
|
|
@@ -108,9 +108,9 @@ const numericAggregators = /* @__PURE__ */ mapNew([
|
|
|
108
108
|
[
|
|
109
109
|
(numbers) => mathMin(...numbers),
|
|
110
110
|
(metric, add) => mathMin(add, metric),
|
|
111
|
-
(metric, remove) => (remove == metric ?
|
|
111
|
+
(metric, remove) => (remove == metric ? undefined : metric),
|
|
112
112
|
(metric, add, remove) =>
|
|
113
|
-
remove == metric ?
|
|
113
|
+
remove == metric ? undefined : mathMin(add, metric),
|
|
114
114
|
],
|
|
115
115
|
],
|
|
116
116
|
[
|
|
@@ -132,7 +132,7 @@ const getAggregateValue = (
|
|
|
132
132
|
force = false,
|
|
133
133
|
) => {
|
|
134
134
|
if (collIsEmpty(newValues)) {
|
|
135
|
-
return
|
|
135
|
+
return undefined;
|
|
136
136
|
}
|
|
137
137
|
const [aggregate, aggregateAdd, aggregateRemove, aggregateReplace] =
|
|
138
138
|
aggregators;
|
|
@@ -229,7 +229,7 @@ const getDefinableFunctions = (
|
|
|
229
229
|
const oldRowValue = mapGet(rowValues, rowId);
|
|
230
230
|
const newRowValue = hasRow(tableId, rowId)
|
|
231
231
|
? validateRowValue(getRowValue(getCell, rowId))
|
|
232
|
-
:
|
|
232
|
+
: undefined;
|
|
233
233
|
if (
|
|
234
234
|
!(
|
|
235
235
|
oldRowValue === newRowValue ||
|
|
@@ -244,7 +244,7 @@ const getDefinableFunctions = (
|
|
|
244
244
|
const oldSortKey = mapGet(sortKeys, rowId);
|
|
245
245
|
const newSortKey = hasRow(tableId, rowId)
|
|
246
246
|
? getSortKey(getCell, rowId)
|
|
247
|
-
:
|
|
247
|
+
: undefined;
|
|
248
248
|
if (oldSortKey != newSortKey) {
|
|
249
249
|
mapSet(changedSortKeys, rowId, newSortKey);
|
|
250
250
|
}
|
|
@@ -387,7 +387,7 @@ const getListenerFunctions = (getThing) => {
|
|
|
387
387
|
);
|
|
388
388
|
const delListener = (id) =>
|
|
389
389
|
ifNotUndefined(mapGet(allListeners, id), ([, idSetNode, idOrNulls]) => {
|
|
390
|
-
visitTree(idSetNode, idOrNulls ?? [EMPTY_STRING],
|
|
390
|
+
visitTree(idSetNode, idOrNulls ?? [EMPTY_STRING], undefined, (idSet) => {
|
|
391
391
|
collDel(idSet, id);
|
|
392
392
|
return collIsEmpty(idSet) ? 1 : 0;
|
|
393
393
|
});
|
|
@@ -444,7 +444,7 @@ const createMetrics = getCreateFunction((store) => {
|
|
|
444
444
|
value === true ||
|
|
445
445
|
value === false ||
|
|
446
446
|
value === EMPTY_STRING
|
|
447
|
-
?
|
|
447
|
+
? undefined
|
|
448
448
|
: value * 1,
|
|
449
449
|
addListener,
|
|
450
450
|
callListeners,
|
|
@@ -479,7 +479,7 @@ const createMetrics = getCreateFunction((store) => {
|
|
|
479
479
|
force,
|
|
480
480
|
);
|
|
481
481
|
if (!isFiniteNumber(newMetric)) {
|
|
482
|
-
newMetric =
|
|
482
|
+
newMetric = undefined;
|
|
483
483
|
}
|
|
484
484
|
if (newMetric != oldMetric) {
|
|
485
485
|
setMetric(metricId, newMetric);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "tinybase",
|
|
3
|
-
"version": "5.4.
|
|
3
|
+
"version": "5.4.6",
|
|
4
4
|
"author": "jamesgpearce",
|
|
5
5
|
"repository": "github:tinyplex/tinybase",
|
|
6
6
|
"license": "MIT",
|
|
@@ -21,7 +21,7 @@
|
|
|
21
21
|
"sideEffects": false,
|
|
22
22
|
"peerDependencies": {
|
|
23
23
|
"@automerge/automerge-repo": "^1.2.1",
|
|
24
|
-
"@cloudflare/workers-types": "^4.
|
|
24
|
+
"@cloudflare/workers-types": "^4.20241230.0",
|
|
25
25
|
"@electric-sql/pglite": "^0.2.15",
|
|
26
26
|
"@libsql/client": "^0.14.0",
|
|
27
27
|
"@powersync/common": "^1.22.0",
|
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
"@vlcn.io/crsqlite-wasm": "^0.16.0",
|
|
30
30
|
"electric-sql": "^0.12.1",
|
|
31
31
|
"expo": "^52.0.4",
|
|
32
|
-
"expo-sqlite": "^15.0.
|
|
32
|
+
"expo-sqlite": "^15.0.5",
|
|
33
33
|
"partykit": "^0.0.111",
|
|
34
34
|
"partysocket": "^1.0.2",
|
|
35
35
|
"postgres": "^3.4.5",
|
package/persisters/index.js
CHANGED
|
@@ -12,7 +12,7 @@ const startInterval = (callback, sec, immediate) => {
|
|
|
12
12
|
return setInterval(callback, sec * THOUSAND);
|
|
13
13
|
};
|
|
14
14
|
const stopInterval = clearInterval;
|
|
15
|
-
const isUndefined = (thing) => thing ==
|
|
15
|
+
const isUndefined = (thing) => thing == undefined;
|
|
16
16
|
const ifNotUndefined = (value, then, otherwise) =>
|
|
17
17
|
isUndefined(value) ? otherwise?.() : then(value);
|
|
18
18
|
const isString = (thing) => getTypeOf(thing) == STRING;
|
|
@@ -173,7 +173,7 @@ const getListenerFunctions = (getThing) => {
|
|
|
173
173
|
);
|
|
174
174
|
const delListener = (id) =>
|
|
175
175
|
ifNotUndefined(mapGet(allListeners, id), ([, idSetNode, idOrNulls]) => {
|
|
176
|
-
visitTree(idSetNode, idOrNulls ?? [EMPTY_STRING],
|
|
176
|
+
visitTree(idSetNode, idOrNulls ?? [EMPTY_STRING], undefined, (idSet) => {
|
|
177
177
|
collDel(idSet, id);
|
|
178
178
|
return collIsEmpty(idSet) ? 1 : 0;
|
|
179
179
|
});
|
|
@@ -273,7 +273,7 @@ const createCustomPersister = (
|
|
|
273
273
|
const setStatus = (newStatus) => {
|
|
274
274
|
if (newStatus != status) {
|
|
275
275
|
status = newStatus;
|
|
276
|
-
callListeners(statusListeners,
|
|
276
|
+
callListeners(statusListeners, undefined, status);
|
|
277
277
|
}
|
|
278
278
|
};
|
|
279
279
|
const run = async () => {
|
|
@@ -354,7 +354,7 @@ const createCustomPersister = (
|
|
|
354
354
|
const stopAutoLoad = () => {
|
|
355
355
|
if (autoLoadHandle) {
|
|
356
356
|
delPersisterListener(autoLoadHandle);
|
|
357
|
-
autoLoadHandle =
|
|
357
|
+
autoLoadHandle = undefined;
|
|
358
358
|
}
|
|
359
359
|
return persister;
|
|
360
360
|
};
|
|
@@ -390,7 +390,7 @@ const createCustomPersister = (
|
|
|
390
390
|
const stopAutoSave = () => {
|
|
391
391
|
if (autoSaveListenerId) {
|
|
392
392
|
store.delListener(autoSaveListenerId);
|
|
393
|
-
autoSaveListenerId =
|
|
393
|
+
autoSaveListenerId = undefined;
|
|
394
394
|
}
|
|
395
395
|
return persister;
|
|
396
396
|
};
|
|
@@ -466,9 +466,9 @@ const getPlaceholders = (array, offset = [1]) =>
|
|
|
466
466
|
const jsonString = JSON.stringify;
|
|
467
467
|
const jsonParse = JSON.parse;
|
|
468
468
|
const jsonStringWithUndefined = (obj) =>
|
|
469
|
-
jsonString(obj, (_key, value) => (value ===
|
|
469
|
+
jsonString(obj, (_key, value) => (value === undefined ? UNDEFINED : value));
|
|
470
470
|
const jsonParseWithUndefined = (str) =>
|
|
471
|
-
jsonParse(str, (_key, value) => (value === UNDEFINED ?
|
|
471
|
+
jsonParse(str, (_key, value) => (value === UNDEFINED ? undefined : value));
|
|
472
472
|
|
|
473
473
|
const getCommandFunctions = (
|
|
474
474
|
databaseExecuteCommand,
|
|
@@ -885,7 +885,7 @@ const createTabularPersister = (
|
|
|
885
885
|
const values = await loadValues();
|
|
886
886
|
return !objIsEmpty(tables) || !isUndefined(values)
|
|
887
887
|
? [tables, values]
|
|
888
|
-
:
|
|
888
|
+
: undefined;
|
|
889
889
|
});
|
|
890
890
|
const setPersisted = async (getContent, changes) =>
|
|
891
891
|
await transaction(async () => {
|
|
@@ -1107,7 +1107,7 @@ const createCustomSqlitePersister = (
|
|
|
1107
1107
|
upsert,
|
|
1108
1108
|
(cellOrValue) =>
|
|
1109
1109
|
cellOrValue === true ? 1 : cellOrValue === false ? 0 : cellOrValue,
|
|
1110
|
-
|
|
1110
|
+
undefined,
|
|
1111
1111
|
);
|
|
1112
1112
|
};
|
|
1113
1113
|
|
|
@@ -1198,7 +1198,7 @@ const createCustomPostgreSqlPersister = (
|
|
|
1198
1198
|
thing,
|
|
1199
1199
|
getThing,
|
|
1200
1200
|
'text',
|
|
1201
|
-
|
|
1201
|
+
undefined,
|
|
1202
1202
|
(cellOrValue) => jsonString(cellOrValue),
|
|
1203
1203
|
(field) => jsonParse(field),
|
|
1204
1204
|
);
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
const TINYBASE = 'tinybase';
|
|
2
2
|
const EMPTY_STRING = '';
|
|
3
3
|
|
|
4
|
-
const isUndefined = (thing) => thing ==
|
|
4
|
+
const isUndefined = (thing) => thing == undefined;
|
|
5
5
|
const ifNotUndefined = (value, then, otherwise) =>
|
|
6
6
|
isUndefined(value) ? otherwise?.() : then(value);
|
|
7
7
|
const isArray = (thing) => Array.isArray(thing);
|
|
@@ -155,7 +155,7 @@ const getListenerFunctions = (getThing) => {
|
|
|
155
155
|
);
|
|
156
156
|
const delListener = (id) =>
|
|
157
157
|
ifNotUndefined(mapGet(allListeners, id), ([, idSetNode, idOrNulls]) => {
|
|
158
|
-
visitTree(idSetNode, idOrNulls ?? [EMPTY_STRING],
|
|
158
|
+
visitTree(idSetNode, idOrNulls ?? [EMPTY_STRING], undefined, (idSet) => {
|
|
159
159
|
collDel(idSet, id);
|
|
160
160
|
return collIsEmpty(idSet) ? 1 : 0;
|
|
161
161
|
});
|
|
@@ -245,7 +245,7 @@ const createCustomPersister = (
|
|
|
245
245
|
const setStatus = (newStatus) => {
|
|
246
246
|
if (newStatus != status) {
|
|
247
247
|
status = newStatus;
|
|
248
|
-
callListeners(statusListeners,
|
|
248
|
+
callListeners(statusListeners, undefined, status);
|
|
249
249
|
}
|
|
250
250
|
};
|
|
251
251
|
const run = async () => {
|
|
@@ -326,7 +326,7 @@ const createCustomPersister = (
|
|
|
326
326
|
const stopAutoLoad = () => {
|
|
327
327
|
if (autoLoadHandle) {
|
|
328
328
|
delPersisterListener(autoLoadHandle);
|
|
329
|
-
autoLoadHandle =
|
|
329
|
+
autoLoadHandle = undefined;
|
|
330
330
|
}
|
|
331
331
|
return persister;
|
|
332
332
|
};
|
|
@@ -362,7 +362,7 @@ const createCustomPersister = (
|
|
|
362
362
|
const stopAutoSave = () => {
|
|
363
363
|
if (autoSaveListenerId) {
|
|
364
364
|
store.delListener(autoSaveListenerId);
|
|
365
|
-
autoSaveListenerId =
|
|
365
|
+
autoSaveListenerId = undefined;
|
|
366
366
|
}
|
|
367
367
|
return persister;
|
|
368
368
|
};
|
|
@@ -461,7 +461,7 @@ const applyChangesToDoc = (doc, docObjName, getContent, changes) => {
|
|
|
461
461
|
});
|
|
462
462
|
if (changesFailed) {
|
|
463
463
|
const [tables, values] = getContent();
|
|
464
|
-
docObjMatch(docTables,
|
|
464
|
+
docObjMatch(docTables, undefined, tables, (_, tableId, table) =>
|
|
465
465
|
docObjMatch(docTables, tableId, table, (docTable, rowId, row) =>
|
|
466
466
|
docObjMatch(docTable, rowId, row, (docRow, cellId, cell) => {
|
|
467
467
|
if (objGet(docRow, cellId) !== cell) {
|
|
@@ -471,7 +471,7 @@ const applyChangesToDoc = (doc, docObjName, getContent, changes) => {
|
|
|
471
471
|
}),
|
|
472
472
|
),
|
|
473
473
|
);
|
|
474
|
-
docObjMatch(docValues,
|
|
474
|
+
docObjMatch(docValues, undefined, values, (_, valueId, value) => {
|
|
475
475
|
if (objGet(docValues, valueId) !== value) {
|
|
476
476
|
docValues[valueId] = value;
|
|
477
477
|
}
|
|
@@ -510,7 +510,7 @@ const createAutomergePersister = (
|
|
|
510
510
|
const doc = await docHandle.doc();
|
|
511
511
|
return objSize(doc?.[docObjName]) == 2
|
|
512
512
|
? getDocContent(doc, docObjName)
|
|
513
|
-
:
|
|
513
|
+
: undefined;
|
|
514
514
|
};
|
|
515
515
|
const setPersisted = async (getContent, changes) =>
|
|
516
516
|
docHandle.change((doc) =>
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
const TINYBASE = 'tinybase';
|
|
2
2
|
const EMPTY_STRING = '';
|
|
3
3
|
|
|
4
|
-
const isUndefined = (thing) => thing ==
|
|
4
|
+
const isUndefined = (thing) => thing == undefined;
|
|
5
5
|
const ifNotUndefined = (value, then, otherwise) =>
|
|
6
6
|
isUndefined(value) ? otherwise?.() : then(value);
|
|
7
7
|
const isArray = (thing) => Array.isArray(thing);
|
|
@@ -155,7 +155,7 @@ const getListenerFunctions = (getThing) => {
|
|
|
155
155
|
);
|
|
156
156
|
const delListener = (id) =>
|
|
157
157
|
ifNotUndefined(mapGet(allListeners, id), ([, idSetNode, idOrNulls]) => {
|
|
158
|
-
visitTree(idSetNode, idOrNulls ?? [EMPTY_STRING],
|
|
158
|
+
visitTree(idSetNode, idOrNulls ?? [EMPTY_STRING], undefined, (idSet) => {
|
|
159
159
|
collDel(idSet, id);
|
|
160
160
|
return collIsEmpty(idSet) ? 1 : 0;
|
|
161
161
|
});
|
|
@@ -245,7 +245,7 @@ const createCustomPersister = (
|
|
|
245
245
|
const setStatus = (newStatus) => {
|
|
246
246
|
if (newStatus != status) {
|
|
247
247
|
status = newStatus;
|
|
248
|
-
callListeners(statusListeners,
|
|
248
|
+
callListeners(statusListeners, undefined, status);
|
|
249
249
|
}
|
|
250
250
|
};
|
|
251
251
|
const run = async () => {
|
|
@@ -326,7 +326,7 @@ const createCustomPersister = (
|
|
|
326
326
|
const stopAutoLoad = () => {
|
|
327
327
|
if (autoLoadHandle) {
|
|
328
328
|
delPersisterListener(autoLoadHandle);
|
|
329
|
-
autoLoadHandle =
|
|
329
|
+
autoLoadHandle = undefined;
|
|
330
330
|
}
|
|
331
331
|
return persister;
|
|
332
332
|
};
|
|
@@ -362,7 +362,7 @@ const createCustomPersister = (
|
|
|
362
362
|
const stopAutoSave = () => {
|
|
363
363
|
if (autoSaveListenerId) {
|
|
364
364
|
store.delListener(autoSaveListenerId);
|
|
365
|
-
autoSaveListenerId =
|
|
365
|
+
autoSaveListenerId = undefined;
|
|
366
366
|
}
|
|
367
367
|
return persister;
|
|
368
368
|
};
|
|
@@ -461,7 +461,7 @@ const applyChangesToDoc = (doc, docObjName, getContent, changes) => {
|
|
|
461
461
|
});
|
|
462
462
|
if (changesFailed) {
|
|
463
463
|
const [tables, values] = getContent();
|
|
464
|
-
docObjMatch(docTables,
|
|
464
|
+
docObjMatch(docTables, undefined, tables, (_, tableId, table) =>
|
|
465
465
|
docObjMatch(docTables, tableId, table, (docTable, rowId, row) =>
|
|
466
466
|
docObjMatch(docTable, rowId, row, (docRow, cellId, cell) => {
|
|
467
467
|
if (objGet(docRow, cellId) !== cell) {
|
|
@@ -471,7 +471,7 @@ const applyChangesToDoc = (doc, docObjName, getContent, changes) => {
|
|
|
471
471
|
}),
|
|
472
472
|
),
|
|
473
473
|
);
|
|
474
|
-
docObjMatch(docValues,
|
|
474
|
+
docObjMatch(docValues, undefined, values, (_, valueId, value) => {
|
|
475
475
|
if (objGet(docValues, valueId) !== value) {
|
|
476
476
|
docValues[valueId] = value;
|
|
477
477
|
}
|
|
@@ -510,7 +510,7 @@ const createAutomergePersister = (
|
|
|
510
510
|
const doc = await docHandle.doc();
|
|
511
511
|
return objSize(doc?.[docObjName]) == 2
|
|
512
512
|
? getDocContent(doc, docObjName)
|
|
513
|
-
:
|
|
513
|
+
: undefined;
|
|
514
514
|
};
|
|
515
515
|
const setPersisted = async (getContent, changes) =>
|
|
516
516
|
docHandle.change((doc) =>
|
|
@@ -3,7 +3,7 @@ const UNDEFINED = '\uFFFC';
|
|
|
3
3
|
|
|
4
4
|
const GLOBAL = globalThis;
|
|
5
5
|
const WINDOW = GLOBAL.window;
|
|
6
|
-
const isUndefined = (thing) => thing ==
|
|
6
|
+
const isUndefined = (thing) => thing == undefined;
|
|
7
7
|
const ifNotUndefined = (value, then, otherwise) =>
|
|
8
8
|
isUndefined(value) ? otherwise?.() : then(value);
|
|
9
9
|
const isArray = (thing) => Array.isArray(thing);
|
|
@@ -39,9 +39,9 @@ const objIsEmpty = (obj) => isObject(obj) && objSize(obj) == 0;
|
|
|
39
39
|
const jsonString = JSON.stringify;
|
|
40
40
|
const jsonParse = JSON.parse;
|
|
41
41
|
const jsonStringWithUndefined = (obj) =>
|
|
42
|
-
jsonString(obj, (_key, value) => (value ===
|
|
42
|
+
jsonString(obj, (_key, value) => (value === undefined ? UNDEFINED : value));
|
|
43
43
|
const jsonParseWithUndefined = (str) =>
|
|
44
|
-
jsonParse(str, (_key, value) => (value === UNDEFINED ?
|
|
44
|
+
jsonParse(str, (_key, value) => (value === UNDEFINED ? undefined : value));
|
|
45
45
|
|
|
46
46
|
const collSize = (coll) => coll?.size ?? 0;
|
|
47
47
|
const collHas = (coll, keyOrValue) => coll?.has(keyOrValue) ?? false;
|
|
@@ -147,7 +147,7 @@ const getListenerFunctions = (getThing) => {
|
|
|
147
147
|
);
|
|
148
148
|
const delListener = (id) =>
|
|
149
149
|
ifNotUndefined(mapGet(allListeners, id), ([, idSetNode, idOrNulls]) => {
|
|
150
|
-
visitTree(idSetNode, idOrNulls ?? [EMPTY_STRING],
|
|
150
|
+
visitTree(idSetNode, idOrNulls ?? [EMPTY_STRING], undefined, (idSet) => {
|
|
151
151
|
collDel(idSet, id);
|
|
152
152
|
return collIsEmpty(idSet) ? 1 : 0;
|
|
153
153
|
});
|
|
@@ -237,7 +237,7 @@ const createCustomPersister = (
|
|
|
237
237
|
const setStatus = (newStatus) => {
|
|
238
238
|
if (newStatus != status) {
|
|
239
239
|
status = newStatus;
|
|
240
|
-
callListeners(statusListeners,
|
|
240
|
+
callListeners(statusListeners, undefined, status);
|
|
241
241
|
}
|
|
242
242
|
};
|
|
243
243
|
const run = async () => {
|
|
@@ -318,7 +318,7 @@ const createCustomPersister = (
|
|
|
318
318
|
const stopAutoLoad = () => {
|
|
319
319
|
if (autoLoadHandle) {
|
|
320
320
|
delPersisterListener(autoLoadHandle);
|
|
321
|
-
autoLoadHandle =
|
|
321
|
+
autoLoadHandle = undefined;
|
|
322
322
|
}
|
|
323
323
|
return persister;
|
|
324
324
|
};
|
|
@@ -354,7 +354,7 @@ const createCustomPersister = (
|
|
|
354
354
|
const stopAutoSave = () => {
|
|
355
355
|
if (autoSaveListenerId) {
|
|
356
356
|
store.delListener(autoSaveListenerId);
|
|
357
|
-
autoSaveListenerId =
|
|
357
|
+
autoSaveListenerId = undefined;
|
|
358
358
|
}
|
|
359
359
|
return persister;
|
|
360
360
|
};
|