UNPKG

@jbt/ng-rx

Version:

Configurable ngrx

1,323 lines (1,207 loc) 43.5 kB
(function (global, factory) { typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('rxjs'), require('rxjs/operators'), require('@jbt/utils'), require('@ngrx/store'), require('@angular/core'), require('@ngrx/effects')) : typeof define === 'function' && define.amd ? define('@jbt/ng-rx', ['exports', 'rxjs', 'rxjs/operators', '@jbt/utils', '@ngrx/store', '@angular/core', '@ngrx/effects'], factory) : (global = global || self, factory((global.jbt = global.jbt || {}, global.jbt['ng-rx'] = {}), global.rxjs, global.rxjs.operators, global.utils, global.store, global.ng.core, global.effects$1)); }(this, (function (exports, rxjs$1, operators$1, utils, store, core, effects$1) { 'use strict'; rxjs$1 = rxjs$1 && rxjs$1.hasOwnProperty('default') ? rxjs$1['default'] : rxjs$1; operators$1 = operators$1 && operators$1.hasOwnProperty('default') ? operators$1['default'] : operators$1; utils = utils && utils.hasOwnProperty('default') ? utils['default'] : utils; store = store && store.hasOwnProperty('default') ? store['default'] : store; core = core && core.hasOwnProperty('default') ? core['default'] : core; effects$1 = effects$1 && effects$1.hasOwnProperty('default') ? effects$1['default'] : effects$1; var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {}; function commonjsRequire () { throw new Error('Dynamic requires are not currently supported by rollup-plugin-commonjs'); } function unwrapExports (x) { return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, 'default') ? x['default'] : x; } function createCommonjsModule(fn, module) { return module = { exports: {} }, fn(module, module.exports), module.exports; } function getCjsExportFromNamespace (n) { return n && n['default'] || n; } var effectType = createCommonjsModule(function (module, exports) { "use strict"; /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ Object.defineProperty(exports, "__esModule", { value: true }); /** @enum {string} */ var EFFECT_TYPE = { ACTION: 'action', SEQUENCE: 'sequence', PARALLEL: 'parallel', }; exports.EFFECT_TYPE = EFFECT_TYPE; }); var effectType$1 = unwrapExports(effectType); var effectType_1 = effectType.EFFECT_TYPE; var mergeHotStreamHandlerArray = createCommonjsModule(function (module, exports) { "use strict"; var __extends = (commonjsGlobal && commonjsGlobal.__extends) || (function () { var extendStatics = function (d, b) { 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 extendStatics(d, b); }; return function (d, b) { extendStatics(d, b); function __() { this.constructor = d; } d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); }; })(); /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ Object.defineProperty(exports, "__esModule", { value: true }); /** @type {?} */ var ERRORS = { HEADER: "\n MergeHotStreamHandlerArraySubscriber Error.\n\n ", NOT_A_FUNCTION: "\n Supplied handler ignored: It is not a function\n\n ", NOT_AN_OBSERVABLE: "\n Supplied handler ignored: It does not return an observable\n\n " }; var MergeHotStreamHandlerArraySubscriber = /** @class */ (function (_super) { __extends(MergeHotStreamHandlerArraySubscriber, _super); function MergeHotStreamHandlerArraySubscriber(sub, effects) { var _this = _super.call(this, sub) || this; _this._handlers = []; _this._handlers = effects || _this._handlers; return _this; } /** * @param {?} value * @return {?} */ MergeHotStreamHandlerArraySubscriber.prototype._next = /** * @param {?} value * @return {?} */ function (value) { var _this = this; /** @type {?} */ var inner$ = rxjs$1.merge(this._handlers .filter((/** * @param {?} handler * @return {?} */ function (handler) { /** @type {?} */ var condition = typeof handler === 'function'; if (!condition) { console.warn(ERRORS.HEADER + ERRORS.NOT_A_FUNCTION, handler); } return condition; })) .filter((/** * @param {?} handler * @return {?} */ function (handler) { /** @type {?} */ var condition = rxjs$1.isObservable(handler(value)); if (!condition) { console.warn(ERRORS.HEADER + ERRORS.NOT_AN_OBSERVABLE, handler); } return condition; })) .map((/** * @param {?} handler * @return {?} */ function (handler) { return handler(value); }))).pipe(operators$1.mergeAll()); inner$.subscribe({ next: (/** * @param {?} v * @return {?} */ function (v) { _this.destination.next(v); }) }); }; return MergeHotStreamHandlerArraySubscriber; }(rxjs$1.Subscriber)); if (false) { /** * @type {?} * @private */ MergeHotStreamHandlerArraySubscriber.prototype._handlers; } /** @type {?} */ exports.mergeHotStreamHandlerArray = (/** * @param {?} handlers * @return {?} */ function (handlers) { return (/** * @param {?} source * @return {?} */ function (source) { return source.lift({ call: /** * @param {?} sub * @param {?} s * @return {?} */ function (sub, s) { s.subscribe(new MergeHotStreamHandlerArraySubscriber(sub, handlers)); } }); }); }); }); var mergeHotStreamHandlerArray$1 = unwrapExports(mergeHotStreamHandlerArray); var mergeHotStreamHandlerArray_1 = mergeHotStreamHandlerArray.mergeHotStreamHandlerArray; var operators = createCommonjsModule(function (module, exports) { "use strict"; /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ Object.defineProperty(exports, "__esModule", { value: true }); exports.mergeHotStreamHandlerArray = mergeHotStreamHandlerArray.mergeHotStreamHandlerArray; }); var index = unwrapExports(operators); var operators_1 = operators.mergeHotStreamHandlerArray; var rxjs = createCommonjsModule(function (module, exports) { "use strict"; /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ Object.defineProperty(exports, "__esModule", { value: true }); exports.mergeHotStreamHandlerArray = operators.mergeHotStreamHandlerArray; }); var index$1 = unwrapExports(rxjs); var rxjs_1 = rxjs.mergeHotStreamHandlerArray; var effectsConfigurator = createCommonjsModule(function (module, exports) { "use strict"; /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ Object.defineProperty(exports, "__esModule", { value: true }); /** * *************************************************** * * EffectsConfigurator * * **************************************************** */ var /** * *************************************************** * * EffectsConfigurator * * **************************************************** */ EffectsConfigurator = /** @class */ (function () { function EffectsConfigurator(effectsRepository, actions$, store) { var _this = this; var _a; this._setupMethodMap = (_a = {}, _a[effectType.EFFECT_TYPE.SEQUENCE] = this._setUpSequentialEffect, _a[effectType.EFFECT_TYPE.PARALLEL] = this._setUpParallelEffect, _a[effectType.EFFECT_TYPE.ACTION] = this._setUpActionEffect, _a); this._effects = []; this._effectsRepository = effectsRepository; this._effect = actions$.pipe(rxjs.mergeHotStreamHandlerArray(this._effects), operators$1.filter((/** * @param {?} action * @return {?} */ function (action) { return _this._isAction(action); }))); this._effect.subscribe((/** * @param {?} action * @return {?} */ function (action) { store.dispatch(action); })); } /** * @param {?=} effectsConfig * @return {?} */ EffectsConfigurator.prototype.addEffects = /** * @param {?=} effectsConfig * @return {?} */ function (effectsConfig) { var _this = this; if (effectsConfig === void 0) { effectsConfig = []; } effectsConfig.forEach((/** * @param {?} config * @return {?} */ function (config) { /** @type {?} */ var method = _this._setupMethodMap[config.type].call(_this, config); _this._effects.push(method); })); }; /** * @private * @param {?} action * @return {?} */ EffectsConfigurator.prototype._isAction = /** * @private * @param {?} action * @return {?} */ function (action) { return action && action.type && (typeof action.type === 'string'); }; /** * @private * @param {?} config * @return {?} */ EffectsConfigurator.prototype._setUpSequentialEffect = /** * @private * @param {?} config * @return {?} */ function (config) { var _this = this; return (/** * @param {?} action * @return {?} */ function (action) { return rxjs$1.of(action).pipe(operators$1.filter((/** * @param {?} action * @return {?} */ function (action) { return _this._filterAction(action, config); })), operators$1.concatMap((/** * @param {?} action * @return {?} */ function (action) { return config.handlers.map((/** * @param {?} handler * @return {?} */ function (handler) { /** @type {?} */ var handlerFn = _this._getHandler(handler, config); return handlerFn(action, config); })); })), operators$1.concatAll()); }); }; /** * @private * @param {?} config * @return {?} */ EffectsConfigurator.prototype._setUpParallelEffect = /** * @private * @param {?} config * @return {?} */ function (config) { var _this = this; return (/** * @param {?} action * @return {?} */ function (action) { return rxjs$1.of(action).pipe(operators$1.filter((/** * @param {?} action * @return {?} */ function (action) { return _this._filterAction(action, config); })), operators$1.mergeMap((/** * @param {?} action * @return {?} */ function (action) { return config.handlers.map((/** * @param {?} handler * @return {?} */ function (handler) { /** @type {?} */ var handlerFn = _this._getHandler(handler, config); return handlerFn(action, config); })); })), operators$1.mergeAll()); }); }; /** * @private * @param {?} config * @return {?} */ EffectsConfigurator.prototype._setUpActionEffect = /** * @private * @param {?} config * @return {?} */ function (config) { var _this = this; return (/** * @param {?} action * @return {?} */ function (action) { return rxjs$1.of(action).pipe(operators$1.filter((/** * @param {?} action * @return {?} */ function (action) { return _this._filterAction(action, config); })), operators$1.map((/** * @param {?} action * @return {?} */ function (action) { return { type: config.result, payload: action['payload'] }; }))); }); }; /** * @private * @param {?} action * @param {?} effectsConfig * @return {?} */ EffectsConfigurator.prototype._filterAction = /** * @private * @param {?} action * @param {?} effectsConfig * @return {?} */ function (action, effectsConfig) { /** @type {?} */ var isCause = effectsConfig.causes.indexOf(action.type) > -1; /** @type {?} */ var isWildcard = effectsConfig.causes.indexOf('*') > -1; return isWildcard || isCause; }; /** * @private * @param {?} handler * @param {?} config * @return {?} */ EffectsConfigurator.prototype._getHandler = /** * @private * @param {?} handler * @param {?} config * @return {?} */ function (handler, config) { return (typeof handler === 'function') ? handler : this._effectsRepository.get(handler); }; return EffectsConfigurator; }()); exports.EffectsConfigurator = EffectsConfigurator; if (false) { /** * @type {?} * @private */ EffectsConfigurator.prototype._setupMethodMap; /** * @type {?} * @private */ EffectsConfigurator.prototype._effectsRepository; /** * @type {?} * @private */ EffectsConfigurator.prototype._effect; /** * @type {?} * @private */ EffectsConfigurator.prototype._effects; } }); var effectsConfigurator$1 = unwrapExports(effectsConfigurator); var effectsConfigurator_1 = effectsConfigurator.EffectsConfigurator; var effectsRepository = createCommonjsModule(function (module, exports) { "use strict"; var __extends = (commonjsGlobal && commonjsGlobal.__extends) || (function () { var extendStatics = function (d, b) { 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 extendStatics(d, b); }; return function (d, b) { extendStatics(d, b); function __() { this.constructor = d; } d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); }; })(); /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ Object.defineProperty(exports, "__esModule", { value: true }); var EffectsRepository = /** @class */ (function (_super) { __extends(EffectsRepository, _super); function EffectsRepository() { var _this = _super.call(this, { id: 'EffectsRepository', fallbackKey: 'default' }) || this; _this.addByMap({ default: (/** * @return {?} */ function () { return rxjs$1.of({ type: 'VOID' }); }) }); return _this; } return EffectsRepository; }(utils.Repository)); exports.EffectsRepository = EffectsRepository; }); var effectsRepository$1 = unwrapExports(effectsRepository); var effectsRepository_1 = effectsRepository.EffectsRepository; var effects = createCommonjsModule(function (module, exports) { "use strict"; /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ Object.defineProperty(exports, "__esModule", { value: true }); exports.EFFECT_TYPE = effectType.EFFECT_TYPE; exports.EffectsConfigurator = effectsConfigurator.EffectsConfigurator; exports.EffectsRepository = effectsRepository.EffectsRepository; }); var index$2 = unwrapExports(effects); var effects_1 = effects.EFFECT_TYPE; var effects_2 = effects.EffectsConfigurator; var effects_3 = effects.EffectsRepository; var reducerConfiguration = createCommonjsModule(function (module, exports) { "use strict"; /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ Object.defineProperty(exports, "__esModule", { value: true }); /** * @record */ function ReducerSingleConfiguration() { } exports.ReducerSingleConfiguration = ReducerSingleConfiguration; if (false) { /** @type {?} */ ReducerSingleConfiguration.prototype.id; /** @type {?|undefined} */ ReducerSingleConfiguration.prototype.initialState; /** @type {?|undefined} */ ReducerSingleConfiguration.prototype.handlers; } /** * @record */ function ReducerGroupConfiguration() { } exports.ReducerGroupConfiguration = ReducerGroupConfiguration; if (false) { /** @type {?} */ ReducerGroupConfiguration.prototype.id; /** @type {?} */ ReducerGroupConfiguration.prototype.children; } }); var reducerConfiguration$1 = unwrapExports(reducerConfiguration); var reducerConfiguration_1 = reducerConfiguration.ReducerSingleConfiguration; var reducerConfiguration_2 = reducerConfiguration.ReducerGroupConfiguration; var reducersRepository = createCommonjsModule(function (module, exports) { "use strict"; var __extends = (commonjsGlobal && commonjsGlobal.__extends) || (function () { var extendStatics = function (d, b) { 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 extendStatics(d, b); }; return function (d, b) { extendStatics(d, b); function __() { this.constructor = d; } d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); }; })(); /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ Object.defineProperty(exports, "__esModule", { value: true }); var ReducersRepository = /** @class */ (function (_super) { __extends(ReducersRepository, _super); function ReducersRepository() { var _this = _super.call(this, { id: 'ReducersRepository', fallbackKey: 'default' }) || this; _this.addByMap({ default: (/** * @param {?} state * @return {?} */ function (state) { return state; }) }); return _this; } return ReducersRepository; }(utils.Repository)); exports.ReducersRepository = ReducersRepository; }); var reducersRepository$1 = unwrapExports(reducersRepository); var reducersRepository_1 = reducersRepository.ReducersRepository; var reducersConfigurator = createCommonjsModule(function (module, exports) { "use strict"; /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ Object.defineProperty(exports, "__esModule", { value: true }); var ReducersConfigurator = /** @class */ (function () { function ReducersConfigurator(store, reducersRepository) { this._config = {}; this._store = store; this._reducersRepository = reducersRepository; } /** * @param {?} config * @return {?} */ ReducersConfigurator.prototype.addReducers = /** * @param {?} config * @return {?} */ function (config) { var _this = this; this._config[config.id] = (this._config[config.id]) ? utils.ObjectUtils.mergeTrees(this._config[config.id], config) : config; Object.keys(this._config).forEach((/** * @param {?} key * @return {?} */ function (key) { return _this._addReducer(_this._config[key]); })); }; /** * @private * @param {?} reducerConfig * @return {?} */ ReducersConfigurator.prototype._addReducer = /** * @private * @param {?} reducerConfig * @return {?} */ function (reducerConfig) { this._store.addReducer(reducerConfig.id, this._createReducerFn(reducerConfig)); }; /** * @private * @param {?} config * @return {?} */ ReducersConfigurator.prototype._createReducerFn = /** * @private * @param {?} config * @return {?} */ function (config) { var _this = this; return (config.children) ? this._createReducersByConfig(config.children) : (/** * @param {?} state * @param {?} action * @return {?} */ function (state, action) { return _this._mainReducer(state, action, config); }); }; /** * @private * @param {?=} config * @return {?} */ ReducersConfigurator.prototype._createReducersByConfig = /** * @private * @param {?=} config * @return {?} */ function (config) { if (config === void 0) { config = []; } /** @type {?} */ var self = this; return store.combineReducers(config.reduce((/** * @param {?} reducers * @param {?} item * @return {?} */ function (reducers, item) { reducers[item.id] = self._createReducerFn(item); return reducers; }), {})); }; /** * @param {?} state * @param {?} action * @param {?} config * @return {?} */ ReducersConfigurator.prototype._mainReducer = /** * @param {?} state * @param {?} action * @param {?} config * @return {?} */ function (state, action, config) { if (!state) { return config.initialState; } config.handlers = config.handlers || {}; /** @type {?} */ var handler = this._getReducerHandlers(config.handlers[action.type]); return handler(state, action); }; /** * @private * @param {?} handler * @return {?} */ ReducersConfigurator.prototype._getReducerHandlers = /** * @private * @param {?} handler * @return {?} */ function (handler) { return (typeof handler === 'function') ? handler : this._reducersRepository.get(handler); }; return ReducersConfigurator; }()); exports.ReducersConfigurator = ReducersConfigurator; if (false) { /** * @type {?} * @private */ ReducersConfigurator.prototype._store; /** * @type {?} * @private */ ReducersConfigurator.prototype._reducersRepository; /** * @type {?} * @private */ ReducersConfigurator.prototype._config; } }); var reducersConfigurator$1 = unwrapExports(reducersConfigurator); var reducersConfigurator_1 = reducersConfigurator.ReducersConfigurator; var reducerHandlers = createCommonjsModule(function (module, exports) { "use strict"; var __assign = (commonjsGlobal && commonjsGlobal.__assign) || function () { __assign = Object.assign || function(t) { for (var s, i = 1, n = arguments.length; i < n; i++) { s = arguments[i]; for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p]; } return t; }; return __assign.apply(this, arguments); }; /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ Object.defineProperty(exports, "__esModule", { value: true }); var DefaultReducerHandlers = /** @class */ (function () { function DefaultReducerHandlers() { } /** * @param {?} state * @param {?} action * @return {?} */ DefaultReducerHandlers.set = /** * @param {?} state * @param {?} action * @return {?} */ function (state, action) { return action.payload; }; /** * @param {?} state * @param {?} action * @return {?} */ DefaultReducerHandlers.override = /** * @param {?} state * @param {?} action * @return {?} */ function (state, action) { return __assign({}, state, action.payload); }; /** * @param {?} state * @param {?} action * @return {?} */ DefaultReducerHandlers.noop = /** * @param {?} state * @param {?} action * @return {?} */ function (state, action) { return state; }; return DefaultReducerHandlers; }()); exports.DefaultReducerHandlers = DefaultReducerHandlers; }); var reducerHandlers$1 = unwrapExports(reducerHandlers); var reducerHandlers_1 = reducerHandlers.DefaultReducerHandlers; var reducers = createCommonjsModule(function (module, exports) { "use strict"; /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ Object.defineProperty(exports, "__esModule", { value: true }); exports.ReducersRepository = reducersRepository.ReducersRepository; exports.ReducersConfigurator = reducersConfigurator.ReducersConfigurator; exports.DefaultReducerHandlers = reducerHandlers.DefaultReducerHandlers; }); var index$3 = unwrapExports(reducers); var reducers_1 = reducers.ReducersRepository; var reducers_2 = reducers.ReducersConfigurator; var reducers_3 = reducers.DefaultReducerHandlers; var selector = createCommonjsModule(function (module, exports) { "use strict"; /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ Object.defineProperty(exports, "__esModule", { value: true }); var Selector = /** @class */ (function () { function Selector() { } /** * @param {?} path * @return {?} */ Selector.selectByPath = /** * @param {?} path * @return {?} */ function (path) { /** @type {?} */ var slices = path.split('.'); /** @type {?} */ var sel = slices .slice(1) .reduce((/** * @param {?} acc * @param {?} current * @return {?} */ function (acc, current) { return store.createSelector(acc, (/** * @param {?} state * @return {?} */ function (state) { return state[current]; })); }), store.createSelector((/** * @param {?} state * @return {?} */ function (state) { return state[slices[0]]; }), (/** * @param {?} state * @return {?} */ function (state) { return state; }))); return store.select(sel); }; return Selector; }()); exports.Selector = Selector; }); var selector$1 = unwrapExports(selector); var selector_1 = selector.Selector; var internals = createCommonjsModule(function (module, exports) { "use strict"; /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ Object.defineProperty(exports, "__esModule", { value: true }); exports.EffectsConfigurator = effects.EffectsConfigurator; exports.EffectsRepository = effects.EffectsRepository; exports.EFFECT_TYPE = effects.EFFECT_TYPE; exports.ReducersConfigurator = reducers.ReducersConfigurator; exports.ReducersRepository = reducers.ReducersRepository; exports.Selector = selector.Selector; }); var index$4 = unwrapExports(internals); var internals_1 = internals.EffectsConfigurator; var internals_2 = internals.EffectsRepository; var internals_3 = internals.EFFECT_TYPE; var internals_4 = internals.ReducersConfigurator; var internals_5 = internals.ReducersRepository; var internals_6 = internals.Selector; var state = createCommonjsModule(function (module, exports) { "use strict"; /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ Object.defineProperty(exports, "__esModule", { value: true }); var State = /** @class */ (function () { function State(store, reducersConfigurator, effectsConfigurator, reducersRepository, effectsRepository) { this._store = store; this._reducersConfigurator = reducersConfigurator; this._effectsConfigurator = effectsConfigurator; this._reducersRepository = reducersRepository; this._effectsRepository = effectsRepository; } /** * @param {?} config * @return {?} */ State.prototype.configure = /** * @param {?} config * @return {?} */ function (config) { if (config.state) { this.configureReducers(config.state); } if (config.effects) { this.configureEffects(config.effects); } }; /** * @param {?} config * @return {?} */ State.prototype.configureReducers = /** * @param {?} config * @return {?} */ function (config) { this._reducersConfigurator.addReducers(config); }; /** * @param {?} config * @return {?} */ State.prototype.configureEffects = /** * @param {?} config * @return {?} */ function (config) { this._effectsConfigurator.addEffects(config); }; /** * @param {?} reducersMap * @return {?} */ State.prototype.addReducerHandlers = /** * @param {?} reducersMap * @return {?} */ function (reducersMap) { this._reducersRepository.addByMap(reducersMap); }; /** * @param {?} effectsMap * @return {?} */ State.prototype.addEffectHandlers = /** * @param {?} effectsMap * @return {?} */ function (effectsMap) { this._effectsRepository.addByMap(effectsMap); }; /** * @param {?} type * @param {?=} payload * @return {?} */ State.prototype.dispatch = /** * @param {?} type * @param {?=} payload * @return {?} */ function (type, payload) { this._store.dispatch({ type: type, payload: payload }); }; /** * @param {?} path * @return {?} */ State.prototype.select = /** * @param {?} path * @return {?} */ function (path) { return this._store.pipe(internals.Selector.selectByPath(path)); }; return State; }()); exports.State = State; if (false) { /** * @type {?} * @private */ State.prototype._store; /** * @type {?} * @private */ State.prototype._reducersConfigurator; /** * @type {?} * @private */ State.prototype._reducersRepository; /** * @type {?} * @private */ State.prototype._effectsConfigurator; /** * @type {?} * @private */ State.prototype._effectsRepository; } }); var state$1 = unwrapExports(state); var state_1 = state.State; var internals_module = createCommonjsModule(function (module, exports) { "use strict"; /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ Object.defineProperty(exports, "__esModule", { value: true }); var ProviderFactory = /** @class */ (function () { function ProviderFactory() { } /** * @param {?} store * @param {?} reducersRepository * @return {?} */ ProviderFactory.createReducersConfigurator = /** * @param {?} store * @param {?} reducersRepository * @return {?} */ function (store, reducersRepository) { return new reducers.ReducersConfigurator(store, reducersRepository); }; /** * @param {?} effectsRepository * @param {?} actions$ * @param {?} store * @return {?} */ ProviderFactory.createEffectsConfigurator = /** * @param {?} effectsRepository * @param {?} actions$ * @param {?} store * @return {?} */ function (effectsRepository, actions$, store) { return new effects.EffectsConfigurator(effectsRepository, actions$, store); }; return ProviderFactory; }()); exports.ProviderFactory = ProviderFactory; var InternalsModule = /** @class */ (function () { function InternalsModule() { } InternalsModule.decorators = [ { type: core.NgModule, args: [{ imports: [ store.StoreModule.forRoot({}), effects$1.EffectsModule.forRoot([]) ], providers: [{ provide: reducers.ReducersConfigurator, useFactory: ProviderFactory.createReducersConfigurator, deps: [ store.Store, reducers.ReducersRepository ] }, { provide: effects.EffectsConfigurator, useFactory: ProviderFactory.createEffectsConfigurator, deps: [ effects.EffectsRepository, effects$1.Actions, store.Store, effects$1.EffectSources, ] }, effects.EffectsRepository, reducers.ReducersRepository, ], exports: [ store.StoreModule ] },] } ]; return InternalsModule; }()); exports.InternalsModule = InternalsModule; }); var internals_module$1 = unwrapExports(internals_module); var internals_module_1 = internals_module.ProviderFactory; var internals_module_2 = internals_module.InternalsModule; var state_module = createCommonjsModule(function (module, exports) { "use strict"; /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ Object.defineProperty(exports, "__esModule", { value: true }); /** * @param {?} store * @param {?} reducer * @param {?} effects * @param {?} reducersRepository * @param {?} effectsRepository * @return {?} */ function createState(store, reducer, effects, reducersRepository, effectsRepository) { return new state.State(store, reducer, effects, reducersRepository, effectsRepository); } exports.createState = createState; var StateModule = /** @class */ (function () { function StateModule() { } /** * @return {?} */ StateModule.forRoot = /** * @return {?} */ function () { return { ngModule: StateModule, providers: [{ provide: state.State, useFactory: createState, deps: [ store.Store, internals.ReducersConfigurator, internals.EffectsConfigurator, internals.ReducersRepository, internals.EffectsRepository ] }] }; }; /** * @return {?} */ StateModule.forChild = /** * @return {?} */ function () { return { ngModule: StateModule, providers: [] }; }; StateModule.decorators = [ { type: core.NgModule, args: [{ imports: [internals_module.InternalsModule], },] } ]; return StateModule; }()); exports.StateModule = StateModule; }); var state_module$1 = unwrapExports(state_module); var state_module_1 = state_module.createState; var state_module_2 = state_module.StateModule; var lib = createCommonjsModule(function (module, exports) { "use strict"; /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ Object.defineProperty(exports, "__esModule", { value: true }); exports.State = state.State; exports.StateModule = state_module.StateModule; exports.EFFECT_TYPE = internals.EFFECT_TYPE; }); var index$5 = unwrapExports(lib); var lib_1 = lib.State; var lib_2 = lib.StateModule; var lib_3 = lib.EFFECT_TYPE; var esm5 = createCommonjsModule(function (module, exports) { "use strict"; /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ Object.defineProperty(exports, "__esModule", { value: true }); /* * Public API Surface of ng-rx */ exports.State = lib.State; exports.StateModule = lib.StateModule; exports.EFFECT_TYPE = lib.EFFECT_TYPE; }); var index$6 = unwrapExports(esm5); var esm5_1 = esm5.State; var esm5_2 = esm5.StateModule; var esm5_3 = esm5.EFFECT_TYPE; var jbtNgRx = createCommonjsModule(function (module, exports) { "use strict"; /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ Object.defineProperty(exports, "__esModule", { value: true }); /** * Generated bundle index. Do not edit. */ exports.State = esm5.State; exports.StateModule = esm5.StateModule; exports.EFFECT_TYPE = esm5.EFFECT_TYPE; exports.ɵb = effectsConfigurator.EffectsConfigurator; exports.ɵc = effectsRepository.EffectsRepository; exports.ɵg = internals_module.InternalsModule; exports.ɵf = internals_module.ProviderFactory; exports.ɵe = reducersConfigurator.ReducersConfigurator; exports.ɵd = reducersRepository.ReducersRepository; exports.ɵa = state_module.createState; }); var jbtNgRx$1 = unwrapExports(jbtNgRx); var jbtNgRx_1 = jbtNgRx.State; var jbtNgRx_2 = jbtNgRx.StateModule; var jbtNgRx_3 = jbtNgRx.EFFECT_TYPE; exports.EFFECT_TYPE = jbtNgRx_3; exports.State = jbtNgRx_1; exports.StateModule = jbtNgRx_2; exports.default = jbtNgRx$1; Object.defineProperty(exports, '__esModule', { value: true }); }))); //# sourceMappingURL=jbt-ng-rx.umd.js.map