tinybase 5.0.0-beta.0 → 5.0.0-beta.2
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/bin/cli.js +1 -1
- package/lib/checkpoints.js +1 -1
- package/lib/checkpoints.js.gz +0 -0
- package/lib/cjs/checkpoints.cjs +1 -1
- package/lib/cjs/checkpoints.cjs.gz +0 -0
- package/lib/cjs/indexes.cjs +1 -1
- package/lib/cjs/indexes.cjs.gz +0 -0
- package/lib/cjs/mergeable-store.cjs +1 -0
- 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-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-indexed-db.cjs +1 -1
- package/lib/cjs/persisters/persister-indexed-db.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-partykit-server.cjs +1 -1
- package/lib/cjs/persisters/persister-partykit-server.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/queries.cjs +1 -1
- package/lib/cjs/queries.cjs.gz +0 -0
- package/lib/cjs/relationships.cjs +1 -1
- package/lib/cjs/relationships.cjs.gz +0 -0
- package/lib/cjs/store.cjs +1 -1
- package/lib/cjs/store.cjs.gz +0 -0
- package/lib/cjs/tinybase.cjs +1 -1
- package/lib/cjs/tinybase.cjs.gz +0 -0
- package/lib/cjs/tools.cjs +1 -1
- package/lib/cjs/tools.cjs.gz +0 -0
- package/lib/cjs/ui-react-dom-debug.cjs +1 -1
- package/lib/cjs/ui-react-dom-debug.cjs.gz +0 -0
- package/lib/cjs/ui-react-dom.cjs +1 -1
- package/lib/cjs/ui-react-dom.cjs.gz +0 -0
- package/lib/cjs/ui-react.cjs +1 -1
- package/lib/cjs/ui-react.cjs.gz +0 -0
- package/lib/cjs-es6/checkpoints.cjs +1 -1
- package/lib/cjs-es6/checkpoints.cjs.gz +0 -0
- package/lib/cjs-es6/indexes.cjs +1 -1
- package/lib/cjs-es6/indexes.cjs.gz +0 -0
- package/lib/cjs-es6/mergeable-store.cjs +1 -0
- 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-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-indexed-db.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-indexed-db.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-partykit-server.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-partykit-server.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/queries.cjs +1 -1
- package/lib/cjs-es6/queries.cjs.gz +0 -0
- package/lib/cjs-es6/relationships.cjs +1 -1
- package/lib/cjs-es6/relationships.cjs.gz +0 -0
- package/lib/cjs-es6/store.cjs +1 -1
- package/lib/cjs-es6/store.cjs.gz +0 -0
- package/lib/cjs-es6/tinybase.cjs +1 -1
- package/lib/cjs-es6/tinybase.cjs.gz +0 -0
- package/lib/cjs-es6/tools.cjs +1 -1
- package/lib/cjs-es6/tools.cjs.gz +0 -0
- package/lib/cjs-es6/ui-react-dom-debug.cjs +1 -1
- package/lib/cjs-es6/ui-react-dom-debug.cjs.gz +0 -0
- package/lib/cjs-es6/ui-react-dom.cjs +1 -1
- package/lib/cjs-es6/ui-react-dom.cjs.gz +0 -0
- package/lib/cjs-es6/ui-react.cjs +1 -1
- package/lib/cjs-es6/ui-react.cjs.gz +0 -0
- package/lib/debug/checkpoints.js +251 -234
- package/lib/debug/indexes.js +7 -5
- package/lib/debug/mergeable-store.js +1892 -0
- package/lib/debug/metrics.js +7 -5
- package/lib/debug/persisters/persister-automerge.js +15 -11
- package/lib/debug/persisters/persister-browser.js +1 -0
- package/lib/debug/persisters/persister-cr-sqlite-wasm.js +16 -12
- package/lib/debug/persisters/persister-electric-sql.js +17 -12
- package/lib/debug/persisters/persister-expo-sqlite-next.js +17 -13
- package/lib/debug/persisters/persister-expo-sqlite.js +16 -12
- package/lib/debug/persisters/persister-file.js +1 -0
- package/lib/debug/persisters/persister-indexed-db.js +10 -4
- package/lib/debug/persisters/persister-partykit-client.js +1 -0
- package/lib/debug/persisters/persister-partykit-server.js +7 -6
- package/lib/debug/persisters/persister-remote.js +1 -0
- package/lib/debug/persisters/persister-sqlite-wasm.js +16 -12
- package/lib/debug/persisters/persister-sqlite3.js +16 -12
- package/lib/debug/persisters/persister-yjs.js +9 -7
- package/lib/debug/persisters.js +1 -0
- package/lib/debug/queries.js +11 -8
- package/lib/debug/relationships.js +7 -5
- package/lib/debug/store.js +23 -11
- package/lib/debug/tinybase.js +554 -246
- package/lib/debug/tools.js +23 -47
- package/lib/debug/ui-react-dom.js +51 -40
- package/lib/debug/ui-react.js +166 -200
- package/lib/es6/checkpoints.js +1 -1
- package/lib/es6/checkpoints.js.gz +0 -0
- package/lib/es6/indexes.js +1 -1
- package/lib/es6/indexes.js.gz +0 -0
- package/lib/es6/mergeable-store.js +1 -0
- 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-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-indexed-db.js +1 -1
- package/lib/es6/persisters/persister-indexed-db.js.gz +0 -0
- package/lib/es6/persisters/persister-partykit-server.js +1 -1
- package/lib/es6/persisters/persister-partykit-server.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/queries.js +1 -1
- package/lib/es6/queries.js.gz +0 -0
- package/lib/es6/relationships.js +1 -1
- package/lib/es6/relationships.js.gz +0 -0
- package/lib/es6/store.js +1 -1
- package/lib/es6/store.js.gz +0 -0
- package/lib/es6/tinybase.js +1 -1
- package/lib/es6/tinybase.js.gz +0 -0
- package/lib/es6/tools.js +1 -1
- package/lib/es6/tools.js.gz +0 -0
- package/lib/es6/ui-react-dom-debug.js +1 -1
- package/lib/es6/ui-react-dom-debug.js.gz +0 -0
- package/lib/es6/ui-react-dom.js +1 -1
- package/lib/es6/ui-react-dom.js.gz +0 -0
- package/lib/es6/ui-react.js +1 -1
- package/lib/es6/ui-react.js.gz +0 -0
- package/lib/indexes.js +1 -1
- package/lib/indexes.js.gz +0 -0
- package/lib/mergeable-store.js +1 -0
- 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-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-indexed-db.js +1 -1
- package/lib/persisters/persister-indexed-db.js.gz +0 -0
- package/lib/persisters/persister-partykit-server.js +1 -1
- package/lib/persisters/persister-partykit-server.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/queries.js +1 -1
- package/lib/queries.js.gz +0 -0
- package/lib/relationships.js +1 -1
- package/lib/relationships.js.gz +0 -0
- package/lib/store.js +1 -1
- package/lib/store.js.gz +0 -0
- package/lib/tinybase.js +1 -1
- package/lib/tinybase.js.gz +0 -0
- package/lib/tools.js +1 -1
- package/lib/tools.js.gz +0 -0
- package/lib/types/mergeable-store.d.ts +55 -0
- package/lib/types/persisters/persister-automerge.d.ts +8 -7
- package/lib/types/persisters/persister-browser.d.ts +2 -0
- package/lib/types/persisters/persister-cr-sqlite-wasm.d.ts +1 -0
- package/lib/types/persisters/persister-electric-sql.d.ts +1 -0
- package/lib/types/persisters/persister-expo-sqlite-next.d.ts +4 -3
- package/lib/types/persisters/persister-expo-sqlite.d.ts +1 -0
- package/lib/types/persisters/persister-file.d.ts +1 -0
- package/lib/types/persisters/persister-indexed-db.d.ts +1 -0
- package/lib/types/persisters/persister-partykit-client.d.ts +1 -0
- package/lib/types/persisters/persister-partykit-server.d.ts +5 -0
- package/lib/types/persisters/persister-remote.d.ts +1 -0
- package/lib/types/persisters/persister-sqlite-wasm.d.ts +1 -0
- package/lib/types/persisters/persister-sqlite3.d.ts +1 -0
- package/lib/types/persisters/persister-yjs.d.ts +1 -0
- package/lib/types/persisters.d.ts +3 -3
- package/lib/types/store.d.ts +90 -77
- package/lib/types/tinybase.d.ts +1 -0
- package/lib/types/ui-react.d.ts +78 -88
- package/lib/types/with-schemas/internal/queries.d.ts +4 -3
- package/lib/types/with-schemas/internal/store.d.ts +8 -3
- package/lib/types/with-schemas/mergeable-store.d.ts +85 -0
- package/lib/types/with-schemas/persisters/persister-automerge.d.ts +8 -7
- package/lib/types/with-schemas/persisters/persister-browser.d.ts +2 -0
- package/lib/types/with-schemas/persisters/persister-cr-sqlite-wasm.d.ts +1 -0
- package/lib/types/with-schemas/persisters/persister-electric-sql.d.ts +1 -0
- package/lib/types/with-schemas/persisters/persister-expo-sqlite-next.d.ts +5 -4
- package/lib/types/with-schemas/persisters/persister-expo-sqlite.d.ts +1 -0
- package/lib/types/with-schemas/persisters/persister-file.d.ts +1 -0
- package/lib/types/with-schemas/persisters/persister-indexed-db.d.ts +1 -0
- package/lib/types/with-schemas/persisters/persister-partykit-client.d.ts +1 -0
- package/lib/types/with-schemas/persisters/persister-partykit-server.d.ts +5 -0
- package/lib/types/with-schemas/persisters/persister-remote.d.ts +1 -0
- package/lib/types/with-schemas/persisters/persister-sqlite-wasm.d.ts +1 -0
- package/lib/types/with-schemas/persisters/persister-sqlite3.d.ts +1 -0
- package/lib/types/with-schemas/persisters/persister-yjs.d.ts +1 -0
- package/lib/types/with-schemas/persisters.d.ts +3 -3
- package/lib/types/with-schemas/store.d.ts +203 -141
- package/lib/types/with-schemas/tinybase.d.ts +1 -0
- package/lib/types/with-schemas/ui-react.d.ts +84 -95
- package/lib/ui-react-dom.js +1 -1
- package/lib/ui-react-dom.js.gz +0 -0
- package/lib/ui-react.js +1 -1
- package/lib/ui-react.js.gz +0 -0
- package/lib/umd/checkpoints.js +1 -1
- package/lib/umd/checkpoints.js.gz +0 -0
- package/lib/umd/indexes.js +1 -1
- package/lib/umd/indexes.js.gz +0 -0
- package/lib/umd/mergeable-store.js +1 -0
- 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-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-indexed-db.js +1 -1
- package/lib/umd/persisters/persister-indexed-db.js.gz +0 -0
- package/lib/umd/persisters/persister-partykit-server.js +1 -1
- package/lib/umd/persisters/persister-partykit-server.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/queries.js +1 -1
- package/lib/umd/queries.js.gz +0 -0
- package/lib/umd/relationships.js +1 -1
- package/lib/umd/relationships.js.gz +0 -0
- package/lib/umd/store.js +1 -1
- package/lib/umd/store.js.gz +0 -0
- package/lib/umd/tinybase.js +1 -1
- package/lib/umd/tinybase.js.gz +0 -0
- package/lib/umd/tools.js +1 -1
- package/lib/umd/tools.js.gz +0 -0
- package/lib/umd/ui-react-dom-debug.js +1 -1
- package/lib/umd/ui-react-dom-debug.js.gz +0 -0
- package/lib/umd/ui-react-dom.js +1 -1
- package/lib/umd/ui-react-dom.js.gz +0 -0
- package/lib/umd/ui-react.js +1 -1
- package/lib/umd/ui-react.js.gz +0 -0
- package/lib/umd-es6/checkpoints.js +1 -1
- package/lib/umd-es6/checkpoints.js.gz +0 -0
- package/lib/umd-es6/indexes.js +1 -1
- package/lib/umd-es6/indexes.js.gz +0 -0
- package/lib/umd-es6/mergeable-store.js +1 -0
- 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-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-indexed-db.js +1 -1
- package/lib/umd-es6/persisters/persister-indexed-db.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-partykit-server.js +1 -1
- package/lib/umd-es6/persisters/persister-partykit-server.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/queries.js +1 -1
- package/lib/umd-es6/queries.js.gz +0 -0
- package/lib/umd-es6/relationships.js +1 -1
- package/lib/umd-es6/relationships.js.gz +0 -0
- package/lib/umd-es6/store.js +1 -1
- package/lib/umd-es6/store.js.gz +0 -0
- package/lib/umd-es6/tinybase.js +1 -1
- package/lib/umd-es6/tinybase.js.gz +0 -0
- package/lib/umd-es6/tools.js +1 -1
- package/lib/umd-es6/tools.js.gz +0 -0
- package/lib/umd-es6/ui-react-dom-debug.js +1 -1
- package/lib/umd-es6/ui-react-dom-debug.js.gz +0 -0
- package/lib/umd-es6/ui-react-dom.js +1 -1
- package/lib/umd-es6/ui-react-dom.js.gz +0 -0
- package/lib/umd-es6/ui-react.js +1 -1
- package/lib/umd-es6/ui-react.js.gz +0 -0
- package/package.json +37 -37
- package/readme.md +2 -2
|
@@ -301,9 +301,9 @@ export type WithSchemas<Schemas extends OptionalSchemas> = {
|
|
|
301
301
|
*
|
|
302
302
|
* It is possible to create a Store outside of the React app with the regular
|
|
303
303
|
* createStore function and pass it in, but you may prefer to create it within
|
|
304
|
-
* the app, perhaps inside the top-level component. To
|
|
305
|
-
*
|
|
306
|
-
*
|
|
304
|
+
* the app, perhaps inside the top-level component. To prevent a new Store being
|
|
305
|
+
* created every time the app renders or re-renders, the useCreateStore hook
|
|
306
|
+
* wraps the creation in a memoization.
|
|
307
307
|
*
|
|
308
308
|
* The useCreateStore hook is a very thin wrapper around the React `useMemo`
|
|
309
309
|
* hook, defaulting to an empty array for its dependencies, so that by default,
|
|
@@ -2830,8 +2830,8 @@ export type WithSchemas<Schemas extends OptionalSchemas> = {
|
|
|
2830
2830
|
* specify `reuseRowIds` to be `false`, then the Id will be a monotonically
|
|
2831
2831
|
* increasing string representation of an increasing integer, regardless of any
|
|
2832
2832
|
* you may have previously deleted.
|
|
2833
|
-
* @param tableId The Id of the Table in the Store, or a GetId function
|
|
2834
|
-
*
|
|
2833
|
+
* @param tableId The Id of the Table in the Store, or a GetId function that
|
|
2834
|
+
* will return it.
|
|
2835
2835
|
* @param getRow A function which returns the Row object that will be used to
|
|
2836
2836
|
* update the Store, based on the parameter the callback will receive (and which
|
|
2837
2837
|
* is most likely a DOM event).
|
|
@@ -4199,8 +4199,8 @@ export type WithSchemas<Schemas extends OptionalSchemas> = {
|
|
|
4199
4199
|
* dependencies) or the component unmounts, the listener on the underlying Store
|
|
4200
4200
|
* will be deleted.
|
|
4201
4201
|
* @param tableId The Id of the Table to listen to, or `null` as a wildcard.
|
|
4202
|
-
* @param listener The function that will be called whenever the matching
|
|
4203
|
-
*
|
|
4202
|
+
* @param listener The function that will be called whenever the matching Table
|
|
4203
|
+
* is added or removed.
|
|
4204
4204
|
* @param listenerDeps An optional array of dependencies for the `listener`
|
|
4205
4205
|
* function, which, if any change, result in the re-registration of the
|
|
4206
4206
|
* listener. This parameter defaults to an empty array.
|
|
@@ -4805,8 +4805,8 @@ export type WithSchemas<Schemas extends OptionalSchemas> = {
|
|
|
4805
4805
|
* more easily done with the useHasRow hook).
|
|
4806
4806
|
*
|
|
4807
4807
|
* You can either listen to a single Row being added or removed (by specifying
|
|
4808
|
-
* the Table Id and Row Id, as the method's first two parameters) or changes
|
|
4809
|
-
*
|
|
4808
|
+
* the Table Id and Row Id, as the method's first two parameters) or changes to
|
|
4809
|
+
* any Row (by providing `null` wildcards).
|
|
4810
4810
|
*
|
|
4811
4811
|
* Both, either, or neither of the `tableId` and `rowId` parameters can be
|
|
4812
4812
|
* wildcarded with `null`. You can listen to a specific Row in a specific Table,
|
|
@@ -4819,8 +4819,8 @@ export type WithSchemas<Schemas extends OptionalSchemas> = {
|
|
|
4819
4819
|
* the component unmounts, the listener on the underlying Store will be deleted.
|
|
4820
4820
|
* @param tableId The Id of the Table to listen to, or `null` as a wildcard.
|
|
4821
4821
|
* @param rowId The Id of the Row to listen to, or `null` as a wildcard.
|
|
4822
|
-
* @param listener The function that will be called whenever the matching Row
|
|
4823
|
-
*
|
|
4822
|
+
* @param listener The function that will be called whenever the matching Row is
|
|
4823
|
+
* added or removed.
|
|
4824
4824
|
* @param listenerDeps An optional array of dependencies for the `listener`
|
|
4825
4825
|
* function, which, if any change, result in the re-registration of the
|
|
4826
4826
|
* listener. This parameter defaults to an empty array.
|
|
@@ -5081,14 +5081,14 @@ export type WithSchemas<Schemas extends OptionalSchemas> = {
|
|
|
5081
5081
|
* own specific listener to do more than simply tracking the value (which is
|
|
5082
5082
|
* more easily done with the useHasCell hook).
|
|
5083
5083
|
*
|
|
5084
|
-
* You can either listen to a single Cell being added or removed (by
|
|
5085
|
-
*
|
|
5086
|
-
*
|
|
5084
|
+
* You can either listen to a single Cell being added or removed (by specifying
|
|
5085
|
+
* the Table Id, Row Id, and Cell Id as the method's first three parameters) or
|
|
5086
|
+
* changes to any Cell (by providing `null` wildcards).
|
|
5087
5087
|
*
|
|
5088
|
-
* All, some, or none of the `tableId`, `rowId`, and `cellId` parameters can
|
|
5089
|
-
*
|
|
5090
|
-
*
|
|
5091
|
-
*
|
|
5088
|
+
* All, some, or none of the `tableId`, `rowId`, and `cellId` parameters can be
|
|
5089
|
+
* wildcarded with `null`. You can listen to a specific Cell in a specific Row
|
|
5090
|
+
* in a specific Table, any Cell in any Row in any Table, for example - or every
|
|
5091
|
+
* other combination of wildcards.
|
|
5092
5092
|
*
|
|
5093
5093
|
* Unlike the addHasCellListener method, which returns a listener Id and
|
|
5094
5094
|
* requires you to remove it manually, the useHasCellListener hook manages this
|
|
@@ -5518,8 +5518,8 @@ export type WithSchemas<Schemas extends OptionalSchemas> = {
|
|
|
5518
5518
|
* dependencies) or the component unmounts, the listener on the underlying Store
|
|
5519
5519
|
* will be deleted.
|
|
5520
5520
|
* @param valueId The Id of the Value to listen to, or `null` as a wildcard.
|
|
5521
|
-
* @param listener The function that will be called whenever the matching
|
|
5522
|
-
*
|
|
5521
|
+
* @param listener The function that will be called whenever the matching Value
|
|
5522
|
+
* is added or removed.
|
|
5523
5523
|
* @param listenerDeps An optional array of dependencies for the `listener`
|
|
5524
5524
|
* function, which, if any change, result in the re-registration of the
|
|
5525
5525
|
* listener. This parameter defaults to an empty array.
|
|
@@ -5869,18 +5869,16 @@ export type WithSchemas<Schemas extends OptionalSchemas> = {
|
|
|
5869
5869
|
* store: Store,
|
|
5870
5870
|
* create: (store: Store) => Metrics,
|
|
5871
5871
|
* createDeps?: React.DependencyList,
|
|
5872
|
-
* ): Metrics;
|
|
5872
|
+
* ): Metrics | undefined;
|
|
5873
5873
|
* ```
|
|
5874
5874
|
*
|
|
5875
5875
|
* It is possible to create a Metrics object outside of the React app with the
|
|
5876
5876
|
* regular createMetrics function and pass it in, but you may prefer to create
|
|
5877
|
-
* it within the app, perhaps inside the top-level component. To
|
|
5878
|
-
*
|
|
5879
|
-
* the useCreateMetrics hook
|
|
5880
|
-
*
|
|
5881
|
-
*
|
|
5882
|
-
* hook, defaulting to the provided Store as its dependency, so that by default,
|
|
5883
|
-
* the creation only occurs once per Store.
|
|
5877
|
+
* it within the app, perhaps inside the top-level component. To prevent a new
|
|
5878
|
+
* Metrics object being created every time the app renders or re-renders, since
|
|
5879
|
+
* v5.0 the useCreateMetrics hook performs the creation in an effect. As a
|
|
5880
|
+
* result this hook will return `undefined` on the brief first render, which you
|
|
5881
|
+
* should defend against.
|
|
5884
5882
|
*
|
|
5885
5883
|
* If your `create` function contains other dependencies, the changing of which
|
|
5886
5884
|
* should also cause the Metrics object to be recreated, you can provide them in
|
|
@@ -5915,7 +5913,7 @@ export type WithSchemas<Schemas extends OptionalSchemas> = {
|
|
|
5915
5913
|
* 'species',
|
|
5916
5914
|
* );
|
|
5917
5915
|
* });
|
|
5918
|
-
* return <span>{metrics
|
|
5916
|
+
* return <span>{metrics?.getMetric('speciesCount')}</span>;
|
|
5919
5917
|
* };
|
|
5920
5918
|
*
|
|
5921
5919
|
* const app = document.createElement('div');
|
|
@@ -5953,7 +5951,7 @@ export type WithSchemas<Schemas extends OptionalSchemas> = {
|
|
|
5953
5951
|
* },
|
|
5954
5952
|
* [tableToCount],
|
|
5955
5953
|
* );
|
|
5956
|
-
* return <span>{metrics
|
|
5954
|
+
* return <span>{metrics?.getMetric('tableCount')}</span>;
|
|
5957
5955
|
* };
|
|
5958
5956
|
*
|
|
5959
5957
|
* const app = document.createElement('div');
|
|
@@ -5976,7 +5974,7 @@ export type WithSchemas<Schemas extends OptionalSchemas> = {
|
|
|
5976
5974
|
store: Store<Schemas>,
|
|
5977
5975
|
create: (store: Store<Schemas>) => Metrics<Schemas>,
|
|
5978
5976
|
createDeps?: React.DependencyList,
|
|
5979
|
-
) => Metrics<Schemas
|
|
5977
|
+
) => Metrics<Schemas> | undefined;
|
|
5980
5978
|
|
|
5981
5979
|
/**
|
|
5982
5980
|
* The useMetricsIds hook is used to retrieve the Ids of all the named Metrics
|
|
@@ -6401,18 +6399,16 @@ export type WithSchemas<Schemas extends OptionalSchemas> = {
|
|
|
6401
6399
|
* store: Store,
|
|
6402
6400
|
* create: (store: Store) => Indexes,
|
|
6403
6401
|
* createDeps?: React.DependencyList,
|
|
6404
|
-
* ): Indexes;
|
|
6402
|
+
* ): Indexes | undefined;
|
|
6405
6403
|
* ```
|
|
6406
6404
|
*
|
|
6407
6405
|
* It is possible to create an Indexes object outside of the React app with the
|
|
6408
6406
|
* regular createIndexes function and pass it in, but you may prefer to create
|
|
6409
|
-
* it within the app, perhaps inside the top-level component. To
|
|
6410
|
-
*
|
|
6411
|
-
* the useCreateIndexes hook
|
|
6412
|
-
*
|
|
6413
|
-
*
|
|
6414
|
-
* hook, defaulting to the provided Store as its dependency, so that by default,
|
|
6415
|
-
* the creation only occurs once per Store.
|
|
6407
|
+
* it within the app, perhaps inside the top-level component. To prevent a new
|
|
6408
|
+
* Indexes object being created every time the app renders or re-renders, since
|
|
6409
|
+
* v5.0 the useCreateIndexes hook performs the creation in an effect. As a
|
|
6410
|
+
* result this hook will return `undefined` on the brief first render, which you
|
|
6411
|
+
* should defend against.
|
|
6416
6412
|
*
|
|
6417
6413
|
* If your `create` function contains other dependencies, the changing of which
|
|
6418
6414
|
* should also cause the Indexes object to be recreated, you can provide them in
|
|
@@ -6452,7 +6448,7 @@ export type WithSchemas<Schemas extends OptionalSchemas> = {
|
|
|
6452
6448
|
* 'species',
|
|
6453
6449
|
* );
|
|
6454
6450
|
* });
|
|
6455
|
-
* return <span>{JSON.stringify(indexes
|
|
6451
|
+
* return <span>{JSON.stringify(indexes?.getSliceIds('bySpecies'))}</span>;
|
|
6456
6452
|
* };
|
|
6457
6453
|
*
|
|
6458
6454
|
* const app = document.createElement('div');
|
|
@@ -6493,7 +6489,7 @@ export type WithSchemas<Schemas extends OptionalSchemas> = {
|
|
|
6493
6489
|
* },
|
|
6494
6490
|
* [cellToIndex],
|
|
6495
6491
|
* );
|
|
6496
|
-
* return <span>{JSON.stringify(indexes
|
|
6492
|
+
* return <span>{JSON.stringify(indexes?.getSliceIds('byCell'))}</span>;
|
|
6497
6493
|
* };
|
|
6498
6494
|
*
|
|
6499
6495
|
* const app = document.createElement('div');
|
|
@@ -6516,7 +6512,7 @@ export type WithSchemas<Schemas extends OptionalSchemas> = {
|
|
|
6516
6512
|
store: Store<Schemas>,
|
|
6517
6513
|
create: (store: Store<Schemas>) => Indexes<Schemas>,
|
|
6518
6514
|
createDeps?: React.DependencyList,
|
|
6519
|
-
) => Indexes<Schemas
|
|
6515
|
+
) => Indexes<Schemas> | undefined;
|
|
6520
6516
|
|
|
6521
6517
|
/**
|
|
6522
6518
|
* The useIndexesIds hook is used to retrieve the Ids of all the named Indexes
|
|
@@ -7160,19 +7156,16 @@ export type WithSchemas<Schemas extends OptionalSchemas> = {
|
|
|
7160
7156
|
* store: Store,
|
|
7161
7157
|
* create: (store: Store) => Relationships,
|
|
7162
7158
|
* createDeps?: React.DependencyList,
|
|
7163
|
-
* ): Relationships;
|
|
7159
|
+
* ): Relationships | undefined;
|
|
7164
7160
|
* ```
|
|
7165
7161
|
*
|
|
7166
7162
|
* It is possible to create a Relationships object outside of the React app with
|
|
7167
7163
|
* the regular createRelationships function and pass it in, but you may prefer
|
|
7168
7164
|
* to create it within the app, perhaps inside the top-level component. To
|
|
7169
|
-
*
|
|
7170
|
-
*
|
|
7171
|
-
* a
|
|
7172
|
-
*
|
|
7173
|
-
* The useCreateRelationships hook is a very thin wrapper around the React
|
|
7174
|
-
* `useMemo` hook, defaulting to the provided Store as its dependency, so that
|
|
7175
|
-
* by default, the creation only occurs once per Store.
|
|
7165
|
+
* prevent a new Relationships object being created every time the app renders
|
|
7166
|
+
* or re-renders, since v5.0 the useCreateRelationships hook performs the
|
|
7167
|
+
* creation in an effect. As a result this hook will return `undefined` on the
|
|
7168
|
+
* brief first render, which you should defend against.
|
|
7176
7169
|
*
|
|
7177
7170
|
* If your `create` function contains other dependencies, the changing of which
|
|
7178
7171
|
* should also cause the Relationships object to be recreated, you can provide
|
|
@@ -7214,7 +7207,9 @@ export type WithSchemas<Schemas extends OptionalSchemas> = {
|
|
|
7214
7207
|
* 'species',
|
|
7215
7208
|
* );
|
|
7216
7209
|
* });
|
|
7217
|
-
* return
|
|
7210
|
+
* return (
|
|
7211
|
+
* <span>{relationships?.getRemoteRowId('petSpecies', 'fido')}</span>
|
|
7212
|
+
* );
|
|
7218
7213
|
* };
|
|
7219
7214
|
*
|
|
7220
7215
|
* const app = document.createElement('div');
|
|
@@ -7260,7 +7255,9 @@ export type WithSchemas<Schemas extends OptionalSchemas> = {
|
|
|
7260
7255
|
* },
|
|
7261
7256
|
* [remoteTableAndCellToLink],
|
|
7262
7257
|
* );
|
|
7263
|
-
* return
|
|
7258
|
+
* return (
|
|
7259
|
+
* <span>{relationships?.getRemoteRowId('cellLinked', 'fido')}</span>
|
|
7260
|
+
* );
|
|
7264
7261
|
* };
|
|
7265
7262
|
*
|
|
7266
7263
|
* const app = document.createElement('div');
|
|
@@ -7283,7 +7280,7 @@ export type WithSchemas<Schemas extends OptionalSchemas> = {
|
|
|
7283
7280
|
store: Store<Schemas>,
|
|
7284
7281
|
create: (store: Store<Schemas>) => Relationships<Schemas>,
|
|
7285
7282
|
createDeps?: React.DependencyList,
|
|
7286
|
-
) => Relationships<Schemas
|
|
7283
|
+
) => Relationships<Schemas> | undefined;
|
|
7287
7284
|
|
|
7288
7285
|
/**
|
|
7289
7286
|
* The useRelationshipsIds hook is used to retrieve the Ids of all the named
|
|
@@ -8222,18 +8219,16 @@ export type WithSchemas<Schemas extends OptionalSchemas> = {
|
|
|
8222
8219
|
* store: Store,
|
|
8223
8220
|
* create: (store: Store) => Queries,
|
|
8224
8221
|
* createDeps?: React.DependencyList,
|
|
8225
|
-
* ): Queries;
|
|
8222
|
+
* ): Queries | undefined;
|
|
8226
8223
|
* ```
|
|
8227
8224
|
*
|
|
8228
8225
|
* It is possible to create a Queries object outside of the React app with the
|
|
8229
8226
|
* regular createQueries function and pass it in, but you may prefer to create
|
|
8230
|
-
* it within the app, perhaps inside the top-level component. To
|
|
8231
|
-
*
|
|
8232
|
-
* the useCreateQueries hook
|
|
8233
|
-
*
|
|
8234
|
-
*
|
|
8235
|
-
* hook, defaulting to the provided Store as its dependency, so that by default,
|
|
8236
|
-
* the creation only occurs once per Store.
|
|
8227
|
+
* it within the app, perhaps inside the top-level component. To prevent a new
|
|
8228
|
+
* Queries object being created every time the app renders or re-renders, since
|
|
8229
|
+
* v5.0 the useCreateQueries hook performs the creation in an effect. As a
|
|
8230
|
+
* result this hook will return `undefined` on the brief first render, which you
|
|
8231
|
+
* should defend against.
|
|
8237
8232
|
*
|
|
8238
8233
|
* If your `create` function contains other dependencies, the changing of which
|
|
8239
8234
|
* should also cause the Queries object to be recreated, you can provide them in
|
|
@@ -8276,7 +8271,7 @@ export type WithSchemas<Schemas extends OptionalSchemas> = {
|
|
|
8276
8271
|
* );
|
|
8277
8272
|
* });
|
|
8278
8273
|
* return (
|
|
8279
|
-
* <span>{queries
|
|
8274
|
+
* <span>{queries?.getResultCell('dogColors', 'fido', 'color')}</span>
|
|
8280
8275
|
* );
|
|
8281
8276
|
* };
|
|
8282
8277
|
*
|
|
@@ -8318,7 +8313,7 @@ export type WithSchemas<Schemas extends OptionalSchemas> = {
|
|
|
8318
8313
|
* );
|
|
8319
8314
|
* });
|
|
8320
8315
|
* return (
|
|
8321
|
-
* <span>{queries
|
|
8316
|
+
* <span>{queries?.getResultCell('dogColors', 'fido', 'color')}</span>
|
|
8322
8317
|
* );
|
|
8323
8318
|
* };
|
|
8324
8319
|
*
|
|
@@ -8340,7 +8335,7 @@ export type WithSchemas<Schemas extends OptionalSchemas> = {
|
|
|
8340
8335
|
store: Store<Schemas>,
|
|
8341
8336
|
create: (store: Store<Schemas>) => Queries<Schemas>,
|
|
8342
8337
|
createDeps?: React.DependencyList,
|
|
8343
|
-
) => Queries<Schemas
|
|
8338
|
+
) => Queries<Schemas> | undefined;
|
|
8344
8339
|
|
|
8345
8340
|
/**
|
|
8346
8341
|
* The useQueriesIds hook is used to retrieve the Ids of all the named Queries
|
|
@@ -10432,19 +10427,16 @@ export type WithSchemas<Schemas extends OptionalSchemas> = {
|
|
|
10432
10427
|
* store: Store,
|
|
10433
10428
|
* create: (store: Store) => Checkpoints,
|
|
10434
10429
|
* createDeps?: React.DependencyList,
|
|
10435
|
-
* ): Checkpoints;
|
|
10430
|
+
* ): Checkpoints | undefined;
|
|
10436
10431
|
* ```
|
|
10437
10432
|
*
|
|
10438
10433
|
* It is possible to create a Checkpoints object outside of the React app with
|
|
10439
10434
|
* the regular createCheckpoints function and pass it in, but you may prefer to
|
|
10440
|
-
* create it within the app, perhaps inside the top-level component. To
|
|
10441
|
-
*
|
|
10442
|
-
* re-renders, the
|
|
10443
|
-
*
|
|
10444
|
-
*
|
|
10445
|
-
* The useCreateCheckpoints hook is a very thin wrapper around the React
|
|
10446
|
-
* `useMemo` hook, defaulting to the provided Store as its dependency, so that
|
|
10447
|
-
* by default, the creation only occurs once per Store.
|
|
10435
|
+
* create it within the app, perhaps inside the top-level component. To prevent
|
|
10436
|
+
* a new Checkpoints object being created every time the app renders or
|
|
10437
|
+
* re-renders, since v5.0 the useCreateMetrics hook performs the creation in an
|
|
10438
|
+
* effect. As a result this hook will return `undefined` on the brief first
|
|
10439
|
+
* render, which you should defend against.
|
|
10448
10440
|
*
|
|
10449
10441
|
* If your `create` function contains other dependencies, the changing of which
|
|
10450
10442
|
* should also cause the Checkpoints object to be recreated, you can provide
|
|
@@ -10474,7 +10466,7 @@ export type WithSchemas<Schemas extends OptionalSchemas> = {
|
|
|
10474
10466
|
* console.log('Checkpoints created');
|
|
10475
10467
|
* return createCheckpoints(store).setSize(10);
|
|
10476
10468
|
* });
|
|
10477
|
-
* return <span>{JSON.stringify(checkpoints
|
|
10469
|
+
* return <span>{JSON.stringify(checkpoints?.getCheckpointIds())}</span>;
|
|
10478
10470
|
* };
|
|
10479
10471
|
*
|
|
10480
10472
|
* const app = document.createElement('div');
|
|
@@ -10506,7 +10498,7 @@ export type WithSchemas<Schemas extends OptionalSchemas> = {
|
|
|
10506
10498
|
* },
|
|
10507
10499
|
* [size],
|
|
10508
10500
|
* );
|
|
10509
|
-
* return <span>{JSON.stringify(checkpoints
|
|
10501
|
+
* return <span>{JSON.stringify(checkpoints?.getCheckpointIds())}</span>;
|
|
10510
10502
|
* };
|
|
10511
10503
|
*
|
|
10512
10504
|
* const app = document.createElement('div');
|
|
@@ -10529,7 +10521,7 @@ export type WithSchemas<Schemas extends OptionalSchemas> = {
|
|
|
10529
10521
|
store: Store<Schemas>,
|
|
10530
10522
|
create: (store: Store<Schemas>) => Checkpoints<Schemas>,
|
|
10531
10523
|
createDeps?: React.DependencyList,
|
|
10532
|
-
) => Checkpoints<Schemas
|
|
10524
|
+
) => Checkpoints<Schemas> | undefined;
|
|
10533
10525
|
|
|
10534
10526
|
/**
|
|
10535
10527
|
* The useCheckpointsIds hook is used to retrieve the Ids of all the named
|
|
@@ -11487,20 +11479,18 @@ export type WithSchemas<Schemas extends OptionalSchemas> = {
|
|
|
11487
11479
|
* store: Store,
|
|
11488
11480
|
* create: (store: Store) => PersisterOrUndefined,
|
|
11489
11481
|
* createDeps?: React.DependencyList,
|
|
11490
|
-
* then?: (persister:
|
|
11482
|
+
* then?: (persister: Persister) => Promise<void>,
|
|
11491
11483
|
* thenDeps?: React.DependencyList,
|
|
11492
|
-
* destroy?: (persister:
|
|
11484
|
+
* destroy?: (persister: Persister) => void,
|
|
11493
11485
|
* destroyDeps?: React.DependencyList,
|
|
11494
11486
|
* ): PersisterOrUndefined;
|
|
11495
11487
|
* ```
|
|
11496
11488
|
*
|
|
11497
11489
|
* It is possible to create a Persister outside of the React app with the
|
|
11498
11490
|
* regular createPersister function and pass it in, but you may prefer to create
|
|
11499
|
-
* it within the app, perhaps inside the top-level component. To
|
|
11500
|
-
*
|
|
11501
|
-
*
|
|
11502
|
-
* second callback so that you can configure the Persister, once, and
|
|
11503
|
-
* asynchronously, when it is created.
|
|
11491
|
+
* it within the app, perhaps inside the top-level component. To prevent a new
|
|
11492
|
+
* Persister being created every time the app renders or re-renders, since v5.0
|
|
11493
|
+
* the useCreateMetrics hook performs the creation in an effect.
|
|
11504
11494
|
*
|
|
11505
11495
|
* If your `create` function (the second parameter to the hook) contains
|
|
11506
11496
|
* dependencies, the changing of which should cause the Persister to be
|
|
@@ -11508,19 +11498,18 @@ export type WithSchemas<Schemas extends OptionalSchemas> = {
|
|
|
11508
11498
|
* you would for any React hook with dependencies. The Store passed in as the
|
|
11509
11499
|
* first parameter of this hook is used as a dependency by default.
|
|
11510
11500
|
*
|
|
11511
|
-
* A second `then
|
|
11512
|
-
* called after the creation, and, importantly, can be asynchronous, so
|
|
11513
|
-
* can configure the Persister with the startAutoLoad method and
|
|
11514
|
-
* method, for example. If this callback contains dependencies,
|
|
11515
|
-
* which should cause the Persister to be reconfigured, you can
|
|
11516
|
-
* an array in the fifth parameter. The Persister itself is used
|
|
11517
|
-
* by default.
|
|
11501
|
+
* A second callback, called `then`, can be provided as the fourth parameter.
|
|
11502
|
+
* This is called after the creation, and, importantly, can be asynchronous, so
|
|
11503
|
+
* that you can configure the Persister with the startAutoLoad method and
|
|
11504
|
+
* startAutoSave method, for example. If this callback contains dependencies,
|
|
11505
|
+
* the changing of which should cause the Persister to be reconfigured, you can
|
|
11506
|
+
* provide them in an array in the fifth parameter. The Persister itself is used
|
|
11507
|
+
* as a dependency by default.
|
|
11518
11508
|
*
|
|
11519
11509
|
* Since v4.3.0, the `create` function can return undefined, meaning that you
|
|
11520
11510
|
* can enable or disable persistence conditionally within this hook. This is
|
|
11521
11511
|
* useful for applications which might turn on or off their cloud persistence or
|
|
11522
|
-
* collaboration features.
|
|
11523
|
-
* undefined, which you should handle accordingly.
|
|
11512
|
+
* collaboration features.
|
|
11524
11513
|
*
|
|
11525
11514
|
* Since v4.3.19, a `destroy` function can be provided which will be called
|
|
11526
11515
|
* after an old Persister is destroyed due to a change in the `createDeps`
|
|
@@ -11639,8 +11628,8 @@ export type WithSchemas<Schemas extends OptionalSchemas> = {
|
|
|
11639
11628
|
* // -> '<span>{\"pets\":{\"fido\":{\"species\":\"dog\"}}}</span>'
|
|
11640
11629
|
*
|
|
11641
11630
|
* root.render(<App sessionKey="cujoStore" />); // !act
|
|
11642
|
-
* // -> 'Persister created for session key cujoStore'
|
|
11643
11631
|
* // -> 'Persister destroyed for session key fidoStore'
|
|
11632
|
+
* // -> 'Persister created for session key cujoStore'
|
|
11644
11633
|
*
|
|
11645
11634
|
* // ... // !act
|
|
11646
11635
|
* console.log(app.innerHTML);
|
|
@@ -11657,9 +11646,9 @@ export type WithSchemas<Schemas extends OptionalSchemas> = {
|
|
|
11657
11646
|
store: Store<Schemas>,
|
|
11658
11647
|
create: (store: Store<Schemas>) => PersisterOrUndefined,
|
|
11659
11648
|
createDeps?: React.DependencyList,
|
|
11660
|
-
then?: (persister
|
|
11649
|
+
then?: (persister: Persister<Schemas>) => Promise<void>,
|
|
11661
11650
|
thenDeps?: React.DependencyList,
|
|
11662
|
-
destroy?: (persister:
|
|
11651
|
+
destroy?: (persister: Persister<Schemas>) => void,
|
|
11663
11652
|
destroyDeps?: React.DependencyList,
|
|
11664
11653
|
) => PersisterOrUndefined;
|
|
11665
11654
|
|
package/lib/ui-react-dom.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import e from"react";import{useRowIds as t,useTableCellIds as l,useRowCount as a,useSortedRowIds as n,useValueIds as o,ValueView as r,useIndexesOrIndexesById as i,useSliceRowIds as s,useRelationshipsOrRelationshipsById as d,useResultRowIds as m,useResultTableCellIds as h,useResultRowCount as u,useResultSortedRowIds as c,useCell as g,useSetCellCallback as p,useStoreOrStoreById as b,useValue as f,useSetValueCallback as w,useRemoteRowId as y,CellView as
|
|
1
|
+
import e from"react";import{useRowIds as t,useTableCellIds as l,useRowCount as a,useSortedRowIds as n,useValueIds as o,ValueView as r,useIndexesOrIndexesById as i,useSliceRowIds as s,useRelationshipsOrRelationshipsById as d,useResultRowIds as m,useResultTableCellIds as h,useResultRowCount as u,useResultSortedRowIds as c,useCell as g,useSetCellCallback as p,useStoreOrStoreById as b,useValue as f,useSetValueCallback as w,useRemoteRowId as y,CellView as v,ResultCellView as k}from"./ui-react";const C=e=>typeof e,x=C(""),I=C(!0),N=C(0),z="Value",$="currentTarget",T="value",M=isFinite,S=e=>null==e,{PureComponent:R,Fragment:q,createElement:F,useCallback:P,useLayoutEffect:E,useRef:O,useState:V}=e,j=(e,...t)=>S(e)?{}:e(...t),A=(e,t)=>e.map(t),B=Object,L=B.entries,D=(e=[])=>B.fromEntries(e),G=(e,t)=>A(L(e),(([e,l])=>t(l,e))),H="tinybaseStoreInspector",J="M20 80l5-15l40-40l10 10l-40 40l-15 5m5-15l10 10",K='content:url("',Q=K+"data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' stroke-width='4' stroke='white' fill='none'>",U='</svg>")',W=K+"data:image/svg+xml,%3csvg viewBox='0 0 680 680' xmlns='http://www.w3.org/2000/svg' style='width:680px%3bheight:680px'%3e %3cpath stroke='white' stroke-width='80' fill='none' d='M340 617a84 241 90 11.01 0zM131 475a94 254 70 10428-124 114 286 70 01-428 124zm0-140a94 254 70 10428-124 114 286 70 01-428 124zm-12-127a94 254 70 00306 38 90 260 90 01-306-38zm221 3a74 241 90 11.01 0z' /%3e %3cpath fill='%23d81b60' d='M131 475a94 254 70 10428-124 114 286 70 01-428 124zm0-140a94 254 70 10428-124 114 286 70 01-428 124z' /%3e %3cpath d='M249 619a94 240 90 00308-128 114 289 70 01-308 128zM119 208a94 254 70 00306 38 90 260 90 01-306-38zm221 3a74 241 90 11.01 0z' /%3e%3c/svg%3e\")",X=A([[20,20,20,60],[20,20,60,20],[20,60,60,20],[60,20,20,60],[30,30,40,40]],(([e,t,l,a])=>Q+`<rect x='20' y='20' width='60' height='60' fill='grey'/><rect x='${e}' y='${t}' width='${l}' height='${a}' fill='white'/>`+U)),Y=Q+"<path d='M20 20l60 60M20 80l60-60' />"+U,Z=Q+`<path d='${J}' />`+U,_=Q+`<path d='${J}M20 20l60 60' />`+U,ee="*::-webkit-scrollbar";((e,t="")=>{e.join(t)})(G({"":"all:initial;font-family:sans-serif;font-size:0.75rem;position:fixed;z-index:999999","*":"all:revert","*::before":"all:revert","*::after":"all:revert",[ee]:"width:0.5rem;height:0.5rem;",[ee+"-track"]:"background:#111",[ee+"-thumb"]:"background:#999;border:1px solid #111",[ee+"-thumb:hover"]:"background:#fff",[ee+"-corner"]:"background:#111",img:"width:1rem;height:1rem;background:#111;border:0;vertical-align:text-bottom",">img":"padding:0.25rem;bottom:0;right:0;position:fixed;"+W,...D(A(["bottom:0;left:0","top:0;right:0"],((e,t)=>[`>img[data-position='${t}']`,e]))),main:"display:flex;flex-direction:column;background:#111d;color:#fff;position:fixed;",...D(A(["bottom:0;left:0;width:35vw;height:100vh","top:0;right:0;width:100vw;height:30vh","bottom:0;left:0;width:100vw;height:30vh","top:0;right:0;width:35vw;height:100vh","top:0;right:0;width:100vw;height:100vh"],((e,t)=>[`main[data-position='${t}']`,e]))),header:"display:flex;padding:0.25rem;background:#000;align-items:center","header>img:nth-of-type(1)":W,"header>img:nth-of-type(6)":Y,...D(A(X,((e,t)=>[`header>img[data-id='${t}']`,e]))),"header>span":"flex:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;margin-left:0.25rem",article:"padding:0.25rem 0.25rem 0.25rem 0.5rem;overflow:auto;flex:1",details:"margin-left:0.75rem;width:fit-content;","details img":"display:none","details[open]>summary img":"display:unset;background:none;margin-left:0.25rem","details[open]>summary img.edit":Z,"details[open]>summary img.done":_,summary:"margin-left:-0.75rem;line-height:1.25rem;user-select:none;width:fit-content",table:"border-collapse:collapse;table-layout:fixed;margin-bottom:0.5rem","table input":"background:#111;color:unset;padding:0 0.25rem;border:0;font-size:unset;vertical-align:top;margin:0",'table input[type="number"]':"width:4rem","table tbody button":"font-size:0;background:#fff;border-radius:50%;margin:0 0.125rem 0 0;width:0.85rem;color:#111","table button:first-letter":"font-size:0.75rem",thead:"background:#222","th:nth-of-type(1)":"min-width:2rem;","th.sorted":"background:#000","table caption":"text-align:left;white-space:nowrap;line-height:1.25rem",button:"width:1.5rem;border:none;background:none;color:#fff;padding:0","button[disabled]":"color:#777","button.next":"margin-right:0.5rem",[`th,#${H} td`]:"overflow:hidden;text-overflow:ellipsis;padding:0.25rem 0.5rem;max-width:12rem;white-space:nowrap;border-width:1px 0;border-style:solid;border-color:#777;text-align:left","span.warn":"margin:0.25rem;color:#d81b60"},((e,t)=>e?`#${H} ${t}{${e}}`:"")));const te=(e,t,l,a)=>e==x?t:e==N?l:a,{useCallback:le,useMemo:ae,useState:ne}=e,oe="editable",re=(e,t)=>A(l(e,t),(t=>e+"."+t)),ie=(e,t,l)=>{const a=le(e,t);return l?a:void 0},se=(...e)=>ae((()=>e),e),de=(e,t)=>ae((()=>({store:e,tableId:t})),[e,t]),me=(e,t)=>ae((()=>({queries:e,queryId:t})),[e,t]),he=(e,t=!1,l,a=0,n,o,r,i)=>{const[[s,d,m],h]=ne([e,t,a]),u=le((e=>{h(e),i?.(e)}),[i]),c=ie((e=>u([e,e==s&&!d,m])),[u,s,d,m],l),g=le((e=>u([s,d,e])),[u,s,d]),p=!0===r?ze:r;return[[s,d,m],c,ae((()=>!1===r?null:F(p,{offset:m,limit:n,total:o,onChange:g})),[r,p,m,n,o,g])]},ue=(e,t,l)=>ae((()=>{const a=t??e;return n=Array.isArray(a)?D(A(a,(e=>[e,e]))):a,o=(e,t)=>{return{label:t,component:l,...(a=e,C(a)==x?{label:e}:e)};var a},D(G(n,((e,t)=>[t,o(e,t)])));var n,o}),[t,l,e]),ce=({className:e,headerRow:t,idColumn:l,params:[a,n,o,r,i,s]})=>F("table",{className:e},s?F("caption",null,s):null,!1===t?null:F("thead",null,F("tr",null,!1===l?null:F(ge,{sort:r??[],label:"Id",onClick:i}),G(a,(({label:e},t)=>F(ge,{key:t,cellId:t,label:e,sort:r??[],onClick:i}))))),F("tbody",null,A(o,(e=>F("tr",{key:e},!1===l?null:F("th",null,e),G(a,(({component:t,getComponentProps:l},a)=>F("td",{key:a},F(t,{...j(l,e,a),...n,rowId:e,cellId:a}))))))))),ge=({cellId:e,sort:[t,l],label:a=e??"",onClick:n})=>F("th",{onClick:ie((()=>n?.(e)),[n,e],n),className:S(l)||t!=e?void 0:`sorted ${l?"de":"a"}scending`},S(l)||t!=e?null:(l?"↓":"↑")+" ",a),pe=({localRowId:t,params:[l,a,n,o,r,i,s]})=>{const d=y(r,t,i);return F("tr",null,!1===l?null:F(e.Fragment,null,F("th",null,t),F("th",null,d)),G(a,(({component:e,getComponentProps:l},a)=>{const[r,i]=a.split(".",2),m=r===n?t:r===o?d:null;return S(m)?null:F("td",{key:a},F(e,{...j(l,m,i),store:s,tableId:r,rowId:m,cellId:i}))})))},be=({thing:e,onThingChange:t,className:l,hasSchema:a,showType:n=!0})=>{const[o,r]=ne(),[i,s]=ne(),[d,m]=ne(),[h,u]=ne(),[c,g]=ne();i!==e&&(r((e=>{const t=C(e);return(e=>e==x||e==I)(t)||t==N&&M(e)?t:void 0})(e)),s(e),m(e+""),u(Number(e)||0),g(!!e));const p=le(((e,l)=>{l(e),s(e),t(e)}),[t]),b=le((()=>{if(!a?.()){const e=te(o,N,I,x),l=te(e,d,h,c);r(e),s(l),t(l)}}),[a,t,d,h,c,o]);return F("div",{className:l},n?F("button",{className:o,onClick:b},o):null,te(o,F("input",{key:o,value:d,onChange:le((e=>p(e[$][T]+"",m)),[p])}),F("input",{key:o,type:"number",value:h,onChange:le((e=>p(Number(e[$][T]||0),u)),[p])}),F("input",{key:o,type:"checkbox",checked:c,onChange:le((e=>p(!!e[$].checked,g)),[p])})))},fe=({tableId:e,store:a,editable:n,customCells:o,...r})=>F(ce,{...r,params:se(ue(l(e,a),o,n?Ie:v),de(a,e),t(e,a))}),we=({tableId:e,cellId:t,descending:o,offset:r,limit:i,store:s,editable:d,sortOnClick:m,paginator:h=!1,onChange:u,customCells:c,...g})=>{const[p,b,f]=he(t,o,m,r,i,a(e,s),h,u);return F(ce,{...g,params:se(ue(l(e,s),c,d?Ie:v),de(s,e),n(e,...p,i,s),p,b,f)})},ye=({store:e,editable:t=!1,valueComponent:l=(t?Ne:r),getValueComponentProps:a,className:n,headerRow:i,idColumn:s})=>F("table",{className:n},!1===i?null:F("thead",null,F("tr",null,!1===s?null:F("th",null,"Id"),F("th",null,z))),F("tbody",null,A(o(e),(t=>F("tr",{key:t},!1===s?null:F("th",null,t),F("td",null,F(l,{...j(a,t),valueId:t,store:e}))))))),ve=({indexId:e,sliceId:t,indexes:a,editable:n,customCells:o,...r})=>{const[d,m,h]=((e,t)=>[e,e?.getStore(),e?.getTableId(t)])(i(a),e);return F(ce,{...r,params:se(ue(l(h,m),o,n?Ie:v),de(m,h),s(e,t,d))})},ke=({relationshipId:l,relationships:a,editable:n,customCells:o,className:r,headerRow:i,idColumn:s=!0})=>{const[m,h,u,c]=((e,t)=>[e,e?.getStore(),e?.getLocalTableId(t),e?.getRemoteTableId(t)])(d(a),l),g=ue([...re(u,h),...re(c,h)],o,n?Ie:v),p=se(s,g,u,c,l,m,h);return F("table",{className:r},!1===i?null:F("thead",null,F("tr",null,!1===s?null:F(e.Fragment,null,F("th",null,u,".Id"),F("th",null,c,".Id")),G(g,(({label:e},t)=>F("th",{key:t},e))))),F("tbody",null,A(t(u,h),(e=>F(pe,{key:e,localRowId:e,params:p})))))},Ce=({queryId:e,queries:t,customCells:l,...a})=>F(ce,{...a,params:se(ue(h(e,t),l,k),me(t,e),m(e,t))}),xe=({queryId:e,cellId:t,descending:l,offset:a,limit:n,queries:o,sortOnClick:r,paginator:i=!1,customCells:s,onChange:d,...m})=>{const[g,p,b]=he(t,l,r,a,n,u(e,o),i,d);return F(ce,{...m,params:se(ue(h(e,o),s,k),me(o,e),c(e,...g,n,o),g,p,b)})},Ie=({tableId:e,rowId:t,cellId:l,store:a,className:n,showType:o})=>F(be,{thing:g(e,t,l,a),onThingChange:p(e,t,l,(e=>e),[],a),className:n??oe+"Cell",showType:o,hasSchema:b(a)?.hasTablesSchema}),Ne=({valueId:e,store:t,className:l,showType:a})=>F(be,{thing:f(e,t),onThingChange:w(e,(e=>e),[],t),className:l??oe+z,showType:a,hasSchema:b(t)?.hasValuesSchema}),ze=({onChange:t,total:l,offset:a=0,limit:n=l,singular:o="row",plural:r=o+"s"})=>{(a>l||a<0)&&(a=0,t(0));const i=ie((()=>t(a-n)),[t,a,n],a>0),s=ie((()=>t(a+n)),[t,a,n],a+n<l);return F(e.Fragment,null,l>n&&F(e.Fragment,null,F("button",{className:"previous",disabled:0==a,onClick:i},"←"),F("button",{className:"next",disabled:a+n>=l,onClick:s},"→"),a+1," to ",Math.min(l,a+n)," of "),l," ",1!=l?r:o)},$e=e=>new Map(e);$e(),$e();const Te=e=>null;export{Ie as EditableCellView,Ne as EditableValueView,ke as RelationshipInHtmlTable,xe as ResultSortedTableInHtmlTable,Ce as ResultTableInHtmlTable,ve as SliceInHtmlTable,we as SortedTableInHtmlTable,ze as SortedTablePaginator,Te as StoreInspector,fe as TableInHtmlTable,ye as ValuesInHtmlTable};
|
package/lib/ui-react-dom.js.gz
CHANGED
|
Binary file
|
package/lib/ui-react.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import e from"react";const t=e=>typeof e,o="",s=t(o),r=t(t),d="Listener",n="Result",u="Has",I="has",i="Ids",c="Table",l=c+"s",a=c+i,p="Row",g=p+"Count",b=p+i,C="Sorted"+p+i,m="Cell",k=m+i,y="Value",w=y+"s",h=y+i,R=e=>null==e,v=(e,t,o)=>R(e)?o?.():t(e),f=e=>t(e)==s,q=e=>t(e)==r,P=()=>{},x=(e,t)=>e.map(t),S=Object.keys,L=(e,t)=>v(e,(e=>e[t])),B=(e,t)=>(delete e[t],e),{createContext:T,useContext:E,useEffect:M}=e,F=T([]),V=(e,t)=>{const o=E(F);return R(e)?o[t]:f(e)?L(o[t+1]??{},e):e},A=(e,t)=>{const o=V(e,t);return R(e)||f(e)?o:e},j=e=>S(E(F)[e]??{}),D=e=>V(e,0),H=e=>A(e,0),O=(e,t)=>{const{12:o,13:s}=E(F);M((()=>(o?.(e,t),()=>s?.(e))),[o,e,t,s])},Q=e=>V(e,2),W=e=>A(e,2),z=e=>V(e,4),G=e=>A(e,4),J=e=>V(e,6),K=e=>A(e,6),N=e=>V(e,8),U=e=>A(e,8),X=e=>V(e,10),Y=e=>A(e,10),Z=e=>e.toLowerCase();Z(d);const $="Transaction";Z($);const{useCallback:_,useEffect:ee,useMemo:te,useLayoutEffect:oe,useRef:se,useState:re}=e,de=[],ne={},ue=[[],void 0,[]],Ie=(e,t,o=de)=>{const s=te((()=>t(e)),[e,...o]);return ee((()=>()=>s.destroy()),[s]),s},ie=(e,t,o,s=de,r,d="get",n="")=>{const[,u]=re(),I=_((()=>t?.[d+e]?.(...s)??o),[t,e,...s,o]),i=se();return te((()=>i.current=I()),[I]),ce(n+e,t,((...e)=>{i.current=R(r)?I():e[r],u([])}),[I,r],s),i.current},ce=(e,t,o,s=de,r=de,...n)=>oe((()=>{const s=t?.["add"+e+d]?.(...r,o,...n);return()=>t?.delListener(s)}),[t,e,...r,...s,...n]),le=(e,t,o,s=de,r=P,d=de,...n)=>{const u=H(e);return _((e=>v(u,(s=>v(o(e,s),(o=>r(s["set"+t](...x(n,(t=>q(t)?t(e,s):t)),o),o)))))),[u,t,...s,...d,...n])},ae=(e,t,o=P,s=de,...r)=>{const d=H(e);return _((()=>o(d?.["del"+t](...r))),[d,t,...s,...r])},pe=(e,t,o)=>{const s=Y(e);return _((()=>s?.[t](o)),[s,t,o])},ge=(e,t=de)=>te(e,t),be=()=>j(1),Ce=e=>ie(l,H(e),!1,[],1,I,u),me=e=>ie(l,H(e),ne),ke=e=>ie(a,H(e),de),ye=(e,t)=>ie(c,H(t),!1,[e],2,I,u),we=(e,t)=>ie(c,H(t),ne,[e]),he=(e,t)=>ie(c+k,H(t),de,[e]),Re=(e,t,o)=>ie(c+m,H(o),!1,[e,t],3,I,u),ve=(e,t)=>ie(g,H(t),0,[e]),fe=(e,t)=>ie(b,H(t),de,[e]),qe=(e,t,o,s=0,r,d)=>ie(C,H(d),de,[e,t,o,s,r],6),Pe=(e,t,o)=>ie(p,H(o),!1,[e,t],3,I,u),xe=(e,t,o)=>ie(p,H(o),ne,[e,t]),Se=(e,t,o)=>ie(k,H(o),de,[e,t]),Le=(e,t,o,s)=>ie(m,H(s),!1,[e,t,o],4,I,u),Be=(e,t,o,s)=>ie(m,H(s),void 0,[e,t,o],4),Te=e=>ie(w,H(e),!1,[],1,I,u),Ee=e=>ie(w,H(e),ne),Me=e=>ie(h,H(e),de),Fe=(e,t)=>ie(y,H(t),!1,[e],2,I,u),Ve=(e,t)=>ie(y,H(t),void 0,[e]),Ae=(e,t,o,s,r)=>le(o,l,e,t,s,r),je=(e,t,o,s,r,d)=>le(s,c,t,o,r,d,e),De=(e,t,o,s,r,d,n)=>le(r,p,o,s,d,n,e,t),He=(e,t,o=de,s,r=P,d=de,n=!0)=>{const u=H(s);return _((o=>v(u,(s=>v(t(o,s),(t=>r(s.addRow(q(e)?e(o,s):e,t,n),s,t)))))),[u,e,...o,...d,n])},Oe=(e,t,o,s,r,d,n)=>le(r,"PartialRow",o,s,d,n,e,t),Qe=(e,t,o,s,r,d,n,u)=>le(d,m,s,r,n,u,e,t,o),We=(e,t,o,s,r)=>le(o,w,e,t,s,r),ze=(e,t,o,s,r)=>le(o,"PartialValues",e,t,s,r),Ge=(e,t,o,s,r,d)=>le(s,y,t,o,r,d,e),Je=(e,t,o)=>ae(e,l,t,o),Ke=(e,t,o,s)=>ae(t,c,o,s,e),Ne=(e,t,o,s,r)=>ae(o,p,s,r,e,t),Ue=(e,t,o,s,r,d,n)=>ae(r,m,d,n,e,t,o,s),Xe=(e,t,o)=>ae(e,w,t,o),Ye=(e,t,o,s)=>ae(t,y,o,s,e),Ze=(e,t,o,s)=>ce(u+l,H(s),e,t,[],o),$e=(e,t,o,s)=>ce(l,H(s),e,t,de,o),_e=(e,t,o,s)=>ce(a,H(s),e,t,de,o),et=(e,t,o,s,r)=>ce(u+c,H(r),t,o,[e],s),tt=(e,t,o,s,r)=>ce(c,H(r),t,o,[e],s),ot=(e,t,o,s,r)=>ce(c+k,H(r),t,o,[e],s),st=(e,t,o,s,r,d)=>ce(u+c+m,H(d),o,s,[e,t],r),rt=(e,t,o,s,r)=>ce(g,H(r),t,o,[e],s),dt=(e,t,o,s,r)=>ce(b,H(r),t,o,[e],s),nt=(e,t,o,s,r,d,n,u,I)=>ce(C,H(I),d,n,[e,t,o,s,r],u),ut=(e,t,o,s,r,d)=>ce(u+p,H(d),o,s,[e,t],r),It=(e,t,o,s,r,d)=>ce(p,H(d),o,s,[e,t],r),it=(e,t,o,s,r,d)=>ce(k,H(d),o,s,[e,t],r),ct=(e,t,o,s,r,d,n)=>ce(u+m,H(n),s,r,[e,t,o],d),lt=(e,t,o,s,r,d,n)=>ce(m,H(n),s,r,[e,t,o],d),at=(e,t,o,s)=>ce(u+w,H(s),e,t,[],o),pt=(e,t,o,s)=>ce(w,H(s),e,t,de,o),gt=(e,t,o,s)=>ce(h,H(s),e,t,de,o),bt=(e,t,o,s,r)=>ce(u+y,H(r),t,o,[e],s),Ct=(e,t,o,s,r)=>ce(y,H(r),t,o,[e],s),mt=(e,t,o)=>ce("Start"+$,H(o),e,t),kt=(e,t,o)=>ce("WillFinish"+$,H(o),e,t),yt=(e,t,o)=>ce("DidFinish"+$,H(o),e,t),wt=(e,t,o)=>Ie(e,t,o),ht=()=>j(3),Rt=e=>ie("MetricIds",W(e),de),vt=(e,t)=>ie("Metric",W(t),void 0,[e]),ft=(e,t,o,s)=>ce("Metric",W(s),t,o,[e]),qt=(e,t,o)=>Ie(e,t,o),Pt=()=>j(5),xt=(e,t)=>ie("SliceIds",G(t),de,[e]),St=e=>ie("IndexIds",G(e),de),Lt=(e,t,o)=>ie("Slice"+b,G(o),de,[e,t]),Bt=(e,t,o,s)=>ce("SliceIds",G(s),t,o,[e]),Tt=(e,t,o,s,r)=>ce("Slice"+b,G(r),o,s,[e,t]),Et=(e,t,o)=>Ie(e,t,o),Mt=()=>j(7),Ft=e=>ie("RelationshipIds",K(e),de),Vt=(e,t,o)=>ie("RemoteRowId",K(o),void 0,[e,t]),At=(e,t,o)=>ie("Local"+b,K(o),de,[e,t]),jt=(e,t,o)=>ie("Linked"+b,K(o),de,[e,t]),Dt=(e,t,o,s,r)=>ce("RemoteRowId",K(r),o,s,[e,t]),Ht=(e,t,o,s,r)=>ce("Local"+b,K(r),o,s,[e,t]),Ot=(e,t,o,s,r)=>ce("Linked"+b,K(r),o,s,[e,t]),Qt=(e,t,o)=>Ie(e,t,o),Wt=()=>j(9),zt=e=>ie("QueryIds",U(e),de),Gt=(e,t)=>ie(n+c,U(t),ne,[e]),Jt=(e,t)=>ie(n+c+k,U(t),de,[e]),Kt=(e,t)=>ie(n+g,U(t),0,[e]),Nt=(e,t)=>ie(n+b,U(t),de,[e]),Ut=(e,t,o,s=0,r,d)=>ie(n+C,U(d),de,[e,t,o,s,r],6),Xt=(e,t,o)=>ie(n+p,U(o),ne,[e,t]),Yt=(e,t,o)=>ie(n+k,U(o),de,[e,t]),Zt=(e,t,o,s)=>ie(n+m,U(s),void 0,[e,t,o]),$t=(e,t,o,s)=>ce(n+c,U(s),t,o,[e]),_t=(e,t,o,s)=>ce(n+c+k,U(s),t,o,[e]),eo=(e,t,o,s)=>ce(n+g,U(s),t,o,[e]),to=(e,t,o,s)=>ce(n+b,U(s),t,o,[e]),oo=(e,t,o,s,r,d,u,I)=>ce(n+C,U(I),d,u,[e,t,o,s,r]),so=(e,t,o,s,r)=>ce(n+p,U(r),o,s,[e,t]),ro=(e,t,o,s,r)=>ce(n+k,U(r),o,s,[e,t]),no=(e,t,o,s,r,d)=>ce(n+m,U(d),s,r,[e,t,o]),uo=(e,t,o)=>Ie(e,t,o),Io=()=>j(11),io=e=>ie("CheckpointIds",Y(e),ue),co=(e,t)=>ie("Checkpoint",Y(t),void 0,[e]),lo=(e=P,t=de,o,s=P,r=de)=>{const d=Y(o);return _((t=>v(d,(o=>{const r=e(t);s(o.addCheckpoint(r),o,r)}))),[d,...t,...r])},ao=e=>pe(e,"goBackward"),po=e=>pe(e,"goForward"),go=(e,t=de,o,s=P,r=de)=>{const d=Y(o);return _((t=>v(d,(o=>v(e(t),(e=>s(o.goTo(e),e)))))),[d,...t,...r])},bo=e=>{const t=Y(e),[s,r]=io(t);return[(d=s,!(0==d.length)),ao(t),r,v(r,(e=>t?.getCheckpoint(e)))??o];var d},Co=e=>{const t=Y(e),[,,[s]]=io(t);return[!R(s),po(t),s,v(s,(e=>t?.getCheckpoint(e)))??o]},mo=(e,t,o)=>ce("CheckpointIds",Y(o),e,t),ko=(e,t,o,s)=>ce("Checkpoint",Y(s),t,o,[e]),yo=(e,t,o=de,s,r=de,d,n=de)=>{const[,u]=re(),I=te((()=>t(e)),[e,...o]);return ee((()=>((async()=>{s&&(await s(I),u([]))})(),()=>{I?.destroy(),d?.(I)})),[I,...r,...n]),I},{PureComponent:wo,Fragment:ho,createElement:Ro,useCallback:vo,useLayoutEffect:fo,useRef:qo,useState:Po}=e,xo=(e,...t)=>R(e)?{}:e(...t),So=(e,t)=>[e,e?.getStore(),e?.getLocalTableId(t),e?.getRemoteTableId(t)],{useCallback:Lo,useContext:Bo,useMemo:To,useState:Eo}=e,Mo=({tableId:e,store:t,rowComponent:o=Oo,getRowComponentProps:s,customCellIds:r,separator:d,debugIds:n},u)=>Do(x(u,(d=>Ro(o,{...xo(s,d),key:d,tableId:e,rowId:d,customCellIds:r,store:t,debugIds:n}))),d,n,e),Fo=({queryId:e,queries:t,resultRowComponent:o=_o,getResultRowComponentProps:s,separator:r,debugIds:d},n)=>Do(x(n,(r=>Ro(o,{...xo(s,r),key:r,queryId:e,rowId:r,queries:t,debugIds:d}))),r,d,e),Vo=({relationshipId:e,relationships:t,rowComponent:o=Oo,getRowComponentProps:s,separator:r,debugIds:d},n,u)=>{const[I,i,c]=So(K(t),e),l=n(e,u,I);return Do(x(l,(e=>Ro(o,{...xo(s,e),key:e,tableId:c,rowId:e,store:i,debugIds:d}))),r,d,u)},Ao=e=>({checkpoints:t,checkpointComponent:o=os,getCheckpointComponentProps:s,separator:r,debugIds:d})=>{const n=Y(t);return Do(x(e(io(n)),(e=>Ro(o,{...xo(s,e),key:e,checkpoints:n,checkpointId:e,debugIds:d}))),r)},jo=({store:e,storesById:t,metrics:o,metricsById:s,indexes:r,indexesById:d,relationships:n,relationshipsById:u,queries:I,queriesById:i,checkpoints:c,checkpointsById:l,children:a})=>{const p=Bo(F),[g,b]=Eo({}),C=Lo(((e,t)=>b((o=>L(o,e)==t?o:{...o,[e]:t}))),[]),m=Lo((e=>b((t=>({...B(t,e)})))),[]);return Ro(F.Provider,{value:To((()=>[e??p[0],{...p[1],...t,...g},o??p[2],{...p[3],...s},r??p[4],{...p[5],...d},n??p[6],{...p[7],...u},I??p[8],{...p[9],...i},c??p[10],{...p[11],...l},C,m]),[e,t,g,o,s,r,d,n,u,I,i,c,l,p,C,m])},a)},Do=(e,t,o,s)=>{const r=R(t)||!Array.isArray(e)?e:x(e,((e,o)=>o>0?[t,e]:e));return o?[s,":{",r,"}"]:r},Ho=({tableId:e,rowId:t,cellId:s,store:r,debugIds:d})=>Do(o+(Be(e,t,s,r)??o),void 0,d,s),Oo=({tableId:e,rowId:t,store:o,cellComponent:s=Ho,getCellComponentProps:r,customCellIds:d,separator:n,debugIds:u})=>Do(x(((e,t,o,s)=>{const r=Se(t,o,s);return e??r})(d,e,t,o),(d=>Ro(s,{...xo(r,d),key:d,tableId:e,rowId:t,cellId:d,store:o,debugIds:u}))),n,u,t),Qo=e=>Mo(e,fe(e.tableId,e.store)),Wo=({cellId:e,descending:t,offset:o,limit:s,...r})=>Mo(r,qe(r.tableId,e,t,o,s,r.store)),zo=({store:e,tableComponent:t=Qo,getTableComponentProps:o,separator:s,debugIds:r})=>Do(x(ke(e),(s=>Ro(t,{...xo(o,s),key:s,tableId:s,store:e,debugIds:r}))),s),Go=({valueId:e,store:t,debugIds:s})=>Do(o+(Ve(e,t)??o),void 0,s,e),Jo=({store:e,valueComponent:t=Go,getValueComponentProps:o,separator:s,debugIds:r})=>Do(x(Me(e),(s=>Ro(t,{...xo(o,s),key:s,valueId:s,store:e,debugIds:r}))),s),Ko=({metricId:e,metrics:t,debugIds:s})=>Do(vt(e,t)??o,void 0,s,e),No=({indexId:e,sliceId:t,indexes:o,rowComponent:s=Oo,getRowComponentProps:r,separator:d,debugIds:n})=>{const[u,I,i]=((e,t)=>[e,e?.getStore(),e?.getTableId(t)])(G(o),e),c=Lt(e,t,u);return Do(x(c,(e=>Ro(s,{...xo(r,e),key:e,tableId:i,rowId:e,store:I,debugIds:n}))),d,n,t)},Uo=({indexId:e,indexes:t,sliceComponent:o=No,getSliceComponentProps:s,separator:r,debugIds:d})=>Do(x(xt(e,t),(r=>Ro(o,{...xo(s,r),key:r,indexId:e,sliceId:r,indexes:t,debugIds:d}))),r,d,e),Xo=({relationshipId:e,localRowId:t,relationships:o,rowComponent:s=Oo,getRowComponentProps:r,debugIds:d})=>{const[n,u,,I]=So(K(o),e),i=Vt(e,t,n);return Do(R(I)||R(i)?null:Ro(s,{...xo(r,i),key:i,tableId:I,rowId:i,store:u,debugIds:d}),void 0,d,t)},Yo=e=>Vo(e,At,e.remoteRowId),Zo=e=>Vo(e,jt,e.firstRowId),$o=({queryId:e,rowId:t,cellId:s,queries:r,debugIds:d})=>Do(o+(Zt(e,t,s,r)??o),void 0,d,s),_o=({queryId:e,rowId:t,queries:o,resultCellComponent:s=$o,getResultCellComponentProps:r,separator:d,debugIds:n})=>Do(x(Yt(e,t,o),(d=>Ro(s,{...xo(r,d),key:d,queryId:e,rowId:t,cellId:d,queries:o,debugIds:n}))),d,n,t),es=e=>Fo(e,Nt(e.queryId,e.queries)),ts=({cellId:e,descending:t,offset:o,limit:s,...r})=>Fo(r,Ut(r.queryId,e,t,o,s,r.queries)),os=({checkpoints:e,checkpointId:t,debugIds:s})=>Do(co(t,e)??o,void 0,s,t),ss=Ao((e=>e[0])),rs=Ao((e=>R(e[1])?[]:[e[1]])),ds=Ao((e=>e[2]));export{ss as BackwardCheckpointsView,Ho as CellView,os as CheckpointView,rs as CurrentCheckpointView,ds as ForwardCheckpointsView,Uo as IndexView,Zo as LinkedRowsView,Yo as LocalRowsView,Ko as MetricView,jo as Provider,Xo as RemoteRowView,$o as ResultCellView,_o as ResultRowView,ts as ResultSortedTableView,es as ResultTableView,Oo as RowView,No as SliceView,Wo as SortedTableView,Qo as TableView,zo as TablesView,Go as ValueView,Jo as ValuesView,He as useAddRowCallback,Be as useCell,Se as useCellIds,it as useCellIdsListener,lt as useCellListener,co as useCheckpoint,io as useCheckpointIds,mo as useCheckpointIdsListener,ko as useCheckpointListener,X as useCheckpoints,Io as useCheckpointsIds,Y as useCheckpointsOrCheckpointsById,uo as useCreateCheckpoints,qt as useCreateIndexes,wt as useCreateMetrics,yo as useCreatePersister,Qt as useCreateQueries,Et as useCreateRelationships,ge as useCreateStore,Ue as useDelCellCallback,Ne as useDelRowCallback,Ke as useDelTableCallback,Je as useDelTablesCallback,Ye as useDelValueCallback,Xe as useDelValuesCallback,yt as useDidFinishTransactionListener,ao as useGoBackwardCallback,po as useGoForwardCallback,go as useGoToCallback,Le as useHasCell,ct as useHasCellListener,Pe as useHasRow,ut as useHasRowListener,ye as useHasTable,Re as useHasTableCell,st as useHasTableCellListener,et as useHasTableListener,Ce as useHasTables,Ze as useHasTablesListener,Fe as useHasValue,bt as useHasValueListener,Te as useHasValues,at as useHasValuesListener,St as useIndexIds,z as useIndexes,Pt as useIndexesIds,G as useIndexesOrIndexesById,jt as useLinkedRowIds,Ot as useLinkedRowIdsListener,At as useLocalRowIds,Ht as useLocalRowIdsListener,vt as useMetric,Rt as useMetricIds,ft as useMetricListener,Q as useMetrics,ht as useMetricsIds,W as useMetricsOrMetricsById,O as useProvideStore,N as useQueries,Wt as useQueriesIds,U as useQueriesOrQueriesById,zt as useQueryIds,Co as useRedoInformation,Ft as useRelationshipIds,J as useRelationships,Mt as useRelationshipsIds,K as useRelationshipsOrRelationshipsById,Vt as useRemoteRowId,Dt as useRemoteRowIdListener,Zt as useResultCell,Yt as useResultCellIds,ro as useResultCellIdsListener,no as useResultCellListener,Xt as useResultRow,Kt as useResultRowCount,eo as useResultRowCountListener,Nt as useResultRowIds,to as useResultRowIdsListener,so as useResultRowListener,Ut as useResultSortedRowIds,oo as useResultSortedRowIdsListener,Gt as useResultTable,Jt as useResultTableCellIds,_t as useResultTableCellIdsListener,$t as useResultTableListener,xe as useRow,ve as useRowCount,rt as useRowCountListener,fe as useRowIds,dt as useRowIdsListener,It as useRowListener,Qe as useSetCellCallback,lo as useSetCheckpointCallback,Oe as useSetPartialRowCallback,ze as useSetPartialValuesCallback,De as useSetRowCallback,je as useSetTableCallback,Ae as useSetTablesCallback,Ge as useSetValueCallback,We as useSetValuesCallback,xt as useSliceIds,Bt as useSliceIdsListener,Lt as useSliceRowIds,Tt as useSliceRowIdsListener,qe as useSortedRowIds,nt as useSortedRowIdsListener,mt as useStartTransactionListener,D as useStore,be as useStoreIds,H as useStoreOrStoreById,we as useTable,he as useTableCellIds,ot as useTableCellIdsListener,ke as useTableIds,_e as useTableIdsListener,tt as useTableListener,me as useTables,$e as useTablesListener,bo as useUndoInformation,Ve as useValue,Me as useValueIds,gt as useValueIdsListener,Ct as useValueListener,Ee as useValues,pt as useValuesListener,kt as useWillFinishTransactionListener};
|
|
1
|
+
import e from"react";const t=e=>typeof e,o="",s=t(o),r=t(t),d="Listener",n="Result",u="Has",c="Ids",I="Table",l=I+"s",i=I+c,a="Row",p=a+"Count",g=a+c,b="Sorted"+a+c,C="Cell",m=C+c,y="Value",k=y+"s",w=y+c,h=e=>null==e,R=(e,t,o)=>h(e)?o?.():t(e),f=e=>t(e)==s,q=e=>t(e)==r,P=e=>e.length,v=()=>{},x=(e,t)=>e.every(t),S=(e,t)=>P(e)===P(t)&&x(e,((e,o)=>t[o]===e)),L=(e,t)=>e.map(t),B=Object,T=e=>B.getPrototypeOf(e),E=B.entries,M=B.keys,F=e=>!h(e)&&R(T(e),(e=>e==B.prototype||h(T(e))),(()=>!0)),V=(e,t)=>R(e,(e=>e[t])),A=(e,t)=>(delete e[t],e),O=(e,t)=>{const o=E(e);return P(o)===P(M(t))&&x(o,(([e,o])=>F(o)?!!F(t[e])&&O(t[e],o):t[e]===o))},{createContext:j,useContext:D,useEffect:H}=e,Q=j([]),W=(e,t)=>{const o=D(Q);return h(e)?o[t]:f(e)?V(o[t+1]??{},e):e},z=(e,t)=>{const o=W(e,t);return h(e)||f(e)?o:e},G=e=>M(D(Q)[e]??{}),J=e=>W(e,0),K=e=>z(e,0),N=(e,t)=>{const{12:o,13:s}=D(Q);H((()=>(o?.(e,t),()=>s?.(e))),[o,e,t,s])},U=e=>W(e,2),X=e=>z(e,2),Y=e=>W(e,4),Z=e=>z(e,4),$=e=>W(e,6),_=e=>z(e,6),ee=e=>W(e,8),te=e=>z(e,8),oe=e=>W(e,10),se=e=>z(e,10),re=e=>e.toLowerCase();re(d);const de="Transaction";re(de);const{useCallback:ne,useEffect:ue,useMemo:ce,useLayoutEffect:Ie,useRef:le,useState:ie,useSyncExternalStore:ae}=e,pe=[],ge=[{},[],[pe,void 0,pe],void 0,!1,0],be=(e,t)=>e===t,Ce=[O,S,([e,t,o],[s,r,d])=>t===r&&S(e,s)&&S(o,d)],me=(e,t,o=pe)=>{const[,s]=ie(),[r,d]=ie();return ue((()=>{const o=t(e);return d(o),s([]),o.destroy}),[e,...o]),r},ye=(e,t,...o)=>{const s=e?.["add"+t+d]?.(...o);return()=>e?.delListener(s)},ke=(e,t,s,r=pe)=>{const d=le(ge[s]),n=ne((()=>{const o=t?.[(4==s?"has":"get")+e]?.(...r)??ge[s];return(Ce[s]??be)(o,d.current)?d.current:d.current=o}),[t,s,e,...r]),c=ne((d=>ye(t,(4==s?u:o)+e,...r,d)),[t,s,e,...r]);return ae(c,n)},we=(e,t,o,s=pe,r=pe,...d)=>Ie((()=>ye(t,e,...r,o,...d)),[t,e,...r,...s,...d]),he=(e,t,o,s=pe,r=v,d=pe,...n)=>{const u=K(e);return ne((e=>R(u,(s=>R(o(e,s),(o=>r(s["set"+t](...L(n,(t=>q(t)?t(e,s):t)),o),o)))))),[u,t,...s,...d,...n])},Re=(e,t,o=v,s=pe,...r)=>{const d=K(e);return ne((()=>o(d?.["del"+t](...r))),[d,t,...s,...r])},fe=(e,t,o)=>{const s=se(e);return ne((()=>s?.[t](o)),[s,t,o])},qe=(e,t=pe)=>ce(e,t),Pe=()=>G(1),ve=e=>ke(l,K(e),4,[]),xe=e=>ke(l,K(e),0),Se=e=>ke(i,K(e),1),Le=(e,t)=>ke(I,K(t),4,[e]),Be=(e,t)=>ke(I,K(t),0,[e]),Te=(e,t)=>ke(I+m,K(t),1,[e]),Ee=(e,t,o)=>ke(I+C,K(o),4,[e,t]),Me=(e,t)=>ke(p,K(t),5,[e]),Fe=(e,t)=>ke(g,K(t),1,[e]),Ve=(e,t,o,s=0,r,d)=>ke(b,K(d),1,[e,t,o,s,r]),Ae=(e,t,o)=>ke(a,K(o),4,[e,t]),Oe=(e,t,o)=>ke(a,K(o),0,[e,t]),je=(e,t,o)=>ke(m,K(o),1,[e,t]),De=(e,t,o,s)=>ke(C,K(s),4,[e,t,o]),He=(e,t,o,s)=>ke(C,K(s),3,[e,t,o]),Qe=e=>ke(k,K(e),4,[]),We=e=>ke(k,K(e),0),ze=e=>ke(w,K(e),1),Ge=(e,t)=>ke(y,K(t),4,[e]),Je=(e,t)=>ke(y,K(t),3,[e]),Ke=(e,t,o,s,r)=>he(o,l,e,t,s,r),Ne=(e,t,o,s,r,d)=>he(s,I,t,o,r,d,e),Ue=(e,t,o,s,r,d,n)=>he(r,a,o,s,d,n,e,t),Xe=(e,t,o=pe,s,r=v,d=pe,n=!0)=>{const u=K(s);return ne((o=>R(u,(s=>R(t(o,s),(t=>r(s.addRow(q(e)?e(o,s):e,t,n),s,t)))))),[u,e,...o,...d,n])},Ye=(e,t,o,s,r,d,n)=>he(r,"PartialRow",o,s,d,n,e,t),Ze=(e,t,o,s,r,d,n,u)=>he(d,C,s,r,n,u,e,t,o),$e=(e,t,o,s,r)=>he(o,k,e,t,s,r),_e=(e,t,o,s,r)=>he(o,"PartialValues",e,t,s,r),et=(e,t,o,s,r,d)=>he(s,y,t,o,r,d,e),tt=(e,t,o)=>Re(e,l,t,o),ot=(e,t,o,s)=>Re(t,I,o,s,e),st=(e,t,o,s,r)=>Re(o,a,s,r,e,t),rt=(e,t,o,s,r,d,n)=>Re(r,C,d,n,e,t,o,s),dt=(e,t,o)=>Re(e,k,t,o),nt=(e,t,o,s)=>Re(t,y,o,s,e),ut=(e,t,o,s)=>we(u+l,K(s),e,t,[],o),ct=(e,t,o,s)=>we(l,K(s),e,t,pe,o),It=(e,t,o,s)=>we(i,K(s),e,t,pe,o),lt=(e,t,o,s,r)=>we(u+I,K(r),t,o,[e],s),it=(e,t,o,s,r)=>we(I,K(r),t,o,[e],s),at=(e,t,o,s,r)=>we(I+m,K(r),t,o,[e],s),pt=(e,t,o,s,r,d)=>we(u+I+C,K(d),o,s,[e,t],r),gt=(e,t,o,s,r)=>we(p,K(r),t,o,[e],s),bt=(e,t,o,s,r)=>we(g,K(r),t,o,[e],s),Ct=(e,t,o,s,r,d,n,u,c)=>we(b,K(c),d,n,[e,t,o,s,r],u),mt=(e,t,o,s,r,d)=>we(u+a,K(d),o,s,[e,t],r),yt=(e,t,o,s,r,d)=>we(a,K(d),o,s,[e,t],r),kt=(e,t,o,s,r,d)=>we(m,K(d),o,s,[e,t],r),wt=(e,t,o,s,r,d,n)=>we(u+C,K(n),s,r,[e,t,o],d),ht=(e,t,o,s,r,d,n)=>we(C,K(n),s,r,[e,t,o],d),Rt=(e,t,o,s)=>we(u+k,K(s),e,t,[],o),ft=(e,t,o,s)=>we(k,K(s),e,t,pe,o),qt=(e,t,o,s)=>we(w,K(s),e,t,pe,o),Pt=(e,t,o,s,r)=>we(u+y,K(r),t,o,[e],s),vt=(e,t,o,s,r)=>we(y,K(r),t,o,[e],s),xt=(e,t,o)=>we("Start"+de,K(o),e,t),St=(e,t,o)=>we("WillFinish"+de,K(o),e,t),Lt=(e,t,o)=>we("DidFinish"+de,K(o),e,t),Bt=(e,t,o)=>me(e,t,o),Tt=()=>G(3),Et=e=>ke("MetricIds",X(e),1),Mt=(e,t)=>ke("Metric",X(t),3,[e]),Ft=(e,t,o,s)=>we("Metric",X(s),t,o,[e]),Vt=(e,t,o)=>me(e,t,o),At=()=>G(5),Ot=(e,t)=>ke("SliceIds",Z(t),1,[e]),jt=e=>ke("IndexIds",Z(e),1),Dt=(e,t,o)=>ke("Slice"+g,Z(o),1,[e,t]),Ht=(e,t,o,s)=>we("SliceIds",Z(s),t,o,[e]),Qt=(e,t,o,s,r)=>we("Slice"+g,Z(r),o,s,[e,t]),Wt=(e,t,o)=>me(e,t,o),zt=()=>G(7),Gt=e=>ke("RelationshipIds",_(e),1),Jt=(e,t,o)=>ke("RemoteRowId",_(o),3,[e,t]),Kt=(e,t,o)=>ke("Local"+g,_(o),1,[e,t]),Nt=(e,t,o)=>ke("Linked"+g,_(o),1,[e,t]),Ut=(e,t,o,s,r)=>we("RemoteRowId",_(r),o,s,[e,t]),Xt=(e,t,o,s,r)=>we("Local"+g,_(r),o,s,[e,t]),Yt=(e,t,o,s,r)=>we("Linked"+g,_(r),o,s,[e,t]),Zt=(e,t,o)=>me(e,t,o),$t=()=>G(9),_t=e=>ke("QueryIds",te(e),1),eo=(e,t)=>ke(n+I,te(t),0,[e]),to=(e,t)=>ke(n+I+m,te(t),1,[e]),oo=(e,t)=>ke(n+p,te(t),5,[e]),so=(e,t)=>ke(n+g,te(t),1,[e]),ro=(e,t,o,s=0,r,d)=>ke(n+b,te(d),1,[e,t,o,s,r]),no=(e,t,o)=>ke(n+a,te(o),0,[e,t]),uo=(e,t,o)=>ke(n+m,te(o),1,[e,t]),co=(e,t,o,s)=>ke(n+C,te(s),3,[e,t,o]),Io=(e,t,o,s)=>we(n+I,te(s),t,o,[e]),lo=(e,t,o,s)=>we(n+I+m,te(s),t,o,[e]),io=(e,t,o,s)=>we(n+p,te(s),t,o,[e]),ao=(e,t,o,s)=>we(n+g,te(s),t,o,[e]),po=(e,t,o,s,r,d,u,c)=>we(n+b,te(c),d,u,[e,t,o,s,r]),go=(e,t,o,s,r)=>we(n+a,te(r),o,s,[e,t]),bo=(e,t,o,s,r)=>we(n+m,te(r),o,s,[e,t]),Co=(e,t,o,s,r,d)=>we(n+C,te(d),s,r,[e,t,o]),mo=(e,t,o)=>me(e,t,o),yo=()=>G(11),ko=e=>ke("CheckpointIds",se(e),2),wo=(e,t)=>ke("Checkpoint",se(t),3,[e]),ho=(e=v,t=pe,o,s=v,r=pe)=>{const d=se(o);return ne((t=>R(d,(o=>{const r=e(t);s(o.addCheckpoint(r),o,r)}))),[d,...t,...r])},Ro=e=>fe(e,"goBackward"),fo=e=>fe(e,"goForward"),qo=(e,t=pe,o,s=v,r=pe)=>{const d=se(o);return ne((t=>R(d,(o=>R(e(t),(e=>s(o.goTo(e),e)))))),[d,...t,...r])},Po=e=>{const t=se(e),[s,r]=ko(t);return[(d=s,!(0==P(d))),Ro(t),r,R(r,(e=>t?.getCheckpoint(e)))??o];var d},vo=e=>{const t=se(e),[,,[s]]=ko(t);return[!h(s),fo(t),s,R(s,(e=>t?.getCheckpoint(e)))??o]},xo=(e,t,o)=>we("CheckpointIds",se(o),e,t),So=(e,t,o,s)=>we("Checkpoint",se(s),t,o,[e]),Lo=(e,t,o=pe,s,r=pe,d,n=pe)=>{const[,u]=ie(),[c,I]=ie();return ue((()=>{const o=t(e);if(I(o),o)return s&&(async()=>{await s(o),u([])})(),()=>{o.destroy(),d?.(o)}}),[e,...o,...r,...n]),c},{PureComponent:Bo,Fragment:To,createElement:Eo,useCallback:Mo,useLayoutEffect:Fo,useRef:Vo,useState:Ao}=e,Oo=(e,...t)=>h(e)?{}:e(...t),jo=(e,t)=>[e,e?.getStore(),e?.getLocalTableId(t),e?.getRemoteTableId(t)],{useCallback:Do,useContext:Ho,useMemo:Qo,useState:Wo}=e,zo=({tableId:e,store:t,rowComponent:o=Yo,getRowComponentProps:s,customCellIds:r,separator:d,debugIds:n},u)=>Uo(L(u,(d=>Eo(o,{...Oo(s,d),key:d,tableId:e,rowId:d,customCellIds:r,store:t,debugIds:n}))),d,n,e),Go=({queryId:e,queries:t,resultRowComponent:o=Is,getResultRowComponentProps:s,separator:r,debugIds:d},n)=>Uo(L(n,(r=>Eo(o,{...Oo(s,r),key:r,queryId:e,rowId:r,queries:t,debugIds:d}))),r,d,e),Jo=({relationshipId:e,relationships:t,rowComponent:o=Yo,getRowComponentProps:s,separator:r,debugIds:d},n,u)=>{const[c,I,l]=jo(_(t),e),i=n(e,u,c);return Uo(L(i,(e=>Eo(o,{...Oo(s,e),key:e,tableId:l,rowId:e,store:I,debugIds:d}))),r,d,u)},Ko=e=>({checkpoints:t,checkpointComponent:o=as,getCheckpointComponentProps:s,separator:r,debugIds:d})=>{const n=se(t);return Uo(L(e(ko(n)),(e=>Eo(o,{...Oo(s,e),key:e,checkpoints:n,checkpointId:e,debugIds:d}))),r)},No=({store:e,storesById:t,metrics:o,metricsById:s,indexes:r,indexesById:d,relationships:n,relationshipsById:u,queries:c,queriesById:I,checkpoints:l,checkpointsById:i,children:a})=>{const p=Ho(Q),[g,b]=Wo({}),C=Do(((e,t)=>b((o=>V(o,e)==t?o:{...o,[e]:t}))),[]),m=Do((e=>b((t=>({...A(t,e)})))),[]);return Eo(Q.Provider,{value:Qo((()=>[e??p[0],{...p[1],...t,...g},o??p[2],{...p[3],...s},r??p[4],{...p[5],...d},n??p[6],{...p[7],...u},c??p[8],{...p[9],...I},l??p[10],{...p[11],...i},C,m]),[e,t,g,o,s,r,d,n,u,c,I,l,i,p,C,m])},a)},Uo=(e,t,o,s)=>{const r=h(t)||!Array.isArray(e)?e:L(e,((e,o)=>o>0?[t,e]:e));return o?[s,":{",r,"}"]:r},Xo=({tableId:e,rowId:t,cellId:s,store:r,debugIds:d})=>Uo(o+(He(e,t,s,r)??o),void 0,d,s),Yo=({tableId:e,rowId:t,store:o,cellComponent:s=Xo,getCellComponentProps:r,customCellIds:d,separator:n,debugIds:u})=>Uo(L(((e,t,o,s)=>{const r=je(t,o,s);return e??r})(d,e,t,o),(d=>Eo(s,{...Oo(r,d),key:d,tableId:e,rowId:t,cellId:d,store:o,debugIds:u}))),n,u,t),Zo=e=>zo(e,Fe(e.tableId,e.store)),$o=({cellId:e,descending:t,offset:o,limit:s,...r})=>zo(r,Ve(r.tableId,e,t,o,s,r.store)),_o=({store:e,tableComponent:t=Zo,getTableComponentProps:o,separator:s,debugIds:r})=>Uo(L(Se(e),(s=>Eo(t,{...Oo(o,s),key:s,tableId:s,store:e,debugIds:r}))),s),es=({valueId:e,store:t,debugIds:s})=>Uo(o+(Je(e,t)??o),void 0,s,e),ts=({store:e,valueComponent:t=es,getValueComponentProps:o,separator:s,debugIds:r})=>Uo(L(ze(e),(s=>Eo(t,{...Oo(o,s),key:s,valueId:s,store:e,debugIds:r}))),s),os=({metricId:e,metrics:t,debugIds:s})=>Uo(Mt(e,t)??o,void 0,s,e),ss=({indexId:e,sliceId:t,indexes:o,rowComponent:s=Yo,getRowComponentProps:r,separator:d,debugIds:n})=>{const[u,c,I]=((e,t)=>[e,e?.getStore(),e?.getTableId(t)])(Z(o),e),l=Dt(e,t,u);return Uo(L(l,(e=>Eo(s,{...Oo(r,e),key:e,tableId:I,rowId:e,store:c,debugIds:n}))),d,n,t)},rs=({indexId:e,indexes:t,sliceComponent:o=ss,getSliceComponentProps:s,separator:r,debugIds:d})=>Uo(L(Ot(e,t),(r=>Eo(o,{...Oo(s,r),key:r,indexId:e,sliceId:r,indexes:t,debugIds:d}))),r,d,e),ds=({relationshipId:e,localRowId:t,relationships:o,rowComponent:s=Yo,getRowComponentProps:r,debugIds:d})=>{const[n,u,,c]=jo(_(o),e),I=Jt(e,t,n);return Uo(h(c)||h(I)?null:Eo(s,{...Oo(r,I),key:I,tableId:c,rowId:I,store:u,debugIds:d}),void 0,d,t)},ns=e=>Jo(e,Kt,e.remoteRowId),us=e=>Jo(e,Nt,e.firstRowId),cs=({queryId:e,rowId:t,cellId:s,queries:r,debugIds:d})=>Uo(o+(co(e,t,s,r)??o),void 0,d,s),Is=({queryId:e,rowId:t,queries:o,resultCellComponent:s=cs,getResultCellComponentProps:r,separator:d,debugIds:n})=>Uo(L(uo(e,t,o),(d=>Eo(s,{...Oo(r,d),key:d,queryId:e,rowId:t,cellId:d,queries:o,debugIds:n}))),d,n,t),ls=e=>Go(e,so(e.queryId,e.queries)),is=({cellId:e,descending:t,offset:o,limit:s,...r})=>Go(r,ro(r.queryId,e,t,o,s,r.queries)),as=({checkpoints:e,checkpointId:t,debugIds:s})=>Uo(wo(t,e)??o,void 0,s,t),ps=Ko((e=>e[0])),gs=Ko((e=>h(e[1])?[]:[e[1]])),bs=Ko((e=>e[2]));export{ps as BackwardCheckpointsView,Xo as CellView,as as CheckpointView,gs as CurrentCheckpointView,bs as ForwardCheckpointsView,rs as IndexView,us as LinkedRowsView,ns as LocalRowsView,os as MetricView,No as Provider,ds as RemoteRowView,cs as ResultCellView,Is as ResultRowView,is as ResultSortedTableView,ls as ResultTableView,Yo as RowView,ss as SliceView,$o as SortedTableView,Zo as TableView,_o as TablesView,es as ValueView,ts as ValuesView,Xe as useAddRowCallback,He as useCell,je as useCellIds,kt as useCellIdsListener,ht as useCellListener,wo as useCheckpoint,ko as useCheckpointIds,xo as useCheckpointIdsListener,So as useCheckpointListener,oe as useCheckpoints,yo as useCheckpointsIds,se as useCheckpointsOrCheckpointsById,mo as useCreateCheckpoints,Vt as useCreateIndexes,Bt as useCreateMetrics,Lo as useCreatePersister,Zt as useCreateQueries,Wt as useCreateRelationships,qe as useCreateStore,rt as useDelCellCallback,st as useDelRowCallback,ot as useDelTableCallback,tt as useDelTablesCallback,nt as useDelValueCallback,dt as useDelValuesCallback,Lt as useDidFinishTransactionListener,Ro as useGoBackwardCallback,fo as useGoForwardCallback,qo as useGoToCallback,De as useHasCell,wt as useHasCellListener,Ae as useHasRow,mt as useHasRowListener,Le as useHasTable,Ee as useHasTableCell,pt as useHasTableCellListener,lt as useHasTableListener,ve as useHasTables,ut as useHasTablesListener,Ge as useHasValue,Pt as useHasValueListener,Qe as useHasValues,Rt as useHasValuesListener,jt as useIndexIds,Y as useIndexes,At as useIndexesIds,Z as useIndexesOrIndexesById,Nt as useLinkedRowIds,Yt as useLinkedRowIdsListener,Kt as useLocalRowIds,Xt as useLocalRowIdsListener,Mt as useMetric,Et as useMetricIds,Ft as useMetricListener,U as useMetrics,Tt as useMetricsIds,X as useMetricsOrMetricsById,N as useProvideStore,ee as useQueries,$t as useQueriesIds,te as useQueriesOrQueriesById,_t as useQueryIds,vo as useRedoInformation,Gt as useRelationshipIds,$ as useRelationships,zt as useRelationshipsIds,_ as useRelationshipsOrRelationshipsById,Jt as useRemoteRowId,Ut as useRemoteRowIdListener,co as useResultCell,uo as useResultCellIds,bo as useResultCellIdsListener,Co as useResultCellListener,no as useResultRow,oo as useResultRowCount,io as useResultRowCountListener,so as useResultRowIds,ao as useResultRowIdsListener,go as useResultRowListener,ro as useResultSortedRowIds,po as useResultSortedRowIdsListener,eo as useResultTable,to as useResultTableCellIds,lo as useResultTableCellIdsListener,Io as useResultTableListener,Oe as useRow,Me as useRowCount,gt as useRowCountListener,Fe as useRowIds,bt as useRowIdsListener,yt as useRowListener,Ze as useSetCellCallback,ho as useSetCheckpointCallback,Ye as useSetPartialRowCallback,_e as useSetPartialValuesCallback,Ue as useSetRowCallback,Ne as useSetTableCallback,Ke as useSetTablesCallback,et as useSetValueCallback,$e as useSetValuesCallback,Ot as useSliceIds,Ht as useSliceIdsListener,Dt as useSliceRowIds,Qt as useSliceRowIdsListener,Ve as useSortedRowIds,Ct as useSortedRowIdsListener,xt as useStartTransactionListener,J as useStore,Pe as useStoreIds,K as useStoreOrStoreById,Be as useTable,Te as useTableCellIds,at as useTableCellIdsListener,Se as useTableIds,It as useTableIdsListener,it as useTableListener,xe as useTables,ct as useTablesListener,Po as useUndoInformation,Je as useValue,ze as useValueIds,qt as useValueIdsListener,vt as useValueListener,We as useValues,ft as useValuesListener,St as useWillFinishTransactionListener};
|
package/lib/ui-react.js.gz
CHANGED
|
Binary file
|
package/lib/umd/checkpoints.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var e,t;e=this,t=function(e){"use strict";const t=e=>null==e,n=(e,n,r)=>t(e)?r?.():n(e),r=e=>e.length,
|
|
1
|
+
var e,t;e=this,t=function(e){"use strict";const t=e=>null==e,n=(e,n,r)=>t(e)?r?.():n(e),r=e=>e.length,s=(e,t)=>e.includes(t),o=(e,t)=>e.forEach(t),i=e=>0==r(e),l=(e,...t)=>e.push(...t),c=e=>e.pop(),d=e=>e.shift(),a=Object.freeze,u=(e,t)=>e?.has(t)??!1,h=e=>t(e)||0==(e=>e?.size??0)(e),p=(e,t)=>e?.forEach(t),f=(e,t)=>e?.delete(t),g=e=>new Map(e),C=(e,t)=>e?.get(t),k=(e,n,r)=>t(r)?(f(e,n),e):e?.set(n,r),L=(e,t,n)=>(u(e,t)||k(e,t,n()),C(e,t)),v=(e,t,s,o,i=0)=>n((s?L:C)(e,t[i],i>r(t)-2?s:g),(n=>{if(i>r(t)-2)return o?.(n)&&k(e,t[i]),n;const l=v(n,t,s,o,i+1);return h(n)&&k(e,t[i]),l})),y=e=>new Set(Array.isArray(e)||t(e)?e:[e]),w=/^\d+$/,b=((e,b)=>{const S=new WeakMap;return e=>{S.has(e)||S.set(e,(e=>{let b,S,T,x=100,z=g(),E=g(),V=1;const j=g(),m=g(),[A,B,F]=(e=>{let s;const[i,c]=(()=>{const e=[];let t=0;return[n=>(n?d(e):null)??""+t++,t=>{w.test(t)&&r(e)<1e3&&l(e,t)}]})(),a=g();return[(e,t,n,r=[],o=(()=>[]))=>{s??=Z;const l=i(1);var c,d;return k(a,l,[e,t,n,r,o]),c=v(t,n??[""],y),d=l,c?.add(d),l},(e,t,...n)=>o(((e,t=[""])=>{const n=[],s=(e,i)=>i==r(t)?l(n,e):null===t[i]?p(e,(e=>s(e,i+1))):o([t[i],null],(t=>s(C(e,t),i+1)));return s(e,0),n})(e,t),(e=>p(e,(e=>C(a,e)[0](s,...t??[],...n))))),e=>n(C(a,e),(([,t,n])=>(v(t,n??[""],void 0,(t=>(f(t,e),h(t)?1:0))),k(a,e),c(e),n))),e=>n(C(a,e),(([e,,n=[],i,l])=>{const c=(...d)=>{const a=r(d);a==r(n)?e(s,...d,...l(d)):t(n[a])?o(i[a]?.(...d)??[],(e=>c(...d,e))):c(...d,n[a])};c()}))]})(),I=g(),M=g(),_=[],O=[],W=(n,r)=>{V=0,e.transaction((()=>{const[s,o]=C(I,r);p(s,((r,s)=>p(r,((r,o)=>p(r,((r,i)=>((e,n,r,s,o)=>t(o)?e.delCell(n,r,s,!0):e.setCell(n,r,s,o))(e,s,o,i,r[n]))))))),p(o,((r,s)=>((e,n,r)=>t(r)?e.delValue(n):e.setValue(n,r))(e,s,r[n])))})),V=1},$=e=>{k(I,e),k(M,e),B(m,[e])},q=(e,t)=>o(((e,t)=>e.splice(0,t))(e,t??r(e)),$),D=()=>q(_,r(_)-x),G=()=>n(b,(()=>{l(_,b),D(),q(O),b=void 0,T=1})),H=()=>{b=c(_),T=1};let J,K;const N=(e="")=>(t(b)&&(b=""+S++,k(I,b,[z,E]),X(b,e),z=g(),E=g(),T=1),b),P=()=>{i(_)||(((e,...t)=>{e.unshift(...t)})(O,N()),W(0,b),b=c(_),T=1)},Q=()=>{i(O)||(l(_,b),b=d(O),W(1,b),T=1)},R=()=>{T&&(B(j),T=0)},U=e=>{const t=N(e);return R(),t},X=(e,t)=>(Y(e)&&C(M,e)!==t&&(k(M,e,t),B(m,[e])),Z),Y=e=>u(I,e),Z={setSize:e=>(x=e,D(),Z),addCheckpoint:U,setCheckpoint:X,getStore:()=>e,getCheckpointIds:()=>[[..._],b,[...O]],forEachCheckpoint:e=>{return t=e,p(M,((e,n)=>t(n,e)));var t},hasCheckpoint:Y,getCheckpoint:e=>C(M,e),goBackward:()=>(P(),R(),Z),goForward:()=>(Q(),R(),Z),goTo:e=>{const n=s(_,e)?P:s(O,e)?Q:null;for(;!t(n)&&e!=b;)n();return R(),Z},addCheckpointIdsListener:e=>A(e,j),addCheckpointListener:(e,t)=>A(t,m,[e]),delListener:e=>(F(e),Z),clear:()=>(q(_),q(O),t(b)||$(b),b=void 0,S=0,U(),Z),clearForward:()=>(i(O)||(q(O),B(j)),Z),destroy:()=>{e.delListener(J),e.delListener(K)},getListenerStats:()=>({}),_registerListeners:()=>{J=e.addCellListener(null,null,null,((e,t,n,r,s,o)=>{if(V){G();const e=L(z,t,g),i=L(e,n,g),l=L(i,r,(()=>[o,void 0]));l[1]=s,l[0]===s&&h(k(i,r))&&h(k(e,n))&&h(k(z,t))&&H(),R()}})),K=e.addValueListener(null,((e,t,n,r)=>{if(V){G();const e=L(E,t,(()=>[r,void 0]));e[1]=n,e[0]===n&&h(k(E,t))&&H(),R()}}))}};return a(Z.clear())})(e));const b=S.get(e);return b._registerListeners(),b}})();e.createCheckpoints=b},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseCheckpoints={});
|
|
Binary file
|
package/lib/umd/indexes.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,n="",s=t(n),r=e=>n+e,o=e=>null==e,d=(e,t,n)=>o(e)?n?.():t(e),i=e=>Array.isArray(e),l=e=>e.length,c=(e,t)=>e.every(t),a=(e,t)=>c(e,((n,s)=>0==s||t(e[s-1],n)<=0)),
|
|
1
|
+
var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,n="",s=t(n),r=e=>n+e,o=e=>null==e,d=(e,t,n)=>o(e)?n?.():t(e),i=e=>Array.isArray(e),l=e=>e.length,c=(e,t)=>e.every(t),a=(e,t)=>c(e,((n,s)=>0==s||t(e[s-1],n)<=0)),u=(e,t)=>e.sort(t),f=(e,t)=>e.forEach(t),h=(e,...t)=>e.push(...t),I=Object.freeze,g=(e,t)=>e?.has(t)??!1,p=e=>o(e)||0==(e=>e?.size??0)(e),x=e=>[...e?.values()??[]],y=e=>e.clear(),v=(e,t)=>e?.forEach(t),L=(e,t)=>e?.delete(t),S=e=>new Map(e),w=e=>[...e?.keys()??[]],b=(e,t)=>e?.get(t),T=(e,t)=>v(e,((e,n)=>t(n,e))),E=(e,t,n)=>o(n)?(L(e,t),e):e?.set(t,n),R=(e,t,n)=>(g(e,t)||E(e,t,n()),b(e,t)),m=(e,t,n,s,r=0)=>d((n?R:b)(e,t[r],r>l(t)-2?n:S),(o=>{if(r>l(t)-2)return s?.(o)&&E(e,t[r]),o;const d=m(o,t,n,s,r+1);return p(o)&&E(e,t[r]),d})),j=e=>new Set(i(e)||o(e)?e:[e]),k=(e,t)=>e?.add(t),z=(e,r)=>t(e)==s?t=>t(e):e??(()=>r??n),A=(e,t)=>(e??0)<(t??0)?-1:1,C=/^\d+$/,D=((e,t)=>{const s=new WeakMap;return e=>{s.has(e)||s.set(e,(e=>{const t=S(),s=S(),[D,M,B]=(e=>{let t;const[s,r]=(()=>{const e=[];let t=0;return[s=>(s?e.shift():null)??n+t++,t=>{C.test(t)&&l(e)<1e3&&h(e,t)}]})(),i=S();return[(e,r,o,d=[],l=(()=>[]))=>{t??=U;const c=s(1);return E(i,c,[e,r,o,d,l]),k(m(r,o??[n],j),c),c},(e,s,...r)=>f(((e,t=[n])=>{const s=[],r=(e,n)=>n==l(t)?h(s,e):null===t[n]?v(e,(e=>r(e,n+1))):f([t[n],null],(t=>r(b(e,t),n+1)));return r(e,0),s})(e,s),(e=>v(e,(e=>b(i,e)[0](t,...s??[],...r))))),e=>d(b(i,e),(([,t,s])=>(m(t,s??[n],void 0,(t=>(L(t,e),p(t)?1:0))),E(i,e),r(e),s))),e=>d(b(i,e),(([e,,n=[],s,r])=>{const d=(...i)=>{const c=l(i);c==l(n)?e(t,...i,...r(i)):o(n[c])?f(s[c]?.(...i)??[],(e=>d(...i,e))):d(...i,n[c])};d()}))]})(),[O,W,$,q,F,G,H,,J,K,N,P]=((e,t,n,s,r)=>{const a=e.hasRow,u=S(),h=S(),I=S(),m=S(),z=S(),A=S(),C=(t,n,...s)=>{const r=R(A,t,j);return f(s,(t=>k(r,t)&&n&&e.callListener(t))),s},D=(t,...n)=>d(b(A,t),(s=>{f(0==l(n)?x(s):n,(t=>{e.delListener(t),L(s,t)})),p(s)&&E(A,t)})),M=(e,n)=>{E(u,e,n),g(h,e)||(E(h,e,t()),E(m,e,S()),E(z,e,S()),r(I))},B=e=>{E(u,e),E(h,e),E(m,e),E(z,e),D(e),r(I)};return[()=>e,()=>w(u),e=>T(h,e),e=>g(h,e),e=>b(u,e),e=>b(h,e),(e,t)=>E(h,e,t),M,(t,s,r,d,u)=>{M(t,s);const h=S(),I=S(),p=b(m,t),x=b(z,t),L=t=>{const r=n=>e.getCell(s,t,n),f=b(p,t),g=a(s,t)?n(d(r,t)):void 0;var y,v;if(f===g||i(f)&&i(g)&&(v=g,l(y=f)===l(v)&&c(y,((e,t)=>v[t]===e)))||E(h,t,[f,g]),!o(u)){const e=b(x,t),n=a(s,t)?u(r,t):void 0;e!=n&&E(I,t,n)}},w=e=>{r((()=>{v(h,(([,e],t)=>E(p,t,e))),v(I,((e,t)=>E(x,t,e)))}),h,I,p,x,e),y(h),y(I)};T(p,L),e.hasTable(s)&&f(e.getRowIds(s),(e=>{g(p,e)||L(e)})),w(!0),D(t),C(t,0,e.addRowListener(s,null,((e,t,n)=>L(n))),e.addTableListener(s,(()=>w())))},B,e=>s(e,I),()=>T(A,B),C,D]})(e,S,(e=>{return o(e)?n:i(e)?(t=r,e.map(t)):r(e);var t}),D,M),Q=(t,n,s)=>{const r=F(t);v(s,((t,s)=>n(s,(n=>v(t,(t=>n(t,(n=>e.forEachCell(r,t,n)))))))))},U={setIndexDefinition:(e,n,r,i,l,c=A)=>{const f=o(l)?void 0:([e],[t])=>l(e,t);return J(e,n,((n,r,l,h,I,x)=>{let y=0;const w=j(),R=j(),m=G(e);if(v(r,(([e,t],n)=>{const s=j(e),r=j(t);v(s,(e=>L(r,e)?L(s,e):0)),v(s,(e=>{k(w,e),d(b(m,e),(t=>{L(t,n),p(t)&&(E(m,e),y=1)}))})),v(r,(e=>{k(w,e),g(m,e)||(E(m,e,j()),y=1),k(b(m,e),n),o(i)||k(R,e)}))})),n(),p(I)||(x?T(m,(e=>k(R,e))):T(l,(e=>d(b(h,e),(e=>k(R,e))))),v(R,(e=>{const t=(t,n)=>c(b(I,t),b(I,n),e),n=[...b(m,e)];a(n,t)||(E(m,e,j(u(n,t))),k(w,e))}))),(y||x)&&!o(f)){const t=[...m];a(t,f)||(H(e,S(u(t,f))),y=1)}y&&M(t,[e]),v(w,(t=>M(s,[e,t])))}),z(r),d(i,z)),U},delIndexDefinition:e=>(K(e),U),getStore:O,getIndexIds:W,forEachIndex:e=>$(((t,n)=>e(t,(e=>Q(t,e,n))))),forEachSlice:(e,t)=>Q(e,t,G(e)),hasIndex:q,hasSlice:(e,t)=>g(G(e),t),getTableId:F,getSliceIds:e=>w(G(e)),getSliceRowIds:(e,t)=>x(b(G(e),t)),addIndexIdsListener:N,addSliceIdsListener:(e,n)=>D(n,t,[e]),addSliceRowIdsListener:(e,t,n)=>D(n,s,[e,t]),delListener:e=>(B(e),U),destroy:P,getListenerStats:()=>({})};return I(U)})(e));return s.get(e)}})();e.createIndexes=D},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseIndexes={});
|