@ngdux/list 3.0.1 → 4.0.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/fesm2022/ngdux-list.mjs +16 -16
- package/fesm2022/ngdux-list.mjs.map +1 -1
- package/index.d.ts +368 -10
- package/package.json +1 -3
- package/esm2022/index.mjs +0 -12
- package/esm2022/lib/+state/effects.mjs +0 -23
- package/esm2022/lib/+state/state.service.mjs +0 -55
- package/esm2022/lib/models/list.model.mjs +0 -7
- package/esm2022/lib/ngdux-list-state.module.mjs +0 -53
- package/esm2022/lib/services/list-notification-service.mjs +0 -21
- package/esm2022/lib/state-generator/abstract-list-effects.mjs +0 -50
- package/esm2022/lib/state-generator/abstract-list-state.service.mjs +0 -44
- package/esm2022/lib/state-generator/abstract-list.facade.mjs +0 -85
- package/esm2022/lib/state-generator/list-actions.mjs +0 -58
- package/esm2022/lib/state-generator/list-reducer.mjs +0 -104
- package/esm2022/lib/state-generator/list-selectors.mjs +0 -80
- package/esm2022/lib/state-generator/list-state.mjs +0 -18
- package/esm2022/ngdux-list.mjs +0 -5
- package/lib/+state/effects.d.ts +0 -14
- package/lib/+state/state.service.d.ts +0 -22
- package/lib/models/list.model.d.ts +0 -191
- package/lib/ngdux-list-state.module.d.ts +0 -23
- package/lib/services/list-notification-service.d.ts +0 -13
- package/lib/state-generator/abstract-list-effects.d.ts +0 -49
- package/lib/state-generator/abstract-list-state.service.d.ts +0 -21
- package/lib/state-generator/abstract-list.facade.d.ts +0 -45
- package/lib/state-generator/list-actions.d.ts +0 -2
- package/lib/state-generator/list-reducer.d.ts +0 -10
- package/lib/state-generator/list-selectors.d.ts +0 -4
- package/lib/state-generator/list-state.d.ts +0 -12
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
import { createEffect, ofType } from '@ngrx/effects';
|
|
2
|
-
import { select } from '@ngrx/store';
|
|
3
|
-
import { of } from 'rxjs';
|
|
4
|
-
import { catchError, exhaustMap, filter, map, switchMap, tap, withLatestFrom } from 'rxjs/operators';
|
|
5
|
-
export class AbstractListEffects {
|
|
6
|
-
constructor(actions$, store, service, listActions, listSelectors, notificationService) {
|
|
7
|
-
this.actions$ = actions$;
|
|
8
|
-
this.store = store;
|
|
9
|
-
this.service = service;
|
|
10
|
-
this.listActions = listActions;
|
|
11
|
-
this.listSelectors = listSelectors;
|
|
12
|
-
this.notificationService = notificationService;
|
|
13
|
-
this.reload$ = createEffect(() => this.actions$.pipe(ofType(this.listActions.changePageSize, this.listActions.changeSorting, this.listActions.changeFiltering, this.listActions.changePagingOptions, this.listActions.changeRequestParams, this.listActions.initialize, this.listActions.reset, this.listActions.changePageNumber, this.listActions.patchSuccess, this.listActions.deleteSuccess), map(() => this.listActions.loadPage())));
|
|
14
|
-
this.loadFirstPage$ = createEffect(() => this.actions$.pipe(ofType(this.listActions.loadFirstPage), map(() => this.listActions.changePageNumber({ pageNumber: 1 }))));
|
|
15
|
-
this.loadPreviousPage$ = createEffect(() => this.actions$.pipe(ofType(this.listActions.loadPreviousPage), withLatestFrom(this.store.pipe(select(this.listSelectors.getCurrentPageNumber))), filter(([, currentPageNumber]) => currentPageNumber > 1), map(([, currentPageNumber]) => this.listActions.changePageNumber({ pageNumber: currentPageNumber - 1 }))));
|
|
16
|
-
this.loadNextPage$ = createEffect(() => this.actions$.pipe(ofType(this.listActions.loadNextPage), withLatestFrom(this.store.pipe(select(this.listSelectors.isLastPage)), this.store.pipe(select(this.listSelectors.getCurrentPageNumber))), filter(([, isLastPage]) => !isLastPage), map(([, , currentPageNumber]) => this.listActions.changePageNumber({ pageNumber: currentPageNumber + 1 }))));
|
|
17
|
-
this.loadPage$ = createEffect(() => this.actions$.pipe(ofType(this.listActions.loadPage), withLatestFrom(this.store.pipe(select(this.listSelectors.getPagingOptions)), this.store.pipe(select(this.listSelectors.getSortingOptions)), this.store.pipe(select(this.listSelectors.getFilteringOptions)), this.store.pipe(select(this.listSelectors.getRequestParameters))), switchMap(([, pagingOptions, sortingOptions, filteringOptions, requestParameters]) => {
|
|
18
|
-
return this.service
|
|
19
|
-
.loadResources({
|
|
20
|
-
pagingOptions,
|
|
21
|
-
sortingOptions,
|
|
22
|
-
filteringOptions,
|
|
23
|
-
requestParameters
|
|
24
|
-
})
|
|
25
|
-
.pipe(map(resources => this.listActions.loadPageSuccess({
|
|
26
|
-
resources,
|
|
27
|
-
pagingOptions
|
|
28
|
-
})), catchError((errors) => of(this.listActions.loadPageFailure({ errors }))));
|
|
29
|
-
})));
|
|
30
|
-
this.patch$ = createEffect(() => this.actions$.pipe(ofType(this.listActions.patch), exhaustMap(action => {
|
|
31
|
-
if (!this.service.patchResources) {
|
|
32
|
-
throw new Error('patchResources not implement in the ListService');
|
|
33
|
-
}
|
|
34
|
-
return this.service.patchResources(action.resourceIds, action.resource).pipe(map(resources => this.listActions.patchSuccess({ resources })), catchError((errors) => of(this.listActions.patchFailure({ errors }))));
|
|
35
|
-
})));
|
|
36
|
-
this.delete$ = createEffect(() => this.actions$.pipe(ofType(this.listActions.delete), exhaustMap(({ resourceIds }) => {
|
|
37
|
-
if (!this.service.deleteResources) {
|
|
38
|
-
throw new Error('deleteResources not implement in the ListService');
|
|
39
|
-
}
|
|
40
|
-
return this.service.deleteResources(resourceIds).pipe(map(() => this.listActions.deleteSuccess({ resourceIds })), catchError((errors) => of(this.listActions.deleteFailure({ errors }))));
|
|
41
|
-
})));
|
|
42
|
-
this.deleteSuccess$ = createEffect(() => this.actions$.pipe(ofType(this.listActions.deleteSuccess), tap(({ resourceIds }) => {
|
|
43
|
-
this.notificationService?.onListDelete(resourceIds);
|
|
44
|
-
})), { dispatch: false });
|
|
45
|
-
this.errorsHandler$ = createEffect(() => this.actions$.pipe(ofType(this.listActions.loadPageFailure, this.listActions.deleteFailure, this.listActions.patchFailure), tap(({ errors }) => {
|
|
46
|
-
this.notificationService?.onListErrors(errors);
|
|
47
|
-
})), { dispatch: false });
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QtbGlzdC1lZmZlY3RzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9uZ2R1eC91dGlsL3N0b3JlL2xpc3Qvc3JjL2xpYi9zdGF0ZS1nZW5lcmF0b3IvYWJzdHJhY3QtbGlzdC1lZmZlY3RzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBVyxZQUFZLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlELE9BQU8sRUFBUyxNQUFNLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDNUMsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMxQixPQUFPLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsY0FBYyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFJckcsTUFBTSxPQUFnQixtQkFBbUI7SUFtSXZDLFlBQ3FCLFFBQWlCLEVBQ2pCLEtBQVksRUFDWixPQUFrQyxFQUNsQyxXQUF5QyxFQUN6QyxhQUEwQyxFQUMxQyxtQkFBZ0Q7UUFMaEQsYUFBUSxHQUFSLFFBQVEsQ0FBUztRQUNqQixVQUFLLEdBQUwsS0FBSyxDQUFPO1FBQ1osWUFBTyxHQUFQLE9BQU8sQ0FBMkI7UUFDbEMsZ0JBQVcsR0FBWCxXQUFXLENBQThCO1FBQ3pDLGtCQUFhLEdBQWIsYUFBYSxDQUE2QjtRQUMxQyx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQTZCO1FBeElyRSxZQUFPLEdBQUcsWUFBWSxDQUFDLEdBQUcsRUFBRSxDQUMxQixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FDaEIsTUFBTSxDQUNKLElBQUksQ0FBQyxXQUFXLENBQUMsY0FBYyxFQUMvQixJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsRUFDOUIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxlQUFlLEVBQ2hDLElBQUksQ0FBQyxXQUFXLENB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Q0FBQyxJQUFJLENBQ2hCLE1BQU0sQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQyxFQUN0QyxHQUFHLENBQUMsQ0FBQyxFQUFFLFdBQVcsRUFBRSxFQUFFLEVBQUU7WUFDdEIsSUFBSSxDQUFDLG1CQUFtQixFQUFFLFlBQVksQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUN0RCxDQUFDLENBQUMsQ0FDSCxFQUNILEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxDQUNwQixDQUFDO1FBRUYsbUJBQWMsR0FBRyxZQUFZLENBQzNCLEdBQUcsRUFBRSxDQUNILElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUNoQixNQUFNLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxlQUFlLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxZQUFZLENBQUMsRUFDdkcsR0FBRyxDQUFDLENBQUMsRUFBRSxNQUFNLEVBQUUsRUFBRSxFQUFFO1lBQ2pCLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxZQUFZLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDakQsQ0FBQyxDQUFDLENBQ0gsRUFDSCxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsQ0FDcEIsQ0FBQztJQVNDLENBQUM7Q0FDTCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IExpc3ROb3RpZmljYXRpb25TZXJ2aWNlLCBMaXN0U2VydmljZSB9IGZyb20gJ0BuZ2R1eC9kYXRhLW1vZGVsLWNvbW1vbic7XHJcbmltcG9ydCB7IEFjdGlvbnMsIGNyZWF0ZUVmZmVjdCwgb2ZUeXBlIH0gZnJvbSAnQG5ncngvZWZmZWN0cyc7XHJcbmltcG9ydCB7IFN0b3JlLCBzZWxlY3QgfSBmcm9tICdAbmdyeC9zdG9yZSc7XHJcbmltcG9ydCB7IG9mIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IGNhdGNoRXJyb3IsIGV4aGF1c3RNYXAsIGZpbHRlciwgbWFwLCBzd2l0Y2hNYXAsIHRhcCwgd2l0aExhdGVzdEZyb20gfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcblxyXG5pbXBvcnQgeyBMaXN0QWN0aW9ucywgTGlzdFNlbGVjdG9ycyB9IGZyb20gJy4uL21vZGVscy9saXN0Lm1vZGVsJztcclxuXHJcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBYnN0cmFjdExpc3RFZmZlY3RzPFQsIEUgPSB1bmtub3duLCBTID0gVCwgUGFyYW1zID0gUmVjb3JkPHN0cmluZywgc3RyaW5nPj4ge1xyXG4gIHJlbG9hZCQgPSBjcmVhdGVFZmZlY3QoKCkgPT5cclxuICAgIHRoaXMuYWN0aW9ucyQucGlwZShcclxuICAgICAgb2ZUeXBlKFxyXG4gICAgICAgIHRoaXMubGlzdEFjdGlvbnMuY2hhbmdlUGFnZVNpemUsXHJcbiAgICAgICAgdGhpcy5saXN0QWN0aW9ucy5jaGFuZ2VTb3J0aW5nLFxyXG4gICAgICAgIHRoaXMubGlzdEFjdGlvbnMuY2hhbmdlRmlsdGVyaW5nLFxyXG4gICAgICAgIHRoaXMubGlzdEFjdGlvbnMuY2hhbmdlUGFnaW5nT3B0aW9ucyxcclxuICAgICAgICB0aGlzLmxpc3RBY3Rpb25zLmNoYW5nZVJlcXVlc3RQYXJhbXMsXHJcbiAgICAgICAgdGhpcy5saXN0QWN0aW9ucy5pbml0aWFsaXplLFxyXG4gICAgICAgIHRoaXMubGlzdEFjdGlvbnMucmVzZXQsXHJcbiAgICAgICAgdGhpcy5saXN0QWN0aW9ucy5jaGFuZ2VQYWdlTnVtYmVyLFxyXG4gICAgICAgIHRoaXMubGlzdEFjdGlvbnMucGF0Y2hTdWNjZXNzLFxyXG4gICAgICAgIHRoaXMubGlzdEFjdGlvbnMuZGVsZXRlU3VjY2Vzc1xyXG4gICAgICApLFxyXG4gICAgICBtYXAoKCkgPT4gdGhpcy5saXN0QWN0aW9ucy5sb2FkUGFnZSgpKVxyXG4gICAgKVxyXG4gICk7XHJcblxyXG4gIGxvYWRGaXJzdFBhZ2UkID0gY3JlYXRlRWZmZWN0KCgpID0+XHJcbiAgICB0aGlzLmFjdGlvbnMkLnBpcGUoXHJcbiAgICAgIG9mVHlwZSh0aGlzLmxpc3RBY3Rpb25zLmxvYWRGaXJzdFBhZ2UpLFxyXG4gICAgICBtYXAoKCkgPT4gdGhpcy5saXN0QWN0aW9ucy5jaGFuZ2VQYWdlTnVtYmVyKHsgcGFnZU51bWJlcjogMSB9KSlcclxuICAgIClcclxuICApO1xyXG5cclxuICBsb2FkUHJldmlvdXNQYWdlJCA9IGNyZWF0ZUVmZmVjdCgoKSA9PlxyXG4gICAgdGhpcy5hY3Rpb25zJC5waXBlKFxyXG4gICAgICBvZlR5cGUodGhpcy5saXN0QWN0aW9ucy5sb2FkUHJldmlvdXNQYWdlKSxcclxuICAgICAgd2l0aExhdGVzdEZyb20odGhpcy5zdG9yZS5waXBlKHNlbGVjdCh0aGlzLmxpc3RTZWxlY3RvcnMuZ2V0Q3VycmVudFBhZ2VOdW1iZXIpKSksXHJcbiAgICAgIGZpbHRlcigoWywgY3VycmVudFBhZ2VOdW1iZXJdKSA9PiBjdXJyZW50UGFnZU51bWJlciA+IDEpLFxyXG4gICAgICBtYXAoKFssIGN1cnJlbnRQYWdlTnVtYmVyXSkgPT4gdGhpcy5saXN0QWN0aW9ucy5jaGFuZ2VQYWdlTnVtYmVyKHsgcGFnZU51bWJlcjogY3VycmVudFBhZ2VOdW1iZXIgLSAxIH0pKVxyXG4gICAgKVxyXG4gICk7XHJcblxyXG4gIGxvYWROZXh0UGFnZSQgPSBjcmVhdGVFZmZlY3QoKCkgPT5cclxuICAgIHRoaXMuYWN0aW9ucyQucGlwZShcclxuICAgICAgb2ZUeXBlKHRoaXMubGlzdEFjdGlvbnMubG9hZE5leHRQYWdlKSxcclxuICAgICAgd2l0aExhdGVzdEZyb20oXHJcbiAgICAgICAgdGhpcy5zdG9yZS5waXBlKHNlbGVjdCh0aGlzLmxpc3RTZWxlY3RvcnMuaXNMYXN0UGFnZSkpLFxyXG4gICAgICAgIHRoaXMuc3RvcmUucGlwZShzZWxlY3QodGhpcy5saXN0U2VsZWN0b3JzLmdldEN1cnJlbnRQYWdlTnVtYmVyKSlcclxuICAgICAgKSxcclxuICAgICAgZmlsdGVyKChbLCBpc0xhc3RQYWdlXSkgPT4gIWlzTGFzdFBhZ2UpLFxyXG4gICAgICBtYXAoKFssICwgY3VycmVudFBhZ2VOdW1iZXJdKSA9PiB0aGlzLmxpc3RBY3Rpb25zLmNoYW5nZVBhZ2VOdW1iZXIoeyBwYWdlTnVtYmVyOiBjdXJyZW50UGFnZU51bWJlciArIDEgfSkpXHJcbiAgICApXHJcbiAgKTtcclxuXHJcbiAgbG9hZFBhZ2UkID0gY3JlYXRlRWZmZWN0KCgpID0+XHJcbiAgICB0aGlzLmFjdGlvbnMkLnBpcGUoXHJcbiAgICAgIG9mVHlwZSh0aGlzLmxpc3RBY3Rpb25zLmxvYWRQYWdlKSxcclxuICAgICAgd2l0aExhdGVzdEZyb20oXHJcbiAgICAgICAgdGhpcy5zdG9yZS5waXBlKHNlbGVjdCh0aGlzLmxpc3RTZWxlY3RvcnMuZ2V0UGFnaW5nT3B0aW9ucykpLFxyXG4gICAgICAgIHRoaXMuc3RvcmUucGlwZShzZWxlY3QodGhpcy5saXN0U2VsZWN0b3JzLmdldFNvcnRpbmdPcHRpb25zKSksXHJcbiAgICAgICAgdGhpcy5zdG9yZS5waXBlKHNlbGVjdCh0aGlzLmxpc3RTZWxlY3RvcnMuZ2V0RmlsdGVyaW5nT3B0aW9ucykpLFxyXG4gICAgICAgIHRoaXMuc3RvcmUucGlwZShzZWxlY3QodGhpcy5saXN0U2VsZWN0b3JzLmdldFJlcXVlc3RQYXJhbWV0ZXJzKSlcclxuICAgICAgKSxcclxuICAgICAgc3dpdGNoTWFwKChbLCBwYWdpbmdPcHRpb25zLCBzb3J0aW5nT3B0aW9ucywgZmlsdGVyaW5nT3B0aW9ucywgcmVxdWVzdFBhcmFtZXRlcnNdKSA9PiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuc2VydmljZVxyXG4gICAgICAgICAgLmxvYWRSZXNvdXJjZXMoe1xyXG4gICAgICAgICAgICBwYWdpbmdPcHRpb25zLFxyXG4gICAgICAgICAgICBzb3J0aW5nT3B0aW9ucyxcclxuICAgICAgICAgICAgZmlsdGVyaW5nT3B0aW9ucyxcclxuICAgICAgICAgICAgcmVxdWVzdFBhcmFtZXRlcnNcclxuICAgICAgICAgIH0pXHJcbiAgICAgICAgICAucGlwZShcclxuICAgICAgICAgICAgbWFwKHJlc291cmNlcyA9PlxyXG4gICAgICAgICAgICAgIHRoaXMubGlzdEFjdGlvbnMubG9hZFBhZ2VTdWNjZXNzKHtcclxuICAgICAgICAgICAgICAgIHJlc291cmNlcyxcclxuICAgICAgICAgICAgICAgIHBhZ2luZ09wdGlvbnNcclxuICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICApLFxyXG4gICAgICAgICAgICBjYXRjaEVycm9yKChlcnJvcnM6IEUpID0+IG9mKHRoaXMubGlzdEFjdGlvbnMubG9hZFBhZ2VGYWlsdXJlKHsgZXJyb3JzIH0pKSlcclxuICAgICAgICAgICk7XHJcbiAgICAgIH0pXHJcbiAgICApXHJcbiAgKTtcclxuXHJcbiAgcGF0Y2gkID0gY3JlYXRlRWZmZWN0KCgpID0+XHJcbiAgICB0aGlzLmFjdGlvbnMkLnBpcGUoXHJcbiAgICAgIG9mVHlwZSh0aGlzLmxpc3RBY3Rpb25zLnBhdGNoKSxcclxuICAgICAgZXhoYXVzdE1hcChhY3Rpb24gPT4ge1xyXG4gICAgICAgIGlmICghdGhpcy5zZXJ2aWNlLnBhdGNoUmVzb3VyY2VzKSB7XHJcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ3BhdGNoUmVzb3VyY2VzIG5vdCBpbXBsZW1lbnQgaW4gdGhlIExpc3RTZXJ2aWNlJyk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gdGhpcy5zZXJ2aWNlLnBhdGNoUmVzb3VyY2VzKGFjdGlvbi5yZXNvdXJjZUlkcywgYWN0aW9uLnJlc291cmNlKS5waXBlKFxyXG4gICAgICAgICAgbWFwKHJlc291cmNlcyA9PiB0aGlzLmxpc3RBY3Rpb25zLnBhdGNoU3VjY2Vzcyh7IHJlc291cmNlcyB9KSksXHJcbiAgICAgICAgICBjYXRjaEVycm9yKChlcnJvcnM6IEUpID0+IG9mKHRoaXMubGlzdEFjdGlvbnMucGF0Y2hGYWlsdXJlKHsgZXJyb3JzIH0pKSlcclxuICAgICAgICApO1xyXG4gICAgICB9KVxyXG4gICAgKVxyXG4gICk7XHJcblxyXG4gIGRlbGV0ZSQgPSBjcmVhdGVFZmZlY3QoKCkgPT5cclxuICAgIHRoaXMuYWN0aW9ucyQucGlwZShcclxuICAgICAgb2ZUeXBlKHRoaXMubGlzdEFjdGlvbnMuZGVsZXRlKSxcclxuICAgICAgZXhoYXVzdE1hcCgoeyByZXNvdXJjZUlkcyB9KSA9PiB7XHJcbiAgICAgICAgaWYgKCF0aGlzLnNlcnZpY2UuZGVsZXRlUmVzb3VyY2VzKSB7XHJcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ2RlbGV0ZVJlc291cmNlcyBub3QgaW1wbGVtZW50IGluIHRoZSBMaXN0U2VydmljZScpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIHRoaXMuc2VydmljZS5kZWxldGVSZXNvdXJjZXMocmVzb3VyY2VJZHMpLnBpcGUoXHJcbiAgICAgICAgICBtYXAoKCkgPT4gdGhpcy5saXN0QWN0aW9ucy5kZWxldGVTdWNjZXNzKHsgcmVzb3VyY2VJZHMgfSkpLFxyXG4gICAgICAgICAgY2F0Y2hFcnJvcigoZXJyb3JzOiBFKSA9PiBvZih0aGlzLmxpc3RBY3Rpb25zLmRlbGV0ZUZhaWx1cmUoeyBlcnJvcnMgfSkpKVxyXG4gICAgICAgICk7XHJcbiAgICAgIH0pXHJcbiAgICApXHJcbiAgKTtcclxuXHJcbiAgZGVsZXRlU3VjY2VzcyQgPSBjcmVhdGVFZmZlY3QoXHJcbiAgICAoKSA9PlxyXG4gICAgICB0aGlzLmFjdGlvbnMkLnBpcGUoXHJcbiAgICAgICAgb2ZUeXBlKHRoaXMubGlzdEFjdGlvbnMuZGVsZXRlU3VjY2VzcyksXHJcbiAgICAgICAgdGFwKCh7IHJlc291cmNlSWRzIH0pID0+IHtcclxuICAgICAgICAgIHRoaXMubm90aWZpY2F0aW9uU2VydmljZT8ub25MaXN0RGVsZXRlKHJlc291cmNlSWRzKTtcclxuICAgICAgICB9KVxyXG4gICAgICApLFxyXG4gICAgeyBkaXNwYXRjaDogZmFsc2UgfVxyXG4gICk7XHJcblxyXG4gIGVycm9yc0hhbmRsZXIkID0gY3JlYXRlRWZmZWN0KFxyXG4gICAgKCkgPT5cclxuICAgICAgdGhpcy5hY3Rpb25zJC5waXBlKFxyXG4gICAgICAgIG9mVHlwZSh0aGlzLmxpc3RBY3Rpb25zLmxvYWRQYWdlRmFpbHVyZSwgdGhpcy5saXN0QWN0aW9ucy5kZWxldGVGYWlsdXJlLCB0aGlzLmxpc3RBY3Rpb25zLnBhdGNoRmFpbHVyZSksXHJcbiAgICAgICAgdGFwKCh7IGVycm9ycyB9KSA9PiB7XHJcbiAgICAgICAgICB0aGlzLm5vdGlmaWNhdGlvblNlcnZpY2U/Lm9uTGlzdEVycm9ycyhlcnJvcnMpO1xyXG4gICAgICAgIH0pXHJcbiAgICAgICksXHJcbiAgICB7IGRpc3BhdGNoOiBmYWxzZSB9XHJcbiAgKTtcclxuXHJcbiAgcHJvdGVjdGVkIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGFjdGlvbnMkOiBBY3Rpb25zLFxyXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IHN0b3JlOiBTdG9yZSxcclxuICAgIHByb3RlY3RlZCByZWFkb25seSBzZXJ2aWNlOiBMaXN0U2VydmljZTxULCBTLCBQYXJhbXM+LFxyXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGxpc3RBY3Rpb25zOiBMaXN0QWN0aW9uczxULCBFLCBTLCBQYXJhbXM+LFxyXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGxpc3RTZWxlY3RvcnM6IExpc3RTZWxlY3RvcnM8UywgRSwgUGFyYW1zPixcclxuICAgIHByb3RlY3RlZCByZWFkb25seSBub3RpZmljYXRpb25TZXJ2aWNlPzogTGlzdE5vdGlmaWNhdGlvblNlcnZpY2U8RT5cclxuICApIHt9XHJcbn1cclxuIl19
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
import { Inject, Injectable } from '@angular/core';
|
|
2
|
-
import { ReducerManager, createFeatureSelector } from '@ngrx/store';
|
|
3
|
-
import { LIST_FEATURE_KEY } from '../models/list.model';
|
|
4
|
-
import { createListActions } from './list-actions';
|
|
5
|
-
import { createListEntityAdapter, createListReducer } from './list-reducer';
|
|
6
|
-
import { createListSelectors } from './list-selectors';
|
|
7
|
-
import * as i0 from "@angular/core";
|
|
8
|
-
import * as i1 from "@ngrx/store";
|
|
9
|
-
export class AbstractListReducerManager {
|
|
10
|
-
constructor(reducerManager, featureKey) {
|
|
11
|
-
this.reducerManager = reducerManager;
|
|
12
|
-
this.featureKey = featureKey;
|
|
13
|
-
this.actions = this.getActions();
|
|
14
|
-
this.entityAdapter = this.getEntityAdapter();
|
|
15
|
-
this.addReducer();
|
|
16
|
-
this.selectors = this.getSelectors();
|
|
17
|
-
}
|
|
18
|
-
getActions() {
|
|
19
|
-
return createListActions(this.featureKey);
|
|
20
|
-
}
|
|
21
|
-
getEntityAdapter() {
|
|
22
|
-
return createListEntityAdapter();
|
|
23
|
-
}
|
|
24
|
-
addReducer() {
|
|
25
|
-
const currentReducers = Object.keys(this.reducerManager.currentReducers || {});
|
|
26
|
-
if (!currentReducers.includes(this.featureKey)) {
|
|
27
|
-
const reducer = createListReducer(this.entityAdapter, this.actions);
|
|
28
|
-
this.reducerManager.addReducer(this.featureKey, reducer);
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
getSelectors() {
|
|
32
|
-
const getState = createFeatureSelector(this.featureKey);
|
|
33
|
-
return createListSelectors(this.entityAdapter, getState);
|
|
34
|
-
}
|
|
35
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: AbstractListReducerManager, deps: [{ token: i1.ReducerManager }, { token: LIST_FEATURE_KEY }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
36
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: AbstractListReducerManager }); }
|
|
37
|
-
}
|
|
38
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: AbstractListReducerManager, decorators: [{
|
|
39
|
-
type: Injectable
|
|
40
|
-
}], ctorParameters: () => [{ type: i1.ReducerManager }, { type: undefined, decorators: [{
|
|
41
|
-
type: Inject,
|
|
42
|
-
args: [LIST_FEATURE_KEY]
|
|
43
|
-
}] }] });
|
|
44
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QtbGlzdC1zdGF0ZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9uZ2R1eC91dGlsL3N0b3JlL2xpc3Qvc3JjL2xpYi9zdGF0ZS1nZW5lcmF0b3IvYWJzdHJhY3QtbGlzdC1zdGF0ZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRW5ELE9BQU8sRUFBRSxjQUFjLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDcEUsT0FBTyxFQUFFLGdCQUFnQixFQUF5QyxNQUFNLHNCQUFzQixDQUFDO0FBQy9GLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ25ELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzVFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGtCQUFrQixDQUFDOzs7QUFHdkQsTUFBTSxPQUFnQiwwQkFBMEI7SUFVOUMsWUFDbUIsY0FBOEIsRUFDSixVQUFrQjtRQUQ1QyxtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFDSixlQUFVLEdBQVYsVUFBVSxDQUFRO1FBRTdELElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQ2pDLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFDN0MsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQ2xCLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3ZDLENBQUM7SUFFUyxVQUFVO1FBQ2xCLE9BQU8saUJBQWlCLENBQWtCLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUM3RCxDQUFDO0lBRU8sZ0JBQWdCO1FBQ3RCLE9BQU8sdUJBQXVCLEVBQUssQ0FBQztJQUN0QyxDQUFDO0lBRVMsVUFBVTtRQUNsQixNQUFNLGVBQWUsR0FBYSxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsZUFBZSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBRXpGLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDO1lBQy9DLE1BQU0sT0FBTyxHQUFHLGlCQUFpQixDQUFrQixJQUFJLENBQUMsYUFBYSxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUNyRixJQUFJLENBQUMsY0FBYyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQzNELENBQUM7SUFDSCxDQUFDO0lBRVMsWUFBWTtRQUNwQixNQUFNLFFBQVEsR0FBRyxxQkFBcUIsQ0FBMEIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ2pGLE9BQU8sbUJBQW1CLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxRQUFRLENBQUMsQ0FBQztJQUMzRCxDQUFDOzhHQXhDbUIsMEJBQTBCLGdEQVlwQyxnQkFBZ0I7a0hBWk4sMEJBQTBCOzsyRkFBMUIsMEJBQTBCO2tCQUQvQyxVQUFVOzswQkFhTixNQUFNOzJCQUFDLGdCQUFnQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBFbnRpdHlBZGFwdGVyIH0gZnJvbSAnQG5ncngvZW50aXR5JztcclxuaW1wb3J0IHsgUmVkdWNlck1hbmFnZXIsIGNyZWF0ZUZlYXR1cmVTZWxlY3RvciB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcclxuaW1wb3J0IHsgTElTVF9GRUFUVVJFX0tFWSwgTGlzdEFjdGlvbnMsIExpc3RTZWxlY3RvcnMsIExpc3RTdGF0ZSB9IGZyb20gJy4uL21vZGVscy9saXN0Lm1vZGVsJztcclxuaW1wb3J0IHsgY3JlYXRlTGlzdEFjdGlvbnMgfSBmcm9tICcuL2xpc3QtYWN0aW9ucyc7XHJcbmltcG9ydCB7IGNyZWF0ZUxpc3RFbnRpdHlBZGFwdGVyLCBjcmVhdGVMaXN0UmVkdWNlciB9IGZyb20gJy4vbGlzdC1yZWR1Y2VyJztcclxuaW1wb3J0IHsgY3JlYXRlTGlzdFNlbGVjdG9ycyB9IGZyb20gJy4vbGlzdC1zZWxlY3RvcnMnO1xyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQWJzdHJhY3RMaXN0UmVkdWNlck1hbmFnZXI8XHJcbiAgVCBleHRlbmRzIHsgW2tleTogc3RyaW5nXTogYW55IH0sXHJcbiAgRSxcclxuICBTIGV4dGVuZHMgeyBba2V5OiBzdHJpbmddOiBhbnkgfSA9IFQsXHJcbiAgUGFyYW1zID0gUmVjb3JkPHN0cmluZywgc3RyaW5nPlxyXG4+IHtcclxuICBhY3Rpb25zOiBMaXN0QWN0aW9uczxULCBFLCBTLCBQYXJhbXM+O1xyXG4gIHNlbGVjdG9yczogTGlzdFNlbGVjdG9yczxTLCBFLCBQYXJhbXM+O1xyXG4gIHByaXZhdGUgZW50aXR5QWRhcHRlcjogRW50aXR5QWRhcHRlcjxTPjtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IHJlZHVjZXJNYW5hZ2VyOiBSZWR1Y2VyTWFuYWdlcixcclxuICAgIEBJbmplY3QoTElTVF9GRUFUVVJFX0tFWSkgcHJpdmF0ZSByZWFkb25seSBmZWF0dXJlS2V5OiBzdHJpbmdcclxuICApIHtcclxuICAgIHRoaXMuYWN0aW9ucyA9IHRoaXMuZ2V0QWN0aW9ucygpO1xyXG4gICAgdGhpcy5lbnRpdHlBZGFwdGVyID0gdGhpcy5nZXRFbnRpdHlBZGFwdGVyKCk7XHJcbiAgICB0aGlzLmFkZFJlZHVjZXIoKTtcclxuICAgIHRoaXMuc2VsZWN0b3JzID0gdGhpcy5nZXRTZWxlY3RvcnMoKTtcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBnZXRBY3Rpb25zKCkge1xyXG4gICAgcmV0dXJuIGNyZWF0ZUxpc3RBY3Rpb25zPFQsIEUsIFMsIFBhcmFtcz4odGhpcy5mZWF0dXJlS2V5KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZ2V0RW50aXR5QWRhcHRlcigpIHtcclxuICAgIHJldHVybiBjcmVhdGVMaXN0RW50aXR5QWRhcHRlcjxTPigpO1xyXG4gIH1cclxuXHJcbiAgcHJvdGVjdGVkIGFkZFJlZHVjZXIoKSB7XHJcbiAgICBjb25zdCBjdXJyZW50UmVkdWNlcnM6IHN0cmluZ1tdID0gT2JqZWN0LmtleXModGhpcy5yZWR1Y2VyTWFuYWdlci5jdXJyZW50UmVkdWNlcnMgfHwge30pO1xyXG5cclxuICAgIGlmICghY3VycmVudFJlZHVjZXJzLmluY2x1ZGVzKHRoaXMuZmVhdHVyZUtleSkpIHtcclxuICAgICAgY29uc3QgcmVkdWNlciA9IGNyZWF0ZUxpc3RSZWR1Y2VyPFQsIEUsIFMsIFBhcmFtcz4odGhpcy5lbnRpdHlBZGFwdGVyLCB0aGlzLmFjdGlvbnMpO1xyXG4gICAgICB0aGlzLnJlZHVjZXJNYW5hZ2VyLmFkZFJlZHVjZXIodGhpcy5mZWF0dXJlS2V5LCByZWR1Y2VyKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBnZXRTZWxlY3RvcnMoKSB7XHJcbiAgICBjb25zdCBnZXRTdGF0ZSA9IGNyZWF0ZUZlYXR1cmVTZWxlY3RvcjxMaXN0U3RhdGU8UywgRSwgUGFyYW1zPj4odGhpcy5mZWF0dXJlS2V5KTtcclxuICAgIHJldHVybiBjcmVhdGVMaXN0U2VsZWN0b3JzKHRoaXMuZW50aXR5QWRhcHRlciwgZ2V0U3RhdGUpO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -1,85 +0,0 @@
|
|
|
1
|
-
import { select } from '@ngrx/store';
|
|
2
|
-
export class AbstractListFacade {
|
|
3
|
-
constructor(store, listActions, listSelectors) {
|
|
4
|
-
this.store = store;
|
|
5
|
-
this.listActions = listActions;
|
|
6
|
-
this.listSelectors = listSelectors;
|
|
7
|
-
this.resources$ = this.store.pipe(select(this.listSelectors.getAll));
|
|
8
|
-
this.loadingState$ = this.store.pipe(select(this.listSelectors.getLoadingState));
|
|
9
|
-
this.requestState$ = this.store.pipe(select(this.listSelectors.getRequestState));
|
|
10
|
-
this.errors$ = this.store.pipe(select(this.listSelectors.getErrors));
|
|
11
|
-
this.isReady$ = this.store.pipe(select(this.listSelectors.isReady));
|
|
12
|
-
this.areSelectedReady$ = this.store.pipe(select(this.listSelectors.areSelectedReady));
|
|
13
|
-
this.currentPageData$ = this.store.pipe(select(this.listSelectors.getCurrentPageData));
|
|
14
|
-
this.currentPageNumber$ = this.store.pipe(select(this.listSelectors.getCurrentPageNumber));
|
|
15
|
-
this.filteringOptions$ = this.store.pipe(select(this.listSelectors.getFilteringOptions));
|
|
16
|
-
this.requestParameters$ = this.store.pipe(select(this.listSelectors.getRequestParameters));
|
|
17
|
-
this.lastPageNumber$ = this.store.pipe(select(this.listSelectors.getLastPageNumber));
|
|
18
|
-
this.pagingOptions$ = this.store.pipe(select(this.listSelectors.getPagingOptions));
|
|
19
|
-
this.requestOptions$ = this.store.pipe(select(this.listSelectors.getRequestOptions));
|
|
20
|
-
this.sortingOptions$ = this.store.pipe(select(this.listSelectors.getSortingOptions));
|
|
21
|
-
this.selectedItems$ = this.store.pipe(select(this.listSelectors.getSelectedItems));
|
|
22
|
-
this.totalCount$ = this.store.pipe(select(this.listSelectors.getTotalCount));
|
|
23
|
-
}
|
|
24
|
-
setPageSize(props) {
|
|
25
|
-
this.store.dispatch(this.listActions.setPageSize(props));
|
|
26
|
-
}
|
|
27
|
-
setFiltering(props) {
|
|
28
|
-
this.store.dispatch(this.listActions.setFiltering(props));
|
|
29
|
-
}
|
|
30
|
-
setSorting(props) {
|
|
31
|
-
this.store.dispatch(this.listActions.setSorting(props));
|
|
32
|
-
}
|
|
33
|
-
setRequestParameters(props) {
|
|
34
|
-
this.store.dispatch(this.listActions.setRequestParams(props));
|
|
35
|
-
}
|
|
36
|
-
changeFiltering(props) {
|
|
37
|
-
this.store.dispatch(this.listActions.changeFiltering(props));
|
|
38
|
-
}
|
|
39
|
-
changePagingOptions(props) {
|
|
40
|
-
this.store.dispatch(this.listActions.changePagingOptions(props));
|
|
41
|
-
}
|
|
42
|
-
changePageSize(props) {
|
|
43
|
-
this.store.dispatch(this.listActions.changePageSize(props));
|
|
44
|
-
}
|
|
45
|
-
changePageNumber(props) {
|
|
46
|
-
this.store.dispatch(this.listActions.changePageNumber(props));
|
|
47
|
-
}
|
|
48
|
-
changeSelectedResources(props) {
|
|
49
|
-
this.store.dispatch(this.listActions.changeSelectedResources(props));
|
|
50
|
-
}
|
|
51
|
-
changeSorting(props) {
|
|
52
|
-
this.store.dispatch(this.listActions.changeSorting(props));
|
|
53
|
-
}
|
|
54
|
-
changeRequestParams(props) {
|
|
55
|
-
this.store.dispatch(this.listActions.changeRequestParams(props));
|
|
56
|
-
}
|
|
57
|
-
loadPage() {
|
|
58
|
-
this.store.dispatch(this.listActions.loadPage());
|
|
59
|
-
}
|
|
60
|
-
loadFirstPage() {
|
|
61
|
-
this.store.dispatch(this.listActions.loadFirstPage());
|
|
62
|
-
}
|
|
63
|
-
loadNextPage() {
|
|
64
|
-
this.store.dispatch(this.listActions.loadNextPage());
|
|
65
|
-
}
|
|
66
|
-
loadPreviousPage() {
|
|
67
|
-
this.store.dispatch(this.listActions.loadPreviousPage());
|
|
68
|
-
}
|
|
69
|
-
patch(props) {
|
|
70
|
-
this.store.dispatch(this.listActions.patch(props));
|
|
71
|
-
}
|
|
72
|
-
delete(props) {
|
|
73
|
-
this.store.dispatch(this.listActions.delete(props));
|
|
74
|
-
}
|
|
75
|
-
initialize() {
|
|
76
|
-
this.store.dispatch(this.listActions.initialize());
|
|
77
|
-
}
|
|
78
|
-
reinitialize() {
|
|
79
|
-
this.store.dispatch(this.listActions.reset());
|
|
80
|
-
}
|
|
81
|
-
resetRequestState() {
|
|
82
|
-
this.store.dispatch(this.listActions.resetRequestState());
|
|
83
|
-
}
|
|
84
|
-
}
|
|
85
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QtbGlzdC5mYWNhZGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL25nZHV4L3V0aWwvc3RvcmUvbGlzdC9zcmMvbGliL3N0YXRlLWdlbmVyYXRvci9hYnN0cmFjdC1saXN0LmZhY2FkZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsTUFBTSxFQUFTLE1BQU0sYUFBYSxDQUFDO0FBRzVDLE1BQU0sT0FBZ0Isa0JBQWtCO0lBa0J0QyxZQUNxQixLQUFZLEVBQ2QsV0FBeUMsRUFDekMsYUFBMEM7UUFGeEMsVUFBSyxHQUFMLEtBQUssQ0FBTztRQUNkLGdCQUFXLEdBQVgsV0FBVyxDQUE4QjtRQUN6QyxrQkFBYSxHQUFiLGFBQWEsQ0FBNkI7UUFwQnBELGVBQVUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO1FBQ2hFLGtCQUFhLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQztRQUM1RSxrQkFBYSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUM7UUFDNUUsWUFBTyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUM7UUFDaEUsYUFBUSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7UUFDL0Qsc0JBQWlCLEdBQUcsSUFBSSxDQUFDLEtB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LENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLGdCQUFnQixFQUFFLENBQUMsQ0FBQztJQUMzRCxDQUFDO0lBRUQsS0FBSyxDQUFDLEtBQTJEO1FBQy9ELElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDckQsQ0FBQztJQUVELE1BQU0sQ0FBQyxLQUE0RDtRQUNqRSxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFFRCxVQUFVO1FBQ1IsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFDO0lBQ3JELENBQUM7SUFFRCxZQUFZO1FBQ1YsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQ2hELENBQUM7SUFFRCxpQkFBaUI7UUFDZixJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLGlCQUFpQixFQUFFLENBQUMsQ0FBQztJQUM1RCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBY3Rpb25QYXlsb2FkIH0gZnJvbSAnQG5nZHV4L3N0b3JlLWNvbW1vbic7XHJcbmltcG9ydCB7IHNlbGVjdCwgU3RvcmUgfSBmcm9tICdAbmdyeC9zdG9yZSc7XHJcbmltcG9ydCB7IExpc3RBY3Rpb25zLCBMaXN0U2VsZWN0b3JzIH0gZnJvbSAnLi4vbW9kZWxzL2xpc3QubW9kZWwnO1xyXG5cclxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFic3RyYWN0TGlzdEZhY2FkZTxULCBFLCBTID0gVCwgUGFyYW1zID0gUmVjb3JkPHN0cmluZywgc3RyaW5nPj4ge1xyXG4gIHJlYWRvbmx5IHJlc291cmNlcyQgPSB0aGlzLnN0b3JlLnBpcGUoc2VsZWN0KHRoaXMubGlzdFNlbGVjdG9ycy5nZXRBbGwpKTtcclxuICByZWFkb25seSBsb2FkaW5nU3RhdGUkID0gdGhpcy5zdG9yZS5waXBlKHNlbGVjdCh0aGlzLmxpc3RTZWxlY3RvcnMuZ2V0TG9hZGluZ1N0YXRlKSk7XHJcbiAgcmVhZG9ubHkgcmVxdWVzdFN0YXRlJCA9IHRoaXMuc3RvcmUucGlwZShzZWxlY3QodGhpcy5saXN0U2VsZWN0b3JzLmdldFJlcXVlc3RTdGF0ZSkpO1xyXG4gIHJlYWRvbmx5IGVycm9ycyQgPSB0aGlzLnN0b3JlLnBpcGUoc2VsZWN0KHRoaXMubGlzdFNlbGVjdG9ycy5nZXRFcnJvcnMpKTtcclxuICByZWFkb25seSBpc1JlYWR5JCA9IHRoaXMuc3RvcmUucGlwZShzZWxlY3QodGhpcy5saXN0U2VsZWN0b3JzLmlzUmVhZHkpKTtcclxuICByZWFkb25seSBhcmVTZWxlY3RlZFJlYWR5JCA9IHRoaXMuc3RvcmUucGlwZShzZWxlY3QodGhpcy5saXN0U2VsZWN0b3JzLmFyZVNlbGVjdGVkUmVhZHkpKTtcclxuICByZWFkb25seSBjdXJyZW50UGFnZURhdGEkID0gdGhpcy5zdG9yZS5waXBlKHNlbGVjdCh0aGlzLmxpc3RTZWxlY3RvcnMuZ2V0Q3VycmVudFBhZ2VEYXRhKSk7XHJcbiAgcmVhZG9ubHkgY3VycmVudFBhZ2VOdW1iZXIkID0gdGhpcy5zdG9yZS5waXBlKHNlbGVjdCh0aGlzLmxpc3RTZWxlY3RvcnMuZ2V0Q3VycmVudFBhZ2VOdW1iZXIpKTtcclxuICByZWFkb25seSBmaWx0ZXJpbmdPcHRpb25zJCA9IHRoaXMuc3RvcmUucGlwZShzZWxlY3QodGhpcy5saXN0U2VsZWN0b3JzLmdldEZpbHRlcmluZ09wdGlvbnMpKTtcclxuICByZWFkb25seSByZXF1ZXN0UGFyYW1ldGVycyQgPSB0aGlzLnN0b3JlLnBpcGUoc2VsZWN0KHRoaXMubGlzdFNlbGVjdG9ycy5nZXRSZXF1ZXN0UGFyYW1ldGVycykpO1xyXG4gIHJlYWRvbmx5IGxhc3RQYWdlTnVtYmVyJCA9IHRoaXMuc3RvcmUucGlwZShzZWxlY3QodGhpcy5saXN0U2VsZWN0b3JzLmdldExhc3RQYWdlTnVtYmVyKSk7XHJcbiAgcmVhZG9ubHkgcGFnaW5nT3B0aW9ucyQgPSB0aGlzLnN0b3JlLnBpcGUoc2VsZWN0KHRoaXMubGlzdFNlbGVjdG9ycy5nZXRQYWdpbmdPcHRpb25zKSk7XHJcbiAgcmVhZG9ubHkgcmVxdWVzdE9wdGlvbnMkID0gdGhpcy5zdG9yZS5waXBlKHNlbGVjdCh0aGlzLmxpc3RTZWxlY3RvcnMuZ2V0UmVxdWVzdE9wdGlvbnMpKTtcclxuICByZWFkb25seSBzb3J0aW5nT3B0aW9ucyQgPSB0aGlzLnN0b3JlLnBpcGUoc2VsZWN0KHRoaXMubGlzdFNlbGVjdG9ycy5nZXRTb3J0aW5nT3B0aW9ucykpO1xyXG4gIHJlYWRvbmx5IHNlbGVjdGVkSXRlbXMkID0gdGhpcy5zdG9yZS5waXBlKHNlbGVjdCh0aGlzLmxpc3RTZWxlY3RvcnMuZ2V0U2VsZWN0ZWRJdGVtcykpO1xyXG4gIHJlYWRvbmx5IHRvdGFsQ291bnQkID0gdGhpcy5zdG9yZS5waXBlKHNlbGVjdCh0aGlzLmxpc3RTZWxlY3RvcnMuZ2V0VG90YWxDb3VudCkpO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByb3RlY3RlZCByZWFkb25seSBzdG9yZTogU3RvcmUsXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IGxpc3RBY3Rpb25zOiBMaXN0QWN0aW9uczxULCBFLCBTLCBQYXJhbXM+LFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBsaXN0U2VsZWN0b3JzOiBMaXN0U2VsZWN0b3JzPFMsIEUsIFBhcmFtcz5cclxuICApIHt9XHJcblxyXG4gIHNldFBhZ2VTaXplKHByb3BzOiBBY3Rpb25QYXlsb2FkPExpc3RBY3Rpb25zPFQsIEUsIFMsIFBhcmFtcz5bJ3NldFBhZ2VTaXplJ10+KTogdm9pZCB7XHJcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKHRoaXMubGlzdEFjdGlvbnMuc2V0UGFnZVNpemUocHJvcHMpKTtcclxuICB9XHJcblxyXG4gIHNldEZpbHRlcmluZyhwcm9wczogQWN0aW9uUGF5bG9hZDxMaXN0QWN0aW9uczxULCBFLCBTLCBQYXJhbXM+WydzZXRGaWx0ZXJpbmcnXT4pOiB2b2lkIHtcclxuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2godGhpcy5saXN0QWN0aW9ucy5zZXRGaWx0ZXJpbmcocHJvcHMpKTtcclxuICB9XHJcblxyXG4gIHNldFNvcnRpbmcocHJvcHM6IEFjdGlvblBheWxvYWQ8TGlzdEFjdGlvbnM8VCwgRSwgUywgUGFyYW1zPlsnc2V0U29ydGluZyddPik6IHZvaWQge1xyXG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaCh0aGlzLmxpc3RBY3Rpb25zLnNldFNvcnRpbmcocHJvcHMpKTtcclxuICB9XHJcblxyXG4gIHNldFJlcXVlc3RQYXJhbWV0ZXJzKHByb3BzOiBBY3Rpb25QYXlsb2FkPExpc3RBY3Rpb25zPFQsIEUsIFMsIFBhcmFtcz5bJ3NldFJlcXVlc3RQYXJhbXMnXT4pIHtcclxuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2godGhpcy5saXN0QWN0aW9ucy5zZXRSZXF1ZXN0UGFyYW1zKHByb3BzKSk7XHJcbiAgfVxyXG5cclxuICBjaGFuZ2VGaWx0ZXJpbmcocHJvcHM6IEFjdGlvblBheWxvYWQ8TGlzdEFjdGlvbnM8VCwgRSwgUywgUGFyYW1zPlsnY2hhbmdlRmlsdGVyaW5nJ10+KTogdm9pZCB7XHJcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKHRoaXMubGlzdEFjdGlvbnMuY2hhbmdlRmlsdGVyaW5nKHByb3BzKSk7XHJcbiAgfVxyXG5cclxuICBjaGFuZ2VQYWdpbmdPcHRpb25zKHByb3BzOiBBY3Rpb25QYXlsb2FkPExpc3RBY3Rpb25zPFQsIEUsIFMsIFBhcmFtcz5bJ2NoYW5nZVBhZ2luZ09wdGlvbnMnXT4pOiB2b2lkIHtcclxuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2godGhpcy5saXN0QWN0aW9ucy5jaGFuZ2VQYWdpbmdPcHRpb25zKHByb3BzKSk7XHJcbiAgfVxyXG5cclxuICBjaGFuZ2VQYWdlU2l6ZShwcm9wczogQWN0aW9uUGF5bG9hZDxMaXN0QWN0aW9uczxULCBFLCBTLCBQYXJhbXM+WydjaGFuZ2VQYWdlU2l6ZSddPik6IHZvaWQge1xyXG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaCh0aGlzLmxpc3RBY3Rpb25zLmNoYW5nZVBhZ2VTaXplKHByb3BzKSk7XHJcbiAgfVxyXG5cclxuICBjaGFuZ2VQYWdlTnVtYmVyKHByb3BzOiBBY3Rpb25QYXlsb2FkPExpc3RBY3Rpb25zPFQsIEUsIFMsIFBhcmFtcz5bJ2NoYW5nZVBhZ2VOdW1iZXInXT4pOiB2b2lkIHtcclxuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2godGhpcy5saXN0QWN0aW9ucy5jaGFuZ2VQYWdlTnVtYmVyKHByb3BzKSk7XHJcbiAgfVxyXG5cclxuICBjaGFuZ2VTZWxlY3RlZFJlc291cmNlcyhwcm9wczogQWN0aW9uUGF5bG9hZDxMaXN0QWN0aW9uczxULCBFLCBTLCBQYXJhbXM+WydjaGFuZ2VTZWxlY3RlZFJlc291cmNlcyddPik6IHZvaWQge1xyXG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaCh0aGlzLmxpc3RBY3Rpb25zLmNoYW5nZVNlbGVjdGVkUmVzb3VyY2VzKHByb3BzKSk7XHJcbiAgfVxyXG5cclxuICBjaGFuZ2VTb3J0aW5nKHByb3BzOiBBY3Rpb25QYXlsb2FkPExpc3RBY3Rpb25zPFQsIEUsIFMsIFBhcmFtcz5bJ2NoYW5nZVNvcnRpbmcnXT4pOiB2b2lkIHtcclxuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2godGhpcy5saXN0QWN0aW9ucy5jaGFuZ2VTb3J0aW5nKHByb3BzKSk7XHJcbiAgfVxyXG5cclxuICBjaGFuZ2VSZXF1ZXN0UGFyYW1zKHByb3BzOiBBY3Rpb25QYXlsb2FkPExpc3RBY3Rpb25zPFQsIEUsIFMsIFBhcmFtcz5bJ2NoYW5nZVJlcXVlc3RQYXJhbXMnXT4pOiB2b2lkIHtcclxuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2godGhpcy5saXN0QWN0aW9ucy5jaGFuZ2VSZXF1ZXN0UGFyYW1zKHByb3BzKSk7XHJcbiAgfVxyXG5cclxuICBsb2FkUGFnZSgpOiB2b2lkIHtcclxuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2godGhpcy5saXN0QWN0aW9ucy5sb2FkUGFnZSgpKTtcclxuICB9XHJcblxyXG4gIGxvYWRGaXJzdFBhZ2UoKTogdm9pZCB7XHJcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKHRoaXMubGlzdEFjdGlvbnMubG9hZEZpcnN0UGFnZSgpKTtcclxuICB9XHJcblxyXG4gIGxvYWROZXh0UGFnZSgpOiB2b2lkIHtcclxuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2godGhpcy5saXN0QWN0aW9ucy5sb2FkTmV4dFBhZ2UoKSk7XHJcbiAgfVxyXG5cclxuICBsb2FkUHJldmlvdXNQYWdlKCk6IHZvaWQge1xyXG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaCh0aGlzLmxpc3RBY3Rpb25zLmxvYWRQcmV2aW91c1BhZ2UoKSk7XHJcbiAgfVxyXG5cclxuICBwYXRjaChwcm9wczogQWN0aW9uUGF5bG9hZDxMaXN0QWN0aW9uczxULCBFLCBTLCBQYXJhbXM+WydwYXRjaCddPik6IHZvaWQge1xyXG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaCh0aGlzLmxpc3RBY3Rpb25zLnBhdGNoKHByb3BzKSk7XHJcbiAgfVxyXG5cclxuICBkZWxldGUocHJvcHM6IEFjdGlvblBheWxvYWQ8TGlzdEFjdGlvbnM8VCwgRSwgUywgUGFyYW1zPlsnZGVsZXRlJ10+KTogdm9pZCB7XHJcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKHRoaXMubGlzdEFjdGlvbnMuZGVsZXRlKHByb3BzKSk7XHJcbiAgfVxyXG5cclxuICBpbml0aWFsaXplKCk6IHZvaWQge1xyXG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaCh0aGlzLmxpc3RBY3Rpb25zLmluaXRpYWxpemUoKSk7XHJcbiAgfVxyXG5cclxuICByZWluaXRpYWxpemUoKTogdm9pZCB7XHJcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKHRoaXMubGlzdEFjdGlvbnMucmVzZXQoKSk7XHJcbiAgfVxyXG5cclxuICByZXNldFJlcXVlc3RTdGF0ZSgpOiB2b2lkIHtcclxuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2godGhpcy5saXN0QWN0aW9ucy5yZXNldFJlcXVlc3RTdGF0ZSgpKTtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
import { createAction, props } from '@ngrx/store';
|
|
2
|
-
export function createListActions(featureName) {
|
|
3
|
-
const resetRequestState = createAction(`[${featureName} API] Reset ${featureName} Request State`);
|
|
4
|
-
const initialize = createAction(`[${featureName} API] Initialize ${featureName}`);
|
|
5
|
-
const reset = createAction(`[Organization ${featureName} API] Reset ${featureName}`);
|
|
6
|
-
const loadNextPage = createAction(`[${featureName} API] Load Next ${featureName} Page`);
|
|
7
|
-
const loadPreviousPage = createAction(`[${featureName} API] Load Previous ${featureName} Page`);
|
|
8
|
-
const loadFirstPage = createAction(`[${featureName} API] Load First ${featureName} Page`);
|
|
9
|
-
const setPageSize = createAction(`[${featureName} API] Set ${featureName} Page Size`, props());
|
|
10
|
-
const setSorting = createAction(`[${featureName} API] Set ${featureName} Sorting`, props());
|
|
11
|
-
const setFiltering = createAction(`[${featureName} API] Set ${featureName} Filtering`, props());
|
|
12
|
-
const setRequestParams = createAction(`[${featureName} API] Set ${featureName} Request Params`, props());
|
|
13
|
-
const changePageSize = createAction(`[${featureName} API] Change ${featureName} Page Size`, props());
|
|
14
|
-
const changePageNumber = createAction(`[${featureName} API] Change ${featureName} Page Number`, props());
|
|
15
|
-
const changePagingOptions = createAction(`[${featureName} API] Change ${featureName} Page Options`, props());
|
|
16
|
-
const changeSorting = createAction(`[${featureName} API] Change ${featureName} Sorting`, props());
|
|
17
|
-
const changeFiltering = createAction(`[${featureName} API] Change ${featureName} Filtering`, props());
|
|
18
|
-
const changeSelectedResources = createAction(`[${featureName} API] Change Selected Resources ${featureName}`, props());
|
|
19
|
-
const changeRequestParams = createAction(`[${featureName} API] Change ${featureName} Request Params`, props());
|
|
20
|
-
const loadPage = createAction(`[${featureName} API] Load ${featureName} Page`);
|
|
21
|
-
const loadPageSuccess = createAction(`[${featureName} API] Load ${featureName} Page Success`, props());
|
|
22
|
-
const loadPageFailure = createAction(`[${featureName} API] Load ${featureName} Page Failure`, props());
|
|
23
|
-
const deleteAction = createAction(`[${featureName} API] Delete ${featureName}`, props());
|
|
24
|
-
const deleteSuccess = createAction(`[${featureName} API] Delete ${featureName} Success`, props());
|
|
25
|
-
const deleteFailure = createAction(`[${featureName} API] Delete ${featureName} Failure`, props());
|
|
26
|
-
const patch = createAction(`[${featureName} API] Patch ${featureName}`, props());
|
|
27
|
-
const patchSuccess = createAction(`[${featureName} API] Patch ${featureName} Success`, props());
|
|
28
|
-
const patchFailure = createAction(`[${featureName} API] Patch ${featureName} Failure`, props());
|
|
29
|
-
return {
|
|
30
|
-
initialize,
|
|
31
|
-
reset,
|
|
32
|
-
setPageSize,
|
|
33
|
-
setSorting,
|
|
34
|
-
setFiltering,
|
|
35
|
-
setRequestParams,
|
|
36
|
-
changePageSize,
|
|
37
|
-
changePageNumber,
|
|
38
|
-
changePagingOptions,
|
|
39
|
-
changeSorting,
|
|
40
|
-
changeFiltering,
|
|
41
|
-
changeRequestParams,
|
|
42
|
-
loadPreviousPage,
|
|
43
|
-
loadNextPage,
|
|
44
|
-
loadFirstPage,
|
|
45
|
-
changeSelectedResources,
|
|
46
|
-
loadPage,
|
|
47
|
-
loadPageSuccess,
|
|
48
|
-
loadPageFailure,
|
|
49
|
-
delete: deleteAction,
|
|
50
|
-
deleteSuccess,
|
|
51
|
-
deleteFailure,
|
|
52
|
-
patch,
|
|
53
|
-
patchSuccess,
|
|
54
|
-
patchFailure,
|
|
55
|
-
resetRequestState
|
|
56
|
-
};
|
|
57
|
-
}
|
|
58
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1hY3Rpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9uZ2R1eC91dGlsL3N0b3JlL2xpc3Qvc3JjL2xpYi9zdGF0ZS1nZW5lcmF0b3IvbGlzdC1hY3Rpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBR2xELE1BQU0sVUFBVSxpQkFBaUIsQ0FDL0IsV0FBbUI7SUFFbkIsTUFBTSxpQkFBaUIsR0FBRyxZQUFZLENBQUMsSUFBSSxXQUFXLGVBQWUsV0FBVyxnQkFBZ0IsQ0FBQyxDQUFDO0lBQ2xHLE1BQU0sVUFBVSxHQUFHLFlBQVksQ0FBQyxJQUFJLFdBQVcsb0JBQW9CLFdBQVcsRUFBRSxDQUFDLENBQUM7SUFDbEYsTUFBTSxLQUFLLEdBQUcsWUFBWSxDQUFDLGlCQUFpQixXQUFXLGVBQWUsV0FBVyxFQUFFLENBQUMsQ0FBQztJQUVyRixNQUFNLFlBQVksR0FBRyxZQUFZLENBQUMsSUFBSSxXQUFXLG1CQUFtQixXQUFXLE9BQU8sQ0FBQyxDQUFDO0lBQ3hGLE1BQU0sZ0JBQWdCLEdBQUcsWUFBWSxDQUFDLElBQUksV0FBVyx1QkFBdUIsV0FBVyxPQUFPLENBQUMsQ0FBQztJQUNoRyxNQUFNLGFBQWEsR0FBRyxZQUFZLENBQUMsSUFBSSxXQUFXLG9CQUFvQixXQUFXLE9BQU8sQ0FBQyxDQUFDO0lBRTFGLE1BQU0sV0FBVyxHQUFHLFlBQVksQ0FBQyxJQUFJLFdBQVcsYUFBYSxXQUFXLFlBQVksRUFBRSxLQUFLLEVBQXdCLENBQUMsQ0FBQztJQUNySCxNQUFNLFVBQVUsR0FBRyxZQUFZLENBQzdCLElBQUksV0FBVyxhQUFhLFdBQVcsVUFBVSxFQUNqRCxLQUFLLEVBQXNDLENBQzVDLENBQUM7SUFDRixNQUFNLFlBQVksR0FBRyxZQUFZLENBQy9CLElBQUksV0FBVyxhQUFhLFdBQVcs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Q29udGVudCI6WyJpbXBvcnQgeyBFcnJvckR0bywgRmlsdGVyaW5nT3B0aW9ucywgUGFnaW5nT3B0aW9ucywgU29ydGluZ0ZpZWxkIH0gZnJvbSAnQG5nZHV4L2RhdGEtbW9kZWwtY29tbW9uJztcclxuaW1wb3J0IHsgY3JlYXRlQWN0aW9uLCBwcm9wcyB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcclxuaW1wb3J0IHsgTGlzdEFjdGlvbnMgfSBmcm9tICcuLi9tb2RlbHMvbGlzdC5tb2RlbCc7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlTGlzdEFjdGlvbnM8VCwgRSwgUyA9IFQsIFBhcmFtcyA9IFJlY29yZDxzdHJpbmcsIHN0cmluZz4+KFxyXG4gIGZlYXR1cmVOYW1lOiBzdHJpbmdcclxuKTogTGlzdEFjdGlvbnM8VCwgRSwgUywgUGFyYW1zPiB7XHJcbiAgY29uc3QgcmVzZXRSZXF1ZXN0U3RhdGUgPSBjcmVhdGVBY3Rpb24oYFske2ZlYXR1cmVOYW1lfSBBUEldIFJlc2V0ICR7ZmVhdHVyZU5hbWV9IFJlcXVlc3QgU3RhdGVgKTtcclxuICBjb25zdCBpbml0aWFsaXplID0gY3JlYXRlQWN0aW9uKGBbJHtmZWF0dXJlTmFtZX0gQVBJXSBJbml0aWFsaXplICR7ZmVhdHVyZU5hbWV9YCk7XHJcbiAgY29uc3QgcmVzZXQgPSBjcmVhdGVBY3Rpb24oYFtPcmdhbml6YXRpb24gJHtmZWF0dXJlTmFtZX0gQVBJXSBSZXNldCAke2ZlYXR1cmVOYW1lfWApO1xyXG5cclxuICBjb25zdCBsb2FkTmV4dFBhZ2UgPSBjcmVhdGVBY3Rpb24oYFske2ZlYXR1cmVOYW1lfSBBUEldIExvYWQgTmV4dCAke2ZlYXR1cmVOYW1lfSBQYWdlYCk7XHJcbiAgY29uc3QgbG9hZFByZXZpb3VzUGFnZSA9IGNyZWF0ZUFjdGlvbihgWyR7ZmVhdHVyZU5hbWV9IEFQSV0gTG9hZCBQcmV2aW91cyAke2ZlYXR1cmVOYW1lfSBQYWdlYCk7XHJcbiAgY29uc3QgbG9hZEZpcnN0UGFnZSA9IGNyZWF0ZUFjdGlvbihgWyR7ZmVhdHVyZU5hbWV9IEFQSV0gTG9hZCBGaXJzdCAke2ZlYXR1cmVOYW1lfSBQYWdlYCk7XHJcblxyXG4gIGNvbnN0IHNldFBhZ2VTaXplID0gY3JlYXRlQWN0aW9uKGBbJHtmZWF0dXJlTmFtZX0gQVBJXSBTZXQgJHtmZWF0dXJlTmFtZX0gUGFnZSBTaXplYCwgcHJvcHM8eyBwYWdlU2l6ZTogbnVtYmVyIH0+KCkpO1xyXG4gIGNvbnN0IHNldFNvcnRpbmcgPSBjcmVhdGVBY3Rpb24oXHJcbiAgICBgWyR7ZmVhdHVyZU5hbWV9IEFQSV0gU2V0ICR7ZmVhdHVyZU5hbWV9IFNvcnRpbmdgLFxyXG4gICAgcHJvcHM8eyBzb3J0aW5nT3B0aW9uczogU29ydGluZ0ZpZWxkW10gfT4oKVxyXG4gICk7XHJcbiAgY29uc3Qgc2V0RmlsdGVyaW5nID0gY3JlYXRlQWN0aW9uKFxyXG4gICAgYFske2ZlYXR1cmVOYW1lfSBBUEldIFNldCAke2ZlYXR1cmVOYW1lfSBGaWx0ZXJpbmdgLFxyXG4gICAgcHJvcHM8eyBmaWx0ZXJpbmdPcHRpb25zOiBGaWx0ZXJpbmdPcHRpb25zIH0+KClcclxuICApO1xyXG4gIGNvbnN0IHNldFJlcXVlc3RQYXJhbXMgPSBjcmVhdGVBY3Rpb24oXHJcbiAgICBgWyR7ZmVhdHVyZU5hbWV9IEFQSV0gU2V0ICR7ZmVhdHVyZU5hbWV9IFJlcXVlc3QgUGFyYW1zYCxcclxuICAgIHByb3BzPHsgcGFyYW1zOiBQYXJhbXMgfT4oKVxyXG4gICk7XHJcblxyXG4gIGNvbnN0IGNoYW5nZVBhZ2VTaXplID0gY3JlYXRlQWN0aW9uKFxyXG4gICAgYFske2ZlYXR1cmVOYW1lfSBBUEldIENoYW5nZSAke2ZlYXR1cmVOYW1lfSBQYWdlIFNpemVgLFxyXG4gICAgcHJvcHM8eyBwYWdlU2l6ZTogbnVtYmVyIH0+KClcclxuICApO1xyXG5cclxuICBjb25zdCBjaGFuZ2VQYWdlTnVtYmVyID0gY3JlYXRlQWN0aW9uKFxyXG4gICAgYFske2ZlYXR1cmVOYW1lfSBBUEldIENoYW5nZSAke2ZlYXR1cmVOYW1lfSBQYWdlIE51bWJlcmAsXHJcbiAgICBwcm9wczx7IHBhZ2VOdW1iZXI6IG51bWJlciB9PigpXHJcbiAgKTtcclxuXHJcbiAgY29uc3QgY2hhbmdlUGFnaW5nT3B0aW9ucyA9IGNyZWF0ZUFjdGlvbihcclxuICAgIGBbJHtmZWF0dXJlTmFtZX0gQVBJXSBDaGFuZ2UgJHtmZWF0dXJlTmFtZX0gUGFnZSBPcHRpb25zYCxcclxuICAgIHByb3BzPHsgcGFnaW5nT3B0aW9uczogUGFnaW5nT3B0aW9ucyB9PigpXHJcbiAgKTtcclxuICBjb25zdCBjaGFuZ2VTb3J0aW5nID0gY3JlYXRlQWN0aW9uKFxyXG4gICAgYFske2ZlYXR1cmVOYW1lfSBBUEldIENoYW5nZSAke2ZlYXR1cmVOYW1lfSBTb3J0aW5nYCxcclxuICAgIHByb3BzPHsgc29ydGluZ09wdGlvbnM6IFNvcnRpbmdGaWVsZFtdIH0+KClcclxuICApO1xyXG4gIGNvbnN0IGNoYW5nZUZpbHRlcmluZyA9IGNyZWF0ZUFjdGlvbihcclxuICAgIGBbJHtmZWF0dXJlTmFtZX0gQVBJXSBDaGFuZ2UgJHtmZWF0dXJlTmFtZX0gRmlsdGVyaW5nYCxcclxuICAgIHByb3BzPHsgZmlsdGVyaW5nT3B0aW9uczogRmlsdGVyaW5nT3B0aW9ucyB9PigpXHJcbiAgKTtcclxuICBjb25zdCBjaGFuZ2VTZWxlY3RlZFJlc291cmNlcyA9IGNyZWF0ZUFjdGlvbihcclxuICAgIGBbJHtmZWF0dXJlTmFtZX0gQVBJXSBDaGFuZ2UgU2VsZWN0ZWQgUmVzb3VyY2VzICR7ZmVhdHVyZU5hbWV9YCxcclxuICAgIHByb3BzPHsgc2VsZWN0ZWRSZXNvdXJjZUlkczogc3RyaW5nW10gfT4oKVxyXG4gICk7XHJcbiAgY29uc3QgY2hhbmdlUmVxdWVzdFBhcmFtcyA9IGNyZWF0ZUFjdGlvbihcclxuICAgIGBbJHtmZWF0dXJlTmFtZX0gQVBJXSBDaGFuZ2UgJHtmZWF0dXJlTmFtZX0gUmVxdWVzdCBQYXJhbXNgLFxyXG4gICAgcHJvcHM8eyBwYXJhbXM6IFBhcmFtcyB9PigpXHJcbiAgKTtcclxuXHJcbiAgY29uc3QgbG9hZFBhZ2UgPSBjcmVhdGVBY3Rpb24oYFske2ZlYXR1cmVOYW1lfSBBUEldIExvYWQgJHtmZWF0dXJlTmFtZX0gUGFnZWApO1xyXG4gIGNvbnN0IGxvYWRQYWdlU3VjY2VzcyA9IGNyZWF0ZUFjdGlvbihcclxuICAgIGBbJHtmZWF0dXJlTmFtZX0gQVBJXSBMb2FkICR7ZmVhdHVyZU5hbWV9IFBhZ2UgU3VjY2Vzc2AsXHJcbiAgICBwcm9wczx7IHJlc291cmNlczogU1tdOyBwYWdpbmdPcHRpb25zOiBQYWdpbmdPcHRpb25zIH0+KClcclxuICApO1xyXG4gIGNvbnN0IGxvYWRQYWdlRmFpbHVyZSA9IGNyZWF0ZUFjdGlvbihgWyR7ZmVhdHVyZU5hbWV9IEFQSV0gTG9hZCAke2ZlYXR1cmVOYW1lfSBQYWdlIEZhaWx1cmVgLCBwcm9wczx7IGVycm9yczogRSB9PigpKTtcclxuXHJcbiAgY29uc3QgZGVsZXRlQWN0aW9uID0gY3JlYXRlQWN0aW9uKGBbJHtmZWF0dXJlTmFtZX0gQVBJXSBEZWxldGUgJHtmZWF0dXJlTmFtZX1gLCBwcm9wczx7IHJlc291cmNlSWRzOiBzdHJpbmdbXSB9PigpKTtcclxuICBjb25zdCBkZWxldGVTdWNjZXNzID0gY3JlYXRlQWN0aW9uKFxyXG4gICAgYFske2ZlYXR1cmVOYW1lfSBBUEldIERlbGV0ZSAke2ZlYXR1cmVOYW1lfSBTdWNjZXNzYCxcclxuICAgIHByb3BzPHsgcmVzb3VyY2VJZHM6IHN0cmluZ1tdIH0+KClcclxuICApO1xyXG4gIGNvbnN0IGRlbGV0ZUZhaWx1cmUgPSBjcmVhdGVBY3Rpb24oYFske2ZlYXR1cmVOYW1lfSBBUEldIERlbGV0ZSAke2ZlYXR1cmVOYW1lfSBGYWlsdXJlYCwgcHJvcHM8eyBlcnJvcnM6IEUgfT4oKSk7XHJcblxyXG4gIGNvbnN0IHBhdGNoID0gY3JlYXRlQWN0aW9uKFxyXG4gICAgYFske2ZlYXR1cmVOYW1lfSBBUEldIFBhdGNoICR7ZmVhdHVyZU5hbWV9YCxcclxuICAgIHByb3BzPHsgcmVzb3VyY2VJZHM6IHN0cmluZ1tdOyByZXNvdXJjZTogUGFydGlhbDxUPiB9PigpXHJcbiAgKTtcclxuICBjb25zdCBwYXRjaFN1Y2Nlc3MgPSBjcmVhdGVBY3Rpb24oXHJcbiAgICBgWyR7ZmVhdHVyZU5hbWV9IEFQSV0gUGF0Y2ggJHtmZWF0dXJlTmFtZX0gU3VjY2Vzc2AsXHJcbiAgICBwcm9wczx7IHJlc291cmNlczogKFQgfCBFcnJvckR0bylbXSB9PigpXHJcbiAgKTtcclxuICBjb25zdCBwYXRjaEZhaWx1cmUgPSBjcmVhdGVBY3Rpb24oYFske2ZlYXR1cmVOYW1lfSBBUEldIFBhdGNoICR7ZmVhdHVyZU5hbWV9IEZhaWx1cmVgLCBwcm9wczx7IGVycm9yczogRSB9PigpKTtcclxuXHJcbiAgcmV0dXJuIHtcclxuICAgIGluaXRpYWxpemUsXHJcbiAgICByZXNldCxcclxuICAgIHNldFBhZ2VTaXplLFxyXG4gICAgc2V0U29ydGluZyxcclxuICAgIHNldEZpbHRlcmluZyxcclxuICAgIHNldFJlcXVlc3RQYXJhbXMsXHJcbiAgICBjaGFuZ2VQYWdlU2l6ZSxcclxuICAgIGNoYW5nZVBhZ2VOdW1iZXIsXHJcbiAgICBjaGFuZ2VQYWdpbmdPcHRpb25zLFxyXG4gICAgY2hhbmdlU29ydGluZyxcclxuICAgIGNoYW5nZUZpbHRlcmluZyxcclxuICAgIGNoYW5nZVJlcXVlc3RQYXJhbXMsXHJcbiAgICBsb2FkUHJldmlvdXNQYWdlLFxyXG4gICAgbG9hZE5leHRQYWdlLFxyXG4gICAgbG9hZEZpcnN0UGFnZSxcclxuICAgIGNoYW5nZVNlbGVjdGVkUmVzb3VyY2VzLFxyXG4gICAgbG9hZFBhZ2UsXHJcbiAgICBsb2FkUGFnZVN1Y2Nlc3MsXHJcbiAgICBsb2FkUGFnZUZhaWx1cmUsXHJcbiAgICBkZWxldGU6IGRlbGV0ZUFjdGlvbixcclxuICAgIGRlbGV0ZVN1Y2Nlc3MsXHJcbiAgICBkZWxldGVGYWlsdXJlLFxyXG4gICAgcGF0Y2gsXHJcbiAgICBwYXRjaFN1Y2Nlc3MsXHJcbiAgICBwYXRjaEZhaWx1cmUsXHJcbiAgICByZXNldFJlcXVlc3RTdGF0ZVxyXG4gIH07XHJcbn1cclxuIl19
|
|
@@ -1,104 +0,0 @@
|
|
|
1
|
-
import { DEFAULT_PAGE, getDefaultRequestOptions, RequestState } from '@ngdux/data-model-common';
|
|
2
|
-
import { createLoadingStateActionHandlers, createRequestStateActionHandlers, getLastPageNumber } from '@ngdux/store-common';
|
|
3
|
-
import { createEntityAdapter } from '@ngrx/entity';
|
|
4
|
-
import { createReducer, on } from '@ngrx/store';
|
|
5
|
-
export function createListEntityAdapter(idKey = 'id') {
|
|
6
|
-
return createEntityAdapter({
|
|
7
|
-
selectId: resource => resource[idKey]
|
|
8
|
-
});
|
|
9
|
-
}
|
|
10
|
-
export function createListReducer(entityAdapter, actions, actionHandlers, initialListState) {
|
|
11
|
-
const initialState = {
|
|
12
|
-
...createInitialListState(entityAdapter),
|
|
13
|
-
...initialListState
|
|
14
|
-
};
|
|
15
|
-
return createReducer(initialState, ...createListActionHandlers(initialState, entityAdapter, actions), ...(actionHandlers || []));
|
|
16
|
-
}
|
|
17
|
-
function createInitialListState(entityAdapter) {
|
|
18
|
-
return entityAdapter.getInitialState({
|
|
19
|
-
...getDefaultRequestOptions(),
|
|
20
|
-
lastPageNumber: undefined,
|
|
21
|
-
selectedResourceIds: [],
|
|
22
|
-
loadingState: RequestState.IDLE,
|
|
23
|
-
requestState: RequestState.IDLE,
|
|
24
|
-
errors: undefined
|
|
25
|
-
});
|
|
26
|
-
}
|
|
27
|
-
function createListActionHandlers(initialListState, entityAdapter, actions) {
|
|
28
|
-
return [
|
|
29
|
-
on(actions.reset, () => initialListState),
|
|
30
|
-
on(actions.initialize, (state) => entityAdapter.removeAll({
|
|
31
|
-
...state,
|
|
32
|
-
selectedResourceIds: [],
|
|
33
|
-
pagingOptions: {
|
|
34
|
-
...state.pagingOptions,
|
|
35
|
-
page: DEFAULT_PAGE
|
|
36
|
-
},
|
|
37
|
-
requestState: RequestState.IDLE
|
|
38
|
-
})),
|
|
39
|
-
on(actions.changePageSize, actions.setPageSize, (state, { pageSize }) => ({
|
|
40
|
-
...state,
|
|
41
|
-
pagingOptions: { page: DEFAULT_PAGE, pageSize },
|
|
42
|
-
lastPageNumber: undefined
|
|
43
|
-
})),
|
|
44
|
-
on(actions.changePageNumber, (state, { pageNumber }) => ({
|
|
45
|
-
...state,
|
|
46
|
-
pagingOptions: { ...state.pagingOptions, page: pageNumber }
|
|
47
|
-
})),
|
|
48
|
-
on(actions.changePagingOptions, (state, { pagingOptions }) => ({
|
|
49
|
-
...state,
|
|
50
|
-
pagingOptions
|
|
51
|
-
})),
|
|
52
|
-
on(actions.changeSorting, actions.setSorting, (state, { sortingOptions }) => ({
|
|
53
|
-
...state,
|
|
54
|
-
sortingOptions,
|
|
55
|
-
pagingOptions: { ...state.pagingOptions, page: DEFAULT_PAGE }
|
|
56
|
-
})),
|
|
57
|
-
on(actions.changeFiltering, actions.setFiltering, (state, { filteringOptions }) => ({
|
|
58
|
-
...state,
|
|
59
|
-
filteringOptions,
|
|
60
|
-
pagingOptions: { ...state.pagingOptions, page: DEFAULT_PAGE },
|
|
61
|
-
lastPageNumber: undefined
|
|
62
|
-
})),
|
|
63
|
-
on(actions.changeRequestParams, actions.setRequestParams, (state, { params }) => ({
|
|
64
|
-
...state,
|
|
65
|
-
requestParameters: params,
|
|
66
|
-
pagingOptions: { ...state.pagingOptions, page: DEFAULT_PAGE }
|
|
67
|
-
})),
|
|
68
|
-
on(actions.changeSelectedResources, (state, { selectedResourceIds }) => ({
|
|
69
|
-
...state,
|
|
70
|
-
selectedResourceIds
|
|
71
|
-
})),
|
|
72
|
-
on(actions.loadFirstPage, (state) => ({
|
|
73
|
-
...state,
|
|
74
|
-
pagingOptions: { ...state.pagingOptions, page: 1 }
|
|
75
|
-
})),
|
|
76
|
-
on(actions.loadPageSuccess, (state, { resources, pagingOptions }) => {
|
|
77
|
-
const lastPageNumber = getLastPageNumber(resources, pagingOptions) || state.lastPageNumber;
|
|
78
|
-
if (lastPageNumber && pagingOptions.page > lastPageNumber) {
|
|
79
|
-
return {
|
|
80
|
-
...state,
|
|
81
|
-
pagingOptions: {
|
|
82
|
-
...state.pagingOptions,
|
|
83
|
-
page: lastPageNumber
|
|
84
|
-
},
|
|
85
|
-
lastPageNumber,
|
|
86
|
-
selectedResourceIds: []
|
|
87
|
-
};
|
|
88
|
-
}
|
|
89
|
-
return entityAdapter.setAll(resources, {
|
|
90
|
-
...state,
|
|
91
|
-
lastPageNumber,
|
|
92
|
-
selectedResourceIds: []
|
|
93
|
-
});
|
|
94
|
-
}),
|
|
95
|
-
on(actions.deleteSuccess, (state) => ({
|
|
96
|
-
...state,
|
|
97
|
-
selectedResourceIds: []
|
|
98
|
-
})),
|
|
99
|
-
...createLoadingStateActionHandlers(actions.loadPage, actions.loadPageSuccess, actions.loadPageFailure),
|
|
100
|
-
...createRequestStateActionHandlers(undefined, actions.delete, actions.deleteSuccess, actions.deleteFailure),
|
|
101
|
-
...createRequestStateActionHandlers(actions.resetRequestState, actions.patch, actions.patchSuccess, actions.patchFailure)
|
|
102
|
-
];
|
|
103
|
-
}
|
|
104
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1yZWR1Y2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9uZ2R1eC91dGlsL3N0b3JlL2xpc3Qvc3JjL2xpYi9zdGF0ZS1nZW5lcmF0b3IvbGlzdC1yZWR1Y2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsd0JBQXdCLEVBQUUsWUFBWSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDaEcsT0FBTyxFQUNMLGdDQUFnQyxFQUNoQyxnQ0FBZ0MsRUFDaEMsaUJBQWlCLEVBQ2xCLE1BQU0scUJBQXFCLENBQUM7QUFDN0IsT0FBTyxFQUFFLG1CQUFtQixFQUFpQixNQUFNLGNBQWMsQ0FBQztBQUNsRSxPQUFPLEVBQWlCLGFBQWEsRUFBRSxFQUFFLEVBQWdCLE1BQU0sYUFBYSxDQUFDO0FBSzdFLE1BQU0sVUFBVSx1QkFBdUIsQ0FBbUMsS0FBSyxHQUFHLElBQUk7SUFDcEYsT0FBTyxtQkFBbUIsQ0FBQztRQUN6QixRQUFRLEVBQUUsUUFBUSxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDO0tBQ3RDLENBQUMsQ0FBQztBQUNMLENBQUM7QUFFRCxNQUFNLFVBQVUsaUJBQWlCLENBQy9CLGFBQStCLEVBQy9CLE9BQXFDLEVBQ3JDLGNBQXlFLEVBQ3pFLGdCQUE2QztJQUU3QyxNQUFNLFlBQVksR0FBNEI7UUFDNUMsR0FBRyxzQkFBc0IsQ0FBZSxhQUFhLENBQUM7UUFDdEQsR0FBRyxnQkFBZ0I7S0FDcEIsQ0FBQztJQUNGLE9BQU8sYUFBYSxDQUNsQixZQUFZLEVBQ1osR0FBRyx3QkFBd0IsQ0FBa0IsWUFBWSxFQUFFLGFBQWEsRUFBRSxPQUFPLENBQUMsRUFDbEYsR0FBRyxDQUFDLGNBQWMsSUFBSSxFQUFFLENBQUMsQ0FDMUIsQ0FBQztBQUNKLENBQUM7QUFFRCxTQUFTLHNCQUFzQixDQUM3QixhQUErQjtJQUUvQixPQUFPLGFB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akMsT0FBTyxDQUFDLFFBQVEsRUFDaEIsT0FBTyxDQUFDLGVBQWUsRUFDdkIsT0FBTyxDQUFDLGVBQWUsQ0FDeEI7UUFDRCxHQUFHLGdDQUFnQyxDQUNqQyxTQUFTLEVBQ1QsT0FBTyxDQUFDLE1BQU0sRUFDZCxPQUFPLENBQUMsYUFBYSxFQUNyQixPQUFPLENBQUMsYUFBYSxDQUN0QjtRQUNELEdBQUcsZ0NBQWdDLENBQ2pDLE9BQU8sQ0FBQyxpQkFBaUIsRUFDekIsT0FBTyxDQUFDLEtBQUssRUFDYixPQUFPLENBQUMsWUFBWSxFQUNwQixPQUFPLENBQUMsWUFBWSxDQUNyQjtLQUNGLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgREVGQVVMVF9QQUdFLCBnZXREZWZhdWx0UmVxdWVzdE9wdGlvbnMsIFJlcXVlc3RTdGF0ZSB9IGZyb20gJ0BuZ2R1eC9kYXRhLW1vZGVsLWNvbW1vbic7XHJcbmltcG9ydCB7XHJcbiAgY3JlYXRlTG9hZGluZ1N0YXRlQWN0aW9uSGFuZGxlcnMsXHJcbiAgY3JlYXRlUmVxdWVzdFN0YXRlQWN0aW9uSGFuZGxlcnMsXHJcbiAgZ2V0TGFzdFBhZ2VOdW1iZXJcclxufSBmcm9tICdAbmdkdXgvc3RvcmUtY29tbW9uJztcclxuaW1wb3J0IHsgY3JlYXRlRW50aXR5QWRhcHRlciwgRW50aXR5QWRhcHRlciB9IGZyb20gJ0BuZ3J4L2VudGl0eSc7XHJcbmltcG9ydCB7IEFjdGlvblJlZHVjZXIsIGNyZWF0ZVJlZHVjZXIsIG9uLCBSZWR1Y2VyVHlwZXMgfSBmcm9tICdAbmdyeC9zdG9yZSc7XHJcbmltcG9ydCB7IEFjdGlvbkNyZWF0b3IgfSBmcm9tICdAbmdyeC9zdG9yZS9zcmMvbW9kZWxzJztcclxuXHJcbmltcG9ydCB7IExpc3RBY3Rpb25zLCBMaXN0U3RhdGUgfSBmcm9tICcuLi9tb2RlbHMvbGlzdC5tb2RlbCc7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlTGlzdEVudGl0eUFkYXB0ZXI8VCBleHRlbmRzIHsgW2tleTogc3RyaW5nXTogYW55IH0+KGlkS2V5ID0gJ2lkJyk6IEVudGl0eUFkYXB0ZXI8VD4ge1xyXG4gIHJldHVybiBjcmVhdGVFbnRpdHlBZGFwdGVyKHtcclxuICAgIHNlbGVjdElkOiByZXNvdXJjZSA9PiByZXNvdXJjZVtpZEtleV1cclxuICB9KTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZUxpc3RSZWR1Y2VyPFQsIEUsIFMgPSBULCBQYXJhbXMgPSBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+PihcclxuICBlbnRpdHlBZGFwdGVyOiBFbnRpdHlBZGFwdGVyPFM+LFxyXG4gIGFjdGlvbnM6IExpc3RBY3Rpb25zPFQsIEUsIFMsIFBhcmFtcz4sXHJcbiAgYWN0aW9uSGFuZGxlcnM/OiBSZWR1Y2VyVHlwZXM8TGlzdFN0YXRlPFMsIEUsIFBhcmFtcz4sIEFjdGlvbkNyZWF0b3JbXT5bXSxcclxuICBpbml0aWFsTGlzdFN0YXRlPzogeyBba2V5OiBzdHJpbmddOiB1bmtub3duIH1cclxuKTogQWN0aW9uUmVkdWNlcjxMaXN0U3RhdGU8UywgRSwgUGFyYW1zPj4ge1xyXG4gIGNvbnN0IGluaXRpYWxTdGF0ZTogTGlzdFN0YXRlPFMsIEUsIFBhcmFtcz4gPSB7XHJcbiAgICAuLi5jcmVhdGVJbml0aWFsTGlzdFN0YXRlPFMsIEUsIFBhcmFtcz4oZW50aXR5QWRhcHRlciksXHJcbiAgICAuLi5pbml0aWFsTGlzdFN0YXRlXHJcbiAgfTtcclxuICByZXR1cm4gY3JlYXRlUmVkdWNlcjxMaXN0U3RhdGU8UywgRSwgUGFyYW1zPj4oXHJcbiAgICBpbml0aWFsU3RhdGUsXHJcbiAgICAuLi5jcmVhdGVMaXN0QWN0aW9uSGFuZGxlcnM8VCwgRSwgUywgUGFyYW1zPihpbml0aWFsU3RhdGUsIGVudGl0eUFkYXB0ZXIsIGFjdGlvbnMpLFxyXG4gICAgLi4uKGFjdGlvbkhhbmRsZXJzIHx8IFtdKVxyXG4gICk7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIGNyZWF0ZUluaXRpYWxMaXN0U3RhdGU8VCwgRSwgUGFyYW1zID0gUmVjb3JkPHN0cmluZywgc3RyaW5nPj4oXHJcbiAgZW50aXR5QWRhcHRlcjogRW50aXR5QWRhcHRlcjxUPlxyXG4pOiBMaXN0U3RhdGU8VCwgRSwgUGFyYW1zPiB7XHJcbiAgcmV0dXJuIGVudGl0eUFkYXB0ZXIuZ2V0SW5pdGlhbFN0YXRlKHtcclxuICAgIC4uLmdldERlZmF1bHRSZXF1ZXN0T3B0aW9uczxQYXJhbXM+KCksXHJcbiAgICBsYXN0UGFnZU51bWJlcjogdW5kZWZpbmVkLFxyXG4gICAgc2VsZWN0ZWRSZXNvdXJjZUlkczogW10sXHJcbiAgICBsb2FkaW5nU3RhdGU6IFJlcXVlc3RTdGF0ZS5JRExFLFxyXG4gICAgcmVxdWVzdFN0YXRlOiBSZXF1ZXN0U3RhdGUuSURMRSxcclxuICAgIGVycm9yczogdW5kZWZpbmVkXHJcbiAgfSk7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIGNyZWF0ZUxpc3RBY3Rpb25IYW5kbGVyczxULCBFLCBTLCBQYXJhbXM+KFxyXG4gIGluaXRpYWxMaXN0U3RhdGU6IExpc3RTdGF0ZTxTLCBFLCBQYXJhbXM+LFxyXG4gIGVudGl0eUFkYXB0ZXI6IEVudGl0eUFkYXB0ZXI8Uz4sXHJcbiAgYWN0aW9uczogTGlzdEFjdGlvbnM8VCwgRSwgUywgUGFyYW1zPlxyXG4pOiBSZWR1Y2VyVHlwZXM8TGlzdFN0YXRlPFMsIEUsIFBhcmFtcz4sIEFjdGlvbkNyZWF0b3JbXT5bXSB7XHJcbiAgcmV0dXJuIFtcclxuICAgIG9uKGFjdGlvbnMucmVzZXQsICgpID0+IGluaXRpYWxMaXN0U3RhdGUpLFxyXG4gICAgb24oYWN0aW9ucy5pbml0aWFsaXplLCAoc3RhdGU6IExpc3RTdGF0ZTxTLCBFLCBQYXJhbXM+KSA9PlxyXG4gICAgICBlbnRpdHlBZGFwdGVyLnJlbW92ZUFsbCh7XHJcbiAgICAgICAgLi4uc3RhdGUsXHJcbiAgICAgICAgc2VsZWN0ZWRSZXNvdXJjZUlkczogW10sXHJcbiAgICAgICAgcGFnaW5nT3B0aW9uczoge1xyXG4gICAgICAgICAgLi4uc3RhdGUucGFnaW5nT3B0aW9ucyxcclxuICAgICAgICAgIHBhZ2U6IERFRkFVTFRfUEFHRVxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgcmVxdWVzdFN0YXRlOiBSZXF1ZXN0U3RhdGUuSURMRVxyXG4gICAgICB9KVxyXG4gICAgKSxcclxuICAgIG9uKGFjdGlvbnMuY2hhbmdlUGFnZVNpemUsIGFjdGlvbnMuc2V0UGFnZVNpemUsIChzdGF0ZTogTGlzdFN0YXRlPFMsIEUsIFBhcmFtcz4sIHsgcGFnZVNpemUgfSkgPT4gKHtcclxuICAgICAgLi4uc3RhdGUsXHJcbiAgICAgIHBhZ2luZ09wdGlvbnM6IHsgcGFnZTogREVGQVVMVF9QQUdFLCBwYWdlU2l6ZSB9LFxyXG4gICAgICBsYXN0UGFnZU51bWJlcjogdW5kZWZpbmVkXHJcbiAgICB9KSksXHJcbiAgICBvbihhY3Rpb25zLmNoYW5nZVBhZ2VOdW1iZXIsIChzdGF0ZTogTGlzdFN0YXRlPFMsIEUsIFBhcmFtcz4sIHsgcGFnZU51bWJlciB9KSA9PiAoe1xyXG4gICAgICAuLi5zdGF0ZSxcclxuICAgICAgcGFnaW5nT3B0aW9uczogeyAuLi5zdGF0ZS5wYWdpbmdPcHRpb25zLCBwYWdlOiBwYWdlTnVtYmVyIH1cclxuICAgIH0pKSxcclxuICAgIG9uKGFjdGlvbnMuY2hhbmdlUGFnaW5nT3B0aW9ucywgKHN0YXRlOiBMaXN0U3RhdGU8UywgRSwgUGFyYW1zPiwgeyBwYWdpbmdPcHRpb25zIH0pID0+ICh7XHJcbiAgICAgIC4uLnN0YXRlLFxyXG4gICAgICBwYWdpbmdPcHRpb25zXHJcbiAgICB9KSksXHJcbiAgICBvbihhY3Rpb25zLmNoYW5nZVNvcnRpbmcsIGFjdGlvbnMuc2V0U29ydGluZywgKHN0YXRlOiBMaXN0U3RhdGU8UywgRSwgUGFyYW1zPiwgeyBzb3J0aW5nT3B0aW9ucyB9KSA9PiAoe1xyXG4gICAgICAuLi5zdGF0ZSxcclxuICAgICAgc29ydGluZ09wdGlvbnMsXHJcbiAgICAgIHBhZ2luZ09wdGlvbnM6IHsgLi4uc3RhdGUucGFnaW5nT3B0aW9ucywgcGFnZTogREVGQVVMVF9QQUdFIH1cclxuICAgIH0pKSxcclxuICAgIG9uKGFjdGlvbnMuY2hhbmdlRmlsdGVyaW5nLCBhY3Rpb25zLnNldEZpbHRlcmluZywgKHN0YXRlOiBMaXN0U3RhdGU8UywgRSwgUGFyYW1zPiwgeyBmaWx0ZXJpbmdPcHRpb25zIH0pID0+ICh7XHJcbiAgICAgIC4uLnN0YXRlLFxyXG4gICAgICBmaWx0ZXJpbmdPcHRpb25zLFxyXG4gICAgICBwYWdpbmdPcHRpb25zOiB7IC4uLnN0YXRlLnBhZ2luZ09wdGlvbnMsIHBhZ2U6IERFRkFVTFRfUEFHRSB9LFxyXG4gICAgICBsYXN0UGFnZU51bWJlcjogdW5kZWZpbmVkXHJcbiAgICB9KSksXHJcbiAgICBvbihcclxuICAgICAgYWN0aW9ucy5jaGFuZ2VSZXF1ZXN0UGFyYW1zLFxyXG4gICAgICBhY3Rpb25zLnNldFJlcXVlc3RQYXJhbXMsXHJcbiAgICAgIChzdGF0ZTogTGlzdFN0YXRlPFMsIEUsIFBhcmFtcz4sIHsgcGFyYW1zIH0pOiBMaXN0U3RhdGU8UywgRSwgUGFyYW1zPiA9PiAoe1xyXG4gICAgICAgIC4uLnN0YXRlLFxyXG4gICAgICAgIHJlcXVlc3RQYXJhbWV0ZXJzOiBwYXJhbXMsXHJcbiAgICAgICAgcGFnaW5nT3B0aW9uczogeyAuLi5zdGF0ZS5wYWdpbmdPcHRpb25zLCBwYWdlOiBERUZBVUxUX1BBR0UgfVxyXG4gICAgICB9KVxyXG4gICAgKSxcclxuICAgIG9uKGFjdGlvbnMuY2hhbmdlU2VsZWN0ZWRSZXNvdXJjZXMsIChzdGF0ZTogTGlzdFN0YXRlPFMsIEUsIFBhcmFtcz4sIHsgc2VsZWN0ZWRSZXNvdXJjZUlkcyB9KSA9PiAoe1xyXG4gICAgICAuLi5zdGF0ZSxcclxuICAgICAgc2VsZWN0ZWRSZXNvdXJjZUlkc1xyXG4gICAgfSkpLFxyXG4gICAgb24oYWN0aW9ucy5sb2FkRmlyc3RQYWdlLCAoc3RhdGU6IExpc3RTdGF0ZTxTLCBFLCBQYXJhbXM+KSA9PiAoe1xyXG4gICAgICAuLi5zdGF0ZSxcclxuICAgICAgcGFnaW5nT3B0aW9uczogeyAuLi5zdGF0ZS5wYWdpbmdPcHRpb25zLCBwYWdlOiAxIH1cclxuICAgIH0pKSxcclxuICAgIG9uKGFjdGlvbnMubG9hZFBhZ2VTdWNjZXNzLCAoc3RhdGU6IExpc3RTdGF0ZTxTLCBFLCBQYXJhbXM+LCB7IHJlc291cmNlcywgcGFnaW5nT3B0aW9ucyB9KSA9PiB7XHJcbiAgICAgIGNvbnN0IGxhc3RQYWdlTnVtYmVyID0gZ2V0TGFzdFBhZ2VOdW1iZXIocmVzb3VyY2VzLCBwYWdpbmdPcHRpb25zKSB8fCBzdGF0ZS5sYXN0UGFnZU51bWJlcjtcclxuICAgICAgaWYgKGxhc3RQYWdlTnVtYmVyICYmIHBhZ2luZ09wdGlvbnMucGFnZSA+IGxhc3RQYWdlTnVtYmVyKSB7XHJcbiAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgIC4uLnN0YXRlLFxyXG4gICAgICAgICAgcGFnaW5nT3B0aW9uczoge1xyXG4gICAgICAgICAgICAuLi5zdGF0ZS5wYWdpbmdPcHRpb25zLFxyXG4gICAgICAgICAgICBwYWdlOiBsYXN0UGFnZU51bWJlclxyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIGxhc3RQYWdlTnVtYmVyLFxyXG4gICAgICAgICAgc2VsZWN0ZWRSZXNvdXJjZUlkczogW11cclxuICAgICAgICB9O1xyXG4gICAgICB9XHJcblxyXG4gICAgICByZXR1cm4gZW50aXR5QWRhcHRlci5zZXRBbGwocmVzb3VyY2VzLCB7XHJcbiAgICAgICAgLi4uc3RhdGUsXHJcbiAgICAgICAgbGFzdFBhZ2VOdW1iZXIsXHJcbiAgICAgICAgc2VsZWN0ZWRSZXNvdXJjZUlkczogW11cclxuICAgICAgfSk7XHJcbiAgICB9KSxcclxuICAgIG9uKGFjdGlvbnMuZGVsZXRlU3VjY2VzcywgKHN0YXRlOiBMaXN0U3RhdGU8UywgRSwgUGFyYW1zPikgPT4gKHtcclxuICAgICAgLi4uc3RhdGUsXHJcbiAgICAgIHNlbGVjdGVkUmVzb3VyY2VJZHM6IFtdIGFzIHN0cmluZ1tdXHJcbiAgICB9KSksXHJcbiAgICAuLi5jcmVhdGVMb2FkaW5nU3RhdGVBY3Rpb25IYW5kbGVyczxMaXN0U3RhdGU8UywgRSwgUGFyYW1zPj4oXHJcbiAgICAgIGFjdGlvbnMubG9hZFBhZ2UsXHJcbiAgICAgIGFjdGlvbnMubG9hZFBhZ2VTdWNjZXNzLFxyXG4gICAgICBhY3Rpb25zLmxvYWRQYWdlRmFpbHVyZVxyXG4gICAgKSxcclxuICAgIC4uLmNyZWF0ZVJlcXVlc3RTdGF0ZUFjdGlvbkhhbmRsZXJzPExpc3RTdGF0ZTxTLCBFLCBQYXJhbXM+LCBFPihcclxuICAgICAgdW5kZWZpbmVkLFxyXG4gICAgICBhY3Rpb25zLmRlbGV0ZSxcclxuICAgICAgYWN0aW9ucy5kZWxldGVTdWNjZXNzLFxyXG4gICAgICBhY3Rpb25zLmRlbGV0ZUZhaWx1cmVcclxuICAgICksXHJcbiAgICAuLi5jcmVhdGVSZXF1ZXN0U3RhdGVBY3Rpb25IYW5kbGVyczxMaXN0U3RhdGU8UywgRSwgUGFyYW1zPiwgRT4oXHJcbiAgICAgIGFjdGlvbnMucmVzZXRSZXF1ZXN0U3RhdGUsXHJcbiAgICAgIGFjdGlvbnMucGF0Y2gsXHJcbiAgICAgIGFjdGlvbnMucGF0Y2hTdWNjZXNzLFxyXG4gICAgICBhY3Rpb25zLnBhdGNoRmFpbHVyZVxyXG4gICAgKVxyXG4gIF07XHJcbn1cclxuIl19
|
|
@@ -1,80 +0,0 @@
|
|
|
1
|
-
/* eslint-disable @typescript-eslint/ban-types */
|
|
2
|
-
import { RequestState } from '@ngdux/data-model-common';
|
|
3
|
-
import { createSelector } from '@ngrx/store';
|
|
4
|
-
export function createListSelectors(entityAdapter, getListState) {
|
|
5
|
-
const getAll = createSelector(getListState, entityAdapter.getSelectors().selectAll);
|
|
6
|
-
const getPagingOptions = createSelector(getListState, state => state.pagingOptions);
|
|
7
|
-
const getRequestOptions = createSelector(getListState, (state) => ({
|
|
8
|
-
pagingOptions: state.pagingOptions,
|
|
9
|
-
sortingOptions: state.sortingOptions,
|
|
10
|
-
filteringOptions: state.filteringOptions
|
|
11
|
-
}));
|
|
12
|
-
const getLastPageNumber = createSelector(getListState, state => state.lastPageNumber);
|
|
13
|
-
const isLastPage = createSelector(getPagingOptions, getLastPageNumber, ({ page }, lastPageNumber) => {
|
|
14
|
-
return lastPageNumber ? lastPageNumber <= page : false;
|
|
15
|
-
});
|
|
16
|
-
const getCurrentPageData = createSelector(getAll, resources => {
|
|
17
|
-
return resources;
|
|
18
|
-
});
|
|
19
|
-
const getSortingOptions = createSelector(getListState, state => state.sortingOptions);
|
|
20
|
-
const getRequestParameters = createSelector(getListState, state => state.requestParameters);
|
|
21
|
-
const getFilteringOptions = createSelector(getListState, state => state.filteringOptions);
|
|
22
|
-
const getCurrentPageNumber = createSelector(getPagingOptions, options => options?.page);
|
|
23
|
-
const getSelectedResourceIds = createSelector(getListState, state => state.selectedResourceIds);
|
|
24
|
-
const getLoadingState = createSelector(getListState, state => state.loadingState);
|
|
25
|
-
const getSelectedItems = createSelector(getSelectedResourceIds, createSelector(getListState, entityAdapter.getSelectors().selectEntities), (selectedResourceIds, resources) => selectedResourceIds.reduce((acc, selectedResourceId) => {
|
|
26
|
-
const resource = resources[selectedResourceId];
|
|
27
|
-
if (resource) {
|
|
28
|
-
acc.push(resource);
|
|
29
|
-
}
|
|
30
|
-
return acc;
|
|
31
|
-
}, []));
|
|
32
|
-
const getSelectionRecord = createSelector(getSelectedResourceIds, createSelector(getListState, entityAdapter.getSelectors().selectEntities), (selectedResourceIds, resources) => selectedResourceIds.reduce((selected, selectedResourceId) => {
|
|
33
|
-
const resource = resources[selectedResourceId];
|
|
34
|
-
if (resource) {
|
|
35
|
-
selected[selectedResourceId] = resource;
|
|
36
|
-
}
|
|
37
|
-
return selected;
|
|
38
|
-
}, {}));
|
|
39
|
-
const getRequestState = createSelector(getListState, state => state.requestState);
|
|
40
|
-
const getErrors = createSelector(getListState, state => state.errors);
|
|
41
|
-
const isReady = createSelector(getAll, getLoadingState, (users, loadingState) => !!users && loadingState === RequestState.SUCCESS);
|
|
42
|
-
const areSelectedReady = createSelector(getSelectedResourceIds, getSelectionRecord, getLoadingState, (selectedResourceIds, resources, loadingState) => {
|
|
43
|
-
return selectedResourceIds.every(resourceId => !!resources[resourceId]) && loadingState === RequestState.SUCCESS;
|
|
44
|
-
});
|
|
45
|
-
const isDeleteDisabled = createSelector(getSelectedResourceIds, selectedResourceIds => !selectedResourceIds.length);
|
|
46
|
-
const isCopyDisabled = createSelector(getSelectedResourceIds, selectedResourceIds => selectedResourceIds.length !== 1);
|
|
47
|
-
const getTotalCount = createSelector(getPagingOptions, isLastPage, getCurrentPageData, (pagingOptions, isLastPage, currentPageData) => {
|
|
48
|
-
if (!pagingOptions) {
|
|
49
|
-
return 0;
|
|
50
|
-
}
|
|
51
|
-
if (isLastPage) {
|
|
52
|
-
return (pagingOptions.page - 1) * pagingOptions.pageSize + currentPageData.length;
|
|
53
|
-
}
|
|
54
|
-
return (pagingOptions.page + 1) * pagingOptions.pageSize;
|
|
55
|
-
});
|
|
56
|
-
return {
|
|
57
|
-
getAll,
|
|
58
|
-
getRequestOptions,
|
|
59
|
-
isLastPage,
|
|
60
|
-
getCurrentPageData,
|
|
61
|
-
getPagingOptions,
|
|
62
|
-
getSortingOptions,
|
|
63
|
-
getFilteringOptions,
|
|
64
|
-
getRequestParameters,
|
|
65
|
-
getCurrentPageNumber,
|
|
66
|
-
getLastPageNumber,
|
|
67
|
-
getLoadingState,
|
|
68
|
-
getSelectedResourceIds,
|
|
69
|
-
getSelectedItems,
|
|
70
|
-
getSelectionRecord,
|
|
71
|
-
getRequestState,
|
|
72
|
-
getErrors,
|
|
73
|
-
areSelectedReady,
|
|
74
|
-
isReady,
|
|
75
|
-
isDeleteDisabled,
|
|
76
|
-
isCopyDisabled,
|
|
77
|
-
getTotalCount
|
|
78
|
-
};
|
|
79
|
-
}
|
|
80
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1zZWxlY3RvcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL25nZHV4L3V0aWwvc3RvcmUvbGlzdC9zcmMvbGliL3N0YXRlLWdlbmVyYXRvci9saXN0LXNlbGVjdG9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxpREFBaUQ7QUFDakQsT0FBTyxFQUFrQixZQUFZLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUV4RSxPQUFPLEVBQXdDLGNBQWMsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUduRixNQUFNLFVBQVUsbUJBQW1CLENBQ2pDLGFBQStCLEVBQy9CLFlBQTRHO0lBRTVHLE1BQU0sTUFBTSxHQUFHLGNBQWMsQ0FBQyxZQUFZLEVBQUUsYUFBYSxDQUFDLFlBQVksRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBRXBGLE1BQU0sZ0JBQWdCLEdBQUcsY0FBYyxDQUFDLFlBQVksRUFBRSxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUVwRixNQUFNLGlCQUFpQixHQUFHLGNBQWMsQ0FDdEMsWUFBWSxFQUNaLENBQUMsS0FBSyxFQUFrQixFQUFFLENBQUMsQ0FBQztRQUMxQixhQUFhLEVBQUUsS0FBSyxDQUFDLGFBQWE7UUFDbEMsY0FBYyxFQUFFLEtBQUssQ0FBQyxjQUFjO1FBQ3BDLGdCQUFnQixFQUFFLEtBQUssQ0FBQyxnQkFBZ0I7S0FDekMsQ0FBQyxDQUNILENBQUM7SUFFRixNQUFNLGlCQUFpQixHQUFHLGNBQWMsQ0FBQyxZQUFZLEVBQUUsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsY0FBYyxDQUFDLENBQUM7SUFFdEYsTUFBTSxVQUFVLEdBQUcsY0FBYyxDQUFDLGdCQUFnQixFQUFFLGlCQUFpQixFQUFFLENBQUMsRUFBRSxJQUFJLEVBQUUsRUFBRSxjQUFjLEVBQUUsRUFBRTtRQUNsRyxPQUFPLGNBQWMsQ0FBQyxD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aUJBQWlCO1FBQ2pCLG1CQUFtQjtRQUNuQixvQkFBb0I7UUFDcEIsb0JBQW9CO1FBQ3BCLGlCQUFpQjtRQUNqQixlQUFlO1FBQ2Ysc0JBQXNCO1FBQ3RCLGdCQUFnQjtRQUNoQixrQkFBa0I7UUFDbEIsZUFBZTtRQUNmLFNBQVM7UUFDVCxnQkFBZ0I7UUFDaEIsT0FBTztRQUNQLGdCQUFnQjtRQUNoQixjQUFjO1FBQ2QsYUFBYTtLQUNkLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L2Jhbi10eXBlcyAqL1xyXG5pbXBvcnQgeyBSZXF1ZXN0T3B0aW9ucywgUmVxdWVzdFN0YXRlIH0gZnJvbSAnQG5nZHV4L2RhdGEtbW9kZWwtY29tbW9uJztcclxuaW1wb3J0IHsgRW50aXR5QWRhcHRlciB9IGZyb20gJ0BuZ3J4L2VudGl0eSc7XHJcbmltcG9ydCB7IERlZmF1bHRQcm9qZWN0b3JGbiwgTWVtb2l6ZWRTZWxlY3RvciwgY3JlYXRlU2VsZWN0b3IgfSBmcm9tICdAbmdyeC9zdG9yZSc7XHJcbmltcG9ydCB7IExpc3RTZWxlY3RvcnMsIExpc3RTdGF0ZSB9IGZyb20gJy4uL21vZGVscy9saXN0Lm1vZGVsJztcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVMaXN0U2VsZWN0b3JzPFQsIEUsIFBhcmFtcyA9IFJlY29yZDxzdHJpbmcsIHN0cmluZz4+KFxyXG4gIGVudGl0eUFkYXB0ZXI6IEVudGl0eUFkYXB0ZXI8VD4sXHJcbiAgZ2V0TGlzdFN0YXRlOiBNZW1vaXplZFNlbGVjdG9yPG9iamVjdCwgTGlzdFN0YXRlPFQsIEUsIFBhcmFtcz4sIERlZmF1bHRQcm9qZWN0b3JGbjxMaXN0U3RhdGU8VCwgRSwgUGFyYW1zPj4+XHJcbik6IExpc3RTZWxlY3RvcnM8VCwgRSwgUGFyYW1zPiB7XHJcbiAgY29uc3QgZ2V0QWxsID0gY3JlYXRlU2VsZWN0b3IoZ2V0TGlzdFN0YXRlLCBlbnRpdHlBZGFwdGVyLmdldFNlbGVjdG9ycygpLnNlbGVjdEFsbCk7XHJcblxyXG4gIGNvbnN0IGdldFBhZ2luZ09wdGlvbnMgPSBjcmVhdGVTZWxlY3RvcihnZXRMaXN0U3RhdGUsIHN0YXRlID0+IHN0YXRlLnBhZ2luZ09wdGlvbnMpO1xyXG5cclxuICBjb25zdCBnZXRSZXF1ZXN0T3B0aW9ucyA9IGNyZWF0ZVNlbGVjdG9yKFxyXG4gICAgZ2V0TGlzdFN0YXRlLFxyXG4gICAgKHN0YXRlKTogUmVxdWVzdE9wdGlvbnMgPT4gKHtcclxuICAgICAgcGFnaW5nT3B0aW9uczogc3RhdGUucGFnaW5nT3B0aW9ucyxcclxuICAgICAgc29ydGluZ09wdGlvbnM6IHN0YXRlLnNvcnRpbmdPcHRpb25zLFxyXG4gICAgICBmaWx0ZXJpbmdPcHRpb25zOiBzdGF0ZS5maWx0ZXJpbmdPcHRpb25zXHJcbiAgICB9KVxyXG4gICk7XHJcblxyXG4gIGNvbnN0IGdldExhc3RQYWdlTnVtYmVyID0gY3JlYXRlU2VsZWN0b3IoZ2V0TGlzdFN0YXRlLCBzdGF0ZSA9PiBzdGF0ZS5sYXN0UGFnZU51bWJlcik7XHJcblxyXG4gIGNvbnN0IGlzTGFzdFBhZ2UgPSBjcmVhdGVTZWxlY3RvcihnZXRQYWdpbmdPcHRpb25zLCBnZXRMYXN0UGFnZU51bWJlciwgKHsgcGFnZSB9LCBsYXN0UGFnZU51bWJlcikgPT4ge1xyXG4gICAgcmV0dXJuIGxhc3RQYWdlTnVtYmVyID8gbGFzdFBhZ2VOdW1iZXIgPD0gcGFnZSA6IGZhbHNlO1xyXG4gIH0pO1xyXG5cclxuICBjb25zdCBnZXRDdXJyZW50UGFnZURhdGEgPSBjcmVhdGVTZWxlY3RvcihnZXRBbGwsIHJlc291cmNlcyA9PiB7XHJcbiAgICByZXR1cm4gcmVzb3VyY2VzO1xyXG4gIH0pO1xyXG5cclxuICBjb25zdCBnZXRTb3J0aW5nT3B0aW9ucyA9IGNyZWF0ZVNlbGVjdG9yKGdldExpc3RTdGF0ZSwgc3RhdGUgPT4gc3RhdGUuc29ydGluZ09wdGlvbnMpO1xyXG5cclxuICBjb25zdCBnZXRSZXF1ZXN0UGFyYW1ldGVycyA9IGNyZWF0ZVNlbGVjdG9yKGdldExpc3RTdGF0ZSwgc3RhdGUgPT4gc3RhdGUucmVxdWVzdFBhcmFtZXRlcnMpO1xyXG5cclxuICBjb25zdCBnZXRGaWx0ZXJpbmdPcHRpb25zID0gY3JlYXRlU2VsZWN0b3IoZ2V0TGlzdFN0YXRlLCBzdGF0ZSA9PiBzdGF0ZS5maWx0ZXJpbmdPcHRpb25zKTtcclxuXHJcbiAgY29uc3QgZ2V0Q3VycmVudFBhZ2VOdW1iZXIgPSBjcmVhdGVTZWxlY3RvcihnZXRQYWdpbmdPcHRpb25zLCBvcHRpb25zID0+IG9wdGlvbnM/LnBhZ2UpO1xyXG5cclxuICBjb25zdCBnZXRTZWxlY3RlZFJlc291cmNlSWRzID0gY3JlYXRlU2VsZWN0b3IoZ2V0TGlzdFN0YXRlLCBzdGF0ZSA9PiBzdGF0ZS5zZWxlY3RlZFJlc291cmNlSWRzKTtcclxuXHJcbiAgY29uc3QgZ2V0TG9hZGluZ1N0YXRlID0gY3JlYXRlU2VsZWN0b3IoZ2V0TGlzdFN0YXRlLCBzdGF0ZSA9PiBzdGF0ZS5sb2FkaW5nU3RhdGUpO1xyXG5cclxuICBjb25zdCBnZXRTZWxlY3RlZEl0ZW1zID0gY3JlYXRlU2VsZWN0b3IoXHJcbiAgICBnZXRTZWxlY3RlZFJlc291cmNlSWRzLFxyXG4gICAgY3JlYXRlU2VsZWN0b3IoZ2V0TGlzdFN0YXRlLCBlbnRpdHlBZGFwdGVyLmdldFNlbGVjdG9ycygpLnNlbGVjdEVudGl0aWVzKSxcclxuICAgIChzZWxlY3RlZFJlc291cmNlSWRzLCByZXNvdXJjZXMpOiBUW10gPT5cclxuICAgICAgc2VsZWN0ZWRSZXNvdXJjZUlkcy5yZWR1Y2UoKGFjYywgc2VsZWN0ZWRSZXNvdXJjZUlkKTogVFtdID0+IHtcclxuICAgICAgICBjb25zdCByZXNvdXJjZSA9IHJlc291cmNlc1tzZWxlY3RlZFJlc291cmNlSWRdO1xyXG4gICAgICAgIGlmIChyZXNvdXJjZSkge1xyXG4gICAgICAgICAgYWNjLnB1c2gocmVzb3VyY2UpO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gYWNjO1xyXG4gICAgICB9LCBbXSBhcyBUW10pXHJcbiAgKTtcclxuXHJcbiAgY29uc3QgZ2V0U2VsZWN0aW9uUmVjb3JkID0gY3JlYXRlU2VsZWN0b3IoXHJcbiAgICBnZXRTZWxlY3RlZFJlc291cmNlSWRzLFxyXG4gICAgY3JlYXRlU2VsZWN0b3IoZ2V0TGlzdFN0YXRlLCBlbnRpdHlBZGFwdGVyLmdldFNlbGVjdG9ycygpLnNlbGVjdEVudGl0aWVzKSxcclxuICAgIChzZWxlY3RlZFJlc291cmNlSWRzLCByZXNvdXJjZXMpOiBSZWNvcmQ8c3RyaW5nLCBUPiA9PlxyXG4gICAgICBzZWxlY3RlZFJlc291cmNlSWRzLnJlZHVjZSgoc2VsZWN0ZWQsIHNlbGVjdGVkUmVzb3VyY2VJZCkgPT4ge1xyXG4gICAgICAgIGNvbnN0IHJlc291cmNlID0gcmVzb3VyY2VzW3NlbGVjdGVkUmVzb3VyY2VJZF07XHJcbiAgICAgICAgaWYgKHJlc291cmNlKSB7XHJcbiAgICAgICAgICBzZWxlY3RlZFtzZWxlY3RlZFJlc291cmNlSWRdID0gcmVzb3VyY2U7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBzZWxlY3RlZDtcclxuICAgICAgfSwge30gYXMgUmVjb3JkPHN0cmluZywgVD4pXHJcbiAgKTtcclxuXHJcbiAgY29uc3QgZ2V0UmVxdWVzdFN0YXRlID0gY3JlYXRlU2VsZWN0b3IoZ2V0TGlzdFN0YXRlLCBzdGF0ZSA9PiBzdGF0ZS5yZXF1ZXN0U3RhdGUpO1xyXG5cclxuICBjb25zdCBnZXRFcnJvcnMgPSBjcmVhdGVTZWxlY3RvcihnZXRMaXN0U3RhdGUsIHN0YXRlID0+IHN0YXRlLmVycm9ycyk7XHJcblxyXG4gIGNvbnN0IGlzUmVhZHkgPSBjcmVhdGVTZWxlY3RvcihcclxuICAgIGdldEFsbCxcclxuICAgIGdldExvYWRpbmdTdGF0ZSxcclxuICAgICh1c2VycywgbG9hZGluZ1N0YXRlKSA9PiAhIXVzZXJzICYmIGxvYWRpbmdTdGF0ZSA9PT0gUmVxdWVzdFN0YXRlLlNVQ0NFU1NcclxuICApO1xyXG5cclxuICBjb25zdCBhcmVTZWxlY3RlZFJlYWR5ID0gY3JlYXRlU2VsZWN0b3IoXHJcbiAgICBnZXRTZWxlY3RlZFJlc291cmNlSWRzLFxyXG4gICAgZ2V0U2VsZWN0aW9uUmVjb3JkLFxyXG4gICAgZ2V0TG9hZGluZ1N0YXRlLFxyXG4gICAgKHNlbGVjdGVkUmVzb3VyY2VJZHMsIHJlc291cmNlcywgbG9hZGluZ1N0YXRlKSA9PiB7XHJcbiAgICAgIHJldHVybiBzZWxlY3RlZFJlc291cmNlSWRzLmV2ZXJ5KHJlc291cmNlSWQgPT4gISFyZXNvdXJjZXNbcmVzb3VyY2VJZF0pICYmIGxvYWRpbmdTdGF0ZSA9PT0gUmVxdWVzdFN0YXRlLlNVQ0NFU1M7XHJcbiAgICB9XHJcbiAgKTtcclxuXHJcbiAgY29uc3QgaXNEZWxldGVEaXNhYmxlZCA9IGNyZWF0ZVNlbGVjdG9yKGdldFNlbGVjdGVkUmVzb3VyY2VJZHMsIHNlbGVjdGVkUmVzb3VyY2VJZHMgPT4gIXNlbGVjdGVkUmVzb3VyY2VJZHMubGVuZ3RoKTtcclxuXHJcbiAgY29uc3QgaXNDb3B5RGlzYWJsZWQgPSBjcmVhdGVTZWxlY3RvcihcclxuICAgIGdldFNlbGVjdGVkUmVzb3VyY2VJZHMsXHJcbiAgICBzZWxlY3RlZFJlc291cmNlSWRzID0+IHNlbGVjdGVkUmVzb3VyY2VJZHMubGVuZ3RoICE9PSAxXHJcbiAgKTtcclxuXHJcbiAgY29uc3QgZ2V0VG90YWxDb3VudCA9IGNyZWF0ZVNlbGVjdG9yKFxyXG4gICAgZ2V0UGFnaW5nT3B0aW9ucyxcclxuICAgIGlzTGFzdFBhZ2UsXHJcbiAgICBnZXRDdXJyZW50UGFnZURhdGEsXHJcbiAgICAocGFnaW5nT3B0aW9ucywgaXNMYXN0UGFnZSwgY3VycmVudFBhZ2VEYXRhKSA9PiB7XHJcbiAgICAgIGlmICghcGFnaW5nT3B0aW9ucykge1xyXG4gICAgICAgIHJldHVybiAwO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBpZiAoaXNMYXN0UGFnZSkge1xyXG4gICAgICAgIHJldHVybiAocGFnaW5nT3B0aW9ucy5wYWdlIC0gMSkgKiBwYWdpbmdPcHRpb25zLnBhZ2VTaXplICsgY3VycmVudFBhZ2VEYXRhLmxlbmd0aDtcclxuICAgICAgfVxyXG4gICAgICByZXR1cm4gKHBhZ2luZ09wdGlvbnMucGFnZSArIDEpICogcGFnaW5nT3B0aW9ucy5wYWdlU2l6ZTtcclxuICAgIH1cclxuICApO1xyXG5cclxuICByZXR1cm4ge1xyXG4gICAgZ2V0QWxsLFxyXG4gICAgZ2V0UmVxdWVzdE9wdGlvbnMsXHJcbiAgICBpc0xhc3RQYWdlLFxyXG4gICAgZ2V0Q3VycmVudFBhZ2VEYXRhLFxyXG4gICAgZ2V0UGFnaW5nT3B0aW9ucyxcclxuICAgIGdldFNvcnRpbmdPcHRpb25zLFxyXG4gICAgZ2V0RmlsdGVyaW5nT3B0aW9ucyxcclxuICAgIGdldFJlcXVlc3RQYXJhbWV0ZXJzLFxyXG4gICAgZ2V0Q3VycmVudFBhZ2VOdW1iZXIsXHJcbiAgICBnZXRMYXN0UGFnZU51bWJlcixcclxuICAgIGdldExvYWRpbmdTdGF0ZSxcclxuICAgIGdldFNlbGVjdGVkUmVzb3VyY2VJZHMsXHJcbiAgICBnZXRTZWxlY3RlZEl0ZW1zLFxyXG4gICAgZ2V0U2VsZWN0aW9uUmVjb3JkLFxyXG4gICAgZ2V0UmVxdWVzdFN0YXRlLFxyXG4gICAgZ2V0RXJyb3JzLFxyXG4gICAgYXJlU2VsZWN0ZWRSZWFkeSxcclxuICAgIGlzUmVhZHksXHJcbiAgICBpc0RlbGV0ZURpc2FibGVkLFxyXG4gICAgaXNDb3B5RGlzYWJsZWQsXHJcbiAgICBnZXRUb3RhbENvdW50XHJcbiAgfTtcclxufVxyXG4iXX0=
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { createFeatureSelector } from '@ngrx/store';
|
|
2
|
-
import { createListActions } from './list-actions';
|
|
3
|
-
import { createListEntityAdapter, createListReducer } from './list-reducer';
|
|
4
|
-
import { createListSelectors } from './list-selectors';
|
|
5
|
-
export function createListState(featureName, idKey) {
|
|
6
|
-
const actions = createListActions(featureName);
|
|
7
|
-
const entityAdapter = createListEntityAdapter(idKey);
|
|
8
|
-
const reducer = createListReducer(entityAdapter, actions);
|
|
9
|
-
const getState = createFeatureSelector(featureName);
|
|
10
|
-
const selectors = createListSelectors(entityAdapter, getState);
|
|
11
|
-
return {
|
|
12
|
-
actions,
|
|
13
|
-
reducer: (state, action) => reducer(state, action),
|
|
14
|
-
selectors,
|
|
15
|
-
entityAdapter
|
|
16
|
-
};
|
|
17
|
-
}
|
|
18
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1zdGF0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbmdkdXgvdXRpbC9zdG9yZS9saXN0L3NyYy9saWIvc3RhdGUtZ2VuZXJhdG9yL2xpc3Qtc3RhdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFVLHFCQUFxQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRTVELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ25ELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzVFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRXZELE1BQU0sVUFBVSxlQUFlLENBSzdCLFdBQW1CLEVBQUUsS0FBYztJQUNuQyxNQUFNLE9BQU8sR0FBRyxpQkFBaUIsQ0FBa0IsV0FBVyxDQUFDLENBQUM7SUFDaEUsTUFBTSxhQUFhLEdBQUcsdUJBQXVCLENBQUksS0FBSyxDQUFDLENBQUM7SUFDeEQsTUFBTSxPQUFPLEdBQUcsaUJBQWlCLENBQWtCLGFBQWEsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUMzRSxNQUFNLFFBQVEsR0FBRyxxQkFBcUIsQ0FBMEIsV0FBVyxDQUFDLENBQUM7SUFDN0UsTUFBTSxTQUFTLEdBQUcsbUJBQW1CLENBQWUsYUFBYSxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBRTdFLE9BQU87UUFDTCxPQUFPO1FBQ1AsT0FBTyxFQUFFLENBQUMsS0FBOEIsRUFBRSxNQUFjLEVBQTJCLEVBQUUsQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLE1BQU0sQ0FBQztRQUM1RyxTQUFTO1FBQ1QsYUFBYTtLQUNkLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWN0aW9uLCBjcmVhdGVGZWF0dXJlU2VsZWN0b3IgfSBmcm9tICdAbmdyeC9zdG9yZSc7XHJcbmltcG9ydCB7IExpc3RTdGF0ZSB9IGZyb20gJy4uL21vZGVscy9saXN0Lm1vZGVsJztcclxuaW1wb3J0IHsgY3JlYXRlTGlzdEFjdGlvbnMgfSBmcm9tICcuL2xpc3QtYWN0aW9ucyc7XHJcbmltcG9ydCB7IGNyZWF0ZUxpc3RFbnRpdHlBZGFwdGVyLCBjcmVhdGVMaXN0UmVkdWNlciB9IGZyb20gJy4vbGlzdC1yZWR1Y2VyJztcclxuaW1wb3J0IHsgY3JlYXRlTGlzdFNlbGVjdG9ycyB9IGZyb20gJy4vbGlzdC1zZWxlY3RvcnMnO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZUxpc3RTdGF0ZTxcclxuICBUIGV4dGVuZHMgeyBba2V5OiBzdHJpbmddOiBhbnkgfSxcclxuICBFLFxyXG4gIFMgZXh0ZW5kcyB7IFtrZXk6IHN0cmluZ106IGFueSB9ID0gVCxcclxuICBQYXJhbXMgPSBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+XHJcbj4oZmVhdHVyZU5hbWU6IHN0cmluZywgaWRLZXk/OiBzdHJpbmcpIHtcclxuICBjb25zdCBhY3Rpb25zID0gY3JlYXRlTGlzdEFjdGlvbnM8VCwgRSwgUywgUGFyYW1zPihmZWF0dXJlTmFtZSk7XHJcbiAgY29uc3QgZW50aXR5QWRhcHRlciA9IGNyZWF0ZUxpc3RFbnRpdHlBZGFwdGVyPFM+KGlkS2V5KTtcclxuICBjb25zdCByZWR1Y2VyID0gY3JlYXRlTGlzdFJlZHVjZXI8VCwgRSwgUywgUGFyYW1zPihlbnRpdHlBZGFwdGVyLCBhY3Rpb25zKTtcclxuICBjb25zdCBnZXRTdGF0ZSA9IGNyZWF0ZUZlYXR1cmVTZWxlY3RvcjxMaXN0U3RhdGU8UywgRSwgUGFyYW1zPj4oZmVhdHVyZU5hbWUpO1xyXG4gIGNvbnN0IHNlbGVjdG9ycyA9IGNyZWF0ZUxpc3RTZWxlY3RvcnM8UywgRSwgUGFyYW1zPihlbnRpdHlBZGFwdGVyLCBnZXRTdGF0ZSk7XHJcblxyXG4gIHJldHVybiB7XHJcbiAgICBhY3Rpb25zLFxyXG4gICAgcmVkdWNlcjogKHN0YXRlOiBMaXN0U3RhdGU8UywgRSwgUGFyYW1zPiwgYWN0aW9uOiBBY3Rpb24pOiBMaXN0U3RhdGU8UywgRSwgUGFyYW1zPiA9PiByZWR1Y2VyKHN0YXRlLCBhY3Rpb24pLFxyXG4gICAgc2VsZWN0b3JzLFxyXG4gICAgZW50aXR5QWRhcHRlclxyXG4gIH07XHJcbn1cclxuIl19
|
package/esm2022/ngdux-list.mjs
DELETED
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Generated bundle index. Do not edit.
|
|
3
|
-
*/
|
|
4
|
-
export * from './index';
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmdkdXgtbGlzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbmdkdXgvdXRpbC9zdG9yZS9saXN0L3NyYy9uZ2R1eC1saXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuIl19
|
package/lib/+state/effects.d.ts
DELETED
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { ListNotificationService, ListService } from '@ngdux/data-model-common';
|
|
2
|
-
import { Actions, OnIdentifyEffects } from '@ngrx/effects';
|
|
3
|
-
import { Store } from '@ngrx/store';
|
|
4
|
-
import { AbstractListEffects } from '../state-generator/abstract-list-effects';
|
|
5
|
-
import { ListStateService } from './state.service';
|
|
6
|
-
export declare class ListEffects<T extends {
|
|
7
|
-
[key: string]: any;
|
|
8
|
-
}, Error = unknown, S extends {
|
|
9
|
-
[key: string]: any;
|
|
10
|
-
} = T, Params = Record<string, string>> extends AbstractListEffects<T, Error, S, Params> implements OnIdentifyEffects {
|
|
11
|
-
private readonly featureKey;
|
|
12
|
-
constructor(actions$: Actions, store: Store, listStateService: ListStateService<T, Error, S, Params>, featureKey: string, service: ListService<T, S, Params>, notificationService?: ListNotificationService<Error>);
|
|
13
|
-
ngrxOnIdentifyEffects(): string;
|
|
14
|
-
}
|