import Vue from 'vue';
import Vuex from 'vuex';
import _ from 'lodash';
Vue.use(Vuex);
const api = {
  onliveInfo: `/api/onlive/user`,
  registerInfo: `/api/onlive/register`,
};
const state = () => ({});
const mutations = {};

const actions = {
  async query({ commit }, { skip = 0, limit = 10, ...info } = {}) {
    const res = await this.$axios.$get(api.onliveInfo, {
      skip,
      limit,
      ...info,
    });
    return res;
  },
  async create({ commit }, payload) {
    const res = await this.$axios.$post(`${api.onliveInfo}`, payload);
    return res;
  },
  async fetch({ commit }, payload) {
    const res = await this.$axios.$get(`${api.onliveInfo}/${payload}`);
    return res;
  },
  async update({ commit }, { id, ...info } = {}) {
    const res = await this.$axios.$post(`${api.onliveInfo}/${id}`, { ...info });
    return res;
  },
  async delete({ commit }, payload) {
    const res = await this.$axios.$delete(`${api.onliveInfo}/${payload}`);
    return res;
  },
  async register({ commit }, payload) {
    const res = await this.$axios.$post(`${api.registerInfo}`, payload);
    return res;
  },
};

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