@ngxs-labs/action-lifecycle-hooks 0.1.5 → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2020/index.mjs +3 -0
- package/esm2020/lib/action-decorator-helpers.mjs +37 -0
- package/esm2020/lib/ngxs-action-lifecycle-hooks.module.mjs +23 -0
- package/esm2020/lib/ngxs-action-lifecycle-hooks.state.mjs +47 -0
- package/esm2020/lib/utils.mjs +15 -0
- package/esm2020/ngxs-labs-action-lifecycle-hooks.mjs +5 -0
- package/fesm2015/ngxs-labs-action-lifecycle-hooks.mjs +118 -0
- package/fesm2015/ngxs-labs-action-lifecycle-hooks.mjs.map +1 -0
- package/{fesm2015/ngxs-labs-action-lifecycle-hooks.js → fesm2020/ngxs-labs-action-lifecycle-hooks.mjs} +33 -26
- package/fesm2020/ngxs-labs-action-lifecycle-hooks.mjs.map +1 -0
- package/index.d.ts +1 -1
- package/lib/ngxs-action-lifecycle-hooks.module.d.ts +6 -0
- package/lib/ngxs-action-lifecycle-hooks.state.d.ts +3 -0
- package/package.json +24 -12
- package/bundles/ngxs-labs-action-lifecycle-hooks.umd.js +0 -425
- package/bundles/ngxs-labs-action-lifecycle-hooks.umd.js.map +0 -1
- package/bundles/ngxs-labs-action-lifecycle-hooks.umd.min.js +0 -16
- package/bundles/ngxs-labs-action-lifecycle-hooks.umd.min.js.map +0 -1
- package/esm2015/index.js +0 -3
- package/esm2015/index.js.map +0 -1
- package/esm2015/index.metadata.json +0 -1
- package/esm2015/lib/action-decorator-helpers.js +0 -37
- package/esm2015/lib/action-decorator-helpers.js.map +0 -1
- package/esm2015/lib/action-decorator-helpers.metadata.json +0 -1
- package/esm2015/lib/ngxs-action-lifecycle-hooks.module.js +0 -16
- package/esm2015/lib/ngxs-action-lifecycle-hooks.module.js.map +0 -1
- package/esm2015/lib/ngxs-action-lifecycle-hooks.module.metadata.json +0 -1
- package/esm2015/lib/ngxs-action-lifecycle-hooks.state.js +0 -46
- package/esm2015/lib/ngxs-action-lifecycle-hooks.state.js.map +0 -1
- package/esm2015/lib/ngxs-action-lifecycle-hooks.state.metadata.json +0 -1
- package/esm2015/lib/utils.js +0 -14
- package/esm2015/lib/utils.js.map +0 -1
- package/esm2015/lib/utils.metadata.json +0 -1
- package/esm2015/ngxs-labs-action-lifecycle-hooks.js +0 -6
- package/esm2015/ngxs-labs-action-lifecycle-hooks.js.map +0 -1
- package/esm2015/ngxs-labs-action-lifecycle-hooks.metadata.json +0 -1
- package/fesm2015/ngxs-labs-action-lifecycle-hooks.js.map +0 -1
- package/ngxs-labs-action-lifecycle-hooks.d.ts +0 -5
- package/ngxs-labs-action-lifecycle-hooks.metadata.json +0 -1
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { NgModule } from "@angular/core";
|
|
2
|
-
import { CommonModule } from "@angular/common";
|
|
3
|
-
import { NgxsModule } from "@ngxs/store";
|
|
4
|
-
import { NgxsActionLifecycleHooksState } from "./ngxs-action-lifecycle-hooks.state";
|
|
5
|
-
export class NgxsActionLifecycleHooksModule {
|
|
6
|
-
}
|
|
7
|
-
NgxsActionLifecycleHooksModule.decorators = [
|
|
8
|
-
{ type: NgModule, args: [{
|
|
9
|
-
imports: [
|
|
10
|
-
CommonModule,
|
|
11
|
-
NgxsModule.forFeature([NgxsActionLifecycleHooksState])
|
|
12
|
-
],
|
|
13
|
-
declarations: []
|
|
14
|
-
},] }
|
|
15
|
-
];
|
|
16
|
-
//# sourceMappingURL=ngxs-action-lifecycle-hooks.module.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ngxs-action-lifecycle-hooks.module.js","sourceRoot":"","sources":["../../../../../packages/action-lifecycle-hooks/src/lib/ngxs-action-lifecycle-hooks.module.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,6BAA6B,EAAE,MAAM,qCAAqC,CAAC;AASpF,MAAM,OAAO,8BAA8B;;;YAP1C,QAAQ,SAAC;gBACR,OAAO,EAAE;oBACP,YAAY;oBACZ,UAAU,CAAC,UAAU,CAAC,CAAC,6BAA6B,CAAC,CAAC;iBACvD;gBACD,YAAY,EAAE,EAAE;aACjB","sourcesContent":["import { NgModule } from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\nimport { NgxsModule } from \"@ngxs/store\";\nimport { NgxsActionLifecycleHooksState } from \"./ngxs-action-lifecycle-hooks.state\";\n\n@NgModule({\n imports: [\n CommonModule,\n NgxsModule.forFeature([NgxsActionLifecycleHooksState])\n ],\n declarations: []\n})\nexport class NgxsActionLifecycleHooksModule {}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
[{"__symbolic":"module","version":4,"metadata":{"NgxsActionLifecycleHooksModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":5,"character":1},"arguments":[{"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":7,"character":4},{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"NgxsModule","line":8,"character":4},"member":"forFeature"},"arguments":[[{"__symbolic":"reference","module":"./ngxs-action-lifecycle-hooks.state","name":"NgxsActionLifecycleHooksState","line":8,"character":27}]]}],"declarations":[]}]}]}}}]
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
import { __decorate, __metadata } from "tslib";
|
|
2
|
-
import { Injectable } from '@angular/core';
|
|
3
|
-
import { State, Actions, Store, ofActionCompleted, getActionTypeFromInstance } from '@ngxs/store';
|
|
4
|
-
import { asapScheduler } from 'rxjs';
|
|
5
|
-
import { observeOn } from 'rxjs/operators';
|
|
6
|
-
import { ActionCancelled, ActionErrored, ActionSuccessful } from './action-decorator-helpers';
|
|
7
|
-
import { actionLifecycleHooks } from './utils';
|
|
8
|
-
let NgxsActionLifecycleHooksState = class NgxsActionLifecycleHooksState {
|
|
9
|
-
constructor(actions, store) {
|
|
10
|
-
this.actions = actions;
|
|
11
|
-
this.store = store;
|
|
12
|
-
const arr = Object.keys(actionLifecycleHooks).map((key) => ({ type: key }));
|
|
13
|
-
this.actions.pipe(ofActionCompleted(...arr), observeOn(asapScheduler)).subscribe((actionCompletion) => {
|
|
14
|
-
if (actionCompletion.result.successful &&
|
|
15
|
-
actionLifecycleHooks[getActionTypeFromInstance(actionCompletion.action)].includes('Successful')) {
|
|
16
|
-
const ActionSuccessfulClass = ActionSuccessful(actionCompletion.action);
|
|
17
|
-
this.store.dispatch(new ActionSuccessfulClass(actionCompletion.action));
|
|
18
|
-
}
|
|
19
|
-
if (actionCompletion.result.error &&
|
|
20
|
-
actionLifecycleHooks[getActionTypeFromInstance(actionCompletion.action)].includes('Errored')) {
|
|
21
|
-
const ActionErroredClass = ActionErrored(actionCompletion.action);
|
|
22
|
-
this.store.dispatch(new ActionErroredClass(actionCompletion.action, actionCompletion.result.error));
|
|
23
|
-
}
|
|
24
|
-
if (actionCompletion.result.canceled &&
|
|
25
|
-
actionLifecycleHooks[getActionTypeFromInstance(actionCompletion.action)].includes('Canceled')) {
|
|
26
|
-
const ActionCancelledClass = ActionCancelled(actionCompletion.action);
|
|
27
|
-
this.store.dispatch(new ActionCancelledClass(actionCompletion.action));
|
|
28
|
-
}
|
|
29
|
-
});
|
|
30
|
-
}
|
|
31
|
-
};
|
|
32
|
-
NgxsActionLifecycleHooksState.decorators = [
|
|
33
|
-
{ type: Injectable }
|
|
34
|
-
];
|
|
35
|
-
NgxsActionLifecycleHooksState.ctorParameters = () => [
|
|
36
|
-
{ type: Actions },
|
|
37
|
-
{ type: Store }
|
|
38
|
-
];
|
|
39
|
-
NgxsActionLifecycleHooksState = __decorate([
|
|
40
|
-
State({
|
|
41
|
-
name: 'NgxsActionLifecycleHooksState',
|
|
42
|
-
}),
|
|
43
|
-
__metadata("design:paramtypes", [Actions, Store])
|
|
44
|
-
], NgxsActionLifecycleHooksState);
|
|
45
|
-
export { NgxsActionLifecycleHooksState };
|
|
46
|
-
//# sourceMappingURL=ngxs-action-lifecycle-hooks.state.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ngxs-action-lifecycle-hooks.state.js","sourceRoot":"","sources":["../../../../../packages/action-lifecycle-hooks/src/lib/ngxs-action-lifecycle-hooks.state.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,iBAAiB,EAAE,yBAAyB,EAAE,MAAM,aAAa,CAAC;AAClG,OAAO,EAAE,aAAa,EAAE,MAAM,MAAM,CAAC;AACrC,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC9F,OAAO,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;IAMlC,6BAA6B,SAA7B,6BAA6B;IACxC,YAAoB,OAAgB,EAAU,KAAY;QAAtC,YAAO,GAAP,OAAO,CAAS;QAAU,UAAK,GAAL,KAAK,CAAO;QACxD,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;QAC5E,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,iBAAiB,CAAC,GAAG,GAAG,CAAC,EAAE,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,gBAAgB,EAAE,EAAE;YACpG,IACE,gBAAgB,CAAC,MAAM,CAAC,UAAU;gBAClC,oBAAoB,CAAC,yBAAyB,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,EAC/F;gBACA,MAAM,qBAAqB,GAAG,gBAAgB,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;gBACxE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,qBAAqB,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC;aACzE;YACD,IACE,gBAAgB,CAAC,MAAM,CAAC,KAAK;gBAC7B,oBAAoB,CAAC,yBAAyB,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,EAC5F;gBACA,MAAM,kBAAkB,GAAG,aAAa,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;gBAClE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,kBAAkB,CAAC,gBAAgB,CAAC,MAAM,EAAE,gBAAgB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;aACrG;YACD,IACE,gBAAgB,CAAC,MAAM,CAAC,QAAQ;gBAChC,oBAAoB,CAAC,yBAAyB,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,EAC7F;gBACA,MAAM,oBAAoB,GAAG,eAAe,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;gBACtE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,oBAAoB,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC;aACxE;QACH,CAAC,CAAC,CAAC;IACL,CAAC;CACF,CAAA;;YA5BA,UAAU;;;YATK,OAAO;YAAE,KAAK;;AAUjB,6BAA6B;IAJzC,KAAK,CAAM;QACV,IAAI,EAAE,+BAA+B;KACtC,CAAC;qCAG6B,OAAO,EAAiB,KAAK;GAD/C,6BAA6B,CA2BzC;SA3BY,6BAA6B","sourcesContent":["import { Injectable } from '@angular/core';\nimport { State, Actions, Store, ofActionCompleted, getActionTypeFromInstance } from '@ngxs/store';\nimport { asapScheduler } from 'rxjs';\nimport { observeOn } from 'rxjs/operators';\nimport { ActionCancelled, ActionErrored, ActionSuccessful } from './action-decorator-helpers';\nimport { actionLifecycleHooks } from './utils';\n\n@State<any>({\n name: 'NgxsActionLifecycleHooksState',\n})\n@Injectable()\nexport class NgxsActionLifecycleHooksState {\n constructor(private actions: Actions, private store: Store) {\n const arr = Object.keys(actionLifecycleHooks).map((key) => ({ type: key }));\n this.actions.pipe(ofActionCompleted(...arr), observeOn(asapScheduler)).subscribe((actionCompletion) => {\n if (\n actionCompletion.result.successful &&\n actionLifecycleHooks[getActionTypeFromInstance(actionCompletion.action)].includes('Successful')\n ) {\n const ActionSuccessfulClass = ActionSuccessful(actionCompletion.action);\n this.store.dispatch(new ActionSuccessfulClass(actionCompletion.action));\n }\n if (\n actionCompletion.result.error &&\n actionLifecycleHooks[getActionTypeFromInstance(actionCompletion.action)].includes('Errored')\n ) {\n const ActionErroredClass = ActionErrored(actionCompletion.action);\n this.store.dispatch(new ActionErroredClass(actionCompletion.action, actionCompletion.result.error));\n }\n if (\n actionCompletion.result.canceled &&\n actionLifecycleHooks[getActionTypeFromInstance(actionCompletion.action)].includes('Canceled')\n ) {\n const ActionCancelledClass = ActionCancelled(actionCompletion.action);\n this.store.dispatch(new ActionCancelledClass(actionCompletion.action));\n }\n });\n }\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
[{"__symbolic":"module","version":4,"metadata":{"NgxsActionLifecycleHooksState":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"State","line":7,"character":1},"arguments":[{"name":"NgxsActionLifecycleHooksState"}]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":10,"character":1}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@ngxs/store","name":"Actions","line":12,"character":31},{"__symbolic":"reference","module":"@ngxs/store","name":"Store","line":12,"character":55}]}]}}}}]
|
package/esm2015/lib/utils.js
DELETED
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { getActionTypeFromInstance } from '@ngxs/store';
|
|
2
|
-
export const actionLifecycleHooks = {};
|
|
3
|
-
export function addToLifecycleHooks(actionType, hook) {
|
|
4
|
-
if (!actionLifecycleHooks[getActionTypeFromInstance(actionType)]) {
|
|
5
|
-
actionLifecycleHooks[getActionTypeFromInstance(actionType)] = [hook];
|
|
6
|
-
}
|
|
7
|
-
else {
|
|
8
|
-
actionLifecycleHooks[getActionTypeFromInstance(actionType)] = [
|
|
9
|
-
...actionLifecycleHooks[getActionTypeFromInstance(actionType)],
|
|
10
|
-
hook,
|
|
11
|
-
];
|
|
12
|
-
}
|
|
13
|
-
}
|
|
14
|
-
//# sourceMappingURL=utils.js.map
|
package/esm2015/lib/utils.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../../packages/action-lifecycle-hooks/src/lib/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,yBAAyB,EAAE,MAAM,aAAa,CAAC;AAGpE,MAAM,CAAC,MAAM,oBAAoB,GAA+B,EAAE,CAAC;AAEnE,MAAM,UAAU,mBAAmB,CAAC,UAAsB,EAAE,IAAW;IACrE,IAAI,CAAC,oBAAoB,CAAC,yBAAyB,CAAC,UAAU,CAAC,CAAC,EAAE;QAChE,oBAAoB,CAAC,yBAAyB,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;KACtE;SAAM;QACL,oBAAoB,CAAC,yBAAyB,CAAC,UAAU,CAAC,CAAC,GAAG;YAC5D,GAAG,oBAAoB,CAAC,yBAAyB,CAAC,UAAU,CAAC,CAAC;YAC9D,IAAI;SACL,CAAC;KACH;AACH,CAAC","sourcesContent":["import { ActionType, getActionTypeFromInstance } from '@ngxs/store';\n\nexport type Hooks = 'Successful' | 'Errored' | 'Canceled';\nexport const actionLifecycleHooks: { [key: string]: Hooks[] } = {};\n\nexport function addToLifecycleHooks(actionType: ActionType, hook: Hooks) {\n if (!actionLifecycleHooks[getActionTypeFromInstance(actionType)]) {\n actionLifecycleHooks[getActionTypeFromInstance(actionType)] = [hook];\n } else {\n actionLifecycleHooks[getActionTypeFromInstance(actionType)] = [\n ...actionLifecycleHooks[getActionTypeFromInstance(actionType)],\n hook,\n ];\n }\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
[{"__symbolic":"module","version":4,"metadata":{"Hooks":{"__symbolic":"interface"},"actionLifecycleHooks":{},"addToLifecycleHooks":{"__symbolic":"function"}}}]
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ngxs-labs-action-lifecycle-hooks.js","sourceRoot":"","sources":["../../../../packages/action-lifecycle-hooks/src/ngxs-labs-action-lifecycle-hooks.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,SAAS,CAAC;AAExB,OAAO,EAAC,6BAA6B,IAAI,EAAE,EAAC,MAAM,yCAAyC,CAAC","sourcesContent":["/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n\nexport {NgxsActionLifecycleHooksState as ɵa} from './lib/ngxs-action-lifecycle-hooks.state';"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
[{"__symbolic":"module","version":4,"metadata":{},"exports":[{"from":"./index"},{"from":"./lib/ngxs-action-lifecycle-hooks.state","export":[{"name":"NgxsActionLifecycleHooksState","as":"ɵa"}]}]}]
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ngxs-labs-action-lifecycle-hooks.js","sources":["../../../../packages/action-lifecycle-hooks/src/lib/utils.ts","../../../../packages/action-lifecycle-hooks/src/lib/action-decorator-helpers.ts","../../../../packages/action-lifecycle-hooks/src/lib/ngxs-action-lifecycle-hooks.state.ts","../../../../packages/action-lifecycle-hooks/src/lib/ngxs-action-lifecycle-hooks.module.ts","../../../../packages/action-lifecycle-hooks/src/ngxs-labs-action-lifecycle-hooks.ts"],"sourcesContent":["import { ActionType, getActionTypeFromInstance } from '@ngxs/store';\n\nexport type Hooks = 'Successful' | 'Errored' | 'Canceled';\nexport const actionLifecycleHooks: { [key: string]: Hooks[] } = {};\n\nexport function addToLifecycleHooks(actionType: ActionType, hook: Hooks) {\n if (!actionLifecycleHooks[getActionTypeFromInstance(actionType)]) {\n actionLifecycleHooks[getActionTypeFromInstance(actionType)] = [hook];\n } else {\n actionLifecycleHooks[getActionTypeFromInstance(actionType)] = [\n ...actionLifecycleHooks[getActionTypeFromInstance(actionType)],\n hook,\n ];\n }\n}\n","import { ActionType, getActionTypeFromInstance } from '@ngxs/store';\nimport { addToLifecycleHooks } from './utils';\n\nexport type Successful<A> = { action: A };\nexport type Errored<A> = { action: A; error: any };\nexport type Cancelled<A> = { action: A };\n\nexport function ActionSuccessful(actionType: ActionType) {\n addToLifecycleHooks(actionType, 'Successful');\n return class {\n static readonly type = `${getActionTypeFromInstance(\n actionType\n )} Successful`;\n constructor(public action: any) {}\n };\n}\n\nexport function ActionErrored(actionType: ActionType) {\n addToLifecycleHooks(actionType, 'Errored');\n return class {\n static readonly type = `${getActionTypeFromInstance(actionType)} Errored`;\n constructor(public action: any, public error: any) {}\n };\n}\n\nexport function ActionCancelled(actionType: ActionType) {\n addToLifecycleHooks(actionType, 'Canceled');\n return class {\n static readonly type = `${getActionTypeFromInstance(actionType)} Canceled`;\n constructor(public action: any) {}\n };\n}\n","import { Injectable } from '@angular/core';\nimport { State, Actions, Store, ofActionCompleted, getActionTypeFromInstance } from '@ngxs/store';\nimport { asapScheduler } from 'rxjs';\nimport { observeOn } from 'rxjs/operators';\nimport { ActionCancelled, ActionErrored, ActionSuccessful } from './action-decorator-helpers';\nimport { actionLifecycleHooks } from './utils';\n\n@State<any>({\n name: 'NgxsActionLifecycleHooksState',\n})\n@Injectable()\nexport class NgxsActionLifecycleHooksState {\n constructor(private actions: Actions, private store: Store) {\n const arr = Object.keys(actionLifecycleHooks).map((key) => ({ type: key }));\n this.actions.pipe(ofActionCompleted(...arr), observeOn(asapScheduler)).subscribe((actionCompletion) => {\n if (\n actionCompletion.result.successful &&\n actionLifecycleHooks[getActionTypeFromInstance(actionCompletion.action)].includes('Successful')\n ) {\n const ActionSuccessfulClass = ActionSuccessful(actionCompletion.action);\n this.store.dispatch(new ActionSuccessfulClass(actionCompletion.action));\n }\n if (\n actionCompletion.result.error &&\n actionLifecycleHooks[getActionTypeFromInstance(actionCompletion.action)].includes('Errored')\n ) {\n const ActionErroredClass = ActionErrored(actionCompletion.action);\n this.store.dispatch(new ActionErroredClass(actionCompletion.action, actionCompletion.result.error));\n }\n if (\n actionCompletion.result.canceled &&\n actionLifecycleHooks[getActionTypeFromInstance(actionCompletion.action)].includes('Canceled')\n ) {\n const ActionCancelledClass = ActionCancelled(actionCompletion.action);\n this.store.dispatch(new ActionCancelledClass(actionCompletion.action));\n }\n });\n }\n}\n","import { NgModule } from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\nimport { NgxsModule } from \"@ngxs/store\";\nimport { NgxsActionLifecycleHooksState } from \"./ngxs-action-lifecycle-hooks.state\";\n\n@NgModule({\n imports: [\n CommonModule,\n NgxsModule.forFeature([NgxsActionLifecycleHooksState])\n ],\n declarations: []\n})\nexport class NgxsActionLifecycleHooksModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n\nexport {NgxsActionLifecycleHooksState as ɵa} from './lib/ngxs-action-lifecycle-hooks.state';"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"__symbolic":"module","version":4,"metadata":{"NgxsActionLifecycleHooksModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":5,"character":1},"arguments":[{"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":7,"character":4},{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"NgxsModule","line":8,"character":4},"member":"forFeature"},"arguments":[[{"__symbolic":"reference","name":"ɵa"}]]}],"declarations":[]}]}],"members":{}},"Successful":{"__symbolic":"interface"},"Errored":{"__symbolic":"interface"},"Cancelled":{"__symbolic":"interface"},"ActionSuccessful":{"__symbolic":"function"},"ActionErrored":{"__symbolic":"function"},"ActionCancelled":{"__symbolic":"function"},"ɵa":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"State","line":7,"character":1},"arguments":[{"name":"NgxsActionLifecycleHooksState"}]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":10,"character":1}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@ngxs/store","name":"Actions","line":12,"character":31},{"__symbolic":"reference","module":"@ngxs/store","name":"Store","line":12,"character":55}]}]}}},"origins":{"NgxsActionLifecycleHooksModule":"./lib/ngxs-action-lifecycle-hooks.module","Successful":"./lib/action-decorator-helpers","Errored":"./lib/action-decorator-helpers","Cancelled":"./lib/action-decorator-helpers","ActionSuccessful":"./lib/action-decorator-helpers","ActionErrored":"./lib/action-decorator-helpers","ActionCancelled":"./lib/action-decorator-helpers","ɵa":"./lib/ngxs-action-lifecycle-hooks.state"},"importAs":"@ngxs-labs/action-lifecycle-hooks"}
|