2 lines
7.5 KiB
JavaScript
2 lines
7.5 KiB
JavaScript
import{d as N,Q as L,k as Q,l as O,b as i,c as r,e,m as a,w as A,p as n,I as f,t as v,g as $,R as D,i as z,_ as T,S as K,o as W,y as j,B as u,M as G,j as V,T as U,C as H,h as F,N as B,f as Y,F as J,r as X,D as Z,n as tt,s as et,U as st,K as I}from"./index-DvouekMt.js";import{P as at}from"./PageBar-ucBaXuOi.js";import{u as ot}from"./catalogStore-DB_UJvv_.js";import{D as nt}from"./index-C2oB1gIv.js";import{L as S,P as it}from"./index-CEYG58wn.js";import{F as lt,T as rt,a as ct}from"./index-BEg-TrCe.js";import"./KeyCode-IIcW47M-.js";import"./classCallCheck-e3nH0wbf.js";import"./raf-nDFcuFT6.js";import"./FormItemContext-Btb3BXDu.js";const dt={class:"ci"},ut={class:"ci__art"},_t=["alt"],mt={key:1,class:"ci__artEmpty","aria-hidden":"true"},pt={class:"ci__main"},vt={class:"ci__title"},yt={class:"ci__meta"},ft={class:"ci__weight"},gt={key:0,class:"ci__wage"},bt={class:"ci__row"},wt={class:"ci__qty"},ht=["disabled"],xt={class:"ci__qtyValue"},kt={key:0,class:"ci__noteText"},Ct=N({__name:"CartItem",props:{value:{}},emits:["note"],setup(_,{emit:x}){const l=_,c=x,m=L(),y=m.find_index(l.value),g=z(()=>m.maxQty(l.value)),b=z(()=>g.value===null||l.value.qty<g.value),P=()=>{b.value&&m.updateFeild(l.value.qty+1,y,l.value,"qty")},s=()=>{m.updateFeild(l.value.qty-1,y,l.value,"qty")},{image:p,title:k,selectedVariant:q,wage:C}=Q(l.value.product,m.variant(l.value)),R=z(()=>{const d=C.value;return d==null?"":d%1===0?String(d):d.toFixed(2)});return(d,t)=>{var h;const w=O("lazy");return i(),r("article",dt,[e("div",ut,[a(p)?A((i(),r("img",{key:0,alt:a(k)},null,8,_t)),[[w,a(p)]]):(i(),r("div",mt,[n(f,{icon:"vuesax-linear:diamonds",size:"20"})]))]),e("div",pt,[e("h3",vt,v(a(k)),1),e("div",yt,[e("span",ft,v((h=a(q))==null?void 0:h.rashWeightGrams)+" گرم",1),a(C)!=null?(i(),r("span",gt,"اجرت "+v(R.value)+"٪",1)):$("",!0)]),e("div",bt,[e("div",wt,[e("button",{type:"button",class:"ci__qtyBtn","aria-label":"افزودن",disabled:!b.value,onClick:P},[n(f,{icon:"vuesax-linear:add",size:"16"})],8,ht),e("span",xt,v(_.value.qty),1),_.value.qty===1?(i(),r("button",{key:0,type:"button",class:"ci__qtyBtn ci__qtyBtn--danger","aria-label":"حذف",onClick:t[0]||(t[0]=o=>a(m).remove(_.value))},[n(f,{icon:"vuesax-linear:trash",size:"16"})])):(i(),r("button",{key:1,type:"button",class:"ci__qtyBtn","aria-label":"کاهش",onClick:s},[n(f,{icon:"vuesax-linear:minus",size:"16"})]))]),e("button",{type:"button",class:"ci__note",onClick:t[1]||(t[1]=o=>c("note",a(y)))},[n(f,{icon:"vuesax-linear:note-text",size:"15"}),D(" "+v(!_.value.note||_.value.note===""?"توضیحات":"ویرایش توضیحات"),1)])]),_.value.note?(i(),r("p",kt,v(_.value.note),1)):$("",!0)])])}}}),It=T(Ct,[["__scopeId","data-v-d4b1ffdf"]]),$t={class:"cart"},Pt={key:1,class:"cart__empty"},qt={key:1,class:"cart__done"},Rt={class:"cart__doneIcon","aria-hidden":"true"},zt={class:"cart__doneSub"},Vt={key:0,class:"cart__bar"},Ft={class:"cart__barInner"},St={class:"cart__total"},Dt={class:"cart__totalValue"},Ut={class:"sheet"},Bt={class:"sheet__title"},Nt=60,Lt=N({__name:"CartView",setup(_){let x=!1;const l=H(),c=L(),m=K(),y=F(!1),g=F(!1),b=F(x);function P(d){return{"--reveal-delay":`${d*Nt}ms`}}const s=B({loadingPage:!1,showPopUp:!1,step:1,notify:!1,orderID:"",tempRowIndex:-1,tempRow:{product:void 0}}),p=B({note:void 0}),k=()=>{c.updateFeild(p.note,s.tempRowIndex,s.tempRow,"note"),s.showPopUp=!1,p.note=void 0,s.tempRow={product:void 0}},q=async()=>{await l.push({name:"ordersList"}),s.step=1},C=async()=>{if(s.notify=!1,!m.isLoggedIn){y.value=!0;return}try{s.loadingPage=!0;const d=await et.createOrder({customerId:m.customerId??void 0,items:c.items.map(t=>{const w=c.variant(t);return{productVariantId:t.vid,quantity:t.qty,wagePercent:w?parseFloat(w.defaultWagePercent):0}})});s.orderID=d.orderNumber,s.step=2,c.clear(),st().invalidate(I.orders,I.balance,I.profile,I.ledger),ot().invalidate()}catch(d){console.log(d)}finally{s.loadingPage=!1}};async function R(){await c.init(!0),g.value=!1}return W(async()=>{await c.init(),!b.value&&(await j(),requestAnimationFrame(()=>{b.value=!0,x=!0}))}),(d,t)=>{var h;const w=Z("container");return i(),r("div",$t,[n(at,{title:"سبد خرید","back-to":"home"}),n(G,{spinning:s.loadingPage,tip:"درحال دریافت اطلاعات"},{default:u(()=>[n(w,{class:"cart__body"},{default:u(()=>[s.step===1?(i(),V(a(it),{key:0,modelValue:g.value,"onUpdate:modelValue":t[1]||(t[1]=o=>g.value=o),onRefresh:R},{pulling:u(()=>[n(a(S),{size:"18"})]),loosing:u(()=>[n(a(S),{size:"18"})]),loading:u(()=>[n(a(S),{size:"18"})]),success:u(()=>[...t[8]||(t[8]=[e("span",null,null,-1)])]),default:u(()=>[a(c).items.length?(i(),r("div",{key:0,class:Y(["cart__items",{"is-revealed":b.value}])},[(i(!0),r(J,null,X(a(c).items,(o,E)=>(i(),V(It,{key:o.pid+o.vid,value:o,class:"cart__row",style:tt(P(E)),onNote:M=>{s.tempRow=o,s.showPopUp=!0,s.tempRowIndex=M,p.note=o.note??void 0}},null,8,["value","style","onNote"]))),128))],2)):(i(),r("section",Pt,[n(f,{icon:"vuesax-linear:bag-2",size:"26"}),t[9]||(t[9]=e("p",null,"سبد خرید شما خالی است.",-1)),e("button",{type:"button",class:"cart__emptyCta",onClick:t[0]||(t[0]=o=>a(l).push({name:"home"}))}," دیدن محصولات ")]))]),_:1},8,["modelValue"])):(i(),r("section",qt,[e("div",Rt,[n(f,{icon:"vuesax-linear:tick-circle",size:"30"})]),t[11]||(t[11]=e("h2",{class:"cart__doneTitle"},"سفارش شما ثبت شد",-1)),e("p",zt,[t[10]||(t[10]=D(" شماره سفارش ",-1)),e("b",null,v(s.orderID),1)]),t[12]||(t[12]=e("p",{class:"cart__doneHint"},"برای پیگیری وضعیت، به فهرست سفارشها مراجعه کنید.",-1)),e("button",{type:"button",class:"cart__doneCta",onClick:q},"فهرست سفارشها")]))]),_:1})]),_:1},8,["spinning"]),a(c).items.length>0&&s.step===1?(i(),r("div",Vt,[e("div",Ft,[e("div",St,[t[14]||(t[14]=e("span",{class:"cart__totalLabel"},"جمع وزن",-1)),e("span",Dt,[D(v(a(c).total())+" ",1),t[13]||(t[13]=e("i",null,"گرم",-1))])]),e("button",{type:"button",class:"cart__submit",onClick:t[2]||(t[2]=o=>s.notify=!0)},"ثبت نهایی سفارش")])])):$("",!0),(h=s.tempRow)!=null&&h.product?(i(),V(a(nt),{key:1,visible:s.showPopUp,"onUpdate:visible":t[4]||(t[4]=o=>s.showPopUp=o),placement:"bottom",closable:!1,height:"300px",class:"rtl island-sheet",bodyStyle:{padding:0}},{default:u(()=>[e("div",Ut,[e("h3",Bt,"توضیح برای "+v(s.tempRow.product.title),1),n(a(ct),{model:p,name:"noteForm",layout:"vertical",autocomplete:"off",onFinish:k},{default:u(()=>[n(a(lt),{"has-feedback":"",name:"note"},{default:u(()=>[n(a(rt),{value:p.note,"onUpdate:value":t[3]||(t[3]=o=>p.note=o),rows:4,placeholder:"مثلاً سایز یا جزئیات سفارش"},null,8,["value"])]),_:1}),t[15]||(t[15]=e("button",{type:"submit",class:"sheet__cta"},"ثبت توضیحات",-1))]),_:1},8,["model"])])]),_:1},8,["visible"])):$("",!0),n(U,{show:s.notify,"onUpdate:show":t[5]||(t[5]=o=>s.notify=o),art:"order",title:"آیا مطمئن به ثبت سفارش هستید؟",description:"پس از ثبت، وضعیت سفارش را می توانید از بخش سفارش ها پیگیری کنید.","confirm-text":"بله","cancel-text":"بی خیال",onConfirm:C},null,8,["show"]),n(U,{show:y.value,"onUpdate:show":t[6]||(t[6]=o=>y.value=o),art:"login",title:"برای ثبت سفارش وارد شوید",description:"برای ثبت سفارش ابتدا باید وارد حساب کاربری خود شوید. سبد خرید شما حفظ می شود.","confirm-text":"ورود/ثبت نام","cancel-text":"بیخیال",onConfirm:t[7]||(t[7]=o=>a(l).push({name:"login"}))},null,8,["show"])])}}}),Ht=T(Lt,[["__scopeId","data-v-6e5986f1"]]);export{Ht as default};
|