Skip to content
Snippets Groups Projects
bar.reducers.ts 621 B
Newer Older
import { Bar } from "../../models/bar.model";
import { BarsActions, BarActionsTypes } from "../actions/bar.actions";

export interface BarState {
	bars: Bar[];
	currentBar: Bar;
	error: string;
}

const defaultBarState = {
	bars: [],
	currentBar: null,
	error: '',
}

export function barReducer(state: BarState = defaultBarState, action: BarsActions): BarState {
	switch (action.type) {

		case BarActionsTypes.FETCH_BARS_SUCCESS: {
			return {
				...state,
				bars: action.payload
			};
		}

		case BarActionsTypes.FETCH_BARS_FAILED: {
			return {
				...state,
				error: action.payload
			};
		}
	}

	return state;
}