commerce-vuex
Version:
Commerce vuex module
34 lines (29 loc) • 1.39 kB
JavaScript
import { auth, nav } from 'oak-vuex'
const { getHubAuthHeader } = auth
const { wrapRequest, wrapRequestWithRange } = nav
const hubName = process.env.VUE_APP_RETAINHUB_NAME
const retainhubCommerceApiUrl = process.env.VUE_APP_RETAINHUB_COMMERCE_API_URL
const doFetchList = wrapRequest(() => {
const requestOptions = {
method: 'GET',
headers: { 'Content-type': 'application/json', 'Prefer': 'count=estimated', ...getHubAuthHeader(hubName) },
};
return fetch(`${retainhubCommerceApiUrl}/business_entity?active_profiles=cs.{"ashta_distributor"}`, requestOptions)
})
const doFetchDistributorsForBrand = wrapRequest(({ appId, filter }) => {
const requestOptions = {
method: 'GET',
headers: { 'Content-type': 'application/json', 'Prefer': 'count=estimated', ...getHubAuthHeader(hubName) },
};
return fetch(`${retainhubCommerceApiUrl}/business_entity?active_profiles=cs.{"ashta_distributor"}`, requestOptions)
})
const doFetchOne = wrapRequest((distributorId) => {
const requestOptions = {
method: 'GET',
headers: { 'Content-type': 'application/json', 'Accept': 'application/vnd.pgrst.object+json', ...getHubAuthHeader(hubName) },
};
return fetch(`${retainhubCommerceApiUrl}/business_entity?id=eq.${distributorId}`, requestOptions);
})
export default {
doFetchList,doFetchOne, doFetchDistributorsForBrand
}