tinybase 4.1.0-beta.1 → 4.1.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/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/metrics.cjs +1 -1
- package/lib/cjs/metrics.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-file.cjs +1 -1
- package/lib/cjs/persisters/persister-file.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/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.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/metrics.cjs +1 -1
- package/lib/cjs-es6/metrics.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-file.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-file.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/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.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 +6 -6
- package/lib/debug/indexes.js +7 -7
- package/lib/debug/metrics.js +12 -12
- package/lib/debug/persisters/persister-browser.js +10 -19
- package/lib/debug/persisters/persister-cr-sqlite-wasm.js +6 -15
- package/lib/debug/persisters/persister-file.js +10 -19
- package/lib/debug/persisters/persister-remote.js +10 -19
- package/lib/debug/persisters/persister-sqlite-wasm.js +6 -15
- package/lib/debug/persisters/persister-sqlite3.js +6 -15
- package/lib/debug/persisters.js +4 -4
- package/lib/debug/queries.js +1 -0
- package/lib/debug/relationships.js +7 -7
- package/lib/debug/store.js +16 -24
- package/lib/debug/tinybase.js +21 -28
- package/lib/debug/tools.js +14 -13
- package/lib/debug/ui-react-dom.js +253 -33
- package/lib/debug/ui-react.js +26 -4
- 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/metrics.js +1 -1
- package/lib/es6/metrics.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-file.js +1 -1
- package/lib/es6/persisters/persister-file.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/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.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/metrics.js +1 -1
- package/lib/metrics.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-file.js +1 -1
- package/lib/persisters/persister-file.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/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/queries.d.ts +167 -0
- package/lib/types/ui-react-dom.d.ts +568 -70
- package/lib/types/ui-react.d.ts +269 -58
- package/lib/types/with-schemas/internal/ui-react.d.ts +32 -22
- package/lib/types/with-schemas/queries.d.ts +185 -0
- package/lib/types/with-schemas/ui-react-dom.d.ts +647 -93
- package/lib/types/with-schemas/ui-react.d.ts +281 -50
- 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/metrics.js +1 -1
- package/lib/umd/metrics.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-file.js +1 -1
- package/lib/umd/persisters/persister-file.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/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.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/metrics.js +1 -1
- package/lib/umd-es6/metrics.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-file.js +1 -1
- package/lib/umd-es6/persisters/persister-file.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/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.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 +17 -17
- package/readme.md +2 -2
package/lib/types/queries.d.ts
CHANGED
|
@@ -264,6 +264,28 @@ export type ResultTableListener = (
|
|
|
264
264
|
getCellChange: GetCellResultChange,
|
|
265
265
|
) => void;
|
|
266
266
|
|
|
267
|
+
/**
|
|
268
|
+
* The ResultTableCellIdsListener type describes a function that is used to
|
|
269
|
+
* listen to changes to the Cell Ids that appear anywhere in a query's
|
|
270
|
+
* ResultTable.
|
|
271
|
+
*
|
|
272
|
+
* A ResultTableCellIdsListener is provided when using the
|
|
273
|
+
* addResultTableCellIdsListener method. See that method for specific examples.
|
|
274
|
+
*
|
|
275
|
+
* When called, a ResultTableCellIdsListener is given a reference to the Queries
|
|
276
|
+
* object, and the Id of the ResultTable whose Cell Ids changed (which is the
|
|
277
|
+
* same as the query Id).
|
|
278
|
+
* @param queries A reference to the Queries object that changed.
|
|
279
|
+
* @param tableId The Id of the ResultTable that changed, which is also the
|
|
280
|
+
* query Id.
|
|
281
|
+
* @category Listener
|
|
282
|
+
* @since v4.1.0
|
|
283
|
+
*/
|
|
284
|
+
export type ResultTableCellIdsListener = (
|
|
285
|
+
queries: Queries,
|
|
286
|
+
tableId: Id,
|
|
287
|
+
) => void;
|
|
288
|
+
|
|
267
289
|
/**
|
|
268
290
|
* The ResultRowIdsListener type describes a function that is used to listen to
|
|
269
291
|
* changes to the ResultRow Ids in a query's ResultTable.
|
|
@@ -1843,6 +1865,51 @@ export interface Queries {
|
|
|
1843
1865
|
*/
|
|
1844
1866
|
getResultTable(queryId: Id): ResultTable;
|
|
1845
1867
|
|
|
1868
|
+
/**
|
|
1869
|
+
* The getResultTableCellIds method returns the Ids of every ResultCell used
|
|
1870
|
+
* across the ResultTable of the given query.
|
|
1871
|
+
*
|
|
1872
|
+
* This has the same behavior as a Store's getTableCellIds method. For
|
|
1873
|
+
* example, if the query Id is invalid, the method returns an empty array.
|
|
1874
|
+
* Similarly, it returns a copy of, rather than a reference to the list of
|
|
1875
|
+
* Ids, so changes made to the list object are not made to the query results
|
|
1876
|
+
* themselves.
|
|
1877
|
+
* @param queryId The Id of a query.
|
|
1878
|
+
* @returns An array of the Ids of every ResultCell used across the
|
|
1879
|
+
* ResultTable of the query.
|
|
1880
|
+
* @example
|
|
1881
|
+
* This example creates a Queries object, a single query definition, and then
|
|
1882
|
+
* calls this method on it (as well as a non-existent definition) to get the
|
|
1883
|
+
* ResultCell Ids.
|
|
1884
|
+
*
|
|
1885
|
+
* ```js
|
|
1886
|
+
* const store = createStore().setTable('pets', {
|
|
1887
|
+
* fido: {species: 'dog', color: 'brown'},
|
|
1888
|
+
* felix: {species: 'cat', color: 'black'},
|
|
1889
|
+
* cujo: {species: 'dog', color: 'black', legs: 4},
|
|
1890
|
+
* });
|
|
1891
|
+
*
|
|
1892
|
+
* const queries = createQueries(store).setQueryDefinition(
|
|
1893
|
+
* 'dogColors',
|
|
1894
|
+
* 'pets',
|
|
1895
|
+
* ({select, where}) => {
|
|
1896
|
+
* select('color');
|
|
1897
|
+
* select('legs');
|
|
1898
|
+
* where('species', 'dog');
|
|
1899
|
+
* },
|
|
1900
|
+
* );
|
|
1901
|
+
*
|
|
1902
|
+
* console.log(queries.getResultTableCellIds('dogColors'));
|
|
1903
|
+
* // -> ['color', 'legs']
|
|
1904
|
+
*
|
|
1905
|
+
* console.log(queries.getResultTableCellIds('catColors'));
|
|
1906
|
+
* // -> []
|
|
1907
|
+
* ```
|
|
1908
|
+
* @category Result
|
|
1909
|
+
* @since v4.1.0
|
|
1910
|
+
*/
|
|
1911
|
+
getResultTableCellIds(queryId: Id): Ids;
|
|
1912
|
+
|
|
1846
1913
|
/**
|
|
1847
1914
|
* The getResultRowIds method returns the Ids of every ResultRow in the
|
|
1848
1915
|
* ResultTable of the given query.
|
|
@@ -2416,6 +2483,106 @@ export interface Queries {
|
|
|
2416
2483
|
*/
|
|
2417
2484
|
addResultTableListener(queryId: IdOrNull, listener: ResultTableListener): Id;
|
|
2418
2485
|
|
|
2486
|
+
/**
|
|
2487
|
+
* The addResultTableCellIdsListener method registers a listener function with
|
|
2488
|
+
* the Queries object that will be called whenever the Cell Ids that
|
|
2489
|
+
* appear anywhere in a ResultTable change.
|
|
2490
|
+
*
|
|
2491
|
+
* The provided listener is a ResultTableCellIdsListener function, and will be
|
|
2492
|
+
* called with a reference to the Queries object and the Id of the ResultTable
|
|
2493
|
+
* that changed (which is also the query Id).
|
|
2494
|
+
*
|
|
2495
|
+
* By default, such a listener is only called when a Cell Id is added
|
|
2496
|
+
* to, or removed from, the ResultTable. To listen to all changes in the
|
|
2497
|
+
* ResultTable, use the addResultTableListener method.
|
|
2498
|
+
*
|
|
2499
|
+
* You can either listen to a single ResultTable (by specifying a query Id as
|
|
2500
|
+
* the method's first parameter) or changes to any ResultTable (by providing a
|
|
2501
|
+
* `null` wildcard).
|
|
2502
|
+
* @param queryId The Id of the query to listen to, or `null` as a wildcard.
|
|
2503
|
+
* @param listener The function that will be called whenever the Cell
|
|
2504
|
+
* Ids that appear anywhere in the ResultTable change.
|
|
2505
|
+
* @returns A unique Id for the listener that can later be used to remove it.
|
|
2506
|
+
* @example
|
|
2507
|
+
* This example registers a listener that responds to any change to the
|
|
2508
|
+
* Cell Ids of a specific ResultTable.
|
|
2509
|
+
*
|
|
2510
|
+
* ```js
|
|
2511
|
+
* const store = createStore().setTable('pets', {
|
|
2512
|
+
* fido: {species: 'dog', color: 'brown'},
|
|
2513
|
+
* felix: {species: 'cat', color: 'black'},
|
|
2514
|
+
* cujo: {species: 'dog', color: 'black'},
|
|
2515
|
+
* });
|
|
2516
|
+
*
|
|
2517
|
+
* const queries = createQueries(store).setQueryDefinition(
|
|
2518
|
+
* 'dogColorsAndLegs',
|
|
2519
|
+
* 'pets',
|
|
2520
|
+
* ({select, where}) => {
|
|
2521
|
+
* select('color');
|
|
2522
|
+
* select('legs');
|
|
2523
|
+
* where('species', 'dog');
|
|
2524
|
+
* },
|
|
2525
|
+
* );
|
|
2526
|
+
*
|
|
2527
|
+
* const listenerId = queries.addResultTableCellIdsListener(
|
|
2528
|
+
* 'dogColorsAndLegs',
|
|
2529
|
+
* (queries, tableId) => {
|
|
2530
|
+
* console.log(`Cell Ids for dogColorsAndLegs result table changed`);
|
|
2531
|
+
* console.log(queries.getResultTableCellIds('dogColorsAndLegs'));
|
|
2532
|
+
* },
|
|
2533
|
+
* );
|
|
2534
|
+
*
|
|
2535
|
+
* store.setCell('pets', 'cujo', 'legs', 4);
|
|
2536
|
+
* // -> 'Cell Ids for dogColorsAndLegs result table changed'
|
|
2537
|
+
* // -> ['color', 'legs']
|
|
2538
|
+
*
|
|
2539
|
+
* store.delListener(listenerId);
|
|
2540
|
+
* ```
|
|
2541
|
+
* @example
|
|
2542
|
+
* This example registers a listener that responds to any change to the
|
|
2543
|
+
* ResultCell Ids of any ResultTable.
|
|
2544
|
+
*
|
|
2545
|
+
* ```js
|
|
2546
|
+
* const store = createStore().setTable('pets', {
|
|
2547
|
+
* fido: {species: 'dog', color: 'brown'},
|
|
2548
|
+
* felix: {species: 'cat', color: 'black', legs: 4},
|
|
2549
|
+
* cujo: {species: 'dog', color: 'black'},
|
|
2550
|
+
* });
|
|
2551
|
+
*
|
|
2552
|
+
* const queries = createQueries(store)
|
|
2553
|
+
* .setQueryDefinition('dogColorsAndLegs', 'pets', ({select, where}) => {
|
|
2554
|
+
* select('color');
|
|
2555
|
+
* select('legs');
|
|
2556
|
+
* where('species', 'dog');
|
|
2557
|
+
* })
|
|
2558
|
+
* .setQueryDefinition('catColorsAndLegs', 'pets', ({select, where}) => {
|
|
2559
|
+
* select('color');
|
|
2560
|
+
* select('legs');
|
|
2561
|
+
* where('species', 'cat');
|
|
2562
|
+
* });
|
|
2563
|
+
*
|
|
2564
|
+
* const listenerId = queries.addResultTableCellIdsListener(
|
|
2565
|
+
* null,
|
|
2566
|
+
* (queries, tableId) => {
|
|
2567
|
+
* console.log(`Cell Ids for ${tableId} result table changed`);
|
|
2568
|
+
* },
|
|
2569
|
+
* );
|
|
2570
|
+
*
|
|
2571
|
+
* store.setCell('pets', 'cujo', 'legs', 4);
|
|
2572
|
+
* // -> 'Cell Ids for dogColorsAndLegs result table changed'
|
|
2573
|
+
* store.delCell('pets', 'felix', 'legs');
|
|
2574
|
+
* // -> 'Cell Ids for catColorsAndLegs result table changed'
|
|
2575
|
+
*
|
|
2576
|
+
* store.delListener(listenerId);
|
|
2577
|
+
* ```
|
|
2578
|
+
* @category Listener
|
|
2579
|
+
* @since v2.0.0
|
|
2580
|
+
*/
|
|
2581
|
+
addResultTableCellIdsListener(
|
|
2582
|
+
queryId: IdOrNull,
|
|
2583
|
+
listener: ResultTableCellIdsListener,
|
|
2584
|
+
): Id;
|
|
2585
|
+
|
|
2419
2586
|
/**
|
|
2420
2587
|
* The addResultRowIdsListener method registers a listener function with the
|
|
2421
2588
|
* Queries object that will be called whenever the ResultRow Ids in a
|