UNPKG

@modyo/cli

Version:

Modyo Command Line Interface

45 lines (40 loc) 1.14 kB
/* eslint no-param-reassign: ["error", {"ignorePropertyModificationsFor": ["state"] }] */ import Vuex from 'vuex'; import axios from 'axios'; export default new Vuex.Store({ state: { cards: [], isLoadingCards: false, paramClientId: 1, }, mutations: { SET_IS_LOADING_CARDS(state, data) { state.isLoadingCards = data; }, SET_CARDS(state, data) { state.cards = data; }, }, actions: { DO_DATA_INITIALIZATION(context) { return new Promise(((resolve, reject) => { context.dispatch('GET_CARDS') .then((cards) => { resolve(cards); }) .catch(err => reject(err)); })); }, GET_CARDS(context) { context.commit('SET_IS_LOADING_CARDS', true); context.commit('SET_CARDS', []); return axios.get(`https://api-bank.herokuapp.com/api/v1/clients/${context.state.paramClientId}/creditCards`) .then((cards) => { context.commit('SET_CARDS', cards.data); context.commit('SET_IS_LOADING_CARDS', false); return cards.data; }) .catch(err => err); }, }, });