Press n or j to go to the next uncovered block, b, p or k for the previous block.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 | 10x 10x 10x 10x 10x 36x 10x 10x 8x 11x 11x 7x 7x 2x 2x 4x 4x | import { EntityState, createEntityAdapter } from '@ngrx/entity'; import { createReducer, on } from '@ngrx/store'; import { HttpError } from 'ish-core/models/http-error/http-error.model'; import { setErrorOn, setLoadingOn, unsetLoadingAndErrorOn } from 'ish-core/utils/ngrx-creators'; import { Wishlist } from '../../models/wishlist/wishlist.model'; import { addProductToWishlistSuccess, createWishlist, createWishlistFail, createWishlistSuccess, deleteWishlist, deleteWishlistFail, deleteWishlistSuccess, loadWishlists, loadWishlistsFail, loadWishlistsSuccess, moveItemToWishlist, removeItemFromWishlist, removeItemFromWishlistSuccess, selectWishlist, updateWishlist, updateWishlistFail, updateWishlistSuccess, } from './wishlist.actions'; export interface WishlistState extends EntityState<Wishlist> { loading: boolean; selected: string; error: HttpError; } export const wishlistsAdapter = createEntityAdapter<Wishlist>({ selectId: wishlist => wishlist.id, }); export const initialState: WishlistState = wishlistsAdapter.getInitialState({ loading: false, selected: undefined, error: undefined, }); export const wishlistReducer = createReducer( initialState, setLoadingOn( loadWishlists, createWishlist, deleteWishlist, updateWishlist, removeItemFromWishlist, moveItemToWishlist ), setErrorOn(loadWishlistsFail, deleteWishlistFail, createWishlistFail, updateWishlistFail), unsetLoadingAndErrorOn( updateWishlistSuccess, addProductToWishlistSuccess, removeItemFromWishlistSuccess, createWishlistSuccess, loadWishlistsSuccess, deleteWishlistSuccess ), on( loadWishlistsFail, deleteWishlistFail, createWishlistFail, updateWishlistFail, (state: WishlistState): WishlistState => ({ ...state, selected: undefined as string, }) ), on(loadWishlistsSuccess, (state: WishlistState, action) => { const { wishlists } = action.payload; return wishlistsAdapter.setAll(wishlists, state); }), on( updateWishlistSuccess, addProductToWishlistSuccess, removeItemFromWishlistSuccess, createWishlistSuccess, (state, action) => { const { wishlist } = action.payload; return wishlistsAdapter.upsertOne(wishlist, state); } ), on(deleteWishlistSuccess, (state, action) => { const { wishlistId } = action.payload; return wishlistsAdapter.removeOne(wishlistId, state); }), on(selectWishlist, (state, action): WishlistState => { const { id } = action.payload; return { ...state, selected: id, }; }) ); |