@geosdi/ngx-store 1.0.9 → 1.1.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.
@@ -6,6 +6,7 @@ import { createAction, props } from "@ngrx/store";
6
6
  export const CLEAR_STATE = "[Service] Clear State";
7
7
  export const serviceSuccess = createAction("[Service] Service Success");
8
8
  export const afterDeleting = createAction("[Service] Service After Deleting");
9
+ export const afterUpdating = createAction("[Service] Service After Updating", props());
9
10
  export const reloadTable = createAction("[Service] Reload View", props());
10
11
  export const clearState = createAction(CLEAR_STATE);
11
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LWFjdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9nZW9zZGkvbmd4LXN0b3JlL3NyYy9saWIvbmd4LWFjdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFbEQ7OztHQUdHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFHLHVCQUF1QixDQUFDO0FBRW5ELE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRyxZQUFZLENBQUMsNEJBQTRCLENBQUMsQ0FBQztBQUN6RSxNQUFNLENBQUMsTUFBTSxhQUFhLEdBQUcsWUFBWSxDQUFDLG1DQUFtQyxDQUFDLENBQUM7QUFDL0UsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFHLFlBQVksQ0FDbkMsdUJBQXVCLEVBQ3ZCLEtBQUssRUFBa0IsQ0FDMUIsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBRyxZQUFZLENBQUMsV0FBVyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjcmVhdGVBY3Rpb24sIHByb3BzIH0gZnJvbSBcIkBuZ3J4L3N0b3JlXCI7XG5cbi8qKlxuICogQGF1dGhvciBWaXRvIFNhbHZpYSAtIENOUiBJTUFBIGdlb1NESSBHcm91cFxuICogQGVtYWlsIHZpdG8uc2FsdmlhQGdtYWlsLmNvbVxuICovXG5leHBvcnQgY29uc3QgQ0xFQVJfU1RBVEUgPSBcIltTZXJ2aWNlXSBDbGVhciBTdGF0ZVwiO1xuXG5leHBvcnQgY29uc3Qgc2VydmljZVN1Y2Nlc3MgPSBjcmVhdGVBY3Rpb24oXCJbU2VydmljZV0gIFNlcnZpY2UgU3VjY2Vzc1wiKTtcbmV4cG9ydCBjb25zdCBhZnRlckRlbGV0aW5nID0gY3JlYXRlQWN0aW9uKFwiW1NlcnZpY2VdICBTZXJ2aWNlIEFmdGVyIERlbGV0aW5nXCIpO1xuZXhwb3J0IGNvbnN0IHJlbG9hZFRhYmxlID0gY3JlYXRlQWN0aW9uKFxuICAgIFwiW1NlcnZpY2VdIFJlbG9hZCBWaWV3XCIsXG4gICAgcHJvcHM8eyBUQUJMRTogYW55IH0+KCksXG4pO1xuXG5leHBvcnQgY29uc3QgY2xlYXJTdGF0ZSA9IGNyZWF0ZUFjdGlvbihDTEVBUl9TVEFURSk7XG4iXX0=
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LWFjdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9nZW9zZGkvbmd4LXN0b3JlL3NyYy9saWIvbmd4LWFjdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFbEQ7OztHQUdHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFHLHVCQUF1QixDQUFDO0FBRW5ELE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRyxZQUFZLENBQUMsNEJBQTRCLENBQUMsQ0FBQztBQUN6RSxNQUFNLENBQUMsTUFBTSxhQUFhLEdBQUcsWUFBWSxDQUFDLG1DQUFtQyxDQUFDLENBQUM7QUFDL0UsTUFBTSxDQUFDLE1BQU0sYUFBYSxHQUFHLFlBQVksQ0FDckMsbUNBQW1DLEVBQ25DLEtBQUssRUFFRCxDQUNQLENBQUM7QUFDRixNQUFNLENBQUMsTUFBTSxXQUFXLEdBQUcsWUFBWSxDQUNuQyx1QkFBdUIsRUFDdkIsS0FBSyxFQUFrQixDQUMxQixDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHLFlBQVksQ0FBQyxXQUFXLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNyZWF0ZUFjdGlvbiwgcHJvcHMgfSBmcm9tIFwiQG5ncngvc3RvcmVcIjtcblxuLyoqXG4gKiBAYXV0aG9yIFZpdG8gU2FsdmlhIC0gQ05SIElNQUEgZ2VvU0RJIEdyb3VwXG4gKiBAZW1haWwgdml0by5zYWx2aWFAZ21haWwuY29tXG4gKi9cbmV4cG9ydCBjb25zdCBDTEVBUl9TVEFURSA9IFwiW1NlcnZpY2VdIENsZWFyIFN0YXRlXCI7XG5cbmV4cG9ydCBjb25zdCBzZXJ2aWNlU3VjY2VzcyA9IGNyZWF0ZUFjdGlvbihcIltTZXJ2aWNlXSAgU2VydmljZSBTdWNjZXNzXCIpO1xuZXhwb3J0IGNvbnN0IGFmdGVyRGVsZXRpbmcgPSBjcmVhdGVBY3Rpb24oXCJbU2VydmljZV0gIFNlcnZpY2UgQWZ0ZXIgRGVsZXRpbmdcIik7XG5leHBvcnQgY29uc3QgYWZ0ZXJVcGRhdGluZyA9IGNyZWF0ZUFjdGlvbihcbiAgICBcIltTZXJ2aWNlXSAgU2VydmljZSBBZnRlciBVcGRhdGluZ1wiLFxuICAgIHByb3BzPHtcbiAgICAgICAgYmVhbjogYW55O1xuICAgIH0+KCksXG4pO1xuZXhwb3J0IGNvbnN0IHJlbG9hZFRhYmxlID0gY3JlYXRlQWN0aW9uKFxuICAgIFwiW1NlcnZpY2VdIFJlbG9hZCBWaWV3XCIsXG4gICAgcHJvcHM8eyBUQUJMRTogYW55IH0+KCksXG4pO1xuXG5leHBvcnQgY29uc3QgY2xlYXJTdGF0ZSA9IGNyZWF0ZUFjdGlvbihDTEVBUl9TVEFURSk7XG4iXX0=
@@ -1,40 +1,51 @@
1
1
  import { Actions, createEffect, ofType } from "@ngrx/effects";
2
- import { delay, map, tap } from "rxjs/operators";
2
+ import { tap } from "rxjs/operators";
3
3
  import { Injectable } from "@angular/core";
4
4
  import { Store } from "@ngrx/store";
5
- import { NgxPrimeNgTableEventService } from "@geosdi/ngx-primeng-table";
6
- import { resetBean } from "@geosdi/ngx-select-bean";
5
+ import { addSelectBean, resetBean } from "@geosdi/ngx-select-bean";
7
6
  import { NgxUtilityServiceService } from "@geosdi/ngx-utility-service";
8
- import { afterDeleting, reloadTable, serviceSuccess } from "./ngx-actions";
7
+ import { afterDeleting, afterUpdating, serviceSuccess } from "./ngx-actions";
8
+ import { map } from "rxjs";
9
9
  import * as i0 from "@angular/core";
10
10
  import * as i1 from "@ngrx/effects";
11
11
  import * as i2 from "@geosdi/ngx-utility-service";
12
- import * as i3 from "@geosdi/ngx-primeng-table";
13
- import * as i4 from "@ngrx/store";
12
+ import * as i3 from "@ngrx/store";
14
13
  /**
15
14
  * @author Vito Salvia - CNR IMAA geoSDI Group
16
15
  * @email vito.salvia@gmail.com
17
16
  */
18
17
  export class NgxEffects {
19
- constructor(actions$, utilityService, tableEventService, appStore) {
18
+ /* reload$ = createEffect(
19
+ () =>
20
+ this.actions$.pipe(
21
+ ofType(reloadTable),
22
+ delay(1000),
23
+ map((action) => {
24
+ this.tableEventService.subjectReloadView$.next(
25
+ action.TABLE,
26
+ );
27
+ }),
28
+ ),
29
+ { dispatch: false },
30
+ );*/
31
+ constructor(actions$, utilityService, appStore) {
20
32
  this.actions$ = actions$;
21
33
  this.utilityService = utilityService;
22
- this.tableEventService = tableEventService;
23
34
  this.appStore = appStore;
24
35
  this.onSuccess$ = createEffect(() => this.actions$.pipe(ofType(serviceSuccess), tap((res) => {
25
36
  this.utilityService.printTranslateMessage("Service", "message.action_successful", "success");
26
37
  })), { dispatch: false });
27
- this.onAfterDeleting$ = createEffect(() => this.actions$.pipe(ofType(afterDeleting), tap((res) => {
38
+ this.onDeleting$ = createEffect(() => this.actions$.pipe(ofType(afterDeleting), tap((res) => {
28
39
  this.appStore.dispatch(resetBean());
29
40
  })), { dispatch: false });
30
- this.reload$ = createEffect(() => this.actions$.pipe(ofType(reloadTable), delay(1000), map((action) => {
31
- this.tableEventService.subjectReloadView$.next(action.TABLE);
41
+ this.onUpdating$ = createEffect(() => this.actions$.pipe(ofType(afterUpdating), map((action) => {
42
+ addSelectBean({ bean: action.bean });
32
43
  })), { dispatch: false });
33
44
  }
34
45
  }
35
- /** @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.Store }], target: i0.ɵɵFactoryTarget.Injectable });
46
+ /** @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.Store }], target: i0.ɵɵFactoryTarget.Injectable });
36
47
  /** @nocollapse */ NgxEffects.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: NgxEffects });
37
48
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: NgxEffects, decorators: [{
38
49
  type: Injectable
39
- }], ctorParameters: function () { return [{ type: i1.Actions }, { type: i2.NgxUtilityServiceService }, { type: i3.NgxPrimeNgTableEventService }, { type: i4.Store }]; } });
40
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LWVmZmVjdHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9nZW9zZGkvbmd4LXN0b3JlL3NyYy9saWIvbmd4LWVmZmVjdHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlELE9BQU8sRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUNwQyxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUN4RSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDcEQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDdkUsT0FBTyxFQUFFLGFBQWEsRUFBRSxXQUFXLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7Ozs7QUFFM0U7OztHQUdHO0FBRUgsTUFBTSxPQUFPLFVBQVU7SUF5Q25CLFlBQ1ksUUFBaUIsRUFDakIsY0FBd0MsRUFDeEMsaUJBQThDLEVBQzlDLFFBQWU7UUFIZixhQUFRLEdBQVIsUUFBUSxDQUFTO1FBQ2pCLG1CQUFjLEdBQWQsY0FBYyxDQUEwQjtRQUN4QyxzQkFBaUIsR0FBakIsaUJBQWlCLENBQTZCO1FBQzlDLGFBQVEsR0FBUixRQUFRLENBQU87UUE1QzNCLGVBQVUsR0FBRyxZQUFZLENBQ3JCLEdBQUcsRUFBRSxDQUNELElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUNkLE1BQU0sQ0FBQyxjQUFjLENBQUMsRUFDdEIsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUU7WUFDUixJQUFJLENBQUMsY0FBYyxDQUFDLHFCQUFxQixDQUNyQyxTQUFTLEVBQ1QsMkJBQTJCLEVBQzNCLFNBQVMsQ0FDWixDQUFDO1FBQ04sQ0FBQyxDQUFDLENBQ0wsRUFDTCxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsQ0FDdEIsQ0FBQztRQUVGLHFCQUFnQixHQUFHLFlBQVksQ0FDM0IsR0FBRyxFQUFFLENBQ0QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQ2QsTUFBTSxDQUFDLGFBQWEsQ0FBQyxFQUNyQixHQUFHLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRTtZQUNSLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUM7UUFDeEMsQ0FBQyxDQUFDLENBQ0wsRUFDTCxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsQ0FDdEIsQ0FBQztRQUVGLFlBQU8sR0FBRyxZQUFZLENBQ2xCLEdBQUcsRUFBRSxDQUNELElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUNkLE1BQU0sQ0FBQyxXQUFXLENBQUMsRUFDbkIsS0FBSyxDQUFDLElBQUksQ0FBQyxFQUNYLEdBQUcsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO1lBQ1gsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FDMUMsTUFBTSxDQUFDLEtBQUssQ0FDZixDQUFDO1FBQ04sQ0FBQyxDQUFDLENBQ0wsRUFDTCxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsQ0FDdEIsQ0FBQztJQU9DLENBQUM7OzBIQTlDSyxVQUFVOzhIQUFWLFVBQVU7MkZBQVYsVUFBVTtrQkFEdEIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFjdGlvbnMsIGNyZWF0ZUVmZmVjdCwgb2ZUeXBlIH0gZnJvbSBcIkBuZ3J4L2VmZmVjdHNcIjtcbmltcG9ydCB7IGRlbGF5LCBtYXAsIHRhcCB9IGZyb20gXCJyeGpzL29wZXJhdG9yc1wiO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBTdG9yZSB9IGZyb20gXCJAbmdyeC9zdG9yZVwiO1xuaW1wb3J0IHsgTmd4UHJpbWVOZ1RhYmxlRXZlbnRTZXJ2aWNlIH0gZnJvbSBcIkBnZW9zZGkvbmd4LXByaW1lbmctdGFibGVcIjtcbmltcG9ydCB7IHJlc2V0QmVhbiB9IGZyb20gXCJAZ2Vvc2RpL25neC1zZWxlY3QtYmVhblwiO1xuaW1wb3J0IHsgTmd4VXRpbGl0eVNlcnZpY2VTZXJ2aWNlIH0gZnJvbSBcIkBnZW9zZGkvbmd4LXV0aWxpdHktc2VydmljZVwiO1xuaW1wb3J0IHsgYWZ0ZXJEZWxldGluZywgcmVsb2FkVGFibGUsIHNlcnZpY2VTdWNjZXNzIH0gZnJvbSBcIi4vbmd4LWFjdGlvbnNcIjtcblxuLyoqXG4gKiBAYXV0aG9yIFZpdG8gU2FsdmlhIC0gQ05SIElNQUEgZ2VvU0RJIEdyb3VwXG4gKiBAZW1haWwgdml0by5zYWx2aWFAZ21haWwuY29tXG4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBOZ3hFZmZlY3RzIHtcbiAgICBvblN1Y2Nlc3MkID0gY3JlYXRlRWZmZWN0KFxuICAgICAgICAoKSA9PlxuICAgICAgICAgICAgdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgICAgICAgICAgIG9mVHlwZShzZXJ2aWNlU3VjY2VzcyksXG4gICAgICAgICAgICAgICAgdGFwKChyZXMpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy51dGlsaXR5U2VydmljZS5wcmludFRyYW5zbGF0ZU1lc3NhZ2UoXG4gICAgICAgICAgICAgICAgICAgICAgICBcIlNlcnZpY2VcIixcbiAgICAgICAgICAgICAgICAgICAgICAgIFwibWVzc2FnZS5hY3Rpb25fc3VjY2Vzc2Z1bFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgXCJzdWNjZXNzXCIsXG4gICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICApLFxuICAgICAgICB7IGRpc3BhdGNoOiBmYWxzZSB9LFxuICAgICk7XG5cbiAgICBvbkFmdGVyRGVsZXRpbmckID0gY3JlYXRlRWZmZWN0KFxuICAgICAgICAoKSA9PlxuICAgICAgICAgICAgdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgICAgICAgICAgIG9mVHlwZShhZnRlckRlbGV0aW5nKSxcbiAgICAgICAgICAgICAgICB0YXAoKHJlcykgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmFwcFN0b3JlLmRpc3BhdGNoKHJlc2V0QmVhbigpKTtcbiAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICksXG4gICAgICAgIHsgZGlzcGF0Y2g6IGZhbHNlIH0sXG4gICAgKTtcblxuICAgIHJlbG9hZCQgPSBjcmVhdGVFZmZlY3QoXG4gICAgICAgICgpID0+XG4gICAgICAgICAgICB0aGlzLmFjdGlvbnMkLnBpcGUoXG4gICAgICAgICAgICAgICAgb2ZUeXBlKHJlbG9hZFRhYmxlKSxcbiAgICAgICAgICAgICAgICBkZWxheSgxMDAwKSxcbiAgICAgICAgICAgICAgICBtYXAoKGFjdGlvbikgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnRhYmxlRXZlbnRTZXJ2aWNlLnN1YmplY3RSZWxvYWRWaWV3JC5uZXh0KFxuICAgICAgICAgICAgICAgICAgICAgICAgYWN0aW9uLlRBQkxFLFxuICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgeyBkaXNwYXRjaDogZmFsc2UgfSxcbiAgICApO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgYWN0aW9ucyQ6IEFjdGlvbnMsXG4gICAgICAgIHByaXZhdGUgdXRpbGl0eVNlcnZpY2U6IE5neFV0aWxpdHlTZXJ2aWNlU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSB0YWJsZUV2ZW50U2VydmljZTogTmd4UHJpbWVOZ1RhYmxlRXZlbnRTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIGFwcFN0b3JlOiBTdG9yZSxcbiAgICApIHt9XG59XG4iXX0=
50
+ }], ctorParameters: function () { return [{ type: i1.Actions }, { type: i2.NgxUtilityServiceService }, { type: i3.Store }]; } });
51
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LWVmZmVjdHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9nZW9zZGkvbmd4LXN0b3JlL3NyYy9saWIvbmd4LWVmZmVjdHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlELE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDcEMsT0FBTyxFQUFFLGFBQWEsRUFBRSxTQUFTLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUN2RSxPQUFPLEVBQUUsYUFBYSxFQUFFLGFBQWEsRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0UsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7Ozs7QUFFM0I7OztHQUdHO0FBRUgsTUFBTSxPQUFPLFVBQVU7SUF1Q25COzs7Ozs7Ozs7Ozs7SUFZQTtJQUVBLFlBQ1ksUUFBaUIsRUFDakIsY0FBd0MsRUFDeEMsUUFBZTtRQUZmLGFBQVEsR0FBUixRQUFRLENBQVM7UUFDakIsbUJBQWMsR0FBZCxjQUFjLENBQTBCO1FBQ3hDLGFBQVEsR0FBUixRQUFRLENBQU87UUF2RDNCLGVBQVUsR0FBRyxZQUFZLENBQ3JCLEdBQUcsRUFBRSxDQUNELElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUNkLE1BQU0sQ0FBQyxjQUFjLENBQUMsRUFDdEIsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUU7WUFDUixJQUFJLENBQUMsY0FBYyxDQUFDLHFCQUFxQixDQUNyQyxTQUFTLEVBQ1QsMkJBQTJCLEVBQzNCLFNBQVMsQ0FDWixDQUFDO1FBQ04sQ0FBQyxDQUFDLENBQ0wsRUFDTCxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsQ0FDdEIsQ0FBQztRQUVGLGdCQUFXLEdBQUcsWUFBWSxDQUN0QixHQUFHLEVBQUUsQ0FDRCxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FDZCxNQUFNLENBQUMsYUFBYSxDQUFDLEVBQ3JCLEdBQUcsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO1lBQ1IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQztRQUN4QyxDQUFDLENBQUMsQ0FDTCxFQUNMLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxDQUN0QixDQUFDO1FBRUYsZ0JBQVcsR0FBRyxZQUFZLENBQ3RCLEdBQUcsRUFBRSxDQUNELElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUNkLE1BQU0sQ0FBQyxhQUFhLENBQUMsRUFDckIsR0FBRyxDQUFDLENBQUMsTUFBVyxFQUFFLEVBQUU7WUFDaEIsYUFBYSxDQUFDLEVBQUUsSUFBSSxFQUFFLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQ3pDLENBQUMsQ0FBQyxDQUNMLEVBQ0wsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLENBQ3RCLENBQUM7SUFxQkMsQ0FBQzs7MEhBekRLLFVBQVU7OEhBQVYsVUFBVTsyRkFBVixVQUFVO2tCQUR0QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWN0aW9ucywgY3JlYXRlRWZmZWN0LCBvZlR5cGUgfSBmcm9tIFwiQG5ncngvZWZmZWN0c1wiO1xuaW1wb3J0IHsgdGFwIH0gZnJvbSBcInJ4anMvb3BlcmF0b3JzXCI7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IFN0b3JlIH0gZnJvbSBcIkBuZ3J4L3N0b3JlXCI7XG5pbXBvcnQgeyBhZGRTZWxlY3RCZWFuLCByZXNldEJlYW4gfSBmcm9tIFwiQGdlb3NkaS9uZ3gtc2VsZWN0LWJlYW5cIjtcbmltcG9ydCB7IE5neFV0aWxpdHlTZXJ2aWNlU2VydmljZSB9IGZyb20gXCJAZ2Vvc2RpL25neC11dGlsaXR5LXNlcnZpY2VcIjtcbmltcG9ydCB7IGFmdGVyRGVsZXRpbmcsIGFmdGVyVXBkYXRpbmcsIHNlcnZpY2VTdWNjZXNzIH0gZnJvbSBcIi4vbmd4LWFjdGlvbnNcIjtcbmltcG9ydCB7IG1hcCB9IGZyb20gXCJyeGpzXCI7XG5cbi8qKlxuICogQGF1dGhvciBWaXRvIFNhbHZpYSAtIENOUiBJTUFBIGdlb1NESSBHcm91cFxuICogQGVtYWlsIHZpdG8uc2FsdmlhQGdtYWlsLmNvbVxuICovXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgTmd4RWZmZWN0cyB7XG4gICAgb25TdWNjZXNzJCA9IGNyZWF0ZUVmZmVjdChcbiAgICAgICAgKCkgPT5cbiAgICAgICAgICAgIHRoaXMuYWN0aW9ucyQucGlwZShcbiAgICAgICAgICAgICAgICBvZlR5cGUoc2VydmljZVN1Y2Nlc3MpLFxuICAgICAgICAgICAgICAgIHRhcCgocmVzKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMudXRpbGl0eVNlcnZpY2UucHJpbnRUcmFuc2xhdGVNZXNzYWdlKFxuICAgICAgICAgICAgICAgICAgICAgICAgXCJTZXJ2aWNlXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICBcIm1lc3NhZ2UuYWN0aW9uX3N1Y2Nlc3NmdWxcIixcbiAgICAgICAgICAgICAgICAgICAgICAgIFwic3VjY2Vzc1wiLFxuICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgeyBkaXNwYXRjaDogZmFsc2UgfSxcbiAgICApO1xuXG4gICAgb25EZWxldGluZyQgPSBjcmVhdGVFZmZlY3QoXG4gICAgICAgICgpID0+XG4gICAgICAgICAgICB0aGlzLmFjdGlvbnMkLnBpcGUoXG4gICAgICAgICAgICAgICAgb2ZUeXBlKGFmdGVyRGVsZXRpbmcpLFxuICAgICAgICAgICAgICAgIHRhcCgocmVzKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuYXBwU3RvcmUuZGlzcGF0Y2gocmVzZXRCZWFuKCkpO1xuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgeyBkaXNwYXRjaDogZmFsc2UgfSxcbiAgICApO1xuXG4gICAgb25VcGRhdGluZyQgPSBjcmVhdGVFZmZlY3QoXG4gICAgICAgICgpID0+XG4gICAgICAgICAgICB0aGlzLmFjdGlvbnMkLnBpcGUoXG4gICAgICAgICAgICAgICAgb2ZUeXBlKGFmdGVyVXBkYXRpbmcpLFxuICAgICAgICAgICAgICAgIG1hcCgoYWN0aW9uOiBhbnkpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgYWRkU2VsZWN0QmVhbih7IGJlYW46IGFjdGlvbi5iZWFuIH0pO1xuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgeyBkaXNwYXRjaDogZmFsc2UgfSxcbiAgICApO1xuICAgIG47XG5cbiAgICAvKiAgICByZWxvYWQkID0gY3JlYXRlRWZmZWN0KFxuKCkgPT5cbiAgICB0aGlzLmFjdGlvbnMkLnBpcGUoXG4gICAgICAgIG9mVHlwZShyZWxvYWRUYWJsZSksXG4gICAgICAgIGRlbGF5KDEwMDApLFxuICAgICAgICBtYXAoKGFjdGlvbikgPT4ge1xuICAgICAgICAgICAgdGhpcy50YWJsZUV2ZW50U2VydmljZS5zdWJqZWN0UmVsb2FkVmlldyQubmV4dChcbiAgICAgICAgICAgICAgICBhY3Rpb24uVEFCTEUsXG4gICAgICAgICAgICApO1xuICAgICAgICB9KSxcbiAgICApLFxueyBkaXNwYXRjaDogZmFsc2UgfSxcbik7Ki9cblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIGFjdGlvbnMkOiBBY3Rpb25zLFxuICAgICAgICBwcml2YXRlIHV0aWxpdHlTZXJ2aWNlOiBOZ3hVdGlsaXR5U2VydmljZVNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgYXBwU3RvcmU6IFN0b3JlLFxuICAgICkge31cbn1cbiJdfQ==
@@ -1,13 +1,13 @@
1
- import * as i4 from '@ngrx/store';
1
+ import * as i3 from '@ngrx/store';
2
2
  import { createAction, props } from '@ngrx/store';
3
3
  import * as i1 from '@ngrx/effects';
4
4
  import { createEffect, ofType } from '@ngrx/effects';
5
- import { tap, delay, map } from 'rxjs/operators';
5
+ import { tap } from 'rxjs/operators';
6
6
  import * as i0 from '@angular/core';
7
7
  import { Injectable } from '@angular/core';
8
- import { resetBean } from '@geosdi/ngx-select-bean';
8
+ import { resetBean, addSelectBean } from '@geosdi/ngx-select-bean';
9
+ import { map } from 'rxjs';
9
10
  import * as i2 from '@geosdi/ngx-utility-service';
10
- import * as i3 from '@geosdi/ngx-primeng-table';
11
11
 
12
12
  /**
13
13
  * @author Vito Salvia - CNR IMAA geoSDI Group
@@ -33,6 +33,7 @@ function getAdapterIntialState(adapter) {
33
33
  const CLEAR_STATE = "[Service] Clear State";
34
34
  const serviceSuccess = createAction("[Service] Service Success");
35
35
  const afterDeleting = createAction("[Service] Service After Deleting");
36
+ const afterUpdating = createAction("[Service] Service After Updating", props());
36
37
  const reloadTable = createAction("[Service] Reload View", props());
37
38
  const clearState = createAction(CLEAR_STATE);
38
39
 
@@ -41,27 +42,39 @@ const clearState = createAction(CLEAR_STATE);
41
42
  * @email vito.salvia@gmail.com
42
43
  */
43
44
  class NgxEffects {
44
- constructor(actions$, utilityService, tableEventService, appStore) {
45
+ /* reload$ = createEffect(
46
+ () =>
47
+ this.actions$.pipe(
48
+ ofType(reloadTable),
49
+ delay(1000),
50
+ map((action) => {
51
+ this.tableEventService.subjectReloadView$.next(
52
+ action.TABLE,
53
+ );
54
+ }),
55
+ ),
56
+ { dispatch: false },
57
+ );*/
58
+ constructor(actions$, utilityService, appStore) {
45
59
  this.actions$ = actions$;
46
60
  this.utilityService = utilityService;
47
- this.tableEventService = tableEventService;
48
61
  this.appStore = appStore;
49
62
  this.onSuccess$ = createEffect(() => this.actions$.pipe(ofType(serviceSuccess), tap((res) => {
50
63
  this.utilityService.printTranslateMessage("Service", "message.action_successful", "success");
51
64
  })), { dispatch: false });
52
- this.onAfterDeleting$ = createEffect(() => this.actions$.pipe(ofType(afterDeleting), tap((res) => {
65
+ this.onDeleting$ = createEffect(() => this.actions$.pipe(ofType(afterDeleting), tap((res) => {
53
66
  this.appStore.dispatch(resetBean());
54
67
  })), { dispatch: false });
55
- this.reload$ = createEffect(() => this.actions$.pipe(ofType(reloadTable), delay(1000), map((action) => {
56
- this.tableEventService.subjectReloadView$.next(action.TABLE);
68
+ this.onUpdating$ = createEffect(() => this.actions$.pipe(ofType(afterUpdating), map((action) => {
69
+ addSelectBean({ bean: action.bean });
57
70
  })), { dispatch: false });
58
71
  }
59
72
  }
60
- /** @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.Store }], target: i0.ɵɵFactoryTarget.Injectable });
73
+ /** @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.Store }], target: i0.ɵɵFactoryTarget.Injectable });
61
74
  /** @nocollapse */ NgxEffects.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: NgxEffects });
62
75
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: NgxEffects, decorators: [{
63
76
  type: Injectable
64
- }], ctorParameters: function () { return [{ type: i1.Actions }, { type: i2.NgxUtilityServiceService }, { type: i3.NgxPrimeNgTableEventService }, { type: i4.Store }]; } });
77
+ }], ctorParameters: function () { return [{ type: i1.Actions }, { type: i2.NgxUtilityServiceService }, { type: i3.Store }]; } });
65
78
 
66
79
  /*
67
80
  * Public API Surface of ngx-store
@@ -71,5 +84,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
71
84
  * Generated bundle index. Do not edit.
72
85
  */
73
86
 
74
- export { CLEAR_STATE, NgxAbstractStoreFacade, NgxEffects, afterDeleting, clearState, getAdapterIntialState, reloadTable, selectModelId, serviceSuccess };
87
+ export { CLEAR_STATE, NgxAbstractStoreFacade, NgxEffects, afterDeleting, afterUpdating, clearState, getAdapterIntialState, reloadTable, selectModelId, serviceSuccess };
75
88
  //# 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/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 { 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 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;;ACNlD;;;AAGG;MAEU,UAAU,CAAA;AAyCnB,IAAA,WAAA,CACY,QAAiB,EACjB,cAAwC,EACxC,iBAA8C,EAC9C,QAAe,EAAA;AAHf,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,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAO;QA5C3B,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;KAOE;;0HA9CK,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,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;;;ACbX;;AAEG;;ACFH;;AAEG;;;;"}
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 afterUpdating = createAction(\n \"[Service] Service After Updating\",\n props<{\n bean: any;\n }>(),\n);\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 { tap } from \"rxjs/operators\";\nimport { Injectable } from \"@angular/core\";\nimport { Store } from \"@ngrx/store\";\nimport { addSelectBean, resetBean } from \"@geosdi/ngx-select-bean\";\nimport { NgxUtilityServiceService } from \"@geosdi/ngx-utility-service\";\nimport { afterDeleting, afterUpdating, serviceSuccess } from \"./ngx-actions\";\nimport { map } from \"rxjs\";\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 onDeleting$ = 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 onUpdating$ = createEffect(\n () =>\n this.actions$.pipe(\n ofType(afterUpdating),\n map((action: any) => {\n addSelectBean({ bean: action.bean });\n }),\n ),\n { dispatch: false },\n );\n 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 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,aAAa,GAAG,YAAY,CACrC,mCAAmC,EACnC,KAAK,EAED,EACN;AACW,MAAA,WAAW,GAAG,YAAY,CACnC,uBAAuB,EACvB,KAAK,EAAkB,EACzB;MAEW,UAAU,GAAG,YAAY,CAAC,WAAW;;ACZlD;;;AAGG;MAEU,UAAU,CAAA;AAuCnB;;;;;;;;;;;;AAYA;AAEA,IAAA,WAAA,CACY,QAAiB,EACjB,cAAwC,EACxC,QAAe,EAAA;AAFf,QAAA,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAS;AACjB,QAAA,IAAc,CAAA,cAAA,GAAd,cAAc,CAA0B;AACxC,QAAA,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAO;QAvD3B,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,IAAW,CAAA,WAAA,GAAG,YAAY,CACtB,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,IAAW,CAAA,WAAA,GAAG,YAAY,CACtB,MACI,IAAI,CAAC,QAAQ,CAAC,IAAI,CACd,MAAM,CAAC,aAAa,CAAC,EACrB,GAAG,CAAC,CAAC,MAAW,KAAI;YAChB,aAAa,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;SACxC,CAAC,CACL,EACL,EAAE,QAAQ,EAAE,KAAK,EAAE,CACtB,CAAC;KAqBE;;0HAzDK,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,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;;;ACbX;;AAEG;;ACFH;;AAEG;;;;"}
@@ -1,13 +1,13 @@
1
- import * as i4 from '@ngrx/store';
1
+ import * as i3 from '@ngrx/store';
2
2
  import { createAction, props } from '@ngrx/store';
3
3
  import * as i1 from '@ngrx/effects';
4
4
  import { createEffect, ofType } from '@ngrx/effects';
5
- import { tap, delay, map } from 'rxjs/operators';
5
+ import { tap } from 'rxjs/operators';
6
6
  import * as i0 from '@angular/core';
7
7
  import { Injectable } from '@angular/core';
8
- import * as i3 from '@geosdi/ngx-primeng-table';
9
- import { resetBean } from '@geosdi/ngx-select-bean';
8
+ import { resetBean, addSelectBean } from '@geosdi/ngx-select-bean';
10
9
  import * as i2 from '@geosdi/ngx-utility-service';
10
+ import { map } from 'rxjs';
11
11
 
12
12
  /**
13
13
  * @author Vito Salvia - CNR IMAA geoSDI Group
@@ -33,6 +33,7 @@ function getAdapterIntialState(adapter) {
33
33
  const CLEAR_STATE = "[Service] Clear State";
34
34
  const serviceSuccess = createAction("[Service] Service Success");
35
35
  const afterDeleting = createAction("[Service] Service After Deleting");
36
+ const afterUpdating = createAction("[Service] Service After Updating", props());
36
37
  const reloadTable = createAction("[Service] Reload View", props());
37
38
  const clearState = createAction(CLEAR_STATE);
38
39
 
@@ -41,27 +42,39 @@ const clearState = createAction(CLEAR_STATE);
41
42
  * @email vito.salvia@gmail.com
42
43
  */
43
44
  class NgxEffects {
44
- constructor(actions$, utilityService, tableEventService, appStore) {
45
+ /* reload$ = createEffect(
46
+ () =>
47
+ this.actions$.pipe(
48
+ ofType(reloadTable),
49
+ delay(1000),
50
+ map((action) => {
51
+ this.tableEventService.subjectReloadView$.next(
52
+ action.TABLE,
53
+ );
54
+ }),
55
+ ),
56
+ { dispatch: false },
57
+ );*/
58
+ constructor(actions$, utilityService, appStore) {
45
59
  this.actions$ = actions$;
46
60
  this.utilityService = utilityService;
47
- this.tableEventService = tableEventService;
48
61
  this.appStore = appStore;
49
62
  this.onSuccess$ = createEffect(() => this.actions$.pipe(ofType(serviceSuccess), tap((res) => {
50
63
  this.utilityService.printTranslateMessage("Service", "message.action_successful", "success");
51
64
  })), { dispatch: false });
52
- this.onAfterDeleting$ = createEffect(() => this.actions$.pipe(ofType(afterDeleting), tap((res) => {
65
+ this.onDeleting$ = createEffect(() => this.actions$.pipe(ofType(afterDeleting), tap((res) => {
53
66
  this.appStore.dispatch(resetBean());
54
67
  })), { dispatch: false });
55
- this.reload$ = createEffect(() => this.actions$.pipe(ofType(reloadTable), delay(1000), map((action) => {
56
- this.tableEventService.subjectReloadView$.next(action.TABLE);
68
+ this.onUpdating$ = createEffect(() => this.actions$.pipe(ofType(afterUpdating), map((action) => {
69
+ addSelectBean({ bean: action.bean });
57
70
  })), { dispatch: false });
58
71
  }
59
72
  }
60
- /** @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.Store }], target: i0.ɵɵFactoryTarget.Injectable });
73
+ /** @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.Store }], target: i0.ɵɵFactoryTarget.Injectable });
61
74
  /** @nocollapse */ NgxEffects.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: NgxEffects });
62
75
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: NgxEffects, decorators: [{
63
76
  type: Injectable
64
- }], ctorParameters: function () { return [{ type: i1.Actions }, { type: i2.NgxUtilityServiceService }, { type: i3.NgxPrimeNgTableEventService }, { type: i4.Store }]; } });
77
+ }], ctorParameters: function () { return [{ type: i1.Actions }, { type: i2.NgxUtilityServiceService }, { type: i3.Store }]; } });
65
78
 
66
79
  /*
67
80
  * Public API Surface of ngx-store
@@ -71,5 +84,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
71
84
  * Generated bundle index. Do not edit.
72
85
  */
73
86
 
74
- export { CLEAR_STATE, NgxAbstractStoreFacade, NgxEffects, afterDeleting, clearState, getAdapterIntialState, reloadTable, selectModelId, serviceSuccess };
87
+ export { CLEAR_STATE, NgxAbstractStoreFacade, NgxEffects, afterDeleting, afterUpdating, clearState, getAdapterIntialState, reloadTable, selectModelId, serviceSuccess };
75
88
  //# 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/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 { 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 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;;ACNlD;;;AAGG;MAEU,UAAU,CAAA;AAyCnB,IAAA,WAAA,CACY,QAAiB,EACjB,cAAwC,EACxC,iBAA8C,EAC9C,QAAe,EAAA;QAHf,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAS;QACjB,IAAc,CAAA,cAAA,GAAd,cAAc,CAA0B;QACxC,IAAiB,CAAA,iBAAA,GAAjB,iBAAiB,CAA6B;QAC9C,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAO;QA5C3B,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;KAOE;;0HA9CK,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,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;;;ACbX;;AAEG;;ACFH;;AAEG;;;;"}
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 afterUpdating = createAction(\n \"[Service] Service After Updating\",\n props<{\n bean: any;\n }>(),\n);\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 { tap } from \"rxjs/operators\";\nimport { Injectable } from \"@angular/core\";\nimport { Store } from \"@ngrx/store\";\nimport { addSelectBean, resetBean } from \"@geosdi/ngx-select-bean\";\nimport { NgxUtilityServiceService } from \"@geosdi/ngx-utility-service\";\nimport { afterDeleting, afterUpdating, serviceSuccess } from \"./ngx-actions\";\nimport { map } from \"rxjs\";\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 onDeleting$ = 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 onUpdating$ = createEffect(\n () =>\n this.actions$.pipe(\n ofType(afterUpdating),\n map((action: any) => {\n addSelectBean({ bean: action.bean });\n }),\n ),\n { dispatch: false },\n );\n 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 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,aAAa,GAAG,YAAY,CACrC,mCAAmC,EACnC,KAAK,EAED,EACN;AACW,MAAA,WAAW,GAAG,YAAY,CACnC,uBAAuB,EACvB,KAAK,EAAkB,EACzB;MAEW,UAAU,GAAG,YAAY,CAAC,WAAW;;ACZlD;;;AAGG;MAEU,UAAU,CAAA;AAuCnB;;;;;;;;;;;;AAYA;AAEA,IAAA,WAAA,CACY,QAAiB,EACjB,cAAwC,EACxC,QAAe,EAAA;QAFf,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAS;QACjB,IAAc,CAAA,cAAA,GAAd,cAAc,CAA0B;QACxC,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAO;QAvD3B,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,IAAW,CAAA,WAAA,GAAG,YAAY,CACtB,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,IAAW,CAAA,WAAA,GAAG,YAAY,CACtB,MACI,IAAI,CAAC,QAAQ,CAAC,IAAI,CACd,MAAM,CAAC,aAAa,CAAC,EACrB,GAAG,CAAC,CAAC,MAAW,KAAI;YAChB,aAAa,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;SACxC,CAAC,CACL,EACL,EAAE,QAAQ,EAAE,KAAK,EAAE,CACtB,CAAC;KAqBE;;0HAzDK,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,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;;;ACbX;;AAEG;;ACFH;;AAEG;;;;"}
@@ -5,6 +5,11 @@
5
5
  export declare const CLEAR_STATE = "[Service] Clear State";
6
6
  export declare const serviceSuccess: import("@ngrx/store").ActionCreator<"[Service] Service Success", () => import("@ngrx/store/src/models").TypedAction<"[Service] Service Success">>;
7
7
  export declare const afterDeleting: import("@ngrx/store").ActionCreator<"[Service] Service After Deleting", () => import("@ngrx/store/src/models").TypedAction<"[Service] Service After Deleting">>;
8
+ export declare const afterUpdating: import("@ngrx/store").ActionCreator<"[Service] Service After Updating", (props: {
9
+ bean: any;
10
+ }) => {
11
+ bean: any;
12
+ } & import("@ngrx/store/src/models").TypedAction<"[Service] Service After Updating">>;
8
13
  export declare const reloadTable: import("@ngrx/store").ActionCreator<"[Service] Reload View", (props: {
9
14
  TABLE: any;
10
15
  }) => {
@@ -1,6 +1,5 @@
1
1
  import { Actions } from "@ngrx/effects";
2
2
  import { Store } from "@ngrx/store";
3
- import { NgxPrimeNgTableEventService } from "@geosdi/ngx-primeng-table";
4
3
  import { NgxUtilityServiceService } from "@geosdi/ngx-utility-service";
5
4
  import * as i0 from "@angular/core";
6
5
  /**
@@ -10,12 +9,12 @@ import * as i0 from "@angular/core";
10
9
  export declare class NgxEffects {
11
10
  private actions$;
12
11
  private utilityService;
13
- private tableEventService;
14
12
  private appStore;
15
13
  onSuccess$: import("rxjs").Observable<import("@ngrx/store/src/models").TypedAction<"[Service] Service Success">> & import("@ngrx/effects").CreateEffectMetadata;
16
- onAfterDeleting$: import("rxjs").Observable<import("@ngrx/store/src/models").TypedAction<"[Service] Service After Deleting">> & import("@ngrx/effects").CreateEffectMetadata;
17
- reload$: import("rxjs").Observable<void> & import("@ngrx/effects").CreateEffectMetadata;
18
- constructor(actions$: Actions, utilityService: NgxUtilityServiceService, tableEventService: NgxPrimeNgTableEventService, appStore: Store);
14
+ onDeleting$: import("rxjs").Observable<import("@ngrx/store/src/models").TypedAction<"[Service] Service After Deleting">> & import("@ngrx/effects").CreateEffectMetadata;
15
+ onUpdating$: import("rxjs").Observable<void> & import("@ngrx/effects").CreateEffectMetadata;
16
+ n: any;
17
+ constructor(actions$: Actions, utilityService: NgxUtilityServiceService, appStore: Store);
19
18
  static ɵfac: i0.ɵɵFactoryDeclaration<NgxEffects, never>;
20
19
  static ɵprov: i0.ɵɵInjectableDeclaration<NgxEffects>;
21
20
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@geosdi/ngx-store",
3
- "version": "1.0.9",
3
+ "version": "1.1.0",
4
4
  "description": "Ngrx store facade",
5
5
  "author": "Salvia Vito (vito.salvia@gmail.com)",
6
6
  "keywords": [
@@ -11,17 +11,17 @@
11
11
  ],
12
12
  "license": "MIT",
13
13
  "peerDependencies": {
14
- "@angular/common": ">=15.0.0 | < 16.0.0",
15
- "@angular/core": ">= 15.0.0 | < 16.0.0",
16
- "typescript": ">=4.8.4",
17
- "@ngrx/store": ">=15.4.0",
18
- "@ngrx/entity": ">=15.4.0",
19
- "@ngrx/effects": ">=15.4.0",
20
- "@geosdi/ngx-model": ">=1.0.1",
21
- "@geosdi/ngx-utility-service": ">=1.0.0",
22
- "@geosdi/ngx-select-bean": ">=1.0.0",
23
- "@geosdi/ngx-primeng-table": ">=1.0.1",
24
- "@geosdi/ngx-loading": ">=1.0.0"
14
+ "@angular/common": ">=16.0.0",
15
+ "@angular/core": ">= 16.0.0",
16
+ "typescript": ">=5.0.0",
17
+ "@ngrx/entity": ">=16.0.0",
18
+ "@ngrx/effects": ">=16.0.0",
19
+ "@geosdi/ngx-model": ">=1.1.0",
20
+ "@geosdi/ngx-utility-service": ">=1.1.0",
21
+ "@geosdi/ngx-select-bean": ">=1.1.0",
22
+ "@geosdi/ngx-loading": ">=1.0.0",
23
+ "primeng": ">=16.0.0-rc.1",
24
+ "@ngrx/store": ">=16.0.0"
25
25
  },
26
26
  "sideEffects": false,
27
27
  "module": "fesm2015/geosdi-ngx-store.mjs",