import Vue from "vue"; import axios from "axios"; import VueAxios from "vue-axios"; const ApiService = { init() { Vue.use(VueAxios, axios); Vue.axios.defaults.baseURL = process.env.VUE_APP_SERVICE_API; }, query(resource, params) { return Vue.axios.get(resource, params).catch((error) => { throw new Error(`ApiService ${error}`); }); }, get(resource, slug = "") { let url = resource if (slug !== "") url = url + `/${slug}` return Vue.axios.get(url).catch((error) => { throw new Error(`ApiService ${error}`); }); }, post(resource, params) { return Vue.axios.post(`${resource}`, params); }, update(resource, slug, params) { return Vue.axios.put(`${resource}/${slug}`, params); }, put(resource, params) { return Vue.axios.put(`${resource}`, params); }, delete(resource) { return Vue.axios.delete(resource).catch((error) => { throw new Error(`ApiService ${error}`); }); }, }; export default ApiService;