@geosdi/ngx-store 1.1.0 → 1.1.1

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.
@@ -0,0 +1,56 @@
1
+ import { Actions, createEffect, ofType } from "@ngrx/effects";
2
+ import { tap } from "rxjs/operators";
3
+ import { Injectable } from "@angular/core";
4
+ import { Store } from "@ngrx/store";
5
+ import { addSelectBean, resetBean } from "@geosdi/ngx-select-bean";
6
+ import { NgxUtilityServiceService } from "@geosdi/ngx-utility-service";
7
+ import { afterDeleting, afterUpdating, serviceSuccess } from "./ngx-actions";
8
+ import { map } from "rxjs";
9
+ import * as i0 from "@angular/core";
10
+ import * as i1 from "@ngrx/effects";
11
+ import * as i2 from "@geosdi/ngx-utility-service";
12
+ import * as i3 from "@ngrx/store";
13
+ /**
14
+ * @author Vito Salvia - CNR IMAA geoSDI Group
15
+ * @email vito.salvia@gmail.com
16
+ */
17
+ class NgxEffects {
18
+ actions$;
19
+ utilityService;
20
+ appStore;
21
+ onSuccess$ = createEffect(() => this.actions$.pipe(ofType(serviceSuccess), tap((res) => {
22
+ this.utilityService.printTranslateMessage("Service", "message.action_successful", "success");
23
+ })), { dispatch: false });
24
+ onDeleting$ = createEffect(() => this.actions$.pipe(ofType(afterDeleting), tap((res) => {
25
+ this.appStore.dispatch(resetBean());
26
+ })), { dispatch: false });
27
+ onUpdating$ = createEffect(() => this.actions$.pipe(ofType(afterUpdating), map((action) => {
28
+ this.appStore.dispatch(addSelectBean({ bean: action.bean }));
29
+ })), { dispatch: false });
30
+ n;
31
+ /* reload$ = createEffect(
32
+ () =>
33
+ this.actions$.pipe(
34
+ ofType(reloadTable),
35
+ delay(1000),
36
+ map((action) => {
37
+ this.tableEventService.subjectReloadView$.next(
38
+ action.TABLE,
39
+ );
40
+ }),
41
+ ),
42
+ { dispatch: false },
43
+ );*/
44
+ constructor(actions$, utilityService, appStore) {
45
+ this.actions$ = actions$;
46
+ this.utilityService = utilityService;
47
+ this.appStore = appStore;
48
+ }
49
+ /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: NgxEffects, deps: [{ token: i1.Actions }, { token: i2.NgxUtilityServiceService }, { token: i3.Store }], target: i0.ɵɵFactoryTarget.Injectable });
50
+ /** @nocollapse */ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: NgxEffects });
51
+ }
52
+ export { NgxEffects };
53
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: NgxEffects, decorators: [{
54
+ type: Injectable
55
+ }], ctorParameters: function () { return [{ type: i1.Actions }, { type: i2.NgxUtilityServiceService }, { type: i3.Store }]; } });
56
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LWVmZmVjdHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9nZW9zZGkvbmd4LXN0b3JlL3NyYy9saWIvbmd4LWVmZmVjdHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlELE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDcEMsT0FBTyxFQUFFLGFBQWEsRUFBRSxTQUFTLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUN2RSxPQUFPLEVBQUUsYUFBYSxFQUFFLGFBQWEsRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0UsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7Ozs7QUFFM0I7OztHQUdHO0FBQ0gsTUFDYSxVQUFVO0lBd0RQO0lBQ0E7SUFDQTtJQXpEWixVQUFVLEdBQUcsWUFBWSxDQUNyQixHQUFHLEVBQUUsQ0FDRCxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FDZCxNQUFNLENBQUMsY0FBYyxDQUFDLEVBQ3RCLEdBQUcsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO1FBQ1IsSUFBSSxDQUFDLGNBQWMsQ0FBQyxxQkFBcUIsQ0FDckMsU0FBUyxFQUNULDJCQUEyQixFQUMzQixTQUFTLENBQ1osQ0FBQztJQUNOLENBQUMsQ0FBQyxDQUNMLEVBQ0wsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLENBQ3RCLENBQUM7SUFFRixXQUFXLEdBQUcsWUFBWSxDQUN0QixHQUFHLEVBQUUsQ0FDRCxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FDZCxNQUFNLENBQUMsYUFBYSxDQUFDLEVBQ3JCLEdBQUcsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO1FBQ1IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQztJQUN4QyxDQUFDLENBQUMsQ0FDTCxFQUNMLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxDQUN0QixDQUFDO0lBRUYsV0FBVyxHQUFHLFlBQVksQ0FDdEIsR0FBRyxFQUFFLENBQ0QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQ2QsTUFBTSxDQUFDLGFBQWEsQ0FBQyxFQUNyQixHQUFHLENBQUMsQ0FBQyxNQUFXLEVBQUUsRUFBRTtRQUNoQixJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FDbEIsYUFBYSxDQUFDLEVBQUUsSUFBSSxFQUFFLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUN2QyxDQUFDO0lBQ04sQ0FBQyxDQUFDLENBQ0wsRUFDTCxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsQ0FDdEIsQ0FBQztJQUNGLENBQUMsQ0FBQztJQUVGOzs7Ozs7Ozs7Ozs7SUFZQTtJQUVBLFlBQ1ksUUFBaUIsRUFDakIsY0FBd0MsRUFDeEMsUUFBZTtRQUZmLGFBQVEsR0FBUixRQUFRLENBQVM7UUFDakIsbUJBQWMsR0FBZCxjQUFjLENBQTBCO1FBQ3hDLGFBQVEsR0FBUixRQUFRLENBQU87SUFDeEIsQ0FBQzswSEEzREssVUFBVTs4SEFBVixVQUFVOztTQUFWLFVBQVU7MkZBQVYsVUFBVTtrQkFEdEIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFjdGlvbnMsIGNyZWF0ZUVmZmVjdCwgb2ZUeXBlIH0gZnJvbSBcIkBuZ3J4L2VmZmVjdHNcIjtcbmltcG9ydCB7IHRhcCB9IGZyb20gXCJyeGpzL29wZXJhdG9yc1wiO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBTdG9yZSB9IGZyb20gXCJAbmdyeC9zdG9yZVwiO1xuaW1wb3J0IHsgYWRkU2VsZWN0QmVhbiwgcmVzZXRCZWFuIH0gZnJvbSBcIkBnZW9zZGkvbmd4LXNlbGVjdC1iZWFuXCI7XG5pbXBvcnQgeyBOZ3hVdGlsaXR5U2VydmljZVNlcnZpY2UgfSBmcm9tIFwiQGdlb3NkaS9uZ3gtdXRpbGl0eS1zZXJ2aWNlXCI7XG5pbXBvcnQgeyBhZnRlckRlbGV0aW5nLCBhZnRlclVwZGF0aW5nLCBzZXJ2aWNlU3VjY2VzcyB9IGZyb20gXCIuL25neC1hY3Rpb25zXCI7XG5pbXBvcnQgeyBtYXAgfSBmcm9tIFwicnhqc1wiO1xuXG4vKipcbiAqIEBhdXRob3IgVml0byBTYWx2aWEgLSBDTlIgSU1BQSBnZW9TREkgR3JvdXBcbiAqIEBlbWFpbCB2aXRvLnNhbHZpYUBnbWFpbC5jb21cbiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIE5neEVmZmVjdHMge1xuICAgIG9uU3VjY2VzcyQgPSBjcmVhdGVFZmZlY3QoXG4gICAgICAgICgpID0+XG4gICAgICAgICAgICB0aGlzLmFjdGlvbnMkLnBpcGUoXG4gICAgICAgICAgICAgICAgb2ZUeXBlKHNlcnZpY2VTdWNjZXNzKSxcbiAgICAgICAgICAgICAgICB0YXAoKHJlcykgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnV0aWxpdHlTZXJ2aWNlLnByaW50VHJhbnNsYXRlTWVzc2FnZShcbiAgICAgICAgICAgICAgICAgICAgICAgIFwiU2VydmljZVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgXCJtZXNzYWdlLmFjdGlvbl9zdWNjZXNzZnVsXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICBcInN1Y2Nlc3NcIixcbiAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICksXG4gICAgICAgIHsgZGlzcGF0Y2g6IGZhbHNlIH0sXG4gICAgKTtcblxuICAgIG9uRGVsZXRpbmckID0gY3JlYXRlRWZmZWN0KFxuICAgICAgICAoKSA9PlxuICAgICAgICAgICAgdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgICAgICAgICAgIG9mVHlwZShhZnRlckRlbGV0aW5nKSxcbiAgICAgICAgICAgICAgICB0YXAoKHJlcykgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmFwcFN0b3JlLmRpc3BhdGNoKHJlc2V0QmVhbigpKTtcbiAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICksXG4gICAgICAgIHsgZGlzcGF0Y2g6IGZhbHNlIH0sXG4gICAgKTtcblxuICAgIG9uVXBkYXRpbmckID0gY3JlYXRlRWZmZWN0KFxuICAgICAgICAoKSA9PlxuICAgICAgICAgICAgdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgICAgICAgICAgIG9mVHlwZShhZnRlclVwZGF0aW5nKSxcbiAgICAgICAgICAgICAgICBtYXAoKGFjdGlvbjogYW55KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuYXBwU3RvcmUuZGlzcGF0Y2goXG4gICAgICAgICAgICAgICAgICAgICAgICBhZGRTZWxlY3RCZWFuKHsgYmVhbjogYWN0aW9uLmJlYW4gfSksXG4gICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICApLFxuICAgICAgICB7IGRpc3BhdGNoOiBmYWxzZSB9LFxuICAgICk7XG4gICAgbjtcblxuICAgIC8qICAgIHJlbG9hZCQgPSBjcmVhdGVFZmZlY3QoXG4oKSA9PlxuICB0aGlzLmFjdGlvbnMkLnBpcGUoXG4gICAgICBvZlR5cGUocmVsb2FkVGFibGUpLFxuICAgICAgZGVsYXkoMTAwMCksXG4gICAgICBtYXAoKGFjdGlvbikgPT4ge1xuICAgICAgICAgIHRoaXMudGFibGVFdmVudFNlcnZpY2Uuc3ViamVjdFJlbG9hZFZpZXckLm5leHQoXG4gICAgICAgICAgICAgIGFjdGlvbi5UQUJMRSxcbiAgICAgICAgICApO1xuICAgICAgfSksXG4gICksXG57IGRpc3BhdGNoOiBmYWxzZSB9LFxuKTsqL1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgYWN0aW9ucyQ6IEFjdGlvbnMsXG4gICAgICAgIHByaXZhdGUgdXRpbGl0eVNlcnZpY2U6IE5neFV0aWxpdHlTZXJ2aWNlU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBhcHBTdG9yZTogU3RvcmUsXG4gICAgKSB7fVxufVxuIl19
@@ -42,37 +42,41 @@ const clearState = createAction(CLEAR_STATE);
42
42
  * @email vito.salvia@gmail.com
43
43
  */
44
44
  class NgxEffects {
45
+ actions$;
46
+ utilityService;
47
+ appStore;
48
+ onSuccess$ = createEffect(() => this.actions$.pipe(ofType(serviceSuccess), tap((res) => {
49
+ this.utilityService.printTranslateMessage("Service", "message.action_successful", "success");
50
+ })), { dispatch: false });
51
+ onDeleting$ = createEffect(() => this.actions$.pipe(ofType(afterDeleting), tap((res) => {
52
+ this.appStore.dispatch(resetBean());
53
+ })), { dispatch: false });
54
+ onUpdating$ = createEffect(() => this.actions$.pipe(ofType(afterUpdating), map((action) => {
55
+ this.appStore.dispatch(addSelectBean({ bean: action.bean }));
56
+ })), { dispatch: false });
57
+ n;
45
58
  /* reload$ = createEffect(
46
59
  () =>
47
- this.actions$.pipe(
48
- ofType(reloadTable),
49
- delay(1000),
50
- map((action) => {
51
- this.tableEventService.subjectReloadView$.next(
52
- action.TABLE,
53
- );
54
- }),
55
- ),
60
+ this.actions$.pipe(
61
+ ofType(reloadTable),
62
+ delay(1000),
63
+ map((action) => {
64
+ this.tableEventService.subjectReloadView$.next(
65
+ action.TABLE,
66
+ );
67
+ }),
68
+ ),
56
69
  { dispatch: false },
57
70
  );*/
58
71
  constructor(actions$, utilityService, appStore) {
59
72
  this.actions$ = actions$;
60
73
  this.utilityService = utilityService;
61
74
  this.appStore = appStore;
62
- this.onSuccess$ = createEffect(() => this.actions$.pipe(ofType(serviceSuccess), tap((res) => {
63
- this.utilityService.printTranslateMessage("Service", "message.action_successful", "success");
64
- })), { dispatch: false });
65
- this.onDeleting$ = createEffect(() => this.actions$.pipe(ofType(afterDeleting), tap((res) => {
66
- this.appStore.dispatch(resetBean());
67
- })), { dispatch: false });
68
- this.onUpdating$ = createEffect(() => this.actions$.pipe(ofType(afterUpdating), map((action) => {
69
- addSelectBean({ bean: action.bean });
70
- })), { dispatch: false });
71
75
  }
76
+ /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: NgxEffects, deps: [{ token: i1.Actions }, { token: i2.NgxUtilityServiceService }, { token: i3.Store }], target: i0.ɵɵFactoryTarget.Injectable });
77
+ /** @nocollapse */ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: NgxEffects });
72
78
  }
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 });
74
- /** @nocollapse */ NgxEffects.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: NgxEffects });
75
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: NgxEffects, decorators: [{
79
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: NgxEffects, decorators: [{
76
80
  type: Injectable
77
81
  }], ctorParameters: function () { return [{ type: i1.Actions }, { type: i2.NgxUtilityServiceService }, { type: i3.Store }]; } });
78
82
 
@@ -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 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
+ {"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 this.appStore.dispatch(\n addSelectBean({ bean: action.bean }),\n );\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;AACH,MACa,UAAU,CAAA;AAwDP,IAAA,QAAA,CAAA;AACA,IAAA,cAAA,CAAA;AACA,IAAA,QAAA,CAAA;IAzDZ,UAAU,GAAG,YAAY,CACrB,MACI,IAAI,CAAC,QAAQ,CAAC,IAAI,CACd,MAAM,CAAC,cAAc,CAAC,EACtB,GAAG,CAAC,CAAC,GAAG,KAAI;QACR,IAAI,CAAC,cAAc,CAAC,qBAAqB,CACrC,SAAS,EACT,2BAA2B,EAC3B,SAAS,CACZ,CAAC;KACL,CAAC,CACL,EACL,EAAE,QAAQ,EAAE,KAAK,EAAE,CACtB,CAAC;IAEF,WAAW,GAAG,YAAY,CACtB,MACI,IAAI,CAAC,QAAQ,CAAC,IAAI,CACd,MAAM,CAAC,aAAa,CAAC,EACrB,GAAG,CAAC,CAAC,GAAG,KAAI;QACR,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC;KACvC,CAAC,CACL,EACL,EAAE,QAAQ,EAAE,KAAK,EAAE,CACtB,CAAC;IAEF,WAAW,GAAG,YAAY,CACtB,MACI,IAAI,CAAC,QAAQ,CAAC,IAAI,CACd,MAAM,CAAC,aAAa,CAAC,EACrB,GAAG,CAAC,CAAC,MAAW,KAAI;AAChB,QAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAClB,aAAa,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,CACvC,CAAC;KACL,CAAC,CACL,EACL,EAAE,QAAQ,EAAE,KAAK,EAAE,CACtB,CAAC;AACF,IAAA,CAAC,CAAC;AAEF;;;;;;;;;;;;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;KACvB;0HA3DK,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;;;;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@geosdi/ngx-store",
3
- "version": "1.1.0",
3
+ "version": "1.1.1",
4
4
  "description": "Ngrx store facade",
5
5
  "author": "Salvia Vito (vito.salvia@gmail.com)",
6
6
  "keywords": [
@@ -24,11 +24,7 @@
24
24
  "@ngrx/store": ">=16.0.0"
25
25
  },
26
26
  "sideEffects": false,
27
- "module": "fesm2015/geosdi-ngx-store.mjs",
28
- "es2020": "fesm2020/geosdi-ngx-store.mjs",
29
- "esm2020": "esm2020/geosdi-ngx-store.mjs",
30
- "fesm2020": "fesm2020/geosdi-ngx-store.mjs",
31
- "fesm2015": "fesm2015/geosdi-ngx-store.mjs",
27
+ "module": "fesm2022/geosdi-ngx-store.mjs",
32
28
  "typings": "index.d.ts",
33
29
  "exports": {
34
30
  "./package.json": {
@@ -36,11 +32,9 @@
36
32
  },
37
33
  ".": {
38
34
  "types": "./index.d.ts",
39
- "esm2020": "./esm2020/geosdi-ngx-store.mjs",
40
- "es2020": "./fesm2020/geosdi-ngx-store.mjs",
41
- "es2015": "./fesm2015/geosdi-ngx-store.mjs",
42
- "node": "./fesm2015/geosdi-ngx-store.mjs",
43
- "default": "./fesm2020/geosdi-ngx-store.mjs"
35
+ "esm2022": "./esm2022/geosdi-ngx-store.mjs",
36
+ "esm": "./esm2022/geosdi-ngx-store.mjs",
37
+ "default": "./fesm2022/geosdi-ngx-store.mjs"
44
38
  }
45
39
  },
46
40
  "dependencies": {
@@ -1,51 +0,0 @@
1
- import { Actions, createEffect, ofType } from "@ngrx/effects";
2
- import { tap } from "rxjs/operators";
3
- import { Injectable } from "@angular/core";
4
- import { Store } from "@ngrx/store";
5
- import { addSelectBean, resetBean } from "@geosdi/ngx-select-bean";
6
- import { NgxUtilityServiceService } from "@geosdi/ngx-utility-service";
7
- import { afterDeleting, afterUpdating, serviceSuccess } from "./ngx-actions";
8
- import { map } from "rxjs";
9
- import * as i0 from "@angular/core";
10
- import * as i1 from "@ngrx/effects";
11
- import * as i2 from "@geosdi/ngx-utility-service";
12
- import * as i3 from "@ngrx/store";
13
- /**
14
- * @author Vito Salvia - CNR IMAA geoSDI Group
15
- * @email vito.salvia@gmail.com
16
- */
17
- export class NgxEffects {
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) {
32
- this.actions$ = actions$;
33
- this.utilityService = utilityService;
34
- this.appStore = appStore;
35
- this.onSuccess$ = createEffect(() => this.actions$.pipe(ofType(serviceSuccess), tap((res) => {
36
- this.utilityService.printTranslateMessage("Service", "message.action_successful", "success");
37
- })), { dispatch: false });
38
- this.onDeleting$ = createEffect(() => this.actions$.pipe(ofType(afterDeleting), tap((res) => {
39
- this.appStore.dispatch(resetBean());
40
- })), { dispatch: false });
41
- this.onUpdating$ = createEffect(() => this.actions$.pipe(ofType(afterUpdating), map((action) => {
42
- addSelectBean({ bean: action.bean });
43
- })), { dispatch: false });
44
- }
45
- }
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 });
47
- /** @nocollapse */ NgxEffects.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: NgxEffects });
48
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: NgxEffects, decorators: [{
49
- type: Injectable
50
- }], ctorParameters: function () { return [{ type: i1.Actions }, { type: i2.NgxUtilityServiceService }, { type: i3.Store }]; } });
51
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LWVmZmVjdHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9nZW9zZGkvbmd4LXN0b3JlL3NyYy9saWIvbmd4LWVmZmVjdHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlELE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDcEMsT0FBTyxFQUFFLGFBQWEsRUFBRSxTQUFTLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUN2RSxPQUFPLEVBQUUsYUFBYSxFQUFFLGFBQWEsRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0UsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7Ozs7QUFFM0I7OztHQUdHO0FBRUgsTUFBTSxPQUFPLFVBQVU7SUF1Q25COzs7Ozs7Ozs7Ozs7SUFZQTtJQUVBLFlBQ1ksUUFBaUIsRUFDakIsY0FBd0MsRUFDeEMsUUFBZTtRQUZmLGFBQVEsR0FBUixRQUFRLENBQVM7UUFDakIsbUJBQWMsR0FBZCxjQUFjLENBQTBCO1FBQ3hDLGFBQVEsR0FBUixRQUFRLENBQU87UUF2RDNCLGVBQVUsR0FBRyxZQUFZLENBQ3JCLEdBQUcsRUFBRSxDQUNELElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUNkLE1BQU0sQ0FBQyxjQUFjLENBQUMsRUFDdEIsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUU7WUFDUixJQUFJLENBQUMsY0FBYyxDQUFDLHFCQUFxQixDQUNyQyxTQUFTLEVBQ1QsMkJBQTJCLEVBQzNCLFNBQVMsQ0FDWixDQUFDO1FBQ04sQ0FBQyxDQUFDLENBQ0wsRUFDTCxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsQ0FDdEIsQ0FBQztRQUVGLGdCQUFXLEdBQUcsWUFBWSxDQUN0QixHQUFHLEVBQUUsQ0FDRCxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FDZCxNQUFNLENBQUMsYUFBYSxDQUFDLEVBQ3JCLEdBQUcsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO1lBQ1IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQztRQUN4QyxDQUFDLENBQUMsQ0FDTCxFQUNMLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxDQUN0QixDQUFDO1FBRUYsZ0JBQVcsR0FBRyxZQUFZLENBQ3RCLEdBQUcsRUFBRSxDQUNELElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUNkLE1BQU0sQ0FBQyxhQUFhLENBQUMsRUFDckIsR0FBRyxDQUFDLENBQUMsTUFBVyxFQUFFLEVBQUU7WUFDaEIsYUFBYSxDQUFDLEVBQUUsSUFBSSxFQUFFLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQ3pDLENBQUMsQ0FBQyxDQUNMLEVBQ0wsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLENBQ3RCLENBQUM7SUFxQkMsQ0FBQzs7MEhBekRLLFVBQVU7OEhBQVYsVUFBVTsyRkFBVixVQUFVO2tCQUR0QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWN0aW9ucywgY3JlYXRlRWZmZWN0LCBvZlR5cGUgfSBmcm9tIFwiQG5ncngvZWZmZWN0c1wiO1xuaW1wb3J0IHsgdGFwIH0gZnJvbSBcInJ4anMvb3BlcmF0b3JzXCI7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IFN0b3JlIH0gZnJvbSBcIkBuZ3J4L3N0b3JlXCI7XG5pbXBvcnQgeyBhZGRTZWxlY3RCZWFuLCByZXNldEJlYW4gfSBmcm9tIFwiQGdlb3NkaS9uZ3gtc2VsZWN0LWJlYW5cIjtcbmltcG9ydCB7IE5neFV0aWxpdHlTZXJ2aWNlU2VydmljZSB9IGZyb20gXCJAZ2Vvc2RpL25neC11dGlsaXR5LXNlcnZpY2VcIjtcbmltcG9ydCB7IGFmdGVyRGVsZXRpbmcsIGFmdGVyVXBkYXRpbmcsIHNlcnZpY2VTdWNjZXNzIH0gZnJvbSBcIi4vbmd4LWFjdGlvbnNcIjtcbmltcG9ydCB7IG1hcCB9IGZyb20gXCJyeGpzXCI7XG5cbi8qKlxuICogQGF1dGhvciBWaXRvIFNhbHZpYSAtIENOUiBJTUFBIGdlb1NESSBHcm91cFxuICogQGVtYWlsIHZpdG8uc2FsdmlhQGdtYWlsLmNvbVxuICovXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgTmd4RWZmZWN0cyB7XG4gICAgb25TdWNjZXNzJCA9IGNyZWF0ZUVmZmVjdChcbiAgICAgICAgKCkgPT5cbiAgICAgICAgICAgIHRoaXMuYWN0aW9ucyQucGlwZShcbiAgICAgICAgICAgICAgICBvZlR5cGUoc2VydmljZVN1Y2Nlc3MpLFxuICAgICAgICAgICAgICAgIHRhcCgocmVzKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMudXRpbGl0eVNlcnZpY2UucHJpbnRUcmFuc2xhdGVNZXNzYWdlKFxuICAgICAgICAgICAgICAgICAgICAgICAgXCJTZXJ2aWNlXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICBcIm1lc3NhZ2UuYWN0aW9uX3N1Y2Nlc3NmdWxcIixcbiAgICAgICAgICAgICAgICAgICAgICAgIFwic3VjY2Vzc1wiLFxuICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgeyBkaXNwYXRjaDogZmFsc2UgfSxcbiAgICApO1xuXG4gICAgb25EZWxldGluZyQgPSBjcmVhdGVFZmZlY3QoXG4gICAgICAgICgpID0+XG4gICAgICAgICAgICB0aGlzLmFjdGlvbnMkLnBpcGUoXG4gICAgICAgICAgICAgICAgb2ZUeXBlKGFmdGVyRGVsZXRpbmcpLFxuICAgICAgICAgICAgICAgIHRhcCgocmVzKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuYXBwU3RvcmUuZGlzcGF0Y2gocmVzZXRCZWFuKCkpO1xuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgeyBkaXNwYXRjaDogZmFsc2UgfSxcbiAgICApO1xuXG4gICAgb25VcGRhdGluZyQgPSBjcmVhdGVFZmZlY3QoXG4gICAgICAgICgpID0+XG4gICAgICAgICAgICB0aGlzLmFjdGlvbnMkLnBpcGUoXG4gICAgICAgICAgICAgICAgb2ZUeXBlKGFmdGVyVXBkYXRpbmcpLFxuICAgICAgICAgICAgICAgIG1hcCgoYWN0aW9uOiBhbnkpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgYWRkU2VsZWN0QmVhbih7IGJlYW46IGFjdGlvbi5iZWFuIH0pO1xuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgeyBkaXNwYXRjaDogZmFsc2UgfSxcbiAgICApO1xuICAgIG47XG5cbiAgICAvKiAgICByZWxvYWQkID0gY3JlYXRlRWZmZWN0KFxuKCkgPT5cbiAgICB0aGlzLmFjdGlvbnMkLnBpcGUoXG4gICAgICAgIG9mVHlwZShyZWxvYWRUYWJsZSksXG4gICAgICAgIGRlbGF5KDEwMDApLFxuICAgICAgICBtYXAoKGFjdGlvbikgPT4ge1xuICAgICAgICAgICAgdGhpcy50YWJsZUV2ZW50U2VydmljZS5zdWJqZWN0UmVsb2FkVmlldyQubmV4dChcbiAgICAgICAgICAgICAgICBhY3Rpb24uVEFCTEUsXG4gICAgICAgICAgICApO1xuICAgICAgICB9KSxcbiAgICApLFxueyBkaXNwYXRjaDogZmFsc2UgfSxcbik7Ki9cblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIGFjdGlvbnMkOiBBY3Rpb25zLFxuICAgICAgICBwcml2YXRlIHV0aWxpdHlTZXJ2aWNlOiBOZ3hVdGlsaXR5U2VydmljZVNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgYXBwU3RvcmU6IFN0b3JlLFxuICAgICkge31cbn1cbiJdfQ==
@@ -1,88 +0,0 @@
1
- import * as i3 from '@ngrx/store';
2
- import { createAction, props } from '@ngrx/store';
3
- import * as i1 from '@ngrx/effects';
4
- import { createEffect, ofType } from '@ngrx/effects';
5
- import { tap } from 'rxjs/operators';
6
- import * as i0 from '@angular/core';
7
- import { Injectable } from '@angular/core';
8
- import { resetBean, addSelectBean } from '@geosdi/ngx-select-bean';
9
- import { map } from 'rxjs';
10
- import * as i2 from '@geosdi/ngx-utility-service';
11
-
12
- /**
13
- * @author Vito Salvia - CNR IMAA geoSDI Group
14
- * @email vito.salvia@gmail.com
15
- */
16
- class NgxAbstractStoreFacade {
17
- }
18
-
19
- function selectModelId(model) {
20
- return model.id;
21
- }
22
- function getAdapterIntialState(adapter) {
23
- return adapter.getInitialState({
24
- paginatedBeanLoaded: false,
25
- total: 0,
26
- });
27
- }
28
-
29
- /**
30
- * @author Vito Salvia - CNR IMAA geoSDI Group
31
- * @email vito.salvia@gmail.com
32
- */
33
- const CLEAR_STATE = "[Service] Clear State";
34
- const serviceSuccess = createAction("[Service] Service Success");
35
- const afterDeleting = createAction("[Service] Service After Deleting");
36
- const afterUpdating = createAction("[Service] Service After Updating", props());
37
- const reloadTable = createAction("[Service] Reload View", props());
38
- const clearState = createAction(CLEAR_STATE);
39
-
40
- /**
41
- * @author Vito Salvia - CNR IMAA geoSDI Group
42
- * @email vito.salvia@gmail.com
43
- */
44
- class NgxEffects {
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) {
59
- this.actions$ = actions$;
60
- this.utilityService = utilityService;
61
- this.appStore = appStore;
62
- this.onSuccess$ = createEffect(() => this.actions$.pipe(ofType(serviceSuccess), tap((res) => {
63
- this.utilityService.printTranslateMessage("Service", "message.action_successful", "success");
64
- })), { dispatch: false });
65
- this.onDeleting$ = createEffect(() => this.actions$.pipe(ofType(afterDeleting), tap((res) => {
66
- this.appStore.dispatch(resetBean());
67
- })), { dispatch: false });
68
- this.onUpdating$ = createEffect(() => this.actions$.pipe(ofType(afterUpdating), map((action) => {
69
- addSelectBean({ bean: action.bean });
70
- })), { dispatch: false });
71
- }
72
- }
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 });
74
- /** @nocollapse */ NgxEffects.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: NgxEffects });
75
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: NgxEffects, decorators: [{
76
- type: Injectable
77
- }], ctorParameters: function () { return [{ type: i1.Actions }, { type: i2.NgxUtilityServiceService }, { type: i3.Store }]; } });
78
-
79
- /*
80
- * Public API Surface of ngx-store
81
- */
82
-
83
- /**
84
- * Generated bundle index. Do not edit.
85
- */
86
-
87
- export { CLEAR_STATE, NgxAbstractStoreFacade, NgxEffects, afterDeleting, afterUpdating, clearState, getAdapterIntialState, reloadTable, selectModelId, serviceSuccess };
88
- //# sourceMappingURL=geosdi-ngx-store.mjs.map
@@ -1 +0,0 @@
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;;;;"}
File without changes
File without changes
File without changes
File without changes
File without changes