From 9fb010e48c2c57e669ee4833044a7f413e3c61cc Mon Sep 17 00:00:00 2001 From: Mike Ryan Date: Sat, 28 Mar 2020 19:57:25 -0500 Subject: [PATCH] 05-reduce-api-actions --- src/app/shared/state/books.reducer.ts | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/src/app/shared/state/books.reducer.ts b/src/app/shared/state/books.reducer.ts index fda8bdc..c01615f 100644 --- a/src/app/shared/state/books.reducer.ts +++ b/src/app/shared/state/books.reducer.ts @@ -33,6 +33,30 @@ export const booksReducer = createReducer( ...state, activeBookId: action.bookId }; + }), + on(BooksApiActions.booksLoaded, (state, action) => { + return { + ...state, + collection: action.books + }; + }), + on(BooksApiActions.bookCreated, (state, action) => { + return { + collection: createBook(state.collection, action.book), + activeBookId: null + }; + }), + on(BooksApiActions.bookUpdated, (state, action) => { + return { + collection: updateBook(state.collection, action.book), + activeBookId: null + }; + }), + on(BooksApiActions.bookDeleted, (state, action) => { + return { + ...state, + collection: deleteBook(state.collection, action.bookId) + }; }) );