Files
tehran_taj/apps/user-app/dist/assets/SingleProduct-DssXZ7g8.js
T
2026-09-21 08:32:31 +03:30

2 lines
13 KiB
JavaScript

import{d as ce,ae as Ce,a as ve,i as s,c as a,b as t,n as we,F as j,r as W,t as u,f as r,A as Pe,e as O,af as ie,g as x,h as n,_ as _e,m as $e,G as Ie,C as Te,u as R,v as U,q,k as d,I as p,D as P,ag as Se,j as ue,T as ze,x as Re,s as qe}from"./index-CBZSLIgu.js";import{a as Oe}from"./Spinner.vue_vue_type_style_index_0_lang-DQwH-Xdy.js";import{_ as Ve}from"./NotifyVant.vue_vue_type_script_setup_true_lang-BZS-5R5g.js";import{_ as Me}from"./DialogVant.vue_vue_type_style_index_0_lang-CINs34e0.js";import{a as Fe,u as Be}from"./cartStore-CAFgxy6H.js";import{a as De}from"./client-CJxy5iKa.js";import{l as Ue}from"./dialogEmpty1-Caw7F5KL.js";const Ae=["src","alt"],Le={key:0,class:"gs__counter"},re=.18,Ne=6,Xe=ce({__name:"GallerySlider",props:ie({slides:{},alt:{},fit:{default:"cover"},showCounter:{type:Boolean,default:!1}},{index:{default:0},indexModifiers:{}}),emits:ie(["tap"],["update:index"]),setup(v,{emit:$}){const C=v,y=Ce(v,"index"),S=$,V=n(()=>C.fit==="contain"?"gs__img--contain":"gs__img--cover"),_=x(null),b=x(!1),k=x(0);let f=null,h=0,I=0;function g(o){var z;if(C.slides.length<2||f!==null)return;const c=_.value;c&&(f=o.pointerId,h=o.clientX,I=c.getBoundingClientRect().width||1,k.value=0,b.value=!0,(z=c.setPointerCapture)==null||z.call(c,o.pointerId))}function E(o){!b.value||o.pointerId!==f||(k.value=o.clientX-h)}function Q(){if(!b.value)return;const o=k.value,c=o/I;b.value=!1,f=null,k.value=0,c<=-re&&y.value<C.slides.length-1?y.value++:c>=re&&y.value>0&&y.value--,Math.abs(o)<=Ne&&S("tap")}function A(o){o.pointerId===f&&Q()}function m(o){o.pointerId===f&&(b.value=!1,f=null,k.value=0)}function L(){}function M(o){y.value=o}const N=n(()=>{const o=-y.value*100,c=I?k.value/I*100:0;return{transform:`translate3d(${o+c}%, 0, 0)`,transition:b.value?"none":void 0}});return ve(()=>{if(f!==null&&_.value)try{_.value.releasePointerCapture(f)}catch{}}),(o,c)=>(s(),a("div",{ref_key:"root",ref:_,class:O(["gs",{"is-dragging":b.value}]),onPointerdown:g,onPointermove:E,onPointerup:A,onPointercancel:m,onClick:L},[t("div",{class:"gs__track",style:we(N.value)},[(s(!0),a(j,null,W(v.slides,z=>(s(),a("div",{key:z,class:"gs__cell"},[t("img",{src:z,alt:v.alt,class:O(["gs__img",V.value]),draggable:"false"},null,10,Ae)]))),128))],4),v.showCounter&&v.slides.length>1?(s(),a("div",Le,u(y.value+1)+"/"+u(v.slides.length),1)):r("",!0),Pe(o.$slots,"dots",{index:y.value,go:M},void 0,!0)],34))}}),de=_e(Xe,[["__scopeId","data-v-0e0334e8"]]);function Ge(v){const $=x(!1),C=x(!1),y=x(!1),S=x(null);return{loading:$,flag:C,notFound:y,productRef:S,load:async()=>{$.value=!0;try{const b=(await De.listProducts()).find(k=>k.id===v)??null;S.value=b,y.value=!b,C.value=!0}catch(_){console.log(_)}finally{$.value=!1}}}}const je=$e("favorites",{state:()=>({ids:[]}),actions:{toggle(v){const $=this.ids.indexOf(v);$===-1?this.ids.push(v):this.ids.splice($,1)},isFavorite(v){return this.ids.includes(v)}}});function We(){return localStorage.getItem("appToken")}const Ee={class:"pd"},Qe={class:"pd__gallery"},He={key:0,class:"pd__counter"},Je={key:1,class:"pd__dots"},Ke=["aria-label","onClick"],Ye={key:1,class:"pd__stage pd__stage--empty"},Ze={class:"pd__sheet"},et={class:"pd__head"},tt={class:"pd__headMain"},st={class:"pd__title"},lt={class:"pd__sub"},at={key:0,class:"pd__code"},nt={key:1,class:"pd__dotSep"},ot={key:2},it={class:"pd__figures"},ut={class:"pd__figure"},rt={class:"pd__figureValue"},dt={key:0,class:"pd__figure"},ct={class:"pd__figureValue"},vt={key:0,class:"pd__block"},_t={class:"pd__variants no-scrollbar"},pt=["onClick"],ft={class:"pd__variantTitle"},gt={class:"pd__variantWeight"},yt={class:"pd__block"},mt={class:"pd__specs"},bt={class:"pd__spec"},kt={key:0,class:"pd__spec"},ht={key:1,class:"pd__spec"},xt={key:2,class:"pd__spec"},Ct={key:3,class:"pd__spec"},wt={key:1,class:"pd__block"},Pt={class:"pd__trust"},$t={class:"pd__bar"},It={key:0,class:"pd__qty"},Tt={class:"pd__qtyValue"},St=["aria-label"],zt=["disabled"],Rt={key:0,class:"pd__previewCounter"},qt={key:1,class:"pd__previewThumbs no-scrollbar"},Ot=["aria-label","onClick"],Vt=["src","alt"],Mt=["src"],Ft=ce({__name:"SingleProduct",props:{id:{}},emits:["closeDrawer"],setup(v,{emit:$}){const C=v,y=$,S=Re(),V=je(),_=Fe(),b=()=>{y("closeDrawer"),S.currentRoute.value.name==="singleProduct"&&S.back()},k=x(!1),f=x(!1),h=x(0),I=x(!1),g=Ge(C.id),E=g.loading,Q=g.flag,A={id:C.id,title:"",description:null,variants:[],images:[],category:null,brand:null,collections:[]},m=n(()=>Be(g.productRef.value??A)),L=n(()=>m.value.id.value),M=n(()=>m.value.title.value),N=n(()=>m.value.productCode.value),o=n(()=>m.value.variants.value),c=n({get:()=>m.value.selectedVariant.value,set:l=>m.value.selectedVariant.value=l}),z=n(()=>m.value.min_gram.value),H=n(()=>m.value.wage.value),J=n(()=>m.value.qty.value),te=n(()=>m.value.isPreOrder.value),K=n(()=>m.value.is_exist.value),Y=n(()=>{var l;return((l=g.productRef.value)==null?void 0:l.description)??""}),pe=n(()=>Y.value.length>120),D=n(()=>{var l,e;return((e=(l=g.productRef.value)==null?void 0:l.category)==null?void 0:e.title)??""}),se=n(()=>{var l,e;return((e=(l=g.productRef.value)==null?void 0:l.brand)==null?void 0:e.title)??""}),le=n(()=>{var l;return(((l=g.productRef.value)==null?void 0:l.images.length)??0)>0}),w=n(()=>{var l;return((l=g.productRef.value)==null?void 0:l.images.map(e=>e.url))??[]});Ie(w,l=>{h.value>l.length-1&&(h.value=0)});const X=x(!1);function fe(){le.value&&(X.value=!0,document.body.style.overflow="hidden")}function ae(){X.value=!1,document.body.style.overflow=""}const ne=n(()=>{const l=H.value;return l==null?"":l%1===0?String(l):l.toFixed(2)}),ge=n(()=>J.value>0?`${J.value} عدد موجود`:te.value?"پیش‌سفارش":"ناموجود"),ye=n(()=>J.value>0?"is-in":te.value?"is-pre":"is-out"),F=n(()=>{var l,e;return{vid:((l=c.value)==null?void 0:l.id)??"",note:null,pid:((e=g.productRef.value)==null?void 0:e.id)??C.id,product:g.productRef.value??A,qty:1}}),oe=n(()=>_.isInCart(F.value)),G=n(()=>_.find_index(F.value)),B=n(()=>G.value>-1?_.items[G.value].qty:0),me=()=>_.updateFeild(B.value+1,G.value,F.value,"qty"),be=()=>{if(B.value<=1){_.remove(F.value);return}_.updateFeild(B.value-1,G.value,F.value,"qty")},ke=()=>{_.addToCart(F.value),k.value=!0},he=l=>{l.stopPropagation(),V.toggle(C.id)};return Te(async()=>{await g.load()}),ve(()=>{X.value&&(document.body.style.overflow="")}),(l,e)=>{const xe=qe("router-link");return R(Q)&&R(g).productRef.value?(s(),U(Oe,{key:0,spinning:R(E),tip:"درحال دریافت اطلاعات"},{default:q(()=>[t("article",Ee,[t("div",Qe,[t("button",{type:"button",class:"pd__round pd__round--back","aria-label":"بازگشت",onClick:b},[d(p,{icon:"vuesax-linear:arrow-right-1",size:"19"})]),t("button",{type:"button",class:O(["pd__round pd__round--fav",{"is-on":R(V).isFavorite(L.value)}]),"aria-label":"علاقه‌مندی",onClick:he},[d(p,{icon:R(V).isFavorite(L.value)?"vuesax-linear:heart-fill":"vuesax-linear:heart",size:"19"},null,8,["icon"])],2),le.value?(s(),U(de,{key:0,index:h.value,"onUpdate:index":e[0]||(e[0]=i=>h.value=i),slides:w.value,alt:M.value,class:"pd__stage",onTap:fe},{dots:q(({index:i,go:T})=>[w.value.length>1?(s(),a("div",He,u(i+1)+"/"+u(w.value.length),1)):r("",!0),w.value.length>1?(s(),a("div",Je,[(s(!0),a(j,null,W(w.value,(Z,ee)=>(s(),a("button",{key:Z,type:"button",class:O(["pd__dot",{"is-on":ee===i}]),"aria-label":`تصویر ${ee+1}`,onClick:ue(Dt=>T(ee),["stop"])},null,10,Ke))),128))])):r("",!0)]),_:1},8,["index","slides","alt"])):(s(),a("div",Ye,[d(p,{icon:"vuesax-linear:diamonds",size:"46"})]))]),t("div",Ze,[t("header",et,[t("div",tt,[t("h1",st,u(M.value),1),t("div",lt,[N.value?(s(),a("span",at,u(N.value),1)):r("",!0),D.value?(s(),a("span",nt,"·")):r("",!0),D.value?(s(),a("span",ot,u(D.value),1)):r("",!0)])]),t("span",{class:O(["pd__stock",ye.value])},u(ge.value),3)]),t("div",it,[t("div",ut,[e[9]||(e[9]=t("span",{class:"pd__figureLabel"},"وزن تقریبی",-1)),t("span",rt,[P(u(z.value)+" ",1),e[8]||(e[8]=t("span",{class:"pd__figureUnit"},"گرم",-1))])]),H.value!=null?(s(),a("div",dt,[e[11]||(e[11]=t("span",{class:"pd__figureLabel"},"اجرت",-1)),t("span",ct,[P(u(ne.value)+" ",1),e[10]||(e[10]=t("span",{class:"pd__figureUnit"},"درصد",-1))])])):r("",!0)]),o.value&&o.value.length>1?(s(),a("section",vt,[e[12]||(e[12]=t("h2",{class:"pd__blockTitle"},"انتخاب وزن",-1)),t("div",_t,[(s(!0),a(j,null,W(o.value,i=>{var T;return s(),a("button",{key:i.id,type:"button",class:O(["pd__variant",{"is-on":((T=c.value)==null?void 0:T.id)===i.id}]),onClick:Z=>c.value=i},[t("span",ft,u(i.title),1),t("span",gt,u(Number(i.rashWeightGrams))+" گرم",1)],10,pt)}),128))])])):r("",!0),t("section",yt,[e[18]||(e[18]=t("h2",{class:"pd__blockTitle"},"مشخصات",-1)),t("dl",mt,[t("div",bt,[t("dt",null,[d(p,{icon:"vuesax-linear:weight",size:"15"}),e[13]||(e[13]=P(" وزن",-1))]),t("dd",null,u(z.value)+" گرم",1)]),H.value!=null?(s(),a("div",kt,[t("dt",null,[d(p,{icon:"vuesax-linear:percentage-square",size:"15"}),e[14]||(e[14]=P(" اجرت",-1))]),t("dd",null,u(ne.value)+"٪",1)])):r("",!0),c.value?(s(),a("div",ht,[t("dt",null,[d(p,{icon:"vuesax-linear:diamonds",size:"15"}),e[15]||(e[15]=P(" تنوع",-1))]),t("dd",null,u(c.value.title),1)])):r("",!0),D.value?(s(),a("div",xt,[t("dt",null,[d(p,{icon:"vuesax-linear:category",size:"15"}),e[16]||(e[16]=P(" دسته‌بندی",-1))]),t("dd",null,u(D.value),1)])):r("",!0),se.value?(s(),a("div",Ct,[t("dt",null,[d(p,{icon:"vuesax-linear:shop",size:"15"}),e[17]||(e[17]=P(" برند",-1))]),t("dd",null,u(se.value),1)])):r("",!0)])]),Y.value?(s(),a("section",wt,[e[19]||(e[19]=t("h2",{class:"pd__blockTitle"},"توضیحات",-1)),t("p",{class:O(["pd__body",{"is-clamped":!I.value}])},u(Y.value),3),pe.value?(s(),a("button",{key:0,type:"button",class:"pd__more",onClick:e[1]||(e[1]=i=>I.value=!I.value)},u(I.value?"بستن":"ادامه مطلب"),1)):r("",!0)])):r("",!0),t("div",Pt,[t("span",null,[d(p,{icon:"vuesax-linear:shield-tick",size:"16"}),e[20]||(e[20]=P(" خرید امن",-1))]),t("span",null,[d(p,{icon:"vuesax-linear:verify",size:"16"}),e[21]||(e[21]=P(" اصالت کالا",-1))])])]),t("div",$t,[oe.value?(s(),a("div",It,[t("button",{type:"button",class:"pd__qtyBtn","aria-label":"افزایش",onClick:me},[d(p,{icon:"vuesax-linear:add",size:"16"})]),t("span",Tt,u(B.value),1),t("button",{type:"button",class:"pd__qtyBtn","aria-label":B.value===1?"حذف":"کاهش",onClick:be},[d(p,{icon:B.value===1?"vuesax-linear:trash":"vuesax-linear:minus-square",size:"16"},null,8,["icon"])],8,St)])):r("",!0),oe.value?(s(),U(xe,{key:2,class:"pd__cta pd__cta--ghost",to:{name:"cart"}},{default:q(()=>[e[22]||(e[22]=P(" مشاهده سبد خرید ",-1)),d(p,{icon:"vuesax-linear:arrow-left-2",size:"17"})]),_:1})):(s(),a("button",{key:1,type:"button",class:"pd__cta",disabled:!K.value,onClick:e[2]||(e[2]=i=>R(We)()?ke():f.value=!0)},[P(u(K.value?"افزودن به سفارش":"ناموجود")+" ",1),K.value?(s(),U(p,{key:0,icon:"vuesax-linear:arrow-left-2",size:"17"})):r("",!0)],8,zt))])]),(s(),U(Se,{to:"body"},[d(ze,{name:"pd-preview"},{default:q(()=>[X.value?(s(),a("div",{key:0,class:"pd__preview",onClick:ue(ae,["self"])},[t("button",{type:"button",class:"pd__previewClose","aria-label":"بستن",onClick:ae},[d(p,{icon:"vuesax-linear:add",size:"20"})]),w.value.length>1?(s(),a("div",Rt,u(h.value+1)+" / "+u(w.value.length),1)):r("",!0),d(de,{index:h.value,"onUpdate:index":e[3]||(e[3]=i=>h.value=i),slides:w.value,alt:M.value,class:"pd__previewStage",fit:"contain"},null,8,["index","slides","alt"]),w.value.length>1?(s(),a("div",qt,[(s(!0),a(j,null,W(w.value,(i,T)=>(s(),a("button",{key:i,type:"button",class:O(["pd__previewThumb",{"is-on":T===h.value}]),"aria-label":`تصویر ${T+1}`,onClick:Z=>h.value=T},[t("img",{src:i,alt:`${M.value} ${T+1}`,draggable:"false"},null,8,Vt)],10,Ot))),128))])):r("",!0)])):r("",!0)]),_:1})])),d(Ve,{timeOut:3e3,modelValue:k.value,"onUpdate:modelValue":e[4]||(e[4]=i=>k.value=i),color:"background-color: #14161A"},{default:q(()=>[...e[23]||(e[23]=[t("div",{class:"font-bold text-right mb-2"},"ثبت سفارش",-1),t("div",null,"محصول با موفقیت به سبد خرید افزوده شد",-1)])]),_:1},8,["modelValue"]),d(Me,{timeOut:-1,show:f.value,"onUpdate:show":e[7]||(e[7]=i=>f.value=i),closeOnClickOverlay:!0},{img:q(()=>[t("img",{src:R(Ue),alt:"",class:"opacity-80"},null,8,Mt)]),title:q(()=>[...e[24]||(e[24]=[t("div",{class:"p-8 text-justify"}," برای دسترسی به تمامی امکانات نرم افزار هنزاگلد، ابتدا گزینه ورود/ثبت نام را لمس کنید و در صورت نداشتن حساب کاربری، ثبت نام نمایید. ",-1)])]),button:q(()=>[t("div",{class:"text-center font-bold",onClick:e[5]||(e[5]=i=>R(S).push({name:"login"}))},"ورود/ثبت نام"),t("div",{class:"text-center",onClick:e[6]||(e[6]=i=>f.value=!1)},"بیخیال")]),_:1},8,["show"])]),_:1},8,["spinning"])):r("",!0)}}}),Bt=_e(Ft,[["__scopeId","data-v-79acbefa"]]),Wt=Object.freeze(Object.defineProperty({__proto__:null,default:Bt},Symbol.toStringTag,{value:"Module"}));export{Bt as S,Wt as a,je as u};