tinybase 5.0.0-beta.1 → 5.0.0-beta.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/cjs/mergeable-store.cjs +1 -0
- package/lib/cjs/mergeable-store.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-automerge.cjs +1 -1
- package/lib/cjs/persisters/persister-automerge.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-browser.cjs +1 -1
- package/lib/cjs/persisters/persister-browser.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-cr-sqlite-wasm.cjs +1 -1
- package/lib/cjs/persisters/persister-cr-sqlite-wasm.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-electric-sql.cjs +1 -1
- package/lib/cjs/persisters/persister-electric-sql.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-expo-sqlite-next.cjs +1 -1
- package/lib/cjs/persisters/persister-expo-sqlite-next.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-expo-sqlite.cjs +1 -1
- package/lib/cjs/persisters/persister-expo-sqlite.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-file.cjs +1 -1
- package/lib/cjs/persisters/persister-file.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-indexed-db.cjs +1 -1
- package/lib/cjs/persisters/persister-indexed-db.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-partykit-client.cjs +1 -1
- package/lib/cjs/persisters/persister-partykit-client.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-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/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-es6/mergeable-store.cjs +1 -0
- package/lib/cjs-es6/mergeable-store.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-automerge.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-automerge.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-browser.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-browser.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-cr-sqlite-wasm.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-cr-sqlite-wasm.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-electric-sql.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-electric-sql.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-expo-sqlite-next.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-expo-sqlite-next.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-expo-sqlite.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-expo-sqlite.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-file.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-file.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-indexed-db.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-indexed-db.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-partykit-client.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-partykit-client.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-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/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/debug/mergeable-store.js +1863 -0
- package/lib/debug/persisters/persister-automerge.js +54 -53
- package/lib/debug/persisters/persister-browser.js +28 -18
- package/lib/debug/persisters/persister-cr-sqlite-wasm.js +80 -57
- package/lib/debug/persisters/persister-electric-sql.js +80 -57
- package/lib/debug/persisters/persister-expo-sqlite-next.js +80 -57
- package/lib/debug/persisters/persister-expo-sqlite.js +80 -57
- package/lib/debug/persisters/persister-file.js +27 -18
- package/lib/debug/persisters/persister-indexed-db.js +34 -23
- package/lib/debug/persisters/persister-partykit-client.js +26 -23
- package/lib/debug/persisters/persister-partykit-server.js +11 -21
- package/lib/debug/persisters/persister-remote.js +28 -18
- package/lib/debug/persisters/persister-sqlite-wasm.js +80 -57
- package/lib/debug/persisters/persister-sqlite3.js +80 -57
- package/lib/debug/persisters/persister-yjs.js +50 -48
- package/lib/debug/persisters.js +27 -18
- package/lib/debug/queries.js +2 -2
- package/lib/debug/store.js +63 -71
- package/lib/debug/tinybase.js +354 -90
- package/lib/debug/tools.js +13 -15
- package/lib/debug/ui-react-dom.js +115 -119
- package/lib/es6/mergeable-store.js +1 -0
- package/lib/es6/mergeable-store.js.gz +0 -0
- package/lib/es6/persisters/persister-automerge.js +1 -1
- package/lib/es6/persisters/persister-automerge.js.gz +0 -0
- package/lib/es6/persisters/persister-browser.js +1 -1
- package/lib/es6/persisters/persister-browser.js.gz +0 -0
- package/lib/es6/persisters/persister-cr-sqlite-wasm.js +1 -1
- package/lib/es6/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
- package/lib/es6/persisters/persister-electric-sql.js +1 -1
- package/lib/es6/persisters/persister-electric-sql.js.gz +0 -0
- package/lib/es6/persisters/persister-expo-sqlite-next.js +1 -1
- package/lib/es6/persisters/persister-expo-sqlite-next.js.gz +0 -0
- package/lib/es6/persisters/persister-expo-sqlite.js +1 -1
- package/lib/es6/persisters/persister-expo-sqlite.js.gz +0 -0
- package/lib/es6/persisters/persister-file.js +1 -1
- package/lib/es6/persisters/persister-file.js.gz +0 -0
- package/lib/es6/persisters/persister-indexed-db.js +1 -1
- package/lib/es6/persisters/persister-indexed-db.js.gz +0 -0
- package/lib/es6/persisters/persister-partykit-client.js +1 -1
- package/lib/es6/persisters/persister-partykit-client.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-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/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/mergeable-store.js +1 -0
- package/lib/mergeable-store.js.gz +0 -0
- package/lib/persisters/persister-automerge.js +1 -1
- package/lib/persisters/persister-automerge.js.gz +0 -0
- package/lib/persisters/persister-browser.js +1 -1
- package/lib/persisters/persister-browser.js.gz +0 -0
- package/lib/persisters/persister-cr-sqlite-wasm.js +1 -1
- package/lib/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
- package/lib/persisters/persister-electric-sql.js +1 -1
- package/lib/persisters/persister-electric-sql.js.gz +0 -0
- package/lib/persisters/persister-expo-sqlite-next.js +1 -1
- package/lib/persisters/persister-expo-sqlite-next.js.gz +0 -0
- package/lib/persisters/persister-expo-sqlite.js +1 -1
- package/lib/persisters/persister-expo-sqlite.js.gz +0 -0
- package/lib/persisters/persister-file.js +1 -1
- package/lib/persisters/persister-file.js.gz +0 -0
- package/lib/persisters/persister-indexed-db.js +1 -1
- package/lib/persisters/persister-indexed-db.js.gz +0 -0
- package/lib/persisters/persister-partykit-client.js +1 -1
- package/lib/persisters/persister-partykit-client.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-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/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 +79 -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 +1 -0
- 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 +12 -8
- 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 +50 -30
- package/lib/types/store.d.ts +241 -186
- package/lib/types/tinybase.d.ts +1 -0
- package/lib/types/tools.d.ts +2 -2
- package/lib/types/ui-react.d.ts +1 -0
- package/lib/types/with-schemas/internal/store.d.ts +4 -0
- package/lib/types/with-schemas/mergeable-store.d.ts +112 -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 +1 -0
- 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 +15 -11
- 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 +81 -45
- package/lib/types/with-schemas/store.d.ts +364 -273
- package/lib/types/with-schemas/tinybase.d.ts +1 -0
- package/lib/types/with-schemas/tools.d.ts +2 -2
- package/lib/ui-react-dom.js +1 -1
- package/lib/ui-react-dom.js.gz +0 -0
- package/lib/umd/mergeable-store.js +1 -0
- package/lib/umd/mergeable-store.js.gz +0 -0
- package/lib/umd/persisters/persister-automerge.js +1 -1
- package/lib/umd/persisters/persister-automerge.js.gz +0 -0
- package/lib/umd/persisters/persister-browser.js +1 -1
- package/lib/umd/persisters/persister-browser.js.gz +0 -0
- package/lib/umd/persisters/persister-cr-sqlite-wasm.js +1 -1
- package/lib/umd/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
- package/lib/umd/persisters/persister-electric-sql.js +1 -1
- package/lib/umd/persisters/persister-electric-sql.js.gz +0 -0
- package/lib/umd/persisters/persister-expo-sqlite-next.js +1 -1
- package/lib/umd/persisters/persister-expo-sqlite-next.js.gz +0 -0
- package/lib/umd/persisters/persister-expo-sqlite.js +1 -1
- package/lib/umd/persisters/persister-expo-sqlite.js.gz +0 -0
- package/lib/umd/persisters/persister-file.js +1 -1
- package/lib/umd/persisters/persister-file.js.gz +0 -0
- package/lib/umd/persisters/persister-indexed-db.js +1 -1
- package/lib/umd/persisters/persister-indexed-db.js.gz +0 -0
- package/lib/umd/persisters/persister-partykit-client.js +1 -1
- package/lib/umd/persisters/persister-partykit-client.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-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/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-es6/mergeable-store.js +1 -0
- package/lib/umd-es6/mergeable-store.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-automerge.js +1 -1
- package/lib/umd-es6/persisters/persister-automerge.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-browser.js +1 -1
- package/lib/umd-es6/persisters/persister-browser.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-cr-sqlite-wasm.js +1 -1
- package/lib/umd-es6/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-electric-sql.js +1 -1
- package/lib/umd-es6/persisters/persister-electric-sql.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-expo-sqlite-next.js +1 -1
- package/lib/umd-es6/persisters/persister-expo-sqlite-next.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-expo-sqlite.js +1 -1
- package/lib/umd-es6/persisters/persister-expo-sqlite.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-file.js +1 -1
- package/lib/umd-es6/persisters/persister-file.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-indexed-db.js +1 -1
- package/lib/umd-es6/persisters/persister-indexed-db.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-partykit-client.js +1 -1
- package/lib/umd-es6/persisters/persister-partykit-client.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-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/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/package.json +39 -35
- package/readme.md +2 -2
package/lib/types/store.d.ts
CHANGED
|
@@ -11,6 +11,7 @@
|
|
|
11
11
|
*/
|
|
12
12
|
|
|
13
13
|
import {Id, IdOrNull, Ids, Json} from './common.d';
|
|
14
|
+
import {StoreAlias} from './internal/store.d';
|
|
14
15
|
|
|
15
16
|
/**
|
|
16
17
|
* The TablesSchema type describes the tabular structure of a Store in terms of
|
|
@@ -155,6 +156,9 @@ export type OptionalSchemas = [OptionalTablesSchema, OptionalValuesSchema];
|
|
|
155
156
|
*/
|
|
156
157
|
export type NoSchemas = [NoTablesSchema, NoValuesSchema];
|
|
157
158
|
|
|
159
|
+
// Content
|
|
160
|
+
export type Content = [Tables, Values];
|
|
161
|
+
|
|
158
162
|
/**
|
|
159
163
|
* The Tables type is the data structure representing all of the data in a
|
|
160
164
|
* Store.
|
|
@@ -489,20 +493,13 @@ export type ChangedValueIds = {[valueId: Id]: IdAddedOrRemoved};
|
|
|
489
493
|
* A DoRollback can be provided when calling the transaction method or the
|
|
490
494
|
* finishTransaction method. See those methods for specific examples.
|
|
491
495
|
*
|
|
492
|
-
* Since
|
|
493
|
-
*
|
|
494
|
-
*
|
|
495
|
-
*
|
|
496
|
-
* @param getTransactionChanges A function to be called to get the changes made
|
|
497
|
-
* to the Store during the transaction, since v4.0.
|
|
498
|
-
* @param getTransactionChanges A function to be called to get a more detailed
|
|
499
|
-
* log of the changes made or attempted during the transaction, since v4.0.
|
|
496
|
+
* Since v5.0, this function is called with the Store as a single argument. You
|
|
497
|
+
* can use the getTransactionChanges method and getTransactionLog method of the
|
|
498
|
+
* Store directly to decide whether to do the rollback.
|
|
499
|
+
* @param store A reference to the Store that is completing a transaction.
|
|
500
500
|
* @category Callback
|
|
501
501
|
*/
|
|
502
|
-
export type DoRollback = (
|
|
503
|
-
getTransactionChanges: GetTransactionChanges,
|
|
504
|
-
getTransactionLog: GetTransactionLog,
|
|
505
|
-
) => boolean;
|
|
502
|
+
export type DoRollback = (store: Store) => boolean;
|
|
506
503
|
|
|
507
504
|
/**
|
|
508
505
|
* The TransactionListener type describes a function that is used to listen to
|
|
@@ -512,21 +509,15 @@ export type DoRollback = (
|
|
|
512
509
|
* addWillFinishTransactionListener and addDidFinishTransactionListener methods.
|
|
513
510
|
* See those methods for specific examples.
|
|
514
511
|
*
|
|
515
|
-
*
|
|
516
|
-
*
|
|
517
|
-
*
|
|
518
|
-
*
|
|
512
|
+
* Since v5.0, this listener is called with no arguments other than the Store.
|
|
513
|
+
* You can use the getTransactionChanges method and getTransactionLog method of
|
|
514
|
+
* the Store directly to get information about the changes made within the
|
|
515
|
+
* transaction.
|
|
519
516
|
* @param store A reference to the Store that is completing a transaction.
|
|
520
|
-
* @param getTransactionChanges A function to be called to get the changes made
|
|
521
|
-
* to the Store during the transaction, since v4.0.
|
|
522
|
-
* @param getTransactionChanges A function to be called to get a more detailed
|
|
523
|
-
* log of the changes made or attempted during the transaction, since v4.0.
|
|
524
517
|
* @category Listener
|
|
525
518
|
*/
|
|
526
|
-
export type TransactionListener = (
|
|
519
|
+
export type TransactionListener<Store extends StoreAlias = StoreAlias> = (
|
|
527
520
|
store: Store,
|
|
528
|
-
getTransactionChanges: GetTransactionChanges,
|
|
529
|
-
getTransactionLog: GetTransactionLog,
|
|
530
521
|
) => void;
|
|
531
522
|
|
|
532
523
|
/**
|
|
@@ -544,7 +535,10 @@ export type TransactionListener = (
|
|
|
544
535
|
* @category Listener
|
|
545
536
|
* @since v4.4.0
|
|
546
537
|
*/
|
|
547
|
-
export type HasTablesListener
|
|
538
|
+
export type HasTablesListener<Store extends StoreAlias = StoreAlias> = (
|
|
539
|
+
store: Store,
|
|
540
|
+
hasTables: boolean,
|
|
541
|
+
) => void;
|
|
548
542
|
|
|
549
543
|
/**
|
|
550
544
|
* The TablesListener type describes a function that is used to listen to
|
|
@@ -565,7 +559,7 @@ export type HasTablesListener = (store: Store, hasTables: boolean) => void;
|
|
|
565
559
|
* changes.
|
|
566
560
|
* @category Listener
|
|
567
561
|
*/
|
|
568
|
-
export type TablesListener = (
|
|
562
|
+
export type TablesListener<Store extends StoreAlias = StoreAlias> = (
|
|
569
563
|
store: Store,
|
|
570
564
|
getCellChange: GetCellChange | undefined,
|
|
571
565
|
) => void;
|
|
@@ -586,7 +580,7 @@ export type TablesListener = (
|
|
|
586
580
|
* since v3.3.
|
|
587
581
|
* @category Listener
|
|
588
582
|
*/
|
|
589
|
-
export type TableIdsListener = (
|
|
583
|
+
export type TableIdsListener<Store extends StoreAlias = StoreAlias> = (
|
|
590
584
|
store: Store,
|
|
591
585
|
getIdChanges: GetIdChanges | undefined,
|
|
592
586
|
) => void;
|
|
@@ -608,7 +602,7 @@ export type TableIdsListener = (
|
|
|
608
602
|
* @category Listener
|
|
609
603
|
* @since v4.4.0
|
|
610
604
|
*/
|
|
611
|
-
export type HasTableListener = (
|
|
605
|
+
export type HasTableListener<Store extends StoreAlias = StoreAlias> = (
|
|
612
606
|
store: Store,
|
|
613
607
|
tableId: Id,
|
|
614
608
|
hasTable: boolean,
|
|
@@ -634,7 +628,7 @@ export type HasTableListener = (
|
|
|
634
628
|
* changes.
|
|
635
629
|
* @category Listener
|
|
636
630
|
*/
|
|
637
|
-
export type TableListener = (
|
|
631
|
+
export type TableListener<Store extends StoreAlias = StoreAlias> = (
|
|
638
632
|
store: Store,
|
|
639
633
|
tableId: Id,
|
|
640
634
|
getCellChange: GetCellChange | undefined,
|
|
@@ -656,7 +650,7 @@ export type TableListener = (
|
|
|
656
650
|
* @category Listener
|
|
657
651
|
* @since v3.3.0
|
|
658
652
|
*/
|
|
659
|
-
export type TableCellIdsListener = (
|
|
653
|
+
export type TableCellIdsListener<Store extends StoreAlias = StoreAlias> = (
|
|
660
654
|
store: Store,
|
|
661
655
|
tableId: Id,
|
|
662
656
|
getIdChanges: GetIdChanges | undefined,
|
|
@@ -680,7 +674,7 @@ export type TableCellIdsListener = (
|
|
|
680
674
|
* @category Listener
|
|
681
675
|
* @since v4.4.0
|
|
682
676
|
*/
|
|
683
|
-
export type HasTableCellListener = (
|
|
677
|
+
export type HasTableCellListener<Store extends StoreAlias = StoreAlias> = (
|
|
684
678
|
store: Store,
|
|
685
679
|
tableId: Id,
|
|
686
680
|
cellId: Id,
|
|
@@ -702,7 +696,7 @@ export type HasTableCellListener = (
|
|
|
702
696
|
* @category Listener
|
|
703
697
|
* @since v4.1.0
|
|
704
698
|
*/
|
|
705
|
-
export type RowCountListener = (
|
|
699
|
+
export type RowCountListener<Store extends StoreAlias = StoreAlias> = (
|
|
706
700
|
store: Store,
|
|
707
701
|
tableId: Id,
|
|
708
702
|
count: number,
|
|
@@ -726,7 +720,7 @@ export type RowCountListener = (
|
|
|
726
720
|
* since v3.3.
|
|
727
721
|
* @category Listener
|
|
728
722
|
*/
|
|
729
|
-
export type RowIdsListener = (
|
|
723
|
+
export type RowIdsListener<Store extends StoreAlias = StoreAlias> = (
|
|
730
724
|
store: Store,
|
|
731
725
|
tableId: Id,
|
|
732
726
|
getIdChanges: GetIdChanges | undefined,
|
|
@@ -755,7 +749,7 @@ export type RowIdsListener = (
|
|
|
755
749
|
* @category Listener
|
|
756
750
|
* @since v2.0.0
|
|
757
751
|
*/
|
|
758
|
-
export type SortedRowIdsListener = (
|
|
752
|
+
export type SortedRowIdsListener<Store extends StoreAlias = StoreAlias> = (
|
|
759
753
|
store: Store,
|
|
760
754
|
tableId: Id,
|
|
761
755
|
cellId: Id | undefined,
|
|
@@ -783,7 +777,7 @@ export type SortedRowIdsListener = (
|
|
|
783
777
|
* @category Listener
|
|
784
778
|
* @since v4.4.0
|
|
785
779
|
*/
|
|
786
|
-
export type HasRowListener = (
|
|
780
|
+
export type HasRowListener<Store extends StoreAlias = StoreAlias> = (
|
|
787
781
|
store: Store,
|
|
788
782
|
tableId: Id,
|
|
789
783
|
rowId: Id,
|
|
@@ -812,7 +806,7 @@ export type HasRowListener = (
|
|
|
812
806
|
* changes.
|
|
813
807
|
* @category Listener
|
|
814
808
|
*/
|
|
815
|
-
export type RowListener = (
|
|
809
|
+
export type RowListener<Store extends StoreAlias = StoreAlias> = (
|
|
816
810
|
store: Store,
|
|
817
811
|
tableId: Id,
|
|
818
812
|
rowId: Id,
|
|
@@ -838,7 +832,7 @@ export type RowListener = (
|
|
|
838
832
|
* since v3.3.
|
|
839
833
|
* @category Listener
|
|
840
834
|
*/
|
|
841
|
-
export type CellIdsListener = (
|
|
835
|
+
export type CellIdsListener<Store extends StoreAlias = StoreAlias> = (
|
|
842
836
|
store: Store,
|
|
843
837
|
tableId: Id,
|
|
844
838
|
rowId: Id,
|
|
@@ -864,7 +858,7 @@ export type CellIdsListener = (
|
|
|
864
858
|
* @category Listener
|
|
865
859
|
* @since v4.4.0
|
|
866
860
|
*/
|
|
867
|
-
export type HasCellListener = (
|
|
861
|
+
export type HasCellListener<Store extends StoreAlias = StoreAlias> = (
|
|
868
862
|
store: Store,
|
|
869
863
|
tableId: Id,
|
|
870
864
|
rowId: Id,
|
|
@@ -899,7 +893,7 @@ export type HasCellListener = (
|
|
|
899
893
|
* changes.
|
|
900
894
|
* @category Listener
|
|
901
895
|
*/
|
|
902
|
-
export type CellListener = (
|
|
896
|
+
export type CellListener<Store extends StoreAlias = StoreAlias> = (
|
|
903
897
|
store: Store,
|
|
904
898
|
tableId: Id,
|
|
905
899
|
rowId: Id,
|
|
@@ -924,7 +918,10 @@ export type CellListener = (
|
|
|
924
918
|
* @category Listener
|
|
925
919
|
* @since v4.4.0
|
|
926
920
|
*/
|
|
927
|
-
export type HasValuesListener
|
|
921
|
+
export type HasValuesListener<Store extends StoreAlias = StoreAlias> = (
|
|
922
|
+
store: Store,
|
|
923
|
+
hasValues: boolean,
|
|
924
|
+
) => void;
|
|
928
925
|
|
|
929
926
|
/**
|
|
930
927
|
* The ValuesListener type describes a function that is used to listen to
|
|
@@ -945,7 +942,7 @@ export type HasValuesListener = (store: Store, hasValues: boolean) => void;
|
|
|
945
942
|
* changes.
|
|
946
943
|
* @category Listener
|
|
947
944
|
*/
|
|
948
|
-
export type ValuesListener = (
|
|
945
|
+
export type ValuesListener<Store extends StoreAlias = StoreAlias> = (
|
|
949
946
|
store: Store,
|
|
950
947
|
getValueChange: GetValueChange | undefined,
|
|
951
948
|
) => void;
|
|
@@ -966,7 +963,7 @@ export type ValuesListener = (
|
|
|
966
963
|
* since v3.3.
|
|
967
964
|
* @category Listener
|
|
968
965
|
*/
|
|
969
|
-
export type ValueIdsListener = (
|
|
966
|
+
export type ValueIdsListener<Store extends StoreAlias = StoreAlias> = (
|
|
970
967
|
store: Store,
|
|
971
968
|
getIdChanges: GetIdChanges | undefined,
|
|
972
969
|
) => void;
|
|
@@ -988,7 +985,7 @@ export type ValueIdsListener = (
|
|
|
988
985
|
* @category Listener
|
|
989
986
|
* @since v4.4.0
|
|
990
987
|
*/
|
|
991
|
-
export type HasValueListener = (
|
|
988
|
+
export type HasValueListener<Store extends StoreAlias = StoreAlias> = (
|
|
992
989
|
store: Store,
|
|
993
990
|
valueId: Id,
|
|
994
991
|
hasValue: boolean,
|
|
@@ -1019,7 +1016,7 @@ export type HasValueListener = (
|
|
|
1019
1016
|
* @category Listener
|
|
1020
1017
|
* @since v3.0.0
|
|
1021
1018
|
*/
|
|
1022
|
-
export type ValueListener = (
|
|
1019
|
+
export type ValueListener<Store extends StoreAlias = StoreAlias> = (
|
|
1023
1020
|
store: Store,
|
|
1024
1021
|
valueId: Id,
|
|
1025
1022
|
newValue: Value,
|
|
@@ -1048,7 +1045,7 @@ export type ValueListener = (
|
|
|
1048
1045
|
* @category Listener
|
|
1049
1046
|
* @since v1.1.0
|
|
1050
1047
|
*/
|
|
1051
|
-
export type InvalidCellListener = (
|
|
1048
|
+
export type InvalidCellListener<Store extends StoreAlias = StoreAlias> = (
|
|
1052
1049
|
store: Store,
|
|
1053
1050
|
tableId: Id,
|
|
1054
1051
|
rowId: Id,
|
|
@@ -1075,7 +1072,7 @@ export type InvalidCellListener = (
|
|
|
1075
1072
|
* @category Listener
|
|
1076
1073
|
* @since v3.0.0
|
|
1077
1074
|
*/
|
|
1078
|
-
export type InvalidValueListener = (
|
|
1075
|
+
export type InvalidValueListener<Store extends StoreAlias = StoreAlias> = (
|
|
1079
1076
|
store: Store,
|
|
1080
1077
|
valueId: Id,
|
|
1081
1078
|
invalidValues: any[],
|
|
@@ -1205,7 +1202,7 @@ export type ChangedCells = {
|
|
|
1205
1202
|
* @category Transaction
|
|
1206
1203
|
* @since v1.2.0
|
|
1207
1204
|
*/
|
|
1208
|
-
export type ChangedCell = [CellOrUndefined, CellOrUndefined];
|
|
1205
|
+
export type ChangedCell = [oldCell: CellOrUndefined, newCell: CellOrUndefined];
|
|
1209
1206
|
|
|
1210
1207
|
/**
|
|
1211
1208
|
* The InvalidCells type describes the invalid Cell values that have been
|
|
@@ -1273,7 +1270,10 @@ export type ChangedValues = {
|
|
|
1273
1270
|
* @category Transaction
|
|
1274
1271
|
* @since v3.0.0
|
|
1275
1272
|
*/
|
|
1276
|
-
export type ChangedValue = [
|
|
1273
|
+
export type ChangedValue = [
|
|
1274
|
+
oldValue: ValueOrUndefined,
|
|
1275
|
+
newValue: ValueOrUndefined,
|
|
1276
|
+
];
|
|
1277
1277
|
|
|
1278
1278
|
/**
|
|
1279
1279
|
* The InvalidValues type describes the invalid Values that have been attempted
|
|
@@ -1293,8 +1293,8 @@ export type ChangedValue = [ValueOrUndefined, ValueOrUndefined];
|
|
|
1293
1293
|
export type InvalidValues = {[valueId: Id]: any[]};
|
|
1294
1294
|
|
|
1295
1295
|
/**
|
|
1296
|
-
* The
|
|
1297
|
-
*
|
|
1296
|
+
* The Changes type describes the net meaningful changes that were made to a
|
|
1297
|
+
* Store during a transaction.
|
|
1298
1298
|
*
|
|
1299
1299
|
* This contains mostly equivalent information to a TransactionLog, but in a
|
|
1300
1300
|
* form that can be more efficiently parsed and serialized (for example in the
|
|
@@ -1318,7 +1318,7 @@ export type InvalidValues = {[valueId: Id]: any[]};
|
|
|
1318
1318
|
* has had a change. If the entry is null, the Value was deleted, otherwise it
|
|
1319
1319
|
* will contain the new Value it was changed to during the transaction.
|
|
1320
1320
|
* @example
|
|
1321
|
-
* The following is a valid
|
|
1321
|
+
* The following is a valid Changes array that conveys the following:
|
|
1322
1322
|
* ```json
|
|
1323
1323
|
* [
|
|
1324
1324
|
* { // changes to tabular data in the Store
|
|
@@ -1337,28 +1337,20 @@ export type InvalidValues = {[valueId: Id]: any[]};
|
|
|
1337
1337
|
* @category Transaction
|
|
1338
1338
|
* @since v4.0.0
|
|
1339
1339
|
*/
|
|
1340
|
-
export type
|
|
1341
|
-
|
|
1342
|
-
|
|
1340
|
+
export type Changes = [
|
|
1341
|
+
changedTables: {
|
|
1342
|
+
[tableId: Id]:
|
|
1343
|
+
| {[rowId: Id]: {[cellId: Id]: CellOrUndefined} | undefined}
|
|
1344
|
+
| undefined;
|
|
1345
|
+
},
|
|
1346
|
+
changedValues: {[valueId: Id]: ValueOrUndefined},
|
|
1343
1347
|
];
|
|
1344
1348
|
|
|
1345
|
-
/**
|
|
1346
|
-
* The GetTransactionChanges type describes a function that returns the net
|
|
1347
|
-
* meaningful changes that were made to a Store during a transaction.
|
|
1348
|
-
*
|
|
1349
|
-
* It is provided to the DoRollback callback and to a TransactionListener
|
|
1350
|
-
* listener when a transaction completes. See the TransactionChanges type for
|
|
1351
|
-
* more information and an example of the returned data structure.
|
|
1352
|
-
* @category Transaction
|
|
1353
|
-
* @since v4.0.0
|
|
1354
|
-
*/
|
|
1355
|
-
export type GetTransactionChanges = () => TransactionChanges;
|
|
1356
|
-
|
|
1357
1349
|
/**
|
|
1358
1350
|
* The TransactionLog type describes the changes that were made to a Store
|
|
1359
1351
|
* during a transaction in detail.
|
|
1360
1352
|
*
|
|
1361
|
-
* This contains equivalent information to a
|
|
1353
|
+
* This contains equivalent information to a Changes object, but also
|
|
1362
1354
|
* information about what the previous state of the Store was. The changedCells
|
|
1363
1355
|
* and changedValues entries contain information about all changes to those
|
|
1364
1356
|
* parts of the Store, with their before and after values, for example.
|
|
@@ -1374,34 +1366,25 @@ export type GetTransactionChanges = () => TransactionChanges;
|
|
|
1374
1366
|
* of `cellsTouched` and `valuesTouched` in the listener will be `false` because
|
|
1375
1367
|
* all changes have been reverted.
|
|
1376
1368
|
*
|
|
1377
|
-
*
|
|
1378
|
-
*
|
|
1379
|
-
* @since v4.0.0
|
|
1380
|
-
*/
|
|
1381
|
-
export type TransactionLog = {
|
|
1382
|
-
cellsTouched: boolean;
|
|
1383
|
-
valuesTouched: boolean;
|
|
1384
|
-
changedCells: ChangedCells;
|
|
1385
|
-
invalidCells: InvalidCells;
|
|
1386
|
-
changedValues: ChangedValues;
|
|
1387
|
-
invalidValues: InvalidValues;
|
|
1388
|
-
changedTableIds: ChangedTableIds;
|
|
1389
|
-
changedRowIds: ChangedRowIds;
|
|
1390
|
-
changedCellIds: ChangedCellIds;
|
|
1391
|
-
changedValueIds: ChangedValueIds;
|
|
1392
|
-
};
|
|
1393
|
-
|
|
1394
|
-
/**
|
|
1395
|
-
* The GetTransactionLog type describes a function that returns the changes that
|
|
1396
|
-
* were made to a Store during a transaction in detail.
|
|
1369
|
+
* In v5.0, this type changed from an object to an array, but still contains the
|
|
1370
|
+
* same values.
|
|
1397
1371
|
*
|
|
1398
|
-
*
|
|
1399
|
-
* listener when a transaction completes. See the TransactionLog type for more
|
|
1400
|
-
* information.
|
|
1372
|
+
* See the documentation for the types of the inner objects for other details.
|
|
1401
1373
|
* @category Transaction
|
|
1402
1374
|
* @since v4.0.0
|
|
1403
1375
|
*/
|
|
1404
|
-
export type
|
|
1376
|
+
export type TransactionLog = [
|
|
1377
|
+
cellsTouched: boolean,
|
|
1378
|
+
valuesTouched: boolean,
|
|
1379
|
+
changedCells: ChangedCells,
|
|
1380
|
+
invalidCells: InvalidCells,
|
|
1381
|
+
changedValues: ChangedValues,
|
|
1382
|
+
invalidValues: InvalidValues,
|
|
1383
|
+
changedTableIds: ChangedTableIds,
|
|
1384
|
+
changedRowIds: ChangedRowIds,
|
|
1385
|
+
changedCellIds: ChangedCellIds,
|
|
1386
|
+
changedValueIds: ChangedValueIds,
|
|
1387
|
+
];
|
|
1405
1388
|
|
|
1406
1389
|
/**
|
|
1407
1390
|
* The StoreListenerStats type describes the number of listeners registered with
|
|
@@ -1736,7 +1719,7 @@ export interface Store {
|
|
|
1736
1719
|
* @category Getter
|
|
1737
1720
|
* @since v4.0.0
|
|
1738
1721
|
*/
|
|
1739
|
-
getContent():
|
|
1722
|
+
getContent(): Content;
|
|
1740
1723
|
|
|
1741
1724
|
/**
|
|
1742
1725
|
* The getTables method returns a Tables object containing the entire tabular
|
|
@@ -2657,7 +2640,7 @@ export interface Store {
|
|
|
2657
2640
|
* @category Setter
|
|
2658
2641
|
* @since v4.0.0
|
|
2659
2642
|
*/
|
|
2660
|
-
setContent(
|
|
2643
|
+
setContent(content: Content): this;
|
|
2661
2644
|
|
|
2662
2645
|
/**
|
|
2663
2646
|
* The setTables method takes an object and sets the entire tabular data of
|
|
@@ -2705,7 +2688,7 @@ export interface Store {
|
|
|
2705
2688
|
* ```
|
|
2706
2689
|
* @category Setter
|
|
2707
2690
|
*/
|
|
2708
|
-
setTables(tables: Tables):
|
|
2691
|
+
setTables(tables: Tables): this;
|
|
2709
2692
|
|
|
2710
2693
|
/**
|
|
2711
2694
|
* The setTable method takes an object and sets the entire data of a single
|
|
@@ -2755,7 +2738,7 @@ export interface Store {
|
|
|
2755
2738
|
* ```
|
|
2756
2739
|
* @category Setter
|
|
2757
2740
|
*/
|
|
2758
|
-
setTable(tableId: Id, table: Table):
|
|
2741
|
+
setTable(tableId: Id, table: Table): this;
|
|
2759
2742
|
|
|
2760
2743
|
/**
|
|
2761
2744
|
* The setRow method takes an object and sets the entire data of a single Row
|
|
@@ -2804,7 +2787,7 @@ export interface Store {
|
|
|
2804
2787
|
* ```
|
|
2805
2788
|
* @category Setter
|
|
2806
2789
|
*/
|
|
2807
|
-
setRow(tableId: Id, rowId: Id, row: Row):
|
|
2790
|
+
setRow(tableId: Id, rowId: Id, row: Row): this;
|
|
2808
2791
|
|
|
2809
2792
|
/**
|
|
2810
2793
|
* The addRow method takes an object and creates a new Row in the Store,
|
|
@@ -2916,7 +2899,7 @@ export interface Store {
|
|
|
2916
2899
|
* ```
|
|
2917
2900
|
* @category Setter
|
|
2918
2901
|
*/
|
|
2919
|
-
setPartialRow(tableId: Id, rowId: Id, partialRow: Row):
|
|
2902
|
+
setPartialRow(tableId: Id, rowId: Id, partialRow: Row): this;
|
|
2920
2903
|
|
|
2921
2904
|
/**
|
|
2922
2905
|
* The setCell method sets the value of a single Cell in the Store.
|
|
@@ -2973,7 +2956,7 @@ export interface Store {
|
|
|
2973
2956
|
* ```
|
|
2974
2957
|
* @category Setter
|
|
2975
2958
|
*/
|
|
2976
|
-
setCell(tableId: Id, rowId: Id, cellId: Id, cell: Cell | MapCell):
|
|
2959
|
+
setCell(tableId: Id, rowId: Id, cellId: Id, cell: Cell | MapCell): this;
|
|
2977
2960
|
|
|
2978
2961
|
/**
|
|
2979
2962
|
* The setValues method takes an object and sets all the Values in the Store.
|
|
@@ -3020,7 +3003,7 @@ export interface Store {
|
|
|
3020
3003
|
* @category Setter
|
|
3021
3004
|
* @since v3.0.0
|
|
3022
3005
|
*/
|
|
3023
|
-
setValues(values: Values):
|
|
3006
|
+
setValues(values: Values): this;
|
|
3024
3007
|
|
|
3025
3008
|
/**
|
|
3026
3009
|
* The setPartialValues method takes an object and sets its Values in the
|
|
@@ -3069,7 +3052,7 @@ export interface Store {
|
|
|
3069
3052
|
* @category Setter
|
|
3070
3053
|
* @since v3.0.0
|
|
3071
3054
|
*/
|
|
3072
|
-
setPartialValues(partialValues: Values):
|
|
3055
|
+
setPartialValues(partialValues: Values): this;
|
|
3073
3056
|
|
|
3074
3057
|
/**
|
|
3075
3058
|
* The setValue method sets a single keyed Value in the Store.
|
|
@@ -3122,28 +3105,29 @@ export interface Store {
|
|
|
3122
3105
|
* @category Setter
|
|
3123
3106
|
* @since v3.0.0
|
|
3124
3107
|
*/
|
|
3125
|
-
setValue(valueId: Id, value: Value | MapValue):
|
|
3108
|
+
setValue(valueId: Id, value: Value | MapValue): this;
|
|
3126
3109
|
|
|
3127
3110
|
/**
|
|
3128
|
-
* The
|
|
3129
|
-
* Store.
|
|
3111
|
+
* The applyChanges method applies a set of Changes to the Store.
|
|
3130
3112
|
*
|
|
3131
|
-
* This method will take a
|
|
3132
|
-
*
|
|
3133
|
-
*
|
|
3134
|
-
*
|
|
3135
|
-
*
|
|
3113
|
+
* This method will take a Changes object (which is available at the end of a
|
|
3114
|
+
* transaction) and apply it to a Store. The most likely need to do this is to
|
|
3115
|
+
* take the changes made during the transaction of one Store, and apply it to
|
|
3116
|
+
* the content of _another_ Store - such as when persisting and synchronizing
|
|
3117
|
+
* data.
|
|
3136
3118
|
*
|
|
3137
|
-
* Any part of the provided
|
|
3138
|
-
*
|
|
3139
|
-
*
|
|
3119
|
+
* Any part of the provided Changes object are invalid (either because of its
|
|
3120
|
+
* type, or because it does not match the schemas associated with the Store)
|
|
3121
|
+
* will be ignored silently.
|
|
3140
3122
|
*
|
|
3141
3123
|
* The method returns a reference to the Store so that subsequent operations
|
|
3142
3124
|
* can be chained in a fluent style.
|
|
3143
|
-
*
|
|
3125
|
+
*
|
|
3126
|
+
* Prior to v5.0, this method was named `setTransactionChanges`.
|
|
3127
|
+
* @param changes The Changes to apply to the Store.
|
|
3144
3128
|
* @returns A reference to the Store.
|
|
3145
3129
|
* @example
|
|
3146
|
-
* This example applies a
|
|
3130
|
+
* This example applies a Changes object that sets a Cell and
|
|
3147
3131
|
* removes a Value.
|
|
3148
3132
|
*
|
|
3149
3133
|
* ```js
|
|
@@ -3151,19 +3135,16 @@ export interface Store {
|
|
|
3151
3135
|
* .setTables({pets: {fido: {species: 'dog', color: 'brown'}}})
|
|
3152
3136
|
* .setValues({open: true});
|
|
3153
3137
|
*
|
|
3154
|
-
* store.
|
|
3155
|
-
* {pets: {fido: {color: 'black'}}},
|
|
3156
|
-
* {open: null},
|
|
3157
|
-
* ]);
|
|
3138
|
+
* store.applyChanges([{pets: {fido: {color: 'black'}}}, {open: null}]);
|
|
3158
3139
|
* console.log(store.getTables());
|
|
3159
3140
|
* // -> {pets: {fido: {species: 'dog', color: 'black'}}}
|
|
3160
3141
|
* console.log(store.getValues());
|
|
3161
3142
|
* // -> {}
|
|
3162
3143
|
* ```
|
|
3163
3144
|
* @category Setter
|
|
3164
|
-
* @since
|
|
3145
|
+
* @since v5.0.0
|
|
3165
3146
|
*/
|
|
3166
|
-
|
|
3147
|
+
applyChanges(changes: Changes): this;
|
|
3167
3148
|
|
|
3168
3149
|
/**
|
|
3169
3150
|
* The setTablesJson method takes a string serialization of all of the Tables
|
|
@@ -3197,7 +3178,7 @@ export interface Store {
|
|
|
3197
3178
|
* @category Setter
|
|
3198
3179
|
* @since v3.0.0
|
|
3199
3180
|
*/
|
|
3200
|
-
setTablesJson(tablesJson: Json):
|
|
3181
|
+
setTablesJson(tablesJson: Json): this;
|
|
3201
3182
|
|
|
3202
3183
|
/**
|
|
3203
3184
|
* The setValuesJson method takes a string serialization of all of the Values
|
|
@@ -3231,7 +3212,7 @@ export interface Store {
|
|
|
3231
3212
|
* @category Setter
|
|
3232
3213
|
* @since v3.0.0
|
|
3233
3214
|
*/
|
|
3234
|
-
setValuesJson(valuesJson: Json):
|
|
3215
|
+
setValuesJson(valuesJson: Json): this;
|
|
3235
3216
|
|
|
3236
3217
|
/**
|
|
3237
3218
|
* The setJson method takes a string serialization of all of the Tables and
|
|
@@ -3289,7 +3270,7 @@ export interface Store {
|
|
|
3289
3270
|
* ```
|
|
3290
3271
|
* @category Setter
|
|
3291
3272
|
*/
|
|
3292
|
-
setJson(tablesAndValuesJson: Json):
|
|
3273
|
+
setJson(tablesAndValuesJson: Json): this;
|
|
3293
3274
|
|
|
3294
3275
|
/**
|
|
3295
3276
|
* The setTablesSchema method lets you specify the TablesSchema of the tabular
|
|
@@ -3321,7 +3302,7 @@ export interface Store {
|
|
|
3321
3302
|
* @category Setter
|
|
3322
3303
|
* @since v3.0.0
|
|
3323
3304
|
*/
|
|
3324
|
-
setTablesSchema(tablesSchema: TablesSchema):
|
|
3305
|
+
setTablesSchema(tablesSchema: TablesSchema): this;
|
|
3325
3306
|
|
|
3326
3307
|
/**
|
|
3327
3308
|
* The setValuesSchema method lets you specify the ValuesSchema of the keyed
|
|
@@ -3350,7 +3331,7 @@ export interface Store {
|
|
|
3350
3331
|
* @category Setter
|
|
3351
3332
|
* @since v3.0.0
|
|
3352
3333
|
*/
|
|
3353
|
-
setValuesSchema(valuesSchema: ValuesSchema):
|
|
3334
|
+
setValuesSchema(valuesSchema: ValuesSchema): this;
|
|
3354
3335
|
|
|
3355
3336
|
/**
|
|
3356
3337
|
* The setSchema method lets you specify the TablesSchema and ValuesSchema of
|
|
@@ -3408,7 +3389,7 @@ export interface Store {
|
|
|
3408
3389
|
* ```
|
|
3409
3390
|
* @category Setter
|
|
3410
3391
|
*/
|
|
3411
|
-
setSchema(tablesSchema: TablesSchema, valuesSchema?: ValuesSchema):
|
|
3392
|
+
setSchema(tablesSchema: TablesSchema, valuesSchema?: ValuesSchema): this;
|
|
3412
3393
|
|
|
3413
3394
|
/**
|
|
3414
3395
|
* The delTables method lets you remove all of the data in a Store.
|
|
@@ -3425,7 +3406,7 @@ export interface Store {
|
|
|
3425
3406
|
* ```
|
|
3426
3407
|
* @category Deleter
|
|
3427
3408
|
*/
|
|
3428
|
-
delTables():
|
|
3409
|
+
delTables(): this;
|
|
3429
3410
|
|
|
3430
3411
|
/**
|
|
3431
3412
|
* The delTable method lets you remove a single Table from the Store.
|
|
@@ -3446,7 +3427,7 @@ export interface Store {
|
|
|
3446
3427
|
* ```
|
|
3447
3428
|
* @category Deleter
|
|
3448
3429
|
*/
|
|
3449
|
-
delTable(tableId: Id):
|
|
3430
|
+
delTable(tableId: Id): this;
|
|
3450
3431
|
|
|
3451
3432
|
/**
|
|
3452
3433
|
* The delRow method lets you remove a single Row from a Table.
|
|
@@ -3469,7 +3450,7 @@ export interface Store {
|
|
|
3469
3450
|
* ```
|
|
3470
3451
|
* @category Deleter
|
|
3471
3452
|
*/
|
|
3472
|
-
delRow(tableId: Id, rowId: Id):
|
|
3453
|
+
delRow(tableId: Id, rowId: Id): this;
|
|
3473
3454
|
|
|
3474
3455
|
/**
|
|
3475
3456
|
* The delCell method lets you remove a single Cell from a Row.
|
|
@@ -3552,7 +3533,7 @@ export interface Store {
|
|
|
3552
3533
|
* ```
|
|
3553
3534
|
* @category Deleter
|
|
3554
3535
|
*/
|
|
3555
|
-
delCell(tableId: Id, rowId: Id, cellId: Id, forceDel?: boolean):
|
|
3536
|
+
delCell(tableId: Id, rowId: Id, cellId: Id, forceDel?: boolean): this;
|
|
3556
3537
|
|
|
3557
3538
|
/**
|
|
3558
3539
|
* The delValues method lets you remove all the Values from a Store.
|
|
@@ -3590,7 +3571,7 @@ export interface Store {
|
|
|
3590
3571
|
* @category Deleter
|
|
3591
3572
|
* @since v3.0.0
|
|
3592
3573
|
*/
|
|
3593
|
-
delValues():
|
|
3574
|
+
delValues(): this;
|
|
3594
3575
|
|
|
3595
3576
|
/**
|
|
3596
3577
|
* The delValue method lets you remove a single Value from a Store.
|
|
@@ -3629,7 +3610,7 @@ export interface Store {
|
|
|
3629
3610
|
* @category Deleter
|
|
3630
3611
|
* @since v3.0.0
|
|
3631
3612
|
*/
|
|
3632
|
-
delValue(valueId: Id):
|
|
3613
|
+
delValue(valueId: Id): this;
|
|
3633
3614
|
|
|
3634
3615
|
/**
|
|
3635
3616
|
* The delTablesSchema method lets you remove the TablesSchema of the Store.
|
|
@@ -3647,7 +3628,7 @@ export interface Store {
|
|
|
3647
3628
|
* ```
|
|
3648
3629
|
* @category Deleter
|
|
3649
3630
|
*/
|
|
3650
|
-
delTablesSchema():
|
|
3631
|
+
delTablesSchema(): this;
|
|
3651
3632
|
|
|
3652
3633
|
/**
|
|
3653
3634
|
* The delValuesSchema method lets you remove the ValuesSchema of the Store.
|
|
@@ -3666,7 +3647,7 @@ export interface Store {
|
|
|
3666
3647
|
* @category Deleter
|
|
3667
3648
|
* @since v3.0.0
|
|
3668
3649
|
*/
|
|
3669
|
-
delValuesSchema():
|
|
3650
|
+
delValuesSchema(): this;
|
|
3670
3651
|
|
|
3671
3652
|
/**
|
|
3672
3653
|
* The delSchema method lets you remove both the TablesSchema and ValuesSchema
|
|
@@ -3692,7 +3673,7 @@ export interface Store {
|
|
|
3692
3673
|
* @category Deleter
|
|
3693
3674
|
* @since v3.0.0
|
|
3694
3675
|
*/
|
|
3695
|
-
delSchema():
|
|
3676
|
+
delSchema(): this;
|
|
3696
3677
|
|
|
3697
3678
|
/**
|
|
3698
3679
|
* The transaction method takes a function that makes multiple mutations to
|
|
@@ -3718,10 +3699,7 @@ export interface Store {
|
|
|
3718
3699
|
*
|
|
3719
3700
|
* The second, optional parameter, `doRollback` is a DoRollback callback that
|
|
3720
3701
|
* you can use to rollback the transaction if it did not complete to your
|
|
3721
|
-
* satisfaction.
|
|
3722
|
-
* `getTransactionLog` parameters, which inform you of the net changes that
|
|
3723
|
-
* have been made during the transaction, at different levels of detail. See
|
|
3724
|
-
* the DoRollback documentation for more details.
|
|
3702
|
+
* satisfaction. See the DoRollback documentation for more details.
|
|
3725
3703
|
* @param actions The function to be executed as a transaction.
|
|
3726
3704
|
* @param doRollback An optional callback that should return `true` if you
|
|
3727
3705
|
* want to rollback the transaction at the end. Since v1.2.
|
|
@@ -3797,9 +3775,9 @@ export interface Store {
|
|
|
3797
3775
|
* .setCell('pets', 'fido', 'info', {sold: null})
|
|
3798
3776
|
* .setValue('open', false)
|
|
3799
3777
|
* .setValue('employees', ['alice', 'bob']),
|
|
3800
|
-
* (
|
|
3801
|
-
* const
|
|
3802
|
-
* getTransactionLog();
|
|
3778
|
+
* () => {
|
|
3779
|
+
* const [, , changedCells, invalidCells, changedValues, invalidValues] =
|
|
3780
|
+
* store.getTransactionLog();
|
|
3803
3781
|
* console.log(store.getTables());
|
|
3804
3782
|
* console.log(changedCells);
|
|
3805
3783
|
* console.log(invalidCells);
|
|
@@ -3871,7 +3849,82 @@ export interface Store {
|
|
|
3871
3849
|
* @category Transaction
|
|
3872
3850
|
* @since v1.3.0
|
|
3873
3851
|
*/
|
|
3874
|
-
startTransaction():
|
|
3852
|
+
startTransaction(): this;
|
|
3853
|
+
|
|
3854
|
+
/**
|
|
3855
|
+
* The getTransactionChanges method returns the net meaningful changes that
|
|
3856
|
+
* have been made to a Store during a transaction.
|
|
3857
|
+
*
|
|
3858
|
+
* This is useful for deciding whether to rollback a transaction, for example.
|
|
3859
|
+
* The returned object is only meaningful if the method is called when the
|
|
3860
|
+
* Store is in a transaction - such as in a TransactionListener.
|
|
3861
|
+
* @example
|
|
3862
|
+
* This example makes changes to the Store. At the end of the transaction,
|
|
3863
|
+
* detail about what changed is enumerated.
|
|
3864
|
+
*
|
|
3865
|
+
* ```js
|
|
3866
|
+
* const store = createStore()
|
|
3867
|
+
* .setTables({pets: {fido: {species: 'dog', color: 'brown'}}})
|
|
3868
|
+
* .setValues({open: true});
|
|
3869
|
+
*
|
|
3870
|
+
* store
|
|
3871
|
+
* .startTransaction()
|
|
3872
|
+
* .setCell('pets', 'fido', 'color', 'black')
|
|
3873
|
+
* .setValue('open', false)
|
|
3874
|
+
* .finishTransaction(() => {
|
|
3875
|
+
* const [changedCells, changedValues] = store.getTransactionChanges();
|
|
3876
|
+
* console.log(changedCells);
|
|
3877
|
+
* console.log(changedValues);
|
|
3878
|
+
* });
|
|
3879
|
+
* // -> {pets: {fido: {color: 'black'}}}
|
|
3880
|
+
* // -> {open: false}
|
|
3881
|
+
* ```
|
|
3882
|
+
* @category Transaction
|
|
3883
|
+
* @since v5.0.0
|
|
3884
|
+
*/
|
|
3885
|
+
getTransactionChanges(): Changes;
|
|
3886
|
+
|
|
3887
|
+
/**
|
|
3888
|
+
* The getTransactionLog method returns the changes that were made to a Store
|
|
3889
|
+
* during a transaction in more detail, including invalid changes, and what
|
|
3890
|
+
* previous values were.
|
|
3891
|
+
*
|
|
3892
|
+
* This is useful for deciding whether to rollback a transaction, for example.
|
|
3893
|
+
* The returned object is only meaningful if the method is called when the
|
|
3894
|
+
* Store is in a transaction - such as in a TransactionListener.
|
|
3895
|
+
* @example
|
|
3896
|
+
* This example makes changes to the Store. At the end of the transaction,
|
|
3897
|
+
* detail about what changed is enumerated.
|
|
3898
|
+
*
|
|
3899
|
+
* ```js
|
|
3900
|
+
* const store = createStore()
|
|
3901
|
+
* .setTables({pets: {fido: {species: 'dog', color: 'brown'}}})
|
|
3902
|
+
* .setValues({open: true});
|
|
3903
|
+
*
|
|
3904
|
+
* store
|
|
3905
|
+
* .startTransaction()
|
|
3906
|
+
* .setCell('pets', 'fido', 'color', 'black')
|
|
3907
|
+
* .setCell('pets', 'fido', 'eyes', ['left', 'right'])
|
|
3908
|
+
* .setCell('pets', 'fido', 'info', {sold: null})
|
|
3909
|
+
* .setValue('open', false)
|
|
3910
|
+
* .setValue('employees', ['alice', 'bob'])
|
|
3911
|
+
* .finishTransaction(() => {
|
|
3912
|
+
* const [, , changedCells, invalidCells, changedValues, invalidValues] =
|
|
3913
|
+
* store.getTransactionLog();
|
|
3914
|
+
* console.log(changedCells);
|
|
3915
|
+
* console.log(invalidCells);
|
|
3916
|
+
* console.log(changedValues);
|
|
3917
|
+
* console.log(invalidValues);
|
|
3918
|
+
* });
|
|
3919
|
+
* // -> {pets: {fido: {color: ['brown', 'black']}}}
|
|
3920
|
+
* // -> {pets: {fido: {eyes: [['left', 'right']], info: [{sold: null}]}}}
|
|
3921
|
+
* // -> {open: [true, false]}
|
|
3922
|
+
* // -> {employees: [['alice', 'bob']]}
|
|
3923
|
+
* ```
|
|
3924
|
+
* @category Transaction
|
|
3925
|
+
* @since v5.0.0
|
|
3926
|
+
*/
|
|
3927
|
+
getTransactionLog(): TransactionLog;
|
|
3875
3928
|
|
|
3876
3929
|
/**
|
|
3877
3930
|
* The finishTransaction method allows you to explicitly finish a transaction
|
|
@@ -3944,9 +3997,9 @@ export interface Store {
|
|
|
3944
3997
|
* .setCell('pets', 'fido', 'info', {sold: null})
|
|
3945
3998
|
* .setValue('open', false)
|
|
3946
3999
|
* .setValue('employees', ['alice', 'bob'])
|
|
3947
|
-
* .finishTransaction((
|
|
3948
|
-
* const
|
|
3949
|
-
* getTransactionLog();
|
|
4000
|
+
* .finishTransaction(() => {
|
|
4001
|
+
* const [, , changedCells, invalidCells, changedValues, invalidValues] =
|
|
4002
|
+
* store.getTransactionLog();
|
|
3950
4003
|
* console.log(store.getTables());
|
|
3951
4004
|
* console.log(changedCells);
|
|
3952
4005
|
* console.log(invalidCells);
|
|
@@ -3968,7 +4021,7 @@ export interface Store {
|
|
|
3968
4021
|
* @category Transaction
|
|
3969
4022
|
* @since v1.3.0
|
|
3970
4023
|
*/
|
|
3971
|
-
finishTransaction(doRollback?: DoRollback):
|
|
4024
|
+
finishTransaction(doRollback?: DoRollback): this;
|
|
3972
4025
|
|
|
3973
4026
|
/**
|
|
3974
4027
|
* The forEachTable method takes a function that it will then call for each
|
|
@@ -4179,7 +4232,10 @@ export interface Store {
|
|
|
4179
4232
|
* @category Listener
|
|
4180
4233
|
* @since v4.4.0
|
|
4181
4234
|
*/
|
|
4182
|
-
addHasTablesListener(
|
|
4235
|
+
addHasTablesListener(
|
|
4236
|
+
listener: HasTablesListener<this>,
|
|
4237
|
+
mutator?: boolean,
|
|
4238
|
+
): Id;
|
|
4183
4239
|
|
|
4184
4240
|
/**
|
|
4185
4241
|
* The addTablesListener method registers a listener function with the Store
|
|
@@ -4242,7 +4298,7 @@ export interface Store {
|
|
|
4242
4298
|
* ```
|
|
4243
4299
|
* @category Listener
|
|
4244
4300
|
*/
|
|
4245
|
-
addTablesListener(listener: TablesListener
|
|
4301
|
+
addTablesListener(listener: TablesListener<this>, mutator?: boolean): Id;
|
|
4246
4302
|
|
|
4247
4303
|
/**
|
|
4248
4304
|
* The addTableIdsListener method registers a listener function with the Store
|
|
@@ -4304,7 +4360,7 @@ export interface Store {
|
|
|
4304
4360
|
* ```
|
|
4305
4361
|
* @category Listener
|
|
4306
4362
|
*/
|
|
4307
|
-
addTableIdsListener(listener: TableIdsListener
|
|
4363
|
+
addTableIdsListener(listener: TableIdsListener<this>, mutator?: boolean): Id;
|
|
4308
4364
|
|
|
4309
4365
|
/**
|
|
4310
4366
|
* The addHasTableListener method registers a listener function with the Store
|
|
@@ -4403,7 +4459,7 @@ export interface Store {
|
|
|
4403
4459
|
*/
|
|
4404
4460
|
addHasTableListener(
|
|
4405
4461
|
tableId: IdOrNull,
|
|
4406
|
-
listener: HasTableListener
|
|
4462
|
+
listener: HasTableListener<this>,
|
|
4407
4463
|
mutator?: boolean,
|
|
4408
4464
|
): Id;
|
|
4409
4465
|
|
|
@@ -4499,7 +4555,7 @@ export interface Store {
|
|
|
4499
4555
|
*/
|
|
4500
4556
|
addTableListener(
|
|
4501
4557
|
tableId: IdOrNull,
|
|
4502
|
-
listener: TableListener
|
|
4558
|
+
listener: TableListener<this>,
|
|
4503
4559
|
mutator?: boolean,
|
|
4504
4560
|
): Id;
|
|
4505
4561
|
|
|
@@ -4603,7 +4659,7 @@ export interface Store {
|
|
|
4603
4659
|
*/
|
|
4604
4660
|
addTableCellIdsListener(
|
|
4605
4661
|
tableId: IdOrNull,
|
|
4606
|
-
listener: TableCellIdsListener
|
|
4662
|
+
listener: TableCellIdsListener<this>,
|
|
4607
4663
|
mutator?: boolean,
|
|
4608
4664
|
): Id;
|
|
4609
4665
|
|
|
@@ -4722,7 +4778,7 @@ export interface Store {
|
|
|
4722
4778
|
addHasTableCellListener(
|
|
4723
4779
|
tableId: IdOrNull,
|
|
4724
4780
|
cellId: IdOrNull,
|
|
4725
|
-
listener: HasTableCellListener
|
|
4781
|
+
listener: HasTableCellListener<this>,
|
|
4726
4782
|
mutator?: boolean,
|
|
4727
4783
|
): Id;
|
|
4728
4784
|
|
|
@@ -4815,7 +4871,7 @@ export interface Store {
|
|
|
4815
4871
|
*/
|
|
4816
4872
|
addRowCountListener(
|
|
4817
4873
|
tableId: IdOrNull,
|
|
4818
|
-
listener: RowCountListener
|
|
4874
|
+
listener: RowCountListener<this>,
|
|
4819
4875
|
mutator?: boolean,
|
|
4820
4876
|
): Id;
|
|
4821
4877
|
|
|
@@ -4906,7 +4962,7 @@ export interface Store {
|
|
|
4906
4962
|
*/
|
|
4907
4963
|
addRowIdsListener(
|
|
4908
4964
|
tableId: IdOrNull,
|
|
4909
|
-
listener: RowIdsListener
|
|
4965
|
+
listener: RowIdsListener<this>,
|
|
4910
4966
|
mutator?: boolean,
|
|
4911
4967
|
): Id;
|
|
4912
4968
|
|
|
@@ -5131,7 +5187,7 @@ export interface Store {
|
|
|
5131
5187
|
descending: boolean,
|
|
5132
5188
|
offset: number,
|
|
5133
5189
|
limit: number | undefined,
|
|
5134
|
-
listener: SortedRowIdsListener
|
|
5190
|
+
listener: SortedRowIdsListener<this>,
|
|
5135
5191
|
mutator?: boolean,
|
|
5136
5192
|
): Id;
|
|
5137
5193
|
|
|
@@ -5248,7 +5304,7 @@ export interface Store {
|
|
|
5248
5304
|
addHasRowListener(
|
|
5249
5305
|
tableId: IdOrNull,
|
|
5250
5306
|
rowId: IdOrNull,
|
|
5251
|
-
listener: HasRowListener
|
|
5307
|
+
listener: HasRowListener<this>,
|
|
5252
5308
|
mutator?: boolean,
|
|
5253
5309
|
): Id;
|
|
5254
5310
|
|
|
@@ -5357,7 +5413,7 @@ export interface Store {
|
|
|
5357
5413
|
addRowListener(
|
|
5358
5414
|
tableId: IdOrNull,
|
|
5359
5415
|
rowId: IdOrNull,
|
|
5360
|
-
listener: RowListener
|
|
5416
|
+
listener: RowListener<this>,
|
|
5361
5417
|
mutator?: boolean,
|
|
5362
5418
|
): Id;
|
|
5363
5419
|
|
|
@@ -5462,7 +5518,7 @@ export interface Store {
|
|
|
5462
5518
|
addCellIdsListener(
|
|
5463
5519
|
tableId: IdOrNull,
|
|
5464
5520
|
rowId: IdOrNull,
|
|
5465
|
-
listener: CellIdsListener
|
|
5521
|
+
listener: CellIdsListener<this>,
|
|
5466
5522
|
mutator?: boolean,
|
|
5467
5523
|
): Id;
|
|
5468
5524
|
|
|
@@ -5586,7 +5642,7 @@ export interface Store {
|
|
|
5586
5642
|
tableId: IdOrNull,
|
|
5587
5643
|
rowId: IdOrNull,
|
|
5588
5644
|
cellId: IdOrNull,
|
|
5589
|
-
listener: HasCellListener
|
|
5645
|
+
listener: HasCellListener<this>,
|
|
5590
5646
|
mutator?: boolean,
|
|
5591
5647
|
): Id;
|
|
5592
5648
|
|
|
@@ -5705,7 +5761,7 @@ export interface Store {
|
|
|
5705
5761
|
tableId: IdOrNull,
|
|
5706
5762
|
rowId: IdOrNull,
|
|
5707
5763
|
cellId: IdOrNull,
|
|
5708
|
-
listener: CellListener
|
|
5764
|
+
listener: CellListener<this>,
|
|
5709
5765
|
mutator?: boolean,
|
|
5710
5766
|
): Id;
|
|
5711
5767
|
|
|
@@ -5770,7 +5826,10 @@ export interface Store {
|
|
|
5770
5826
|
* @category Listener
|
|
5771
5827
|
* @since v4.4.0
|
|
5772
5828
|
*/
|
|
5773
|
-
addHasValuesListener(
|
|
5829
|
+
addHasValuesListener(
|
|
5830
|
+
listener: HasValuesListener<this>,
|
|
5831
|
+
mutator?: boolean,
|
|
5832
|
+
): Id;
|
|
5774
5833
|
|
|
5775
5834
|
/**
|
|
5776
5835
|
* The addValuesListener method registers a listener function with the Store
|
|
@@ -5830,7 +5889,7 @@ export interface Store {
|
|
|
5830
5889
|
* @category Listener
|
|
5831
5890
|
* @since v3.0.0
|
|
5832
5891
|
*/
|
|
5833
|
-
addValuesListener(listener: ValuesListener
|
|
5892
|
+
addValuesListener(listener: ValuesListener<this>, mutator?: boolean): Id;
|
|
5834
5893
|
|
|
5835
5894
|
/**
|
|
5836
5895
|
* The addValueIdsListener method registers a listener function with the Store
|
|
@@ -5893,7 +5952,7 @@ export interface Store {
|
|
|
5893
5952
|
* @category Listener
|
|
5894
5953
|
* @since v3.0.0
|
|
5895
5954
|
*/
|
|
5896
|
-
addValueIdsListener(listener: ValueIdsListener
|
|
5955
|
+
addValueIdsListener(listener: ValueIdsListener<this>, mutator?: boolean): Id;
|
|
5897
5956
|
|
|
5898
5957
|
/**
|
|
5899
5958
|
* The addHasValueListener method registers a listener function with the Store
|
|
@@ -5986,7 +6045,7 @@ export interface Store {
|
|
|
5986
6045
|
*/
|
|
5987
6046
|
addHasValueListener(
|
|
5988
6047
|
valueId: IdOrNull,
|
|
5989
|
-
listener: HasValueListener
|
|
6048
|
+
listener: HasValueListener<this>,
|
|
5990
6049
|
mutator?: boolean,
|
|
5991
6050
|
): Id;
|
|
5992
6051
|
|
|
@@ -6078,7 +6137,7 @@ export interface Store {
|
|
|
6078
6137
|
*/
|
|
6079
6138
|
addValueListener(
|
|
6080
6139
|
valueId: IdOrNull,
|
|
6081
|
-
listener: ValueListener
|
|
6140
|
+
listener: ValueListener<this>,
|
|
6082
6141
|
mutator?: boolean,
|
|
6083
6142
|
): Id;
|
|
6084
6143
|
|
|
@@ -6308,7 +6367,7 @@ export interface Store {
|
|
|
6308
6367
|
tableId: IdOrNull,
|
|
6309
6368
|
rowId: IdOrNull,
|
|
6310
6369
|
cellId: IdOrNull,
|
|
6311
|
-
listener: InvalidCellListener
|
|
6370
|
+
listener: InvalidCellListener<this>,
|
|
6312
6371
|
mutator?: boolean,
|
|
6313
6372
|
): Id;
|
|
6314
6373
|
|
|
@@ -6483,7 +6542,7 @@ export interface Store {
|
|
|
6483
6542
|
*/
|
|
6484
6543
|
addInvalidValueListener(
|
|
6485
6544
|
valueId: IdOrNull,
|
|
6486
|
-
listener: InvalidValueListener
|
|
6545
|
+
listener: InvalidValueListener<this>,
|
|
6487
6546
|
mutator?: boolean,
|
|
6488
6547
|
): Id;
|
|
6489
6548
|
|
|
@@ -6531,7 +6590,7 @@ export interface Store {
|
|
|
6531
6590
|
* @category Listener
|
|
6532
6591
|
* @since v3.2.0
|
|
6533
6592
|
*/
|
|
6534
|
-
addStartTransactionListener(listener: TransactionListener): Id;
|
|
6593
|
+
addStartTransactionListener(listener: TransactionListener<this>): Id;
|
|
6535
6594
|
|
|
6536
6595
|
/**
|
|
6537
6596
|
* The addWillFinishTransactionListener method registers a listener function
|
|
@@ -6572,12 +6631,10 @@ export interface Store {
|
|
|
6572
6631
|
* pets: {fido: {species: 'dog', color: 'brown'}},
|
|
6573
6632
|
* })
|
|
6574
6633
|
* .setValues({open: true, employees: 3});
|
|
6575
|
-
* const listenerId = store.addWillFinishTransactionListener(
|
|
6576
|
-
*
|
|
6577
|
-
*
|
|
6578
|
-
*
|
|
6579
|
-
* },
|
|
6580
|
-
* );
|
|
6634
|
+
* const listenerId = store.addWillFinishTransactionListener((store) => {
|
|
6635
|
+
* const [cellsTouched, valuesTouched] = store.getTransactionLog() ?? {};
|
|
6636
|
+
* console.log(`Cells/Values touched: ${cellsTouched}/${valuesTouched}`);
|
|
6637
|
+
* });
|
|
6581
6638
|
* const listenerId2 = store.addTablesListener(() =>
|
|
6582
6639
|
* console.log('Tables changed'),
|
|
6583
6640
|
* );
|
|
@@ -6619,7 +6676,7 @@ export interface Store {
|
|
|
6619
6676
|
* // Transaction was rolled back.
|
|
6620
6677
|
*
|
|
6621
6678
|
* store.callListener(listenerId);
|
|
6622
|
-
* // -> 'Cells/Values touched:
|
|
6679
|
+
* // -> 'Cells/Values touched: false/false'
|
|
6623
6680
|
* // It is meaningless to call this listener directly.
|
|
6624
6681
|
*
|
|
6625
6682
|
* store
|
|
@@ -6630,7 +6687,7 @@ export interface Store {
|
|
|
6630
6687
|
* @category Listener
|
|
6631
6688
|
* @since v1.3.0
|
|
6632
6689
|
*/
|
|
6633
|
-
addWillFinishTransactionListener(listener: TransactionListener): Id;
|
|
6690
|
+
addWillFinishTransactionListener(listener: TransactionListener<this>): Id;
|
|
6634
6691
|
|
|
6635
6692
|
/**
|
|
6636
6693
|
* The addDidFinishTransactionListener method registers a listener function
|
|
@@ -6670,12 +6727,10 @@ export interface Store {
|
|
|
6670
6727
|
* pets: {fido: {species: 'dog', color: 'brown'}},
|
|
6671
6728
|
* })
|
|
6672
6729
|
* .setValues({open: true, employees: 3});
|
|
6673
|
-
* const listenerId = store.addDidFinishTransactionListener(
|
|
6674
|
-
*
|
|
6675
|
-
*
|
|
6676
|
-
*
|
|
6677
|
-
* },
|
|
6678
|
-
* );
|
|
6730
|
+
* const listenerId = store.addDidFinishTransactionListener((store) => {
|
|
6731
|
+
* const [cellsTouched, valuesTouched] = store.getTransactionLog() ?? {};
|
|
6732
|
+
* console.log(`Cells/Values touched: ${cellsTouched}/${valuesTouched}`);
|
|
6733
|
+
* });
|
|
6679
6734
|
* const listenerId2 = store.addTablesListener(() =>
|
|
6680
6735
|
* console.log('Tables changed'),
|
|
6681
6736
|
* );
|
|
@@ -6717,7 +6772,7 @@ export interface Store {
|
|
|
6717
6772
|
* // Transaction was rolled back.
|
|
6718
6773
|
*
|
|
6719
6774
|
* store.callListener(listenerId);
|
|
6720
|
-
* // -> 'Cells/Values touched:
|
|
6775
|
+
* // -> 'Cells/Values touched: false/false'
|
|
6721
6776
|
* // It is meaningless to call this listener directly.
|
|
6722
6777
|
*
|
|
6723
6778
|
* store
|
|
@@ -6728,7 +6783,7 @@ export interface Store {
|
|
|
6728
6783
|
* @category Listener
|
|
6729
6784
|
* @since v1.3.0
|
|
6730
6785
|
*/
|
|
6731
|
-
addDidFinishTransactionListener(listener: TransactionListener): Id;
|
|
6786
|
+
addDidFinishTransactionListener(listener: TransactionListener<this>): Id;
|
|
6732
6787
|
|
|
6733
6788
|
/**
|
|
6734
6789
|
* The callListener method provides a way for you to manually provoke a
|
|
@@ -6844,7 +6899,7 @@ export interface Store {
|
|
|
6844
6899
|
* ```
|
|
6845
6900
|
* @category Listener
|
|
6846
6901
|
*/
|
|
6847
|
-
callListener(listenerId: Id):
|
|
6902
|
+
callListener(listenerId: Id): this;
|
|
6848
6903
|
|
|
6849
6904
|
/**
|
|
6850
6905
|
* The delListener method removes a listener that was previously added to the
|
|
@@ -6876,7 +6931,7 @@ export interface Store {
|
|
|
6876
6931
|
* ```
|
|
6877
6932
|
* @category Listener
|
|
6878
6933
|
*/
|
|
6879
|
-
delListener(listenerId: Id):
|
|
6934
|
+
delListener(listenerId: Id): this;
|
|
6880
6935
|
|
|
6881
6936
|
/**
|
|
6882
6937
|
* The getListenerStats method provides a set of statistics about the
|