@ngxs-labs/action-lifecycle-hooks 1.0.0 → 1.0.5

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.
@@ -7,7 +7,7 @@ import * as i1 from "@ngxs/store";
7
7
  export class NgxsActionLifecycleHooksModule {
8
8
  }
9
9
  NgxsActionLifecycleHooksModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.3", ngImport: i0, type: NgxsActionLifecycleHooksModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
10
- NgxsActionLifecycleHooksModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.1.3", ngImport: i0, type: NgxsActionLifecycleHooksModule, imports: [CommonModule, i1.ɵz] });
10
+ NgxsActionLifecycleHooksModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.1.3", ngImport: i0, type: NgxsActionLifecycleHooksModule, imports: [CommonModule, i1.ɵNgxsFeatureModule] });
11
11
  NgxsActionLifecycleHooksModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.1.3", ngImport: i0, type: NgxsActionLifecycleHooksModule, imports: [CommonModule,
12
12
  NgxsModule.forFeature([NgxsActionLifecycleHooksState])] });
13
13
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.3", ngImport: i0, type: NgxsActionLifecycleHooksModule, decorators: [{
@@ -96,7 +96,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.3", ngImpor
96
96
  class NgxsActionLifecycleHooksModule {
97
97
  }
98
98
  NgxsActionLifecycleHooksModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.3", ngImport: i0, type: NgxsActionLifecycleHooksModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
99
- NgxsActionLifecycleHooksModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.1.3", ngImport: i0, type: NgxsActionLifecycleHooksModule, imports: [CommonModule, i1.ɵz] });
99
+ NgxsActionLifecycleHooksModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.1.3", ngImport: i0, type: NgxsActionLifecycleHooksModule, imports: [CommonModule, i1.ɵNgxsFeatureModule] });
100
100
  NgxsActionLifecycleHooksModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.1.3", ngImport: i0, type: NgxsActionLifecycleHooksModule, imports: [CommonModule,
101
101
  NgxsModule.forFeature([NgxsActionLifecycleHooksState])] });
102
102
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.3", ngImport: i0, type: NgxsActionLifecycleHooksModule, decorators: [{
@@ -1 +1 @@
1
- {"version":3,"file":"ngxs-labs-action-lifecycle-hooks.mjs","sources":["../../../../libs/action-lifecycle-hooks/src/lib/utils.ts","../../../../libs/action-lifecycle-hooks/src/lib/action-decorator-helpers.ts","../../../../libs/action-lifecycle-hooks/src/lib/ngxs-action-lifecycle-hooks.state.ts","../../../../libs/action-lifecycle-hooks/src/lib/ngxs-action-lifecycle-hooks.module.ts","../../../../libs/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 const actionTypeOk = getActionTypeFromInstance(actionType) || ''\n if (!actionLifecycleHooks[actionTypeOk]) {\n actionLifecycleHooks[actionTypeOk] = [hook];\n } else {\n actionLifecycleHooks[actionTypeOk] = [\n ...actionLifecycleHooks[actionTypeOk],\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 const actionTypeOk = getActionTypeFromInstance(actionCompletion.action) || ''\n if (\n actionCompletion.result.successful &&\n actionLifecycleHooks[actionTypeOk].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[actionTypeOk].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[actionTypeOk].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"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ngxs-labs-action-lifecycle-hooks.mjs","sources":["../../../../libs/action-lifecycle-hooks/src/lib/utils.ts","../../../../libs/action-lifecycle-hooks/src/lib/action-decorator-helpers.ts","../../../../libs/action-lifecycle-hooks/src/lib/ngxs-action-lifecycle-hooks.state.ts","../../../../libs/action-lifecycle-hooks/src/lib/ngxs-action-lifecycle-hooks.module.ts","../../../../libs/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 const actionTypeOk = getActionTypeFromInstance(actionType) || ''\n if (!actionLifecycleHooks[actionTypeOk]) {\n actionLifecycleHooks[actionTypeOk] = [hook];\n } else {\n actionLifecycleHooks[actionTypeOk] = [\n ...actionLifecycleHooks[actionTypeOk],\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 const actionTypeOk = getActionTypeFromInstance(actionCompletion.action) || ''\n if (\n actionCompletion.result.successful &&\n actionLifecycleHooks[actionTypeOk].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[actionTypeOk].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[actionTypeOk].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"],"names":[],"mappings":"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"}
@@ -96,7 +96,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.3", ngImpor
96
96
  class NgxsActionLifecycleHooksModule {
97
97
  }
98
98
  NgxsActionLifecycleHooksModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.3", ngImport: i0, type: NgxsActionLifecycleHooksModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
99
- NgxsActionLifecycleHooksModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.1.3", ngImport: i0, type: NgxsActionLifecycleHooksModule, imports: [CommonModule, i1.ɵz] });
99
+ NgxsActionLifecycleHooksModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.1.3", ngImport: i0, type: NgxsActionLifecycleHooksModule, imports: [CommonModule, i1.ɵNgxsFeatureModule] });
100
100
  NgxsActionLifecycleHooksModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.1.3", ngImport: i0, type: NgxsActionLifecycleHooksModule, imports: [CommonModule,
101
101
  NgxsModule.forFeature([NgxsActionLifecycleHooksState])] });
102
102
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.3", ngImport: i0, type: NgxsActionLifecycleHooksModule, decorators: [{
@@ -1 +1 @@
1
- {"version":3,"file":"ngxs-labs-action-lifecycle-hooks.mjs","sources":["../../../../libs/action-lifecycle-hooks/src/lib/utils.ts","../../../../libs/action-lifecycle-hooks/src/lib/action-decorator-helpers.ts","../../../../libs/action-lifecycle-hooks/src/lib/ngxs-action-lifecycle-hooks.state.ts","../../../../libs/action-lifecycle-hooks/src/lib/ngxs-action-lifecycle-hooks.module.ts","../../../../libs/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 const actionTypeOk = getActionTypeFromInstance(actionType) || ''\n if (!actionLifecycleHooks[actionTypeOk]) {\n actionLifecycleHooks[actionTypeOk] = [hook];\n } else {\n actionLifecycleHooks[actionTypeOk] = [\n ...actionLifecycleHooks[actionTypeOk],\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 const actionTypeOk = getActionTypeFromInstance(actionCompletion.action) || ''\n if (\n actionCompletion.result.successful &&\n actionLifecycleHooks[actionTypeOk].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[actionTypeOk].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[actionTypeOk].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"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ngxs-labs-action-lifecycle-hooks.mjs","sources":["../../../../libs/action-lifecycle-hooks/src/lib/utils.ts","../../../../libs/action-lifecycle-hooks/src/lib/action-decorator-helpers.ts","../../../../libs/action-lifecycle-hooks/src/lib/ngxs-action-lifecycle-hooks.state.ts","../../../../libs/action-lifecycle-hooks/src/lib/ngxs-action-lifecycle-hooks.module.ts","../../../../libs/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 const actionTypeOk = getActionTypeFromInstance(actionType) || ''\n if (!actionLifecycleHooks[actionTypeOk]) {\n actionLifecycleHooks[actionTypeOk] = [hook];\n } else {\n actionLifecycleHooks[actionTypeOk] = [\n ...actionLifecycleHooks[actionTypeOk],\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 const actionTypeOk = getActionTypeFromInstance(actionCompletion.action) || ''\n if (\n actionCompletion.result.successful &&\n actionLifecycleHooks[actionTypeOk].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[actionTypeOk].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[actionTypeOk].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"],"names":[],"mappings":"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"}
@@ -3,6 +3,6 @@ import * as i1 from "@angular/common";
3
3
  import * as i2 from "@ngxs/store";
4
4
  export declare class NgxsActionLifecycleHooksModule {
5
5
  static ɵfac: i0.ɵɵFactoryDeclaration<NgxsActionLifecycleHooksModule, never>;
6
- static ɵmod: i0.ɵɵNgModuleDeclaration<NgxsActionLifecycleHooksModule, never, [typeof i1.CommonModule, typeof i2.ɵz], never>;
6
+ static ɵmod: i0.ɵɵNgModuleDeclaration<NgxsActionLifecycleHooksModule, never, [typeof i1.CommonModule, typeof i2.ɵNgxsFeatureModule], never>;
7
7
  static ɵinj: i0.ɵɵInjectorDeclaration<NgxsActionLifecycleHooksModule>;
8
8
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ngxs-labs/action-lifecycle-hooks",
3
- "version": "1.0.0",
3
+ "version": "1.0.5",
4
4
  "peerDependencies": {
5
5
  "@ngxs/store": ">=3.4.0 <4.0.0",
6
6
  "@angular/core": ">=8.0.0",