@jbt/ng-rx
Version:
Configurable ngrx
48 lines • 3.07 kB
JavaScript
;
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
Object.defineProperty(exports, "__esModule", { value: true });
var store_1 = require("@ngrx/store");
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_1.createSelector(acc, (/**
* @param {?} state
* @return {?}
*/
function (state) { return state[current]; })); }), store_1.createSelector((/**
* @param {?} state
* @return {?}
*/
function (state) { return state[slices[0]]; }), (/**
* @param {?} state
* @return {?}
*/
function (state) { return state; })));
return store_1.select(sel);
};
return Selector;
}());
exports.Selector = Selector;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0b3IuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AamJ0L25nLXJ4LyIsInNvdXJjZXMiOlsibGliL2ludGVybmFscy9zZWxlY3Rvci9zZWxlY3Rvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxxQ0FBdUU7QUFHdkU7SUFBQTtJQWlCQSxDQUFDOzs7OztJQWZpQixxQkFBWTs7OztJQUExQixVQUEyQixJQUFZOztZQUU3QixNQUFNLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUM7O1lBRXhCLEdBQUcsR0FBRyxNQUFNO2FBQ2IsS0FBSyxDQUFDLENBQUMsQ0FBQzthQUNSLE1BQU07Ozs7O1FBQ0gsVUFBQyxHQUFHLEVBQUUsT0FBTyxJQUFLLE9BQUEsc0JBQWMsQ0FBRSxHQUFHOzs7O1FBQUUsVUFBQSxLQUFLLElBQUksT0FBQSxLQUFLLENBQUMsT0FBTyxDQUFDLEVBQWQsQ0FBYyxFQUFDLEVBQTdDLENBQTZDLEdBQy9ELHNCQUFjOzs7O1FBQUUsVUFBQSxLQUFLLElBQUksT0FBQSxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQWhCLENBQWdCOzs7O1FBQUUsVUFBQSxLQUFLLElBQUksT0FBQSxLQUFLLEVBQUwsQ0FBSyxFQUFDLENBQzdEO1FBR0wsT0FBTyxjQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7SUFFdkIsQ0FBQztJQUNMLGVBQUM7QUFBRCxDQUFDLEFBakJELElBaUJDO0FBakJZLDRCQUFRIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTWVtb2l6ZWRTZWxlY3RvciwgY3JlYXRlU2VsZWN0b3IsIHNlbGVjdCB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcblxuZXhwb3J0IGNsYXNzIFNlbGVjdG9yIHtcblxuICAgIHB1YmxpYyBzdGF0aWMgc2VsZWN0QnlQYXRoKHBhdGg6IHN0cmluZyk6IChzb3VyY2UkOiBPYnNlcnZhYmxlPGFueT4pID0+IE9ic2VydmFibGU8YW55PiB7XG5cbiAgICAgICAgY29uc3Qgc2xpY2VzID0gcGF0aC5zcGxpdCgnLicpO1xuXG4gICAgICAgIGNvbnN0IHNlbCA9IHNsaWNlc1xuICAgICAgICAgICAgLnNsaWNlKDEpXG4gICAgICAgICAgICAucmVkdWNlKFxuICAgICAgICAgICAgICAgIChhY2MsIGN1cnJlbnQpID0+IGNyZWF0ZVNlbGVjdG9yKCBhY2MsIHN0YXRlID0+IHN0YXRlW2N1cnJlbnRdKSxcbiAgICAgICAgICAgICAgICBjcmVhdGVTZWxlY3Rvciggc3RhdGUgPT4gc3RhdGVbc2xpY2VzWzBdXSwgc3RhdGUgPT4gc3RhdGUpXG4gICAgICAgICAgICApO1xuXG5cbiAgICAgICAgcmV0dXJuIHNlbGVjdChzZWwpO1xuXG4gICAgfVxufVxuIl19