tinybase 5.0.0-beta.5 → 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/cjs/mergeable-store.cjs +1 -1
- package/lib/cjs/mergeable-store.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 -1
- 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/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/mergeable-store.cjs +1 -1
- package/lib/cjs-es6/mergeable-store.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 -1
- 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/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/mergeable-store.js +287 -130
- package/lib/debug/persisters/persister-automerge.js +39 -46
- package/lib/debug/persisters/persister-browser.js +39 -46
- package/lib/debug/persisters/persister-cr-sqlite-wasm.js +64 -60
- package/lib/debug/persisters/persister-electric-sql.js +64 -60
- package/lib/debug/persisters/persister-expo-sqlite-next.js +64 -60
- package/lib/debug/persisters/persister-expo-sqlite.js +64 -60
- package/lib/debug/persisters/persister-file.js +39 -46
- package/lib/debug/persisters/persister-indexed-db.js +39 -46
- package/lib/debug/persisters/persister-libsql.js +64 -60
- package/lib/debug/persisters/persister-partykit-client.js +39 -46
- package/lib/debug/persisters/persister-powersync.js +917 -0
- package/lib/debug/persisters/persister-remote.js +39 -46
- package/lib/debug/persisters/persister-sqlite-wasm.js +64 -60
- package/lib/debug/persisters/persister-sqlite3.js +64 -60
- package/lib/debug/persisters/persister-sync.js +594 -0
- package/lib/debug/persisters/persister-yjs.js +41 -48
- package/lib/debug/persisters.js +38 -45
- package/lib/debug/store.js +44 -32
- package/lib/debug/tinybase.js +322 -173
- package/lib/debug/tools.js +2 -2
- package/lib/debug/ui-react-dom.js +81 -76
- package/lib/debug/ui-react.js +1 -1
- package/lib/es6/mergeable-store.js +1 -1
- package/lib/es6/mergeable-store.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 -1
- 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/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/mergeable-store.js +1 -1
- package/lib/mergeable-store.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 -1
- 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/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 +121 -59
- 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 +3 -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 +60 -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 +185 -87
- 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 +4 -1
- 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 +79 -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 +100 -3
- 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/mergeable-store.js +1 -1
- package/lib/umd/mergeable-store.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 -1
- 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/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/mergeable-store.js +1 -1
- package/lib/umd-es6/mergeable-store.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 -1
- 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/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 +37 -26
- package/readme.md +2 -2
|
@@ -23,6 +23,7 @@
|
|
|
23
23
|
* |persister-expo-sqlite-next|createExpoSqliteNextPersister|SQLite in React Native, via [expo-sqlite/next](https://github.com/expo/expo/tree/main/packages/expo-sqlite/next)|
|
|
24
24
|
* |persister-electric-sql|createElectricSqlPersister|Electric SQL, via [electric-sql](https://github.com/electric-sql/electric)|
|
|
25
25
|
* |persister-libsql|createLibSqlPersister|LibSQL for Turso, via [libsql-client](https://github.com/tursodatabase/libsql-client-ts)|
|
|
26
|
+
* |persister-powersync|createPowerSyncPersister|PowerSync, via [powersync-sdk](https://github.com/powersync-ja/powersync-js)|
|
|
26
27
|
* |persister-yjs|createYjsPersister|Yjs CRDTs, via [yjs](https://github.com/yjs/yjs)|
|
|
27
28
|
* |persister-automerge|createSqliteWasmPersister|Automerge CRDTs, via [automerge-repo](https://github.com/automerge/automerge-repo)|
|
|
28
29
|
*
|
|
@@ -47,8 +48,12 @@ import {
|
|
|
47
48
|
Store,
|
|
48
49
|
Tables,
|
|
49
50
|
Values,
|
|
50
|
-
} from './store.d';
|
|
51
|
-
import {
|
|
51
|
+
} from './store.d.ts';
|
|
52
|
+
import {
|
|
53
|
+
MergeableChanges,
|
|
54
|
+
MergeableContent,
|
|
55
|
+
MergeableStore,
|
|
56
|
+
} from './mergeable-store';
|
|
52
57
|
import {TableIdFromSchema} from './internal/store';
|
|
53
58
|
|
|
54
59
|
/**
|
|
@@ -100,9 +105,16 @@ export type PersisterStats = {
|
|
|
100
105
|
* @category Creation
|
|
101
106
|
* @since v4.0.0
|
|
102
107
|
*/
|
|
103
|
-
export type PersisterListener<
|
|
104
|
-
|
|
105
|
-
|
|
108
|
+
export type PersisterListener<
|
|
109
|
+
Schemas extends OptionalSchemas,
|
|
110
|
+
SupportsMergeableStore extends boolean = false,
|
|
111
|
+
> = (
|
|
112
|
+
getContent?: () =>
|
|
113
|
+
| Content<Schemas, true>
|
|
114
|
+
| (SupportsMergeableStore extends true ? MergeableContent<Schemas> : never),
|
|
115
|
+
getChanges?: () =>
|
|
116
|
+
| Changes<Schemas>
|
|
117
|
+
| (SupportsMergeableStore extends true ? MergeableChanges<Schemas> : never),
|
|
106
118
|
) => void;
|
|
107
119
|
|
|
108
120
|
/**
|
|
@@ -865,6 +877,33 @@ export interface Persister<
|
|
|
865
877
|
*/
|
|
866
878
|
stopAutoLoad(): Persister<Schemas, SupportsMergeableStore>;
|
|
867
879
|
|
|
880
|
+
/**
|
|
881
|
+
* The isAutoLoading method lets you find out if the Persister is currently
|
|
882
|
+
* automatically loading its content.
|
|
883
|
+
* @returns A boolean indicating whether the Persister is currently
|
|
884
|
+
* autoLoading.
|
|
885
|
+
* @example
|
|
886
|
+
* This example creates a Persister and queries whether it is autoLoading.
|
|
887
|
+
*
|
|
888
|
+
* ```js
|
|
889
|
+
* const persister = createSessionPersister(createStore(), 'pets');
|
|
890
|
+
*
|
|
891
|
+
* console.log(persister.isAutoLoading());
|
|
892
|
+
* // -> false
|
|
893
|
+
*
|
|
894
|
+
* await persister.startAutoLoad();
|
|
895
|
+
* console.log(persister.isAutoLoading());
|
|
896
|
+
* // -> true
|
|
897
|
+
*
|
|
898
|
+
* await persister.stopAutoLoad();
|
|
899
|
+
* console.log(persister.isAutoLoading());
|
|
900
|
+
* // -> false
|
|
901
|
+
* ```
|
|
902
|
+
* @category Load
|
|
903
|
+
* @since v5.0.0
|
|
904
|
+
*/
|
|
905
|
+
isAutoLoading(): boolean;
|
|
906
|
+
|
|
868
907
|
/**
|
|
869
908
|
* The save method takes data from the Store with which the Persister is
|
|
870
909
|
* associated and persists it into storage, once.
|
|
@@ -985,6 +1024,33 @@ export interface Persister<
|
|
|
985
1024
|
*/
|
|
986
1025
|
stopAutoSave(): Persister<Schemas, SupportsMergeableStore>;
|
|
987
1026
|
|
|
1027
|
+
/**
|
|
1028
|
+
* The isAutoSaving method lets you find out if the Persister is currently
|
|
1029
|
+
* automatically saving its content.
|
|
1030
|
+
* @returns A boolean indicating whether the Persister is currently
|
|
1031
|
+
* autoSaving.
|
|
1032
|
+
* @example
|
|
1033
|
+
* This example creates a Persister and queries whether it is autoSaving.
|
|
1034
|
+
*
|
|
1035
|
+
* ```js
|
|
1036
|
+
* const persister = createSessionPersister(createStore(), 'pets');
|
|
1037
|
+
*
|
|
1038
|
+
* console.log(persister.isAutoSaving());
|
|
1039
|
+
* // -> false
|
|
1040
|
+
*
|
|
1041
|
+
* await persister.startAutoSave();
|
|
1042
|
+
* console.log(persister.isAutoSaving());
|
|
1043
|
+
* // -> true
|
|
1044
|
+
*
|
|
1045
|
+
* await persister.stopAutoSave();
|
|
1046
|
+
* console.log(persister.isAutoSaving());
|
|
1047
|
+
* // -> false
|
|
1048
|
+
* ```
|
|
1049
|
+
* @category Save
|
|
1050
|
+
* @since v5.0.0
|
|
1051
|
+
*/
|
|
1052
|
+
isAutoSaving(): boolean;
|
|
1053
|
+
|
|
988
1054
|
/**
|
|
989
1055
|
* The schedule method allows you to queue up a series of asynchronous actions
|
|
990
1056
|
* that must run in sequence during persistence.
|
|
@@ -1171,7 +1237,9 @@ export interface Persister<
|
|
|
1171
1237
|
* getContent: () =>
|
|
1172
1238
|
* | Content
|
|
1173
1239
|
* | (SupportsMergeableStore extends true ? MergeableContent : never),
|
|
1174
|
-
* getChanges?: () =>
|
|
1240
|
+
* getChanges?: () =>
|
|
1241
|
+
* | Changes
|
|
1242
|
+
* | (SupportsMergeableStore extends true ? MergeableChanges : never),
|
|
1175
1243
|
* ) => Promise<void>,
|
|
1176
1244
|
* addPersisterListener: (
|
|
1177
1245
|
* listener: PersisterListener<SupportsMergeableStore>,
|
|
@@ -1275,7 +1343,11 @@ export function createCustomPersister<
|
|
|
1275
1343
|
| (SupportsMergeableStore extends true
|
|
1276
1344
|
? MergeableContent<Schemas>
|
|
1277
1345
|
: never),
|
|
1278
|
-
getChanges?: () =>
|
|
1346
|
+
getChanges?: () =>
|
|
1347
|
+
| Changes<Schemas>
|
|
1348
|
+
| (SupportsMergeableStore extends true
|
|
1349
|
+
? MergeableChanges<Schemas>
|
|
1350
|
+
: never),
|
|
1279
1351
|
) => Promise<void>,
|
|
1280
1352
|
addPersisterListener: (
|
|
1281
1353
|
listener: PersisterListener<Schemas>,
|
|
@@ -19,11 +19,11 @@ import {
|
|
|
19
19
|
OptionalSchemas,
|
|
20
20
|
OptionalTablesSchema,
|
|
21
21
|
Store,
|
|
22
|
-
} from './store.d';
|
|
22
|
+
} from './store.d.ts';
|
|
23
23
|
import {CellIdFromSchema, TableIdFromSchema} from './internal/store';
|
|
24
24
|
import {GetResultCell, JoinedCellIdOrId} from './internal/queries';
|
|
25
|
-
import {Id, IdOrNull, Ids} from './common.d';
|
|
26
|
-
import {GetIdChanges} from '../store.d';
|
|
25
|
+
import {Id, IdOrNull, Ids} from './common.d.ts';
|
|
26
|
+
import {GetIdChanges} from '../store.d.ts';
|
|
27
27
|
|
|
28
28
|
/**
|
|
29
29
|
* The ResultTable type is the data structure representing the results of a
|
|
@@ -17,8 +17,8 @@ import {
|
|
|
17
17
|
OptionalTablesSchema,
|
|
18
18
|
RowCallback,
|
|
19
19
|
Store,
|
|
20
|
-
} from './store.d';
|
|
21
|
-
import {Id, IdOrNull, Ids} from './common.d';
|
|
20
|
+
} from './store.d.ts';
|
|
21
|
+
import {Id, IdOrNull, Ids} from './common.d.ts';
|
|
22
22
|
|
|
23
23
|
/**
|
|
24
24
|
* The Relationship type represents the concept of a map that connects one Row
|
|
@@ -22,7 +22,7 @@ import {
|
|
|
22
22
|
Truncate,
|
|
23
23
|
ValueIdFromSchema,
|
|
24
24
|
} from './internal/store';
|
|
25
|
-
import {Id, IdOrNull, Ids, Json} from './common.d';
|
|
25
|
+
import {Id, IdOrNull, Ids, Json} from './common.d.ts';
|
|
26
26
|
|
|
27
27
|
/**
|
|
28
28
|
* The TablesSchema type describes the tabular structure of a Store in terms of
|
|
@@ -167,7 +167,41 @@ export type OptionalSchemas = [OptionalTablesSchema, OptionalValuesSchema];
|
|
|
167
167
|
*/
|
|
168
168
|
export type NoSchemas = [NoTablesSchema, NoValuesSchema];
|
|
169
169
|
|
|
170
|
-
|
|
170
|
+
/**
|
|
171
|
+
* The Content type describes both the Tables and Values in a Store.
|
|
172
|
+
*
|
|
173
|
+
* This has schema-based typing. The following is a simplified representation:
|
|
174
|
+
*
|
|
175
|
+
* ```ts override
|
|
176
|
+
* [Tables, Values];
|
|
177
|
+
* ```
|
|
178
|
+
*
|
|
179
|
+
* It is an array of two objects, representing tabular and keyed value content.
|
|
180
|
+
* @example
|
|
181
|
+
* The following is a valid Content array:
|
|
182
|
+
* ```json
|
|
183
|
+
* [
|
|
184
|
+
* {
|
|
185
|
+
* "pets": {
|
|
186
|
+
* "fido": {
|
|
187
|
+
* "sold": false,
|
|
188
|
+
* "price": 4,
|
|
189
|
+
* },
|
|
190
|
+
* "felix": {
|
|
191
|
+
* "sold": true,
|
|
192
|
+
* "price": 5,
|
|
193
|
+
* },
|
|
194
|
+
* },
|
|
195
|
+
* },
|
|
196
|
+
* {
|
|
197
|
+
* open: true,
|
|
198
|
+
* employees: 3,
|
|
199
|
+
* },
|
|
200
|
+
* ]
|
|
201
|
+
* ```
|
|
202
|
+
* @category Store
|
|
203
|
+
* @since v5.0.0
|
|
204
|
+
*/
|
|
171
205
|
export type Content<
|
|
172
206
|
Schemas extends OptionalSchemas,
|
|
173
207
|
WhenSet extends boolean = false,
|
|
@@ -2207,7 +2241,69 @@ export type ChangedValue<
|
|
|
2207
2241
|
*/
|
|
2208
2242
|
export type InvalidValues = {[valueId: Id]: any[]};
|
|
2209
2243
|
|
|
2210
|
-
|
|
2244
|
+
/**
|
|
2245
|
+
* The Changes type describes the net meaningful changes that were made to a
|
|
2246
|
+
* Store during a transaction.
|
|
2247
|
+
*
|
|
2248
|
+
* This has schema-based typing. The following is a simplified representation:
|
|
2249
|
+
*
|
|
2250
|
+
* ```ts override
|
|
2251
|
+
* [
|
|
2252
|
+
* changedTables: {
|
|
2253
|
+
* [tableId: Id]:
|
|
2254
|
+
* | {[rowId: Id]: {[cellId: Id]: CellOrUndefined} | undefined}
|
|
2255
|
+
* | undefined;
|
|
2256
|
+
* },
|
|
2257
|
+
* changedValues: {[valueId: Id]: ValueOrUndefined},
|
|
2258
|
+
* isChanges: 1,
|
|
2259
|
+
* ];
|
|
2260
|
+
* ```
|
|
2261
|
+
*
|
|
2262
|
+
* This contains mostly equivalent information to a TransactionLog, but in a
|
|
2263
|
+
* form that can be more efficiently parsed and serialized (for example in the
|
|
2264
|
+
* case of synchronization between systems).
|
|
2265
|
+
*
|
|
2266
|
+
* It is an array of two objects, representing tabular and keyed value changes.
|
|
2267
|
+
* If the first item is an empty object, it means no tabular changes were made.
|
|
2268
|
+
* If the second item is an empty object, it means no keyed value changes were
|
|
2269
|
+
* made.
|
|
2270
|
+
*
|
|
2271
|
+
* If not empty, the first object has an entry for each Table in a Store that
|
|
2272
|
+
* has had a change within it. If the entry is null, it means that whole Table
|
|
2273
|
+
* was deleted. Otherwise, the entry will be an object with an entry for each
|
|
2274
|
+
* Row in that Table that had a change within it. In turn, if that entry is
|
|
2275
|
+
* null, it means the Row was deleted. Otherwise, the entry will be an object
|
|
2276
|
+
* with an entry for each Cell in that Row that had a change within it. If the
|
|
2277
|
+
* entry is null, the Cell was deleted, otherwise it will contain the new value
|
|
2278
|
+
* the Cell was changed to during the transaction.
|
|
2279
|
+
*
|
|
2280
|
+
* If not empty, the second object has an entry for each Value in a Store that
|
|
2281
|
+
* has had a change. If the entry is null, the Value was deleted, otherwise it
|
|
2282
|
+
* will contain the new Value it was changed to during the transaction.
|
|
2283
|
+
*
|
|
2284
|
+
* A third, required, item in the array is the digit `1`, so that instances of
|
|
2285
|
+
* Content and Changes types can be disambiguated.
|
|
2286
|
+
* @example
|
|
2287
|
+
* The following is a valid Changes array that conveys the following:
|
|
2288
|
+
* ```json
|
|
2289
|
+
* [
|
|
2290
|
+
* { // changes to tabular data in the Store
|
|
2291
|
+
* "pets": { // this Table was changed
|
|
2292
|
+
* "fido": null, // this Row was deleted
|
|
2293
|
+
* "felix": { // this Row was changed
|
|
2294
|
+
* "sold": true, // this Cell was changed
|
|
2295
|
+
* "price": null, // this Cell was deleted
|
|
2296
|
+
* },
|
|
2297
|
+
* },
|
|
2298
|
+
* "pendingSales": null, // this Table was deleted
|
|
2299
|
+
* },
|
|
2300
|
+
* {}, // no changes to keyed value data in the Store
|
|
2301
|
+
* 1, // indicates that this is a Changes array
|
|
2302
|
+
* ]
|
|
2303
|
+
* ```
|
|
2304
|
+
* @category Transaction
|
|
2305
|
+
* @since v4.0.0
|
|
2306
|
+
*/
|
|
2211
2307
|
export type Changes<Schemas extends OptionalSchemas> = [
|
|
2212
2308
|
{
|
|
2213
2309
|
[TableId in TableIdFromSchema<Schemas[0]>]?:
|
|
@@ -2226,6 +2322,7 @@ export type Changes<Schemas extends OptionalSchemas> = [
|
|
|
2226
2322
|
{
|
|
2227
2323
|
[ValueId in ValueIdFromSchema<Schemas[1]>]?: Value<Schemas[1], ValueId>;
|
|
2228
2324
|
},
|
|
2325
|
+
isChanges: 1,
|
|
2229
2326
|
];
|
|
2230
2327
|
|
|
2231
2328
|
/**
|
|
@@ -3,12 +3,12 @@
|
|
|
3
3
|
* @packageDocumentation
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
|
-
export * from './checkpoints.d';
|
|
7
|
-
export * from './common.d';
|
|
8
|
-
export * from './indexes.d';
|
|
9
|
-
export * from './metrics.d';
|
|
10
|
-
export * from './persisters.d';
|
|
11
|
-
export * from './queries.d';
|
|
12
|
-
export * from './relationships.d';
|
|
13
|
-
export * from './mergeable-store.d';
|
|
14
|
-
export * from './store.d';
|
|
6
|
+
export * from './checkpoints.d.ts';
|
|
7
|
+
export * from './common.d.ts';
|
|
8
|
+
export * from './indexes.d.ts';
|
|
9
|
+
export * from './metrics.d.ts';
|
|
10
|
+
export * from './persisters.d.ts';
|
|
11
|
+
export * from './queries.d.ts';
|
|
12
|
+
export * from './relationships.d.ts';
|
|
13
|
+
export * from './mergeable-store.d.ts';
|
|
14
|
+
export * from './store.d.ts';
|
|
@@ -9,8 +9,8 @@
|
|
|
9
9
|
* @since v2.2.0
|
|
10
10
|
*/
|
|
11
11
|
|
|
12
|
-
import {OptionalSchemas, Store} from './store.d';
|
|
13
|
-
import {Id} from './common.d';
|
|
12
|
+
import {OptionalSchemas, Store} from './store.d.ts';
|
|
13
|
+
import {Id} from './common.d.ts';
|
|
14
14
|
|
|
15
15
|
/**
|
|
16
16
|
* The StoreStats type describes a set of statistics about the Store, and
|
|
@@ -64,7 +64,7 @@ import {
|
|
|
64
64
|
ValueProps,
|
|
65
65
|
ValuesProps,
|
|
66
66
|
} from './internal/ui-react';
|
|
67
|
-
import {Callback, Id, IdOrNull, Ids, ParameterizedCallback} from './common.d';
|
|
67
|
+
import {Callback, Id, IdOrNull, Ids, ParameterizedCallback} from './common.d.ts';
|
|
68
68
|
import {
|
|
69
69
|
Cell,
|
|
70
70
|
CellIdsListener,
|
|
@@ -98,21 +98,21 @@ import {
|
|
|
98
98
|
ValueListener,
|
|
99
99
|
Values,
|
|
100
100
|
ValuesListener,
|
|
101
|
-
} from './store.d';
|
|
101
|
+
} from './store.d.ts';
|
|
102
102
|
import {
|
|
103
103
|
CheckpointIds,
|
|
104
104
|
CheckpointIdsListener,
|
|
105
105
|
CheckpointListener,
|
|
106
106
|
Checkpoints,
|
|
107
|
-
} from './checkpoints.d';
|
|
108
|
-
import {Indexes, SliceIdsListener, SliceRowIdsListener} from './indexes.d';
|
|
107
|
+
} from './checkpoints.d.ts';
|
|
108
|
+
import {Indexes, SliceIdsListener, SliceRowIdsListener} from './indexes.d.ts';
|
|
109
109
|
import {
|
|
110
110
|
LinkedRowIdsListener,
|
|
111
111
|
LocalRowIdsListener,
|
|
112
112
|
Relationships,
|
|
113
113
|
RemoteRowIdListener,
|
|
114
|
-
} from './relationships.d';
|
|
115
|
-
import {MetricListener, Metrics} from './metrics.d';
|
|
114
|
+
} from './relationships.d.ts';
|
|
115
|
+
import {MetricListener, Metrics} from './metrics.d.ts';
|
|
116
116
|
import {
|
|
117
117
|
Queries,
|
|
118
118
|
ResultCell,
|
|
@@ -126,8 +126,8 @@ import {
|
|
|
126
126
|
ResultTable,
|
|
127
127
|
ResultTableCellIdsListener,
|
|
128
128
|
ResultTableListener,
|
|
129
|
-
} from './queries.d';
|
|
130
|
-
import {Persister} from './persisters.d';
|
|
129
|
+
} from './queries.d.ts';
|
|
130
|
+
import {Persister} from './persisters.d.ts';
|
|
131
131
|
import {ReactElement} from 'react';
|
|
132
132
|
|
|
133
133
|
export type WithSchemas<Schemas extends OptionalSchemas> = {
|
package/lib/ui-react.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import e from"react";const t=e=>typeof e,o="",s=t(o),r=t(t),d="Listener",n="Result",u="Has",c="Ids",I="Table",l=I+"s",i=I+c,a="Row",p=a+"Count",g=a+c,b="Sorted"+a+c,C="Cell",m=C+c,y="Value",k=y+"s",w=y+c,h=e=>null==e,R=(e,t,o)=>h(e)?o?.():t(e),f=e=>t(e)==s,q=e=>t(e)==r,P=e=>e.length,v=()=>{},x=(e,t)=>e.every(t),S=(e,t)=>P(e)===P(t)&&x(e,((e,o)=>t[o]===e)),L=(e,t)=>e.map(t),B=Object,T=e=>B.getPrototypeOf(e),E=B.entries,M=B.keys,F=e=>!h(e)&&R(T(e),(e=>e==B.prototype||h(T(e))),(()=>!0)),V=(e,t)=>R(e,(e=>e[t])),A=(e,t)=>(delete e[t],e),O=(e,t)=>{const o=E(e);return P(o)===P(M(t))&&x(o,(([e,o])=>F(o)?!!F(t[e])&&O(t[e],o):t[e]===o))},{createContext:j,useContext:D,useEffect:H}=e,Q=j([]),W=(e,t)=>{const o=D(Q);return h(e)?o[t]:f(e)?V(o[t+1]??{},e):e},z=(e,t)=>{const o=W(e,t);return h(e)||f(e)?o:e},G=e=>M(D(Q)[e]??{}),J=e=>W(e,0),K=e=>z(e,0),N=(e,t)=>{const{12:o,13:s}=D(Q);H((()=>(o?.(e,t),()=>s?.(e))),[o,e,t,s])},U=e=>W(e,2),X=e=>z(e,2),Y=e=>W(e,4),Z=e=>z(e,4),$=e=>W(e,6),_=e=>z(e,6),ee=e=>W(e,8),te=e=>z(e,8),oe=e=>W(e,10),se=e=>z(e,10),re=e=>e.toLowerCase();re(d);const de="Transaction";re(de);const{useCallback:ne,useEffect:ue,useMemo:ce,useLayoutEffect:Ie,useRef:le,useState:ie,useSyncExternalStore:ae}=e,pe=[],ge=[{},[],[pe,void 0,pe],void 0,!1,0],be=(e,t)=>e===t,Ce=[O,S,([e,t,o],[s,r,d])=>t===r&&S(e,s)&&S(o,d)],me=(e,t,o=pe)=>{const[,s]=ie(),[r,d]=ie();return ue((()=>{const o=t(e);return d(o),s([]),o.destroy}),[e,...o]),r},ye=(e,t,...o)=>{const s=e?.["add"+t+d]?.(...o);return()=>e?.delListener(s)},ke=(e,t,s,r=pe)=>{const d=le(ge[s]),n=ne((()=>{const o=t?.[(4==s?"has":"get")+e]?.(...r)??ge[s];return(Ce[s]??be)(o,d.current)?d.current:d.current=o}),[t,s,e,...r]),c=ne((d=>ye(t,(4==s?u:o)+e,...r,d)),[t,s,e,...r]);return ae(c,n)},we=(e,t,o,s=pe,r=pe,...d)=>Ie((()=>ye(t,e,...r,o,...d)),[t,e,...r,...s,...d]),he=(e,t,o,s=pe,r=v,d=pe,...n)=>{const u=K(e);return ne((e=>R(u,(s=>R(o(e,s),(o=>r(s["set"+t](...L(n,(t=>q(t)?t(e,s):t)),o),o)))))),[u,t,...s,...d,...n])},Re=(e,t,o=v,s=pe,...r)=>{const d=K(e);return ne((()=>o(d?.["del"+t](...r))),[d,t,...s,...r])},fe=(e,t,o)=>{const s=se(e);return ne((()=>s?.[t](o)),[s,t,o])},qe=(e,t=pe)=>ce(e,t),Pe=()=>G(1),ve=e=>ke(l,K(e),4,[]),xe=e=>ke(l,K(e),0),Se=e=>ke(i,K(e),1),Le=(e,t)=>ke(I,K(t),4,[e]),Be=(e,t)=>ke(I,K(t),0,[e]),Te=(e,t)=>ke(I+m,K(t),1,[e]),Ee=(e,t,o)=>ke(I+C,K(o),4,[e,t]),Me=(e,t)=>ke(p,K(t),5,[e]),Fe=(e,t)=>ke(g,K(t),1,[e]),Ve=(e,t,o,s=0,r,d)=>ke(b,K(d),1,[e,t,o,s,r]),Ae=(e,t,o)=>ke(a,K(o),4,[e,t]),Oe=(e,t,o)=>ke(a,K(o),0,[e,t]),je=(e,t,o)=>ke(m,K(o),1,[e,t]),De=(e,t,o,s)=>ke(C,K(s),4,[e,t,o]),He=(e,t,o,s)=>ke(C,K(s),3,[e,t,o]),Qe=e=>ke(k,K(e),4,[]),We=e=>ke(k,K(e),0),ze=e=>ke(w,K(e),1),Ge=(e,t)=>ke(y,K(t),4,[e]),Je=(e,t)=>ke(y,K(t),3,[e]),Ke=(e,t,o,s,r)=>he(o,l,e,t,s,r),Ne=(e,t,o,s,r,d)=>he(s,I,t,o,r,d,e),Ue=(e,t,o,s,r,d,n)=>he(r,a,o,s,d,n,e,t),Xe=(e,t,o=pe,s,r=v,d=pe,n=!0)=>{const u=K(s);return ne((o=>R(u,(s=>R(t(o,s),(t=>r(s.addRow(q(e)?e(o,s):e,t,n),s,t)))))),[u,e,...o,...d,n])},Ye=(e,t,o,s,r,d,n)=>he(r,"PartialRow",o,s,d,n,e,t),Ze=(e,t,o,s,r,d,n,u)=>he(d,C,s,r,n,u,e,t,o),$e=(e,t,o,s,r)=>he(o,k,e,t,s,r),_e=(e,t,o,s,r)=>he(o,"PartialValues",e,t,s,r),et=(e,t,o,s,r,d)=>he(s,y,t,o,r,d,e),tt=(e,t,o)=>Re(e,l,t,o),ot=(e,t,o,s)=>Re(t,I,o,s,e),st=(e,t,o,s,r)=>Re(o,a,s,r,e,t),rt=(e,t,o,s,r,d,n)=>Re(r,C,d,n,e,t,o,s),dt=(e,t,o)=>Re(e,k,t,o),nt=(e,t,o,s)=>Re(t,y,o,s,e),ut=(e,t,o,s)=>we(u+l,K(s),e,t,[],o),ct=(e,t,o,s)=>we(l,K(s),e,t,pe,o),It=(e,t,o,s)=>we(i,K(s),e,t,pe,o),lt=(e,t,o,s,r)=>we(u+I,K(r),t,o,[e],s),it=(e,t,o,s,r)=>we(I,K(r),t,o,[e],s),at=(e,t,o,s,r)=>we(I+m,K(r),t,o,[e],s),pt=(e,t,o,s,r,d)=>we(u+I+C,K(d),o,s,[e,t],r),gt=(e,t,o,s,r)=>we(p,K(r),t,o,[e],s),bt=(e,t,o,s,r)=>we(g,K(r),t,o,[e],s),Ct=(e,t,o,s,r,d,n,u,c)=>we(b,K(c),d,n,[e,t,o,s,r],u),mt=(e,t,o,s,r,d)=>we(u+a,K(d),o,s,[e,t],r),yt=(e,t,o,s,r,d)=>we(a,K(d),o,s,[e,t],r),kt=(e,t,o,s,r,d)=>we(m,K(d),o,s,[e,t],r),wt=(e,t,o,s,r,d,n)=>we(u+C,K(n),s,r,[e,t,o],d),ht=(e,t,o,s,r,d,n)=>we(C,K(n),s,r,[e,t,o],d),Rt=(e,t,o,s)=>we(u+k,K(s),e,t,[],o),ft=(e,t,o,s)=>we(k,K(s),e,t,pe,o),qt=(e,t,o,s)=>we(w,K(s),e,t,pe,o),Pt=(e,t,o,s,r)=>we(u+y,K(r),t,o,[e],s),vt=(e,t,o,s,r)=>we(y,K(r),t,o,[e],s),xt=(e,t,o)=>we("Start"+de,K(o),e,t),St=(e,t,o)=>we("WillFinish"+de,K(o),e,t),Lt=(e,t,o)=>we("DidFinish"+de,K(o),e,t),Bt=(e,t,o)=>me(e,t,o),Tt=()=>G(3),Et=e=>ke("MetricIds",X(e),1),Mt=(e,t)=>ke("Metric",X(t),3,[e]),Ft=(e,t,o,s)=>we("Metric",X(s),t,o,[e]),Vt=(e,t,o)=>me(e,t,o),At=()=>G(5),Ot=(e,t)=>ke("SliceIds",Z(t),1,[e]),jt=e=>ke("IndexIds",Z(e),1),Dt=(e,t,o)=>ke("Slice"+g,Z(o),1,[e,t]),Ht=(e,t,o,s)=>we("SliceIds",Z(s),t,o,[e]),Qt=(e,t,o,s,r)=>we("Slice"+g,Z(r),o,s,[e,t]),Wt=(e,t,o)=>me(e,t,o),zt=()=>G(7),Gt=e=>ke("RelationshipIds",_(e),1),Jt=(e,t,o)=>ke("RemoteRowId",_(o),3,[e,t]),Kt=(e,t,o)=>ke("Local"+g,_(o),1,[e,t]),Nt=(e,t,o)=>ke("Linked"+g,_(o),1,[e,t]),Ut=(e,t,o,s,r)=>we("RemoteRowId",_(r),o,s,[e,t]),Xt=(e,t,o,s,r)=>we("Local"+g,_(r),o,s,[e,t]),Yt=(e,t,o,s,r)=>we("Linked"+g,_(r),o,s,[e,t]),Zt=(e,t,o)=>me(e,t,o),$t=()=>G(9),_t=e=>ke("QueryIds",te(e),1),eo=(e,t)=>ke(n+I,te(t),0,[e]),to=(e,t)=>ke(n+I+m,te(t),1,[e]),oo=(e,t)=>ke(n+p,te(t),5,[e]),so=(e,t)=>ke(n+g,te(t),1,[e]),ro=(e,t,o,s=0,r,d)=>ke(n+b,te(d),1,[e,t,o,s,r]),no=(e,t,o)=>ke(n+a,te(o),0,[e,t]),uo=(e,t,o)=>ke(n+m,te(o),1,[e,t]),co=(e,t,o,s)=>ke(n+C,te(s),3,[e,t,o]),Io=(e,t,o,s)=>we(n+I,te(s),t,o,[e]),lo=(e,t,o,s)=>we(n+I+m,te(s),t,o,[e]),io=(e,t,o,s)=>we(n+p,te(s),t,o,[e]),ao=(e,t,o,s)=>we(n+g,te(s),t,o,[e]),po=(e,t,o,s,r,d,u,c)=>we(n+b,te(c),d,u,[e,t,o,s,r]),go=(e,t,o,s,r)=>we(n+a,te(r),o,s,[e,t]),bo=(e,t,o,s,r)=>we(n+m,te(r),o,s,[e,t]),Co=(e,t,o,s,r,d)=>we(n+C,te(d),s,r,[e,t,o]),mo=(e,t,o)=>me(e,t,o),yo=()=>G(11),ko=e=>ke("CheckpointIds",se(e),2),wo=(e,t)=>ke("Checkpoint",se(t),3,[e]),ho=(e=v,t=pe,o,s=v,r=pe)=>{const d=se(o);return ne((t=>R(d,(o=>{const r=e(t);s(o.addCheckpoint(r),o,r)}))),[d,...t,...r])},Ro=e=>fe(e,"goBackward"),fo=e=>fe(e,"goForward"),qo=(e,t=pe,o,s=v,r=pe)=>{const d=se(o);return ne((t=>R(d,(o=>R(e(t),(e=>s(o.goTo(e),e)))))),[d,...t,...r])},Po=e=>{const t=se(e),[s,r]=ko(t);return[(d=s,!(0==P(d))),Ro(t),r,R(r,(e=>t?.getCheckpoint(e)))??o];var d},vo=e=>{const t=se(e),[,,[s]]=ko(t);return[!h(s),fo(t),s,R(s,(e=>t?.getCheckpoint(e)))??o]},xo=(e,t,o)=>we("CheckpointIds",se(o),e,t),So=(e,t,o,s)=>we("Checkpoint",se(s),t,o,[e]),Lo=(e,t,o=pe,s,r=pe,d,n=pe)=>{const[,u]=ie(),[c,I]=ie();return ue((()=>{const o=t(e);if(I(o),o)return s&&(async()=>{await s(o),u([])})(),()=>{o.destroy(),d?.(o)}}),[e,...o,...r,...n]),c},{PureComponent:Bo,Fragment:To,createElement:Eo,useCallback:Mo,useLayoutEffect:Fo,useRef:Vo,useState:Ao}=e,Oo=(e,...t)=>h(e)?{}:e(...t),jo=(e,t)=>[e,e?.getStore(),e?.getLocalTableId(t),e?.getRemoteTableId(t)],{useCallback:Do,useContext:Ho,useMemo:Qo,useState:Wo}=e,zo=({tableId:e,store:t,rowComponent:o=Yo,getRowComponentProps:s,customCellIds:r,separator:d,debugIds:n},u)=>Uo(L(u,(d=>Eo(o,{...Oo(s,d),key:d,tableId:e,rowId:d,customCellIds:r,store:t,debugIds:n}))),d,n,e),Go=({queryId:e,queries:t,resultRowComponent:o=Is,getResultRowComponentProps:s,separator:r,debugIds:d},n)=>Uo(L(n,(r=>Eo(o,{...Oo(s,r),key:r,queryId:e,rowId:r,queries:t,debugIds:d}))),r,d,e),Jo=({relationshipId:e,relationships:t,rowComponent:o=Yo,getRowComponentProps:s,separator:r,debugIds:d},n,u)=>{const[c,I,l]=jo(_(t),e),i=n(e,u,c);return Uo(L(i,(e=>Eo(o,{...Oo(s,e),key:e,tableId:l,rowId:e,store:I,debugIds:d}))),r,d,u)},Ko=e=>({checkpoints:t,checkpointComponent:o=as,getCheckpointComponentProps:s,separator:r,debugIds:d})=>{const n=se(t);return Uo(L(e(ko(n)),(e=>Eo(o,{...Oo(s,e),key:e,checkpoints:n,checkpointId:e,debugIds:d}))),r)},No=({store:e,storesById:t,metrics:o,metricsById:s,indexes:r,indexesById:d,relationships:n,relationshipsById:u,queries:c,queriesById:I,checkpoints:l,checkpointsById:i,children:a})=>{const p=Ho(Q),[g,b]=Wo({}),C=Do(((e,t)=>b((o=>V(o,e)==t?o:{...o,[e]:t}))),[]),m=Do((e=>b((t=>({...A(t,e)})))),[]);return Eo(Q.Provider,{value:Qo((()=>[e??p[0],{...p[1],...t,...g},o??p[2],{...p[3],...s},r??p[4],{...p[5],...d},n??p[6],{...p[7],...u},c??p[8],{...p[9],...I},l??p[10],{...p[11],...i},C,m]),[e,t,g,o,s,r,d,n,u,c,I,l,i,p,C,m])},a)},Uo=(e,t,o,s)=>{const r=h(t)||!Array.isArray(e)?e:L(e,((e,o)=>o>0?[t,e]:e));return o?[s,":{",r,"}"]:r},Xo=({tableId:e,rowId:t,cellId:s,store:r,debugIds:d})=>Uo(o+(He(e,t,s,r)??o),void 0,d,s),Yo=({tableId:e,rowId:t,store:o,cellComponent:s=Xo,getCellComponentProps:r,customCellIds:d,separator:n,debugIds:u})=>Uo(L(((e,t,o,s)=>{const r=je(t,o,s);return e??r})(d,e,t,o),(d=>Eo(s,{...Oo(r,d),key:d,tableId:e,rowId:t,cellId:d,store:o,debugIds:u}))),n,u,t),Zo=e=>zo(e,Fe(e.tableId,e.store)),$o=({cellId:e,descending:t,offset:o,limit:s,...r})=>zo(r,Ve(r.tableId,e,t,o,s,r.store)),_o=({store:e,tableComponent:t=Zo,getTableComponentProps:o,separator:s,debugIds:r})=>Uo(L(Se(e),(s=>Eo(t,{...Oo(o,s),key:s,tableId:s,store:e,debugIds:r}))),s),es=({valueId:e,store:t,debugIds:s})=>Uo(o+(Je(e,t)??o),void 0,s,e),ts=({store:e,valueComponent:t=es,getValueComponentProps:o,separator:s,debugIds:r})=>Uo(L(ze(e),(s=>Eo(t,{...Oo(o,s),key:s,valueId:s,store:e,debugIds:r}))),s),os=({metricId:e,metrics:t,debugIds:s})=>Uo(Mt(e,t)??o,void 0,s,e),ss=({indexId:e,sliceId:t,indexes:o,rowComponent:s=Yo,getRowComponentProps:r,separator:d,debugIds:n})=>{const[u,c,I]=((e,t)=>[e,e?.getStore(),e?.getTableId(t)])(Z(o),e),l=Dt(e,t,u);return Uo(L(l,(e=>Eo(s,{...Oo(r,e),key:e,tableId:I,rowId:e,store:c,debugIds:n}))),d,n,t)},rs=({indexId:e,indexes:t,sliceComponent:o=ss,getSliceComponentProps:s,separator:r,debugIds:d})=>Uo(L(Ot(e,t),(r=>Eo(o,{...Oo(s,r),key:r,indexId:e,sliceId:r,indexes:t,debugIds:d}))),r,d,e),ds=({relationshipId:e,localRowId:t,relationships:o,rowComponent:s=Yo,getRowComponentProps:r,debugIds:d})=>{const[n,u,,c]=jo(_(o),e),I=Jt(e,t,n);return Uo(h(c)||h(I)?null:Eo(s,{...Oo(r,I),key:I,tableId:c,rowId:I,store:u,debugIds:d}),void 0,d,t)},ns=e=>Jo(e,Kt,e.remoteRowId),us=e=>Jo(e,Nt,e.firstRowId),cs=({queryId:e,rowId:t,cellId:s,queries:r,debugIds:d})=>Uo(o+(co(e,t,s,r)??o),void 0,d,s),Is=({queryId:e,rowId:t,queries:o,resultCellComponent:s=cs,getResultCellComponentProps:r,separator:d,debugIds:n})=>Uo(L(uo(e,t,o),(d=>Eo(s,{...Oo(r,d),key:d,queryId:e,rowId:t,cellId:d,queries:o,debugIds:n}))),d,n,t),ls=e=>Go(e,so(e.queryId,e.queries)),is=({cellId:e,descending:t,offset:o,limit:s,...r})=>Go(r,ro(r.queryId,e,t,o,s,r.queries)),as=({checkpoints:e,checkpointId:t,debugIds:s})=>Uo(wo(t,e)??o,void 0,s,t),ps=Ko((e=>e[0])),gs=Ko((e=>h(e[1])?[]:[e[1]])),bs=Ko((e=>e[2]));export{ps as BackwardCheckpointsView,Xo as CellView,as as CheckpointView,gs as CurrentCheckpointView,bs as ForwardCheckpointsView,rs as IndexView,us as LinkedRowsView,ns as LocalRowsView,os as MetricView,No as Provider,ds as RemoteRowView,cs as ResultCellView,Is as ResultRowView,is as ResultSortedTableView,ls as ResultTableView,Yo as RowView,ss as SliceView,$o as SortedTableView,Zo as TableView,_o as TablesView,es as ValueView,ts as ValuesView,Xe as useAddRowCallback,He as useCell,je as useCellIds,kt as useCellIdsListener,ht as useCellListener,wo as useCheckpoint,ko as useCheckpointIds,xo as useCheckpointIdsListener,So as useCheckpointListener,oe as useCheckpoints,yo as useCheckpointsIds,se as useCheckpointsOrCheckpointsById,mo as useCreateCheckpoints,Vt as useCreateIndexes,Bt as useCreateMetrics,Lo as useCreatePersister,Zt as useCreateQueries,Wt as useCreateRelationships,qe as useCreateStore,rt as useDelCellCallback,st as useDelRowCallback,ot as useDelTableCallback,tt as useDelTablesCallback,nt as useDelValueCallback,dt as useDelValuesCallback,Lt as useDidFinishTransactionListener,Ro as useGoBackwardCallback,fo as useGoForwardCallback,qo as useGoToCallback,De as useHasCell,wt as useHasCellListener,Ae as useHasRow,mt as useHasRowListener,Le as useHasTable,Ee as useHasTableCell,pt as useHasTableCellListener,lt as useHasTableListener,ve as useHasTables,ut as useHasTablesListener,Ge as useHasValue,Pt as useHasValueListener,Qe as useHasValues,Rt as useHasValuesListener,jt as useIndexIds,Y as useIndexes,At as useIndexesIds,Z as useIndexesOrIndexesById,Nt as useLinkedRowIds,Yt as useLinkedRowIdsListener,Kt as useLocalRowIds,Xt as useLocalRowIdsListener,Mt as useMetric,Et as useMetricIds,Ft as useMetricListener,U as useMetrics,Tt as useMetricsIds,X as useMetricsOrMetricsById,N as useProvideStore,ee as useQueries,$t as useQueriesIds,te as useQueriesOrQueriesById,_t as useQueryIds,vo as useRedoInformation,Gt as useRelationshipIds,$ as useRelationships,zt as useRelationshipsIds,_ as useRelationshipsOrRelationshipsById,Jt as useRemoteRowId,Ut as useRemoteRowIdListener,co as useResultCell,uo as useResultCellIds,bo as useResultCellIdsListener,Co as useResultCellListener,no as useResultRow,oo as useResultRowCount,io as useResultRowCountListener,so as useResultRowIds,ao as useResultRowIdsListener,go as useResultRowListener,ro as useResultSortedRowIds,po as useResultSortedRowIdsListener,eo as useResultTable,to as useResultTableCellIds,lo as useResultTableCellIdsListener,Io as useResultTableListener,Oe as useRow,Me as useRowCount,gt as useRowCountListener,Fe as useRowIds,bt as useRowIdsListener,yt as useRowListener,Ze as useSetCellCallback,ho as useSetCheckpointCallback,Ye as useSetPartialRowCallback,_e as useSetPartialValuesCallback,Ue as useSetRowCallback,Ne as useSetTableCallback,Ke as useSetTablesCallback,et as useSetValueCallback,$e as useSetValuesCallback,Ot as useSliceIds,Ht as useSliceIdsListener,Dt as useSliceRowIds,Qt as useSliceRowIdsListener,Ve as useSortedRowIds,Ct as useSortedRowIdsListener,xt as useStartTransactionListener,J as useStore,Pe as useStoreIds,K as useStoreOrStoreById,Be as useTable,Te as useTableCellIds,at as useTableCellIdsListener,Se as useTableIds,It as useTableIdsListener,it as useTableListener,xe as useTables,ct as useTablesListener,Po as useUndoInformation,Je as useValue,ze as useValueIds,qt as useValueIdsListener,vt as useValueListener,We as useValues,ft as useValuesListener,St as useWillFinishTransactionListener};
|
|
1
|
+
import e from"react";const t=e=>typeof e,o="",s=t(o),r=t(t),d="Listener",n="Result",u="Has",c="Ids",I="Table",l=I+"s",i=I+c,a="Row",p=a+"Count",g=a+c,b="Sorted"+a+c,C="Cell",m=C+c,y="Value",k=y+"s",w=y+c,h=e=>null==e,R=(e,t,o)=>h(e)?o?.():t(e),f=e=>t(e)==s,q=e=>t(e)==r,P=e=>e.length,v=()=>{},x=(e,t)=>e.every(t),S=(e,t)=>P(e)===P(t)&&x(e,((e,o)=>t[o]===e)),L=(e,t)=>e.map(t),B=Object,T=e=>B.getPrototypeOf(e),E=B.entries,M=e=>!h(e)&&R(T(e),(e=>e==B.prototype||h(T(e))),(()=>!0)),F=B.keys,V=(e,t)=>R(e,(e=>e[t])),A=(e,t)=>(delete e[t],e),O=(e,t)=>{const o=E(e);return P(o)===P(F(t))&&x(o,(([e,o])=>M(o)?!!M(t[e])&&O(t[e],o):t[e]===o))},{createContext:j,useContext:D,useEffect:H}=e,Q=j([]),W=(e,t)=>{const o=D(Q);return h(e)?o[t]:f(e)?V(o[t+1]??{},e):e},z=(e,t)=>{const o=W(e,t);return h(e)||f(e)?o:e},G=e=>F(D(Q)[e]??{}),J=e=>W(e,0),K=e=>z(e,0),N=(e,t)=>{const{12:o,13:s}=D(Q);H((()=>(o?.(e,t),()=>s?.(e))),[o,e,t,s])},U=e=>W(e,2),X=e=>z(e,2),Y=e=>W(e,4),Z=e=>z(e,4),$=e=>W(e,6),_=e=>z(e,6),ee=e=>W(e,8),te=e=>z(e,8),oe=e=>W(e,10),se=e=>z(e,10),re=e=>e.toLowerCase();re(d);const de="Transaction";re(de);const{useCallback:ne,useEffect:ue,useMemo:ce,useLayoutEffect:Ie,useRef:le,useState:ie,useSyncExternalStore:ae}=e,pe=[],ge=[{},[],[pe,void 0,pe],void 0,!1,0],be=(e,t)=>e===t,Ce=[O,S,([e,t,o],[s,r,d])=>t===r&&S(e,s)&&S(o,d)],me=(e,t,o=pe)=>{const[,s]=ie(),[r,d]=ie();return ue((()=>{const o=t(e);return d(o),s([]),o.destroy}),[e,...o]),r},ye=(e,t,...o)=>{const s=e?.["add"+t+d]?.(...o);return()=>e?.delListener(s)},ke=(e,t,s,r=pe)=>{const d=le(ge[s]),n=ne((()=>{const o=t?.[(4==s?"has":"get")+e]?.(...r)??ge[s];return(Ce[s]??be)(o,d.current)?d.current:d.current=o}),[t,s,e,...r]),c=ne((d=>ye(t,(4==s?u:o)+e,...r,d)),[t,s,e,...r]);return ae(c,n)},we=(e,t,o,s=pe,r=pe,...d)=>Ie((()=>ye(t,e,...r,o,...d)),[t,e,...r,...s,...d]),he=(e,t,o,s=pe,r=v,d=pe,...n)=>{const u=K(e);return ne((e=>R(u,(s=>R(o(e,s),(o=>r(s["set"+t](...L(n,(t=>q(t)?t(e,s):t)),o),o)))))),[u,t,...s,...d,...n])},Re=(e,t,o=v,s=pe,...r)=>{const d=K(e);return ne((()=>o(d?.["del"+t](...r))),[d,t,...s,...r])},fe=(e,t,o)=>{const s=se(e);return ne((()=>s?.[t](o)),[s,t,o])},qe=(e,t=pe)=>ce(e,t),Pe=()=>G(1),ve=e=>ke(l,K(e),4,[]),xe=e=>ke(l,K(e),0),Se=e=>ke(i,K(e),1),Le=(e,t)=>ke(I,K(t),4,[e]),Be=(e,t)=>ke(I,K(t),0,[e]),Te=(e,t)=>ke(I+m,K(t),1,[e]),Ee=(e,t,o)=>ke(I+C,K(o),4,[e,t]),Me=(e,t)=>ke(p,K(t),5,[e]),Fe=(e,t)=>ke(g,K(t),1,[e]),Ve=(e,t,o,s=0,r,d)=>ke(b,K(d),1,[e,t,o,s,r]),Ae=(e,t,o)=>ke(a,K(o),4,[e,t]),Oe=(e,t,o)=>ke(a,K(o),0,[e,t]),je=(e,t,o)=>ke(m,K(o),1,[e,t]),De=(e,t,o,s)=>ke(C,K(s),4,[e,t,o]),He=(e,t,o,s)=>ke(C,K(s),3,[e,t,o]),Qe=e=>ke(k,K(e),4,[]),We=e=>ke(k,K(e),0),ze=e=>ke(w,K(e),1),Ge=(e,t)=>ke(y,K(t),4,[e]),Je=(e,t)=>ke(y,K(t),3,[e]),Ke=(e,t,o,s,r)=>he(o,l,e,t,s,r),Ne=(e,t,o,s,r,d)=>he(s,I,t,o,r,d,e),Ue=(e,t,o,s,r,d,n)=>he(r,a,o,s,d,n,e,t),Xe=(e,t,o=pe,s,r=v,d=pe,n=!0)=>{const u=K(s);return ne((o=>R(u,(s=>R(t(o,s),(t=>r(s.addRow(q(e)?e(o,s):e,t,n),s,t)))))),[u,e,...o,...d,n])},Ye=(e,t,o,s,r,d,n)=>he(r,"PartialRow",o,s,d,n,e,t),Ze=(e,t,o,s,r,d,n,u)=>he(d,C,s,r,n,u,e,t,o),$e=(e,t,o,s,r)=>he(o,k,e,t,s,r),_e=(e,t,o,s,r)=>he(o,"PartialValues",e,t,s,r),et=(e,t,o,s,r,d)=>he(s,y,t,o,r,d,e),tt=(e,t,o)=>Re(e,l,t,o),ot=(e,t,o,s)=>Re(t,I,o,s,e),st=(e,t,o,s,r)=>Re(o,a,s,r,e,t),rt=(e,t,o,s,r,d,n)=>Re(r,C,d,n,e,t,o,s),dt=(e,t,o)=>Re(e,k,t,o),nt=(e,t,o,s)=>Re(t,y,o,s,e),ut=(e,t,o,s)=>we(u+l,K(s),e,t,[],o),ct=(e,t,o,s)=>we(l,K(s),e,t,pe,o),It=(e,t,o,s)=>we(i,K(s),e,t,pe,o),lt=(e,t,o,s,r)=>we(u+I,K(r),t,o,[e],s),it=(e,t,o,s,r)=>we(I,K(r),t,o,[e],s),at=(e,t,o,s,r)=>we(I+m,K(r),t,o,[e],s),pt=(e,t,o,s,r,d)=>we(u+I+C,K(d),o,s,[e,t],r),gt=(e,t,o,s,r)=>we(p,K(r),t,o,[e],s),bt=(e,t,o,s,r)=>we(g,K(r),t,o,[e],s),Ct=(e,t,o,s,r,d,n,u,c)=>we(b,K(c),d,n,[e,t,o,s,r],u),mt=(e,t,o,s,r,d)=>we(u+a,K(d),o,s,[e,t],r),yt=(e,t,o,s,r,d)=>we(a,K(d),o,s,[e,t],r),kt=(e,t,o,s,r,d)=>we(m,K(d),o,s,[e,t],r),wt=(e,t,o,s,r,d,n)=>we(u+C,K(n),s,r,[e,t,o],d),ht=(e,t,o,s,r,d,n)=>we(C,K(n),s,r,[e,t,o],d),Rt=(e,t,o,s)=>we(u+k,K(s),e,t,[],o),ft=(e,t,o,s)=>we(k,K(s),e,t,pe,o),qt=(e,t,o,s)=>we(w,K(s),e,t,pe,o),Pt=(e,t,o,s,r)=>we(u+y,K(r),t,o,[e],s),vt=(e,t,o,s,r)=>we(y,K(r),t,o,[e],s),xt=(e,t,o)=>we("Start"+de,K(o),e,t),St=(e,t,o)=>we("WillFinish"+de,K(o),e,t),Lt=(e,t,o)=>we("DidFinish"+de,K(o),e,t),Bt=(e,t,o)=>me(e,t,o),Tt=()=>G(3),Et=e=>ke("MetricIds",X(e),1),Mt=(e,t)=>ke("Metric",X(t),3,[e]),Ft=(e,t,o,s)=>we("Metric",X(s),t,o,[e]),Vt=(e,t,o)=>me(e,t,o),At=()=>G(5),Ot=(e,t)=>ke("SliceIds",Z(t),1,[e]),jt=e=>ke("IndexIds",Z(e),1),Dt=(e,t,o)=>ke("Slice"+g,Z(o),1,[e,t]),Ht=(e,t,o,s)=>we("SliceIds",Z(s),t,o,[e]),Qt=(e,t,o,s,r)=>we("Slice"+g,Z(r),o,s,[e,t]),Wt=(e,t,o)=>me(e,t,o),zt=()=>G(7),Gt=e=>ke("RelationshipIds",_(e),1),Jt=(e,t,o)=>ke("RemoteRowId",_(o),3,[e,t]),Kt=(e,t,o)=>ke("Local"+g,_(o),1,[e,t]),Nt=(e,t,o)=>ke("Linked"+g,_(o),1,[e,t]),Ut=(e,t,o,s,r)=>we("RemoteRowId",_(r),o,s,[e,t]),Xt=(e,t,o,s,r)=>we("Local"+g,_(r),o,s,[e,t]),Yt=(e,t,o,s,r)=>we("Linked"+g,_(r),o,s,[e,t]),Zt=(e,t,o)=>me(e,t,o),$t=()=>G(9),_t=e=>ke("QueryIds",te(e),1),eo=(e,t)=>ke(n+I,te(t),0,[e]),to=(e,t)=>ke(n+I+m,te(t),1,[e]),oo=(e,t)=>ke(n+p,te(t),5,[e]),so=(e,t)=>ke(n+g,te(t),1,[e]),ro=(e,t,o,s=0,r,d)=>ke(n+b,te(d),1,[e,t,o,s,r]),no=(e,t,o)=>ke(n+a,te(o),0,[e,t]),uo=(e,t,o)=>ke(n+m,te(o),1,[e,t]),co=(e,t,o,s)=>ke(n+C,te(s),3,[e,t,o]),Io=(e,t,o,s)=>we(n+I,te(s),t,o,[e]),lo=(e,t,o,s)=>we(n+I+m,te(s),t,o,[e]),io=(e,t,o,s)=>we(n+p,te(s),t,o,[e]),ao=(e,t,o,s)=>we(n+g,te(s),t,o,[e]),po=(e,t,o,s,r,d,u,c)=>we(n+b,te(c),d,u,[e,t,o,s,r]),go=(e,t,o,s,r)=>we(n+a,te(r),o,s,[e,t]),bo=(e,t,o,s,r)=>we(n+m,te(r),o,s,[e,t]),Co=(e,t,o,s,r,d)=>we(n+C,te(d),s,r,[e,t,o]),mo=(e,t,o)=>me(e,t,o),yo=()=>G(11),ko=e=>ke("CheckpointIds",se(e),2),wo=(e,t)=>ke("Checkpoint",se(t),3,[e]),ho=(e=v,t=pe,o,s=v,r=pe)=>{const d=se(o);return ne((t=>R(d,(o=>{const r=e(t);s(o.addCheckpoint(r),o,r)}))),[d,...t,...r])},Ro=e=>fe(e,"goBackward"),fo=e=>fe(e,"goForward"),qo=(e,t=pe,o,s=v,r=pe)=>{const d=se(o);return ne((t=>R(d,(o=>R(e(t),(e=>s(o.goTo(e),e)))))),[d,...t,...r])},Po=e=>{const t=se(e),[s,r]=ko(t);return[(d=s,!(0==P(d))),Ro(t),r,R(r,(e=>t?.getCheckpoint(e)))??o];var d},vo=e=>{const t=se(e),[,,[s]]=ko(t);return[!h(s),fo(t),s,R(s,(e=>t?.getCheckpoint(e)))??o]},xo=(e,t,o)=>we("CheckpointIds",se(o),e,t),So=(e,t,o,s)=>we("Checkpoint",se(s),t,o,[e]),Lo=(e,t,o=pe,s,r=pe,d,n=pe)=>{const[,u]=ie(),[c,I]=ie();return ue((()=>{const o=t(e);if(I(o),o)return s&&(async()=>{await s(o),u([])})(),()=>{o.destroy(),d?.(o)}}),[e,...o,...r,...n]),c},{PureComponent:Bo,Fragment:To,createElement:Eo,useCallback:Mo,useLayoutEffect:Fo,useRef:Vo,useState:Ao}=e,Oo=(e,...t)=>h(e)?{}:e(...t),jo=(e,t)=>[e,e?.getStore(),e?.getLocalTableId(t),e?.getRemoteTableId(t)],{useCallback:Do,useContext:Ho,useMemo:Qo,useState:Wo}=e,zo=({tableId:e,store:t,rowComponent:o=Yo,getRowComponentProps:s,customCellIds:r,separator:d,debugIds:n},u)=>Uo(L(u,(d=>Eo(o,{...Oo(s,d),key:d,tableId:e,rowId:d,customCellIds:r,store:t,debugIds:n}))),d,n,e),Go=({queryId:e,queries:t,resultRowComponent:o=Is,getResultRowComponentProps:s,separator:r,debugIds:d},n)=>Uo(L(n,(r=>Eo(o,{...Oo(s,r),key:r,queryId:e,rowId:r,queries:t,debugIds:d}))),r,d,e),Jo=({relationshipId:e,relationships:t,rowComponent:o=Yo,getRowComponentProps:s,separator:r,debugIds:d},n,u)=>{const[c,I,l]=jo(_(t),e),i=n(e,u,c);return Uo(L(i,(e=>Eo(o,{...Oo(s,e),key:e,tableId:l,rowId:e,store:I,debugIds:d}))),r,d,u)},Ko=e=>({checkpoints:t,checkpointComponent:o=as,getCheckpointComponentProps:s,separator:r,debugIds:d})=>{const n=se(t);return Uo(L(e(ko(n)),(e=>Eo(o,{...Oo(s,e),key:e,checkpoints:n,checkpointId:e,debugIds:d}))),r)},No=({store:e,storesById:t,metrics:o,metricsById:s,indexes:r,indexesById:d,relationships:n,relationshipsById:u,queries:c,queriesById:I,checkpoints:l,checkpointsById:i,children:a})=>{const p=Ho(Q),[g,b]=Wo({}),C=Do(((e,t)=>b((o=>V(o,e)==t?o:{...o,[e]:t}))),[]),m=Do((e=>b((t=>({...A(t,e)})))),[]);return Eo(Q.Provider,{value:Qo((()=>[e??p[0],{...p[1],...t,...g},o??p[2],{...p[3],...s},r??p[4],{...p[5],...d},n??p[6],{...p[7],...u},c??p[8],{...p[9],...I},l??p[10],{...p[11],...i},C,m]),[e,t,g,o,s,r,d,n,u,c,I,l,i,p,C,m])},a)},Uo=(e,t,o,s)=>{const r=h(t)||!Array.isArray(e)?e:L(e,((e,o)=>o>0?[t,e]:e));return o?[s,":{",r,"}"]:r},Xo=({tableId:e,rowId:t,cellId:s,store:r,debugIds:d})=>Uo(o+(He(e,t,s,r)??o),void 0,d,s),Yo=({tableId:e,rowId:t,store:o,cellComponent:s=Xo,getCellComponentProps:r,customCellIds:d,separator:n,debugIds:u})=>Uo(L(((e,t,o,s)=>{const r=je(t,o,s);return e??r})(d,e,t,o),(d=>Eo(s,{...Oo(r,d),key:d,tableId:e,rowId:t,cellId:d,store:o,debugIds:u}))),n,u,t),Zo=e=>zo(e,Fe(e.tableId,e.store)),$o=({cellId:e,descending:t,offset:o,limit:s,...r})=>zo(r,Ve(r.tableId,e,t,o,s,r.store)),_o=({store:e,tableComponent:t=Zo,getTableComponentProps:o,separator:s,debugIds:r})=>Uo(L(Se(e),(s=>Eo(t,{...Oo(o,s),key:s,tableId:s,store:e,debugIds:r}))),s),es=({valueId:e,store:t,debugIds:s})=>Uo(o+(Je(e,t)??o),void 0,s,e),ts=({store:e,valueComponent:t=es,getValueComponentProps:o,separator:s,debugIds:r})=>Uo(L(ze(e),(s=>Eo(t,{...Oo(o,s),key:s,valueId:s,store:e,debugIds:r}))),s),os=({metricId:e,metrics:t,debugIds:s})=>Uo(Mt(e,t)??o,void 0,s,e),ss=({indexId:e,sliceId:t,indexes:o,rowComponent:s=Yo,getRowComponentProps:r,separator:d,debugIds:n})=>{const[u,c,I]=((e,t)=>[e,e?.getStore(),e?.getTableId(t)])(Z(o),e),l=Dt(e,t,u);return Uo(L(l,(e=>Eo(s,{...Oo(r,e),key:e,tableId:I,rowId:e,store:c,debugIds:n}))),d,n,t)},rs=({indexId:e,indexes:t,sliceComponent:o=ss,getSliceComponentProps:s,separator:r,debugIds:d})=>Uo(L(Ot(e,t),(r=>Eo(o,{...Oo(s,r),key:r,indexId:e,sliceId:r,indexes:t,debugIds:d}))),r,d,e),ds=({relationshipId:e,localRowId:t,relationships:o,rowComponent:s=Yo,getRowComponentProps:r,debugIds:d})=>{const[n,u,,c]=jo(_(o),e),I=Jt(e,t,n);return Uo(h(c)||h(I)?null:Eo(s,{...Oo(r,I),key:I,tableId:c,rowId:I,store:u,debugIds:d}),void 0,d,t)},ns=e=>Jo(e,Kt,e.remoteRowId),us=e=>Jo(e,Nt,e.firstRowId),cs=({queryId:e,rowId:t,cellId:s,queries:r,debugIds:d})=>Uo(o+(co(e,t,s,r)??o),void 0,d,s),Is=({queryId:e,rowId:t,queries:o,resultCellComponent:s=cs,getResultCellComponentProps:r,separator:d,debugIds:n})=>Uo(L(uo(e,t,o),(d=>Eo(s,{...Oo(r,d),key:d,queryId:e,rowId:t,cellId:d,queries:o,debugIds:n}))),d,n,t),ls=e=>Go(e,so(e.queryId,e.queries)),is=({cellId:e,descending:t,offset:o,limit:s,...r})=>Go(r,ro(r.queryId,e,t,o,s,r.queries)),as=({checkpoints:e,checkpointId:t,debugIds:s})=>Uo(wo(t,e)??o,void 0,s,t),ps=Ko((e=>e[0])),gs=Ko((e=>h(e[1])?[]:[e[1]])),bs=Ko((e=>e[2]));export{ps as BackwardCheckpointsView,Xo as CellView,as as CheckpointView,gs as CurrentCheckpointView,bs as ForwardCheckpointsView,rs as IndexView,us as LinkedRowsView,ns as LocalRowsView,os as MetricView,No as Provider,ds as RemoteRowView,cs as ResultCellView,Is as ResultRowView,is as ResultSortedTableView,ls as ResultTableView,Yo as RowView,ss as SliceView,$o as SortedTableView,Zo as TableView,_o as TablesView,es as ValueView,ts as ValuesView,Xe as useAddRowCallback,He as useCell,je as useCellIds,kt as useCellIdsListener,ht as useCellListener,wo as useCheckpoint,ko as useCheckpointIds,xo as useCheckpointIdsListener,So as useCheckpointListener,oe as useCheckpoints,yo as useCheckpointsIds,se as useCheckpointsOrCheckpointsById,mo as useCreateCheckpoints,Vt as useCreateIndexes,Bt as useCreateMetrics,Lo as useCreatePersister,Zt as useCreateQueries,Wt as useCreateRelationships,qe as useCreateStore,rt as useDelCellCallback,st as useDelRowCallback,ot as useDelTableCallback,tt as useDelTablesCallback,nt as useDelValueCallback,dt as useDelValuesCallback,Lt as useDidFinishTransactionListener,Ro as useGoBackwardCallback,fo as useGoForwardCallback,qo as useGoToCallback,De as useHasCell,wt as useHasCellListener,Ae as useHasRow,mt as useHasRowListener,Le as useHasTable,Ee as useHasTableCell,pt as useHasTableCellListener,lt as useHasTableListener,ve as useHasTables,ut as useHasTablesListener,Ge as useHasValue,Pt as useHasValueListener,Qe as useHasValues,Rt as useHasValuesListener,jt as useIndexIds,Y as useIndexes,At as useIndexesIds,Z as useIndexesOrIndexesById,Nt as useLinkedRowIds,Yt as useLinkedRowIdsListener,Kt as useLocalRowIds,Xt as useLocalRowIdsListener,Mt as useMetric,Et as useMetricIds,Ft as useMetricListener,U as useMetrics,Tt as useMetricsIds,X as useMetricsOrMetricsById,N as useProvideStore,ee as useQueries,$t as useQueriesIds,te as useQueriesOrQueriesById,_t as useQueryIds,vo as useRedoInformation,Gt as useRelationshipIds,$ as useRelationships,zt as useRelationshipsIds,_ as useRelationshipsOrRelationshipsById,Jt as useRemoteRowId,Ut as useRemoteRowIdListener,co as useResultCell,uo as useResultCellIds,bo as useResultCellIdsListener,Co as useResultCellListener,no as useResultRow,oo as useResultRowCount,io as useResultRowCountListener,so as useResultRowIds,ao as useResultRowIdsListener,go as useResultRowListener,ro as useResultSortedRowIds,po as useResultSortedRowIdsListener,eo as useResultTable,to as useResultTableCellIds,lo as useResultTableCellIdsListener,Io as useResultTableListener,Oe as useRow,Me as useRowCount,gt as useRowCountListener,Fe as useRowIds,bt as useRowIdsListener,yt as useRowListener,Ze as useSetCellCallback,ho as useSetCheckpointCallback,Ye as useSetPartialRowCallback,_e as useSetPartialValuesCallback,Ue as useSetRowCallback,Ne as useSetTableCallback,Ke as useSetTablesCallback,et as useSetValueCallback,$e as useSetValuesCallback,Ot as useSliceIds,Ht as useSliceIdsListener,Dt as useSliceRowIds,Qt as useSliceRowIdsListener,Ve as useSortedRowIds,Ct as useSortedRowIdsListener,xt as useStartTransactionListener,J as useStore,Pe as useStoreIds,K as useStoreOrStoreById,Be as useTable,Te as useTableCellIds,at as useTableCellIdsListener,Se as useTableIds,It as useTableIdsListener,it as useTableListener,xe as useTables,ct as useTablesListener,Po as useUndoInformation,Je as useValue,ze as useValueIds,qt as useValueIdsListener,vt as useValueListener,We as useValues,ft as useValuesListener,St as useWillFinishTransactionListener};
|
package/lib/ui-react.js.gz
CHANGED
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,s="",n=t(s),a=t(!0),l=t(0),o=t(t),r="type",i="default",c="Has",d="Ids",u="Table",g=u+"s",h=u+d,f="Row",T=f+"Count",b=f+d,C="Cell",p=C+d,V="Value",v=V+"s",y=V+d,S=e=>s+e,w=(e,t)=>e.startsWith(t),m=(e,t)=>e.endsWith(t),I=Math.max,R=isFinite,L=e=>null==e,H=(e,t,s)=>L(e)?s?.():t(e),J=e=>e==n||e==a,M=e=>t(e)==o,E=(e,t,s)=>e.slice(t,s),x=e=>e.length,F=(e,t)=>e.forEach(t),O=(e,t)=>e.map(t),z=(e,...t)=>e.push(...t),A=Object,P=e=>A.getPrototypeOf(e),W=A.entries,j=A.keys,k=A.isFrozen,D=A.freeze,N=e=>!L(e)&&H(P(e),(e=>e==A.prototype||L(P(e))),(()=>!0)),B=(e=[])=>A.fromEntries(e),$=(e,t)=>t in e,q=(e,t)=>(delete e[t],e),G=(e,t)=>F(W(e),(([e,s])=>t(s,e))),K=(e,t)=>O(W(e),(([e,s])=>t(s,e))),Q=e=>N(e)&&0==(e=>x(j(e)))(e),U=(e,t,s)=>($(e,t)||(e[t]=s()),e[t]),X=e=>e?.size??0,Y=(e,t)=>e?.has(t)??!1,Z=e=>L(e)||0==X(e),_=e=>e.clear(),ee=(e,t)=>e?.forEach(t),te=(e,t)=>e?.delete(t),se=e=>new Map(e),ne=e=>[...e?.keys()??[]],ae=(e,t)=>e?.get(t),le=(e,t)=>ee(e,((e,s)=>t(s,e))),oe=(e,t,s)=>L(s)?(te(e,t),e):e?.set(t,s),re=(e,t,s,n)=>(Y(e,t)?n?.(ae(e,t)):oe(e,t,s()),ae(e,t)),ie=(e,t,s,n=oe)=>(K(t,((t,n)=>s(e,n,t))),le(e,(s=>$(t,s)?0:n(e,s))),e),ce=(e,t,s)=>{const n={};return ee(e,((e,a)=>{const l=t?t(e,a):e;!s?.(l,e)&&(n[a]=l)})),n},de=(e,t,s)=>ce(e,(e=>ce(e,t,s)),Q),ue=(e,t,s)=>ce(e,(e=>de(e,t,s)),Q),ge=(e,t)=>{const s=se();return ee(e,((e,n)=>s.set(n,t?.(e)??e))),s},he=e=>ge(e,ge),fe=e=>ge(e,he),Te=(e,t,s,n,a=0)=>H((s?re:ae)(e,t[a],a>x(t)-2?s:se),(l=>{if(a>x(t)-2)return n?.(l)&&oe(e,t[a]),l;const o=Te(l,t,s,n,a+1);return Z(l)&&oe(e,t[a]),o})),be=new globalThis.TextEncoder,Ce=e=>{let t=2166136261;return F(be.encode(e),(e=>{t^=e,t+=(t<<1)+(t<<4)+(t<<7)+(t<<8)+(t<<24)})),t>>>0},pe=([e,t,s])=>[e,t,s],Ve=(e,t)=>[e,t],ve=(e,t)=>Ce(e+":"+t),ye=(e,t,s)=>{e[2]=t>>>0,s>e[0]&&(e[0]=s)},Se=e=>Ve(e,B()),we=(e="")=>[e,se(),0],me=()=>[s,void 0,0],Ie=([e,t,s],n)=>[e,n(t,e),s],Re=(e,t=pe)=>Ie(e,(e=>ce(e,t))),Le=e=>new Set(Array.isArray(e)||L(e)?e:[e]),He=(e,t)=>e?.add(t),Je=/^\d+$/,Me=()=>{const e=[];let t=0;return[n=>(n?e.shift():null)??s+t++,t=>{Je.test(t)&&x(e)<1e3&&z(e,t)}]},Ee=e=>[e,e],xe=()=>[se(),se()],Fe=e=>[...e],Oe=([e,t])=>e===t,ze=e=>{const s=t(e);return J(s)||s==l&&R(e)?s:void 0},Ae=(e,t,s,n,a)=>L(a)?e.delCell(t,s,n,!0):e.setCell(t,s,n,a),Pe=(e,t,s)=>L(s)?e.delValue(t):e.setValue(t,s),We=e=>JSON.stringify(e,((e,t)=>t instanceof Map?A.fromEntries([...t]):t)),je=JSON.parse,ke=(e,t,s)=>L(e)||!N(e)||Q(e)||k(e)?(s?.(),!1):(K(e,((s,n)=>{t(s,n)||q(e,n)})),!Q(e)),De=(e,t,s)=>oe(e,t,ae(e,t)==-s?void 0:s),Ne=()=>{let e,t,n=!1,a=!1,o=0,d=[];const w=se(),m=se(),I=se(),R=se(),A=se(),P=se(),W=se(),j=se(),k=se(),N=se(),B=se(),G=se(),U=se(),be=se(),Ce=Le(),pe=se(),Ve=se(),ve=se(),ye=se(),Se=xe(),we=xe(),me=xe(),Ie=xe(),Re=xe(),Je=xe(),Be=xe(),$e=xe(),qe=xe(),Ge=xe(),Ke=xe(),Qe=xe(),Ue=xe(),Xe=xe(),Ye=xe(),Ze=xe(),_e=xe(),et=xe(),tt=xe(),st=xe(),nt=xe(),at=xe(),lt=se(),ot=xe(),[rt,it,ct,dt]=(e=>{let t;const[n,a]=Me(),l=se();return[(e,a,o,r=[],i=(()=>[]))=>{t??=Ms;const c=n(1);return oe(l,c,[e,a,o,r,i]),He(Te(a,o??[s],Le),c),c},(e,n,...a)=>F(((e,t=[s])=>{const n=[],a=(e,s)=>s==x(t)?z(n,e):null===t[s]?ee(e,(e=>a(e,s+1))):F([t[s],null],(t=>a(ae(e,t),s+1)));return a(e,0),n})(e,n),(e=>ee(e,(e=>ae(l,e)[0](t,...n??[],...a))))),e=>H(ae(l,e),(([,t,n])=>(Te(t,n??[s],void 0,(t=>(te(t,e),Z(t)?1:0))),oe(l,e),a(e),n))),e=>H(ae(l,e),(([e,,s=[],n,a])=>{const l=(...o)=>{const r=x(o);r==x(s)?e(t,...o,...a(o)):L(s[r])?F(n[r]?.(...o)??[],(e=>l(...o,e))):l(...o,s[r])};l()}))]})(),ut=e=>{if(!ke(e,((e,t)=>[r,i].includes(t))))return!1;const t=e[r];return!(!J(t)&&t!=l||(ze(e[i])!=t&&q(e,i),0))},gt=(t,s)=>(!e||Y(B,s)||Nt(s))&&ke(t,((e,t)=>ht(s,t,e)),(()=>Nt(s))),ht=(e,t,s,n)=>ke(n?s:Ct(s,e,t),((n,a)=>H(ft(e,t,a,n),(e=>(s[a]=e,!0)),(()=>!1))),(()=>Nt(e,t))),ft=(t,s,n,a)=>e?H(ae(ae(B,t),n),(e=>ze(a)!=e[r]?Nt(t,s,n,a,e[i]):a),(()=>Nt(t,s,n,a))):L(ze(a))?Nt(t,s,n,a):a,Tt=(e,t)=>ke(t?e:pt(e),((t,s)=>H(bt(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>Bt())),bt=(e,s)=>t?H(ae(U,e),(t=>ze(s)!=t[r]?Bt(e,s,t[i]):s),(()=>Bt(e,s))):L(ze(s))?Bt(e,s):s,Ct=(e,t,s)=>(H(ae(G,t),(([n,a])=>{ee(n,((t,s)=>{$(e,s)||(e[s]=t)})),ee(a,(n=>{$(e,n)||Nt(t,s,n)}))})),e),pt=e=>(t&&(ee(be,((t,s)=>{$(e,s)||(e[s]=t)})),ee(Ce,(t=>{$(e,t)||Bt(t)}))),e),Vt=e=>ie(B,e,((e,t,s)=>{const n=se(),a=Le();ie(re(B,t,se),s,((e,t,s)=>{oe(e,t,s),H(s[i],(e=>oe(n,t,e)),(()=>He(a,t)))})),oe(G,t,[n,a])}),((e,t)=>{oe(B,t),oe(G,t)})),vt=e=>ie(U,e,((e,t,s)=>{oe(U,t,s),H(s[i],(e=>oe(be,t,e)),(()=>He(Ce,t)))}),((e,t)=>{oe(U,t),oe(be,t),te(Ce,t)})),yt=e=>Q(e)?ys():bs(e),St=e=>ie(ve,e,((e,t,s)=>wt(t,s)),((e,t)=>xt(t))),wt=(e,t)=>ie(re(ve,e,(()=>(At(e,1),oe(pe,e,Me()),oe(Ve,e,se()),se()))),t,((t,s,n)=>mt(e,t,s,n)),((t,s)=>Ft(e,t,s))),mt=(e,t,s,n,a)=>ie(re(t,s,(()=>(Pt(e,s,1),se()))),n,((t,n,a)=>It(e,s,t,n,a)),((n,l)=>Ot(e,t,s,n,l,a))),It=(e,t,s,n,a)=>{Y(s,n)||Wt(e,t,n,1);const l=ae(s,n);a!==l&&(jt(e,t,n,l,a),oe(s,n,a))},Rt=(e,t,s,n,a)=>H(ae(t,s),(t=>It(e,s,t,n,a)),(()=>mt(e,t,s,Ct({[n]:a},e,s)))),Lt=e=>Q(e)?ms():Cs(e),Ht=e=>ie(ye,e,((e,t,s)=>Jt(t,s)),((e,t)=>zt(t))),Jt=(e,t)=>{Y(ye,e)||kt(e,1);const s=ae(ye,e);t!==s&&(Dt(e,s,t),oe(ye,e,t))},Mt=(e,t)=>{const[s]=ae(pe,e),n=s(t);return Y(ae(ve,e),n)?Mt(e,t):n},Et=e=>ae(ve,e)??wt(e,{}),xt=e=>wt(e,{}),Ft=(e,t,s)=>{const[,n]=ae(pe,e);n(s),mt(e,t,s,{},!0)},Ot=(e,t,s,n,a,l)=>{const o=ae(ae(G,e)?.[0],a);if(!L(o)&&!l)return It(e,s,n,a,o);const r=t=>{jt(e,s,t,ae(n,t)),Wt(e,s,t,-1),oe(n,t)};L(o)?r(a):le(n,r),Z(n)&&(Pt(e,s,-1),Z(oe(t,s))&&(At(e,-1),oe(ve,e),oe(pe,e),oe(Ve,e)))},zt=e=>{const t=ae(be,e);if(!L(t))return Jt(e,t);Dt(e,ae(ye,e)),kt(e,-1),oe(ye,e)},At=(e,t)=>De(w,e,t),Pt=(e,t,s)=>De(re(R,e,se),t,s)&&oe(I,e,re(I,e,(()=>0))+s),Wt=(e,t,s,n)=>{const a=ae(Ve,e),l=ae(a,s)??0;(0==l&&1==n||1==l&&-1==n)&&De(re(m,e,se),s,n),oe(a,s,l!=-n?l+n:null),De(re(re(A,e,se),t,se),s,n)},jt=(e,t,s,n,a)=>re(re(re(P,e,se),t,se),s,(()=>[n,0]))[1]=a,kt=(e,t)=>De(W,e,t),Dt=(e,t,s)=>re(j,e,(()=>[t,0]))[1]=s,Nt=(e,t,s,n,a)=>(z(re(re(re(k,e,se),t,se),s,(()=>[])),n),a),Bt=(e,t,s)=>(z(re(N,e,(()=>[])),t),s),$t=(e,t,s)=>H(ae(ae(ae(P,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...Ee(ls(e,t,s))])),qt=e=>H(ae(j,e),(([e,t])=>[!0,e,t]),(()=>[!1,...Ee(is(e))])),Gt=e=>Z(k)||Z(Ze[e])?0:ee(e?fe(k):k,((t,s)=>ee(t,((t,n)=>ee(t,((t,a)=>it(Ze[e],[s,n,a],t))))))),Kt=e=>Z(N)||Z(_e[e])?0:ee(e?ge(N):N,((t,s)=>it(_e[e],[s],t))),Qt=(e,t,s,n)=>{if(!Z(e))return it(t,n,(()=>ce(e))),le(e,((e,t)=>it(s,[...n??[],e],1==t))),1},Ut=e=>{const t=cs();t!=n&&it(Se[e],void 0,t);const s=Z(Ge[e]),a=Z(Ue[e])&&Z(Xe[e])&&Z(qe[e])&&Z(Ke[e])&&Z(Je[e])&&Z(Be[e])&&Z($e[e])&&s&&Z(me[e])&&Z(Ie[e]),l=Z(Ye[e])&&Z(Qe[e])&&Z(Re[e])&&Z(we[e]);if(!a||!l){const t=e?[ge(w),he(m),ge(I),he(R),fe(A),fe(P)]:[w,m,I,R,A,P];if(!a){Qt(t[0],me[e],Ie[e]),ee(t[1],((t,s)=>Qt(t,Je[e],Be[e],[s]))),ee(t[2],((t,s)=>{0!=t&&it($e[e],[s],ts(s))}));const n=Le();ee(t[3],((t,a)=>{Qt(t,qe[e],Ke[e],[a])&&!s&&(it(Ge[e],[a,null]),He(n,a))})),s||ee(t[5],((t,s)=>{if(!Y(n,s)){const n=Le();ee(t,(e=>ee(e,(([t,s],a)=>s!==t?He(n,a):te(e,a))))),ee(n,(t=>it(Ge[e],[s,t])))}})),ee(t[4],((t,s)=>ee(t,((t,n)=>Qt(t,Ue[e],Xe[e],[s,n])))))}if(!l){let s;ee(t[5],((t,n)=>{let a;ee(t,((t,l)=>{let o;ee(t,(([t,r],i)=>{r!==t&&(it(Ye[e],[n,l,i],r,t,$t),s=a=o=1)})),o&&it(Qe[e],[n,l],$t)})),a&&it(Re[e],[n],$t)})),s&&it(we[e],void 0,$t)}}},Xt=e=>{const t=fs();t!=a&&it(et[e],void 0,t);const s=Z(st[e])&&Z(nt[e]),n=Z(at[e])&&Z(tt[e]);if(!s||!n){const t=e?[ge(W),ge(j)]:[W,j];if(s||Qt(t[0],st[e],nt[e]),!n){let s;ee(t[1],(([t,n],a)=>{n!==t&&(it(at[e],[a],n,t,qt),s=1)})),s&&it(tt[e],void 0,qt)}}},Yt=(e,...t)=>(Ls((()=>e(...O(t,S)))),Ms),Zt=()=>ue(ve),_t=()=>ne(ve),es=e=>ne(ae(Ve,S(e))),ts=e=>X(ae(ve,S(e))),ss=e=>ne(ae(ve,S(e))),ns=(e,t,s,n=0,a)=>{return O(E((o=ae(ve,S(e)),r=(e,s)=>[L(t)?s:ae(e,S(t)),s],l=([e],[t])=>((e??0)<(t??0)?-1:1)*(s?-1:1),O([...o?.entries()??[]],(([e,t])=>r(t,e))).sort(l)),n,L(a)?a:n+a),(([,e])=>e));var l,o,r},as=(e,t)=>ne(ae(ae(ve,S(e)),S(t))),ls=(e,t,s)=>ae(ae(ae(ve,S(e)),S(t)),S(s)),os=()=>ce(ye),rs=()=>ne(ye),is=e=>ae(ye,S(e)),cs=()=>!Z(ve),ds=e=>Y(ve,S(e)),us=(e,t)=>Y(ae(Ve,S(e)),S(t)),gs=(e,t)=>Y(ae(ve,S(e)),S(t)),hs=(e,t,s)=>Y(ae(ae(ve,S(e)),S(t)),S(s)),fs=()=>!Z(ye),Ts=e=>Y(ye,S(e)),bs=e=>Yt((()=>(e=>ke(e,gt,Nt))(e)?St(e):0)),Cs=e=>Yt((()=>Tt(e)?Ht(e):0)),ps=e=>{try{yt(je(e))}catch{}return Ms},Vs=t=>Yt((()=>{if((e=ke(t,(e=>ke(e,ut))))&&(Vt(t),!Z(ve))){const e=Zt();ys(),bs(e)}})),vs=e=>Yt((()=>{if(t=(e=>ke(e,ut))(e)){const s=os();Rs(),ms(),t=!0,vt(e),Cs(s)}})),ys=()=>Yt((()=>St({}))),Ss=e=>Yt((e=>Y(ve,e)?xt(e):0),e),ws=(e,t)=>Yt(((e,t)=>H(ae(ve,e),(s=>Y(s,t)?Ft(e,s,t):0))),e,t),ms=()=>Yt((()=>Ht({}))),Is=()=>Yt((()=>{Vt({}),e=!1})),Rs=()=>Yt((()=>{vt({}),t=!1})),Ls=(e,t)=>{if(-1!=o){Hs();const s=e();return Js(t),s}},Hs=()=>(-1!=o&&o++,1==o&&it(lt,void 0),Ms),Js=e=>(o>0&&(o--,0==o&&(o=1,Gt(1),Z(P)||Ut(1),Kt(1),Z(j)||Xt(1),e?.(Ms)&&(ee(P,((e,t)=>ee(e,((e,s)=>ee(e,(([e],n)=>Ae(Ms,t,s,n,e))))))),_(P),ee(j,(([e],t)=>Pe(Ms,t,e))),_(j)),it(ot[0],void 0),o=-1,Gt(0),Z(P)||Ut(0),Kt(0),Z(j)||Xt(0),d[0]?.(Ms),it(ot[1],void 0),d[1]?.(Ms),o=0,n=cs(),a=fs(),F([w,m,I,R,A,P,k,W,j,N],_))),Ms),Ms={getContent:()=>[Zt(),os()],getTables:Zt,getTableIds:_t,getTable:e=>de(ae(ve,S(e))),getTableCellIds:es,getRowCount:ts,getRowIds:ss,getSortedRowIds:ns,getRow:(e,t)=>ce(ae(ae(ve,S(e)),S(t))),getCellIds:as,getCell:ls,getValues:os,getValueIds:rs,getValue:is,hasTables:cs,hasTable:ds,hasTableCell:us,hasRow:gs,hasCell:hs,hasValues:fs,hasValue:Ts,getTablesJson:()=>We(ve),getValuesJson:()=>We(ye),getJson:()=>We([ve,ye]),getTablesSchemaJson:()=>We(B),getValuesSchemaJson:()=>We(U),getSchemaJson:()=>We([B,U]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:([e,t])=>Yt((()=>{(Q(e)?ys:bs)(e),(Q(t)?ms:Cs)(t)})),setTables:bs,setTable:(e,t)=>Yt((e=>gt(t,e)?wt(e,t):0),e),setRow:(e,t,s)=>Yt(((e,t)=>ht(e,t,s)?mt(e,Et(e),t,s):0),e,t),addRow:(e,t,s=!0)=>Ls((()=>{let n;return ht(e,n,t)&&(e=S(e),mt(e,Et(e),n=Mt(e,s?1:0),t)),n})),setPartialRow:(e,t,s)=>Yt(((e,t)=>{if(ht(e,t,s,1)){const n=Et(e);K(s,((s,a)=>Rt(e,n,t,a,s)))}}),e,t),setCell:(e,t,s,n)=>Yt(((e,t,s)=>H(ft(e,t,s,M(n)?n(ls(e,t,s)):n),(n=>Rt(e,Et(e),t,s,n)))),e,t,s),setValues:Cs,setPartialValues:e=>Yt((()=>Tt(e,1)?K(e,((e,t)=>Jt(t,e))):0)),setValue:(e,t)=>Yt((e=>H(bt(e,M(t)?t(is(e)):t),(t=>Jt(e,t)))),e),applyChanges:e=>Yt((()=>{K(e[0],((e,t)=>L(e)?Ss(t):K(e,((e,s)=>L(e)?ws(t,s):K(e,((e,n)=>Ae(Ms,t,s,n,e))))))),K(e[1],((e,t)=>Pe(Ms,t,e)))})),setTablesJson:ps,setValuesJson:e=>{try{Lt(je(e))}catch{}return Ms},setJson:e=>Yt((()=>{try{const[t,s]=je(e);yt(t),Lt(s)}catch{ps(e)}})),setTablesSchema:Vs,setValuesSchema:vs,setSchema:(e,t)=>Yt((()=>{Vs(e),vs(t)})),delTables:ys,delTable:Ss,delRow:ws,delCell:(e,t,s,n)=>Yt(((e,t,s)=>H(ae(ve,e),(a=>H(ae(a,t),(l=>Y(l,s)?Ot(e,a,t,l,s,n):0))))),e,t,s),delValues:ms,delValue:e=>Yt((e=>Y(ye,e)?zt(e):0),e),delTablesSchema:Is,delValuesSchema:Rs,delSchema:()=>Yt((()=>{Is(),Rs()})),transaction:Ls,startTransaction:Hs,getTransactionChanges:()=>[ce(P,((e,t)=>-1===ae(w,t)?void 0:ce(e,((e,s)=>-1===ae(ae(R,t),s)?void 0:ce(e,(([,e])=>e),((e,t)=>Oe(t)))),Q)),Q),ce(j,(([,e])=>e),((e,t)=>Oe(t)))],getTransactionLog:()=>[!Z(P),!Z(j),ue(P,Fe,Oe),ue(k),ce(j,Fe,Oe),ce(N),ce(w),de(R),ue(A),ce(W)],finishTransaction:Js,forEachTable:e=>ee(ve,((t,s)=>e(s,(e=>ee(t,((t,s)=>e(s,(e=>le(t,e))))))))),forEachTableCell:(e,t)=>le(ae(Ve,S(e)),t),forEachRow:(e,t)=>ee(ae(ve,S(e)),((e,s)=>t(s,(t=>le(e,t))))),forEachCell:(e,t,s)=>le(ae(ae(ve,S(e)),S(t)),s),forEachValue:e=>le(ye,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 i,c,d;c=r,x(i=o)===x(c)&&(d=(e,t)=>c[t]===e,i.every(d))||(r=o,l(Ms,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),Ms),delListener:e=>(ct(e),Ms),getListenerStats:()=>({}),createStore:Ne,addListener:rt,callListeners:it,setInternalListeners:(e,t)=>d=[e,t]};return K({[c+g]:[0,Se,[],()=>[cs()]],[g]:[0,we],[h]:[0,me],[c+u]:[1,Ie,[_t],e=>[ds(...e)]],[u]:[1,Re,[_t]],[u+p]:[1,Je,[_t]],[c+u+C]:[2,Be,[_t,es],e=>[us(...e)]],[T]:[1,$e,[_t]],[b]:[1,qe,[_t]],[c+f]:[2,Ke,[_t,ss],e=>[gs(...e)]],[f]:[2,Qe,[_t,ss]],[p]:[2,Ue,[_t,ss]],[c+C]:[3,Xe,[_t,ss,as],e=>[hs(...e)]],[C]:[3,Ye,[_t,ss,as],e=>Ee(ls(...e))],InvalidCell:[3,Ze],[c+v]:[0,et,[],()=>[fs()]],[v]:[0,tt],[y]:[0,st],[c+V]:[1,nt,[rs],e=>[Ts(...e)]],[V]:[1,at,[rs],e=>Ee(is(e[0]))],InvalidValue:[1,_e]},(([e,t,s,n],a)=>{Ms["add"+a+"Listener"]=(...a)=>rt(a[e],t[a[e+1]?1:0],e>0?E(a,0,e):void 0,s,n)})),D(Ms)},Be=2**36,$e=2**30,qe=2**24,Ge=2**18,Ke=4096,Qe=64,Ue=e=>String.fromCharCode(48+(63&e)),Xe=(e,t)=>((e,t)=>e.charCodeAt(t))(e,t)-48,Ye={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},Ze=(e="")=>[e,[we(e),we(e)],0];e.createMergeableStore=e=>{let t,n,a=1,l=Ze();const[o,r]=(e=>{let t=0,s=-1;const n=Ce(e),a=e=>{const n=t,[a,l]=L(e)?[0,0]:[Xe(o=e,0)*Be+Xe(o,1)*$e+Xe(o,2)*qe+Xe(o,3)*Ge+Xe(o,4)*Ke+Xe(o,5)*Qe+Xe(o,6),Xe(o,7)*Ge+Xe(o,8)*Ke+Xe(o,9)*Qe+Xe(o,10),Xe(o,11)*qe+Xe(o,12)*Ge+Xe(o,13)*Ke+Xe(o,14)*Qe+Xe(o,15)];var o;t=I(n,a,Date.now()),s=t==n?t==a?I(s,l):s:t==a?l:-1};return[()=>{return a(),l=++s,o=n,Ue((e=t)/Be)+Ue(e/$e)+Ue(e/qe)+Ue(e/Ge)+Ue(e/Ke)+Ue(e/Qe)+Ue(e)+Ue(l/Ge)+Ue(l/Ke)+Ue(l/Qe)+Ue(l)+Ue(o/qe)+Ue(o/Ge)+Ue(o/Ke)+Ue(o/Qe)+Ue(o);var e,l,o},a]})(e),i=Ne(),c=e=>{const t=a;a=0,e(),a=t},d=(e,t=0)=>{const s={},n={},[a,[[o,r,i],c],d]=e,[,[g,h]]=l,[f,T,b]=g;if(o){let e=t?i:b^(o>f?(f?Ce(f):0)^Ce(o):0);G(r,(([n,a,l],o)=>{const r=re(T,o,we),[i,c,d]=r;let g=t?l:d^(n>i?(i?Ce(i):0)^Ce(n):0);G(a,((e,n)=>{const[a,l]=u(e,re(c,n,we),U(U(s,o,B),n,B),t);g^=t?0:(a?ve(n,a):0)^ve(n,l)})),ye(r,g,n),e^=t?0:(d?ve(o,d):0)^ve(o,r[2])})),ye(g,e,o)}return u(c,h,n,t),ye(l,t?d:g[2]^h[2],a),[s,n]},u=(e,t,s,n)=>{const[a,l,o]=e,[r,i,c]=t;if(a){let e=n?o:c^(a>r?(r?Ce(r):0)^Ce(a):0);G(l,(([t,a,l],o)=>{const r=re(i,o,me),[c,,d]=r;t>c&&(ye(r,n?l:Ce(We(a??null)+":"+t),t),r[1]=a,s[o]=a,e^=n?0:ve(o,d)^ve(o,r[2]))})),ye(t,e,a)}return[c,t[2]]},g=()=>Ie(l,(([e,t])=>[Re(e,(e=>Re(e,(e=>Re(e))))),Re(t)])),h=()=>{if(L(n)){const[,,e,,n]=i.getTransactionLog(),a=Q(e)&&Q(n)?s:t??(t=o()),l=Ve(a,[Se(Q(e)?s:a),Se(Q(n)?s:a)]),[[,r],[,c]]=l[1];return K(e,((e,t)=>{const[,s]=r[t]=Se(a);K(e,((e,t)=>{const[,n]=s[t]=Se(a);K(e,(([,e],t)=>n[t]=Ve(a,e)))}))})),K(n,(([,e],t)=>c[t]=Ve(a,e))),l}return n},f=e=>(r(e[0]),c((()=>i.applyChanges(d(e)))),T),T={getMergeableContent:g,setMergeableContent:e=>(c((()=>i.transaction((()=>{i.delTables().delValues(),l=Ze()})))),r(e[0]),c((()=>i.applyChanges(d(e,1)))),T),getTransactionMergeableChanges:h,applyMergeableChanges:f,merge:e=>{const t=g(),s=e.getMergeableContent();return e.applyMergeableChanges(t),f(s)},getContentHash:()=>l[2],getTablesHash:()=>l[1][0][2],getTableHash:e=>ae(l[1][0][1],e)?.[2]??0,getRowHash:(e,t)=>ae(ae(l[1][0][1],e)?.[1],t)?.[2]??0,getCellHash:(e,t,s)=>ae(ae(ae(l[1][0][1],e)?.[1],t)?.[1],s)?.[2]??0,getValuesHash:()=>l[1][1][2],getValueHash:e=>ae(l[1][1][1],e)?.[2]??0};return i.setInternalListeners((()=>{a&&(n=h(),d(n))}),(()=>t=n=void 0)),K(i,((e,t)=>T[t]=w(t,"set")||w(t,"del")||w(t,"apply")||m(t,"Transaction")||"callListener"==t?(...t)=>(e(...t),T):w(t,"add")&&m(t,"Listener")?(...s)=>{const n=Ye[E(t,3,-8)]??0,a=s[n];return s[n]=(e,...t)=>a(T,...t),e(...s)}:e)),D(T)}},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseMergeableStore={});
|
|
1
|
+
var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,s="",n=t(s),a=t(!0),l=t(0),r=t(t),o="type",i="default",c="Has",d="Ids",u="Table",g=u+"s",h=u+d,f="Row",b=f+"Count",T=f+d,C="Cell",v=C+d,p="Value",V=p+"s",y=p+d,w=e=>s+e,S=(e,t)=>e.startsWith(t),I=(e,t)=>e.endsWith(t),M=Math.max,m=isFinite,R=e=>null==e,L=(e,t,s)=>R(e)?s?.():t(e),H=e=>e==n||e==a,J=e=>t(e)==r,E=e=>Array.isArray(e),x=(e,t,s)=>e.slice(t,s),D=e=>e.length,F=(e,t)=>e.forEach(t),O=(e,t)=>e.map(t),z=(e,...t)=>e.push(...t),A=Object,P=e=>A.getPrototypeOf(e),W=A.entries,j=A.isFrozen,k=e=>!R(e)&&L(P(e),(e=>e==A.prototype||R(P(e))),(()=>!0)),N=A.keys,B=A.freeze,$=(e=[])=>A.fromEntries(e),q=(e,t)=>t in e,G=(e,t)=>(delete e[t],e),K=(e,t)=>F(W(e),(([e,s])=>t(s,e))),Q=(e,t)=>O(W(e),(([e,s])=>t(s,e))),U=(e,t)=>$(Q(e,((e,s)=>[s,t(e,s)]))),X=e=>k(e)&&0==(e=>D(N(e)))(e),Y=(e,t,s)=>(q(e,t)||(e[t]=s()),e[t]),Z=(e,t,s,n=0)=>R(e)||!k(e)||!n&&X(e)||j(e)?(s?.(),!1):(Q(e,((s,n)=>{t(s,n)||G(e,n)})),!!n||!X(e)),_=e=>e?.size??0,ee=(e,t)=>e?.has(t)??!1,te=e=>R(e)||0==_(e),se=e=>e.clear(),ne=(e,t)=>e?.forEach(t),ae=(e,t)=>e?.delete(t),le=e=>new Map(e),re=e=>[...e?.keys()??[]],oe=(e,t)=>e?.get(t),ie=(e,t)=>ne(e,((e,s)=>t(s,e))),ce=(e,t,s)=>R(s)?(ae(e,t),e):e?.set(t,s),de=(e,t,s,n)=>(ee(e,t)?n?.(oe(e,t)):ce(e,t,s()),oe(e,t)),ue=(e,t,s,n=ce)=>(Q(t,((t,n)=>s(e,n,t))),ie(e,(s=>q(t,s)?0:n(e,s))),e),ge=(e,t,s,n)=>{const a={};return ne(e,((e,l)=>{if(!s?.(e,l)){const s=t?t(e,l):e;!n?.(s)&&(a[l]=s)}})),a},he=(e,t,s)=>ge(e,(e=>ge(e,t,s)),te,X),fe=(e,t,s)=>ge(e,(e=>he(e,t,s)),te,X),be=(e,t)=>{const s=le();return ne(e,((e,n)=>s.set(n,t?.(e)??e))),s},Te=e=>be(e,be),Ce=e=>be(e,Te),ve=(e,t,s,n,a=0)=>L((s?de:oe)(e,t[a],a>D(t)-2?s:le),(l=>{if(a>D(t)-2)return n?.(l)&&ce(e,t[a]),l;const r=ve(l,t,s,n,a+1);return te(l)&&ce(e,t[a]),r})),pe=new globalThis.TextEncoder,Ve=e=>{let t=2166136261;return F(pe.encode(e),(e=>{t^=e,t+=(t<<1)+(t<<4)+(t<<7)+(t<<8)+(t<<24)})),t>>>0},ye=([e,t,s])=>[e,t,s],we=([e,t])=>[e,t],Se=e=>e[2],Ie=(e,t)=>Ve(e+":"+t),Me=(e,t,s)=>{e[2]=t>>>0,s>e[0]&&(e[0]=s)},me=e=>[e,$()],Re=(e="")=>[e,le(),0],Le=([e,t,s],n=ye)=>[e,ge(t,n),s],He=(e,s)=>{return E(e)&&3==D(e)&&(a=e[0],t(a)==n)&&s(e[1])&&t(e[2])==l&&m(e[2]);var a},Je=e=>new Set(E(e)||R(e)?e:[e]),Ee=(e,t)=>e?.add(t),xe=/^\d+$/,De=()=>{const e=[];let t=0;return[n=>(n?e.shift():null)??s+t++,t=>{xe.test(t)&&D(e)<1e3&&z(e,t)}]},Fe=e=>[e,e],Oe=()=>[le(),le()],ze=e=>[...e],Ae=([e,t])=>e===t,Pe=e=>{const s=t(e);return H(s)||s==l&&m(e)?s:void 0},We=e=>null===e||!R(Pe(e)),je=(e,t,s,n,a)=>R(a)?e.delCell(t,s,n,!0):e.setCell(t,s,n,a),ke=(e,t,s)=>R(s)?e.delValue(t):e.setValue(t,s),Ne=e=>JSON.stringify(e,((e,t)=>t instanceof Map?A.fromEntries([...t]):t)),Be=JSON.parse,$e=(e,t,s)=>ce(e,t,oe(e,t)==-s?void 0:s),qe=()=>{let e,t,n=!1,a=!1,r=0,d=[];const S=le(),I=le(),M=le(),m=le(),E=le(),A=le(),P=le(),W=le(),j=le(),k=le(),N=le(),$=le(),K=le(),U=le(),Y=Je(),pe=le(),Ve=le(),ye=le(),we=le(),Se=Oe(),Ie=Oe(),Me=Oe(),me=Oe(),Re=Oe(),Le=Oe(),He=Oe(),xe=Oe(),We=Oe(),Ge=Oe(),Ke=Oe(),Qe=Oe(),Ue=Oe(),Xe=Oe(),Ye=Oe(),Ze=Oe(),_e=Oe(),et=Oe(),tt=Oe(),st=Oe(),nt=Oe(),at=Oe(),lt=le(),rt=Oe(),[ot,it,ct,dt]=(e=>{let t;const[n,a]=De(),l=le();return[(e,a,r,o=[],i=(()=>[]))=>{t??=Js;const c=n(1);return ce(l,c,[e,a,r,o,i]),Ee(ve(a,r??[s],Je),c),c},(e,n,...a)=>F(((e,t=[s])=>{const n=[],a=(e,s)=>s==D(t)?z(n,e):null===t[s]?ne(e,(e=>a(e,s+1))):F([t[s],null],(t=>a(oe(e,t),s+1)));return a(e,0),n})(e,n),(e=>ne(e,(e=>oe(l,e)[0](t,...n??[],...a))))),e=>L(oe(l,e),(([,t,n])=>(ve(t,n??[s],void 0,(t=>(ae(t,e),te(t)?1:0))),ce(l,e),a(e),n))),e=>L(oe(l,e),(([e,,s=[],n,a])=>{const l=(...r)=>{const o=D(r);o==D(s)?e(t,...r,...a(r)):R(s[o])?F(n[o]?.(...r)??[],(e=>l(...r,e))):l(...r,s[o])};l()}))]})(),ut=e=>{if(!Z(e,((e,t)=>[o,i].includes(t))))return!1;const t=e[o];return!(!H(t)&&t!=l||(Pe(e[i])!=t&&G(e,i),0))},gt=(t,s)=>(!e||ee(N,s)||Nt(s))&&Z(t,((e,t)=>ht(s,t,e)),(()=>Nt(s))),ht=(e,t,s,n)=>Z(n?s:Ct(s,e,t),((n,a)=>L(ft(e,t,a,n),(e=>(s[a]=e,!0)),(()=>!1))),(()=>Nt(e,t))),ft=(t,s,n,a)=>e?L(oe(oe(N,t),n),(e=>Pe(a)!=e[o]?Nt(t,s,n,a,e[i]):a),(()=>Nt(t,s,n,a))):R(Pe(a))?Nt(t,s,n,a):a,bt=(e,t)=>Z(t?e:vt(e),((t,s)=>L(Tt(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>Bt())),Tt=(e,s)=>t?L(oe(K,e),(t=>Pe(s)!=t[o]?Bt(e,s,t[i]):s),(()=>Bt(e,s))):R(Pe(s))?Bt(e,s):s,Ct=(e,t,s)=>(L(oe($,t),(([n,a])=>{ne(n,((t,s)=>{q(e,s)||(e[s]=t)})),ne(a,(n=>{q(e,n)||Nt(t,s,n)}))})),e),vt=e=>(t&&(ne(U,((t,s)=>{q(e,s)||(e[s]=t)})),ne(Y,(t=>{q(e,t)||Bt(t)}))),e),pt=e=>ue(N,e,((e,t,s)=>{const n=le(),a=Je();ue(de(N,t,le),s,((e,t,s)=>{ce(e,t,s),L(s[i],(e=>ce(n,t,e)),(()=>Ee(a,t)))})),ce($,t,[n,a])}),((e,t)=>{ce(N,t),ce($,t)})),Vt=e=>ue(K,e,((e,t,s)=>{ce(K,t,s),L(s[i],(e=>ce(U,t,e)),(()=>Ee(Y,t)))}),((e,t)=>{ce(K,t),ce(U,t),ae(Y,t)})),yt=e=>X(e)?ys():Ts(e),wt=e=>ue(ye,e,((e,t,s)=>St(t,s)),((e,t)=>xt(t))),St=(e,t)=>ue(de(ye,e,(()=>(zt(e,1),ce(pe,e,De()),ce(Ve,e,le()),le()))),t,((t,s,n)=>It(e,t,s,n)),((t,s)=>Dt(e,t,s))),It=(e,t,s,n,a)=>ue(de(t,s,(()=>(At(e,s,1),le()))),n,((t,n,a)=>Mt(e,s,t,n,a)),((n,l)=>Ft(e,t,s,n,l,a))),Mt=(e,t,s,n,a)=>{ee(s,n)||Pt(e,t,n,1);const l=oe(s,n);a!==l&&(Wt(e,t,n,l,a),ce(s,n,a))},mt=(e,t,s,n,a)=>L(oe(t,s),(t=>Mt(e,s,t,n,a)),(()=>It(e,t,s,Ct({[n]:a},e,s)))),Rt=e=>X(e)?Is():Cs(e),Lt=e=>ue(we,e,((e,t,s)=>Ht(t,s)),((e,t)=>Ot(t))),Ht=(e,t)=>{ee(we,e)||jt(e,1);const s=oe(we,e);t!==s&&(kt(e,s,t),ce(we,e,t))},Jt=(e,t)=>{const[s]=oe(pe,e),n=s(t);return ee(oe(ye,e),n)?Jt(e,t):n},Et=e=>oe(ye,e)??St(e,{}),xt=e=>St(e,{}),Dt=(e,t,s)=>{const[,n]=oe(pe,e);n(s),It(e,t,s,{},!0)},Ft=(e,t,s,n,a,l)=>{const r=oe(oe($,e)?.[0],a);if(!R(r)&&!l)return Mt(e,s,n,a,r);const o=t=>{Wt(e,s,t,oe(n,t)),Pt(e,s,t,-1),ce(n,t)};R(r)?o(a):ie(n,o),te(n)&&(At(e,s,-1),te(ce(t,s))&&(zt(e,-1),ce(ye,e),ce(pe,e),ce(Ve,e)))},Ot=e=>{const t=oe(U,e);if(!R(t))return Ht(e,t);kt(e,oe(we,e)),jt(e,-1),ce(we,e)},zt=(e,t)=>$e(S,e,t),At=(e,t,s)=>$e(de(m,e,le),t,s)&&ce(M,e,de(M,e,(()=>0))+s),Pt=(e,t,s,n)=>{const a=oe(Ve,e),l=oe(a,s)??0;(0==l&&1==n||1==l&&-1==n)&&$e(de(I,e,le),s,n),ce(a,s,l!=-n?l+n:null),$e(de(de(E,e,le),t,le),s,n)},Wt=(e,t,s,n,a)=>de(de(de(A,e,le),t,le),s,(()=>[n,0]))[1]=a,jt=(e,t)=>$e(P,e,t),kt=(e,t,s)=>de(W,e,(()=>[t,0]))[1]=s,Nt=(e,t,s,n,a)=>(z(de(de(de(j,e,le),t,le),s,(()=>[])),n),a),Bt=(e,t,s)=>(z(de(k,e,(()=>[])),t),s),$t=(e,t,s)=>L(oe(oe(oe(A,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...Fe(ls(e,t,s))])),qt=e=>L(oe(W,e),(([e,t])=>[!0,e,t]),(()=>[!1,...Fe(is(e))])),Gt=e=>te(j)||te(Ze[e])?0:ne(e?Ce(j):j,((t,s)=>ne(t,((t,n)=>ne(t,((t,a)=>it(Ze[e],[s,n,a],t))))))),Kt=e=>te(k)||te(_e[e])?0:ne(e?be(k):k,((t,s)=>it(_e[e],[s],t))),Qt=(e,t,s,n)=>{if(!te(e))return it(t,n,(()=>ge(e))),ie(e,((e,t)=>it(s,[...n??[],e],1==t))),1},Ut=e=>{const t=cs();t!=n&&it(Se[e],void 0,t);const s=te(Ge[e]),a=te(Ue[e])&&te(Xe[e])&&te(We[e])&&te(Ke[e])&&te(Le[e])&&te(He[e])&&te(xe[e])&&s&&te(Me[e])&&te(me[e]),l=te(Ye[e])&&te(Qe[e])&&te(Re[e])&&te(Ie[e]);if(!a||!l){const t=e?[be(S),Te(I),be(M),Te(m),Ce(E),Ce(A)]:[S,I,M,m,E,A];if(!a){Qt(t[0],Me[e],me[e]),ne(t[1],((t,s)=>Qt(t,Le[e],He[e],[s]))),ne(t[2],((t,s)=>{0!=t&&it(xe[e],[s],ts(s))}));const n=Je();ne(t[3],((t,a)=>{Qt(t,We[e],Ke[e],[a])&&!s&&(it(Ge[e],[a,null]),Ee(n,a))})),s||ne(t[5],((t,s)=>{if(!ee(n,s)){const n=Je();ne(t,(e=>ne(e,(([t,s],a)=>s!==t?Ee(n,a):ae(e,a))))),ne(n,(t=>it(Ge[e],[s,t])))}})),ne(t[4],((t,s)=>ne(t,((t,n)=>Qt(t,Ue[e],Xe[e],[s,n])))))}if(!l){let s;ne(t[5],((t,n)=>{let a;ne(t,((t,l)=>{let r;ne(t,(([t,o],i)=>{o!==t&&(it(Ye[e],[n,l,i],o,t,$t),s=a=r=1)})),r&&it(Qe[e],[n,l],$t)})),a&&it(Re[e],[n],$t)})),s&&it(Ie[e],void 0,$t)}}},Xt=e=>{const t=fs();t!=a&&it(et[e],void 0,t);const s=te(st[e])&&te(nt[e]),n=te(at[e])&&te(tt[e]);if(!s||!n){const t=e?[be(P),be(W)]:[P,W];if(s||Qt(t[0],st[e],nt[e]),!n){let s;ne(t[1],(([t,n],a)=>{n!==t&&(it(at[e],[a],n,t,qt),s=1)})),s&&it(tt[e],void 0,qt)}}},Yt=(e,...t)=>(Rs((()=>e(...O(t,w)))),Js),Zt=()=>fe(ye),_t=()=>re(ye),es=e=>re(oe(Ve,w(e))),ts=e=>_(oe(ye,w(e))),ss=e=>re(oe(ye,w(e))),ns=(e,t,s,n=0,a)=>{return O(x((r=oe(ye,w(e)),o=(e,s)=>[R(t)?s:oe(e,w(t)),s],l=([e],[t])=>((e??0)<(t??0)?-1:1)*(s?-1:1),O([...r?.entries()??[]],(([e,t])=>o(t,e))).sort(l)),n,R(a)?a:n+a),(([,e])=>e));var l,r,o},as=(e,t)=>re(oe(oe(ye,w(e)),w(t))),ls=(e,t,s)=>oe(oe(oe(ye,w(e)),w(t)),w(s)),rs=()=>ge(we),os=()=>re(we),is=e=>oe(we,w(e)),cs=()=>!te(ye),ds=e=>ee(ye,w(e)),us=(e,t)=>ee(oe(Ve,w(e)),w(t)),gs=(e,t)=>ee(oe(ye,w(e)),w(t)),hs=(e,t,s)=>ee(oe(oe(ye,w(e)),w(t)),w(s)),fs=()=>!te(we),bs=e=>ee(we,w(e)),Ts=e=>Yt((()=>(e=>Z(e,gt,Nt))(e)?wt(e):0)),Cs=e=>Yt((()=>bt(e)?Lt(e):0)),vs=e=>{try{yt(Be(e))}catch{}return Js},ps=t=>Yt((()=>{if((e=Z(t,(e=>Z(e,ut))))&&(pt(t),!te(ye))){const e=Zt();ys(),Ts(e)}})),Vs=e=>Yt((()=>{if(t=(e=>Z(e,ut))(e)){const s=rs();ms(),Is(),t=!0,Vt(e),Cs(s)}})),ys=()=>Yt((()=>wt({}))),ws=e=>Yt((e=>ee(ye,e)?xt(e):0),e),Ss=(e,t)=>Yt(((e,t)=>L(oe(ye,e),(s=>ee(s,t)?Dt(e,s,t):0))),e,t),Is=()=>Yt((()=>Lt({}))),Ms=()=>Yt((()=>{pt({}),e=!1})),ms=()=>Yt((()=>{Vt({}),t=!1})),Rs=(e,t)=>{if(-1!=r){Ls();const s=e();return Hs(t),s}},Ls=()=>(-1!=r&&r++,1==r&&it(lt,void 0),Js),Hs=e=>(r>0&&(r--,0==r&&(r=1,Gt(1),te(A)||Ut(1),Kt(1),te(W)||Xt(1),e?.(Js)&&(ne(A,((e,t)=>ne(e,((e,s)=>ne(e,(([e],n)=>je(Js,t,s,n,e))))))),se(A),ne(W,(([e],t)=>ke(Js,t,e))),se(W)),it(rt[0],void 0),r=-1,Gt(0),te(A)||Ut(0),Kt(0),te(W)||Xt(0),d[0]?.(Js),it(rt[1],void 0),d[1]?.(Js),r=0,n=cs(),a=fs(),F([S,I,M,m,E,A,j,P,W,k],se))),Js),Js={getContent:()=>[Zt(),rs()],getTables:Zt,getTableIds:_t,getTable:e=>he(oe(ye,w(e))),getTableCellIds:es,getRowCount:ts,getRowIds:ss,getSortedRowIds:ns,getRow:(e,t)=>ge(oe(oe(ye,w(e)),w(t))),getCellIds:as,getCell:ls,getValues:rs,getValueIds:os,getValue:is,hasTables:cs,hasTable:ds,hasTableCell:us,hasRow:gs,hasCell:hs,hasValues:fs,hasValue:bs,getTablesJson:()=>Ne(ye),getValuesJson:()=>Ne(we),getJson:()=>Ne([ye,we]),getTablesSchemaJson:()=>Ne(N),getValuesSchemaJson:()=>Ne(K),getSchemaJson:()=>Ne([N,K]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:([e,t])=>Yt((()=>{(X(e)?ys:Ts)(e),(X(t)?Is:Cs)(t)})),setTables:Ts,setTable:(e,t)=>Yt((e=>gt(t,e)?St(e,t):0),e),setRow:(e,t,s)=>Yt(((e,t)=>ht(e,t,s)?It(e,Et(e),t,s):0),e,t),addRow:(e,t,s=!0)=>Rs((()=>{let n;return ht(e,n,t)&&(e=w(e),It(e,Et(e),n=Jt(e,s?1:0),t)),n})),setPartialRow:(e,t,s)=>Yt(((e,t)=>{if(ht(e,t,s,1)){const n=Et(e);Q(s,((s,a)=>mt(e,n,t,a,s)))}}),e,t),setCell:(e,t,s,n)=>Yt(((e,t,s)=>L(ft(e,t,s,J(n)?n(ls(e,t,s)):n),(n=>mt(e,Et(e),t,s,n)))),e,t,s),setValues:Cs,setPartialValues:e=>Yt((()=>bt(e,1)?Q(e,((e,t)=>Ht(t,e))):0)),setValue:(e,t)=>Yt((e=>L(Tt(e,J(t)?t(is(e)):t),(t=>Ht(e,t)))),e),applyChanges:e=>Yt((()=>{Q(e[0],((e,t)=>R(e)?ws(t):Q(e,((e,s)=>R(e)?Ss(t,s):Q(e,((e,n)=>je(Js,t,s,n,e))))))),Q(e[1],((e,t)=>ke(Js,t,e)))})),setTablesJson:vs,setValuesJson:e=>{try{Rt(Be(e))}catch{}return Js},setJson:e=>Yt((()=>{try{const[t,s]=Be(e);yt(t),Rt(s)}catch{vs(e)}})),setTablesSchema:ps,setValuesSchema:Vs,setSchema:(e,t)=>Yt((()=>{ps(e),Vs(t)})),delTables:ys,delTable:ws,delRow:Ss,delCell:(e,t,s,n)=>Yt(((e,t,s)=>L(oe(ye,e),(a=>L(oe(a,t),(l=>ee(l,s)?Ft(e,a,t,l,s,n):0))))),e,t,s),delValues:Is,delValue:e=>Yt((e=>ee(we,e)?Ot(e):0),e),delTablesSchema:Ms,delValuesSchema:ms,delSchema:()=>Yt((()=>{Ms(),ms()})),transaction:Rs,startTransaction:Ls,getTransactionChanges:()=>[ge(A,((e,t)=>-1===oe(S,t)?void 0:ge(e,((e,s)=>-1===oe(oe(m,t),s)?void 0:ge(e,(([,e])=>e),(e=>Ae(e)))),te,X)),te,X),ge(W,(([,e])=>e),(e=>Ae(e))),1],getTransactionLog:()=>[!te(A),!te(W),fe(A,ze,Ae),fe(j),ge(W,ze,Ae),ge(k),ge(S),he(m),fe(E),ge(P)],finishTransaction:Hs,forEachTable:e=>ne(ye,((t,s)=>e(s,(e=>ne(t,((t,s)=>e(s,(e=>ie(t,e))))))))),forEachTableCell:(e,t)=>ie(oe(Ve,w(e)),t),forEachRow:(e,t)=>ne(oe(ye,w(e)),((e,s)=>t(s,(t=>ie(e,t))))),forEachCell:(e,t,s)=>ie(oe(oe(ye,w(e)),w(t)),s),forEachValue:e=>ie(we,e),addSortedRowIdsListener:(e,t,s,n,a,l,r)=>{let o=ns(e,t,s,n,a);return ot((()=>{const r=ns(e,t,s,n,a);var i,c,d;c=o,D(i=r)===D(c)&&(d=(e,t)=>c[t]===e,i.every(d))||(o=r,l(Js,e,t,s,n,a,o))}),Ge[r?1:0],[e,t],[_t])},addStartTransactionListener:e=>ot(e,lt),addWillFinishTransactionListener:e=>ot(e,rt[0]),addDidFinishTransactionListener:e=>ot(e,rt[1]),callListener:e=>(dt(e),Js),delListener:e=>(ct(e),Js),getListenerStats:()=>({}),createStore:qe,addListener:ot,callListeners:it,setInternalListeners:(e,t)=>d=[e,t]};return Q({[c+g]:[0,Se,[],()=>[cs()]],[g]:[0,Ie],[h]:[0,Me],[c+u]:[1,me,[_t],e=>[ds(...e)]],[u]:[1,Re,[_t]],[u+v]:[1,Le,[_t]],[c+u+C]:[2,He,[_t,es],e=>[us(...e)]],[b]:[1,xe,[_t]],[T]:[1,We,[_t]],[c+f]:[2,Ke,[_t,ss],e=>[gs(...e)]],[f]:[2,Qe,[_t,ss]],[v]:[2,Ue,[_t,ss]],[c+C]:[3,Xe,[_t,ss,as],e=>[hs(...e)]],[C]:[3,Ye,[_t,ss,as],e=>Fe(ls(...e))],InvalidCell:[3,Ze],[c+V]:[0,et,[],()=>[fs()]],[V]:[0,tt],[y]:[0,st],[c+p]:[1,nt,[os],e=>[bs(...e)]],[p]:[1,at,[os],e=>Fe(is(e[0]))],InvalidValue:[1,_e]},(([e,t,s,n],a)=>{Js["add"+a+"Listener"]=(...a)=>ot(a[e],t[a[e+1]?1:0],e>0?x(a,0,e):void 0,s,n)})),B(Js)},Ge=2**36,Ke=2**30,Qe=2**24,Ue=2**18,Xe=4096,Ye=64,Ze=e=>String.fromCharCode(48+(63&e)),_e=(e,t)=>((e,t)=>e.charCodeAt(t))(e,t)-48,et={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},tt=(e="")=>[e,[Re(e),Re(e)],0];e.createMergeableStore=e=>{let t,n,a=1,l=tt();const[r,o]=(e=>{let t=0,s=-1;const n=Ve(e),a=e=>{const n=t,[a,l]=R(e)||""==e?[0,0]:[_e(r=e,0)*Ge+_e(r,1)*Ke+_e(r,2)*Qe+_e(r,3)*Ue+_e(r,4)*Xe+_e(r,5)*Ye+_e(r,6),_e(r,7)*Ue+_e(r,8)*Xe+_e(r,9)*Ye+_e(r,10),_e(r,11)*Qe+_e(r,12)*Ue+_e(r,13)*Xe+_e(r,14)*Ye+_e(r,15)];var r;t=M(n,a,Date.now()),s=t==n?t==a?M(s,l):s:t==a?l:-1};return[()=>{return a(),l=++s,r=n,Ze((e=t)/Ge)+Ze(e/Ke)+Ze(e/Qe)+Ze(e/Ue)+Ze(e/Xe)+Ze(e/Ye)+Ze(e)+Ze(l/Ue)+Ze(l/Xe)+Ze(l/Ye)+Ze(l)+Ze(r/Qe)+Ze(r/Ue)+Ze(r/Xe)+Ze(r/Ye)+Ze(r);var e,l,r},a]})(e),i=qe(),c=e=>{const t=a;return a=0,e(),a=t,b},d=(e,t=0)=>{const s={},n={},[a,[[r,o,i],c],d]=e,[,[g,h]]=l,[f,b,T]=g;if(r){let e=t?i:T^(r>f?(f?Ve(f):0)^Ve(r):0);K(o,(([n,a,l],r)=>{const o=de(b,r,Re),[i,c,d]=o;let g=t?l:d^(n>i?(i?Ve(i):0)^Ve(n):0);K(a,((e,n)=>{const[a,l]=u(e,de(c,n,Re),Y(Y(s,r,$),n,$),t);g^=t?0:(a?Ie(n,a):0)^Ie(n,l)})),Me(o,g,n),e^=t?0:(d?Ie(r,d):0)^Ie(r,o[2])})),Me(g,e,r)}return u(c,h,n,t),Me(l,t?d:g[2]^h[2],a),[s,n,1]},u=(e,t,n,a)=>{const[l,r,o]=e,[i,c,d]=t;if(l){let e=a?o:d^(l>i?(i?Ve(i):0)^Ve(l):0);K(r,(([t,l,r],o)=>{const i=de(c,o,(()=>[s,void 0,0])),[d,,u]=i;t>d&&(Me(i,a?r:Ve(Ne(l??null)+":"+t),t),i[1]=l,n[o]=l,e^=a?0:Ie(o,u)^Ie(o,i[2]))})),Me(t,e,l)}return[d,t[2]]},g=()=>[l[0],[Le(l[1][0],(e=>Le(e,(e=>Le(e))))),Le(l[1][1])],l[2]],h=()=>{if(R(n)){const[,,e,,n]=i.getTransactionLog(),a=X(e)&&X(n)?s:t??(t=r()),l=[a,[me(X(e)?s:a),me(X(n)?s:a),1]],[[,o],[,c]]=l[1];return Q(e,((e,t)=>{const[,s]=o[t]=me(a);Q(e,((e,t)=>{const[,n]=s[t]=me(a);Q(e,(([,e],t)=>n[t]=[a,e]))}))})),Q(n,(([,e],t)=>c[t]=[a,e])),l}return n},f=e=>c((()=>{o(e[0]),i.applyChanges(d(e))})),b={getId:()=>e,getMergeableContent:g,getMergeableContentHashes:()=>[l[0],[l[1][0][2],l[1][1][2]]],getMergeableTableHashes:()=>ge(l[1][0][1],Se),getMergeableTableIdsDiff:e=>{const t=[];return ie(l[1][0][1],((s,[,,n])=>{n!==e?.[s]&&z(t,s)})),t},getMergeableRowHashes:e=>$(O(e,(e=>[e,ge(oe(l[1][0][1],e)?.[1],Se)]))),getMergeableRowIdsDiff:e=>U(e,((e,t)=>{const s=[];return ie(oe(l[1][0][1],t)?.[1],((t,[,,n])=>{n!==e?.[t]&&z(s,t)})),s})),getMergeableCellHashes:e=>U(e,((e,t)=>$(O(e,(e=>[e,ge(oe(oe(l[1][0][1],t)?.[1],e)?.[1],Se)]))))),getMergeableTablesChanges:e=>{const[,[[t,s]]]=l,n={};return K(e,((e,t)=>L(oe(s,t),(([s,a])=>{const l={};K(e,((e,t)=>L(oe(a,t),(([s,n])=>{const a=ge(n,we,(([,,t],s)=>t==e?.[s]));X(a)||(l[t]=[s,a])})))),X(l)||(n[t]=[s,l])})))),[t,n]},getMergeableValuesHashes:()=>ge(l[1][1][1],Se),getMergeableValuesChanges:e=>[l[1][1][0],ge(l[1][1][1],we,(([,,t],s)=>t==e?.[s]))],setMergeableContent:e=>c((()=>(e=>He(e,(e=>E(e)&&2==D(e)&&He(e[0],(e=>Z(e,(e=>He(e,(e=>Z(e,(e=>He(e,(e=>Z(e,(e=>He(e,We)),void 0,1)))),void 0,1)))),void 0,1)))&&He(e[1],(e=>Z(e,(e=>He(e,We)),void 0,1))))))(e)?i.transaction((()=>{i.delTables().delValues(),l=tt(),o(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))}),(()=>t=n=void 0)),Q(i,((e,t)=>b[t]=S(t,"set")||S(t,"del")||S(t,"apply")||I(t,"Transaction")||"callListener"==t?(...t)=>(e(...t),b):S(t,"add")&&I(t,"Listener")?(...s)=>{const n=et[x(t,3,-8)]??0,a=s[n];return s[n]=(e,...t)=>a(b,...t),e(...s)}:e)),B(b)}},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseMergeableStore={});
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,a=t(""),n=e=>null==e,s=(e,t,a)=>n(e)?a?.():t(e),o=Object,r=e=>o.getPrototypeOf(e),
|
|
1
|
+
var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,a=t(""),n=e=>null==e,s=(e,t,a)=>n(e)?a?.():t(e),o=Object,r=e=>o.getPrototypeOf(e),i=o.entries,c=o.keys,d=o.freeze,y=(e,t)=>s(e,(e=>e[t])),g=(e,t)=>t in e,u=(e,t)=>(delete e[t],e),l=(e,t)=>((e,t)=>e.map(t))(i(e),(([e,a])=>t(a,e))),p=e=>c(e).length,h=e=>(e=>!n(e)&&s(r(e),(e=>e==o.prototype||n(r(e))),(()=>!0)))(e)&&0==p(e),v=e=>new Map(e),f=(e,t)=>e?.get(t),w=(e,t,a)=>{return n(a)?(s=e,o=t,s?.delete(o),e):e?.set(t,a);var s,o},A=(e,t,a,n)=>{var s,o;return s=e,o=t,s?.has(o)?n?.(f(e,t)):w(e,t,a()),f(e,t)},b=v(),C=v(),L=(e,t)=>[e[t].t,e[t].v],S=(e,t,a,s)=>{const o=n(t)?e:((e,t,a)=>(g(e,t)||(e[t]={}),e[t]))(e,t);let r;return l(a,((e,t)=>{s(o,t,e)&&(r=1)})),l(o,((e,t)=>{g(a,t)||(u(o,t),r=1)})),!n(t)&&h(o)&&u(e,t),r};e.createAutomergePersister=(e,o,r="tinybase",i)=>(o.change((e=>e[r]={})),((e,o,r,i,c,y,g,u={},l=[])=>{let p,v,L,S=0;A(b,l,(()=>0)),A(C,l,(()=>[]));const[m,M,T,x]=((e,t)=>!e||n(t.getMergeableContent)?[0,t.getContent,t.getTransactionChanges,([e,t])=>!h(e)||!h(t)]:[1,t.getMergeableContent,t.getTransactionMergeableChanges,([,[[,e],[,t]]])=>!h(e)||!h(t)])(g,e),P=async e=>(2!=S&&(S=1,await D.schedule((async()=>{await e(),S=0}))),D),j=n=>{var s;(m&&(s=n?.[0],t(s)==a)?1===n?.[1][2]?e.applyMergeableChanges:e.setMergeableContent:1===n?.[2]?e.applyChanges:e.setContent)(n)},D={load:async(t,a)=>await P((async()=>{try{j(await o())}catch(n){y?.(n),e.setContent([t,a])}})),startAutoLoad:async(e={},t={})=>(await D.stopAutoLoad().load(e,t),v=i((async(e,t)=>{const a=t?.();await P((async()=>{try{j(a??e?.()??await o())}catch(e){y?.(e)}}))})),D),stopAutoLoad:()=>(v&&(c(v),v=void 0),D),isAutoLoading:()=>!n(v),save:async e=>(1!=S&&(S=2,await D.schedule((async()=>{try{await r(M,e)}catch(e){y?.(e)}S=0}))),D),startAutoSave:async()=>(await D.stopAutoSave().save(),L=e.addDidFinishTransactionListener((()=>{const e=T();x(e)&&D.save((()=>e))})),D),stopAutoSave:()=>(s(L,e.delListener),L=void 0,D),isAutoSaving:()=>!n(L),schedule:async(...e)=>(((e,...t)=>{e.push(...t)})(f(C,l),...e),await(async()=>{if(!f(b,l)){for(w(b,l,1);!n((e=f(C,l),p=e.shift()));)try{await p()}catch(e){y?.(e)}w(b,l,0)}var e})(),D),getStore:()=>e,destroy:()=>D.stopAutoLoad().stopAutoSave(),getStats:()=>({}),...u};return d(D)})(e,(async()=>{const e=await o.doc();return 2==p(e[r])?L(e,r):void 0}),(async(e,t)=>o.change((a=>((e,t,a,o)=>{((e,t)=>{h(e[t])&&(e[t]={t:{},v:{}})})(e,t);const[r,i]=L(e,t),c=()=>{d=1};let d=1;if(s(o?.(),(([e,t])=>{d=0,l(e,((e,t)=>d?0:n(e)?u(r,t):s(r[t],(t=>l(e,((e,a)=>d?0:n(e)?u(t,a):s(y(t,a),(t=>l(e,((e,a)=>n(e)?u(t,a):t[a]=e))),c)))),c))),l(t,((e,t)=>d?0:n(e)?u(i,t):i[t]=e))})),d){const[e,t]=a();S(r,void 0,e,((e,t,a)=>S(r,t,a,((e,t,a)=>S(e,t,a,((e,t,a)=>{if(y(e,t)!==a)return e[t]=a,1})))))),S(i,void 0,t,((e,t,a)=>{y(i,t)!==a&&(i[t]=a)}))}})(a,r,e,t)))),(e=>{const t=({doc:t})=>e((()=>L(t,r)));return o.on("change",t),t}),(e=>{o.removeListener("change",e)}),i,!1,{getDocHandle:()=>o}))},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBasePersisterAutomerge={});
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,a=t(""),s=e=>null==e,n=(e,t,a)=>s(e)?a?.():t(e),o=Object,r=e=>o.getPrototypeOf(e),i=o.keys,c=o.freeze,
|
|
1
|
+
var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,a=t(""),s=e=>null==e,n=(e,t,a)=>s(e)?a?.():t(e),o=Object,r=e=>o.getPrototypeOf(e),i=o.keys,c=o.freeze,g=e=>(e=>!s(e)&&n(r(e),(e=>e==o.prototype||s(r(e))),(()=>!0)))(e)&&0==(e=>i(e).length)(e),y=JSON.parse,d=e=>new Map(e),l=(e,t)=>e?.get(t),u=(e,t,a)=>{return s(a)?(n=e,o=t,n?.delete(o),e):e?.set(t,a);var n,o},p=(e,t,a,s)=>{var n,o;return n=e,o=t,n?.has(o)?s?.(l(e,t)):u(e,t,a()),l(e,t)},f=d(),h=d(),v="storage",w=globalThis.window,S=(e,r,i,d)=>((e,o,r,i,y,d,v,w={},S=[])=>{let A,b,C,L=0;p(f,S,(()=>0)),p(h,S,(()=>[]));const[m,M,T,O]=((e,t)=>!e||s(t.getMergeableContent)?[0,t.getContent,t.getTransactionChanges,([e,t])=>!g(e)||!g(t)]:[1,t.getMergeableContent,t.getTransactionMergeableChanges,([,[[,e],[,t]]])=>!g(e)||!g(t)])(v,e),P=async e=>(2!=L&&(L=1,await E.schedule((async()=>{await e(),L=0}))),E),x=s=>{var n;(m&&(n=s?.[0],t(n)==a)?1===s?.[1][2]?e.applyMergeableChanges:e.setMergeableContent:1===s?.[2]?e.applyChanges:e.setContent)(s)},E={load:async(t,a)=>await P((async()=>{try{x(await o())}catch(s){d?.(s),e.setContent([t,a])}})),startAutoLoad:async(e={},t={})=>(await E.stopAutoLoad().load(e,t),b=i((async(e,t)=>{const a=t?.();await P((async()=>{try{x(a??e?.()??await o())}catch(e){d?.(e)}}))})),E),stopAutoLoad:()=>(b&&(y(b),b=void 0),E),isAutoLoading:()=>!s(b),save:async e=>(1!=L&&(L=2,await E.schedule((async()=>{try{await r(M,e)}catch(e){d?.(e)}L=0}))),E),startAutoSave:async()=>(await E.stopAutoSave().save(),C=e.addDidFinishTransactionListener((()=>{const e=T();O(e)&&E.save((()=>e))})),E),stopAutoSave:()=>(n(C,e.delListener),C=void 0,E),isAutoSaving:()=>!s(C),schedule:async(...e)=>(((e,...t)=>{e.push(...t)})(l(h,S),...e),await(async()=>{if(!l(f,S)){for(u(f,S,1);!s((e=l(h,S),A=e.shift()));)try{await A()}catch(e){d?.(e)}u(f,S,0)}var e})(),E),getStore:()=>e,destroy:()=>E.stopAutoLoad().stopAutoSave(),getStats:()=>({}),...w};return c(E)})(e,(async()=>y(i.getItem(r))),(async e=>{return i.setItem(r,(t=e(),JSON.stringify(t,((e,t)=>t instanceof Map?o.fromEntries([...t]):t))));var t}),(e=>{const t=t=>{t.storageArea===i&&t.key===r&&e((()=>y(t.newValue)))};return w.addEventListener(v,t),t}),(e=>w.removeEventListener(v,e)),d,!0,{getStorageName:()=>r});e.createLocalPersister=(e,t,a)=>S(e,t,localStorage,a),e.createSessionPersister=(e,t,a)=>S(e,t,sessionStorage,a)},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBasePersisterBrowser={});
|
|
Binary file
|