New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

@ng-vcl/store

Package Overview
Dependencies
Maintainers
4
Versions
44
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@ng-vcl/store - npm Package Compare versions

Comparing version 0.3.8 to 0.3.9

14

effects.d.ts

@@ -6,10 +6,22 @@ import { OnDestroy, OpaqueToken, Injector } from '@angular/core';

export declare const STORE_EFFECTS: OpaqueToken;
export declare const STORE_CHILD_EFFECTS: OpaqueToken;
export declare function Effect(): PropertyDecorator;
export declare function getEffectsMetadata(instance: any): string[];
export declare class Effects implements OnDestroy {
private store;
protected store: Store;
protected effects: any[];
protected injector: Injector;
private effectSubs;
constructor(store: Store, effects: any[], injector: Injector);
init(): void;
addEffect(effect: any): void;
ngOnDestroy(): void;
}
export declare class RootEffects extends Effects {
protected store: Store;
constructor(store: Store, effects: any[], injector: Injector);
}
export declare class ChildEffects extends Effects {
protected store: Store;
constructor(store: Store, effects: any[], injector: Injector);
}

@@ -0,1 +1,11 @@

var __extends = (this && this.__extends) || (function () {
var extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
return function (d, b) {
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {

@@ -20,2 +30,3 @@ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;

export var STORE_EFFECTS = new OpaqueToken('store.effects');
export var STORE_CHILD_EFFECTS = new OpaqueToken('store.child.effects');
export function Effect() {

@@ -39,9 +50,13 @@ return function (target, propertyName) {

function Effects(store, effects, injector) {
var _this = this;
this.store = store;
this.effects = effects;
this.injector = injector;
this.effectSubs = [];
(effects || []).forEach(function (effectClasses) {
}
Effects.prototype.init = function () {
var _this = this;
(this.effects || []).forEach(function (effectClasses) {
if (Array.isArray(effectClasses)) {
effectClasses.forEach(function (effectClass) {
var effect = injector.get(effectClass);
var effect = _this.injector.get(effectClass);
if (effect) {

@@ -53,3 +68,3 @@ _this.addEffect(effect);

});
}
};
Effects.prototype.addEffect = function (effect) {

@@ -69,3 +84,13 @@ if (effect) {

};
Effects = __decorate([
return Effects;
}());
export { Effects };
var RootEffects = (function (_super) {
__extends(RootEffects, _super);
function RootEffects(store, effects, injector) {
var _this = _super.call(this, store, effects, injector) || this;
_this.store = store;
return _this;
}
RootEffects = __decorate([
Injectable(),

@@ -75,5 +100,21 @@ __param(1, Optional()),

__metadata("design:paramtypes", [Store, Array, Injector])
], Effects);
return Effects;
}());
export { Effects };
], RootEffects);
return RootEffects;
}(Effects));
export { RootEffects };
var ChildEffects = (function (_super) {
__extends(ChildEffects, _super);
function ChildEffects(store, effects, injector) {
var _this = _super.call(this, store, effects, injector) || this;
_this.store = store;
return _this;
}
ChildEffects = __decorate([
Injectable(),
__param(1, Optional()),
__param(1, Inject(STORE_CHILD_EFFECTS)),
__metadata("design:paramtypes", [Store, Array, Injector])
], ChildEffects);
return ChildEffects;
}(Effects));
export { ChildEffects };

2

effects.metadata.json

@@ -1,1 +0,1 @@

[{"__symbolic":"module","version":3,"metadata":{"STORE_EFFECTS":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"OpaqueToken"},"arguments":["store.effects"]},"Effect":{"__symbolic":"function","parameters":[],"value":{"__symbolic":"error","message":"Function call not supported","line":13,"character":9}},"getEffectsMetadata":{"__symbolic":"function"},"Effects":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable"}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional"}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject"},"arguments":[{"__symbolic":"reference","name":"STORE_EFFECTS"}]}],null],"parameters":[{"__symbolic":"reference","module":"./store","name":"Store"},{"__symbolic":"reference","name":"Array","arguments":[{"__symbolic":"reference","name":"any"}]},{"__symbolic":"reference","module":"@angular/core","name":"Injector"}]}],"addEffect":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}]}}}},{"__symbolic":"module","version":1,"metadata":{"STORE_EFFECTS":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"OpaqueToken"},"arguments":["store.effects"]},"Effect":{"__symbolic":"function","parameters":[],"value":{"__symbolic":"error","message":"Function call not supported","line":13,"character":9}},"getEffectsMetadata":{"__symbolic":"function"},"Effects":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable"}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional"}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject"},"arguments":[{"__symbolic":"reference","name":"STORE_EFFECTS"}]}],null],"parameters":[{"__symbolic":"reference","module":"./store","name":"Store"},{"__symbolic":"reference","name":"Array","arguments":[{"__symbolic":"reference","name":"any"}]},{"__symbolic":"reference","module":"@angular/core","name":"Injector"}]}],"addEffect":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}]}}}}]
[{"__symbolic":"module","version":3,"metadata":{"STORE_EFFECTS":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"OpaqueToken"},"arguments":["store.effects"]},"STORE_CHILD_EFFECTS":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"OpaqueToken"},"arguments":["store.child.effects"]},"Effect":{"__symbolic":"function","parameters":[],"value":{"__symbolic":"error","message":"Function call not supported","line":14,"character":9}},"getEffectsMetadata":{"__symbolic":"function"},"Effects":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"./store","name":"Store"},{"__symbolic":"reference","name":"Array","arguments":[{"__symbolic":"reference","name":"any"}]},{"__symbolic":"reference","module":"@angular/core","name":"Injector"}]}],"init":[{"__symbolic":"method"}],"addEffect":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}]}},"RootEffects":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"Effects"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable"}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional"}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject"},"arguments":[{"__symbolic":"reference","name":"STORE_EFFECTS"}]}],null],"parameters":[{"__symbolic":"reference","module":"./store","name":"Store"},{"__symbolic":"reference","name":"Array","arguments":[{"__symbolic":"reference","name":"any"}]},{"__symbolic":"reference","module":"@angular/core","name":"Injector"}]}]}},"ChildEffects":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"Effects"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable"}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional"}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject"},"arguments":[{"__symbolic":"reference","name":"STORE_CHILD_EFFECTS"}]}],null],"parameters":[{"__symbolic":"reference","module":"./store","name":"Store"},{"__symbolic":"reference","name":"Array","arguments":[{"__symbolic":"reference","name":"any"}]},{"__symbolic":"reference","module":"@angular/core","name":"Injector"}]}]}}}},{"__symbolic":"module","version":1,"metadata":{"STORE_EFFECTS":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"OpaqueToken"},"arguments":["store.effects"]},"STORE_CHILD_EFFECTS":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"OpaqueToken"},"arguments":["store.child.effects"]},"Effect":{"__symbolic":"function","parameters":[],"value":{"__symbolic":"error","message":"Function call not supported","line":14,"character":9}},"getEffectsMetadata":{"__symbolic":"function"},"Effects":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"./store","name":"Store"},{"__symbolic":"reference","name":"Array","arguments":[{"__symbolic":"reference","name":"any"}]},{"__symbolic":"reference","module":"@angular/core","name":"Injector"}]}],"init":[{"__symbolic":"method"}],"addEffect":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}]}},"RootEffects":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"Effects"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable"}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional"}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject"},"arguments":[{"__symbolic":"reference","name":"STORE_EFFECTS"}]}],null],"parameters":[{"__symbolic":"reference","module":"./store","name":"Store"},{"__symbolic":"reference","name":"Array","arguments":[{"__symbolic":"reference","name":"any"}]},{"__symbolic":"reference","module":"@angular/core","name":"Injector"}]}]}},"ChildEffects":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"Effects"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable"}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional"}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject"},"arguments":[{"__symbolic":"reference","name":"STORE_CHILD_EFFECTS"}]}],null],"parameters":[{"__symbolic":"reference","module":"./store","name":"Store"},{"__symbolic":"reference","name":"Array","arguments":[{"__symbolic":"reference","name":"any"}]},{"__symbolic":"reference","module":"@angular/core","name":"Injector"}]}]}}}}]
import { ModuleWithProviders, Type, OpaqueToken } from '@angular/core';
import { Store, Reducer, Reducers, StoreState } from './store';
import { Effects } from './effects';
import { Effects, ChildEffects } from './effects';
export * from './actions';

@@ -27,2 +27,5 @@ export * from './utils';

providers: (Type<any> | {
provide: typeof Effects;
useClass: typeof ChildEffects;
} | {
provide: OpaqueToken;

@@ -33,4 +36,4 @@ multi: boolean;

provide: OpaqueToken;
multi: boolean;
useValue: Type<any>[] | undefined;
multi: boolean;
})[];

@@ -37,0 +40,0 @@ };

@@ -17,3 +17,3 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {

import { StoreActions } from './actions';
import { Effects, STORE_EFFECTS } from './effects';
import { Effects, RootEffects, ChildEffects, STORE_EFFECTS, STORE_CHILD_EFFECTS } from './effects';
import { routerReducer, StoreRouter, StoreRouterEffects } from './router';

@@ -35,2 +35,5 @@ export * from './actions';

function StoreModule(guard, store, initialReducers, effects) {
if (effects) {
effects.init();
}
var reducers = initialReducers.map(function (reducer) { return createReducer(reducer); });

@@ -56,6 +59,9 @@ var reducer = reduceReducers.apply(void 0, reducers);

StoreRouter,
Effects,
{
provide: Effects,
useClass: RootEffects
},
{
provide: STORE_INITIAL_STATE,
useValue: config.state || {}
useValue: config.state
},

@@ -69,6 +75,7 @@ {

StoreRouter,
StoreRouterEffects,
{
provide: STORE_EFFECTS,
useClass: StoreRouterEffects,
multi: true
multi: true,
useValue: [StoreRouterEffects]
},

@@ -83,4 +90,4 @@ {

provide: STORE_EFFECTS,
useValue: config.effects,
multi: true
multi: true,
useValue: config.effects
}

@@ -95,4 +102,7 @@ ])

providers: [
Effects,
{
provide: Effects,
useClass: ChildEffects
},
{
provide: STORE_INITIAL_REDUCERS,

@@ -104,5 +114,5 @@ multi: true,

{
provide: STORE_EFFECTS,
useValue: config.effects,
multi: true
provide: STORE_CHILD_EFFECTS,
multi: true,
useValue: config.effects
}

@@ -116,2 +126,3 @@ ])

__param(2, Inject(STORE_INITIAL_REDUCERS)),
__param(3, Optional()),
__metadata("design:paramtypes", [Object, Store, Array, Effects])

@@ -118,0 +129,0 @@ ], StoreModule);

@@ -1,1 +0,1 @@

[{"__symbolic":"module","version":3,"metadata":{"STORE_FORROOT_GUARD":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"OpaqueToken"},"arguments":["STORE_FORROOT_GUARD"]},"provideForRootGuard":{"__symbolic":"function"},"StoreConfig":{"__symbolic":"interface"},"StoreChildConfig":{"__symbolic":"interface"},"StoreModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule"}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional"}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject"},"arguments":[{"__symbolic":"reference","name":"STORE_FORROOT_GUARD"}]}],null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject"},"arguments":[{"__symbolic":"reference","module":"./store","name":"STORE_INITIAL_REDUCERS"}]}],null],"parameters":[{"__symbolic":"reference","name":"any"},{"__symbolic":"reference","module":"./store","name":"Store"},{"__symbolic":"reference","name":"Array","arguments":[{"__symbolic":"reference","module":"./store","name":"Reducer","arguments":[{"__symbolic":"reference","module":"./store","name":"StoreState"}]}]},{"__symbolic":"reference","module":"./effects","name":"Effects"}]}]},"statics":{"forRoot":{"__symbolic":"function","parameters":["config"],"value":{"ngModule":{"__symbolic":"reference","name":"StoreModule"},"providers":[{"provide":{"__symbolic":"reference","name":"STORE_FORROOT_GUARD"},"useFactory":{"__symbolic":"reference","name":"provideForRootGuard"},"deps":[[{"__symbolic":"reference","module":"./store","name":"Store"},{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional"}},{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"SkipSelf"}}]]},{"__symbolic":"reference","module":"./actions","name":"StoreActions"},{"__symbolic":"reference","module":"./store","name":"Store"},{"__symbolic":"reference","module":"./router","name":"StoreRouter"},{"__symbolic":"reference","module":"./effects","name":"Effects"},{"provide":{"__symbolic":"reference","module":"./store","name":"STORE_INITIAL_STATE"},"useValue":{"__symbolic":"binop","operator":"||","left":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"config"},"member":"state"},"right":{}}},{"provide":{"__symbolic":"reference","module":"./store","name":"STORE_INITIAL_REDUCERS"},"multi":true,"useValue":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"config"},"member":"reducers"}},{"__symbolic":"spread","expression":{"__symbolic":"if","condition":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"config"},"member":"enableRouter"},"thenExpression":[{"__symbolic":"reference","module":"./router","name":"StoreRouter"},{"provide":{"__symbolic":"reference","module":"./effects","name":"STORE_EFFECTS"},"useClass":{"__symbolic":"reference","module":"./router","name":"StoreRouterEffects"},"multi":true},{"provide":{"__symbolic":"reference","module":"./store","name":"STORE_INITIAL_REDUCERS"},"multi":true,"useValue":{"__symbolic":"reference","module":"./router","name":"routerReducer"}}],"elseExpression":[]}},{"__symbolic":"spread","expression":{"__symbolic":"binop","operator":"||","left":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"config"},"member":"effects"},"right":[]}},{"provide":{"__symbolic":"reference","module":"./effects","name":"STORE_EFFECTS"},"useValue":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"config"},"member":"effects"},"multi":true}]},"defaults":[{}]},"forChild":{"__symbolic":"function","parameters":["config"],"value":{"ngModule":{"__symbolic":"reference","name":"StoreModule"},"providers":[{"__symbolic":"reference","module":"./effects","name":"Effects"},{"provide":{"__symbolic":"reference","module":"./store","name":"STORE_INITIAL_REDUCERS"},"multi":true,"useValue":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"config"},"member":"reducers"}},{"__symbolic":"spread","expression":{"__symbolic":"binop","operator":"||","left":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"config"},"member":"effects"},"right":[]}},{"provide":{"__symbolic":"reference","module":"./effects","name":"STORE_EFFECTS"},"useValue":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"config"},"member":"effects"},"multi":true}]},"defaults":[{}]}}}},"exports":[{"from":"./actions"},{"from":"./utils"},{"from":"./effects"},{"from":"./observable"},{"from":"./store"},{"from":"./router"}]},{"__symbolic":"module","version":1,"metadata":{"STORE_FORROOT_GUARD":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"OpaqueToken"},"arguments":["STORE_FORROOT_GUARD"]},"provideForRootGuard":{"__symbolic":"function"},"StoreConfig":{"__symbolic":"interface"},"StoreChildConfig":{"__symbolic":"interface"},"StoreModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule"}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional"}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject"},"arguments":[{"__symbolic":"reference","name":"STORE_FORROOT_GUARD"}]}],null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject"},"arguments":[{"__symbolic":"reference","module":"./store","name":"STORE_INITIAL_REDUCERS"}]}],null],"parameters":[{"__symbolic":"reference","name":"any"},{"__symbolic":"reference","module":"./store","name":"Store"},{"__symbolic":"reference","name":"Array","arguments":[{"__symbolic":"reference","module":"./store","name":"Reducer","arguments":[{"__symbolic":"reference","module":"./store","name":"StoreState"}]}]},{"__symbolic":"reference","module":"./effects","name":"Effects"}]}]},"statics":{"forRoot":{"__symbolic":"function","parameters":["config"],"value":{"ngModule":{"__symbolic":"reference","name":"StoreModule"},"providers":[{"provide":{"__symbolic":"reference","name":"STORE_FORROOT_GUARD"},"useFactory":{"__symbolic":"reference","name":"provideForRootGuard"},"deps":[[{"__symbolic":"reference","module":"./store","name":"Store"},{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional"}},{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"SkipSelf"}}]]},{"__symbolic":"reference","module":"./actions","name":"StoreActions"},{"__symbolic":"reference","module":"./store","name":"Store"},{"__symbolic":"reference","module":"./router","name":"StoreRouter"},{"__symbolic":"reference","module":"./effects","name":"Effects"},{"provide":{"__symbolic":"reference","module":"./store","name":"STORE_INITIAL_STATE"},"useValue":{"__symbolic":"binop","operator":"||","left":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"config"},"member":"state"},"right":{}}},{"provide":{"__symbolic":"reference","module":"./store","name":"STORE_INITIAL_REDUCERS"},"multi":true,"useValue":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"config"},"member":"reducers"}},{"__symbolic":"spread","expression":{"__symbolic":"if","condition":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"config"},"member":"enableRouter"},"thenExpression":[{"__symbolic":"reference","module":"./router","name":"StoreRouter"},{"provide":{"__symbolic":"reference","module":"./effects","name":"STORE_EFFECTS"},"useClass":{"__symbolic":"reference","module":"./router","name":"StoreRouterEffects"},"multi":true},{"provide":{"__symbolic":"reference","module":"./store","name":"STORE_INITIAL_REDUCERS"},"multi":true,"useValue":{"__symbolic":"reference","module":"./router","name":"routerReducer"}}],"elseExpression":[]}},{"__symbolic":"spread","expression":{"__symbolic":"binop","operator":"||","left":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"config"},"member":"effects"},"right":[]}},{"provide":{"__symbolic":"reference","module":"./effects","name":"STORE_EFFECTS"},"useValue":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"config"},"member":"effects"},"multi":true}]},"defaults":[{}]},"forChild":{"__symbolic":"function","parameters":["config"],"value":{"ngModule":{"__symbolic":"reference","name":"StoreModule"},"providers":[{"__symbolic":"reference","module":"./effects","name":"Effects"},{"provide":{"__symbolic":"reference","module":"./store","name":"STORE_INITIAL_REDUCERS"},"multi":true,"useValue":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"config"},"member":"reducers"}},{"__symbolic":"spread","expression":{"__symbolic":"binop","operator":"||","left":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"config"},"member":"effects"},"right":[]}},{"provide":{"__symbolic":"reference","module":"./effects","name":"STORE_EFFECTS"},"useValue":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"config"},"member":"effects"},"multi":true}]},"defaults":[{}]}}}},"exports":[{"from":"./actions"},{"from":"./utils"},{"from":"./effects"},{"from":"./observable"},{"from":"./store"},{"from":"./router"}]}]
[{"__symbolic":"module","version":3,"metadata":{"STORE_FORROOT_GUARD":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"OpaqueToken"},"arguments":["STORE_FORROOT_GUARD"]},"provideForRootGuard":{"__symbolic":"function"},"StoreConfig":{"__symbolic":"interface"},"StoreChildConfig":{"__symbolic":"interface"},"StoreModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule"}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional"}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject"},"arguments":[{"__symbolic":"reference","name":"STORE_FORROOT_GUARD"}]}],null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject"},"arguments":[{"__symbolic":"reference","module":"./store","name":"STORE_INITIAL_REDUCERS"}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional"}}]],"parameters":[{"__symbolic":"reference","name":"any"},{"__symbolic":"reference","module":"./store","name":"Store"},{"__symbolic":"reference","name":"Array","arguments":[{"__symbolic":"reference","module":"./store","name":"Reducer","arguments":[{"__symbolic":"reference","module":"./store","name":"StoreState"}]}]},{"__symbolic":"reference","module":"./effects","name":"Effects"}]}]},"statics":{"forRoot":{"__symbolic":"function","parameters":["config"],"value":{"ngModule":{"__symbolic":"reference","name":"StoreModule"},"providers":[{"provide":{"__symbolic":"reference","name":"STORE_FORROOT_GUARD"},"useFactory":{"__symbolic":"reference","name":"provideForRootGuard"},"deps":[[{"__symbolic":"reference","module":"./store","name":"Store"},{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional"}},{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"SkipSelf"}}]]},{"__symbolic":"reference","module":"./actions","name":"StoreActions"},{"__symbolic":"reference","module":"./store","name":"Store"},{"__symbolic":"reference","module":"./router","name":"StoreRouter"},{"provide":{"__symbolic":"reference","module":"./effects","name":"Effects"},"useClass":{"__symbolic":"reference","module":"./effects","name":"RootEffects"}},{"provide":{"__symbolic":"reference","module":"./store","name":"STORE_INITIAL_STATE"},"useValue":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"config"},"member":"state"}},{"provide":{"__symbolic":"reference","module":"./store","name":"STORE_INITIAL_REDUCERS"},"multi":true,"useValue":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"config"},"member":"reducers"}},{"__symbolic":"spread","expression":{"__symbolic":"if","condition":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"config"},"member":"enableRouter"},"thenExpression":[{"__symbolic":"reference","module":"./router","name":"StoreRouter"},{"__symbolic":"reference","module":"./router","name":"StoreRouterEffects"},{"provide":{"__symbolic":"reference","module":"./effects","name":"STORE_EFFECTS"},"multi":true,"useValue":[{"__symbolic":"reference","module":"./router","name":"StoreRouterEffects"}]},{"provide":{"__symbolic":"reference","module":"./store","name":"STORE_INITIAL_REDUCERS"},"multi":true,"useValue":{"__symbolic":"reference","module":"./router","name":"routerReducer"}}],"elseExpression":[]}},{"__symbolic":"spread","expression":{"__symbolic":"binop","operator":"||","left":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"config"},"member":"effects"},"right":[]}},{"provide":{"__symbolic":"reference","module":"./effects","name":"STORE_EFFECTS"},"multi":true,"useValue":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"config"},"member":"effects"}}]},"defaults":[{}]},"forChild":{"__symbolic":"function","parameters":["config"],"value":{"ngModule":{"__symbolic":"reference","name":"StoreModule"},"providers":[{"provide":{"__symbolic":"reference","module":"./effects","name":"Effects"},"useClass":{"__symbolic":"reference","module":"./effects","name":"ChildEffects"}},{"provide":{"__symbolic":"reference","module":"./store","name":"STORE_INITIAL_REDUCERS"},"multi":true,"useValue":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"config"},"member":"reducers"}},{"__symbolic":"spread","expression":{"__symbolic":"binop","operator":"||","left":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"config"},"member":"effects"},"right":[]}},{"provide":{"__symbolic":"reference","module":"./effects","name":"STORE_CHILD_EFFECTS"},"multi":true,"useValue":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"config"},"member":"effects"}}]},"defaults":[{}]}}}},"exports":[{"from":"./actions"},{"from":"./utils"},{"from":"./effects"},{"from":"./observable"},{"from":"./store"},{"from":"./router"}]},{"__symbolic":"module","version":1,"metadata":{"STORE_FORROOT_GUARD":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"OpaqueToken"},"arguments":["STORE_FORROOT_GUARD"]},"provideForRootGuard":{"__symbolic":"function"},"StoreConfig":{"__symbolic":"interface"},"StoreChildConfig":{"__symbolic":"interface"},"StoreModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule"}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional"}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject"},"arguments":[{"__symbolic":"reference","name":"STORE_FORROOT_GUARD"}]}],null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject"},"arguments":[{"__symbolic":"reference","module":"./store","name":"STORE_INITIAL_REDUCERS"}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional"}}]],"parameters":[{"__symbolic":"reference","name":"any"},{"__symbolic":"reference","module":"./store","name":"Store"},{"__symbolic":"reference","name":"Array","arguments":[{"__symbolic":"reference","module":"./store","name":"Reducer","arguments":[{"__symbolic":"reference","module":"./store","name":"StoreState"}]}]},{"__symbolic":"reference","module":"./effects","name":"Effects"}]}]},"statics":{"forRoot":{"__symbolic":"function","parameters":["config"],"value":{"ngModule":{"__symbolic":"reference","name":"StoreModule"},"providers":[{"provide":{"__symbolic":"reference","name":"STORE_FORROOT_GUARD"},"useFactory":{"__symbolic":"reference","name":"provideForRootGuard"},"deps":[[{"__symbolic":"reference","module":"./store","name":"Store"},{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional"}},{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"SkipSelf"}}]]},{"__symbolic":"reference","module":"./actions","name":"StoreActions"},{"__symbolic":"reference","module":"./store","name":"Store"},{"__symbolic":"reference","module":"./router","name":"StoreRouter"},{"provide":{"__symbolic":"reference","module":"./effects","name":"Effects"},"useClass":{"__symbolic":"reference","module":"./effects","name":"RootEffects"}},{"provide":{"__symbolic":"reference","module":"./store","name":"STORE_INITIAL_STATE"},"useValue":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"config"},"member":"state"}},{"provide":{"__symbolic":"reference","module":"./store","name":"STORE_INITIAL_REDUCERS"},"multi":true,"useValue":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"config"},"member":"reducers"}},{"__symbolic":"spread","expression":{"__symbolic":"if","condition":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"config"},"member":"enableRouter"},"thenExpression":[{"__symbolic":"reference","module":"./router","name":"StoreRouter"},{"__symbolic":"reference","module":"./router","name":"StoreRouterEffects"},{"provide":{"__symbolic":"reference","module":"./effects","name":"STORE_EFFECTS"},"multi":true,"useValue":[{"__symbolic":"reference","module":"./router","name":"StoreRouterEffects"}]},{"provide":{"__symbolic":"reference","module":"./store","name":"STORE_INITIAL_REDUCERS"},"multi":true,"useValue":{"__symbolic":"reference","module":"./router","name":"routerReducer"}}],"elseExpression":[]}},{"__symbolic":"spread","expression":{"__symbolic":"binop","operator":"||","left":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"config"},"member":"effects"},"right":[]}},{"provide":{"__symbolic":"reference","module":"./effects","name":"STORE_EFFECTS"},"multi":true,"useValue":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"config"},"member":"effects"}}]},"defaults":[{}]},"forChild":{"__symbolic":"function","parameters":["config"],"value":{"ngModule":{"__symbolic":"reference","name":"StoreModule"},"providers":[{"provide":{"__symbolic":"reference","module":"./effects","name":"Effects"},"useClass":{"__symbolic":"reference","module":"./effects","name":"ChildEffects"}},{"provide":{"__symbolic":"reference","module":"./store","name":"STORE_INITIAL_REDUCERS"},"multi":true,"useValue":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"config"},"member":"reducers"}},{"__symbolic":"spread","expression":{"__symbolic":"binop","operator":"||","left":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"config"},"member":"effects"},"right":[]}},{"provide":{"__symbolic":"reference","module":"./effects","name":"STORE_CHILD_EFFECTS"},"multi":true,"useValue":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"config"},"member":"effects"}}]},"defaults":[{}]}}}},"exports":[{"from":"./actions"},{"from":"./utils"},{"from":"./effects"},{"from":"./observable"},{"from":"./store"},{"from":"./router"}]}]
{
"name": "@ng-vcl/store",
"version": "0.3.8",
"version": "0.3.9",
"description": "ng-vcl store",

@@ -5,0 +5,0 @@ "repository": {

@@ -0,4 +1,4 @@

import { Router, NavigationExtras, UrlTree } from '@angular/router';
import 'rxjs/add/operator/filter';
import 'rxjs/add/operator/map';
import { Router, NavigationExtras, UrlTree } from '@angular/router';
import { Store, Reducer } from './store';

@@ -28,4 +28,4 @@ import { StoreActions } from './actions';

private actions$;
private routerSub;
constructor(router: Router, store: Store, actions$: StoreActions);
private routerSub;
private navigateEffect;

@@ -32,0 +32,0 @@ private navigateByUrlEffect;

@@ -10,6 +10,6 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {

};
import { Injectable } from '@angular/core';
import { Router, NavigationEnd } from '@angular/router';
import 'rxjs/add/operator/filter';
import 'rxjs/add/operator/map';
import { Injectable } from '@angular/core';
import { Router, NavigationEnd } from '@angular/router';
import { Store } from './store';

@@ -51,8 +51,2 @@ import { StoreActions } from './actions';

this.actions$ = actions$;
this.routerSub = this.router
.events
.filter(function (event) { return event instanceof NavigationEnd; })
.subscribe(function (event) {
_this.store.dispatch(new RouterUrlUpdateAction(event.url));
});
this.navigateEffect = this.actions$

@@ -68,6 +62,13 @@ .ofType(RouterNavigateAction)

});
if (this.router) {
this.routerSub = this.router
.events
.filter(function (event) { return event instanceof NavigationEnd; })
.subscribe(function (event) {
_this.store.dispatch(new RouterUrlUpdateAction(event.url));
});
}
}
StoreRouterEffects.prototype.ngOnDestroy = function () {
if (this.routerSub && !this.routerSub.closed)
this.routerSub.unsubscribe();
this.routerSub && this.routerSub.unsubscribe();
};

@@ -74,0 +75,0 @@ __decorate([

@@ -1,1 +0,1 @@

[{"__symbolic":"module","version":3,"metadata":{"RouterState":{"__symbolic":"interface"},"initialRouterState":{"url":""},"RouterNavigateAction":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"Array","arguments":[{"__symbolic":"reference","name":"any"}]},{"__symbolic":"reference","module":"@angular/router","name":"NavigationExtras"}]}]}},"RouterNavigateByUrlAction":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","module":"@angular/router","name":"NavigationExtras"}]}]}},"RouterUrlUpdateAction":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"string"}]}]}},"StoreRouterEffects":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable"}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/router","name":"Router"},{"__symbolic":"reference","module":"./store","name":"Store"},{"__symbolic":"reference","module":"./actions","name":"StoreActions"}]}],"navigateEffect":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"./effects","name":"Effect"}}]}],"navigateByUrlEffect":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"./effects","name":"Effect"}}]}],"ngOnDestroy":[{"__symbolic":"method"}]}},"StoreRouter":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable"}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"./store","name":"Store"}]}],"navigate":[{"__symbolic":"method"}],"navigateByUrl":[{"__symbolic":"method"}]}},"routerReducer":{"__symbolic":"error","message":"Function call not supported","line":76,"character":10}}},{"__symbolic":"module","version":1,"metadata":{"RouterState":{"__symbolic":"interface"},"initialRouterState":{"url":""},"RouterNavigateAction":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"Array","arguments":[{"__symbolic":"reference","name":"any"}]},{"__symbolic":"reference","module":"@angular/router","name":"NavigationExtras"}]}]}},"RouterNavigateByUrlAction":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","module":"@angular/router","name":"NavigationExtras"}]}]}},"RouterUrlUpdateAction":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"string"}]}]}},"StoreRouterEffects":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable"}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/router","name":"Router"},{"__symbolic":"reference","module":"./store","name":"Store"},{"__symbolic":"reference","module":"./actions","name":"StoreActions"}]}],"navigateEffect":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"./effects","name":"Effect"}}]}],"navigateByUrlEffect":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"./effects","name":"Effect"}}]}],"ngOnDestroy":[{"__symbolic":"method"}]}},"StoreRouter":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable"}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"./store","name":"Store"}]}],"navigate":[{"__symbolic":"method"}],"navigateByUrl":[{"__symbolic":"method"}]}},"routerReducer":{"__symbolic":"error","message":"Function call not supported","line":76,"character":10}}}]
[{"__symbolic":"module","version":3,"metadata":{"RouterState":{"__symbolic":"interface"},"initialRouterState":{"url":""},"RouterNavigateAction":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"Array","arguments":[{"__symbolic":"reference","name":"any"}]},{"__symbolic":"reference","module":"@angular/router","name":"NavigationExtras"}]}]}},"RouterNavigateByUrlAction":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","module":"@angular/router","name":"NavigationExtras"}]}]}},"RouterUrlUpdateAction":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"string"}]}]}},"StoreRouterEffects":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable"}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/router","name":"Router"},{"__symbolic":"reference","module":"./store","name":"Store"},{"__symbolic":"reference","module":"./actions","name":"StoreActions"}]}],"navigateEffect":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"./effects","name":"Effect"}}]}],"navigateByUrlEffect":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"./effects","name":"Effect"}}]}],"ngOnDestroy":[{"__symbolic":"method"}]}},"StoreRouter":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable"}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"./store","name":"Store"}]}],"navigate":[{"__symbolic":"method"}],"navigateByUrl":[{"__symbolic":"method"}]}},"routerReducer":{"__symbolic":"error","message":"Function call not supported","line":84,"character":10}}},{"__symbolic":"module","version":1,"metadata":{"RouterState":{"__symbolic":"interface"},"initialRouterState":{"url":""},"RouterNavigateAction":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"Array","arguments":[{"__symbolic":"reference","name":"any"}]},{"__symbolic":"reference","module":"@angular/router","name":"NavigationExtras"}]}]}},"RouterNavigateByUrlAction":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","module":"@angular/router","name":"NavigationExtras"}]}]}},"RouterUrlUpdateAction":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"string"}]}]}},"StoreRouterEffects":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable"}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/router","name":"Router"},{"__symbolic":"reference","module":"./store","name":"Store"},{"__symbolic":"reference","module":"./actions","name":"StoreActions"}]}],"navigateEffect":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"./effects","name":"Effect"}}]}],"navigateByUrlEffect":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"./effects","name":"Effect"}}]}],"ngOnDestroy":[{"__symbolic":"method"}]}},"StoreRouter":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable"}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"./store","name":"Store"}]}],"navigate":[{"__symbolic":"method"}],"navigateByUrl":[{"__symbolic":"method"}]}},"routerReducer":{"__symbolic":"error","message":"Function call not supported","line":84,"character":10}}}]

@@ -300,2 +300,12 @@ import { Inject, Injectable, Injector, NgModule, OpaqueToken, Optional, SkipSelf } from '@angular/core';

var __extends$3 = (this && this.__extends) || (function () {
var extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
return function (d, b) {
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
var __decorate$3 = (this && this.__decorate) || function (decorators, target, key, desc) {

@@ -315,2 +325,3 @@ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;

var STORE_EFFECTS = new OpaqueToken('store.effects');
var STORE_CHILD_EFFECTS = new OpaqueToken('store.child.effects');
function Effect() {

@@ -334,9 +345,13 @@ return function (target, propertyName) {

function Effects(store, effects, injector) {
var _this = this;
this.store = store;
this.effects = effects;
this.injector = injector;
this.effectSubs = [];
(effects || []).forEach(function (effectClasses) {
}
Effects.prototype.init = function () {
var _this = this;
(this.effects || []).forEach(function (effectClasses) {
if (Array.isArray(effectClasses)) {
effectClasses.forEach(function (effectClass) {
var effect = injector.get(effectClass);
var effect = _this.injector.get(effectClass);
if (effect) {

@@ -348,3 +363,3 @@ _this.addEffect(effect);

});
}
};
Effects.prototype.addEffect = function (effect) {

@@ -364,3 +379,12 @@ if (effect) {

};
Effects = __decorate$3([
return Effects;
}());
var RootEffects = (function (_super) {
__extends$3(RootEffects, _super);
function RootEffects(store, effects, injector) {
var _this = _super.call(this, store, effects, injector) || this;
_this.store = store;
return _this;
}
RootEffects = __decorate$3([
Injectable(),

@@ -370,5 +394,20 @@ __param$2(1, Optional()),

__metadata$3("design:paramtypes", [Store, Array, Injector])
], Effects);
return Effects;
}());
], RootEffects);
return RootEffects;
}(Effects));
var ChildEffects = (function (_super) {
__extends$3(ChildEffects, _super);
function ChildEffects(store, effects, injector) {
var _this = _super.call(this, store, effects, injector) || this;
_this.store = store;
return _this;
}
ChildEffects = __decorate$3([
Injectable(),
__param$2(1, Optional()),
__param$2(1, Inject(STORE_CHILD_EFFECTS)),
__metadata$3("design:paramtypes", [Store, Array, Injector])
], ChildEffects);
return ChildEffects;
}(Effects));

@@ -413,8 +452,2 @@ var __decorate$4 = (this && this.__decorate) || function (decorators, target, key, desc) {

this.actions$ = actions$;
this.routerSub = this.router
.events
.filter(function (event) { return event instanceof NavigationEnd; })
.subscribe(function (event) {
_this.store.dispatch(new RouterUrlUpdateAction(event.url));
});
this.navigateEffect = this.actions$

@@ -430,6 +463,13 @@ .ofType(RouterNavigateAction)

});
if (this.router) {
this.routerSub = this.router
.events
.filter(function (event) { return event instanceof NavigationEnd; })
.subscribe(function (event) {
_this.store.dispatch(new RouterUrlUpdateAction(event.url));
});
}
}
StoreRouterEffects.prototype.ngOnDestroy = function () {
if (this.routerSub && !this.routerSub.closed)
this.routerSub.unsubscribe();
this.routerSub && this.routerSub.unsubscribe();
};

@@ -499,2 +539,5 @@ __decorate$4([

function StoreModule(guard, store, initialReducers, effects) {
if (effects) {
effects.init();
}
var reducers = initialReducers.map(function (reducer) { return createReducer(reducer); });

@@ -520,6 +563,9 @@ var reducer = reduceReducers.apply(void 0, reducers);

StoreRouter,
Effects,
{
provide: Effects,
useClass: RootEffects
},
{
provide: STORE_INITIAL_STATE,
useValue: config.state || {}
useValue: config.state
},

@@ -533,6 +579,7 @@ {

StoreRouter,
StoreRouterEffects,
{
provide: STORE_EFFECTS,
useClass: StoreRouterEffects,
multi: true
multi: true,
useValue: [StoreRouterEffects]
},

@@ -547,4 +594,4 @@ {

provide: STORE_EFFECTS,
useValue: config.effects,
multi: true
multi: true,
useValue: config.effects
}

@@ -559,4 +606,7 @@ ])

providers: [
Effects,
{
provide: Effects,
useClass: ChildEffects
},
{
provide: STORE_INITIAL_REDUCERS,

@@ -568,5 +618,5 @@ multi: true,

{
provide: STORE_EFFECTS,
useValue: config.effects,
multi: true
provide: STORE_CHILD_EFFECTS,
multi: true,
useValue: config.effects
}

@@ -580,2 +630,3 @@ ])

__param(2, Inject(STORE_INITIAL_REDUCERS)),
__param(3, Optional()),
__metadata("design:paramtypes", [Object, Store, Array, Effects])

@@ -587,2 +638,2 @@ ], StoreModule);

export { STORE_FORROOT_GUARD, provideForRootGuard, StoreModule, StoreActions, compose, reduceReducers, createReducer, combineReducers, STORE_EFFECTS, Effect, getEffectsMetadata, Effects, select, StoreObservable, STORE_INITIAL_REDUCERS, STORE_INITIAL_STATE, StoreInitAction, StoreErrorAction, ReducerInitAction, Store, initialRouterState, RouterNavigateAction, RouterNavigateByUrlAction, RouterUrlUpdateAction, StoreRouterEffects, StoreRouter, routerReducer };
export { STORE_FORROOT_GUARD, provideForRootGuard, StoreModule, StoreActions, compose, reduceReducers, createReducer, combineReducers, STORE_EFFECTS, STORE_CHILD_EFFECTS, Effect, getEffectsMetadata, Effects, RootEffects, ChildEffects, select, StoreObservable, STORE_INITIAL_REDUCERS, STORE_INITIAL_STATE, StoreInitAction, StoreErrorAction, ReducerInitAction, Store, initialRouterState, RouterNavigateAction, RouterNavigateByUrlAction, RouterUrlUpdateAction, StoreRouterEffects, StoreRouter, routerReducer };

@@ -292,2 +292,12 @@ (function (global, factory) {

var __extends$3 = (this && this.__extends) || (function () {
var extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
return function (d, b) {
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
var __decorate$3 = (this && this.__decorate) || function (decorators, target, key, desc) {

@@ -307,2 +317,3 @@ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;

var STORE_EFFECTS = new _angular_core.OpaqueToken('store.effects');
var STORE_CHILD_EFFECTS = new _angular_core.OpaqueToken('store.child.effects');
function Effect() {

@@ -326,9 +337,13 @@ return function (target, propertyName) {

function Effects(store, effects, injector) {
var _this = this;
this.store = store;
this.effects = effects;
this.injector = injector;
this.effectSubs = [];
(effects || []).forEach(function (effectClasses) {
}
Effects.prototype.init = function () {
var _this = this;
(this.effects || []).forEach(function (effectClasses) {
if (Array.isArray(effectClasses)) {
effectClasses.forEach(function (effectClass) {
var effect = injector.get(effectClass);
var effect = _this.injector.get(effectClass);
if (effect) {

@@ -340,3 +355,3 @@ _this.addEffect(effect);

});
}
};
Effects.prototype.addEffect = function (effect) {

@@ -356,3 +371,12 @@ if (effect) {

};
Effects = __decorate$3([
return Effects;
}());
var RootEffects = (function (_super) {
__extends$3(RootEffects, _super);
function RootEffects(store, effects, injector) {
var _this = _super.call(this, store, effects, injector) || this;
_this.store = store;
return _this;
}
RootEffects = __decorate$3([
_angular_core.Injectable(),

@@ -362,5 +386,20 @@ __param$2(1, _angular_core.Optional()),

__metadata$3("design:paramtypes", [Store, Array, _angular_core.Injector])
], Effects);
return Effects;
}());
], RootEffects);
return RootEffects;
}(Effects));
var ChildEffects = (function (_super) {
__extends$3(ChildEffects, _super);
function ChildEffects(store, effects, injector) {
var _this = _super.call(this, store, effects, injector) || this;
_this.store = store;
return _this;
}
ChildEffects = __decorate$3([
_angular_core.Injectable(),
__param$2(1, _angular_core.Optional()),
__param$2(1, _angular_core.Inject(STORE_CHILD_EFFECTS)),
__metadata$3("design:paramtypes", [Store, Array, _angular_core.Injector])
], ChildEffects);
return ChildEffects;
}(Effects));

@@ -405,8 +444,2 @@ var __decorate$4 = (this && this.__decorate) || function (decorators, target, key, desc) {

this.actions$ = actions$;
this.routerSub = this.router
.events
.filter(function (event) { return event instanceof _angular_router.NavigationEnd; })
.subscribe(function (event) {
_this.store.dispatch(new RouterUrlUpdateAction(event.url));
});
this.navigateEffect = this.actions$

@@ -422,6 +455,13 @@ .ofType(RouterNavigateAction)

});
if (this.router) {
this.routerSub = this.router
.events
.filter(function (event) { return event instanceof _angular_router.NavigationEnd; })
.subscribe(function (event) {
_this.store.dispatch(new RouterUrlUpdateAction(event.url));
});
}
}
StoreRouterEffects.prototype.ngOnDestroy = function () {
if (this.routerSub && !this.routerSub.closed)
this.routerSub.unsubscribe();
this.routerSub && this.routerSub.unsubscribe();
};

@@ -491,2 +531,5 @@ __decorate$4([

function StoreModule(guard, store, initialReducers, effects) {
if (effects) {
effects.init();
}
var reducers = initialReducers.map(function (reducer) { return createReducer(reducer); });

@@ -512,6 +555,9 @@ var reducer = reduceReducers.apply(void 0, reducers);

StoreRouter,
Effects,
{
provide: Effects,
useClass: RootEffects
},
{
provide: STORE_INITIAL_STATE,
useValue: config.state || {}
useValue: config.state
},

@@ -525,6 +571,7 @@ {

StoreRouter,
StoreRouterEffects,
{
provide: STORE_EFFECTS,
useClass: StoreRouterEffects,
multi: true
multi: true,
useValue: [StoreRouterEffects]
},

@@ -539,4 +586,4 @@ {

provide: STORE_EFFECTS,
useValue: config.effects,
multi: true
multi: true,
useValue: config.effects
}

@@ -551,4 +598,7 @@ ])

providers: [
Effects,
{
provide: Effects,
useClass: ChildEffects
},
{
provide: STORE_INITIAL_REDUCERS,

@@ -560,5 +610,5 @@ multi: true,

{
provide: STORE_EFFECTS,
useValue: config.effects,
multi: true
provide: STORE_CHILD_EFFECTS,
multi: true,
useValue: config.effects
}

@@ -572,2 +622,3 @@ ])

__param(2, _angular_core.Inject(STORE_INITIAL_REDUCERS)),
__param(3, _angular_core.Optional()),
__metadata("design:paramtypes", [Object, Store, Array, Effects])

@@ -588,5 +639,8 @@ ], StoreModule);

exports.STORE_EFFECTS = STORE_EFFECTS;
exports.STORE_CHILD_EFFECTS = STORE_CHILD_EFFECTS;
exports.Effect = Effect;
exports.getEffectsMetadata = getEffectsMetadata;
exports.Effects = Effects;
exports.RootEffects = RootEffects;
exports.ChildEffects = ChildEffects;
exports.select = select;

@@ -593,0 +647,0 @@ exports.StoreObservable = StoreObservable;

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc