tinybase 6.0.0-beta.2 → 6.0.0
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 +29 -30
- package/@types/synchronizers/synchronizer-ws-server/index.d.ts +29 -30
- package/@types/synchronizers/synchronizer-ws-server/with-schemas/index.d.cts +33 -34
- package/@types/synchronizers/synchronizer-ws-server/with-schemas/index.d.ts +33 -34
- package/@types/synchronizers/synchronizer-ws-server-durable-object/index.d.cts +4 -5
- package/@types/synchronizers/synchronizer-ws-server-durable-object/index.d.ts +4 -5
- package/@types/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.d.cts +8 -9
- package/@types/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.d.ts +8 -9
- 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 +6 -6
- 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 +13 -32
- package/relationships/index.js +3 -3
- package/relationships/with-schemas/index.js +3 -3
- package/releases.md +35 -34
- 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
|
@@ -47,6 +47,22 @@ const slice = (arrayOrString, start, end) => arrayOrString.slice(start, end);
|
|
|
47
47
|
const size = (arrayOrString) => arrayOrString.length;
|
|
48
48
|
const test = (regex, subject) => regex.test(subject);
|
|
49
49
|
|
|
50
|
+
const getCellOrValueType = (cellOrValue) => {
|
|
51
|
+
const type = getTypeOf(cellOrValue);
|
|
52
|
+
return isTypeStringOrBoolean(type) ||
|
|
53
|
+
(type == NUMBER && isFiniteNumber(cellOrValue))
|
|
54
|
+
? type
|
|
55
|
+
: void 0;
|
|
56
|
+
};
|
|
57
|
+
const isCellOrValueOrNullOrUndefined = (cellOrValue) =>
|
|
58
|
+
isUndefined(cellOrValue) || !isUndefined(getCellOrValueType(cellOrValue));
|
|
59
|
+
const setOrDelCell = (store, tableId, rowId, cellId, cell) =>
|
|
60
|
+
isUndefined(cell)
|
|
61
|
+
? store.delCell(tableId, rowId, cellId, true)
|
|
62
|
+
: store.setCell(tableId, rowId, cellId, cell);
|
|
63
|
+
const setOrDelValue = (store, valueId, value) =>
|
|
64
|
+
isUndefined(value) ? store.delValue(valueId) : store.setValue(valueId, value);
|
|
65
|
+
|
|
50
66
|
const arrayHas = (array, value) => array.includes(value);
|
|
51
67
|
const arrayEvery = (array, cb) => array.every(cb);
|
|
52
68
|
const arrayIsEqual = (array1, array2) =>
|
|
@@ -59,6 +75,30 @@ const arrayReduce = (array, cb, initial) => array.reduce(cb, initial);
|
|
|
59
75
|
const arrayPush = (array, ...values) => array.push(...values);
|
|
60
76
|
const arrayShift = (array) => array.shift();
|
|
61
77
|
|
|
78
|
+
const collSizeN = (collSizer) => (coll) =>
|
|
79
|
+
arrayReduce(collValues(coll), (total, coll2) => total + collSizer(coll2), 0);
|
|
80
|
+
const collSize = (coll) => coll?.size ?? 0;
|
|
81
|
+
const collSize2 = collSizeN(collSize);
|
|
82
|
+
const collSize3 = collSizeN(collSize2);
|
|
83
|
+
const collSize4 = collSizeN(collSize3);
|
|
84
|
+
const collHas = (coll, keyOrValue) => coll?.has(keyOrValue) ?? false;
|
|
85
|
+
const collIsEmpty = (coll) => isUndefined(coll) || collSize(coll) == 0;
|
|
86
|
+
const collValues = (coll) => [...(coll?.values() ?? [])];
|
|
87
|
+
const collClear = (coll) => coll.clear();
|
|
88
|
+
const collForEach = (coll, cb) => coll?.forEach(cb);
|
|
89
|
+
const collDel = (coll, keyOrValue) => coll?.delete(keyOrValue);
|
|
90
|
+
|
|
91
|
+
const textEncoder = /* @__PURE__ */ new GLOBAL.TextEncoder();
|
|
92
|
+
const getHash = (value) => {
|
|
93
|
+
let hash = 2166136261;
|
|
94
|
+
arrayForEach(textEncoder.encode(value), (char) => {
|
|
95
|
+
hash ^= char;
|
|
96
|
+
hash +=
|
|
97
|
+
(hash << 1) + (hash << 4) + (hash << 7) + (hash << 8) + (hash << 24);
|
|
98
|
+
});
|
|
99
|
+
return hash >>> 0;
|
|
100
|
+
};
|
|
101
|
+
|
|
62
102
|
const object = Object;
|
|
63
103
|
const getPrototypeOf = (obj) => object.getPrototypeOf(obj);
|
|
64
104
|
const objEntries = object.entries;
|
|
@@ -114,27 +154,6 @@ const objValidate = (obj, validateChild, onInvalidObj, emptyIsValid = 0) => {
|
|
|
114
154
|
return emptyIsValid ? true : !objIsEmpty(obj);
|
|
115
155
|
};
|
|
116
156
|
|
|
117
|
-
const setNew = (entryOrEntries) =>
|
|
118
|
-
new Set(
|
|
119
|
-
isArray(entryOrEntries) || isUndefined(entryOrEntries)
|
|
120
|
-
? entryOrEntries
|
|
121
|
-
: [entryOrEntries],
|
|
122
|
-
);
|
|
123
|
-
const setAdd = (set, value) => set?.add(value);
|
|
124
|
-
|
|
125
|
-
const collSizeN = (collSizer) => (coll) =>
|
|
126
|
-
arrayReduce(collValues(coll), (total, coll2) => total + collSizer(coll2), 0);
|
|
127
|
-
const collSize = (coll) => coll?.size ?? 0;
|
|
128
|
-
const collSize2 = collSizeN(collSize);
|
|
129
|
-
const collSize3 = collSizeN(collSize2);
|
|
130
|
-
const collSize4 = collSizeN(collSize3);
|
|
131
|
-
const collHas = (coll, keyOrValue) => coll?.has(keyOrValue) ?? false;
|
|
132
|
-
const collIsEmpty = (coll) => isUndefined(coll) || collSize(coll) == 0;
|
|
133
|
-
const collValues = (coll) => [...(coll?.values() ?? [])];
|
|
134
|
-
const collClear = (coll) => coll.clear();
|
|
135
|
-
const collForEach = (coll, cb) => coll?.forEach(cb);
|
|
136
|
-
const collDel = (coll, keyOrValue) => coll?.delete(keyOrValue);
|
|
137
|
-
|
|
138
157
|
const mapNew = (entries) => new Map(entries);
|
|
139
158
|
const mapKeys = (map) => [...(map?.keys() ?? [])];
|
|
140
159
|
const mapGet = (map, key) => map?.get(key);
|
|
@@ -212,17 +231,117 @@ const visitTree = (node, path, ensureLeaf, pruneLeaf, p = 0) =>
|
|
|
212
231
|
},
|
|
213
232
|
);
|
|
214
233
|
|
|
215
|
-
const
|
|
216
|
-
const
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
234
|
+
const MASK6 = 63;
|
|
235
|
+
const ENCODE = /* @__PURE__ */ strSplit(
|
|
236
|
+
'-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz',
|
|
237
|
+
);
|
|
238
|
+
const DECODE = /* @__PURE__ */ mapNew(
|
|
239
|
+
/* @__PURE__ */ arrayMap(ENCODE, (char, index) => [char, index]),
|
|
240
|
+
);
|
|
241
|
+
const encode = (num) => ENCODE[num & MASK6];
|
|
242
|
+
const decode = (str, pos) => mapGet(DECODE, str[pos]) ?? 0;
|
|
243
|
+
|
|
244
|
+
const getRandomValues = GLOBAL.crypto
|
|
245
|
+
? (array) => GLOBAL.crypto.getRandomValues(array)
|
|
246
|
+
: /* istanbul ignore next */
|
|
247
|
+
(array) => arrayMap(array, () => mathFloor(math.random() * 256));
|
|
248
|
+
const defaultSorter = (sortKey1, sortKey2) =>
|
|
249
|
+
(sortKey1 ?? 0) < (sortKey2 ?? 0) ? -1 : 1;
|
|
250
|
+
const getUniqueId = (length = 16) =>
|
|
251
|
+
arrayReduce(
|
|
252
|
+
getRandomValues(new Uint8Array(length)),
|
|
253
|
+
(uniqueId, number) => uniqueId + encode(number),
|
|
254
|
+
'',
|
|
255
|
+
);
|
|
256
|
+
|
|
257
|
+
const SHIFT36 = 2 ** 36;
|
|
258
|
+
const SHIFT30 = 2 ** 30;
|
|
259
|
+
const SHIFT24 = 2 ** 24;
|
|
260
|
+
const SHIFT18 = 2 ** 18;
|
|
261
|
+
const SHIFT12 = 2 ** 12;
|
|
262
|
+
const SHIFT6 = 2 ** 6;
|
|
263
|
+
const encodeTimeAndCounter = (logicalTime42, counter24) =>
|
|
264
|
+
encode(logicalTime42 / SHIFT36) +
|
|
265
|
+
encode(logicalTime42 / SHIFT30) +
|
|
266
|
+
encode(logicalTime42 / SHIFT24) +
|
|
267
|
+
encode(logicalTime42 / SHIFT18) +
|
|
268
|
+
encode(logicalTime42 / SHIFT12) +
|
|
269
|
+
encode(logicalTime42 / SHIFT6) +
|
|
270
|
+
encode(logicalTime42) +
|
|
271
|
+
encode(counter24 / SHIFT18) +
|
|
272
|
+
encode(counter24 / SHIFT12) +
|
|
273
|
+
encode(counter24 / SHIFT6) +
|
|
274
|
+
encode(counter24);
|
|
275
|
+
const decodeTimeAndCounter = (hlc16) => [
|
|
276
|
+
decode(hlc16, 0) * SHIFT36 +
|
|
277
|
+
decode(hlc16, 1) * SHIFT30 +
|
|
278
|
+
decode(hlc16, 2) * SHIFT24 +
|
|
279
|
+
decode(hlc16, 3) * SHIFT18 +
|
|
280
|
+
decode(hlc16, 4) * SHIFT12 +
|
|
281
|
+
decode(hlc16, 5) * SHIFT6 +
|
|
282
|
+
decode(hlc16, 6),
|
|
283
|
+
decode(hlc16, 7) * SHIFT18 +
|
|
284
|
+
decode(hlc16, 8) * SHIFT12 +
|
|
285
|
+
decode(hlc16, 9) * SHIFT6 +
|
|
286
|
+
decode(hlc16, 10),
|
|
287
|
+
];
|
|
288
|
+
const getHlcFunctions = (uniqueId) => {
|
|
289
|
+
let logicalTime = 0;
|
|
290
|
+
let lastCounter = -1;
|
|
291
|
+
const clientPart = ifNotUndefined(
|
|
292
|
+
uniqueId,
|
|
293
|
+
(uniqueId2) => {
|
|
294
|
+
const clientHash30 = getHash(uniqueId2);
|
|
295
|
+
return (
|
|
296
|
+
encode(clientHash30 / SHIFT24) +
|
|
297
|
+
encode(clientHash30 / SHIFT18) +
|
|
298
|
+
encode(clientHash30 / SHIFT12) +
|
|
299
|
+
encode(clientHash30 / SHIFT6) +
|
|
300
|
+
encode(clientHash30)
|
|
301
|
+
);
|
|
302
|
+
},
|
|
303
|
+
() => getUniqueId(5),
|
|
304
|
+
);
|
|
305
|
+
const getHlc = () => {
|
|
306
|
+
seenHlc();
|
|
307
|
+
return encodeTimeAndCounter(logicalTime, ++lastCounter) + clientPart;
|
|
308
|
+
};
|
|
309
|
+
const seenHlc = (hlc) => {
|
|
310
|
+
const previousLogicalTime = logicalTime;
|
|
311
|
+
const [remoteLogicalTime, remoteCounter] =
|
|
312
|
+
isUndefined(hlc) || hlc == '' ? [0, 0] : decodeTimeAndCounter(hlc);
|
|
313
|
+
logicalTime = mathMax(
|
|
314
|
+
previousLogicalTime,
|
|
315
|
+
remoteLogicalTime,
|
|
316
|
+
GLOBAL.HLC_TIME ?? Date.now(),
|
|
317
|
+
);
|
|
318
|
+
lastCounter =
|
|
319
|
+
logicalTime == previousLogicalTime
|
|
320
|
+
? logicalTime == remoteLogicalTime
|
|
321
|
+
? mathMax(lastCounter, remoteCounter)
|
|
322
|
+
: lastCounter
|
|
323
|
+
: logicalTime == remoteLogicalTime
|
|
324
|
+
? remoteCounter
|
|
325
|
+
: -1;
|
|
326
|
+
};
|
|
327
|
+
return [getHlc, seenHlc];
|
|
224
328
|
};
|
|
225
329
|
|
|
330
|
+
const jsonString = JSON.stringify;
|
|
331
|
+
const jsonParse = JSON.parse;
|
|
332
|
+
const jsonStringWithMap = (obj) =>
|
|
333
|
+
jsonString(obj, (_key, value) =>
|
|
334
|
+
isInstanceOf(value, Map) ? object.fromEntries([...value]) : value,
|
|
335
|
+
);
|
|
336
|
+
|
|
337
|
+
const setNew = (entryOrEntries) =>
|
|
338
|
+
new Set(
|
|
339
|
+
isArray(entryOrEntries) || isUndefined(entryOrEntries)
|
|
340
|
+
? entryOrEntries
|
|
341
|
+
: [entryOrEntries],
|
|
342
|
+
);
|
|
343
|
+
const setAdd = (set, value) => set?.add(value);
|
|
344
|
+
|
|
226
345
|
const stampClone = ([value, time]) => stampNew(value, time);
|
|
227
346
|
const stampCloneWithHash = ([value, time, hash]) => [value, time, hash];
|
|
228
347
|
const stampNew = (value, time) => (time ? [value, time] : [value]);
|
|
@@ -348,52 +467,6 @@ const pairNewMap = () => [mapNew(), mapNew()];
|
|
|
348
467
|
const pairClone = (array) => [...array];
|
|
349
468
|
const pairIsEqual = ([entry1, entry2]) => entry1 === entry2;
|
|
350
469
|
|
|
351
|
-
const getCellOrValueType = (cellOrValue) => {
|
|
352
|
-
const type = getTypeOf(cellOrValue);
|
|
353
|
-
return isTypeStringOrBoolean(type) ||
|
|
354
|
-
(type == NUMBER && isFiniteNumber(cellOrValue))
|
|
355
|
-
? type
|
|
356
|
-
: void 0;
|
|
357
|
-
};
|
|
358
|
-
const isCellOrValueOrNullOrUndefined = (cellOrValue) =>
|
|
359
|
-
isUndefined(cellOrValue) || !isUndefined(getCellOrValueType(cellOrValue));
|
|
360
|
-
const setOrDelCell = (store, tableId, rowId, cellId, cell) =>
|
|
361
|
-
isUndefined(cell)
|
|
362
|
-
? store.delCell(tableId, rowId, cellId, true)
|
|
363
|
-
: store.setCell(tableId, rowId, cellId, cell);
|
|
364
|
-
const setOrDelValue = (store, valueId, value) =>
|
|
365
|
-
isUndefined(value) ? store.delValue(valueId) : store.setValue(valueId, value);
|
|
366
|
-
|
|
367
|
-
const jsonString = JSON.stringify;
|
|
368
|
-
const jsonParse = JSON.parse;
|
|
369
|
-
const jsonStringWithMap = (obj) =>
|
|
370
|
-
jsonString(obj, (_key, value) =>
|
|
371
|
-
isInstanceOf(value, Map) ? object.fromEntries([...value]) : value,
|
|
372
|
-
);
|
|
373
|
-
|
|
374
|
-
const MASK6 = 63;
|
|
375
|
-
const ENCODE = /* @__PURE__ */ strSplit(
|
|
376
|
-
'-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz',
|
|
377
|
-
);
|
|
378
|
-
const DECODE = /* @__PURE__ */ mapNew(
|
|
379
|
-
/* @__PURE__ */ arrayMap(ENCODE, (char, index) => [char, index]),
|
|
380
|
-
);
|
|
381
|
-
const encode = (num) => ENCODE[num & MASK6];
|
|
382
|
-
const decode = (str, pos) => mapGet(DECODE, str[pos]) ?? 0;
|
|
383
|
-
|
|
384
|
-
const getRandomValues = GLOBAL.crypto
|
|
385
|
-
? (array) => GLOBAL.crypto.getRandomValues(array)
|
|
386
|
-
: /* istanbul ignore next */
|
|
387
|
-
(array) => arrayMap(array, () => mathFloor(math.random() * 256));
|
|
388
|
-
const defaultSorter = (sortKey1, sortKey2) =>
|
|
389
|
-
(sortKey1 ?? 0) < (sortKey2 ?? 0) ? -1 : 1;
|
|
390
|
-
const getUniqueId = (length = 16) =>
|
|
391
|
-
arrayReduce(
|
|
392
|
-
getRandomValues(new Uint8Array(length)),
|
|
393
|
-
(uniqueId, number) => uniqueId + encode(number),
|
|
394
|
-
'',
|
|
395
|
-
);
|
|
396
|
-
|
|
397
470
|
const idsChanged = (changedIds, id2, addedOrRemoved) =>
|
|
398
471
|
mapSet(
|
|
399
472
|
changedIds,
|
|
@@ -1730,79 +1803,6 @@ const createStore = () => {
|
|
|
1730
1803
|
return objFreeze(store);
|
|
1731
1804
|
};
|
|
1732
1805
|
|
|
1733
|
-
const SHIFT36 = 2 ** 36;
|
|
1734
|
-
const SHIFT30 = 2 ** 30;
|
|
1735
|
-
const SHIFT24 = 2 ** 24;
|
|
1736
|
-
const SHIFT18 = 2 ** 18;
|
|
1737
|
-
const SHIFT12 = 2 ** 12;
|
|
1738
|
-
const SHIFT6 = 2 ** 6;
|
|
1739
|
-
const encodeTimeAndCounter = (logicalTime42, counter24) =>
|
|
1740
|
-
encode(logicalTime42 / SHIFT36) +
|
|
1741
|
-
encode(logicalTime42 / SHIFT30) +
|
|
1742
|
-
encode(logicalTime42 / SHIFT24) +
|
|
1743
|
-
encode(logicalTime42 / SHIFT18) +
|
|
1744
|
-
encode(logicalTime42 / SHIFT12) +
|
|
1745
|
-
encode(logicalTime42 / SHIFT6) +
|
|
1746
|
-
encode(logicalTime42) +
|
|
1747
|
-
encode(counter24 / SHIFT18) +
|
|
1748
|
-
encode(counter24 / SHIFT12) +
|
|
1749
|
-
encode(counter24 / SHIFT6) +
|
|
1750
|
-
encode(counter24);
|
|
1751
|
-
const decodeTimeAndCounter = (hlc16) => [
|
|
1752
|
-
decode(hlc16, 0) * SHIFT36 +
|
|
1753
|
-
decode(hlc16, 1) * SHIFT30 +
|
|
1754
|
-
decode(hlc16, 2) * SHIFT24 +
|
|
1755
|
-
decode(hlc16, 3) * SHIFT18 +
|
|
1756
|
-
decode(hlc16, 4) * SHIFT12 +
|
|
1757
|
-
decode(hlc16, 5) * SHIFT6 +
|
|
1758
|
-
decode(hlc16, 6),
|
|
1759
|
-
decode(hlc16, 7) * SHIFT18 +
|
|
1760
|
-
decode(hlc16, 8) * SHIFT12 +
|
|
1761
|
-
decode(hlc16, 9) * SHIFT6 +
|
|
1762
|
-
decode(hlc16, 10),
|
|
1763
|
-
];
|
|
1764
|
-
const getHlcFunctions = (uniqueId) => {
|
|
1765
|
-
let logicalTime = 0;
|
|
1766
|
-
let lastCounter = -1;
|
|
1767
|
-
const clientPart = ifNotUndefined(
|
|
1768
|
-
uniqueId,
|
|
1769
|
-
(uniqueId2) => {
|
|
1770
|
-
const clientHash30 = getHash(uniqueId2);
|
|
1771
|
-
return (
|
|
1772
|
-
encode(clientHash30 / SHIFT24) +
|
|
1773
|
-
encode(clientHash30 / SHIFT18) +
|
|
1774
|
-
encode(clientHash30 / SHIFT12) +
|
|
1775
|
-
encode(clientHash30 / SHIFT6) +
|
|
1776
|
-
encode(clientHash30)
|
|
1777
|
-
);
|
|
1778
|
-
},
|
|
1779
|
-
() => getUniqueId(5),
|
|
1780
|
-
);
|
|
1781
|
-
const getHlc = () => {
|
|
1782
|
-
seenHlc();
|
|
1783
|
-
return encodeTimeAndCounter(logicalTime, ++lastCounter) + clientPart;
|
|
1784
|
-
};
|
|
1785
|
-
const seenHlc = (hlc) => {
|
|
1786
|
-
const previousLogicalTime = logicalTime;
|
|
1787
|
-
const [remoteLogicalTime, remoteCounter] =
|
|
1788
|
-
isUndefined(hlc) || hlc == '' ? [0, 0] : decodeTimeAndCounter(hlc);
|
|
1789
|
-
logicalTime = mathMax(
|
|
1790
|
-
previousLogicalTime,
|
|
1791
|
-
remoteLogicalTime,
|
|
1792
|
-
GLOBAL.HLC_TIME ?? Date.now(),
|
|
1793
|
-
);
|
|
1794
|
-
lastCounter =
|
|
1795
|
-
logicalTime == previousLogicalTime
|
|
1796
|
-
? logicalTime == remoteLogicalTime
|
|
1797
|
-
? mathMax(lastCounter, remoteCounter)
|
|
1798
|
-
: lastCounter
|
|
1799
|
-
: logicalTime == remoteLogicalTime
|
|
1800
|
-
? remoteCounter
|
|
1801
|
-
: -1;
|
|
1802
|
-
};
|
|
1803
|
-
return [getHlc, seenHlc];
|
|
1804
|
-
};
|
|
1805
|
-
|
|
1806
1806
|
const LISTENER_ARGS = {
|
|
1807
1807
|
HasTable: 1,
|
|
1808
1808
|
Table: 1,
|
|
@@ -1950,7 +1950,7 @@ const createMergeableStore = (uniqueId) => {
|
|
|
1950
1950
|
let thingsHash = isContent ? incomingThingsHash : oldThingsHash;
|
|
1951
1951
|
objForEach(
|
|
1952
1952
|
thingsObj,
|
|
1953
|
-
([thing, thingTime, incomingThingHash = 0], thingId) => {
|
|
1953
|
+
([thing, thingTime = EMPTY_STRING, incomingThingHash = 0], thingId) => {
|
|
1954
1954
|
const thingStampMap = mapEnsure(thingStampMaps, thingId, () => [
|
|
1955
1955
|
void 0,
|
|
1956
1956
|
EMPTY_STRING,
|
package/metrics/index.js
CHANGED
|
@@ -32,9 +32,6 @@ const arrayReduce = (array, cb, initial) => array.reduce(cb, initial);
|
|
|
32
32
|
const arrayPush = (array, ...values) => array.push(...values);
|
|
33
33
|
const arrayShift = (array) => array.shift();
|
|
34
34
|
|
|
35
|
-
const object = Object;
|
|
36
|
-
const objFreeze = object.freeze;
|
|
37
|
-
|
|
38
35
|
const collSizeN = (collSizer) => (coll) =>
|
|
39
36
|
arrayReduce(collValues(coll), (total, coll2) => total + collSizer(coll2), 0);
|
|
40
37
|
const collSize = (coll) => coll?.size ?? 0;
|
|
@@ -46,6 +43,9 @@ const collClear = (coll) => coll.clear();
|
|
|
46
43
|
const collForEach = (coll, cb) => coll?.forEach(cb);
|
|
47
44
|
const collDel = (coll, keyOrValue) => coll?.delete(keyOrValue);
|
|
48
45
|
|
|
46
|
+
const object = Object;
|
|
47
|
+
const objFreeze = object.freeze;
|
|
48
|
+
|
|
49
49
|
const mapNew = (entries) => new Map(entries);
|
|
50
50
|
const mapKeys = (map) => [...(map?.keys() ?? [])];
|
|
51
51
|
const mapGet = (map, key) => map?.get(key);
|
|
@@ -32,9 +32,6 @@ const arrayReduce = (array, cb, initial) => array.reduce(cb, initial);
|
|
|
32
32
|
const arrayPush = (array, ...values) => array.push(...values);
|
|
33
33
|
const arrayShift = (array) => array.shift();
|
|
34
34
|
|
|
35
|
-
const object = Object;
|
|
36
|
-
const objFreeze = object.freeze;
|
|
37
|
-
|
|
38
35
|
const collSizeN = (collSizer) => (coll) =>
|
|
39
36
|
arrayReduce(collValues(coll), (total, coll2) => total + collSizer(coll2), 0);
|
|
40
37
|
const collSize = (coll) => coll?.size ?? 0;
|
|
@@ -46,6 +43,9 @@ const collClear = (coll) => coll.clear();
|
|
|
46
43
|
const collForEach = (coll, cb) => coll?.forEach(cb);
|
|
47
44
|
const collDel = (coll, keyOrValue) => coll?.delete(keyOrValue);
|
|
48
45
|
|
|
46
|
+
const object = Object;
|
|
47
|
+
const objFreeze = object.freeze;
|
|
48
|
+
|
|
49
49
|
const mapNew = (entries) => new Map(entries);
|
|
50
50
|
const mapKeys = (map) => [...(map?.keys() ?? [])];
|
|
51
51
|
const mapGet = (map, key) => map?.get(key);
|
package/min/checkpoints/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=e=>null==e,t=(t,n,r)=>e(t)?r?.():n(t),n=e=>e.length,r=(e,t)=>e.includes(t),s=(e,t)=>e.forEach(t),o=e=>0==n(e),l=(e,...t)=>e.push(...t),c=e=>e.pop(),i=e=>e.shift(),a=
|
|
1
|
+
const e=e=>null==e,t=(t,n,r)=>e(t)?r?.():n(t),n=e=>e.length,r=(e,t)=>e.includes(t),s=(e,t)=>e.forEach(t),o=e=>0==n(e),l=(e,...t)=>e.push(...t),c=e=>e.pop(),i=e=>e.shift(),a=e=>e?.size??0,d=(u=a,e=>{return t=(e,t)=>e+u(t),g(e).reduce(t,0);var t});var u;const h=(e,t)=>e?.has(t)??!1,p=t=>e(t)||0==a(t),g=e=>[...e?.values()??[]],k=(e,t)=>e?.forEach(t),C=(e,t)=>e?.delete(t),f=Object.freeze,v=e=>new Map(e),L=(e,t)=>e?.get(t),w=(t,n,r)=>e(r)?(C(t,n),t):t?.set(n,r),S=(e,t,n,r)=>(h(e,t)?r?.(L(e,t)):w(e,t,n()),L(e,t)),y=(e,r,s,o,l=0)=>t((s?S:L)(e,r[l],l>n(r)-2?s:v),(t=>{if(l>n(r)-2)return o?.(t)&&w(e,r[l]),t;const c=y(t,r,s,o,l+1);return p(t)&&w(e,r[l]),c})),z=t=>new Set(Array.isArray(t)||e(t)?t:[t]),E=/^\d+$/,I=(()=>{const a=new WeakMap;return u=>{a.has(u)||a.set(u,(a=>{let u,g,I,V=100,A=v(),F=v(),M=1;const _=v(),b=v(),[j,x,B]=(()=>{let r;const[o,c]=(()=>{const e=[];let t=0;return[n=>(n?i(e):null)??""+t++,t=>{E.test(t)&&n(e)<1e3&&l(e,t)}]})(),a=v();return[(e,t,n,s=[],l=()=>[])=>{r??=ee;const c=o(1);var i,d;return w(a,c,[e,t,n,s,l]),i=y(t,n??[""],z),d=c,i?.add(d),c},(e,t,...o)=>s(((e,t=[""])=>{const r=[],o=(e,c)=>c==n(t)?l(r,e):null===t[c]?k(e,(e=>o(e,c+1))):s([t[c],null],(t=>o(L(e,t),c+1)));return o(e,0),r})(e,t),(e=>k(e,(e=>L(a,e)[0](r,...t??[],...o))))),e=>t(L(a,e),(([,t,n])=>(y(t,n??[""],void 0,(t=>(C(t,e),p(t)?1:0))),w(a,e),c(e),n))),o=>t(L(a,o),(([t,,o=[],l,c])=>{const i=(...a)=>{const d=n(a);d==n(o)?t(r,...a,...c(a)):e(o[d])?s(l[d]?.(...a)??[],(e=>i(...a,e))):i(...a,o[d])};i()}))]})(),O=v(),T=v(),W=[],$=[],m=(t,n)=>{M=0,a.transaction((()=>{const[r,s]=L(O,n);k(r,((n,r)=>k(n,((n,s)=>k(n,((n,o)=>((t,n,r,s,o)=>e(o)?t.delCell(n,r,s,!0):t.setCell(n,r,s,o))(a,r,s,o,n[t]))))))),k(s,((n,r)=>((t,n,r)=>e(r)?t.delValue(n):t.setValue(n,r))(a,r,n[t])))})),M=1},q=e=>{w(O,e),w(T,e),x(b,[e])},D=(e,t)=>s(((e,t)=>e.splice(0,t))(e,t??n(e)),q),G=()=>D(W,n(W)-V),H=()=>t(u,(()=>{l(W,u),G(),D($),u=void 0,I=1})),J=()=>{u=c(W),I=1};let K,N;const P=(t="")=>(e(u)&&(u=""+g++,w(O,u,[A,F]),Y(u,t),A=v(),F=v(),I=1),u),Q=()=>{o(W)||(((e,...t)=>{e.unshift(...t)})($,P()),m(0,u),u=c(W),I=1)},R=()=>{o($)||(l(W,u),u=i($),m(1,u),I=1)},U=()=>{I&&(x(_),I=0)},X=e=>{const t=P(e);return U(),t},Y=(e,t)=>(Z(e)&&L(T,e)!==t&&(w(T,e,t),x(b,[e])),ee),Z=e=>h(O,e),ee={setSize:e=>(V=e,G(),ee),addCheckpoint:X,setCheckpoint:Y,getStore:()=>a,getCheckpointIds:()=>[[...W],u,[...$]],forEachCheckpoint:e=>{return t=e,k(T,((e,n)=>t(n,e)));var t},hasCheckpoint:Z,getCheckpoint:e=>L(T,e),goBackward:()=>(Q(),U(),ee),goForward:()=>(R(),U(),ee),goTo:t=>{const n=r(W,t)?Q:r($,t)?R:null;for(;!e(n)&&t!=u;)n();return U(),ee},addCheckpointIdsListener:e=>j(e,_),addCheckpointListener:(e,t)=>j(t,b,[e]),delListener:e=>(B(e),ee),clear:()=>(D(W),D($),e(u)||q(u),u=void 0,g=0,X(),ee),clearForward:()=>(o($)||(D($),x(_)),ee),destroy:()=>{a.delListener(K),a.delListener(N)},getListenerStats:()=>({checkpointIds:d(_),checkpoint:d(b)}),_registerListeners:()=>{K=a.addCellListener(null,null,null,((e,t,n,r,s,o)=>{if(M){H();const e=S(A,t,v),l=S(e,n,v),c=S(l,r,(()=>[o,void 0]));c[1]=s,c[0]===s&&p(w(l,r))&&p(w(e,n))&&p(w(A,t))&&J(),U()}})),N=a.addValueListener(null,((e,t,n,r)=>{if(M){H();const e=S(F,t,(()=>[r,void 0]));e[1]=n,e[0]===n&&p(w(F,t))&&J(),U()}}))}};return f(ee.clear())})(u));const g=a.get(u);return g._registerListeners(),g}})();export{I as createCheckpoints};
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=e=>null==e,t=(t,n,r)=>e(t)?r?.():n(t),n=e=>e.length,r=(e,t)=>e.includes(t),s=(e,t)=>e.forEach(t),o=e=>0==n(e),l=(e,...t)=>e.push(...t),c=e=>e.pop(),i=e=>e.shift(),a=
|
|
1
|
+
const e=e=>null==e,t=(t,n,r)=>e(t)?r?.():n(t),n=e=>e.length,r=(e,t)=>e.includes(t),s=(e,t)=>e.forEach(t),o=e=>0==n(e),l=(e,...t)=>e.push(...t),c=e=>e.pop(),i=e=>e.shift(),a=e=>e?.size??0,d=(u=a,e=>{return t=(e,t)=>e+u(t),g(e).reduce(t,0);var t});var u;const h=(e,t)=>e?.has(t)??!1,p=t=>e(t)||0==a(t),g=e=>[...e?.values()??[]],k=(e,t)=>e?.forEach(t),C=(e,t)=>e?.delete(t),f=Object.freeze,v=e=>new Map(e),L=(e,t)=>e?.get(t),w=(t,n,r)=>e(r)?(C(t,n),t):t?.set(n,r),S=(e,t,n,r)=>(h(e,t)?r?.(L(e,t)):w(e,t,n()),L(e,t)),y=(e,r,s,o,l=0)=>t((s?S:L)(e,r[l],l>n(r)-2?s:v),(t=>{if(l>n(r)-2)return o?.(t)&&w(e,r[l]),t;const c=y(t,r,s,o,l+1);return p(t)&&w(e,r[l]),c})),z=t=>new Set(Array.isArray(t)||e(t)?t:[t]),E=/^\d+$/,I=(()=>{const a=new WeakMap;return u=>{a.has(u)||a.set(u,(a=>{let u,g,I,V=100,A=v(),F=v(),M=1;const _=v(),b=v(),[j,x,B]=(()=>{let r;const[o,c]=(()=>{const e=[];let t=0;return[n=>(n?i(e):null)??""+t++,t=>{E.test(t)&&n(e)<1e3&&l(e,t)}]})(),a=v();return[(e,t,n,s=[],l=()=>[])=>{r??=ee;const c=o(1);var i,d;return w(a,c,[e,t,n,s,l]),i=y(t,n??[""],z),d=c,i?.add(d),c},(e,t,...o)=>s(((e,t=[""])=>{const r=[],o=(e,c)=>c==n(t)?l(r,e):null===t[c]?k(e,(e=>o(e,c+1))):s([t[c],null],(t=>o(L(e,t),c+1)));return o(e,0),r})(e,t),(e=>k(e,(e=>L(a,e)[0](r,...t??[],...o))))),e=>t(L(a,e),(([,t,n])=>(y(t,n??[""],void 0,(t=>(C(t,e),p(t)?1:0))),w(a,e),c(e),n))),o=>t(L(a,o),(([t,,o=[],l,c])=>{const i=(...a)=>{const d=n(a);d==n(o)?t(r,...a,...c(a)):e(o[d])?s(l[d]?.(...a)??[],(e=>i(...a,e))):i(...a,o[d])};i()}))]})(),O=v(),T=v(),W=[],$=[],m=(t,n)=>{M=0,a.transaction((()=>{const[r,s]=L(O,n);k(r,((n,r)=>k(n,((n,s)=>k(n,((n,o)=>((t,n,r,s,o)=>e(o)?t.delCell(n,r,s,!0):t.setCell(n,r,s,o))(a,r,s,o,n[t]))))))),k(s,((n,r)=>((t,n,r)=>e(r)?t.delValue(n):t.setValue(n,r))(a,r,n[t])))})),M=1},q=e=>{w(O,e),w(T,e),x(b,[e])},D=(e,t)=>s(((e,t)=>e.splice(0,t))(e,t??n(e)),q),G=()=>D(W,n(W)-V),H=()=>t(u,(()=>{l(W,u),G(),D($),u=void 0,I=1})),J=()=>{u=c(W),I=1};let K,N;const P=(t="")=>(e(u)&&(u=""+g++,w(O,u,[A,F]),Y(u,t),A=v(),F=v(),I=1),u),Q=()=>{o(W)||(((e,...t)=>{e.unshift(...t)})($,P()),m(0,u),u=c(W),I=1)},R=()=>{o($)||(l(W,u),u=i($),m(1,u),I=1)},U=()=>{I&&(x(_),I=0)},X=e=>{const t=P(e);return U(),t},Y=(e,t)=>(Z(e)&&L(T,e)!==t&&(w(T,e,t),x(b,[e])),ee),Z=e=>h(O,e),ee={setSize:e=>(V=e,G(),ee),addCheckpoint:X,setCheckpoint:Y,getStore:()=>a,getCheckpointIds:()=>[[...W],u,[...$]],forEachCheckpoint:e=>{return t=e,k(T,((e,n)=>t(n,e)));var t},hasCheckpoint:Z,getCheckpoint:e=>L(T,e),goBackward:()=>(Q(),U(),ee),goForward:()=>(R(),U(),ee),goTo:t=>{const n=r(W,t)?Q:r($,t)?R:null;for(;!e(n)&&t!=u;)n();return U(),ee},addCheckpointIdsListener:e=>j(e,_),addCheckpointListener:(e,t)=>j(t,b,[e]),delListener:e=>(B(e),ee),clear:()=>(D(W),D($),e(u)||q(u),u=void 0,g=0,X(),ee),clearForward:()=>(o($)||(D($),x(_)),ee),destroy:()=>{a.delListener(K),a.delListener(N)},getListenerStats:()=>({checkpointIds:d(_),checkpoint:d(b)}),_registerListeners:()=>{K=a.addCellListener(null,null,null,((e,t,n,r,s,o)=>{if(M){H();const e=S(A,t,v),l=S(e,n,v),c=S(l,r,(()=>[o,void 0]));c[1]=s,c[0]===s&&p(w(l,r))&&p(w(e,n))&&p(w(A,t))&&J(),U()}})),N=a.addValueListener(null,((e,t,n,r)=>{if(M){H();const e=S(F,t,(()=>[r,void 0]));e[1]=n,e[0]===n&&p(w(F,t))&&J(),U()}}))}};return f(ee.clear())})(u));const g=a.get(u);return g._registerListeners(),g}})();export{I as createCheckpoints};
|
|
Binary file
|
package/min/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=e=>typeof e,t="",s=e(t),n=e(!0),o=e(0),l=e(e),r="type",a="default",i="Listener",c="Result",d="add",u="Has",g="Ids",h="Table",f=h+"s",I=h+g,b="Row",w=b+"Count",L=b+g,C="Sorted"+b+g,R="Cell",T=R+g,v="Value",p=v+"s",S=v+g,y=e=>t+e,V=(e,t)=>e.startsWith(t),M=(e,t)=>e.endsWith(t),m=(e,s=t,n)=>e.split(s,n),E=globalThis,k=Math,D=k.max,H=k.min,J=k.floor,x=isFinite,F=e=>null==e,Q=(e,t,s)=>F(e)?s?.():t(e),z=e=>e==s||e==n,N=t=>e(t)==s,O=t=>e(t)==l,W=e=>Array.isArray(e),A=(e,t,s)=>e.slice(t,s),P=e=>e.length,_=()=>{},j=(e,t)=>e.includes(t),B=(e,t)=>e.every(t),U=(e,t)=>P(e)===P(t)&&B(e,((e,s)=>t[s]===e)),q=(e,t)=>B(e,((s,n)=>0==n||t(e[n-1],s)<=0)),G=(e,t)=>e.sort(t),K=(e,t)=>e.forEach(t),X=(e,t)=>e.map(t),Y=e=>$(e,((e,t)=>e+t),0),Z=e=>0==P(e),$=(e,t,s)=>e.reduce(t,s),ee=(e,...t)=>e.push(...t),te=e=>e.pop(),se=e=>e.shift(),ne=Object,oe=e=>ne.getPrototypeOf(e),le=ne.entries,re=ne.isFrozen,ae=e=>!F(e)&&Q(oe(e),(e=>e==ne.prototype||F(oe(e))),(()=>!0)),ie=ne.keys,ce=ne.freeze,de=(e=[])=>ne.fromEntries(e),ue=(e,t)=>t in e,ge=(e,t)=>(delete e[t],e),he=(e,t)=>K(le(e),(([e,s])=>t(s,e))),fe=(e,t)=>de(((e,t)=>X(le(e),(([e,s])=>t(s,e))))(e,((e,s)=>[s,t(e,s)]))),Ie=e=>ae(e)&&0==(e=>P(ie(e)))(e),be=(e,t,s)=>(ue(e,t)||(e[t]=s()),e[t]),we=(e,t,s,n=0)=>F(e)||!ae(e)||!n&&Ie(e)||re(e)?(s?.(),!1):(he(e,((s,n)=>{t(s,n)||ge(e,n)})),!!n||!Ie(e)),Le=e=>t=>$(ye(t),((t,s)=>t+e(s)),0),Ce=e=>e?.size??0,Re=Le(Ce),Te=Le(Re),ve=Le(Te),pe=(e,t)=>e?.has(t)??!1,Se=e=>F(e)||0==Ce(e),ye=e=>[...e?.values()??[]],Ve=e=>e.clear(),Me=(e,t)=>e?.forEach(t),me=(e,t)=>e?.delete(t),Ee=e=>new Map(e),ke=e=>[...e?.keys()??[]],De=(e,t)=>e?.get(t),He=(e,t)=>Me(e,((e,s)=>t(s,e))),Je=(e,t,s)=>F(s)?(me(e,t),e):e?.set(t,s),xe=(e,t,s,n)=>(pe(e,t)?n?.(De(e,t)):Je(e,t,s()),De(e,t)),Fe=(e,t,s,n=Je)=>(fe(t,((t,n)=>s(e,n,t))),He(e,(s=>ue(t,s)?0:n(e,s))),e),Qe=(e,t,s,n)=>{const o={};return Me(e,((e,l)=>{if(!s?.(e,l)){const s=t?t(e,l):e;n?.(s)||(o[l]=s)}})),o},ze=(e,t,s)=>Qe(e,(e=>Qe(e,t,s)),Se,Ie),Ne=(e,t,s)=>Qe(e,(e=>ze(e,t,s)),Se,Ie),Oe=(e,t)=>{const s=Ee();return Me(e,((e,n)=>s.set(n,t?.(e)??e))),s},We=e=>Oe(e,Oe),Ae=e=>Oe(e,We),Pe=(e,t,s,n,o=0)=>Q((s?xe:De)(e,t[o],o>P(t)-2?s:Ee),(l=>{if(o>P(t)-2)return n?.(l)&&Je(e,t[o]),l;const r=Pe(l,t,s,n,o+1);return Se(l)&&Je(e,t[o]),r})),_e=t=>{const s=e(t);return z(s)||s==o&&x(t)?s:void 0},je=e=>F(e)||!F(_e(e)),Be=(e,t,s,n,o)=>F(o)?e.delCell(t,s,n,!0):e.setCell(t,s,n,o),Ue=(e,t,s)=>F(s)?e.delValue(t):e.setValue(t,s),qe=e=>new Set(W(e)||F(e)?e:[e]),Ge=(e,t)=>e?.add(t),Ke=(e,t,s,n,o)=>{const l=e.hasRow,r=Ee(),a=Ee(),i=Ee(),c=Ee(),d=Ee(),u=Ee(),g=(t,s,...n)=>{const o=xe(u,t,qe);return K(n,(t=>Ge(o,t)&&s&&e.callListener(t))),n},h=(t,...s)=>Q(De(u,t),(n=>{K(Z(s)?ye(n):s,(t=>{e.delListener(t),me(n,t)})),Se(n)&&Je(u,t)})),f=(e,s)=>{Je(r,e,s),pe(a,e)||(Je(a,e,t()),Je(c,e,Ee()),Je(d,e,Ee()),o(i))},I=e=>{Je(r,e),Je(a,e),Je(c,e),Je(d,e),h(e),o(i)};return[()=>e,()=>ke(r),e=>He(a,e),e=>pe(a,e),e=>De(r,e),e=>De(a,e),(e,t)=>Je(a,e,t),f,(t,n,o,r,a)=>{f(t,n);const i=Ee(),u=Ee(),I=De(c,t),b=De(d,t),w=t=>{const o=s=>e.getCell(n,t,s),c=De(I,t),d=l(n,t)?s(r(o,t)):void 0;if(c===d||W(c)&&W(d)&&U(c,d)||Je(i,t,[c,d]),!F(a)){const e=De(b,t),s=l(n,t)?a(o,t):void 0;e!=s&&Je(u,t,s)}},L=e=>{o((()=>{Me(i,(([,e],t)=>Je(I,t,e))),Me(u,((e,t)=>Je(b,t,e)))}),i,u,I,b,e),Ve(i),Ve(u)};He(I,w),e.hasTable(n)&&K(e.getRowIds(n),(e=>{pe(I,e)||w(e)})),L(!0),h(t),g(t,0,e.addRowListener(n,null,((e,t,s)=>w(s))),e.addTableListener(n,(()=>L())))},I,e=>n(e,i),()=>He(u,I),g,h]},Xe=(e,s)=>N(e)?t=>t(e):e??(()=>s??t),Ye=(e,t)=>{const s=new WeakMap;return n=>{s.has(n)||s.set(n,e(n));const o=s.get(n);return t?.(o),o}},Ze=/^\d+$/,$e=()=>{const e=[];let s=0;return[n=>(n?se(e):null)??t+s++,t=>{Ze.test(t)&&P(e)<1e3&&ee(e,t)}]},et=e=>{let s;const[n,o]=$e(),l=Ee();return[(o,r,a,i=[],c=()=>[])=>{s??=e();const d=n(1);return Je(l,d,[o,r,a,i,c]),Ge(Pe(r,a??[t],qe),d),d},(e,n,...o)=>K(((e,s=[t])=>{const n=[],o=(e,t)=>t==P(s)?ee(n,e):null===s[t]?Me(e,(e=>o(e,t+1))):K([s[t],null],(s=>o(De(e,s),t+1)));return o(e,0),n})(e,n),(e=>Me(e,(e=>De(l,e)[0](s,...n??[],...o))))),e=>Q(De(l,e),(([,s,n])=>(Pe(s,n??[t],void 0,(t=>(me(t,e),Se(t)?1:0))),Je(l,e),o(e),n))),e=>Q(De(l,e),(([e,,t=[],n,o])=>{const l=(...r)=>{const a=P(r);a==P(t)?e(s,...r,...o(r)):F(t[a])?K(n[a]?.(...r)??[],(e=>l(...r,e))):l(...r,t[a])};l()}))]},tt=Ye((e=>{let s,n,o,l=100,r=Ee(),a=Ee(),i=1;const c=Ee(),d=Ee(),[u,g,h]=et((()=>J)),f=Ee(),I=Ee(),b=[],w=[],L=(t,s)=>{i=0,e.transaction((()=>{const[n,o]=De(f,s);Me(n,((s,n)=>Me(s,((s,o)=>Me(s,((s,l)=>Be(e,n,o,l,s[t]))))))),Me(o,((s,n)=>Ue(e,n,s[t])))})),i=1},C=e=>{Je(f,e),Je(I,e),g(d,[e])},R=(e,t)=>K(((e,t)=>e.splice(0,t))(e,t??P(e)),C),T=()=>R(b,P(b)-l),v=()=>Q(s,(()=>{ee(b,s),T(),R(w),s=void 0,o=1})),p=()=>{s=te(b),o=1};let S,y;const V=(e=t)=>(F(s)&&(s=t+n++,Je(f,s,[r,a]),D(s,e),r=Ee(),a=Ee(),o=1),s),M=()=>{Z(b)||(((e,...t)=>{e.unshift(...t)})(w,V()),L(0,s),s=te(b),o=1)},m=()=>{Z(w)||(ee(b,s),s=se(w),L(1,s),o=1)},E=()=>{o&&(g(c),o=0)},k=e=>{const t=V(e);return E(),t},D=(e,t)=>(H(e)&&De(I,e)!==t&&(Je(I,e,t),g(d,[e])),J),H=e=>pe(f,e),J={setSize:e=>(l=e,T(),J),addCheckpoint:k,setCheckpoint:D,getStore:()=>e,getCheckpointIds:()=>[[...b],s,[...w]],forEachCheckpoint:e=>He(I,e),hasCheckpoint:H,getCheckpoint:e=>De(I,e),goBackward:()=>(M(),E(),J),goForward:()=>(m(),E(),J),goTo:e=>{const t=j(b,e)?M:j(w,e)?m:null;for(;!F(t)&&e!=s;)t();return E(),J},addCheckpointIdsListener:e=>u(e,c),addCheckpointListener:(e,t)=>u(t,d,[e]),delListener:e=>(h(e),J),clear:()=>(R(b),R(w),F(s)||C(s),s=void 0,n=0,k(),J),clearForward:()=>(Z(w)||(R(w),g(c)),J),destroy:()=>{e.delListener(S),e.delListener(y)},getListenerStats:()=>({checkpointIds:Re(c),checkpoint:Re(d)}),_registerListeners:()=>{S=e.addCellListener(null,null,null,((e,t,s,n,o,l)=>{if(i){v();const e=xe(r,t,Ee),a=xe(e,s,Ee),i=xe(a,n,(()=>[l,void 0]));i[1]=o,i[0]===o&&Se(Je(a,n))&&Se(Je(e,s))&&Se(Je(r,t))&&p(),E()}})),y=e.addValueListener(null,((e,t,s,n)=>{if(i){v();const e=xe(a,t,(()=>[n,void 0]));e[1]=s,e[0]===s&&Se(Je(a,t))&&p(),E()}}))}};return ce(J.clear())}),(e=>e._registerListeners())),st=m("-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz"),nt=Ee(X(st,((e,t)=>[e,t]))),ot=e=>st[63&e],lt=(e,t)=>De(nt,e[t])??0,rt=E.crypto?e=>E.crypto.getRandomValues(e):e=>X(e,(()=>J(256*k.random()))),at=(e,t)=>(e??0)<(t??0)?-1:1,it=(e=16)=>$(rt(new Uint8Array(e)),((e,t)=>e+ot(t)),""),ct=Ye((e=>{const s=Ee(),n=Ee(),[o,l,r]=et((()=>C)),[a,i,c,d,u,g,h,,f,I,b,w]=Ke(e,Ee,(e=>F(e)?t:W(e)?X(e,y):y(e)),o,l),L=(t,s,n)=>{const o=u(t);Me(n,((t,n)=>s(n,(s=>Me(t,(t=>s(t,(s=>e.forEachCell(o,t,s)))))))))},C={setIndexDefinition:(e,t,o,r,a,i=at)=>{const c=F(a)?void 0:([e],[t])=>a(e,t);return f(e,t,((t,o,a,d,u,f)=>{let I=0;const b=qe(),w=qe(),L=g(e);if(Me(o,(([e,t],s)=>{const n=qe(e),o=qe(t);Me(n,(e=>me(o,e)?me(n,e):0)),Me(n,(e=>{Ge(b,e),Q(De(L,e),(t=>{me(t,s),Se(t)&&(Je(L,e),I=1)}))})),Me(o,(e=>{Ge(b,e),pe(L,e)||(Je(L,e,qe()),I=1),Ge(De(L,e),s),F(r)||Ge(w,e)}))})),t(),Se(u)||(f?He(L,(e=>Ge(w,e))):He(a,(e=>Q(De(d,e),(e=>Ge(w,e))))),Me(w,(e=>{const t=(t,s)=>i(De(u,t),De(u,s),e),s=[...De(L,e)];q(s,t)||(Je(L,e,qe(G(s,t))),Ge(b,e))}))),(I||f)&&!F(c)){const t=[...L];q(t,c)||(h(e,Ee(G(t,c))),I=1)}I&&l(s,[e]),Me(b,(t=>l(n,[e,t])))}),Xe(o),Q(r,Xe)),C},delIndexDefinition:e=>(I(e),C),getStore:a,getIndexIds:i,forEachIndex:e=>c(((t,s)=>e(t,(e=>L(t,e,s))))),forEachSlice:(e,t)=>L(e,t,g(e)),hasIndex:d,hasSlice:(e,t)=>pe(g(e),t),getTableId:u,getSliceIds:e=>ke(g(e)),getSliceRowIds:(e,t)=>ye(De(g(e),t)),addIndexIdsListener:b,addSliceIdsListener:(e,t)=>o(t,s,[e]),addSliceRowIdsListener:(e,t,s)=>o(s,n,[e,t]),delListener:e=>(r(e),C),destroy:w,getListenerStats:()=>({sliceIds:Re(s),sliceRowIds:Te(n)})};return ce(C)})),dt=Ee([["avg",[(e,t)=>Y(e)/t,(e,t,s)=>e+(t-e)/(s+1),(e,t,s)=>e+(e-t)/(s-1),(e,t,s,n)=>e+(t-s)/n]],["max",[e=>D(...e),(e,t)=>D(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:D(t,e)]],["min",[e=>H(...e),(e,t)=>H(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:H(t,e)]],["sum",[e=>Y(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,s)=>e-s+t]]]),ut=(e,t,s,n,o,l=!1)=>{if(Se(s))return;const[r,a,i,c]=o;return l||=F(e),Me(n,(([s,n])=>{l||(e=F(s)?a?.(e,n,t++):F(n)?i?.(e,s,t--):c?.(e,n,s,t),l||=F(e))})),l?r(ye(s),Ce(s)):e},gt=Ye((e=>{const s=Ee(),[n,o,l]=et((()=>w)),[r,a,i,c,d,u,g,,h,f,I,b]=Ke(e,_,(e=>isNaN(e)||F(e)||!0===e||!1===e||e===t?void 0:1*e),n,o),w={setMetricDefinition:(e,t,n,l,r,a,i)=>{const c=O(n)?[n,r,a,i]:De(dt,n)??De(dt,"sum");return h(e,t,((t,n,l,r,a,i)=>{const d=u(e),h=Ce(r);i||=F(d),t();let f=ut(d,h,r,n,c,i);x(f)||(f=void 0),f!=d&&(g(e,f),o(s,[e],f,d))}),Xe(l,1)),w},delMetricDefinition:e=>(f(e),w),getStore:r,getMetricIds:a,forEachMetric:i,hasMetric:c,getTableId:d,getMetric:u,addMetricIdsListener:I,addMetricListener:(e,t)=>n(t,s,[e]),delListener:e=>(l(e),w),destroy:b,getListenerStats:()=>({metric:Re(s)})};return ce(w)})),ht=Ye((e=>{const s=e.createStore,n=s(),o=s(),l=Ee(),{addListener:r,callListeners:a,delListener:u}=o,[g,f,I,v,p,,,S,,y,V,M,m,E]=Ke(e,(()=>!0),_,r,a),k=(e,t,...s)=>K(s,(s=>Ge(xe(xe(l,t,Ee),e,qe),s))),D=e=>{Q(De(l,e),(e=>{He(e,((e,t)=>Me(t,(t=>e.delListener(t))))),Ve(e)})),K([o,n],(t=>t.delTable(e)))},H=(e,t,s)=>k(t,e,t.addStartTransactionListener(s.startTransaction),t.addDidFinishTransactionListener((()=>s.finishTransaction()))),J={setQueryDefinition:(s,l,r)=>{S(s,l),D(s);const a=[],i=[[null,[l,null,null,[],Ee()]]],c=[],d=[],u=[];r({select:(e,s)=>{const n=O(e)?[P(a)+t,e]:[F(s)?e:s,t=>t(e,s)];return ee(a,n),{as:e=>n[0]=e}},join:(e,t,s)=>{const n=F(s)||O(t)?null:t,o=F(n)?t:s,l=[e,[e,n,O(o)?o:e=>e(o),[],Ee()]];return ee(i,l),{as:e=>l[0]=e}},where:(e,t,s)=>ee(c,O(e)?e:F(s)?s=>s(e)===t:n=>n(e,t)===s),group:(e,t,s,n,o)=>{const l=[e,[e,O(t)?[t,s,n,o]:De(dt,t)??[(e,t)=>t]]];return ee(d,l),{as:e=>l[0]=e}},having:(e,t)=>ee(u,O(e)?e:s=>s(e)===t)});const g=Ee(a);if(Se(g))return J;const h=Ee(i);He(h,((e,[,t])=>Q(De(h,t),(({3:t})=>F(e)?0:ee(t,e)))));const f=Ee(d);let I=n;if(Se(f)&&Z(u))I=o;else{H(s,I,o);const e=Ee();He(f,((t,[s,n])=>Ge(xe(e,s,qe),[t,n])));const t=qe();He(g,(s=>pe(e,s)?0:Ge(t,s)));const n=Ee(),l=(t,n,l,r)=>Q(t,(([a,i,c,d])=>{He(n,((t,[s])=>{const n=xe(a,t,Ee),o=De(n,l),i=r?void 0:s;if(o!==i){const s=qe([[o,i]]),r=Ce(n);Je(n,l,i),Me(De(e,t),(([e,t])=>{const o=ut(d[e],r,n,s,t);d[e]=F(_e(o))?null:o}))}})),Se(i)||!B(u,(e=>e((e=>d[e]))))?o.delRow(s,c):F(c)?t[2]=o.addRow(s,d):o.setRow(s,c,d)}));k(I,s,I.addRowListener(s,null,((o,r,a,i)=>{const c=[],d=[],u=Ee(),g=I.hasRow(s,a);let h=!g;Me(t,(e=>{const[t,n,o]=i(s,a,e);ee(c,n),ee(d,o),h||=t})),He(e,(e=>{const[t,,n]=i(s,a,e);(h||t)&&Je(u,e,[n])})),h&&l(Pe(n,c,void 0,(([,e])=>(me(e,a),Se(e)))),u,a,1),g&&l(Pe(n,d,(()=>{const e={};return Me(t,(t=>e[t]=I.getCell(s,a,t))),[Ee(),qe(),void 0,e]}),(([,e])=>{Ge(e,a)})),u,a)})))}H(s,e,I);const b=(t,n,o,r)=>{const a=t=>e.getCell(n,o,t);K(r,(n=>{const[o,,l,r,i]=De(h,n),c=l?.(a,t),[d,u]=De(i,t)??[];c!=d&&(F(u)||E(s,u),Je(i,t,F(c)?null:[c,...m(s,1,e.addRowListener(o,c,(()=>b(t,o,c,r))))]))})),(t=>{const n=(s,n)=>e.getCell(...F(n)?[l,t,s]:s===l?[l,t,n]:[De(h,s)?.[0],De(De(h,s)?.[4],t)?.[0],n]);I.transaction((()=>B(c,(e=>e(n)))?He(g,((e,o)=>Be(I,s,t,e,o(n,t)))):I.delRow(s,t)))})(t)},{3:w}=De(h,null);return I.transaction((()=>m(s,1,e.addRowListener(l,null,((t,n,o)=>{e.hasRow(l,o)?b(o,l,o,w):(I.delRow(s,o),Me(h,(({4:e})=>Q(De(e,o),(([,t])=>{E(s,t),Je(e,o)})))))}))))),J},delQueryDefinition:e=>(D(e),y(e),J),getStore:g,getQueryIds:f,forEachQuery:I,hasQuery:v,getTableId:p,addQueryIdsListener:e=>V((()=>e(J))),delListener:e=>(u(e),J),destroy:M,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:s,...n}=o.getListenerStats();return n}};return fe({[h]:[1,1],[h+T]:[0,1],[w]:[0,1],[L]:[0,1],[C]:[0,5],[b]:[1,2],[T]:[0,2],[R]:[1,3]},(([e,t],s)=>{K(e?["get","has","forEach"]:["get"],(e=>J[e+c+s]=(...t)=>o[e+s](...t))),J[d+c+s+i]=(...e)=>o[d+s+i](...A(e,0,t),((s,...n)=>e[t](J,...n)),!0)})),ce(J)})),ft=Ye((e=>{const s=Ee(),n=Ee(),o=Ee(),l=Ee(),[r,a,i]=et((()=>v)),[c,d,u,g,h,f,,,I,b,w,L]=Ke(e,(()=>[Ee(),Ee(),Ee(),Ee()]),(e=>F(e)?void 0:e+t),r,a),C=(e,t,s)=>Q(f(e),(([n,,o])=>{if(!pe(o,t)){const l=qe();if(h(e)!=T(e))Ge(l,t);else{let e=t;for(;!F(e)&&!pe(l,e);)Ge(l,e),e=De(n,e)}if(s)return l;Je(o,t,l)}return De(o,t)})),R=(e,t)=>Q(f(e),(([,,e])=>Je(e,t))),T=e=>De(s,e),v={setRelationshipDefinition:(e,t,r,i)=>(Je(s,e,r),I(e,t,((t,s)=>{const r=qe(),i=qe(),c=qe(),[d,u]=f(e);Me(s,(([t,s],n)=>{F(t)||(Ge(i,t),Q(De(u,t),(e=>{me(e,n),Se(e)&&Je(u,t)}))),F(s)||(Ge(i,s),pe(u,s)||Je(u,s,qe()),Ge(De(u,s),n)),Ge(r,n),Je(d,n,s),He(De(l,e),(t=>{pe(C(e,t),n)&&Ge(c,t)}))})),t(),Me(r,(t=>a(n,[e,t]))),Me(i,(t=>a(o,[e,t]))),Me(c,(t=>{R(e,t),a(l,[e,t])}))}),Xe(i)),v),delRelationshipDefinition:e=>(Je(s,e),b(e),v),getStore:c,getRelationshipIds:d,forEachRelationship:t=>u((s=>t(s,(t=>e.forEachRow(h(s),t))))),hasRelationship:g,getLocalTableId:h,getRemoteTableId:T,getRemoteRowId:(e,t)=>De(f(e)?.[0],t),getLocalRowIds:(e,t)=>ye(De(f(e)?.[1],t)),getLinkedRowIds:(e,t)=>F(f(e))?[t]:ye(C(e,t,!0)),addRelationshipIdsListener:w,addRemoteRowIdListener:(e,t,s)=>r(s,n,[e,t]),addLocalRowIdsListener:(e,t,s)=>r(s,o,[e,t]),addLinkedRowIdsListener:(e,t,s)=>(C(e,t),r(s,l,[e,t])),delListener:e=>(R(...i(e)??[]),v),destroy:L,getListenerStats:()=>({remoteRowId:Te(n),localRowIds:Te(o),linkedRowIds:Te(l)})};return ce(v)})),It=new E.TextEncoder,bt=e=>{let t=2166136261;return K(It.encode(e),(e=>{t^=e,t+=(t<<1)+(t<<4)+(t<<7)+(t<<8)+(t<<24)})),t>>>0},wt=([e,t])=>Ct(e,t),Lt=([e,t,s])=>[e,t,s],Ct=(e,t)=>t?[e,t]:[e],Rt=(e,t,s)=>[e,t,s],Tt=e=>e[2],vt=(e,t)=>bt(e+":"+t),pt=(e,t)=>t>e?(e?bt(e):0)^bt(t):0,St=(e,t)=>((e??"")>(t??"")?e:t)??"",yt=(e,t,s)=>{t>e[1]&&(e[1]=t),e[2]=s>>>0},Vt=(e=t)=>Ct(de(),e),Mt=(e=t)=>[Ee(),e,0],mt=([e,t,s],n=Lt)=>[Qe(e,n),t,s],Et=([e,t],s=wt)=>Ct(Qe(e,s),t),kt=(t,s)=>W(t)&&3==P(t)&&N(t[1])&&e(t[2])==o&&x(t[2])&&s(t[0]),Dt=e=>[e,e],Ht=(e,t=Re)=>t(e[0])+t(e[1]),Jt=()=>[Ee(),Ee()],xt=e=>[...e],Ft=([e,t])=>e===t,Qt=JSON.stringify,zt=JSON.parse,Nt=e=>Qt(e,((e,t)=>t instanceof Map?ne.fromEntries([...t]):t)),Ot=(e,t,s)=>Je(e,t,De(e,t)==-s?void 0:s),Wt=()=>{let e,t,s=!1,n=!1,l=0,c=[];const g=Ee(),C=Ee(),V=Ee(),M=Ee(),m=Ee(),E=Ee(),k=Ee(),D=Ee(),H=Ee(),J=Ee(),x=Ee(),N=Ee(),P=Ee(),_=Ee(),B=qe(),q=Ee(),Y=Ee(),Z=Ee(),$=Ee(),te=Jt(),se=Jt(),ne=Jt(),oe=Jt(),le=Jt(),re=Jt(),ae=Jt(),ie=Jt(),de=Jt(),he=Jt(),be=Jt(),Le=Jt(),ye=Jt(),Pe=Jt(),je=Jt(),Ke=Jt(),Xe=Jt(),Ye=Jt(),Ze=Jt(),tt=Jt(),st=Jt(),nt=Jt(),ot=Ee(),lt=Jt(),[rt,it,ct,dt]=et((()=>Os)),ut=e=>{if(!we(e,((e,t)=>j([r,a],t))))return!1;const t=e[r];return!(!z(t)&&t!=o||(_e(e[a])!=t&&ge(e,a),0))},gt=W,ht=(t,s)=>(!e||pe(x,s)||Yt(s))&&we(t,((e,t)=>ft(s,t,e)),(()=>Yt(s))),ft=(e,t,s,n)=>we(n?s:Lt(s,e,t),((n,o)=>Q(It(e,t,o,n),(e=>(s[o]=e,!0)),(()=>!1))),(()=>Yt(e,t))),It=(t,s,n,o)=>e?Q(De(De(x,t),n),(e=>_e(o)!=e[r]?Yt(t,s,n,o,e[a]):o),(()=>Yt(t,s,n,o))):F(_e(o))?Yt(t,s,n,o):o,bt=(e,t)=>we(t?e:Ct(e),((t,s)=>Q(wt(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>Zt())),wt=(e,s)=>t?Q(De(P,e),(t=>_e(s)!=t[r]?Zt(e,s,t[a]):s),(()=>Zt(e,s))):F(_e(s))?Zt(e,s):s,Lt=(e,t,s)=>(Q(De(N,t),(([n,o])=>{Me(n,((t,s)=>{ue(e,s)||(e[s]=t)})),Me(o,(n=>{ue(e,n)||Yt(t,s,n)}))})),e),Ct=e=>(t&&(Me(_,((t,s)=>{ue(e,s)||(e[s]=t)})),Me(B,(t=>{ue(e,t)||Zt(t)}))),e),Rt=e=>Fe(x,e,((e,t,s)=>{const n=Ee(),o=qe();Fe(xe(x,t,Ee),s,((e,t,s)=>{Je(e,t,s),Q(s[a],(e=>Je(n,t,e)),(()=>Ge(o,t)))})),Je(N,t,[n,o])}),((e,t)=>{Je(x,t),Je(N,t)})),Tt=e=>Fe(P,e,((e,t,s)=>{Je(P,t,s),Q(s[a],(e=>Je(_,t,e)),(()=>Ge(B,t)))}),((e,t)=>{Je(P,t),Je(_,t),me(B,t)})),vt=e=>Ie(e)?ks():ys(e),pt=e=>Fe(Z,e,((e,t,s)=>St(t,s)),((e,t)=>At(t))),St=(e,t)=>Fe(xe(Z,e,(()=>(Bt(e,1),Je(q,e,$e()),Je(Y,e,Ee()),Ee()))),t,((t,s,n)=>yt(e,t,s,n)),((t,s)=>Pt(e,t,s))),yt=(e,t,s,n,o)=>Fe(xe(t,s,(()=>(Ut(e,s,1),Ee()))),n,((t,n,o)=>Vt(e,s,t,n,o)),((n,l)=>_t(e,t,s,n,l,o))),Vt=(e,t,s,n,o)=>{pe(s,n)||qt(e,t,n,1);const l=De(s,n);o!==l&&(Gt(e,t,n,l,o),Je(s,n,o))},Mt=(e,t,s,n,o)=>Q(De(t,s),(t=>Vt(e,s,t,n,o)),(()=>yt(e,t,s,Lt({[n]:o},e,s)))),mt=e=>Ie(e)?Js():Vs(e),Et=e=>Fe($,e,((e,t,s)=>kt(t,s)),((e,t)=>jt(t))),kt=(e,t)=>{pe($,e)||Kt(e,1);const s=De($,e);t!==s&&(Xt(e,s,t),Je($,e,t))},Qt=e=>De(Z,e)??St(e,{}),At=e=>St(e,{}),Pt=(e,t,s)=>{const[,n]=De(q,e);n(s),yt(e,t,s,{},!0)},_t=(e,t,s,n,o,l)=>{const r=De(De(N,e)?.[0],o);if(!F(r)&&!l)return Vt(e,s,n,o,r);const a=t=>{Gt(e,s,t,De(n,t)),qt(e,s,t,-1),Je(n,t)};F(r)?a(o):He(n,a),Se(n)&&(Ut(e,s,-1),Se(Je(t,s))&&(Bt(e,-1),Je(Z,e),Je(q,e),Je(Y,e)))},jt=e=>{const t=De(_,e);if(!F(t))return kt(e,t);Xt(e,De($,e)),Kt(e,-1),Je($,e)},Bt=(e,t)=>Ot(g,e,t),Ut=(e,t,s)=>Ot(xe(M,e,Ee),t,s)&&Je(V,e,xe(V,e,(()=>0))+s),qt=(e,t,s,n)=>{const o=De(Y,e),l=De(o,s)??0;(0==l&&1==n||1==l&&-1==n)&&Ot(xe(C,e,Ee),s,n),Je(o,s,l!=-n?l+n:null),Ot(xe(xe(m,e,Ee),t,Ee),s,n)},Gt=(e,t,s,n,o)=>{xe(xe(xe(E,e,Ee),t,Ee),s,(()=>[n,0]))[1]=o,c[3]?.(e,t,s,o)},Kt=(e,t)=>Ot(k,e,t),Xt=(e,t,s)=>{xe(D,e,(()=>[t,0]))[1]=s,c[4]?.(e,s)},Yt=(e,t,s,n,o)=>(ee(xe(xe(xe(H,e,Ee),t,Ee),s,(()=>[])),n),o),Zt=(e,t,s)=>(ee(xe(J,e,(()=>[])),t),s),$t=(e,t,s)=>Q(De(De(De(E,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...Dt(fs(e,t,s))])),es=e=>Q(De(D,e),(([e,t])=>[!0,e,t]),(()=>[!1,...Dt(ws(e))])),ts=e=>Se(H)||Se(Ke[e])?0:Me(e?Ae(H):H,((t,s)=>Me(t,((t,n)=>Me(t,((t,o)=>it(Ke[e],[s,n,o],t))))))),ss=e=>Se(J)||Se(Xe[e])?0:Me(e?Oe(J):J,((t,s)=>it(Xe[e],[s],t))),ns=(e,t,s,n)=>{if(!Se(e))return it(t,n,(()=>Qe(e))),He(e,((e,t)=>it(s,[...n??[],e],1==t))),1},os=e=>{const t=Ls();t!=s&&it(te[e],void 0,t);const n=Se(he[e]),o=Se(ye[e])&&Se(Pe[e])&&Se(de[e])&&Se(be[e])&&Se(re[e])&&Se(ae[e])&&Se(ie[e])&&n&&Se(ne[e])&&Se(oe[e]),l=Se(je[e])&&Se(Le[e])&&Se(le[e])&&Se(se[e]);if(!o||!l){const t=e?[Oe(g),We(C),Oe(V),We(M),Ae(m),Ae(E)]:[g,C,V,M,m,E];if(!o){ns(t[0],ne[e],oe[e]),Me(t[1],((t,s)=>ns(t,re[e],ae[e],[s]))),Me(t[2],((t,s)=>{0!=t&&it(ie[e],[s],ds(s))}));const s=qe();Me(t[3],((t,o)=>{ns(t,de[e],be[e],[o])&&!n&&(it(he[e],[o,null]),Ge(s,o))})),n||Me(t[5],((t,n)=>{if(!pe(s,n)){const s=qe();Me(t,(e=>Me(e,(([t,n],o)=>n!==t?Ge(s,o):me(e,o))))),Me(s,(t=>it(he[e],[n,t])))}})),Me(t[4],((t,s)=>Me(t,((t,n)=>ns(t,ye[e],Pe[e],[s,n])))))}if(!l){let s;Me(t[5],((t,n)=>{let o;Me(t,((t,l)=>{let r;Me(t,(([t,a],i)=>{a!==t&&(it(je[e],[n,l,i],a,t,$t),s=o=r=1)})),r&&it(Le[e],[n,l],$t)})),o&&it(le[e],[n],$t)})),s&&it(se[e],void 0,$t)}}},ls=e=>{const t=ps();t!=n&&it(Ye[e],void 0,t);const s=Se(tt[e])&&Se(st[e]),o=Se(nt[e])&&Se(Ze[e]);if(!s||!o){const t=e?[Oe(k),Oe(D)]:[k,D];if(s||ns(t[0],tt[e],st[e]),!o){let s;Me(t[1],(([t,n],o)=>{n!==t&&(it(nt[e],[o],n,t,es),s=1)})),s&&it(Ze[e],void 0,es)}}},rs=(e,...t)=>(Qs((()=>e(...X(t,y)))),Os),as=()=>Ne(Z),is=()=>ke(Z),cs=e=>ke(De(Y,y(e))),ds=e=>Ce(De(Z,y(e))),us=e=>ke(De(Z,y(e))),gs=(e,t,s,n=0,o)=>{return X(A(G((l=De(Z,y(e)),r=(e,s)=>[F(t)?s:De(e,y(t)),s],X([...l?.entries()??[]],(([e,t])=>r(t,e)))),(([e],[t])=>at(e,t)*(s?-1:1))),n,F(o)?o:n+o),(([,e])=>e));var l,r},hs=(e,t)=>ke(De(De(Z,y(e)),y(t))),fs=(e,t,s)=>De(De(De(Z,y(e)),y(t)),y(s)),Is=()=>Qe($),bs=()=>ke($),ws=e=>De($,y(e)),Ls=()=>!Se(Z),Cs=e=>pe(Z,y(e)),Rs=(e,t)=>pe(De(Y,y(e)),y(t)),Ts=(e,t)=>pe(De(Z,y(e)),y(t)),vs=(e,t,s)=>pe(De(De(Z,y(e)),y(t)),y(s)),ps=()=>!Se($),Ss=e=>pe($,y(e)),ys=e=>rs((()=>(e=>we(e,ht,Yt))(e)?pt(e):0)),Vs=e=>rs((()=>bt(e)?Et(e):0)),Ms=e=>{try{vt(zt(e))}catch{}return Os},ms=t=>rs((()=>{if((e=we(t,(e=>we(e,ut))))&&(Rt(t),!Se(Z))){const e=as();ks(),ys(e)}})),Es=e=>rs((()=>{if(t=(e=>we(e,ut))(e)){const s=Is();Fs(),Js(),t=!0,Tt(e),Vs(s)}})),ks=()=>rs((()=>pt({}))),Ds=e=>rs((e=>pe(Z,e)?At(e):0),e),Hs=(e,t)=>rs(((e,t)=>Q(De(Z,e),(s=>pe(s,t)?Pt(e,s,t):0))),e,t),Js=()=>rs((()=>Et({}))),xs=()=>rs((()=>{Rt({}),e=!1})),Fs=()=>rs((()=>{Tt({}),t=!1})),Qs=(e,t)=>{if(-1!=l){zs();const s=e();return Ns(t),s}},zs=()=>(-1!=l&&l++,1==l&&(c[0]?.(),it(ot)),Os),Ns=e=>(l>0&&(l--,0==l&&(l=1,ts(1),Se(E)||os(1),ss(1),Se(D)||ls(1),e?.(Os)&&(Me(E,((e,t)=>Me(e,((e,s)=>Me(e,(([e],n)=>Be(Os,t,s,n,e))))))),Ve(E),Me(D,(([e],t)=>Ue(Os,t,e))),Ve(D)),it(lt[0],void 0),l=-1,ts(0),Se(E)||os(0),ss(0),Se(D)||ls(0),c[1]?.(),it(lt[1],void 0),c[2]?.(),l=0,s=Ls(),n=ps(),K([g,C,V,M,m,E,H,k,D,J],Ve))),Os),Os={getContent:()=>[as(),Is()],getTables:as,getTableIds:is,getTable:e=>ze(De(Z,y(e))),getTableCellIds:cs,getRowCount:ds,getRowIds:us,getSortedRowIds:gs,getRow:(e,t)=>Qe(De(De(Z,y(e)),y(t))),getCellIds:hs,getCell:fs,getValues:Is,getValueIds:bs,getValue:ws,hasTables:Ls,hasTable:Cs,hasTableCell:Rs,hasRow:Ts,hasCell:vs,hasValues:ps,hasValue:Ss,getTablesJson:()=>Nt(Z),getValuesJson:()=>Nt($),getJson:()=>Nt([Z,$]),getTablesSchemaJson:()=>Nt(x),getValuesSchemaJson:()=>Nt(P),getSchemaJson:()=>Nt([x,P]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:e=>rs((()=>{const t=O(e)?e():e;gt(t)&&(([e,t])=>{(Ie(e)?ks:ys)(e),(Ie(t)?Js:Vs)(t)})(t)})),setTables:ys,setTable:(e,t)=>rs((e=>ht(t,e)?St(e,t):0),e),setRow:(e,t,s)=>rs(((e,t)=>ft(e,t,s)?yt(e,Qt(e),t,s):0),e,t),addRow:(e,t,s=!0)=>Qs((()=>{let n;return ft(e,n,t)&&(e=y(e),yt(e,Qt(e),n=((e,t)=>{const[s]=De(q,e);let n;do{n=s(t)}while(pe(De(Z,e),n));return n})(e,s?1:0),t)),n})),setPartialRow:(e,t,s)=>rs(((e,t)=>{if(ft(e,t,s,1)){const n=Qt(e);fe(s,((s,o)=>Mt(e,n,t,o,s)))}}),e,t),setCell:(e,t,s,n)=>rs(((e,t,s)=>Q(It(e,t,s,O(n)?n(fs(e,t,s)):n),(n=>Mt(e,Qt(e),t,s,n)))),e,t,s),setValues:Vs,setPartialValues:e=>rs((()=>bt(e,1)?fe(e,((e,t)=>kt(t,e))):0)),setValue:(e,t)=>rs((e=>Q(wt(e,O(t)?t(ws(e)):t),(t=>kt(e,t)))),e),applyChanges:e=>rs((()=>{fe(e[0],((e,t)=>F(e)?Ds(t):fe(e,((e,s)=>F(e)?Hs(t,s):fe(e,((e,n)=>Be(Os,t,s,n,e))))))),fe(e[1],((e,t)=>Ue(Os,t,e)))})),setTablesJson:Ms,setValuesJson:e=>{try{mt(zt(e))}catch{}return Os},setJson:e=>rs((()=>{try{const[t,s]=zt(e);vt(t),mt(s)}catch{Ms(e)}})),setTablesSchema:ms,setValuesSchema:Es,setSchema:(e,t)=>rs((()=>{ms(e),Es(t)})),delTables:ks,delTable:Ds,delRow:Hs,delCell:(e,t,s,n)=>rs(((e,t,s)=>Q(De(Z,e),(o=>Q(De(o,t),(l=>pe(l,s)?_t(e,o,t,l,s,n):0))))),e,t,s),delValues:Js,delValue:e=>rs((e=>pe($,e)?jt(e):0),e),delTablesSchema:xs,delValuesSchema:Fs,delSchema:()=>rs((()=>{xs(),Fs()})),transaction:Qs,startTransaction:zs,getTransactionChanges:()=>[Qe(E,((e,t)=>-1===De(g,t)?void 0:Qe(e,((e,s)=>-1===De(De(M,t),s)?void 0:Qe(e,(([,e])=>e),(e=>Ft(e)))),Se,Ie)),Se,Ie),Qe(D,(([,e])=>e),(e=>Ft(e))),1],getTransactionLog:()=>[!Se(E),!Se(D),Ne(E,xt,Ft),Ne(H),Qe(D,xt,Ft),Qe(J),Qe(g),ze(M),Ne(m),Qe(k)],finishTransaction:Ns,forEachTable:e=>Me(Z,((t,s)=>e(s,(e=>Me(t,((t,s)=>e(s,(e=>He(t,e))))))))),forEachTableCell:(e,t)=>He(De(Y,y(e)),t),forEachRow:(e,t)=>Me(De(Z,y(e)),((e,s)=>t(s,(t=>He(e,t))))),forEachCell:(e,t,s)=>He(De(De(Z,y(e)),y(t)),s),forEachValue:e=>He($,e),addSortedRowIdsListener:(e,t,s,n,o,l,r)=>{let a=gs(e,t,s,n,o);return rt((()=>{const r=gs(e,t,s,n,o);U(r,a)||(a=r,l(Os,e,t,s,n,o,a))}),he[r?1:0],[e,t],[is])},addStartTransactionListener:e=>rt(e,ot),addWillFinishTransactionListener:e=>rt(e,lt[0]),addDidFinishTransactionListener:e=>rt(e,lt[1]),callListener:e=>(dt(e),Os),delListener:e=>(ct(e),Os),getListenerStats:()=>({hasTables:Ht(te),tables:Ht(se),tableIds:Ht(ne),hasTable:Ht(oe),table:Ht(le),tableCellIds:Ht(re),hasTableCell:Ht(ae,Te),rowCount:Ht(ie),rowIds:Ht(de),sortedRowIds:Ht(he),hasRow:Ht(be,Te),row:Ht(Le,Te),cellIds:Ht(ye,Te),hasCell:Ht(Pe,ve),cell:Ht(je,ve),invalidCell:Ht(Ke,ve),hasValues:Ht(Ye),values:Ht(Ze),valueIds:Ht(tt),hasValue:Ht(st),value:Ht(nt),invalidValue:Ht(Xe),transaction:Re(ot)+Ht(lt)}),isMergeable:()=>!1,createStore:Wt,addListener:rt,callListeners:it,setInternalListeners:(e,t,s,n,o)=>c=[e,t,s,n,o]};return fe({[u+f]:[0,te,[],()=>[Ls()]],[f]:[0,se],[I]:[0,ne],[u+h]:[1,oe,[is],e=>[Cs(...e)]],[h]:[1,le,[is]],[h+T]:[1,re,[is]],[u+h+R]:[2,ae,[is,cs],e=>[Rs(...e)]],[w]:[1,ie,[is]],[L]:[1,de,[is]],[u+b]:[2,be,[is,us],e=>[Ts(...e)]],[b]:[2,Le,[is,us]],[T]:[2,ye,[is,us]],[u+R]:[3,Pe,[is,us,hs],e=>[vs(...e)]],[R]:[3,je,[is,us,hs],e=>Dt(fs(...e))],InvalidCell:[3,Ke],[u+p]:[0,Ye,[],()=>[ps()]],[p]:[0,Ze],[S]:[0,tt],[u+v]:[1,st,[bs],e=>[Ss(...e)]],[v]:[1,nt,[bs],e=>Dt(ws(e[0]))],InvalidValue:[1,Xe]},(([e,t,s,n],o)=>{Os[d+o+i]=(...o)=>rt(o[e],t[o[e+1]?1:0],e>0?A(o,0,e):void 0,s,n)})),ce(Os)},At=2**36,Pt=2**30,_t=2**24,jt=2**18,Bt=4096,Ut={HasTable:1,Table:1,TableCellIds:1,HasTableCell:2,RowCount:1,RowIds:1,SortedRowIds:5,HasRow:2,Row:2,CellIds:2,HasCell:3,Cell:3,HasValue:1,Value:1,InvalidCell:3,InvalidValue:1},qt=(e=t)=>[Mt(e),Mt(e)],Gt=e=>{let s=1,n=qt(),o=0;const l=Ee(),r=qe(),[a,c]=(e=>{let t=0,s=-1;const n=Q(e,(e=>{const t=bt(e);return ot(t/_t)+ot(t/jt)+ot(t/Bt)+ot(t/64)+ot(t)}),(()=>it(5))),o=e=>{const n=t,[o,l]=F(e)||""==e?[0,0]:[lt(r=e,0)*At+lt(r,1)*Pt+lt(r,2)*_t+lt(r,3)*jt+lt(r,4)*Bt+64*lt(r,5)+lt(r,6),lt(r,7)*jt+lt(r,8)*Bt+64*lt(r,9)+lt(r,10)];var r;t=D(n,o,E.HLC_TIME??Date.now()),s=t==n?t==o?D(s,l):s:t==o?l:-1};return[()=>{return o(),l=++s,ot((e=t)/At)+ot(e/Pt)+ot(e/_t)+ot(e/jt)+ot(e/Bt)+ot(e/64)+ot(e)+ot(l/jt)+ot(l/Bt)+ot(l/64)+ot(l)+n;var e,l},o]})(e),u=Wt(),g=e=>{const t=s;return s=0,e(),s=t,w},h=(e,s=0)=>{const o={},l={},[[r,a=t,i=0],d]=e,[u,g]=n,[h,I,b]=u;let w=s?i:b,L=a;he(r,(([e,n=t,l=0],r)=>{const a=xe(h,r,Mt),[i,c,d]=a;let u=s?l:d,g=n;he(e,((e,t)=>{const[n,l,a]=f(e,xe(i,t,Mt),be(be(o,r,de),t,de),s);u^=s?0:(l?vt(t,l):0)^vt(t,a),g=St(g,n)})),u^=s?0:pt(c,n),yt(a,n,u),w^=s?0:(d?vt(r,d):0)^vt(r,a[2]),L=St(L,g)})),w^=s?0:pt(I,a),yt(u,a,w);const[C]=f(d,g,l,s);return c(St(L,C)),[o,l,1]},f=(e,s,n,o)=>{const[l,r=t,a=0]=e,[i,c,d]=s;let u=r,g=o?a:d;return he(l,(([e,s,l=0],r)=>{const a=xe(i,r,(()=>[void 0,t,0])),[,c,d]=a;(!c||s>c)&&(yt(a,s,o?l:bt(Nt(e??null)+":"+s)),a[0]=e,n[r]=e,g^=o?0:vt(r,d)^vt(r,a[2]),u=St(u,s))})),g^=o?0:pt(c,r),yt(s,r,g),[u,d,s[2]]},I=()=>[mt(n[0],(e=>mt(e,(e=>mt(e))))),mt(n[1])],b=e=>g((()=>u.applyChanges(h(e)))),w={getMergeableContent:I,getMergeableContentHashes:()=>[n[0][2],n[1][2]],getMergeableTableHashes:()=>Qe(n[0][0],Tt),getMergeableTableDiff:e=>{const t=Vt(n[0][1]),s={};return He(n[0][0],((n,[o,l,r])=>ue(e,n)?r!=e[n]?s[n]=r:0:t[0][n]=Et([o,l],(e=>Et(e))))),[t,s]},getMergeableRowHashes:e=>{const t={};return he(e,((e,s)=>Q(De(n[0][0],s),(([n,,o])=>o!=e?He(n,((e,[,,n])=>be(t,s,de)[e]=n)):0)))),t},getMergeableRowDiff:e=>{const t=Vt(n[0][1]),s={};return he(e,((e,o)=>He(De(n[0][0],o)?.[0],((n,[l,r,a])=>ue(e,n)?a!==e[n]?be(s,o,de)[n]=a:0:be(t[0],o,Vt)[0][n]=Et([l,r]))))),[t,s]},getMergeableCellHashes:e=>{const t={};return he(e,((e,s)=>Q(De(n[0][0],s),(([n])=>he(e,((e,o)=>Q(De(n,o),(([n,,l])=>l!==e?He(n,((e,[,,n])=>be(be(t,s,de),o,de)[e]=n)):0)))))))),t},getMergeableCellDiff:e=>{const[[t,s]]=n,o={};return he(e,((e,s)=>he(e,((e,n)=>Q(De(t,s),(([t,l])=>Q(De(t,n),(([t,r])=>He(t,((t,[a,i,c])=>c!==e[t]?be(be(o,s,(()=>Vt(l)))[0],n,(()=>Vt(r)))[0][t]=[a,i]:0)))))))))),Ct(o,s)},getMergeableValueHashes:()=>Qe(n[1][0],Tt),getMergeableValueDiff:e=>{const[,[t,s]]=n,o=Qe(t,wt,(([,,t],s)=>t==e?.[s]));return Ct(o,s)},setMergeableContent:e=>g((()=>(e=>W(e)&&2==P(e)&&kt(e[0],(e=>we(e,(e=>kt(e,(e=>we(e,(e=>kt(e,(e=>we(e,(e=>kt(e,je)),void 0,1)))),void 0,1)))),void 0,1)))&&kt(e[1],(e=>we(e,(e=>kt(e,je)),void 0,1))))(e)?u.transaction((()=>{u.delTables().delValues(),n=qt(),u.applyChanges(h(e,1))})):0)),setDefaultContent:e=>(u.transaction((()=>{o=1,u.setContent(e),o=0})),w),getTransactionMergeableChanges:(e=!1)=>{const[[t,s,o],[a,i,c]]=n,d=e?Rt:Ct,u={};Me(l,((e,s)=>Q(De(t,s),(([t,n,o])=>{const l={};Me(e,((e,s)=>Q(De(t,s),(([t,n,o])=>{const r={};Me(e,(e=>{Q(De(t,e),(([t,s,n])=>r[e]=d(t,s,n)))})),l[s]=d(r,n,o)})))),u[s]=d(l,n,o)}))));const g={};return Me(r,(e=>Q(De(a,e),(([t,s,n])=>g[e]=d(t,s,n))))),[d(u,s,o),d(g,i,c),1]},applyMergeableChanges:b,merge:e=>{const t=I(),s=e.getMergeableContent();return e.applyMergeableChanges(t),b(s)}};return u.setInternalListeners((()=>{}),(()=>{}),(()=>{Ve(l),Ve(r)}),((e,n,r,i)=>{Ge(xe(xe(l,e,Ee),n,qe),r),s&&h([[{[e]:[{[n]:[{[r]:[i,o?t:a()]}]}]}],[{}],1])}),((e,n)=>{Ge(r,e),s&&h([[{}],[{[e]:[n,o?t:a()]}],1])})),fe(u,((e,t)=>w[t]=V(t,"set")||V(t,"del")||V(t,"apply")||M(t,"Transaction")||t=="call"+i?(...t)=>(e(...t),w):V(t,d)&&M(t,i)?(...s)=>{const n=Ut[A(t,3,-8)]??0,o=s[n];return s[n]=(e,...t)=>o(w,...t),e(...s)}:"isMergeable"==t?()=>!0:e)),ce(w)};export{tt as createCheckpoints,ct as createIndexes,Gt as createMergeableStore,gt as createMetrics,ht as createQueries,ft as createRelationships,Wt as createStore,at as defaultSorter,it as getUniqueId};
|
|
1
|
+
const e=e=>typeof e,t="",s=e(t),n=e(!0),o=e(0),l=e(e),r="type",a="default",i="Listener",c="Result",d="add",u="Has",g="Ids",h="Table",f=h+"s",I=h+g,b="Row",w=b+"Count",L=b+g,C="Sorted"+b+g,R="Cell",T=R+g,v="Value",p=v+"s",S=v+g,y=e=>t+e,V=(e,t)=>e.startsWith(t),M=(e,t)=>e.endsWith(t),m=(e,s=t,n)=>e.split(s,n),E=globalThis,k=Math,D=k.max,H=k.min,J=k.floor,x=isFinite,F=e=>null==e,Q=(e,t,s)=>F(e)?s?.():t(e),z=e=>e==s||e==n,N=t=>e(t)==s,O=t=>e(t)==l,W=e=>Array.isArray(e),A=(e,t,s)=>e.slice(t,s),P=e=>e.length,_=()=>{},j=(e,t)=>e.includes(t),B=(e,t)=>e.every(t),U=(e,t)=>P(e)===P(t)&&B(e,((e,s)=>t[s]===e)),q=(e,t)=>B(e,((s,n)=>0==n||t(e[n-1],s)<=0)),G=(e,t)=>e.sort(t),K=(e,t)=>e.forEach(t),X=(e,t)=>e.map(t),Y=e=>$(e,((e,t)=>e+t),0),Z=e=>0==P(e),$=(e,t,s)=>e.reduce(t,s),ee=(e,...t)=>e.push(...t),te=e=>e.pop(),se=e=>e.shift(),ne=t=>{const s=e(t);return z(s)||s==o&&x(t)?s:void 0},oe=e=>F(e)||!F(ne(e)),le=(e,t,s,n,o)=>F(o)?e.delCell(t,s,n,!0):e.setCell(t,s,n,o),re=(e,t,s)=>F(s)?e.delValue(t):e.setValue(t,s),ae=e=>t=>$(fe(t),((t,s)=>t+e(s)),0),ie=e=>e?.size??0,ce=ae(ie),de=ae(ce),ue=ae(de),ge=(e,t)=>e?.has(t)??!1,he=e=>F(e)||0==ie(e),fe=e=>[...e?.values()??[]],Ie=e=>e.clear(),be=(e,t)=>e?.forEach(t),we=(e,t)=>e?.delete(t),Le=Object,Ce=e=>Le.getPrototypeOf(e),Re=Le.entries,Te=Le.isFrozen,ve=e=>!F(e)&&Q(Ce(e),(e=>e==Le.prototype||F(Ce(e))),(()=>!0)),pe=Le.keys,Se=Le.freeze,ye=(e=[])=>Le.fromEntries(e),Ve=(e,t)=>t in e,Me=(e,t)=>(delete e[t],e),me=(e,t)=>K(Re(e),(([e,s])=>t(s,e))),Ee=(e,t)=>ye(((e,t)=>X(Re(e),(([e,s])=>t(s,e))))(e,((e,s)=>[s,t(e,s)]))),ke=e=>ve(e)&&0==(e=>P(pe(e)))(e),De=(e,t,s)=>(Ve(e,t)||(e[t]=s()),e[t]),He=(e,t,s,n=0)=>F(e)||!ve(e)||!n&&ke(e)||Te(e)?(s?.(),!1):(me(e,((s,n)=>{t(s,n)||Me(e,n)})),!!n||!ke(e)),Je=e=>new Map(e),xe=e=>[...e?.keys()??[]],Fe=(e,t)=>e?.get(t),Qe=(e,t)=>be(e,((e,s)=>t(s,e))),ze=(e,t,s)=>F(s)?(we(e,t),e):e?.set(t,s),Ne=(e,t,s,n)=>(ge(e,t)?n?.(Fe(e,t)):ze(e,t,s()),Fe(e,t)),Oe=(e,t,s,n=ze)=>(Ee(t,((t,n)=>s(e,n,t))),Qe(e,(s=>Ve(t,s)?0:n(e,s))),e),We=(e,t,s,n)=>{const o={};return be(e,((e,l)=>{if(!s?.(e,l)){const s=t?t(e,l):e;n?.(s)||(o[l]=s)}})),o},Ae=(e,t,s)=>We(e,(e=>We(e,t,s)),he,ke),Pe=(e,t,s)=>We(e,(e=>Ae(e,t,s)),he,ke),_e=(e,t)=>{const s=Je();return be(e,((e,n)=>s.set(n,t?.(e)??e))),s},je=e=>_e(e,_e),Be=e=>_e(e,je),Ue=(e,t,s,n,o=0)=>Q((s?Ne:Fe)(e,t[o],o>P(t)-2?s:Je),(l=>{if(o>P(t)-2)return n?.(l)&&ze(e,t[o]),l;const r=Ue(l,t,s,n,o+1);return he(l)&&ze(e,t[o]),r})),qe=e=>new Set(W(e)||F(e)?e:[e]),Ge=(e,t)=>e?.add(t),Ke=(e,t,s,n,o)=>{const l=e.hasRow,r=Je(),a=Je(),i=Je(),c=Je(),d=Je(),u=Je(),g=(t,s,...n)=>{const o=Ne(u,t,qe);return K(n,(t=>Ge(o,t)&&s&&e.callListener(t))),n},h=(t,...s)=>Q(Fe(u,t),(n=>{K(Z(s)?fe(n):s,(t=>{e.delListener(t),we(n,t)})),he(n)&&ze(u,t)})),f=(e,s)=>{ze(r,e,s),ge(a,e)||(ze(a,e,t()),ze(c,e,Je()),ze(d,e,Je()),o(i))},I=e=>{ze(r,e),ze(a,e),ze(c,e),ze(d,e),h(e),o(i)};return[()=>e,()=>xe(r),e=>Qe(a,e),e=>ge(a,e),e=>Fe(r,e),e=>Fe(a,e),(e,t)=>ze(a,e,t),f,(t,n,o,r,a)=>{f(t,n);const i=Je(),u=Je(),I=Fe(c,t),b=Fe(d,t),w=t=>{const o=s=>e.getCell(n,t,s),c=Fe(I,t),d=l(n,t)?s(r(o,t)):void 0;if(c===d||W(c)&&W(d)&&U(c,d)||ze(i,t,[c,d]),!F(a)){const e=Fe(b,t),s=l(n,t)?a(o,t):void 0;e!=s&&ze(u,t,s)}},L=e=>{o((()=>{be(i,(([,e],t)=>ze(I,t,e))),be(u,((e,t)=>ze(b,t,e)))}),i,u,I,b,e),Ie(i),Ie(u)};Qe(I,w),e.hasTable(n)&&K(e.getRowIds(n),(e=>{ge(I,e)||w(e)})),L(!0),h(t),g(t,0,e.addRowListener(n,null,((e,t,s)=>w(s))),e.addTableListener(n,(()=>L())))},I,e=>n(e,i),()=>Qe(u,I),g,h]},Xe=(e,s)=>N(e)?t=>t(e):e??(()=>s??t),Ye=(e,t)=>{const s=new WeakMap;return n=>{s.has(n)||s.set(n,e(n));const o=s.get(n);return t?.(o),o}},Ze=/^\d+$/,$e=()=>{const e=[];let s=0;return[n=>(n?se(e):null)??t+s++,t=>{Ze.test(t)&&P(e)<1e3&&ee(e,t)}]},et=e=>{let s;const[n,o]=$e(),l=Je();return[(o,r,a,i=[],c=()=>[])=>{s??=e();const d=n(1);return ze(l,d,[o,r,a,i,c]),Ge(Ue(r,a??[t],qe),d),d},(e,n,...o)=>K(((e,s=[t])=>{const n=[],o=(e,t)=>t==P(s)?ee(n,e):null===s[t]?be(e,(e=>o(e,t+1))):K([s[t],null],(s=>o(Fe(e,s),t+1)));return o(e,0),n})(e,n),(e=>be(e,(e=>Fe(l,e)[0](s,...n??[],...o))))),e=>Q(Fe(l,e),(([,s,n])=>(Ue(s,n??[t],void 0,(t=>(we(t,e),he(t)?1:0))),ze(l,e),o(e),n))),e=>Q(Fe(l,e),(([e,,t=[],n,o])=>{const l=(...r)=>{const a=P(r);a==P(t)?e(s,...r,...o(r)):F(t[a])?K(n[a]?.(...r)??[],(e=>l(...r,e))):l(...r,t[a])};l()}))]},tt=Ye((e=>{let s,n,o,l=100,r=Je(),a=Je(),i=1;const c=Je(),d=Je(),[u,g,h]=et((()=>J)),f=Je(),I=Je(),b=[],w=[],L=(t,s)=>{i=0,e.transaction((()=>{const[n,o]=Fe(f,s);be(n,((s,n)=>be(s,((s,o)=>be(s,((s,l)=>le(e,n,o,l,s[t]))))))),be(o,((s,n)=>re(e,n,s[t])))})),i=1},C=e=>{ze(f,e),ze(I,e),g(d,[e])},R=(e,t)=>K(((e,t)=>e.splice(0,t))(e,t??P(e)),C),T=()=>R(b,P(b)-l),v=()=>Q(s,(()=>{ee(b,s),T(),R(w),s=void 0,o=1})),p=()=>{s=te(b),o=1};let S,y;const V=(e=t)=>(F(s)&&(s=t+n++,ze(f,s,[r,a]),D(s,e),r=Je(),a=Je(),o=1),s),M=()=>{Z(b)||(((e,...t)=>{e.unshift(...t)})(w,V()),L(0,s),s=te(b),o=1)},m=()=>{Z(w)||(ee(b,s),s=se(w),L(1,s),o=1)},E=()=>{o&&(g(c),o=0)},k=e=>{const t=V(e);return E(),t},D=(e,t)=>(H(e)&&Fe(I,e)!==t&&(ze(I,e,t),g(d,[e])),J),H=e=>ge(f,e),J={setSize:e=>(l=e,T(),J),addCheckpoint:k,setCheckpoint:D,getStore:()=>e,getCheckpointIds:()=>[[...b],s,[...w]],forEachCheckpoint:e=>Qe(I,e),hasCheckpoint:H,getCheckpoint:e=>Fe(I,e),goBackward:()=>(M(),E(),J),goForward:()=>(m(),E(),J),goTo:e=>{const t=j(b,e)?M:j(w,e)?m:null;for(;!F(t)&&e!=s;)t();return E(),J},addCheckpointIdsListener:e=>u(e,c),addCheckpointListener:(e,t)=>u(t,d,[e]),delListener:e=>(h(e),J),clear:()=>(R(b),R(w),F(s)||C(s),s=void 0,n=0,k(),J),clearForward:()=>(Z(w)||(R(w),g(c)),J),destroy:()=>{e.delListener(S),e.delListener(y)},getListenerStats:()=>({checkpointIds:ce(c),checkpoint:ce(d)}),_registerListeners:()=>{S=e.addCellListener(null,null,null,((e,t,s,n,o,l)=>{if(i){v();const e=Ne(r,t,Je),a=Ne(e,s,Je),i=Ne(a,n,(()=>[l,void 0]));i[1]=o,i[0]===o&&he(ze(a,n))&&he(ze(e,s))&&he(ze(r,t))&&p(),E()}})),y=e.addValueListener(null,((e,t,s,n)=>{if(i){v();const e=Ne(a,t,(()=>[n,void 0]));e[1]=s,e[0]===s&&he(ze(a,t))&&p(),E()}}))}};return Se(J.clear())}),(e=>e._registerListeners())),st=m("-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz"),nt=Je(X(st,((e,t)=>[e,t]))),ot=e=>st[63&e],lt=(e,t)=>Fe(nt,e[t])??0,rt=E.crypto?e=>E.crypto.getRandomValues(e):e=>X(e,(()=>J(256*k.random()))),at=(e,t)=>(e??0)<(t??0)?-1:1,it=(e=16)=>$(rt(new Uint8Array(e)),((e,t)=>e+ot(t)),""),ct=Ye((e=>{const s=Je(),n=Je(),[o,l,r]=et((()=>C)),[a,i,c,d,u,g,h,,f,I,b,w]=Ke(e,Je,(e=>F(e)?t:W(e)?X(e,y):y(e)),o,l),L=(t,s,n)=>{const o=u(t);be(n,((t,n)=>s(n,(s=>be(t,(t=>s(t,(s=>e.forEachCell(o,t,s)))))))))},C={setIndexDefinition:(e,t,o,r,a,i=at)=>{const c=F(a)?void 0:([e],[t])=>a(e,t);return f(e,t,((t,o,a,d,u,f)=>{let I=0;const b=qe(),w=qe(),L=g(e);if(be(o,(([e,t],s)=>{const n=qe(e),o=qe(t);be(n,(e=>we(o,e)?we(n,e):0)),be(n,(e=>{Ge(b,e),Q(Fe(L,e),(t=>{we(t,s),he(t)&&(ze(L,e),I=1)}))})),be(o,(e=>{Ge(b,e),ge(L,e)||(ze(L,e,qe()),I=1),Ge(Fe(L,e),s),F(r)||Ge(w,e)}))})),t(),he(u)||(f?Qe(L,(e=>Ge(w,e))):Qe(a,(e=>Q(Fe(d,e),(e=>Ge(w,e))))),be(w,(e=>{const t=(t,s)=>i(Fe(u,t),Fe(u,s),e),s=[...Fe(L,e)];q(s,t)||(ze(L,e,qe(G(s,t))),Ge(b,e))}))),(I||f)&&!F(c)){const t=[...L];q(t,c)||(h(e,Je(G(t,c))),I=1)}I&&l(s,[e]),be(b,(t=>l(n,[e,t])))}),Xe(o),Q(r,Xe)),C},delIndexDefinition:e=>(I(e),C),getStore:a,getIndexIds:i,forEachIndex:e=>c(((t,s)=>e(t,(e=>L(t,e,s))))),forEachSlice:(e,t)=>L(e,t,g(e)),hasIndex:d,hasSlice:(e,t)=>ge(g(e),t),getTableId:u,getSliceIds:e=>xe(g(e)),getSliceRowIds:(e,t)=>fe(Fe(g(e),t)),addIndexIdsListener:b,addSliceIdsListener:(e,t)=>o(t,s,[e]),addSliceRowIdsListener:(e,t,s)=>o(s,n,[e,t]),delListener:e=>(r(e),C),destroy:w,getListenerStats:()=>({sliceIds:ce(s),sliceRowIds:de(n)})};return Se(C)})),dt=Je([["avg",[(e,t)=>Y(e)/t,(e,t,s)=>e+(t-e)/(s+1),(e,t,s)=>e+(e-t)/(s-1),(e,t,s,n)=>e+(t-s)/n]],["max",[e=>D(...e),(e,t)=>D(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:D(t,e)]],["min",[e=>H(...e),(e,t)=>H(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:H(t,e)]],["sum",[e=>Y(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,s)=>e-s+t]]]),ut=(e,t,s,n,o,l=!1)=>{if(he(s))return;const[r,a,i,c]=o;return l||=F(e),be(n,(([s,n])=>{l||(e=F(s)?a?.(e,n,t++):F(n)?i?.(e,s,t--):c?.(e,n,s,t),l||=F(e))})),l?r(fe(s),ie(s)):e},gt=Ye((e=>{const s=Je(),[n,o,l]=et((()=>w)),[r,a,i,c,d,u,g,,h,f,I,b]=Ke(e,_,(e=>isNaN(e)||F(e)||!0===e||!1===e||e===t?void 0:1*e),n,o),w={setMetricDefinition:(e,t,n,l,r,a,i)=>{const c=O(n)?[n,r,a,i]:Fe(dt,n)??Fe(dt,"sum");return h(e,t,((t,n,l,r,a,i)=>{const d=u(e),h=ie(r);i||=F(d),t();let f=ut(d,h,r,n,c,i);x(f)||(f=void 0),f!=d&&(g(e,f),o(s,[e],f,d))}),Xe(l,1)),w},delMetricDefinition:e=>(f(e),w),getStore:r,getMetricIds:a,forEachMetric:i,hasMetric:c,getTableId:d,getMetric:u,addMetricIdsListener:I,addMetricListener:(e,t)=>n(t,s,[e]),delListener:e=>(l(e),w),destroy:b,getListenerStats:()=>({metric:ce(s)})};return Se(w)})),ht=Ye((e=>{const s=e.createStore,n=s(),o=s(),l=Je(),{addListener:r,callListeners:a,delListener:u}=o,[g,f,I,v,p,,,S,,y,V,M,m,E]=Ke(e,(()=>!0),_,r,a),k=(e,t,...s)=>K(s,(s=>Ge(Ne(Ne(l,t,Je),e,qe),s))),D=e=>{Q(Fe(l,e),(e=>{Qe(e,((e,t)=>be(t,(t=>e.delListener(t))))),Ie(e)})),K([o,n],(t=>t.delTable(e)))},H=(e,t,s)=>k(t,e,t.addStartTransactionListener(s.startTransaction),t.addDidFinishTransactionListener((()=>s.finishTransaction()))),J={setQueryDefinition:(s,l,r)=>{S(s,l),D(s);const a=[],i=[[null,[l,null,null,[],Je()]]],c=[],d=[],u=[];r({select:(e,s)=>{const n=O(e)?[P(a)+t,e]:[F(s)?e:s,t=>t(e,s)];return ee(a,n),{as:e=>n[0]=e}},join:(e,t,s)=>{const n=F(s)||O(t)?null:t,o=F(n)?t:s,l=[e,[e,n,O(o)?o:e=>e(o),[],Je()]];return ee(i,l),{as:e=>l[0]=e}},where:(e,t,s)=>ee(c,O(e)?e:F(s)?s=>s(e)===t:n=>n(e,t)===s),group:(e,t,s,n,o)=>{const l=[e,[e,O(t)?[t,s,n,o]:Fe(dt,t)??[(e,t)=>t]]];return ee(d,l),{as:e=>l[0]=e}},having:(e,t)=>ee(u,O(e)?e:s=>s(e)===t)});const g=Je(a);if(he(g))return J;const h=Je(i);Qe(h,((e,[,t])=>Q(Fe(h,t),(({3:t})=>F(e)?0:ee(t,e)))));const f=Je(d);let I=n;if(he(f)&&Z(u))I=o;else{H(s,I,o);const e=Je();Qe(f,((t,[s,n])=>Ge(Ne(e,s,qe),[t,n])));const t=qe();Qe(g,(s=>ge(e,s)?0:Ge(t,s)));const n=Je(),l=(t,n,l,r)=>Q(t,(([a,i,c,d])=>{Qe(n,((t,[s])=>{const n=Ne(a,t,Je),o=Fe(n,l),i=r?void 0:s;if(o!==i){const s=qe([[o,i]]),r=ie(n);ze(n,l,i),be(Fe(e,t),(([e,t])=>{const o=ut(d[e],r,n,s,t);d[e]=F(ne(o))?null:o}))}})),he(i)||!B(u,(e=>e((e=>d[e]))))?o.delRow(s,c):F(c)?t[2]=o.addRow(s,d):o.setRow(s,c,d)}));k(I,s,I.addRowListener(s,null,((o,r,a,i)=>{const c=[],d=[],u=Je(),g=I.hasRow(s,a);let h=!g;be(t,(e=>{const[t,n,o]=i(s,a,e);ee(c,n),ee(d,o),h||=t})),Qe(e,(e=>{const[t,,n]=i(s,a,e);(h||t)&&ze(u,e,[n])})),h&&l(Ue(n,c,void 0,(([,e])=>(we(e,a),he(e)))),u,a,1),g&&l(Ue(n,d,(()=>{const e={};return be(t,(t=>e[t]=I.getCell(s,a,t))),[Je(),qe(),void 0,e]}),(([,e])=>{Ge(e,a)})),u,a)})))}H(s,e,I);const b=(t,n,o,r)=>{const a=t=>e.getCell(n,o,t);K(r,(n=>{const[o,,l,r,i]=Fe(h,n),c=l?.(a,t),[d,u]=Fe(i,t)??[];c!=d&&(F(u)||E(s,u),ze(i,t,F(c)?null:[c,...m(s,1,e.addRowListener(o,c,(()=>b(t,o,c,r))))]))})),(t=>{const n=(s,n)=>e.getCell(...F(n)?[l,t,s]:s===l?[l,t,n]:[Fe(h,s)?.[0],Fe(Fe(h,s)?.[4],t)?.[0],n]);I.transaction((()=>B(c,(e=>e(n)))?Qe(g,((e,o)=>le(I,s,t,e,o(n,t)))):I.delRow(s,t)))})(t)},{3:w}=Fe(h,null);return I.transaction((()=>m(s,1,e.addRowListener(l,null,((t,n,o)=>{e.hasRow(l,o)?b(o,l,o,w):(I.delRow(s,o),be(h,(({4:e})=>Q(Fe(e,o),(([,t])=>{E(s,t),ze(e,o)})))))}))))),J},delQueryDefinition:e=>(D(e),y(e),J),getStore:g,getQueryIds:f,forEachQuery:I,hasQuery:v,getTableId:p,addQueryIdsListener:e=>V((()=>e(J))),delListener:e=>(u(e),J),destroy:M,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:s,...n}=o.getListenerStats();return n}};return Ee({[h]:[1,1],[h+T]:[0,1],[w]:[0,1],[L]:[0,1],[C]:[0,5],[b]:[1,2],[T]:[0,2],[R]:[1,3]},(([e,t],s)=>{K(e?["get","has","forEach"]:["get"],(e=>J[e+c+s]=(...t)=>o[e+s](...t))),J[d+c+s+i]=(...e)=>o[d+s+i](...A(e,0,t),((s,...n)=>e[t](J,...n)),!0)})),Se(J)})),ft=Ye((e=>{const s=Je(),n=Je(),o=Je(),l=Je(),[r,a,i]=et((()=>v)),[c,d,u,g,h,f,,,I,b,w,L]=Ke(e,(()=>[Je(),Je(),Je(),Je()]),(e=>F(e)?void 0:e+t),r,a),C=(e,t,s)=>Q(f(e),(([n,,o])=>{if(!ge(o,t)){const l=qe();if(h(e)!=T(e))Ge(l,t);else{let e=t;for(;!F(e)&&!ge(l,e);)Ge(l,e),e=Fe(n,e)}if(s)return l;ze(o,t,l)}return Fe(o,t)})),R=(e,t)=>Q(f(e),(([,,e])=>ze(e,t))),T=e=>Fe(s,e),v={setRelationshipDefinition:(e,t,r,i)=>(ze(s,e,r),I(e,t,((t,s)=>{const r=qe(),i=qe(),c=qe(),[d,u]=f(e);be(s,(([t,s],n)=>{F(t)||(Ge(i,t),Q(Fe(u,t),(e=>{we(e,n),he(e)&&ze(u,t)}))),F(s)||(Ge(i,s),ge(u,s)||ze(u,s,qe()),Ge(Fe(u,s),n)),Ge(r,n),ze(d,n,s),Qe(Fe(l,e),(t=>{ge(C(e,t),n)&&Ge(c,t)}))})),t(),be(r,(t=>a(n,[e,t]))),be(i,(t=>a(o,[e,t]))),be(c,(t=>{R(e,t),a(l,[e,t])}))}),Xe(i)),v),delRelationshipDefinition:e=>(ze(s,e),b(e),v),getStore:c,getRelationshipIds:d,forEachRelationship:t=>u((s=>t(s,(t=>e.forEachRow(h(s),t))))),hasRelationship:g,getLocalTableId:h,getRemoteTableId:T,getRemoteRowId:(e,t)=>Fe(f(e)?.[0],t),getLocalRowIds:(e,t)=>fe(Fe(f(e)?.[1],t)),getLinkedRowIds:(e,t)=>F(f(e))?[t]:fe(C(e,t,!0)),addRelationshipIdsListener:w,addRemoteRowIdListener:(e,t,s)=>r(s,n,[e,t]),addLocalRowIdsListener:(e,t,s)=>r(s,o,[e,t]),addLinkedRowIdsListener:(e,t,s)=>(C(e,t),r(s,l,[e,t])),delListener:e=>(R(...i(e)??[]),v),destroy:L,getListenerStats:()=>({remoteRowId:de(n),localRowIds:de(o),linkedRowIds:de(l)})};return Se(v)})),It=new E.TextEncoder,bt=e=>{let t=2166136261;return K(It.encode(e),(e=>{t^=e,t+=(t<<1)+(t<<4)+(t<<7)+(t<<8)+(t<<24)})),t>>>0},wt=2**36,Lt=2**30,Ct=2**24,Rt=2**18,Tt=4096,vt=JSON.stringify,pt=JSON.parse,St=e=>vt(e,((e,t)=>t instanceof Map?Le.fromEntries([...t]):t)),yt=([e,t])=>Mt(e,t),Vt=([e,t,s])=>[e,t,s],Mt=(e,t)=>t?[e,t]:[e],mt=(e,t,s)=>[e,t,s],Et=e=>e[2],kt=(e,t)=>bt(e+":"+t),Dt=(e,t)=>t>e?(e?bt(e):0)^bt(t):0,Ht=(e,t)=>((e??"")>(t??"")?e:t)??"",Jt=(e,t,s)=>{t>e[1]&&(e[1]=t),e[2]=s>>>0},xt=(e=t)=>Mt(ye(),e),Ft=(e=t)=>[Je(),e,0],Qt=([e,t,s],n=Vt)=>[We(e,n),t,s],zt=([e,t],s=yt)=>Mt(We(e,s),t),Nt=(t,s)=>W(t)&&3==P(t)&&N(t[1])&&e(t[2])==o&&x(t[2])&&s(t[0]),Ot=e=>[e,e],Wt=(e,t=ce)=>t(e[0])+t(e[1]),At=()=>[Je(),Je()],Pt=e=>[...e],_t=([e,t])=>e===t,jt=(e,t,s)=>ze(e,t,Fe(e,t)==-s?void 0:s),Bt=()=>{let e,t,s=!1,n=!1,l=0,c=[];const g=Je(),C=Je(),V=Je(),M=Je(),m=Je(),E=Je(),k=Je(),D=Je(),H=Je(),J=Je(),x=Je(),N=Je(),P=Je(),_=Je(),B=qe(),q=Je(),Y=Je(),Z=Je(),$=Je(),te=At(),se=At(),oe=At(),ae=At(),fe=At(),Le=At(),Ce=At(),Re=At(),Te=At(),ve=At(),pe=At(),ye=At(),me=At(),De=At(),Ue=At(),Ke=At(),Xe=At(),Ye=At(),Ze=At(),tt=At(),st=At(),nt=At(),ot=Je(),lt=At(),[rt,it,ct,dt]=et((()=>Os)),ut=e=>{if(!He(e,((e,t)=>j([r,a],t))))return!1;const t=e[r];return!(!z(t)&&t!=o||(ne(e[a])!=t&&Me(e,a),0))},gt=W,ht=(t,s)=>(!e||ge(x,s)||Yt(s))&&He(t,((e,t)=>ft(s,t,e)),(()=>Yt(s))),ft=(e,t,s,n)=>He(n?s:Lt(s,e,t),((n,o)=>Q(It(e,t,o,n),(e=>(s[o]=e,!0)),(()=>!1))),(()=>Yt(e,t))),It=(t,s,n,o)=>e?Q(Fe(Fe(x,t),n),(e=>ne(o)!=e[r]?Yt(t,s,n,o,e[a]):o),(()=>Yt(t,s,n,o))):F(ne(o))?Yt(t,s,n,o):o,bt=(e,t)=>He(t?e:Ct(e),((t,s)=>Q(wt(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>Zt())),wt=(e,s)=>t?Q(Fe(P,e),(t=>ne(s)!=t[r]?Zt(e,s,t[a]):s),(()=>Zt(e,s))):F(ne(s))?Zt(e,s):s,Lt=(e,t,s)=>(Q(Fe(N,t),(([n,o])=>{be(n,((t,s)=>{Ve(e,s)||(e[s]=t)})),be(o,(n=>{Ve(e,n)||Yt(t,s,n)}))})),e),Ct=e=>(t&&(be(_,((t,s)=>{Ve(e,s)||(e[s]=t)})),be(B,(t=>{Ve(e,t)||Zt(t)}))),e),Rt=e=>Oe(x,e,((e,t,s)=>{const n=Je(),o=qe();Oe(Ne(x,t,Je),s,((e,t,s)=>{ze(e,t,s),Q(s[a],(e=>ze(n,t,e)),(()=>Ge(o,t)))})),ze(N,t,[n,o])}),((e,t)=>{ze(x,t),ze(N,t)})),Tt=e=>Oe(P,e,((e,t,s)=>{ze(P,t,s),Q(s[a],(e=>ze(_,t,e)),(()=>Ge(B,t)))}),((e,t)=>{ze(P,t),ze(_,t),we(B,t)})),vt=e=>ke(e)?ks():ys(e),yt=e=>Oe(Z,e,((e,t,s)=>Vt(t,s)),((e,t)=>xt(t))),Vt=(e,t)=>Oe(Ne(Z,e,(()=>(Nt(e,1),ze(q,e,$e()),ze(Y,e,Je()),Je()))),t,((t,s,n)=>Mt(e,t,s,n)),((t,s)=>Ft(e,t,s))),Mt=(e,t,s,n,o)=>Oe(Ne(t,s,(()=>(Ut(e,s,1),Je()))),n,((t,n,o)=>mt(e,s,t,n,o)),((n,l)=>Qt(e,t,s,n,l,o))),mt=(e,t,s,n,o)=>{ge(s,n)||qt(e,t,n,1);const l=Fe(s,n);o!==l&&(Gt(e,t,n,l,o),ze(s,n,o))},Et=(e,t,s,n,o)=>Q(Fe(t,s),(t=>mt(e,s,t,n,o)),(()=>Mt(e,t,s,Lt({[n]:o},e,s)))),kt=e=>ke(e)?Js():Vs(e),Dt=e=>Oe($,e,((e,t,s)=>Ht(t,s)),((e,t)=>zt(t))),Ht=(e,t)=>{ge($,e)||Kt(e,1);const s=Fe($,e);t!==s&&(Xt(e,s,t),ze($,e,t))},Jt=e=>Fe(Z,e)??Vt(e,{}),xt=e=>Vt(e,{}),Ft=(e,t,s)=>{const[,n]=Fe(q,e);n(s),Mt(e,t,s,{},!0)},Qt=(e,t,s,n,o,l)=>{const r=Fe(Fe(N,e)?.[0],o);if(!F(r)&&!l)return mt(e,s,n,o,r);const a=t=>{Gt(e,s,t,Fe(n,t)),qt(e,s,t,-1),ze(n,t)};F(r)?a(o):Qe(n,a),he(n)&&(Ut(e,s,-1),he(ze(t,s))&&(Nt(e,-1),ze(Z,e),ze(q,e),ze(Y,e)))},zt=e=>{const t=Fe(_,e);if(!F(t))return Ht(e,t);Xt(e,Fe($,e)),Kt(e,-1),ze($,e)},Nt=(e,t)=>jt(g,e,t),Ut=(e,t,s)=>jt(Ne(M,e,Je),t,s)&&ze(V,e,Ne(V,e,(()=>0))+s),qt=(e,t,s,n)=>{const o=Fe(Y,e),l=Fe(o,s)??0;(0==l&&1==n||1==l&&-1==n)&&jt(Ne(C,e,Je),s,n),ze(o,s,l!=-n?l+n:null),jt(Ne(Ne(m,e,Je),t,Je),s,n)},Gt=(e,t,s,n,o)=>{Ne(Ne(Ne(E,e,Je),t,Je),s,(()=>[n,0]))[1]=o,c[3]?.(e,t,s,o)},Kt=(e,t)=>jt(k,e,t),Xt=(e,t,s)=>{Ne(D,e,(()=>[t,0]))[1]=s,c[4]?.(e,s)},Yt=(e,t,s,n,o)=>(ee(Ne(Ne(Ne(H,e,Je),t,Je),s,(()=>[])),n),o),Zt=(e,t,s)=>(ee(Ne(J,e,(()=>[])),t),s),$t=(e,t,s)=>Q(Fe(Fe(Fe(E,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...Ot(fs(e,t,s))])),es=e=>Q(Fe(D,e),(([e,t])=>[!0,e,t]),(()=>[!1,...Ot(ws(e))])),ts=e=>he(H)||he(Ke[e])?0:be(e?Be(H):H,((t,s)=>be(t,((t,n)=>be(t,((t,o)=>it(Ke[e],[s,n,o],t))))))),ss=e=>he(J)||he(Xe[e])?0:be(e?_e(J):J,((t,s)=>it(Xe[e],[s],t))),ns=(e,t,s,n)=>{if(!he(e))return it(t,n,(()=>We(e))),Qe(e,((e,t)=>it(s,[...n??[],e],1==t))),1},os=e=>{const t=Ls();t!=s&&it(te[e],void 0,t);const n=he(ve[e]),o=he(me[e])&&he(De[e])&&he(Te[e])&&he(pe[e])&&he(Le[e])&&he(Ce[e])&&he(Re[e])&&n&&he(oe[e])&&he(ae[e]),l=he(Ue[e])&&he(ye[e])&&he(fe[e])&&he(se[e]);if(!o||!l){const t=e?[_e(g),je(C),_e(V),je(M),Be(m),Be(E)]:[g,C,V,M,m,E];if(!o){ns(t[0],oe[e],ae[e]),be(t[1],((t,s)=>ns(t,Le[e],Ce[e],[s]))),be(t[2],((t,s)=>{0!=t&&it(Re[e],[s],ds(s))}));const s=qe();be(t[3],((t,o)=>{ns(t,Te[e],pe[e],[o])&&!n&&(it(ve[e],[o,null]),Ge(s,o))})),n||be(t[5],((t,n)=>{if(!ge(s,n)){const s=qe();be(t,(e=>be(e,(([t,n],o)=>n!==t?Ge(s,o):we(e,o))))),be(s,(t=>it(ve[e],[n,t])))}})),be(t[4],((t,s)=>be(t,((t,n)=>ns(t,me[e],De[e],[s,n])))))}if(!l){let s;be(t[5],((t,n)=>{let o;be(t,((t,l)=>{let r;be(t,(([t,a],i)=>{a!==t&&(it(Ue[e],[n,l,i],a,t,$t),s=o=r=1)})),r&&it(ye[e],[n,l],$t)})),o&&it(fe[e],[n],$t)})),s&&it(se[e],void 0,$t)}}},ls=e=>{const t=ps();t!=n&&it(Ye[e],void 0,t);const s=he(tt[e])&&he(st[e]),o=he(nt[e])&&he(Ze[e]);if(!s||!o){const t=e?[_e(k),_e(D)]:[k,D];if(s||ns(t[0],tt[e],st[e]),!o){let s;be(t[1],(([t,n],o)=>{n!==t&&(it(nt[e],[o],n,t,es),s=1)})),s&&it(Ze[e],void 0,es)}}},rs=(e,...t)=>(Qs((()=>e(...X(t,y)))),Os),as=()=>Pe(Z),is=()=>xe(Z),cs=e=>xe(Fe(Y,y(e))),ds=e=>ie(Fe(Z,y(e))),us=e=>xe(Fe(Z,y(e))),gs=(e,t,s,n=0,o)=>{return X(A(G((l=Fe(Z,y(e)),r=(e,s)=>[F(t)?s:Fe(e,y(t)),s],X([...l?.entries()??[]],(([e,t])=>r(t,e)))),(([e],[t])=>at(e,t)*(s?-1:1))),n,F(o)?o:n+o),(([,e])=>e));var l,r},hs=(e,t)=>xe(Fe(Fe(Z,y(e)),y(t))),fs=(e,t,s)=>Fe(Fe(Fe(Z,y(e)),y(t)),y(s)),Is=()=>We($),bs=()=>xe($),ws=e=>Fe($,y(e)),Ls=()=>!he(Z),Cs=e=>ge(Z,y(e)),Rs=(e,t)=>ge(Fe(Y,y(e)),y(t)),Ts=(e,t)=>ge(Fe(Z,y(e)),y(t)),vs=(e,t,s)=>ge(Fe(Fe(Z,y(e)),y(t)),y(s)),ps=()=>!he($),Ss=e=>ge($,y(e)),ys=e=>rs((()=>(e=>He(e,ht,Yt))(e)?yt(e):0)),Vs=e=>rs((()=>bt(e)?Dt(e):0)),Ms=e=>{try{vt(pt(e))}catch{}return Os},ms=t=>rs((()=>{if((e=He(t,(e=>He(e,ut))))&&(Rt(t),!he(Z))){const e=as();ks(),ys(e)}})),Es=e=>rs((()=>{if(t=(e=>He(e,ut))(e)){const s=Is();Fs(),Js(),t=!0,Tt(e),Vs(s)}})),ks=()=>rs((()=>yt({}))),Ds=e=>rs((e=>ge(Z,e)?xt(e):0),e),Hs=(e,t)=>rs(((e,t)=>Q(Fe(Z,e),(s=>ge(s,t)?Ft(e,s,t):0))),e,t),Js=()=>rs((()=>Dt({}))),xs=()=>rs((()=>{Rt({}),e=!1})),Fs=()=>rs((()=>{Tt({}),t=!1})),Qs=(e,t)=>{if(-1!=l){zs();const s=e();return Ns(t),s}},zs=()=>(-1!=l&&l++,1==l&&(c[0]?.(),it(ot)),Os),Ns=e=>(l>0&&(l--,0==l&&(l=1,ts(1),he(E)||os(1),ss(1),he(D)||ls(1),e?.(Os)&&(be(E,((e,t)=>be(e,((e,s)=>be(e,(([e],n)=>le(Os,t,s,n,e))))))),Ie(E),be(D,(([e],t)=>re(Os,t,e))),Ie(D)),it(lt[0],void 0),l=-1,ts(0),he(E)||os(0),ss(0),he(D)||ls(0),c[1]?.(),it(lt[1],void 0),c[2]?.(),l=0,s=Ls(),n=ps(),K([g,C,V,M,m,E,H,k,D,J],Ie))),Os),Os={getContent:()=>[as(),Is()],getTables:as,getTableIds:is,getTable:e=>Ae(Fe(Z,y(e))),getTableCellIds:cs,getRowCount:ds,getRowIds:us,getSortedRowIds:gs,getRow:(e,t)=>We(Fe(Fe(Z,y(e)),y(t))),getCellIds:hs,getCell:fs,getValues:Is,getValueIds:bs,getValue:ws,hasTables:Ls,hasTable:Cs,hasTableCell:Rs,hasRow:Ts,hasCell:vs,hasValues:ps,hasValue:Ss,getTablesJson:()=>St(Z),getValuesJson:()=>St($),getJson:()=>St([Z,$]),getTablesSchemaJson:()=>St(x),getValuesSchemaJson:()=>St(P),getSchemaJson:()=>St([x,P]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:e=>rs((()=>{const t=O(e)?e():e;gt(t)&&(([e,t])=>{(ke(e)?ks:ys)(e),(ke(t)?Js:Vs)(t)})(t)})),setTables:ys,setTable:(e,t)=>rs((e=>ht(t,e)?Vt(e,t):0),e),setRow:(e,t,s)=>rs(((e,t)=>ft(e,t,s)?Mt(e,Jt(e),t,s):0),e,t),addRow:(e,t,s=!0)=>Qs((()=>{let n;return ft(e,n,t)&&(e=y(e),Mt(e,Jt(e),n=((e,t)=>{const[s]=Fe(q,e);let n;do{n=s(t)}while(ge(Fe(Z,e),n));return n})(e,s?1:0),t)),n})),setPartialRow:(e,t,s)=>rs(((e,t)=>{if(ft(e,t,s,1)){const n=Jt(e);Ee(s,((s,o)=>Et(e,n,t,o,s)))}}),e,t),setCell:(e,t,s,n)=>rs(((e,t,s)=>Q(It(e,t,s,O(n)?n(fs(e,t,s)):n),(n=>Et(e,Jt(e),t,s,n)))),e,t,s),setValues:Vs,setPartialValues:e=>rs((()=>bt(e,1)?Ee(e,((e,t)=>Ht(t,e))):0)),setValue:(e,t)=>rs((e=>Q(wt(e,O(t)?t(ws(e)):t),(t=>Ht(e,t)))),e),applyChanges:e=>rs((()=>{Ee(e[0],((e,t)=>F(e)?Ds(t):Ee(e,((e,s)=>F(e)?Hs(t,s):Ee(e,((e,n)=>le(Os,t,s,n,e))))))),Ee(e[1],((e,t)=>re(Os,t,e)))})),setTablesJson:Ms,setValuesJson:e=>{try{kt(pt(e))}catch{}return Os},setJson:e=>rs((()=>{try{const[t,s]=pt(e);vt(t),kt(s)}catch{Ms(e)}})),setTablesSchema:ms,setValuesSchema:Es,setSchema:(e,t)=>rs((()=>{ms(e),Es(t)})),delTables:ks,delTable:Ds,delRow:Hs,delCell:(e,t,s,n)=>rs(((e,t,s)=>Q(Fe(Z,e),(o=>Q(Fe(o,t),(l=>ge(l,s)?Qt(e,o,t,l,s,n):0))))),e,t,s),delValues:Js,delValue:e=>rs((e=>ge($,e)?zt(e):0),e),delTablesSchema:xs,delValuesSchema:Fs,delSchema:()=>rs((()=>{xs(),Fs()})),transaction:Qs,startTransaction:zs,getTransactionChanges:()=>[We(E,((e,t)=>-1===Fe(g,t)?void 0:We(e,((e,s)=>-1===Fe(Fe(M,t),s)?void 0:We(e,(([,e])=>e),(e=>_t(e)))),he,ke)),he,ke),We(D,(([,e])=>e),(e=>_t(e))),1],getTransactionLog:()=>[!he(E),!he(D),Pe(E,Pt,_t),Pe(H),We(D,Pt,_t),We(J),We(g),Ae(M),Pe(m),We(k)],finishTransaction:Ns,forEachTable:e=>be(Z,((t,s)=>e(s,(e=>be(t,((t,s)=>e(s,(e=>Qe(t,e))))))))),forEachTableCell:(e,t)=>Qe(Fe(Y,y(e)),t),forEachRow:(e,t)=>be(Fe(Z,y(e)),((e,s)=>t(s,(t=>Qe(e,t))))),forEachCell:(e,t,s)=>Qe(Fe(Fe(Z,y(e)),y(t)),s),forEachValue:e=>Qe($,e),addSortedRowIdsListener:(e,t,s,n,o,l,r)=>{let a=gs(e,t,s,n,o);return rt((()=>{const r=gs(e,t,s,n,o);U(r,a)||(a=r,l(Os,e,t,s,n,o,a))}),ve[r?1:0],[e,t],[is])},addStartTransactionListener:e=>rt(e,ot),addWillFinishTransactionListener:e=>rt(e,lt[0]),addDidFinishTransactionListener:e=>rt(e,lt[1]),callListener:e=>(dt(e),Os),delListener:e=>(ct(e),Os),getListenerStats:()=>({hasTables:Wt(te),tables:Wt(se),tableIds:Wt(oe),hasTable:Wt(ae),table:Wt(fe),tableCellIds:Wt(Le),hasTableCell:Wt(Ce,de),rowCount:Wt(Re),rowIds:Wt(Te),sortedRowIds:Wt(ve),hasRow:Wt(pe,de),row:Wt(ye,de),cellIds:Wt(me,de),hasCell:Wt(De,ue),cell:Wt(Ue,ue),invalidCell:Wt(Ke,ue),hasValues:Wt(Ye),values:Wt(Ze),valueIds:Wt(tt),hasValue:Wt(st),value:Wt(nt),invalidValue:Wt(Xe),transaction:ce(ot)+Wt(lt)}),isMergeable:()=>!1,createStore:Bt,addListener:rt,callListeners:it,setInternalListeners:(e,t,s,n,o)=>c=[e,t,s,n,o]};return Ee({[u+f]:[0,te,[],()=>[Ls()]],[f]:[0,se],[I]:[0,oe],[u+h]:[1,ae,[is],e=>[Cs(...e)]],[h]:[1,fe,[is]],[h+T]:[1,Le,[is]],[u+h+R]:[2,Ce,[is,cs],e=>[Rs(...e)]],[w]:[1,Re,[is]],[L]:[1,Te,[is]],[u+b]:[2,pe,[is,us],e=>[Ts(...e)]],[b]:[2,ye,[is,us]],[T]:[2,me,[is,us]],[u+R]:[3,De,[is,us,hs],e=>[vs(...e)]],[R]:[3,Ue,[is,us,hs],e=>Ot(fs(...e))],InvalidCell:[3,Ke],[u+p]:[0,Ye,[],()=>[ps()]],[p]:[0,Ze],[S]:[0,tt],[u+v]:[1,st,[bs],e=>[Ss(...e)]],[v]:[1,nt,[bs],e=>Ot(ws(e[0]))],InvalidValue:[1,Xe]},(([e,t,s,n],o)=>{Os[d+o+i]=(...o)=>rt(o[e],t[o[e+1]?1:0],e>0?A(o,0,e):void 0,s,n)})),Se(Os)},Ut={HasTable:1,Table:1,TableCellIds:1,HasTableCell:2,RowCount:1,RowIds:1,SortedRowIds:5,HasRow:2,Row:2,CellIds:2,HasCell:3,Cell:3,HasValue:1,Value:1,InvalidCell:3,InvalidValue:1},qt=(e=t)=>[Ft(e),Ft(e)],Gt=e=>{let s=1,n=qt(),o=0;const l=Je(),r=qe(),[a,c]=(e=>{let t=0,s=-1;const n=Q(e,(e=>{const t=bt(e);return ot(t/Ct)+ot(t/Rt)+ot(t/Tt)+ot(t/64)+ot(t)}),(()=>it(5))),o=e=>{const n=t,[o,l]=F(e)||""==e?[0,0]:[lt(r=e,0)*wt+lt(r,1)*Lt+lt(r,2)*Ct+lt(r,3)*Rt+lt(r,4)*Tt+64*lt(r,5)+lt(r,6),lt(r,7)*Rt+lt(r,8)*Tt+64*lt(r,9)+lt(r,10)];var r;t=D(n,o,E.HLC_TIME??Date.now()),s=t==n?t==o?D(s,l):s:t==o?l:-1};return[()=>{return o(),l=++s,ot((e=t)/wt)+ot(e/Lt)+ot(e/Ct)+ot(e/Rt)+ot(e/Tt)+ot(e/64)+ot(e)+ot(l/Rt)+ot(l/Tt)+ot(l/64)+ot(l)+n;var e,l},o]})(e),u=Bt(),g=e=>{const t=s;return s=0,e(),s=t,w},h=(e,s=0)=>{const o={},l={},[[r,a=t,i=0],d]=e,[u,g]=n,[h,I,b]=u;let w=s?i:b,L=a;me(r,(([e,n=t,l=0],r)=>{const a=Ne(h,r,Ft),[i,c,d]=a;let u=s?l:d,g=n;me(e,((e,t)=>{const[n,l,a]=f(e,Ne(i,t,Ft),De(De(o,r,ye),t,ye),s);u^=s?0:(l?kt(t,l):0)^kt(t,a),g=Ht(g,n)})),u^=s?0:Dt(c,n),Jt(a,n,u),w^=s?0:(d?kt(r,d):0)^kt(r,a[2]),L=Ht(L,g)})),w^=s?0:Dt(I,a),Jt(u,a,w);const[C]=f(d,g,l,s);return c(Ht(L,C)),[o,l,1]},f=(e,s,n,o)=>{const[l,r=t,a=0]=e,[i,c,d]=s;let u=r,g=o?a:d;return me(l,(([e,s=t,l=0],r)=>{const a=Ne(i,r,(()=>[void 0,t,0])),[,c,d]=a;(!c||s>c)&&(Jt(a,s,o?l:bt(St(e??null)+":"+s)),a[0]=e,n[r]=e,g^=o?0:kt(r,d)^kt(r,a[2]),u=Ht(u,s))})),g^=o?0:Dt(c,r),Jt(s,r,g),[u,d,s[2]]},I=()=>[Qt(n[0],(e=>Qt(e,(e=>Qt(e))))),Qt(n[1])],b=e=>g((()=>u.applyChanges(h(e)))),w={getMergeableContent:I,getMergeableContentHashes:()=>[n[0][2],n[1][2]],getMergeableTableHashes:()=>We(n[0][0],Et),getMergeableTableDiff:e=>{const t=xt(n[0][1]),s={};return Qe(n[0][0],((n,[o,l,r])=>Ve(e,n)?r!=e[n]?s[n]=r:0:t[0][n]=zt([o,l],(e=>zt(e))))),[t,s]},getMergeableRowHashes:e=>{const t={};return me(e,((e,s)=>Q(Fe(n[0][0],s),(([n,,o])=>o!=e?Qe(n,((e,[,,n])=>De(t,s,ye)[e]=n)):0)))),t},getMergeableRowDiff:e=>{const t=xt(n[0][1]),s={};return me(e,((e,o)=>Qe(Fe(n[0][0],o)?.[0],((n,[l,r,a])=>Ve(e,n)?a!==e[n]?De(s,o,ye)[n]=a:0:De(t[0],o,xt)[0][n]=zt([l,r]))))),[t,s]},getMergeableCellHashes:e=>{const t={};return me(e,((e,s)=>Q(Fe(n[0][0],s),(([n])=>me(e,((e,o)=>Q(Fe(n,o),(([n,,l])=>l!==e?Qe(n,((e,[,,n])=>De(De(t,s,ye),o,ye)[e]=n)):0)))))))),t},getMergeableCellDiff:e=>{const[[t,s]]=n,o={};return me(e,((e,s)=>me(e,((e,n)=>Q(Fe(t,s),(([t,l])=>Q(Fe(t,n),(([t,r])=>Qe(t,((t,[a,i,c])=>c!==e[t]?De(De(o,s,(()=>xt(l)))[0],n,(()=>xt(r)))[0][t]=[a,i]:0)))))))))),Mt(o,s)},getMergeableValueHashes:()=>We(n[1][0],Et),getMergeableValueDiff:e=>{const[,[t,s]]=n,o=We(t,yt,(([,,t],s)=>t==e?.[s]));return Mt(o,s)},setMergeableContent:e=>g((()=>(e=>W(e)&&2==P(e)&&Nt(e[0],(e=>He(e,(e=>Nt(e,(e=>He(e,(e=>Nt(e,(e=>He(e,(e=>Nt(e,oe)),void 0,1)))),void 0,1)))),void 0,1)))&&Nt(e[1],(e=>He(e,(e=>Nt(e,oe)),void 0,1))))(e)?u.transaction((()=>{u.delTables().delValues(),n=qt(),u.applyChanges(h(e,1))})):0)),setDefaultContent:e=>(u.transaction((()=>{o=1,u.setContent(e),o=0})),w),getTransactionMergeableChanges:(e=!1)=>{const[[t,s,o],[a,i,c]]=n,d=e?mt:Mt,u={};be(l,((e,s)=>Q(Fe(t,s),(([t,n,o])=>{const l={};be(e,((e,s)=>Q(Fe(t,s),(([t,n,o])=>{const r={};be(e,(e=>{Q(Fe(t,e),(([t,s,n])=>r[e]=d(t,s,n)))})),l[s]=d(r,n,o)})))),u[s]=d(l,n,o)}))));const g={};return be(r,(e=>Q(Fe(a,e),(([t,s,n])=>g[e]=d(t,s,n))))),[d(u,s,o),d(g,i,c),1]},applyMergeableChanges:b,merge:e=>{const t=I(),s=e.getMergeableContent();return e.applyMergeableChanges(t),b(s)}};return u.setInternalListeners((()=>{}),(()=>{}),(()=>{Ie(l),Ie(r)}),((e,n,r,i)=>{Ge(Ne(Ne(l,e,Je),n,qe),r),s&&h([[{[e]:[{[n]:[{[r]:[i,o?t:a()]}]}]}],[{}],1])}),((e,n)=>{Ge(r,e),s&&h([[{}],[{[e]:[n,o?t:a()]}],1])})),Ee(u,((e,t)=>w[t]=V(t,"set")||V(t,"del")||V(t,"apply")||M(t,"Transaction")||t=="call"+i?(...t)=>(e(...t),w):V(t,d)&&M(t,i)?(...s)=>{const n=Ut[A(t,3,-8)]??0,o=s[n];return s[n]=(e,...t)=>o(w,...t),e(...s)}:"isMergeable"==t?()=>!0:e)),Se(w)};export{tt as createCheckpoints,ct as createIndexes,Gt as createMergeableStore,gt as createMetrics,ht as createQueries,ft as createRelationships,Bt as createStore,at as defaultSorter,it as getUniqueId};
|
package/min/index.js.gz
CHANGED
|
Binary file
|
package/min/indexes/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=e=>typeof e,t="",n=e(t),s=e=>t+e,r=e=>null==e,o=(e,t,n)=>r(e)?n?.():t(e),d=e=>Array.isArray(e),c=e=>e.length,l=(e,t)=>e.every(t),a=(e,t)=>l(e,((n,s)=>0==s||t(e[s-1],n)<=0)),i=(e,t)=>e.sort(t),u=(e,t)=>e.forEach(t),I=(e,...t)=>e.push(...t),h=
|
|
1
|
+
const e=e=>typeof e,t="",n=e(t),s=e=>t+e,r=e=>null==e,o=(e,t,n)=>r(e)?n?.():t(e),d=e=>Array.isArray(e),c=e=>e.length,l=(e,t)=>e.every(t),a=(e,t)=>l(e,((n,s)=>0==s||t(e[s-1],n)<=0)),i=(e,t)=>e.sort(t),u=(e,t)=>e.forEach(t),I=(e,...t)=>e.push(...t),h=e=>t=>{return n=(t,n)=>t+e(n),S(t).reduce(n,0);var n},f=e=>e?.size??0,g=h(f),v=h(g),w=(e,t)=>e?.has(t)??!1,L=e=>r(e)||0==f(e),S=e=>[...e?.values()??[]],x=e=>e.clear(),p=(e,t)=>e?.forEach(t),y=(e,t)=>e?.delete(t),R=Object.freeze,E=e=>new Map(e),b=e=>[...e?.keys()??[]],T=(e,t)=>e?.get(t),k=(e,t)=>p(e,((e,n)=>t(n,e))),z=(e,t,n)=>r(n)?(y(e,t),e):e?.set(t,n),A=(e,t,n,s)=>(w(e,t)?s?.(T(e,t)):z(e,t,n()),T(e,t)),C=(e,t,n,s,r=0)=>o((n?A:T)(e,t[r],r>c(t)-2?n:E),(o=>{if(r>c(t)-2)return s?.(o)&&z(e,t[r]),o;const d=C(o,t,n,s,r+1);return L(o)&&z(e,t[r]),d})),D=e=>new Set(d(e)||r(e)?e:[e]),M=(e,t)=>e?.add(t),j=(s,r)=>e(s)==n?e=>e(s):s??(()=>r??t),m=(e,t)=>(e??0)<(t??0)?-1:1,O=/^\d+$/,W=(()=>{const e=new WeakMap;return n=>(e.has(n)||e.set(n,(e=>{const n=E(),h=E(),[f,W,$]=(()=>{let e;const[n,s]=(()=>{const e=[];let n=0;return[s=>(s?e.shift():null)??t+n++,t=>{O.test(t)&&c(e)<1e3&&I(e,t)}]})(),d=E();return[(s,r,o,c=[],l=()=>[])=>{e??=X;const a=n(1);return z(d,a,[s,r,o,c,l]),M(C(r,o??[t],D),a),a},(n,s,...r)=>u(((e,n=[t])=>{const s=[],r=(e,t)=>t==c(n)?I(s,e):null===n[t]?p(e,(e=>r(e,t+1))):u([n[t],null],(n=>r(T(e,n),t+1)));return r(e,0),s})(n,s),(t=>p(t,(t=>T(d,t)[0](e,...s??[],...r))))),e=>o(T(d,e),(([,n,r])=>(C(n,r??[t],void 0,(t=>(y(t,e),L(t)?1:0))),z(d,e),s(e),r))),t=>o(T(d,t),(([t,,n=[],s,o])=>{const d=(...l)=>{const a=c(l);a==c(n)?t(e,...l,...o(l)):r(n[a])?u(s[a]?.(...l)??[],(e=>d(...l,e))):d(...l,n[a])};d()}))]})(),[q,B,F,G,H,J,K,,N,P,Q,U]=((e,t,n,s,a)=>{const i=e.hasRow,I=E(),h=E(),f=E(),g=E(),v=E(),R=E(),C=(t,n,...s)=>{const r=A(R,t,D);return u(s,(t=>M(r,t)&&n&&e.callListener(t))),s},j=(t,...n)=>o(T(R,t),(s=>{u(0==c(n)?S(s):n,(t=>{e.delListener(t),y(s,t)})),L(s)&&z(R,t)})),m=(e,n)=>{z(I,e,n),w(h,e)||(z(h,e,t()),z(g,e,E()),z(v,e,E()),a(f))},O=e=>{z(I,e),z(h,e),z(g,e),z(v,e),j(e),a(f)};return[()=>e,()=>b(I),e=>k(h,e),e=>w(h,e),e=>T(I,e),e=>T(h,e),(e,t)=>z(h,e,t),m,(t,s,o,a,I)=>{m(t,s);const h=E(),f=E(),L=T(g,t),S=T(v,t),y=t=>{const o=n=>e.getCell(s,t,n),u=T(L,t),g=i(s,t)?n(a(o,t)):void 0;var v,w;if(u===g||d(u)&&d(g)&&(w=g,c(v=u)===c(w)&&l(v,((e,t)=>w[t]===e)))||z(h,t,[u,g]),!r(I)){const e=T(S,t),n=i(s,t)?I(o,t):void 0;e!=n&&z(f,t,n)}},R=e=>{o((()=>{p(h,(([,e],t)=>z(L,t,e))),p(f,((e,t)=>z(S,t,e)))}),h,f,L,S,e),x(h),x(f)};k(L,y),e.hasTable(s)&&u(e.getRowIds(s),(e=>{w(L,e)||y(e)})),R(!0),j(t),C(t,0,e.addRowListener(s,null,((e,t,n)=>y(n))),e.addTableListener(s,(()=>R())))},O,e=>s(e,f),()=>k(R,O),C,j]})(e,E,(e=>{return r(e)?t:d(e)?(n=s,e.map(n)):s(e);var n}),f,W),V=(t,n,s)=>{const r=H(t);p(s,((t,s)=>n(s,(n=>p(t,(t=>n(t,(n=>e.forEachCell(r,t,n)))))))))},X={setIndexDefinition:(e,t,s,d,c,l=m)=>{const u=r(c)?void 0:([e],[t])=>c(e,t);return N(e,t,((t,s,c,I,f,g)=>{let v=0;const S=D(),x=D(),R=J(e);if(p(s,(([e,t],n)=>{const s=D(e),c=D(t);p(s,(e=>y(c,e)?y(s,e):0)),p(s,(e=>{M(S,e),o(T(R,e),(t=>{y(t,n),L(t)&&(z(R,e),v=1)}))})),p(c,(e=>{M(S,e),w(R,e)||(z(R,e,D()),v=1),M(T(R,e),n),r(d)||M(x,e)}))})),t(),L(f)||(g?k(R,(e=>M(x,e))):k(c,(e=>o(T(I,e),(e=>M(x,e))))),p(x,(e=>{const t=(t,n)=>l(T(f,t),T(f,n),e),n=[...T(R,e)];a(n,t)||(z(R,e,D(i(n,t))),M(S,e))}))),(v||g)&&!r(u)){const t=[...R];a(t,u)||(K(e,E(i(t,u))),v=1)}v&&W(n,[e]),p(S,(t=>W(h,[e,t])))}),j(s),o(d,j)),X},delIndexDefinition:e=>(P(e),X),getStore:q,getIndexIds:B,forEachIndex:e=>F(((t,n)=>e(t,(e=>V(t,e,n))))),forEachSlice:(e,t)=>V(e,t,J(e)),hasIndex:G,hasSlice:(e,t)=>w(J(e),t),getTableId:H,getSliceIds:e=>b(J(e)),getSliceRowIds:(e,t)=>S(T(J(e),t)),addIndexIdsListener:Q,addSliceIdsListener:(e,t)=>f(t,n,[e]),addSliceRowIdsListener:(e,t,n)=>f(n,h,[e,t]),delListener:e=>($(e),X),destroy:U,getListenerStats:()=>({sliceIds:g(n),sliceRowIds:v(h)})};return R(X)})(n)),e.get(n))})();export{W as createIndexes};
|
package/min/indexes/index.js.gz
CHANGED
|
Binary file
|