import { getFeedbackList } from '@/api/dashboard/dashboard';
const FETCH_FFEDBACK_LIST = 'FETCH_FFEDBACK_LIST';
const FETCH_DATA = 'FETCH_DATA';

const state = () => ({
  loading: false,
  list: [],
  count: 0,
});

const getters = {
  feedbackList: state => state.list,
  count: state => state.count,
  loading: state => state.loading,
};

const actions = {
  getFeedbackList({ commit }) {
    commit(FETCH_DATA, true);
    return getFeedbackList()
      .then(res => {
        const { data, count } = res;
        commit(FETCH_FFEDBACK_LIST, { list: data, count });
        commit(FETCH_DATA, false);
      })
      .catch(err => {
        console.error(err);
        commit(FETCH_DATA, false);
      });
  },
};

const mutations = {
  [FETCH_FFEDBACK_LIST](state, data) {
    state.list = data.list;
    state.count = data.count;
  },
  [FETCH_DATA](state, fetching) {
    state.loading = fetching;
  },
};

export default {
  namespaced: true,
  state,
  getters,
  actions,
  mutations,
};