1 |
|
2 |
|
3 | import type {
|
4 | ItemsState,
|
5 | PagesState,
|
6 |
|
7 | Action,
|
8 | } from "./types";
|
9 |
|
10 | import {
|
11 | REQUEST_PAGE,
|
12 | RECEIVE_PAGE,
|
13 | RESET_VIEW,
|
14 | CHANGE_VIEW,
|
15 | CLEAR_DATA,
|
16 | FETCH_CURRENT_COMPANY_INFO_PENDING,
|
17 |
|
18 | FETCH_ITEM_DATA_PENDING,
|
19 | FETCH_ITEM_DATA_REJECTED,
|
20 | FETCH_ITEM_DATA_FULFILLED,
|
21 | } from "./actionTypes";
|
22 |
|
23 | import * as Immutable from "immutable";
|
24 |
|
25 | import * as reducerItemData from "./reducerItemData";
|
26 | import * as reducerOperations from "./reducerOperations";
|
27 |
|
28 | export const pages = (state : PagesState = Immutable.Map(), action : Action) => {
|
29 | switch (action.type) {
|
30 | case REQUEST_PAGE:
|
31 | return reducerOperations.requestPage(state, action);
|
32 |
|
33 | case RECEIVE_PAGE:
|
34 | return reducerOperations.receivePage(state, action);
|
35 |
|
36 | case RESET_VIEW:
|
37 | return reducerOperations.resetView(state, action);
|
38 |
|
39 | case CHANGE_VIEW:
|
40 | return reducerOperations.changeView(state, action);
|
41 |
|
42 | case FETCH_CURRENT_COMPANY_INFO_PENDING:
|
43 | case CLEAR_DATA:
|
44 | return state.clear();
|
45 |
|
46 | default:
|
47 | return state;
|
48 | }
|
49 | };
|
50 |
|
51 | export const items = (state : ItemsState = Immutable.Map(), action : Action) => {
|
52 | switch (action.type) {
|
53 | case RECEIVE_PAGE:
|
54 | return reducerOperations.receivePageItems(state, action);
|
55 |
|
56 | case FETCH_CURRENT_COMPANY_INFO_PENDING:
|
57 | case CLEAR_DATA:
|
58 | return state.clear();
|
59 | default:
|
60 | return state;
|
61 | }
|
62 | };
|
63 |
|
64 | export const dataItems = (state : ItemsState = Immutable.Map(), action : Action) => {
|
65 | switch (action.type) {
|
66 | case RECEIVE_PAGE:
|
67 | return reducerOperations.receivePageItems(state, action);
|
68 |
|
69 | case FETCH_ITEM_DATA_PENDING:
|
70 | return reducerItemData.fetchItemDataPending(state, action);
|
71 | case FETCH_ITEM_DATA_REJECTED:
|
72 | return reducerItemData.fetchItemDataRejected(state, action);
|
73 | case FETCH_ITEM_DATA_FULFILLED:
|
74 | return reducerItemData.fetchItemDataFulFilled(state, action);
|
75 |
|
76 | case FETCH_CURRENT_COMPANY_INFO_PENDING:
|
77 | case CLEAR_DATA:
|
78 | return state.clear();
|
79 | default:
|
80 | return state;
|
81 | }
|
82 | };
|