@geosdi/ngx-store 1.0.7 → 1.0.8
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/esm2020/lib/ngx-effects.mjs +43 -0
- package/esm2020/public-api.mjs +2 -1
- package/fesm2015/geosdi-ngx-store.mjs +39 -1
- package/fesm2015/geosdi-ngx-store.mjs.map +1 -1
- package/fesm2020/geosdi-ngx-store.mjs +39 -1
- package/fesm2020/geosdi-ngx-store.mjs.map +1 -1
- package/lib/ngx-effects.d.ts +23 -0
- package/package.json +3 -2
- package/public-api.d.ts +1 -0
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { Actions, createEffect, ofType } from "@ngrx/effects";
|
|
2
|
+
import { delay, map, tap } from "rxjs/operators";
|
|
3
|
+
import { Injectable } from "@angular/core";
|
|
4
|
+
import { Store } from "@ngrx/store";
|
|
5
|
+
import { NgxPrimeNgTableEventService } from "@geosdi/ngx-primeng-table";
|
|
6
|
+
import { resetBean } from "@geosdi/ngx-select-bean";
|
|
7
|
+
import { NgxUtilityServiceService } from "@geosdi/ngx-utility-service";
|
|
8
|
+
import { NgxPrimeNgModalService } from "@geosdi/ngx-primeng-modal-service";
|
|
9
|
+
import { afterDeleting, reloadTable, serviceSuccess } from "./ngx-actions";
|
|
10
|
+
import * as i0 from "@angular/core";
|
|
11
|
+
import * as i1 from "@ngrx/effects";
|
|
12
|
+
import * as i2 from "@geosdi/ngx-utility-service";
|
|
13
|
+
import * as i3 from "@geosdi/ngx-primeng-table";
|
|
14
|
+
import * as i4 from "@geosdi/ngx-primeng-modal-service";
|
|
15
|
+
import * as i5 from "@ngrx/store";
|
|
16
|
+
/**
|
|
17
|
+
* @author Vito Salvia - CNR IMAA geoSDI Group
|
|
18
|
+
* @email vito.salvia@gmail.com
|
|
19
|
+
*/
|
|
20
|
+
export class NgxEffects {
|
|
21
|
+
constructor(actions$, utilityService, tableEventService, modalService, appStore) {
|
|
22
|
+
this.actions$ = actions$;
|
|
23
|
+
this.utilityService = utilityService;
|
|
24
|
+
this.tableEventService = tableEventService;
|
|
25
|
+
this.modalService = modalService;
|
|
26
|
+
this.appStore = appStore;
|
|
27
|
+
this.onSuccess$ = createEffect(() => this.actions$.pipe(ofType(serviceSuccess), tap((res) => {
|
|
28
|
+
this.utilityService.printTranslateMessage("Service", "message.action_successful", "success");
|
|
29
|
+
})), { dispatch: false });
|
|
30
|
+
this.onAfterDeleting$ = createEffect(() => this.actions$.pipe(ofType(afterDeleting), tap((res) => {
|
|
31
|
+
this.appStore.dispatch(resetBean());
|
|
32
|
+
})), { dispatch: false });
|
|
33
|
+
this.reload$ = createEffect(() => this.actions$.pipe(ofType(reloadTable), delay(1000), map((action) => {
|
|
34
|
+
this.tableEventService.subjectReloadView$.next(action.TABLE);
|
|
35
|
+
})), { dispatch: false });
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
/** @nocollapse */ NgxEffects.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: NgxEffects, deps: [{ token: i1.Actions }, { token: i2.NgxUtilityServiceService }, { token: i3.NgxPrimeNgTableEventService }, { token: i4.NgxPrimeNgModalService }, { token: i5.Store }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
39
|
+
/** @nocollapse */ NgxEffects.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: NgxEffects });
|
|
40
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: NgxEffects, decorators: [{
|
|
41
|
+
type: Injectable
|
|
42
|
+
}], ctorParameters: function () { return [{ type: i1.Actions }, { type: i2.NgxUtilityServiceService }, { type: i3.NgxPrimeNgTableEventService }, { type: i4.NgxPrimeNgModalService }, { type: i5.Store }]; } });
|
|
43
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LWVmZmVjdHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9nZW9zZGkvbmd4LXN0b3JlL3NyYy9saWIvbmd4LWVmZmVjdHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlELE9BQU8sRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUNwQyxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUN4RSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDcEQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDdkUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDM0UsT0FBTyxFQUFFLGFBQWEsRUFBRSxXQUFXLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7Ozs7O0FBRTNFOzs7R0FHRztBQUVILE1BQU0sT0FBTyxVQUFVO0lBeUNuQixZQUNZLFFBQWlCLEVBQ2pCLGNBQXdDLEVBQ3hDLGlCQUE4QyxFQUM5QyxZQUFvQyxFQUNwQyxRQUFlO1FBSmYsYUFBUSxHQUFSLFFBQVEsQ0FBUztRQUNqQixtQkFBYyxHQUFkLGNBQWMsQ0FBMEI7UUFDeEMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUE2QjtRQUM5QyxpQkFBWSxHQUFaLFlBQVksQ0FBd0I7UUFDcEMsYUFBUSxHQUFSLFFBQVEsQ0FBTztRQTdDM0IsZUFBVSxHQUFHLFlBQVksQ0FDckIsR0FBRyxFQUFFLENBQ0QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQ2QsTUFBTSxDQUFDLGNBQWMsQ0FBQyxFQUN0QixHQUFHLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRTtZQUNSLElBQUksQ0FBQyxjQUFjLENBQUMscUJBQXFCLENBQ3JDLFNBQVMsRUFDVCwyQkFBMkIsRUFDM0IsU0FBUyxDQUNaLENBQUM7UUFDTixDQUFDLENBQUMsQ0FDTCxFQUNMLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxDQUN0QixDQUFDO1FBRUYscUJBQWdCLEdBQUcsWUFBWSxDQUMzQixHQUFHLEVBQUUsQ0FDRCxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FDZCxNQUFNLENBQUMsYUFBYSxDQUFDLEVBQ3JCLEdBQUcsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO1lBQ1IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQztRQUN4QyxDQUFDLENBQUMsQ0FDTCxFQUNMLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxDQUN0QixDQUFDO1FBRUYsWUFBTyxHQUFHLFlBQVksQ0FDbEIsR0FBRyxFQUFFLENBQ0QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQ2QsTUFBTSxDQUFDLFdBQVcsQ0FBQyxFQUNuQixLQUFLLENBQUMsSUFBSSxDQUFDLEVBQ1gsR0FBRyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUU7WUFDWCxJQUFJLENBQUMsaUJBQWlCLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUMxQyxNQUFNLENBQUMsS0FBSyxDQUNmLENBQUM7UUFDTixDQUFDLENBQUMsQ0FDTCxFQUNMLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxDQUN0QixDQUFDO0lBUUMsQ0FBQzs7MEhBL0NLLFVBQVU7OEhBQVYsVUFBVTsyRkFBVixVQUFVO2tCQUR0QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWN0aW9ucywgY3JlYXRlRWZmZWN0LCBvZlR5cGUgfSBmcm9tIFwiQG5ncngvZWZmZWN0c1wiO1xuaW1wb3J0IHsgZGVsYXksIG1hcCwgdGFwIH0gZnJvbSBcInJ4anMvb3BlcmF0b3JzXCI7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IFN0b3JlIH0gZnJvbSBcIkBuZ3J4L3N0b3JlXCI7XG5pbXBvcnQgeyBOZ3hQcmltZU5nVGFibGVFdmVudFNlcnZpY2UgfSBmcm9tIFwiQGdlb3NkaS9uZ3gtcHJpbWVuZy10YWJsZVwiO1xuaW1wb3J0IHsgcmVzZXRCZWFuIH0gZnJvbSBcIkBnZW9zZGkvbmd4LXNlbGVjdC1iZWFuXCI7XG5pbXBvcnQgeyBOZ3hVdGlsaXR5U2VydmljZVNlcnZpY2UgfSBmcm9tIFwiQGdlb3NkaS9uZ3gtdXRpbGl0eS1zZXJ2aWNlXCI7XG5pbXBvcnQgeyBOZ3hQcmltZU5nTW9kYWxTZXJ2aWNlIH0gZnJvbSBcIkBnZW9zZGkvbmd4LXByaW1lbmctbW9kYWwtc2VydmljZVwiO1xuaW1wb3J0IHsgYWZ0ZXJEZWxldGluZywgcmVsb2FkVGFibGUsIHNlcnZpY2VTdWNjZXNzIH0gZnJvbSBcIi4vbmd4LWFjdGlvbnNcIjtcblxuLyoqXG4gKiBAYXV0aG9yIFZpdG8gU2FsdmlhIC0gQ05SIElNQUEgZ2VvU0RJIEdyb3VwXG4gKiBAZW1haWwgdml0by5zYWx2aWFAZ21haWwuY29tXG4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBOZ3hFZmZlY3RzIHtcbiAgICBvblN1Y2Nlc3MkID0gY3JlYXRlRWZmZWN0KFxuICAgICAgICAoKSA9PlxuICAgICAgICAgICAgdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgICAgICAgICAgIG9mVHlwZShzZXJ2aWNlU3VjY2VzcyksXG4gICAgICAgICAgICAgICAgdGFwKChyZXMpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy51dGlsaXR5U2VydmljZS5wcmludFRyYW5zbGF0ZU1lc3NhZ2UoXG4gICAgICAgICAgICAgICAgICAgICAgICBcIlNlcnZpY2VcIixcbiAgICAgICAgICAgICAgICAgICAgICAgIFwibWVzc2FnZS5hY3Rpb25fc3VjY2Vzc2Z1bFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgXCJzdWNjZXNzXCIsXG4gICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICApLFxuICAgICAgICB7IGRpc3BhdGNoOiBmYWxzZSB9LFxuICAgICk7XG5cbiAgICBvbkFmdGVyRGVsZXRpbmckID0gY3JlYXRlRWZmZWN0KFxuICAgICAgICAoKSA9PlxuICAgICAgICAgICAgdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgICAgICAgICAgIG9mVHlwZShhZnRlckRlbGV0aW5nKSxcbiAgICAgICAgICAgICAgICB0YXAoKHJlcykgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmFwcFN0b3JlLmRpc3BhdGNoKHJlc2V0QmVhbigpKTtcbiAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICksXG4gICAgICAgIHsgZGlzcGF0Y2g6IGZhbHNlIH0sXG4gICAgKTtcblxuICAgIHJlbG9hZCQgPSBjcmVhdGVFZmZlY3QoXG4gICAgICAgICgpID0+XG4gICAgICAgICAgICB0aGlzLmFjdGlvbnMkLnBpcGUoXG4gICAgICAgICAgICAgICAgb2ZUeXBlKHJlbG9hZFRhYmxlKSxcbiAgICAgICAgICAgICAgICBkZWxheSgxMDAwKSxcbiAgICAgICAgICAgICAgICBtYXAoKGFjdGlvbikgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnRhYmxlRXZlbnRTZXJ2aWNlLnN1YmplY3RSZWxvYWRWaWV3JC5uZXh0KFxuICAgICAgICAgICAgICAgICAgICAgICAgYWN0aW9uLlRBQkxFLFxuICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgeyBkaXNwYXRjaDogZmFsc2UgfSxcbiAgICApO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgYWN0aW9ucyQ6IEFjdGlvbnMsXG4gICAgICAgIHByaXZhdGUgdXRpbGl0eVNlcnZpY2U6IE5neFV0aWxpdHlTZXJ2aWNlU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSB0YWJsZUV2ZW50U2VydmljZTogTmd4UHJpbWVOZ1RhYmxlRXZlbnRTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIG1vZGFsU2VydmljZTogTmd4UHJpbWVOZ01vZGFsU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBhcHBTdG9yZTogU3RvcmUsXG4gICAgKSB7fVxufVxuIl19
|
package/esm2020/public-api.mjs
CHANGED
|
@@ -5,4 +5,5 @@ export * from "./lib/ngx-store.facade";
|
|
|
5
5
|
export * from "./lib/ngx-abstract-store.facade";
|
|
6
6
|
export * from "./lib/ngx-state";
|
|
7
7
|
export * from "./lib/ngx-actions";
|
|
8
|
-
|
|
8
|
+
export * from "./lib/ngx-effects";
|
|
9
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2dlb3NkaS9uZ3gtc3RvcmUvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxjQUFjLG1CQUFtQixDQUFDO0FBQ2xDLGNBQWMsbUJBQW1CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogUHVibGljIEFQSSBTdXJmYWNlIG9mIG5neC1zdG9yZVxuICovXG5cbmV4cG9ydCAqIGZyb20gXCIuL2xpYi9uZ3gtc3RvcmUuZmFjYWRlXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9saWIvbmd4LWFic3RyYWN0LXN0b3JlLmZhY2FkZVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vbGliL25neC1zdGF0ZVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vbGliL25neC1hY3Rpb25zXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9saWIvbmd4LWVmZmVjdHNcIjtcbiJdfQ==
|
|
@@ -1,4 +1,14 @@
|
|
|
1
|
+
import * as i5 from '@ngrx/store';
|
|
1
2
|
import { createAction, props } from '@ngrx/store';
|
|
3
|
+
import * as i1 from '@ngrx/effects';
|
|
4
|
+
import { createEffect, ofType } from '@ngrx/effects';
|
|
5
|
+
import { tap, delay, map } from 'rxjs/operators';
|
|
6
|
+
import * as i0 from '@angular/core';
|
|
7
|
+
import { Injectable } from '@angular/core';
|
|
8
|
+
import { resetBean } from '@geosdi/ngx-select-bean';
|
|
9
|
+
import * as i2 from '@geosdi/ngx-utility-service';
|
|
10
|
+
import * as i3 from '@geosdi/ngx-primeng-table';
|
|
11
|
+
import * as i4 from '@geosdi/ngx-primeng-modal-service';
|
|
2
12
|
|
|
3
13
|
/**
|
|
4
14
|
* @author Vito Salvia - CNR IMAA geoSDI Group
|
|
@@ -27,6 +37,34 @@ const afterDeleting = createAction("[Service] Service After Deleting");
|
|
|
27
37
|
const reloadTable = createAction("[Service] Reload View", props());
|
|
28
38
|
const clearState = createAction(CLEAR_STATE);
|
|
29
39
|
|
|
40
|
+
/**
|
|
41
|
+
* @author Vito Salvia - CNR IMAA geoSDI Group
|
|
42
|
+
* @email vito.salvia@gmail.com
|
|
43
|
+
*/
|
|
44
|
+
class NgxEffects {
|
|
45
|
+
constructor(actions$, utilityService, tableEventService, modalService, appStore) {
|
|
46
|
+
this.actions$ = actions$;
|
|
47
|
+
this.utilityService = utilityService;
|
|
48
|
+
this.tableEventService = tableEventService;
|
|
49
|
+
this.modalService = modalService;
|
|
50
|
+
this.appStore = appStore;
|
|
51
|
+
this.onSuccess$ = createEffect(() => this.actions$.pipe(ofType(serviceSuccess), tap((res) => {
|
|
52
|
+
this.utilityService.printTranslateMessage("Service", "message.action_successful", "success");
|
|
53
|
+
})), { dispatch: false });
|
|
54
|
+
this.onAfterDeleting$ = createEffect(() => this.actions$.pipe(ofType(afterDeleting), tap((res) => {
|
|
55
|
+
this.appStore.dispatch(resetBean());
|
|
56
|
+
})), { dispatch: false });
|
|
57
|
+
this.reload$ = createEffect(() => this.actions$.pipe(ofType(reloadTable), delay(1000), map((action) => {
|
|
58
|
+
this.tableEventService.subjectReloadView$.next(action.TABLE);
|
|
59
|
+
})), { dispatch: false });
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
/** @nocollapse */ NgxEffects.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: NgxEffects, deps: [{ token: i1.Actions }, { token: i2.NgxUtilityServiceService }, { token: i3.NgxPrimeNgTableEventService }, { token: i4.NgxPrimeNgModalService }, { token: i5.Store }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
63
|
+
/** @nocollapse */ NgxEffects.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: NgxEffects });
|
|
64
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: NgxEffects, decorators: [{
|
|
65
|
+
type: Injectable
|
|
66
|
+
}], ctorParameters: function () { return [{ type: i1.Actions }, { type: i2.NgxUtilityServiceService }, { type: i3.NgxPrimeNgTableEventService }, { type: i4.NgxPrimeNgModalService }, { type: i5.Store }]; } });
|
|
67
|
+
|
|
30
68
|
/*
|
|
31
69
|
* Public API Surface of ngx-store
|
|
32
70
|
*/
|
|
@@ -35,5 +73,5 @@ const clearState = createAction(CLEAR_STATE);
|
|
|
35
73
|
* Generated bundle index. Do not edit.
|
|
36
74
|
*/
|
|
37
75
|
|
|
38
|
-
export { CLEAR_STATE, NgxAbstractStoreFacade, afterDeleting, clearState, getAdapterIntialState, reloadTable, selectModelId, serviceSuccess };
|
|
76
|
+
export { CLEAR_STATE, NgxAbstractStoreFacade, NgxEffects, afterDeleting, clearState, getAdapterIntialState, reloadTable, selectModelId, serviceSuccess };
|
|
39
77
|
//# sourceMappingURL=geosdi-ngx-store.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"geosdi-ngx-store.mjs","sources":["../../../../projects/geosdi/ngx-store/src/lib/ngx-abstract-store.facade.ts","../../../../projects/geosdi/ngx-store/src/lib/ngx-state.ts","../../../../projects/geosdi/ngx-store/src/lib/ngx-actions.ts","../../../../projects/geosdi/ngx-store/src/public-api.ts","../../../../projects/geosdi/ngx-store/src/geosdi-ngx-store.ts"],"sourcesContent":["import { Model } from \"@geosdi/ngx-model\";\nimport { Observable } from \"rxjs\";\nimport { INgxStoreFacade } from \"./ngx-store.facade\";\n\n/**\n * @author Vito Salvia - CNR IMAA geoSDI Group\n * @email vito.salvia@gmail.com\n */\nexport abstract class NgxAbstractStoreFacade<B extends Model>\n implements INgxStoreFacade<B>\n{\n /**\n *\n * @param bean\n */\n abstract addBean(bean: B);\n\n /**\n *\n */\n abstract clearStore();\n\n /**\n *\n * @param id\n */\n abstract deleteBean(id: string | number);\n\n /**\n *\n * @param from\n * @param size\n * @param params\n */\n abstract searchByValue(from: number, size: number, params: any);\n\n /**\n *\n */\n abstract getTotal(): Observable<number>;\n\n /**\n *\n */\n abstract loadStore();\n\n /**\n *\n * @param from\n * @param size\n * @param param\n */\n abstract selectPaginatedBeans(from: number, size: number, param?: string);\n\n /**\n *\n * @param id\n */\n abstract selectorBeanById(id: string | number);\n\n /**\n *\n * @param bean\n */\n abstract updateBean(bean: B);\n}\n","import { Model } from \"@geosdi/ngx-model\";\nimport { EntityAdapter, EntityState } from \"@ngrx/entity\";\n\n/**\n * @author Vito Salvia - CNR IMAA geoSDI Group\n * @email vito.salvia@gmail.com\n */\n\nexport interface NgxAppState {}\n\nexport interface NgxState<B extends Model> extends EntityState<B> {\n paginatedBeanLoaded: boolean;\n total: number;\n}\n\nexport function selectModelId(model: Model): any {\n return model.id;\n}\n\nexport function getAdapterIntialState<B extends Model>(\n adapter: EntityAdapter<B>,\n) {\n return adapter.getInitialState({\n paginatedBeanLoaded: false,\n total: 0,\n });\n}\n","import { createAction, props } from \"@ngrx/store\";\n\n/**\n * @author Vito Salvia - CNR IMAA geoSDI Group\n * @email vito.salvia@gmail.com\n */\nexport const CLEAR_STATE = \"[Service] Clear State\";\n\nexport const serviceSuccess = createAction(\"[Service] Service Success\");\nexport const afterDeleting = createAction(\"[Service] Service After Deleting\");\nexport const reloadTable = createAction(\n \"[Service] Reload View\",\n props<{ TABLE: any }>(),\n);\n\nexport const clearState = createAction(CLEAR_STATE);\n","/*\n * Public API Surface of ngx-store\n */\n\nexport * from \"./lib/ngx-store.facade\";\nexport * from \"./lib/ngx-abstract-store.facade\";\nexport * from \"./lib/ngx-state\";\nexport * from \"./lib/ngx-actions\";\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"geosdi-ngx-store.mjs","sources":["../../../../projects/geosdi/ngx-store/src/lib/ngx-abstract-store.facade.ts","../../../../projects/geosdi/ngx-store/src/lib/ngx-state.ts","../../../../projects/geosdi/ngx-store/src/lib/ngx-actions.ts","../../../../projects/geosdi/ngx-store/src/lib/ngx-effects.ts","../../../../projects/geosdi/ngx-store/src/public-api.ts","../../../../projects/geosdi/ngx-store/src/geosdi-ngx-store.ts"],"sourcesContent":["import { Model } from \"@geosdi/ngx-model\";\nimport { Observable } from \"rxjs\";\nimport { INgxStoreFacade } from \"./ngx-store.facade\";\n\n/**\n * @author Vito Salvia - CNR IMAA geoSDI Group\n * @email vito.salvia@gmail.com\n */\nexport abstract class NgxAbstractStoreFacade<B extends Model>\n implements INgxStoreFacade<B>\n{\n /**\n *\n * @param bean\n */\n abstract addBean(bean: B);\n\n /**\n *\n */\n abstract clearStore();\n\n /**\n *\n * @param id\n */\n abstract deleteBean(id: string | number);\n\n /**\n *\n * @param from\n * @param size\n * @param params\n */\n abstract searchByValue(from: number, size: number, params: any);\n\n /**\n *\n */\n abstract getTotal(): Observable<number>;\n\n /**\n *\n */\n abstract loadStore();\n\n /**\n *\n * @param from\n * @param size\n * @param param\n */\n abstract selectPaginatedBeans(from: number, size: number, param?: string);\n\n /**\n *\n * @param id\n */\n abstract selectorBeanById(id: string | number);\n\n /**\n *\n * @param bean\n */\n abstract updateBean(bean: B);\n}\n","import { Model } from \"@geosdi/ngx-model\";\nimport { EntityAdapter, EntityState } from \"@ngrx/entity\";\n\n/**\n * @author Vito Salvia - CNR IMAA geoSDI Group\n * @email vito.salvia@gmail.com\n */\n\nexport interface NgxAppState {}\n\nexport interface NgxState<B extends Model> extends EntityState<B> {\n paginatedBeanLoaded: boolean;\n total: number;\n}\n\nexport function selectModelId(model: Model): any {\n return model.id;\n}\n\nexport function getAdapterIntialState<B extends Model>(\n adapter: EntityAdapter<B>,\n) {\n return adapter.getInitialState({\n paginatedBeanLoaded: false,\n total: 0,\n });\n}\n","import { createAction, props } from \"@ngrx/store\";\n\n/**\n * @author Vito Salvia - CNR IMAA geoSDI Group\n * @email vito.salvia@gmail.com\n */\nexport const CLEAR_STATE = \"[Service] Clear State\";\n\nexport const serviceSuccess = createAction(\"[Service] Service Success\");\nexport const afterDeleting = createAction(\"[Service] Service After Deleting\");\nexport const reloadTable = createAction(\n \"[Service] Reload View\",\n props<{ TABLE: any }>(),\n);\n\nexport const clearState = createAction(CLEAR_STATE);\n","import { Actions, createEffect, ofType } from \"@ngrx/effects\";\nimport { delay, map, tap } from \"rxjs/operators\";\nimport { Injectable } from \"@angular/core\";\nimport { Store } from \"@ngrx/store\";\nimport { NgxPrimeNgTableEventService } from \"@geosdi/ngx-primeng-table\";\nimport { resetBean } from \"@geosdi/ngx-select-bean\";\nimport { NgxUtilityServiceService } from \"@geosdi/ngx-utility-service\";\nimport { NgxPrimeNgModalService } from \"@geosdi/ngx-primeng-modal-service\";\nimport { afterDeleting, reloadTable, serviceSuccess } from \"./ngx-actions\";\n\n/**\n * @author Vito Salvia - CNR IMAA geoSDI Group\n * @email vito.salvia@gmail.com\n */\n@Injectable()\nexport class NgxEffects {\n onSuccess$ = createEffect(\n () =>\n this.actions$.pipe(\n ofType(serviceSuccess),\n tap((res) => {\n this.utilityService.printTranslateMessage(\n \"Service\",\n \"message.action_successful\",\n \"success\",\n );\n }),\n ),\n { dispatch: false },\n );\n\n onAfterDeleting$ = createEffect(\n () =>\n this.actions$.pipe(\n ofType(afterDeleting),\n tap((res) => {\n this.appStore.dispatch(resetBean());\n }),\n ),\n { dispatch: false },\n );\n\n reload$ = createEffect(\n () =>\n this.actions$.pipe(\n ofType(reloadTable),\n delay(1000),\n map((action) => {\n this.tableEventService.subjectReloadView$.next(\n action.TABLE,\n );\n }),\n ),\n { dispatch: false },\n );\n\n constructor(\n private actions$: Actions,\n private utilityService: NgxUtilityServiceService,\n private tableEventService: NgxPrimeNgTableEventService,\n private modalService: NgxPrimeNgModalService,\n private appStore: Store,\n ) {}\n}\n","/*\n * Public API Surface of ngx-store\n */\n\nexport * from \"./lib/ngx-store.facade\";\nexport * from \"./lib/ngx-abstract-store.facade\";\nexport * from \"./lib/ngx-state\";\nexport * from \"./lib/ngx-actions\";\nexport * from \"./lib/ngx-effects\";\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;;;;;;;AAIA;;;AAGG;MACmB,sBAAsB,CAAA;AAyD3C;;AClDK,SAAU,aAAa,CAAC,KAAY,EAAA;IACtC,OAAO,KAAK,CAAC,EAAE,CAAC;AACpB,CAAC;AAEK,SAAU,qBAAqB,CACjC,OAAyB,EAAA;IAEzB,OAAO,OAAO,CAAC,eAAe,CAAC;AAC3B,QAAA,mBAAmB,EAAE,KAAK;AAC1B,QAAA,KAAK,EAAE,CAAC;AACX,KAAA,CAAC,CAAC;AACP;;ACxBA;;;AAGG;AACI,MAAM,WAAW,GAAG,wBAAwB;MAEtC,cAAc,GAAG,YAAY,CAAC,4BAA4B,EAAE;MAC5D,aAAa,GAAG,YAAY,CAAC,mCAAmC,EAAE;AAClE,MAAA,WAAW,GAAG,YAAY,CACnC,uBAAuB,EACvB,KAAK,EAAkB,EACzB;MAEW,UAAU,GAAG,YAAY,CAAC,WAAW;;ACLlD;;;AAGG;MAEU,UAAU,CAAA;IAyCnB,WACY,CAAA,QAAiB,EACjB,cAAwC,EACxC,iBAA8C,EAC9C,YAAoC,EACpC,QAAe,EAAA;AAJf,QAAA,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAS;AACjB,QAAA,IAAc,CAAA,cAAA,GAAd,cAAc,CAA0B;AACxC,QAAA,IAAiB,CAAA,iBAAA,GAAjB,iBAAiB,CAA6B;AAC9C,QAAA,IAAY,CAAA,YAAA,GAAZ,YAAY,CAAwB;AACpC,QAAA,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAO;QA7C3B,IAAU,CAAA,UAAA,GAAG,YAAY,CACrB,MACI,IAAI,CAAC,QAAQ,CAAC,IAAI,CACd,MAAM,CAAC,cAAc,CAAC,EACtB,GAAG,CAAC,CAAC,GAAG,KAAI;YACR,IAAI,CAAC,cAAc,CAAC,qBAAqB,CACrC,SAAS,EACT,2BAA2B,EAC3B,SAAS,CACZ,CAAC;SACL,CAAC,CACL,EACL,EAAE,QAAQ,EAAE,KAAK,EAAE,CACtB,CAAC;QAEF,IAAgB,CAAA,gBAAA,GAAG,YAAY,CAC3B,MACI,IAAI,CAAC,QAAQ,CAAC,IAAI,CACd,MAAM,CAAC,aAAa,CAAC,EACrB,GAAG,CAAC,CAAC,GAAG,KAAI;YACR,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC;SACvC,CAAC,CACL,EACL,EAAE,QAAQ,EAAE,KAAK,EAAE,CACtB,CAAC;AAEF,QAAA,IAAO,CAAA,OAAA,GAAG,YAAY,CAClB,MACI,IAAI,CAAC,QAAQ,CAAC,IAAI,CACd,MAAM,CAAC,WAAW,CAAC,EACnB,KAAK,CAAC,IAAI,CAAC,EACX,GAAG,CAAC,CAAC,MAAM,KAAI;YACX,IAAI,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,IAAI,CAC1C,MAAM,CAAC,KAAK,CACf,CAAC;SACL,CAAC,CACL,EACL,EAAE,QAAQ,EAAE,KAAK,EAAE,CACtB,CAAC;KAQE;;0HA/CK,UAAU,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,OAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,wBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,2BAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,sBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,KAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;8HAAV,UAAU,EAAA,CAAA,CAAA;2FAAV,UAAU,EAAA,UAAA,EAAA,CAAA;kBADtB,UAAU;;;ACdX;;AAEG;;ACFH;;AAEG;;;;"}
|
|
@@ -1,4 +1,14 @@
|
|
|
1
|
+
import * as i5 from '@ngrx/store';
|
|
1
2
|
import { createAction, props } from '@ngrx/store';
|
|
3
|
+
import * as i1 from '@ngrx/effects';
|
|
4
|
+
import { createEffect, ofType } from '@ngrx/effects';
|
|
5
|
+
import { tap, delay, map } from 'rxjs/operators';
|
|
6
|
+
import * as i0 from '@angular/core';
|
|
7
|
+
import { Injectable } from '@angular/core';
|
|
8
|
+
import * as i3 from '@geosdi/ngx-primeng-table';
|
|
9
|
+
import { resetBean } from '@geosdi/ngx-select-bean';
|
|
10
|
+
import * as i2 from '@geosdi/ngx-utility-service';
|
|
11
|
+
import * as i4 from '@geosdi/ngx-primeng-modal-service';
|
|
2
12
|
|
|
3
13
|
/**
|
|
4
14
|
* @author Vito Salvia - CNR IMAA geoSDI Group
|
|
@@ -27,6 +37,34 @@ const afterDeleting = createAction("[Service] Service After Deleting");
|
|
|
27
37
|
const reloadTable = createAction("[Service] Reload View", props());
|
|
28
38
|
const clearState = createAction(CLEAR_STATE);
|
|
29
39
|
|
|
40
|
+
/**
|
|
41
|
+
* @author Vito Salvia - CNR IMAA geoSDI Group
|
|
42
|
+
* @email vito.salvia@gmail.com
|
|
43
|
+
*/
|
|
44
|
+
class NgxEffects {
|
|
45
|
+
constructor(actions$, utilityService, tableEventService, modalService, appStore) {
|
|
46
|
+
this.actions$ = actions$;
|
|
47
|
+
this.utilityService = utilityService;
|
|
48
|
+
this.tableEventService = tableEventService;
|
|
49
|
+
this.modalService = modalService;
|
|
50
|
+
this.appStore = appStore;
|
|
51
|
+
this.onSuccess$ = createEffect(() => this.actions$.pipe(ofType(serviceSuccess), tap((res) => {
|
|
52
|
+
this.utilityService.printTranslateMessage("Service", "message.action_successful", "success");
|
|
53
|
+
})), { dispatch: false });
|
|
54
|
+
this.onAfterDeleting$ = createEffect(() => this.actions$.pipe(ofType(afterDeleting), tap((res) => {
|
|
55
|
+
this.appStore.dispatch(resetBean());
|
|
56
|
+
})), { dispatch: false });
|
|
57
|
+
this.reload$ = createEffect(() => this.actions$.pipe(ofType(reloadTable), delay(1000), map((action) => {
|
|
58
|
+
this.tableEventService.subjectReloadView$.next(action.TABLE);
|
|
59
|
+
})), { dispatch: false });
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
/** @nocollapse */ NgxEffects.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: NgxEffects, deps: [{ token: i1.Actions }, { token: i2.NgxUtilityServiceService }, { token: i3.NgxPrimeNgTableEventService }, { token: i4.NgxPrimeNgModalService }, { token: i5.Store }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
63
|
+
/** @nocollapse */ NgxEffects.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: NgxEffects });
|
|
64
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: NgxEffects, decorators: [{
|
|
65
|
+
type: Injectable
|
|
66
|
+
}], ctorParameters: function () { return [{ type: i1.Actions }, { type: i2.NgxUtilityServiceService }, { type: i3.NgxPrimeNgTableEventService }, { type: i4.NgxPrimeNgModalService }, { type: i5.Store }]; } });
|
|
67
|
+
|
|
30
68
|
/*
|
|
31
69
|
* Public API Surface of ngx-store
|
|
32
70
|
*/
|
|
@@ -35,5 +73,5 @@ const clearState = createAction(CLEAR_STATE);
|
|
|
35
73
|
* Generated bundle index. Do not edit.
|
|
36
74
|
*/
|
|
37
75
|
|
|
38
|
-
export { CLEAR_STATE, NgxAbstractStoreFacade, afterDeleting, clearState, getAdapterIntialState, reloadTable, selectModelId, serviceSuccess };
|
|
76
|
+
export { CLEAR_STATE, NgxAbstractStoreFacade, NgxEffects, afterDeleting, clearState, getAdapterIntialState, reloadTable, selectModelId, serviceSuccess };
|
|
39
77
|
//# sourceMappingURL=geosdi-ngx-store.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"geosdi-ngx-store.mjs","sources":["../../../../projects/geosdi/ngx-store/src/lib/ngx-abstract-store.facade.ts","../../../../projects/geosdi/ngx-store/src/lib/ngx-state.ts","../../../../projects/geosdi/ngx-store/src/lib/ngx-actions.ts","../../../../projects/geosdi/ngx-store/src/public-api.ts","../../../../projects/geosdi/ngx-store/src/geosdi-ngx-store.ts"],"sourcesContent":["import { Model } from \"@geosdi/ngx-model\";\nimport { Observable } from \"rxjs\";\nimport { INgxStoreFacade } from \"./ngx-store.facade\";\n\n/**\n * @author Vito Salvia - CNR IMAA geoSDI Group\n * @email vito.salvia@gmail.com\n */\nexport abstract class NgxAbstractStoreFacade<B extends Model>\n implements INgxStoreFacade<B>\n{\n /**\n *\n * @param bean\n */\n abstract addBean(bean: B);\n\n /**\n *\n */\n abstract clearStore();\n\n /**\n *\n * @param id\n */\n abstract deleteBean(id: string | number);\n\n /**\n *\n * @param from\n * @param size\n * @param params\n */\n abstract searchByValue(from: number, size: number, params: any);\n\n /**\n *\n */\n abstract getTotal(): Observable<number>;\n\n /**\n *\n */\n abstract loadStore();\n\n /**\n *\n * @param from\n * @param size\n * @param param\n */\n abstract selectPaginatedBeans(from: number, size: number, param?: string);\n\n /**\n *\n * @param id\n */\n abstract selectorBeanById(id: string | number);\n\n /**\n *\n * @param bean\n */\n abstract updateBean(bean: B);\n}\n","import { Model } from \"@geosdi/ngx-model\";\nimport { EntityAdapter, EntityState } from \"@ngrx/entity\";\n\n/**\n * @author Vito Salvia - CNR IMAA geoSDI Group\n * @email vito.salvia@gmail.com\n */\n\nexport interface NgxAppState {}\n\nexport interface NgxState<B extends Model> extends EntityState<B> {\n paginatedBeanLoaded: boolean;\n total: number;\n}\n\nexport function selectModelId(model: Model): any {\n return model.id;\n}\n\nexport function getAdapterIntialState<B extends Model>(\n adapter: EntityAdapter<B>,\n) {\n return adapter.getInitialState({\n paginatedBeanLoaded: false,\n total: 0,\n });\n}\n","import { createAction, props } from \"@ngrx/store\";\n\n/**\n * @author Vito Salvia - CNR IMAA geoSDI Group\n * @email vito.salvia@gmail.com\n */\nexport const CLEAR_STATE = \"[Service] Clear State\";\n\nexport const serviceSuccess = createAction(\"[Service] Service Success\");\nexport const afterDeleting = createAction(\"[Service] Service After Deleting\");\nexport const reloadTable = createAction(\n \"[Service] Reload View\",\n props<{ TABLE: any }>(),\n);\n\nexport const clearState = createAction(CLEAR_STATE);\n","/*\n * Public API Surface of ngx-store\n */\n\nexport * from \"./lib/ngx-store.facade\";\nexport * from \"./lib/ngx-abstract-store.facade\";\nexport * from \"./lib/ngx-state\";\nexport * from \"./lib/ngx-actions\";\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"geosdi-ngx-store.mjs","sources":["../../../../projects/geosdi/ngx-store/src/lib/ngx-abstract-store.facade.ts","../../../../projects/geosdi/ngx-store/src/lib/ngx-state.ts","../../../../projects/geosdi/ngx-store/src/lib/ngx-actions.ts","../../../../projects/geosdi/ngx-store/src/lib/ngx-effects.ts","../../../../projects/geosdi/ngx-store/src/public-api.ts","../../../../projects/geosdi/ngx-store/src/geosdi-ngx-store.ts"],"sourcesContent":["import { Model } from \"@geosdi/ngx-model\";\nimport { Observable } from \"rxjs\";\nimport { INgxStoreFacade } from \"./ngx-store.facade\";\n\n/**\n * @author Vito Salvia - CNR IMAA geoSDI Group\n * @email vito.salvia@gmail.com\n */\nexport abstract class NgxAbstractStoreFacade<B extends Model>\n implements INgxStoreFacade<B>\n{\n /**\n *\n * @param bean\n */\n abstract addBean(bean: B);\n\n /**\n *\n */\n abstract clearStore();\n\n /**\n *\n * @param id\n */\n abstract deleteBean(id: string | number);\n\n /**\n *\n * @param from\n * @param size\n * @param params\n */\n abstract searchByValue(from: number, size: number, params: any);\n\n /**\n *\n */\n abstract getTotal(): Observable<number>;\n\n /**\n *\n */\n abstract loadStore();\n\n /**\n *\n * @param from\n * @param size\n * @param param\n */\n abstract selectPaginatedBeans(from: number, size: number, param?: string);\n\n /**\n *\n * @param id\n */\n abstract selectorBeanById(id: string | number);\n\n /**\n *\n * @param bean\n */\n abstract updateBean(bean: B);\n}\n","import { Model } from \"@geosdi/ngx-model\";\nimport { EntityAdapter, EntityState } from \"@ngrx/entity\";\n\n/**\n * @author Vito Salvia - CNR IMAA geoSDI Group\n * @email vito.salvia@gmail.com\n */\n\nexport interface NgxAppState {}\n\nexport interface NgxState<B extends Model> extends EntityState<B> {\n paginatedBeanLoaded: boolean;\n total: number;\n}\n\nexport function selectModelId(model: Model): any {\n return model.id;\n}\n\nexport function getAdapterIntialState<B extends Model>(\n adapter: EntityAdapter<B>,\n) {\n return adapter.getInitialState({\n paginatedBeanLoaded: false,\n total: 0,\n });\n}\n","import { createAction, props } from \"@ngrx/store\";\n\n/**\n * @author Vito Salvia - CNR IMAA geoSDI Group\n * @email vito.salvia@gmail.com\n */\nexport const CLEAR_STATE = \"[Service] Clear State\";\n\nexport const serviceSuccess = createAction(\"[Service] Service Success\");\nexport const afterDeleting = createAction(\"[Service] Service After Deleting\");\nexport const reloadTable = createAction(\n \"[Service] Reload View\",\n props<{ TABLE: any }>(),\n);\n\nexport const clearState = createAction(CLEAR_STATE);\n","import { Actions, createEffect, ofType } from \"@ngrx/effects\";\nimport { delay, map, tap } from \"rxjs/operators\";\nimport { Injectable } from \"@angular/core\";\nimport { Store } from \"@ngrx/store\";\nimport { NgxPrimeNgTableEventService } from \"@geosdi/ngx-primeng-table\";\nimport { resetBean } from \"@geosdi/ngx-select-bean\";\nimport { NgxUtilityServiceService } from \"@geosdi/ngx-utility-service\";\nimport { NgxPrimeNgModalService } from \"@geosdi/ngx-primeng-modal-service\";\nimport { afterDeleting, reloadTable, serviceSuccess } from \"./ngx-actions\";\n\n/**\n * @author Vito Salvia - CNR IMAA geoSDI Group\n * @email vito.salvia@gmail.com\n */\n@Injectable()\nexport class NgxEffects {\n onSuccess$ = createEffect(\n () =>\n this.actions$.pipe(\n ofType(serviceSuccess),\n tap((res) => {\n this.utilityService.printTranslateMessage(\n \"Service\",\n \"message.action_successful\",\n \"success\",\n );\n }),\n ),\n { dispatch: false },\n );\n\n onAfterDeleting$ = createEffect(\n () =>\n this.actions$.pipe(\n ofType(afterDeleting),\n tap((res) => {\n this.appStore.dispatch(resetBean());\n }),\n ),\n { dispatch: false },\n );\n\n reload$ = createEffect(\n () =>\n this.actions$.pipe(\n ofType(reloadTable),\n delay(1000),\n map((action) => {\n this.tableEventService.subjectReloadView$.next(\n action.TABLE,\n );\n }),\n ),\n { dispatch: false },\n );\n\n constructor(\n private actions$: Actions,\n private utilityService: NgxUtilityServiceService,\n private tableEventService: NgxPrimeNgTableEventService,\n private modalService: NgxPrimeNgModalService,\n private appStore: Store,\n ) {}\n}\n","/*\n * Public API Surface of ngx-store\n */\n\nexport * from \"./lib/ngx-store.facade\";\nexport * from \"./lib/ngx-abstract-store.facade\";\nexport * from \"./lib/ngx-state\";\nexport * from \"./lib/ngx-actions\";\nexport * from \"./lib/ngx-effects\";\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;;;;;;;AAIA;;;AAGG;MACmB,sBAAsB,CAAA;AAyD3C;;AClDK,SAAU,aAAa,CAAC,KAAY,EAAA;IACtC,OAAO,KAAK,CAAC,EAAE,CAAC;AACpB,CAAC;AAEK,SAAU,qBAAqB,CACjC,OAAyB,EAAA;IAEzB,OAAO,OAAO,CAAC,eAAe,CAAC;AAC3B,QAAA,mBAAmB,EAAE,KAAK;AAC1B,QAAA,KAAK,EAAE,CAAC;AACX,KAAA,CAAC,CAAC;AACP;;ACxBA;;;AAGG;AACI,MAAM,WAAW,GAAG,wBAAwB;MAEtC,cAAc,GAAG,YAAY,CAAC,4BAA4B,EAAE;MAC5D,aAAa,GAAG,YAAY,CAAC,mCAAmC,EAAE;AAClE,MAAA,WAAW,GAAG,YAAY,CACnC,uBAAuB,EACvB,KAAK,EAAkB,EACzB;MAEW,UAAU,GAAG,YAAY,CAAC,WAAW;;ACLlD;;;AAGG;MAEU,UAAU,CAAA;IAyCnB,WACY,CAAA,QAAiB,EACjB,cAAwC,EACxC,iBAA8C,EAC9C,YAAoC,EACpC,QAAe,EAAA;QAJf,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAS;QACjB,IAAc,CAAA,cAAA,GAAd,cAAc,CAA0B;QACxC,IAAiB,CAAA,iBAAA,GAAjB,iBAAiB,CAA6B;QAC9C,IAAY,CAAA,YAAA,GAAZ,YAAY,CAAwB;QACpC,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAO;QA7C3B,IAAU,CAAA,UAAA,GAAG,YAAY,CACrB,MACI,IAAI,CAAC,QAAQ,CAAC,IAAI,CACd,MAAM,CAAC,cAAc,CAAC,EACtB,GAAG,CAAC,CAAC,GAAG,KAAI;YACR,IAAI,CAAC,cAAc,CAAC,qBAAqB,CACrC,SAAS,EACT,2BAA2B,EAC3B,SAAS,CACZ,CAAC;SACL,CAAC,CACL,EACL,EAAE,QAAQ,EAAE,KAAK,EAAE,CACtB,CAAC;QAEF,IAAgB,CAAA,gBAAA,GAAG,YAAY,CAC3B,MACI,IAAI,CAAC,QAAQ,CAAC,IAAI,CACd,MAAM,CAAC,aAAa,CAAC,EACrB,GAAG,CAAC,CAAC,GAAG,KAAI;YACR,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC;SACvC,CAAC,CACL,EACL,EAAE,QAAQ,EAAE,KAAK,EAAE,CACtB,CAAC;QAEF,IAAO,CAAA,OAAA,GAAG,YAAY,CAClB,MACI,IAAI,CAAC,QAAQ,CAAC,IAAI,CACd,MAAM,CAAC,WAAW,CAAC,EACnB,KAAK,CAAC,IAAI,CAAC,EACX,GAAG,CAAC,CAAC,MAAM,KAAI;YACX,IAAI,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,IAAI,CAC1C,MAAM,CAAC,KAAK,CACf,CAAC;SACL,CAAC,CACL,EACL,EAAE,QAAQ,EAAE,KAAK,EAAE,CACtB,CAAC;KAQE;;0HA/CK,UAAU,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,OAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,wBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,2BAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,sBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,KAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;8HAAV,UAAU,EAAA,CAAA,CAAA;2FAAV,UAAU,EAAA,UAAA,EAAA,CAAA;kBADtB,UAAU;;;ACdX;;AAEG;;ACFH;;AAEG;;;;"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { Actions } from "@ngrx/effects";
|
|
2
|
+
import { Store } from "@ngrx/store";
|
|
3
|
+
import { NgxPrimeNgTableEventService } from "@geosdi/ngx-primeng-table";
|
|
4
|
+
import { NgxUtilityServiceService } from "@geosdi/ngx-utility-service";
|
|
5
|
+
import { NgxPrimeNgModalService } from "@geosdi/ngx-primeng-modal-service";
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
/**
|
|
8
|
+
* @author Vito Salvia - CNR IMAA geoSDI Group
|
|
9
|
+
* @email vito.salvia@gmail.com
|
|
10
|
+
*/
|
|
11
|
+
export declare class NgxEffects {
|
|
12
|
+
private actions$;
|
|
13
|
+
private utilityService;
|
|
14
|
+
private tableEventService;
|
|
15
|
+
private modalService;
|
|
16
|
+
private appStore;
|
|
17
|
+
onSuccess$: import("rxjs").Observable<import("@ngrx/store/src/models").TypedAction<"[Service] Service Success">> & import("@ngrx/effects").CreateEffectMetadata;
|
|
18
|
+
onAfterDeleting$: import("rxjs").Observable<import("@ngrx/store/src/models").TypedAction<"[Service] Service After Deleting">> & import("@ngrx/effects").CreateEffectMetadata;
|
|
19
|
+
reload$: import("rxjs").Observable<void> & import("@ngrx/effects").CreateEffectMetadata;
|
|
20
|
+
constructor(actions$: Actions, utilityService: NgxUtilityServiceService, tableEventService: NgxPrimeNgTableEventService, modalService: NgxPrimeNgModalService, appStore: Store);
|
|
21
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<NgxEffects, never>;
|
|
22
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<NgxEffects>;
|
|
23
|
+
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@geosdi/ngx-store",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.8",
|
|
4
4
|
"description": "Ngrx store facade",
|
|
5
5
|
"author": "Salvia Vito (vito.salvia@gmail.com)",
|
|
6
6
|
"keywords": [
|
|
@@ -21,7 +21,8 @@
|
|
|
21
21
|
"@geosdi/ngx-primeng-modal-service": ">=1.0.0",
|
|
22
22
|
"@geosdi/ngx-utility-service": ">=1.0.0",
|
|
23
23
|
"@geosdi/ngx-select-bean": ">=1.0.0",
|
|
24
|
-
"@geosdi/ngx-primeng-table": ">=1.0.1"
|
|
24
|
+
"@geosdi/ngx-primeng-table": ">=1.0.1",
|
|
25
|
+
"@geosdi/ngx-loading": ">=1.0.0"
|
|
25
26
|
},
|
|
26
27
|
"sideEffects": false,
|
|
27
28
|
"module": "fesm2015/geosdi-ngx-store.mjs",
|
package/public-api.d.ts
CHANGED