1import{gt as e,ht as t}from"./DzgzMDuw.js";import{t as n}from"./Daac4eig.js";function r(r={}){let i=e(!1),a=e(null),{onError:o,onSuccess:s}=r,c=()=>{a.value=null};function l(e){let t=Array.isArray(e?.errors)?e.errors:[],n=Array.isArray(e?.warnings)?e.warnings:[],r=t.map(e=>{let t=e.description??e.message??`Unknown error`;return`[${e.code}] ${t}`}),i=n.map(e=>{let t=e.description??e.message??`Unknown warning`;return`[${e.code}] ${t}`});return r.length||i.length?[...r,...i].join(` | `):null}let u=e=>{let t=e instanceof Error?e.message:`Unknown error`;a.value=t,o?.(e instanceof Error?e:Error(t))},d=e=>{s?.(e)};return{loading:t(i),error:t(a),clearError:c,getCampaignStats:async e=>{if(!e)return u(Error(`campaignKey is required`)),null;i.value=!0,c();try{let t=await n(`/api/postcard/campaigns/${encodeURIComponent(e)}`),r=l(t);return r?(a.value=r,o?.(Error(r)),null):(d(`Campaign stats fetched successfully`),t)}catch(e){return u(e),null}finally{i.value=!1}},createPostcard:async(e,t)=>{i.value=!0,c();try{if(!e)throw Error(`campaignKey is required`);let r=await n(`/api/postcard/postcards?campaignKey=${encodeURIComponent(e)}`,{method:`POST`,body:t}),i=l(r);return i?(a.value=i,o?.(Error(i)),null):(d(`Postcard created successfully`),r)}catch(e){return u(e),null}finally{i.value=!1}},getPostcard:async e=>{i.value=!0,c();try{let t=await n(`/api/postcard/postcards/${e}`),r=l(t);return r?(a.value=r,o?.(Error(r)),null):t}catch(e){return u(e),null}finally{i.value=!1}},uploadImage:async(e,t)=>{i.value=!0,c();try{let r=new FormData;r.append(`image`,t);let i=l(await n(`/api/postcard/postcards/${e}/image`,{method:`PUT`,body:r}));return i?(a.value=i,o?.(Error(i)),!1):(d(`Image uploaded successfully`),!0)}catch(e){return u(e),!1}finally{i.value=!1}},getPostcardPreviewFront:async e=>{i.value=!0,c();try{let t=await n(`/api/postcard/postcards/${e}/previews/front`),r=l(t);return r?(a.value=r,o?.(Error(r)),null):t}catch(e){return u(e),null}finally{i.value=!1}},getPostcardPreviewBack:async e=>{i.value=!0,c();try{let t=await n(`/api/postcard/postcards/${e}/previews/back`),r=l(t);return r?(a.value=r,o?.(Error(r)),null):t}catch(e){return u(e),null}finally{i.value=!1}},updateSenderAddress:async(e,t)=>{i.value=!0,c();try{let r=l(await n(`/api/postcard/postcards/${e}/addresses/sender`,{method:`PUT`,body:t}));return r?(a.value=r,o?.(Error(r)),!1):(d(`Sender address updated successfully`),!0)}catch(e){return u(e),!1}finally{i.value=!1}},updateRecipientAddress:async(e,t)=>{i.value=!0,c();try{let r=l(await n(`/api/postcard/postcards/${e}/addresses/recipient`,{method:`PUT`,body:t}));return r?(a.value=r,o?.(Error(r)),!1):(d(`Recipient address updated successfully`),!0)}catch(e){return u(e),!1}finally{i.value=!1}},setStampImage:async(e,t)=>{i.value=!0,c();try{let r=new FormData;r.append(`image`,t);let i=l(await n(`/api/postcard/postcards/${e}/branding/stamp`,{method:`PUT`,body:r}));return i?(a.value=i,o?.(Error(i)),!1):(d(`Stamp image uploaded successfully`),!0)}catch(e){return u(e),!1}finally{i.value=!1}},setSenderText:async(e,t)=>{i.value=!0,c();try{let r=l(await n(`/api/postcard/postcards/${e}/sendertext`,{method:`PUT`,body:{senderText:t}}));return r?(a.value=r,o?.(Error(r)),!1):(d(`Sender text updated successfully`),!0)}catch(e){return u(e),!1}finally{i.value=!1}},approvePostcard:async e=>{i.value=!0,c();try{let t=l(await n(`/api/postcard/postcards/${e}/approval`,{method:`POST`}));return t?(a.value=t,o?.(Error(t)),!1):(d(`Postcard approval updated successfully`),!0)}catch(e){return u(e),!1}finally{i.value=!1}}}}export{r as t}; 2//# sourceMappingURL=V8EHPlAO.js.map
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.