summaryrefslogtreecommitdiff
path: root/app/assets/javascripts/create_cluster/store/cluster_dropdown/actions.js
blob: 669b0dcc7326e8738ac4e175a83312aebbaafbea (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
import * as types from './mutation_types';

export default (fetchItems) => ({
  requestItems: ({ commit }) => commit(types.REQUEST_ITEMS),
  receiveItemsSuccess: ({ commit }, payload) => commit(types.RECEIVE_ITEMS_SUCCESS, payload),
  receiveItemsError: ({ commit }, payload) => commit(types.RECEIVE_ITEMS_ERROR, payload),
  fetchItems: ({ dispatch }, payload) => {
    dispatch('requestItems');

    return fetchItems(payload)
      .then((items) => dispatch('receiveItemsSuccess', { items }))
      .catch((error) => dispatch('receiveItemsError', { error }));
  },
});