index.js
1 lines
| 1 | import apiFetch from"../../functions/fetch";import{addQueryArgs}from"@wordpress/url";export const baseUrl="surecart/v1/checkouts/";export const expand=["line_items","line_item.price","price.product","customer","customer.shipping_address","payment_intent","discount","discount.promotion","recommended_bumps","bump.price","discount.coupon","shipping_address","staged_payment_intents","tax_identifier"];export const parsePath=(e,a="")=>{let t=e?`${baseUrl}${e}`:baseUrl;return t=`${t}${a}`,addQueryArgs(t,{expand:expand})};export const createOrUpdateSession=async({id:e=null,data:a,query:t={}})=>await apiFetch({method:e?"PATCH":"POST",path:addQueryArgs(parsePath(e),t),data:a});export const createOrUpdateOrder=async({id:e=null,data:a={},query:t={}})=>await apiFetch({method:e?"PATCH":"POST",path:addQueryArgs(parsePath(e),t),data:a});export const updateOrder=async({id:e,data:a={},query:t={}})=>await apiFetch({method:"PATCH",path:addQueryArgs(parsePath(e),t),data:a});export const getCheckout=async({id:e,query:a={}})=>await apiFetch({path:addQueryArgs(parsePath(e),a)});export const finalizeSession=async({id:e,data:a={},query:t={},processor:r})=>await apiFetch({method:"POST",path:addQueryArgs(parsePath(e,"/finalize"),{...(null==r?void 0:r.manual)?{manual_payment:!0,manual_payment_method_id:null==r?void 0:r.id}:{processor_type:null==r?void 0:r.id},...t}),data:a});export const getSession=async e=>await apiFetch({path:parsePath(e)});export const fetchCheckout=async({id:e,query:a={}})=>await apiFetch({path:addQueryArgs(parsePath(e),a)});export const requestSession=async({id:e,query:a={}})=>apiFetch({path:addQueryArgs(`${baseUrl}${e}`,a)}); |