import"../chunks/Bzak7iHL.js";import{o as Le}from"../chunks/Dsy9VFq4.js";import{p as Pe,f as _,e as Z,t as $,a as v,b as $e,$ as je,s as a,c as e,j as s,u as rt,r as t,n as Bt,i as x,g as tt,B as Ce,D as Ot,d as De}from"../chunks/CnGaPG_y.js";import{d as Ke,s as o,e as Re,r as Ne}from"../chunks/BBilxCvN.js";import{i as I}from"../chunks/BqhvobEz.js";import{e as Fe,i as qe}from"../chunks/_bkH3ryn.js";import{h as Be}from"../chunks/7JdHMB9Z.js";import{a as w,r as S,s as le}from"../chunks/Bu9wkQ5s.js";import{t as Oe,f as Te}from"../chunks/_szDWC-1.js";import{g as Ue}from"../chunks/O_cqCvAF.js";import{S as Me}from"../chunks/DmCpX-F9.js";import{M as ce}from"../chunks/BeF0adGF.js";import{g as Ae}from"../chunks/BSWJzOrc.js";const Ye=async(B,b,l,J,p,et,O,A)=>{var Y,D;x(b,!1),x(l,"processing");try{const k=await fetch("/api/order/validate",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({cartItems:J.cartItems.map(K=>({quantity:K.quantity,product:K.product}))})});if(!k.ok)throw await k.json();x(p,!0);const C=document.getElementById("payment-form");if(C)x(et,!0),await Ce(),C.submit();else throw new Error("Payment form not found")}catch(k){x(l,"failed"),x(O,((Y=k==null?void 0:k.body)==null?void 0:Y.message)||"Failed to initiate payment",!0),A.add("Error",((D=k==null?void 0:k.body)==null?void 0:D.message)||"Something went wrong","error"),x(p,!1)}finally{x(et,!1)}};var He=_(' '),ze=_('
',1),Qe=_('
',1),Ve=_('
'),Je=_('
'),Ge=(B,b,l)=>b.removeItem(s(l).id),We=_(''),Xe=_(' Your cart is empty Start shopping to add items to your cart.
'),Ze=(B,b)=>x(b,!0),ta=_(' Proceed to Payment '),ea=_(' Continue Shopping '),aa=_('Payment Unavailable '),sa=_(' Add More Items '),ra=(B,b)=>x(b,!1),ia=_(`Order Details
Convenience Fee
Total Amount
By confirming this purchase, you agree to our terms and conditions. You will be redirected to our secure
payment gateway to complete the transaction.
Cancel Confirm & Pay
`,1),na=(B,b)=>x(b,"initial"),oa=(B,b)=>x(b,"initial"),la=_('
Payment Failed
Try Again Dismiss
'),ca=_(' Loading secure payment form...
'),da=_(`
Note: Do not close this window until your payment is complete. You will be automatically
redirected upon successful payment.
`),va=_('Home Checkout
Order Summary
Tax KES 0
Convenience Fee
',1);function Ea(B,b){Pe(b,!0);const l=rt(()=>b.data.paymentDetails),J=rt(()=>b.data.convenienceFee),p=Ue(),et=Ae();let O=tt(!1),A=tt(!1),Y=tt(!1),D=tt("initial"),k=tt("");function C(i){return typeof(i==null?void 0:i.discountedPrice)=="number"?i.discountedPrice:null}function K(i){return(i==null?void 0:i.appliedPromotion)||null}let de=rt(()=>p.cartStats.total),it=rt(()=>{var i;return s(de)+(((i=s(J))==null?void 0:i.amount)||0)});const Tt=i=>{if(i.origin==="https://test.pesaflow.com"){const{status:r,message:m}=i.data;r==="success"?window.location.href="/purchases?payment=success":r==="failed"&&(x(D,"failed"),x(k,m||"Payment failed",!0),x(A,!1))}};Le(()=>(window.addEventListener("message",Tt),()=>window.removeEventListener("message",Tt)));var Ut=va();Be(i=>{je.title="Checkout"});var nt=Z(Ut),Mt=e(nt),At=a(e(Mt),4),ot=e(At),Yt=e(ot),lt=e(Yt),Ht=a(e(lt),2),ve=e(Ht);t(Ht),t(lt);var ct=a(lt,2);Fe(ct,21,()=>p.cartItems,qe,(i,r)=>{var m=We(),f=e(m),g=e(f),d=e(g);t(g);var c=a(g,2),y=e(c),E=e(y,!0);t(y);var h=a(y,2),j=e(h);{var R=n=>{var u=Ot();$(()=>o(u,`by ${s(r).product.author??""}`)),v(n,u)};I(j,n=>{s(r).product.author&&n(R)})}t(h);var N=a(h,2),H=e(N);{var T=n=>{var u=ze(),L=Z(u),P=e(L),jt=e(P);t(P);var Q=a(P,2),Ct=e(Q);t(Q);var G=a(Q,2);{var Dt=q=>{var W=He(),Nt=e(W);{var Ft=V=>{var X=Ot();$(qt=>o(X,`${qt??""}% off`),[()=>K(s(r).product).discountValue]),v(V,X)},Ie=V=>{var X=Ot();$(qt=>o(X,`Save KES ${qt??""}`),[()=>K(s(r).product).discountValue.toLocaleString()]),v(V,X)};I(Nt,V=>{K(s(r).product).discountType==="PERCENT"?V(Ft):V(Ie,!1)})}t(W),v(q,W)};I(G,q=>{K(s(r).product)&&q(Dt)})}var st=a(G,2),Kt=e(st);t(st),t(L);var Rt=a(L,2),ke=e(Rt);t(Rt);var oe=a(Rt,2),Ee=e(oe);t(oe),$((q,W,Nt,Ft)=>{o(jt,`KES ${q??""}`),o(Ct,`KES ${W??""}`),o(Kt,`Qty: ${s(r).quantity??""}`),o(ke,`Line subtotal: KES ${Nt??""}`),o(Ee,`Saved KES ${Ft??""}`)},[()=>{var q;return(q=C(s(r).product))==null?void 0:q.toLocaleString()},()=>s(r).product.price.toLocaleString(),()=>(C(s(r).product)*s(r).quantity).toLocaleString(),()=>((s(r).product.price-C(s(r).product))*s(r).quantity).toLocaleString()]),v(n,u)},U=n=>{var u=Qe(),L=Z(u),P=e(L),jt=e(P);t(P);var Q=a(P,2),Ct=e(Q);t(Q),t(L);var G=a(L,2),Dt=e(G);t(G),$((st,Kt)=>{o(jt,`KES ${st??""}`),o(Ct,`Qty: ${s(r).quantity??""}`),o(Dt,`Line subtotal: KES ${Kt??""}`)},[()=>s(r).product.price.toLocaleString(),()=>(s(r).product.price*s(r).quantity).toLocaleString()]),v(n,u)};I(H,n=>{C(s(r).product)!==null?n(T):n(U,!1)})}t(N),t(c);var M=a(c,2),F=e(M);{var at=n=>{var u=Ve(),L=e(u);t(u),$(P=>o(L,`KES ${P??""}`),[()=>(C(s(r).product)*s(r).quantity).toLocaleString()]),v(n,u)},$t=n=>{var u=Je(),L=e(u);t(u),$(P=>o(L,`KES ${P??""}`),[()=>(s(r).product.price*s(r).quantity).toLocaleString()]),v(n,u)};I(F,n=>{C(s(r).product)!==null?n(at):n($t,!1)})}var z=a(F,2);z.__click=[Ge,p,r],t(M),t(f),t(m),$(()=>{var n;le(d,"src",((n=s(r).product.Image[0])==null?void 0:n.url)||"/noImage.jpg"),le(d,"alt",s(r).product.name),o(E,s(r).product.name)}),v(i,m)}),t(ct);var me=a(ct,2);{var pe=i=>{var r=Xe();v(i,r)};I(me,i=>{p.cartItems.length===0&&i(pe)})}t(Yt),t(ot);var zt=a(ot,2),Qt=e(zt),Vt=e(Qt),Jt=a(e(Vt),2),Gt=e(Jt);I(Gt,i=>{});var dt=a(Gt,2),vt=e(dt),mt=e(vt),ue=e(mt);t(mt);var Wt=a(mt,2),xe=e(Wt);t(Wt),t(vt);var pt=a(vt,4),Xt=a(e(pt),2),fe=e(Xt);t(Xt),t(pt);var Zt=a(pt,2),te=e(Zt),ee=a(e(te),2),ge=e(ee);t(ee),t(te),t(Zt),t(dt);var ut=a(dt,2),xt=e(ut);S(xt);var ft=a(xt,2);S(ft);var gt=a(ft,2);S(gt);var yt=a(gt,2);S(yt);var _t=a(yt,2);S(_t);var bt=a(_t,2);S(bt);var ht=a(bt,2);S(ht);var wt=a(ht,2);S(wt);var St=a(wt,2);S(St);var kt=a(St,2);S(kt);var Et=a(kt,2);S(Et);var It=a(Et,2);S(It);var Lt=a(It,2);S(Lt);var Pt=a(Lt,2);S(Pt);var ae=a(Pt,2);S(ae),t(ut);var se=a(ut,2),re=e(se);{var ye=i=>{var r=ta();r.__click=[Ze,O],v(i,r)},_e=i=>{var r=De(),m=Z(r);{var f=d=>{var c=ea();v(d,c)},g=d=>{var c=aa();v(d,c)};I(m,d=>{p.cartItems.length===0?d(f):d(g,!1)},!0)}v(i,r)};I(re,i=>{s(l)&&s(it)>0&&p.cartItems.length>0?i(ye):i(_e,!1)})}var be=a(re,2);{var he=i=>{var r=sa();v(i,r)};I(be,i=>{p.cartItems.length>0&&i(he)})}t(se),t(Jt),t(Vt),t(Qt),t(zt),t(At),t(Mt),t(nt);var ie=a(nt,2);ce(ie,{title:"Confirm Your Purchase",get show(){return s(O)},set show(i){x(O,i,!0)},children:(i,r)=>{var m=ia(),f=Z(m),g=e(f),d=a(e(g),2),c=e(d),y=e(c),E=e(y);t(y);var h=a(y,2),j=e(h);t(h),t(c);var R=a(c,2),N=a(e(R),2),H=e(N);t(N),t(R);var T=a(R,2),U=a(e(T),2),M=e(U);t(U),t(T),t(d),t(g),Bt(2),t(f);var F=a(f,2),at=e(F);at.__click=[ra,O];var $t=a(at,2);$t.__click=[Ye,O,D,p,A,Y,k,et],t(F),$((z,n,u)=>{o(E,`Items (${p.cartItems.length??""})`),o(j,`KES ${z??""}`),o(H,`KES ${n??""}`),o(M,`KES ${u??""}`)},[()=>p.cartStats.total.toLocaleString(),()=>{var z,n;return((n=(z=s(J))==null?void 0:z.amount)==null?void 0:n.toLocaleString())||0},()=>s(it).toLocaleString()]),v(i,m)},$$slots:{default:!0}});var ne=a(ie,2);{var we=i=>{var r=la(),m=e(r),f=e(m),g=e(f),d=a(e(g),2),c=a(e(d),2),y=e(c,!0);t(c);var E=a(c,2),h=e(E);h.__click=[na,D];var j=a(h,2);j.__click=[oa,D],t(E),t(d),t(g),t(f),t(m),t(r),$(()=>o(y,s(k))),Oe(3,r,()=>Te),v(i,r)};I(ne,i=>{s(D)==="failed"&&i(we)})}var Se=a(ne,2);ce(Se,{title:"Secure Payment",modalClass:"max-w-4xl",get show(){return s(A)},set show(i){x(A,i,!0)},children:(i,r)=>{var m=da(),f=a(e(m),2),g=e(f);{var d=y=>{var E=ca(),h=e(E),j=e(h);Me(j),Bt(2),t(h),t(E),v(y,E)};I(g,y=>{s(Y)&&y(d)})}var c=a(g,2);t(f),Bt(2),t(m),Re("load",c,()=>x(Y,!1)),Ne(c),v(i,m)},$$slots:{default:!0}}),$((i,r,m)=>{var f,g,d,c,y,E,h,j,R,N,H,T,U,M,F;o(ve,`${p.cartItems.length??""} item${p.cartItems.length!==1?"s":""} in your cart`),o(ue,`Subtotal (${p.cartItems.length??""} item${p.cartItems.length!==1?"s":""})`),o(xe,`KES ${i??""}`),o(fe,`KES ${r??""}`),o(ge,`KES ${m??""}`),w(xt,(f=s(l))==null?void 0:f.apiClientID),w(ft,(g=s(l))==null?void 0:g.secureHash),w(gt,(d=s(l))==null?void 0:d.billDesc),w(yt,(c=s(l))==null?void 0:c.billRefNumber),w(_t,(y=s(l))==null?void 0:y.currency),w(bt,(E=s(l))==null?void 0:E.serviceID),w(ht,(h=s(l))==null?void 0:h.clientMSISDN),w(wt,(j=s(l))==null?void 0:j.clientName),w(St,(R=s(l))==null?void 0:R.clientIDNumber),w(kt,(N=s(l))==null?void 0:N.clientEmail),w(Et,(H=s(l))==null?void 0:H.callBackURLOnSuccess),w(It,(T=s(l))==null?void 0:T.callBackURLOnFail),w(Lt,(U=s(l))==null?void 0:U.notificationURL),w(Pt,(M=s(l))==null?void 0:M.pictureURL),w(ae,(F=s(l))==null?void 0:F.amountExpected)},[()=>p.cartStats.total.toLocaleString(),()=>{var i,r;return((r=(i=s(J))==null?void 0:i.amount)==null?void 0:r.toLocaleString())||0},()=>s(it).toLocaleString()]),v(B,Ut),$e()}Ke(["click"]);export{Ea as component};