- OPEN_SNACKBAR: data => ({ ...initialState, ...data, open: true }),
- CLOSE_SNACKBAR: () => initialState,
+ OPEN_SNACKBAR: data => {
+ return {
+ open: true,
+ messages: state.messages.concat({
+ message: data.message,
+ hideDuration: data.hideDuration ? data.hideDuration : DEFAULT_HIDE_DURATION,
+ kind: data.kind ? data.kind : SnackbarKind.INFO
+ })
+ };
+ },
+ CLOSE_SNACKBAR: () => ({
+ ...state,
+ open: false
+ }),
+ SHIFT_MESSAGES: () => {
+ const messages = state.messages.filter((m, idx) => idx > 0);
+ return {
+ open: messages.length > 0,
+ messages
+ };
+ },