tinybase 5.0.0-beta.12 → 5.0.0-beta.14
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/common.cjs +1 -1
- package/lib/cjs/common.cjs.gz +0 -0
- package/lib/cjs/indexes.cjs +1 -1
- package/lib/cjs/indexes.cjs.gz +0 -0
- package/lib/cjs/mergeable-store.cjs +1 -1
- package/lib/cjs/mergeable-store.cjs.gz +0 -0
- package/lib/cjs/metrics.cjs +1 -1
- package/lib/cjs/metrics.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-automerge.cjs +1 -1
- package/lib/cjs/persisters/persister-automerge.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-browser.cjs +1 -1
- package/lib/cjs/persisters/persister-browser.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-cr-sqlite-wasm.cjs +1 -1
- package/lib/cjs/persisters/persister-cr-sqlite-wasm.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-electric-sql.cjs +1 -1
- package/lib/cjs/persisters/persister-electric-sql.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-expo-sqlite-next.cjs +1 -1
- package/lib/cjs/persisters/persister-expo-sqlite-next.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-expo-sqlite.cjs +1 -1
- package/lib/cjs/persisters/persister-expo-sqlite.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-file.cjs +1 -1
- package/lib/cjs/persisters/persister-file.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-indexed-db.cjs +1 -1
- package/lib/cjs/persisters/persister-indexed-db.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-libsql.cjs +1 -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 -1
- 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-yjs.cjs +1 -1
- package/lib/cjs/persisters/persister-yjs.cjs.gz +0 -0
- package/lib/cjs/persisters.cjs +1 -1
- package/lib/cjs/persisters.cjs.gz +0 -0
- package/lib/cjs/queries.cjs +1 -1
- package/lib/cjs/queries.cjs.gz +0 -0
- package/lib/cjs/relationships.cjs +1 -1
- package/lib/cjs/relationships.cjs.gz +0 -0
- package/lib/cjs/store.cjs +1 -1
- package/lib/cjs/store.cjs.gz +0 -0
- package/lib/cjs/synchronizers/synchronizer-local.cjs +1 -1
- package/lib/cjs/synchronizers/synchronizer-local.cjs.gz +0 -0
- package/lib/cjs/synchronizers/synchronizer-ws-client.cjs +1 -1
- package/lib/cjs/synchronizers/synchronizer-ws-client.cjs.gz +0 -0
- package/lib/cjs/synchronizers.cjs +1 -1
- package/lib/cjs/synchronizers.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-dom.cjs +1 -1
- package/lib/cjs/ui-react-dom.cjs.gz +0 -0
- package/lib/cjs-es6/checkpoints.cjs +1 -1
- package/lib/cjs-es6/checkpoints.cjs.gz +0 -0
- package/lib/cjs-es6/common.cjs +1 -1
- package/lib/cjs-es6/common.cjs.gz +0 -0
- package/lib/cjs-es6/indexes.cjs +1 -1
- package/lib/cjs-es6/indexes.cjs.gz +0 -0
- package/lib/cjs-es6/mergeable-store.cjs +1 -1
- package/lib/cjs-es6/mergeable-store.cjs.gz +0 -0
- package/lib/cjs-es6/metrics.cjs +1 -1
- package/lib/cjs-es6/metrics.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-automerge.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-automerge.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-browser.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-browser.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-cr-sqlite-wasm.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-cr-sqlite-wasm.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-electric-sql.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-electric-sql.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-expo-sqlite-next.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-expo-sqlite-next.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-expo-sqlite.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-expo-sqlite.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-file.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-file.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-indexed-db.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-indexed-db.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-libsql.cjs +1 -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 -1
- 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-yjs.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-yjs.cjs.gz +0 -0
- package/lib/cjs-es6/persisters.cjs +1 -1
- package/lib/cjs-es6/persisters.cjs.gz +0 -0
- package/lib/cjs-es6/queries.cjs +1 -1
- package/lib/cjs-es6/queries.cjs.gz +0 -0
- package/lib/cjs-es6/relationships.cjs +1 -1
- package/lib/cjs-es6/relationships.cjs.gz +0 -0
- package/lib/cjs-es6/store.cjs +1 -1
- package/lib/cjs-es6/store.cjs.gz +0 -0
- package/lib/cjs-es6/synchronizers/synchronizer-local.cjs +1 -1
- package/lib/cjs-es6/synchronizers/synchronizer-local.cjs.gz +0 -0
- package/lib/cjs-es6/synchronizers/synchronizer-ws-client.cjs +1 -1
- package/lib/cjs-es6/synchronizers/synchronizer-ws-client.cjs.gz +0 -0
- package/lib/cjs-es6/synchronizers.cjs +1 -1
- package/lib/cjs-es6/synchronizers.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-dom.cjs +1 -1
- package/lib/cjs-es6/ui-react-dom.cjs.gz +0 -0
- package/lib/common.js +1 -1
- package/lib/common.js.gz +0 -0
- package/lib/debug/common.js +22 -1
- package/lib/debug/indexes.js +6 -1
- package/lib/debug/mergeable-store.js +57 -45
- package/lib/debug/metrics.js +0 -1
- package/lib/debug/persisters/persister-automerge.js +1 -3
- package/lib/debug/persisters/persister-browser.js +1 -3
- package/lib/debug/persisters/persister-cr-sqlite-wasm.js +24 -30
- package/lib/debug/persisters/persister-electric-sql.js +24 -30
- package/lib/debug/persisters/persister-expo-sqlite-next.js +24 -30
- package/lib/debug/persisters/persister-expo-sqlite.js +24 -30
- package/lib/debug/persisters/persister-file.js +1 -3
- package/lib/debug/persisters/persister-indexed-db.js +1 -4
- package/lib/debug/persisters/persister-libsql.js +24 -30
- package/lib/debug/persisters/persister-partykit-client.js +1 -3
- package/lib/debug/persisters/persister-powersync.js +24 -30
- package/lib/debug/persisters/persister-remote.js +1 -4
- package/lib/debug/persisters/persister-sqlite-wasm.js +24 -30
- package/lib/debug/persisters/persister-sqlite3.js +24 -30
- package/lib/debug/persisters/persister-yjs.js +1 -3
- package/lib/debug/persisters.js +1 -3
- package/lib/debug/queries.js +0 -1
- package/lib/debug/relationships.js +0 -1
- package/lib/debug/store.js +6 -0
- package/lib/debug/synchronizers/synchronizer-local.js +19 -89
- package/lib/debug/synchronizers/synchronizer-ws-client.js +18 -88
- package/lib/debug/synchronizers.js +18 -88
- package/lib/debug/tinybase.js +93 -81
- package/lib/debug/tools.js +0 -3
- package/lib/debug/ui-react-dom.js +13 -11
- package/lib/es6/checkpoints.js +1 -1
- package/lib/es6/checkpoints.js.gz +0 -0
- package/lib/es6/common.js +1 -1
- package/lib/es6/common.js.gz +0 -0
- package/lib/es6/indexes.js +1 -1
- package/lib/es6/indexes.js.gz +0 -0
- package/lib/es6/mergeable-store.js +1 -1
- package/lib/es6/mergeable-store.js.gz +0 -0
- package/lib/es6/metrics.js +1 -1
- package/lib/es6/metrics.js.gz +0 -0
- package/lib/es6/persisters/persister-automerge.js +1 -1
- package/lib/es6/persisters/persister-automerge.js.gz +0 -0
- package/lib/es6/persisters/persister-browser.js +1 -1
- package/lib/es6/persisters/persister-browser.js.gz +0 -0
- package/lib/es6/persisters/persister-cr-sqlite-wasm.js +1 -1
- package/lib/es6/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
- package/lib/es6/persisters/persister-electric-sql.js +1 -1
- package/lib/es6/persisters/persister-electric-sql.js.gz +0 -0
- package/lib/es6/persisters/persister-expo-sqlite-next.js +1 -1
- package/lib/es6/persisters/persister-expo-sqlite-next.js.gz +0 -0
- package/lib/es6/persisters/persister-expo-sqlite.js +1 -1
- package/lib/es6/persisters/persister-expo-sqlite.js.gz +0 -0
- package/lib/es6/persisters/persister-file.js +1 -1
- package/lib/es6/persisters/persister-file.js.gz +0 -0
- package/lib/es6/persisters/persister-indexed-db.js +1 -1
- package/lib/es6/persisters/persister-indexed-db.js.gz +0 -0
- package/lib/es6/persisters/persister-libsql.js +1 -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 -1
- 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-yjs.js +1 -1
- package/lib/es6/persisters/persister-yjs.js.gz +0 -0
- package/lib/es6/persisters.js +1 -1
- package/lib/es6/persisters.js.gz +0 -0
- package/lib/es6/queries.js +1 -1
- package/lib/es6/queries.js.gz +0 -0
- package/lib/es6/relationships.js +1 -1
- package/lib/es6/relationships.js.gz +0 -0
- package/lib/es6/store.js +1 -1
- package/lib/es6/store.js.gz +0 -0
- package/lib/es6/synchronizers/synchronizer-local.js +1 -1
- package/lib/es6/synchronizers/synchronizer-local.js.gz +0 -0
- package/lib/es6/synchronizers/synchronizer-ws-client.js +1 -1
- package/lib/es6/synchronizers/synchronizer-ws-client.js.gz +0 -0
- package/lib/es6/synchronizers.js +1 -1
- package/lib/es6/synchronizers.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-dom.js +1 -1
- package/lib/es6/ui-react-dom.js.gz +0 -0
- package/lib/indexes.js +1 -1
- package/lib/indexes.js.gz +0 -0
- package/lib/mergeable-store.js +1 -1
- package/lib/mergeable-store.js.gz +0 -0
- package/lib/metrics.js +1 -1
- package/lib/metrics.js.gz +0 -0
- package/lib/persisters/persister-automerge.js +1 -1
- package/lib/persisters/persister-automerge.js.gz +0 -0
- package/lib/persisters/persister-browser.js +1 -1
- package/lib/persisters/persister-browser.js.gz +0 -0
- package/lib/persisters/persister-cr-sqlite-wasm.js +1 -1
- package/lib/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
- package/lib/persisters/persister-electric-sql.js +1 -1
- package/lib/persisters/persister-electric-sql.js.gz +0 -0
- package/lib/persisters/persister-expo-sqlite-next.js +1 -1
- package/lib/persisters/persister-expo-sqlite-next.js.gz +0 -0
- package/lib/persisters/persister-expo-sqlite.js +1 -1
- package/lib/persisters/persister-expo-sqlite.js.gz +0 -0
- package/lib/persisters/persister-file.js +1 -1
- package/lib/persisters/persister-file.js.gz +0 -0
- package/lib/persisters/persister-indexed-db.js +1 -1
- package/lib/persisters/persister-indexed-db.js.gz +0 -0
- package/lib/persisters/persister-libsql.js +1 -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 -1
- 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-yjs.js +1 -1
- package/lib/persisters/persister-yjs.js.gz +0 -0
- package/lib/persisters.js +1 -1
- package/lib/persisters.js.gz +0 -0
- package/lib/queries.js +1 -1
- package/lib/queries.js.gz +0 -0
- package/lib/relationships.js +1 -1
- package/lib/relationships.js.gz +0 -0
- package/lib/store.js +1 -1
- package/lib/store.js.gz +0 -0
- package/lib/synchronizers/synchronizer-local.js +1 -1
- package/lib/synchronizers/synchronizer-local.js.gz +0 -0
- package/lib/synchronizers/synchronizer-ws-client.js +1 -1
- package/lib/synchronizers/synchronizer-ws-client.js.gz +0 -0
- package/lib/synchronizers.js +1 -1
- package/lib/synchronizers.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/common.d.ts +7 -0
- package/lib/types/mergeable-store.d.ts +2 -8
- package/lib/types/persisters/persister-automerge.d.ts +2 -2
- package/lib/types/persisters/persister-browser.d.ts +3 -3
- package/lib/types/persisters/persister-cr-sqlite-wasm.d.ts +2 -2
- package/lib/types/persisters/persister-electric-sql.d.ts +2 -2
- package/lib/types/persisters/persister-expo-sqlite-next.d.ts +2 -2
- package/lib/types/persisters/persister-expo-sqlite.d.ts +2 -2
- package/lib/types/persisters/persister-file.d.ts +3 -3
- package/lib/types/persisters/persister-indexed-db.d.ts +2 -2
- package/lib/types/persisters/persister-libsql.d.ts +3 -3
- package/lib/types/persisters/persister-partykit-client.d.ts +2 -2
- package/lib/types/persisters/persister-partykit-server.d.ts +2 -2
- package/lib/types/persisters/persister-powersync.d.ts +3 -3
- package/lib/types/persisters/persister-remote.d.ts +2 -2
- package/lib/types/persisters/persister-sqlite-wasm.d.ts +2 -2
- package/lib/types/persisters/persister-sqlite3.d.ts +2 -2
- package/lib/types/persisters.d.ts +5 -4
- package/lib/types/relationships.d.ts +1 -1
- package/lib/types/synchronizers/synchronizer-local.d.ts +2 -2
- package/lib/types/synchronizers/synchronizer-ws-client.d.ts +2 -2
- package/lib/types/synchronizers/synchronizer-ws-server.d.ts +2 -2
- package/lib/types/synchronizers.d.ts +13 -9
- package/lib/types/ui-react-dom.d.ts +2 -2
- package/lib/types/ui-react.d.ts +5 -5
- package/lib/types/with-schemas/common.d.ts +7 -0
- package/lib/types/with-schemas/indexes.d.ts +1 -1
- package/lib/types/with-schemas/internal/queries.d.ts +4 -4
- package/lib/types/with-schemas/internal/store.d.ts +2 -2
- package/lib/types/with-schemas/internal/ui-react.d.ts +12 -8
- package/lib/types/with-schemas/mergeable-store.d.ts +3 -9
- package/lib/types/with-schemas/metrics.d.ts +1 -1
- package/lib/types/with-schemas/persisters/persister-automerge.d.ts +2 -2
- package/lib/types/with-schemas/persisters/persister-browser.d.ts +3 -3
- package/lib/types/with-schemas/persisters/persister-cr-sqlite-wasm.d.ts +2 -2
- package/lib/types/with-schemas/persisters/persister-electric-sql.d.ts +2 -2
- package/lib/types/with-schemas/persisters/persister-expo-sqlite-next.d.ts +2 -2
- package/lib/types/with-schemas/persisters/persister-expo-sqlite.d.ts +2 -2
- package/lib/types/with-schemas/persisters/persister-file.d.ts +3 -3
- package/lib/types/with-schemas/persisters/persister-indexed-db.d.ts +2 -2
- package/lib/types/with-schemas/persisters/persister-libsql.d.ts +3 -3
- package/lib/types/with-schemas/persisters/persister-partykit-client.d.ts +2 -2
- package/lib/types/with-schemas/persisters/persister-partykit-server.d.ts +2 -2
- package/lib/types/with-schemas/persisters/persister-powersync.d.ts +4 -4
- package/lib/types/with-schemas/persisters/persister-remote.d.ts +2 -2
- package/lib/types/with-schemas/persisters/persister-sqlite-wasm.d.ts +2 -2
- package/lib/types/with-schemas/persisters/persister-sqlite3.d.ts +2 -2
- package/lib/types/with-schemas/persisters.d.ts +6 -5
- package/lib/types/with-schemas/queries.d.ts +2 -2
- package/lib/types/with-schemas/relationships.d.ts +2 -2
- package/lib/types/with-schemas/store.d.ts +1 -1
- package/lib/types/with-schemas/synchronizers/synchronizer-local.d.ts +3 -3
- package/lib/types/with-schemas/synchronizers/synchronizer-ws-client.d.ts +3 -3
- package/lib/types/with-schemas/synchronizers/synchronizer-ws-server.d.ts +2 -2
- package/lib/types/with-schemas/synchronizers.d.ts +13 -9
- package/lib/types/with-schemas/ui-react-dom.d.ts +5 -5
- package/lib/types/with-schemas/ui-react.d.ts +8 -10
- package/lib/ui-react-dom.js +1 -1
- package/lib/ui-react-dom.js.gz +0 -0
- package/lib/umd/common.js +1 -1
- package/lib/umd/common.js.gz +0 -0
- package/lib/umd/indexes.js +1 -1
- package/lib/umd/indexes.js.gz +0 -0
- package/lib/umd/mergeable-store.js +1 -1
- package/lib/umd/mergeable-store.js.gz +0 -0
- package/lib/umd/metrics.js +1 -1
- package/lib/umd/metrics.js.gz +0 -0
- package/lib/umd/persisters/persister-automerge.js +1 -1
- package/lib/umd/persisters/persister-automerge.js.gz +0 -0
- package/lib/umd/persisters/persister-browser.js +1 -1
- package/lib/umd/persisters/persister-browser.js.gz +0 -0
- package/lib/umd/persisters/persister-cr-sqlite-wasm.js +1 -1
- package/lib/umd/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
- package/lib/umd/persisters/persister-electric-sql.js +1 -1
- package/lib/umd/persisters/persister-electric-sql.js.gz +0 -0
- package/lib/umd/persisters/persister-expo-sqlite-next.js +1 -1
- package/lib/umd/persisters/persister-expo-sqlite-next.js.gz +0 -0
- package/lib/umd/persisters/persister-expo-sqlite.js +1 -1
- package/lib/umd/persisters/persister-expo-sqlite.js.gz +0 -0
- package/lib/umd/persisters/persister-file.js +1 -1
- package/lib/umd/persisters/persister-file.js.gz +0 -0
- package/lib/umd/persisters/persister-indexed-db.js +1 -1
- package/lib/umd/persisters/persister-indexed-db.js.gz +0 -0
- package/lib/umd/persisters/persister-libsql.js +1 -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 -1
- 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-yjs.js +1 -1
- package/lib/umd/persisters/persister-yjs.js.gz +0 -0
- package/lib/umd/persisters.js +1 -1
- package/lib/umd/persisters.js.gz +0 -0
- package/lib/umd/queries.js +1 -1
- package/lib/umd/queries.js.gz +0 -0
- package/lib/umd/relationships.js +1 -1
- package/lib/umd/relationships.js.gz +0 -0
- package/lib/umd/store.js +1 -1
- package/lib/umd/store.js.gz +0 -0
- package/lib/umd/synchronizers/synchronizer-local.js +1 -1
- package/lib/umd/synchronizers/synchronizer-local.js.gz +0 -0
- package/lib/umd/synchronizers/synchronizer-ws-client.js +1 -1
- package/lib/umd/synchronizers/synchronizer-ws-client.js.gz +0 -0
- package/lib/umd/synchronizers.js +1 -1
- package/lib/umd/synchronizers.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-dom.js +1 -1
- package/lib/umd/ui-react-dom.js.gz +0 -0
- package/lib/umd-es6/checkpoints.js +1 -1
- package/lib/umd-es6/checkpoints.js.gz +0 -0
- package/lib/umd-es6/common.js +1 -1
- package/lib/umd-es6/common.js.gz +0 -0
- package/lib/umd-es6/indexes.js +1 -1
- package/lib/umd-es6/indexes.js.gz +0 -0
- package/lib/umd-es6/mergeable-store.js +1 -1
- package/lib/umd-es6/mergeable-store.js.gz +0 -0
- package/lib/umd-es6/metrics.js +1 -1
- package/lib/umd-es6/metrics.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-automerge.js +1 -1
- package/lib/umd-es6/persisters/persister-automerge.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-browser.js +1 -1
- package/lib/umd-es6/persisters/persister-browser.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-cr-sqlite-wasm.js +1 -1
- package/lib/umd-es6/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-electric-sql.js +1 -1
- package/lib/umd-es6/persisters/persister-electric-sql.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-expo-sqlite-next.js +1 -1
- package/lib/umd-es6/persisters/persister-expo-sqlite-next.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-expo-sqlite.js +1 -1
- package/lib/umd-es6/persisters/persister-expo-sqlite.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-file.js +1 -1
- package/lib/umd-es6/persisters/persister-file.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-indexed-db.js +1 -1
- package/lib/umd-es6/persisters/persister-indexed-db.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-libsql.js +1 -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 -1
- 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-yjs.js +1 -1
- package/lib/umd-es6/persisters/persister-yjs.js.gz +0 -0
- package/lib/umd-es6/persisters.js +1 -1
- package/lib/umd-es6/persisters.js.gz +0 -0
- package/lib/umd-es6/queries.js +1 -1
- package/lib/umd-es6/queries.js.gz +0 -0
- package/lib/umd-es6/relationships.js +1 -1
- package/lib/umd-es6/relationships.js.gz +0 -0
- package/lib/umd-es6/store.js +1 -1
- package/lib/umd-es6/store.js.gz +0 -0
- package/lib/umd-es6/synchronizers/synchronizer-local.js +1 -1
- package/lib/umd-es6/synchronizers/synchronizer-local.js.gz +0 -0
- package/lib/umd-es6/synchronizers/synchronizer-ws-client.js +1 -1
- package/lib/umd-es6/synchronizers/synchronizer-ws-client.js.gz +0 -0
- package/lib/umd-es6/synchronizers.js +1 -1
- package/lib/umd-es6/synchronizers.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-dom.js +1 -1
- package/lib/umd-es6/ui-react-dom.js.gz +0 -0
- package/package.json +17 -17
- package/readme.md +2 -2
package/lib/queries.js.gz
CHANGED
|
Binary file
|
package/lib/relationships.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=e=>typeof e,t="",n=e(t),
|
|
1
|
+
const e=e=>typeof e,t="",n=e(t),s=e=>null==e,r=(e,t,n)=>s(e)?n?.():t(e),o=e=>Array.isArray(e),i=e=>e.length,a=(e,t)=>e.forEach(t),l=(e,...t)=>e.push(...t),d=Object.freeze,c=(e,t)=>e?.has(t)??!1,u=e=>s(e)||0==(e=>e?.size??0)(e),R=e=>[...e?.values()??[]],h=e=>e.clear(),f=(e,t)=>e?.forEach(t),L=(e,t)=>e?.delete(t),g=e=>new Map(e),w=(e,t)=>e?.get(t),p=(e,t)=>f(e,((e,n)=>t(n,e))),I=(e,t,n)=>s(n)?(L(e,t),e):e?.set(t,n),v=(e,t,n,s)=>(c(e,t)?s?.(w(e,t)):I(e,t,n()),w(e,t)),y=(e,t,n,s,o=0)=>r((n?v:w)(e,t[o],o>i(t)-2?n:g),(r=>{if(o>i(t)-2)return s?.(r)&&I(e,t[o]),r;const a=y(r,t,n,s,o+1);return u(r)&&I(e,t[o]),a})),b=e=>new Set(o(e)||s(e)?e:[e]),k=(e,t)=>e?.add(t),E=/^\d+$/,T=((T,m)=>{const S=new WeakMap;return T=>(S.has(T)||S.set(T,(T=>{const m=g(),S=g(),z=g(),A=g(),[D,M,j]=(e=>{let n;const[o,d]=(()=>{const e=[];let n=0;return[s=>(s?e.shift():null)??t+n++,t=>{E.test(t)&&i(e)<1e3&&l(e,t)}]})(),c=g();return[(e,s,r,i=[],a=(()=>[]))=>{n??=P;const l=o(1);return I(c,l,[e,s,r,i,a]),k(y(s,r??[t],b),l),l},(e,s,...r)=>a(((e,n=[t])=>{const s=[],r=(e,t)=>t==i(n)?l(s,e):null===n[t]?f(e,(e=>r(e,t+1))):a([n[t],null],(n=>r(w(e,n),t+1)));return r(e,0),s})(e,s),(e=>f(e,(e=>w(c,e)[0](n,...s??[],...r))))),e=>r(w(c,e),(([,n,s])=>(y(n,s??[t],void 0,(t=>(L(t,e),u(t)?1:0))),I(c,e),d(e),s))),e=>r(w(c,e),(([e,,t=[],r,o])=>{const l=(...d)=>{const c=i(d);c==i(t)?e(n,...d,...o(d)):s(t[c])?a(r[c]?.(...d)??[],(e=>l(...d,e))):l(...d,t[c])};l()}))]})(),[x,C,O,W,$,q,,,B,F,G,H]=((e,n,l,d,y)=>{const E=e.hasRow,T=g(),m=g(),S=g(),z=g(),A=g(),D=g(),M=(t,n,...s)=>{const r=v(D,t,b);return a(s,(t=>k(r,t)&&n&&e.callListener(t))),s},j=(t,...n)=>r(w(D,t),(s=>{a(0==i(n)?R(s):n,(t=>{e.delListener(t),L(s,t)})),u(s)&&I(D,t)})),x=(e,t)=>{I(T,e,t),c(m,e)||(I(m,e,[g(),g(),g(),g()]),I(z,e,g()),I(A,e,g()),y(S))},C=e=>{I(T,e),I(m,e),I(z,e),I(A,e),j(e),y(S)};return[()=>e,()=>{return e=T,[...e?.keys()??[]];var e},e=>p(m,e),e=>c(m,e),e=>w(T,e),e=>w(m,e),(e,t)=>I(m,e,t),x,(n,r,l,d,u)=>{x(n,r);const R=g(),L=g(),v=w(z,n),y=w(A,n),b=n=>{const a=t=>e.getCell(r,n,t),l=w(v,n),c=E(r,n)?(h=d(a,n),s(h)?void 0:h+t):void 0;var h,f,g,p;if(l===c||o(l)&&o(c)&&(g=c,i(f=l)===i(g)&&(p=(e,t)=>g[t]===e,f.every(p)))||I(R,n,[l,c]),!s(u)){const e=w(y,n),t=E(r,n)?u(a,n):void 0;e!=t&&I(L,n,t)}},k=e=>{l((()=>{f(R,(([,e],t)=>I(v,t,e))),f(L,((e,t)=>I(y,t,e)))}),R,L,v,y,e),h(R),h(L)};p(v,b),e.hasTable(r)&&a(e.getRowIds(r),(e=>{c(v,e)||b(e)})),k(!0),j(n),M(n,0,e.addRowListener(r,null,((e,t,n)=>b(n))),e.addTableListener(r,(()=>k())))},C,e=>d(e,S),()=>p(D,C),M,j]})(T,0,0,D,M),J=(e,t,n)=>r(q(e),(([r,,o])=>{if(!c(o,t)){const i=b();if($(e)!=N(e))k(i,t);else{let e=t;for(;!s(e)&&!c(i,e);)k(i,e),e=w(r,e)}if(n)return i;I(o,t,i)}return w(o,t)})),K=(e,t)=>r(q(e),(([,,e])=>I(e,t))),N=e=>w(m,e),P={setRelationshipDefinition:(o,i,a,l)=>{return I(m,o,a),B(o,i,((e,t)=>{const n=b(),i=b(),a=b(),[l,d]=q(o);f(t,(([e,t],R)=>{s(e)||(k(i,e),r(w(d,e),(t=>{L(t,R),u(t)&&I(d,e)}))),s(t)||(k(i,t),c(d,t)||I(d,t,b()),k(w(d,t),R)),k(n,R),I(l,R,t),p(w(A,o),(e=>{c(J(o,e),R)&&k(a,e)}))})),e(),f(n,(e=>M(S,[o,e]))),f(i,(e=>M(z,[o,e]))),f(a,(e=>{K(o,e),M(A,[o,e])}))}),e(d=l)==n?e=>e(d):d??(()=>t)),P;var d},delRelationshipDefinition:e=>(I(m,e),F(e),P),getStore:x,getRelationshipIds:C,forEachRelationship:e=>O((t=>e(t,(e=>T.forEachRow($(t),e))))),hasRelationship:W,getLocalTableId:$,getRemoteTableId:N,getRemoteRowId:(e,t)=>w(q(e)?.[0],t),getLocalRowIds:(e,t)=>R(w(q(e)?.[1],t)),getLinkedRowIds:(e,t)=>s(q(e))?[t]:R(J(e,t,!0)),addRelationshipIdsListener:G,addRemoteRowIdListener:(e,t,n)=>D(n,S,[e,t]),addLocalRowIdsListener:(e,t,n)=>D(n,z,[e,t]),addLinkedRowIdsListener:(e,t,n)=>(J(e,t),D(n,A,[e,t])),delListener:e=>(K(...j(e)??[]),P),destroy:H,getListenerStats:()=>({})};return d(P)})(T)),S.get(T))})();export{T as createRelationships};
|
package/lib/relationships.js.gz
CHANGED
|
Binary file
|
package/lib/store.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=e=>typeof e,t="",s=e(t),n=e(!0),a=e(0),l=e(e),o="type",r="default",c="Has",i="Ids",d="Table",u=d+"s",h=d+i,f="Row",g=f+"Count",T=f+i,b="Cell",V=b+i,C="Value",S=C+"s",v=C+i,w=e=>t+e,y=isFinite,m=e=>null==e,p=(e,t,s)=>m(e)?s?.():t(e),L=e=>e==s||e==n,R=t=>e(t)==l,I=(e,t,s)=>e.slice(t,s),J=e=>e.length,E=(e,t)=>e.forEach(t),F=(e,t)=>e.map(t),O=(e,...t)=>e.push(...t),z=Object,P=e=>z.getPrototypeOf(e),k=z.entries,A=z.isFrozen,M=e=>!m(e)&&p(P(e),(e=>e==z.prototype||m(P(e))),(()=>!0)),N=z.keys,j=z.freeze,x=(e,t)=>t in e,D=(e,t)=>(delete e[t],e),H=(e,t)=>F(k(e),(([e,s])=>t(s,e))),W=e=>M(e)&&0==(e=>J(N(e)))(e),$=(e,t,s,n=0)=>m(e)||!M(e)||!n&&W(e)||A(e)?(s?.(),!1):(H(e,((s,n)=>{t(s,n)||D(e,n)})),!!n||!W(e)),q=e=>e?.size??0,B=(e,t)=>e?.has(t)??!1,G=e=>m(e)||0==q(e),K=e=>e.clear(),Q=(e,t)=>e?.forEach(t),U=(e,t)=>e?.delete(t),X=e=>new Map(e),Y=e=>[...e?.keys()??[]],Z=(e,t)=>e?.get(t),_=(e,t)=>Q(e,((e,s)=>t(s,e))),ee=(e,t,s)=>m(s)?(U(e,t),e):e?.set(t,s),te=(e,t,s,n)=>(B(e,t)?n?.(Z(e,t)):ee(e,t,s()),Z(e,t)),se=(e,t,s,n=ee)=>(H(t,((t,n)=>s(e,n,t))),_(e,(s=>x(t,s)?0:n(e,s))),e),ne=(e,t,s,n)=>{const a={};return Q(e,((e,l)=>{if(!s?.(e,l)){const s=t?t(e,l):e;!n?.(s)&&(a[l]=s)}})),a},ae=(e,t,s)=>ne(e,(e=>ne(e,t,s)),G,W),le=(e,t,s)=>ne(e,(e=>ae(e,t,s)),G,W),oe=(e,t)=>{const s=X();return Q(e,((e,n)=>s.set(n,t?.(e)??e))),s},re=e=>oe(e,oe),ce=e=>oe(e,re),ie=(e,t,s,n,a=0)=>p((s?te:Z)(e,t[a],a>J(t)-2?s:X),(l=>{if(a>J(t)-2)return n?.(l)&&ee(e,t[a]),l;const o=ie(l,t,s,n,a+1);return G(l)&&ee(e,t[a]),o})),de=e=>new Set(Array.isArray(e)||m(e)?e:[e]),ue=(e,t)=>e?.add(t),he=/^\d+$/,fe=()=>{const e=[];let s=0;return[n=>(n?e.shift():null)??t+s++,t=>{he.test(t)&&J(e)<1e3&&O(e,t)}]},ge=e=>[e,e],Te=()=>[X(),X()],be=e=>[...e],Ve=([e,t])=>e===t,Ce=t=>{const s=e(t);return L(s)||s==a&&y(t)?s:void 0},Se=(e,t,s,n,a)=>m(a)?e.delCell(t,s,n,!0):e.setCell(t,s,n,a),ve=(e,t,s)=>m(s)?e.delValue(t):e.setValue(t,s),we=e=>JSON.stringify(e,((e,t)=>t instanceof Map?z.fromEntries([...t]):t)),ye=JSON.parse,me=(e,t,s)=>ee(e,t,Z(e,t)==-s?void 0:s),pe=()=>{let e,s,n=!1,l=!1,i=0,y=[];const z=X(),P=X(),k=X(),A=X(),M=X(),N=X(),he=X(),Le=X(),Re=X(),Ie=X(),Je=X(),Ee=X(),Fe=X(),Oe=X(),ze=de(),Pe=X(),ke=X(),Ae=X(),Me=X(),Ne=Te(),je=Te(),xe=Te(),De=Te(),He=Te(),We=Te(),$e=Te(),qe=Te(),Be=Te(),Ge=Te(),Ke=Te(),Qe=Te(),Ue=Te(),Xe=Te(),Ye=Te(),Ze=Te(),_e=Te(),et=Te(),tt=Te(),st=Te(),nt=Te(),at=Te(),lt=X(),ot=Te(),[rt,ct,it,dt]=(e=>{let s;const[n,a]=fe(),l=X();return[(e,a,o,r=[],c=(()=>[]))=>{s??=Fs;const i=n(1);return ee(l,i,[e,a,o,r,c]),ue(ie(a,o??[t],de),i),i},(e,n,...a)=>E(((e,s=[t])=>{const n=[],a=(e,t)=>t==J(s)?O(n,e):null===s[t]?Q(e,(e=>a(e,t+1))):E([s[t],null],(s=>a(Z(e,s),t+1)));return a(e,0),n})(e,n),(e=>Q(e,(e=>Z(l,e)[0](s,...n??[],...a))))),e=>p(Z(l,e),(([,s,n])=>(ie(s,n??[t],void 0,(t=>(U(t,e),G(t)?1:0))),ee(l,e),a(e),n))),e=>p(Z(l,e),(([e,,t=[],n,a])=>{const l=(...o)=>{const r=J(o);r==J(t)?e(s,...o,...a(o)):m(t[r])?E(n[r]?.(...o)??[],(e=>l(...o,e))):l(...o,t[r])};l()}))]})(),ut=e=>{if(!$(e,((e,t)=>[o,r].includes(t))))return!1;const t=e[o];return!(!L(t)&&t!=a||(Ce(e[r])!=t&&D(e,r),0))},ht=(t,s)=>(!e||B(Je,s)||Wt(s))&&$(t,((e,t)=>ft(s,t,e)),(()=>Wt(s))),ft=(e,t,s,n)=>$(n?s:Vt(s,e,t),((n,a)=>p(gt(e,t,a,n),(e=>(s[a]=e,!0)),(()=>!1))),(()=>Wt(e,t))),gt=(t,s,n,a)=>e?p(Z(Z(Je,t),n),(e=>Ce(a)!=e[o]?Wt(t,s,n,a,e[r]):a),(()=>Wt(t,s,n,a))):m(Ce(a))?Wt(t,s,n,a):a,Tt=(e,t)=>$(t?e:Ct(e),((t,s)=>p(bt(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>$t())),bt=(e,t)=>s?p(Z(Fe,e),(s=>Ce(t)!=s[o]?$t(e,t,s[r]):t),(()=>$t(e,t))):m(Ce(t))?$t(e,t):t,Vt=(e,t,s)=>(p(Z(Ee,t),(([n,a])=>{Q(n,((t,s)=>{x(e,s)||(e[s]=t)})),Q(a,(n=>{x(e,n)||Wt(t,s,n)}))})),e),Ct=e=>(s&&(Q(Oe,((t,s)=>{x(e,s)||(e[s]=t)})),Q(ze,(t=>{x(e,t)||$t(t)}))),e),St=e=>se(Je,e,((e,t,s)=>{const n=X(),a=de();se(te(Je,t,X),s,((e,t,s)=>{ee(e,t,s),p(s[r],(e=>ee(n,t,e)),(()=>ue(a,t)))})),ee(Ee,t,[n,a])}),((e,t)=>{ee(Je,t),ee(Ee,t)})),vt=e=>se(Fe,e,((e,t,s)=>{ee(Fe,t,s),p(s[r],(e=>ee(Oe,t,e)),(()=>ue(ze,t)))}),((e,t)=>{ee(Fe,t),ee(Oe,t),U(ze,t)})),wt=e=>W(e)?ws():bs(e),yt=e=>se(Ae,e,((e,t,s)=>mt(t,s)),((e,t)=>zt(t))),mt=(e,t)=>se(te(Ae,e,(()=>(Mt(e,1),ee(Pe,e,fe()),ee(ke,e,X()),X()))),t,((t,s,n)=>pt(e,t,s,n)),((t,s)=>Pt(e,t,s))),pt=(e,t,s,n,a)=>se(te(t,s,(()=>(Nt(e,s,1),X()))),n,((t,n,a)=>Lt(e,s,t,n,a)),((n,l)=>kt(e,t,s,n,l,a))),Lt=(e,t,s,n,a)=>{B(s,n)||jt(e,t,n,1);const l=Z(s,n);a!==l&&(xt(e,t,n,l,a),ee(s,n,a))},Rt=(e,t,s,n,a)=>p(Z(t,s),(t=>Lt(e,s,t,n,a)),(()=>pt(e,t,s,Vt({[n]:a},e,s)))),It=e=>W(e)?ps():Vs(e),Jt=e=>se(Me,e,((e,t,s)=>Et(t,s)),((e,t)=>At(t))),Et=(e,t)=>{B(Me,e)||Dt(e,1);const s=Z(Me,e);t!==s&&(Ht(e,s,t),ee(Me,e,t))},Ft=(e,t)=>{const[s]=Z(Pe,e),n=s(t);return B(Z(Ae,e),n)?Ft(e,t):n},Ot=e=>Z(Ae,e)??mt(e,{}),zt=e=>mt(e,{}),Pt=(e,t,s)=>{const[,n]=Z(Pe,e);n(s),pt(e,t,s,{},!0)},kt=(e,t,s,n,a,l)=>{const o=Z(Z(Ee,e)?.[0],a);if(!m(o)&&!l)return Lt(e,s,n,a,o);const r=t=>{xt(e,s,t,Z(n,t)),jt(e,s,t,-1),ee(n,t)};m(o)?r(a):_(n,r),G(n)&&(Nt(e,s,-1),G(ee(t,s))&&(Mt(e,-1),ee(Ae,e),ee(Pe,e),ee(ke,e)))},At=e=>{const t=Z(Oe,e);if(!m(t))return Et(e,t);Ht(e,Z(Me,e)),Dt(e,-1),ee(Me,e)},Mt=(e,t)=>me(z,e,t),Nt=(e,t,s)=>me(te(A,e,X),t,s)&&ee(k,e,te(k,e,(()=>0))+s),jt=(e,t,s,n)=>{const a=Z(ke,e),l=Z(a,s)??0;(0==l&&1==n||1==l&&-1==n)&&me(te(P,e,X),s,n),ee(a,s,l!=-n?l+n:null),me(te(te(M,e,X),t,X),s,n)},xt=(e,t,s,n,a)=>{te(te(te(N,e,X),t,X),s,(()=>[n,0]))[1]=a,y[3]?.(e,t,s,a)},Dt=(e,t)=>me(he,e,t),Ht=(e,t,s)=>{te(Le,e,(()=>[t,0]))[1]=s,y[4]?.(e,s)},Wt=(e,t,s,n,a)=>(O(te(te(te(Re,e,X),t,X),s,(()=>[])),n),a),$t=(e,t,s)=>(O(te(Ie,e,(()=>[])),t),s),qt=(e,t,s)=>p(Z(Z(Z(N,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...ge(ls(e,t,s))])),Bt=e=>p(Z(Le,e),(([e,t])=>[!0,e,t]),(()=>[!1,...ge(cs(e))])),Gt=e=>G(Re)||G(Ze[e])?0:Q(e?ce(Re):Re,((t,s)=>Q(t,((t,n)=>Q(t,((t,a)=>ct(Ze[e],[s,n,a],t))))))),Kt=e=>G(Ie)||G(_e[e])?0:Q(e?oe(Ie):Ie,((t,s)=>ct(_e[e],[s],t))),Qt=(e,t,s,n)=>{if(!G(e))return ct(t,n,(()=>ne(e))),_(e,((e,t)=>ct(s,[...n??[],e],1==t))),1},Ut=e=>{const t=is();t!=n&&ct(Ne[e],void 0,t);const s=G(Ge[e]),a=G(Ue[e])&&G(Xe[e])&&G(Be[e])&&G(Ke[e])&&G(We[e])&&G($e[e])&&G(qe[e])&&s&&G(xe[e])&&G(De[e]),l=G(Ye[e])&&G(Qe[e])&&G(He[e])&&G(je[e]);if(!a||!l){const t=e?[oe(z),re(P),oe(k),re(A),ce(M),ce(N)]:[z,P,k,A,M,N];if(!a){Qt(t[0],xe[e],De[e]),Q(t[1],((t,s)=>Qt(t,We[e],$e[e],[s]))),Q(t[2],((t,s)=>{0!=t&&ct(qe[e],[s],ts(s))}));const n=de();Q(t[3],((t,a)=>{Qt(t,Be[e],Ke[e],[a])&&!s&&(ct(Ge[e],[a,null]),ue(n,a))})),s||Q(t[5],((t,s)=>{if(!B(n,s)){const n=de();Q(t,(e=>Q(e,(([t,s],a)=>s!==t?ue(n,a):U(e,a))))),Q(n,(t=>ct(Ge[e],[s,t])))}})),Q(t[4],((t,s)=>Q(t,((t,n)=>Qt(t,Ue[e],Xe[e],[s,n])))))}if(!l){let s;Q(t[5],((t,n)=>{let a;Q(t,((t,l)=>{let o;Q(t,(([t,r],c)=>{r!==t&&(ct(Ye[e],[n,l,c],r,t,qt),s=a=o=1)})),o&&ct(Qe[e],[n,l],qt)})),a&&ct(He[e],[n],qt)})),s&&ct(je[e],void 0,qt)}}},Xt=e=>{const t=gs();t!=l&&ct(et[e],void 0,t);const s=G(st[e])&&G(nt[e]),n=G(at[e])&&G(tt[e]);if(!s||!n){const t=e?[oe(he),oe(Le)]:[he,Le];if(s||Qt(t[0],st[e],nt[e]),!n){let s;Q(t[1],(([t,n],a)=>{n!==t&&(ct(at[e],[a],n,t,Bt),s=1)})),s&&ct(tt[e],void 0,Bt)}}},Yt=(e,...t)=>(Is((()=>e(...F(t,w)))),Fs),Zt=()=>le(Ae),_t=()=>Y(Ae),es=e=>Y(Z(ke,w(e))),ts=e=>q(Z(Ae,w(e))),ss=e=>Y(Z(Ae,w(e))),ns=(e,t,s,n=0,a)=>{return F(I((o=Z(Ae,w(e)),r=(e,s)=>[m(t)?s:Z(e,w(t)),s],l=([e],[t])=>((e??0)<(t??0)?-1:1)*(s?-1:1),F([...o?.entries()??[]],(([e,t])=>r(t,e))).sort(l)),n,m(a)?a:n+a),(([,e])=>e));var l,o,r},as=(e,t)=>Y(Z(Z(Ae,w(e)),w(t))),ls=(e,t,s)=>Z(Z(Z(Ae,w(e)),w(t)),w(s)),os=()=>ne(Me),rs=()=>Y(Me),cs=e=>Z(Me,w(e)),is=()=>!G(Ae),ds=e=>B(Ae,w(e)),us=(e,t)=>B(Z(ke,w(e)),w(t)),hs=(e,t)=>B(Z(Ae,w(e)),w(t)),fs=(e,t,s)=>B(Z(Z(Ae,w(e)),w(t)),w(s)),gs=()=>!G(Me),Ts=e=>B(Me,w(e)),bs=e=>Yt((()=>(e=>$(e,ht,Wt))(e)?yt(e):0)),Vs=e=>Yt((()=>Tt(e)?Jt(e):0)),Cs=e=>{try{wt(ye(e))}catch{}return Fs},Ss=t=>Yt((()=>{if((e=$(t,(e=>$(e,ut))))&&(St(t),!G(Ae))){const e=Zt();ws(),bs(e)}})),vs=e=>Yt((()=>{if(s=(e=>$(e,ut))(e)){const t=os();Rs(),ps(),s=!0,vt(e),Vs(t)}})),ws=()=>Yt((()=>yt({}))),ys=e=>Yt((e=>B(Ae,e)?zt(e):0),e),ms=(e,t)=>Yt(((e,t)=>p(Z(Ae,e),(s=>B(s,t)?Pt(e,s,t):0))),e,t),ps=()=>Yt((()=>Jt({}))),Ls=()=>Yt((()=>{St({}),e=!1})),Rs=()=>Yt((()=>{vt({}),s=!1})),Is=(e,t)=>{if(-1!=i){Js();const s=e();return Es(t),s}},Js=()=>(-1!=i&&i++,1==i&&(y[0]?.(),ct(lt)),Fs),Es=e=>(i>0&&(i--,0==i&&(i=1,Gt(1),G(N)||Ut(1),Kt(1),G(Le)||Xt(1),e?.(Fs)&&(Q(N,((e,t)=>Q(e,((e,s)=>Q(e,(([e],n)=>Se(Fs,t,s,n,e))))))),K(N),Q(Le,(([e],t)=>ve(Fs,t,e))),K(Le)),ct(ot[0],void 0),i=-1,Gt(0),G(N)||Ut(0),Kt(0),G(Le)||Xt(0),y[1]?.(),ct(ot[1],void 0),y[2]?.(),i=0,n=is(),l=gs(),E([z,P,k,A,M,N,Re,he,Le,Ie],K))),Fs),Fs={getContent:()=>[Zt(),os()],getTables:Zt,getTableIds:_t,getTable:e=>ae(Z(Ae,w(e))),getTableCellIds:es,getRowCount:ts,getRowIds:ss,getSortedRowIds:ns,getRow:(e,t)=>ne(Z(Z(Ae,w(e)),w(t))),getCellIds:as,getCell:ls,getValues:os,getValueIds:rs,getValue:cs,hasTables:is,hasTable:ds,hasTableCell:us,hasRow:hs,hasCell:fs,hasValues:gs,hasValue:Ts,getTablesJson:()=>we(Ae),getValuesJson:()=>we(Me),getJson:()=>we([Ae,Me]),getTablesSchemaJson:()=>we(Je),getValuesSchemaJson:()=>we(Fe),getSchemaJson:()=>we([Je,Fe]),hasTablesSchema:()=>e,hasValuesSchema:()=>s,setContent:([e,t])=>Yt((()=>{(W(e)?ws:bs)(e),(W(t)?ps:Vs)(t)})),setTables:bs,setTable:(e,t)=>Yt((e=>ht(t,e)?mt(e,t):0),e),setRow:(e,t,s)=>Yt(((e,t)=>ft(e,t,s)?pt(e,Ot(e),t,s):0),e,t),addRow:(e,t,s=!0)=>Is((()=>{let n;return ft(e,n,t)&&(e=w(e),pt(e,Ot(e),n=Ft(e,s?1:0),t)),n})),setPartialRow:(e,t,s)=>Yt(((e,t)=>{if(ft(e,t,s,1)){const n=Ot(e);H(s,((s,a)=>Rt(e,n,t,a,s)))}}),e,t),setCell:(e,t,s,n)=>Yt(((e,t,s)=>p(gt(e,t,s,R(n)?n(ls(e,t,s)):n),(n=>Rt(e,Ot(e),t,s,n)))),e,t,s),setValues:Vs,setPartialValues:e=>Yt((()=>Tt(e,1)?H(e,((e,t)=>Et(t,e))):0)),setValue:(e,t)=>Yt((e=>p(bt(e,R(t)?t(cs(e)):t),(t=>Et(e,t)))),e),applyChanges:e=>Yt((()=>{H(e[0],((e,t)=>m(e)?ys(t):H(e,((e,s)=>m(e)?ms(t,s):H(e,((e,n)=>Se(Fs,t,s,n,e))))))),H(e[1],((e,t)=>ve(Fs,t,e)))})),setTablesJson:Cs,setValuesJson:e=>{try{It(ye(e))}catch{}return Fs},setJson:e=>Yt((()=>{try{const[t,s]=ye(e);wt(t),It(s)}catch{Cs(e)}})),setTablesSchema:Ss,setValuesSchema:vs,setSchema:(e,t)=>Yt((()=>{Ss(e),vs(t)})),delTables:ws,delTable:ys,delRow:ms,delCell:(e,t,s,n)=>Yt(((e,t,s)=>p(Z(Ae,e),(a=>p(Z(a,t),(l=>B(l,s)?kt(e,a,t,l,s,n):0))))),e,t,s),delValues:ps,delValue:e=>Yt((e=>B(Me,e)?At(e):0),e),delTablesSchema:Ls,delValuesSchema:Rs,delSchema:()=>Yt((()=>{Ls(),Rs()})),transaction:Is,startTransaction:Js,getTransactionChanges:()=>[ne(N,((e,t)=>-1===Z(z,t)?void 0:ne(e,((e,s)=>-1===Z(Z(A,t),s)?void 0:ne(e,(([,e])=>e),(e=>Ve(e)))),G,W)),G,W),ne(Le,(([,e])=>e),(e=>Ve(e))),1],getTransactionLog:()=>[!G(N),!G(Le),le(N,be,Ve),le(Re),ne(Le,be,Ve),ne(Ie),ne(z),ae(A),le(M),ne(he)],finishTransaction:Es,forEachTable:e=>Q(Ae,((t,s)=>e(s,(e=>Q(t,((t,s)=>e(s,(e=>_(t,e))))))))),forEachTableCell:(e,t)=>_(Z(ke,w(e)),t),forEachRow:(e,t)=>Q(Z(Ae,w(e)),((e,s)=>t(s,(t=>_(e,t))))),forEachCell:(e,t,s)=>_(Z(Z(Ae,w(e)),w(t)),s),forEachValue:e=>_(Me,e),addSortedRowIdsListener:(e,t,s,n,a,l,o)=>{let r=ns(e,t,s,n,a);return rt((()=>{const o=ns(e,t,s,n,a);var c,i,d;i=r,J(c=o)===J(i)&&(d=(e,t)=>i[t]===e,c.every(d))||(r=o,l(Fs,e,t,s,n,a,r))}),Ge[o?1:0],[e,t],[_t])},addStartTransactionListener:e=>rt(e,lt),addWillFinishTransactionListener:e=>rt(e,ot[0]),addDidFinishTransactionListener:e=>rt(e,ot[1]),callListener:e=>(dt(e),Fs),delListener:e=>(it(e),Fs),getListenerStats:()=>({}),createStore:pe,addListener:rt,callListeners:ct,setInternalListeners:(e,t,s,n,a)=>y=[e,t,s,n,a]};return H({[c+u]:[0,Ne,[],()=>[is()]],[u]:[0,je],[h]:[0,xe],[c+d]:[1,De,[_t],e=>[ds(...e)]],[d]:[1,He,[_t]],[d+V]:[1,We,[_t]],[c+d+b]:[2,$e,[_t,es],e=>[us(...e)]],[g]:[1,qe,[_t]],[T]:[1,Be,[_t]],[c+f]:[2,Ke,[_t,ss],e=>[hs(...e)]],[f]:[2,Qe,[_t,ss]],[V]:[2,Ue,[_t,ss]],[c+b]:[3,Xe,[_t,ss,as],e=>[fs(...e)]],[b]:[3,Ye,[_t,ss,as],e=>ge(ls(...e))],InvalidCell:[3,Ze],[c+S]:[0,et,[],()=>[gs()]],[S]:[0,tt],[v]:[0,st],[c+C]:[1,nt,[rs],e=>[Ts(...e)]],[C]:[1,at,[rs],e=>ge(cs(e[0]))],InvalidValue:[1,_e]},(([e,t,s,n],a)=>{Fs["add"+a+"Listener"]=(...a)=>rt(a[e],t[a[e+1]?1:0],e>0?I(a,0,e):void 0,s,n)})),j(Fs)};export{pe as createStore};
|
|
1
|
+
const e=e=>typeof e,t="",s=e(t),n=e(!0),a=e(0),l=e(e),o="type",r="default",c="Has",i="Ids",d="Table",u=d+"s",h=d+i,f="Row",g=f+"Count",T=f+i,b="Cell",V=b+i,C="Value",S=C+"s",v=C+i,p=e=>t+e,w=isFinite,y=e=>null==e,m=(e,t,s)=>y(e)?s?.():t(e),L=e=>e==s||e==n,R=t=>e(t)==l,I=(e,t,s)=>e.slice(t,s),J=e=>e.length,E=(e,t)=>e.forEach(t),F=(e,t)=>e.map(t),O=(e,...t)=>e.push(...t),z=Object,P=e=>z.getPrototypeOf(e),k=z.entries,A=z.isFrozen,M=e=>!y(e)&&m(P(e),(e=>e==z.prototype||y(P(e))),(()=>!0)),N=z.keys,j=z.freeze,x=(e,t)=>t in e,D=(e,t)=>(delete e[t],e),H=(e,t)=>F(k(e),(([e,s])=>t(s,e))),W=e=>M(e)&&0==(e=>J(N(e)))(e),q=(e,t,s,n=0)=>y(e)||!M(e)||!n&&W(e)||A(e)?(s?.(),!1):(H(e,((s,n)=>{t(s,n)||D(e,n)})),!!n||!W(e)),B=e=>e?.size??0,G=(e,t)=>e?.has(t)??!1,K=e=>y(e)||0==B(e),Q=e=>e.clear(),U=(e,t)=>e?.forEach(t),X=(e,t)=>e?.delete(t),Y=e=>new Map(e),Z=e=>[...e?.keys()??[]],$=(e,t)=>e?.get(t),_=(e,t)=>U(e,((e,s)=>t(s,e))),ee=(e,t,s)=>y(s)?(X(e,t),e):e?.set(t,s),te=(e,t,s,n)=>(G(e,t)?n?.($(e,t)):ee(e,t,s()),$(e,t)),se=(e,t,s,n=ee)=>(H(t,((t,n)=>s(e,n,t))),_(e,(s=>x(t,s)?0:n(e,s))),e),ne=(e,t,s,n)=>{const a={};return U(e,((e,l)=>{if(!s?.(e,l)){const s=t?t(e,l):e;!n?.(s)&&(a[l]=s)}})),a},ae=(e,t,s)=>ne(e,(e=>ne(e,t,s)),K,W),le=(e,t,s)=>ne(e,(e=>ae(e,t,s)),K,W),oe=(e,t)=>{const s=Y();return U(e,((e,n)=>s.set(n,t?.(e)??e))),s},re=e=>oe(e,oe),ce=e=>oe(e,re),ie=(e,t,s,n,a=0)=>m((s?te:$)(e,t[a],a>J(t)-2?s:Y),(l=>{if(a>J(t)-2)return n?.(l)&&ee(e,t[a]),l;const o=ie(l,t,s,n,a+1);return K(l)&&ee(e,t[a]),o})),de=e=>new Set(Array.isArray(e)||y(e)?e:[e]),ue=(e,t)=>e?.add(t),he=/^\d+$/,fe=()=>{const e=[];let s=0;return[n=>(n?e.shift():null)??t+s++,t=>{he.test(t)&&J(e)<1e3&&O(e,t)}]},ge=e=>[e,e],Te=()=>[Y(),Y()],be=e=>[...e],Ve=([e,t])=>e===t,Ce=t=>{const s=e(t);return L(s)||s==a&&w(t)?s:void 0},Se=(e,t,s,n,a)=>y(a)?e.delCell(t,s,n,!0):e.setCell(t,s,n,a),ve=(e,t,s)=>y(s)?e.delValue(t):e.setValue(t,s),pe=e=>JSON.stringify(e,((e,t)=>t instanceof Map?z.fromEntries([...t]):t)),we=JSON.parse;Y(F("-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz".split(t),((e,t)=>[e,t])));const ye=(e,t,s)=>ee(e,t,$(e,t)==-s?void 0:s),me=()=>{let e,s,n=!1,l=!1,i=0,w=[];const z=Y(),P=Y(),k=Y(),A=Y(),M=Y(),N=Y(),he=Y(),Le=Y(),Re=Y(),Ie=Y(),Je=Y(),Ee=Y(),Fe=Y(),Oe=Y(),ze=de(),Pe=Y(),ke=Y(),Ae=Y(),Me=Y(),Ne=Te(),je=Te(),xe=Te(),De=Te(),He=Te(),We=Te(),qe=Te(),Be=Te(),Ge=Te(),Ke=Te(),Qe=Te(),Ue=Te(),Xe=Te(),Ye=Te(),Ze=Te(),$e=Te(),_e=Te(),et=Te(),tt=Te(),st=Te(),nt=Te(),at=Te(),lt=Y(),ot=Te(),[rt,ct,it,dt]=(e=>{let s;const[n,a]=fe(),l=Y();return[(e,a,o,r=[],c=(()=>[]))=>{s??=Fs;const i=n(1);return ee(l,i,[e,a,o,r,c]),ue(ie(a,o??[t],de),i),i},(e,n,...a)=>E(((e,s=[t])=>{const n=[],a=(e,t)=>t==J(s)?O(n,e):null===s[t]?U(e,(e=>a(e,t+1))):E([s[t],null],(s=>a($(e,s),t+1)));return a(e,0),n})(e,n),(e=>U(e,(e=>$(l,e)[0](s,...n??[],...a))))),e=>m($(l,e),(([,s,n])=>(ie(s,n??[t],void 0,(t=>(X(t,e),K(t)?1:0))),ee(l,e),a(e),n))),e=>m($(l,e),(([e,,t=[],n,a])=>{const l=(...o)=>{const r=J(o);r==J(t)?e(s,...o,...a(o)):y(t[r])?E(n[r]?.(...o)??[],(e=>l(...o,e))):l(...o,t[r])};l()}))]})(),ut=e=>{if(!q(e,((e,t)=>[o,r].includes(t))))return!1;const t=e[o];return!(!L(t)&&t!=a||(Ce(e[r])!=t&&D(e,r),0))},ht=(t,s)=>(!e||G(Je,s)||Wt(s))&&q(t,((e,t)=>ft(s,t,e)),(()=>Wt(s))),ft=(e,t,s,n)=>q(n?s:Vt(s,e,t),((n,a)=>m(gt(e,t,a,n),(e=>(s[a]=e,!0)),(()=>!1))),(()=>Wt(e,t))),gt=(t,s,n,a)=>e?m($($(Je,t),n),(e=>Ce(a)!=e[o]?Wt(t,s,n,a,e[r]):a),(()=>Wt(t,s,n,a))):y(Ce(a))?Wt(t,s,n,a):a,Tt=(e,t)=>q(t?e:Ct(e),((t,s)=>m(bt(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>qt())),bt=(e,t)=>s?m($(Fe,e),(s=>Ce(t)!=s[o]?qt(e,t,s[r]):t),(()=>qt(e,t))):y(Ce(t))?qt(e,t):t,Vt=(e,t,s)=>(m($(Ee,t),(([n,a])=>{U(n,((t,s)=>{x(e,s)||(e[s]=t)})),U(a,(n=>{x(e,n)||Wt(t,s,n)}))})),e),Ct=e=>(s&&(U(Oe,((t,s)=>{x(e,s)||(e[s]=t)})),U(ze,(t=>{x(e,t)||qt(t)}))),e),St=e=>se(Je,e,((e,t,s)=>{const n=Y(),a=de();se(te(Je,t,Y),s,((e,t,s)=>{ee(e,t,s),m(s[r],(e=>ee(n,t,e)),(()=>ue(a,t)))})),ee(Ee,t,[n,a])}),((e,t)=>{ee(Je,t),ee(Ee,t)})),vt=e=>se(Fe,e,((e,t,s)=>{ee(Fe,t,s),m(s[r],(e=>ee(Oe,t,e)),(()=>ue(ze,t)))}),((e,t)=>{ee(Fe,t),ee(Oe,t),X(ze,t)})),pt=e=>W(e)?ps():bs(e),wt=e=>se(Ae,e,((e,t,s)=>yt(t,s)),((e,t)=>zt(t))),yt=(e,t)=>se(te(Ae,e,(()=>(Mt(e,1),ee(Pe,e,fe()),ee(ke,e,Y()),Y()))),t,((t,s,n)=>mt(e,t,s,n)),((t,s)=>Pt(e,t,s))),mt=(e,t,s,n,a)=>se(te(t,s,(()=>(Nt(e,s,1),Y()))),n,((t,n,a)=>Lt(e,s,t,n,a)),((n,l)=>kt(e,t,s,n,l,a))),Lt=(e,t,s,n,a)=>{G(s,n)||jt(e,t,n,1);const l=$(s,n);a!==l&&(xt(e,t,n,l,a),ee(s,n,a))},Rt=(e,t,s,n,a)=>m($(t,s),(t=>Lt(e,s,t,n,a)),(()=>mt(e,t,s,Vt({[n]:a},e,s)))),It=e=>W(e)?ms():Vs(e),Jt=e=>se(Me,e,((e,t,s)=>Et(t,s)),((e,t)=>At(t))),Et=(e,t)=>{G(Me,e)||Dt(e,1);const s=$(Me,e);t!==s&&(Ht(e,s,t),ee(Me,e,t))},Ft=(e,t)=>{const[s]=$(Pe,e),n=s(t);return G($(Ae,e),n)?Ft(e,t):n},Ot=e=>$(Ae,e)??yt(e,{}),zt=e=>yt(e,{}),Pt=(e,t,s)=>{const[,n]=$(Pe,e);n(s),mt(e,t,s,{},!0)},kt=(e,t,s,n,a,l)=>{const o=$($(Ee,e)?.[0],a);if(!y(o)&&!l)return Lt(e,s,n,a,o);const r=t=>{xt(e,s,t,$(n,t)),jt(e,s,t,-1),ee(n,t)};y(o)?r(a):_(n,r),K(n)&&(Nt(e,s,-1),K(ee(t,s))&&(Mt(e,-1),ee(Ae,e),ee(Pe,e),ee(ke,e)))},At=e=>{const t=$(Oe,e);if(!y(t))return Et(e,t);Ht(e,$(Me,e)),Dt(e,-1),ee(Me,e)},Mt=(e,t)=>ye(z,e,t),Nt=(e,t,s)=>ye(te(A,e,Y),t,s)&&ee(k,e,te(k,e,(()=>0))+s),jt=(e,t,s,n)=>{const a=$(ke,e),l=$(a,s)??0;(0==l&&1==n||1==l&&-1==n)&&ye(te(P,e,Y),s,n),ee(a,s,l!=-n?l+n:null),ye(te(te(M,e,Y),t,Y),s,n)},xt=(e,t,s,n,a)=>{te(te(te(N,e,Y),t,Y),s,(()=>[n,0]))[1]=a,w[3]?.(e,t,s,a)},Dt=(e,t)=>ye(he,e,t),Ht=(e,t,s)=>{te(Le,e,(()=>[t,0]))[1]=s,w[4]?.(e,s)},Wt=(e,t,s,n,a)=>(O(te(te(te(Re,e,Y),t,Y),s,(()=>[])),n),a),qt=(e,t,s)=>(O(te(Ie,e,(()=>[])),t),s),Bt=(e,t,s)=>m($($($(N,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...ge(ls(e,t,s))])),Gt=e=>m($(Le,e),(([e,t])=>[!0,e,t]),(()=>[!1,...ge(cs(e))])),Kt=e=>K(Re)||K($e[e])?0:U(e?ce(Re):Re,((t,s)=>U(t,((t,n)=>U(t,((t,a)=>ct($e[e],[s,n,a],t))))))),Qt=e=>K(Ie)||K(_e[e])?0:U(e?oe(Ie):Ie,((t,s)=>ct(_e[e],[s],t))),Ut=(e,t,s,n)=>{if(!K(e))return ct(t,n,(()=>ne(e))),_(e,((e,t)=>ct(s,[...n??[],e],1==t))),1},Xt=e=>{const t=is();t!=n&&ct(Ne[e],void 0,t);const s=K(Ke[e]),a=K(Xe[e])&&K(Ye[e])&&K(Ge[e])&&K(Qe[e])&&K(We[e])&&K(qe[e])&&K(Be[e])&&s&&K(xe[e])&&K(De[e]),l=K(Ze[e])&&K(Ue[e])&&K(He[e])&&K(je[e]);if(!a||!l){const t=e?[oe(z),re(P),oe(k),re(A),ce(M),ce(N)]:[z,P,k,A,M,N];if(!a){Ut(t[0],xe[e],De[e]),U(t[1],((t,s)=>Ut(t,We[e],qe[e],[s]))),U(t[2],((t,s)=>{0!=t&&ct(Be[e],[s],ts(s))}));const n=de();U(t[3],((t,a)=>{Ut(t,Ge[e],Qe[e],[a])&&!s&&(ct(Ke[e],[a,null]),ue(n,a))})),s||U(t[5],((t,s)=>{if(!G(n,s)){const n=de();U(t,(e=>U(e,(([t,s],a)=>s!==t?ue(n,a):X(e,a))))),U(n,(t=>ct(Ke[e],[s,t])))}})),U(t[4],((t,s)=>U(t,((t,n)=>Ut(t,Xe[e],Ye[e],[s,n])))))}if(!l){let s;U(t[5],((t,n)=>{let a;U(t,((t,l)=>{let o;U(t,(([t,r],c)=>{r!==t&&(ct(Ze[e],[n,l,c],r,t,Bt),s=a=o=1)})),o&&ct(Ue[e],[n,l],Bt)})),a&&ct(He[e],[n],Bt)})),s&&ct(je[e],void 0,Bt)}}},Yt=e=>{const t=gs();t!=l&&ct(et[e],void 0,t);const s=K(st[e])&&K(nt[e]),n=K(at[e])&&K(tt[e]);if(!s||!n){const t=e?[oe(he),oe(Le)]:[he,Le];if(s||Ut(t[0],st[e],nt[e]),!n){let s;U(t[1],(([t,n],a)=>{n!==t&&(ct(at[e],[a],n,t,Gt),s=1)})),s&&ct(tt[e],void 0,Gt)}}},Zt=(e,...t)=>(Is((()=>e(...F(t,p)))),Fs),$t=()=>le(Ae),_t=()=>Z(Ae),es=e=>Z($(ke,p(e))),ts=e=>B($(Ae,p(e))),ss=e=>Z($(Ae,p(e))),ns=(e,t,s,n=0,a)=>{return F(I((o=$(Ae,p(e)),r=(e,s)=>[y(t)?s:$(e,p(t)),s],l=([e],[t])=>((e??0)<(t??0)?-1:1)*(s?-1:1),F([...o?.entries()??[]],(([e,t])=>r(t,e))).sort(l)),n,y(a)?a:n+a),(([,e])=>e));var l,o,r},as=(e,t)=>Z($($(Ae,p(e)),p(t))),ls=(e,t,s)=>$($($(Ae,p(e)),p(t)),p(s)),os=()=>ne(Me),rs=()=>Z(Me),cs=e=>$(Me,p(e)),is=()=>!K(Ae),ds=e=>G(Ae,p(e)),us=(e,t)=>G($(ke,p(e)),p(t)),hs=(e,t)=>G($(Ae,p(e)),p(t)),fs=(e,t,s)=>G($($(Ae,p(e)),p(t)),p(s)),gs=()=>!K(Me),Ts=e=>G(Me,p(e)),bs=e=>Zt((()=>(e=>q(e,ht,Wt))(e)?wt(e):0)),Vs=e=>Zt((()=>Tt(e)?Jt(e):0)),Cs=e=>{try{pt(we(e))}catch{}return Fs},Ss=t=>Zt((()=>{if((e=q(t,(e=>q(e,ut))))&&(St(t),!K(Ae))){const e=$t();ps(),bs(e)}})),vs=e=>Zt((()=>{if(s=(e=>q(e,ut))(e)){const t=os();Rs(),ms(),s=!0,vt(e),Vs(t)}})),ps=()=>Zt((()=>wt({}))),ws=e=>Zt((e=>G(Ae,e)?zt(e):0),e),ys=(e,t)=>Zt(((e,t)=>m($(Ae,e),(s=>G(s,t)?Pt(e,s,t):0))),e,t),ms=()=>Zt((()=>Jt({}))),Ls=()=>Zt((()=>{St({}),e=!1})),Rs=()=>Zt((()=>{vt({}),s=!1})),Is=(e,t)=>{if(-1!=i){Js();const s=e();return Es(t),s}},Js=()=>(-1!=i&&i++,1==i&&(w[0]?.(),ct(lt)),Fs),Es=e=>(i>0&&(i--,0==i&&(i=1,Kt(1),K(N)||Xt(1),Qt(1),K(Le)||Yt(1),e?.(Fs)&&(U(N,((e,t)=>U(e,((e,s)=>U(e,(([e],n)=>Se(Fs,t,s,n,e))))))),Q(N),U(Le,(([e],t)=>ve(Fs,t,e))),Q(Le)),ct(ot[0],void 0),i=-1,Kt(0),K(N)||Xt(0),Qt(0),K(Le)||Yt(0),w[1]?.(),ct(ot[1],void 0),w[2]?.(),i=0,n=is(),l=gs(),E([z,P,k,A,M,N,Re,he,Le,Ie],Q))),Fs),Fs={getContent:()=>[$t(),os()],getTables:$t,getTableIds:_t,getTable:e=>ae($(Ae,p(e))),getTableCellIds:es,getRowCount:ts,getRowIds:ss,getSortedRowIds:ns,getRow:(e,t)=>ne($($(Ae,p(e)),p(t))),getCellIds:as,getCell:ls,getValues:os,getValueIds:rs,getValue:cs,hasTables:is,hasTable:ds,hasTableCell:us,hasRow:hs,hasCell:fs,hasValues:gs,hasValue:Ts,getTablesJson:()=>pe(Ae),getValuesJson:()=>pe(Me),getJson:()=>pe([Ae,Me]),getTablesSchemaJson:()=>pe(Je),getValuesSchemaJson:()=>pe(Fe),getSchemaJson:()=>pe([Je,Fe]),hasTablesSchema:()=>e,hasValuesSchema:()=>s,setContent:([e,t])=>Zt((()=>{(W(e)?ps:bs)(e),(W(t)?ms:Vs)(t)})),setTables:bs,setTable:(e,t)=>Zt((e=>ht(t,e)?yt(e,t):0),e),setRow:(e,t,s)=>Zt(((e,t)=>ft(e,t,s)?mt(e,Ot(e),t,s):0),e,t),addRow:(e,t,s=!0)=>Is((()=>{let n;return ft(e,n,t)&&(e=p(e),mt(e,Ot(e),n=Ft(e,s?1:0),t)),n})),setPartialRow:(e,t,s)=>Zt(((e,t)=>{if(ft(e,t,s,1)){const n=Ot(e);H(s,((s,a)=>Rt(e,n,t,a,s)))}}),e,t),setCell:(e,t,s,n)=>Zt(((e,t,s)=>m(gt(e,t,s,R(n)?n(ls(e,t,s)):n),(n=>Rt(e,Ot(e),t,s,n)))),e,t,s),setValues:Vs,setPartialValues:e=>Zt((()=>Tt(e,1)?H(e,((e,t)=>Et(t,e))):0)),setValue:(e,t)=>Zt((e=>m(bt(e,R(t)?t(cs(e)):t),(t=>Et(e,t)))),e),applyChanges:e=>Zt((()=>{H(e[0],((e,t)=>y(e)?ws(t):H(e,((e,s)=>y(e)?ys(t,s):H(e,((e,n)=>Se(Fs,t,s,n,e))))))),H(e[1],((e,t)=>ve(Fs,t,e)))})),setTablesJson:Cs,setValuesJson:e=>{try{It(we(e))}catch{}return Fs},setJson:e=>Zt((()=>{try{const[t,s]=we(e);pt(t),It(s)}catch{Cs(e)}})),setTablesSchema:Ss,setValuesSchema:vs,setSchema:(e,t)=>Zt((()=>{Ss(e),vs(t)})),delTables:ps,delTable:ws,delRow:ys,delCell:(e,t,s,n)=>Zt(((e,t,s)=>m($(Ae,e),(a=>m($(a,t),(l=>G(l,s)?kt(e,a,t,l,s,n):0))))),e,t,s),delValues:ms,delValue:e=>Zt((e=>G(Me,e)?At(e):0),e),delTablesSchema:Ls,delValuesSchema:Rs,delSchema:()=>Zt((()=>{Ls(),Rs()})),transaction:Is,startTransaction:Js,getTransactionChanges:()=>[ne(N,((e,t)=>-1===$(z,t)?void 0:ne(e,((e,s)=>-1===$($(A,t),s)?void 0:ne(e,(([,e])=>e),(e=>Ve(e)))),K,W)),K,W),ne(Le,(([,e])=>e),(e=>Ve(e))),1],getTransactionLog:()=>[!K(N),!K(Le),le(N,be,Ve),le(Re),ne(Le,be,Ve),ne(Ie),ne(z),ae(A),le(M),ne(he)],finishTransaction:Es,forEachTable:e=>U(Ae,((t,s)=>e(s,(e=>U(t,((t,s)=>e(s,(e=>_(t,e))))))))),forEachTableCell:(e,t)=>_($(ke,p(e)),t),forEachRow:(e,t)=>U($(Ae,p(e)),((e,s)=>t(s,(t=>_(e,t))))),forEachCell:(e,t,s)=>_($($(Ae,p(e)),p(t)),s),forEachValue:e=>_(Me,e),addSortedRowIdsListener:(e,t,s,n,a,l,o)=>{let r=ns(e,t,s,n,a);return rt((()=>{const o=ns(e,t,s,n,a);var c,i,d;i=r,J(c=o)===J(i)&&(d=(e,t)=>i[t]===e,c.every(d))||(r=o,l(Fs,e,t,s,n,a,r))}),Ke[o?1:0],[e,t],[_t])},addStartTransactionListener:e=>rt(e,lt),addWillFinishTransactionListener:e=>rt(e,ot[0]),addDidFinishTransactionListener:e=>rt(e,ot[1]),callListener:e=>(dt(e),Fs),delListener:e=>(it(e),Fs),getListenerStats:()=>({}),createStore:me,addListener:rt,callListeners:ct,setInternalListeners:(e,t,s,n,a)=>w=[e,t,s,n,a]};return H({[c+u]:[0,Ne,[],()=>[is()]],[u]:[0,je],[h]:[0,xe],[c+d]:[1,De,[_t],e=>[ds(...e)]],[d]:[1,He,[_t]],[d+V]:[1,We,[_t]],[c+d+b]:[2,qe,[_t,es],e=>[us(...e)]],[g]:[1,Be,[_t]],[T]:[1,Ge,[_t]],[c+f]:[2,Qe,[_t,ss],e=>[hs(...e)]],[f]:[2,Ue,[_t,ss]],[V]:[2,Xe,[_t,ss]],[c+b]:[3,Ye,[_t,ss,as],e=>[fs(...e)]],[b]:[3,Ze,[_t,ss,as],e=>ge(ls(...e))],InvalidCell:[3,$e],[c+S]:[0,et,[],()=>[gs()]],[S]:[0,tt],[v]:[0,st],[c+C]:[1,nt,[rs],e=>[Ts(...e)]],[C]:[1,at,[rs],e=>ge(cs(e[0]))],InvalidValue:[1,_e]},(([e,t,s,n],a)=>{Fs["add"+a+"Listener"]=(...a)=>rt(a[e],t[a[e+1]?1:0],e>0?I(a,0,e):void 0,s,n)})),j(Fs)};export{me as createStore};
|
package/lib/store.js.gz
CHANGED
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=Promise,t=
|
|
1
|
+
const e=Promise,t=e=>null==e,a=(e,a,n)=>t(e)?n?.():a(e),n=Object,s=e=>n.getPrototypeOf(e),o=n.entries,r=n.keys,i=n.freeze,l=(e,t)=>((e,t)=>e.forEach(t))(o(e),(([e,a])=>t(a,e))),c=e=>(e=>!t(e)&&a(s(e),(e=>e==n.prototype||t(s(e))),(()=>!0)))(e)&&0==(e=>r(e).length)(e),g=(e,t,a)=>(((e,t)=>t in e)(e,t)||(e[t]=a()),e[t]),u=(e,t)=>e?.delete(t),y=e=>new Map(e),d=(e,t)=>e?.get(t),h=(e,a,n)=>t(n)?(u(e,a),e):e?.set(a,n),w=(e,t,a,n)=>{var s,o;return s=e,o=t,s?.has(o)||h(e,t,a()),d(e,t)};new globalThis.TextEncoder;const v=(e,t)=>t?[e,t]:[e],f=(e,t)=>((e??"")>(t??"")?e:t)??"",p=(e="")=>v(((e=[])=>n.fromEntries(e))(),e),b=y(),A=y(),M="-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz".split("");var C;y((C=(e,t)=>[e,t],M.map(C)));const S=(e=16)=>crypto.getRandomValues(new Uint8Array(e)).reduce(((e,t)=>e+M[63&t]),""),T=y(),m=(n,s)=>{const o=S();return((n,s,o,r,M,C,T={})=>{let m;const L=y();o(((e,o,r,i)=>{0==r?a(d(L,o),(([a,n])=>t(a)||a==e?n(i,e):0)):2==r&&R.isAutoLoading()?E(e,i).then((e=>{m?.(void 0,e)})):3==r&&R.isAutoLoading()?m?.(void 0,i):a(1==r&&R.isAutoSaving()?n.getMergeableContentHashes():4==r?n.getMergeableTableDiff(i):5==r?n.getMergeableRowDiff(i):6==r?n.getMergeableCellDiff(i):7==r?n.getMergeableValueDiff(i):void 0,(t=>{s(e,o,0,t)}))}));const H=async(t,a,n="")=>new e(((e,o)=>{const r=S(),i=setTimeout((()=>{u(L,r),o(`No response from ${t??"anyone"} to '${a}'`)}),1e3*M);h(L,r,[t,(t,a)=>{clearTimeout(i),u(L,r),e([t,a])}]),s(t,r,a,n)})),D=(e,[t,a])=>{l(t,(([t,a],n)=>{const s=g(e[0],n,p);l(t,(([e,t],a)=>{const n=g(s[0],a,p);l(e,(([e,t],a)=>n[0][a]=v(e,t))),n[1]=f(n[1],t)})),s[1]=f(s[1],a)})),e[1]=f(e[1],a)},E=async(e=null,a)=>{t(a)&&([a,e]=await H(e,1));const[s,o]=a,[r,i]=n.getMergeableContentHashes();let l=p();if(r!=s){const[t,a]=(await H(e,4,n.getMergeableTableHashes()))[0];if(l=t,!c(a)){const[t,s]=(await H(e,5,n.getMergeableRowHashes(a)))[0];if(D(l,t),!c(s)){const t=(await H(e,6,n.getMergeableCellHashes(s)))[0];D(l,t)}}}return[l,i==o?p():(await H(e,7,n.getMergeableValuesHashes()))[0],1]},R=((e,n,s,o,r,l,g,u={},y=[])=>{let v,f,p,M=0;w(b,y,(()=>0)),w(A,y,(()=>[]));const[C,S,T,m,L]=((e=1,t)=>e>1&&"merge"in t?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[e],[t]])=>!c(e)||!c(t),t.setDefaultContent]:2!=e?[0,t.getContent,t.getTransactionChanges,([e,t])=>!c(e)||!c(t),t.setContent]:0)(g,e),H=t=>{var a;(C&&(a=t?.[0],Array.isArray(a))?1===t?.[2]?e.applyMergeableChanges:e.setMergeableContent:1===t?.[2]?e.applyChanges:e.setContent)(t)},D=async e=>(2!=M&&(M=1,await x((async()=>{try{H(await n())}catch(t){l?.(t),e&&L(e)}M=0}))),z),E=()=>(f&&(r(f),f=void 0),z),R=async e=>(1!=M&&(M=2,await x((async()=>{try{await s(S,e)}catch(e){l?.(e)}M=0}))),z),V=()=>(a(p,e.delListener),p=void 0,z),x=async(...e)=>(((e,...t)=>{e.push(...t)})(d(A,y),...e),await(async()=>{if(!d(b,y)){for(h(b,y,1);!t((e=d(A,y),v=e.shift()));)try{await v()}catch(e){l?.(e)}h(b,y,0)}var e})(),z),z={load:D,startAutoLoad:async e=>(await E().load(e),f=o((async(e,t)=>{t||e?2!=M&&(M=1,H(t??e),M=0):await D()})),z),stopAutoLoad:E,isAutoLoading:()=>!t(f),save:R,startAutoSave:async()=>(await V().save(),p=e.addDidFinishTransactionListener((()=>{const e=T();m(e)&&R(e)})),z),stopAutoSave:V,isAutoSaving:()=>!t(p),schedule:x,getStore:()=>e,destroy:()=>E().stopAutoSave(),getStats:()=>({}),...u};return i(z)})(n,(async()=>{const e=await E();return c(e[0][0])&&c(e[1][0])?void 0:e}),(async(e,t)=>{t?s(null,null,3,t):s(null,null,2,n.getMergeableContentHashes())}),(e=>m=e),(()=>m=void 0),C,2,{startSync:async e=>await(await R.startAutoLoad(e)).startAutoSave(),stopSync:()=>R.stopAutoLoad().stopAutoSave(),destroy:()=>(r(),R.stopSync()),getSynchronizerStats:()=>({}),...T});return R})(n,((e,a,n,s)=>{setTimeout((()=>{return t(e)?(r=T,r?.forEach(((e,t)=>{return r=e,t!=o?r(o,a,n,s):0;var r}))):d(T,e)?.(o,a,n,s);var r}),0)}),(e=>{h(T,o,e)}),(()=>{u(T,o)}),.01,s)};export{m as createLocalSynchronizer};
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=Promise,t=
|
|
1
|
+
const e=Promise,t=e=>null==e,a=(e,a,n)=>t(e)?n?.():a(e),n=(e,t,a)=>e.slice(t,a),s=t=>new e(t),o=Object,r=e=>o.getPrototypeOf(e),i=o.entries,c=o.keys,l=o.freeze,g=(e,t)=>((e,t)=>e.forEach(t))(i(e),(([e,a])=>t(a,e))),u=e=>(e=>!t(e)&&a(r(e),(e=>e==o.prototype||t(r(e))),(()=>!0)))(e)&&0==(e=>c(e).length)(e),y=(e,t,a)=>(((e,t)=>t in e)(e,t)||(e[t]=a()),e[t]),d=(e,t)=>e?.delete(t),f=e=>new Map(e),h=(e,t)=>e?.get(t),v=(e,a,n)=>t(n)?(d(e,a),e):e?.set(a,n),p=(e,t,a,n)=>{var s,o;return s=e,o=t,s?.has(o)||v(e,t,a()),h(e,t)};new globalThis.TextEncoder;const w=(e,t)=>t?[e,t]:[e],b=(e,t)=>((e??"")>(t??"")?e:t)??"",S=(e="")=>w(((e=[])=>o.fromEntries(e))(),e),A=f(),M=f(),C="-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz".split("");var L;f((L=(e,t)=>[e,t],C.map(L)));const m=async(e,o,r=1,i)=>{let c;const L=(e,t)=>o.addEventListener(e,t),m=((e,n,o,r,i,c,L={})=>{let m;const T=f();o(((s,o,r,i)=>{0==r?a(h(T,o),(([e,a])=>t(e)||e==s?a(i,s):0)):2==r&&E.isAutoLoading()?O(s,i).then((e=>{m?.(void 0,e)})):3==r&&E.isAutoLoading()?m?.(void 0,i):a(1==r&&E.isAutoSaving()?e.getMergeableContentHashes():4==r?e.getMergeableTableDiff(i):5==r?e.getMergeableRowDiff(i):6==r?e.getMergeableCellDiff(i):7==r?e.getMergeableValueDiff(i):void 0,(e=>{n(s,o,0,e)}))}));const H=async(e,t,a="")=>s(((s,o)=>{const r=((e=16)=>crypto.getRandomValues(new Uint8Array(e)).reduce(((e,t)=>e+C[63&t]),""))(),c=setTimeout((()=>{d(T,r),o(`No response from ${e??"anyone"} to '${t}'`)}),1e3*i);v(T,r,[e,(e,t)=>{clearTimeout(c),d(T,r),s([e,t])}]),n(e,r,t,a)})),D=(e,[t,a])=>{g(t,(([t,a],n)=>{const s=y(e[0],n,S);g(t,(([e,t],a)=>{const n=y(s[0],a,S);g(e,(([e,t],a)=>n[0][a]=w(e,t))),n[1]=b(n[1],t)})),s[1]=b(s[1],a)})),e[1]=b(e[1],a)},O=async(a=null,n)=>{t(n)&&([n,a]=await H(a,1));const[s,o]=n,[r,i]=e.getMergeableContentHashes();let c=S();if(r!=s){const[t,n]=(await H(a,4,e.getMergeableTableHashes()))[0];if(c=t,!u(n)){const[t,s]=(await H(a,5,e.getMergeableRowHashes(n)))[0];if(D(c,t),!u(s)){const t=(await H(a,6,e.getMergeableCellHashes(s)))[0];D(c,t)}}}return[c,i==o?S():(await H(a,7,e.getMergeableValuesHashes()))[0],1]},E=((e,n,s,o,r,i,c,g={},y=[])=>{let d,f,w,b=0;p(A,y,(()=>0)),p(M,y,(()=>[]));const[S,C,L,m,T]=((e=1,t)=>e>1&&"merge"in t?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[e],[t]])=>!u(e)||!u(t),t.setDefaultContent]:2!=e?[0,t.getContent,t.getTransactionChanges,([e,t])=>!u(e)||!u(t),t.setContent]:0)(c,e),H=t=>{var a;(S&&(a=t?.[0],Array.isArray(a))?1===t?.[2]?e.applyMergeableChanges:e.setMergeableContent:1===t?.[2]?e.applyChanges:e.setContent)(t)},D=async e=>(2!=b&&(b=1,await x((async()=>{try{H(await n())}catch(t){i?.(t),e&&T(e)}b=0}))),P),O=()=>(f&&(r(f),f=void 0),P),E=async e=>(1!=b&&(b=2,await x((async()=>{try{await s(C,e)}catch(e){i?.(e)}b=0}))),P),N=()=>(a(w,e.delListener),w=void 0,P),x=async(...e)=>(((e,...t)=>{e.push(...t)})(h(M,y),...e),await(async()=>{if(!h(A,y)){for(v(A,y,1);!t((e=h(M,y),d=e.shift()));)try{await d()}catch(e){i?.(e)}v(A,y,0)}var e})(),P),P={load:D,startAutoLoad:async e=>(await O().load(e),f=o((async(e,t)=>{t||e?2!=b&&(b=1,H(t??e),b=0):await D()})),P),stopAutoLoad:O,isAutoLoading:()=>!t(f),save:E,startAutoSave:async()=>(await N().save(),w=e.addDidFinishTransactionListener((()=>{const e=L();m(e)&&E(e)})),P),stopAutoSave:N,isAutoSaving:()=>!t(w),schedule:x,getStore:()=>e,destroy:()=>O().stopAutoSave(),getStats:()=>({}),...g};return l(P)})(e,(async()=>{const e=await O();return u(e[0][0])&&u(e[1][0])?void 0:e}),(async(t,a)=>{a?n(null,null,3,a):n(null,null,2,e.getMergeableContentHashes())}),(e=>m=e),(()=>m=void 0),c,2,{startSync:async e=>await(await E.startAutoLoad(e)).startAutoSave(),stopSync:()=>E.stopAutoLoad().stopAutoSave(),destroy:()=>(r(),E.stopSync()),getSynchronizerStats:()=>({}),...L});return E})(e,((e,...t)=>{o.send((e??"")+"\n"+JSON.stringify(t,((e,t)=>void 0===t?"":t)))}),(e=>{c=e}),(()=>{o.close()}),r,i,{getWebSocket:()=>o});return L("message",(({data:e})=>{if(!t(c)){const t=e.toString("utf8").indexOf("\n");-1!==t&&c(n(e,0,t),...(a=n(e,t+1),JSON.parse(a,((e,t)=>""===t?void 0:t))))}var a})),s(((e,t)=>{o.readyState!=o.OPEN?(L("error",t),L("open",(()=>e(m)))):e(m)}))};export{m as createWsSynchronizer};
|
|
Binary file
|
package/lib/synchronizers.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=Promise,t=
|
|
1
|
+
const e=Promise,t=e=>null==e,a=(e,a,n)=>t(e)?n?.():a(e),n=Object,s=e=>n.getPrototypeOf(e),o=n.entries,r=n.keys,i=n.freeze,l=(e,t)=>((e,t)=>e.forEach(t))(o(e),(([e,a])=>t(a,e))),c=e=>(e=>!t(e)&&a(s(e),(e=>e==n.prototype||t(s(e))),(()=>!0)))(e)&&0==(e=>r(e).length)(e),g=(e,t,a)=>(((e,t)=>t in e)(e,t)||(e[t]=a()),e[t]),u=(e,t)=>e?.delete(t),y=e=>new Map(e),d=(e,t)=>e?.get(t),h=(e,a,n)=>t(n)?(u(e,a),e):e?.set(a,n),w=(e,t,a,n)=>{var s,o;return s=e,o=t,s?.has(o)||h(e,t,a()),d(e,t)};new globalThis.TextEncoder;const p=(e,t)=>t?[e,t]:[e],f=(e,t)=>((e??"")>(t??"")?e:t)??"",v=(e="")=>p(((e=[])=>n.fromEntries(e))(),e),b=y(),A=y(),M="-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz".split("");var C;y((C=(e,t)=>[e,t],M.map(C)));const S=(n,s,o,r,C,S,L={})=>{let T;const m=y();o(((e,o,r,i)=>{0==r?a(d(m,o),(([a,n])=>t(a)||a==e?n(i,e):0)):2==r&&R.isAutoLoading()?E(e,i).then((e=>{T?.(void 0,e)})):3==r&&R.isAutoLoading()?T?.(void 0,i):a(1==r&&R.isAutoSaving()?n.getMergeableContentHashes():4==r?n.getMergeableTableDiff(i):5==r?n.getMergeableRowDiff(i):6==r?n.getMergeableCellDiff(i):7==r?n.getMergeableValueDiff(i):void 0,(t=>{s(e,o,0,t)}))}));const H=async(t,a,n="")=>new e(((e,o)=>{const r=((e=16)=>crypto.getRandomValues(new Uint8Array(e)).reduce(((e,t)=>e+M[63&t]),""))(),i=setTimeout((()=>{u(m,r),o(`No response from ${t??"anyone"} to '${a}'`)}),1e3*C);h(m,r,[t,(t,a)=>{clearTimeout(i),u(m,r),e([t,a])}]),s(t,r,a,n)})),D=(e,[t,a])=>{l(t,(([t,a],n)=>{const s=g(e[0],n,v);l(t,(([e,t],a)=>{const n=g(s[0],a,v);l(e,(([e,t],a)=>n[0][a]=p(e,t))),n[1]=f(n[1],t)})),s[1]=f(s[1],a)})),e[1]=f(e[1],a)},E=async(e=null,a)=>{t(a)&&([a,e]=await H(e,1));const[s,o]=a,[r,i]=n.getMergeableContentHashes();let l=v();if(r!=s){const[t,a]=(await H(e,4,n.getMergeableTableHashes()))[0];if(l=t,!c(a)){const[t,s]=(await H(e,5,n.getMergeableRowHashes(a)))[0];if(D(l,t),!c(s)){const t=(await H(e,6,n.getMergeableCellHashes(s)))[0];D(l,t)}}}return[l,i==o?v():(await H(e,7,n.getMergeableValuesHashes()))[0],1]},R=((e,n,s,o,r,l,g,u={},y=[])=>{let p,f,v,M=0;w(b,y,(()=>0)),w(A,y,(()=>[]));const[C,S,L,T,m]=((e=1,t)=>e>1&&"merge"in t?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[e],[t]])=>!c(e)||!c(t),t.setDefaultContent]:2!=e?[0,t.getContent,t.getTransactionChanges,([e,t])=>!c(e)||!c(t),t.setContent]:0)(g,e),H=t=>{var a;(C&&(a=t?.[0],Array.isArray(a))?1===t?.[2]?e.applyMergeableChanges:e.setMergeableContent:1===t?.[2]?e.applyChanges:e.setContent)(t)},D=async e=>(2!=M&&(M=1,await x((async()=>{try{H(await n())}catch(t){l?.(t),e&&m(e)}M=0}))),z),E=()=>(f&&(r(f),f=void 0),z),R=async e=>(1!=M&&(M=2,await x((async()=>{try{await s(S,e)}catch(e){l?.(e)}M=0}))),z),V=()=>(a(v,e.delListener),v=void 0,z),x=async(...e)=>(((e,...t)=>{e.push(...t)})(d(A,y),...e),await(async()=>{if(!d(b,y)){for(h(b,y,1);!t((e=d(A,y),p=e.shift()));)try{await p()}catch(e){l?.(e)}h(b,y,0)}var e})(),z),z={load:D,startAutoLoad:async e=>(await E().load(e),f=o((async(e,t)=>{t||e?2!=M&&(M=1,H(t??e),M=0):await D()})),z),stopAutoLoad:E,isAutoLoading:()=>!t(f),save:R,startAutoSave:async()=>(await V().save(),v=e.addDidFinishTransactionListener((()=>{const e=L();T(e)&&R(e)})),z),stopAutoSave:V,isAutoSaving:()=>!t(v),schedule:x,getStore:()=>e,destroy:()=>E().stopAutoSave(),getStats:()=>({}),...u};return i(z)})(n,(async()=>{const e=await E();return c(e[0][0])&&c(e[1][0])?void 0:e}),(async(e,t)=>{t?s(null,null,3,t):s(null,null,2,n.getMergeableContentHashes())}),(e=>T=e),(()=>T=void 0),S,2,{startSync:async e=>await(await R.startAutoLoad(e)).startAutoSave(),stopSync:()=>R.stopAutoLoad().stopAutoSave(),destroy:()=>(r(),R.stopSync()),getSynchronizerStats:()=>({}),...L});return R};export{S as createCustomSynchronizer};
|
package/lib/synchronizers.js.gz
CHANGED
|
Binary file
|
package/lib/tinybase.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=e=>typeof e,t="",n=e(t),s=e(!0),a=e(0),o=e(e),r="type",l="default",i="Listener",c="Result",d="add",u="Has",g="Ids",h="Table",f=h+"s",b=h+g,C="Row",L=C+"Count",w=C+g,v="Sorted"+C+g,T="Cell",y=T+g,S="Value",p=S+"s",I=S+g,R=e=>t+e,M=(e,t)=>e.startsWith(t),V=(e,t)=>e.endsWith(t),m=Promise,D=Math.max,E=Math.min,H=isFinite,A=e=>null==e,k=(e,t,n)=>A(e)?n?.():t(e),J=e=>e==n||e==s,x=t=>e(t)==n,F=t=>e(t)==o,Q=e=>Array.isArray(e),z=(e,t,n)=>e.slice(t,n),N=e=>e.length,O=()=>{},P=(e,t)=>e.includes(t),W=(e,t)=>e.every(t),$=(e,t)=>N(e)===N(t)&&W(e,((e,n)=>t[n]===e)),j=(e,t)=>W(e,((n,s)=>0==s||t(e[s-1],n)<=0)),_=(e,t)=>e.sort(t),B=(e,t)=>e.forEach(t),q=(e,t)=>e.map(t),G=e=>U(e,((e,t)=>e+t),0),K=e=>0==N(e),U=(e,t,n)=>e.reduce(t,n),X=(e,...t)=>e.push(...t),Y=e=>e.pop(),Z=e=>e.shift(),ee=Object,te=e=>ee.getPrototypeOf(e),ne=ee.entries,se=ee.isFrozen,ae=e=>!A(e)&&k(te(e),(e=>e==ee.prototype||A(te(e))),(()=>!0)),oe=ee.keys,re=ee.freeze,le=(e=[])=>ee.fromEntries(e),ie=(e,t)=>t in e,ce=(e,t)=>(delete e[t],e),de=(e,t)=>B(ne(e),(([e,n])=>t(n,e))),ue=(e,t)=>q(ne(e),(([e,n])=>t(n,e))),ge=e=>ae(e)&&0==(e=>N(oe(e)))(e),he=(e,t,n)=>(ie(e,t)||(e[t]=n()),e[t]),fe=(e,t,n,s=0)=>A(e)||!ae(e)||!s&&ge(e)||se(e)?(n?.(),!1):(ue(e,((n,s)=>{t(n,s)||ce(e,s)})),!!s||!ge(e)),be=e=>e?.size??0,Ce=(e,t)=>e?.has(t)??!1,Le=e=>A(e)||0==be(e),we=e=>[...e?.values()??[]],ve=e=>e.clear(),Te=(e,t)=>e?.forEach(t),ye=(e,t)=>e?.delete(t),Se=e=>new Map(e),pe=e=>[...e?.keys()??[]],Ie=(e,t)=>e?.get(t),Re=(e,t)=>Te(e,((e,n)=>t(n,e))),Me=(e,t,n)=>A(n)?(ye(e,t),e):e?.set(t,n),Ve=(e,t,n,s)=>(Ce(e,t)?s?.(Ie(e,t)):Me(e,t,n()),Ie(e,t)),me=(e,t,n,s=Me)=>(ue(t,((t,s)=>n(e,s,t))),Re(e,(n=>ie(t,n)?0:s(e,n))),e),De=(e,t,n,s)=>{const a={};return Te(e,((e,o)=>{if(!n?.(e,o)){const n=t?t(e,o):e;!s?.(n)&&(a[o]=n)}})),a},Ee=(e,t,n)=>De(e,(e=>De(e,t,n)),Le,ge),He=(e,t,n)=>De(e,(e=>Ee(e,t,n)),Le,ge),Ae=(e,t)=>{const n=Se();return Te(e,((e,s)=>n.set(s,t?.(e)??e))),n},ke=e=>Ae(e,Ae),Je=e=>Ae(e,ke),xe=(e,t,n,s,a=0)=>k((n?Ve:Ie)(e,t[a],a>N(t)-2?n:Se),(o=>{if(a>N(t)-2)return s?.(o)&&Me(e,t[a]),o;const r=xe(o,t,n,s,a+1);return Le(o)&&Me(e,t[a]),r})),Fe=t=>{const n=e(t);return J(n)||n==a&&H(t)?n:void 0},Qe=e=>A(e)||!A(Fe(e)),ze=(e,t,n,s,a)=>A(a)?e.delCell(t,n,s,!0):e.setCell(t,n,s,a),Ne=(e,t,n)=>A(n)?e.delValue(t):e.setValue(t,n),Oe=e=>new Set(Q(e)||A(e)?e:[e]),Pe=(e,t)=>e?.add(t),We=(e,t,n,s,a)=>{const o=e.hasRow,r=Se(),l=Se(),i=Se(),c=Se(),d=Se(),u=Se(),g=(t,n,...s)=>{const a=Ve(u,t,Oe);return B(s,(t=>Pe(a,t)&&n&&e.callListener(t))),s},h=(t,...n)=>k(Ie(u,t),(s=>{B(K(n)?we(s):n,(t=>{e.delListener(t),ye(s,t)})),Le(s)&&Me(u,t)})),f=(e,n)=>{Me(r,e,n),Ce(l,e)||(Me(l,e,t()),Me(c,e,Se()),Me(d,e,Se()),a(i))},b=e=>{Me(r,e),Me(l,e),Me(c,e),Me(d,e),h(e),a(i)};return[()=>e,()=>pe(r),e=>Re(l,e),e=>Ce(l,e),e=>Ie(r,e),e=>Ie(l,e),(e,t)=>Me(l,e,t),f,(t,s,a,r,l)=>{f(t,s);const i=Se(),u=Se(),b=Ie(c,t),C=Ie(d,t),L=t=>{const a=n=>e.getCell(s,t,n),c=Ie(b,t),d=o(s,t)?n(r(a,t)):void 0;if(c===d||Q(c)&&Q(d)&&$(c,d)||Me(i,t,[c,d]),!A(l)){const e=Ie(C,t),n=o(s,t)?l(a,t):void 0;e!=n&&Me(u,t,n)}},w=e=>{a((()=>{Te(i,(([,e],t)=>Me(b,t,e))),Te(u,((e,t)=>Me(C,t,e)))}),i,u,b,C,e),ve(i),ve(u)};Re(b,L),e.hasTable(s)&&B(e.getRowIds(s),(e=>{Ce(b,e)||L(e)})),w(!0),h(t),g(t,0,e.addRowListener(s,null,((e,t,n)=>L(n))),e.addTableListener(s,(()=>w())))},b,e=>s(e,i),()=>Re(u,b),g,h]},$e=(e,n)=>x(e)?t=>t(e):e??(()=>n??t),je=(e,t)=>{const n=new WeakMap;return s=>{n.has(s)||n.set(s,e(s));const a=n.get(s);return t?.(a),a}},_e=/^\d+$/,Be=()=>{const e=[];let n=0;return[s=>(s?Z(e):null)??t+n++,t=>{_e.test(t)&&N(e)<1e3&&X(e,t)}]},qe=e=>{let n;const[s,a]=Be(),o=Se();return[(a,r,l,i=[],c=(()=>[]))=>{n??=e();const d=s(1);return Me(o,d,[a,r,l,i,c]),Pe(xe(r,l??[t],Oe),d),d},(e,s,...a)=>B(((e,n=[t])=>{const s=[],a=(e,t)=>t==N(n)?X(s,e):null===n[t]?Te(e,(e=>a(e,t+1))):B([n[t],null],(n=>a(Ie(e,n),t+1)));return a(e,0),s})(e,s),(e=>Te(e,(e=>Ie(o,e)[0](n,...s??[],...a))))),e=>k(Ie(o,e),(([,n,s])=>(xe(n,s??[t],void 0,(t=>(ye(t,e),Le(t)?1:0))),Me(o,e),a(e),s))),e=>k(Ie(o,e),(([e,,t=[],s,a])=>{const o=(...r)=>{const l=N(r);l==N(t)?e(n,...r,...a(r)):A(t[l])?B(s[l]?.(...r)??[],(e=>o(...r,e))):o(...r,t[l])};o()}))]},Ge=je((e=>{let n,s,a,o=100,r=Se(),l=Se(),i=1;const c=Se(),d=Se(),[u,g,h]=qe((()=>x)),f=Se(),b=Se(),C=[],L=[],w=(t,n)=>{i=0,e.transaction((()=>{const[s,a]=Ie(f,n);Te(s,((n,s)=>Te(n,((n,a)=>Te(n,((n,o)=>ze(e,s,a,o,n[t]))))))),Te(a,((n,s)=>Ne(e,s,n[t])))})),i=1},v=e=>{Me(f,e),Me(b,e),g(d,[e])},T=(e,t)=>B(((e,t)=>e.splice(0,t))(e,t??N(e)),v),y=()=>T(C,N(C)-o),S=()=>k(n,(()=>{X(C,n),y(),T(L),n=void 0,a=1})),p=()=>{n=Y(C),a=1};let I,R;const M=(e=t)=>(A(n)&&(n=t+s++,Me(f,n,[r,l]),H(n,e),r=Se(),l=Se(),a=1),n),V=()=>{K(C)||(((e,...t)=>{e.unshift(...t)})(L,M()),w(0,n),n=Y(C),a=1)},m=()=>{K(L)||(X(C,n),n=Z(L),w(1,n),a=1)},D=()=>{a&&(g(c),a=0)},E=e=>{const t=M(e);return D(),t},H=(e,t)=>(J(e)&&Ie(b,e)!==t&&(Me(b,e,t),g(d,[e])),x),J=e=>Ce(f,e),x={setSize:e=>(o=e,y(),x),addCheckpoint:E,setCheckpoint:H,getStore:()=>e,getCheckpointIds:()=>[[...C],n,[...L]],forEachCheckpoint:e=>Re(b,e),hasCheckpoint:J,getCheckpoint:e=>Ie(b,e),goBackward:()=>(V(),D(),x),goForward:()=>(m(),D(),x),goTo:e=>{const t=P(C,e)?V:P(L,e)?m:null;for(;!A(t)&&e!=n;)t();return D(),x},addCheckpointIdsListener:e=>u(e,c),addCheckpointListener:(e,t)=>u(t,d,[e]),delListener:e=>(h(e),x),clear:()=>(T(C),T(L),A(n)||v(n),n=void 0,s=0,E(),x),clearForward:()=>(K(L)||(T(L),g(c)),x),destroy:()=>{e.delListener(I),e.delListener(R)},getListenerStats:()=>({}),_registerListeners:()=>{I=e.addCellListener(null,null,null,((e,t,n,s,a,o)=>{if(i){S();const e=Ve(r,t,Se),l=Ve(e,n,Se),i=Ve(l,s,(()=>[o,void 0]));i[1]=a,i[0]===a&&Le(Me(l,s))&&Le(Me(e,n))&&Le(Me(r,t))&&p(),D()}})),R=e.addValueListener(null,((e,t,n,s)=>{if(i){S();const e=Ve(l,t,(()=>[s,void 0]));e[1]=n,e[0]===n&&Le(Me(l,t))&&p(),D()}}))}};return re(x.clear())}),(e=>e._registerListeners())),Ke=(e,t)=>(e??0)<(t??0)?-1:1,Ue=je((e=>{const n=Se(),s=Se(),[a,o,r]=qe((()=>v)),[l,i,c,d,u,g,h,,f,b,C,L]=We(e,Se,(e=>A(e)?t:Q(e)?q(e,R):R(e)),a,o),w=(t,n,s)=>{const a=u(t);Te(s,((t,s)=>n(s,(n=>Te(t,(t=>n(t,(n=>e.forEachCell(a,t,n)))))))))},v={setIndexDefinition:(e,t,a,r,l,i=Ke)=>{const c=A(l)?void 0:([e],[t])=>l(e,t);return f(e,t,((t,a,l,d,u,f)=>{let b=0;const C=Oe(),L=Oe(),w=g(e);if(Te(a,(([e,t],n)=>{const s=Oe(e),a=Oe(t);Te(s,(e=>ye(a,e)?ye(s,e):0)),Te(s,(e=>{Pe(C,e),k(Ie(w,e),(t=>{ye(t,n),Le(t)&&(Me(w,e),b=1)}))})),Te(a,(e=>{Pe(C,e),Ce(w,e)||(Me(w,e,Oe()),b=1),Pe(Ie(w,e),n),A(r)||Pe(L,e)}))})),t(),Le(u)||(f?Re(w,(e=>Pe(L,e))):Re(l,(e=>k(Ie(d,e),(e=>Pe(L,e))))),Te(L,(e=>{const t=(t,n)=>i(Ie(u,t),Ie(u,n),e),n=[...Ie(w,e)];j(n,t)||(Me(w,e,Oe(_(n,t))),Pe(C,e))}))),(b||f)&&!A(c)){const t=[...w];j(t,c)||(h(e,Se(_(t,c))),b=1)}b&&o(n,[e]),Te(C,(t=>o(s,[e,t])))}),$e(a),k(r,$e)),v},delIndexDefinition:e=>(b(e),v),getStore:l,getIndexIds:i,forEachIndex:e=>c(((t,n)=>e(t,(e=>w(t,e,n))))),forEachSlice:(e,t)=>w(e,t,g(e)),hasIndex:d,hasSlice:(e,t)=>Ce(g(e),t),getTableId:u,getSliceIds:e=>pe(g(e)),getSliceRowIds:(e,t)=>we(Ie(g(e),t)),addIndexIdsListener:C,addSliceIdsListener:(e,t)=>a(t,n,[e]),addSliceRowIdsListener:(e,t,n)=>a(n,s,[e,t]),delListener:e=>(r(e),v),destroy:L,getListenerStats:()=>({})};return re(v)})),Xe=Se([["avg",[(e,t)=>G(e)/t,(e,t,n)=>e+(t-e)/(n+1),(e,t,n)=>e+(e-t)/(n-1),(e,t,n,s)=>e+(t-n)/s]],["max",[e=>D(...e),(e,t)=>D(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:D(t,e)]],["min",[e=>E(...e),(e,t)=>E(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:E(t,e)]],["sum",[e=>G(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,n)=>e-n+t]]]),Ye=(e,t,n,s,a,o=!1)=>{if(Le(n))return;const[r,l,i,c]=a;return o||=A(e),Te(s,(([n,s])=>{o||(e=A(n)?l?.(e,s,t++):A(s)?i?.(e,n,t--):c?.(e,s,n,t),o||=A(e))})),o?r(we(n),be(n)):e},Ze=je((e=>{const n=Se(),[s,a,o]=qe((()=>L)),[r,l,i,c,d,u,g,,h,f,b,C]=We(e,O,(e=>isNaN(e)||A(e)||!0===e||!1===e||e===t?void 0:1*e),s,a),L={setMetricDefinition:(e,t,s,o,r,l,i)=>{const c=F(s)?[s,r,l,i]:Ie(Xe,s)??Ie(Xe,"sum");return h(e,t,((t,s,o,r,l,i)=>{const d=u(e),h=be(r);i||=A(d),t();let f=Ye(d,h,r,s,c,i);H(f)||(f=void 0),f!=d&&(g(e,f),a(n,[e],f,d))}),$e(o,1)),L},delMetricDefinition:e=>(f(e),L),getStore:r,getMetricIds:l,forEachMetric:i,hasMetric:c,getTableId:d,getMetric:u,addMetricIdsListener:b,addMetricListener:(e,t)=>s(t,n,[e]),delListener:e=>(o(e),L),destroy:C,getListenerStats:()=>({})};return re(L)})),et=Se(),tt=Se(),nt=(e,t,n,s,a,o,r,l={},i=[])=>{let c,d,u,g=0;Ve(et,i,(()=>0)),Ve(tt,i,(()=>[]));const[h,f,b,C,L]=((e=1,t)=>e>1&&"getMergeableContent"in t?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[e],[t]])=>!ge(e)||!ge(t),t.setDefaultContent]:2!=e?[0,t.getContent,t.getTransactionChanges,([e,t])=>!ge(e)||!ge(t),t.setContent]:0)(r,e),w=t=>{(h&&Q(t?.[0])?1===t?.[2]?e.applyMergeableChanges:e.setMergeableContent:1===t?.[2]?e.applyChanges:e.setContent)(t)},v=async e=>(2!=g&&(g=1,await p((async()=>{try{w(await t())}catch(t){o?.(t),e&&L(e)}g=0}))),I),T=()=>(d&&(a(d),d=void 0),I),y=async e=>(1!=g&&(g=2,await p((async()=>{try{await n(f,e)}catch(e){o?.(e)}g=0}))),I),S=()=>(k(u,e.delListener),u=void 0,I),p=async(...e)=>(X(Ie(tt,i),...e),await(async()=>{if(!Ie(et,i)){for(Me(et,i,1);!A(c=Z(Ie(tt,i)));)try{await c()}catch(e){o?.(e)}Me(et,i,0)}})(),I),I={load:v,startAutoLoad:async e=>(await T().load(e),d=s((async(e,t)=>{t||e?2!=g&&(g=1,w(t??e),g=0):await v()})),I),stopAutoLoad:T,isAutoLoading:()=>!A(d),save:y,startAutoSave:async()=>(await S().save(),u=e.addDidFinishTransactionListener((()=>{const e=b();C(e)&&y(e)})),I),stopAutoSave:S,isAutoSaving:()=>!A(u),schedule:p,getStore:()=>e,destroy:()=>T().stopAutoSave(),getStats:()=>({}),...l};return re(I)},st=new globalThis.TextEncoder,at=e=>{let t=2166136261;return B(st.encode(e),(e=>{t^=e,t+=(t<<1)+(t<<4)+(t<<7)+(t<<8)+(t<<24)})),t>>>0},ot=([e,t,n])=>[e,t,n],rt=([e,t])=>lt(e,t),lt=(e,t)=>t?[e,t]:[e],it=e=>e[2],ct=(e,t)=>at(e+":"+t),dt=(e,t)=>t>e?(e?at(e):0)^at(t):0,ut=(e,t)=>((e??"")>(t??"")?e:t)??"",gt=(e,t,n)=>{e[2]=t>>>0,n>e[1]&&(e[1]=n)},ht=(e=t)=>lt(le(),e),ft=(e=t)=>[Se(),e,0],bt=([e,t,n],s=ot)=>[De(e,s),t,n],Ct=([e,t],n=rt)=>lt(De(e,n),t),Lt=(t,n)=>Q(t)&&3==N(t)&&x(t[1])&&e(t[2])==a&&H(t[2])&&n(t[0]),wt=2**36,vt=2**30,Tt=2**24,yt=2**18,St=4096,pt=64,It=e=>String.fromCharCode(48+(63&e)),Rt=(e,t)=>((e,t)=>e.charCodeAt(t))(e,t)-48,Mt=e=>{let t=0,n=-1;const s=at(e),a=e=>{const s=t,[a,o]=A(e)||""==e?[0,0]:[Rt(r=e,0)*wt+Rt(r,1)*vt+Rt(r,2)*Tt+Rt(r,3)*yt+Rt(r,4)*St+Rt(r,5)*pt+Rt(r,6),Rt(r,7)*yt+Rt(r,8)*St+Rt(r,9)*pt+Rt(r,10),Rt(r,11)*Tt+Rt(r,12)*yt+Rt(r,13)*St+Rt(r,14)*pt+Rt(r,15)];var r;t=D(s,a,Date.now()),n=t==s?t==a?D(n,o):n:t==a?o:-1};return[()=>{return a(),o=++n,r=s,It((e=t)/wt)+It(e/vt)+It(e/Tt)+It(e/yt)+It(e/St)+It(e/pt)+It(e)+It(o/yt)+It(o/St)+It(o/pt)+It(o)+It(r/Tt)+It(r/yt)+It(r/St)+It(r/pt)+It(r);var e,o,r},a]},Vt=(e,n,s,a,o,r,l={})=>{let i;const[c]=Mt(e.getId()),d=Se();s(((t,s,a,o)=>{0==a?k(Ie(d,s),(([e,n])=>A(e)||e==t?n(o,t):0)):2==a&&f.isAutoLoading()?h(t,o).then((e=>{i?.(void 0,e)})):3==a&&f.isAutoLoading()?i?.(void 0,o):k(1==a&&f.isAutoSaving()?e.getMergeableContentHashes():4==a?e.getMergeableTableDiff(o):5==a?e.getMergeableRowDiff(o):6==a?e.getMergeableCellDiff(o):7==a?e.getMergeableValueDiff(o):void 0,(e=>{n(t,s,0,e)}))}));const u=async(e,s,a=t)=>new m(((t,r)=>{const l=c(),i=setTimeout((()=>{ye(d,l),r(`No response from ${e??"anyone"} to '${s}'`)}),1e3*o);Me(d,l,[e,(e,n)=>{clearTimeout(i),ye(d,l),t([e,n])}]),n(e,l,s,a)})),g=(e,[t,n])=>{de(t,(([t,n],s)=>{const a=he(e[0],s,ht);de(t,(([e,t],n)=>{const s=he(a[0],n,ht);de(e,(([e,t],n)=>s[0][n]=lt(e,t))),s[1]=ut(s[1],t)})),a[1]=ut(a[1],n)})),e[1]=ut(e[1],n)},h=async(t=null,n)=>{A(n)&&([n,t]=await u(t,1));const[s,a]=n,[o,r]=e.getMergeableContentHashes();let l=ht();if(o!=s){const[n,s]=(await u(t,4,e.getMergeableTableHashes()))[0];if(l=n,!ge(s)){const[n,a]=(await u(t,5,e.getMergeableRowHashes(s)))[0];if(g(l,n),!ge(a)){const n=(await u(t,6,e.getMergeableCellHashes(a)))[0];g(l,n)}}}return[l,r==a?ht():(await u(t,7,e.getMergeableValuesHashes()))[0],1]},f=nt(e,(async()=>{const e=await h();return ge(e[0][0])&&ge(e[1][0])?void 0:e}),(async(t,s)=>{s?n(null,null,3,s):n(null,null,2,e.getMergeableContentHashes())}),(e=>i=e),(()=>i=void 0),r,2,{startSync:async e=>await(await f.startAutoLoad(e)).startAutoSave(),stopSync:()=>f.stopAutoLoad().stopAutoSave(),destroy:()=>(a(),f.stopSync()),getSynchronizerStats:()=>({}),...l});return f},mt=je((e=>{const n=e.createStore,s=n(),a=n(),o=Se(),{addListener:r,callListeners:l,delListener:u}=a,[g,f,b,S,p,,,I,,R,M,V,m,D]=We(e,(()=>!0),O,r,l),E=(e,t,...n)=>B(n,(n=>Pe(Ve(Ve(o,t,Se),e,Oe),n))),H=e=>{k(Ie(o,e),(e=>{Re(e,((e,t)=>Te(t,(t=>e.delListener(t))))),ve(e)})),B([a,s],(t=>t.delTable(e)))},J=(e,t,n)=>E(t,e,t.addStartTransactionListener(n.startTransaction),t.addDidFinishTransactionListener((()=>n.finishTransaction()))),x={setQueryDefinition:(n,o,r)=>{I(n,o),H(n);const l=[],i=[[null,[o,null,null,[],Se()]]],c=[],d=[],u=[];r({select:(e,n)=>{const s=F(e)?[N(l)+t,e]:[A(n)?e:n,t=>t(e,n)];return X(l,s),{as:e=>s[0]=e}},join:(e,t,n)=>{const s=A(n)||F(t)?null:t,a=A(s)?t:n,o=[e,[e,s,F(a)?a:e=>e(a),[],Se()]];return X(i,o),{as:e=>o[0]=e}},where:(e,t,n)=>X(c,F(e)?e:A(n)?n=>n(e)===t:s=>s(e,t)===n),group:(e,t,n,s,a)=>{const o=[e,[e,F(t)?[t,n,s,a]:Ie(Xe,t)??[(e,t)=>t]]];return X(d,o),{as:e=>o[0]=e}},having:(e,t)=>X(u,F(e)?e:n=>n(e)===t)});const g=Se(l);if(Le(g))return x;const h=Se(i);Re(h,((e,[,t])=>k(Ie(h,t),(({3:t})=>A(e)?0:X(t,e)))));const f=Se(d);let b=s;if(Le(f)&&K(u))b=a;else{J(n,b,a);const e=Se();Re(f,((t,[n,s])=>Pe(Ve(e,n,Oe),[t,s])));const t=Oe();Re(g,(n=>Ce(e,n)?0:Pe(t,n)));const s=Se(),o=(t,s,o,r)=>k(t,(([l,i,c,d])=>{Re(s,((t,[n])=>{const s=Ve(l,t,Se),a=Ie(s,o),i=r?void 0:n;if(a!==i){const n=Oe([[a,i]]),r=be(s);Me(s,o,i),Te(Ie(e,t),(([e,t])=>{const a=Ye(d[e],r,s,n,t);d[e]=A(Fe(a))?null:a}))}})),Le(i)||!W(u,(e=>e((e=>d[e]))))?a.delRow(n,c):A(c)?t[2]=a.addRow(n,d):a.setRow(n,c,d)}));E(b,n,b.addRowListener(n,null,((a,r,l,i)=>{const c=[],d=[],u=Se(),g=b.hasRow(n,l);let h=!g;Te(t,(e=>{const[t,s,a]=i(n,l,e);X(c,s),X(d,a),h||=t})),Re(e,(e=>{const[t,,s]=i(n,l,e);(h||t)&&Me(u,e,[s])})),h&&o(xe(s,c,void 0,(([,e])=>(ye(e,l),Le(e)))),u,l,1),g&&o(xe(s,d,(()=>{const e={};return Te(t,(t=>e[t]=b.getCell(n,l,t))),[Se(),Oe(),void 0,e]}),(([,e])=>{Pe(e,l)})),u,l)})))}J(n,e,b);const C=(t,s,a,r)=>{const l=t=>e.getCell(s,a,t);B(r,(s=>{const[a,,o,r,i]=Ie(h,s),c=o?.(l,t),[d,u]=Ie(i,t)??[];c!=d&&(A(u)||D(n,u),Me(i,t,A(c)?null:[c,...m(n,1,e.addRowListener(a,c,(()=>C(t,a,c,r))))]))})),(t=>{const s=(n,s)=>e.getCell(...A(s)?[o,t,n]:n===o?[o,t,s]:[Ie(h,n)?.[0],Ie(Ie(h,n)?.[4],t)?.[0],s]);b.transaction((()=>W(c,(e=>e(s)))?Re(g,((e,a)=>ze(b,n,t,e,a(s,t)))):b.delRow(n,t)))})(t)},{3:L}=Ie(h,null);return b.transaction((()=>m(n,1,e.addRowListener(o,null,((t,s,a)=>{e.hasRow(o,a)?C(a,o,a,L):(b.delRow(n,a),Te(h,(({4:e})=>k(Ie(e,a),(([,t])=>{D(n,t),Me(e,a)})))))}))))),x},delQueryDefinition:e=>(H(e),R(e),x),getStore:g,getQueryIds:f,forEachQuery:b,hasQuery:S,getTableId:p,addQueryIdsListener:e=>M((()=>e(x))),delListener:e=>(u(e),x),destroy:V,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:n,...s}=a.getListenerStats();return s}};return ue({[h]:[1,1],[h+y]:[0,1],[L]:[0,1],[w]:[0,1],[v]:[0,5],[C]:[1,2],[y]:[0,2],[T]:[1,3]},(([e,t],n)=>{B(e?["get","has","forEach"]:["get"],(e=>x[e+c+n]=(...t)=>a[e+n](...t))),x[d+c+n+i]=(...e)=>a[d+n+i](...z(e,0,t),((n,...s)=>e[t](x,...s)),!0)})),re(x)})),Dt=je((e=>{const n=Se(),s=Se(),a=Se(),o=Se(),[r,l,i]=qe((()=>S)),[c,d,u,g,h,f,,,b,C,L,w]=We(e,(()=>[Se(),Se(),Se(),Se()]),(e=>A(e)?void 0:e+t),r,l),v=(e,t,n)=>k(f(e),(([s,,a])=>{if(!Ce(a,t)){const o=Oe();if(h(e)!=y(e))Pe(o,t);else{let e=t;for(;!A(e)&&!Ce(o,e);)Pe(o,e),e=Ie(s,e)}if(n)return o;Me(a,t,o)}return Ie(a,t)})),T=(e,t)=>k(f(e),(([,,e])=>Me(e,t))),y=e=>Ie(n,e),S={setRelationshipDefinition:(e,t,r,i)=>(Me(n,e,r),b(e,t,((t,n)=>{const r=Oe(),i=Oe(),c=Oe(),[d,u]=f(e);Te(n,(([t,n],s)=>{A(t)||(Pe(i,t),k(Ie(u,t),(e=>{ye(e,s),Le(e)&&Me(u,t)}))),A(n)||(Pe(i,n),Ce(u,n)||Me(u,n,Oe()),Pe(Ie(u,n),s)),Pe(r,s),Me(d,s,n),Re(Ie(o,e),(t=>{Ce(v(e,t),s)&&Pe(c,t)}))})),t(),Te(r,(t=>l(s,[e,t]))),Te(i,(t=>l(a,[e,t]))),Te(c,(t=>{T(e,t),l(o,[e,t])}))}),$e(i)),S),delRelationshipDefinition:e=>(Me(n,e),C(e),S),getStore:c,getRelationshipIds:d,forEachRelationship:t=>u((n=>t(n,(t=>e.forEachRow(h(n),t))))),hasRelationship:g,getLocalTableId:h,getRemoteTableId:y,getRemoteRowId:(e,t)=>Ie(f(e)?.[0],t),getLocalRowIds:(e,t)=>we(Ie(f(e)?.[1],t)),getLinkedRowIds:(e,t)=>A(f(e))?[t]:we(v(e,t,!0)),addRelationshipIdsListener:L,addRemoteRowIdListener:(e,t,n)=>r(n,s,[e,t]),addLocalRowIdsListener:(e,t,n)=>r(n,a,[e,t]),addLinkedRowIdsListener:(e,t,n)=>(v(e,t),r(n,o,[e,t])),delListener:e=>(T(...i(e)??[]),S),destroy:w,getListenerStats:()=>({})};return re(S)})),Et=e=>[e,e],Ht=()=>[Se(),Se()],At=e=>[...e],kt=([e,t])=>e===t,Jt=e=>JSON.stringify(e,((e,t)=>t instanceof Map?ee.fromEntries([...t]):t)),xt=JSON.parse,Ft=(e,t,n)=>Me(e,t,Ie(e,t)==-n?void 0:n),Qt=()=>{let e,t,n=!1,s=!1,o=0,c=[];const g=Se(),v=Se(),M=Se(),V=Se(),m=Se(),D=Se(),E=Se(),H=Se(),x=Se(),Q=Se(),N=Se(),O=Se(),W=Se(),j=Se(),G=Oe(),K=Se(),U=Se(),Y=Se(),Z=Se(),ee=Ht(),te=Ht(),ne=Ht(),se=Ht(),ae=Ht(),oe=Ht(),le=Ht(),de=Ht(),he=Ht(),we=Ht(),xe=Ht(),Qe=Ht(),We=Ht(),$e=Ht(),je=Ht(),_e=Ht(),Ge=Ht(),Ue=Ht(),Xe=Ht(),Ye=Ht(),Ze=Ht(),et=Ht(),tt=Se(),nt=Ht(),[st,at,ot,rt]=qe((()=>xn)),lt=e=>{if(!fe(e,((e,t)=>P([r,l],t))))return!1;const t=e[r];return!(!J(t)&&t!=a||(Fe(e[l])!=t&&ce(e,l),0))},it=(t,n)=>(!e||Ce(N,n)||Bt(n))&&fe(t,((e,t)=>ct(n,t,e)),(()=>Bt(n))),ct=(e,t,n,s)=>fe(s?n:ht(n,e,t),((s,a)=>k(dt(e,t,a,s),(e=>(n[a]=e,!0)),(()=>!1))),(()=>Bt(e,t))),dt=(t,n,s,a)=>e?k(Ie(Ie(N,t),s),(e=>Fe(a)!=e[r]?Bt(t,n,s,a,e[l]):a),(()=>Bt(t,n,s,a))):A(Fe(a))?Bt(t,n,s,a):a,ut=(e,t)=>fe(t?e:ft(e),((t,n)=>k(gt(n,t),(t=>(e[n]=t,!0)),(()=>!1))),(()=>qt())),gt=(e,n)=>t?k(Ie(W,e),(t=>Fe(n)!=t[r]?qt(e,n,t[l]):n),(()=>qt(e,n))):A(Fe(n))?qt(e,n):n,ht=(e,t,n)=>(k(Ie(O,t),(([s,a])=>{Te(s,((t,n)=>{ie(e,n)||(e[n]=t)})),Te(a,(s=>{ie(e,s)||Bt(t,n,s)}))})),e),ft=e=>(t&&(Te(j,((t,n)=>{ie(e,n)||(e[n]=t)})),Te(G,(t=>{ie(e,t)||qt(t)}))),e),bt=e=>me(N,e,((e,t,n)=>{const s=Se(),a=Oe();me(Ve(N,t,Se),n,((e,t,n)=>{Me(e,t,n),k(n[l],(e=>Me(s,t,e)),(()=>Pe(a,t)))})),Me(O,t,[s,a])}),((e,t)=>{Me(N,t),Me(O,t)})),Ct=e=>me(W,e,((e,t,n)=>{Me(W,t,n),k(n[l],(e=>Me(j,t,e)),(()=>Pe(G,t)))}),((e,t)=>{Me(W,t),Me(j,t),ye(G,t)})),Lt=e=>ge(e)?Mn():yn(e),wt=e=>me(Y,e,((e,t,n)=>vt(t,n)),((e,t)=>mt(t))),vt=(e,t)=>me(Ve(Y,e,(()=>(Ot(e,1),Me(K,e,Be()),Me(U,e,Se()),Se()))),t,((t,n,s)=>Tt(e,t,n,s)),((t,n)=>Dt(e,t,n))),Tt=(e,t,n,s,a)=>me(Ve(t,n,(()=>(Pt(e,n,1),Se()))),s,((t,s,a)=>yt(e,n,t,s,a)),((s,o)=>zt(e,t,n,s,o,a))),yt=(e,t,n,s,a)=>{Ce(n,s)||Wt(e,t,s,1);const o=Ie(n,s);a!==o&&($t(e,t,s,o,a),Me(n,s,a))},St=(e,t,n,s,a)=>k(Ie(t,n),(t=>yt(e,n,t,s,a)),(()=>Tt(e,t,n,ht({[s]:a},e,n)))),pt=e=>ge(e)?Dn():Sn(e),It=e=>me(Z,e,((e,t,n)=>Rt(t,n)),((e,t)=>Nt(t))),Rt=(e,t)=>{Ce(Z,e)||jt(e,1);const n=Ie(Z,e);t!==n&&(_t(e,n,t),Me(Z,e,t))},Mt=(e,t)=>{const[n]=Ie(K,e),s=n(t);return Ce(Ie(Y,e),s)?Mt(e,t):s},Vt=e=>Ie(Y,e)??vt(e,{}),mt=e=>vt(e,{}),Dt=(e,t,n)=>{const[,s]=Ie(K,e);s(n),Tt(e,t,n,{},!0)},zt=(e,t,n,s,a,o)=>{const r=Ie(Ie(O,e)?.[0],a);if(!A(r)&&!o)return yt(e,n,s,a,r);const l=t=>{$t(e,n,t,Ie(s,t)),Wt(e,n,t,-1),Me(s,t)};A(r)?l(a):Re(s,l),Le(s)&&(Pt(e,n,-1),Le(Me(t,n))&&(Ot(e,-1),Me(Y,e),Me(K,e),Me(U,e)))},Nt=e=>{const t=Ie(j,e);if(!A(t))return Rt(e,t);_t(e,Ie(Z,e)),jt(e,-1),Me(Z,e)},Ot=(e,t)=>Ft(g,e,t),Pt=(e,t,n)=>Ft(Ve(V,e,Se),t,n)&&Me(M,e,Ve(M,e,(()=>0))+n),Wt=(e,t,n,s)=>{const a=Ie(U,e),o=Ie(a,n)??0;(0==o&&1==s||1==o&&-1==s)&&Ft(Ve(v,e,Se),n,s),Me(a,n,o!=-s?o+s:null),Ft(Ve(Ve(m,e,Se),t,Se),n,s)},$t=(e,t,n,s,a)=>{Ve(Ve(Ve(D,e,Se),t,Se),n,(()=>[s,0]))[1]=a,c[3]?.(e,t,n,a)},jt=(e,t)=>Ft(E,e,t),_t=(e,t,n)=>{Ve(H,e,(()=>[t,0]))[1]=n,c[4]?.(e,n)},Bt=(e,t,n,s,a)=>(X(Ve(Ve(Ve(x,e,Se),t,Se),n,(()=>[])),s),a),qt=(e,t,n)=>(X(Ve(Q,e,(()=>[])),t),n),Gt=(e,t,n)=>k(Ie(Ie(Ie(D,e),t),n),(([e,t])=>[!0,e,t]),(()=>[!1,...Et(dn(e,t,n))])),Kt=e=>k(Ie(H,e),(([e,t])=>[!0,e,t]),(()=>[!1,...Et(hn(e))])),Ut=e=>Le(x)||Le(_e[e])?0:Te(e?Je(x):x,((t,n)=>Te(t,((t,s)=>Te(t,((t,a)=>at(_e[e],[n,s,a],t))))))),Xt=e=>Le(Q)||Le(Ge[e])?0:Te(e?Ae(Q):Q,((t,n)=>at(Ge[e],[n],t))),Yt=(e,t,n,s)=>{if(!Le(e))return at(t,s,(()=>De(e))),Re(e,((e,t)=>at(n,[...s??[],e],1==t))),1},Zt=e=>{const t=fn();t!=n&&at(ee[e],void 0,t);const s=Le(we[e]),a=Le(We[e])&&Le($e[e])&&Le(he[e])&&Le(xe[e])&&Le(oe[e])&&Le(le[e])&&Le(de[e])&&s&&Le(ne[e])&&Le(se[e]),o=Le(je[e])&&Le(Qe[e])&&Le(ae[e])&&Le(te[e]);if(!a||!o){const t=e?[Ae(g),ke(v),Ae(M),ke(V),Je(m),Je(D)]:[g,v,M,V,m,D];if(!a){Yt(t[0],ne[e],se[e]),Te(t[1],((t,n)=>Yt(t,oe[e],le[e],[n]))),Te(t[2],((t,n)=>{0!=t&&at(de[e],[n],on(n))}));const n=Oe();Te(t[3],((t,a)=>{Yt(t,he[e],xe[e],[a])&&!s&&(at(we[e],[a,null]),Pe(n,a))})),s||Te(t[5],((t,s)=>{if(!Ce(n,s)){const n=Oe();Te(t,(e=>Te(e,(([t,s],a)=>s!==t?Pe(n,a):ye(e,a))))),Te(n,(t=>at(we[e],[s,t])))}})),Te(t[4],((t,n)=>Te(t,((t,s)=>Yt(t,We[e],$e[e],[n,s])))))}if(!o){let n;Te(t[5],((t,s)=>{let a;Te(t,((t,o)=>{let r;Te(t,(([t,l],i)=>{l!==t&&(at(je[e],[s,o,i],l,t,Gt),n=a=r=1)})),r&&at(Qe[e],[s,o],Gt)})),a&&at(ae[e],[s],Gt)})),n&&at(te[e],void 0,Gt)}}},en=e=>{const t=vn();t!=s&&at(Ue[e],void 0,t);const n=Le(Ye[e])&&Le(Ze[e]),a=Le(et[e])&&Le(Xe[e]);if(!n||!a){const t=e?[Ae(E),Ae(H)]:[E,H];if(n||Yt(t[0],Ye[e],Ze[e]),!a){let n;Te(t[1],(([t,s],a)=>{s!==t&&(at(et[e],[a],s,t,Kt),n=1)})),n&&at(Xe[e],void 0,Kt)}}},tn=(e,...t)=>(An((()=>e(...q(t,R)))),xn),nn=()=>He(Y),sn=()=>pe(Y),an=e=>pe(Ie(U,R(e))),on=e=>be(Ie(Y,R(e))),rn=e=>pe(Ie(Y,R(e))),ln=(e,t,n,s=0,a)=>{return q(z(_((o=Ie(Y,R(e)),r=(e,n)=>[A(t)?n:Ie(e,R(t)),n],q([...o?.entries()??[]],(([e,t])=>r(t,e)))),(([e],[t])=>Ke(e,t)*(n?-1:1))),s,A(a)?a:s+a),(([,e])=>e));var o,r},cn=(e,t)=>pe(Ie(Ie(Y,R(e)),R(t))),dn=(e,t,n)=>Ie(Ie(Ie(Y,R(e)),R(t)),R(n)),un=()=>De(Z),gn=()=>pe(Z),hn=e=>Ie(Z,R(e)),fn=()=>!Le(Y),bn=e=>Ce(Y,R(e)),Cn=(e,t)=>Ce(Ie(U,R(e)),R(t)),Ln=(e,t)=>Ce(Ie(Y,R(e)),R(t)),wn=(e,t,n)=>Ce(Ie(Ie(Y,R(e)),R(t)),R(n)),vn=()=>!Le(Z),Tn=e=>Ce(Z,R(e)),yn=e=>tn((()=>(e=>fe(e,it,Bt))(e)?wt(e):0)),Sn=e=>tn((()=>ut(e)?It(e):0)),pn=e=>{try{Lt(xt(e))}catch{}return xn},In=t=>tn((()=>{if((e=fe(t,(e=>fe(e,lt))))&&(bt(t),!Le(Y))){const e=nn();Mn(),yn(e)}})),Rn=e=>tn((()=>{if(t=(e=>fe(e,lt))(e)){const n=un();Hn(),Dn(),t=!0,Ct(e),Sn(n)}})),Mn=()=>tn((()=>wt({}))),Vn=e=>tn((e=>Ce(Y,e)?mt(e):0),e),mn=(e,t)=>tn(((e,t)=>k(Ie(Y,e),(n=>Ce(n,t)?Dt(e,n,t):0))),e,t),Dn=()=>tn((()=>It({}))),En=()=>tn((()=>{bt({}),e=!1})),Hn=()=>tn((()=>{Ct({}),t=!1})),An=(e,t)=>{if(-1!=o){kn();const n=e();return Jn(t),n}},kn=()=>(-1!=o&&o++,1==o&&(c[0]?.(),at(tt)),xn),Jn=e=>(o>0&&(o--,0==o&&(o=1,Ut(1),Le(D)||Zt(1),Xt(1),Le(H)||en(1),e?.(xn)&&(Te(D,((e,t)=>Te(e,((e,n)=>Te(e,(([e],s)=>ze(xn,t,n,s,e))))))),ve(D),Te(H,(([e],t)=>Ne(xn,t,e))),ve(H)),at(nt[0],void 0),o=-1,Ut(0),Le(D)||Zt(0),Xt(0),Le(H)||en(0),c[1]?.(),at(nt[1],void 0),c[2]?.(),o=0,n=fn(),s=vn(),B([g,v,M,V,m,D,x,E,H,Q],ve))),xn),xn={getContent:()=>[nn(),un()],getTables:nn,getTableIds:sn,getTable:e=>Ee(Ie(Y,R(e))),getTableCellIds:an,getRowCount:on,getRowIds:rn,getSortedRowIds:ln,getRow:(e,t)=>De(Ie(Ie(Y,R(e)),R(t))),getCellIds:cn,getCell:dn,getValues:un,getValueIds:gn,getValue:hn,hasTables:fn,hasTable:bn,hasTableCell:Cn,hasRow:Ln,hasCell:wn,hasValues:vn,hasValue:Tn,getTablesJson:()=>Jt(Y),getValuesJson:()=>Jt(Z),getJson:()=>Jt([Y,Z]),getTablesSchemaJson:()=>Jt(N),getValuesSchemaJson:()=>Jt(W),getSchemaJson:()=>Jt([N,W]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:([e,t])=>tn((()=>{(ge(e)?Mn:yn)(e),(ge(t)?Dn:Sn)(t)})),setTables:yn,setTable:(e,t)=>tn((e=>it(t,e)?vt(e,t):0),e),setRow:(e,t,n)=>tn(((e,t)=>ct(e,t,n)?Tt(e,Vt(e),t,n):0),e,t),addRow:(e,t,n=!0)=>An((()=>{let s;return ct(e,s,t)&&(e=R(e),Tt(e,Vt(e),s=Mt(e,n?1:0),t)),s})),setPartialRow:(e,t,n)=>tn(((e,t)=>{if(ct(e,t,n,1)){const s=Vt(e);ue(n,((n,a)=>St(e,s,t,a,n)))}}),e,t),setCell:(e,t,n,s)=>tn(((e,t,n)=>k(dt(e,t,n,F(s)?s(dn(e,t,n)):s),(s=>St(e,Vt(e),t,n,s)))),e,t,n),setValues:Sn,setPartialValues:e=>tn((()=>ut(e,1)?ue(e,((e,t)=>Rt(t,e))):0)),setValue:(e,t)=>tn((e=>k(gt(e,F(t)?t(hn(e)):t),(t=>Rt(e,t)))),e),applyChanges:e=>tn((()=>{ue(e[0],((e,t)=>A(e)?Vn(t):ue(e,((e,n)=>A(e)?mn(t,n):ue(e,((e,s)=>ze(xn,t,n,s,e))))))),ue(e[1],((e,t)=>Ne(xn,t,e)))})),setTablesJson:pn,setValuesJson:e=>{try{pt(xt(e))}catch{}return xn},setJson:e=>tn((()=>{try{const[t,n]=xt(e);Lt(t),pt(n)}catch{pn(e)}})),setTablesSchema:In,setValuesSchema:Rn,setSchema:(e,t)=>tn((()=>{In(e),Rn(t)})),delTables:Mn,delTable:Vn,delRow:mn,delCell:(e,t,n,s)=>tn(((e,t,n)=>k(Ie(Y,e),(a=>k(Ie(a,t),(o=>Ce(o,n)?zt(e,a,t,o,n,s):0))))),e,t,n),delValues:Dn,delValue:e=>tn((e=>Ce(Z,e)?Nt(e):0),e),delTablesSchema:En,delValuesSchema:Hn,delSchema:()=>tn((()=>{En(),Hn()})),transaction:An,startTransaction:kn,getTransactionChanges:()=>[De(D,((e,t)=>-1===Ie(g,t)?void 0:De(e,((e,n)=>-1===Ie(Ie(V,t),n)?void 0:De(e,(([,e])=>e),(e=>kt(e)))),Le,ge)),Le,ge),De(H,(([,e])=>e),(e=>kt(e))),1],getTransactionLog:()=>[!Le(D),!Le(H),He(D,At,kt),He(x),De(H,At,kt),De(Q),De(g),Ee(V),He(m),De(E)],finishTransaction:Jn,forEachTable:e=>Te(Y,((t,n)=>e(n,(e=>Te(t,((t,n)=>e(n,(e=>Re(t,e))))))))),forEachTableCell:(e,t)=>Re(Ie(U,R(e)),t),forEachRow:(e,t)=>Te(Ie(Y,R(e)),((e,n)=>t(n,(t=>Re(e,t))))),forEachCell:(e,t,n)=>Re(Ie(Ie(Y,R(e)),R(t)),n),forEachValue:e=>Re(Z,e),addSortedRowIdsListener:(e,t,n,s,a,o,r)=>{let l=ln(e,t,n,s,a);return st((()=>{const r=ln(e,t,n,s,a);$(r,l)||(l=r,o(xn,e,t,n,s,a,l))}),we[r?1:0],[e,t],[sn])},addStartTransactionListener:e=>st(e,tt),addWillFinishTransactionListener:e=>st(e,nt[0]),addDidFinishTransactionListener:e=>st(e,nt[1]),callListener:e=>(rt(e),xn),delListener:e=>(ot(e),xn),getListenerStats:()=>({}),createStore:Qt,addListener:st,callListeners:at,setInternalListeners:(e,t,n,s,a)=>c=[e,t,n,s,a]};return ue({[u+f]:[0,ee,[],()=>[fn()]],[f]:[0,te],[b]:[0,ne],[u+h]:[1,se,[sn],e=>[bn(...e)]],[h]:[1,ae,[sn]],[h+y]:[1,oe,[sn]],[u+h+T]:[2,le,[sn,an],e=>[Cn(...e)]],[L]:[1,de,[sn]],[w]:[1,he,[sn]],[u+C]:[2,xe,[sn,rn],e=>[Ln(...e)]],[C]:[2,Qe,[sn,rn]],[y]:[2,We,[sn,rn]],[u+T]:[3,$e,[sn,rn,cn],e=>[wn(...e)]],[T]:[3,je,[sn,rn,cn],e=>Et(dn(...e))],InvalidCell:[3,_e],[u+p]:[0,Ue,[],()=>[vn()]],[p]:[0,Xe],[I]:[0,Ye],[u+S]:[1,Ze,[gn],e=>[Tn(...e)]],[S]:[1,et,[gn],e=>Et(hn(e[0]))],InvalidValue:[1,Ge]},(([e,t,n,s],a)=>{xn[d+a+i]=(...a)=>st(a[e],t[a[e+1]?1:0],e>0?z(a,0,e):void 0,n,s)})),re(xn)},zt={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},Nt=(e=t)=>[ft(e),ft(e)],Ot=e=>{let n=1,s=Nt(),a=0;const o=Se(),r=Oe(),[l,i]=Mt(e),c=Qt(),d=e=>{const t=n;return n=0,e(),n=t,b},u=(e,n=0)=>{const a={},o={},[[r,l=t,c=0],d]=e,[u,h]=s,[f,b,C]=u;let L=n?c:C,w=l;de(r,(([e,s=t,o=0],r)=>{const l=Ve(f,r,ft),[i,c,d]=l;let u=n?o:d,h=s;de(e,((e,t)=>{const[s,o,l]=g(e,Ve(i,t,ft),he(he(a,r,le),t,le),n);u^=n?0:(o?ct(t,o):0)^ct(t,l),h=ut(h,s)})),u^=n?0:dt(c,s),gt(l,u,s),L^=n?0:(d?ct(r,d):0)^ct(r,l[2]),w=ut(w,h)})),L^=n?0:dt(b,l),gt(u,L,l);const[v]=g(d,h,o,n);return i(ut(w,v)),[a,o,1]},g=(e,n,s,a)=>{const[o,r=t,l=0]=e,[i,c,d]=n;let u=r,g=a?l:d;return de(o,(([e,n,o=0],r)=>{const l=Ve(i,r,(()=>[void 0,t,0])),[,c,d]=l;(!c||n>c)&&(gt(l,a?o:at(Jt(e??null)+":"+n),n),l[0]=e,s[r]=e,g^=a?0:ct(r,d)^ct(r,l[2]),u=ut(u,n))})),g^=a?0:dt(c,r),gt(n,g,r),[u,d,n[2]]},h=()=>[bt(s[0],(e=>bt(e,(e=>bt(e))))),bt(s[1])],f=e=>d((()=>c.applyChanges(u(e)))),b={getId:()=>e,getMergeableContent:h,getMergeableContentHashes:()=>[s[0][2],s[1][2]],getMergeableTableHashes:()=>De(s[0][0],it),getMergeableTableDiff:e=>{const t=ht(s[0][1]),n={};return Re(s[0][0],((s,[a,o,r])=>ie(e,s)?r!=e[s]?n[s]=r:0:t[0][s]=Ct([a,o],(e=>Ct(e))))),[t,n]},getMergeableRowHashes:e=>{const t={};return de(e,((e,n)=>k(Ie(s[0][0],n),(([s,,a])=>a!=e?Re(s,((e,[,,s])=>he(t,n,le)[e]=s)):0)))),t},getMergeableRowDiff:e=>{const t=ht(s[0][1]),n={};return de(e,((e,a)=>Re(Ie(s[0][0],a)?.[0],((s,[o,r,l])=>ie(e,s)?l!==e[s]?he(n,a,le)[s]=l:0:he(t[0],a,ht)[0][s]=Ct([o,r]))))),[t,n]},getMergeableCellHashes:e=>{const t={};return de(e,((e,n)=>k(Ie(s[0][0],n),(([s])=>de(e,((e,a)=>k(Ie(s,a),(([s,,o])=>o!==e?Re(s,((e,[,,s])=>he(he(t,n,le),a,le)[e]=s)):0)))))))),t},getMergeableCellDiff:e=>{const[[t,n]]=s,a={};return de(e,((e,n)=>de(e,((e,s)=>k(Ie(t,n),(([t,o])=>k(Ie(t,s),(([t,r])=>Re(t,((t,[l,i,c])=>c!==e[t]?he(he(a,n,(()=>ht(o)))[0],s,(()=>ht(r)))[0][t]=[l,i]:0)))))))))),lt(a,n)},getMergeableValuesHashes:()=>De(s[1][0],it),getMergeableValueDiff:e=>{const[,[t,n]]=s,a=De(t,rt,(([,,t],n)=>t==e?.[n]));return lt(a,n)},setMergeableContent:e=>d((()=>(e=>Q(e)&&2==N(e)&&Lt(e[0],(e=>fe(e,(e=>Lt(e,(e=>fe(e,(e=>Lt(e,(e=>fe(e,(e=>Lt(e,Qe)),void 0,1)))),void 0,1)))),void 0,1)))&&Lt(e[1],(e=>fe(e,(e=>Lt(e,Qe)),void 0,1))))(e)?c.transaction((()=>{c.delTables().delValues(),s=Nt(),c.applyChanges(u(e,1))})):0)),setDefaultContent:e=>(c.transaction((()=>{a=1,c.setContent(e),a=0})),b),getTransactionMergeableChanges:()=>{const[[e,t],[n,a]]=s,l={};Te(o,((t,n)=>k(Ie(e,n),(([e,s])=>{const a={};Te(t,((t,n)=>k(Ie(e,n),(([e,s])=>{const o={};Te(t,(t=>{k(Ie(e,t),(([e,n])=>o[t]=lt(e,n)))})),a[n]=lt(o,s)})))),l[n]=lt(a,s)}))));const i={};return Te(r,(e=>k(Ie(n,e),(([t,n])=>i[e]=lt(t,n))))),[lt(l,t),lt(i,a),1]},applyMergeableChanges:f,merge:e=>{const t=h(),n=e.getMergeableContent();return e.applyMergeableChanges(t),f(n)}};return c.setInternalListeners((()=>{}),(()=>{}),(()=>{ve(o),ve(r)}),((e,s,r,i)=>{Pe(Ve(Ve(o,e,Se),s,Oe),r),n&&u([[{[e]:[{[s]:[{[r]:[i,a?t:l()]}]}]}],[{}],1])}),((e,s)=>{Pe(r,e),n&&u([[{}],[{[e]:[s,a?t:l()]}],1])})),ue(c,((e,t)=>b[t]=M(t,"set")||M(t,"del")||M(t,"apply")||V(t,"Transaction")||"callListener"==t?(...t)=>(e(...t),b):M(t,"add")&&V(t,"Listener")?(...n)=>{const s=zt[z(t,3,-8)]??0,a=n[s];return n[s]=(e,...t)=>a(b,...t),e(...n)}:e)),re(b)};export{Ge as createCheckpoints,nt as createCustomPersister,Vt as createCustomSynchronizer,Ue as createIndexes,Ot as createMergeableStore,Ze as createMetrics,mt as createQueries,Dt as createRelationships,Qt as createStore,Ke as defaultSorter};
|
|
1
|
+
const e=e=>typeof e,t="",n=e(t),s=e(!0),a=e(0),o=e(e),r="type",l="default",i="Listener",c="Result",d="add",u="Has",g="Ids",h="Table",f=h+"s",b=h+g,w="Row",L=w+"Count",C=w+g,v="Sorted"+w+g,y="Cell",T=y+g,p="Value",S=p+"s",R=p+g,I=e=>t+e,M=(e,t)=>e.startsWith(t),V=(e,t)=>e.endsWith(t),m=Promise,D=Math.max,E=Math.min,H=isFinite,A=e=>null==e,k=(e,t,n)=>A(e)?n?.():t(e),J=e=>e==n||e==s,x=t=>e(t)==n,F=t=>e(t)==o,Q=e=>Array.isArray(e),z=(e,t,n)=>e.slice(t,n),N=e=>e.length,O=()=>{},P=(e,t)=>e.includes(t),W=(e,t)=>e.every(t),j=(e,t)=>N(e)===N(t)&&W(e,((e,n)=>t[n]===e)),$=(e,t)=>W(e,((n,s)=>0==s||t(e[s-1],n)<=0)),_=(e,t)=>e.sort(t),B=(e,t)=>e.forEach(t),U=(e,t)=>e.map(t),q=e=>K(e,((e,t)=>e+t),0),G=e=>0==N(e),K=(e,t,n)=>e.reduce(t,n),X=(e,...t)=>e.push(...t),Y=e=>e.pop(),Z=e=>e.shift(),ee=Object,te=e=>ee.getPrototypeOf(e),ne=ee.entries,se=ee.isFrozen,ae=e=>!A(e)&&k(te(e),(e=>e==ee.prototype||A(te(e))),(()=>!0)),oe=ee.keys,re=ee.freeze,le=(e=[])=>ee.fromEntries(e),ie=(e,t)=>t in e,ce=(e,t)=>(delete e[t],e),de=(e,t)=>B(ne(e),(([e,n])=>t(n,e))),ue=(e,t)=>U(ne(e),(([e,n])=>t(n,e))),ge=e=>ae(e)&&0==(e=>N(oe(e)))(e),he=(e,t,n)=>(ie(e,t)||(e[t]=n()),e[t]),fe=(e,t,n,s=0)=>A(e)||!ae(e)||!s&&ge(e)||se(e)?(n?.(),!1):(ue(e,((n,s)=>{t(n,s)||ce(e,s)})),!!s||!ge(e)),be=e=>e?.size??0,we=(e,t)=>e?.has(t)??!1,Le=e=>A(e)||0==be(e),Ce=e=>[...e?.values()??[]],ve=e=>e.clear(),ye=(e,t)=>e?.forEach(t),Te=(e,t)=>e?.delete(t),pe=e=>new Map(e),Se=e=>[...e?.keys()??[]],Re=(e,t)=>e?.get(t),Ie=(e,t)=>ye(e,((e,n)=>t(n,e))),Me=(e,t,n)=>A(n)?(Te(e,t),e):e?.set(t,n),Ve=(e,t,n,s)=>(we(e,t)?s?.(Re(e,t)):Me(e,t,n()),Re(e,t)),me=(e,t,n,s=Me)=>(ue(t,((t,s)=>n(e,s,t))),Ie(e,(n=>ie(t,n)?0:s(e,n))),e),De=(e,t,n,s)=>{const a={};return ye(e,((e,o)=>{if(!n?.(e,o)){const n=t?t(e,o):e;!s?.(n)&&(a[o]=n)}})),a},Ee=(e,t,n)=>De(e,(e=>De(e,t,n)),Le,ge),He=(e,t,n)=>De(e,(e=>Ee(e,t,n)),Le,ge),Ae=(e,t)=>{const n=pe();return ye(e,((e,s)=>n.set(s,t?.(e)??e))),n},ke=e=>Ae(e,Ae),Je=e=>Ae(e,ke),xe=(e,t,n,s,a=0)=>k((n?Ve:Re)(e,t[a],a>N(t)-2?n:pe),(o=>{if(a>N(t)-2)return s?.(o)&&Me(e,t[a]),o;const r=xe(o,t,n,s,a+1);return Le(o)&&Me(e,t[a]),r})),Fe=t=>{const n=e(t);return J(n)||n==a&&H(t)?n:void 0},Qe=e=>A(e)||!A(Fe(e)),ze=(e,t,n,s,a)=>A(a)?e.delCell(t,n,s,!0):e.setCell(t,n,s,a),Ne=(e,t,n)=>A(n)?e.delValue(t):e.setValue(t,n),Oe=e=>new Set(Q(e)||A(e)?e:[e]),Pe=(e,t)=>e?.add(t),We=(e,t,n,s,a)=>{const o=e.hasRow,r=pe(),l=pe(),i=pe(),c=pe(),d=pe(),u=pe(),g=(t,n,...s)=>{const a=Ve(u,t,Oe);return B(s,(t=>Pe(a,t)&&n&&e.callListener(t))),s},h=(t,...n)=>k(Re(u,t),(s=>{B(G(n)?Ce(s):n,(t=>{e.delListener(t),Te(s,t)})),Le(s)&&Me(u,t)})),f=(e,n)=>{Me(r,e,n),we(l,e)||(Me(l,e,t()),Me(c,e,pe()),Me(d,e,pe()),a(i))},b=e=>{Me(r,e),Me(l,e),Me(c,e),Me(d,e),h(e),a(i)};return[()=>e,()=>Se(r),e=>Ie(l,e),e=>we(l,e),e=>Re(r,e),e=>Re(l,e),(e,t)=>Me(l,e,t),f,(t,s,a,r,l)=>{f(t,s);const i=pe(),u=pe(),b=Re(c,t),w=Re(d,t),L=t=>{const a=n=>e.getCell(s,t,n),c=Re(b,t),d=o(s,t)?n(r(a,t)):void 0;if(c===d||Q(c)&&Q(d)&&j(c,d)||Me(i,t,[c,d]),!A(l)){const e=Re(w,t),n=o(s,t)?l(a,t):void 0;e!=n&&Me(u,t,n)}},C=e=>{a((()=>{ye(i,(([,e],t)=>Me(b,t,e))),ye(u,((e,t)=>Me(w,t,e)))}),i,u,b,w,e),ve(i),ve(u)};Ie(b,L),e.hasTable(s)&&B(e.getRowIds(s),(e=>{we(b,e)||L(e)})),C(!0),h(t),g(t,0,e.addRowListener(s,null,((e,t,n)=>L(n))),e.addTableListener(s,(()=>C())))},b,e=>s(e,i),()=>Ie(u,b),g,h]},je=(e,n)=>x(e)?t=>t(e):e??(()=>n??t),$e=(e,t)=>{const n=new WeakMap;return s=>{n.has(s)||n.set(s,e(s));const a=n.get(s);return t?.(a),a}},_e=/^\d+$/,Be=()=>{const e=[];let n=0;return[s=>(s?Z(e):null)??t+n++,t=>{_e.test(t)&&N(e)<1e3&&X(e,t)}]},Ue=e=>{let n;const[s,a]=Be(),o=pe();return[(a,r,l,i=[],c=(()=>[]))=>{n??=e();const d=s(1);return Me(o,d,[a,r,l,i,c]),Pe(xe(r,l??[t],Oe),d),d},(e,s,...a)=>B(((e,n=[t])=>{const s=[],a=(e,t)=>t==N(n)?X(s,e):null===n[t]?ye(e,(e=>a(e,t+1))):B([n[t],null],(n=>a(Re(e,n),t+1)));return a(e,0),s})(e,s),(e=>ye(e,(e=>Re(o,e)[0](n,...s??[],...a))))),e=>k(Re(o,e),(([,n,s])=>(xe(n,s??[t],void 0,(t=>(Te(t,e),Le(t)?1:0))),Me(o,e),a(e),s))),e=>k(Re(o,e),(([e,,t=[],s,a])=>{const o=(...r)=>{const l=N(r);l==N(t)?e(n,...r,...a(r)):A(t[l])?B(s[l]?.(...r)??[],(e=>o(...r,e))):o(...r,t[l])};o()}))]},qe=$e((e=>{let n,s,a,o=100,r=pe(),l=pe(),i=1;const c=pe(),d=pe(),[u,g,h]=Ue((()=>x)),f=pe(),b=pe(),w=[],L=[],C=(t,n)=>{i=0,e.transaction((()=>{const[s,a]=Re(f,n);ye(s,((n,s)=>ye(n,((n,a)=>ye(n,((n,o)=>ze(e,s,a,o,n[t]))))))),ye(a,((n,s)=>Ne(e,s,n[t])))})),i=1},v=e=>{Me(f,e),Me(b,e),g(d,[e])},y=(e,t)=>B(((e,t)=>e.splice(0,t))(e,t??N(e)),v),T=()=>y(w,N(w)-o),p=()=>k(n,(()=>{X(w,n),T(),y(L),n=void 0,a=1})),S=()=>{n=Y(w),a=1};let R,I;const M=(e=t)=>(A(n)&&(n=t+s++,Me(f,n,[r,l]),H(n,e),r=pe(),l=pe(),a=1),n),V=()=>{G(w)||(((e,...t)=>{e.unshift(...t)})(L,M()),C(0,n),n=Y(w),a=1)},m=()=>{G(L)||(X(w,n),n=Z(L),C(1,n),a=1)},D=()=>{a&&(g(c),a=0)},E=e=>{const t=M(e);return D(),t},H=(e,t)=>(J(e)&&Re(b,e)!==t&&(Me(b,e,t),g(d,[e])),x),J=e=>we(f,e),x={setSize:e=>(o=e,T(),x),addCheckpoint:E,setCheckpoint:H,getStore:()=>e,getCheckpointIds:()=>[[...w],n,[...L]],forEachCheckpoint:e=>Ie(b,e),hasCheckpoint:J,getCheckpoint:e=>Re(b,e),goBackward:()=>(V(),D(),x),goForward:()=>(m(),D(),x),goTo:e=>{const t=P(w,e)?V:P(L,e)?m:null;for(;!A(t)&&e!=n;)t();return D(),x},addCheckpointIdsListener:e=>u(e,c),addCheckpointListener:(e,t)=>u(t,d,[e]),delListener:e=>(h(e),x),clear:()=>(y(w),y(L),A(n)||v(n),n=void 0,s=0,E(),x),clearForward:()=>(G(L)||(y(L),g(c)),x),destroy:()=>{e.delListener(R),e.delListener(I)},getListenerStats:()=>({}),_registerListeners:()=>{R=e.addCellListener(null,null,null,((e,t,n,s,a,o)=>{if(i){p();const e=Ve(r,t,pe),l=Ve(e,n,pe),i=Ve(l,s,(()=>[o,void 0]));i[1]=a,i[0]===a&&Le(Me(l,s))&&Le(Me(e,n))&&Le(Me(r,t))&&S(),D()}})),I=e.addValueListener(null,((e,t,n,s)=>{if(i){p();const e=Ve(l,t,(()=>[s,void 0]));e[1]=n,e[0]===n&&Le(Me(l,t))&&S(),D()}}))}};return re(x.clear())}),(e=>e._registerListeners())),Ge="-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz".split(t),Ke=pe(U(Ge,((e,t)=>[e,t]))),Xe=e=>Ge[63&e],Ye=(e,t)=>Re(Ke,e[t])??0,Ze=(e,t)=>(e??0)<(t??0)?-1:1,et=(e=16)=>K(crypto.getRandomValues(new Uint8Array(e)),((e,t)=>e+Xe(t)),""),tt=$e((e=>{const n=pe(),s=pe(),[a,o,r]=Ue((()=>v)),[l,i,c,d,u,g,h,,f,b,w,L]=We(e,pe,(e=>A(e)?t:Q(e)?U(e,I):I(e)),a,o),C=(t,n,s)=>{const a=u(t);ye(s,((t,s)=>n(s,(n=>ye(t,(t=>n(t,(n=>e.forEachCell(a,t,n)))))))))},v={setIndexDefinition:(e,t,a,r,l,i=Ze)=>{const c=A(l)?void 0:([e],[t])=>l(e,t);return f(e,t,((t,a,l,d,u,f)=>{let b=0;const w=Oe(),L=Oe(),C=g(e);if(ye(a,(([e,t],n)=>{const s=Oe(e),a=Oe(t);ye(s,(e=>Te(a,e)?Te(s,e):0)),ye(s,(e=>{Pe(w,e),k(Re(C,e),(t=>{Te(t,n),Le(t)&&(Me(C,e),b=1)}))})),ye(a,(e=>{Pe(w,e),we(C,e)||(Me(C,e,Oe()),b=1),Pe(Re(C,e),n),A(r)||Pe(L,e)}))})),t(),Le(u)||(f?Ie(C,(e=>Pe(L,e))):Ie(l,(e=>k(Re(d,e),(e=>Pe(L,e))))),ye(L,(e=>{const t=(t,n)=>i(Re(u,t),Re(u,n),e),n=[...Re(C,e)];$(n,t)||(Me(C,e,Oe(_(n,t))),Pe(w,e))}))),(b||f)&&!A(c)){const t=[...C];$(t,c)||(h(e,pe(_(t,c))),b=1)}b&&o(n,[e]),ye(w,(t=>o(s,[e,t])))}),je(a),k(r,je)),v},delIndexDefinition:e=>(b(e),v),getStore:l,getIndexIds:i,forEachIndex:e=>c(((t,n)=>e(t,(e=>C(t,e,n))))),forEachSlice:(e,t)=>C(e,t,g(e)),hasIndex:d,hasSlice:(e,t)=>we(g(e),t),getTableId:u,getSliceIds:e=>Se(g(e)),getSliceRowIds:(e,t)=>Ce(Re(g(e),t)),addIndexIdsListener:w,addSliceIdsListener:(e,t)=>a(t,n,[e]),addSliceRowIdsListener:(e,t,n)=>a(n,s,[e,t]),delListener:e=>(r(e),v),destroy:L,getListenerStats:()=>({})};return re(v)})),nt=pe([["avg",[(e,t)=>q(e)/t,(e,t,n)=>e+(t-e)/(n+1),(e,t,n)=>e+(e-t)/(n-1),(e,t,n,s)=>e+(t-n)/s]],["max",[e=>D(...e),(e,t)=>D(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:D(t,e)]],["min",[e=>E(...e),(e,t)=>E(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:E(t,e)]],["sum",[e=>q(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,n)=>e-n+t]]]),st=(e,t,n,s,a,o=!1)=>{if(Le(n))return;const[r,l,i,c]=a;return o||=A(e),ye(s,(([n,s])=>{o||(e=A(n)?l?.(e,s,t++):A(s)?i?.(e,n,t--):c?.(e,s,n,t),o||=A(e))})),o?r(Ce(n),be(n)):e},at=$e((e=>{const n=pe(),[s,a,o]=Ue((()=>L)),[r,l,i,c,d,u,g,,h,f,b,w]=We(e,O,(e=>isNaN(e)||A(e)||!0===e||!1===e||e===t?void 0:1*e),s,a),L={setMetricDefinition:(e,t,s,o,r,l,i)=>{const c=F(s)?[s,r,l,i]:Re(nt,s)??Re(nt,"sum");return h(e,t,((t,s,o,r,l,i)=>{const d=u(e),h=be(r);i||=A(d),t();let f=st(d,h,r,s,c,i);H(f)||(f=void 0),f!=d&&(g(e,f),a(n,[e],f,d))}),je(o,1)),L},delMetricDefinition:e=>(f(e),L),getStore:r,getMetricIds:l,forEachMetric:i,hasMetric:c,getTableId:d,getMetric:u,addMetricIdsListener:b,addMetricListener:(e,t)=>s(t,n,[e]),delListener:e=>(o(e),L),destroy:w,getListenerStats:()=>({})};return re(L)})),ot=pe(),rt=pe(),lt=(e,t,n,s,a,o,r,l={},i=[])=>{let c,d,u,g=0;Ve(ot,i,(()=>0)),Ve(rt,i,(()=>[]));const[h,f,b,w,L]=((e=1,t)=>e>1&&"merge"in t?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[e],[t]])=>!ge(e)||!ge(t),t.setDefaultContent]:2!=e?[0,t.getContent,t.getTransactionChanges,([e,t])=>!ge(e)||!ge(t),t.setContent]:0)(r,e),C=t=>{(h&&Q(t?.[0])?1===t?.[2]?e.applyMergeableChanges:e.setMergeableContent:1===t?.[2]?e.applyChanges:e.setContent)(t)},v=async e=>(2!=g&&(g=1,await S((async()=>{try{C(await t())}catch(t){o?.(t),e&&L(e)}g=0}))),R),y=()=>(d&&(a(d),d=void 0),R),T=async e=>(1!=g&&(g=2,await S((async()=>{try{await n(f,e)}catch(e){o?.(e)}g=0}))),R),p=()=>(k(u,e.delListener),u=void 0,R),S=async(...e)=>(X(Re(rt,i),...e),await(async()=>{if(!Re(ot,i)){for(Me(ot,i,1);!A(c=Z(Re(rt,i)));)try{await c()}catch(e){o?.(e)}Me(ot,i,0)}})(),R),R={load:v,startAutoLoad:async e=>(await y().load(e),d=s((async(e,t)=>{t||e?2!=g&&(g=1,C(t??e),g=0):await v()})),R),stopAutoLoad:y,isAutoLoading:()=>!A(d),save:T,startAutoSave:async()=>(await p().save(),u=e.addDidFinishTransactionListener((()=>{const e=b();w(e)&&T(e)})),R),stopAutoSave:p,isAutoSaving:()=>!A(u),schedule:S,getStore:()=>e,destroy:()=>y().stopAutoSave(),getStats:()=>({}),...l};return re(R)},it=new globalThis.TextEncoder,ct=e=>{let t=2166136261;return B(it.encode(e),(e=>{t^=e,t+=(t<<1)+(t<<4)+(t<<7)+(t<<8)+(t<<24)})),t>>>0},dt=([e,t,n])=>[e,t,n],ut=([e,t])=>gt(e,t),gt=(e,t)=>t?[e,t]:[e],ht=e=>e[2],ft=(e,t)=>ct(e+":"+t),bt=(e,t)=>t>e?(e?ct(e):0)^ct(t):0,wt=(e,t)=>((e??"")>(t??"")?e:t)??"",Lt=(e,t,n)=>{e[2]=t>>>0,n>e[1]&&(e[1]=n)},Ct=(e=t)=>gt(le(),e),vt=(e=t)=>[pe(),e,0],yt=([e,t,n],s=dt)=>[De(e,s),t,n],Tt=([e,t],n=ut)=>gt(De(e,n),t),pt=(t,n)=>Q(t)&&3==N(t)&&x(t[1])&&e(t[2])==a&&H(t[2])&&n(t[0]),St=(e,n,s,a,o,r,l={})=>{let i;const c=pe();s(((t,s,a,o)=>{0==a?k(Re(c,s),(([e,n])=>A(e)||e==t?n(o,t):0)):2==a&&h.isAutoLoading()?g(t,o).then((e=>{i?.(void 0,e)})):3==a&&h.isAutoLoading()?i?.(void 0,o):k(1==a&&h.isAutoSaving()?e.getMergeableContentHashes():4==a?e.getMergeableTableDiff(o):5==a?e.getMergeableRowDiff(o):6==a?e.getMergeableCellDiff(o):7==a?e.getMergeableValueDiff(o):void 0,(e=>{n(t,s,0,e)}))}));const d=async(e,s,a=t)=>new m(((t,r)=>{const l=et(),i=setTimeout((()=>{Te(c,l),r(`No response from ${e??"anyone"} to '${s}'`)}),1e3*o);Me(c,l,[e,(e,n)=>{clearTimeout(i),Te(c,l),t([e,n])}]),n(e,l,s,a)})),u=(e,[t,n])=>{de(t,(([t,n],s)=>{const a=he(e[0],s,Ct);de(t,(([e,t],n)=>{const s=he(a[0],n,Ct);de(e,(([e,t],n)=>s[0][n]=gt(e,t))),s[1]=wt(s[1],t)})),a[1]=wt(a[1],n)})),e[1]=wt(e[1],n)},g=async(t=null,n)=>{A(n)&&([n,t]=await d(t,1));const[s,a]=n,[o,r]=e.getMergeableContentHashes();let l=Ct();if(o!=s){const[n,s]=(await d(t,4,e.getMergeableTableHashes()))[0];if(l=n,!ge(s)){const[n,a]=(await d(t,5,e.getMergeableRowHashes(s)))[0];if(u(l,n),!ge(a)){const n=(await d(t,6,e.getMergeableCellHashes(a)))[0];u(l,n)}}}return[l,r==a?Ct():(await d(t,7,e.getMergeableValuesHashes()))[0],1]},h=lt(e,(async()=>{const e=await g();return ge(e[0][0])&&ge(e[1][0])?void 0:e}),(async(t,s)=>{s?n(null,null,3,s):n(null,null,2,e.getMergeableContentHashes())}),(e=>i=e),(()=>i=void 0),r,2,{startSync:async e=>await(await h.startAutoLoad(e)).startAutoSave(),stopSync:()=>h.stopAutoLoad().stopAutoSave(),destroy:()=>(a(),h.stopSync()),getSynchronizerStats:()=>({}),...l});return h},Rt=$e((e=>{const n=e.createStore,s=n(),a=n(),o=pe(),{addListener:r,callListeners:l,delListener:u}=a,[g,f,b,p,S,,,R,,I,M,V,m,D]=We(e,(()=>!0),O,r,l),E=(e,t,...n)=>B(n,(n=>Pe(Ve(Ve(o,t,pe),e,Oe),n))),H=e=>{k(Re(o,e),(e=>{Ie(e,((e,t)=>ye(t,(t=>e.delListener(t))))),ve(e)})),B([a,s],(t=>t.delTable(e)))},J=(e,t,n)=>E(t,e,t.addStartTransactionListener(n.startTransaction),t.addDidFinishTransactionListener((()=>n.finishTransaction()))),x={setQueryDefinition:(n,o,r)=>{R(n,o),H(n);const l=[],i=[[null,[o,null,null,[],pe()]]],c=[],d=[],u=[];r({select:(e,n)=>{const s=F(e)?[N(l)+t,e]:[A(n)?e:n,t=>t(e,n)];return X(l,s),{as:e=>s[0]=e}},join:(e,t,n)=>{const s=A(n)||F(t)?null:t,a=A(s)?t:n,o=[e,[e,s,F(a)?a:e=>e(a),[],pe()]];return X(i,o),{as:e=>o[0]=e}},where:(e,t,n)=>X(c,F(e)?e:A(n)?n=>n(e)===t:s=>s(e,t)===n),group:(e,t,n,s,a)=>{const o=[e,[e,F(t)?[t,n,s,a]:Re(nt,t)??[(e,t)=>t]]];return X(d,o),{as:e=>o[0]=e}},having:(e,t)=>X(u,F(e)?e:n=>n(e)===t)});const g=pe(l);if(Le(g))return x;const h=pe(i);Ie(h,((e,[,t])=>k(Re(h,t),(({3:t})=>A(e)?0:X(t,e)))));const f=pe(d);let b=s;if(Le(f)&&G(u))b=a;else{J(n,b,a);const e=pe();Ie(f,((t,[n,s])=>Pe(Ve(e,n,Oe),[t,s])));const t=Oe();Ie(g,(n=>we(e,n)?0:Pe(t,n)));const s=pe(),o=(t,s,o,r)=>k(t,(([l,i,c,d])=>{Ie(s,((t,[n])=>{const s=Ve(l,t,pe),a=Re(s,o),i=r?void 0:n;if(a!==i){const n=Oe([[a,i]]),r=be(s);Me(s,o,i),ye(Re(e,t),(([e,t])=>{const a=st(d[e],r,s,n,t);d[e]=A(Fe(a))?null:a}))}})),Le(i)||!W(u,(e=>e((e=>d[e]))))?a.delRow(n,c):A(c)?t[2]=a.addRow(n,d):a.setRow(n,c,d)}));E(b,n,b.addRowListener(n,null,((a,r,l,i)=>{const c=[],d=[],u=pe(),g=b.hasRow(n,l);let h=!g;ye(t,(e=>{const[t,s,a]=i(n,l,e);X(c,s),X(d,a),h||=t})),Ie(e,(e=>{const[t,,s]=i(n,l,e);(h||t)&&Me(u,e,[s])})),h&&o(xe(s,c,void 0,(([,e])=>(Te(e,l),Le(e)))),u,l,1),g&&o(xe(s,d,(()=>{const e={};return ye(t,(t=>e[t]=b.getCell(n,l,t))),[pe(),Oe(),void 0,e]}),(([,e])=>{Pe(e,l)})),u,l)})))}J(n,e,b);const w=(t,s,a,r)=>{const l=t=>e.getCell(s,a,t);B(r,(s=>{const[a,,o,r,i]=Re(h,s),c=o?.(l,t),[d,u]=Re(i,t)??[];c!=d&&(A(u)||D(n,u),Me(i,t,A(c)?null:[c,...m(n,1,e.addRowListener(a,c,(()=>w(t,a,c,r))))]))})),(t=>{const s=(n,s)=>e.getCell(...A(s)?[o,t,n]:n===o?[o,t,s]:[Re(h,n)?.[0],Re(Re(h,n)?.[4],t)?.[0],s]);b.transaction((()=>W(c,(e=>e(s)))?Ie(g,((e,a)=>ze(b,n,t,e,a(s,t)))):b.delRow(n,t)))})(t)},{3:L}=Re(h,null);return b.transaction((()=>m(n,1,e.addRowListener(o,null,((t,s,a)=>{e.hasRow(o,a)?w(a,o,a,L):(b.delRow(n,a),ye(h,(({4:e})=>k(Re(e,a),(([,t])=>{D(n,t),Me(e,a)})))))}))))),x},delQueryDefinition:e=>(H(e),I(e),x),getStore:g,getQueryIds:f,forEachQuery:b,hasQuery:p,getTableId:S,addQueryIdsListener:e=>M((()=>e(x))),delListener:e=>(u(e),x),destroy:V,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:n,...s}=a.getListenerStats();return s}};return ue({[h]:[1,1],[h+T]:[0,1],[L]:[0,1],[C]:[0,1],[v]:[0,5],[w]:[1,2],[T]:[0,2],[y]:[1,3]},(([e,t],n)=>{B(e?["get","has","forEach"]:["get"],(e=>x[e+c+n]=(...t)=>a[e+n](...t))),x[d+c+n+i]=(...e)=>a[d+n+i](...z(e,0,t),((n,...s)=>e[t](x,...s)),!0)})),re(x)})),It=$e((e=>{const n=pe(),s=pe(),a=pe(),o=pe(),[r,l,i]=Ue((()=>p)),[c,d,u,g,h,f,,,b,w,L,C]=We(e,(()=>[pe(),pe(),pe(),pe()]),(e=>A(e)?void 0:e+t),r,l),v=(e,t,n)=>k(f(e),(([s,,a])=>{if(!we(a,t)){const o=Oe();if(h(e)!=T(e))Pe(o,t);else{let e=t;for(;!A(e)&&!we(o,e);)Pe(o,e),e=Re(s,e)}if(n)return o;Me(a,t,o)}return Re(a,t)})),y=(e,t)=>k(f(e),(([,,e])=>Me(e,t))),T=e=>Re(n,e),p={setRelationshipDefinition:(e,t,r,i)=>(Me(n,e,r),b(e,t,((t,n)=>{const r=Oe(),i=Oe(),c=Oe(),[d,u]=f(e);ye(n,(([t,n],s)=>{A(t)||(Pe(i,t),k(Re(u,t),(e=>{Te(e,s),Le(e)&&Me(u,t)}))),A(n)||(Pe(i,n),we(u,n)||Me(u,n,Oe()),Pe(Re(u,n),s)),Pe(r,s),Me(d,s,n),Ie(Re(o,e),(t=>{we(v(e,t),s)&&Pe(c,t)}))})),t(),ye(r,(t=>l(s,[e,t]))),ye(i,(t=>l(a,[e,t]))),ye(c,(t=>{y(e,t),l(o,[e,t])}))}),je(i)),p),delRelationshipDefinition:e=>(Me(n,e),w(e),p),getStore:c,getRelationshipIds:d,forEachRelationship:t=>u((n=>t(n,(t=>e.forEachRow(h(n),t))))),hasRelationship:g,getLocalTableId:h,getRemoteTableId:T,getRemoteRowId:(e,t)=>Re(f(e)?.[0],t),getLocalRowIds:(e,t)=>Ce(Re(f(e)?.[1],t)),getLinkedRowIds:(e,t)=>A(f(e))?[t]:Ce(v(e,t,!0)),addRelationshipIdsListener:L,addRemoteRowIdListener:(e,t,n)=>r(n,s,[e,t]),addLocalRowIdsListener:(e,t,n)=>r(n,a,[e,t]),addLinkedRowIdsListener:(e,t,n)=>(v(e,t),r(n,o,[e,t])),delListener:e=>(y(...i(e)??[]),p),destroy:C,getListenerStats:()=>({})};return re(p)})),Mt=e=>[e,e],Vt=()=>[pe(),pe()],mt=e=>[...e],Dt=([e,t])=>e===t,Et=e=>JSON.stringify(e,((e,t)=>t instanceof Map?ee.fromEntries([...t]):t)),Ht=JSON.parse,At=(e,t,n)=>Me(e,t,Re(e,t)==-n?void 0:n),kt=()=>{let e,t,n=!1,s=!1,o=0,c=[];const g=pe(),v=pe(),M=pe(),V=pe(),m=pe(),D=pe(),E=pe(),H=pe(),x=pe(),Q=pe(),N=pe(),O=pe(),W=pe(),$=pe(),q=Oe(),G=pe(),K=pe(),Y=pe(),Z=pe(),ee=Vt(),te=Vt(),ne=Vt(),se=Vt(),ae=Vt(),oe=Vt(),le=Vt(),de=Vt(),he=Vt(),Ce=Vt(),xe=Vt(),Qe=Vt(),We=Vt(),je=Vt(),$e=Vt(),_e=Vt(),qe=Vt(),Ge=Vt(),Ke=Vt(),Xe=Vt(),Ye=Vt(),et=Vt(),tt=pe(),nt=Vt(),[st,at,ot,rt]=Ue((()=>xn)),lt=e=>{if(!fe(e,((e,t)=>P([r,l],t))))return!1;const t=e[r];return!(!J(t)&&t!=a||(Fe(e[l])!=t&&ce(e,l),0))},it=(t,n)=>(!e||we(N,n)||Bt(n))&&fe(t,((e,t)=>ct(n,t,e)),(()=>Bt(n))),ct=(e,t,n,s)=>fe(s?n:ht(n,e,t),((s,a)=>k(dt(e,t,a,s),(e=>(n[a]=e,!0)),(()=>!1))),(()=>Bt(e,t))),dt=(t,n,s,a)=>e?k(Re(Re(N,t),s),(e=>Fe(a)!=e[r]?Bt(t,n,s,a,e[l]):a),(()=>Bt(t,n,s,a))):A(Fe(a))?Bt(t,n,s,a):a,ut=(e,t)=>fe(t?e:ft(e),((t,n)=>k(gt(n,t),(t=>(e[n]=t,!0)),(()=>!1))),(()=>Ut())),gt=(e,n)=>t?k(Re(W,e),(t=>Fe(n)!=t[r]?Ut(e,n,t[l]):n),(()=>Ut(e,n))):A(Fe(n))?Ut(e,n):n,ht=(e,t,n)=>(k(Re(O,t),(([s,a])=>{ye(s,((t,n)=>{ie(e,n)||(e[n]=t)})),ye(a,(s=>{ie(e,s)||Bt(t,n,s)}))})),e),ft=e=>(t&&(ye($,((t,n)=>{ie(e,n)||(e[n]=t)})),ye(q,(t=>{ie(e,t)||Ut(t)}))),e),bt=e=>me(N,e,((e,t,n)=>{const s=pe(),a=Oe();me(Ve(N,t,pe),n,((e,t,n)=>{Me(e,t,n),k(n[l],(e=>Me(s,t,e)),(()=>Pe(a,t)))})),Me(O,t,[s,a])}),((e,t)=>{Me(N,t),Me(O,t)})),wt=e=>me(W,e,((e,t,n)=>{Me(W,t,n),k(n[l],(e=>Me($,t,e)),(()=>Pe(q,t)))}),((e,t)=>{Me(W,t),Me($,t),Te(q,t)})),Lt=e=>ge(e)?Mn():Tn(e),Ct=e=>me(Y,e,((e,t,n)=>vt(t,n)),((e,t)=>Ft(t))),vt=(e,t)=>me(Ve(Y,e,(()=>(Ot(e,1),Me(G,e,Be()),Me(K,e,pe()),pe()))),t,((t,n,s)=>yt(e,t,n,s)),((t,n)=>Qt(e,t,n))),yt=(e,t,n,s,a)=>me(Ve(t,n,(()=>(Pt(e,n,1),pe()))),s,((t,s,a)=>Tt(e,n,t,s,a)),((s,o)=>zt(e,t,n,s,o,a))),Tt=(e,t,n,s,a)=>{we(n,s)||Wt(e,t,s,1);const o=Re(n,s);a!==o&&(jt(e,t,s,o,a),Me(n,s,a))},pt=(e,t,n,s,a)=>k(Re(t,n),(t=>Tt(e,n,t,s,a)),(()=>yt(e,t,n,ht({[s]:a},e,n)))),St=e=>ge(e)?Dn():pn(e),Rt=e=>me(Z,e,((e,t,n)=>It(t,n)),((e,t)=>Nt(t))),It=(e,t)=>{we(Z,e)||$t(e,1);const n=Re(Z,e);t!==n&&(_t(e,n,t),Me(Z,e,t))},Jt=(e,t)=>{const[n]=Re(G,e),s=n(t);return we(Re(Y,e),s)?Jt(e,t):s},xt=e=>Re(Y,e)??vt(e,{}),Ft=e=>vt(e,{}),Qt=(e,t,n)=>{const[,s]=Re(G,e);s(n),yt(e,t,n,{},!0)},zt=(e,t,n,s,a,o)=>{const r=Re(Re(O,e)?.[0],a);if(!A(r)&&!o)return Tt(e,n,s,a,r);const l=t=>{jt(e,n,t,Re(s,t)),Wt(e,n,t,-1),Me(s,t)};A(r)?l(a):Ie(s,l),Le(s)&&(Pt(e,n,-1),Le(Me(t,n))&&(Ot(e,-1),Me(Y,e),Me(G,e),Me(K,e)))},Nt=e=>{const t=Re($,e);if(!A(t))return It(e,t);_t(e,Re(Z,e)),$t(e,-1),Me(Z,e)},Ot=(e,t)=>At(g,e,t),Pt=(e,t,n)=>At(Ve(V,e,pe),t,n)&&Me(M,e,Ve(M,e,(()=>0))+n),Wt=(e,t,n,s)=>{const a=Re(K,e),o=Re(a,n)??0;(0==o&&1==s||1==o&&-1==s)&&At(Ve(v,e,pe),n,s),Me(a,n,o!=-s?o+s:null),At(Ve(Ve(m,e,pe),t,pe),n,s)},jt=(e,t,n,s,a)=>{Ve(Ve(Ve(D,e,pe),t,pe),n,(()=>[s,0]))[1]=a,c[3]?.(e,t,n,a)},$t=(e,t)=>At(E,e,t),_t=(e,t,n)=>{Ve(H,e,(()=>[t,0]))[1]=n,c[4]?.(e,n)},Bt=(e,t,n,s,a)=>(X(Ve(Ve(Ve(x,e,pe),t,pe),n,(()=>[])),s),a),Ut=(e,t,n)=>(X(Ve(Q,e,(()=>[])),t),n),qt=(e,t,n)=>k(Re(Re(Re(D,e),t),n),(([e,t])=>[!0,e,t]),(()=>[!1,...Mt(dn(e,t,n))])),Gt=e=>k(Re(H,e),(([e,t])=>[!0,e,t]),(()=>[!1,...Mt(hn(e))])),Kt=e=>Le(x)||Le(_e[e])?0:ye(e?Je(x):x,((t,n)=>ye(t,((t,s)=>ye(t,((t,a)=>at(_e[e],[n,s,a],t))))))),Xt=e=>Le(Q)||Le(qe[e])?0:ye(e?Ae(Q):Q,((t,n)=>at(qe[e],[n],t))),Yt=(e,t,n,s)=>{if(!Le(e))return at(t,s,(()=>De(e))),Ie(e,((e,t)=>at(n,[...s??[],e],1==t))),1},Zt=e=>{const t=fn();t!=n&&at(ee[e],void 0,t);const s=Le(Ce[e]),a=Le(We[e])&&Le(je[e])&&Le(he[e])&&Le(xe[e])&&Le(oe[e])&&Le(le[e])&&Le(de[e])&&s&&Le(ne[e])&&Le(se[e]),o=Le($e[e])&&Le(Qe[e])&&Le(ae[e])&&Le(te[e]);if(!a||!o){const t=e?[Ae(g),ke(v),Ae(M),ke(V),Je(m),Je(D)]:[g,v,M,V,m,D];if(!a){Yt(t[0],ne[e],se[e]),ye(t[1],((t,n)=>Yt(t,oe[e],le[e],[n]))),ye(t[2],((t,n)=>{0!=t&&at(de[e],[n],on(n))}));const n=Oe();ye(t[3],((t,a)=>{Yt(t,he[e],xe[e],[a])&&!s&&(at(Ce[e],[a,null]),Pe(n,a))})),s||ye(t[5],((t,s)=>{if(!we(n,s)){const n=Oe();ye(t,(e=>ye(e,(([t,s],a)=>s!==t?Pe(n,a):Te(e,a))))),ye(n,(t=>at(Ce[e],[s,t])))}})),ye(t[4],((t,n)=>ye(t,((t,s)=>Yt(t,We[e],je[e],[n,s])))))}if(!o){let n;ye(t[5],((t,s)=>{let a;ye(t,((t,o)=>{let r;ye(t,(([t,l],i)=>{l!==t&&(at($e[e],[s,o,i],l,t,qt),n=a=r=1)})),r&&at(Qe[e],[s,o],qt)})),a&&at(ae[e],[s],qt)})),n&&at(te[e],void 0,qt)}}},en=e=>{const t=vn();t!=s&&at(Ge[e],void 0,t);const n=Le(Xe[e])&&Le(Ye[e]),a=Le(et[e])&&Le(Ke[e]);if(!n||!a){const t=e?[Ae(E),Ae(H)]:[E,H];if(n||Yt(t[0],Xe[e],Ye[e]),!a){let n;ye(t[1],(([t,s],a)=>{s!==t&&(at(et[e],[a],s,t,Gt),n=1)})),n&&at(Ke[e],void 0,Gt)}}},tn=(e,...t)=>(An((()=>e(...U(t,I)))),xn),nn=()=>He(Y),sn=()=>Se(Y),an=e=>Se(Re(K,I(e))),on=e=>be(Re(Y,I(e))),rn=e=>Se(Re(Y,I(e))),ln=(e,t,n,s=0,a)=>{return U(z(_((o=Re(Y,I(e)),r=(e,n)=>[A(t)?n:Re(e,I(t)),n],U([...o?.entries()??[]],(([e,t])=>r(t,e)))),(([e],[t])=>Ze(e,t)*(n?-1:1))),s,A(a)?a:s+a),(([,e])=>e));var o,r},cn=(e,t)=>Se(Re(Re(Y,I(e)),I(t))),dn=(e,t,n)=>Re(Re(Re(Y,I(e)),I(t)),I(n)),un=()=>De(Z),gn=()=>Se(Z),hn=e=>Re(Z,I(e)),fn=()=>!Le(Y),bn=e=>we(Y,I(e)),wn=(e,t)=>we(Re(K,I(e)),I(t)),Ln=(e,t)=>we(Re(Y,I(e)),I(t)),Cn=(e,t,n)=>we(Re(Re(Y,I(e)),I(t)),I(n)),vn=()=>!Le(Z),yn=e=>we(Z,I(e)),Tn=e=>tn((()=>(e=>fe(e,it,Bt))(e)?Ct(e):0)),pn=e=>tn((()=>ut(e)?Rt(e):0)),Sn=e=>{try{Lt(Ht(e))}catch{}return xn},Rn=t=>tn((()=>{if((e=fe(t,(e=>fe(e,lt))))&&(bt(t),!Le(Y))){const e=nn();Mn(),Tn(e)}})),In=e=>tn((()=>{if(t=(e=>fe(e,lt))(e)){const n=un();Hn(),Dn(),t=!0,wt(e),pn(n)}})),Mn=()=>tn((()=>Ct({}))),Vn=e=>tn((e=>we(Y,e)?Ft(e):0),e),mn=(e,t)=>tn(((e,t)=>k(Re(Y,e),(n=>we(n,t)?Qt(e,n,t):0))),e,t),Dn=()=>tn((()=>Rt({}))),En=()=>tn((()=>{bt({}),e=!1})),Hn=()=>tn((()=>{wt({}),t=!1})),An=(e,t)=>{if(-1!=o){kn();const n=e();return Jn(t),n}},kn=()=>(-1!=o&&o++,1==o&&(c[0]?.(),at(tt)),xn),Jn=e=>(o>0&&(o--,0==o&&(o=1,Kt(1),Le(D)||Zt(1),Xt(1),Le(H)||en(1),e?.(xn)&&(ye(D,((e,t)=>ye(e,((e,n)=>ye(e,(([e],s)=>ze(xn,t,n,s,e))))))),ve(D),ye(H,(([e],t)=>Ne(xn,t,e))),ve(H)),at(nt[0],void 0),o=-1,Kt(0),Le(D)||Zt(0),Xt(0),Le(H)||en(0),c[1]?.(),at(nt[1],void 0),c[2]?.(),o=0,n=fn(),s=vn(),B([g,v,M,V,m,D,x,E,H,Q],ve))),xn),xn={getContent:()=>[nn(),un()],getTables:nn,getTableIds:sn,getTable:e=>Ee(Re(Y,I(e))),getTableCellIds:an,getRowCount:on,getRowIds:rn,getSortedRowIds:ln,getRow:(e,t)=>De(Re(Re(Y,I(e)),I(t))),getCellIds:cn,getCell:dn,getValues:un,getValueIds:gn,getValue:hn,hasTables:fn,hasTable:bn,hasTableCell:wn,hasRow:Ln,hasCell:Cn,hasValues:vn,hasValue:yn,getTablesJson:()=>Et(Y),getValuesJson:()=>Et(Z),getJson:()=>Et([Y,Z]),getTablesSchemaJson:()=>Et(N),getValuesSchemaJson:()=>Et(W),getSchemaJson:()=>Et([N,W]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:([e,t])=>tn((()=>{(ge(e)?Mn:Tn)(e),(ge(t)?Dn:pn)(t)})),setTables:Tn,setTable:(e,t)=>tn((e=>it(t,e)?vt(e,t):0),e),setRow:(e,t,n)=>tn(((e,t)=>ct(e,t,n)?yt(e,xt(e),t,n):0),e,t),addRow:(e,t,n=!0)=>An((()=>{let s;return ct(e,s,t)&&(e=I(e),yt(e,xt(e),s=Jt(e,n?1:0),t)),s})),setPartialRow:(e,t,n)=>tn(((e,t)=>{if(ct(e,t,n,1)){const s=xt(e);ue(n,((n,a)=>pt(e,s,t,a,n)))}}),e,t),setCell:(e,t,n,s)=>tn(((e,t,n)=>k(dt(e,t,n,F(s)?s(dn(e,t,n)):s),(s=>pt(e,xt(e),t,n,s)))),e,t,n),setValues:pn,setPartialValues:e=>tn((()=>ut(e,1)?ue(e,((e,t)=>It(t,e))):0)),setValue:(e,t)=>tn((e=>k(gt(e,F(t)?t(hn(e)):t),(t=>It(e,t)))),e),applyChanges:e=>tn((()=>{ue(e[0],((e,t)=>A(e)?Vn(t):ue(e,((e,n)=>A(e)?mn(t,n):ue(e,((e,s)=>ze(xn,t,n,s,e))))))),ue(e[1],((e,t)=>Ne(xn,t,e)))})),setTablesJson:Sn,setValuesJson:e=>{try{St(Ht(e))}catch{}return xn},setJson:e=>tn((()=>{try{const[t,n]=Ht(e);Lt(t),St(n)}catch{Sn(e)}})),setTablesSchema:Rn,setValuesSchema:In,setSchema:(e,t)=>tn((()=>{Rn(e),In(t)})),delTables:Mn,delTable:Vn,delRow:mn,delCell:(e,t,n,s)=>tn(((e,t,n)=>k(Re(Y,e),(a=>k(Re(a,t),(o=>we(o,n)?zt(e,a,t,o,n,s):0))))),e,t,n),delValues:Dn,delValue:e=>tn((e=>we(Z,e)?Nt(e):0),e),delTablesSchema:En,delValuesSchema:Hn,delSchema:()=>tn((()=>{En(),Hn()})),transaction:An,startTransaction:kn,getTransactionChanges:()=>[De(D,((e,t)=>-1===Re(g,t)?void 0:De(e,((e,n)=>-1===Re(Re(V,t),n)?void 0:De(e,(([,e])=>e),(e=>Dt(e)))),Le,ge)),Le,ge),De(H,(([,e])=>e),(e=>Dt(e))),1],getTransactionLog:()=>[!Le(D),!Le(H),He(D,mt,Dt),He(x),De(H,mt,Dt),De(Q),De(g),Ee(V),He(m),De(E)],finishTransaction:Jn,forEachTable:e=>ye(Y,((t,n)=>e(n,(e=>ye(t,((t,n)=>e(n,(e=>Ie(t,e))))))))),forEachTableCell:(e,t)=>Ie(Re(K,I(e)),t),forEachRow:(e,t)=>ye(Re(Y,I(e)),((e,n)=>t(n,(t=>Ie(e,t))))),forEachCell:(e,t,n)=>Ie(Re(Re(Y,I(e)),I(t)),n),forEachValue:e=>Ie(Z,e),addSortedRowIdsListener:(e,t,n,s,a,o,r)=>{let l=ln(e,t,n,s,a);return st((()=>{const r=ln(e,t,n,s,a);j(r,l)||(l=r,o(xn,e,t,n,s,a,l))}),Ce[r?1:0],[e,t],[sn])},addStartTransactionListener:e=>st(e,tt),addWillFinishTransactionListener:e=>st(e,nt[0]),addDidFinishTransactionListener:e=>st(e,nt[1]),callListener:e=>(rt(e),xn),delListener:e=>(ot(e),xn),getListenerStats:()=>({}),createStore:kt,addListener:st,callListeners:at,setInternalListeners:(e,t,n,s,a)=>c=[e,t,n,s,a]};return ue({[u+f]:[0,ee,[],()=>[fn()]],[f]:[0,te],[b]:[0,ne],[u+h]:[1,se,[sn],e=>[bn(...e)]],[h]:[1,ae,[sn]],[h+T]:[1,oe,[sn]],[u+h+y]:[2,le,[sn,an],e=>[wn(...e)]],[L]:[1,de,[sn]],[C]:[1,he,[sn]],[u+w]:[2,xe,[sn,rn],e=>[Ln(...e)]],[w]:[2,Qe,[sn,rn]],[T]:[2,We,[sn,rn]],[u+y]:[3,je,[sn,rn,cn],e=>[Cn(...e)]],[y]:[3,$e,[sn,rn,cn],e=>Mt(dn(...e))],InvalidCell:[3,_e],[u+S]:[0,Ge,[],()=>[vn()]],[S]:[0,Ke],[R]:[0,Xe],[u+p]:[1,Ye,[gn],e=>[yn(...e)]],[p]:[1,et,[gn],e=>Mt(hn(e[0]))],InvalidValue:[1,qe]},(([e,t,n,s],a)=>{xn[d+a+i]=(...a)=>st(a[e],t[a[e+1]?1:0],e>0?z(a,0,e):void 0,n,s)})),re(xn)},Jt=2**36,xt=2**30,Ft=2**24,Qt=2**18,zt=4096,Nt={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},Ot=(e=t)=>[vt(e),vt(e)],Pt=e=>{let n=1,s=Ot(),a=0;const o=pe(),r=Oe(),[l,i]=(e=>{let t=0,n=-1;const s=k(e,(e=>{const t=ct(e);return Xe(t/Ft)+Xe(t/Qt)+Xe(t/zt)+Xe(t/64)+Xe(t)}),(()=>et(5))),a=e=>{const s=t,[a,o]=A(e)||""==e?[0,0]:[Ye(r=e,0)*Jt+Ye(r,1)*xt+Ye(r,2)*Ft+Ye(r,3)*Qt+Ye(r,4)*zt+64*Ye(r,5)+Ye(r,6),Ye(r,7)*Qt+Ye(r,8)*zt+64*Ye(r,9)+Ye(r,10)];var r;t=D(s,a,Date.now()),n=t==s?t==a?D(n,o):n:t==a?o:-1};return[()=>{return a(),o=++n,Xe((e=t)/Jt)+Xe(e/xt)+Xe(e/Ft)+Xe(e/Qt)+Xe(e/zt)+Xe(e/64)+Xe(e)+Xe(o/Qt)+Xe(o/zt)+Xe(o/64)+Xe(o)+s;var e,o},a]})(e),c=kt(),d=e=>{const t=n;return n=0,e(),n=t,b},u=(e,n=0)=>{const a={},o={},[[r,l=t,c=0],d]=e,[u,h]=s,[f,b,w]=u;let L=n?c:w,C=l;de(r,(([e,s=t,o=0],r)=>{const l=Ve(f,r,vt),[i,c,d]=l;let u=n?o:d,h=s;de(e,((e,t)=>{const[s,o,l]=g(e,Ve(i,t,vt),he(he(a,r,le),t,le),n);u^=n?0:(o?ft(t,o):0)^ft(t,l),h=wt(h,s)})),u^=n?0:bt(c,s),Lt(l,u,s),L^=n?0:(d?ft(r,d):0)^ft(r,l[2]),C=wt(C,h)})),L^=n?0:bt(b,l),Lt(u,L,l);const[v]=g(d,h,o,n);return i(wt(C,v)),[a,o,1]},g=(e,n,s,a)=>{const[o,r=t,l=0]=e,[i,c,d]=n;let u=r,g=a?l:d;return de(o,(([e,n,o=0],r)=>{const l=Ve(i,r,(()=>[void 0,t,0])),[,c,d]=l;(!c||n>c)&&(Lt(l,a?o:ct(Et(e??null)+":"+n),n),l[0]=e,s[r]=e,g^=a?0:ft(r,d)^ft(r,l[2]),u=wt(u,n))})),g^=a?0:bt(c,r),Lt(n,g,r),[u,d,n[2]]},h=()=>[yt(s[0],(e=>yt(e,(e=>yt(e))))),yt(s[1])],f=e=>d((()=>c.applyChanges(u(e)))),b={getMergeableContent:h,getMergeableContentHashes:()=>[s[0][2],s[1][2]],getMergeableTableHashes:()=>De(s[0][0],ht),getMergeableTableDiff:e=>{const t=Ct(s[0][1]),n={};return Ie(s[0][0],((s,[a,o,r])=>ie(e,s)?r!=e[s]?n[s]=r:0:t[0][s]=Tt([a,o],(e=>Tt(e))))),[t,n]},getMergeableRowHashes:e=>{const t={};return de(e,((e,n)=>k(Re(s[0][0],n),(([s,,a])=>a!=e?Ie(s,((e,[,,s])=>he(t,n,le)[e]=s)):0)))),t},getMergeableRowDiff:e=>{const t=Ct(s[0][1]),n={};return de(e,((e,a)=>Ie(Re(s[0][0],a)?.[0],((s,[o,r,l])=>ie(e,s)?l!==e[s]?he(n,a,le)[s]=l:0:he(t[0],a,Ct)[0][s]=Tt([o,r]))))),[t,n]},getMergeableCellHashes:e=>{const t={};return de(e,((e,n)=>k(Re(s[0][0],n),(([s])=>de(e,((e,a)=>k(Re(s,a),(([s,,o])=>o!==e?Ie(s,((e,[,,s])=>he(he(t,n,le),a,le)[e]=s)):0)))))))),t},getMergeableCellDiff:e=>{const[[t,n]]=s,a={};return de(e,((e,n)=>de(e,((e,s)=>k(Re(t,n),(([t,o])=>k(Re(t,s),(([t,r])=>Ie(t,((t,[l,i,c])=>c!==e[t]?he(he(a,n,(()=>Ct(o)))[0],s,(()=>Ct(r)))[0][t]=[l,i]:0)))))))))),gt(a,n)},getMergeableValuesHashes:()=>De(s[1][0],ht),getMergeableValueDiff:e=>{const[,[t,n]]=s,a=De(t,ut,(([,,t],n)=>t==e?.[n]));return gt(a,n)},setMergeableContent:e=>d((()=>(e=>Q(e)&&2==N(e)&&pt(e[0],(e=>fe(e,(e=>pt(e,(e=>fe(e,(e=>pt(e,(e=>fe(e,(e=>pt(e,Qe)),void 0,1)))),void 0,1)))),void 0,1)))&&pt(e[1],(e=>fe(e,(e=>pt(e,Qe)),void 0,1))))(e)?c.transaction((()=>{c.delTables().delValues(),s=Ot(),c.applyChanges(u(e,1))})):0)),setDefaultContent:e=>(c.transaction((()=>{a=1,c.setContent(e),a=0})),b),getTransactionMergeableChanges:()=>{const[[e,t],[n,a]]=s,l={};ye(o,((t,n)=>k(Re(e,n),(([e,s])=>{const a={};ye(t,((t,n)=>k(Re(e,n),(([e,s])=>{const o={};ye(t,(t=>{k(Re(e,t),(([e,n])=>o[t]=gt(e,n)))})),a[n]=gt(o,s)})))),l[n]=gt(a,s)}))));const i={};return ye(r,(e=>k(Re(n,e),(([t,n])=>i[e]=gt(t,n))))),[gt(l,t),gt(i,a),1]},applyMergeableChanges:f,merge:e=>{const t=h(),n=e.getMergeableContent();return e.applyMergeableChanges(t),f(n)}};return c.setInternalListeners((()=>{}),(()=>{}),(()=>{ve(o),ve(r)}),((e,s,r,i)=>{Pe(Ve(Ve(o,e,pe),s,Oe),r),n&&u([[{[e]:[{[s]:[{[r]:[i,a?t:l()]}]}]}],[{}],1])}),((e,s)=>{Pe(r,e),n&&u([[{}],[{[e]:[s,a?t:l()]}],1])})),ue(c,((e,t)=>b[t]=M(t,"set")||M(t,"del")||M(t,"apply")||V(t,"Transaction")||"callListener"==t?(...t)=>(e(...t),b):M(t,"add")&&V(t,"Listener")?(...n)=>{const s=Nt[z(t,3,-8)]??0,a=n[s];return n[s]=(e,...t)=>a(b,...t),e(...n)}:e)),re(b)};export{qe as createCheckpoints,lt as createCustomPersister,St as createCustomSynchronizer,tt as createIndexes,Pt as createMergeableStore,at as createMetrics,Rt as createQueries,It as createRelationships,kt as createStore,Ze as defaultSorter,et as getUniqueId};
|
package/lib/tinybase.js.gz
CHANGED
|
Binary file
|
package/lib/tools.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=e=>typeof e,l="tinybase",t="",a=",",n=e(t),d=e(!0),o=e(0),s="type",r="default",I="Listener",$="get",c="add",u="Has",i="Ids",b="Table",p=b+"s",C=b+i,h="Row",m=h+i,g="Sorted"+h+i,w="Cell",f=w+i,T="Value",y=T+"s",v=T+i,V=Promise,x=isFinite,R=e=>null==e,A=(e,l,t)=>R(e)?t?.():l(e),k=e=>e==n||e==d,S=l=>e(l)==n,P=e=>Array.isArray(e),O=(e,l,t)=>e.slice(l,t),E=e=>e.length,N=async e=>V.all(e),D=l=>{const t=e(l);return k(t)||t==o&&x(l)?t:void 0},L=(e,l)=>e.every(l),G=(e,l)=>e.sort(l),j=(e,l)=>e.forEach(l),H=(e,l=t)=>e.join(l),M=(e,l)=>e.map(l),J=(e,l)=>e.filter(l),z=(e,...l)=>e.push(...l),W=e=>e.pop(),B=(e,...l)=>e.unshift(...l),F=e=>e.shift(),U=Object,_=e=>U.getPrototypeOf(e),Z=U.entries,Q=e=>!R(e)&&A(_(e),(e=>e==U.prototype||R(_(e))),(()=>!0)),q=U.keys,K=U.freeze,X=(e,l)=>M(Z(e),(([e,t])=>l(t,e))),Y=e=>E(q(e)),ee=e=>Q(e)&&0==Y(e),le=(e,l)=>e?.has(l)??!1,te=e=>[...e?.values()??[]],ae=(e,l)=>e?.forEach(l),ne=(e,l)=>e?.delete(l),de=e=>new Map(e),oe=(e,l)=>e?.get(l),se=(e,l)=>ae(e,((e,t)=>l(t,e))),re=(e,l)=>M([...e?.entries()??[]],(([e,t])=>l(t,e))),Ie=(e,l,t)=>R(t)?(ne(e,l),e):e?.set(l,t),$e=(e,l,t,a)=>(le(e,l)?a?.(oe(e,l)):Ie(e,l,t()),oe(e,l)),ce=e=>e.toUpperCase(),ue=e=>e.toLowerCase(),ie="a ",be="A function for",pe=", and registers a listener so that any changes to that result will cause a re-render",Ce="Callback",he="Changes",me="Count",ge="Del",we="Deps",fe=we+"?: React.DependencyList",Te="doRollback?: DoRollback",ye="actions: () => Return, "+Te,ve="export",Ve="Id",xe="Invalid",Re="Json",Ae=ue(I),ke="?: ",Se=" | undefined",Pe="NonNullable",Oe="Partial",Ee="Props",Ne="Provider",De=`Registers a ${Ae} that will be called`,Le="Represents",Ge="rowId: "+Ve,je="Schema",He="Set",Me=", descending?: boolean, offset?: number, limit?: number",Je="[]",ze="the Store",We="Transaction",Be=ue(We),Fe="Execute a "+Be+" to make multiple mutations",Ue="Explicitly starts a "+Be,_e="Explicitly finishes a "+Be,Ze="the end of the "+Be,Qe="void",qe=" => "+Qe,Ke="WhenSet",Xe=" when setting it",Ye=ie+"string serialization of",el=" ",ll="Gets a callback that can ",tl="the ",al=" the schema for",nl=(e=0)=>e?"the existence of ":"",dl=(e=0,l=0,a=0)=>nl(a)+`the ${yl[e]}content of`+(l?el+ze:t),ol=(e=0,l,a=0,n=0)=>wl[l]+el+nl(n)+dl(e,1)+(a?" when setting it":t),sl=(e,l=0)=>Le+` a Row when ${l?"s":"g"}etting ${dl()} the '${e}' `+b,rl=(e,l,t=0)=>`Gets ${t?"sorted, paginated":"the"} Ids of the ${e}s in `+l,Il=(e,l)=>`Calls a function for each ${e} in `+l,$l=e=>"The props passed to a component that renders "+e,cl=e=>"A function that takes "+e,ul=(e,l=0,t=0)=>be+" listening to changes to "+nl(t)+Tl[e]+" in "+Tl[l],il=(e,l,a=0,n=0)=>De+" whenever "+nl(n)+Tl[e]+" in "+Tl[l]+" change"+(a?t:"s"),bl=e=>`the '${e}' `+b,pl=e=>"the specified Row in "+bl(e),Cl=(e,l=0,t=0)=>wl[l]+el+dl(0,0,t)+el+bl(e),hl=(e,l=0,t=0)=>wl[l]+` ${dl(0,0,t)} `+pl(e),ml=(e,l,t=0,a=0)=>wl[t]+el+nl(a)+`the '${l}' Cell for `+pl(e),gl=(e,l=0,t=0)=>wl[l]+el+nl(t)+`the '${e}' Value`,wl=["Gets","Checks existence of","Sets","Deletes","Sets part of",Le,"Gets "+Ye,"Sets "+Ye,De+" whenever",ll+"set",ll+"add",ll+"set part of",ll+"delete","Renders","Gets "+Ye+al,"Sets"+al,"Deletes"+al],fl=[$,"has","set","del","set","forEach",c,t],Tl=[ze,p,tl+b+el+i,ie+b,tl+h+el+i,ie+h,tl+w+el+i,ie+w,"invalid Cell changes",y,tl+T+el+i,ie+T,"invalid Value changes",tl+"sorted "+h+el+i,tl+w+el+i+" anywhere",tl+"number of Rows",ie+w+" anywhere"],yl=[t,"tabular ","keyed value "],vl=e=>new Set(P(e)||R(e)?e:[e]),Vl=(e,l)=>e?.add(l),xl=/[^A-Za-z]+/,Rl=/[^A-Za-z0-9]+/,Al=/^( *)\/\*\* *(.*?) *\*\/$/gm,kl=e=>e.includes(a),Sl=(e,l,t,a=1)=>{const n=`${l}${1==a?"":a}`;return le(e,n)?Sl(e,l,t,a+1):(Ie(e,n,t),n)},Pl=e=>e.replace(Al,((e,l,t)=>{const a=77-E(l);return`${l}/**\n${t.replace(RegExp(`([^\\n]{1,${a}})(\\s|$)`,"g"),l+" * $1\n")}${l} */`})),Ol=e=>e.flat(1e3),El=(e,l=0)=>H(M(e.split(Rl),((e,t)=>(t>0||l?ce:ue)(O(e,0,1))+O(e,1)))),Nl=e=>ce(H((e&&!xl.test(e[0])?e:" "+e).split(Rl),"_")),Dl=e=>`/** ${e}. */`,Ll=(...e)=>H(J(e,(e=>e)),", "),Gl=(...e)=>"{"+H(e,"; ")+"}",jl=(...e)=>Gl(...M(e,(e=>"readonly "+e))),Hl=()=>{const e=[de(),de(),de(),de()],l=de(),a=de(),n=e=>{const l=e.indexOf(" as ");return-1!=l?O(e,l+4):e};return[(...e)=>H(Ol(e),"\n"),(l,t,...a)=>j(a,(a=>j([0,1],(n=>(l??n)==n?Vl($e(e[n],t,vl),a):0)))),(e,a,n,d=t,o=1)=>Sl(l,e,[a,n,d,o]),(e,l,t)=>Sl(a,e,P(t)?[`(${l}) => {`,t,"}"]:[`(${l}) => ${t}`]),(e,l)=>oe(a,e)===l?e:Sl(a,e,l),(l=0)=>M([...G(re(e[l],((e,l)=>`import {${H(G(te(e),((e,l)=>n(e)>n(l)?1:-1)),", ")}} from '${l}';`)),((e,l)=>kl(e)!=kl(l)?kl(e)?-1:1:e>l?1:-1)),t],(e=>e.replace("{React}","React"))),()=>re(l,(([e,l,a,n],d)=>[Dl(l),`${n?ve+" ":t}type ${d}${a} = ${e};`,t])),()=>re(a,((e,l)=>(e=P(e)?e:[e],z(e,W(e)+";"),[`const ${l} = ${F(e)}`,e,t])))]},Ml=(e,l)=>{const t=new WeakMap;return a=>{t.has(a)||t.set(a,e(a));const n=t.get(a);return l?.(n),n}},Jl=(e,l,t)=>[l=>X(e,((e,a)=>l(a,El(a,1),t(Nl(a),`'${a}'`)))),(l,a)=>X(e[l],((e,l)=>a(l,e[s],e[r],t(Nl(l),`'${l}'`),El(l,1)))),e=>X(l,((l,a)=>e(a,l[s],l[r],t(Nl(a),`'${a}'`),El(a,1))))],zl=(e,l,a,n)=>[(n,d)=>{const o=n+": "+d,s=e(p,Gl(...l((e=>`'${e}'?: {[rowId: Id]: `+Gl(...a(e,((e,l,a)=>`'${e}'${R(a)?"?":t}: ${l}`)))+"}"))),ol(1,5)),r=e(p+Ke,Gl(...l((e=>`'${e}'?: {[rowId: Id]: `+Gl(...a(e,((e,l)=>`'${e}'?: ${l}`)))+"}"))),ol(1,5,1)),$=e(b+Ve,"keyof "+s,"A "+b+" Id in "+ze),c=`<TId extends ${$}>`,i=e(b,Pe+`<${s}[TId]>`,"A "+b+" in "+ze,c),T=e(b+Ke,Pe+`<${r}[TId]>`,"A "+b+" in "+ze+Xe,c),y=e(h,i+"<TId>[Id]","A "+h+" in a "+b,c),v=e(h+Ke,T+"<TId>[Id]","A "+h+" in a "+b+Xe,c),V=e(w+Ve,`Extract<keyof ${y}<TId>, Id>`,"A "+w+" Id in a "+h,c),x=e(w,Pe+`<${s}[TId]>[Id][CId]`,"A "+w+" in a "+h,`<TId extends ${$}, CId extends ${V}<TId>>`),A=e("CellIdCellArray",`CId extends ${V}<TId> ? [cellId: CId, cell: ${x}<TId, CId>] : never`,w+" Ids and types in a "+h,`<TId extends ${$}, CId = ${V}<TId>>`,0),k=e(w+Ce,`(...[cellId, cell]: ${A}<TId>)`+qe,cl(ie+w+" Id, and "+w),c),S=e(h+Ce,"(rowId: Id, forEachCell: (cellCallback: CellCallback<TId>) "+qe+") "+qe,cl(ie+h+" Id, and a "+w+" iterator"),c),P=e(b+w+Ce,`(cellId: ${V}<TId>, count: number) `+qe,cl(ie+w+" Id, and count of how many times it appears"),c),O=e("TableIdForEachRowArray",`TId extends ${$} ? [tableId: TId, forEachRow: (rowCallback: ${S}<TId>)${qe}] : never`,b+" Ids and callback types",`<TId = ${$}>`,0),E=e(b+Ce,`(...[tableId, forEachRow]: ${O})`+qe,cl(ie+b+" Id, and a "+h+" iterator"),t),N=e("TableIdRowIdCellIdArray",`TId extends ${$} ? [tableId: TId, rowId: Id, cellId: ${V}<TId>] : never`,"Ids for GetCellChange",`<TId = ${$}>`,0),D=e("GetCellChange",`(...[tableId, rowId, cellId]: ${N}) => CellChange`,be+" returning information about any Cell's changes during a "+Be),L=e(u+p+I,`(${o}, hasTables: boolean)`+qe,ul(1,0,1)),G=e(p+I,`(${o}, getCellChange: ${D}${Se})`+qe,ul(1)),j=e(C+I,`(${o})`+qe,ul(2)),H=e(u+b+I,`(${o}, tableId: ${$}, hasTable: boolean)`+qe,ul(3,0,1)),M=e(b+I,`(${o}, tableId: ${$}, getCellChange: ${D}${Se})`+qe,ul(3)),J=e(b+f+I,`(${o}, tableId: ${$})`+qe,ul(14,3)),z=e("HasTableCellListenerArgsArrayInner",`CId extends ${V}<TId> ? [${o}, tableId: TId, cellId: CId, hasTableCell: boolean] : never`,"Cell args for HasTableCellListener",`<TId extends ${$}, CId = ${V}<TId>>`,0),W=e("HasTableCellListenerArgsArrayOuter",`TId extends ${$} ? `+z+"<TId> : never","Table args for HasTableCellListener",`<TId = ${$}>`,0),B=e(u+b+w+I,`(...[${n}, tableId, cellId, hasTableCell]: `+W+")"+qe,ul(16,3,1)),F=e(h+"Count"+I,`(${o}, tableId: ${$})`+qe,ul(15,3)),U=e(m+I,`(${o}, tableId: ${$})`+qe,ul(4,3)),_=e(g+I,"("+Ll(o,"tableId: "+$,"cellId: Id"+Se,"descending: boolean","offset: number","limit: number"+Se,"sortedRowIds: Ids")+")"+qe,ul(13,3)),Z=e(u+h+I,"("+Ll(""+o,"tableId: "+$,Ge,"hasRow: boolean")+")"+qe,ul(5,3,1)),Q=e(h+I,"("+Ll(""+o,"tableId: "+$,Ge,`getCellChange: ${D}${Se}`)+")"+qe,ul(5,3)),q=e(f+I,"("+Ll(""+o,"tableId: "+$,Ge)+")"+qe,ul(6,5)),K=e("HasCellListenerArgsArrayInner",`CId extends ${V}<TId> ? [${o}, tableId: TId, ${Ge}, cellId: CId, hasCell: boolean] : never`,"Cell args for HasCellListener",`<TId extends ${$}, CId = ${V}<TId>>`,0),X=e("HasCellListenerArgsArrayOuter",`TId extends ${$} ? `+K+"<TId> : never","Table args for HasCellListener",`<TId = ${$}>`,0),Y=e(u+w+I,`(...[${n}, tableId, rowId, cellId, hasCell]: `+X+")"+qe,ul(7,5,1)),ee=e("CellListenerArgsArrayInner",`CId extends ${V}<TId> ? [${o}, tableId: TId, ${Ge}, cellId: CId, newCell: ${x}<TId, CId> ${Se}, oldCell: ${x}<TId, CId> ${Se}, getCellChange: ${D} ${Se}] : never`,"Cell args for CellListener",`<TId extends ${$}, CId = ${V}<TId>>`,0),le=e("CellListenerArgsArrayOuter",`TId extends ${$} ? `+ee+"<TId> : never","Table args for CellListener",`<TId = ${$}>`,0);return[s,r,$,i,T,y,v,V,x,k,S,P,E,L,G,j,H,M,J,B,F,U,_,Z,Q,q,Y,e(w+I,`(...[${n}, tableId, rowId, cellId, newCell, oldCell, getCellChange]: ${le})`+qe,ul(7,5)),e(xe+w+I,`(${o}, tableId: Id, ${Ge}, cellId: Id, invalidCells: any[])`+qe,ul(8))]},(l,a)=>{const d=l+": "+a,o=e(y,Gl(...n(((e,l,a)=>`'${e}'${R(a)?"?":t}: ${l}`))),ol(2,5)),s=e(y+Ke,Gl(...n(((e,l)=>`'${e}'?: ${l}`))),ol(2,5,1)),r=e(T+Ve,"keyof "+o,"A "+T+" Id in "+ze),$=e(T,Pe+`<${o}[VId]>`,"A "+T+" Id in "+ze,`<VId extends ${r}>`),c=e("ValueIdValueArray",`VId extends ${r} ? [valueId: VId, value: ${$}<VId>] : never`,T+" Ids and types in "+ze,`<VId = ${r}>`,0),i=e(T+Ce,`(...[valueId, value]: ${c})`+qe,cl(ie+T+" Id, and "+T)),b=e("GetValueChange",`(valueId: ${r}) => ValueChange`,be+" returning information about any Value's changes during a "+Be),p=e(u+y+I,`(${d}, hasValues: boolean)`+qe,ul(9,0,1)),C=e(y+I,`(${d}, getValueChange: ${b}${Se})`+qe,ul(9)),h=e(v+I,`(${d})`+qe,ul(10)),m=e(u+T+I,`(${d}, valueId: ValueId, hasValue: boolean)`+qe,ul(11,0,1)),g=e("ValueListenerArgsArray",`VId extends ${r} ? [${d}, valueId: VId, newValue: ${$}<VId> ${Se}, oldValue: ${$}<VId> ${Se}, getValueChange: ${b} ${Se}] : never`,"Value args for ValueListener",`<VId = ${r}>`,0);return[o,s,r,$,i,p,C,h,m,e(T+I,`(...[${l}, valueId, newValue, oldValue, getValueChange]: `+g+")"+qe,ul(11)),e(xe+T+I,`(${d}, valueId: Id, invalidValues: any[])`+qe,ul(12))]},(l,t)=>e(We+I,`(${l}: ${t})`+qe,be+" listening to the completion of a "+Be)],Wl=(e,l=t,a=t)=>`store.${e}(${l})`+(a?" as "+a:t),Bl=(e,l=t)=>`fluent(() => ${Wl(e,l)})`,Fl=(e,l=t,a=t)=>`store.${e}(${l?l+", ":t}proxy(listener)${a?", "+a:t})`,Ul=(e,a,n)=>{const[o,$,V,x,A,k,P,O]=Hl(),[E,N,D]=Jl(e,a,A),[L,G,M]=zl(V,E,N,D),J=de(),W=(e=0)=>re(J,(([l,a,n,d,o],s)=>{const r=e?[s+`: ${o}(${l}): ${a} => ${n},`]:[s+o+`(${l}): ${a};`];return e||B(r,Dl(d)),z(r,t),r})),F=(e,l,a,n,d,o=t)=>Sl(J,e,[l,a,n,d,o]),U=(e,l,a,n,d,o=t,s=t,r=t)=>F(fl[e]+l+(4==e?Oe:t)+a,o,n,(n==Q?Bl:Wl)(fl[e]+(4==e?Oe:t)+a,s,e?void 0:n),d,r),_=(e,l,a,n=t,d=t,o=1,s=t)=>F(c+e+I,(n?n+", ":t)+Ae+": "+l+(o?", mutator?: boolean":t),Ve,Fl(c+e+I,d,o?"mutator":t),a,s),Z=`./${El(n)}.d`,Q=El(n,1),q=El(Q),K=[],X=de();let Y=[],le=[];if($(1,Z,Q,`create${Q} as create${Q}Decl`),ee(e))$(null,l,p);else{$(0,l,"CellChange"),$(null,l,i);const[e,a,n,o,I,c,T,y,v,x,k,P,O,D,G,M,J,W,B,F,ee,le,ae,ne,se,re,$e,ce,ue]=L(q,Q),ie=de();E(((e,l)=>{const t=`<'${e}'>`,a=[V(l+b,o+t,Le+` the '${e}' `+b),V(l+b+Ke,I+t,Le+` the '${e}' `+b+Xe),V(l+h,c+t,sl(e)),V(l+h+Ke,T+t,sl(e,1)),V(l+w+Ve,y+t,`A Cell Id for the '${e}' `+b),V(l+w+Ce,x+t,cl(`a Cell Id and value from a Row in the '${e}' `+b)),V(l+h+Ce,k+t,cl(`a Row Id from the '${e}' Table, and a Cell iterator`)),V(l+b+w+Ce,P+t,cl(`a Cell Id from anywhere in the '${e}' Table, and a count of how many times it appears`))];Ie(ie,e,a),$(1,Z,...a)})),$(1,Z,e,a,n,y,O,D,G,M,J,W,B,F,ee,le,ae,ne,se,re,$e,ce,ue),Y=[e,a,n,y,D,G,M,J,W,B,F,ee,le,ae,ne,se,re,$e,ce,ie],j([[e],[d],[Q,"tables: "+a,"tables"],[Q]],(([e,l,a],n)=>U(n,t,p,e,ol(1,n),l,a))),U(0,t,C,n+Je,rl(b,ze)),U(5,t,b,Qe,Il(b,ze),"tableCallback: "+O,"tableCallback as any"),E(((e,l,a)=>{const[n,o,s,r,I,$,c,u]=oe(ie,e);j([[n],[d],[Q,"table: "+o,", table"],[Q]],(([n,d,o=t],s)=>U(s,l,b,n,Cl(e,s),d,a+o))),U(0,l,b+f,i,rl(w,"the whole of "+bl(e)),t,a),U(5,l,b+w,Qe,Il(b+w,"the whole of "+bl(e)),"tableCellCallback: "+u,a+", tableCellCallback as any"),U(0,l,h+me,"number","Gets the number of Rows in the "+bl(e),t,a),U(0,l,m,i,rl(h,bl(e)),t,a),U(0,l,g,i,rl(h,bl(e),1),"cellId?: "+I+Me,a+", cellId, descending, offset, limit"),U(5,l,h,Qe,Il(h,bl(e)),"rowCallback: "+c,a+", rowCallback as any"),j([[s],[d],[Q,", row: "+r,", row"],[Q],[Q,", partialRow: "+r,", partialRow"]],(([n,d=t,o=t],s)=>U(s,l,h,n,hl(e,s),Ge+d,a+", rowId"+o))),U(6,l,h,Ve+Se,"Add a new Row to "+bl(e),"row: "+r+", reuseIds?: boolean",a+", row, reuseIds"),U(0,l,f,I+Je,rl(w,pl(e)),Ge,a+", rowId"),U(5,l,w,Qe,Il(w,pl(e)),Ge+", cellCallback: "+$,a+", rowId, cellCallback as any"),N(e,((n,o,s,r,I)=>{const $="Map"+El(o,1);Ie(X,o,$);const c=o+(R(s)?Se:t);j([[c],[d],[Q,`, cell: ${o} | `+$,", cell as any"],[Q]],(([d,o=t,s=t],$)=>U($,l+I,w,d,ml(e,n,$),Ge+o,a+", rowId, "+r+s))),U(1,l+I,b+w,d,wl[1]+` the '${n}' Cell anywhere in `+bl(e),t,a+", "+r)}))})),U(0,t,p+Re,Re,ol(1,6)),U(2,t,p+Re,Q,ol(1,7),"tablesJson: "+Re,"tables"+Re),_(u+p,D,ol(1,8,0,1)+" changes"),_(p,G,ol(1,8)+" changes"),_(C,M,il(2,0,1)),_(u+b,J,il(3,0,0,1),`tableId: ${n} | null`,"tableId"),_(b,W,il(3,0),`tableId: ${n} | null`,"tableId"),_(b+f,B,il(14,3,1),`tableId: ${n} | null`,"tableId"),_(u+b+w,F,il(16,3,0,1),`tableId: ${n} | null, cellId: ${H(E((e=>oe(ie,e)?.[4]??t))," | ")} | null`,"tableId, cellId"),_(h+me,ee,il(15,3),`tableId: ${n} | null`,"tableId"),_(m,le,il(4,3,1),`tableId: ${n} | null`,"tableId"),_(g,ae,il(13,3,1),Ll("tableId: TId",`cellId: ${y}<TId>`+Se,"descending: boolean","offset: number","limit: number"+Se),Ll("tableId","cellId","descending","offset","limit"),1,"<TId extends TableId>"),_(u+h,ne,il(5,3,0,1),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(h,se,il(5,3),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(f,re,il(6,5,1),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(u+w,$e,il(7,5,0,1),`tableId: ${n} | null, rowId: IdOrNull, cellId: ${H(E((e=>oe(ie,e)?.[4]??t))," | ")} | null`,"tableId, rowId, cellId"),_(w,ce,il(7,5),`tableId: ${n} | null, rowId: IdOrNull, cellId: ${H(E((e=>oe(ie,e)?.[4]??t))," | ")} | null`,"tableId, rowId, cellId"),_(xe+w,ue,De+" whenever an invalid Cell change was attempted","tableId: IdOrNull, rowId: IdOrNull, cellId: IdOrNull","tableId, rowId, cellId"),$(1,Z,...te(X)),z(K,".set"+p+je+"({",Ol(E(((e,l,a)=>[`[${a}]: {`,...N(e,((e,l,a,n)=>`[${n}]: {[${A(Nl(s),`'${s}'`)}]: ${A(Nl(l),`'${l}'`)}${R(a)?t:`, [${A(Nl(r),`'${r}'`)}]: `+(S(a)?A(Nl(a),`'${a}'`):a)}},`)),"},"]))),"})")}if(ee(a))$(null,l,y);else{const[e,a,n,o,I,c,i,b,p,C,h]=G(q,Q);$(1,Z,e,a,n,I,c,i,b,p,C,h),le=[e,a,n,c,i,b,p,C],j([[e],[d],[Q,"values: "+a,"values"],[Q],[Q,"partialValues: "+a,"partialValues"]],(([e,l,a],n)=>U(n,t,y,e,ol(2,n),l,a))),U(0,t,v,n+Je,rl(T,ze)),U(5,t,T,"void",Il(T,ze),"valueCallback: "+I,"valueCallback as any"),D(((e,l,a,n,o)=>{const s="Map"+El(l,1);Ie(X,l,s),j([[l],[d],[Q,`value: ${l} | `+s,", value as any"],[Q]],(([l,a,d=t],s)=>U(s,o,T,l,gl(e,s),a,n+d)))})),U(0,t,y+Re,Re,ol(2,6)),U(2,t,y+Re,Q,ol(2,7),"valuesJson: "+Re,"values"+Re),_(u+y,c,ol(2,8,0,1)+" changes"),_(y,i,ol(2,8)+" changes"),_(v,b,il(10,0,1)),_(u+T,p,il(11,0,0,1),`valueId: ${n} | null`,"valueId"),_(T,C,il(11,0),`valueId: ${n} | null`,"valueId"),_(xe+T,h,De+" whenever an invalid Value change was attempted","valueId: IdOrNull","valueId"),$(1,Z,...te(X)),$(0,l,"ValueChange"),z(K,".set"+y+je+"({",D(((e,l,a,n)=>[`[${n}]: {[${A(Nl(s),`'${s}'`)}]: ${A(Nl(l),`'${l}'`)}${R(a)?t:`, [${A(Nl(r),`'${r}'`)}]: `+(S(a)?A(Nl(a),`'${a}'`):a)}},`])),"})")}U(0,t,"Content",`[${p}, ${y}]`,ol(0,0)),U(2,t,"Content",Q,ol(0,2),`[tables, values]: [${p}, ${y}]`,"[tables, values]"),U(7,t,"applyChanges",Q,`Applies a set of ${he} to the Store`,"changes: "+he,"changes"),se(X,((e,l)=>V(l,`(cell: ${e}${Se}) => `+e,`Takes a ${e} Cell value and returns another`))),$(null,l,"DoRollback",Ve,"IdOrNull",Re,"Store",he),U(0,t,Re,Re,ol(0,6)),U(2,t,Re,Q,ol(0,7),"tablesAndValuesJson: "+Re,"tablesAndValuesJson"),U(7,t,Be,"Return",Fe,ye,"actions, doRollback","<Return>"),U(7,t,"start"+We,Q,Ue),U(7,t,"finish"+We,Q,_e,Te,"doRollback");const ae=M(q,Q);return _("Start"+We,ae,De+" just before the start of the "+Be,t,t,0),_("WillFinish"+We,ae,De+" just before "+Ze,t,t,0),_("DidFinish"+We,ae,De+" just after "+Ze,t,t,0),U(7,t,"call"+I,Q,"Manually provoke a listener to be called","listenerId: Id","listenerId"),U(3,t,I,Q,"Remove a listener that was previously added to "+ze,"listenerId: Id","listenerId"),F("getStore",t,"Store","store",wl[0]+" the underlying Store object"),$(1,l,"createStore"),$(1,Z,Q,`create${Q} as create${Q}Decl`,ae),A("store",["createStore()",...K]),x("fluent","actions: () => Store",["actions();",`return ${q};`]),x("proxy","listener: any",`(_: Store, ...params: any[]) => listener(${q}, ...params)`),A(q,["{",...W(1),"}"]),[o(...k(0),...P(),ve+" interface "+Q+" {",...W(0),"}",t,Dl(`Creates a ${Q} object`),ve+" function create"+Q+"(): "+Q+";"),o(...k(1),ve+" const create"+Q+": typeof create"+Q+"Decl = () => {",...O(),`return Object.freeze(${q});`,"};"),Y,le]},_l=e=>$+e,Zl=e=>Ll(_l(e),_l(e)+we),Ql="debugIds?: boolean",ql="debugIds={debugIds}",Kl="then"+fe,Xl="Parameter",Yl=": (parameter: "+Xl+", store: Store) => ",et="const contextValue = useContext(Context);",lt=", based on a parameter",tt=": ",at="<"+Xl+",>",nt=Xl+"ized"+Ce+"<"+Xl+">",dt="rowId",ot="rowId={rowId}",st=", separator, debugIds",rt="separator?: ReactElement | string",It="then?: (store: Store",$t=Ll(It+")"+qe,Kl),ct="then, then"+we,ut=dt+tt+Ve,it="View",bt=(e,...l)=>Ll(...l,Ae+": "+e,Ae+fe,"mutator?: boolean"),pt=(...e)=>Ll(...e,Ae,Ae+we,"mutator"),Ct=(e,a,n,s,r)=>{const[$,c,V,x,A,k,S,P]=Hl(),[O,E,N]=Jl(e,a,A),D=`./${El(n)}.d`,L=`./${El(n)}-ui-react.d`,G="tinybase/ui-react",j=El(n,1),M=El(j),J=j+"Or"+j+Ve,W=M+"Or"+j+Ve,F=M+`={${M}}`,U=de(),_=(e,l,a,n,d,o=t)=>(c(1,L,e+" as "+e+"Decl"),Sl(U,e,[l,a,n,d,o])),Z=(e,l,a,n,d,o=t)=>_("use"+e,l,a,n,d,o),Q=(e,l,a,n,d=t,o=t,s=t,r=t,I=t)=>(c(1,G,`use${l} as use${l}Core`),Z(e,Ll(d,le,r),a,ae+`(${W}, use${l}Core, [`+(o||t)+(I?"], ["+I:t)+"]);",n,s)),q=(e,l,t,a)=>_(e,l,1,t,a),K=(e=0)=>re(U,(([l,a,n,d,o],s)=>{const r=e?[ve+` const ${s}: typeof ${s}Decl = ${o}(${l}): ${1==a?"any":a} =>`,n]:[ve+` function ${s}${o}(${l}): ${1==a?"ComponentReturnType":a};`];return e||B(r,Dl(d)),z(r,t),r}));c(null,l,Ve,"Store",Ce,Xl+"ized"+Ce),c(0,G,"ComponentReturnType"),c(1,G,"useCellIds"),c(null,G,"ExtraProps"),c(0,D,j);const X=V(J,j+" | "+Ve,`Used when you need to refer to a ${j} in a React hook or component`),Y=V(Ne+Ee,jl(M+ke+j,M+`ById?: {[${M}Id: Id]: ${j}}`),`Used with the ${Ne} component, so that a `+j+" can be passed into the context of an application");c(0,"react","ReactElement","ComponentType"),c(1,"react","React"),c(1,L,X,Y);const le=W+ke+X;A("{createContext, useContext, useMemo}","React"),A("Context",`createContext<[${j}?, {[${M}Id: Id]: ${j}}?]>([])`),Z("Create"+j,`create: () => ${j}, create`+fe,j,"\n// eslint-disable-next-line react-hooks/exhaustive-deps\nuseMemo(create, createDeps)",`Create a ${j} within a React application with convenient memoization`);const te=Z(j,"id?: Id",j+Se,["{",et,"return id == null ? contextValue[0] : contextValue[1]?.[id];","}"],`Get a reference to a ${j} from within a ${Ne} component context`),ae=x("useHook",W+`: ${X} | undefined, hook: (...params: any[]) => any, preParams: any[], postParams: any[] = []`,[`const ${M} = ${te}(${W} as Id);`,`return hook(...preParams, ((${W} == null || typeof ${W} == 'string')`,`? ${M} : ${W})?.getStore(), ...postParams)`]),ne=x("getProps","getProps: ((id: any) => ExtraProps) | undefined, id: Id","(getProps == null) ? ({} as ExtraProps) : getProps(id)"),se=x("wrap",Ll("children: any","separator?: any","encloseWithId?: boolean","id?: Id"),["const separated = separator==null || !Array.isArray(children)"," ? children"," : children.map((child, c) => (c > 0 ? [separator, child] : child));","return encloseWithId ? [id, ':{', separated, '}'] : separated;"]),Ie=x("useCustomOrDefaultCellIds",Ll("customCellIds: Ids | undefined","tableId: Id","rowId: Id",`${W}?: ${X} | undefined`),[`const defaultCellIds = ${ae}(${W}, useCellIds, [tableId, rowId]);`,"return customCellIds ?? defaultCellIds;"]),$e=A("NullComponent","() => null");if(!ee(e)){const[e,a,n,r,$,T,y,v,A,k,S,P,N,G,J,z,W,B,U,_]=s;c(null,D,e,a,n,$,T,y,v,A,k,S,P,N,G,J,z,W,U,B),c(0,D,r),c(1,D,j),c(null,l,i,"IdOrNull");const Z=x("tableView",`{${M}, rowComponent, getRowComponentProps, customCellIds`+st+"}: any, rowIds: Ids, tableId: Id, defaultRowComponent: React.ComponentType<any>",["const Row = rowComponent ?? defaultRowComponent;",`return ${se}(rowIds.map((rowId) => (`,"<Row","{..."+ne+"(getRowComponentProps, rowId)}","key={rowId}","tableId={tableId}",ot,"customCellIds={customCellIds}",F,ql,"/>","))",st,", tableId,",");"]),K=x("getDefaultTableComponent","tableId: Id",H(O(((e,l,t)=>`tableId == ${t} ? ${l}TableView : `)))+$e),X=x("getDefaultCellComponent","tableId: Id, cellId: Id",H(O(((e,l,t)=>`tableId == ${t} ? ${H(E(e,((e,t,a,n,d)=>`cellId == ${n} ? `+l+d+"CellView : ")))+$e} : `)))+$e);Q(u+p,u+p,d,ol(1,0,0,1)+pe),Q(p,p,e,ol(1,0)+pe);const Y=Q(C,C,n+Je,rl(b,ze)+pe);Q(He+p+Ce,He+p+Ce,nt,ol(1,9)+lt,Ll(_l(p)+Yl+a,_l(p)+fe),Zl(p),at,Ll(It,`tables: ${a})`+qe,Kl),ct),Q(ge+p+Ce,ge+p+Ce,Ce,ol(1,12),t,t,t,$t,ct);const ee=V(w+Ee,jl("tableId?: TId","rowId: Id","cellId?: CId",M+ke+j,Ql),$l(ie+w),`<TId extends ${n}, CId extends ${r}<TId>>`),le=V(h+Ee,jl("tableId?: TId","rowId: Id",M+ke+j,"cellComponents?: {readonly [CId in "+r+`<TId>]?: ComponentType<${ee}<TId, CId>>;}`,`getCellComponentProps?: (cellId: ${r}<TId>) => ExtraProps`,`customCellIds?: ${r}<TId>[]`,rt,Ql),$l(ie+h),`<TId extends ${n}>`),te=V(b+Ee,jl("tableId?: TId",M+ke+j,`rowComponent?: ComponentType<${le}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps","customCellIds?: CellId<TId>[]",rt,Ql),$l(ie+b),`<TId extends ${n}>`),ae=V("Sorted"+b+Ee,jl("tableId?: TId","cellId?: "+r+"<TId>","descending?: boolean","offset?: number","limit?: number",M+ke+j,`rowComponent?: ComponentType<${le}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps","customCellIds?: CellId<TId>[]",rt,Ql),$l(ie+"sorted "+b),`<TId extends ${n}>`),de=V(p+Ee,jl(M+ke+j,"tableComponents?: {readonly [TId in "+n+`]?: ComponentType<${te}<TId>>;}`,`getTableComponentProps?: (tableId: ${n}) => ExtraProps`,rt,Ql),$l(dl(1,1)));c(1,L,de,te,ae,le,ee),q(p+it,"{"+M+", tableComponents, getTableComponentProps"+st+"}: "+de,[se+`(${Y}(${M}).map((tableId) => {`,"const Table = (tableComponents?.[tableId] ?? "+K+"(tableId)) as React.ComponentType<TableProps<typeof tableId>>;","return <Table",`{...${ne}(getTableComponentProps, tableId)}`,"tableId={tableId}","key={tableId}",F,ql,"/>;","}), separator)"],ol(1,13)+pe),O(((e,l,a)=>{const[n,s,r,I,$]=oe(_,e);c(null,D,n,s,r,I,$),Q(u+l+b,u+b,d,Cl(e,0,1)+pe,t,a),Q(l+b,b,n,Cl(e)+pe,t,a),Q(l+b+f,b+f,i,rl(w,"the whole of "+bl(e))+pe,t,a),Q(l+h+me,h+me,o,"Gets the number of Rows in "+bl(e)+pe,t,a);const p=Q(l+m,m,i,rl(h,bl(e))+pe,t,a),C=Q(l+g,g,i,rl(h,bl(e),1)+pe,"cellId?: "+$+", descending?: boolean, offset?: number, limit?: number",a+", cellId, descending, offset, limit");Q(u+l+h,u+h,d,hl(e,0,1)+pe,ut,Ll(a,dt)),Q(l+h,h,r,hl(e)+pe,ut,Ll(a,dt)),Q(l+f,f,$+Je,rl(w,pl(e))+pe,ut,Ll(a,dt)),Q(He+l+b+Ce,He+b+Ce,nt,Cl(e,9)+lt,Ll(_l(b)+Yl+s,_l(b)+fe),Ll(a,Zl(b)),at,Ll(It,`table: ${s})`+qe,Kl),ct),Q(ge+l+b+Ce,ge+b+Ce,Ce,Cl(e,12),t,a,t,$t,ct),Q(He+l+h+Ce,He+h+Ce,nt,hl(e,9)+lt,Ll(ut,_l(h)+Yl+I,_l(h)+fe),Ll(a,dt,Zl(h)),at,Ll(It,`row: ${I})`+qe,Kl),ct),Q("Add"+l+h+Ce,"Add"+h+Ce,nt,hl(e,10)+lt,Ll(_l(h)+Yl+I,_l(h)+fe),Ll(a,Zl(h)),at,"then?: ("+Ll(ut+Se,"store: Store","row: "+I+")"+qe,"then"+fe)+", reuseRowIds?: boolean",ct+", reuseRowIds"),Q(He+l+Oe+h+Ce,He+Oe+h+Ce,nt,hl(e,11)+lt,Ll(ut,_l(Oe+h)+Yl+I,_l(Oe+h)+fe),Ll(a,dt,Zl(Oe+h)),at,Ll(It,`partialRow: ${I})`+qe,Kl),ct),Q(ge+l+h+Ce,ge+h+Ce,Ce,hl(e,12),ut,Ll(a,dt),t,$t,ct);const T=q(l+h+it,"{rowId, "+M+", cellComponents, getCellComponentProps, customCellIds"+st+`}: ${le}<'${e}'>`,[se+`(${Ie}(customCellIds, `+a+`, rowId, ${M}).map((cellId: ${$}) => {`,"const Cell = (cellComponents?.[cellId] ?? "+X+`(${a}, cellId)) as React.ComponentType<CellProps<typeof `+a+", typeof cellId>>;","return <Cell",`{...${ne}(getCellComponentProps, cellId)} `,"key={cellId}",`tableId={${a}}`,ot,"cellId={cellId}",F,ql,"/>;","})"+st+", rowId)"],hl(e,13)+pe);q(l+"Sorted"+b+it,"{cellId, descending, offset, limit, ...props}: "+ae+`<'${e}'>`,Z+"(props, "+C+`(cellId, descending, offset, limit, props.${M}), ${a}, ${T});`,Cl(e,13)+", sorted"+pe),q(l+b+it,`props: ${te}<'${e}'>`,Z+"(props, "+p+`(props.${M}), ${a}, ${T});`,Cl(e,13)+pe),E(e,((n,o,s,r,I)=>{const $="Map"+El(o,1);c(0,D,$),c(1,D,$),Q(u+l+I+b+w,u+b+w,d,`Gets ${nl(1)}the '${n}' Cell anywhere in `+bl(e)+pe,t,Ll(a,r)),Q(u+l+I+w,u+w,d,ml(e,n,0,1)+pe,ut,Ll(a,dt,r));const i=Q(l+I+w,w,o+(R(s)?Se:t),ml(e,n)+pe,ut,Ll(a,dt,r));Q(He+l+I+w+Ce,He+w+Ce,nt,ml(e,n,9)+lt,Ll(ut,_l(w)+Yl+o+" | "+$,_l(w)+fe),Ll(a,dt,r,Zl(w)),at,Ll(It,`cell: ${o} | ${$})`+qe,Kl),ct),Q(ge+l+I+w+Ce,ge+w+Ce,Ce,ml(e,n,12),Ll(ut,"forceDel?: boolean"),Ll(a,dt,r,"forceDel"),t,$t,ct),q(l+I+w+it,`{rowId, ${M}, debugIds}: `+ee+`<'${e}', '${n}'>`,[se+`('' + ${i}(rowId, `+M+`) ?? '', undefined, debugIds, ${r})`],ml(e,n,13)+pe)}))}));const re=H(O((e=>oe(_,e)?.[4]??t))," | ");Q(u+p+I,u+p+I,Qe,ol(1,8,0,1)+" changes",bt($),pt()),Q(p+I,p+I,Qe,ol(1,8)+" changes",bt(T),pt()),Q(C+I,C+I,Qe,il(2,0,1),bt(y),pt()),Q(u+b+I,u+b+I,Qe,il(3,0,0,1),bt(v,`tableId: ${n} | null`),pt("tableId")),Q(b+I,b+I,Qe,il(3,0),bt(A,`tableId: ${n} | null`),pt("tableId")),Q(b+f+I,b+f+I,Qe,il(14,3,1),bt(k,`tableId: ${n} | null`),pt("tableId")),Q(u+b+w+I,u+b+w+I,Qe,il(16,3,0,1),bt(S,`tableId: ${n} | null`,`cellId: ${re} | null`),pt("tableId","cellId")),Q(h+me+I,h+me+I,Qe,il(15,3),bt(P,`tableId: ${n} | null`),pt("tableId")),Q(m+I,m+I,Qe,il(4,3,1),bt(N,`tableId: ${n} | null`),pt("tableId")),Q(g+I,g+I,Qe,il(13,3,1),bt(G,`tableId: ${n} | null`,"cellId: "+re+Se,"descending: boolean","offset: number","limit: number"+Se),pt("tableId","cellId","descending","offset","limit")),Q(u+h+I,u+h+I,Qe,il(5,3,0,1),bt(J,`tableId: ${n} | null`,dt+": IdOrNull"),pt("tableId",dt)),Q(h+I,h+I,Qe,il(5,3),bt(z,`tableId: ${n} | null`,dt+": IdOrNull"),pt("tableId",dt)),Q(f+I,f+I,Qe,il(6,5,1),bt(W,`tableId: ${n} | null`,dt+": IdOrNull"),pt("tableId",dt)),Q(u+w+I,u+w+I,Qe,il(7,5,0,1),bt(B,`tableId: ${n} | null`,dt+": IdOrNull",`cellId: ${re} | null`),pt("tableId",dt,"cellId")),Q(w+I,w+I,Qe,il(7,5),bt(U,`tableId: ${n} | null`,dt+": IdOrNull",`cellId: ${re} | null`),pt("tableId",dt,"cellId"))}if(!ee(a)){const[e,l,a,n,o,s,$,i]=r;c(null,D,...r),c(1,D,j);const b=x("getDefaultValueComponent","valueId: Id",H(N(((e,l,t,a,n)=>`valueId == ${a} ? `+n+"ValueView : ")))+$e);Q(u+y,u+y,d,ol(2,0,0,1)+pe),Q(y,y,e,ol(2,0)+pe);const p=Q(v,v,a+Je,rl(T,ze)+pe);Q(He+y+Ce,He+y+Ce,nt,ol(2,9)+lt,Ll(_l(y)+Yl+l,_l(y)+fe),Zl(y),at,Ll(It,`values: ${l})`+qe,Kl),ct),Q(He+Oe+y+Ce,He+Oe+y+Ce,nt,ol(2,11)+lt,Ll(_l(Oe+y)+Yl+l,_l(Oe+y)+fe),Zl(Oe+y),at,Ll(It,`partialValues: ${l})`+qe,Kl),ct),Q(ge+y+Ce,ge+y+Ce,Ce,ol(2,12),t,t,t,$t,ct);const C=V(T+Ee,jl("valueId?: VId",M+ke+j,Ql),$l("a Value"),`<VId extends ${a}>`),h=V(y+Ee,jl(M+ke+j,"valueComponents?: {readonly [VId in "+a+`]?: ComponentType<${C}<VId>>;}`,`getValueComponentProps?: (valueId: ${a}) => ExtraProps`,rt,Ql),$l(dl(2,1)));c(1,L,h,C),q(y+it,"{"+M+", valueComponents, getValueComponentProps"+st+"}: "+h,[se+`(${p}(${M}).map((valueId) => {`,"const Value = valueComponents?.[valueId] ?? "+b+"(valueId);","return <Value",`{...${ne}(getValueComponentProps, valueId)}`,"key={valueId}",F,ql,"/>;","}), separator)"],ol(2,13)+pe),N(((e,l,a,n,o)=>{const s="Map"+El(l,1);c(0,D,s),c(1,D,s),Q(u+o+T,u+T,d,gl(e,0,1)+pe,t,n);const r=Q(o+T,T,l,gl(e)+pe,t,n);Q(He+o+T+Ce,He+T+Ce,nt,gl(e,9)+lt,Ll(_l(T)+Yl+l+" | "+s,_l(T)+fe),Ll(n,Zl(T)),at,Ll(It,`value: ${l} | ${s})`+qe,Kl),ct),Q(ge+o+T+Ce,ge+T+Ce,Ce,gl(e,12),t,n,t,$t,ct),q(o+T+it,`{${M}, debugIds}: ${C}<'${e}'>`,[se+`('' + ${r}(`+M+`) ?? '', undefined, debugIds, ${n})`],gl(e,13)+pe)})),Q(u+y+I,u+y+I,Qe,ol(2,8,0,1)+" changes",bt(n),pt()),Q(y+I,y+I,Qe,ol(2,8)+" changes",bt(o),pt()),Q(v+I,v+I,Qe,il(10,0,1),bt(s),pt()),Q(u+T+I,u+T+I,Qe,il(11,0,0,1),bt($,`valueId: ${a} | null`),pt("valueId")),Q(T+I,T+I,Qe,il(11,0),bt(i,`valueId: ${a} | null`),pt("valueId"))}return q(Ne,`{${M}, ${M}ById, children}: `+Y+" & {readonly children: React.ReactNode}",["{",et,"return (","<Context."+Ne,"value={useMemo(",`() => [${M} ?? contextValue[0], {...contextValue[1], ...${M}ById}],`,`[${M}, ${M}ById, contextValue],`,")}>","{children}",`</Context.${Ne}>`,");","}"],"Wraps part of an application in a context that provides default objects to be used by hooks and components within"),[$(...k(0),...S(),...K(0)),$(...k(1),...P(),...K(1))]},ht=(e,l,a)=>{if(ee(e)&&ee(l))return[t,t,t,t];const[n,d,o,s]=Ul(e,l,a);return[n,d,...Ct(e,l,a,o,s)]},mt=JSON.parse,gt="prettier/",wt=gt+"plugins/",ft={parser:"typescript",singleQuote:!0,trailingComma:"all",bracketSpacing:!1,jsdocSingleLineComment:!1},Tt=Ml((e=>{const l=()=>{const l=mt(e.getTablesSchemaJson());return!ee(l)||L(e.getTableIds(),(t=>{const a=e.getRowIds(t),n=de();if(L(a,(l=>L(e.getCellIds(t,l),(a=>{const d=e.getCell(t,l,a),o=$e(n,a,(()=>[D(d),de(),[0],0])),[s,r,[I]]=o,$=$e(r,d,(()=>0))+1;return $>I&&(o[2]=[$,d]),Ie(r,d,$),o[3]++,s==D(d)})))))return l[t]={},ae(n,(([e,,[,n],d],o)=>{l[t][o]={[s]:e,...d==E(a)?{[r]:n}:{}}})),1}))?l:{}},t=()=>{const l=mt(e.getValuesSchemaJson());return ee(l)&&e.forEachValue(((e,t)=>{l[e]={[s]:D(t)}})),l},a=e=>ht(l(),t(),e),n=async e=>{const l=["d.ts","ts","d.ts","tsx"],t=[];let n;try{n=(await import(gt+"standalone")).format,z(t,await import(wt+"estree"),await import(wt+"typescript"))}catch(e){n=async e=>e}return await N(M(a(e),(async(e,a)=>Pl(await n(e,{...ft,plugins:t,filepath:"_."+l[a]})))))};return K({getStoreStats:l=>{let t=0,a=0,n=0;const d={};return e.forEachTable(((e,o)=>{t++;let s=0,r=0;const I={};o(((e,t)=>{s++;let a=0;t((()=>a++)),r+=a,l&&(I[e]={rowCells:a})})),a+=s,n+=r,l&&(d[e]={tableRows:s,tableCells:r,rows:I})})),{totalTables:t,totalRows:a,totalCells:n,totalValues:E(e.getValueIds()),jsonLength:E(e.getJson()),...l?{detail:{tables:d}}:{}}},getStoreTablesSchema:l,getStoreValuesSchema:t,getStoreApi:a,getPrettyStoreApi:n,getStore:()=>e})}));export{Tt as createTools};
|
|
1
|
+
const e=e=>typeof e,l="tinybase",t="",a=",",n=e(t),d=e(!0),o=e(0),s="type",r="default",I="Listener",$="get",c="add",u="Has",i="Ids",b="Table",p=b+"s",C=b+i,h="Row",m=h+i,g="Sorted"+h+i,w="Cell",f=w+i,T="Value",y=T+"s",v=T+i,V=Promise,x=isFinite,R=e=>null==e,A=(e,l,t)=>R(e)?t?.():l(e),k=e=>e==n||e==d,S=l=>e(l)==n,P=e=>Array.isArray(e),O=(e,l,t)=>e.slice(l,t),E=e=>e.length,N=async e=>V.all(e),D=l=>{const t=e(l);return k(t)||t==o&&x(l)?t:void 0},L=(e,l)=>e.every(l),G=(e,l)=>e.sort(l),j=(e,l)=>e.forEach(l),H=(e,l=t)=>e.join(l),M=(e,l)=>e.map(l),J=(e,l)=>e.filter(l),z=(e,...l)=>e.push(...l),W=e=>e.pop(),B=(e,...l)=>e.unshift(...l),F=e=>e.shift(),U=Object,_=e=>U.getPrototypeOf(e),Z=U.entries,Q=e=>!R(e)&&A(_(e),(e=>e==U.prototype||R(_(e))),(()=>!0)),q=U.keys,K=U.freeze,X=(e,l)=>M(Z(e),(([e,t])=>l(t,e))),Y=e=>E(q(e)),ee=e=>Q(e)&&0==Y(e),le=(e,l)=>e?.has(l)??!1,te=e=>[...e?.values()??[]],ae=(e,l)=>e?.forEach(l),ne=(e,l)=>e?.delete(l),de=e=>new Map(e),oe=(e,l)=>e?.get(l),se=(e,l)=>ae(e,((e,t)=>l(t,e))),re=(e,l)=>M([...e?.entries()??[]],(([e,t])=>l(t,e))),Ie=(e,l,t)=>R(t)?(ne(e,l),e):e?.set(l,t),$e=(e,l,t,a)=>(le(e,l)||Ie(e,l,t()),oe(e,l)),ce=e=>e.toUpperCase(),ue=e=>e.toLowerCase(),ie="a ",be="A function for",pe=", and registers a listener so that any changes to that result will cause a re-render",Ce="Callback",he="Changes",me="Count",ge="Del",we="Deps",fe=we+"?: React.DependencyList",Te="doRollback?: DoRollback",ye="actions: () => Return, "+Te,ve="export",Ve="Id",xe="Invalid",Re="Json",Ae=ue(I),ke="?: ",Se=" | undefined",Pe="NonNullable",Oe="Partial",Ee="Props",Ne="Provider",De=`Registers a ${Ae} that will be called`,Le="Represents",Ge="rowId: "+Ve,je="Schema",He="Set",Me=", descending?: boolean, offset?: number, limit?: number",Je="[]",ze="the Store",We="Transaction",Be=ue(We),Fe="Execute a "+Be+" to make multiple mutations",Ue="Explicitly starts a "+Be,_e="Explicitly finishes a "+Be,Ze="the end of the "+Be,Qe="void",qe=" => "+Qe,Ke="WhenSet",Xe=" when setting it",Ye=ie+"string serialization of",el=" ",ll="Gets a callback that can ",tl="the ",al=" the schema for",nl=(e=0)=>e?"the existence of ":"",dl=(e=0,l=0,a=0)=>nl(a)+`the ${yl[e]}content of`+(l?el+ze:t),ol=(e=0,l,a=0,n=0)=>wl[l]+el+nl(n)+dl(e,1)+(a?" when setting it":t),sl=(e,l=0)=>Le+` a Row when ${l?"s":"g"}etting ${dl()} the '${e}' `+b,rl=(e,l,t=0)=>`Gets ${t?"sorted, paginated":"the"} Ids of the ${e}s in `+l,Il=(e,l)=>`Calls a function for each ${e} in `+l,$l=e=>"The props passed to a component that renders "+e,cl=e=>"A function that takes "+e,ul=(e,l=0,t=0)=>be+" listening to changes to "+nl(t)+Tl[e]+" in "+Tl[l],il=(e,l,a=0,n=0)=>De+" whenever "+nl(n)+Tl[e]+" in "+Tl[l]+" change"+(a?t:"s"),bl=e=>`the '${e}' `+b,pl=e=>"the specified Row in "+bl(e),Cl=(e,l=0,t=0)=>wl[l]+el+dl(0,0,t)+el+bl(e),hl=(e,l=0,t=0)=>wl[l]+` ${dl(0,0,t)} `+pl(e),ml=(e,l,t=0,a=0)=>wl[t]+el+nl(a)+`the '${l}' Cell for `+pl(e),gl=(e,l=0,t=0)=>wl[l]+el+nl(t)+`the '${e}' Value`,wl=["Gets","Checks existence of","Sets","Deletes","Sets part of",Le,"Gets "+Ye,"Sets "+Ye,De+" whenever",ll+"set",ll+"add",ll+"set part of",ll+"delete","Renders","Gets "+Ye+al,"Sets"+al,"Deletes"+al],fl=[$,"has","set","del","set","forEach",c,t],Tl=[ze,p,tl+b+el+i,ie+b,tl+h+el+i,ie+h,tl+w+el+i,ie+w,"invalid Cell changes",y,tl+T+el+i,ie+T,"invalid Value changes",tl+"sorted "+h+el+i,tl+w+el+i+" anywhere",tl+"number of Rows",ie+w+" anywhere"],yl=[t,"tabular ","keyed value "],vl=e=>new Set(P(e)||R(e)?e:[e]),Vl=(e,l)=>e?.add(l),xl=/[^A-Za-z]+/,Rl=/[^A-Za-z0-9]+/,Al=/^( *)\/\*\* *(.*?) *\*\/$/gm,kl=e=>e.includes(a),Sl=(e,l,t,a=1)=>{const n=`${l}${1==a?"":a}`;return le(e,n)?Sl(e,l,t,a+1):(Ie(e,n,t),n)},Pl=e=>e.replace(Al,((e,l,t)=>{const a=77-E(l);return`${l}/**\n${t.replace(RegExp(`([^\\n]{1,${a}})(\\s|$)`,"g"),l+" * $1\n")}${l} */`})),Ol=e=>e.flat(1e3),El=(e,l=0)=>H(M(e.split(Rl),((e,t)=>(t>0||l?ce:ue)(O(e,0,1))+O(e,1)))),Nl=e=>ce(H((e&&!xl.test(e[0])?e:" "+e).split(Rl),"_")),Dl=e=>`/** ${e}. */`,Ll=(...e)=>H(J(e,(e=>e)),", "),Gl=(...e)=>"{"+H(e,"; ")+"}",jl=(...e)=>Gl(...M(e,(e=>"readonly "+e))),Hl=()=>{const e=[de(),de(),de(),de()],l=de(),a=de(),n=e=>{const l=e.indexOf(" as ");return-1!=l?O(e,l+4):e};return[(...e)=>H(Ol(e),"\n"),(l,t,...a)=>j(a,(a=>j([0,1],(n=>(l??n)==n?Vl($e(e[n],t,vl),a):0)))),(e,a,n,d=t,o=1)=>Sl(l,e,[a,n,d,o]),(e,l,t)=>Sl(a,e,P(t)?[`(${l}) => {`,t,"}"]:[`(${l}) => ${t}`]),(e,l)=>oe(a,e)===l?e:Sl(a,e,l),(l=0)=>M([...G(re(e[l],((e,l)=>`import {${H(G(te(e),((e,l)=>n(e)>n(l)?1:-1)),", ")}} from '${l}';`)),((e,l)=>kl(e)!=kl(l)?kl(e)?-1:1:e>l?1:-1)),t],(e=>e.replace("{React}","React"))),()=>re(l,(([e,l,a,n],d)=>[Dl(l),`${n?ve+" ":t}type ${d}${a} = ${e};`,t])),()=>re(a,((e,l)=>(e=P(e)?e:[e],z(e,W(e)+";"),[`const ${l} = ${F(e)}`,e,t])))]},Ml=(e,l)=>{const t=new WeakMap;return l=>(t.has(l)||t.set(l,e(l)),t.get(l))},Jl=(e,l,t)=>[l=>X(e,((e,a)=>l(a,El(a,1),t(Nl(a),`'${a}'`)))),(l,a)=>X(e[l],((e,l)=>a(l,e[s],e[r],t(Nl(l),`'${l}'`),El(l,1)))),e=>X(l,((l,a)=>e(a,l[s],l[r],t(Nl(a),`'${a}'`),El(a,1))))],zl=(e,l,a,n)=>[(n,d)=>{const o=n+": "+d,s=e(p,Gl(...l((e=>`'${e}'?: {[rowId: Id]: `+Gl(...a(e,((e,l,a)=>`'${e}'${R(a)?"?":t}: ${l}`)))+"}"))),ol(1,5)),r=e(p+Ke,Gl(...l((e=>`'${e}'?: {[rowId: Id]: `+Gl(...a(e,((e,l)=>`'${e}'?: ${l}`)))+"}"))),ol(1,5,1)),$=e(b+Ve,"keyof "+s,"A "+b+" Id in "+ze),c=`<TId extends ${$}>`,i=e(b,Pe+`<${s}[TId]>`,"A "+b+" in "+ze,c),T=e(b+Ke,Pe+`<${r}[TId]>`,"A "+b+" in "+ze+Xe,c),y=e(h,i+"<TId>[Id]","A "+h+" in a "+b,c),v=e(h+Ke,T+"<TId>[Id]","A "+h+" in a "+b+Xe,c),V=e(w+Ve,`Extract<keyof ${y}<TId>, Id>`,"A "+w+" Id in a "+h,c),x=e(w,Pe+`<${s}[TId]>[Id][CId]`,"A "+w+" in a "+h,`<TId extends ${$}, CId extends ${V}<TId>>`),A=e("CellIdCellArray",`CId extends ${V}<TId> ? [cellId: CId, cell: ${x}<TId, CId>] : never`,w+" Ids and types in a "+h,`<TId extends ${$}, CId = ${V}<TId>>`,0),k=e(w+Ce,`(...[cellId, cell]: ${A}<TId>)`+qe,cl(ie+w+" Id, and "+w),c),S=e(h+Ce,"(rowId: Id, forEachCell: (cellCallback: CellCallback<TId>) "+qe+") "+qe,cl(ie+h+" Id, and a "+w+" iterator"),c),P=e(b+w+Ce,`(cellId: ${V}<TId>, count: number) `+qe,cl(ie+w+" Id, and count of how many times it appears"),c),O=e("TableIdForEachRowArray",`TId extends ${$} ? [tableId: TId, forEachRow: (rowCallback: ${S}<TId>)${qe}] : never`,b+" Ids and callback types",`<TId = ${$}>`,0),E=e(b+Ce,`(...[tableId, forEachRow]: ${O})`+qe,cl(ie+b+" Id, and a "+h+" iterator"),t),N=e("TableIdRowIdCellIdArray",`TId extends ${$} ? [tableId: TId, rowId: Id, cellId: ${V}<TId>] : never`,"Ids for GetCellChange",`<TId = ${$}>`,0),D=e("GetCellChange",`(...[tableId, rowId, cellId]: ${N}) => CellChange`,be+" returning information about any Cell's changes during a "+Be),L=e(u+p+I,`(${o}, hasTables: boolean)`+qe,ul(1,0,1)),G=e(p+I,`(${o}, getCellChange: ${D}${Se})`+qe,ul(1)),j=e(C+I,`(${o})`+qe,ul(2)),H=e(u+b+I,`(${o}, tableId: ${$}, hasTable: boolean)`+qe,ul(3,0,1)),M=e(b+I,`(${o}, tableId: ${$}, getCellChange: ${D}${Se})`+qe,ul(3)),J=e(b+f+I,`(${o}, tableId: ${$})`+qe,ul(14,3)),z=e("HasTableCellListenerArgsArrayInner",`CId extends ${V}<TId> ? [${o}, tableId: TId, cellId: CId, hasTableCell: boolean] : never`,"Cell args for HasTableCellListener",`<TId extends ${$}, CId = ${V}<TId>>`,0),W=e("HasTableCellListenerArgsArrayOuter",`TId extends ${$} ? `+z+"<TId> : never","Table args for HasTableCellListener",`<TId = ${$}>`,0),B=e(u+b+w+I,`(...[${n}, tableId, cellId, hasTableCell]: `+W+")"+qe,ul(16,3,1)),F=e(h+"Count"+I,`(${o}, tableId: ${$})`+qe,ul(15,3)),U=e(m+I,`(${o}, tableId: ${$})`+qe,ul(4,3)),_=e(g+I,"("+Ll(o,"tableId: "+$,"cellId: Id"+Se,"descending: boolean","offset: number","limit: number"+Se,"sortedRowIds: Ids")+")"+qe,ul(13,3)),Z=e(u+h+I,"("+Ll(""+o,"tableId: "+$,Ge,"hasRow: boolean")+")"+qe,ul(5,3,1)),Q=e(h+I,"("+Ll(""+o,"tableId: "+$,Ge,`getCellChange: ${D}${Se}`)+")"+qe,ul(5,3)),q=e(f+I,"("+Ll(""+o,"tableId: "+$,Ge)+")"+qe,ul(6,5)),K=e("HasCellListenerArgsArrayInner",`CId extends ${V}<TId> ? [${o}, tableId: TId, ${Ge}, cellId: CId, hasCell: boolean] : never`,"Cell args for HasCellListener",`<TId extends ${$}, CId = ${V}<TId>>`,0),X=e("HasCellListenerArgsArrayOuter",`TId extends ${$} ? `+K+"<TId> : never","Table args for HasCellListener",`<TId = ${$}>`,0),Y=e(u+w+I,`(...[${n}, tableId, rowId, cellId, hasCell]: `+X+")"+qe,ul(7,5,1)),ee=e("CellListenerArgsArrayInner",`CId extends ${V}<TId> ? [${o}, tableId: TId, ${Ge}, cellId: CId, newCell: ${x}<TId, CId> ${Se}, oldCell: ${x}<TId, CId> ${Se}, getCellChange: ${D} ${Se}] : never`,"Cell args for CellListener",`<TId extends ${$}, CId = ${V}<TId>>`,0),le=e("CellListenerArgsArrayOuter",`TId extends ${$} ? `+ee+"<TId> : never","Table args for CellListener",`<TId = ${$}>`,0);return[s,r,$,i,T,y,v,V,x,k,S,P,E,L,G,j,H,M,J,B,F,U,_,Z,Q,q,Y,e(w+I,`(...[${n}, tableId, rowId, cellId, newCell, oldCell, getCellChange]: ${le})`+qe,ul(7,5)),e(xe+w+I,`(${o}, tableId: Id, ${Ge}, cellId: Id, invalidCells: any[])`+qe,ul(8))]},(l,a)=>{const d=l+": "+a,o=e(y,Gl(...n(((e,l,a)=>`'${e}'${R(a)?"?":t}: ${l}`))),ol(2,5)),s=e(y+Ke,Gl(...n(((e,l)=>`'${e}'?: ${l}`))),ol(2,5,1)),r=e(T+Ve,"keyof "+o,"A "+T+" Id in "+ze),$=e(T,Pe+`<${o}[VId]>`,"A "+T+" Id in "+ze,`<VId extends ${r}>`),c=e("ValueIdValueArray",`VId extends ${r} ? [valueId: VId, value: ${$}<VId>] : never`,T+" Ids and types in "+ze,`<VId = ${r}>`,0),i=e(T+Ce,`(...[valueId, value]: ${c})`+qe,cl(ie+T+" Id, and "+T)),b=e("GetValueChange",`(valueId: ${r}) => ValueChange`,be+" returning information about any Value's changes during a "+Be),p=e(u+y+I,`(${d}, hasValues: boolean)`+qe,ul(9,0,1)),C=e(y+I,`(${d}, getValueChange: ${b}${Se})`+qe,ul(9)),h=e(v+I,`(${d})`+qe,ul(10)),m=e(u+T+I,`(${d}, valueId: ValueId, hasValue: boolean)`+qe,ul(11,0,1)),g=e("ValueListenerArgsArray",`VId extends ${r} ? [${d}, valueId: VId, newValue: ${$}<VId> ${Se}, oldValue: ${$}<VId> ${Se}, getValueChange: ${b} ${Se}] : never`,"Value args for ValueListener",`<VId = ${r}>`,0);return[o,s,r,$,i,p,C,h,m,e(T+I,`(...[${l}, valueId, newValue, oldValue, getValueChange]: `+g+")"+qe,ul(11)),e(xe+T+I,`(${d}, valueId: Id, invalidValues: any[])`+qe,ul(12))]},(l,t)=>e(We+I,`(${l}: ${t})`+qe,be+" listening to the completion of a "+Be)],Wl=(e,l=t,a=t)=>`store.${e}(${l})`+(a?" as "+a:t),Bl=(e,l=t)=>`fluent(() => ${Wl(e,l)})`,Fl=(e,l=t,a=t)=>`store.${e}(${l?l+", ":t}proxy(listener)${a?", "+a:t})`,Ul=(e,a,n)=>{const[o,$,V,x,A,k,P,O]=Hl(),[E,N,D]=Jl(e,a,A),[L,G,M]=zl(V,E,N,D),J=de(),W=(e=0)=>re(J,(([l,a,n,d,o],s)=>{const r=e?[s+`: ${o}(${l}): ${a} => ${n},`]:[s+o+`(${l}): ${a};`];return e||B(r,Dl(d)),z(r,t),r})),F=(e,l,a,n,d,o=t)=>Sl(J,e,[l,a,n,d,o]),U=(e,l,a,n,d,o=t,s=t,r=t)=>F(fl[e]+l+(4==e?Oe:t)+a,o,n,(n==Q?Bl:Wl)(fl[e]+(4==e?Oe:t)+a,s,e?void 0:n),d,r),_=(e,l,a,n=t,d=t,o=1,s=t)=>F(c+e+I,(n?n+", ":t)+Ae+": "+l+(o?", mutator?: boolean":t),Ve,Fl(c+e+I,d,o?"mutator":t),a,s),Z=`./${El(n)}.d`,Q=El(n,1),q=El(Q),K=[],X=de();let Y=[],le=[];if($(1,Z,Q,`create${Q} as create${Q}Decl`),ee(e))$(null,l,p);else{$(0,l,"CellChange"),$(null,l,i);const[e,a,n,o,I,c,T,y,v,x,k,P,O,D,G,M,J,W,B,F,ee,le,ae,ne,se,re,$e,ce,ue]=L(q,Q),ie=de();E(((e,l)=>{const t=`<'${e}'>`,a=[V(l+b,o+t,Le+` the '${e}' `+b),V(l+b+Ke,I+t,Le+` the '${e}' `+b+Xe),V(l+h,c+t,sl(e)),V(l+h+Ke,T+t,sl(e,1)),V(l+w+Ve,y+t,`A Cell Id for the '${e}' `+b),V(l+w+Ce,x+t,cl(`a Cell Id and value from a Row in the '${e}' `+b)),V(l+h+Ce,k+t,cl(`a Row Id from the '${e}' Table, and a Cell iterator`)),V(l+b+w+Ce,P+t,cl(`a Cell Id from anywhere in the '${e}' Table, and a count of how many times it appears`))];Ie(ie,e,a),$(1,Z,...a)})),$(1,Z,e,a,n,y,O,D,G,M,J,W,B,F,ee,le,ae,ne,se,re,$e,ce,ue),Y=[e,a,n,y,D,G,M,J,W,B,F,ee,le,ae,ne,se,re,$e,ce,ie],j([[e],[d],[Q,"tables: "+a,"tables"],[Q]],(([e,l,a],n)=>U(n,t,p,e,ol(1,n),l,a))),U(0,t,C,n+Je,rl(b,ze)),U(5,t,b,Qe,Il(b,ze),"tableCallback: "+O,"tableCallback as any"),E(((e,l,a)=>{const[n,o,s,r,I,$,c,u]=oe(ie,e);j([[n],[d],[Q,"table: "+o,", table"],[Q]],(([n,d,o=t],s)=>U(s,l,b,n,Cl(e,s),d,a+o))),U(0,l,b+f,i,rl(w,"the whole of "+bl(e)),t,a),U(5,l,b+w,Qe,Il(b+w,"the whole of "+bl(e)),"tableCellCallback: "+u,a+", tableCellCallback as any"),U(0,l,h+me,"number","Gets the number of Rows in the "+bl(e),t,a),U(0,l,m,i,rl(h,bl(e)),t,a),U(0,l,g,i,rl(h,bl(e),1),"cellId?: "+I+Me,a+", cellId, descending, offset, limit"),U(5,l,h,Qe,Il(h,bl(e)),"rowCallback: "+c,a+", rowCallback as any"),j([[s],[d],[Q,", row: "+r,", row"],[Q],[Q,", partialRow: "+r,", partialRow"]],(([n,d=t,o=t],s)=>U(s,l,h,n,hl(e,s),Ge+d,a+", rowId"+o))),U(6,l,h,Ve+Se,"Add a new Row to "+bl(e),"row: "+r+", reuseIds?: boolean",a+", row, reuseIds"),U(0,l,f,I+Je,rl(w,pl(e)),Ge,a+", rowId"),U(5,l,w,Qe,Il(w,pl(e)),Ge+", cellCallback: "+$,a+", rowId, cellCallback as any"),N(e,((n,o,s,r,I)=>{const $="Map"+El(o,1);Ie(X,o,$);const c=o+(R(s)?Se:t);j([[c],[d],[Q,`, cell: ${o} | `+$,", cell as any"],[Q]],(([d,o=t,s=t],$)=>U($,l+I,w,d,ml(e,n,$),Ge+o,a+", rowId, "+r+s))),U(1,l+I,b+w,d,wl[1]+` the '${n}' Cell anywhere in `+bl(e),t,a+", "+r)}))})),U(0,t,p+Re,Re,ol(1,6)),U(2,t,p+Re,Q,ol(1,7),"tablesJson: "+Re,"tables"+Re),_(u+p,D,ol(1,8,0,1)+" changes"),_(p,G,ol(1,8)+" changes"),_(C,M,il(2,0,1)),_(u+b,J,il(3,0,0,1),`tableId: ${n} | null`,"tableId"),_(b,W,il(3,0),`tableId: ${n} | null`,"tableId"),_(b+f,B,il(14,3,1),`tableId: ${n} | null`,"tableId"),_(u+b+w,F,il(16,3,0,1),`tableId: ${n} | null, cellId: ${H(E((e=>oe(ie,e)?.[4]??t))," | ")} | null`,"tableId, cellId"),_(h+me,ee,il(15,3),`tableId: ${n} | null`,"tableId"),_(m,le,il(4,3,1),`tableId: ${n} | null`,"tableId"),_(g,ae,il(13,3,1),Ll("tableId: TId",`cellId: ${y}<TId>`+Se,"descending: boolean","offset: number","limit: number"+Se),Ll("tableId","cellId","descending","offset","limit"),1,"<TId extends TableId>"),_(u+h,ne,il(5,3,0,1),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(h,se,il(5,3),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(f,re,il(6,5,1),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(u+w,$e,il(7,5,0,1),`tableId: ${n} | null, rowId: IdOrNull, cellId: ${H(E((e=>oe(ie,e)?.[4]??t))," | ")} | null`,"tableId, rowId, cellId"),_(w,ce,il(7,5),`tableId: ${n} | null, rowId: IdOrNull, cellId: ${H(E((e=>oe(ie,e)?.[4]??t))," | ")} | null`,"tableId, rowId, cellId"),_(xe+w,ue,De+" whenever an invalid Cell change was attempted","tableId: IdOrNull, rowId: IdOrNull, cellId: IdOrNull","tableId, rowId, cellId"),$(1,Z,...te(X)),z(K,".set"+p+je+"({",Ol(E(((e,l,a)=>[`[${a}]: {`,...N(e,((e,l,a,n)=>`[${n}]: {[${A(Nl(s),`'${s}'`)}]: ${A(Nl(l),`'${l}'`)}${R(a)?t:`, [${A(Nl(r),`'${r}'`)}]: `+(S(a)?A(Nl(a),`'${a}'`):a)}},`)),"},"]))),"})")}if(ee(a))$(null,l,y);else{const[e,a,n,o,I,c,i,b,p,C,h]=G(q,Q);$(1,Z,e,a,n,I,c,i,b,p,C,h),le=[e,a,n,c,i,b,p,C],j([[e],[d],[Q,"values: "+a,"values"],[Q],[Q,"partialValues: "+a,"partialValues"]],(([e,l,a],n)=>U(n,t,y,e,ol(2,n),l,a))),U(0,t,v,n+Je,rl(T,ze)),U(5,t,T,"void",Il(T,ze),"valueCallback: "+I,"valueCallback as any"),D(((e,l,a,n,o)=>{const s="Map"+El(l,1);Ie(X,l,s),j([[l],[d],[Q,`value: ${l} | `+s,", value as any"],[Q]],(([l,a,d=t],s)=>U(s,o,T,l,gl(e,s),a,n+d)))})),U(0,t,y+Re,Re,ol(2,6)),U(2,t,y+Re,Q,ol(2,7),"valuesJson: "+Re,"values"+Re),_(u+y,c,ol(2,8,0,1)+" changes"),_(y,i,ol(2,8)+" changes"),_(v,b,il(10,0,1)),_(u+T,p,il(11,0,0,1),`valueId: ${n} | null`,"valueId"),_(T,C,il(11,0),`valueId: ${n} | null`,"valueId"),_(xe+T,h,De+" whenever an invalid Value change was attempted","valueId: IdOrNull","valueId"),$(1,Z,...te(X)),$(0,l,"ValueChange"),z(K,".set"+y+je+"({",D(((e,l,a,n)=>[`[${n}]: {[${A(Nl(s),`'${s}'`)}]: ${A(Nl(l),`'${l}'`)}${R(a)?t:`, [${A(Nl(r),`'${r}'`)}]: `+(S(a)?A(Nl(a),`'${a}'`):a)}},`])),"})")}U(0,t,"Content",`[${p}, ${y}]`,ol(0,0)),U(2,t,"Content",Q,ol(0,2),`[tables, values]: [${p}, ${y}]`,"[tables, values]"),U(7,t,"applyChanges",Q,`Applies a set of ${he} to the Store`,"changes: "+he,"changes"),se(X,((e,l)=>V(l,`(cell: ${e}${Se}) => `+e,`Takes a ${e} Cell value and returns another`))),$(null,l,"DoRollback",Ve,"IdOrNull",Re,"Store",he),U(0,t,Re,Re,ol(0,6)),U(2,t,Re,Q,ol(0,7),"tablesAndValuesJson: "+Re,"tablesAndValuesJson"),U(7,t,Be,"Return",Fe,ye,"actions, doRollback","<Return>"),U(7,t,"start"+We,Q,Ue),U(7,t,"finish"+We,Q,_e,Te,"doRollback");const ae=M(q,Q);return _("Start"+We,ae,De+" just before the start of the "+Be,t,t,0),_("WillFinish"+We,ae,De+" just before "+Ze,t,t,0),_("DidFinish"+We,ae,De+" just after "+Ze,t,t,0),U(7,t,"call"+I,Q,"Manually provoke a listener to be called","listenerId: Id","listenerId"),U(3,t,I,Q,"Remove a listener that was previously added to "+ze,"listenerId: Id","listenerId"),F("getStore",t,"Store","store",wl[0]+" the underlying Store object"),$(1,l,"createStore"),$(1,Z,Q,`create${Q} as create${Q}Decl`,ae),A("store",["createStore()",...K]),x("fluent","actions: () => Store",["actions();",`return ${q};`]),x("proxy","listener: any",`(_: Store, ...params: any[]) => listener(${q}, ...params)`),A(q,["{",...W(1),"}"]),[o(...k(0),...P(),ve+" interface "+Q+" {",...W(0),"}",t,Dl(`Creates a ${Q} object`),ve+" function create"+Q+"(): "+Q+";"),o(...k(1),ve+" const create"+Q+": typeof create"+Q+"Decl = () => {",...O(),`return Object.freeze(${q});`,"};"),Y,le]},_l=e=>$+e,Zl=e=>Ll(_l(e),_l(e)+we),Ql="debugIds?: boolean",ql="debugIds={debugIds}",Kl="then"+fe,Xl="Parameter",Yl=": (parameter: "+Xl+", store: Store) => ",et="const contextValue = useContext(Context);",lt=", based on a parameter",tt=": ",at="<"+Xl+",>",nt=Xl+"ized"+Ce+"<"+Xl+">",dt="rowId",ot="rowId={rowId}",st=", separator, debugIds",rt="separator?: ReactElement | string",It="then?: (store: Store",$t=Ll(It+")"+qe,Kl),ct="then, then"+we,ut=dt+tt+Ve,it="View",bt=(e,...l)=>Ll(...l,Ae+": "+e,Ae+fe,"mutator?: boolean"),pt=(...e)=>Ll(...e,Ae,Ae+we,"mutator"),Ct=(e,a,n,s,r)=>{const[$,c,V,x,A,k,S,P]=Hl(),[O,E,N]=Jl(e,a,A),D=`./${El(n)}.d`,L=`./${El(n)}-ui-react.d`,G="tinybase/ui-react",j=El(n,1),M=El(j),J=j+"Or"+j+Ve,W=M+"Or"+j+Ve,F=M+`={${M}}`,U=de(),_=(e,l,a,n,d,o=t)=>(c(1,L,e+" as "+e+"Decl"),Sl(U,e,[l,a,n,d,o])),Z=(e,l,a,n,d,o=t)=>_("use"+e,l,a,n,d,o),Q=(e,l,a,n,d=t,o=t,s=t,r=t,I=t)=>(c(1,G,`use${l} as use${l}Core`),Z(e,Ll(d,le,r),a,ae+`(${W}, use${l}Core, [`+(o||t)+(I?"], ["+I:t)+"]);",n,s)),q=(e,l,t,a)=>_(e,l,1,t,a),K=(e=0)=>re(U,(([l,a,n,d,o],s)=>{const r=e?[ve+` const ${s}: typeof ${s}Decl = ${o}(${l}): ${1==a?"any":a} =>`,n]:[ve+` function ${s}${o}(${l}): ${1==a?"ComponentReturnType":a};`];return e||B(r,Dl(d)),z(r,t),r}));c(null,l,Ve,"Store",Ce,Xl+"ized"+Ce),c(0,G,"ComponentReturnType"),c(1,G,"useCellIds"),c(null,G,"ExtraProps"),c(0,D,j);const X=V(J,j+" | "+Ve,`Used when you need to refer to a ${j} in a React hook or component`),Y=V(Ne+Ee,jl(M+ke+j,M+`ById?: {[${M}Id: Id]: ${j}}`),`Used with the ${Ne} component, so that a `+j+" can be passed into the context of an application");c(0,"react","ReactElement","ComponentType"),c(1,"react","React"),c(1,L,X,Y);const le=W+ke+X;A("{createContext, useContext, useMemo}","React"),A("Context",`createContext<[${j}?, {[${M}Id: Id]: ${j}}?]>([])`),Z("Create"+j,`create: () => ${j}, create`+fe,j,"\n// eslint-disable-next-line react-hooks/exhaustive-deps\nuseMemo(create, createDeps)",`Create a ${j} within a React application with convenient memoization`);const te=Z(j,"id?: Id",j+Se,["{",et,"return id == null ? contextValue[0] : contextValue[1]?.[id];","}"],`Get a reference to a ${j} from within a ${Ne} component context`),ae=x("useHook",W+`: ${X} | undefined, hook: (...params: any[]) => any, preParams: any[], postParams: any[] = []`,[`const ${M} = ${te}(${W} as Id);`,`return hook(...preParams, ((${W} == null || typeof ${W} == 'string')`,`? ${M} : ${W})?.getStore(), ...postParams)`]),ne=x("getProps","getProps: ((id: any) => ExtraProps) | undefined, id: Id","(getProps == null) ? ({} as ExtraProps) : getProps(id)"),se=x("wrap",Ll("children: any","separator?: any","encloseWithId?: boolean","id?: Id"),["const separated = separator==null || !Array.isArray(children)"," ? children"," : children.map((child, c) => (c > 0 ? [separator, child] : child));","return encloseWithId ? [id, ':{', separated, '}'] : separated;"]),Ie=x("useCustomOrDefaultCellIds",Ll("customCellIds: Ids | undefined","tableId: Id","rowId: Id",`${W}?: ${X} | undefined`),[`const defaultCellIds = ${ae}(${W}, useCellIds, [tableId, rowId]);`,"return customCellIds ?? defaultCellIds;"]),$e=A("NullComponent","() => null");if(!ee(e)){const[e,a,n,r,$,T,y,v,A,k,S,P,N,G,J,z,W,B,U,_]=s;c(null,D,e,a,n,$,T,y,v,A,k,S,P,N,G,J,z,W,U,B),c(0,D,r),c(1,D,j),c(null,l,i,"IdOrNull");const Z=x("tableView",`{${M}, rowComponent, getRowComponentProps, customCellIds`+st+"}: any, rowIds: Ids, tableId: Id, defaultRowComponent: React.ComponentType<any>",["const Row = rowComponent ?? defaultRowComponent;",`return ${se}(rowIds.map((rowId) => (`,"<Row","{..."+ne+"(getRowComponentProps, rowId)}","key={rowId}","tableId={tableId}",ot,"customCellIds={customCellIds}",F,ql,"/>","))",st,", tableId,",");"]),K=x("getDefaultTableComponent","tableId: Id",H(O(((e,l,t)=>`tableId == ${t} ? ${l}TableView : `)))+$e),X=x("getDefaultCellComponent","tableId: Id, cellId: Id",H(O(((e,l,t)=>`tableId == ${t} ? ${H(E(e,((e,t,a,n,d)=>`cellId == ${n} ? `+l+d+"CellView : ")))+$e} : `)))+$e);Q(u+p,u+p,d,ol(1,0,0,1)+pe),Q(p,p,e,ol(1,0)+pe);const Y=Q(C,C,n+Je,rl(b,ze)+pe);Q(He+p+Ce,He+p+Ce,nt,ol(1,9)+lt,Ll(_l(p)+Yl+a,_l(p)+fe),Zl(p),at,Ll(It,`tables: ${a})`+qe,Kl),ct),Q(ge+p+Ce,ge+p+Ce,Ce,ol(1,12),t,t,t,$t,ct);const ee=V(w+Ee,jl("tableId?: TId","rowId: Id","cellId?: CId",M+ke+j,Ql),$l(ie+w),`<TId extends ${n}, CId extends ${r}<TId>>`),le=V(h+Ee,jl("tableId?: TId","rowId: Id",M+ke+j,"cellComponents?: {readonly [CId in "+r+`<TId>]?: ComponentType<${ee}<TId, CId>>;}`,`getCellComponentProps?: (cellId: ${r}<TId>) => ExtraProps`,`customCellIds?: ${r}<TId>[]`,rt,Ql),$l(ie+h),`<TId extends ${n}>`),te=V(b+Ee,jl("tableId?: TId",M+ke+j,`rowComponent?: ComponentType<${le}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps","customCellIds?: CellId<TId>[]",rt,Ql),$l(ie+b),`<TId extends ${n}>`),ae=V("Sorted"+b+Ee,jl("tableId?: TId","cellId?: "+r+"<TId>","descending?: boolean","offset?: number","limit?: number",M+ke+j,`rowComponent?: ComponentType<${le}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps","customCellIds?: CellId<TId>[]",rt,Ql),$l(ie+"sorted "+b),`<TId extends ${n}>`),de=V(p+Ee,jl(M+ke+j,"tableComponents?: {readonly [TId in "+n+`]?: ComponentType<${te}<TId>>;}`,`getTableComponentProps?: (tableId: ${n}) => ExtraProps`,rt,Ql),$l(dl(1,1)));c(1,L,de,te,ae,le,ee),q(p+it,"{"+M+", tableComponents, getTableComponentProps"+st+"}: "+de,[se+`(${Y}(${M}).map((tableId) => {`,"const Table = (tableComponents?.[tableId] ?? "+K+"(tableId)) as React.ComponentType<TableProps<typeof tableId>>;","return <Table",`{...${ne}(getTableComponentProps, tableId)}`,"tableId={tableId}","key={tableId}",F,ql,"/>;","}), separator)"],ol(1,13)+pe),O(((e,l,a)=>{const[n,s,r,I,$]=oe(_,e);c(null,D,n,s,r,I,$),Q(u+l+b,u+b,d,Cl(e,0,1)+pe,t,a),Q(l+b,b,n,Cl(e)+pe,t,a),Q(l+b+f,b+f,i,rl(w,"the whole of "+bl(e))+pe,t,a),Q(l+h+me,h+me,o,"Gets the number of Rows in "+bl(e)+pe,t,a);const p=Q(l+m,m,i,rl(h,bl(e))+pe,t,a),C=Q(l+g,g,i,rl(h,bl(e),1)+pe,"cellId?: "+$+", descending?: boolean, offset?: number, limit?: number",a+", cellId, descending, offset, limit");Q(u+l+h,u+h,d,hl(e,0,1)+pe,ut,Ll(a,dt)),Q(l+h,h,r,hl(e)+pe,ut,Ll(a,dt)),Q(l+f,f,$+Je,rl(w,pl(e))+pe,ut,Ll(a,dt)),Q(He+l+b+Ce,He+b+Ce,nt,Cl(e,9)+lt,Ll(_l(b)+Yl+s,_l(b)+fe),Ll(a,Zl(b)),at,Ll(It,`table: ${s})`+qe,Kl),ct),Q(ge+l+b+Ce,ge+b+Ce,Ce,Cl(e,12),t,a,t,$t,ct),Q(He+l+h+Ce,He+h+Ce,nt,hl(e,9)+lt,Ll(ut,_l(h)+Yl+I,_l(h)+fe),Ll(a,dt,Zl(h)),at,Ll(It,`row: ${I})`+qe,Kl),ct),Q("Add"+l+h+Ce,"Add"+h+Ce,nt,hl(e,10)+lt,Ll(_l(h)+Yl+I,_l(h)+fe),Ll(a,Zl(h)),at,"then?: ("+Ll(ut+Se,"store: Store","row: "+I+")"+qe,"then"+fe)+", reuseRowIds?: boolean",ct+", reuseRowIds"),Q(He+l+Oe+h+Ce,He+Oe+h+Ce,nt,hl(e,11)+lt,Ll(ut,_l(Oe+h)+Yl+I,_l(Oe+h)+fe),Ll(a,dt,Zl(Oe+h)),at,Ll(It,`partialRow: ${I})`+qe,Kl),ct),Q(ge+l+h+Ce,ge+h+Ce,Ce,hl(e,12),ut,Ll(a,dt),t,$t,ct);const T=q(l+h+it,"{rowId, "+M+", cellComponents, getCellComponentProps, customCellIds"+st+`}: ${le}<'${e}'>`,[se+`(${Ie}(customCellIds, `+a+`, rowId, ${M}).map((cellId: ${$}) => {`,"const Cell = (cellComponents?.[cellId] ?? "+X+`(${a}, cellId)) as React.ComponentType<CellProps<typeof `+a+", typeof cellId>>;","return <Cell",`{...${ne}(getCellComponentProps, cellId)} `,"key={cellId}",`tableId={${a}}`,ot,"cellId={cellId}",F,ql,"/>;","})"+st+", rowId)"],hl(e,13)+pe);q(l+"Sorted"+b+it,"{cellId, descending, offset, limit, ...props}: "+ae+`<'${e}'>`,Z+"(props, "+C+`(cellId, descending, offset, limit, props.${M}), ${a}, ${T});`,Cl(e,13)+", sorted"+pe),q(l+b+it,`props: ${te}<'${e}'>`,Z+"(props, "+p+`(props.${M}), ${a}, ${T});`,Cl(e,13)+pe),E(e,((n,o,s,r,I)=>{const $="Map"+El(o,1);c(0,D,$),c(1,D,$),Q(u+l+I+b+w,u+b+w,d,`Gets ${nl(1)}the '${n}' Cell anywhere in `+bl(e)+pe,t,Ll(a,r)),Q(u+l+I+w,u+w,d,ml(e,n,0,1)+pe,ut,Ll(a,dt,r));const i=Q(l+I+w,w,o+(R(s)?Se:t),ml(e,n)+pe,ut,Ll(a,dt,r));Q(He+l+I+w+Ce,He+w+Ce,nt,ml(e,n,9)+lt,Ll(ut,_l(w)+Yl+o+" | "+$,_l(w)+fe),Ll(a,dt,r,Zl(w)),at,Ll(It,`cell: ${o} | ${$})`+qe,Kl),ct),Q(ge+l+I+w+Ce,ge+w+Ce,Ce,ml(e,n,12),Ll(ut,"forceDel?: boolean"),Ll(a,dt,r,"forceDel"),t,$t,ct),q(l+I+w+it,`{rowId, ${M}, debugIds}: `+ee+`<'${e}', '${n}'>`,[se+`('' + ${i}(rowId, `+M+`) ?? '', undefined, debugIds, ${r})`],ml(e,n,13)+pe)}))}));const re=H(O((e=>oe(_,e)?.[4]??t))," | ");Q(u+p+I,u+p+I,Qe,ol(1,8,0,1)+" changes",bt($),pt()),Q(p+I,p+I,Qe,ol(1,8)+" changes",bt(T),pt()),Q(C+I,C+I,Qe,il(2,0,1),bt(y),pt()),Q(u+b+I,u+b+I,Qe,il(3,0,0,1),bt(v,`tableId: ${n} | null`),pt("tableId")),Q(b+I,b+I,Qe,il(3,0),bt(A,`tableId: ${n} | null`),pt("tableId")),Q(b+f+I,b+f+I,Qe,il(14,3,1),bt(k,`tableId: ${n} | null`),pt("tableId")),Q(u+b+w+I,u+b+w+I,Qe,il(16,3,0,1),bt(S,`tableId: ${n} | null`,`cellId: ${re} | null`),pt("tableId","cellId")),Q(h+me+I,h+me+I,Qe,il(15,3),bt(P,`tableId: ${n} | null`),pt("tableId")),Q(m+I,m+I,Qe,il(4,3,1),bt(N,`tableId: ${n} | null`),pt("tableId")),Q(g+I,g+I,Qe,il(13,3,1),bt(G,`tableId: ${n} | null`,"cellId: "+re+Se,"descending: boolean","offset: number","limit: number"+Se),pt("tableId","cellId","descending","offset","limit")),Q(u+h+I,u+h+I,Qe,il(5,3,0,1),bt(J,`tableId: ${n} | null`,dt+": IdOrNull"),pt("tableId",dt)),Q(h+I,h+I,Qe,il(5,3),bt(z,`tableId: ${n} | null`,dt+": IdOrNull"),pt("tableId",dt)),Q(f+I,f+I,Qe,il(6,5,1),bt(W,`tableId: ${n} | null`,dt+": IdOrNull"),pt("tableId",dt)),Q(u+w+I,u+w+I,Qe,il(7,5,0,1),bt(B,`tableId: ${n} | null`,dt+": IdOrNull",`cellId: ${re} | null`),pt("tableId",dt,"cellId")),Q(w+I,w+I,Qe,il(7,5),bt(U,`tableId: ${n} | null`,dt+": IdOrNull",`cellId: ${re} | null`),pt("tableId",dt,"cellId"))}if(!ee(a)){const[e,l,a,n,o,s,$,i]=r;c(null,D,...r),c(1,D,j);const b=x("getDefaultValueComponent","valueId: Id",H(N(((e,l,t,a,n)=>`valueId == ${a} ? `+n+"ValueView : ")))+$e);Q(u+y,u+y,d,ol(2,0,0,1)+pe),Q(y,y,e,ol(2,0)+pe);const p=Q(v,v,a+Je,rl(T,ze)+pe);Q(He+y+Ce,He+y+Ce,nt,ol(2,9)+lt,Ll(_l(y)+Yl+l,_l(y)+fe),Zl(y),at,Ll(It,`values: ${l})`+qe,Kl),ct),Q(He+Oe+y+Ce,He+Oe+y+Ce,nt,ol(2,11)+lt,Ll(_l(Oe+y)+Yl+l,_l(Oe+y)+fe),Zl(Oe+y),at,Ll(It,`partialValues: ${l})`+qe,Kl),ct),Q(ge+y+Ce,ge+y+Ce,Ce,ol(2,12),t,t,t,$t,ct);const C=V(T+Ee,jl("valueId?: VId",M+ke+j,Ql),$l("a Value"),`<VId extends ${a}>`),h=V(y+Ee,jl(M+ke+j,"valueComponents?: {readonly [VId in "+a+`]?: ComponentType<${C}<VId>>;}`,`getValueComponentProps?: (valueId: ${a}) => ExtraProps`,rt,Ql),$l(dl(2,1)));c(1,L,h,C),q(y+it,"{"+M+", valueComponents, getValueComponentProps"+st+"}: "+h,[se+`(${p}(${M}).map((valueId) => {`,"const Value = valueComponents?.[valueId] ?? "+b+"(valueId);","return <Value",`{...${ne}(getValueComponentProps, valueId)}`,"key={valueId}",F,ql,"/>;","}), separator)"],ol(2,13)+pe),N(((e,l,a,n,o)=>{const s="Map"+El(l,1);c(0,D,s),c(1,D,s),Q(u+o+T,u+T,d,gl(e,0,1)+pe,t,n);const r=Q(o+T,T,l,gl(e)+pe,t,n);Q(He+o+T+Ce,He+T+Ce,nt,gl(e,9)+lt,Ll(_l(T)+Yl+l+" | "+s,_l(T)+fe),Ll(n,Zl(T)),at,Ll(It,`value: ${l} | ${s})`+qe,Kl),ct),Q(ge+o+T+Ce,ge+T+Ce,Ce,gl(e,12),t,n,t,$t,ct),q(o+T+it,`{${M}, debugIds}: ${C}<'${e}'>`,[se+`('' + ${r}(`+M+`) ?? '', undefined, debugIds, ${n})`],gl(e,13)+pe)})),Q(u+y+I,u+y+I,Qe,ol(2,8,0,1)+" changes",bt(n),pt()),Q(y+I,y+I,Qe,ol(2,8)+" changes",bt(o),pt()),Q(v+I,v+I,Qe,il(10,0,1),bt(s),pt()),Q(u+T+I,u+T+I,Qe,il(11,0,0,1),bt($,`valueId: ${a} | null`),pt("valueId")),Q(T+I,T+I,Qe,il(11,0),bt(i,`valueId: ${a} | null`),pt("valueId"))}return q(Ne,`{${M}, ${M}ById, children}: `+Y+" & {readonly children: React.ReactNode}",["{",et,"return (","<Context."+Ne,"value={useMemo(",`() => [${M} ?? contextValue[0], {...contextValue[1], ...${M}ById}],`,`[${M}, ${M}ById, contextValue],`,")}>","{children}",`</Context.${Ne}>`,");","}"],"Wraps part of an application in a context that provides default objects to be used by hooks and components within"),[$(...k(0),...S(),...K(0)),$(...k(1),...P(),...K(1))]},ht=(e,l,a)=>{if(ee(e)&&ee(l))return[t,t,t,t];const[n,d,o,s]=Ul(e,l,a);return[n,d,...Ct(e,l,a,o,s)]},mt=JSON.parse,gt="prettier/",wt=gt+"plugins/",ft={parser:"typescript",singleQuote:!0,trailingComma:"all",bracketSpacing:!1,jsdocSingleLineComment:!1},Tt=Ml((e=>{const l=()=>{const l=mt(e.getTablesSchemaJson());return!ee(l)||L(e.getTableIds(),(t=>{const a=e.getRowIds(t),n=de();if(L(a,(l=>L(e.getCellIds(t,l),(a=>{const d=e.getCell(t,l,a),o=$e(n,a,(()=>[D(d),de(),[0],0])),[s,r,[I]]=o,$=$e(r,d,(()=>0))+1;return $>I&&(o[2]=[$,d]),Ie(r,d,$),o[3]++,s==D(d)})))))return l[t]={},ae(n,(([e,,[,n],d],o)=>{l[t][o]={[s]:e,...d==E(a)?{[r]:n}:{}}})),1}))?l:{}},t=()=>{const l=mt(e.getValuesSchemaJson());return ee(l)&&e.forEachValue(((e,t)=>{l[e]={[s]:D(t)}})),l},a=e=>ht(l(),t(),e),n=async e=>{const l=["d.ts","ts","d.ts","tsx"],t=[];let n;try{n=(await import(gt+"standalone")).format,z(t,await import(wt+"estree"),await import(wt+"typescript"))}catch(e){n=async e=>e}return await N(M(a(e),(async(e,a)=>Pl(await n(e,{...ft,plugins:t,filepath:"_."+l[a]})))))};return K({getStoreStats:l=>{let t=0,a=0,n=0;const d={};return e.forEachTable(((e,o)=>{t++;let s=0,r=0;const I={};o(((e,t)=>{s++;let a=0;t((()=>a++)),r+=a,l&&(I[e]={rowCells:a})})),a+=s,n+=r,l&&(d[e]={tableRows:s,tableCells:r,rows:I})})),{totalTables:t,totalRows:a,totalCells:n,totalValues:E(e.getValueIds()),jsonLength:E(e.getJson()),...l?{detail:{tables:d}}:{}}},getStoreTablesSchema:l,getStoreValuesSchema:t,getStoreApi:a,getPrettyStoreApi:n,getStore:()=>e})}));export{Tt as createTools};
|
package/lib/tools.js.gz
CHANGED
|
Binary file
|
package/lib/types/common.d.ts
CHANGED
|
@@ -104,3 +104,10 @@ export type SortKey = string | number | boolean;
|
|
|
104
104
|
* @category Convenience
|
|
105
105
|
*/
|
|
106
106
|
export function defaultSorter(sortKey1: SortKey, sortKey2: SortKey): number;
|
|
107
|
+
|
|
108
|
+
/**
|
|
109
|
+
* The getUniqueId function
|
|
110
|
+
* @category Convenience
|
|
111
|
+
* @since v5.0.0
|
|
112
|
+
*/
|
|
113
|
+
export function getUniqueId(): Id;
|