UNPKG

commerce-vuex

Version:
64 lines (57 loc) 2.5 kB
import { nav } from 'oak-vuex' //const { getHubAuthHeader } = auth const { wrapRequest } = nav //const hubName = process.env.VUE_APP_RETAINHUB_NAME import { JSONToURLEncoded } from './common.service' const stripeAPIUrl = process.env.VUE_APP_STRIPE_API_URL const stripeSecretKey = process.env.VUE_APP_STRIPE_SECRET_KEY const doFetchCustomerOne = wrapRequest(({customerId}) => { const requestOptions = { method: 'GET', headers: { 'Content-type': 'application/json', 'Authorization' : 'Bearer '+ stripeSecretKey }, }; return fetch(`${stripeAPIUrl}/v1/customers/${customerId}`, requestOptions); }) const doPostStripeCustomer = wrapRequest(({ customer }) => { let formBody = JSONToURLEncoded(customer); const requestOptions = { method: 'POST', headers: { 'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8', 'Authorization' : 'Bearer '+ stripeSecretKey }, body: formBody }; return fetch(`${stripeAPIUrl}/v1/customers`, requestOptions); }) const doFetchCustomerByEmail = wrapRequest(({ emailId }) => { const requestOptions = { method: 'GET', headers: { 'Content-type': 'application/json', 'Authorization' : 'Bearer '+ stripeSecretKey }, }; return fetch(`${stripeAPIUrl}/v1/customers?email=${emailId}`, requestOptions); }) const doPostUpdateAddress = wrapRequest(({ address,id }) => { if(address){ address.line1=address.line_1 address.line2=address.line_2 delete address.line_1 delete address.line_2 } let formBody = JSONToURLEncoded({address:address}); const requestOptions = { method: 'POST', headers: { 'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8', 'Authorization' : 'Bearer '+ stripeSecretKey }, body: formBody }; return fetch(`${stripeAPIUrl}/v1/customers/${id}`, requestOptions); }) const doSetDefaultPaymentMethod = wrapRequest(({ customerId, invoiceSettings }) => { let formBody = JSONToURLEncoded({ invoice_settings: invoiceSettings }); const requestOptions = { method: 'POST', headers: { 'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8', 'Authorization' : 'Bearer '+ stripeSecretKey }, body: formBody }; return fetch(`${stripeAPIUrl}/v1/customers/${customerId}`, requestOptions); }) export default { doFetchCustomerOne, doPostUpdateAddress, doSetDefaultPaymentMethod, doPostStripeCustomer, doFetchCustomerByEmail }