commerce-vuex
Version:
Commerce vuex module
53 lines (48 loc) • 1.47 kB
JavaScript
import humps from 'lodash-humps';
import template from './template.service';
const { doFetchHeaders } = template
export default {
namespaced: true,
state: {
list: [],
selected: [],
recordsCount: 0,
inProgress: false,
error: null
},
mutations: {
inProgress(state, yesOrNo) {
state.inProgress = yesOrNo
},
setList(state, list) {
state.list = list;
},
setListCount(state, number) {
state.recordsCount = number;
},
},
actions: {
fetchHeadersList: async ({ commit }, { documentUrl, expectedHeaders }) => {
commit('inProgress', true);
try {
const response = await doFetchHeaders({ documentUrl, expectedHeaders });
let list = response.headers
if (list) {
commit('setList', humps((list)));
return { error: false, list: humps((list)) }
} else{
commit('setList', []);
return { error: true, list: [] }
}
}
// eslint-disable-next-line no-useless-catch
catch (err) {
console.log(err)
return { error: true, err }
}
finally {
commit('inProgress', false)
}
}
}
}