tinybase 5.0.0-beta.4 → 5.0.0-beta.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/checkpoints.js +1 -1
- package/lib/checkpoints.js.gz +0 -0
- package/lib/cjs/checkpoints.cjs +1 -1
- package/lib/cjs/checkpoints.cjs.gz +0 -0
- package/lib/cjs/indexes.cjs +1 -1
- package/lib/cjs/indexes.cjs.gz +0 -0
- package/lib/cjs/mergeable-store.cjs +1 -1
- package/lib/cjs/mergeable-store.cjs.gz +0 -0
- package/lib/cjs/metrics.cjs +1 -1
- package/lib/cjs/metrics.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-automerge.cjs +1 -1
- package/lib/cjs/persisters/persister-automerge.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-browser.cjs +1 -1
- package/lib/cjs/persisters/persister-browser.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-cr-sqlite-wasm.cjs +1 -1
- package/lib/cjs/persisters/persister-cr-sqlite-wasm.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-electric-sql.cjs +1 -1
- package/lib/cjs/persisters/persister-electric-sql.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-expo-sqlite-next.cjs +1 -1
- package/lib/cjs/persisters/persister-expo-sqlite-next.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-expo-sqlite.cjs +1 -1
- package/lib/cjs/persisters/persister-expo-sqlite.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-file.cjs +1 -1
- package/lib/cjs/persisters/persister-file.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-indexed-db.cjs +1 -1
- package/lib/cjs/persisters/persister-indexed-db.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-libsql.cjs +1 -0
- package/lib/cjs/persisters/persister-libsql.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-partykit-client.cjs +1 -1
- package/lib/cjs/persisters/persister-partykit-client.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-powersync.cjs +1 -0
- package/lib/cjs/persisters/persister-powersync.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-remote.cjs +1 -1
- package/lib/cjs/persisters/persister-remote.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-sqlite-wasm.cjs +1 -1
- package/lib/cjs/persisters/persister-sqlite-wasm.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-sqlite3.cjs +1 -1
- package/lib/cjs/persisters/persister-sqlite3.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-sync.cjs +1 -0
- package/lib/cjs/persisters/persister-sync.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-yjs.cjs +1 -1
- package/lib/cjs/persisters/persister-yjs.cjs.gz +0 -0
- package/lib/cjs/persisters.cjs +1 -1
- package/lib/cjs/persisters.cjs.gz +0 -0
- package/lib/cjs/queries.cjs +1 -1
- package/lib/cjs/queries.cjs.gz +0 -0
- package/lib/cjs/relationships.cjs +1 -1
- package/lib/cjs/relationships.cjs.gz +0 -0
- package/lib/cjs/store.cjs +1 -1
- package/lib/cjs/store.cjs.gz +0 -0
- package/lib/cjs/tinybase.cjs +1 -1
- package/lib/cjs/tinybase.cjs.gz +0 -0
- package/lib/cjs/tools.cjs +1 -1
- package/lib/cjs/tools.cjs.gz +0 -0
- package/lib/cjs/ui-react-dom-debug.cjs +1 -1
- package/lib/cjs/ui-react-dom-debug.cjs.gz +0 -0
- package/lib/cjs/ui-react.cjs +1 -1
- package/lib/cjs/ui-react.cjs.gz +0 -0
- package/lib/cjs-es6/checkpoints.cjs +1 -1
- package/lib/cjs-es6/checkpoints.cjs.gz +0 -0
- package/lib/cjs-es6/indexes.cjs +1 -1
- package/lib/cjs-es6/indexes.cjs.gz +0 -0
- package/lib/cjs-es6/mergeable-store.cjs +1 -1
- package/lib/cjs-es6/mergeable-store.cjs.gz +0 -0
- package/lib/cjs-es6/metrics.cjs +1 -1
- package/lib/cjs-es6/metrics.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-automerge.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-automerge.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-browser.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-browser.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-cr-sqlite-wasm.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-cr-sqlite-wasm.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-electric-sql.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-electric-sql.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-expo-sqlite-next.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-expo-sqlite-next.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-expo-sqlite.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-expo-sqlite.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-file.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-file.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-indexed-db.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-indexed-db.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-libsql.cjs +1 -0
- package/lib/cjs-es6/persisters/persister-libsql.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-partykit-client.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-partykit-client.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-powersync.cjs +1 -0
- package/lib/cjs-es6/persisters/persister-powersync.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-remote.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-remote.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-sqlite-wasm.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-sqlite-wasm.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-sqlite3.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-sqlite3.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-sync.cjs +1 -0
- package/lib/cjs-es6/persisters/persister-sync.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-yjs.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-yjs.cjs.gz +0 -0
- package/lib/cjs-es6/persisters.cjs +1 -1
- package/lib/cjs-es6/persisters.cjs.gz +0 -0
- package/lib/cjs-es6/queries.cjs +1 -1
- package/lib/cjs-es6/queries.cjs.gz +0 -0
- package/lib/cjs-es6/relationships.cjs +1 -1
- package/lib/cjs-es6/relationships.cjs.gz +0 -0
- package/lib/cjs-es6/store.cjs +1 -1
- package/lib/cjs-es6/store.cjs.gz +0 -0
- package/lib/cjs-es6/tinybase.cjs +1 -1
- package/lib/cjs-es6/tinybase.cjs.gz +0 -0
- package/lib/cjs-es6/tools.cjs +1 -1
- package/lib/cjs-es6/tools.cjs.gz +0 -0
- package/lib/cjs-es6/ui-react-dom-debug.cjs +1 -1
- package/lib/cjs-es6/ui-react-dom-debug.cjs.gz +0 -0
- package/lib/cjs-es6/ui-react.cjs +1 -1
- package/lib/cjs-es6/ui-react.cjs.gz +0 -0
- package/lib/debug/checkpoints.js +3 -1
- package/lib/debug/indexes.js +3 -1
- package/lib/debug/mergeable-store.js +403 -179
- package/lib/debug/metrics.js +3 -1
- package/lib/debug/persisters/persister-automerge.js +42 -47
- package/lib/debug/persisters/persister-browser.js +42 -47
- package/lib/debug/persisters/persister-cr-sqlite-wasm.js +67 -61
- package/lib/debug/persisters/persister-electric-sql.js +67 -61
- package/lib/debug/persisters/persister-expo-sqlite-next.js +67 -61
- package/lib/debug/persisters/persister-expo-sqlite.js +67 -61
- package/lib/debug/persisters/persister-file.js +42 -47
- package/lib/debug/persisters/persister-indexed-db.js +42 -47
- package/lib/debug/persisters/persister-libsql.js +902 -0
- package/lib/debug/persisters/persister-partykit-client.js +42 -47
- package/lib/debug/persisters/persister-powersync.js +917 -0
- package/lib/debug/persisters/persister-remote.js +42 -47
- package/lib/debug/persisters/persister-sqlite-wasm.js +67 -61
- package/lib/debug/persisters/persister-sqlite3.js +67 -61
- package/lib/debug/persisters/persister-sync.js +594 -0
- package/lib/debug/persisters/persister-yjs.js +44 -49
- package/lib/debug/persisters.js +41 -46
- package/lib/debug/queries.js +7 -4
- package/lib/debug/relationships.js +3 -1
- package/lib/debug/store.js +51 -36
- package/lib/debug/tinybase.js +439 -223
- package/lib/debug/tools.js +9 -6
- package/lib/debug/ui-react-dom.js +88 -80
- package/lib/debug/ui-react.js +1 -1
- package/lib/es6/checkpoints.js +1 -1
- package/lib/es6/checkpoints.js.gz +0 -0
- package/lib/es6/indexes.js +1 -1
- package/lib/es6/indexes.js.gz +0 -0
- package/lib/es6/mergeable-store.js +1 -1
- package/lib/es6/mergeable-store.js.gz +0 -0
- package/lib/es6/metrics.js +1 -1
- package/lib/es6/metrics.js.gz +0 -0
- package/lib/es6/persisters/persister-automerge.js +1 -1
- package/lib/es6/persisters/persister-automerge.js.gz +0 -0
- package/lib/es6/persisters/persister-browser.js +1 -1
- package/lib/es6/persisters/persister-browser.js.gz +0 -0
- package/lib/es6/persisters/persister-cr-sqlite-wasm.js +1 -1
- package/lib/es6/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
- package/lib/es6/persisters/persister-electric-sql.js +1 -1
- package/lib/es6/persisters/persister-electric-sql.js.gz +0 -0
- package/lib/es6/persisters/persister-expo-sqlite-next.js +1 -1
- package/lib/es6/persisters/persister-expo-sqlite-next.js.gz +0 -0
- package/lib/es6/persisters/persister-expo-sqlite.js +1 -1
- package/lib/es6/persisters/persister-expo-sqlite.js.gz +0 -0
- package/lib/es6/persisters/persister-file.js +1 -1
- package/lib/es6/persisters/persister-file.js.gz +0 -0
- package/lib/es6/persisters/persister-indexed-db.js +1 -1
- package/lib/es6/persisters/persister-indexed-db.js.gz +0 -0
- package/lib/es6/persisters/persister-libsql.js +1 -0
- package/lib/es6/persisters/persister-libsql.js.gz +0 -0
- package/lib/es6/persisters/persister-partykit-client.js +1 -1
- package/lib/es6/persisters/persister-partykit-client.js.gz +0 -0
- package/lib/es6/persisters/persister-powersync.js +1 -0
- package/lib/es6/persisters/persister-powersync.js.gz +0 -0
- package/lib/es6/persisters/persister-remote.js +1 -1
- package/lib/es6/persisters/persister-remote.js.gz +0 -0
- package/lib/es6/persisters/persister-sqlite-wasm.js +1 -1
- package/lib/es6/persisters/persister-sqlite-wasm.js.gz +0 -0
- package/lib/es6/persisters/persister-sqlite3.js +1 -1
- package/lib/es6/persisters/persister-sqlite3.js.gz +0 -0
- package/lib/es6/persisters/persister-sync.js +1 -0
- package/lib/es6/persisters/persister-sync.js.gz +0 -0
- package/lib/es6/persisters/persister-yjs.js +1 -1
- package/lib/es6/persisters/persister-yjs.js.gz +0 -0
- package/lib/es6/persisters.js +1 -1
- package/lib/es6/persisters.js.gz +0 -0
- package/lib/es6/queries.js +1 -1
- package/lib/es6/queries.js.gz +0 -0
- package/lib/es6/relationships.js +1 -1
- package/lib/es6/relationships.js.gz +0 -0
- package/lib/es6/store.js +1 -1
- package/lib/es6/store.js.gz +0 -0
- package/lib/es6/tinybase.js +1 -1
- package/lib/es6/tinybase.js.gz +0 -0
- package/lib/es6/tools.js +1 -1
- package/lib/es6/tools.js.gz +0 -0
- package/lib/es6/ui-react-dom-debug.js +1 -1
- package/lib/es6/ui-react-dom-debug.js.gz +0 -0
- package/lib/es6/ui-react.js +1 -1
- package/lib/es6/ui-react.js.gz +0 -0
- package/lib/indexes.js +1 -1
- package/lib/indexes.js.gz +0 -0
- package/lib/mergeable-store.js +1 -1
- package/lib/mergeable-store.js.gz +0 -0
- package/lib/metrics.js +1 -1
- package/lib/metrics.js.gz +0 -0
- package/lib/persisters/persister-automerge.js +1 -1
- package/lib/persisters/persister-automerge.js.gz +0 -0
- package/lib/persisters/persister-browser.js +1 -1
- package/lib/persisters/persister-browser.js.gz +0 -0
- package/lib/persisters/persister-cr-sqlite-wasm.js +1 -1
- package/lib/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
- package/lib/persisters/persister-electric-sql.js +1 -1
- package/lib/persisters/persister-electric-sql.js.gz +0 -0
- package/lib/persisters/persister-expo-sqlite-next.js +1 -1
- package/lib/persisters/persister-expo-sqlite-next.js.gz +0 -0
- package/lib/persisters/persister-expo-sqlite.js +1 -1
- package/lib/persisters/persister-expo-sqlite.js.gz +0 -0
- package/lib/persisters/persister-file.js +1 -1
- package/lib/persisters/persister-file.js.gz +0 -0
- package/lib/persisters/persister-indexed-db.js +1 -1
- package/lib/persisters/persister-indexed-db.js.gz +0 -0
- package/lib/persisters/persister-libsql.js +1 -0
- package/lib/persisters/persister-libsql.js.gz +0 -0
- package/lib/persisters/persister-partykit-client.js +1 -1
- package/lib/persisters/persister-partykit-client.js.gz +0 -0
- package/lib/persisters/persister-powersync.js +1 -0
- package/lib/persisters/persister-powersync.js.gz +0 -0
- package/lib/persisters/persister-remote.js +1 -1
- package/lib/persisters/persister-remote.js.gz +0 -0
- package/lib/persisters/persister-sqlite-wasm.js +1 -1
- package/lib/persisters/persister-sqlite-wasm.js.gz +0 -0
- package/lib/persisters/persister-sqlite3.js +1 -1
- package/lib/persisters/persister-sqlite3.js.gz +0 -0
- package/lib/persisters/persister-sync.js +1 -0
- package/lib/persisters/persister-sync.js.gz +0 -0
- package/lib/persisters/persister-yjs.js +1 -1
- package/lib/persisters/persister-yjs.js.gz +0 -0
- package/lib/persisters.js +1 -1
- package/lib/persisters.js.gz +0 -0
- package/lib/queries.js +1 -1
- package/lib/queries.js.gz +0 -0
- package/lib/relationships.js +1 -1
- package/lib/relationships.js.gz +0 -0
- package/lib/store.js +1 -1
- package/lib/store.js.gz +0 -0
- package/lib/tinybase.js +1 -1
- package/lib/tinybase.js.gz +0 -0
- package/lib/tools.js +1 -1
- package/lib/tools.js.gz +0 -0
- package/lib/types/checkpoints.d.ts +2 -2
- package/lib/types/indexes.d.ts +2 -2
- package/lib/types/mergeable-store.d.ts +143 -20
- package/lib/types/metrics.d.ts +2 -2
- package/lib/types/persisters/persister-automerge.d.ts +3 -0
- package/lib/types/persisters/persister-browser.d.ts +9 -2
- package/lib/types/persisters/persister-cr-sqlite-wasm.d.ts +3 -0
- package/lib/types/persisters/persister-electric-sql.d.ts +3 -0
- package/lib/types/persisters/persister-expo-sqlite-next.d.ts +3 -0
- package/lib/types/persisters/persister-expo-sqlite.d.ts +3 -0
- package/lib/types/persisters/persister-file.d.ts +5 -1
- package/lib/types/persisters/persister-indexed-db.d.ts +3 -0
- package/lib/types/persisters/persister-libsql.d.ts +142 -0
- package/lib/types/persisters/persister-partykit-client.d.ts +3 -0
- package/lib/types/persisters/persister-powersync.d.ts +157 -0
- package/lib/types/persisters/persister-remote.d.ts +3 -0
- package/lib/types/persisters/persister-sqlite-wasm.d.ts +3 -0
- package/lib/types/persisters/persister-sqlite3.d.ts +3 -0
- package/lib/types/persisters/persister-sync.d.ts +182 -0
- package/lib/types/persisters/persister-yjs.d.ts +5 -2
- package/lib/types/persisters.d.ts +61 -3
- package/lib/types/queries.d.ts +2 -2
- package/lib/types/relationships.d.ts +2 -2
- package/lib/types/store.d.ts +36 -3
- package/lib/types/tinybase.d.ts +9 -9
- package/lib/types/tools.d.ts +2 -2
- package/lib/types/ui-react.d.ts +8 -8
- package/lib/types/with-schemas/checkpoints.d.ts +2 -2
- package/lib/types/with-schemas/indexes.d.ts +2 -2
- package/lib/types/with-schemas/mergeable-store.d.ts +415 -40
- package/lib/types/with-schemas/metrics.d.ts +2 -2
- package/lib/types/with-schemas/persisters/persister-automerge.d.ts +4 -1
- package/lib/types/with-schemas/persisters/persister-browser.d.ts +13 -6
- package/lib/types/with-schemas/persisters/persister-cr-sqlite-wasm.d.ts +4 -1
- package/lib/types/with-schemas/persisters/persister-electric-sql.d.ts +4 -1
- package/lib/types/with-schemas/persisters/persister-expo-sqlite-next.d.ts +4 -1
- package/lib/types/with-schemas/persisters/persister-expo-sqlite.d.ts +4 -1
- package/lib/types/with-schemas/persisters/persister-file.d.ts +7 -3
- package/lib/types/with-schemas/persisters/persister-indexed-db.d.ts +4 -1
- package/lib/types/with-schemas/persisters/persister-libsql.d.ts +155 -0
- package/lib/types/with-schemas/persisters/persister-partykit-client.d.ts +4 -1
- package/lib/types/with-schemas/persisters/persister-powersync.d.ts +170 -0
- package/lib/types/with-schemas/persisters/persister-remote.d.ts +4 -1
- package/lib/types/with-schemas/persisters/persister-sqlite-wasm.d.ts +4 -1
- package/lib/types/with-schemas/persisters/persister-sqlite3.d.ts +4 -1
- package/lib/types/with-schemas/persisters/persister-sync.d.ts +195 -0
- package/lib/types/with-schemas/persisters/persister-yjs.d.ts +6 -3
- package/lib/types/with-schemas/persisters.d.ts +80 -7
- package/lib/types/with-schemas/queries.d.ts +3 -3
- package/lib/types/with-schemas/relationships.d.ts +2 -2
- package/lib/types/with-schemas/store.d.ts +136 -89
- package/lib/types/with-schemas/tinybase.d.ts +9 -9
- package/lib/types/with-schemas/tools.d.ts +2 -2
- package/lib/types/with-schemas/ui-react.d.ts +8 -8
- package/lib/ui-react.js +1 -1
- package/lib/ui-react.js.gz +0 -0
- package/lib/umd/checkpoints.js +1 -1
- package/lib/umd/checkpoints.js.gz +0 -0
- package/lib/umd/indexes.js +1 -1
- package/lib/umd/indexes.js.gz +0 -0
- package/lib/umd/mergeable-store.js +1 -1
- package/lib/umd/mergeable-store.js.gz +0 -0
- package/lib/umd/metrics.js +1 -1
- package/lib/umd/metrics.js.gz +0 -0
- package/lib/umd/persisters/persister-automerge.js +1 -1
- package/lib/umd/persisters/persister-automerge.js.gz +0 -0
- package/lib/umd/persisters/persister-browser.js +1 -1
- package/lib/umd/persisters/persister-browser.js.gz +0 -0
- package/lib/umd/persisters/persister-cr-sqlite-wasm.js +1 -1
- package/lib/umd/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
- package/lib/umd/persisters/persister-electric-sql.js +1 -1
- package/lib/umd/persisters/persister-electric-sql.js.gz +0 -0
- package/lib/umd/persisters/persister-expo-sqlite-next.js +1 -1
- package/lib/umd/persisters/persister-expo-sqlite-next.js.gz +0 -0
- package/lib/umd/persisters/persister-expo-sqlite.js +1 -1
- package/lib/umd/persisters/persister-expo-sqlite.js.gz +0 -0
- package/lib/umd/persisters/persister-file.js +1 -1
- package/lib/umd/persisters/persister-file.js.gz +0 -0
- package/lib/umd/persisters/persister-indexed-db.js +1 -1
- package/lib/umd/persisters/persister-indexed-db.js.gz +0 -0
- package/lib/umd/persisters/persister-libsql.js +1 -0
- package/lib/umd/persisters/persister-libsql.js.gz +0 -0
- package/lib/umd/persisters/persister-partykit-client.js +1 -1
- package/lib/umd/persisters/persister-partykit-client.js.gz +0 -0
- package/lib/umd/persisters/persister-powersync.js +1 -0
- package/lib/umd/persisters/persister-powersync.js.gz +0 -0
- package/lib/umd/persisters/persister-remote.js +1 -1
- package/lib/umd/persisters/persister-remote.js.gz +0 -0
- package/lib/umd/persisters/persister-sqlite-wasm.js +1 -1
- package/lib/umd/persisters/persister-sqlite-wasm.js.gz +0 -0
- package/lib/umd/persisters/persister-sqlite3.js +1 -1
- package/lib/umd/persisters/persister-sqlite3.js.gz +0 -0
- package/lib/umd/persisters/persister-sync.js +1 -0
- package/lib/umd/persisters/persister-sync.js.gz +0 -0
- package/lib/umd/persisters/persister-yjs.js +1 -1
- package/lib/umd/persisters/persister-yjs.js.gz +0 -0
- package/lib/umd/persisters.js +1 -1
- package/lib/umd/persisters.js.gz +0 -0
- package/lib/umd/queries.js +1 -1
- package/lib/umd/queries.js.gz +0 -0
- package/lib/umd/relationships.js +1 -1
- package/lib/umd/relationships.js.gz +0 -0
- package/lib/umd/store.js +1 -1
- package/lib/umd/store.js.gz +0 -0
- package/lib/umd/tinybase.js +1 -1
- package/lib/umd/tinybase.js.gz +0 -0
- package/lib/umd/tools.js +1 -1
- package/lib/umd/tools.js.gz +0 -0
- package/lib/umd/ui-react-dom-debug.js +1 -1
- package/lib/umd/ui-react-dom-debug.js.gz +0 -0
- package/lib/umd/ui-react.js +1 -1
- package/lib/umd/ui-react.js.gz +0 -0
- package/lib/umd-es6/checkpoints.js +1 -1
- package/lib/umd-es6/checkpoints.js.gz +0 -0
- package/lib/umd-es6/indexes.js +1 -1
- package/lib/umd-es6/indexes.js.gz +0 -0
- package/lib/umd-es6/mergeable-store.js +1 -1
- package/lib/umd-es6/mergeable-store.js.gz +0 -0
- package/lib/umd-es6/metrics.js +1 -1
- package/lib/umd-es6/metrics.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-automerge.js +1 -1
- package/lib/umd-es6/persisters/persister-automerge.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-browser.js +1 -1
- package/lib/umd-es6/persisters/persister-browser.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-cr-sqlite-wasm.js +1 -1
- package/lib/umd-es6/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-electric-sql.js +1 -1
- package/lib/umd-es6/persisters/persister-electric-sql.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-expo-sqlite-next.js +1 -1
- package/lib/umd-es6/persisters/persister-expo-sqlite-next.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-expo-sqlite.js +1 -1
- package/lib/umd-es6/persisters/persister-expo-sqlite.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-file.js +1 -1
- package/lib/umd-es6/persisters/persister-file.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-indexed-db.js +1 -1
- package/lib/umd-es6/persisters/persister-indexed-db.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-libsql.js +1 -0
- package/lib/umd-es6/persisters/persister-libsql.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-partykit-client.js +1 -1
- package/lib/umd-es6/persisters/persister-partykit-client.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-powersync.js +1 -0
- package/lib/umd-es6/persisters/persister-powersync.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-remote.js +1 -1
- package/lib/umd-es6/persisters/persister-remote.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-sqlite-wasm.js +1 -1
- package/lib/umd-es6/persisters/persister-sqlite-wasm.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-sqlite3.js +1 -1
- package/lib/umd-es6/persisters/persister-sqlite3.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-sync.js +1 -0
- package/lib/umd-es6/persisters/persister-sync.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-yjs.js +1 -1
- package/lib/umd-es6/persisters/persister-yjs.js.gz +0 -0
- package/lib/umd-es6/persisters.js +1 -1
- package/lib/umd-es6/persisters.js.gz +0 -0
- package/lib/umd-es6/queries.js +1 -1
- package/lib/umd-es6/queries.js.gz +0 -0
- package/lib/umd-es6/relationships.js +1 -1
- package/lib/umd-es6/relationships.js.gz +0 -0
- package/lib/umd-es6/store.js +1 -1
- package/lib/umd-es6/store.js.gz +0 -0
- package/lib/umd-es6/tinybase.js +1 -1
- package/lib/umd-es6/tinybase.js.gz +0 -0
- package/lib/umd-es6/tools.js +1 -1
- package/lib/umd-es6/tools.js.gz +0 -0
- package/lib/umd-es6/ui-react-dom-debug.js +1 -1
- package/lib/umd-es6/ui-react-dom-debug.js.gz +0 -0
- package/lib/umd-es6/ui-react.js +1 -1
- package/lib/umd-es6/ui-react.js.gz +0 -0
- package/package.json +51 -35
- package/readme.md +2 -2
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";const a=a=>typeof a,t="tinybase",e="",n=",",s=a(e),i=(a,t)=>a.repeat(t),o=Promise,r=clearInterval,c=a=>null==a,l=(a,t,e)=>c(a)?e?.():t(a),w=t=>a(t)==s,y=(a,t,e)=>a.slice(t,e),u=a=>a.length,d=async a=>o.all(a),E="_",g="_id",p=a=>`"${a.replace(/"/g,'""')}"`,v="SELECT",m=(a,t="")=>a.join(t),A=(a,t)=>a.map(t),h=a=>0==u(a),C=(a,t)=>a.filter(t),T=(a,...t)=>a.push(...t),f=(a,t)=>a?.has(t)??!1,N=a=>[...a?.values()??[]],b=(a,t)=>a?.delete(t),O=Object,L=a=>O.getPrototypeOf(a),S=O.entries,R=O.keys,D=O.freeze,I=(a=[])=>O.fromEntries(a),M=(...a)=>O.assign({},...a),P=(a,t)=>t in a,_=(a,t)=>A(S(a),(([a,e])=>t(e,a))),F=a=>O.values(a),j=a=>u(R(a)),x=a=>(a=>!c(a)&&l(L(a),(a=>a==O.prototype||c(L(a))),(()=>!0)))(a)&&0==j(a),B=a=>new Map(a),H=a=>[...a?.keys()??[]],Y=(a,t)=>a?.get(t),$=(a,t)=>A([...a?.entries()??[]],(([a,e])=>t(e,a))),k=(a,t,e)=>c(e)?(b(a,t),a):a?.set(t,e),G=(a,t,e,n)=>(f(a,t)?n?.(Y(a,t)):k(a,t,e()),Y(a,t)),J=(a,t,e,n=k)=>(_(t,((t,n)=>e(a,n,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>P(t,e)?0:n(a,e))),a),U=a=>new Set(Array.isArray(a)||c(a)?a:[a]),W=(a,t)=>a?.add(t),z="TABLE",K="ALTER "+z,V="DELETE FROM",q=v+"*FROM",Q="FROM pragma_table_",X="WHERE",Z=(a,t,s,i)=>{const o=B();return[async()=>J(o,I(await d(A(await a("SELECT name "+Q+"list WHERE schema='main'AND(type='table'OR type='view')AND name IN("+ta(t)+")ORDER BY name",t),(async({name:t})=>[t,I(A(await a(v+" name,type "+Q+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>k(o,t,J(G(o,t,B),e,((a,t,e)=>{e!=Y(a,t)&&k(a,t,e)}),((a,t)=>k(a,t))))),((a,t)=>k(o,t))),async(t,e)=>((a,t)=>!c(Y(Y(o,a),t)))(t,e)?I(C(A(await a(q+p(t)),(a=>{return[a[e],(t={...a},n=e,delete t[n],t)];var t,n})),(([a,t])=>!c(a)&&!x(t)))):{},async(t,s,r,l,w,y=!1)=>{const u=U();_(r??{},(a=>A(R(a??{}),(a=>W(u,a)))));const E=N(u);if(!y&&w&&h(E)&&f(o,t))return await a("DROP "+z+p(t)),void k(o,t);if(h(E)||f(o,t)){const n=Y(o,t),i=U(H(n));await d([...A(E,(async s=>{b(i,s)||(await a(K+p(t)+"ADD"+p(s)),k(n,s,e))})),...!y&&l?A(N(i),(async e=>{e!=s&&(await a(K+p(t)+"DROP"+p(e)),k(n,e))})):[]])}else await a("CREATE "+z+p(t)+"("+p(s)+` PRIMARY KEY ON CONFLICT REPLACE${m(A(E,(a=>n+p(a))))});`),k(o,t,B([[s,e],...A(E,(a=>[a,e]))]));if(y)c(r)?await a(V+p(t)+X+" 1"):await d(_(r,(async(e,n)=>{c(e)?await a(V+p(t)+X+p(s)+"=?",[n]):h(E)||await aa(a,t,s,R(e),[n,...F(e)],i)})));else if(h(E))f(o,t)&&await a(V+p(t)+X+" 1");else{const e=C(H(Y(o,t)),(a=>a!=s)),n=[],c=[];_(r??{},((a,t)=>{T(n,t,...A(e,(t=>a?.[t]))),T(c,t)})),await aa(a,t,s,e,n,i),await a(V+p(t)+X+p(s)+"NOT IN("+ta(c)+")",c)}},async t=>{let e;await a("BEGIN");try{e=await t()}catch(a){s?.(a)}return await a("END"),e}]},aa=async(a,t,s,o,r,c=!0)=>await a("INSERT "+(c?e:"OR REPLACE ")+"INTO"+p(t)+"("+p(s)+m(A(o,(a=>n+p(a))))+")VALUES"+y(i(`,(?${i(",?",u(o))})`,u(r)/(u(o)+1)),1)+(c?"ON CONFLICT("+p(s)+")DO UPDATE SET"+m(A(o,(a=>p(a)+"=excluded."+p(a))),n):e),A(r,(a=>a??null))),ta=a=>m(A(a,(()=>"?")),n),ea=JSON.parse,na=B(),sa=B(),ia=(a,t,e,n,s,i,o,r={},y=[])=>{let u,d,E,g=0;G(na,y,(()=>0)),G(sa,y,(()=>[]));const[p,v,m,A]=((a,t)=>!a||c(t.getMergeableContent)?[0,t.getContent,t.getTransactionChanges,([a,t])=>!x(a)||!x(t)]:[1,t.getMergeableContent,t.getTransactionMergeableChanges,([,[[,a],[,t]]])=>!x(a)||!x(t)])(o,a),h=async a=>(2!=g&&(g=1,await f.schedule((async()=>{await a(),g=0}))),f),C=t=>{(p&&w(t?.[0])?1===t?.[1][2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},f={load:async(e,n)=>await h((async()=>{try{C(await t())}catch(t){i?.(t),a.setContent([e,n])}})),startAutoLoad:async(a={},e={})=>(await f.stopAutoLoad().load(a,e),d=n((async(a,e)=>{const n=e?.();await h((async()=>{try{C(n??a?.()??await t())}catch(a){i?.(a)}}))})),f),stopAutoLoad:()=>(d&&(s(d),d=void 0),f),isAutoLoading:()=>!c(d),save:async a=>(1!=g&&(g=2,await f.schedule((async()=>{try{await e(v,a)}catch(a){i?.(a)}g=0}))),f),startAutoSave:async()=>(await f.stopAutoSave().save(),E=a.addDidFinishTransactionListener((()=>{const a=m();A(a)&&f.save((()=>a))})),f),stopAutoSave:()=>(l(E,a.delListener),E=void 0,f),isAutoSaving:()=>!c(E),schedule:async(...a)=>(T(Y(sa,y),...a),await(async()=>{if(!Y(na,y)){for(k(na,y,1);!c((a=Y(sa,y),u=a.shift()));)try{await u()}catch(a){i?.(a)}k(na,y,0)}var a})(),f),getStore:()=>a,destroy:()=>f.stopAutoLoad().stopAutoSave(),getStats:()=>({}),...r};return D(f)},oa="store",ra=(a,t,e,n,s,[i],o,r,c,l)=>{const[w,y,u,d]=Z(t,o,s,l);return ia(a,(async()=>await d((async()=>(await w(),ea((await y(i,g))[E]?.[oa]??"null"))))),(async a=>await d((async()=>{var t;await w(),await u(i,g,{[E]:{[oa]:(t=a()??null,JSON.stringify(t,((a,t)=>t instanceof Map?O.fromEntries([...t]):t)))}},!0,!0)}))),e,n,s,!1,{[c]:()=>r},r)},ca=(a,t,e,n,s,[i,o,[r,l,w]],y,u,p,v)=>{const[m,A,h,T]=Z(t,y,s,v),f=async(a,t)=>await d($(o,(async([e,n,s,i],o)=>{t&&!P(a,o)||await h(e,n,a[o],s,i,t)}))),N=async(a,t)=>l?await h(w,g,{[E]:a},!0,!0,t):null;return ia(a,(async()=>await T((async()=>{await m();const a=await(async()=>I(C(await d($(i,(async([a,t],e)=>[a,await A(e,t)]))),(a=>!x(a[1])))))(),t=await(async()=>r?(await A(w,g))[E]:{})();return x(a)&&c(t)?void 0:[a,t]}))),(async(a,t)=>await T((async()=>{if(await m(),c(t)){const[t,e]=a();await f(t),await N(e)}else{const[a,e]=t();await f(a,!0),await N(e,!0)}}))),e,n,s,!1,{[p]:()=>u},u)},la="json",wa="autoLoadIntervalSeconds",ya="rowIdColumnName",ua="tableId",da="tableName",Ea={mode:la,[wa]:1},ga={load:0,save:0,[da]:t+"_values"},pa=(a,t,e,n)=>{const s=B();return _(a,((a,i)=>{const o=y(F(M(t,w(a)?{[e]:a}:a)),0,j(t));c(o[0])||n(i,o[0])||k(s,i,o)})),s},va="pragma ",ma="data_version",Aa="schema_version",ha=(a,e,n,s,i,o,c,l,u="getDb",d)=>{let E,p,m;const[A,h,C,T]=(a=>{const e=(a=>M(Ea,w(a)?{storeTableName:a}:a??{}))(a),n=e[wa];if(e.mode==la){const{storeTableName:a=t}=e;return[1,n,[a],U(a)]}const{tables:{load:s={},save:i={}}={},values:o={}}=e,r=y(F(M(ga,o)),0,j(ga)),c=r[2],l=U(c);return[0,n,[pa(s,{[ua]:null,[ya]:g},ua,(a=>W(l,a)&&a==c)),pa(i,{[da]:null,[ya]:g,deleteEmptyColumns:0,deleteEmptyTable:0},da,((a,t)=>W(l,t)&&t==c)),r],l]})(e);return(A?ra:ca)(a,o?async(a,t)=>(o(a,t),await n(a,t)):n,(a=>{return[(t=async()=>{try{const t=(await n(va+ma))[0][ma],e=(await n(va+Aa))[0][Aa],s=(await n(v+" TOTAL_CHANGES() c"))[0].c;t==(E??=t)&&e==(p??=e)&&s==(m??=s)||(a(),E=t,p=e)}catch{}},e=h,t(),setInterval(t,1e3*e)),s((t=>T.has(t)?a():0))];var t,e}),(([a,t])=>{r(a),E=p=null,i(t)}),c,C,N(T),l,u,d)};exports.createPowerSyncPersister=(a,t,e,n,s,i=!1)=>ha(a,e,(async(a,e=[])=>t.execute(a,e).then((a=>a.rows?._array??[]))),(a=>{const e=new AbortController,n=t.onChange({rawTableNames:!0,signal:e.signal});return(async()=>{for await(const t of n)A(t.changedTables,a)})(),e}),(a=>a.abort()),n,s,t,"getPowerSync",i);
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";const t=t=>typeof t,e=t(""),a=clearInterval,s=t=>null==t,n=(t,e,a)=>s(t)?a?.():e(t),o=Object,r=t=>o.getPrototypeOf(t),c=o.keys,i=o.freeze,y=t=>(t=>!s(t)&&n(r(t),(t=>t==o.prototype||s(r(t))),(()=>!0)))(t)&&0==(t=>c(t).length)(t),
|
|
1
|
+
"use strict";const t=t=>typeof t,e=t(""),a=clearInterval,s=t=>null==t,n=(t,e,a)=>s(t)?a?.():e(t),o=Object,r=t=>o.getPrototypeOf(t),c=o.keys,i=o.freeze,y=t=>(t=>!s(t)&&n(r(t),(t=>t==o.prototype||s(r(t))),(()=>!0)))(t)&&0==(t=>c(t).length)(t),g=JSON.parse,l=t=>new Map(t),d=(t,e)=>t?.get(e),h=(t,e,a)=>{return s(a)?(n=t,o=e,n?.delete(o),t):t?.set(e,a);var n,o},p=(t,e,a,s)=>{var n,o;return n=t,o=e,n?.has(o)?s?.(d(t,e)):h(t,e,a()),d(t,e)},u=l(),v=l(),w=t=>t.headers.get("ETag");exports.createRemotePersister=(r,c,l,f=5,A)=>{let C;return((a,o,r,c,g,l,w,f={},A=[])=>{let C,S,b,L=0;p(u,A,(()=>0)),p(v,A,(()=>[]));const[M,T,O,m]=((t,e)=>!t||s(e.getMergeableContent)?[0,e.getContent,e.getTransactionChanges,([t,e])=>!y(t)||!y(e)]:[1,e.getMergeableContent,e.getTransactionMergeableChanges,([,[[,t],[,e]]])=>!y(t)||!y(e)])(w,a),E=async t=>(2!=L&&(L=1,await j.schedule((async()=>{await t(),L=0}))),j),P=s=>{var n;(M&&(n=s?.[0],t(n)==e)?1===s?.[1][2]?a.applyMergeableChanges:a.setMergeableContent:1===s?.[2]?a.applyChanges:a.setContent)(s)},j={load:async(t,e)=>await E((async()=>{try{P(await o())}catch(s){l?.(s),a.setContent([t,e])}})),startAutoLoad:async(t={},e={})=>(await j.stopAutoLoad().load(t,e),S=c((async(t,e)=>{const a=e?.();await E((async()=>{try{P(a??t?.()??await o())}catch(t){l?.(t)}}))})),j),stopAutoLoad:()=>(S&&(g(S),S=void 0),j),isAutoLoading:()=>!s(S),save:async t=>(1!=L&&(L=2,await j.schedule((async()=>{try{await r(T,t)}catch(t){l?.(t)}L=0}))),j),startAutoSave:async()=>(await j.stopAutoSave().save(),b=a.addDidFinishTransactionListener((()=>{const t=O();m(t)&&j.save((()=>t))})),j),stopAutoSave:()=>(n(b,a.delListener),b=void 0,j),isAutoSaving:()=>!s(b),schedule:async(...t)=>(((t,...e)=>{t.push(...e)})(d(v,A),...t),await(async()=>{if(!d(u,A)){for(h(u,A,1);!s((t=d(v,A),C=t.shift()));)try{await C()}catch(t){l?.(t)}h(u,A,0)}var t})(),j),getStore:()=>a,destroy:()=>j.stopAutoLoad().stopAutoSave(),getStats:()=>({}),...f};return i(j)})(r,(async()=>{const t=await fetch(c);return C=w(t),g(await t.text())}),(async t=>{return await fetch(l,{method:"POST",headers:{"Content-Type":"application/json"},body:(e=t(),JSON.stringify(e,((t,e)=>e instanceof Map?o.fromEntries([...e]):e)))});var e}),(t=>setInterval((async()=>{const e=await fetch(c,{method:"HEAD"}),a=w(e);s(C)||s(a)||a==C||(C=a,t())}),1e3*f)),(t=>a(t)),A,!1,{getUrls:()=>[c,l]})};
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";const a=a=>typeof a,t="tinybase",e="",s=",",n=a(e),i=(a,t)=>a.repeat(t),
|
|
1
|
+
"use strict";const a=a=>typeof a,t="tinybase",e="",s=",",n=a(e),i=(a,t)=>a.repeat(t),o=Promise,c=clearInterval,r=a=>null==a,l=(a,t,e)=>r(a)?e?.():t(a),w=t=>a(t)==n,y=(a,t,e)=>a.slice(t,e),u=a=>a.length,d=async a=>o.all(a),p="_",E="_id",v=a=>`"${a.replace(/"/g,'""')}"`,g="SELECT",m=(a,t="")=>a.join(t),A=(a,t)=>a.map(t),h=a=>0==u(a),C=(a,t)=>a.filter(t),T=(a,...t)=>a.push(...t),N=(a,t)=>a?.has(t)??!1,O=a=>[...a?.values()??[]],f=(a,t)=>a?.delete(t),L=Object,R=a=>L.getPrototypeOf(a),b=L.entries,S=L.keys,D=L.freeze,I=(a=[])=>L.fromEntries(a),M=(...a)=>L.assign({},...a),_=(a,t)=>t in a,P=(a,t)=>A(b(a),(([a,e])=>t(e,a))),F=a=>L.values(a),j=a=>u(S(a)),k=a=>(a=>!r(a)&&l(R(a),(a=>a==L.prototype||r(R(a))),(()=>!0)))(a)&&0==j(a),q=a=>new Map(a),x=a=>[...a?.keys()??[]],B=(a,t)=>a?.get(t),H=(a,t)=>A([...a?.entries()??[]],(([a,e])=>t(e,a))),W=(a,t,e)=>r(e)?(f(a,t),a):a?.set(t,e),Y=(a,t,e,s)=>(N(a,t)?s?.(B(a,t)):W(a,t,e()),B(a,t)),$=(a,t,e,s=W)=>(P(t,((t,s)=>e(a,s,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>_(t,e)?0:s(a,e))),a),G=a=>new Set(Array.isArray(a)||r(a)?a:[a]),J=(a,t)=>a?.add(t),U="TABLE",V="ALTER "+U,z="DELETE FROM",K=g+"*FROM",Q="FROM pragma_table_",X="WHERE",Z=(a,t,n,i)=>{const o=q();return[async()=>$(o,I(await d(A(await a("SELECT name "+Q+"list WHERE schema='main'AND(type='table'OR type='view')AND name IN("+ta(t)+")ORDER BY name",t),(async({name:t})=>[t,I(A(await a(g+" name,type "+Q+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>W(o,t,$(Y(o,t,q),e,((a,t,e)=>{e!=B(a,t)&&W(a,t,e)}),((a,t)=>W(a,t))))),((a,t)=>W(o,t))),async(t,e)=>((a,t)=>!r(B(B(o,a),t)))(t,e)?I(C(A(await a(K+v(t)),(a=>{return[a[e],(t={...a},s=e,delete t[s],t)];var t,s})),(([a,t])=>!r(a)&&!k(t)))):{},async(t,n,c,l,w,y=!1)=>{const u=G();P(c??{},(a=>A(S(a??{}),(a=>J(u,a)))));const p=O(u);if(!y&&w&&h(p)&&N(o,t))return await a("DROP "+U+v(t)),void W(o,t);if(h(p)||N(o,t)){const s=B(o,t),i=G(x(s));await d([...A(p,(async n=>{f(i,n)||(await a(V+v(t)+"ADD"+v(n)),W(s,n,e))})),...!y&&l?A(O(i),(async e=>{e!=n&&(await a(V+v(t)+"DROP"+v(e)),W(s,e))})):[]])}else await a("CREATE "+U+v(t)+"("+v(n)+` PRIMARY KEY ON CONFLICT REPLACE${m(A(p,(a=>s+v(a))))});`),W(o,t,q([[n,e],...A(p,(a=>[a,e]))]));if(y)r(c)?await a(z+v(t)+X+" 1"):await d(P(c,(async(e,s)=>{r(e)?await a(z+v(t)+X+v(n)+"=?",[s]):h(p)||await aa(a,t,n,S(e),[s,...F(e)],i)})));else if(h(p))N(o,t)&&await a(z+v(t)+X+" 1");else{const e=C(x(B(o,t)),(a=>a!=n)),s=[],r=[];P(c??{},((a,t)=>{T(s,t,...A(e,(t=>a?.[t]))),T(r,t)})),await aa(a,t,n,e,s,i),await a(z+v(t)+X+v(n)+"NOT IN("+ta(r)+")",r)}},async t=>{let e;await a("BEGIN");try{e=await t()}catch(a){n?.(a)}return await a("END"),e}]},aa=async(a,t,n,o,c,r=!0)=>await a("INSERT "+(r?e:"OR REPLACE ")+"INTO"+v(t)+"("+v(n)+m(A(o,(a=>s+v(a))))+")VALUES"+y(i(`,(?${i(",?",u(o))})`,u(c)/(u(o)+1)),1)+(r?"ON CONFLICT("+v(n)+")DO UPDATE SET"+m(A(o,(a=>v(a)+"=excluded."+v(a))),s):e),A(c,(a=>a??null))),ta=a=>m(A(a,(()=>"?")),s),ea=JSON.parse,sa=q(),na=q(),ia=(a,t,e,s,n,i,o,c={},y=[])=>{let u,d,p,E=0;Y(sa,y,(()=>0)),Y(na,y,(()=>[]));const[v,g,m,A]=((a,t)=>!a||r(t.getMergeableContent)?[0,t.getContent,t.getTransactionChanges,([a,t])=>!k(a)||!k(t)]:[1,t.getMergeableContent,t.getTransactionMergeableChanges,([,[[,a],[,t]]])=>!k(a)||!k(t)])(o,a),h=async a=>(2!=E&&(E=1,await N.schedule((async()=>{await a(),E=0}))),N),C=t=>{(v&&w(t?.[0])?1===t?.[1][2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},N={load:async(e,s)=>await h((async()=>{try{C(await t())}catch(t){i?.(t),a.setContent([e,s])}})),startAutoLoad:async(a={},e={})=>(await N.stopAutoLoad().load(a,e),d=s((async(a,e)=>{const s=e?.();await h((async()=>{try{C(s??a?.()??await t())}catch(a){i?.(a)}}))})),N),stopAutoLoad:()=>(d&&(n(d),d=void 0),N),isAutoLoading:()=>!r(d),save:async a=>(1!=E&&(E=2,await N.schedule((async()=>{try{await e(g,a)}catch(a){i?.(a)}E=0}))),N),startAutoSave:async()=>(await N.stopAutoSave().save(),p=a.addDidFinishTransactionListener((()=>{const a=m();A(a)&&N.save((()=>a))})),N),stopAutoSave:()=>(l(p,a.delListener),p=void 0,N),isAutoSaving:()=>!r(p),schedule:async(...a)=>(T(B(na,y),...a),await(async()=>{if(!B(sa,y)){for(W(sa,y,1);!r((a=B(na,y),u=a.shift()));)try{await u()}catch(a){i?.(a)}W(sa,y,0)}var a})(),N),getStore:()=>a,destroy:()=>N.stopAutoLoad().stopAutoSave(),getStats:()=>({}),...c};return D(N)},oa="store",ca=(a,t,e,s,n,[i],o,c,r,l)=>{const[w,y,u,d]=Z(t,o,n,l);return ia(a,(async()=>await d((async()=>(await w(),ea((await y(i,E))[p]?.[oa]??"null"))))),(async a=>await d((async()=>{var t;await w(),await u(i,E,{[p]:{[oa]:(t=a()??null,JSON.stringify(t,((a,t)=>t instanceof Map?L.fromEntries([...t]):t)))}},!0,!0)}))),e,s,n,!1,{[r]:()=>c},c)},ra=(a,t,e,s,n,[i,o,[c,l,w]],y,u,v,g)=>{const[m,A,h,T]=Z(t,y,n,g),N=async(a,t)=>await d(H(o,(async([e,s,n,i],o)=>{t&&!_(a,o)||await h(e,s,a[o],n,i,t)}))),O=async(a,t)=>l?await h(w,E,{[p]:a},!0,!0,t):null;return ia(a,(async()=>await T((async()=>{await m();const a=await(async()=>I(C(await d(H(i,(async([a,t],e)=>[a,await A(e,t)]))),(a=>!k(a[1])))))(),t=await(async()=>c?(await A(w,E))[p]:{})();return k(a)&&r(t)?void 0:[a,t]}))),(async(a,t)=>await T((async()=>{if(await m(),r(t)){const[t,e]=a();await N(t),await O(e)}else{const[a,e]=t();await N(a,!0),await O(e,!0)}}))),e,s,n,!1,{[v]:()=>u},u)},la="json",wa="autoLoadIntervalSeconds",ya="rowIdColumnName",ua="tableId",da="tableName",pa={mode:la,[wa]:1},Ea={load:0,save:0,[da]:t+"_values"},va=(a,t,e,s)=>{const n=q();return P(a,((a,i)=>{const o=y(F(M(t,w(a)?{[e]:a}:a)),0,j(t));r(o[0])||s(i,o[0])||W(n,i,o)})),n},ga="pragma ",ma="data_version",Aa="schema_version",ha=(a,e,s,n,i,o,r,l,u="getDb",d)=>{let p,v,m;const[A,h,C,T]=(a=>{const e=(a=>M(pa,w(a)?{storeTableName:a}:a??{}))(a),s=e[wa];if(e.mode==la){const{storeTableName:a=t}=e;return[1,s,[a],G(a)]}const{tables:{load:n={},save:i={}}={},values:o={}}=e,c=y(F(M(Ea,o)),0,j(Ea)),r=c[2],l=G(r);return[0,s,[va(n,{[ua]:null,[ya]:E},ua,(a=>J(l,a)&&a==r)),va(i,{[da]:null,[ya]:E,deleteEmptyColumns:0,deleteEmptyTable:0},da,((a,t)=>J(l,t)&&t==r)),c],l]})(e);return(A?ca:ra)(a,o?async(a,t)=>(o(a,t),await s(a,t)):s,(a=>{return[(t=async()=>{try{const t=(await s(ga+ma))[0][ma],e=(await s(ga+Aa))[0][Aa],n=(await s(g+" TOTAL_CHANGES() c"))[0].c;t==(p??=t)&&e==(v??=e)&&n==(m??=n)||(a(),p=t,v=e)}catch{}},e=h,t(),setInterval(t,1e3*e)),n((t=>T.has(t)?a():0))];var t,e}),(([a,t])=>{c(a),p=v=null,i(t)}),r,C,O(T),l,u,d)};exports.createSqliteWasmPersister=(a,t,e,s,n,i)=>ha(a,s,(async(a,t=[])=>e.exec(a,{bind:t,rowMode:"object",returnValue:"resultRows"}).map((a=>({...a})))),(a=>t.capi.sqlite3_update_hook(e,((t,e,s,n)=>a(n)),0)),(()=>t.capi.sqlite3_update_hook(e,(()=>0),0)),n,i,e);
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";const a=a=>typeof a,t="tinybase",e="",n=",",s=a(e),i=(a,t)=>a.repeat(t),c=Promise,r=clearInterval,o=a=>null==a,l=(a,t,e)=>o(a)?e?.():t(a),w=t=>a(t)==s,y=(a,t,e)=>a.slice(t,e),
|
|
1
|
+
"use strict";const a=a=>typeof a,t="tinybase",e="",n=",",s=a(e),i=(a,t)=>a.repeat(t),c=Promise,r=clearInterval,o=a=>null==a,l=(a,t,e)=>o(a)?e?.():t(a),w=t=>a(t)==s,y=(a,t,e)=>a.slice(t,e),u=a=>a.length,d=async a=>c.all(a),E="_",p="_id",v=a=>`"${a.replace(/"/g,'""')}"`,g="SELECT",m=(a,t="")=>a.join(t),A=(a,t)=>a.map(t),h=a=>0==u(a),C=(a,t)=>a.filter(t),f=(a,...t)=>a.push(...t),T=(a,t)=>a?.has(t)??!1,N=a=>[...a?.values()??[]],O=(a,t)=>a?.delete(t),L=Object,R=a=>L.getPrototypeOf(a),S=L.entries,b=L.keys,D=L.freeze,I=(a=[])=>L.fromEntries(a),M=(...a)=>L.assign({},...a),P=(a,t)=>t in a,_=(a,t)=>A(S(a),(([a,e])=>t(e,a))),F=a=>L.values(a),j=a=>u(b(a)),B=a=>(a=>!o(a)&&l(R(a),(a=>a==L.prototype||o(R(a))),(()=>!0)))(a)&&0==j(a),H=a=>new Map(a),Y=a=>[...a?.keys()??[]],$=(a,t)=>a?.get(t),k=(a,t)=>A([...a?.entries()??[]],(([a,e])=>t(e,a))),x=(a,t,e)=>o(e)?(O(a,t),a):a?.set(t,e),G=(a,t,e,n)=>(T(a,t)?n?.($(a,t)):x(a,t,e()),$(a,t)),J=(a,t,e,n=x)=>(_(t,((t,n)=>e(a,n,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>P(t,e)?0:n(a,e))),a),U=a=>new Set(Array.isArray(a)||o(a)?a:[a]),W=(a,t)=>a?.add(t),q="TABLE",z="ALTER "+q,K="DELETE FROM",V=g+"*FROM",Q="FROM pragma_table_",X="WHERE",Z=(a,t,s,i)=>{const c=H();return[async()=>J(c,I(await d(A(await a("SELECT name "+Q+"list WHERE schema='main'AND(type='table'OR type='view')AND name IN("+ta(t)+")ORDER BY name",t),(async({name:t})=>[t,I(A(await a(g+" name,type "+Q+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>x(c,t,J(G(c,t,H),e,((a,t,e)=>{e!=$(a,t)&&x(a,t,e)}),((a,t)=>x(a,t))))),((a,t)=>x(c,t))),async(t,e)=>((a,t)=>!o($($(c,a),t)))(t,e)?I(C(A(await a(V+v(t)),(a=>{return[a[e],(t={...a},n=e,delete t[n],t)];var t,n})),(([a,t])=>!o(a)&&!B(t)))):{},async(t,s,r,l,w,y=!1)=>{const u=U();_(r??{},(a=>A(b(a??{}),(a=>W(u,a)))));const E=N(u);if(!y&&w&&h(E)&&T(c,t))return await a("DROP "+q+v(t)),void x(c,t);if(h(E)||T(c,t)){const n=$(c,t),i=U(Y(n));await d([...A(E,(async s=>{O(i,s)||(await a(z+v(t)+"ADD"+v(s)),x(n,s,e))})),...!y&&l?A(N(i),(async e=>{e!=s&&(await a(z+v(t)+"DROP"+v(e)),x(n,e))})):[]])}else await a("CREATE "+q+v(t)+"("+v(s)+` PRIMARY KEY ON CONFLICT REPLACE${m(A(E,(a=>n+v(a))))});`),x(c,t,H([[s,e],...A(E,(a=>[a,e]))]));if(y)o(r)?await a(K+v(t)+X+" 1"):await d(_(r,(async(e,n)=>{o(e)?await a(K+v(t)+X+v(s)+"=?",[n]):h(E)||await aa(a,t,s,b(e),[n,...F(e)],i)})));else if(h(E))T(c,t)&&await a(K+v(t)+X+" 1");else{const e=C(Y($(c,t)),(a=>a!=s)),n=[],o=[];_(r??{},((a,t)=>{f(n,t,...A(e,(t=>a?.[t]))),f(o,t)})),await aa(a,t,s,e,n,i),await a(K+v(t)+X+v(s)+"NOT IN("+ta(o)+")",o)}},async t=>{let e;await a("BEGIN");try{e=await t()}catch(a){s?.(a)}return await a("END"),e}]},aa=async(a,t,s,c,r,o=!0)=>await a("INSERT "+(o?e:"OR REPLACE ")+"INTO"+v(t)+"("+v(s)+m(A(c,(a=>n+v(a))))+")VALUES"+y(i(`,(?${i(",?",u(c))})`,u(r)/(u(c)+1)),1)+(o?"ON CONFLICT("+v(s)+")DO UPDATE SET"+m(A(c,(a=>v(a)+"=excluded."+v(a))),n):e),A(r,(a=>a??null))),ta=a=>m(A(a,(()=>"?")),n),ea=JSON.parse,na=H(),sa=H(),ia=(a,t,e,n,s,i,c,r={},y=[])=>{let u,d,E,p=0;G(na,y,(()=>0)),G(sa,y,(()=>[]));const[v,g,m,A]=((a,t)=>!a||o(t.getMergeableContent)?[0,t.getContent,t.getTransactionChanges,([a,t])=>!B(a)||!B(t)]:[1,t.getMergeableContent,t.getTransactionMergeableChanges,([,[[,a],[,t]]])=>!B(a)||!B(t)])(c,a),h=async a=>(2!=p&&(p=1,await T.schedule((async()=>{await a(),p=0}))),T),C=t=>{(v&&w(t?.[0])?1===t?.[1][2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},T={load:async(e,n)=>await h((async()=>{try{C(await t())}catch(t){i?.(t),a.setContent([e,n])}})),startAutoLoad:async(a={},e={})=>(await T.stopAutoLoad().load(a,e),d=n((async(a,e)=>{const n=e?.();await h((async()=>{try{C(n??a?.()??await t())}catch(a){i?.(a)}}))})),T),stopAutoLoad:()=>(d&&(s(d),d=void 0),T),isAutoLoading:()=>!o(d),save:async a=>(1!=p&&(p=2,await T.schedule((async()=>{try{await e(g,a)}catch(a){i?.(a)}p=0}))),T),startAutoSave:async()=>(await T.stopAutoSave().save(),E=a.addDidFinishTransactionListener((()=>{const a=m();A(a)&&T.save((()=>a))})),T),stopAutoSave:()=>(l(E,a.delListener),E=void 0,T),isAutoSaving:()=>!o(E),schedule:async(...a)=>(f($(sa,y),...a),await(async()=>{if(!$(na,y)){for(x(na,y,1);!o((a=$(sa,y),u=a.shift()));)try{await u()}catch(a){i?.(a)}x(na,y,0)}var a})(),T),getStore:()=>a,destroy:()=>T.stopAutoLoad().stopAutoSave(),getStats:()=>({}),...r};return D(T)},ca="store",ra=(a,t,e,n,s,[i],c,r,o,l)=>{const[w,y,u,d]=Z(t,c,s,l);return ia(a,(async()=>await d((async()=>(await w(),ea((await y(i,p))[E]?.[ca]??"null"))))),(async a=>await d((async()=>{var t;await w(),await u(i,p,{[E]:{[ca]:(t=a()??null,JSON.stringify(t,((a,t)=>t instanceof Map?L.fromEntries([...t]):t)))}},!0,!0)}))),e,n,s,!1,{[o]:()=>r},r)},oa=(a,t,e,n,s,[i,c,[r,l,w]],y,u,v,g)=>{const[m,A,h,f]=Z(t,y,s,g),T=async(a,t)=>await d(k(c,(async([e,n,s,i],c)=>{t&&!P(a,c)||await h(e,n,a[c],s,i,t)}))),N=async(a,t)=>l?await h(w,p,{[E]:a},!0,!0,t):null;return ia(a,(async()=>await f((async()=>{await m();const a=await(async()=>I(C(await d(k(i,(async([a,t],e)=>[a,await A(e,t)]))),(a=>!B(a[1])))))(),t=await(async()=>r?(await A(w,p))[E]:{})();return B(a)&&o(t)?void 0:[a,t]}))),(async(a,t)=>await f((async()=>{if(await m(),o(t)){const[t,e]=a();await T(t),await N(e)}else{const[a,e]=t();await T(a,!0),await N(e,!0)}}))),e,n,s,!1,{[v]:()=>u},u)},la="json",wa="autoLoadIntervalSeconds",ya="rowIdColumnName",ua="tableId",da="tableName",Ea={mode:la,[wa]:1},pa={load:0,save:0,[da]:t+"_values"},va=(a,t,e,n)=>{const s=H();return _(a,((a,i)=>{const c=y(F(M(t,w(a)?{[e]:a}:a)),0,j(t));o(c[0])||n(i,c[0])||x(s,i,c)})),s},ga="pragma ",ma="data_version",Aa="schema_version",ha=(a,e,n,s,i,c,o,l,u="getDb",d)=>{let E,v,m;const[A,h,C,f]=(a=>{const e=(a=>M(Ea,w(a)?{storeTableName:a}:a??{}))(a),n=e[wa];if(e.mode==la){const{storeTableName:a=t}=e;return[1,n,[a],U(a)]}const{tables:{load:s={},save:i={}}={},values:c={}}=e,r=y(F(M(pa,c)),0,j(pa)),o=r[2],l=U(o);return[0,n,[va(s,{[ua]:null,[ya]:p},ua,(a=>W(l,a)&&a==o)),va(i,{[da]:null,[ya]:p,deleteEmptyColumns:0,deleteEmptyTable:0},da,((a,t)=>W(l,t)&&t==o)),r],l]})(e);return(A?ra:oa)(a,c?async(a,t)=>(c(a,t),await n(a,t)):n,(a=>{return[(t=async()=>{try{const t=(await n(ga+ma))[0][ma],e=(await n(ga+Aa))[0][Aa],s=(await n(g+" TOTAL_CHANGES() c"))[0].c;t==(E??=t)&&e==(v??=e)&&s==(m??=s)||(a(),E=t,v=e)}catch{}},e=h,t(),setInterval(t,1e3*e)),s((t=>f.has(t)?a():0))];var t,e}),(([a,t])=>{r(a),E=v=null,i(t)}),o,C,N(f),l,u,d)},Ca="change";exports.createSqlite3Persister=(a,t,e,n,s)=>ha(a,e,(async(a,e=[])=>{return await(n=(n,s)=>t.all(a,e,((a,t)=>a?s(a):n(t))),new c(n));var n}),(a=>{const e=(t,e,n)=>a(n);return t.on(Ca,e),e}),(a=>t.off(Ca,a)),n,s,t);
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";const e=e=>typeof e,t="",a=e(t),s="utf8",n=Promise,o=Math.max,r=e=>null==e,c=(e,t,a)=>r(e)?a?.():t(e),i=(e,t,a)=>e.slice(t,a),l=e=>new n(e),g=Object,d=e=>g.getPrototypeOf(e),y=g.keys,u=g.freeze,h=(e=[])=>g.fromEntries(e),p=e=>(e=>!r(e)&&c(d(e),(e=>e==g.prototype||r(d(e))),(()=>!0)))(e)&&0==(e=>y(e).length)(e),v=(e,t)=>e?.delete(t),w=e=>new Map(e),S=(e,t)=>e?.get(t),f=(e,t)=>((e,t)=>e?.forEach(t))(e,((e,a)=>t(a,e))),b=(e,t,a)=>r(a)?(v(e,t),e):e?.set(t,a),C=(e,t,a,s)=>{var n,o;return n=e,o=t,n?.has(o)?s?.(S(e,t)):b(e,t,a()),S(e,t)},M=w(),A=w(),m=new globalThis.TextEncoder,L=2**36,T=2**30,x=2**24,H=2**18,O=4096,E=64,R=e=>String.fromCharCode(48+(63&e)),k=(e,t)=>((e,t)=>e.charCodeAt(t))(e,t)-48,D=w();h(),h();const N=JSON.parse,P="\n";exports.createLocalClient=()=>{const e=""+Math.random();return{send:(t,a,s,n)=>{r(t)?f(D,((t,o)=>t!=e?o(e,a,s,n):0)):S(D,t)?.(e,a,s,n)},onReceive:t=>{b(D,e,t)},destroy:()=>{v(D,e)},getStats:()=>({})}},exports.createSyncPersister=(s,n,i=1,g)=>{let d;const{send:y,onReceive:h,destroy:f}=n,[D]=(e=>{let t=0,a=-1;const s=(e=>{let t=2166136261;var a;return a=e=>{t^=e,t+=(t<<1)+(t<<4)+(t<<7)+(t<<8)+(t<<24)},m.encode(e).forEach(a),t>>>0})(e),n=e=>{const s=t,[n,c]=r(e)||""==e?[0,0]:[k(i=e,0)*L+k(i,1)*T+k(i,2)*x+k(i,3)*H+k(i,4)*O+k(i,5)*E+k(i,6),k(i,7)*H+k(i,8)*O+k(i,9)*E+k(i,10),k(i,11)*x+k(i,12)*H+k(i,13)*O+k(i,14)*E+k(i,15)];var i;t=o(s,n,Date.now()),a=t==s?t==n?o(a,c):a:t==n?c:-1};return[()=>{return n(),o=++a,r=s,R((e=t)/L)+R(e/T)+R(e/x)+R(e/H)+R(e/O)+R(e/E)+R(e)+R(o/H)+R(o/O)+R(o/E)+R(o)+R(r/x)+R(r/H)+R(r/O)+R(r/E)+R(r);var e,o,r},n]})(s.getId()),N=w();h(((e,t,a,n)=>{if(0==a)c(S(N,t),(([t,a])=>r(t)||t==e?a(n,e):0));else if(1==a&&W.isAutoLoading())I(e,n).then((e=>d?.(void 0,(()=>e))));else{const o=2==a&&W.isAutoSaving()?s.getMergeableContentHashes():3==a?s.getMergeableTableIdsDiff(n):4==a?s.getMergeableRowIdsDiff(n):5==a?s.getMergeableTablesChanges(n):6==a?s.getMergeableValuesChanges(n):0;0!==o&&y(e,t,0,o)}}));const P=async(e,t,a="")=>l(((s,n)=>{const o=D(),r=setTimeout((()=>{v(N,o),n(`No response from ${e??"anyone"} to '${t}'`)}),1e3*i);b(N,o,[e,(e,t)=>{clearTimeout(r),v(N,o),s([e,t])}]),y(e,o,t,a)})),I=async(e=null,a)=>{r(a)&&([a,e]=await P(e,2));const[n,[o,c]]=a,[,[i,l]]=s.getMergeableContentHashes(),g=[t,[[t,{}],[t,{}],1]];return i!=o&&(g[0]=n,g[1][0]=(await P(e,5,s.getMergeableCellHashes((await P(e,4,s.getMergeableRowHashes((await P(e,3,s.getMergeableTableHashes()))[0])))[0])))[0]),l!=c&&(g[0]=n,g[1][1]=(await P(e,6,s.getMergeableValuesHashes()))[0]),g},W=((t,s,n,o,i,l,g,d={},y=[])=>{let h,v,w,f=0;C(M,y,(()=>0)),C(A,y,(()=>[]));const[m,L,T,x]=((e,t)=>!e||r(t.getMergeableContent)?[0,t.getContent,t.getTransactionChanges,([e,t])=>!p(e)||!p(t)]:[1,t.getMergeableContent,t.getTransactionMergeableChanges,([,[[,e],[,t]]])=>!p(e)||!p(t)])(g,t),H=async e=>(2!=f&&(f=1,await E.schedule((async()=>{await e(),f=0}))),E),O=s=>{var n;(m&&(n=s?.[0],e(n)==a)?1===s?.[1][2]?t.applyMergeableChanges:t.setMergeableContent:1===s?.[2]?t.applyChanges:t.setContent)(s)},E={load:async(e,a)=>await H((async()=>{try{O(await s())}catch(s){l?.(s),t.setContent([e,a])}})),startAutoLoad:async(e={},t={})=>(await E.stopAutoLoad().load(e,t),v=o((async(e,t)=>{const a=t?.();await H((async()=>{try{O(a??e?.()??await s())}catch(e){l?.(e)}}))})),E),stopAutoLoad:()=>(v&&(i(v),v=void 0),E),isAutoLoading:()=>!r(v),save:async e=>(1!=f&&(f=2,await E.schedule((async()=>{try{await n(L,e)}catch(e){l?.(e)}f=0}))),E),startAutoSave:async()=>(await E.stopAutoSave().save(),w=t.addDidFinishTransactionListener((()=>{const e=T();x(e)&&E.save((()=>e))})),E),stopAutoSave:()=>(c(w,t.delListener),w=void 0,E),isAutoSaving:()=>!r(w),schedule:async(...e)=>(((e,...t)=>{e.push(...t)})(S(A,y),...e),await(async()=>{if(!S(M,y)){for(b(M,y,1);!r((e=S(A,y),h=e.shift()));)try{await h()}catch(e){l?.(e)}b(M,y,0)}var e})(),E),getStore:()=>t,destroy:()=>E.stopAutoLoad().stopAutoSave(),getStats:()=>({}),...d};return u(E)})(s,(async()=>{const e=await I();return e[0]!=t?e:void 0}),(async()=>{y(null,null,1,s.getMergeableContentHashes())}),(e=>d=e),(()=>d=void 0),g,!0,{getClient:()=>n,startSync:async()=>await(await W.startAutoLoad()).startAutoSave(),stopSync:()=>W.stopAutoLoad().stopAutoSave(),destroy:()=>(f(),W.stopSync())});return W},exports.createWsClient=async e=>{let a;e.on("message",(e=>{if(!r(a)){const t=e.toString(s),n=t.indexOf(P);-1!==n&&a(i(t,0,n),...N(i(t,n+1)))}}));const n={send:(a,...s)=>{e.send((a??t)+P+JSON.stringify(s,((e,t)=>t instanceof Map?g.fromEntries([...t]):t)))},onReceive:e=>{a=e},destroy:()=>{e.close()},getStats:()=>({})};return l(((t,a)=>{e.readyState!=e.OPEN?(e.on("error",a),e.on("open",(()=>t(n)))):t(n)}))},exports.createWsSimpleServer=e=>{const a=w();return e.on("connection",((e,n)=>{const o=n.headers["sec-websocket-key"];b(a,o,e),e.on("message",(e=>{const n=e.toString(s),r=n.indexOf(P);if(-1!==r){const e=i(n,0,r),s=i(n,r+1);e===t?f(a,((e,t)=>e!=o?t.send(o+P+s):0)):S(a,e)?.send(o+P+s)}})),e.on("close",(()=>v(a,o)))})),{getWebSocketServer:()=>e,destroy:()=>{e.close(),a.clear()}}};
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var t=require("yjs");const e=t=>typeof t,a=e(""),s="t",n="v",o=t=>null==t,r=(t,e,a)=>o(t)?a?.():e(t),c=t=>t.length,i=t=>t.shift(),g=Object,l=t=>g.getPrototypeOf(t),u=g.entries,
|
|
1
|
+
"use strict";var t=require("yjs");const e=t=>typeof t,a=e(""),s="t",n="v",o=t=>null==t,r=(t,e,a)=>o(t)?a?.():e(t),c=t=>t.length,i=t=>t.shift(),g=Object,l=t=>g.getPrototypeOf(t),u=g.entries,d=g.keys,y=g.freeze,p=(t=[])=>g.fromEntries(t),h=(t,e)=>e in t,v=(t,e)=>((t,e)=>t.map(e))(u(t),(([t,a])=>e(a,t))),w=t=>(t=>!o(t)&&r(l(t),(t=>t==g.prototype||o(l(t))),(()=>!0)))(t)&&0==(t=>c(d(t)))(t),f=(t,e,a)=>(h(t,e)||(t[e]=a()),t[e]),S=t=>new Map(t),A=(t,e)=>t?.get(e),C=(t,e)=>((t,e)=>t?.forEach(e))(t,((t,a)=>e(a,t))),M=(t,e,a)=>{return o(a)?(s=t,n=e,s?.delete(n),t):t?.set(e,a);var s,n},b=(t,e,a,s)=>{var n,o;return n=t,o=e,n?.has(o)?s?.(A(t,e)):M(t,e,a()),A(t,e)},O=S(),L=S(),J="delete",N=t=>[t.get(s),t.get(n)],z=(e,a,s,n)=>{const r=o(a)?e:e.get(a)??e.set(a,new t.Map);let c;return v(s,((t,e)=>{n(r,e,t)&&(c=1)})),r.forEach(((t,e)=>{h(s,e)||(r.delete(e),c=1)})),o(a)||r.size||e.delete(a),c};exports.createYjsPersister=(g,l,u="tinybase",d)=>{const h=l.getMap(u);return((t,s,n,c,g,l,u,d={},p=[])=>{let h,v,f,S=0;b(O,p,(()=>0)),b(L,p,(()=>[]));const[C,J,N,z]=((t,e)=>!t||o(e.getMergeableContent)?[0,e.getContent,e.getTransactionChanges,([t,e])=>!w(t)||!w(e)]:[1,e.getMergeableContent,e.getTransactionMergeableChanges,([,[[,t],[,e]]])=>!w(t)||!w(e)])(u,t),D=async t=>(2!=S&&(S=1,await j.schedule((async()=>{await t(),S=0}))),j),E=s=>{var n;(C&&(n=s?.[0],e(n)==a)?1===s?.[1][2]?t.applyMergeableChanges:t.setMergeableContent:1===s?.[2]?t.applyChanges:t.setContent)(s)},j={load:async(e,a)=>await D((async()=>{try{E(await s())}catch(s){l?.(s),t.setContent([e,a])}})),startAutoLoad:async(t={},e={})=>(await j.stopAutoLoad().load(t,e),v=c((async(t,e)=>{const a=e?.();await D((async()=>{try{E(a??t?.()??await s())}catch(t){l?.(t)}}))})),j),stopAutoLoad:()=>(v&&(g(v),v=void 0),j),isAutoLoading:()=>!o(v),save:async t=>(1!=S&&(S=2,await j.schedule((async()=>{try{await n(J,t)}catch(t){l?.(t)}S=0}))),j),startAutoSave:async()=>(await j.stopAutoSave().save(),f=t.addDidFinishTransactionListener((()=>{const t=N();z(t)&&j.save((()=>t))})),j),stopAutoSave:()=>(r(f,t.delListener),f=void 0,j),isAutoSaving:()=>!o(f),schedule:async(...t)=>(((t,...e)=>{t.push(...e)})(A(L,p),...t),await(async()=>{if(!A(O,p)){for(M(O,p,1);!o(h=i(A(L,p)));)try{await h()}catch(t){l?.(t)}M(O,p,0)}})(),j),getStore:()=>t,destroy:()=>j.stopAutoLoad().stopAutoSave(),getStats:()=>({}),...d};return y(j)})(g,(async()=>h.size?[h.get(s).toJSON(),h.get(n).toJSON()]:void 0),(async(e,a)=>l.transact((()=>((e,a,c)=>{e.size||(e.set(s,new t.Map),e.set(n,new t.Map));const[i,g]=N(e),l=()=>{u=1};let u=1;if(r(c?.(),(([t,e])=>{u=0,v(t,((t,e)=>u?0:o(t)?i.delete(e):r(i.get(e),(e=>v(t,((t,a)=>u?0:o(t)?e.delete(a):r(e.get(a),(e=>v(t,((t,a)=>o(t)?e.delete(a):e.set(a,t)))),l)))),l))),v(e,((t,e)=>u?0:o(t)?g.delete(e):g.set(e,t)))})),u){const[t,e]=a();z(i,void 0,t,((t,e,a)=>z(i,e,a,((t,e,a)=>z(t,e,a,((t,e,a)=>{if(t.get(e)!==a)return t.set(e,a),1})))))),z(g,void 0,e,((t,e,a)=>{g.get(e)!==a&&g.set(e,a)}))}})(h,e,a)))),(t=>{const e=e=>t(void 0,(()=>((t,e)=>{if(1==c(e)&&(a=e[0].path,0==c(a)))return[t.get(s).toJSON(),t.get(n).toJSON(),1];var a;const[o,g]=N(t),l={},u={};return((t,e)=>{t.forEach((({path:t,changes:{keys:e}})=>i(t)==s?r(i(t),(a=>{const s=f(l,a,p),n=o.get(a);r(i(t),(t=>{const a=f(s,t,p),o=n.get(t);C(e,((t,{action:e})=>a[t]=e==J?null:o.get(t)))}),(()=>C(e,((t,{action:e})=>s[t]=e==J?null:n.get(t)?.toJSON()))))}),(()=>C(e,((t,{action:e})=>l[t]=e==J?null:o.get(t)?.toJSON())))):C(e,((t,{action:e})=>u[t]=e==J?null:g.get(t)))))})(e),[l,u,1]})(h,e)));return h.observeDeep(e),e}),(t=>{h.unobserveDeep(t)}),d,!1,{getYDoc:()=>l})};
|
|
Binary file
|
package/lib/cjs/persisters.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";const t=t=>typeof t,
|
|
1
|
+
"use strict";const t=t=>typeof t,a=t(""),e=t=>null==t,s=(t,a,s)=>e(t)?s?.():a(t),n=Object,o=t=>n.getPrototypeOf(t),r=n.keys,c=n.freeze,i=t=>(t=>!e(t)&&s(o(t),(t=>t==n.prototype||e(o(t))),(()=>!0)))(t)&&0==(t=>r(t).length)(t),y=t=>new Map(t),g=(t,a)=>t?.get(a),u=(t,a,s)=>{return e(s)?(n=t,o=a,n?.delete(o),t):t?.set(a,s);var n,o},d=(t,a,e,s)=>{var n,o;return n=t,o=a,n?.has(o)?s?.(g(t,a)):u(t,a,e()),g(t,a)},l=y(),p=y();exports.createCustomPersister=(n,o,r,y,h,v,w,C={},A=[])=>{let L,S,b,f=0;d(l,A,(()=>0)),d(p,A,(()=>[]));const[M,T,O,P]=((t,a)=>!t||e(a.getMergeableContent)?[0,a.getContent,a.getTransactionChanges,([t,a])=>!i(t)||!i(a)]:[1,a.getMergeableContent,a.getTransactionMergeableChanges,([,[[,t],[,a]]])=>!i(t)||!i(a)])(w,n),j=async t=>(2!=f&&(f=1,await m.schedule((async()=>{await t(),f=0}))),m),k=e=>{var s;(M&&(s=e?.[0],t(s)==a)?1===e?.[1][2]?n.applyMergeableChanges:n.setMergeableContent:1===e?.[2]?n.applyChanges:n.setContent)(e)},m={load:async(t,a)=>await j((async()=>{try{k(await o())}catch(e){v?.(e),n.setContent([t,a])}})),startAutoLoad:async(t={},a={})=>(await m.stopAutoLoad().load(t,a),S=y((async(t,a)=>{const e=a?.();await j((async()=>{try{k(e??t?.()??await o())}catch(t){v?.(t)}}))})),m),stopAutoLoad:()=>(S&&(h(S),S=void 0),m),isAutoLoading:()=>!e(S),save:async t=>(1!=f&&(f=2,await m.schedule((async()=>{try{await r(T,t)}catch(t){v?.(t)}f=0}))),m),startAutoSave:async()=>(await m.stopAutoSave().save(),b=n.addDidFinishTransactionListener((()=>{const t=O();P(t)&&m.save((()=>t))})),m),stopAutoSave:()=>(s(b,n.delListener),b=void 0,m),isAutoSaving:()=>!e(b),schedule:async(...t)=>(((t,...a)=>{t.push(...a)})(g(p,A),...t),await(async()=>{if(!g(l,A)){for(u(l,A,1);!e((t=g(p,A),L=t.shift()));)try{await L()}catch(t){v?.(t)}u(l,A,0)}var t})(),m),getStore:()=>n,destroy:()=>m.stopAutoLoad().stopAutoSave(),getStats:()=>({}),...C};return c(m)};
|
|
Binary file
|
package/lib/cjs/queries.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";const e=e=>typeof e,t=e(""),n=e(!0),s=e(0),r=e(e),o="Listener",a="Result",l="Ids",i="Table",d="Row",c=d+"Count",u=d+l,h="Sorted"+d+l,g="Cell",v=g+l,w=Math.max,L=Math.min,f=isFinite,R=e=>null==e,y=(e,t,n)=>R(e)?n?.():t(e),T=t=>e(t)==r,b=e=>Array.isArray(e),C=e=>e.length,p=()=>{},Q=(e,t)=>e.every(t),S=(e,t)=>e.forEach(t),m=e=>E(e,((e,t)=>e+t),0),I=e=>0==C(e),E=(e,t,n)=>e.reduce(t,n),M=(e,...t)=>e.push(...t),x=Object,D=x.entries,j=x.freeze,k=e=>e?.size??0,z=(e,t)=>e?.has(t)??!1,A=e=>R(e)||0==k(e),F=e=>[...e?.values()??[]],O=e=>e.clear(),W=(e,t)=>e?.forEach(t),q=(e,t)=>e?.delete(t),B=e=>new Map(e),G=(e,t)=>e?.get(t),H=(e,t)=>W(e,((e,n)=>t(n,e))),J=(e,t,n)=>R(n)?(q(e,t),e):e?.set(t,n),K=(e,t,n)=>(z(e,t)
|
|
1
|
+
"use strict";const e=e=>typeof e,t=e(""),n=e(!0),s=e(0),r=e(e),o="Listener",a="Result",l="Ids",i="Table",d="Row",c=d+"Count",u=d+l,h="Sorted"+d+l,g="Cell",v=g+l,w=Math.max,L=Math.min,f=isFinite,R=e=>null==e,y=(e,t,n)=>R(e)?n?.():t(e),T=t=>e(t)==r,b=e=>Array.isArray(e),C=e=>e.length,p=()=>{},Q=(e,t)=>e.every(t),S=(e,t)=>e.forEach(t),m=e=>E(e,((e,t)=>e+t),0),I=e=>0==C(e),E=(e,t,n)=>e.reduce(t,n),M=(e,...t)=>e.push(...t),x=Object,D=x.entries,j=x.freeze,k=e=>e?.size??0,z=(e,t)=>e?.has(t)??!1,A=e=>R(e)||0==k(e),F=e=>[...e?.values()??[]],O=e=>e.clear(),W=(e,t)=>e?.forEach(t),q=(e,t)=>e?.delete(t),B=e=>new Map(e),G=(e,t)=>e?.get(t),H=(e,t)=>W(e,((e,n)=>t(n,e))),J=(e,t,n)=>R(n)?(q(e,t),e):e?.set(t,n),K=(e,t,n,s)=>(z(e,t)?s?.(G(e,t)):J(e,t,n()),G(e,t)),N=(e,t,n,s,r=0)=>y((n?K:G)(e,t[r],r>C(t)-2?n:B),(o=>{if(r>C(t)-2)return s?.(o)&&J(e,t[r]),o;const a=N(o,t,n,s,r+1);return A(o)&&J(e,t[r]),a})),P=e=>new Set(b(e)||R(e)?e:[e]),U=(e,t)=>e?.add(t),V=B([["avg",[(e,t)=>m(e)/t,(e,t,n)=>e+(t-e)/(n+1),(e,t,n)=>e+(e-t)/(n-1),(e,t,n,s)=>e+(t-n)/s]],["max",[e=>w(...e),(e,t)=>w(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:w(t,e)]],["min",[e=>L(...e),(e,t)=>L(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:L(t,e)]],["sum",[e=>m(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,n)=>e-n+t]]]),X=((r,l)=>{const w=new WeakMap;return r=>{w.has(r)||w.set(r,(r=>{const l=r.createStore,w=l(),L=l(),m=B(),{addListener:E,callListeners:x,delListener:X}=L,[Y,Z,$,_,ee,,,te,,ne,se,re,oe,ae]=((e,t,n,s,r)=>{const o=e.hasRow,a=B(),l=B(),i=B(),d=B(),c=B(),u=B(),h=(t,n,...s)=>{const r=K(u,t,P);return S(s,(t=>U(r,t)&&n&&e.callListener(t))),s},g=(t,...n)=>y(G(u,t),(s=>{S(I(n)?F(s):n,(t=>{e.delListener(t),q(s,t)})),A(s)&&J(u,t)})),v=(e,t)=>{J(a,e,t),z(l,e)||(J(l,e,!0),J(d,e,B()),J(c,e,B()),r(i))},w=e=>{J(a,e),J(l,e),J(d,e),J(c,e),g(e),r(i)};return[()=>e,()=>{return e=a,[...e?.keys()??[]];var e},e=>H(l,e),e=>z(l,e),e=>G(a,e),e=>G(l,e),(e,t)=>J(l,e,t),v,(t,s,r,a,l)=>{v(t,s);const i=B(),u=B(),w=G(d,t),L=G(c,t),f=t=>{const r=n=>e.getCell(s,t,n),d=G(w,t),c=o(s,t)?n(a(r,t)):void 0;var h,g;if(d===c||b(d)&&b(c)&&(g=c,C(h=d)===C(g)&&Q(h,((e,t)=>g[t]===e)))||J(i,t,[d,c]),!R(l)){const e=G(L,t),n=o(s,t)?l(r,t):void 0;e!=n&&J(u,t,n)}},y=e=>{r((()=>{W(i,(([,e],t)=>J(w,t,e))),W(u,((e,t)=>J(L,t,e)))}),i,u,w,L,e),O(i),O(u)};H(w,f),e.hasTable(s)&&S(e.getRowIds(s),(e=>{z(w,e)||f(e)})),y(!0),g(t),h(t,0,e.addRowListener(s,null,((e,t,n)=>f(n))),e.addTableListener(s,(()=>y())))},w,e=>s(e,i),()=>H(u,w),h,g]})(r,0,p,E,x),le=(e,t,...n)=>S(n,(n=>U(K(K(m,t,B),e,P),n))),ie=e=>{y(G(m,e),(e=>{H(e,((e,t)=>W(t,(t=>e.delListener(t))))),O(e)})),S([L,w],(t=>t.delTable(e)))},de=(e,t,n)=>le(t,e,t.addStartTransactionListener(n.startTransaction),t.addDidFinishTransactionListener((()=>n.finishTransaction()))),ce={setQueryDefinition:(o,a,l)=>{te(o,a),ie(o);const i=[],d=[[null,[a,null,null,[],B()]]],c=[],u=[],h=[];l({select:(e,t)=>{const n=T(e)?[C(i)+"",e]:[R(t)?e:t,n=>n(e,t)];return M(i,n),{as:e=>n[0]=e}},join:(e,t,n)=>{const s=R(n)||T(t)?null:t,r=R(s)?t:n,o=[e,[e,s,T(r)?r:e=>e(r),[],B()]];return M(d,o),{as:e=>o[0]=e}},where:(e,t,n)=>M(c,T(e)?e:R(n)?n=>n(e)===t:s=>s(e,t)===n),group:(e,t,n,s,r)=>{const o=[e,[e,T(t)?[t,n,s,r]:G(V,t)??[(e,t)=>t]]];return M(u,o),{as:e=>o[0]=e}},having:(e,t)=>M(h,T(e)?e:n=>n(e)===t)});const g=B(i);if(A(g))return ce;const v=B(d);H(v,((e,[,t])=>y(G(v,t),(({3:t})=>R(e)?0:M(t,e)))));const b=B(u);let p=w;if(A(b)&&I(h))p=L;else{de(o,p,L);const r=B();H(b,((e,[t,n])=>U(K(r,t,P),[e,n])));const a=P();H(g,(e=>z(r,e)?0:U(a,e)));const l=B(),i=(a,l,i,d)=>y(a,(([c,u,g,v])=>{H(l,((o,[a])=>{const l=K(c,o,B),u=G(l,i),h=d?void 0:a;if(u!==h){const a=P([[u,h]]),d=k(l);J(l,i,h),W(G(r,o),(([r,o])=>{const i=((e,t,n,s,r,o=!1)=>{if(A(n))return;const[a,l,i,d]=r;return o||=R(e),W(s,(([n,s])=>{o||(e=R(n)?l?.(e,s,t++):R(s)?i?.(e,n,t--):d?.(e,s,n,t),o||=R(e))})),o?a(F(n),k(n)):e})(v[r],d,l,a,o);v[r]=R((r=>{const o=e(r);return(e=>e==t||e==n)(o)||o==s&&f(r)?o:void 0})(i))?null:i}))}})),A(u)||!Q(h,(e=>e((e=>v[e]))))?L.delRow(o,g):R(g)?a[2]=L.addRow(o,v):L.setRow(o,g,v)}));le(p,o,p.addRowListener(o,null,((e,t,n,s)=>{const d=[],c=[],u=B(),h=p.hasRow(o,n);let g=!h;W(a,(e=>{const[t,r,a]=s(o,n,e);M(d,r),M(c,a),g||=t})),H(r,(e=>{const[t,,r]=s(o,n,e);(g||t)&&J(u,e,[r])})),g&&i(N(l,d,void 0,(([,e])=>(q(e,n),A(e)))),u,n,1),h&&i(N(l,c,(()=>{const e={};return W(a,(t=>e[t]=p.getCell(o,n,t))),[B(),P(),void 0,e]}),(([,e])=>{U(e,n)})),u,n)})))}de(o,r,p);const m=(e,t,n,s)=>{const l=e=>r.getCell(t,n,e);S(s,(t=>{const[n,,s,a,i]=G(v,t),d=s?.(l,e),[c,u]=G(i,e)??[];d!=c&&(R(u)||ae(o,u),J(i,e,R(d)?null:[d,...oe(o,1,r.addRowListener(n,d,(()=>m(e,n,d,a))))]))})),(e=>{const t=(t,n)=>r.getCell(...R(n)?[a,e,t]:t===a?[a,e,n]:[G(v,t)?.[0],G(G(v,t)?.[4],e)?.[0],n]);p.transaction((()=>Q(c,(e=>e(t)))?H(g,((n,s)=>((e,t,n,s,r)=>R(r)?e.delCell(t,n,s,!0):e.setCell(t,n,s,r))(p,o,e,n,s(t,e)))):p.delRow(o,e)))})(e)},{3:E}=G(v,null);return p.transaction((()=>oe(o,1,r.addRowListener(a,null,((e,t,n)=>{r.hasRow(a,n)?m(n,a,n,E):(p.delRow(o,n),W(v,(({4:e})=>y(G(e,n),(([,t])=>{ae(o,t),J(e,n)})))))}))))),ce},delQueryDefinition:e=>(ie(e),ne(e),ce),getStore:Y,getQueryIds:Z,forEachQuery:$,hasQuery:_,getTableId:ee,addQueryIdsListener:e=>se((()=>e(ce))),delListener:e=>(X(e),ce),destroy:re,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:n,...s}=L.getListenerStats();return s}};var ue;return ue=([e,t],n)=>{S(e?["get","has","forEach"]:["get"],(e=>ce[e+a+n]=(...t)=>L[e+n](...t))),ce["add"+a+n+o]=(...e)=>{return L["add"+n+o](...(s=e,0,r=t,s.slice(0,r)),((n,...s)=>e[t](ce,...s)),!0);var s,r}},((e,t)=>{D({[i]:[1,1],[i+v]:[0,1],[c]:[0,1],[u]:[0,1],[h]:[0,5],[d]:[1,2],[v]:[0,2],[g]:[1,3]}).map(t)})(0,(([e,t])=>ue(t,e))),j(ce)})(r));return w.get(r)}})();exports.createQueries=X;
|
package/lib/cjs/queries.cjs.gz
CHANGED
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";const e=e=>typeof e,t="",n=e(t),s=e=>null==e,r=(e,t,n)=>s(e)?n?.():t(e),o=e=>Array.isArray(e),i=e=>e.length,a=(e,t)=>e.forEach(t),l=(e,...t)=>e.push(...t),d=Object.freeze,c=(e,t)=>e?.has(t)??!1,u=e=>s(e)||0==(e=>e?.size??0)(e),R=e=>[...e?.values()??[]],h=e=>e.clear(),f=(e,t)=>e?.forEach(t),L=(e,t)=>e?.delete(t),g=e=>new Map(e),w=(e,t)=>e?.get(t),p=(e,t)=>f(e,((e,n)=>t(n,e))),I=(e,t,n)=>s(n)?(L(e,t),e):e?.set(t,n),v=(e,t,n)=>(c(e,t)
|
|
1
|
+
"use strict";const e=e=>typeof e,t="",n=e(t),s=e=>null==e,r=(e,t,n)=>s(e)?n?.():t(e),o=e=>Array.isArray(e),i=e=>e.length,a=(e,t)=>e.forEach(t),l=(e,...t)=>e.push(...t),d=Object.freeze,c=(e,t)=>e?.has(t)??!1,u=e=>s(e)||0==(e=>e?.size??0)(e),R=e=>[...e?.values()??[]],h=e=>e.clear(),f=(e,t)=>e?.forEach(t),L=(e,t)=>e?.delete(t),g=e=>new Map(e),w=(e,t)=>e?.get(t),p=(e,t)=>f(e,((e,n)=>t(n,e))),I=(e,t,n)=>s(n)?(L(e,t),e):e?.set(t,n),v=(e,t,n,s)=>(c(e,t)?s?.(w(e,t)):I(e,t,n()),w(e,t)),y=(e,t,n,s,o=0)=>r((n?v:w)(e,t[o],o>i(t)-2?n:g),(r=>{if(o>i(t)-2)return s?.(r)&&I(e,t[o]),r;const a=y(r,t,n,s,o+1);return u(r)&&I(e,t[o]),a})),b=e=>new Set(o(e)||s(e)?e:[e]),k=(e,t)=>e?.add(t),E=/^\d+$/,T=((T,m)=>{const S=new WeakMap;return T=>{S.has(T)||S.set(T,(T=>{const m=g(),S=g(),z=g(),A=g(),[D,M,j]=(e=>{let n;const[o,d]=(()=>{const e=[];let n=0;return[s=>(s?e.shift():null)??t+n++,t=>{E.test(t)&&i(e)<1e3&&l(e,t)}]})(),c=g();return[(e,s,r,i=[],a=(()=>[]))=>{n??=P;const l=o(1);return I(c,l,[e,s,r,i,a]),k(y(s,r??[t],b),l),l},(e,s,...r)=>a(((e,n=[t])=>{const s=[],r=(e,t)=>t==i(n)?l(s,e):null===n[t]?f(e,(e=>r(e,t+1))):a([n[t],null],(n=>r(w(e,n),t+1)));return r(e,0),s})(e,s),(e=>f(e,(e=>w(c,e)[0](n,...s??[],...r))))),e=>r(w(c,e),(([,n,s])=>(y(n,s??[t],void 0,(t=>(L(t,e),u(t)?1:0))),I(c,e),d(e),s))),e=>r(w(c,e),(([e,,t=[],r,o])=>{const l=(...d)=>{const c=i(d);c==i(t)?e(n,...d,...o(d)):s(t[c])?a(r[c]?.(...d)??[],(e=>l(...d,e))):l(...d,t[c])};l()}))]})(),[x,C,O,W,$,q,,,B,F,G,H]=((e,n,l,d,y)=>{const E=e.hasRow,T=g(),m=g(),S=g(),z=g(),A=g(),D=g(),M=(t,n,...s)=>{const r=v(D,t,b);return a(s,(t=>k(r,t)&&n&&e.callListener(t))),s},j=(t,...n)=>r(w(D,t),(s=>{a(0==i(n)?R(s):n,(t=>{e.delListener(t),L(s,t)})),u(s)&&I(D,t)})),x=(e,t)=>{I(T,e,t),c(m,e)||(I(m,e,[g(),g(),g(),g()]),I(z,e,g()),I(A,e,g()),y(S))},C=e=>{I(T,e),I(m,e),I(z,e),I(A,e),j(e),y(S)};return[()=>e,()=>{return e=T,[...e?.keys()??[]];var e},e=>p(m,e),e=>c(m,e),e=>w(T,e),e=>w(m,e),(e,t)=>I(m,e,t),x,(n,r,l,d,u)=>{x(n,r);const R=g(),L=g(),v=w(z,n),y=w(A,n),b=n=>{const a=t=>e.getCell(r,n,t),l=w(v,n),c=E(r,n)?(h=d(a,n),s(h)?void 0:h+t):void 0;var h,f,g,p;if(l===c||o(l)&&o(c)&&(g=c,i(f=l)===i(g)&&(p=(e,t)=>g[t]===e,f.every(p)))||I(R,n,[l,c]),!s(u)){const e=w(y,n),t=E(r,n)?u(a,n):void 0;e!=t&&I(L,n,t)}},k=e=>{l((()=>{f(R,(([,e],t)=>I(v,t,e))),f(L,((e,t)=>I(y,t,e)))}),R,L,v,y,e),h(R),h(L)};p(v,b),e.hasTable(r)&&a(e.getRowIds(r),(e=>{c(v,e)||b(e)})),k(!0),j(n),M(n,0,e.addRowListener(r,null,((e,t,n)=>b(n))),e.addTableListener(r,(()=>k())))},C,e=>d(e,S),()=>p(D,C),M,j]})(T,0,0,D,M),J=(e,t,n)=>r(q(e),(([r,,o])=>{if(!c(o,t)){const i=b();if($(e)!=N(e))k(i,t);else{let e=t;for(;!s(e)&&!c(i,e);)k(i,e),e=w(r,e)}if(n)return i;I(o,t,i)}return w(o,t)})),K=(e,t)=>r(q(e),(([,,e])=>I(e,t))),N=e=>w(m,e),P={setRelationshipDefinition:(o,i,a,l)=>{return I(m,o,a),B(o,i,((e,t)=>{const n=b(),i=b(),a=b(),[l,d]=q(o);f(t,(([e,t],R)=>{s(e)||(k(i,e),r(w(d,e),(t=>{L(t,R),u(t)&&I(d,e)}))),s(t)||(k(i,t),c(d,t)||I(d,t,b()),k(w(d,t),R)),k(n,R),I(l,R,t),p(w(A,o),(e=>{c(J(o,e),R)&&k(a,e)}))})),e(),f(n,(e=>M(S,[o,e]))),f(i,(e=>M(z,[o,e]))),f(a,(e=>{K(o,e),M(A,[o,e])}))}),e(d=l)==n?e=>e(d):d??(()=>t)),P;var d},delRelationshipDefinition:e=>(I(m,e),F(e),P),getStore:x,getRelationshipIds:C,forEachRelationship:e=>O((t=>e(t,(e=>T.forEachRow($(t),e))))),hasRelationship:W,getLocalTableId:$,getRemoteTableId:N,getRemoteRowId:(e,t)=>w(q(e)?.[0],t),getLocalRowIds:(e,t)=>R(w(q(e)?.[1],t)),getLinkedRowIds:(e,t)=>s(q(e))?[t]:R(J(e,t,!0)),addRelationshipIdsListener:G,addRemoteRowIdListener:(e,t,n)=>D(n,S,[e,t]),addLocalRowIdsListener:(e,t,n)=>D(n,z,[e,t]),addLinkedRowIdsListener:(e,t,n)=>(J(e,t),D(n,A,[e,t])),delListener:e=>(K(...j(e)??[]),P),destroy:H,getListenerStats:()=>({})};return d(P)})(T));return S.get(T)}})();exports.createRelationships=T;
|
|
Binary file
|
package/lib/cjs/store.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";const e=e=>typeof e,t="",s=e(t),n=e(!0),a=e(0),l=e(e),o="type",r="default",c="Has",i="Ids",d="Table",u=d+"s",h=d+i,f="Row",g=f+"Count",T=f+i,b="Cell",V=b+i,S="Value",C=S+"s",v=S+i,w=e=>t+e,y=isFinite,m=e=>null==e,p=(e,t,s)=>m(e)?s?.():t(e),L=e=>e==s||e==n,R=t=>e(t)==l,I=(e,t,s)=>e.slice(t,s),J=e=>e.length,E=(e,t)=>e.forEach(t),F=(e,t)=>e.map(t),O=(e,...t)=>e.push(...t),z=Object,P=e=>z.getPrototypeOf(e),k=z.entries,A=z.keys,M=z.isFrozen,N=z.freeze,j=e=>!m(e)&&p(P(e),(e=>e==z.prototype||m(P(e))),(()=>!0)),x=(e,t)=>t in e,D=(e,t)=>(delete e[t],e),H=(e,t)=>F(k(e),(([e,s])=>t(s,e))),W=e=>j(e)&&0==(e=>J(A(e)))(e),$=e=>e?.size??0,q=(e,t)=>e?.has(t)??!1,B=e=>m(e)||0==$(e),G=e=>e.clear(),K=(e,t)=>e?.forEach(t),Q=(e,t)=>e?.delete(t),U=e=>new Map(e),X=e=>[...e?.keys()??[]],Y=(e,t)=>e?.get(t),Z=(e,t)=>K(e,((e,s)=>t(s,e))),_=(e,t,s)=>m(s)?(Q(e,t),e):e?.set(t,s),ee=(e,t,s)=>(q(e,t)||_(e,t,s()),Y(e,t)),te=(e,t,s,n=_)=>(H(t,((t,n)=>s(e,n,t))),Z(e,(s=>x(t,s)?0:n(e,s))),e),se=(e,t,s)=>{const n={};return K(e,((e,a)=>{const l=t?t(e,a):e;!s?.(l,e)&&(n[a]=l)})),n},ne=(e,t,s)=>se(e,(e=>se(e,t,s)),W),ae=(e,t,s)=>se(e,(e=>ne(e,t,s)),W),le=(e,t)=>{const s=U();return K(e,((e,n)=>s.set(n,t?.(e)??e))),s},oe=e=>le(e,le),re=e=>le(e,oe),ce=(e,t,s,n,a=0)=>p((s?ee:Y)(e,t[a],a>J(t)-2?s:U),(l=>{if(a>J(t)-2)return n?.(l)&&_(e,t[a]),l;const o=ce(l,t,s,n,a+1);return B(l)&&_(e,t[a]),o})),ie=e=>new Set(Array.isArray(e)||m(e)?e:[e]),de=(e,t)=>e?.add(t),ue=/^\d+$/,he=()=>{const e=[];let s=0;return[n=>(n?e.shift():null)??t+s++,t=>{ue.test(t)&&J(e)<1e3&&O(e,t)}]},fe=e=>[e,e],ge=()=>[U(),U()],Te=e=>[...e],be=([e,t])=>e===t,Ve=t=>{const s=e(t);return L(s)||s==a&&y(t)?s:void 0},Se=(e,t,s,n,a)=>m(a)?e.delCell(t,s,n,!0):e.setCell(t,s,n,a),Ce=(e,t,s)=>m(s)?e.delValue(t):e.setValue(t,s),ve=e=>JSON.stringify(e,((e,t)=>t instanceof Map?z.fromEntries([...t]):t)),we=JSON.parse,ye=(e,t,s)=>m(e)||!j(e)||W(e)||M(e)?(s?.(),!1):(H(e,((s,n)=>{t(s,n)||D(e,n)})),!W(e)),me=(e,t,s)=>_(e,t,Y(e,t)==-s?void 0:s),pe=()=>{let e,s,n=!1,l=!1,i=0,y=[];const z=U(),P=U(),k=U(),A=U(),M=U(),j=U(),ue=U(),Le=U(),Re=U(),Ie=U(),Je=U(),Ee=U(),Fe=U(),Oe=U(),ze=ie(),Pe=U(),ke=U(),Ae=U(),Me=U(),Ne=ge(),je=ge(),xe=ge(),De=ge(),He=ge(),We=ge(),$e=ge(),qe=ge(),Be=ge(),Ge=ge(),Ke=ge(),Qe=ge(),Ue=ge(),Xe=ge(),Ye=ge(),Ze=ge(),_e=ge(),et=ge(),tt=ge(),st=ge(),nt=ge(),at=ge(),lt=U(),ot=ge(),[rt,ct,it,dt]=(e=>{let s;const[n,a]=he(),l=U();return[(e,a,o,r=[],c=(()=>[]))=>{s??=Fs;const i=n(1);return _(l,i,[e,a,o,r,c]),de(ce(a,o??[t],ie),i),i},(e,n,...a)=>E(((e,s=[t])=>{const n=[],a=(e,t)=>t==J(s)?O(n,e):null===s[t]?K(e,(e=>a(e,t+1))):E([s[t],null],(s=>a(Y(e,s),t+1)));return a(e,0),n})(e,n),(e=>K(e,(e=>Y(l,e)[0](s,...n??[],...a))))),e=>p(Y(l,e),(([,s,n])=>(ce(s,n??[t],void 0,(t=>(Q(t,e),B(t)?1:0))),_(l,e),a(e),n))),e=>p(Y(l,e),(([e,,t=[],n,a])=>{const l=(...o)=>{const r=J(o);r==J(t)?e(s,...o,...a(o)):m(t[r])?E(n[r]?.(...o)??[],(e=>l(...o,e))):l(...o,t[r])};l()}))]})(),ut=e=>{if(!ye(e,((e,t)=>[o,r].includes(t))))return!1;const t=e[o];return!(!L(t)&&t!=a||(Ve(e[r])!=t&&D(e,r),0))},ht=(t,s)=>(!e||q(Je,s)||Wt(s))&&ye(t,((e,t)=>ft(s,t,e)),(()=>Wt(s))),ft=(e,t,s,n)=>ye(n?s:Vt(s,e,t),((n,a)=>p(gt(e,t,a,n),(e=>(s[a]=e,!0)),(()=>!1))),(()=>Wt(e,t))),gt=(t,s,n,a)=>e?p(Y(Y(Je,t),n),(e=>Ve(a)!=e[o]?Wt(t,s,n,a,e[r]):a),(()=>Wt(t,s,n,a))):m(Ve(a))?Wt(t,s,n,a):a,Tt=(e,t)=>ye(t?e:St(e),((t,s)=>p(bt(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>$t())),bt=(e,t)=>s?p(Y(Fe,e),(s=>Ve(t)!=s[o]?$t(e,t,s[r]):t),(()=>$t(e,t))):m(Ve(t))?$t(e,t):t,Vt=(e,t,s)=>(p(Y(Ee,t),(([n,a])=>{K(n,((t,s)=>{x(e,s)||(e[s]=t)})),K(a,(n=>{x(e,n)||Wt(t,s,n)}))})),e),St=e=>(s&&(K(Oe,((t,s)=>{x(e,s)||(e[s]=t)})),K(ze,(t=>{x(e,t)||$t(t)}))),e),Ct=e=>te(Je,e,((e,t,s)=>{const n=U(),a=ie();te(ee(Je,t,U),s,((e,t,s)=>{_(e,t,s),p(s[r],(e=>_(n,t,e)),(()=>de(a,t)))})),_(Ee,t,[n,a])}),((e,t)=>{_(Je,t),_(Ee,t)})),vt=e=>te(Fe,e,((e,t,s)=>{_(Fe,t,s),p(s[r],(e=>_(Oe,t,e)),(()=>de(ze,t)))}),((e,t)=>{_(Fe,t),_(Oe,t),Q(ze,t)})),wt=e=>W(e)?ws():bs(e),yt=e=>te(Ae,e,((e,t,s)=>mt(t,s)),((e,t)=>zt(t))),mt=(e,t)=>te(ee(Ae,e,(()=>(Mt(e,1),_(Pe,e,he()),_(ke,e,U()),U()))),t,((t,s,n)=>pt(e,t,s,n)),((t,s)=>Pt(e,t,s))),pt=(e,t,s,n,a)=>te(ee(t,s,(()=>(Nt(e,s,1),U()))),n,((t,n,a)=>Lt(e,s,t,n,a)),((n,l)=>kt(e,t,s,n,l,a))),Lt=(e,t,s,n,a)=>{q(s,n)||jt(e,t,n,1);const l=Y(s,n);a!==l&&(xt(e,t,n,l,a),_(s,n,a))},Rt=(e,t,s,n,a)=>p(Y(t,s),(t=>Lt(e,s,t,n,a)),(()=>pt(e,t,s,Vt({[n]:a},e,s)))),It=e=>W(e)?ps():Vs(e),Jt=e=>te(Me,e,((e,t,s)=>Et(t,s)),((e,t)=>At(t))),Et=(e,t)=>{q(Me,e)||Dt(e,1);const s=Y(Me,e);t!==s&&(Ht(e,s,t),_(Me,e,t))},Ft=(e,t)=>{const[s]=Y(Pe,e),n=s(t);return q(Y(Ae,e),n)?Ft(e,t):n},Ot=e=>Y(Ae,e)??mt(e,{}),zt=e=>mt(e,{}),Pt=(e,t,s)=>{const[,n]=Y(Pe,e);n(s),pt(e,t,s,{},!0)},kt=(e,t,s,n,a,l)=>{const o=Y(Y(Ee,e)?.[0],a);if(!m(o)&&!l)return Lt(e,s,n,a,o);const r=t=>{xt(e,s,t,Y(n,t)),jt(e,s,t,-1),_(n,t)};m(o)?r(a):Z(n,r),B(n)&&(Nt(e,s,-1),B(_(t,s))&&(Mt(e,-1),_(Ae,e),_(Pe,e),_(ke,e)))},At=e=>{const t=Y(Oe,e);if(!m(t))return Et(e,t);Ht(e,Y(Me,e)),Dt(e,-1),_(Me,e)},Mt=(e,t)=>me(z,e,t),Nt=(e,t,s)=>me(ee(A,e,U),t,s)&&_(k,e,ee(k,e,(()=>0))+s),jt=(e,t,s,n)=>{const a=Y(ke,e),l=Y(a,s)??0;(0==l&&1==n||1==l&&-1==n)&&me(ee(P,e,U),s,n),_(a,s,l!=-n?l+n:null),me(ee(ee(M,e,U),t,U),s,n)},xt=(e,t,s,n,a)=>ee(ee(ee(j,e,U),t,U),s,(()=>[n,0]))[1]=a,Dt=(e,t)=>me(ue,e,t),Ht=(e,t,s)=>ee(Le,e,(()=>[t,0]))[1]=s,Wt=(e,t,s,n,a)=>(O(ee(ee(ee(Re,e,U),t,U),s,(()=>[])),n),a),$t=(e,t,s)=>(O(ee(Ie,e,(()=>[])),t),s),qt=(e,t,s)=>p(Y(Y(Y(j,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...fe(ls(e,t,s))])),Bt=e=>p(Y(Le,e),(([e,t])=>[!0,e,t]),(()=>[!1,...fe(cs(e))])),Gt=e=>B(Re)||B(Ze[e])?0:K(e?re(Re):Re,((t,s)=>K(t,((t,n)=>K(t,((t,a)=>ct(Ze[e],[s,n,a],t))))))),Kt=e=>B(Ie)||B(_e[e])?0:K(e?le(Ie):Ie,((t,s)=>ct(_e[e],[s],t))),Qt=(e,t,s,n)=>{if(!B(e))return ct(t,n,(()=>se(e))),Z(e,((e,t)=>ct(s,[...n??[],e],1==t))),1},Ut=e=>{const t=is();t!=n&&ct(Ne[e],void 0,t);const s=B(Ge[e]),a=B(Ue[e])&&B(Xe[e])&&B(Be[e])&&B(Ke[e])&&B(We[e])&&B($e[e])&&B(qe[e])&&s&&B(xe[e])&&B(De[e]),l=B(Ye[e])&&B(Qe[e])&&B(He[e])&&B(je[e]);if(!a||!l){const t=e?[le(z),oe(P),le(k),oe(A),re(M),re(j)]:[z,P,k,A,M,j];if(!a){Qt(t[0],xe[e],De[e]),K(t[1],((t,s)=>Qt(t,We[e],$e[e],[s]))),K(t[2],((t,s)=>{0!=t&&ct(qe[e],[s],ts(s))}));const n=ie();K(t[3],((t,a)=>{Qt(t,Be[e],Ke[e],[a])&&!s&&(ct(Ge[e],[a,null]),de(n,a))})),s||K(t[5],((t,s)=>{if(!q(n,s)){const n=ie();K(t,(e=>K(e,(([t,s],a)=>s!==t?de(n,a):Q(e,a))))),K(n,(t=>ct(Ge[e],[s,t])))}})),K(t[4],((t,s)=>K(t,((t,n)=>Qt(t,Ue[e],Xe[e],[s,n])))))}if(!l){let s;K(t[5],((t,n)=>{let a;K(t,((t,l)=>{let o;K(t,(([t,r],c)=>{r!==t&&(ct(Ye[e],[n,l,c],r,t,qt),s=a=o=1)})),o&&ct(Qe[e],[n,l],qt)})),a&&ct(He[e],[n],qt)})),s&&ct(je[e],void 0,qt)}}},Xt=e=>{const t=gs();t!=l&&ct(et[e],void 0,t);const s=B(st[e])&&B(nt[e]),n=B(at[e])&&B(tt[e]);if(!s||!n){const t=e?[le(ue),le(Le)]:[ue,Le];if(s||Qt(t[0],st[e],nt[e]),!n){let s;K(t[1],(([t,n],a)=>{n!==t&&(ct(at[e],[a],n,t,Bt),s=1)})),s&&ct(tt[e],void 0,Bt)}}},Yt=(e,...t)=>(Is((()=>e(...F(t,w)))),Fs),Zt=()=>ae(Ae),_t=()=>X(Ae),es=e=>X(Y(ke,w(e))),ts=e=>$(Y(Ae,w(e))),ss=e=>X(Y(Ae,w(e))),ns=(e,t,s,n=0,a)=>{return F(I((o=Y(Ae,w(e)),r=(e,s)=>[m(t)?s:Y(e,w(t)),s],l=([e],[t])=>((e??0)<(t??0)?-1:1)*(s?-1:1),F([...o?.entries()??[]],(([e,t])=>r(t,e))).sort(l)),n,m(a)?a:n+a),(([,e])=>e));var l,o,r},as=(e,t)=>X(Y(Y(Ae,w(e)),w(t))),ls=(e,t,s)=>Y(Y(Y(Ae,w(e)),w(t)),w(s)),os=()=>se(Me),rs=()=>X(Me),cs=e=>Y(Me,w(e)),is=()=>!B(Ae),ds=e=>q(Ae,w(e)),us=(e,t)=>q(Y(ke,w(e)),w(t)),hs=(e,t)=>q(Y(Ae,w(e)),w(t)),fs=(e,t,s)=>q(Y(Y(Ae,w(e)),w(t)),w(s)),gs=()=>!B(Me),Ts=e=>q(Me,w(e)),bs=e=>Yt((()=>(e=>ye(e,ht,Wt))(e)?yt(e):0)),Vs=e=>Yt((()=>Tt(e)?Jt(e):0)),Ss=e=>{try{wt(we(e))}catch{}return Fs},Cs=t=>Yt((()=>{if((e=ye(t,(e=>ye(e,ut))))&&(Ct(t),!B(Ae))){const e=Zt();ws(),bs(e)}})),vs=e=>Yt((()=>{if(s=(e=>ye(e,ut))(e)){const t=os();Rs(),ps(),s=!0,vt(e),Vs(t)}})),ws=()=>Yt((()=>yt({}))),ys=e=>Yt((e=>q(Ae,e)?zt(e):0),e),ms=(e,t)=>Yt(((e,t)=>p(Y(Ae,e),(s=>q(s,t)?Pt(e,s,t):0))),e,t),ps=()=>Yt((()=>Jt({}))),Ls=()=>Yt((()=>{Ct({}),e=!1})),Rs=()=>Yt((()=>{vt({}),s=!1})),Is=(e,t)=>{if(-1!=i){Js();const s=e();return Es(t),s}},Js=()=>(-1!=i&&i++,1==i&&ct(lt,void 0),Fs),Es=e=>(i>0&&(i--,0==i&&(i=1,Gt(1),B(j)||Ut(1),Kt(1),B(Le)||Xt(1),e?.(Fs)&&(K(j,((e,t)=>K(e,((e,s)=>K(e,(([e],n)=>Se(Fs,t,s,n,e))))))),G(j),K(Le,(([e],t)=>Ce(Fs,t,e))),G(Le)),ct(ot[0],void 0),i=-1,Gt(0),B(j)||Ut(0),Kt(0),B(Le)||Xt(0),y[0]?.(Fs),ct(ot[1],void 0),y[1]?.(Fs),i=0,n=is(),l=gs(),E([z,P,k,A,M,j,Re,ue,Le,Ie],G))),Fs),Fs={getContent:()=>[Zt(),os()],getTables:Zt,getTableIds:_t,getTable:e=>ne(Y(Ae,w(e))),getTableCellIds:es,getRowCount:ts,getRowIds:ss,getSortedRowIds:ns,getRow:(e,t)=>se(Y(Y(Ae,w(e)),w(t))),getCellIds:as,getCell:ls,getValues:os,getValueIds:rs,getValue:cs,hasTables:is,hasTable:ds,hasTableCell:us,hasRow:hs,hasCell:fs,hasValues:gs,hasValue:Ts,getTablesJson:()=>ve(Ae),getValuesJson:()=>ve(Me),getJson:()=>ve([Ae,Me]),getTablesSchemaJson:()=>ve(Je),getValuesSchemaJson:()=>ve(Fe),getSchemaJson:()=>ve([Je,Fe]),hasTablesSchema:()=>e,hasValuesSchema:()=>s,setContent:([e,t])=>Yt((()=>{(W(e)?ws:bs)(e),(W(t)?ps:Vs)(t)})),setTables:bs,setTable:(e,t)=>Yt((e=>ht(t,e)?mt(e,t):0),e),setRow:(e,t,s)=>Yt(((e,t)=>ft(e,t,s)?pt(e,Ot(e),t,s):0),e,t),addRow:(e,t,s=!0)=>Is((()=>{let n;return ft(e,n,t)&&(e=w(e),pt(e,Ot(e),n=Ft(e,s?1:0),t)),n})),setPartialRow:(e,t,s)=>Yt(((e,t)=>{if(ft(e,t,s,1)){const n=Ot(e);H(s,((s,a)=>Rt(e,n,t,a,s)))}}),e,t),setCell:(e,t,s,n)=>Yt(((e,t,s)=>p(gt(e,t,s,R(n)?n(ls(e,t,s)):n),(n=>Rt(e,Ot(e),t,s,n)))),e,t,s),setValues:Vs,setPartialValues:e=>Yt((()=>Tt(e,1)?H(e,((e,t)=>Et(t,e))):0)),setValue:(e,t)=>Yt((e=>p(bt(e,R(t)?t(cs(e)):t),(t=>Et(e,t)))),e),applyChanges:e=>Yt((()=>{H(e[0],((e,t)=>m(e)?ys(t):H(e,((e,s)=>m(e)?ms(t,s):H(e,((e,n)=>Se(Fs,t,s,n,e))))))),H(e[1],((e,t)=>Ce(Fs,t,e)))})),setTablesJson:Ss,setValuesJson:e=>{try{It(we(e))}catch{}return Fs},setJson:e=>Yt((()=>{try{const[t,s]=we(e);wt(t),It(s)}catch{Ss(e)}})),setTablesSchema:Cs,setValuesSchema:vs,setSchema:(e,t)=>Yt((()=>{Cs(e),vs(t)})),delTables:ws,delTable:ys,delRow:ms,delCell:(e,t,s,n)=>Yt(((e,t,s)=>p(Y(Ae,e),(a=>p(Y(a,t),(l=>q(l,s)?kt(e,a,t,l,s,n):0))))),e,t,s),delValues:ps,delValue:e=>Yt((e=>q(Me,e)?At(e):0),e),delTablesSchema:Ls,delValuesSchema:Rs,delSchema:()=>Yt((()=>{Ls(),Rs()})),transaction:Is,startTransaction:Js,getTransactionChanges:()=>[se(j,((e,t)=>-1===Y(z,t)?void 0:se(e,((e,s)=>-1===Y(Y(A,t),s)?void 0:se(e,(([,e])=>e),((e,t)=>be(t)))),W)),W),se(Le,(([,e])=>e),((e,t)=>be(t)))],getTransactionLog:()=>[!B(j),!B(Le),ae(j,Te,be),ae(Re),se(Le,Te,be),se(Ie),se(z),ne(A),ae(M),se(ue)],finishTransaction:Es,forEachTable:e=>K(Ae,((t,s)=>e(s,(e=>K(t,((t,s)=>e(s,(e=>Z(t,e))))))))),forEachTableCell:(e,t)=>Z(Y(ke,w(e)),t),forEachRow:(e,t)=>K(Y(Ae,w(e)),((e,s)=>t(s,(t=>Z(e,t))))),forEachCell:(e,t,s)=>Z(Y(Y(Ae,w(e)),w(t)),s),forEachValue:e=>Z(Me,e),addSortedRowIdsListener:(e,t,s,n,a,l,o)=>{let r=ns(e,t,s,n,a);return rt((()=>{const o=ns(e,t,s,n,a);var c,i,d;i=r,J(c=o)===J(i)&&(d=(e,t)=>i[t]===e,c.every(d))||(r=o,l(Fs,e,t,s,n,a,r))}),Ge[o?1:0],[e,t],[_t])},addStartTransactionListener:e=>rt(e,lt),addWillFinishTransactionListener:e=>rt(e,ot[0]),addDidFinishTransactionListener:e=>rt(e,ot[1]),callListener:e=>(dt(e),Fs),delListener:e=>(it(e),Fs),getListenerStats:()=>({}),createStore:pe,addListener:rt,callListeners:ct,setInternalListeners:(e,t)=>y=[e,t]};return H({[c+u]:[0,Ne,[],()=>[is()]],[u]:[0,je],[h]:[0,xe],[c+d]:[1,De,[_t],e=>[ds(...e)]],[d]:[1,He,[_t]],[d+V]:[1,We,[_t]],[c+d+b]:[2,$e,[_t,es],e=>[us(...e)]],[g]:[1,qe,[_t]],[T]:[1,Be,[_t]],[c+f]:[2,Ke,[_t,ss],e=>[hs(...e)]],[f]:[2,Qe,[_t,ss]],[V]:[2,Ue,[_t,ss]],[c+b]:[3,Xe,[_t,ss,as],e=>[fs(...e)]],[b]:[3,Ye,[_t,ss,as],e=>fe(ls(...e))],InvalidCell:[3,Ze],[c+C]:[0,et,[],()=>[gs()]],[C]:[0,tt],[v]:[0,st],[c+S]:[1,nt,[rs],e=>[Ts(...e)]],[S]:[1,at,[rs],e=>fe(cs(e[0]))],InvalidValue:[1,_e]},(([e,t,s,n],a)=>{Fs["add"+a+"Listener"]=(...a)=>rt(a[e],t[a[e+1]?1:0],e>0?I(a,0,e):void 0,s,n)})),N(Fs)};exports.createStore=pe;
|
|
1
|
+
"use strict";const e=e=>typeof e,t="",s=e(t),n=e(!0),a=e(0),l=e(e),o="type",r="default",c="Has",i="Ids",d="Table",u=d+"s",h=d+i,f="Row",g=f+"Count",T=f+i,b="Cell",V=b+i,S="Value",C=S+"s",v=S+i,w=e=>t+e,y=isFinite,m=e=>null==e,p=(e,t,s)=>m(e)?s?.():t(e),L=e=>e==s||e==n,R=t=>e(t)==l,I=(e,t,s)=>e.slice(t,s),J=e=>e.length,E=(e,t)=>e.forEach(t),F=(e,t)=>e.map(t),O=(e,...t)=>e.push(...t),z=Object,P=e=>z.getPrototypeOf(e),k=z.entries,A=z.isFrozen,M=e=>!m(e)&&p(P(e),(e=>e==z.prototype||m(P(e))),(()=>!0)),N=z.keys,j=z.freeze,x=(e,t)=>t in e,D=(e,t)=>(delete e[t],e),H=(e,t)=>F(k(e),(([e,s])=>t(s,e))),W=e=>M(e)&&0==(e=>J(N(e)))(e),$=(e,t,s,n=0)=>m(e)||!M(e)||!n&&W(e)||A(e)?(s?.(),!1):(H(e,((s,n)=>{t(s,n)||D(e,n)})),!!n||!W(e)),q=e=>e?.size??0,B=(e,t)=>e?.has(t)??!1,G=e=>m(e)||0==q(e),K=e=>e.clear(),Q=(e,t)=>e?.forEach(t),U=(e,t)=>e?.delete(t),X=e=>new Map(e),Y=e=>[...e?.keys()??[]],Z=(e,t)=>e?.get(t),_=(e,t)=>Q(e,((e,s)=>t(s,e))),ee=(e,t,s)=>m(s)?(U(e,t),e):e?.set(t,s),te=(e,t,s,n)=>(B(e,t)?n?.(Z(e,t)):ee(e,t,s()),Z(e,t)),se=(e,t,s,n=ee)=>(H(t,((t,n)=>s(e,n,t))),_(e,(s=>x(t,s)?0:n(e,s))),e),ne=(e,t,s,n)=>{const a={};return Q(e,((e,l)=>{if(!s?.(e,l)){const s=t?t(e,l):e;!n?.(s)&&(a[l]=s)}})),a},ae=(e,t,s)=>ne(e,(e=>ne(e,t,s)),G,W),le=(e,t,s)=>ne(e,(e=>ae(e,t,s)),G,W),oe=(e,t)=>{const s=X();return Q(e,((e,n)=>s.set(n,t?.(e)??e))),s},re=e=>oe(e,oe),ce=e=>oe(e,re),ie=(e,t,s,n,a=0)=>p((s?te:Z)(e,t[a],a>J(t)-2?s:X),(l=>{if(a>J(t)-2)return n?.(l)&&ee(e,t[a]),l;const o=ie(l,t,s,n,a+1);return G(l)&&ee(e,t[a]),o})),de=e=>new Set(Array.isArray(e)||m(e)?e:[e]),ue=(e,t)=>e?.add(t),he=/^\d+$/,fe=()=>{const e=[];let s=0;return[n=>(n?e.shift():null)??t+s++,t=>{he.test(t)&&J(e)<1e3&&O(e,t)}]},ge=e=>[e,e],Te=()=>[X(),X()],be=e=>[...e],Ve=([e,t])=>e===t,Se=t=>{const s=e(t);return L(s)||s==a&&y(t)?s:void 0},Ce=(e,t,s,n,a)=>m(a)?e.delCell(t,s,n,!0):e.setCell(t,s,n,a),ve=(e,t,s)=>m(s)?e.delValue(t):e.setValue(t,s),we=e=>JSON.stringify(e,((e,t)=>t instanceof Map?z.fromEntries([...t]):t)),ye=JSON.parse,me=(e,t,s)=>ee(e,t,Z(e,t)==-s?void 0:s),pe=()=>{let e,s,n=!1,l=!1,i=0,y=[];const z=X(),P=X(),k=X(),A=X(),M=X(),N=X(),he=X(),Le=X(),Re=X(),Ie=X(),Je=X(),Ee=X(),Fe=X(),Oe=X(),ze=de(),Pe=X(),ke=X(),Ae=X(),Me=X(),Ne=Te(),je=Te(),xe=Te(),De=Te(),He=Te(),We=Te(),$e=Te(),qe=Te(),Be=Te(),Ge=Te(),Ke=Te(),Qe=Te(),Ue=Te(),Xe=Te(),Ye=Te(),Ze=Te(),_e=Te(),et=Te(),tt=Te(),st=Te(),nt=Te(),at=Te(),lt=X(),ot=Te(),[rt,ct,it,dt]=(e=>{let s;const[n,a]=fe(),l=X();return[(e,a,o,r=[],c=(()=>[]))=>{s??=Fs;const i=n(1);return ee(l,i,[e,a,o,r,c]),ue(ie(a,o??[t],de),i),i},(e,n,...a)=>E(((e,s=[t])=>{const n=[],a=(e,t)=>t==J(s)?O(n,e):null===s[t]?Q(e,(e=>a(e,t+1))):E([s[t],null],(s=>a(Z(e,s),t+1)));return a(e,0),n})(e,n),(e=>Q(e,(e=>Z(l,e)[0](s,...n??[],...a))))),e=>p(Z(l,e),(([,s,n])=>(ie(s,n??[t],void 0,(t=>(U(t,e),G(t)?1:0))),ee(l,e),a(e),n))),e=>p(Z(l,e),(([e,,t=[],n,a])=>{const l=(...o)=>{const r=J(o);r==J(t)?e(s,...o,...a(o)):m(t[r])?E(n[r]?.(...o)??[],(e=>l(...o,e))):l(...o,t[r])};l()}))]})(),ut=e=>{if(!$(e,((e,t)=>[o,r].includes(t))))return!1;const t=e[o];return!(!L(t)&&t!=a||(Se(e[r])!=t&&D(e,r),0))},ht=(t,s)=>(!e||B(Je,s)||Wt(s))&&$(t,((e,t)=>ft(s,t,e)),(()=>Wt(s))),ft=(e,t,s,n)=>$(n?s:Vt(s,e,t),((n,a)=>p(gt(e,t,a,n),(e=>(s[a]=e,!0)),(()=>!1))),(()=>Wt(e,t))),gt=(t,s,n,a)=>e?p(Z(Z(Je,t),n),(e=>Se(a)!=e[o]?Wt(t,s,n,a,e[r]):a),(()=>Wt(t,s,n,a))):m(Se(a))?Wt(t,s,n,a):a,Tt=(e,t)=>$(t?e:St(e),((t,s)=>p(bt(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>$t())),bt=(e,t)=>s?p(Z(Fe,e),(s=>Se(t)!=s[o]?$t(e,t,s[r]):t),(()=>$t(e,t))):m(Se(t))?$t(e,t):t,Vt=(e,t,s)=>(p(Z(Ee,t),(([n,a])=>{Q(n,((t,s)=>{x(e,s)||(e[s]=t)})),Q(a,(n=>{x(e,n)||Wt(t,s,n)}))})),e),St=e=>(s&&(Q(Oe,((t,s)=>{x(e,s)||(e[s]=t)})),Q(ze,(t=>{x(e,t)||$t(t)}))),e),Ct=e=>se(Je,e,((e,t,s)=>{const n=X(),a=de();se(te(Je,t,X),s,((e,t,s)=>{ee(e,t,s),p(s[r],(e=>ee(n,t,e)),(()=>ue(a,t)))})),ee(Ee,t,[n,a])}),((e,t)=>{ee(Je,t),ee(Ee,t)})),vt=e=>se(Fe,e,((e,t,s)=>{ee(Fe,t,s),p(s[r],(e=>ee(Oe,t,e)),(()=>ue(ze,t)))}),((e,t)=>{ee(Fe,t),ee(Oe,t),U(ze,t)})),wt=e=>W(e)?ws():bs(e),yt=e=>se(Ae,e,((e,t,s)=>mt(t,s)),((e,t)=>zt(t))),mt=(e,t)=>se(te(Ae,e,(()=>(Mt(e,1),ee(Pe,e,fe()),ee(ke,e,X()),X()))),t,((t,s,n)=>pt(e,t,s,n)),((t,s)=>Pt(e,t,s))),pt=(e,t,s,n,a)=>se(te(t,s,(()=>(Nt(e,s,1),X()))),n,((t,n,a)=>Lt(e,s,t,n,a)),((n,l)=>kt(e,t,s,n,l,a))),Lt=(e,t,s,n,a)=>{B(s,n)||jt(e,t,n,1);const l=Z(s,n);a!==l&&(xt(e,t,n,l,a),ee(s,n,a))},Rt=(e,t,s,n,a)=>p(Z(t,s),(t=>Lt(e,s,t,n,a)),(()=>pt(e,t,s,Vt({[n]:a},e,s)))),It=e=>W(e)?ps():Vs(e),Jt=e=>se(Me,e,((e,t,s)=>Et(t,s)),((e,t)=>At(t))),Et=(e,t)=>{B(Me,e)||Dt(e,1);const s=Z(Me,e);t!==s&&(Ht(e,s,t),ee(Me,e,t))},Ft=(e,t)=>{const[s]=Z(Pe,e),n=s(t);return B(Z(Ae,e),n)?Ft(e,t):n},Ot=e=>Z(Ae,e)??mt(e,{}),zt=e=>mt(e,{}),Pt=(e,t,s)=>{const[,n]=Z(Pe,e);n(s),pt(e,t,s,{},!0)},kt=(e,t,s,n,a,l)=>{const o=Z(Z(Ee,e)?.[0],a);if(!m(o)&&!l)return Lt(e,s,n,a,o);const r=t=>{xt(e,s,t,Z(n,t)),jt(e,s,t,-1),ee(n,t)};m(o)?r(a):_(n,r),G(n)&&(Nt(e,s,-1),G(ee(t,s))&&(Mt(e,-1),ee(Ae,e),ee(Pe,e),ee(ke,e)))},At=e=>{const t=Z(Oe,e);if(!m(t))return Et(e,t);Ht(e,Z(Me,e)),Dt(e,-1),ee(Me,e)},Mt=(e,t)=>me(z,e,t),Nt=(e,t,s)=>me(te(A,e,X),t,s)&&ee(k,e,te(k,e,(()=>0))+s),jt=(e,t,s,n)=>{const a=Z(ke,e),l=Z(a,s)??0;(0==l&&1==n||1==l&&-1==n)&&me(te(P,e,X),s,n),ee(a,s,l!=-n?l+n:null),me(te(te(M,e,X),t,X),s,n)},xt=(e,t,s,n,a)=>te(te(te(N,e,X),t,X),s,(()=>[n,0]))[1]=a,Dt=(e,t)=>me(he,e,t),Ht=(e,t,s)=>te(Le,e,(()=>[t,0]))[1]=s,Wt=(e,t,s,n,a)=>(O(te(te(te(Re,e,X),t,X),s,(()=>[])),n),a),$t=(e,t,s)=>(O(te(Ie,e,(()=>[])),t),s),qt=(e,t,s)=>p(Z(Z(Z(N,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...ge(ls(e,t,s))])),Bt=e=>p(Z(Le,e),(([e,t])=>[!0,e,t]),(()=>[!1,...ge(cs(e))])),Gt=e=>G(Re)||G(Ze[e])?0:Q(e?ce(Re):Re,((t,s)=>Q(t,((t,n)=>Q(t,((t,a)=>ct(Ze[e],[s,n,a],t))))))),Kt=e=>G(Ie)||G(_e[e])?0:Q(e?oe(Ie):Ie,((t,s)=>ct(_e[e],[s],t))),Qt=(e,t,s,n)=>{if(!G(e))return ct(t,n,(()=>ne(e))),_(e,((e,t)=>ct(s,[...n??[],e],1==t))),1},Ut=e=>{const t=is();t!=n&&ct(Ne[e],void 0,t);const s=G(Ge[e]),a=G(Ue[e])&&G(Xe[e])&&G(Be[e])&&G(Ke[e])&&G(We[e])&&G($e[e])&&G(qe[e])&&s&&G(xe[e])&&G(De[e]),l=G(Ye[e])&&G(Qe[e])&&G(He[e])&&G(je[e]);if(!a||!l){const t=e?[oe(z),re(P),oe(k),re(A),ce(M),ce(N)]:[z,P,k,A,M,N];if(!a){Qt(t[0],xe[e],De[e]),Q(t[1],((t,s)=>Qt(t,We[e],$e[e],[s]))),Q(t[2],((t,s)=>{0!=t&&ct(qe[e],[s],ts(s))}));const n=de();Q(t[3],((t,a)=>{Qt(t,Be[e],Ke[e],[a])&&!s&&(ct(Ge[e],[a,null]),ue(n,a))})),s||Q(t[5],((t,s)=>{if(!B(n,s)){const n=de();Q(t,(e=>Q(e,(([t,s],a)=>s!==t?ue(n,a):U(e,a))))),Q(n,(t=>ct(Ge[e],[s,t])))}})),Q(t[4],((t,s)=>Q(t,((t,n)=>Qt(t,Ue[e],Xe[e],[s,n])))))}if(!l){let s;Q(t[5],((t,n)=>{let a;Q(t,((t,l)=>{let o;Q(t,(([t,r],c)=>{r!==t&&(ct(Ye[e],[n,l,c],r,t,qt),s=a=o=1)})),o&&ct(Qe[e],[n,l],qt)})),a&&ct(He[e],[n],qt)})),s&&ct(je[e],void 0,qt)}}},Xt=e=>{const t=gs();t!=l&&ct(et[e],void 0,t);const s=G(st[e])&&G(nt[e]),n=G(at[e])&&G(tt[e]);if(!s||!n){const t=e?[oe(he),oe(Le)]:[he,Le];if(s||Qt(t[0],st[e],nt[e]),!n){let s;Q(t[1],(([t,n],a)=>{n!==t&&(ct(at[e],[a],n,t,Bt),s=1)})),s&&ct(tt[e],void 0,Bt)}}},Yt=(e,...t)=>(Is((()=>e(...F(t,w)))),Fs),Zt=()=>le(Ae),_t=()=>Y(Ae),es=e=>Y(Z(ke,w(e))),ts=e=>q(Z(Ae,w(e))),ss=e=>Y(Z(Ae,w(e))),ns=(e,t,s,n=0,a)=>{return F(I((o=Z(Ae,w(e)),r=(e,s)=>[m(t)?s:Z(e,w(t)),s],l=([e],[t])=>((e??0)<(t??0)?-1:1)*(s?-1:1),F([...o?.entries()??[]],(([e,t])=>r(t,e))).sort(l)),n,m(a)?a:n+a),(([,e])=>e));var l,o,r},as=(e,t)=>Y(Z(Z(Ae,w(e)),w(t))),ls=(e,t,s)=>Z(Z(Z(Ae,w(e)),w(t)),w(s)),os=()=>ne(Me),rs=()=>Y(Me),cs=e=>Z(Me,w(e)),is=()=>!G(Ae),ds=e=>B(Ae,w(e)),us=(e,t)=>B(Z(ke,w(e)),w(t)),hs=(e,t)=>B(Z(Ae,w(e)),w(t)),fs=(e,t,s)=>B(Z(Z(Ae,w(e)),w(t)),w(s)),gs=()=>!G(Me),Ts=e=>B(Me,w(e)),bs=e=>Yt((()=>(e=>$(e,ht,Wt))(e)?yt(e):0)),Vs=e=>Yt((()=>Tt(e)?Jt(e):0)),Ss=e=>{try{wt(ye(e))}catch{}return Fs},Cs=t=>Yt((()=>{if((e=$(t,(e=>$(e,ut))))&&(Ct(t),!G(Ae))){const e=Zt();ws(),bs(e)}})),vs=e=>Yt((()=>{if(s=(e=>$(e,ut))(e)){const t=os();Rs(),ps(),s=!0,vt(e),Vs(t)}})),ws=()=>Yt((()=>yt({}))),ys=e=>Yt((e=>B(Ae,e)?zt(e):0),e),ms=(e,t)=>Yt(((e,t)=>p(Z(Ae,e),(s=>B(s,t)?Pt(e,s,t):0))),e,t),ps=()=>Yt((()=>Jt({}))),Ls=()=>Yt((()=>{Ct({}),e=!1})),Rs=()=>Yt((()=>{vt({}),s=!1})),Is=(e,t)=>{if(-1!=i){Js();const s=e();return Es(t),s}},Js=()=>(-1!=i&&i++,1==i&&ct(lt,void 0),Fs),Es=e=>(i>0&&(i--,0==i&&(i=1,Gt(1),G(N)||Ut(1),Kt(1),G(Le)||Xt(1),e?.(Fs)&&(Q(N,((e,t)=>Q(e,((e,s)=>Q(e,(([e],n)=>Ce(Fs,t,s,n,e))))))),K(N),Q(Le,(([e],t)=>ve(Fs,t,e))),K(Le)),ct(ot[0],void 0),i=-1,Gt(0),G(N)||Ut(0),Kt(0),G(Le)||Xt(0),y[0]?.(Fs),ct(ot[1],void 0),y[1]?.(Fs),i=0,n=is(),l=gs(),E([z,P,k,A,M,N,Re,he,Le,Ie],K))),Fs),Fs={getContent:()=>[Zt(),os()],getTables:Zt,getTableIds:_t,getTable:e=>ae(Z(Ae,w(e))),getTableCellIds:es,getRowCount:ts,getRowIds:ss,getSortedRowIds:ns,getRow:(e,t)=>ne(Z(Z(Ae,w(e)),w(t))),getCellIds:as,getCell:ls,getValues:os,getValueIds:rs,getValue:cs,hasTables:is,hasTable:ds,hasTableCell:us,hasRow:hs,hasCell:fs,hasValues:gs,hasValue:Ts,getTablesJson:()=>we(Ae),getValuesJson:()=>we(Me),getJson:()=>we([Ae,Me]),getTablesSchemaJson:()=>we(Je),getValuesSchemaJson:()=>we(Fe),getSchemaJson:()=>we([Je,Fe]),hasTablesSchema:()=>e,hasValuesSchema:()=>s,setContent:([e,t])=>Yt((()=>{(W(e)?ws:bs)(e),(W(t)?ps:Vs)(t)})),setTables:bs,setTable:(e,t)=>Yt((e=>ht(t,e)?mt(e,t):0),e),setRow:(e,t,s)=>Yt(((e,t)=>ft(e,t,s)?pt(e,Ot(e),t,s):0),e,t),addRow:(e,t,s=!0)=>Is((()=>{let n;return ft(e,n,t)&&(e=w(e),pt(e,Ot(e),n=Ft(e,s?1:0),t)),n})),setPartialRow:(e,t,s)=>Yt(((e,t)=>{if(ft(e,t,s,1)){const n=Ot(e);H(s,((s,a)=>Rt(e,n,t,a,s)))}}),e,t),setCell:(e,t,s,n)=>Yt(((e,t,s)=>p(gt(e,t,s,R(n)?n(ls(e,t,s)):n),(n=>Rt(e,Ot(e),t,s,n)))),e,t,s),setValues:Vs,setPartialValues:e=>Yt((()=>Tt(e,1)?H(e,((e,t)=>Et(t,e))):0)),setValue:(e,t)=>Yt((e=>p(bt(e,R(t)?t(cs(e)):t),(t=>Et(e,t)))),e),applyChanges:e=>Yt((()=>{H(e[0],((e,t)=>m(e)?ys(t):H(e,((e,s)=>m(e)?ms(t,s):H(e,((e,n)=>Ce(Fs,t,s,n,e))))))),H(e[1],((e,t)=>ve(Fs,t,e)))})),setTablesJson:Ss,setValuesJson:e=>{try{It(ye(e))}catch{}return Fs},setJson:e=>Yt((()=>{try{const[t,s]=ye(e);wt(t),It(s)}catch{Ss(e)}})),setTablesSchema:Cs,setValuesSchema:vs,setSchema:(e,t)=>Yt((()=>{Cs(e),vs(t)})),delTables:ws,delTable:ys,delRow:ms,delCell:(e,t,s,n)=>Yt(((e,t,s)=>p(Z(Ae,e),(a=>p(Z(a,t),(l=>B(l,s)?kt(e,a,t,l,s,n):0))))),e,t,s),delValues:ps,delValue:e=>Yt((e=>B(Me,e)?At(e):0),e),delTablesSchema:Ls,delValuesSchema:Rs,delSchema:()=>Yt((()=>{Ls(),Rs()})),transaction:Is,startTransaction:Js,getTransactionChanges:()=>[ne(N,((e,t)=>-1===Z(z,t)?void 0:ne(e,((e,s)=>-1===Z(Z(A,t),s)?void 0:ne(e,(([,e])=>e),(e=>Ve(e)))),G,W)),G,W),ne(Le,(([,e])=>e),(e=>Ve(e))),1],getTransactionLog:()=>[!G(N),!G(Le),le(N,be,Ve),le(Re),ne(Le,be,Ve),ne(Ie),ne(z),ae(A),le(M),ne(he)],finishTransaction:Es,forEachTable:e=>Q(Ae,((t,s)=>e(s,(e=>Q(t,((t,s)=>e(s,(e=>_(t,e))))))))),forEachTableCell:(e,t)=>_(Z(ke,w(e)),t),forEachRow:(e,t)=>Q(Z(Ae,w(e)),((e,s)=>t(s,(t=>_(e,t))))),forEachCell:(e,t,s)=>_(Z(Z(Ae,w(e)),w(t)),s),forEachValue:e=>_(Me,e),addSortedRowIdsListener:(e,t,s,n,a,l,o)=>{let r=ns(e,t,s,n,a);return rt((()=>{const o=ns(e,t,s,n,a);var c,i,d;i=r,J(c=o)===J(i)&&(d=(e,t)=>i[t]===e,c.every(d))||(r=o,l(Fs,e,t,s,n,a,r))}),Ge[o?1:0],[e,t],[_t])},addStartTransactionListener:e=>rt(e,lt),addWillFinishTransactionListener:e=>rt(e,ot[0]),addDidFinishTransactionListener:e=>rt(e,ot[1]),callListener:e=>(dt(e),Fs),delListener:e=>(it(e),Fs),getListenerStats:()=>({}),createStore:pe,addListener:rt,callListeners:ct,setInternalListeners:(e,t)=>y=[e,t]};return H({[c+u]:[0,Ne,[],()=>[is()]],[u]:[0,je],[h]:[0,xe],[c+d]:[1,De,[_t],e=>[ds(...e)]],[d]:[1,He,[_t]],[d+V]:[1,We,[_t]],[c+d+b]:[2,$e,[_t,es],e=>[us(...e)]],[g]:[1,qe,[_t]],[T]:[1,Be,[_t]],[c+f]:[2,Ke,[_t,ss],e=>[hs(...e)]],[f]:[2,Qe,[_t,ss]],[V]:[2,Ue,[_t,ss]],[c+b]:[3,Xe,[_t,ss,as],e=>[fs(...e)]],[b]:[3,Ye,[_t,ss,as],e=>ge(ls(...e))],InvalidCell:[3,Ze],[c+C]:[0,et,[],()=>[gs()]],[C]:[0,tt],[v]:[0,st],[c+S]:[1,nt,[rs],e=>[Ts(...e)]],[S]:[1,at,[rs],e=>ge(cs(e[0]))],InvalidValue:[1,_e]},(([e,t,s,n],a)=>{Fs["add"+a+"Listener"]=(...a)=>rt(a[e],t[a[e+1]?1:0],e>0?I(a,0,e):void 0,s,n)})),j(Fs)};exports.createStore=pe;
|
package/lib/cjs/store.cjs.gz
CHANGED
|
Binary file
|
package/lib/cjs/tinybase.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";const e=e=>typeof e,t="",s=e(t),n=e(!0),a=e(0),o=e(e),r="type",l="default",i="Listener",c="Result",d="add",u="Has",g="Ids",h="Table",f=h+"s",L=h+g,C="Row",p=C+"Count",w=C+g,I="Sorted"+C+g,v="Cell",S=v+g,T="Value",b=T+"s",R=T+g,y=e=>t+e,M=(e,t)=>e.startsWith(t),m=(e,t)=>e.endsWith(t),V=(e,t=0)=>e.charCodeAt(t),x=Math.max,E=Math.min,k=isFinite,D=e=>null==e,A=(e,t,s)=>D(e)?s?.():t(e),J=e=>e==s||e==n,F=t=>e(t)==s,Q=t=>e(t)==o,H=e=>Array.isArray(e),z=(e,t,s)=>e.slice(t,s),N=e=>e.length,O=()=>{},P=(e,t)=>e.includes(t),W=(e,t)=>e.every(t),j=(e,t)=>N(e)===N(t)&&W(e,((e,s)=>t[s]===e)),_=(e,t)=>W(e,((s,n)=>0==n||t(e[n-1],s)<=0)),B=(e,t)=>e.sort(t),$=(e,t)=>e.forEach(t),q=(e,t)=>e.map(t),G=e=>U(e,((e,t)=>e+t),0),K=e=>0==N(e),U=(e,t,s)=>e.reduce(t,s),X=(e,...t)=>e.push(...t),Y=e=>e.pop(),Z=e=>e.shift(),ee=Object,te=e=>ee.getPrototypeOf(e),se=ee.entries,ne=ee.keys,ae=ee.isFrozen,oe=ee.freeze,re=e=>!D(e)&&A(te(e),(e=>e==ee.prototype||D(te(e))),(()=>!0)),le=(e=[])=>ee.fromEntries(e),ie=(e,t)=>t in e,ce=(e,t)=>(delete e[t],e),de=(e,t)=>$(se(e),(([e,s])=>t(s,e))),ue=(e,t)=>q(se(e),(([e,s])=>t(s,e))),ge=e=>re(e)&&0==(e=>N(ne(e)))(e),he=e=>e?.size??0,fe=(e,t)=>e?.has(t)??!1,Le=e=>D(e)||0==he(e),Ce=e=>[...e?.values()??[]],pe=e=>e.clear(),we=(e,t)=>e?.forEach(t),Ie=(e,t)=>e?.delete(t),ve=e=>new Map(e),Se=e=>[...e?.keys()??[]],Te=(e,t)=>e?.get(t),be=(e,t)=>we(e,((e,s)=>t(s,e))),Re=(e,t,s)=>D(s)?(Ie(e,t),e):e?.set(t,s),ye=(e,t,s)=>(fe(e,t)||Re(e,t,s()),Te(e,t)),Me=(e,t,s,n=Re)=>(ue(t,((t,n)=>s(e,n,t))),be(e,(s=>ie(t,s)?0:n(e,s))),e),me=(e,t,s)=>{const n={};return we(e,((e,a)=>{const o=t?t(e,a):e;!s?.(o,e)&&(n[a]=o)})),n},Ve=(e,t,s)=>me(e,(e=>me(e,t,s)),ge),xe=(e,t,s)=>me(e,(e=>Ve(e,t,s)),ge),Ee=(e,t)=>{const s=ve();return we(e,((e,n)=>s.set(n,t?.(e)??e))),s},ke=e=>Ee(e,Ee),De=e=>Ee(e,ke),Ae=(e,t,s,n,a=0)=>A((s?ye:Te)(e,t[a],a>N(t)-2?s:ve),(o=>{if(a>N(t)-2)return n?.(o)&&Re(e,t[a]),o;const r=Ae(o,t,s,n,a+1);return Le(o)&&Re(e,t[a]),r})),Je=t=>{const s=e(t);return J(s)||s==a&&k(t)?s:void 0},Fe=(e,t,s,n,a)=>D(a)?e.delCell(t,s,n,!0):e.setCell(t,s,n,a),Qe=(e,t,s)=>D(s)?e.delValue(t):e.setValue(t,s),He=e=>new Set(H(e)||D(e)?e:[e]),ze=(e,t)=>e?.add(t),Ne=(e,t,s,n,a)=>{const o=e.hasRow,r=ve(),l=ve(),i=ve(),c=ve(),d=ve(),u=ve(),g=(t,s,...n)=>{const a=ye(u,t,He);return $(n,(t=>ze(a,t)&&s&&e.callListener(t))),n},h=(t,...s)=>A(Te(u,t),(n=>{$(K(s)?Ce(n):s,(t=>{e.delListener(t),Ie(n,t)})),Le(n)&&Re(u,t)})),f=(e,s)=>{Re(r,e,s),fe(l,e)||(Re(l,e,t()),Re(c,e,ve()),Re(d,e,ve()),a(i))},L=e=>{Re(r,e),Re(l,e),Re(c,e),Re(d,e),h(e),a(i)};return[()=>e,()=>Se(r),e=>be(l,e),e=>fe(l,e),e=>Te(r,e),e=>Te(l,e),(e,t)=>Re(l,e,t),f,(t,n,a,r,l)=>{f(t,n);const i=ve(),u=ve(),L=Te(c,t),C=Te(d,t),p=t=>{const a=s=>e.getCell(n,t,s),c=Te(L,t),d=o(n,t)?s(r(a,t)):void 0;if(c===d||H(c)&&H(d)&&j(c,d)||Re(i,t,[c,d]),!D(l)){const e=Te(C,t),s=o(n,t)?l(a,t):void 0;e!=s&&Re(u,t,s)}},w=e=>{a((()=>{we(i,(([,e],t)=>Re(L,t,e))),we(u,((e,t)=>Re(C,t,e)))}),i,u,L,C,e),pe(i),pe(u)};be(L,p),e.hasTable(n)&&$(e.getRowIds(n),(e=>{fe(L,e)||p(e)})),w(!0),h(t),g(t,0,e.addRowListener(n,null,((e,t,s)=>p(s))),e.addTableListener(n,(()=>w())))},L,e=>n(e,i),()=>be(u,L),g,h]},Oe=(e,s)=>F(e)?t=>t(e):e??(()=>s??t),Pe=(e,t)=>{const s=new WeakMap;return n=>{s.has(n)||s.set(n,e(n));const a=s.get(n);return t?.(a),a}},We=/^\d+$/,je=()=>{const e=[];let s=0;return[n=>(n?Z(e):null)??t+s++,t=>{We.test(t)&&N(e)<1e3&&X(e,t)}]},_e=e=>{let s;const[n,a]=je(),o=ve();return[(a,r,l,i=[],c=(()=>[]))=>{s??=e();const d=n(1);return Re(o,d,[a,r,l,i,c]),ze(Ae(r,l??[t],He),d),d},(e,n,...a)=>$(((e,s=[t])=>{const n=[],a=(e,t)=>t==N(s)?X(n,e):null===s[t]?we(e,(e=>a(e,t+1))):$([s[t],null],(s=>a(Te(e,s),t+1)));return a(e,0),n})(e,n),(e=>we(e,(e=>Te(o,e)[0](s,...n??[],...a))))),e=>A(Te(o,e),(([,s,n])=>(Ae(s,n??[t],void 0,(t=>(Ie(t,e),Le(t)?1:0))),Re(o,e),a(e),n))),e=>A(Te(o,e),(([e,,t=[],n,a])=>{const o=(...r)=>{const l=N(r);l==N(t)?e(s,...r,...a(r)):D(t[l])?$(n[l]?.(...r)??[],(e=>o(...r,e))):o(...r,t[l])};o()}))]},Be=Pe((e=>{let s,n,a,o=100,r=ve(),l=ve(),i=1;const c=ve(),d=ve(),[u,g,h]=_e((()=>F)),f=ve(),L=ve(),C=[],p=[],w=(t,s)=>{i=0,e.transaction((()=>{const[n,a]=Te(f,s);we(n,((s,n)=>we(s,((s,a)=>we(s,((s,o)=>Fe(e,n,a,o,s[t]))))))),we(a,((s,n)=>Qe(e,n,s[t])))})),i=1},I=e=>{Re(f,e),Re(L,e),g(d,[e])},v=(e,t)=>$(((e,t)=>e.splice(0,t))(e,t??N(e)),I),S=()=>v(C,N(C)-o),T=()=>A(s,(()=>{X(C,s),S(),v(p),s=void 0,a=1})),b=()=>{s=Y(C),a=1};let R,y;const M=(e="")=>(D(s)&&(s=t+n++,Re(f,s,[r,l]),k(s,e),r=ve(),l=ve(),a=1),s),m=()=>{K(C)||(((e,...t)=>{e.unshift(...t)})(p,M()),w(0,s),s=Y(C),a=1)},V=()=>{K(p)||(X(C,s),s=Z(p),w(1,s),a=1)},x=()=>{a&&(g(c),a=0)},E=e=>{const t=M(e);return x(),t},k=(e,t)=>(J(e)&&Te(L,e)!==t&&(Re(L,e,t),g(d,[e])),F),J=e=>fe(f,e),F={setSize:e=>(o=e,S(),F),addCheckpoint:E,setCheckpoint:k,getStore:()=>e,getCheckpointIds:()=>[[...C],s,[...p]],forEachCheckpoint:e=>be(L,e),hasCheckpoint:J,getCheckpoint:e=>Te(L,e),goBackward:()=>(m(),x(),F),goForward:()=>(V(),x(),F),goTo:e=>{const t=P(C,e)?m:P(p,e)?V:null;for(;!D(t)&&e!=s;)t();return x(),F},addCheckpointIdsListener:e=>u(e,c),addCheckpointListener:(e,t)=>u(t,d,[e]),delListener:e=>(h(e),F),clear:()=>(v(C),v(p),D(s)||I(s),s=void 0,n=0,E(),F),clearForward:()=>(K(p)||(v(p),g(c)),F),destroy:()=>{e.delListener(R),e.delListener(y)},getListenerStats:()=>({}),_registerListeners:()=>{R=e.addCellListener(null,null,null,((e,t,s,n,a,o)=>{if(i){T();const e=ye(r,t,ve),l=ye(e,s,ve),i=ye(l,n,(()=>[o,void 0]));i[1]=a,i[0]===a&&Le(Re(l,n))&&Le(Re(e,s))&&Le(Re(r,t))&&b(),x()}})),y=e.addValueListener(null,((e,t,s,n)=>{if(i){T();const e=ye(l,t,(()=>[n,void 0]));e[1]=s,e[0]===s&&Le(Re(l,t))&&b(),x()}}))}};return oe(F.clear())}),(e=>e._registerListeners())),$e=(e,t)=>(e??0)<(t??0)?-1:1,qe=Pe((e=>{const s=ve(),n=ve(),[a,o,r]=_e((()=>I)),[l,i,c,d,u,g,h,,f,L,C,p]=Ne(e,ve,(e=>D(e)?t:H(e)?q(e,y):y(e)),a,o),w=(t,s,n)=>{const a=u(t);we(n,((t,n)=>s(n,(s=>we(t,(t=>s(t,(s=>e.forEachCell(a,t,s)))))))))},I={setIndexDefinition:(e,t,a,r,l,i=$e)=>{const c=D(l)?void 0:([e],[t])=>l(e,t);return f(e,t,((t,a,l,d,u,f)=>{let L=0;const C=He(),p=He(),w=g(e);if(we(a,(([e,t],s)=>{const n=He(e),a=He(t);we(n,(e=>Ie(a,e)?Ie(n,e):0)),we(n,(e=>{ze(C,e),A(Te(w,e),(t=>{Ie(t,s),Le(t)&&(Re(w,e),L=1)}))})),we(a,(e=>{ze(C,e),fe(w,e)||(Re(w,e,He()),L=1),ze(Te(w,e),s),D(r)||ze(p,e)}))})),t(),Le(u)||(f?be(w,(e=>ze(p,e))):be(l,(e=>A(Te(d,e),(e=>ze(p,e))))),we(p,(e=>{const t=(t,s)=>i(Te(u,t),Te(u,s),e),s=[...Te(w,e)];_(s,t)||(Re(w,e,He(B(s,t))),ze(C,e))}))),(L||f)&&!D(c)){const t=[...w];_(t,c)||(h(e,ve(B(t,c))),L=1)}L&&o(s,[e]),we(C,(t=>o(n,[e,t])))}),Oe(a),A(r,Oe)),I},delIndexDefinition:e=>(L(e),I),getStore:l,getIndexIds:i,forEachIndex:e=>c(((t,s)=>e(t,(e=>w(t,e,s))))),forEachSlice:(e,t)=>w(e,t,g(e)),hasIndex:d,hasSlice:(e,t)=>fe(g(e),t),getTableId:u,getSliceIds:e=>Se(g(e)),getSliceRowIds:(e,t)=>Ce(Te(g(e),t)),addIndexIdsListener:C,addSliceIdsListener:(e,t)=>a(t,s,[e]),addSliceRowIdsListener:(e,t,s)=>a(s,n,[e,t]),delListener:e=>(r(e),I),destroy:p,getListenerStats:()=>({})};return oe(I)})),Ge=ve([["avg",[(e,t)=>G(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=>x(...e),(e,t)=>x(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:x(t,e)]],["min",[e=>E(...e),(e,t)=>E(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:E(t,e)]],["sum",[e=>G(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,s)=>e-s+t]]]),Ke=(e,t,s,n,a,o=!1)=>{if(Le(s))return;const[r,l,i,c]=a;return o||=D(e),we(n,(([s,n])=>{o||(e=D(s)?l?.(e,n,t++):D(n)?i?.(e,s,t--):c?.(e,n,s,t),o||=D(e))})),o?r(Ce(s),he(s)):e},Ue=Pe((e=>{const s=ve(),[n,a,o]=_e((()=>p)),[r,l,i,c,d,u,g,,h,f,L,C]=Ne(e,O,(e=>isNaN(e)||D(e)||!0===e||!1===e||e===t?void 0:1*e),n,a),p={setMetricDefinition:(e,t,n,o,r,l,i)=>{const c=Q(n)?[n,r,l,i]:Te(Ge,n)??Te(Ge,"sum");return h(e,t,((t,n,o,r,l,i)=>{const d=u(e),h=he(r);i||=D(d),t();let f=Ke(d,h,r,n,c,i);k(f)||(f=void 0),f!=d&&(g(e,f),a(s,[e],f,d))}),Oe(o,1)),p},delMetricDefinition:e=>(f(e),p),getStore:r,getMetricIds:l,forEachMetric:i,hasMetric:c,getTableId:d,getMetric:u,addMetricIdsListener:L,addMetricListener:(e,t)=>n(t,s,[e]),delListener:e=>(o(e),p),destroy:C,getListenerStats:()=>({})};return oe(p)})),Xe=ve(),Ye=ve(),Ze=e=>F(e?.[0]),et=Pe((e=>{const s=e.createStore,n=s(),a=s(),o=ve(),{addListener:r,callListeners:l,delListener:u}=a,[g,f,L,T,b,,,R,,y,M,m,V,x]=Ne(e,(()=>!0),O,r,l),E=(e,t,...s)=>$(s,(s=>ze(ye(ye(o,t,ve),e,He),s))),k=e=>{A(Te(o,e),(e=>{be(e,((e,t)=>we(t,(t=>e.delListener(t))))),pe(e)})),$([a,n],(t=>t.delTable(e)))},J=(e,t,s)=>E(t,e,t.addStartTransactionListener(s.startTransaction),t.addDidFinishTransactionListener((()=>s.finishTransaction()))),F={setQueryDefinition:(s,o,r)=>{R(s,o),k(s);const l=[],i=[[null,[o,null,null,[],ve()]]],c=[],d=[],u=[];r({select:(e,s)=>{const n=Q(e)?[N(l)+t,e]:[D(s)?e:s,t=>t(e,s)];return X(l,n),{as:e=>n[0]=e}},join:(e,t,s)=>{const n=D(s)||Q(t)?null:t,a=D(n)?t:s,o=[e,[e,n,Q(a)?a:e=>e(a),[],ve()]];return X(i,o),{as:e=>o[0]=e}},where:(e,t,s)=>X(c,Q(e)?e:D(s)?s=>s(e)===t:n=>n(e,t)===s),group:(e,t,s,n,a)=>{const o=[e,[e,Q(t)?[t,s,n,a]:Te(Ge,t)??[(e,t)=>t]]];return X(d,o),{as:e=>o[0]=e}},having:(e,t)=>X(u,Q(e)?e:s=>s(e)===t)});const g=ve(l);if(Le(g))return F;const h=ve(i);be(h,((e,[,t])=>A(Te(h,t),(({3:t})=>D(e)?0:X(t,e)))));const f=ve(d);let L=n;if(Le(f)&&K(u))L=a;else{J(s,L,a);const e=ve();be(f,((t,[s,n])=>ze(ye(e,s,He),[t,n])));const t=He();be(g,(s=>fe(e,s)?0:ze(t,s)));const n=ve(),o=(t,n,o,r)=>A(t,(([l,i,c,d])=>{be(n,((t,[s])=>{const n=ye(l,t,ve),a=Te(n,o),i=r?void 0:s;if(a!==i){const s=He([[a,i]]),r=he(n);Re(n,o,i),we(Te(e,t),(([e,t])=>{const a=Ke(d[e],r,n,s,t);d[e]=D(Je(a))?null:a}))}})),Le(i)||!W(u,(e=>e((e=>d[e]))))?a.delRow(s,c):D(c)?t[2]=a.addRow(s,d):a.setRow(s,c,d)}));E(L,s,L.addRowListener(s,null,((a,r,l,i)=>{const c=[],d=[],u=ve(),g=L.hasRow(s,l);let h=!g;we(t,(e=>{const[t,n,a]=i(s,l,e);X(c,n),X(d,a),h||=t})),be(e,(e=>{const[t,,n]=i(s,l,e);(h||t)&&Re(u,e,[n])})),h&&o(Ae(n,c,void 0,(([,e])=>(Ie(e,l),Le(e)))),u,l,1),g&&o(Ae(n,d,(()=>{const e={};return we(t,(t=>e[t]=L.getCell(s,l,t))),[ve(),He(),void 0,e]}),(([,e])=>{ze(e,l)})),u,l)})))}J(s,e,L);const C=(t,n,a,r)=>{const l=t=>e.getCell(n,a,t);$(r,(n=>{const[a,,o,r,i]=Te(h,n),c=o?.(l,t),[d,u]=Te(i,t)??[];c!=d&&(D(u)||x(s,u),Re(i,t,D(c)?null:[c,...V(s,1,e.addRowListener(a,c,(()=>C(t,a,c,r))))]))})),(t=>{const n=(s,n)=>e.getCell(...D(n)?[o,t,s]:s===o?[o,t,n]:[Te(h,s)?.[0],Te(Te(h,s)?.[4],t)?.[0],n]);L.transaction((()=>W(c,(e=>e(n)))?be(g,((e,a)=>Fe(L,s,t,e,a(n,t)))):L.delRow(s,t)))})(t)},{3:p}=Te(h,null);return L.transaction((()=>V(s,1,e.addRowListener(o,null,((t,n,a)=>{e.hasRow(o,a)?C(a,o,a,p):(L.delRow(s,a),we(h,(({4:e})=>A(Te(e,a),(([,t])=>{x(s,t),Re(e,a)})))))}))))),F},delQueryDefinition:e=>(k(e),y(e),F),getStore:g,getQueryIds:f,forEachQuery:L,hasQuery:T,getTableId:b,addQueryIdsListener:e=>M((()=>e(F))),delListener:e=>(u(e),F),destroy:m,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:s,...n}=a.getListenerStats();return n}};return ue({[h]:[1,1],[h+S]:[0,1],[p]:[0,1],[w]:[0,1],[I]:[0,5],[C]:[1,2],[S]:[0,2],[v]:[1,3]},(([e,t],s)=>{$(e?["get","has","forEach"]:["get"],(e=>F[e+c+s]=(...t)=>a[e+s](...t))),F[d+c+s+i]=(...e)=>a[d+s+i](...z(e,0,t),((s,...n)=>e[t](F,...n)),!0)})),oe(F)})),tt=Pe((e=>{const s=ve(),n=ve(),a=ve(),o=ve(),[r,l,i]=_e((()=>T)),[c,d,u,g,h,f,,,L,C,p,w]=Ne(e,(()=>[ve(),ve(),ve(),ve()]),(e=>D(e)?void 0:e+t),r,l),I=(e,t,s)=>A(f(e),(([n,,a])=>{if(!fe(a,t)){const o=He();if(h(e)!=S(e))ze(o,t);else{let e=t;for(;!D(e)&&!fe(o,e);)ze(o,e),e=Te(n,e)}if(s)return o;Re(a,t,o)}return Te(a,t)})),v=(e,t)=>A(f(e),(([,,e])=>Re(e,t))),S=e=>Te(s,e),T={setRelationshipDefinition:(e,t,r,i)=>(Re(s,e,r),L(e,t,((t,s)=>{const r=He(),i=He(),c=He(),[d,u]=f(e);we(s,(([t,s],n)=>{D(t)||(ze(i,t),A(Te(u,t),(e=>{Ie(e,n),Le(e)&&Re(u,t)}))),D(s)||(ze(i,s),fe(u,s)||Re(u,s,He()),ze(Te(u,s),n)),ze(r,n),Re(d,n,s),be(Te(o,e),(t=>{fe(I(e,t),n)&&ze(c,t)}))})),t(),we(r,(t=>l(n,[e,t]))),we(i,(t=>l(a,[e,t]))),we(c,(t=>{v(e,t),l(o,[e,t])}))}),Oe(i)),T),delRelationshipDefinition:e=>(Re(s,e),C(e),T),getStore:c,getRelationshipIds:d,forEachRelationship:t=>u((s=>t(s,(t=>e.forEachRow(h(s),t))))),hasRelationship:g,getLocalTableId:h,getRemoteTableId:S,getRemoteRowId:(e,t)=>Te(f(e)?.[0],t),getLocalRowIds:(e,t)=>Ce(Te(f(e)?.[1],t)),getLinkedRowIds:(e,t)=>D(f(e))?[t]:Ce(I(e,t,!0)),addRelationshipIdsListener:p,addRemoteRowIdListener:(e,t,s)=>r(s,n,[e,t]),addLocalRowIdsListener:(e,t,s)=>r(s,a,[e,t]),addLinkedRowIdsListener:(e,t,s)=>(I(e,t),r(s,o,[e,t])),delListener:e=>(v(...i(e)??[]),T),destroy:w,getListenerStats:()=>({})};return oe(T)})),st=(e="",t)=>[e,t],nt=(e="")=>st(e,ve()),at=e=>st(e,le()),ot=([e,t],s)=>[e,s(t,e)],rt=([e,t])=>[e,t],lt=(e,t)=>ot(e,(e=>me(e,t))),it=(e,t,s,n)=>de(e,((e,a)=>ct(e,ye(t,a,nt),s[a]=le(),n))),ct=([e,t],s,n,a)=>{e>s[0]&&(s[0]=e),a(t,s[1],n)},dt=(e,t,s)=>de(e,(([e,n],a)=>{const o=ye(t,a,st);e>o[0]&&(o[0]=e,o[1]=s[a]=n)})),ut=e=>[e,e],gt=()=>[ve(),ve()],ht=e=>[...e],ft=([e,t])=>e===t,Lt=e=>JSON.stringify(e,((e,t)=>t instanceof Map?ee.fromEntries([...t]):t)),Ct=JSON.parse,pt=(e,t,s)=>D(e)||!re(e)||ge(e)||ae(e)?(s?.(),!1):(ue(e,((s,n)=>{t(s,n)||ce(e,n)})),!ge(e)),wt=(e,t,s)=>Re(e,t,Te(e,t)==-s?void 0:s),It=()=>{let e,t,s=!1,n=!1,o=0,c=[];const g=ve(),I=ve(),M=ve(),m=ve(),V=ve(),x=ve(),E=ve(),k=ve(),F=ve(),H=ve(),N=ve(),O=ve(),W=ve(),_=ve(),G=He(),K=ve(),U=ve(),Y=ve(),Z=ve(),ee=gt(),te=gt(),se=gt(),ne=gt(),ae=gt(),re=gt(),le=gt(),de=gt(),Ce=gt(),Ae=gt(),Ne=gt(),Oe=gt(),Pe=gt(),We=gt(),Be=gt(),qe=gt(),Ge=gt(),Ke=gt(),Ue=gt(),Xe=gt(),Ye=gt(),Ze=gt(),et=ve(),tt=gt(),[st,nt,at,ot]=_e((()=>Js)),rt=e=>{if(!pt(e,((e,t)=>P([r,l],t))))return!1;const t=e[r];return!(!J(t)&&t!=a||(Je(e[l])!=t&&ce(e,l),0))},lt=(t,s)=>(!e||fe(N,s)||$t(s))&&pt(t,((e,t)=>it(s,t,e)),(()=>$t(s))),it=(e,t,s,n)=>pt(n?s:St(s,e,t),((n,a)=>A(ct(e,t,a,n),(e=>(s[a]=e,!0)),(()=>!1))),(()=>$t(e,t))),ct=(t,s,n,a)=>e?A(Te(Te(N,t),n),(e=>Je(a)!=e[r]?$t(t,s,n,a,e[l]):a),(()=>$t(t,s,n,a))):D(Je(a))?$t(t,s,n,a):a,dt=(e,t)=>pt(t?e:Tt(e),((t,s)=>A(vt(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>qt())),vt=(e,s)=>t?A(Te(W,e),(t=>Je(s)!=t[r]?qt(e,s,t[l]):s),(()=>qt(e,s))):D(Je(s))?qt(e,s):s,St=(e,t,s)=>(A(Te(O,t),(([n,a])=>{we(n,((t,s)=>{ie(e,s)||(e[s]=t)})),we(a,(n=>{ie(e,n)||$t(t,s,n)}))})),e),Tt=e=>(t&&(we(_,((t,s)=>{ie(e,s)||(e[s]=t)})),we(G,(t=>{ie(e,t)||qt(t)}))),e),bt=e=>Me(N,e,((e,t,s)=>{const n=ve(),a=He();Me(ye(N,t,ve),s,((e,t,s)=>{Re(e,t,s),A(s[l],(e=>Re(n,t,e)),(()=>ze(a,t)))})),Re(O,t,[n,a])}),((e,t)=>{Re(N,t),Re(O,t)})),Rt=e=>Me(W,e,((e,t,s)=>{Re(W,t,s),A(s[l],(e=>Re(_,t,e)),(()=>ze(G,t)))}),((e,t)=>{Re(W,t),Re(_,t),Ie(G,t)})),yt=e=>ge(e)?ys():vs(e),Mt=e=>Me(Y,e,((e,t,s)=>mt(t,s)),((e,t)=>Qt(t))),mt=(e,t)=>Me(ye(Y,e,(()=>(Ot(e,1),Re(K,e,je()),Re(U,e,ve()),ve()))),t,((t,s,n)=>Vt(e,t,s,n)),((t,s)=>Ht(e,t,s))),Vt=(e,t,s,n,a)=>Me(ye(t,s,(()=>(Pt(e,s,1),ve()))),n,((t,n,a)=>xt(e,s,t,n,a)),((n,o)=>zt(e,t,s,n,o,a))),xt=(e,t,s,n,a)=>{fe(s,n)||Wt(e,t,n,1);const o=Te(s,n);a!==o&&(jt(e,t,n,o,a),Re(s,n,a))},Et=(e,t,s,n,a)=>A(Te(t,s),(t=>xt(e,s,t,n,a)),(()=>Vt(e,t,s,St({[n]:a},e,s)))),kt=e=>ge(e)?Vs():Ss(e),Dt=e=>Me(Z,e,((e,t,s)=>At(t,s)),((e,t)=>Nt(t))),At=(e,t)=>{fe(Z,e)||_t(e,1);const s=Te(Z,e);t!==s&&(Bt(e,s,t),Re(Z,e,t))},Jt=(e,t)=>{const[s]=Te(K,e),n=s(t);return fe(Te(Y,e),n)?Jt(e,t):n},Ft=e=>Te(Y,e)??mt(e,{}),Qt=e=>mt(e,{}),Ht=(e,t,s)=>{const[,n]=Te(K,e);n(s),Vt(e,t,s,{},!0)},zt=(e,t,s,n,a,o)=>{const r=Te(Te(O,e)?.[0],a);if(!D(r)&&!o)return xt(e,s,n,a,r);const l=t=>{jt(e,s,t,Te(n,t)),Wt(e,s,t,-1),Re(n,t)};D(r)?l(a):be(n,l),Le(n)&&(Pt(e,s,-1),Le(Re(t,s))&&(Ot(e,-1),Re(Y,e),Re(K,e),Re(U,e)))},Nt=e=>{const t=Te(_,e);if(!D(t))return At(e,t);Bt(e,Te(Z,e)),_t(e,-1),Re(Z,e)},Ot=(e,t)=>wt(g,e,t),Pt=(e,t,s)=>wt(ye(m,e,ve),t,s)&&Re(M,e,ye(M,e,(()=>0))+s),Wt=(e,t,s,n)=>{const a=Te(U,e),o=Te(a,s)??0;(0==o&&1==n||1==o&&-1==n)&&wt(ye(I,e,ve),s,n),Re(a,s,o!=-n?o+n:null),wt(ye(ye(V,e,ve),t,ve),s,n)},jt=(e,t,s,n,a)=>ye(ye(ye(x,e,ve),t,ve),s,(()=>[n,0]))[1]=a,_t=(e,t)=>wt(E,e,t),Bt=(e,t,s)=>ye(k,e,(()=>[t,0]))[1]=s,$t=(e,t,s,n,a)=>(X(ye(ye(ye(F,e,ve),t,ve),s,(()=>[])),n),a),qt=(e,t,s)=>(X(ye(H,e,(()=>[])),t),s),Gt=(e,t,s)=>A(Te(Te(Te(x,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...ut(cs(e,t,s))])),Kt=e=>A(Te(k,e),(([e,t])=>[!0,e,t]),(()=>[!1,...ut(gs(e))])),Ut=e=>Le(F)||Le(qe[e])?0:we(e?De(F):F,((t,s)=>we(t,((t,n)=>we(t,((t,a)=>nt(qe[e],[s,n,a],t))))))),Xt=e=>Le(H)||Le(Ge[e])?0:we(e?Ee(H):H,((t,s)=>nt(Ge[e],[s],t))),Yt=(e,t,s,n)=>{if(!Le(e))return nt(t,n,(()=>me(e))),be(e,((e,t)=>nt(s,[...n??[],e],1==t))),1},Zt=e=>{const t=hs();t!=s&&nt(ee[e],void 0,t);const n=Le(Ae[e]),a=Le(Pe[e])&&Le(We[e])&&Le(Ce[e])&&Le(Ne[e])&&Le(re[e])&&Le(le[e])&&Le(de[e])&&n&&Le(se[e])&&Le(ne[e]),o=Le(Be[e])&&Le(Oe[e])&&Le(ae[e])&&Le(te[e]);if(!a||!o){const t=e?[Ee(g),ke(I),Ee(M),ke(m),De(V),De(x)]:[g,I,M,m,V,x];if(!a){Yt(t[0],se[e],ne[e]),we(t[1],((t,s)=>Yt(t,re[e],le[e],[s]))),we(t[2],((t,s)=>{0!=t&&nt(de[e],[s],os(s))}));const s=He();we(t[3],((t,a)=>{Yt(t,Ce[e],Ne[e],[a])&&!n&&(nt(Ae[e],[a,null]),ze(s,a))})),n||we(t[5],((t,n)=>{if(!fe(s,n)){const s=He();we(t,(e=>we(e,(([t,n],a)=>n!==t?ze(s,a):Ie(e,a))))),we(s,(t=>nt(Ae[e],[n,t])))}})),we(t[4],((t,s)=>we(t,((t,n)=>Yt(t,Pe[e],We[e],[s,n])))))}if(!o){let s;we(t[5],((t,n)=>{let a;we(t,((t,o)=>{let r;we(t,(([t,l],i)=>{l!==t&&(nt(Be[e],[n,o,i],l,t,Gt),s=a=r=1)})),r&&nt(Oe[e],[n,o],Gt)})),a&&nt(ae[e],[n],Gt)})),s&&nt(te[e],void 0,Gt)}}},es=e=>{const t=ws();t!=n&&nt(Ke[e],void 0,t);const s=Le(Xe[e])&&Le(Ye[e]),a=Le(Ze[e])&&Le(Ue[e]);if(!s||!a){const t=e?[Ee(E),Ee(k)]:[E,k];if(s||Yt(t[0],Xe[e],Ye[e]),!a){let s;we(t[1],(([t,n],a)=>{n!==t&&(nt(Ze[e],[a],n,t,Kt),s=1)})),s&&nt(Ue[e],void 0,Kt)}}},ts=(e,...t)=>(ks((()=>e(...q(t,y)))),Js),ss=()=>xe(Y),ns=()=>Se(Y),as=e=>Se(Te(U,y(e))),os=e=>he(Te(Y,y(e))),rs=e=>Se(Te(Y,y(e))),ls=(e,t,s,n=0,a)=>{return q(z(B((o=Te(Y,y(e)),r=(e,s)=>[D(t)?s:Te(e,y(t)),s],q([...o?.entries()??[]],(([e,t])=>r(t,e)))),(([e],[t])=>$e(e,t)*(s?-1:1))),n,D(a)?a:n+a),(([,e])=>e));var o,r},is=(e,t)=>Se(Te(Te(Y,y(e)),y(t))),cs=(e,t,s)=>Te(Te(Te(Y,y(e)),y(t)),y(s)),ds=()=>me(Z),us=()=>Se(Z),gs=e=>Te(Z,y(e)),hs=()=>!Le(Y),fs=e=>fe(Y,y(e)),Ls=(e,t)=>fe(Te(U,y(e)),y(t)),Cs=(e,t)=>fe(Te(Y,y(e)),y(t)),ps=(e,t,s)=>fe(Te(Te(Y,y(e)),y(t)),y(s)),ws=()=>!Le(Z),Is=e=>fe(Z,y(e)),vs=e=>ts((()=>(e=>pt(e,lt,$t))(e)?Mt(e):0)),Ss=e=>ts((()=>dt(e)?Dt(e):0)),Ts=e=>{try{yt(Ct(e))}catch{}return Js},bs=t=>ts((()=>{if((e=pt(t,(e=>pt(e,rt))))&&(bt(t),!Le(Y))){const e=ss();ys(),vs(e)}})),Rs=e=>ts((()=>{if(t=(e=>pt(e,rt))(e)){const s=ds();Es(),Vs(),t=!0,Rt(e),Ss(s)}})),ys=()=>ts((()=>Mt({}))),Ms=e=>ts((e=>fe(Y,e)?Qt(e):0),e),ms=(e,t)=>ts(((e,t)=>A(Te(Y,e),(s=>fe(s,t)?Ht(e,s,t):0))),e,t),Vs=()=>ts((()=>Dt({}))),xs=()=>ts((()=>{bt({}),e=!1})),Es=()=>ts((()=>{Rt({}),t=!1})),ks=(e,t)=>{if(-1!=o){Ds();const s=e();return As(t),s}},Ds=()=>(-1!=o&&o++,1==o&&nt(et,void 0),Js),As=e=>(o>0&&(o--,0==o&&(o=1,Ut(1),Le(x)||Zt(1),Xt(1),Le(k)||es(1),e?.(Js)&&(we(x,((e,t)=>we(e,((e,s)=>we(e,(([e],n)=>Fe(Js,t,s,n,e))))))),pe(x),we(k,(([e],t)=>Qe(Js,t,e))),pe(k)),nt(tt[0],void 0),o=-1,Ut(0),Le(x)||Zt(0),Xt(0),Le(k)||es(0),c[0]?.(Js),nt(tt[1],void 0),c[1]?.(Js),o=0,s=hs(),n=ws(),$([g,I,M,m,V,x,F,E,k,H],pe))),Js),Js={getContent:()=>[ss(),ds()],getTables:ss,getTableIds:ns,getTable:e=>Ve(Te(Y,y(e))),getTableCellIds:as,getRowCount:os,getRowIds:rs,getSortedRowIds:ls,getRow:(e,t)=>me(Te(Te(Y,y(e)),y(t))),getCellIds:is,getCell:cs,getValues:ds,getValueIds:us,getValue:gs,hasTables:hs,hasTable:fs,hasTableCell:Ls,hasRow:Cs,hasCell:ps,hasValues:ws,hasValue:Is,getTablesJson:()=>Lt(Y),getValuesJson:()=>Lt(Z),getJson:()=>Lt([Y,Z]),getTablesSchemaJson:()=>Lt(N),getValuesSchemaJson:()=>Lt(W),getSchemaJson:()=>Lt([N,W]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:([e,t])=>ts((()=>{(ge(e)?ys:vs)(e),(ge(t)?Vs:Ss)(t)})),setTables:vs,setTable:(e,t)=>ts((e=>lt(t,e)?mt(e,t):0),e),setRow:(e,t,s)=>ts(((e,t)=>it(e,t,s)?Vt(e,Ft(e),t,s):0),e,t),addRow:(e,t,s=!0)=>ks((()=>{let n;return it(e,n,t)&&(e=y(e),Vt(e,Ft(e),n=Jt(e,s?1:0),t)),n})),setPartialRow:(e,t,s)=>ts(((e,t)=>{if(it(e,t,s,1)){const n=Ft(e);ue(s,((s,a)=>Et(e,n,t,a,s)))}}),e,t),setCell:(e,t,s,n)=>ts(((e,t,s)=>A(ct(e,t,s,Q(n)?n(cs(e,t,s)):n),(n=>Et(e,Ft(e),t,s,n)))),e,t,s),setValues:Ss,setPartialValues:e=>ts((()=>dt(e,1)?ue(e,((e,t)=>At(t,e))):0)),setValue:(e,t)=>ts((e=>A(vt(e,Q(t)?t(gs(e)):t),(t=>At(e,t)))),e),applyChanges:e=>ts((()=>{ue(e[0],((e,t)=>D(e)?Ms(t):ue(e,((e,s)=>D(e)?ms(t,s):ue(e,((e,n)=>Fe(Js,t,s,n,e))))))),ue(e[1],((e,t)=>Qe(Js,t,e)))})),setTablesJson:Ts,setValuesJson:e=>{try{kt(Ct(e))}catch{}return Js},setJson:e=>ts((()=>{try{const[t,s]=Ct(e);yt(t),kt(s)}catch{Ts(e)}})),setTablesSchema:bs,setValuesSchema:Rs,setSchema:(e,t)=>ts((()=>{bs(e),Rs(t)})),delTables:ys,delTable:Ms,delRow:ms,delCell:(e,t,s,n)=>ts(((e,t,s)=>A(Te(Y,e),(a=>A(Te(a,t),(o=>fe(o,s)?zt(e,a,t,o,s,n):0))))),e,t,s),delValues:Vs,delValue:e=>ts((e=>fe(Z,e)?Nt(e):0),e),delTablesSchema:xs,delValuesSchema:Es,delSchema:()=>ts((()=>{xs(),Es()})),transaction:ks,startTransaction:Ds,getTransactionChanges:()=>[me(x,((e,t)=>-1===Te(g,t)?void 0:me(e,((e,s)=>-1===Te(Te(m,t),s)?void 0:me(e,(([,e])=>e),((e,t)=>ft(t)))),ge)),ge),me(k,(([,e])=>e),((e,t)=>ft(t)))],getTransactionLog:()=>[!Le(x),!Le(k),xe(x,ht,ft),xe(F),me(k,ht,ft),me(H),me(g),Ve(m),xe(V),me(E)],finishTransaction:As,forEachTable:e=>we(Y,((t,s)=>e(s,(e=>we(t,((t,s)=>e(s,(e=>be(t,e))))))))),forEachTableCell:(e,t)=>be(Te(U,y(e)),t),forEachRow:(e,t)=>we(Te(Y,y(e)),((e,s)=>t(s,(t=>be(e,t))))),forEachCell:(e,t,s)=>be(Te(Te(Y,y(e)),y(t)),s),forEachValue:e=>be(Z,e),addSortedRowIdsListener:(e,t,s,n,a,o,r)=>{let l=ls(e,t,s,n,a);return st((()=>{const r=ls(e,t,s,n,a);j(r,l)||(l=r,o(Js,e,t,s,n,a,l))}),Ae[r?1:0],[e,t],[ns])},addStartTransactionListener:e=>st(e,et),addWillFinishTransactionListener:e=>st(e,tt[0]),addDidFinishTransactionListener:e=>st(e,tt[1]),callListener:e=>(ot(e),Js),delListener:e=>(at(e),Js),getListenerStats:()=>({}),createStore:It,addListener:st,callListeners:nt,setInternalListeners:(e,t)=>c=[e,t]};return ue({[u+f]:[0,ee,[],()=>[hs()]],[f]:[0,te],[L]:[0,se],[u+h]:[1,ne,[ns],e=>[fs(...e)]],[h]:[1,ae,[ns]],[h+S]:[1,re,[ns]],[u+h+v]:[2,le,[ns,as],e=>[Ls(...e)]],[p]:[1,de,[ns]],[w]:[1,Ce,[ns]],[u+C]:[2,Ne,[ns,rs],e=>[Cs(...e)]],[C]:[2,Oe,[ns,rs]],[S]:[2,Pe,[ns,rs]],[u+v]:[3,We,[ns,rs,is],e=>[ps(...e)]],[v]:[3,Be,[ns,rs,is],e=>ut(cs(...e))],InvalidCell:[3,qe],[u+b]:[0,Ke,[],()=>[ws()]],[b]:[0,Ue],[R]:[0,Xe],[u+T]:[1,Ye,[us],e=>[Is(...e)]],[T]:[1,Ze,[us],e=>ut(gs(e[0]))],InvalidValue:[1,Ge]},(([e,t,s,n],a)=>{Js[d+a+i]=(...a)=>st(a[e],t[a[e+1]?1:0],e>0?z(a,0,e):void 0,s,n)})),oe(Js)},vt=2**36,St=2**30,Tt=2**24,bt=2**18,Rt=4096,yt=64,Mt=e=>String.fromCharCode(48+(63&e)),mt=(e,t)=>V(e,t)-48,Vt={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},xt=(e="")=>[e,[nt(e),nt(e)]];exports.createCheckpoints=Be,exports.createCustomPersister=(e,t,s,n,a,o,r,[l,i]=[],c=[])=>{let d,u,g,h=0,f=0;ye(Xe,c,(()=>0)),ye(Ye,c,(()=>[]));const[L,C,p,w]=((e,t)=>!e||D(t.getMergeableContent)?[0,t.getContent,t.getTransactionChanges,([e,t])=>!ge(e)||!ge(t)]:[1,t.getMergeableContent,t.getTransactionMergeableChanges,([,[[,e],[,t]]])=>!ge(e)||!ge(t)])(r,e),I=async e=>(2!=h&&(h=1,await v.schedule((async()=>{await e(),h=0}))),v),v={load:async(s,n)=>await I((async()=>{try{const s=await t();(L&&Ze(s)?e.setMergeableContent:e.setContent)(s)}catch{e.setContent([s,n])}})),startAutoLoad:async(s={},a={})=>(v.stopAutoLoad(),await v.load(s,a),f=1,g=n((async(s,n)=>{if(n){const t=n();await I((async()=>(L&&Ze(t)?e.applyMergeableChanges:e.applyChanges)(t)))}else await I((async()=>{try{const n=s?.()??await t();(L&&Ze(n)?e.setMergeableContent:e.setContent)(n)}catch(e){o?.(e)}}))})),v),stopAutoLoad:()=>(f&&(a(g),g=void 0,f=0),v),save:async e=>(1!=h&&(h=2,await v.schedule((async()=>{try{await s(C,e)}catch(e){o?.(e)}h=0}))),v),startAutoSave:async()=>(await v.stopAutoSave().save(),d=e.addDidFinishTransactionListener((()=>{const e=p();w(e)&&v.save((()=>e))})),v),stopAutoSave:()=>(A(d,e.delListener),d=void 0,v),schedule:async(...e)=>(X(Te(Ye,c),...e),await(async()=>{if(!Te(Xe,c)){for(Re(Xe,c,1);!D(u=Z(Te(Ye,c)));)try{await u()}catch(e){o?.(e)}Re(Xe,c,0)}})(),v),getStore:()=>e,destroy:()=>v.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return l&&(v[l]=()=>i),oe(v)},exports.createIndexes=qe,exports.createMergeableStore=e=>{let s,n,a=1,o=xt();const[r,l]=(e=>{let t=0,s=-1;const n=U(((e,t="",s)=>e.split(t,s))(e),((e,t)=>(e<<5)+e^V(t)),5381)>>>0,a=e=>{const n=t,[a,o]=D(e)?[0,0]:[mt(r=e,0)*vt+mt(r,1)*St+mt(r,2)*Tt+mt(r,3)*bt+mt(r,4)*Rt+mt(r,5)*yt+mt(r,6),mt(r,7)*bt+mt(r,8)*Rt+mt(r,9)*yt+mt(r,10),mt(r,11)*Tt+mt(r,12)*bt+mt(r,13)*Rt+mt(r,14)*yt+mt(r,15)];var r;t=x(n,a,Date.now()),s=t==n?t==a?x(s,o):s:t==a?o:-1};return[()=>{return a(),o=++s,r=n,Mt((e=t)/vt)+Mt(e/St)+Mt(e/Tt)+Mt(e/bt)+Mt(e/Rt)+Mt(e/yt)+Mt(e)+Mt(o/bt)+Mt(o/Rt)+Mt(o/yt)+Mt(o)+Mt(r/Tt)+Mt(r/bt)+Mt(r/Rt)+Mt(r/yt)+Mt(r);var e,o,r},a]})(e),i=It(),c=e=>{const t=a;a=0,e(),a=t},d=()=>{if(D(n)){const[,,e,,n]=i.getTransactionLog(),a=ge(e)&&ge(n)?t:s??(s=r()),o=st(a,[at(ge(e)?t:a),at(ge(n)?t:a)]),[[,l],[,c]]=o[1];return ue(e,((e,t)=>{const[,s]=l[t]=at(a);ue(e,((e,t)=>{const[,n]=s[t]=at(a);ue(e,(([,e],t)=>n[t]=st(a,e)))}))})),ue(n,(([,e],t)=>c[t]=st(a,e))),o}return n},u=e=>{const t=[{},{}];return l(e[0]),ct(e,o,t,(([e,t],[s,n],[a,o])=>{ct(e,s,a,((e,t,s)=>it(e,t,s,((e,t,s)=>it(e,t,s,dt))))),ct(t,n,o,dt)})),c((()=>i.applyChanges(t))),g},g={getMergeableContent:()=>ot(o,(([e,t])=>[lt(e,(e=>lt(e,(e=>lt(e,rt))))),lt(t,rt)])),setMergeableContent:e=>(c((()=>i.transaction((()=>{i.delTables().delValues(),o=xt()})))),u(e),g),getTransactionMergeableChanges:d,applyMergeableChanges:u,merge:e=>{const t=g.getMergeableContent(),s=e.getMergeableContent();return e.applyMergeableChanges(t),u(s)}};return i.setInternalListeners((()=>{if(a){n=d();const[e,[t,s]]=n,a=!ge(t[1]),r=!ge(s[1]),[,[l,i]]=o;(a||r)&&(o[0]=e),a&&(l[0]=e,ue(t[1],(([,t],s)=>{const n=ye(l[1],s,nt);n[0]=e,ue(t,(([,t],s)=>{const a=ye(n[1],s,nt);a[0]=e,ue(t,(([,t],s)=>Re(a[1],s,st(e,t))))}))}))),r&&(i[0]=e,ue(s[1],(([,t],s)=>Re(i[1],s,st(e,t)))))}}),(()=>s=n=void 0)),ue(i,((e,t)=>g[t]=M(t,"set")||M(t,"del")||M(t,"apply")||m(t,"Transaction")||"callListener"==t?(...t)=>(e(...t),g):M(t,"add")&&m(t,"Listener")?(...s)=>{const n=Vt[z(t,3,-8)]??0,a=s[n];return s[n]=(e,...t)=>a(g,...t),e(...s)}:e)),oe(g)},exports.createMetrics=Ue,exports.createQueries=et,exports.createRelationships=tt,exports.createStore=It,exports.defaultSorter=$e;
|
|
1
|
+
"use strict";const e=e=>typeof e,t="",s=e(t),n=e(!0),a=e(0),o=e(e),r="type",l="default",i="Listener",c="Result",d="add",u="Has",g="Ids",h="Table",f=h+"s",L=h+g,C="Row",p=C+"Count",w=C+g,b="Sorted"+C+g,v="Cell",T=v+g,I="Value",R=I+"s",S=I+g,y=e=>t+e,M=(e,t)=>e.startsWith(t),V=(e,t)=>e.endsWith(t),m=Math.max,x=Math.min,E=isFinite,k=e=>null==e,D=(e,t,s)=>k(e)?s?.():t(e),A=e=>e==s||e==n,H=t=>e(t)==s,J=t=>e(t)==o,F=e=>Array.isArray(e),Q=(e,t,s)=>e.slice(t,s),z=e=>e.length,N=()=>{},O=(e,t)=>e.includes(t),P=(e,t)=>e.every(t),W=(e,t)=>z(e)===z(t)&&P(e,((e,s)=>t[s]===e)),j=(e,t)=>P(e,((s,n)=>0==n||t(e[n-1],s)<=0)),_=(e,t)=>e.sort(t),B=(e,t)=>e.forEach(t),$=(e,t)=>e.map(t),q=e=>K(e,((e,t)=>e+t),0),G=e=>0==z(e),K=(e,t,s)=>e.reduce(t,s),U=(e,...t)=>e.push(...t),X=e=>e.pop(),Y=e=>e.shift(),Z=Object,ee=e=>Z.getPrototypeOf(e),te=Z.entries,se=Z.isFrozen,ne=e=>!k(e)&&D(ee(e),(e=>e==Z.prototype||k(ee(e))),(()=>!0)),ae=Z.keys,oe=Z.freeze,re=(e=[])=>Z.fromEntries(e),le=(e,t)=>t in e,ie=(e,t)=>(delete e[t],e),ce=(e,t)=>B(te(e),(([e,s])=>t(s,e))),de=(e,t)=>$(te(e),(([e,s])=>t(s,e))),ue=(e,t)=>re(de(e,((e,s)=>[s,t(e,s)]))),ge=e=>ne(e)&&0==(e=>z(ae(e)))(e),he=(e,t,s)=>(le(e,t)||(e[t]=s()),e[t]),fe=(e,t,s,n=0)=>k(e)||!ne(e)||!n&&ge(e)||se(e)?(s?.(),!1):(de(e,((s,n)=>{t(s,n)||ie(e,n)})),!!n||!ge(e)),Le=e=>e?.size??0,Ce=(e,t)=>e?.has(t)??!1,pe=e=>k(e)||0==Le(e),we=e=>[...e?.values()??[]],be=e=>e.clear(),ve=(e,t)=>e?.forEach(t),Te=(e,t)=>e?.delete(t),Ie=e=>new Map(e),Re=e=>[...e?.keys()??[]],Se=(e,t)=>e?.get(t),ye=(e,t)=>ve(e,((e,s)=>t(s,e))),Me=(e,t,s)=>k(s)?(Te(e,t),e):e?.set(t,s),Ve=(e,t,s,n)=>(Ce(e,t)?n?.(Se(e,t)):Me(e,t,s()),Se(e,t)),me=(e,t,s,n=Me)=>(de(t,((t,n)=>s(e,n,t))),ye(e,(s=>le(t,s)?0:n(e,s))),e),xe=(e,t,s,n)=>{const a={};return ve(e,((e,o)=>{if(!s?.(e,o)){const s=t?t(e,o):e;!n?.(s)&&(a[o]=s)}})),a},Ee=(e,t,s)=>xe(e,(e=>xe(e,t,s)),pe,ge),ke=(e,t,s)=>xe(e,(e=>Ee(e,t,s)),pe,ge),De=(e,t)=>{const s=Ie();return ve(e,((e,n)=>s.set(n,t?.(e)??e))),s},Ae=e=>De(e,De),He=e=>De(e,Ae),Je=(e,t,s,n,a=0)=>D((s?Ve:Se)(e,t[a],a>z(t)-2?s:Ie),(o=>{if(a>z(t)-2)return n?.(o)&&Me(e,t[a]),o;const r=Je(o,t,s,n,a+1);return pe(o)&&Me(e,t[a]),r})),Fe=t=>{const s=e(t);return A(s)||s==a&&E(t)?s:void 0},Qe=e=>null===e||!k(Fe(e)),ze=(e,t,s,n,a)=>k(a)?e.delCell(t,s,n,!0):e.setCell(t,s,n,a),Ne=(e,t,s)=>k(s)?e.delValue(t):e.setValue(t,s),Oe=e=>new Set(F(e)||k(e)?e:[e]),Pe=(e,t)=>e?.add(t),We=(e,t,s,n,a)=>{const o=e.hasRow,r=Ie(),l=Ie(),i=Ie(),c=Ie(),d=Ie(),u=Ie(),g=(t,s,...n)=>{const a=Ve(u,t,Oe);return B(n,(t=>Pe(a,t)&&s&&e.callListener(t))),n},h=(t,...s)=>D(Se(u,t),(n=>{B(G(s)?we(n):s,(t=>{e.delListener(t),Te(n,t)})),pe(n)&&Me(u,t)})),f=(e,s)=>{Me(r,e,s),Ce(l,e)||(Me(l,e,t()),Me(c,e,Ie()),Me(d,e,Ie()),a(i))},L=e=>{Me(r,e),Me(l,e),Me(c,e),Me(d,e),h(e),a(i)};return[()=>e,()=>Re(r),e=>ye(l,e),e=>Ce(l,e),e=>Se(r,e),e=>Se(l,e),(e,t)=>Me(l,e,t),f,(t,n,a,r,l)=>{f(t,n);const i=Ie(),u=Ie(),L=Se(c,t),C=Se(d,t),p=t=>{const a=s=>e.getCell(n,t,s),c=Se(L,t),d=o(n,t)?s(r(a,t)):void 0;if(c===d||F(c)&&F(d)&&W(c,d)||Me(i,t,[c,d]),!k(l)){const e=Se(C,t),s=o(n,t)?l(a,t):void 0;e!=s&&Me(u,t,s)}},w=e=>{a((()=>{ve(i,(([,e],t)=>Me(L,t,e))),ve(u,((e,t)=>Me(C,t,e)))}),i,u,L,C,e),be(i),be(u)};ye(L,p),e.hasTable(n)&&B(e.getRowIds(n),(e=>{Ce(L,e)||p(e)})),w(!0),h(t),g(t,0,e.addRowListener(n,null,((e,t,s)=>p(s))),e.addTableListener(n,(()=>w())))},L,e=>n(e,i),()=>ye(u,L),g,h]},je=(e,s)=>H(e)?t=>t(e):e??(()=>s??t),_e=(e,t)=>{const s=new WeakMap;return n=>{s.has(n)||s.set(n,e(n));const a=s.get(n);return t?.(a),a}},Be=/^\d+$/,$e=()=>{const e=[];let s=0;return[n=>(n?Y(e):null)??t+s++,t=>{Be.test(t)&&z(e)<1e3&&U(e,t)}]},qe=e=>{let s;const[n,a]=$e(),o=Ie();return[(a,r,l,i=[],c=(()=>[]))=>{s??=e();const d=n(1);return Me(o,d,[a,r,l,i,c]),Pe(Je(r,l??[t],Oe),d),d},(e,n,...a)=>B(((e,s=[t])=>{const n=[],a=(e,t)=>t==z(s)?U(n,e):null===s[t]?ve(e,(e=>a(e,t+1))):B([s[t],null],(s=>a(Se(e,s),t+1)));return a(e,0),n})(e,n),(e=>ve(e,(e=>Se(o,e)[0](s,...n??[],...a))))),e=>D(Se(o,e),(([,s,n])=>(Je(s,n??[t],void 0,(t=>(Te(t,e),pe(t)?1:0))),Me(o,e),a(e),n))),e=>D(Se(o,e),(([e,,t=[],n,a])=>{const o=(...r)=>{const l=z(r);l==z(t)?e(s,...r,...a(r)):k(t[l])?B(n[l]?.(...r)??[],(e=>o(...r,e))):o(...r,t[l])};o()}))]},Ge=_e((e=>{let s,n,a,o=100,r=Ie(),l=Ie(),i=1;const c=Ie(),d=Ie(),[u,g,h]=qe((()=>J)),f=Ie(),L=Ie(),C=[],p=[],w=(t,s)=>{i=0,e.transaction((()=>{const[n,a]=Se(f,s);ve(n,((s,n)=>ve(s,((s,a)=>ve(s,((s,o)=>ze(e,n,a,o,s[t]))))))),ve(a,((s,n)=>Ne(e,n,s[t])))})),i=1},b=e=>{Me(f,e),Me(L,e),g(d,[e])},v=(e,t)=>B(((e,t)=>e.splice(0,t))(e,t??z(e)),b),T=()=>v(C,z(C)-o),I=()=>D(s,(()=>{U(C,s),T(),v(p),s=void 0,a=1})),R=()=>{s=X(C),a=1};let S,y;const M=(e="")=>(k(s)&&(s=t+n++,Me(f,s,[r,l]),A(s,e),r=Ie(),l=Ie(),a=1),s),V=()=>{G(C)||(((e,...t)=>{e.unshift(...t)})(p,M()),w(0,s),s=X(C),a=1)},m=()=>{G(p)||(U(C,s),s=Y(p),w(1,s),a=1)},x=()=>{a&&(g(c),a=0)},E=e=>{const t=M(e);return x(),t},A=(e,t)=>(H(e)&&Se(L,e)!==t&&(Me(L,e,t),g(d,[e])),J),H=e=>Ce(f,e),J={setSize:e=>(o=e,T(),J),addCheckpoint:E,setCheckpoint:A,getStore:()=>e,getCheckpointIds:()=>[[...C],s,[...p]],forEachCheckpoint:e=>ye(L,e),hasCheckpoint:H,getCheckpoint:e=>Se(L,e),goBackward:()=>(V(),x(),J),goForward:()=>(m(),x(),J),goTo:e=>{const t=O(C,e)?V:O(p,e)?m:null;for(;!k(t)&&e!=s;)t();return x(),J},addCheckpointIdsListener:e=>u(e,c),addCheckpointListener:(e,t)=>u(t,d,[e]),delListener:e=>(h(e),J),clear:()=>(v(C),v(p),k(s)||b(s),s=void 0,n=0,E(),J),clearForward:()=>(G(p)||(v(p),g(c)),J),destroy:()=>{e.delListener(S),e.delListener(y)},getListenerStats:()=>({}),_registerListeners:()=>{S=e.addCellListener(null,null,null,((e,t,s,n,a,o)=>{if(i){I();const e=Ve(r,t,Ie),l=Ve(e,s,Ie),i=Ve(l,n,(()=>[o,void 0]));i[1]=a,i[0]===a&&pe(Me(l,n))&&pe(Me(e,s))&&pe(Me(r,t))&&R(),x()}})),y=e.addValueListener(null,((e,t,s,n)=>{if(i){I();const e=Ve(l,t,(()=>[n,void 0]));e[1]=s,e[0]===s&&pe(Me(l,t))&&R(),x()}}))}};return oe(J.clear())}),(e=>e._registerListeners())),Ke=(e,t)=>(e??0)<(t??0)?-1:1,Ue=_e((e=>{const s=Ie(),n=Ie(),[a,o,r]=qe((()=>b)),[l,i,c,d,u,g,h,,f,L,C,p]=We(e,Ie,(e=>k(e)?t:F(e)?$(e,y):y(e)),a,o),w=(t,s,n)=>{const a=u(t);ve(n,((t,n)=>s(n,(s=>ve(t,(t=>s(t,(s=>e.forEachCell(a,t,s)))))))))},b={setIndexDefinition:(e,t,a,r,l,i=Ke)=>{const c=k(l)?void 0:([e],[t])=>l(e,t);return f(e,t,((t,a,l,d,u,f)=>{let L=0;const C=Oe(),p=Oe(),w=g(e);if(ve(a,(([e,t],s)=>{const n=Oe(e),a=Oe(t);ve(n,(e=>Te(a,e)?Te(n,e):0)),ve(n,(e=>{Pe(C,e),D(Se(w,e),(t=>{Te(t,s),pe(t)&&(Me(w,e),L=1)}))})),ve(a,(e=>{Pe(C,e),Ce(w,e)||(Me(w,e,Oe()),L=1),Pe(Se(w,e),s),k(r)||Pe(p,e)}))})),t(),pe(u)||(f?ye(w,(e=>Pe(p,e))):ye(l,(e=>D(Se(d,e),(e=>Pe(p,e))))),ve(p,(e=>{const t=(t,s)=>i(Se(u,t),Se(u,s),e),s=[...Se(w,e)];j(s,t)||(Me(w,e,Oe(_(s,t))),Pe(C,e))}))),(L||f)&&!k(c)){const t=[...w];j(t,c)||(h(e,Ie(_(t,c))),L=1)}L&&o(s,[e]),ve(C,(t=>o(n,[e,t])))}),je(a),D(r,je)),b},delIndexDefinition:e=>(L(e),b),getStore:l,getIndexIds:i,forEachIndex:e=>c(((t,s)=>e(t,(e=>w(t,e,s))))),forEachSlice:(e,t)=>w(e,t,g(e)),hasIndex:d,hasSlice:(e,t)=>Ce(g(e),t),getTableId:u,getSliceIds:e=>Re(g(e)),getSliceRowIds:(e,t)=>we(Se(g(e),t)),addIndexIdsListener:C,addSliceIdsListener:(e,t)=>a(t,s,[e]),addSliceRowIdsListener:(e,t,s)=>a(s,n,[e,t]),delListener:e=>(r(e),b),destroy:p,getListenerStats:()=>({})};return oe(b)})),Xe=Ie([["avg",[(e,t)=>q(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=>m(...e),(e,t)=>m(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:m(t,e)]],["min",[e=>x(...e),(e,t)=>x(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:x(t,e)]],["sum",[e=>q(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,s)=>e-s+t]]]),Ye=(e,t,s,n,a,o=!1)=>{if(pe(s))return;const[r,l,i,c]=a;return o||=k(e),ve(n,(([s,n])=>{o||(e=k(s)?l?.(e,n,t++):k(n)?i?.(e,s,t--):c?.(e,n,s,t),o||=k(e))})),o?r(we(s),Le(s)):e},Ze=_e((e=>{const s=Ie(),[n,a,o]=qe((()=>p)),[r,l,i,c,d,u,g,,h,f,L,C]=We(e,N,(e=>isNaN(e)||k(e)||!0===e||!1===e||e===t?void 0:1*e),n,a),p={setMetricDefinition:(e,t,n,o,r,l,i)=>{const c=J(n)?[n,r,l,i]:Se(Xe,n)??Se(Xe,"sum");return h(e,t,((t,n,o,r,l,i)=>{const d=u(e),h=Le(r);i||=k(d),t();let f=Ye(d,h,r,n,c,i);E(f)||(f=void 0),f!=d&&(g(e,f),a(s,[e],f,d))}),je(o,1)),p},delMetricDefinition:e=>(f(e),p),getStore:r,getMetricIds:l,forEachMetric:i,hasMetric:c,getTableId:d,getMetric:u,addMetricIdsListener:L,addMetricListener:(e,t)=>n(t,s,[e]),delListener:e=>(o(e),p),destroy:C,getListenerStats:()=>({})};return oe(p)})),et=Ie(),tt=Ie(),st=_e((e=>{const s=e.createStore,n=s(),a=s(),o=Ie(),{addListener:r,callListeners:l,delListener:u}=a,[g,f,L,I,R,,,S,,y,M,V,m,x]=We(e,(()=>!0),N,r,l),E=(e,t,...s)=>B(s,(s=>Pe(Ve(Ve(o,t,Ie),e,Oe),s))),A=e=>{D(Se(o,e),(e=>{ye(e,((e,t)=>ve(t,(t=>e.delListener(t))))),be(e)})),B([a,n],(t=>t.delTable(e)))},H=(e,t,s)=>E(t,e,t.addStartTransactionListener(s.startTransaction),t.addDidFinishTransactionListener((()=>s.finishTransaction()))),F={setQueryDefinition:(s,o,r)=>{S(s,o),A(s);const l=[],i=[[null,[o,null,null,[],Ie()]]],c=[],d=[],u=[];r({select:(e,s)=>{const n=J(e)?[z(l)+t,e]:[k(s)?e:s,t=>t(e,s)];return U(l,n),{as:e=>n[0]=e}},join:(e,t,s)=>{const n=k(s)||J(t)?null:t,a=k(n)?t:s,o=[e,[e,n,J(a)?a:e=>e(a),[],Ie()]];return U(i,o),{as:e=>o[0]=e}},where:(e,t,s)=>U(c,J(e)?e:k(s)?s=>s(e)===t:n=>n(e,t)===s),group:(e,t,s,n,a)=>{const o=[e,[e,J(t)?[t,s,n,a]:Se(Xe,t)??[(e,t)=>t]]];return U(d,o),{as:e=>o[0]=e}},having:(e,t)=>U(u,J(e)?e:s=>s(e)===t)});const g=Ie(l);if(pe(g))return F;const h=Ie(i);ye(h,((e,[,t])=>D(Se(h,t),(({3:t})=>k(e)?0:U(t,e)))));const f=Ie(d);let L=n;if(pe(f)&&G(u))L=a;else{H(s,L,a);const e=Ie();ye(f,((t,[s,n])=>Pe(Ve(e,s,Oe),[t,n])));const t=Oe();ye(g,(s=>Ce(e,s)?0:Pe(t,s)));const n=Ie(),o=(t,n,o,r)=>D(t,(([l,i,c,d])=>{ye(n,((t,[s])=>{const n=Ve(l,t,Ie),a=Se(n,o),i=r?void 0:s;if(a!==i){const s=Oe([[a,i]]),r=Le(n);Me(n,o,i),ve(Se(e,t),(([e,t])=>{const a=Ye(d[e],r,n,s,t);d[e]=k(Fe(a))?null:a}))}})),pe(i)||!P(u,(e=>e((e=>d[e]))))?a.delRow(s,c):k(c)?t[2]=a.addRow(s,d):a.setRow(s,c,d)}));E(L,s,L.addRowListener(s,null,((a,r,l,i)=>{const c=[],d=[],u=Ie(),g=L.hasRow(s,l);let h=!g;ve(t,(e=>{const[t,n,a]=i(s,l,e);U(c,n),U(d,a),h||=t})),ye(e,(e=>{const[t,,n]=i(s,l,e);(h||t)&&Me(u,e,[n])})),h&&o(Je(n,c,void 0,(([,e])=>(Te(e,l),pe(e)))),u,l,1),g&&o(Je(n,d,(()=>{const e={};return ve(t,(t=>e[t]=L.getCell(s,l,t))),[Ie(),Oe(),void 0,e]}),(([,e])=>{Pe(e,l)})),u,l)})))}H(s,e,L);const C=(t,n,a,r)=>{const l=t=>e.getCell(n,a,t);B(r,(n=>{const[a,,o,r,i]=Se(h,n),c=o?.(l,t),[d,u]=Se(i,t)??[];c!=d&&(k(u)||x(s,u),Me(i,t,k(c)?null:[c,...m(s,1,e.addRowListener(a,c,(()=>C(t,a,c,r))))]))})),(t=>{const n=(s,n)=>e.getCell(...k(n)?[o,t,s]:s===o?[o,t,n]:[Se(h,s)?.[0],Se(Se(h,s)?.[4],t)?.[0],n]);L.transaction((()=>P(c,(e=>e(n)))?ye(g,((e,a)=>ze(L,s,t,e,a(n,t)))):L.delRow(s,t)))})(t)},{3:p}=Se(h,null);return L.transaction((()=>m(s,1,e.addRowListener(o,null,((t,n,a)=>{e.hasRow(o,a)?C(a,o,a,p):(L.delRow(s,a),ve(h,(({4:e})=>D(Se(e,a),(([,t])=>{x(s,t),Me(e,a)})))))}))))),F},delQueryDefinition:e=>(A(e),y(e),F),getStore:g,getQueryIds:f,forEachQuery:L,hasQuery:I,getTableId:R,addQueryIdsListener:e=>M((()=>e(F))),delListener:e=>(u(e),F),destroy:V,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:s,...n}=a.getListenerStats();return n}};return de({[h]:[1,1],[h+T]:[0,1],[p]:[0,1],[w]:[0,1],[b]:[0,5],[C]:[1,2],[T]:[0,2],[v]:[1,3]},(([e,t],s)=>{B(e?["get","has","forEach"]:["get"],(e=>F[e+c+s]=(...t)=>a[e+s](...t))),F[d+c+s+i]=(...e)=>a[d+s+i](...Q(e,0,t),((s,...n)=>e[t](F,...n)),!0)})),oe(F)})),nt=_e((e=>{const s=Ie(),n=Ie(),a=Ie(),o=Ie(),[r,l,i]=qe((()=>I)),[c,d,u,g,h,f,,,L,C,p,w]=We(e,(()=>[Ie(),Ie(),Ie(),Ie()]),(e=>k(e)?void 0:e+t),r,l),b=(e,t,s)=>D(f(e),(([n,,a])=>{if(!Ce(a,t)){const o=Oe();if(h(e)!=T(e))Pe(o,t);else{let e=t;for(;!k(e)&&!Ce(o,e);)Pe(o,e),e=Se(n,e)}if(s)return o;Me(a,t,o)}return Se(a,t)})),v=(e,t)=>D(f(e),(([,,e])=>Me(e,t))),T=e=>Se(s,e),I={setRelationshipDefinition:(e,t,r,i)=>(Me(s,e,r),L(e,t,((t,s)=>{const r=Oe(),i=Oe(),c=Oe(),[d,u]=f(e);ve(s,(([t,s],n)=>{k(t)||(Pe(i,t),D(Se(u,t),(e=>{Te(e,n),pe(e)&&Me(u,t)}))),k(s)||(Pe(i,s),Ce(u,s)||Me(u,s,Oe()),Pe(Se(u,s),n)),Pe(r,n),Me(d,n,s),ye(Se(o,e),(t=>{Ce(b(e,t),n)&&Pe(c,t)}))})),t(),ve(r,(t=>l(n,[e,t]))),ve(i,(t=>l(a,[e,t]))),ve(c,(t=>{v(e,t),l(o,[e,t])}))}),je(i)),I),delRelationshipDefinition:e=>(Me(s,e),C(e),I),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)=>Se(f(e)?.[0],t),getLocalRowIds:(e,t)=>we(Se(f(e)?.[1],t)),getLinkedRowIds:(e,t)=>k(f(e))?[t]:we(b(e,t,!0)),addRelationshipIdsListener:p,addRemoteRowIdListener:(e,t,s)=>r(s,n,[e,t]),addLocalRowIdsListener:(e,t,s)=>r(s,a,[e,t]),addLinkedRowIdsListener:(e,t,s)=>(b(e,t),r(s,o,[e,t])),delListener:e=>(v(...i(e)??[]),I),destroy:w,getListenerStats:()=>({})};return oe(I)})),at=new globalThis.TextEncoder,ot=e=>{let t=2166136261;return B(at.encode(e),(e=>{t^=e,t+=(t<<1)+(t<<4)+(t<<7)+(t<<8)+(t<<24)})),t>>>0},rt=([e,t,s])=>[e,t,s],lt=([e,t])=>[e,t],it=e=>e[2],ct=(e,t)=>ot(e+":"+t),dt=(e,t,s)=>{e[2]=t>>>0,s>e[0]&&(e[0]=s)},ut=e=>[e,re()],gt=(e="")=>[e,Ie(),0],ht=([e,t,s],n=rt)=>[e,xe(t,n),s],ft=(t,s)=>F(t)&&3==z(t)&&H(t[0])&&s(t[1])&&e(t[2])==a&&E(t[2]),Lt=e=>[e,e],Ct=()=>[Ie(),Ie()],pt=e=>[...e],wt=([e,t])=>e===t,bt=e=>JSON.stringify(e,((e,t)=>t instanceof Map?Z.fromEntries([...t]):t)),vt=JSON.parse,Tt=(e,t,s)=>Me(e,t,Se(e,t)==-s?void 0:s),It=()=>{let e,t,s=!1,n=!1,o=0,c=[];const g=Ie(),b=Ie(),M=Ie(),V=Ie(),m=Ie(),x=Ie(),E=Ie(),H=Ie(),F=Ie(),z=Ie(),N=Ie(),P=Ie(),j=Ie(),q=Ie(),G=Oe(),K=Ie(),X=Ie(),Y=Ie(),Z=Ie(),ee=Ct(),te=Ct(),se=Ct(),ne=Ct(),ae=Ct(),re=Ct(),ce=Ct(),ue=Ct(),he=Ct(),we=Ct(),Je=Ct(),Qe=Ct(),We=Ct(),je=Ct(),_e=Ct(),Be=Ct(),Ge=Ct(),Ue=Ct(),Xe=Ct(),Ye=Ct(),Ze=Ct(),et=Ct(),tt=Ie(),st=Ct(),[nt,at,ot,rt]=qe((()=>Hs)),lt=e=>{if(!fe(e,((e,t)=>O([r,l],t))))return!1;const t=e[r];return!(!A(t)&&t!=a||(Fe(e[l])!=t&&ie(e,l),0))},it=(t,s)=>(!e||Ce(N,s)||$t(s))&&fe(t,((e,t)=>ct(s,t,e)),(()=>$t(s))),ct=(e,t,s,n)=>fe(n?s:ht(s,e,t),((n,a)=>D(dt(e,t,a,n),(e=>(s[a]=e,!0)),(()=>!1))),(()=>$t(e,t))),dt=(t,s,n,a)=>e?D(Se(Se(N,t),n),(e=>Fe(a)!=e[r]?$t(t,s,n,a,e[l]):a),(()=>$t(t,s,n,a))):k(Fe(a))?$t(t,s,n,a):a,ut=(e,t)=>fe(t?e:ft(e),((t,s)=>D(gt(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>qt())),gt=(e,s)=>t?D(Se(j,e),(t=>Fe(s)!=t[r]?qt(e,s,t[l]):s),(()=>qt(e,s))):k(Fe(s))?qt(e,s):s,ht=(e,t,s)=>(D(Se(P,t),(([n,a])=>{ve(n,((t,s)=>{le(e,s)||(e[s]=t)})),ve(a,(n=>{le(e,n)||$t(t,s,n)}))})),e),ft=e=>(t&&(ve(q,((t,s)=>{le(e,s)||(e[s]=t)})),ve(G,(t=>{le(e,t)||qt(t)}))),e),Rt=e=>me(N,e,((e,t,s)=>{const n=Ie(),a=Oe();me(Ve(N,t,Ie),s,((e,t,s)=>{Me(e,t,s),D(s[l],(e=>Me(n,t,e)),(()=>Pe(a,t)))})),Me(P,t,[n,a])}),((e,t)=>{Me(N,t),Me(P,t)})),St=e=>me(j,e,((e,t,s)=>{Me(j,t,s),D(s[l],(e=>Me(q,t,e)),(()=>Pe(G,t)))}),((e,t)=>{Me(j,t),Me(q,t),Te(G,t)})),yt=e=>ge(e)?ys():vs(e),Mt=e=>me(Y,e,((e,t,s)=>Vt(t,s)),((e,t)=>Ft(t))),Vt=(e,t)=>me(Ve(Y,e,(()=>(Ot(e,1),Me(K,e,$e()),Me(X,e,Ie()),Ie()))),t,((t,s,n)=>mt(e,t,s,n)),((t,s)=>Qt(e,t,s))),mt=(e,t,s,n,a)=>me(Ve(t,s,(()=>(Pt(e,s,1),Ie()))),n,((t,n,a)=>xt(e,s,t,n,a)),((n,o)=>zt(e,t,s,n,o,a))),xt=(e,t,s,n,a)=>{Ce(s,n)||Wt(e,t,n,1);const o=Se(s,n);a!==o&&(jt(e,t,n,o,a),Me(s,n,a))},Et=(e,t,s,n,a)=>D(Se(t,s),(t=>xt(e,s,t,n,a)),(()=>mt(e,t,s,ht({[n]:a},e,s)))),kt=e=>ge(e)?ms():Ts(e),Dt=e=>me(Z,e,((e,t,s)=>At(t,s)),((e,t)=>Nt(t))),At=(e,t)=>{Ce(Z,e)||_t(e,1);const s=Se(Z,e);t!==s&&(Bt(e,s,t),Me(Z,e,t))},Ht=(e,t)=>{const[s]=Se(K,e),n=s(t);return Ce(Se(Y,e),n)?Ht(e,t):n},Jt=e=>Se(Y,e)??Vt(e,{}),Ft=e=>Vt(e,{}),Qt=(e,t,s)=>{const[,n]=Se(K,e);n(s),mt(e,t,s,{},!0)},zt=(e,t,s,n,a,o)=>{const r=Se(Se(P,e)?.[0],a);if(!k(r)&&!o)return xt(e,s,n,a,r);const l=t=>{jt(e,s,t,Se(n,t)),Wt(e,s,t,-1),Me(n,t)};k(r)?l(a):ye(n,l),pe(n)&&(Pt(e,s,-1),pe(Me(t,s))&&(Ot(e,-1),Me(Y,e),Me(K,e),Me(X,e)))},Nt=e=>{const t=Se(q,e);if(!k(t))return At(e,t);Bt(e,Se(Z,e)),_t(e,-1),Me(Z,e)},Ot=(e,t)=>Tt(g,e,t),Pt=(e,t,s)=>Tt(Ve(V,e,Ie),t,s)&&Me(M,e,Ve(M,e,(()=>0))+s),Wt=(e,t,s,n)=>{const a=Se(X,e),o=Se(a,s)??0;(0==o&&1==n||1==o&&-1==n)&&Tt(Ve(b,e,Ie),s,n),Me(a,s,o!=-n?o+n:null),Tt(Ve(Ve(m,e,Ie),t,Ie),s,n)},jt=(e,t,s,n,a)=>Ve(Ve(Ve(x,e,Ie),t,Ie),s,(()=>[n,0]))[1]=a,_t=(e,t)=>Tt(E,e,t),Bt=(e,t,s)=>Ve(H,e,(()=>[t,0]))[1]=s,$t=(e,t,s,n,a)=>(U(Ve(Ve(Ve(F,e,Ie),t,Ie),s,(()=>[])),n),a),qt=(e,t,s)=>(U(Ve(z,e,(()=>[])),t),s),Gt=(e,t,s)=>D(Se(Se(Se(x,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...Lt(cs(e,t,s))])),Kt=e=>D(Se(H,e),(([e,t])=>[!0,e,t]),(()=>[!1,...Lt(gs(e))])),Ut=e=>pe(F)||pe(Be[e])?0:ve(e?He(F):F,((t,s)=>ve(t,((t,n)=>ve(t,((t,a)=>at(Be[e],[s,n,a],t))))))),Xt=e=>pe(z)||pe(Ge[e])?0:ve(e?De(z):z,((t,s)=>at(Ge[e],[s],t))),Yt=(e,t,s,n)=>{if(!pe(e))return at(t,n,(()=>xe(e))),ye(e,((e,t)=>at(s,[...n??[],e],1==t))),1},Zt=e=>{const t=hs();t!=s&&at(ee[e],void 0,t);const n=pe(we[e]),a=pe(We[e])&&pe(je[e])&&pe(he[e])&&pe(Je[e])&&pe(re[e])&&pe(ce[e])&&pe(ue[e])&&n&&pe(se[e])&&pe(ne[e]),o=pe(_e[e])&&pe(Qe[e])&&pe(ae[e])&&pe(te[e]);if(!a||!o){const t=e?[De(g),Ae(b),De(M),Ae(V),He(m),He(x)]:[g,b,M,V,m,x];if(!a){Yt(t[0],se[e],ne[e]),ve(t[1],((t,s)=>Yt(t,re[e],ce[e],[s]))),ve(t[2],((t,s)=>{0!=t&&at(ue[e],[s],os(s))}));const s=Oe();ve(t[3],((t,a)=>{Yt(t,he[e],Je[e],[a])&&!n&&(at(we[e],[a,null]),Pe(s,a))})),n||ve(t[5],((t,n)=>{if(!Ce(s,n)){const s=Oe();ve(t,(e=>ve(e,(([t,n],a)=>n!==t?Pe(s,a):Te(e,a))))),ve(s,(t=>at(we[e],[n,t])))}})),ve(t[4],((t,s)=>ve(t,((t,n)=>Yt(t,We[e],je[e],[s,n])))))}if(!o){let s;ve(t[5],((t,n)=>{let a;ve(t,((t,o)=>{let r;ve(t,(([t,l],i)=>{l!==t&&(at(_e[e],[n,o,i],l,t,Gt),s=a=r=1)})),r&&at(Qe[e],[n,o],Gt)})),a&&at(ae[e],[n],Gt)})),s&&at(te[e],void 0,Gt)}}},es=e=>{const t=ws();t!=n&&at(Ue[e],void 0,t);const s=pe(Ye[e])&&pe(Ze[e]),a=pe(et[e])&&pe(Xe[e]);if(!s||!a){const t=e?[De(E),De(H)]:[E,H];if(s||Yt(t[0],Ye[e],Ze[e]),!a){let s;ve(t[1],(([t,n],a)=>{n!==t&&(at(et[e],[a],n,t,Kt),s=1)})),s&&at(Xe[e],void 0,Kt)}}},ts=(e,...t)=>(ks((()=>e(...$(t,y)))),Hs),ss=()=>ke(Y),ns=()=>Re(Y),as=e=>Re(Se(X,y(e))),os=e=>Le(Se(Y,y(e))),rs=e=>Re(Se(Y,y(e))),ls=(e,t,s,n=0,a)=>{return $(Q(_((o=Se(Y,y(e)),r=(e,s)=>[k(t)?s:Se(e,y(t)),s],$([...o?.entries()??[]],(([e,t])=>r(t,e)))),(([e],[t])=>Ke(e,t)*(s?-1:1))),n,k(a)?a:n+a),(([,e])=>e));var o,r},is=(e,t)=>Re(Se(Se(Y,y(e)),y(t))),cs=(e,t,s)=>Se(Se(Se(Y,y(e)),y(t)),y(s)),ds=()=>xe(Z),us=()=>Re(Z),gs=e=>Se(Z,y(e)),hs=()=>!pe(Y),fs=e=>Ce(Y,y(e)),Ls=(e,t)=>Ce(Se(X,y(e)),y(t)),Cs=(e,t)=>Ce(Se(Y,y(e)),y(t)),ps=(e,t,s)=>Ce(Se(Se(Y,y(e)),y(t)),y(s)),ws=()=>!pe(Z),bs=e=>Ce(Z,y(e)),vs=e=>ts((()=>(e=>fe(e,it,$t))(e)?Mt(e):0)),Ts=e=>ts((()=>ut(e)?Dt(e):0)),Is=e=>{try{yt(vt(e))}catch{}return Hs},Rs=t=>ts((()=>{if((e=fe(t,(e=>fe(e,lt))))&&(Rt(t),!pe(Y))){const e=ss();ys(),vs(e)}})),Ss=e=>ts((()=>{if(t=(e=>fe(e,lt))(e)){const s=ds();Es(),ms(),t=!0,St(e),Ts(s)}})),ys=()=>ts((()=>Mt({}))),Ms=e=>ts((e=>Ce(Y,e)?Ft(e):0),e),Vs=(e,t)=>ts(((e,t)=>D(Se(Y,e),(s=>Ce(s,t)?Qt(e,s,t):0))),e,t),ms=()=>ts((()=>Dt({}))),xs=()=>ts((()=>{Rt({}),e=!1})),Es=()=>ts((()=>{St({}),t=!1})),ks=(e,t)=>{if(-1!=o){Ds();const s=e();return As(t),s}},Ds=()=>(-1!=o&&o++,1==o&&at(tt,void 0),Hs),As=e=>(o>0&&(o--,0==o&&(o=1,Ut(1),pe(x)||Zt(1),Xt(1),pe(H)||es(1),e?.(Hs)&&(ve(x,((e,t)=>ve(e,((e,s)=>ve(e,(([e],n)=>ze(Hs,t,s,n,e))))))),be(x),ve(H,(([e],t)=>Ne(Hs,t,e))),be(H)),at(st[0],void 0),o=-1,Ut(0),pe(x)||Zt(0),Xt(0),pe(H)||es(0),c[0]?.(Hs),at(st[1],void 0),c[1]?.(Hs),o=0,s=hs(),n=ws(),B([g,b,M,V,m,x,F,E,H,z],be))),Hs),Hs={getContent:()=>[ss(),ds()],getTables:ss,getTableIds:ns,getTable:e=>Ee(Se(Y,y(e))),getTableCellIds:as,getRowCount:os,getRowIds:rs,getSortedRowIds:ls,getRow:(e,t)=>xe(Se(Se(Y,y(e)),y(t))),getCellIds:is,getCell:cs,getValues:ds,getValueIds:us,getValue:gs,hasTables:hs,hasTable:fs,hasTableCell:Ls,hasRow:Cs,hasCell:ps,hasValues:ws,hasValue:bs,getTablesJson:()=>bt(Y),getValuesJson:()=>bt(Z),getJson:()=>bt([Y,Z]),getTablesSchemaJson:()=>bt(N),getValuesSchemaJson:()=>bt(j),getSchemaJson:()=>bt([N,j]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:([e,t])=>ts((()=>{(ge(e)?ys:vs)(e),(ge(t)?ms:Ts)(t)})),setTables:vs,setTable:(e,t)=>ts((e=>it(t,e)?Vt(e,t):0),e),setRow:(e,t,s)=>ts(((e,t)=>ct(e,t,s)?mt(e,Jt(e),t,s):0),e,t),addRow:(e,t,s=!0)=>ks((()=>{let n;return ct(e,n,t)&&(e=y(e),mt(e,Jt(e),n=Ht(e,s?1:0),t)),n})),setPartialRow:(e,t,s)=>ts(((e,t)=>{if(ct(e,t,s,1)){const n=Jt(e);de(s,((s,a)=>Et(e,n,t,a,s)))}}),e,t),setCell:(e,t,s,n)=>ts(((e,t,s)=>D(dt(e,t,s,J(n)?n(cs(e,t,s)):n),(n=>Et(e,Jt(e),t,s,n)))),e,t,s),setValues:Ts,setPartialValues:e=>ts((()=>ut(e,1)?de(e,((e,t)=>At(t,e))):0)),setValue:(e,t)=>ts((e=>D(gt(e,J(t)?t(gs(e)):t),(t=>At(e,t)))),e),applyChanges:e=>ts((()=>{de(e[0],((e,t)=>k(e)?Ms(t):de(e,((e,s)=>k(e)?Vs(t,s):de(e,((e,n)=>ze(Hs,t,s,n,e))))))),de(e[1],((e,t)=>Ne(Hs,t,e)))})),setTablesJson:Is,setValuesJson:e=>{try{kt(vt(e))}catch{}return Hs},setJson:e=>ts((()=>{try{const[t,s]=vt(e);yt(t),kt(s)}catch{Is(e)}})),setTablesSchema:Rs,setValuesSchema:Ss,setSchema:(e,t)=>ts((()=>{Rs(e),Ss(t)})),delTables:ys,delTable:Ms,delRow:Vs,delCell:(e,t,s,n)=>ts(((e,t,s)=>D(Se(Y,e),(a=>D(Se(a,t),(o=>Ce(o,s)?zt(e,a,t,o,s,n):0))))),e,t,s),delValues:ms,delValue:e=>ts((e=>Ce(Z,e)?Nt(e):0),e),delTablesSchema:xs,delValuesSchema:Es,delSchema:()=>ts((()=>{xs(),Es()})),transaction:ks,startTransaction:Ds,getTransactionChanges:()=>[xe(x,((e,t)=>-1===Se(g,t)?void 0:xe(e,((e,s)=>-1===Se(Se(V,t),s)?void 0:xe(e,(([,e])=>e),(e=>wt(e)))),pe,ge)),pe,ge),xe(H,(([,e])=>e),(e=>wt(e))),1],getTransactionLog:()=>[!pe(x),!pe(H),ke(x,pt,wt),ke(F),xe(H,pt,wt),xe(z),xe(g),Ee(V),ke(m),xe(E)],finishTransaction:As,forEachTable:e=>ve(Y,((t,s)=>e(s,(e=>ve(t,((t,s)=>e(s,(e=>ye(t,e))))))))),forEachTableCell:(e,t)=>ye(Se(X,y(e)),t),forEachRow:(e,t)=>ve(Se(Y,y(e)),((e,s)=>t(s,(t=>ye(e,t))))),forEachCell:(e,t,s)=>ye(Se(Se(Y,y(e)),y(t)),s),forEachValue:e=>ye(Z,e),addSortedRowIdsListener:(e,t,s,n,a,o,r)=>{let l=ls(e,t,s,n,a);return nt((()=>{const r=ls(e,t,s,n,a);W(r,l)||(l=r,o(Hs,e,t,s,n,a,l))}),we[r?1:0],[e,t],[ns])},addStartTransactionListener:e=>nt(e,tt),addWillFinishTransactionListener:e=>nt(e,st[0]),addDidFinishTransactionListener:e=>nt(e,st[1]),callListener:e=>(rt(e),Hs),delListener:e=>(ot(e),Hs),getListenerStats:()=>({}),createStore:It,addListener:nt,callListeners:at,setInternalListeners:(e,t)=>c=[e,t]};return de({[u+f]:[0,ee,[],()=>[hs()]],[f]:[0,te],[L]:[0,se],[u+h]:[1,ne,[ns],e=>[fs(...e)]],[h]:[1,ae,[ns]],[h+T]:[1,re,[ns]],[u+h+v]:[2,ce,[ns,as],e=>[Ls(...e)]],[p]:[1,ue,[ns]],[w]:[1,he,[ns]],[u+C]:[2,Je,[ns,rs],e=>[Cs(...e)]],[C]:[2,Qe,[ns,rs]],[T]:[2,We,[ns,rs]],[u+v]:[3,je,[ns,rs,is],e=>[ps(...e)]],[v]:[3,_e,[ns,rs,is],e=>Lt(cs(...e))],InvalidCell:[3,Be],[u+R]:[0,Ue,[],()=>[ws()]],[R]:[0,Xe],[S]:[0,Ye],[u+I]:[1,Ze,[us],e=>[bs(...e)]],[I]:[1,et,[us],e=>Lt(gs(e[0]))],InvalidValue:[1,Ge]},(([e,t,s,n],a)=>{Hs[d+a+i]=(...a)=>nt(a[e],t[a[e+1]?1:0],e>0?Q(a,0,e):void 0,s,n)})),oe(Hs)},Rt=2**36,St=2**30,yt=2**24,Mt=2**18,Vt=4096,mt=64,xt=e=>String.fromCharCode(48+(63&e)),Et=(e,t)=>((e,t)=>e.charCodeAt(t))(e,t)-48,kt={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},Dt=(e="")=>[e,[gt(e),gt(e)],0];exports.createCheckpoints=Ge,exports.createCustomPersister=(e,t,s,n,a,o,r,l={},i=[])=>{let c,d,u,g=0;Ve(et,i,(()=>0)),Ve(tt,i,(()=>[]));const[h,f,L,C]=((e,t)=>!e||k(t.getMergeableContent)?[0,t.getContent,t.getTransactionChanges,([e,t])=>!ge(e)||!ge(t)]:[1,t.getMergeableContent,t.getTransactionMergeableChanges,([,[[,e],[,t]]])=>!ge(e)||!ge(t)])(r,e),p=async e=>(2!=g&&(g=1,await b.schedule((async()=>{await e(),g=0}))),b),w=t=>{(h&&H(t?.[0])?1===t?.[1][2]?e.applyMergeableChanges:e.setMergeableContent:1===t?.[2]?e.applyChanges:e.setContent)(t)},b={load:async(s,n)=>await p((async()=>{try{w(await t())}catch(t){o?.(t),e.setContent([s,n])}})),startAutoLoad:async(e={},s={})=>(await b.stopAutoLoad().load(e,s),d=n((async(e,s)=>{const n=s?.();await p((async()=>{try{w(n??e?.()??await t())}catch(e){o?.(e)}}))})),b),stopAutoLoad:()=>(d&&(a(d),d=void 0),b),isAutoLoading:()=>!k(d),save:async e=>(1!=g&&(g=2,await b.schedule((async()=>{try{await s(f,e)}catch(e){o?.(e)}g=0}))),b),startAutoSave:async()=>(await b.stopAutoSave().save(),u=e.addDidFinishTransactionListener((()=>{const e=L();C(e)&&b.save((()=>e))})),b),stopAutoSave:()=>(D(u,e.delListener),u=void 0,b),isAutoSaving:()=>!k(u),schedule:async(...e)=>(U(Se(tt,i),...e),await(async()=>{if(!Se(et,i)){for(Me(et,i,1);!k(c=Y(Se(tt,i)));)try{await c()}catch(e){o?.(e)}Me(et,i,0)}})(),b),getStore:()=>e,destroy:()=>b.stopAutoLoad().stopAutoSave(),getStats:()=>({}),...l};return oe(b)},exports.createIndexes=Ue,exports.createMergeableStore=e=>{let s,n,a=1,o=Dt();const[r,l]=(e=>{let t=0,s=-1;const n=ot(e),a=e=>{const n=t,[a,o]=k(e)||""==e?[0,0]:[Et(r=e,0)*Rt+Et(r,1)*St+Et(r,2)*yt+Et(r,3)*Mt+Et(r,4)*Vt+Et(r,5)*mt+Et(r,6),Et(r,7)*Mt+Et(r,8)*Vt+Et(r,9)*mt+Et(r,10),Et(r,11)*yt+Et(r,12)*Mt+Et(r,13)*Vt+Et(r,14)*mt+Et(r,15)];var r;t=m(n,a,Date.now()),s=t==n?t==a?m(s,o):s:t==a?o:-1};return[()=>{return a(),o=++s,r=n,xt((e=t)/Rt)+xt(e/St)+xt(e/yt)+xt(e/Mt)+xt(e/Vt)+xt(e/mt)+xt(e)+xt(o/Mt)+xt(o/Vt)+xt(o/mt)+xt(o)+xt(r/yt)+xt(r/Mt)+xt(r/Vt)+xt(r/mt)+xt(r);var e,o,r},a]})(e),i=It(),c=e=>{const t=a;return a=0,e(),a=t,L},d=(e,t=0)=>{const s={},n={},[a,[[r,l,i],c],d]=e,[,[g,h]]=o,[f,L,C]=g;if(r){let e=t?i:C^(r>f?(f?ot(f):0)^ot(r):0);ce(l,(([n,a,o],r)=>{const l=Ve(L,r,gt),[i,c,d]=l;let g=t?o:d^(n>i?(i?ot(i):0)^ot(n):0);ce(a,((e,n)=>{const[a,o]=u(e,Ve(c,n,gt),he(he(s,r,re),n,re),t);g^=t?0:(a?ct(n,a):0)^ct(n,o)})),dt(l,g,n),e^=t?0:(d?ct(r,d):0)^ct(r,l[2])})),dt(g,e,r)}return u(c,h,n,t),dt(o,t?d:g[2]^h[2],a),[s,n,1]},u=(e,s,n,a)=>{const[o,r,l]=e,[i,c,d]=s;if(o){let e=a?l:d^(o>i?(i?ot(i):0)^ot(o):0);ce(r,(([s,o,r],l)=>{const i=Ve(c,l,(()=>[t,void 0,0])),[d,,u]=i;s>d&&(dt(i,a?r:ot(bt(o??null)+":"+s),s),i[1]=o,n[l]=o,e^=a?0:ct(l,u)^ct(l,i[2]))})),dt(s,e,o)}return[d,s[2]]},g=()=>[o[0],[ht(o[1][0],(e=>ht(e,(e=>ht(e))))),ht(o[1][1])],o[2]],h=()=>{if(k(n)){const[,,e,,n]=i.getTransactionLog(),a=ge(e)&&ge(n)?t:s??(s=r()),o=[a,[ut(ge(e)?t:a),ut(ge(n)?t:a),1]],[[,l],[,c]]=o[1];return de(e,((e,t)=>{const[,s]=l[t]=ut(a);de(e,((e,t)=>{const[,n]=s[t]=ut(a);de(e,(([,e],t)=>n[t]=[a,e]))}))})),de(n,(([,e],t)=>c[t]=[a,e])),o}return n},f=e=>c((()=>{l(e[0]),i.applyChanges(d(e))})),L={getId:()=>e,getMergeableContent:g,getMergeableContentHashes:()=>[o[0],[o[1][0][2],o[1][1][2]]],getMergeableTableHashes:()=>xe(o[1][0][1],it),getMergeableTableIdsDiff:e=>{const t=[];return ye(o[1][0][1],((s,[,,n])=>{n!==e?.[s]&&U(t,s)})),t},getMergeableRowHashes:e=>re($(e,(e=>[e,xe(Se(o[1][0][1],e)?.[1],it)]))),getMergeableRowIdsDiff:e=>ue(e,((e,t)=>{const s=[];return ye(Se(o[1][0][1],t)?.[1],((t,[,,n])=>{n!==e?.[t]&&U(s,t)})),s})),getMergeableCellHashes:e=>ue(e,((e,t)=>re($(e,(e=>[e,xe(Se(Se(o[1][0][1],t)?.[1],e)?.[1],it)]))))),getMergeableTablesChanges:e=>{const[,[[t,s]]]=o,n={};return ce(e,((e,t)=>D(Se(s,t),(([s,a])=>{const o={};ce(e,((e,t)=>D(Se(a,t),(([s,n])=>{const a=xe(n,lt,(([,,t],s)=>t==e?.[s]));ge(a)||(o[t]=[s,a])})))),ge(o)||(n[t]=[s,o])})))),[t,n]},getMergeableValuesHashes:()=>xe(o[1][1][1],it),getMergeableValuesChanges:e=>[o[1][1][0],xe(o[1][1][1],lt,(([,,t],s)=>t==e?.[s]))],setMergeableContent:e=>c((()=>(e=>ft(e,(e=>F(e)&&2==z(e)&&ft(e[0],(e=>fe(e,(e=>ft(e,(e=>fe(e,(e=>ft(e,(e=>fe(e,(e=>ft(e,Qe)),void 0,1)))),void 0,1)))),void 0,1)))&&ft(e[1],(e=>fe(e,(e=>ft(e,Qe)),void 0,1))))))(e)?i.transaction((()=>{i.delTables().delValues(),o=Dt(),l(e[0]),i.applyChanges(d(e,1))})):0)),getTransactionMergeableChanges:h,applyMergeableChanges:f,merge:e=>{const t=g(),s=e.getMergeableContent();return e.applyMergeableChanges(t),f(s)}};return i.setInternalListeners((()=>{a&&(n=h(),d(n))}),(()=>s=n=void 0)),de(i,((e,t)=>L[t]=M(t,"set")||M(t,"del")||M(t,"apply")||V(t,"Transaction")||"callListener"==t?(...t)=>(e(...t),L):M(t,"add")&&V(t,"Listener")?(...s)=>{const n=kt[Q(t,3,-8)]??0,a=s[n];return s[n]=(e,...t)=>a(L,...t),e(...s)}:e)),oe(L)},exports.createMetrics=Ze,exports.createQueries=st,exports.createRelationships=nt,exports.createStore=It,exports.defaultSorter=Ke;
|
package/lib/cjs/tinybase.cjs.gz
CHANGED
|
Binary file
|