@genesislcap/foundation-store 14.128.0 → 14.129.0
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/dist/dts/store/foundationStore.d.ts +25 -3
- package/dist/dts/store/foundationStore.d.ts.map +1 -1
- package/dist/esm/store/foundationStore.js +21 -5
- package/dist/foundation-store.api.json +206 -0
- package/dist/foundation-store.d.ts +25 -3
- package/docs/api/foundation-store.abstractstore.addstorefragments.md +24 -0
- package/docs/api/foundation-store.abstractstore.md +2 -0
- package/docs/api/foundation-store.abstractstore.removestorefragments.md +24 -0
- package/docs/api/foundation-store.store.addstorefragments.md +24 -0
- package/docs/api/foundation-store.store.md +2 -0
- package/docs/api/foundation-store.store.removestorefragments.md +24 -0
- package/docs/api-report.md +7 -3
- package/package.json +7 -7
|
@@ -140,6 +140,22 @@ export interface Store {
|
|
|
140
140
|
* @returns An rxjs Observable of the value.
|
|
141
141
|
*/
|
|
142
142
|
bindingAsRx<TReturn>(token?: ((store: this) => TReturn) | keyof this): RXObservable<TReturn | this>;
|
|
143
|
+
/**
|
|
144
|
+
* Lazily add store fragments.
|
|
145
|
+
*
|
|
146
|
+
* @param storeFragments - Store fragments to add.
|
|
147
|
+
*
|
|
148
|
+
* @public
|
|
149
|
+
*/
|
|
150
|
+
addStoreFragments(...storeFragments: Store[]): void;
|
|
151
|
+
/**
|
|
152
|
+
* Lazily remove store fragments.
|
|
153
|
+
*
|
|
154
|
+
* @param storeFragments - Store fragments to remove.
|
|
155
|
+
*
|
|
156
|
+
* @public
|
|
157
|
+
*/
|
|
158
|
+
removeStoreFragments(...storeFragments: Store[]): void;
|
|
143
159
|
}
|
|
144
160
|
/**
|
|
145
161
|
* Root store interface.
|
|
@@ -268,11 +284,15 @@ export declare abstract class AbstractStore<TStore extends Store, TEventDetailMa
|
|
|
268
284
|
*
|
|
269
285
|
* @internal
|
|
270
286
|
*/
|
|
271
|
-
protected
|
|
287
|
+
protected storeFragments: Store[];
|
|
272
288
|
/**
|
|
273
289
|
* @param storeFragments - The child store fragments this store fragment will manage.
|
|
274
290
|
*/
|
|
275
291
|
constructor(...storeFragments: Store[]);
|
|
292
|
+
/** {@inheritDoc Store.addStoreFragments} */
|
|
293
|
+
addStoreFragments(...storeFragments: Store[]): void;
|
|
294
|
+
/** {@inheritDoc Store.removeStoreFragments} */
|
|
295
|
+
removeStoreFragments(...storeFragments: Store[]): void;
|
|
276
296
|
/**
|
|
277
297
|
* The value commit proxy handler.
|
|
278
298
|
*
|
|
@@ -327,21 +347,23 @@ export declare abstract class AbstractStore<TStore extends Store, TEventDetailMa
|
|
|
327
347
|
/**
|
|
328
348
|
* Connects the store fragment's child store fragments if any.
|
|
329
349
|
* @param root - The store root fragment.
|
|
350
|
+
* @param storeFragments - Optional store fragments. Defaults to this.storeFragments. Used for lazy add.
|
|
330
351
|
*
|
|
331
352
|
* @internal
|
|
332
353
|
* @privateRemarks
|
|
333
354
|
* We have limited the connect and disconnect apis to store root only, so we need to cast these to invoke the same.
|
|
334
355
|
*/
|
|
335
|
-
protected connectStoreFragments(root: TStoreRoot): void;
|
|
356
|
+
protected connectStoreFragments(root: TStoreRoot, storeFragments?: Store[]): void;
|
|
336
357
|
/**
|
|
337
358
|
* Disconnects the store fragment's child store fragments if any.
|
|
338
359
|
* @param root - The store root fragment.
|
|
360
|
+
* @param storeFragments - Optional store fragments. Defaults to this.storeFragments. Used for lazy remove.
|
|
339
361
|
*
|
|
340
362
|
* @internal
|
|
341
363
|
* @privateRemarks
|
|
342
364
|
* We have limited the connect and disconnect apis to store root only, so we need to cast these to invoke the same.
|
|
343
365
|
*/
|
|
344
|
-
protected disconnectStoreFragments(root: TStoreRoot): void;
|
|
366
|
+
protected disconnectStoreFragments(root: TStoreRoot, storeFragments?: Store[]): void;
|
|
345
367
|
/**
|
|
346
368
|
* Logs events.
|
|
347
369
|
* @param key - The event key from the store fragment's event detail map.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"foundationStore.d.ts","sourceRoot":"","sources":["../../../src/store/foundationStore.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AACrE,OAAO,EAAkB,QAAQ,EAAS,MAAM,+BAA+B,CAAC;AAChF,OAAO,EACL,eAAe,EACf,aAAa,EAEb,gBAAgB,EAGjB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAM,GAAG,EAAE,MAAM,4BAA4B,CAAC;AAErD,OAAO,EAAE,UAAU,IAAI,YAAY,EAAM,MAAM,MAAM,CAAC;AAItD;;;;GAIG;AACH,MAAM,MAAM,wBAAwB,CAAC,OAAO,GAAG,GAAG,IAAI,CACpD,KAAK,EAAE,OAAO,EACd,IAAI,EAAE,eAAe,KAClB,IAAI,CAAC;AAEV;;;;;;GAMG;AACH,MAAM,WAAW,KAAK;IACpB;;;;;;;OAOG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAEvB;;;;;;;;;;;;;;;;OAgBG;IACH,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,cAAc,CAAC,CAAC;IAE1C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAgDG;IACH,OAAO,CAAC,OAAO,GAAG,GAAG,EAAE,OAAO,GAAG,GAAG,EAClC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,IAAI,KAAK,OAAO,CAAC,GAAG,MAAM,IAAI,EAC9C,wBAAwB,CAAC,EAAE,wBAAwB,CAAC,OAAO,CAAC,GAAG,SAAS,EACxE,iBAAiB,CAAC,EAAE,OAAO,EAC3B,OAAO,CAAC,EAAE,gBAAgB,GACzB,eAAe,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IAE3C;;;;;;;;;;;;;OAaG;IACH,WAAW,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC;IAElC;;;;;;;;;;OAUG;IACH,WAAW,CAAC,IAAI,SAAS,MAAM,IAAI,EAAE,GAAG,EAAE,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAE1E;;;;;;;;;;OAUG;IACH,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,KAAK,EAAE,IAAI,KAAK,OAAO,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;IAE9E;;;;;OAKG;IACH,WAAW,CAAC,OAAO,EACjB,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,IAAI,KAAK,OAAO,CAAC,GAAG,MAAM,IAAI,GAC9C,YAAY,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"foundationStore.d.ts","sourceRoot":"","sources":["../../../src/store/foundationStore.ts"],"names":[],"mappings":"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"}
|
|
@@ -249,7 +249,21 @@ export class AbstractStore {
|
|
|
249
249
|
* co-exist, and be presentable to the user via the UI for further action or dismissal.
|
|
250
250
|
*/
|
|
251
251
|
this.createErrorListener = (keys, token) => this.createListenerType(EventListenerType.error, keys, token);
|
|
252
|
-
this.storeFragments = storeFragments;
|
|
252
|
+
this.storeFragments = [...this.storeFragments, ...storeFragments];
|
|
253
|
+
}
|
|
254
|
+
/** {@inheritDoc Store.addStoreFragments} */
|
|
255
|
+
addStoreFragments(...storeFragments) {
|
|
256
|
+
this.storeFragments = [...this.storeFragments, ...storeFragments];
|
|
257
|
+
if (this.root.element) {
|
|
258
|
+
this.connectStoreFragments(this.root, storeFragments);
|
|
259
|
+
}
|
|
260
|
+
}
|
|
261
|
+
/** {@inheritDoc Store.removeStoreFragments} */
|
|
262
|
+
removeStoreFragments(...storeFragments) {
|
|
263
|
+
this.storeFragments = this.storeFragments.filter((store) => !storeFragments.includes(store));
|
|
264
|
+
if (this.root.element) {
|
|
265
|
+
this.disconnectStoreFragments(this.root, storeFragments);
|
|
266
|
+
}
|
|
253
267
|
}
|
|
254
268
|
/**
|
|
255
269
|
* Alternative value commit api.
|
|
@@ -301,13 +315,14 @@ export class AbstractStore {
|
|
|
301
315
|
/**
|
|
302
316
|
* Connects the store fragment's child store fragments if any.
|
|
303
317
|
* @param root - The store root fragment.
|
|
318
|
+
* @param storeFragments - Optional store fragments. Defaults to this.storeFragments. Used for lazy add.
|
|
304
319
|
*
|
|
305
320
|
* @internal
|
|
306
321
|
* @privateRemarks
|
|
307
322
|
* We have limited the connect and disconnect apis to store root only, so we need to cast these to invoke the same.
|
|
308
323
|
*/
|
|
309
|
-
connectStoreFragments(root) {
|
|
310
|
-
|
|
324
|
+
connectStoreFragments(root, storeFragments = this.storeFragments) {
|
|
325
|
+
storeFragments.forEach((store) => {
|
|
311
326
|
const connectableStore = store;
|
|
312
327
|
connectableStore.connect(root);
|
|
313
328
|
});
|
|
@@ -315,13 +330,14 @@ export class AbstractStore {
|
|
|
315
330
|
/**
|
|
316
331
|
* Disconnects the store fragment's child store fragments if any.
|
|
317
332
|
* @param root - The store root fragment.
|
|
333
|
+
* @param storeFragments - Optional store fragments. Defaults to this.storeFragments. Used for lazy remove.
|
|
318
334
|
*
|
|
319
335
|
* @internal
|
|
320
336
|
* @privateRemarks
|
|
321
337
|
* We have limited the connect and disconnect apis to store root only, so we need to cast these to invoke the same.
|
|
322
338
|
*/
|
|
323
|
-
disconnectStoreFragments(root) {
|
|
324
|
-
|
|
339
|
+
disconnectStoreFragments(root, storeFragments = this.storeFragments) {
|
|
340
|
+
storeFragments.forEach((store) => {
|
|
325
341
|
const connectableStore = store;
|
|
326
342
|
connectableStore.disconnect(root);
|
|
327
343
|
});
|
|
@@ -333,6 +333,59 @@
|
|
|
333
333
|
}
|
|
334
334
|
]
|
|
335
335
|
},
|
|
336
|
+
{
|
|
337
|
+
"kind": "Method",
|
|
338
|
+
"canonicalReference": "@genesislcap/foundation-store!AbstractStore#addStoreFragments:member(1)",
|
|
339
|
+
"docComment": "/**\n * Lazily add store fragments.\n *\n * @param storeFragments - Store fragments to add.\n */\n",
|
|
340
|
+
"excerptTokens": [
|
|
341
|
+
{
|
|
342
|
+
"kind": "Content",
|
|
343
|
+
"text": "addStoreFragments(...storeFragments: "
|
|
344
|
+
},
|
|
345
|
+
{
|
|
346
|
+
"kind": "Reference",
|
|
347
|
+
"text": "Store",
|
|
348
|
+
"canonicalReference": "@genesislcap/foundation-store!Store:interface"
|
|
349
|
+
},
|
|
350
|
+
{
|
|
351
|
+
"kind": "Content",
|
|
352
|
+
"text": "[]"
|
|
353
|
+
},
|
|
354
|
+
{
|
|
355
|
+
"kind": "Content",
|
|
356
|
+
"text": "): "
|
|
357
|
+
},
|
|
358
|
+
{
|
|
359
|
+
"kind": "Content",
|
|
360
|
+
"text": "void"
|
|
361
|
+
},
|
|
362
|
+
{
|
|
363
|
+
"kind": "Content",
|
|
364
|
+
"text": ";"
|
|
365
|
+
}
|
|
366
|
+
],
|
|
367
|
+
"isStatic": false,
|
|
368
|
+
"returnTypeTokenRange": {
|
|
369
|
+
"startIndex": 4,
|
|
370
|
+
"endIndex": 5
|
|
371
|
+
},
|
|
372
|
+
"releaseTag": "Public",
|
|
373
|
+
"isProtected": false,
|
|
374
|
+
"overloadIndex": 1,
|
|
375
|
+
"parameters": [
|
|
376
|
+
{
|
|
377
|
+
"parameterName": "storeFragments",
|
|
378
|
+
"parameterTypeTokenRange": {
|
|
379
|
+
"startIndex": 1,
|
|
380
|
+
"endIndex": 3
|
|
381
|
+
},
|
|
382
|
+
"isOptional": false
|
|
383
|
+
}
|
|
384
|
+
],
|
|
385
|
+
"isOptional": false,
|
|
386
|
+
"isAbstract": false,
|
|
387
|
+
"name": "addStoreFragments"
|
|
388
|
+
},
|
|
336
389
|
{
|
|
337
390
|
"kind": "Method",
|
|
338
391
|
"canonicalReference": "@genesislcap/foundation-store!AbstractStore#binding:member(1)",
|
|
@@ -1294,6 +1347,59 @@
|
|
|
1294
1347
|
"isProtected": false,
|
|
1295
1348
|
"isAbstract": false
|
|
1296
1349
|
},
|
|
1350
|
+
{
|
|
1351
|
+
"kind": "Method",
|
|
1352
|
+
"canonicalReference": "@genesislcap/foundation-store!AbstractStore#removeStoreFragments:member(1)",
|
|
1353
|
+
"docComment": "/**\n * Lazily remove store fragments.\n *\n * @param storeFragments - Store fragments to remove.\n */\n",
|
|
1354
|
+
"excerptTokens": [
|
|
1355
|
+
{
|
|
1356
|
+
"kind": "Content",
|
|
1357
|
+
"text": "removeStoreFragments(...storeFragments: "
|
|
1358
|
+
},
|
|
1359
|
+
{
|
|
1360
|
+
"kind": "Reference",
|
|
1361
|
+
"text": "Store",
|
|
1362
|
+
"canonicalReference": "@genesislcap/foundation-store!Store:interface"
|
|
1363
|
+
},
|
|
1364
|
+
{
|
|
1365
|
+
"kind": "Content",
|
|
1366
|
+
"text": "[]"
|
|
1367
|
+
},
|
|
1368
|
+
{
|
|
1369
|
+
"kind": "Content",
|
|
1370
|
+
"text": "): "
|
|
1371
|
+
},
|
|
1372
|
+
{
|
|
1373
|
+
"kind": "Content",
|
|
1374
|
+
"text": "void"
|
|
1375
|
+
},
|
|
1376
|
+
{
|
|
1377
|
+
"kind": "Content",
|
|
1378
|
+
"text": ";"
|
|
1379
|
+
}
|
|
1380
|
+
],
|
|
1381
|
+
"isStatic": false,
|
|
1382
|
+
"returnTypeTokenRange": {
|
|
1383
|
+
"startIndex": 4,
|
|
1384
|
+
"endIndex": 5
|
|
1385
|
+
},
|
|
1386
|
+
"releaseTag": "Public",
|
|
1387
|
+
"isProtected": false,
|
|
1388
|
+
"overloadIndex": 1,
|
|
1389
|
+
"parameters": [
|
|
1390
|
+
{
|
|
1391
|
+
"parameterName": "storeFragments",
|
|
1392
|
+
"parameterTypeTokenRange": {
|
|
1393
|
+
"startIndex": 1,
|
|
1394
|
+
"endIndex": 3
|
|
1395
|
+
},
|
|
1396
|
+
"isOptional": false
|
|
1397
|
+
}
|
|
1398
|
+
],
|
|
1399
|
+
"isOptional": false,
|
|
1400
|
+
"isAbstract": false,
|
|
1401
|
+
"name": "removeStoreFragments"
|
|
1402
|
+
},
|
|
1297
1403
|
{
|
|
1298
1404
|
"kind": "Property",
|
|
1299
1405
|
"canonicalReference": "@genesislcap/foundation-store!AbstractStore#root:member",
|
|
@@ -1991,6 +2097,56 @@
|
|
|
1991
2097
|
"name": "Store",
|
|
1992
2098
|
"preserveMemberOrder": false,
|
|
1993
2099
|
"members": [
|
|
2100
|
+
{
|
|
2101
|
+
"kind": "MethodSignature",
|
|
2102
|
+
"canonicalReference": "@genesislcap/foundation-store!Store#addStoreFragments:member(1)",
|
|
2103
|
+
"docComment": "/**\n * Lazily add store fragments.\n *\n * @param storeFragments - Store fragments to add.\n *\n * @public\n */\n",
|
|
2104
|
+
"excerptTokens": [
|
|
2105
|
+
{
|
|
2106
|
+
"kind": "Content",
|
|
2107
|
+
"text": "addStoreFragments(...storeFragments: "
|
|
2108
|
+
},
|
|
2109
|
+
{
|
|
2110
|
+
"kind": "Reference",
|
|
2111
|
+
"text": "Store",
|
|
2112
|
+
"canonicalReference": "@genesislcap/foundation-store!Store:interface"
|
|
2113
|
+
},
|
|
2114
|
+
{
|
|
2115
|
+
"kind": "Content",
|
|
2116
|
+
"text": "[]"
|
|
2117
|
+
},
|
|
2118
|
+
{
|
|
2119
|
+
"kind": "Content",
|
|
2120
|
+
"text": "): "
|
|
2121
|
+
},
|
|
2122
|
+
{
|
|
2123
|
+
"kind": "Content",
|
|
2124
|
+
"text": "void"
|
|
2125
|
+
},
|
|
2126
|
+
{
|
|
2127
|
+
"kind": "Content",
|
|
2128
|
+
"text": ";"
|
|
2129
|
+
}
|
|
2130
|
+
],
|
|
2131
|
+
"isOptional": false,
|
|
2132
|
+
"returnTypeTokenRange": {
|
|
2133
|
+
"startIndex": 4,
|
|
2134
|
+
"endIndex": 5
|
|
2135
|
+
},
|
|
2136
|
+
"releaseTag": "Public",
|
|
2137
|
+
"overloadIndex": 1,
|
|
2138
|
+
"parameters": [
|
|
2139
|
+
{
|
|
2140
|
+
"parameterName": "storeFragments",
|
|
2141
|
+
"parameterTypeTokenRange": {
|
|
2142
|
+
"startIndex": 1,
|
|
2143
|
+
"endIndex": 3
|
|
2144
|
+
},
|
|
2145
|
+
"isOptional": false
|
|
2146
|
+
}
|
|
2147
|
+
],
|
|
2148
|
+
"name": "addStoreFragments"
|
|
2149
|
+
},
|
|
1994
2150
|
{
|
|
1995
2151
|
"kind": "MethodSignature",
|
|
1996
2152
|
"canonicalReference": "@genesislcap/foundation-store!Store#binding:member(1)",
|
|
@@ -2432,6 +2588,56 @@
|
|
|
2432
2588
|
"startIndex": 1,
|
|
2433
2589
|
"endIndex": 2
|
|
2434
2590
|
}
|
|
2591
|
+
},
|
|
2592
|
+
{
|
|
2593
|
+
"kind": "MethodSignature",
|
|
2594
|
+
"canonicalReference": "@genesislcap/foundation-store!Store#removeStoreFragments:member(1)",
|
|
2595
|
+
"docComment": "/**\n * Lazily remove store fragments.\n *\n * @param storeFragments - Store fragments to remove.\n *\n * @public\n */\n",
|
|
2596
|
+
"excerptTokens": [
|
|
2597
|
+
{
|
|
2598
|
+
"kind": "Content",
|
|
2599
|
+
"text": "removeStoreFragments(...storeFragments: "
|
|
2600
|
+
},
|
|
2601
|
+
{
|
|
2602
|
+
"kind": "Reference",
|
|
2603
|
+
"text": "Store",
|
|
2604
|
+
"canonicalReference": "@genesislcap/foundation-store!Store:interface"
|
|
2605
|
+
},
|
|
2606
|
+
{
|
|
2607
|
+
"kind": "Content",
|
|
2608
|
+
"text": "[]"
|
|
2609
|
+
},
|
|
2610
|
+
{
|
|
2611
|
+
"kind": "Content",
|
|
2612
|
+
"text": "): "
|
|
2613
|
+
},
|
|
2614
|
+
{
|
|
2615
|
+
"kind": "Content",
|
|
2616
|
+
"text": "void"
|
|
2617
|
+
},
|
|
2618
|
+
{
|
|
2619
|
+
"kind": "Content",
|
|
2620
|
+
"text": ";"
|
|
2621
|
+
}
|
|
2622
|
+
],
|
|
2623
|
+
"isOptional": false,
|
|
2624
|
+
"returnTypeTokenRange": {
|
|
2625
|
+
"startIndex": 4,
|
|
2626
|
+
"endIndex": 5
|
|
2627
|
+
},
|
|
2628
|
+
"releaseTag": "Public",
|
|
2629
|
+
"overloadIndex": 1,
|
|
2630
|
+
"parameters": [
|
|
2631
|
+
{
|
|
2632
|
+
"parameterName": "storeFragments",
|
|
2633
|
+
"parameterTypeTokenRange": {
|
|
2634
|
+
"startIndex": 1,
|
|
2635
|
+
"endIndex": 3
|
|
2636
|
+
},
|
|
2637
|
+
"isOptional": false
|
|
2638
|
+
}
|
|
2639
|
+
],
|
|
2640
|
+
"name": "removeStoreFragments"
|
|
2435
2641
|
}
|
|
2436
2642
|
],
|
|
2437
2643
|
"extendsTokenRanges": []
|
|
@@ -38,11 +38,15 @@ export declare abstract class AbstractStore<TStore extends Store, TEventDetailMa
|
|
|
38
38
|
*
|
|
39
39
|
* @internal
|
|
40
40
|
*/
|
|
41
|
-
protected
|
|
41
|
+
protected storeFragments: Store[];
|
|
42
42
|
/**
|
|
43
43
|
* @param storeFragments - The child store fragments this store fragment will manage.
|
|
44
44
|
*/
|
|
45
45
|
constructor(...storeFragments: Store[]);
|
|
46
|
+
/** {@inheritDoc Store.addStoreFragments} */
|
|
47
|
+
addStoreFragments(...storeFragments: Store[]): void;
|
|
48
|
+
/** {@inheritDoc Store.removeStoreFragments} */
|
|
49
|
+
removeStoreFragments(...storeFragments: Store[]): void;
|
|
46
50
|
/**
|
|
47
51
|
* The value commit proxy handler.
|
|
48
52
|
*
|
|
@@ -97,21 +101,23 @@ export declare abstract class AbstractStore<TStore extends Store, TEventDetailMa
|
|
|
97
101
|
/**
|
|
98
102
|
* Connects the store fragment's child store fragments if any.
|
|
99
103
|
* @param root - The store root fragment.
|
|
104
|
+
* @param storeFragments - Optional store fragments. Defaults to this.storeFragments. Used for lazy add.
|
|
100
105
|
*
|
|
101
106
|
* @internal
|
|
102
107
|
* @privateRemarks
|
|
103
108
|
* We have limited the connect and disconnect apis to store root only, so we need to cast these to invoke the same.
|
|
104
109
|
*/
|
|
105
|
-
protected connectStoreFragments(root: TStoreRoot): void;
|
|
110
|
+
protected connectStoreFragments(root: TStoreRoot, storeFragments?: Store[]): void;
|
|
106
111
|
/**
|
|
107
112
|
* Disconnects the store fragment's child store fragments if any.
|
|
108
113
|
* @param root - The store root fragment.
|
|
114
|
+
* @param storeFragments - Optional store fragments. Defaults to this.storeFragments. Used for lazy remove.
|
|
109
115
|
*
|
|
110
116
|
* @internal
|
|
111
117
|
* @privateRemarks
|
|
112
118
|
* We have limited the connect and disconnect apis to store root only, so we need to cast these to invoke the same.
|
|
113
119
|
*/
|
|
114
|
-
protected disconnectStoreFragments(root: TStoreRoot): void;
|
|
120
|
+
protected disconnectStoreFragments(root: TStoreRoot, storeFragments?: Store[]): void;
|
|
115
121
|
/**
|
|
116
122
|
* Logs events.
|
|
117
123
|
* @param key - The event key from the store fragment's event detail map.
|
|
@@ -519,6 +525,22 @@ export declare interface Store {
|
|
|
519
525
|
* @returns An rxjs Observable of the value.
|
|
520
526
|
*/
|
|
521
527
|
bindingAsRx<TReturn>(token?: ((store: this) => TReturn) | keyof this): Observable<TReturn | this>;
|
|
528
|
+
/**
|
|
529
|
+
* Lazily add store fragments.
|
|
530
|
+
*
|
|
531
|
+
* @param storeFragments - Store fragments to add.
|
|
532
|
+
*
|
|
533
|
+
* @public
|
|
534
|
+
*/
|
|
535
|
+
addStoreFragments(...storeFragments: Store[]): void;
|
|
536
|
+
/**
|
|
537
|
+
* Lazily remove store fragments.
|
|
538
|
+
*
|
|
539
|
+
* @param storeFragments - Store fragments to remove.
|
|
540
|
+
*
|
|
541
|
+
* @public
|
|
542
|
+
*/
|
|
543
|
+
removeStoreFragments(...storeFragments: Store[]): void;
|
|
522
544
|
}
|
|
523
545
|
|
|
524
546
|
/**
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
|
2
|
+
|
|
3
|
+
[Home](./index.md) > [@genesislcap/foundation-store](./foundation-store.md) > [AbstractStore](./foundation-store.abstractstore.md) > [addStoreFragments](./foundation-store.abstractstore.addstorefragments.md)
|
|
4
|
+
|
|
5
|
+
## AbstractStore.addStoreFragments() method
|
|
6
|
+
|
|
7
|
+
Lazily add store fragments.
|
|
8
|
+
|
|
9
|
+
**Signature:**
|
|
10
|
+
|
|
11
|
+
```typescript
|
|
12
|
+
addStoreFragments(...storeFragments: Store[]): void;
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## Parameters
|
|
16
|
+
|
|
17
|
+
| Parameter | Type | Description |
|
|
18
|
+
| --- | --- | --- |
|
|
19
|
+
| storeFragments | [Store](./foundation-store.store.md)<!-- -->\[\] | Store fragments to add. |
|
|
20
|
+
|
|
21
|
+
**Returns:**
|
|
22
|
+
|
|
23
|
+
void
|
|
24
|
+
|
|
@@ -35,6 +35,7 @@ export declare abstract class AbstractStore<TStore extends Store, TEventDetailMa
|
|
|
35
35
|
|
|
36
36
|
| Method | Modifiers | Description |
|
|
37
37
|
| --- | --- | --- |
|
|
38
|
+
| [addStoreFragments(storeFragments)](./foundation-store.abstractstore.addstorefragments.md) | | Lazily add store fragments. |
|
|
38
39
|
| [binding(token, subscriberChangeCallback, isVolatileBinding, context)](./foundation-store.abstractstore.binding.md) | | An api to allow the observation of values and arbitrary bindings outside the template engine. |
|
|
39
40
|
| [bindingAsRx()](./foundation-store.abstractstore.bindingasrx.md) | | |
|
|
40
41
|
| [bindingAsRx(key)](./foundation-store.abstractstore.bindingasrx_1.md) | | |
|
|
@@ -44,4 +45,5 @@ export declare abstract class AbstractStore<TStore extends Store, TEventDetailMa
|
|
|
44
45
|
| [disconnect(root)](./foundation-store.abstractstore.disconnect.md) | | Disconnects this store fragment. |
|
|
45
46
|
| [emit(args)](./foundation-store.abstractstore.emit.md) | <code>protected</code> | Emit events to the stores directly via the standard event flow. |
|
|
46
47
|
| [invokeAsyncAPI(api, error, success)](./foundation-store.abstractstore.invokeasyncapi.md) | <code>protected</code> | A convenience method to invoke an async api and emit success and error events. |
|
|
48
|
+
| [removeStoreFragments(storeFragments)](./foundation-store.abstractstore.removestorefragments.md) | | Lazily remove store fragments. |
|
|
47
49
|
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
|
2
|
+
|
|
3
|
+
[Home](./index.md) > [@genesislcap/foundation-store](./foundation-store.md) > [AbstractStore](./foundation-store.abstractstore.md) > [removeStoreFragments](./foundation-store.abstractstore.removestorefragments.md)
|
|
4
|
+
|
|
5
|
+
## AbstractStore.removeStoreFragments() method
|
|
6
|
+
|
|
7
|
+
Lazily remove store fragments.
|
|
8
|
+
|
|
9
|
+
**Signature:**
|
|
10
|
+
|
|
11
|
+
```typescript
|
|
12
|
+
removeStoreFragments(...storeFragments: Store[]): void;
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## Parameters
|
|
16
|
+
|
|
17
|
+
| Parameter | Type | Description |
|
|
18
|
+
| --- | --- | --- |
|
|
19
|
+
| storeFragments | [Store](./foundation-store.store.md)<!-- -->\[\] | Store fragments to remove. |
|
|
20
|
+
|
|
21
|
+
**Returns:**
|
|
22
|
+
|
|
23
|
+
void
|
|
24
|
+
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
|
2
|
+
|
|
3
|
+
[Home](./index.md) > [@genesislcap/foundation-store](./foundation-store.md) > [Store](./foundation-store.store.md) > [addStoreFragments](./foundation-store.store.addstorefragments.md)
|
|
4
|
+
|
|
5
|
+
## Store.addStoreFragments() method
|
|
6
|
+
|
|
7
|
+
Lazily add store fragments.
|
|
8
|
+
|
|
9
|
+
**Signature:**
|
|
10
|
+
|
|
11
|
+
```typescript
|
|
12
|
+
addStoreFragments(...storeFragments: Store[]): void;
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## Parameters
|
|
16
|
+
|
|
17
|
+
| Parameter | Type | Description |
|
|
18
|
+
| --- | --- | --- |
|
|
19
|
+
| storeFragments | [Store](./foundation-store.store.md)<!-- -->\[\] | Store fragments to add. |
|
|
20
|
+
|
|
21
|
+
**Returns:**
|
|
22
|
+
|
|
23
|
+
void
|
|
24
|
+
|
|
@@ -27,9 +27,11 @@ The public interface available on the injected store fragment.
|
|
|
27
27
|
|
|
28
28
|
| Method | Description |
|
|
29
29
|
| --- | --- |
|
|
30
|
+
| [addStoreFragments(storeFragments)](./foundation-store.store.addstorefragments.md) | Lazily add store fragments. |
|
|
30
31
|
| [binding(token, subscriberChangeCallback, isVolatileBinding, context)](./foundation-store.store.binding.md) | An api to allow the observation of values and arbitrary bindings outside the template engine. |
|
|
31
32
|
| [bindingAsRx()](./foundation-store.store.bindingasrx.md) | An api to allow the observation of values and arbitrary bindings as Rx observables. |
|
|
32
33
|
| [bindingAsRx(key)](./foundation-store.store.bindingasrx_1.md) | |
|
|
33
34
|
| [bindingAsRx(getter)](./foundation-store.store.bindingasrx_2.md) | |
|
|
34
35
|
| [bindingAsRx(token)](./foundation-store.store.bindingasrx_3.md) | |
|
|
36
|
+
| [removeStoreFragments(storeFragments)](./foundation-store.store.removestorefragments.md) | Lazily remove store fragments. |
|
|
35
37
|
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
|
2
|
+
|
|
3
|
+
[Home](./index.md) > [@genesislcap/foundation-store](./foundation-store.md) > [Store](./foundation-store.store.md) > [removeStoreFragments](./foundation-store.store.removestorefragments.md)
|
|
4
|
+
|
|
5
|
+
## Store.removeStoreFragments() method
|
|
6
|
+
|
|
7
|
+
Lazily remove store fragments.
|
|
8
|
+
|
|
9
|
+
**Signature:**
|
|
10
|
+
|
|
11
|
+
```typescript
|
|
12
|
+
removeStoreFragments(...storeFragments: Store[]): void;
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## Parameters
|
|
16
|
+
|
|
17
|
+
| Parameter | Type | Description |
|
|
18
|
+
| --- | --- | --- |
|
|
19
|
+
| storeFragments | [Store](./foundation-store.store.md)<!-- -->\[\] | Store fragments to remove. |
|
|
20
|
+
|
|
21
|
+
**Returns:**
|
|
22
|
+
|
|
23
|
+
void
|
|
24
|
+
|
package/docs/api-report.md
CHANGED
|
@@ -18,6 +18,7 @@ export abstract class AbstractStore<TStore extends Store, TEventDetailMap extend
|
|
|
18
18
|
constructor(...storeFragments: Store[]);
|
|
19
19
|
// @internal
|
|
20
20
|
protected addEventListeners(element: HTMLElement): void;
|
|
21
|
+
addStoreFragments(...storeFragments: Store[]): void;
|
|
21
22
|
binding<TReturn = any, TParent = any>(token: ((store: this) => TReturn) | keyof this, subscriberChangeCallback?: SubscriberChangeCallback<TReturn> | undefined, isVolatileBinding?: boolean, context?: ExecutionContext): BindingObserver<this, TReturn, TParent>;
|
|
22
23
|
// Warning: (ae-unresolved-inheritdoc-reference) The @inheritDoc reference could not be resolved: The reference is ambiguous because "bindingAsRx" has more than one declaration; you need to add a TSDoc member reference selector
|
|
23
24
|
//
|
|
@@ -39,7 +40,7 @@ export abstract class AbstractStore<TStore extends Store, TEventDetailMap extend
|
|
|
39
40
|
protected commitValue<K extends keyof TStore>(key: K, value: TStore[K]): void;
|
|
40
41
|
connect(root: TStoreRoot): void;
|
|
41
42
|
// @internal
|
|
42
|
-
protected connectStoreFragments(root: TStoreRoot): void;
|
|
43
|
+
protected connectStoreFragments(root: TStoreRoot, storeFragments?: Store[]): void;
|
|
43
44
|
// Warning: (ae-incompatible-release-tags) The symbol "createAsyncListener" is marked as @public, but its signature references "KeyOrKeys" which is marked as @internal
|
|
44
45
|
protected createAsyncListener: <TDetail = void, TReturn = void>(keys: KeyOrKeys<TEventDetailMap & TInternalEventDetailMap>, token: (detail: TDetail, event?: CustomEvent<TDetail>) => Promise<TReturn>) => EventListener;
|
|
45
46
|
// Warning: (ae-incompatible-release-tags) The symbol "createErrorListener" is marked as @public, but its signature references "KeyOrKeys" which is marked as @internal
|
|
@@ -48,16 +49,17 @@ export abstract class AbstractStore<TStore extends Store, TEventDetailMap extend
|
|
|
48
49
|
protected createListener: <TDetail = void>(keys: KeyOrKeys<TEventDetailMap & TInternalEventDetailMap>, token: (detail: TDetail, event?: CustomEvent<TDetail>) => void) => EventListener;
|
|
49
50
|
disconnect(root: TStoreRoot): void;
|
|
50
51
|
// @internal
|
|
51
|
-
protected disconnectStoreFragments(root: TStoreRoot): void;
|
|
52
|
+
protected disconnectStoreFragments(root: TStoreRoot, storeFragments?: Store[]): void;
|
|
52
53
|
protected emit<K extends keyof (TEventDetailMap & TInternalEventDetailMap) & string>(...args: (TEventDetailMap & TInternalEventDetailMap)[K] extends void ? [key: K] : [key: K, detail: (TEventDetailMap & TInternalEventDetailMap)[K]]): void;
|
|
53
54
|
errors: ErrorMap_2<TEventDetailMap & TInternalEventDetailMap>;
|
|
54
55
|
protected invokeAsyncAPI<TResult>(api: () => Promise<TResult>, error: keyof (TEventDetailMap & TInternalEventDetailMap), success?: keyof (TEventDetailMap & TInternalEventDetailMap)): Promise<void>;
|
|
55
56
|
get name(): string;
|
|
56
57
|
// @internal
|
|
57
58
|
protected removeEventListeners(element: HTMLElement): void;
|
|
59
|
+
removeStoreFragments(...storeFragments: Store[]): void;
|
|
58
60
|
protected root: TStoreRoot;
|
|
59
61
|
// @internal
|
|
60
|
-
protected
|
|
62
|
+
protected storeFragments: Store[];
|
|
61
63
|
}
|
|
62
64
|
|
|
63
65
|
// @public
|
|
@@ -111,6 +113,7 @@ export const registerStore: <K extends Key>(Base: Constructable<Store>, name?: s
|
|
|
111
113
|
|
|
112
114
|
// @public
|
|
113
115
|
export interface Store {
|
|
116
|
+
addStoreFragments(...storeFragments: Store[]): void;
|
|
114
117
|
binding<TReturn = any, TParent = any>(token: ((store: this) => TReturn) | keyof this, subscriberChangeCallback?: SubscriberChangeCallback<TReturn> | undefined, isVolatileBinding?: boolean, context?: ExecutionContext): BindingObserver<this, TReturn, TParent>;
|
|
115
118
|
bindingAsRx(): Observable<this>;
|
|
116
119
|
// Warning: (ae-unresolved-inheritdoc-reference) The @inheritDoc reference could not be resolved: The reference is ambiguous because "bindingAsRx" has more than one declaration; you need to add a TSDoc member reference selector
|
|
@@ -128,6 +131,7 @@ export interface Store {
|
|
|
128
131
|
readonly errors: ErrorMap_2<EventDetailMap>;
|
|
129
132
|
// @virtual
|
|
130
133
|
readonly name?: string;
|
|
134
|
+
removeStoreFragments(...storeFragments: Store[]): void;
|
|
131
135
|
}
|
|
132
136
|
|
|
133
137
|
// @public (undocumented)
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@genesislcap/foundation-store",
|
|
3
3
|
"description": "Genesis Foundation Store",
|
|
4
|
-
"version": "14.
|
|
4
|
+
"version": "14.129.0",
|
|
5
5
|
"sideEffects": false,
|
|
6
6
|
"license": "SEE LICENSE IN license.txt",
|
|
7
7
|
"main": "dist/esm/index.js",
|
|
@@ -27,14 +27,14 @@
|
|
|
27
27
|
"test:coverage": "genx test --coverage"
|
|
28
28
|
},
|
|
29
29
|
"devDependencies": {
|
|
30
|
-
"@genesislcap/foundation-testing": "14.
|
|
31
|
-
"@genesislcap/genx": "14.
|
|
30
|
+
"@genesislcap/foundation-testing": "14.129.0",
|
|
31
|
+
"@genesislcap/genx": "14.129.0",
|
|
32
32
|
"rimraf": "^3.0.2"
|
|
33
33
|
},
|
|
34
34
|
"dependencies": {
|
|
35
|
-
"@genesislcap/foundation-events": "14.
|
|
36
|
-
"@genesislcap/foundation-logger": "14.
|
|
37
|
-
"@genesislcap/foundation-utils": "14.
|
|
35
|
+
"@genesislcap/foundation-events": "14.129.0",
|
|
36
|
+
"@genesislcap/foundation-logger": "14.129.0",
|
|
37
|
+
"@genesislcap/foundation-utils": "14.129.0",
|
|
38
38
|
"@microsoft/fast-element": "^1.12.0",
|
|
39
39
|
"@microsoft/fast-foundation": "^2.49.4",
|
|
40
40
|
"@microsoft/fast-web-utilities": "^5.4.1",
|
|
@@ -50,5 +50,5 @@
|
|
|
50
50
|
"publishConfig": {
|
|
51
51
|
"access": "public"
|
|
52
52
|
},
|
|
53
|
-
"gitHead": "
|
|
53
|
+
"gitHead": "3c5fc48788499117b7acb540f96adb11bc4f05d3"
|
|
54
54
|
}
|