UNPKG

ngrx-run

Version:

Return side-effects as data from your NgRx reducers

21 lines 4.33 kB
export function isActionOf(action, actions) { return Object.values(actions) .map((a) => a.type) .includes(action.type); } export function childReducer(state, key, action, reducer) { return Object.assign(Object.assign({}, state), { [key]: reducer(state[key], action) }); } export function tokenized(actionCreator, token) { return ((p) => Object.assign(actionCreator(p), { token })); } export function hasToken(maybeTokenized, token) { return isTokenized(maybeTokenized) && maybeTokenized.token === token; } export function createToken(token) { return token; } function isTokenized(maybeTokenized) { return maybeTokenized.token != null; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0cmEtdXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9tb2R1bGVzL2xpYi9zcmMvZXh0cmEtdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBT0EsTUFBTSxVQUFVLFVBQVUsQ0FDeEIsTUFBYyxFQUNkLE9BQVU7SUFFVixPQUFPLE1BQU0sQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDO1NBQzFCLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztTQUNsQixRQUFRLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO0FBQzNCLENBQUM7QUFFRCxNQUFNLFVBQVUsWUFBWSxDQUMxQixLQUFRLEVBQ1IsR0FBTSxFQUNOLE1BQVMsRUFDVCxPQUEwQztJQUUxQyx1Q0FDSyxLQUFLLEtBQ1IsQ0FBQyxHQUFHLENBQUMsRUFBRSxPQUFPLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxFQUFFLE1BQU0sQ0FBQyxJQUNsQztBQUNKLENBQUM7QUFJRCxNQUFNLFVBQVUsU0FBUyxDQUN2QixhQUFpRSxFQUNqRSxLQUFlO0lBRWYsT0FBTyxDQUFDLENBQUMsQ0FBSSxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFDLEtBQUssRUFBQyxDQUFDLENBQVEsQ0FBQztBQUNyRSxDQUFDO0FBRUQsTUFBTSxVQUFVLFFBQVEsQ0FBSSxjQUFzQixFQUFFLEtBQWU7SUFDakUsT0FBTyxXQUFXLENBQUMsY0FBYyxDQUFDLElBQUksY0FBYyxDQUFDLEtBQUssS0FBSyxLQUFLLENBQUM7QUFDdkUsQ0FBQztBQUVELE1BQU0sVUFBVSxXQUFXLENBQUksS0FBYTtJQUMxQyxPQUFPLEtBQWlCLENBQUM7QUFDM0IsQ0FBQztBQUlELFNBQVMsV0FBVyxDQUFDLGNBQW1CO0lBQ3RDLE9BQU8sY0FBYyxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUM7QUFDdEMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFjdGlvbiwgQWN0aW9uQ3JlYXRvciB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcbmltcG9ydCB7IFJlZHVjZXJSZXN1bHQgfSBmcm9tICcuL3JlZHVjZXInO1xuXG5leHBvcnQgdHlwZSBBY3Rpb25zT2Y8VCBleHRlbmRzIHsgW2tleTogc3RyaW5nXTogKC4uLmFyZ3M6IGFueSkgPT4gYW55IH0+ID0gUmV0dXJuVHlwZTxcbiAgVFtrZXlvZiBUXVxuPjtcblxuZXhwb3J0IGZ1bmN0aW9uIGlzQWN0aW9uT2Y8VCBleHRlbmRzIHsgW2tleTogc3RyaW5nXTogQWN0aW9uQ3JlYXRvciB9PihcbiAgYWN0aW9uOiBBY3Rpb24sXG4gIGFjdGlvbnM6IFRcbik6IGFjdGlvbiBpcyBBY3Rpb25zT2Y8VD4gJiBBY3Rpb24ge1xuICByZXR1cm4gT2JqZWN0LnZhbHVlcyhhY3Rpb25zKVxuICAgIC5tYXAoKGEpID0+IGEudHlwZSlcbiAgICAuaW5jbHVkZXMoYWN0aW9uLnR5cGUpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gY2hpbGRSZWR1Y2VyPFMsIEsgZXh0ZW5kcyBrZXlvZiBTLCBBIGV4dGVuZHMgQWN0aW9uPihcbiAgc3RhdGU6IFMsXG4gIGtleTogSyxcbiAgYWN0aW9uOiBBLFxuICByZWR1Y2VyOiBJbml0aWFsaXplZEFjdGlvblJlZHVjZXI8U1tLXSwgQT5cbik6IFMge1xuICByZXR1cm4ge1xuICAgIC4uLnN0YXRlLFxuICAgIFtrZXldOiByZWR1Y2VyKHN0YXRlW2tleV0sIGFjdGlvbilcbiAgfTtcbn1cblxudHlwZSBJbml0aWFsaXplZEFjdGlvblJlZHVjZXI8VCwgQT4gPSAoc3RhdGU6IFQsIGFjdGlvbjogQSkgPT4gUmVkdWNlclJlc3VsdDxUPjtcblxuZXhwb3J0IGZ1bmN0aW9uIHRva2VuaXplZDxULCBLIGV4dGVuZHMgc3RyaW5nLCBQIGV4dGVuZHMgb2JqZWN0PihcbiAgYWN0aW9uQ3JlYXRvcjogQWN0aW9uQ3JlYXRvcjxLLCAocHJvcHM6IFApID0+IFAgJiBUeXBlZEFjdGlvbjxLPj4sXG4gIHRva2VuOiBUb2tlbjxQPlxuKTogQWN0aW9uQ3JlYXRvcjxLLCAocHJvcHM6IFApID0+IFAgJiBUeXBlZEFjdGlvbjxLPj4gJiBUb2tlbml6ZWQ8VCwgUCwgSz4ge1xuICByZXR1cm4gKChwOiBQKSA9PiBPYmplY3QuYXNzaWduKGFjdGlvbkNyZWF0b3IocCksIHt0b2tlbn0pKSBhcyBhbnk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBoYXNUb2tlbjxQPihtYXliZVRva2VuaXplZDogQWN0aW9uLCB0b2tlbjogVG9rZW48UD4pOiBtYXliZVRva2VuaXplZCBpcyBBY3Rpb24gJiBQIHtcbiAgcmV0dXJuIGlzVG9rZW5pemVkKG1heWJlVG9rZW5pemVkKSAmJiBtYXliZVRva2VuaXplZC50b2tlbiA9PT0gdG9rZW47XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVUb2tlbjxVPih0b2tlbjogc3RyaW5nKTogVG9rZW48VT4ge1xuICByZXR1cm4gdG9rZW4gYXMgVG9rZW48VT47XG59XG5cbnR5cGUgVG9rZW48VT4gPSBzdHJpbmcgJiBVO1xuXG5mdW5jdGlvbiBpc1Rva2VuaXplZChtYXliZVRva2VuaXplZDogYW55KTogbWF5YmVUb2tlbml6ZWQgaXMgVG9rZW5pemVkPGFueSwgYW55LCBhbnk+IHtcbiAgcmV0dXJuIG1heWJlVG9rZW5pemVkLnRva2VuICE9IG51bGw7XG59XG5cbnR5cGUgVG9rZW5pemVkPFQsIFAsIEsgZXh0ZW5kcyBzdHJpbmc+ID0geyB0b2tlbjogVCB9ICYgUHJvcHNGbjxQLCBLPjtcbnR5cGUgUHJvcHNGbjxQLCBLIGV4dGVuZHMgc3RyaW5nPiA9IChwcm9wczogUCkgPT4gUCAmIFR5cGVkQWN0aW9uPEs+O1xuXG5pbnRlcmZhY2UgVHlwZWRBY3Rpb248VCBleHRlbmRzIHN0cmluZz4gZXh0ZW5kcyBBY3Rpb24ge1xuICByZWFkb25seSB0eXBlOiBUO1xufVxuIl19