diff --git a/dist/assets/AddressCompletionModal-DV8NqYZ8.js b/dist/assets/AddressCompletionModal-CtlERD8F.js similarity index 98% rename from dist/assets/AddressCompletionModal-DV8NqYZ8.js rename to dist/assets/AddressCompletionModal-CtlERD8F.js index 65b4df3..653e14c 100644 --- a/dist/assets/AddressCompletionModal-DV8NqYZ8.js +++ b/dist/assets/AddressCompletionModal-CtlERD8F.js @@ -1 +1 @@ -import{D as e,G as t,K as n,M as r,Pt as i,U as a,_ as o,d as s,f as c,g as l,l as u,nt as d,o as f,t as p,u as m,v as h}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{l as g,o as _}from"./BasicIcon-DPmc0iaK.js";import{t as v}from"./http-CU_N-R2R.js";import{r as y,u as b}from"./index-DYwnTikp.js";import{t as x}from"./catalogRequests-COPPKp3x.js";import{t as S}from"./addresses-tV-zgZYG.js";var C=`درخواست دریافت فیزیکی کالیته برای شما ثبت شد و به زودی همکاران ما برای شما خواهند آورد`;function w(){let e=x(),t=b(),n=d(!1),r=d(!1),i=d(null),a=d(``);function o(){r.value=!1,i.value=null,a.value=``}async function s(n,r){let i=await e.create({items:[{productId:n.id,productName:n.name,productCode:n.code,quantity:1}],note:`آدرس: ${r}`});return i.success?(t.show(C),!0):(a.value=i.message,!1)}async function c(e){a.value=``;let t=``;try{let e=await S.list();t=(e.find(e=>e.isDefault)??e[0])?.text.trim()??``}catch{t=``}if(t){n.value=!0;try{await s(e,t)}finally{n.value=!1}return}i.value=e,r.value=!0}async function l(e){let t=e.trim();if(!t)return a.value=`آدرس الزامی است.`,!1;let r=i.value;if(!r)return!1;a.value=``,n.value=!0;try{await S.create({text:t});let e=await s(r,t);return e&&o(),e}catch(e){return a.value=e instanceof v||e instanceof Error?e.message:`ذخیره آدرس ناموفق بود.`,!1}finally{n.value=!1}}return{requesting:n,addressModalOpen:r,addressError:a,requestCatalog:c,submitAddressAndRequest:l,closeAddressModal:o}}var T={class:`dialog card address-modal`},E={class:`address-modal__field`},D={key:0,class:`address-modal__error`},O={class:`dialog-actions address-modal__actions`},k=p(h({__name:`AddressCompletionModal`,props:{open:{type:Boolean},loading:{type:Boolean},error:{}},emits:[`close`,`submit`],setup(p,{emit:h}){let v=p,b=h,x=d(``);a(()=>v.open,e=>{e&&(x.value=``)});function S(e){e.key===`Escape`&&v.open&&b(`close`)}a(()=>v.open,e=>{document.body.style.overflow=e?`hidden`:``,e?window.addEventListener(`keydown`,S):window.removeEventListener(`keydown`,S)},{immediate:!0}),e(()=>{document.body.style.overflow=``,window.removeEventListener(`keydown`,S)});function C(){b(`submit`,x.value)}return(e,a)=>(r(),m(f,{to:`body`},[p.open?(r(),c(`div`,{key:0,class:`dialog-overlay address-modal-overlay`,role:`dialog`,"aria-modal":`true`,"aria-labelledby":`address-modal-title`,onClick:a[2]||=g(e=>b(`close`),[`self`])},[u(`div`,T,[a[5]||=u(`h3`,{id:`address-modal-title`,class:`address-modal__title`},`تکمیل آدرس`,-1),a[6]||=u(`p`,{class:`address-modal__hint`},` برای ارسال کالیته فیزیکی، آدرس محل فعالیت خود را وارد کنید. این آدرس در اطلاعات کاربری شما ذخیره می‌شود. `,-1),u(`label`,E,[a[3]||=u(`span`,{class:`form-label`},`آدرس`,-1),n(u(`textarea`,{"onUpdate:modelValue":a[0]||=e=>x.value=e,class:`address-modal__textarea`,rows:`3`,maxlength:`500`,placeholder:`آدرس کامل محل فعالیت`},null,512),[[_,x.value]])]),p.error?(r(),c(`p`,D,i(p.error),1)):s(``,!0),u(`div`,O,[o(y,{variant:`outline`,disabled:p.loading,onClick:a[1]||=e=>b(`close`)},{default:t(()=>[...a[4]||=[l(` انصراف `,-1)]]),_:1},8,[`disabled`]),o(y,{disabled:p.loading,onClick:C},{default:t(()=>[l(i(p.loading?`در حال ثبت...`:`ثبت درخواست`),1)]),_:1},8,[`disabled`])])])])):s(``,!0)]))}}),[[`__scopeId`,`data-v-0a7c2418`]]);export{w as n,k as t}; \ No newline at end of file +import{D as e,G as t,K as n,M as r,Pt as i,U as a,_ as o,d as s,f as c,g as l,l as u,nt as d,o as f,t as p,u as m,v as h}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{l as g,o as _}from"./BasicIcon-DPmc0iaK.js";import{t as v}from"./http-CU_N-R2R.js";import{r as y,u as b}from"./index-CE4Fw0WE.js";import{t as x}from"./catalogRequests-COPPKp3x.js";import{t as S}from"./addresses-tV-zgZYG.js";var C=`درخواست دریافت فیزیکی کالیته برای شما ثبت شد و به زودی همکاران ما برای شما خواهند آورد`;function w(){let e=x(),t=b(),n=d(!1),r=d(!1),i=d(null),a=d(``);function o(){r.value=!1,i.value=null,a.value=``}async function s(n,r){let i=await e.create({items:[{productId:n.id,productName:n.name,productCode:n.code,quantity:1}],note:`آدرس: ${r}`});return i.success?(t.show(C),!0):(a.value=i.message,!1)}async function c(e){a.value=``;let t=``;try{let e=await S.list();t=(e.find(e=>e.isDefault)??e[0])?.text.trim()??``}catch{t=``}if(t){n.value=!0;try{await s(e,t)}finally{n.value=!1}return}i.value=e,r.value=!0}async function l(e){let t=e.trim();if(!t)return a.value=`آدرس الزامی است.`,!1;let r=i.value;if(!r)return!1;a.value=``,n.value=!0;try{await S.create({text:t});let e=await s(r,t);return e&&o(),e}catch(e){return a.value=e instanceof v||e instanceof Error?e.message:`ذخیره آدرس ناموفق بود.`,!1}finally{n.value=!1}}return{requesting:n,addressModalOpen:r,addressError:a,requestCatalog:c,submitAddressAndRequest:l,closeAddressModal:o}}var T={class:`dialog card address-modal`},E={class:`address-modal__field`},D={key:0,class:`address-modal__error`},O={class:`dialog-actions address-modal__actions`},k=p(h({__name:`AddressCompletionModal`,props:{open:{type:Boolean},loading:{type:Boolean},error:{}},emits:[`close`,`submit`],setup(p,{emit:h}){let v=p,b=h,x=d(``);a(()=>v.open,e=>{e&&(x.value=``)});function S(e){e.key===`Escape`&&v.open&&b(`close`)}a(()=>v.open,e=>{document.body.style.overflow=e?`hidden`:``,e?window.addEventListener(`keydown`,S):window.removeEventListener(`keydown`,S)},{immediate:!0}),e(()=>{document.body.style.overflow=``,window.removeEventListener(`keydown`,S)});function C(){b(`submit`,x.value)}return(e,a)=>(r(),m(f,{to:`body`},[p.open?(r(),c(`div`,{key:0,class:`dialog-overlay address-modal-overlay`,role:`dialog`,"aria-modal":`true`,"aria-labelledby":`address-modal-title`,onClick:a[2]||=g(e=>b(`close`),[`self`])},[u(`div`,T,[a[5]||=u(`h3`,{id:`address-modal-title`,class:`address-modal__title`},`تکمیل آدرس`,-1),a[6]||=u(`p`,{class:`address-modal__hint`},` برای ارسال کالیته فیزیکی، آدرس محل فعالیت خود را وارد کنید. این آدرس در اطلاعات کاربری شما ذخیره می‌شود. `,-1),u(`label`,E,[a[3]||=u(`span`,{class:`form-label`},`آدرس`,-1),n(u(`textarea`,{"onUpdate:modelValue":a[0]||=e=>x.value=e,class:`address-modal__textarea`,rows:`3`,maxlength:`500`,placeholder:`آدرس کامل محل فعالیت`},null,512),[[_,x.value]])]),p.error?(r(),c(`p`,D,i(p.error),1)):s(``,!0),u(`div`,O,[o(y,{variant:`outline`,disabled:p.loading,onClick:a[1]||=e=>b(`close`)},{default:t(()=>[...a[4]||=[l(` انصراف `,-1)]]),_:1},8,[`disabled`]),o(y,{disabled:p.loading,onClick:C},{default:t(()=>[l(i(p.loading?`در حال ثبت...`:`ثبت درخواست`),1)]),_:1},8,[`disabled`])])])])):s(``,!0)]))}}),[[`__scopeId`,`data-v-0a7c2418`]]);export{w as n,k as t}; \ No newline at end of file diff --git a/dist/assets/AddressesView-C3SN6Jwn.js b/dist/assets/AddressesView-2ETl40m5.js similarity index 98% rename from dist/assets/AddressesView-C3SN6Jwn.js rename to dist/assets/AddressesView-2ETl40m5.js index 13eae36..0aa9596 100644 --- a/dist/assets/AddressesView-C3SN6Jwn.js +++ b/dist/assets/AddressesView-2ETl40m5.js @@ -1 +1 @@ -import{At as e,D as t,F as ee,G as n,K as r,M as i,Pt as a,U as o,_ as s,d as c,f as l,g as u,i as d,k as te,l as f,nt as p,o as m,t as ne,u as h,ut as g,v as _}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{l as v,n as re,o as y,t as b}from"./BasicIcon-DPmc0iaK.js";import{n as ie}from"./dist-Bc4P4ngC.js";import{t as x}from"./http-CU_N-R2R.js";import{t as ae}from"./IconPlus-Dk2FJATn.js";import{r as S,u as oe}from"./index-DYwnTikp.js";import{t as se}from"./IconTrash-B73-wwf6.js";import{t as C}from"./addresses-tV-zgZYG.js";import{t as ce}from"./ProfileSubpageLayout-CbD3-u8j.js";var w=_({__name:`IconMapPin`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,ee)=>(i(),h(b,{icon:`vuesax-linear:location`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),T=_({__name:`IconVerified`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,ee)=>(i(),h(b,{icon:`vuesax-linear:verify`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),le={class:`addresses-page`},ue={class:`addresses-page__toolbar`},de={key:0,class:`addr-error`,role:`alert`},fe={key:1,class:`addr-muted`},pe={key:2,class:`addr-list`},E={class:`addr-card__main`},D={class:`addr-card__icon`,"aria-hidden":`true`},O={class:`addr-card__body`},k={class:`addr-card__head`},A={key:0,class:`addr-default-badge`},j={class:`addr-card__label`},M={class:`addr-card__text`},N={class:`addr-card__actions`},P=[`onClick`],F=[`onClick`],I={key:3,class:`addr-empty`},L={class:`addr-add-sheet`},R={class:`addr-field`},z={class:`addr-field`},B={key:0,class:`addr-error`,role:`alert`},me={class:`dialog card addr-add-modal`},he={class:`addr-field`},ge={class:`addr-field`},_e={key:0,class:`addr-error`,role:`alert`},ve={class:`dialog-actions addr-add-modal__actions`},V=ne(_({__name:`AddressesView`,setup(ne){let _=ie(`(min-width: 768px)`),b=oe(),V=p([]),H=p(``),U=p(``),W=p(``),G=p(``),K=p(!0),q=p(!1),J=p(!1);async function ye(){K.value=!0,W.value=``;try{V.value=await C.list()}catch(e){W.value=e instanceof x||e instanceof Error?e.message:`دریافت آدرس‌ها ناموفق بود.`}finally{K.value=!1}}te(ye);function Y(){H.value=``,U.value=``,G.value=``}function X(){Y(),J.value=!0}function Z(){q.value||(J.value=!1,Y())}function Q(e){e.key===`Escape`&&J.value&&Z()}o(J,e=>{document.body.style.overflow=e?`hidden`:``,e?window.addEventListener(`keydown`,Q):window.removeEventListener(`keydown`,Q)}),t(()=>{document.body.style.overflow=``,window.removeEventListener(`keydown`,Q)});async function $(){let e=H.value.trim();if(e.length<3||q.value){G.value=`آدرس را کامل‌تر بنویسید.`;return}q.value=!0,G.value=``;try{await C.create({text:e,label:U.value.trim()||void 0}),V.value=await C.list(),Z(),b.show(`آدرس با موفقیت ثبت شد.`,{tone:`success`})}catch(e){G.value=e instanceof x||e instanceof Error?e.message:`ذخیره آدرس ناموفق بود.`}finally{q.value=!1}}async function be(e){W.value=``;try{V.value=await C.makeDefault(e),b.show(`آدرس پیش‌فرض به‌روزرسانی شد.`,{tone:`success`})}catch(e){W.value=e instanceof Error?e.message:`تغییر آدرس پیش‌فرض ناموفق بود.`}}async function xe(e){W.value=``;try{V.value=await C.remove(e),b.show(`آدرس حذف شد.`,{tone:`success`})}catch(e){W.value=e instanceof Error?e.message:`حذف آدرس ناموفق بود.`}}return(t,o)=>(i(),l(`div`,le,[s(ce,{title:`آدرس‌ها`,subtitle:`برای ارسال کالیته از آدرس پیش‌فرض استفاده می‌شود`},{default:n(()=>[f(`div`,ue,[o[5]||=f(`p`,{class:`addresses-page__hint`},`آدرس‌های محل فعالیت برای ارسال کالیته`,-1),s(S,{class:`addresses-page__new-btn`,size:`sm`,onClick:X},{default:n(()=>[s(ae,{size:18}),o[4]||=u(` آدرس جدید `,-1)]),_:1})]),W.value?(i(),l(`p`,de,a(W.value),1)):c(``,!0),K.value?(i(),l(`p`,fe,`در حال دریافت…`)):V.value.length?(i(),l(`ul`,pe,[(i(!0),l(d,null,ee(V.value,t=>(i(),l(`li`,{key:t.id,class:e([`addr-card`,{"addr-card--default":t.isDefault}])},[f(`div`,E,[f(`div`,D,[s(w,{size:20})]),f(`div`,O,[f(`div`,k,[t.isDefault?(i(),l(`span`,A,[s(T,{size:16}),o[6]||=u(` پیش‌فرض ارسال `,-1)])):c(``,!0),f(`strong`,j,a(t.label||`آدرس`),1)]),f(`p`,M,a(t.text),1)])]),f(`div`,N,[t.isDefault?c(``,!0):(i(),l(`button`,{key:0,type:`button`,class:`addr-icon-btn`,"aria-label":`انتخاب به‌عنوان آدرس پیش‌فرض`,title:`پیش‌فرض`,onClick:e=>be(t.id)},[s(T,{size:20})],8,P)),f(`button`,{type:`button`,class:`addr-icon-btn addr-icon-btn--danger`,"aria-label":`حذف آدرس`,title:`حذف`,onClick:e=>xe(t.id)},[s(se,{size:20})],8,F)])],2))),128))])):(i(),l(`div`,I,[s(w,{size:40,class:`addr-empty__icon`}),o[8]||=f(`p`,{class:`addr-muted`},`هنوز آدرسی ثبت نشده است.`,-1),s(S,{size:`sm`,variant:`outline`,onClick:X},{default:n(()=>[...o[7]||=[u(`افزودن اولین آدرس`,-1)]]),_:1})]))]),_:1}),(i(),h(m,{to:`body`},[s(re,{name:`addr-sheet`},{default:n(()=>[J.value&&!g(_)?(i(),l(`div`,{key:0,class:`addr-add-panel`,role:`dialog`,"aria-modal":`true`,"aria-labelledby":`addr-add-title-mobile`,onClick:v(Z,[`self`])},[f(`div`,L,[o[13]||=f(`div`,{class:`addr-add-sheet__handle`,"aria-hidden":`true`},null,-1),f(`header`,{class:`addr-add-sheet__head`},[o[9]||=f(`h2`,{id:`addr-add-title-mobile`},`آدرس جدید`,-1),f(`button`,{type:`button`,class:`addr-add-sheet__close`,"aria-label":`بستن`,onClick:Z},` × `)]),f(`form`,{class:`addr-form`,onSubmit:v($,[`prevent`])},[f(`label`,R,[o[10]||=f(`span`,null,`عنوان (اختیاری)`,-1),r(f(`input`,{"onUpdate:modelValue":o[0]||=e=>U.value=e,type:`text`,maxlength:`40`,placeholder:`مثلاً فروشگاه`},null,512),[[y,U.value]])]),f(`label`,z,[o[11]||=f(`span`,null,`آدرس`,-1),r(f(`textarea`,{"onUpdate:modelValue":o[1]||=e=>H.value=e,rows:`3`,maxlength:`500`,placeholder:`آدرس کامل محل فعالیت`},null,512),[[y,H.value]])]),G.value?(i(),l(`p`,B,a(G.value),1)):c(``,!0),s(S,{type:`submit`,class:`addr-form__submit`,loading:q.value},{default:n(()=>[...o[12]||=[u(` افزودن آدرس `,-1)]]),_:1},8,[`loading`])],32)])])):c(``,!0)]),_:1})])),(i(),h(m,{to:`body`},[J.value&&g(_)?(i(),l(`div`,{key:0,class:`dialog-overlay addr-add-overlay`,role:`dialog`,"aria-modal":`true`,"aria-labelledby":`addr-add-title-desktop`,onClick:v(Z,[`self`])},[f(`div`,me,[o[18]||=f(`h2`,{id:`addr-add-title-desktop`,class:`addr-add-modal__title`},`آدرس جدید`,-1),o[19]||=f(`p`,{class:`addr-add-modal__hint`},`آدرس کامل محل فعالیت را وارد کنید.`,-1),f(`form`,{class:`addr-form`,onSubmit:v($,[`prevent`])},[f(`label`,he,[o[14]||=f(`span`,null,`عنوان (اختیاری)`,-1),r(f(`input`,{"onUpdate:modelValue":o[2]||=e=>U.value=e,type:`text`,maxlength:`40`,placeholder:`مثلاً فروشگاه`},null,512),[[y,U.value]])]),f(`label`,ge,[o[15]||=f(`span`,null,`آدرس`,-1),r(f(`textarea`,{"onUpdate:modelValue":o[3]||=e=>H.value=e,rows:`3`,maxlength:`500`,placeholder:`آدرس کامل محل فعالیت`},null,512),[[y,H.value]])]),G.value?(i(),l(`p`,_e,a(G.value),1)):c(``,!0),f(`div`,ve,[s(S,{type:`button`,variant:`outline`,disabled:q.value,onClick:Z},{default:n(()=>[...o[16]||=[u(` انصراف `,-1)]]),_:1},8,[`disabled`]),s(S,{type:`submit`,loading:q.value},{default:n(()=>[...o[17]||=[u(`افزودن آدرس`,-1)]]),_:1},8,[`loading`])])],32)])])):c(``,!0)]))]))}}),[[`__scopeId`,`data-v-c10ac267`]]);export{V as default}; \ No newline at end of file +import{At as e,D as t,F as ee,G as n,K as r,M as i,Pt as a,U as o,_ as s,d as c,f as l,g as u,i as d,k as te,l as f,nt as p,o as m,t as ne,u as h,ut as g,v as _}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{l as v,n as re,o as y,t as b}from"./BasicIcon-DPmc0iaK.js";import{n as ie}from"./dist-Bc4P4ngC.js";import{t as x}from"./http-CU_N-R2R.js";import{t as ae}from"./IconPlus-Dk2FJATn.js";import{r as S,u as oe}from"./index-CE4Fw0WE.js";import{t as se}from"./IconTrash-B73-wwf6.js";import{t as C}from"./addresses-tV-zgZYG.js";import{t as ce}from"./ProfileSubpageLayout-TZxLAQ-r.js";var w=_({__name:`IconMapPin`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,ee)=>(i(),h(b,{icon:`vuesax-linear:location`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),T=_({__name:`IconVerified`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,ee)=>(i(),h(b,{icon:`vuesax-linear:verify`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),le={class:`addresses-page`},ue={class:`addresses-page__toolbar`},de={key:0,class:`addr-error`,role:`alert`},fe={key:1,class:`addr-muted`},pe={key:2,class:`addr-list`},E={class:`addr-card__main`},D={class:`addr-card__icon`,"aria-hidden":`true`},O={class:`addr-card__body`},k={class:`addr-card__head`},A={key:0,class:`addr-default-badge`},j={class:`addr-card__label`},M={class:`addr-card__text`},N={class:`addr-card__actions`},P=[`onClick`],F=[`onClick`],I={key:3,class:`addr-empty`},L={class:`addr-add-sheet`},R={class:`addr-field`},z={class:`addr-field`},B={key:0,class:`addr-error`,role:`alert`},me={class:`dialog card addr-add-modal`},he={class:`addr-field`},ge={class:`addr-field`},_e={key:0,class:`addr-error`,role:`alert`},ve={class:`dialog-actions addr-add-modal__actions`},V=ne(_({__name:`AddressesView`,setup(ne){let _=ie(`(min-width: 768px)`),b=oe(),V=p([]),H=p(``),U=p(``),W=p(``),G=p(``),K=p(!0),q=p(!1),J=p(!1);async function ye(){K.value=!0,W.value=``;try{V.value=await C.list()}catch(e){W.value=e instanceof x||e instanceof Error?e.message:`دریافت آدرس‌ها ناموفق بود.`}finally{K.value=!1}}te(ye);function Y(){H.value=``,U.value=``,G.value=``}function X(){Y(),J.value=!0}function Z(){q.value||(J.value=!1,Y())}function Q(e){e.key===`Escape`&&J.value&&Z()}o(J,e=>{document.body.style.overflow=e?`hidden`:``,e?window.addEventListener(`keydown`,Q):window.removeEventListener(`keydown`,Q)}),t(()=>{document.body.style.overflow=``,window.removeEventListener(`keydown`,Q)});async function $(){let e=H.value.trim();if(e.length<3||q.value){G.value=`آدرس را کامل‌تر بنویسید.`;return}q.value=!0,G.value=``;try{await C.create({text:e,label:U.value.trim()||void 0}),V.value=await C.list(),Z(),b.show(`آدرس با موفقیت ثبت شد.`,{tone:`success`})}catch(e){G.value=e instanceof x||e instanceof Error?e.message:`ذخیره آدرس ناموفق بود.`}finally{q.value=!1}}async function be(e){W.value=``;try{V.value=await C.makeDefault(e),b.show(`آدرس پیش‌فرض به‌روزرسانی شد.`,{tone:`success`})}catch(e){W.value=e instanceof Error?e.message:`تغییر آدرس پیش‌فرض ناموفق بود.`}}async function xe(e){W.value=``;try{V.value=await C.remove(e),b.show(`آدرس حذف شد.`,{tone:`success`})}catch(e){W.value=e instanceof Error?e.message:`حذف آدرس ناموفق بود.`}}return(t,o)=>(i(),l(`div`,le,[s(ce,{title:`آدرس‌ها`,subtitle:`برای ارسال کالیته از آدرس پیش‌فرض استفاده می‌شود`},{default:n(()=>[f(`div`,ue,[o[5]||=f(`p`,{class:`addresses-page__hint`},`آدرس‌های محل فعالیت برای ارسال کالیته`,-1),s(S,{class:`addresses-page__new-btn`,size:`sm`,onClick:X},{default:n(()=>[s(ae,{size:18}),o[4]||=u(` آدرس جدید `,-1)]),_:1})]),W.value?(i(),l(`p`,de,a(W.value),1)):c(``,!0),K.value?(i(),l(`p`,fe,`در حال دریافت…`)):V.value.length?(i(),l(`ul`,pe,[(i(!0),l(d,null,ee(V.value,t=>(i(),l(`li`,{key:t.id,class:e([`addr-card`,{"addr-card--default":t.isDefault}])},[f(`div`,E,[f(`div`,D,[s(w,{size:20})]),f(`div`,O,[f(`div`,k,[t.isDefault?(i(),l(`span`,A,[s(T,{size:16}),o[6]||=u(` پیش‌فرض ارسال `,-1)])):c(``,!0),f(`strong`,j,a(t.label||`آدرس`),1)]),f(`p`,M,a(t.text),1)])]),f(`div`,N,[t.isDefault?c(``,!0):(i(),l(`button`,{key:0,type:`button`,class:`addr-icon-btn`,"aria-label":`انتخاب به‌عنوان آدرس پیش‌فرض`,title:`پیش‌فرض`,onClick:e=>be(t.id)},[s(T,{size:20})],8,P)),f(`button`,{type:`button`,class:`addr-icon-btn addr-icon-btn--danger`,"aria-label":`حذف آدرس`,title:`حذف`,onClick:e=>xe(t.id)},[s(se,{size:20})],8,F)])],2))),128))])):(i(),l(`div`,I,[s(w,{size:40,class:`addr-empty__icon`}),o[8]||=f(`p`,{class:`addr-muted`},`هنوز آدرسی ثبت نشده است.`,-1),s(S,{size:`sm`,variant:`outline`,onClick:X},{default:n(()=>[...o[7]||=[u(`افزودن اولین آدرس`,-1)]]),_:1})]))]),_:1}),(i(),h(m,{to:`body`},[s(re,{name:`addr-sheet`},{default:n(()=>[J.value&&!g(_)?(i(),l(`div`,{key:0,class:`addr-add-panel`,role:`dialog`,"aria-modal":`true`,"aria-labelledby":`addr-add-title-mobile`,onClick:v(Z,[`self`])},[f(`div`,L,[o[13]||=f(`div`,{class:`addr-add-sheet__handle`,"aria-hidden":`true`},null,-1),f(`header`,{class:`addr-add-sheet__head`},[o[9]||=f(`h2`,{id:`addr-add-title-mobile`},`آدرس جدید`,-1),f(`button`,{type:`button`,class:`addr-add-sheet__close`,"aria-label":`بستن`,onClick:Z},` × `)]),f(`form`,{class:`addr-form`,onSubmit:v($,[`prevent`])},[f(`label`,R,[o[10]||=f(`span`,null,`عنوان (اختیاری)`,-1),r(f(`input`,{"onUpdate:modelValue":o[0]||=e=>U.value=e,type:`text`,maxlength:`40`,placeholder:`مثلاً فروشگاه`},null,512),[[y,U.value]])]),f(`label`,z,[o[11]||=f(`span`,null,`آدرس`,-1),r(f(`textarea`,{"onUpdate:modelValue":o[1]||=e=>H.value=e,rows:`3`,maxlength:`500`,placeholder:`آدرس کامل محل فعالیت`},null,512),[[y,H.value]])]),G.value?(i(),l(`p`,B,a(G.value),1)):c(``,!0),s(S,{type:`submit`,class:`addr-form__submit`,loading:q.value},{default:n(()=>[...o[12]||=[u(` افزودن آدرس `,-1)]]),_:1},8,[`loading`])],32)])])):c(``,!0)]),_:1})])),(i(),h(m,{to:`body`},[J.value&&g(_)?(i(),l(`div`,{key:0,class:`dialog-overlay addr-add-overlay`,role:`dialog`,"aria-modal":`true`,"aria-labelledby":`addr-add-title-desktop`,onClick:v(Z,[`self`])},[f(`div`,me,[o[18]||=f(`h2`,{id:`addr-add-title-desktop`,class:`addr-add-modal__title`},`آدرس جدید`,-1),o[19]||=f(`p`,{class:`addr-add-modal__hint`},`آدرس کامل محل فعالیت را وارد کنید.`,-1),f(`form`,{class:`addr-form`,onSubmit:v($,[`prevent`])},[f(`label`,he,[o[14]||=f(`span`,null,`عنوان (اختیاری)`,-1),r(f(`input`,{"onUpdate:modelValue":o[2]||=e=>U.value=e,type:`text`,maxlength:`40`,placeholder:`مثلاً فروشگاه`},null,512),[[y,U.value]])]),f(`label`,ge,[o[15]||=f(`span`,null,`آدرس`,-1),r(f(`textarea`,{"onUpdate:modelValue":o[3]||=e=>H.value=e,rows:`3`,maxlength:`500`,placeholder:`آدرس کامل محل فعالیت`},null,512),[[y,H.value]])]),G.value?(i(),l(`p`,_e,a(G.value),1)):c(``,!0),f(`div`,ve,[s(S,{type:`button`,variant:`outline`,disabled:q.value,onClick:Z},{default:n(()=>[...o[16]||=[u(` انصراف `,-1)]]),_:1},8,[`disabled`]),s(S,{type:`submit`,loading:q.value},{default:n(()=>[...o[17]||=[u(`افزودن آدرس`,-1)]]),_:1},8,[`loading`])])],32)])])):c(``,!0)]))]))}}),[[`__scopeId`,`data-v-c10ac267`]]);export{V as default}; \ No newline at end of file diff --git a/dist/assets/AuthShell-BRlVYnTX.js b/dist/assets/AuthShell-prz1TrpO.js similarity index 92% rename from dist/assets/AuthShell-BRlVYnTX.js rename to dist/assets/AuthShell-prz1TrpO.js index 62d4dee..11457f7 100644 --- a/dist/assets/AuthShell-BRlVYnTX.js +++ b/dist/assets/AuthShell-prz1TrpO.js @@ -1 +1 @@ -import{I as e,M as t,_ as n,d as r,f as i,l as a,t as o,ut as s,v as c}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{C as l}from"./index-DYwnTikp.js";import{t as u}from"./IconChevronBack-BsHmfODG.js";import{t as d}from"./nademitex-auth-logo-CQhPwje_.js";var f={class:`auth-shell`},p={class:`auth-shell__body`},m={class:`auth-shell__brand`},h=[`src`],g=o(c({__name:`AuthShell`,props:{backTo:{}},setup(o){let c=l();return(l,g)=>(t(),i(`div`,f,[o.backTo?(t(),i(`button`,{key:0,type:`button`,class:`auth-shell__back`,"aria-label":`بازگشت`,onClick:g[0]||=e=>s(c).push(o.backTo)},[n(u,{size:22,color:`#1e293b`})])):r(``,!0),a(`div`,p,[a(`div`,m,[a(`img`,{class:`auth-shell__logo`,src:s(d),alt:`Nademi Tex`,draggable:`false`},null,8,h)]),e(l.$slots,`default`,{},void 0,!0)])]))}}),[[`__scopeId`,`data-v-3dfa06a5`]]);export{g as t}; \ No newline at end of file +import{I as e,M as t,_ as n,d as r,f as i,l as a,t as o,ut as s,v as c}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{C as l}from"./index-CE4Fw0WE.js";import{t as u}from"./IconChevronBack-BsHmfODG.js";import{t as d}from"./nademitex-auth-logo-CQhPwje_.js";var f={class:`auth-shell`},p={class:`auth-shell__body`},m={class:`auth-shell__brand`},h=[`src`],g=o(c({__name:`AuthShell`,props:{backTo:{}},setup(o){let c=l();return(l,g)=>(t(),i(`div`,f,[o.backTo?(t(),i(`button`,{key:0,type:`button`,class:`auth-shell__back`,"aria-label":`بازگشت`,onClick:g[0]||=e=>s(c).push(o.backTo)},[n(u,{size:22,color:`#1e293b`})])):r(``,!0),a(`div`,p,[a(`div`,m,[a(`img`,{class:`auth-shell__logo`,src:s(d),alt:`Nademi Tex`,draggable:`false`},null,8,h)]),e(l.$slots,`default`,{},void 0,!0)])]))}}),[[`__scopeId`,`data-v-3dfa06a5`]]);export{g as t}; \ No newline at end of file diff --git a/dist/assets/CartView-CbjvTlMq.js b/dist/assets/CartView-_JOMEanl.js similarity index 99% rename from dist/assets/CartView-CbjvTlMq.js rename to dist/assets/CartView-_JOMEanl.js index b5b351c..0acbbd9 100644 --- a/dist/assets/CartView-CbjvTlMq.js +++ b/dist/assets/CartView-_JOMEanl.js @@ -1 +1 @@ -import{At as e,F as t,G as n,M as r,Pt as i,R as a,_ as o,c as s,d as c,f as l,g as u,i as d,k as f,l as p,nt as m,t as h,u as g,ut as _,v}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{l as y,t as b}from"./BasicIcon-DPmc0iaK.js";import{a as x,o as S}from"./format-C72AoJ2H.js";import{t as C}from"./cart-F5Rptvi1.js";import{t as w}from"./IconCart-D9TX5E-P.js";import{t as T}from"./IconOrders-Cf-FXBIB.js";import{C as E,f as D,n as ee,o as O,r as k,x as A}from"./index-DYwnTikp.js";import{t as te}from"./EmptyState-DoHTAy4d.js";import{t as j}from"./IconChevronBack-BsHmfODG.js";import{t as M}from"./FormErrorBanner-Ud1D04xf.js";import{t as N}from"./IconTrash-B73-wwf6.js";import{t as P}from"./CheckoutStepper-DptjKnv0.js";import{t as F}from"./IconClipboardEmpty-DMrB9tzG.js";import{n as I,t as L}from"./IconDiamond-BZQtRyIy.js";function R(){let e=E(),t=C(),n=D(),r=m(!1),i=m(!1),a=m(``),o=s(()=>t.activeCart?.items??[]),c=s(()=>o.value.length===0),l=s(()=>t.companyNamesLabel||t.activeCart?.companyName||``),u=s(()=>t.companySummaries);async function d(e){let n=o.value.find(t=>t.id===e);await ee({title:`حذف از سبد`,message:n?`آیا از حذف «${n.productName}» از سبد خرید مطمئن هستید؟`:`آیا از حذف این آیتم از سبد خرید مطمئن هستید؟`,confirmLabel:`حذف`,cancelLabel:`انصراف`,tone:`danger`})&&t.removeItem(e)}async function p(){if(!(!t.activeCart||o.value.length===0||i.value)){i.value=!0,a.value=``;try{if(await t.hydrate(),!t.activeCart?.items.length){a.value=`سبد خرید خالی است یا با سرور همگام نشد.`;return}let r=await n.submitOrder(t.activeCart);await t.hydrate(),e.replace(`/orders/${r.id}/success`)}catch(e){a.value=e instanceof Error?e.message:`ثبت سفارش ناموفق بود.`,await t.hydrate()}finally{i.value=!1}}}function h(){if(o.value.length!==0){if(t.isFull){r.value=!0;return}p()}}function g(){r.value=!1,p()}async function _(){await t.createNewCartForSameCompany(),r.value=!1,e.push(`/categories`)}return f(()=>{t.ensureActiveCartForCartPage()}),{cartStore:t,items:o,isEmpty:c,companyName:l,companySummaries:u,showFullDialog:r,submitting:i,submitError:a,removeItem:d,proceedToCheckout:h,proceedAnyway:g,createNewInvoice:_}}var z={class:`cart-mobile-page`},B={class:`cart-mobile-page__nav`},V={type:`button`,class:`nav-btn nav-btn--ghost`,"aria-hidden":`true`,tabindex:`-1`},H={key:0,class:`cart-mobile-page__body`},U={key:0,class:`cart-mobile-page__meta`},W={class:`cart-mobile-page__scroll`},G={class:`cart-mobile-table`},K={class:`col-product`},q={class:`col-meterage`},J={class:`col-delete`},Y=[`onClick`],X={class:`cart-mobile-page__footer`},Z={class:`cart-mobile-summary`},Q={class:`cart-mobile-summary__row`},ne={class:`cart-mobile-summary__cap`},re={key:1,class:`cart-mobile-summary__row`},ie={class:`cart-mobile-summary__row cart-mobile-summary__row--remain`},ae=h(v({__name:`MobileCartPage`,props:{items:{},companyName:{},companySummaries:{},totalMeterage:{},maxMeterage:{},remainingCapacity:{},isEmpty:{type:Boolean},submitting:{type:Boolean}},emits:[`back`,`remove`,`checkout`,`selectCompany`],setup(e,{emit:a}){let s=a;return(a,f)=>(r(),l(`div`,z,[p(`header`,B,[p(`button`,{type:`button`,class:`nav-btn`,"aria-label":`بازگشت`,onClick:f[0]||=e=>s(`back`)},[o(j,{size:20})]),f[3]||=p(`h1`,{class:`cart-mobile-page__title`},`سبد خرید`,-1),p(`button`,V,[o(j,{size:18,class:`nav-btn__flip`})])]),e.isEmpty?(r(),g(te,{key:1,variant:`cart`,message:`از دسته‌بندی یا کالیته محصول را انتخاب کنید`},{default:n(()=>[o(k,{onClick:f[2]||=e=>s(`selectCompany`)},{default:n(()=>[...f[10]||=[u(`مشاهده محصولات`,-1)]]),_:1})]),_:1})):(r(),l(`div`,H,[e.companyName?(r(),l(`p`,U,` تأمین‌کننده: `+i(e.companyName),1)):c(``,!0),p(`div`,W,[p(`div`,G,[f[4]||=p(`div`,{class:`cart-mobile-table__head`},[p(`span`,null,`محصول`),p(`span`,null,`متراژ (متر)`),p(`span`,null,`حذف`)],-1),(r(!0),l(d,null,t(e.items,e=>(r(),l(`div`,{key:e.id,class:`cart-mobile-table__row`},[p(`div`,K,[p(`strong`,null,i(e.productName),1),p(`span`,null,`کد: `+i(e.productCode),1)]),p(`div`,q,i(_(S)(e.meterage)),1),p(`div`,J,[p(`button`,{type:`button`,"aria-label":`حذف`,onClick:t=>s(`remove`,e.id)},[o(N,{size:20})],8,Y)])]))),128))])]),p(`div`,X,[p(`div`,Z,[p(`div`,Q,[f[5]||=p(`span`,null,`جمع متراژ کل`,-1),p(`strong`,null,i(_(x)(e.totalMeterage)),1)]),e.companySummaries?.length?(r(!0),l(d,{key:0},t(e.companySummaries,e=>(r(),l(`div`,{key:e.companyId,class:`cart-mobile-summary__row cart-mobile-summary__row--sub`},[p(`span`,null,i(e.companyName),1),p(`strong`,null,[u(i(_(x)(e.meterage))+` `,1),p(`span`,ne,`/ `+i(_(x)(e.maxMeterage)),1)])]))),128)):(r(),l(`div`,re,[f[6]||=p(`span`,null,`حداکثر مجاز`,-1),p(`strong`,null,i(_(x)(e.maxMeterage)),1)])),p(`div`,ie,[f[7]||=p(`span`,null,`باقی مانده`,-1),p(`strong`,null,i(_(x)(e.remainingCapacity)),1)])]),f[9]||=p(`p`,{class:`cart-mobile-page__hint`},` پس از ثبت سفارش، کارشناسان قیمت‌گذاری می‌کنند و فاکتور برای شما صادر می‌شود. `,-1),o(k,{block:``,loading:e.submitting,onClick:f[1]||=e=>s(`checkout`)},{default:n(()=>[...f[8]||=[u(`ثبت پیش‌سفارش`,-1)]]),_:1},8,[`loading`])])]))]))}}),[[`__scopeId`,`data-v-e5c9a8c0`]]),oe=v({__name:`IconLightbulb`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(r(),g(b,{icon:`vuesax-linear:lamp-on`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),se={class:`desktop-page cart-desktop-page`},ce={class:`cart-desktop-page__head`},le={key:0,class:`cart-desktop-page__subtitle`},ue={class:`cart-desktop-page__layout`},de={class:`cart-desktop-page__main`},fe={key:0,class:`cart-empty-card`},pe={class:`cart-empty-card__visual`,"aria-hidden":`true`},me={class:`cart-empty-card__circle`},he={class:`cart-empty-card__actions`},ge={key:1,class:`cart-items-card`},_e={class:`cart-items-card__scroll`},ve={class:`cart-items-table`},ye={class:`cart-items-table__name`},be=[`onClick`],xe={class:`cart-desktop-page__sidebar`},Se={class:`cart-summary-card`},Ce={class:`cart-summary-card__title`},we={class:`cart-summary-card__title-icon`,"aria-hidden":`true`},Te={class:`cart-summary-card__rows`},Ee={class:`cart-summary-card__row`},De={class:`cart-summary-card__row-label`},Oe={class:`cart-summary-card__row`},ke={class:`cart-summary-card__row-label`},Ae={class:`cart-summary-card__row-label`},je={class:`cart-summary-card__cap`},Me={class:`cart-summary-card__row cart-summary-card__row--hint`},Ne={class:`cart-summary-card__row-label`},Pe=[`disabled`],$={class:`cart-guide-card`},Fe={class:`cart-guide-card__title`},Ie={class:`cart-guide-card__title-icon`,"aria-hidden":`true`},Le={class:`cart-guide-card__text`},Re={class:`cart-quick-nav`,"aria-label":`دسترسی سریع`},ze=[`onClick`],Be={class:`cart-quick-nav__body`},Ve={class:`cart-quick-nav__title`},He={class:`cart-quick-nav__desc`},Ue=h(v({__name:`DesktopCartPage`,props:{items:{},companyName:{},companySummaries:{},totalMeterage:{},maxMeterage:{},remainingCapacity:{},isEmpty:{type:Boolean},submitting:{type:Boolean}},emits:[`remove`,`checkout`,`selectCompany`,`back`],setup(n,{emit:s}){let f=s,m=E(),h=[{title:`کالیته‌ها`,desc:`مرور کالیته و طرح‌ها`,icon:I,tone:`blue`,action:()=>m.push(`/catalogs`)},{title:`دسته‌بندی`,desc:`مشاهده محصولات بر اساس کاربرد`,icon:L,tone:`green`,action:()=>m.push(`/categories`)},{title:`سفارش‌های من`,desc:`پیگیری وضعیت سفارش‌ها`,icon:T,tone:`blue`,action:()=>m.push(`/orders`)}];return(s,v)=>(r(),l(`div`,se,[o(P,{"current-step":1}),p(`header`,ce,[v[3]||=p(`h1`,{class:`cart-desktop-page__title`},`سبد خرید`,-1),n.companyName?(r(),l(`p`,le,` تأمین‌کننده: `+i(n.companyName),1)):c(``,!0)]),p(`div`,ue,[p(`section`,de,[n.isEmpty?(r(),l(`div`,fe,[p(`div`,pe,[v[4]||=p(`span`,{class:`cart-empty-card__spark cart-empty-card__spark--1`},`+`,-1),v[5]||=p(`span`,{class:`cart-empty-card__spark cart-empty-card__spark--2`},`·`,-1),p(`span`,me,[o(w,{size:40})]),v[6]||=p(`span`,{class:`cart-empty-card__spark cart-empty-card__spark--3`},`·`,-1)]),v[9]||=p(`h2`,{class:`cart-empty-card__heading`},`سبد خرید شما خالی است`,-1),v[10]||=p(`p`,{class:`cart-empty-card__text`},` از دسته‌بندی یا کالیته محصول را انتخاب کنید، جزئیات را ببینید و به سبد اضافه کنید. `,-1),p(`div`,he,[p(`button`,{type:`button`,class:`cart-btn cart-btn--primary`,onClick:v[0]||=e=>f(`selectCompany`)},[o(L,{size:16}),v[7]||=u(` دسته‌بندی محصولات `,-1)]),p(`button`,{type:`button`,class:`cart-btn cart-btn--outline`,onClick:v[1]||=e=>_(m).push(`/catalogs`)},[o(I,{size:18}),v[8]||=u(` مشاهده کالیته‌ها `,-1)])])])):(r(),l(`div`,ge,[p(`div`,_e,[p(`table`,ve,[v[11]||=p(`thead`,null,[p(`tr`,null,[p(`th`,{scope:`col`},`محصول`),p(`th`,{scope:`col`},`کد`),p(`th`,{scope:`col`},`متراژ (متر)`),p(`th`,{scope:`col`},`حذف`)])],-1),p(`tbody`,null,[(r(!0),l(d,null,t(n.items,e=>(r(),l(`tr`,{key:e.id},[p(`td`,null,[p(`strong`,ye,i(e.productName),1)]),p(`td`,null,i(e.productCode),1),p(`td`,null,i(_(S)(e.meterage)),1),p(`td`,null,[p(`button`,{type:`button`,class:`cart-items-table__delete`,"aria-label":`حذف`,onClick:t=>f(`remove`,e.id)},[o(N,{size:18})],8,be)])]))),128))])])])]))]),p(`aside`,xe,[p(`div`,Se,[p(`h2`,Ce,[p(`span`,we,[o(F,{size:22})]),v[12]||=u(` خلاصه سفارش `,-1)]),p(`div`,Te,[p(`div`,Ee,[p(`span`,De,[o(I,{size:16}),v[13]||=u(` تعداد آیتم‌ها `,-1)]),p(`strong`,null,i(_(S)(n.items.length)),1)]),p(`div`,Oe,[p(`span`,ke,[o(L,{size:16}),v[14]||=u(` متراژ کل `,-1)]),p(`strong`,null,i(_(x)(n.totalMeterage)),1)]),(r(!0),l(d,null,t(n.companySummaries??[],e=>(r(),l(`div`,{key:e.companyId,class:`cart-summary-card__row cart-summary-card__row--sub`},[p(`span`,Ae,i(e.companyName),1),p(`strong`,null,[u(i(_(x)(e.meterage))+` `,1),p(`span`,je,`/ `+i(_(x)(e.maxMeterage)),1)])]))),128)),p(`div`,Me,[p(`span`,Ne,[o(T,{size:16}),v[15]||=u(` مبلغ فاکتور `,-1)]),v[16]||=p(`span`,{class:`cart-summary-card__hint-value`},` پس از قیمت‌گذاری مدیریت `,-1)])]),p(`button`,{type:`button`,class:`cart-summary-card__cta`,disabled:n.isEmpty||n.submitting,onClick:v[2]||=e=>f(`checkout`)},[o(O,{size:16}),u(` `+i(n.submitting?`در حال ثبت…`:`ثبت پیش‌سفارش`),1)],8,Pe),v[17]||=p(`p`,{class:`cart-summary-card__note`},` پس از ثبت سفارش، مدیریت قیمت‌گذاری می‌کند و فاکتور صادر می‌شود؛ سپس روش تسویه را انتخاب می‌کنید. `,-1)]),p(`div`,$,[p(`h3`,Fe,[p(`span`,Ie,[o(oe,{size:18})]),v[18]||=u(` راهنمای گام بعدی `,-1)]),p(`p`,Le,[v[19]||=u(` محصولات موردنظر را به سبد اضافه کنید، متراژ کل را بررسی کنید و «ثبت پیش‌سفارش» را بزنید. `,-1),n.isEmpty?c(``,!0):(r(),l(d,{key:0},[u(` سقف مجاز: `+i(_(x)(n.maxMeterage))+` — باقی‌مانده: `+i(_(x)(n.remainingCapacity))+`. `,1)],64)),v[20]||=u(` پس از قیمت‌گذاری، از صفحه سفارش روش تسویه را انتخاب می‌کنید. `,-1)])])])]),p(`nav`,Re,[(r(),l(d,null,t(h,t=>p(`button`,{key:t.title,type:`button`,class:`cart-quick-nav__item`,onClick:e=>t.action()},[p(`span`,{class:e([`cart-quick-nav__icon`,`cart-quick-nav__icon--${t.tone}`])},[(r(),g(a(t.icon),{size:20}))],2),p(`span`,Be,[p(`strong`,Ve,i(t.title),1),p(`span`,He,i(t.desc),1)]),o(O,{size:16,class:`cart-quick-nav__chevron`,"aria-hidden":`true`})],8,ze)),64))]),v[21]||=p(`p`,{class:`cart-desktop-page__footer`},`پارس بافت — سامانه سفارش‌گذاری پارچه`,-1)]))}}),[[`__scopeId`,`data-v-e944f7f3`]]),We={class:`cart-view`},Ge={class:`dialog card`},Ke={class:`dialog-actions`},qe=h(v({__name:`CartView`,setup(e){let t=E(),{cartStore:i,items:a,isEmpty:s,companyName:d,companySummaries:f,showFullDialog:m,submitting:h,submitError:v,removeItem:b,proceedToCheckout:x,proceedAnyway:S,createNewInvoice:C}=R();function w(){t.push(A)}return(e,T)=>(r(),l(`div`,We,[_(v)?(r(),g(M,{key:0,message:_(v),class:`cart-view__error`},null,8,[`message`])):c(``,!0),o(ae,{class:`mobile-only`,items:_(a),"company-name":_(d),"company-summaries":_(f),"total-meterage":_(i).totalMeterage,"max-meterage":_(i).maxMeterage,"remaining-capacity":_(i).remainingCapacity,"is-empty":_(s),submitting:_(h),onBack:T[0]||=e=>_(t).push(`/`),onRemove:_(b),onCheckout:_(x),onSelectCompany:T[1]||=e=>w()},null,8,[`items`,`company-name`,`company-summaries`,`total-meterage`,`max-meterage`,`remaining-capacity`,`is-empty`,`submitting`,`onRemove`,`onCheckout`]),o(Ue,{class:`desktop-only`,items:_(a),"company-name":_(d),"company-summaries":_(f),"total-meterage":_(i).totalMeterage,"max-meterage":_(i).maxMeterage,"remaining-capacity":_(i).remainingCapacity,"is-empty":_(s),submitting:_(h),onRemove:_(b),onCheckout:_(x),onSelectCompany:T[2]||=e=>w(),onBack:w},null,8,[`items`,`company-name`,`company-summaries`,`total-meterage`,`max-meterage`,`remaining-capacity`,`is-empty`,`submitting`,`onRemove`,`onCheckout`]),_(m)?(r(),l(`div`,{key:1,class:`dialog-overlay`,onClick:T[3]||=y(e=>m.value=!1,[`self`])},[p(`div`,Ge,[T[6]||=p(`h3`,null,`سقف متراژ تکمیل شد`,-1),T[7]||=p(`p`,{class:`text-sm`},` سقف متراژ مجاز این سفارش پر شده است. می‌توانید همین پیش‌سفارش را ثبت کنید یا سبد را خالی کرده و سفارش جدید بسازید. `,-1),p(`div`,Ke,[o(k,{variant:`outline`,loading:_(h),onClick:_(S)},{default:n(()=>[...T[4]||=[u(` ثبت همین فاکتور `,-1)]]),_:1},8,[`loading`,`onClick`]),o(k,{onClick:_(C)},{default:n(()=>[...T[5]||=[u(`فاکتور جدید`,-1)]]),_:1},8,[`onClick`])])])])):c(``,!0)]))}}),[[`__scopeId`,`data-v-2f81af33`]]);export{qe as default}; \ No newline at end of file +import{At as e,F as t,G as n,M as r,Pt as i,R as a,_ as o,c as s,d as c,f as l,g as u,i as d,k as f,l as p,nt as m,t as h,u as g,ut as _,v}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{l as y,t as b}from"./BasicIcon-DPmc0iaK.js";import{a as x,o as S}from"./format-C72AoJ2H.js";import{t as C}from"./cart-F5Rptvi1.js";import{t as w}from"./IconCart-D9TX5E-P.js";import{t as T}from"./IconOrders-Cf-FXBIB.js";import{C as E,f as D,n as ee,o as O,r as k,x as A}from"./index-CE4Fw0WE.js";import{t as te}from"./EmptyState-DoHTAy4d.js";import{t as j}from"./IconChevronBack-BsHmfODG.js";import{t as M}from"./FormErrorBanner-Ud1D04xf.js";import{t as N}from"./IconTrash-B73-wwf6.js";import{t as P}from"./CheckoutStepper-DptjKnv0.js";import{t as F}from"./IconClipboardEmpty-DMrB9tzG.js";import{n as I,t as L}from"./IconDiamond-BZQtRyIy.js";function R(){let e=E(),t=C(),n=D(),r=m(!1),i=m(!1),a=m(``),o=s(()=>t.activeCart?.items??[]),c=s(()=>o.value.length===0),l=s(()=>t.companyNamesLabel||t.activeCart?.companyName||``),u=s(()=>t.companySummaries);async function d(e){let n=o.value.find(t=>t.id===e);await ee({title:`حذف از سبد`,message:n?`آیا از حذف «${n.productName}» از سبد خرید مطمئن هستید؟`:`آیا از حذف این آیتم از سبد خرید مطمئن هستید؟`,confirmLabel:`حذف`,cancelLabel:`انصراف`,tone:`danger`})&&t.removeItem(e)}async function p(){if(!(!t.activeCart||o.value.length===0||i.value)){i.value=!0,a.value=``;try{if(await t.hydrate(),!t.activeCart?.items.length){a.value=`سبد خرید خالی است یا با سرور همگام نشد.`;return}let r=await n.submitOrder(t.activeCart);await t.hydrate(),e.replace(`/orders/${r.id}/success`)}catch(e){a.value=e instanceof Error?e.message:`ثبت سفارش ناموفق بود.`,await t.hydrate()}finally{i.value=!1}}}function h(){if(o.value.length!==0){if(t.isFull){r.value=!0;return}p()}}function g(){r.value=!1,p()}async function _(){await t.createNewCartForSameCompany(),r.value=!1,e.push(`/categories`)}return f(()=>{t.ensureActiveCartForCartPage()}),{cartStore:t,items:o,isEmpty:c,companyName:l,companySummaries:u,showFullDialog:r,submitting:i,submitError:a,removeItem:d,proceedToCheckout:h,proceedAnyway:g,createNewInvoice:_}}var z={class:`cart-mobile-page`},B={class:`cart-mobile-page__nav`},V={type:`button`,class:`nav-btn nav-btn--ghost`,"aria-hidden":`true`,tabindex:`-1`},H={key:0,class:`cart-mobile-page__body`},U={key:0,class:`cart-mobile-page__meta`},W={class:`cart-mobile-page__scroll`},G={class:`cart-mobile-table`},K={class:`col-product`},q={class:`col-meterage`},J={class:`col-delete`},Y=[`onClick`],X={class:`cart-mobile-page__footer`},Z={class:`cart-mobile-summary`},Q={class:`cart-mobile-summary__row`},ne={class:`cart-mobile-summary__cap`},re={key:1,class:`cart-mobile-summary__row`},ie={class:`cart-mobile-summary__row cart-mobile-summary__row--remain`},ae=h(v({__name:`MobileCartPage`,props:{items:{},companyName:{},companySummaries:{},totalMeterage:{},maxMeterage:{},remainingCapacity:{},isEmpty:{type:Boolean},submitting:{type:Boolean}},emits:[`back`,`remove`,`checkout`,`selectCompany`],setup(e,{emit:a}){let s=a;return(a,f)=>(r(),l(`div`,z,[p(`header`,B,[p(`button`,{type:`button`,class:`nav-btn`,"aria-label":`بازگشت`,onClick:f[0]||=e=>s(`back`)},[o(j,{size:20})]),f[3]||=p(`h1`,{class:`cart-mobile-page__title`},`سبد خرید`,-1),p(`button`,V,[o(j,{size:18,class:`nav-btn__flip`})])]),e.isEmpty?(r(),g(te,{key:1,variant:`cart`,message:`از دسته‌بندی یا کالیته محصول را انتخاب کنید`},{default:n(()=>[o(k,{onClick:f[2]||=e=>s(`selectCompany`)},{default:n(()=>[...f[10]||=[u(`مشاهده محصولات`,-1)]]),_:1})]),_:1})):(r(),l(`div`,H,[e.companyName?(r(),l(`p`,U,` تأمین‌کننده: `+i(e.companyName),1)):c(``,!0),p(`div`,W,[p(`div`,G,[f[4]||=p(`div`,{class:`cart-mobile-table__head`},[p(`span`,null,`محصول`),p(`span`,null,`متراژ (متر)`),p(`span`,null,`حذف`)],-1),(r(!0),l(d,null,t(e.items,e=>(r(),l(`div`,{key:e.id,class:`cart-mobile-table__row`},[p(`div`,K,[p(`strong`,null,i(e.productName),1),p(`span`,null,`کد: `+i(e.productCode),1)]),p(`div`,q,i(_(S)(e.meterage)),1),p(`div`,J,[p(`button`,{type:`button`,"aria-label":`حذف`,onClick:t=>s(`remove`,e.id)},[o(N,{size:20})],8,Y)])]))),128))])]),p(`div`,X,[p(`div`,Z,[p(`div`,Q,[f[5]||=p(`span`,null,`جمع متراژ کل`,-1),p(`strong`,null,i(_(x)(e.totalMeterage)),1)]),e.companySummaries?.length?(r(!0),l(d,{key:0},t(e.companySummaries,e=>(r(),l(`div`,{key:e.companyId,class:`cart-mobile-summary__row cart-mobile-summary__row--sub`},[p(`span`,null,i(e.companyName),1),p(`strong`,null,[u(i(_(x)(e.meterage))+` `,1),p(`span`,ne,`/ `+i(_(x)(e.maxMeterage)),1)])]))),128)):(r(),l(`div`,re,[f[6]||=p(`span`,null,`حداکثر مجاز`,-1),p(`strong`,null,i(_(x)(e.maxMeterage)),1)])),p(`div`,ie,[f[7]||=p(`span`,null,`باقی مانده`,-1),p(`strong`,null,i(_(x)(e.remainingCapacity)),1)])]),f[9]||=p(`p`,{class:`cart-mobile-page__hint`},` پس از ثبت سفارش، کارشناسان قیمت‌گذاری می‌کنند و فاکتور برای شما صادر می‌شود. `,-1),o(k,{block:``,loading:e.submitting,onClick:f[1]||=e=>s(`checkout`)},{default:n(()=>[...f[8]||=[u(`ثبت پیش‌سفارش`,-1)]]),_:1},8,[`loading`])])]))]))}}),[[`__scopeId`,`data-v-e5c9a8c0`]]),oe=v({__name:`IconLightbulb`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(r(),g(b,{icon:`vuesax-linear:lamp-on`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),se={class:`desktop-page cart-desktop-page`},ce={class:`cart-desktop-page__head`},le={key:0,class:`cart-desktop-page__subtitle`},ue={class:`cart-desktop-page__layout`},de={class:`cart-desktop-page__main`},fe={key:0,class:`cart-empty-card`},pe={class:`cart-empty-card__visual`,"aria-hidden":`true`},me={class:`cart-empty-card__circle`},he={class:`cart-empty-card__actions`},ge={key:1,class:`cart-items-card`},_e={class:`cart-items-card__scroll`},ve={class:`cart-items-table`},ye={class:`cart-items-table__name`},be=[`onClick`],xe={class:`cart-desktop-page__sidebar`},Se={class:`cart-summary-card`},Ce={class:`cart-summary-card__title`},we={class:`cart-summary-card__title-icon`,"aria-hidden":`true`},Te={class:`cart-summary-card__rows`},Ee={class:`cart-summary-card__row`},De={class:`cart-summary-card__row-label`},Oe={class:`cart-summary-card__row`},ke={class:`cart-summary-card__row-label`},Ae={class:`cart-summary-card__row-label`},je={class:`cart-summary-card__cap`},Me={class:`cart-summary-card__row cart-summary-card__row--hint`},Ne={class:`cart-summary-card__row-label`},Pe=[`disabled`],$={class:`cart-guide-card`},Fe={class:`cart-guide-card__title`},Ie={class:`cart-guide-card__title-icon`,"aria-hidden":`true`},Le={class:`cart-guide-card__text`},Re={class:`cart-quick-nav`,"aria-label":`دسترسی سریع`},ze=[`onClick`],Be={class:`cart-quick-nav__body`},Ve={class:`cart-quick-nav__title`},He={class:`cart-quick-nav__desc`},Ue=h(v({__name:`DesktopCartPage`,props:{items:{},companyName:{},companySummaries:{},totalMeterage:{},maxMeterage:{},remainingCapacity:{},isEmpty:{type:Boolean},submitting:{type:Boolean}},emits:[`remove`,`checkout`,`selectCompany`,`back`],setup(n,{emit:s}){let f=s,m=E(),h=[{title:`کالیته‌ها`,desc:`مرور کالیته و طرح‌ها`,icon:I,tone:`blue`,action:()=>m.push(`/catalogs`)},{title:`دسته‌بندی`,desc:`مشاهده محصولات بر اساس کاربرد`,icon:L,tone:`green`,action:()=>m.push(`/categories`)},{title:`سفارش‌های من`,desc:`پیگیری وضعیت سفارش‌ها`,icon:T,tone:`blue`,action:()=>m.push(`/orders`)}];return(s,v)=>(r(),l(`div`,se,[o(P,{"current-step":1}),p(`header`,ce,[v[3]||=p(`h1`,{class:`cart-desktop-page__title`},`سبد خرید`,-1),n.companyName?(r(),l(`p`,le,` تأمین‌کننده: `+i(n.companyName),1)):c(``,!0)]),p(`div`,ue,[p(`section`,de,[n.isEmpty?(r(),l(`div`,fe,[p(`div`,pe,[v[4]||=p(`span`,{class:`cart-empty-card__spark cart-empty-card__spark--1`},`+`,-1),v[5]||=p(`span`,{class:`cart-empty-card__spark cart-empty-card__spark--2`},`·`,-1),p(`span`,me,[o(w,{size:40})]),v[6]||=p(`span`,{class:`cart-empty-card__spark cart-empty-card__spark--3`},`·`,-1)]),v[9]||=p(`h2`,{class:`cart-empty-card__heading`},`سبد خرید شما خالی است`,-1),v[10]||=p(`p`,{class:`cart-empty-card__text`},` از دسته‌بندی یا کالیته محصول را انتخاب کنید، جزئیات را ببینید و به سبد اضافه کنید. `,-1),p(`div`,he,[p(`button`,{type:`button`,class:`cart-btn cart-btn--primary`,onClick:v[0]||=e=>f(`selectCompany`)},[o(L,{size:16}),v[7]||=u(` دسته‌بندی محصولات `,-1)]),p(`button`,{type:`button`,class:`cart-btn cart-btn--outline`,onClick:v[1]||=e=>_(m).push(`/catalogs`)},[o(I,{size:18}),v[8]||=u(` مشاهده کالیته‌ها `,-1)])])])):(r(),l(`div`,ge,[p(`div`,_e,[p(`table`,ve,[v[11]||=p(`thead`,null,[p(`tr`,null,[p(`th`,{scope:`col`},`محصول`),p(`th`,{scope:`col`},`کد`),p(`th`,{scope:`col`},`متراژ (متر)`),p(`th`,{scope:`col`},`حذف`)])],-1),p(`tbody`,null,[(r(!0),l(d,null,t(n.items,e=>(r(),l(`tr`,{key:e.id},[p(`td`,null,[p(`strong`,ye,i(e.productName),1)]),p(`td`,null,i(e.productCode),1),p(`td`,null,i(_(S)(e.meterage)),1),p(`td`,null,[p(`button`,{type:`button`,class:`cart-items-table__delete`,"aria-label":`حذف`,onClick:t=>f(`remove`,e.id)},[o(N,{size:18})],8,be)])]))),128))])])])]))]),p(`aside`,xe,[p(`div`,Se,[p(`h2`,Ce,[p(`span`,we,[o(F,{size:22})]),v[12]||=u(` خلاصه سفارش `,-1)]),p(`div`,Te,[p(`div`,Ee,[p(`span`,De,[o(I,{size:16}),v[13]||=u(` تعداد آیتم‌ها `,-1)]),p(`strong`,null,i(_(S)(n.items.length)),1)]),p(`div`,Oe,[p(`span`,ke,[o(L,{size:16}),v[14]||=u(` متراژ کل `,-1)]),p(`strong`,null,i(_(x)(n.totalMeterage)),1)]),(r(!0),l(d,null,t(n.companySummaries??[],e=>(r(),l(`div`,{key:e.companyId,class:`cart-summary-card__row cart-summary-card__row--sub`},[p(`span`,Ae,i(e.companyName),1),p(`strong`,null,[u(i(_(x)(e.meterage))+` `,1),p(`span`,je,`/ `+i(_(x)(e.maxMeterage)),1)])]))),128)),p(`div`,Me,[p(`span`,Ne,[o(T,{size:16}),v[15]||=u(` مبلغ فاکتور `,-1)]),v[16]||=p(`span`,{class:`cart-summary-card__hint-value`},` پس از قیمت‌گذاری مدیریت `,-1)])]),p(`button`,{type:`button`,class:`cart-summary-card__cta`,disabled:n.isEmpty||n.submitting,onClick:v[2]||=e=>f(`checkout`)},[o(O,{size:16}),u(` `+i(n.submitting?`در حال ثبت…`:`ثبت پیش‌سفارش`),1)],8,Pe),v[17]||=p(`p`,{class:`cart-summary-card__note`},` پس از ثبت سفارش، مدیریت قیمت‌گذاری می‌کند و فاکتور صادر می‌شود؛ سپس روش تسویه را انتخاب می‌کنید. `,-1)]),p(`div`,$,[p(`h3`,Fe,[p(`span`,Ie,[o(oe,{size:18})]),v[18]||=u(` راهنمای گام بعدی `,-1)]),p(`p`,Le,[v[19]||=u(` محصولات موردنظر را به سبد اضافه کنید، متراژ کل را بررسی کنید و «ثبت پیش‌سفارش» را بزنید. `,-1),n.isEmpty?c(``,!0):(r(),l(d,{key:0},[u(` سقف مجاز: `+i(_(x)(n.maxMeterage))+` — باقی‌مانده: `+i(_(x)(n.remainingCapacity))+`. `,1)],64)),v[20]||=u(` پس از قیمت‌گذاری، از صفحه سفارش روش تسویه را انتخاب می‌کنید. `,-1)])])])]),p(`nav`,Re,[(r(),l(d,null,t(h,t=>p(`button`,{key:t.title,type:`button`,class:`cart-quick-nav__item`,onClick:e=>t.action()},[p(`span`,{class:e([`cart-quick-nav__icon`,`cart-quick-nav__icon--${t.tone}`])},[(r(),g(a(t.icon),{size:20}))],2),p(`span`,Be,[p(`strong`,Ve,i(t.title),1),p(`span`,He,i(t.desc),1)]),o(O,{size:16,class:`cart-quick-nav__chevron`,"aria-hidden":`true`})],8,ze)),64))]),v[21]||=p(`p`,{class:`cart-desktop-page__footer`},`پارس بافت — سامانه سفارش‌گذاری پارچه`,-1)]))}}),[[`__scopeId`,`data-v-e944f7f3`]]),We={class:`cart-view`},Ge={class:`dialog card`},Ke={class:`dialog-actions`},qe=h(v({__name:`CartView`,setup(e){let t=E(),{cartStore:i,items:a,isEmpty:s,companyName:d,companySummaries:f,showFullDialog:m,submitting:h,submitError:v,removeItem:b,proceedToCheckout:x,proceedAnyway:S,createNewInvoice:C}=R();function w(){t.push(A)}return(e,T)=>(r(),l(`div`,We,[_(v)?(r(),g(M,{key:0,message:_(v),class:`cart-view__error`},null,8,[`message`])):c(``,!0),o(ae,{class:`mobile-only`,items:_(a),"company-name":_(d),"company-summaries":_(f),"total-meterage":_(i).totalMeterage,"max-meterage":_(i).maxMeterage,"remaining-capacity":_(i).remainingCapacity,"is-empty":_(s),submitting:_(h),onBack:T[0]||=e=>_(t).push(`/`),onRemove:_(b),onCheckout:_(x),onSelectCompany:T[1]||=e=>w()},null,8,[`items`,`company-name`,`company-summaries`,`total-meterage`,`max-meterage`,`remaining-capacity`,`is-empty`,`submitting`,`onRemove`,`onCheckout`]),o(Ue,{class:`desktop-only`,items:_(a),"company-name":_(d),"company-summaries":_(f),"total-meterage":_(i).totalMeterage,"max-meterage":_(i).maxMeterage,"remaining-capacity":_(i).remainingCapacity,"is-empty":_(s),submitting:_(h),onRemove:_(b),onCheckout:_(x),onSelectCompany:T[2]||=e=>w(),onBack:w},null,8,[`items`,`company-name`,`company-summaries`,`total-meterage`,`max-meterage`,`remaining-capacity`,`is-empty`,`submitting`,`onRemove`,`onCheckout`]),_(m)?(r(),l(`div`,{key:1,class:`dialog-overlay`,onClick:T[3]||=y(e=>m.value=!1,[`self`])},[p(`div`,Ge,[T[6]||=p(`h3`,null,`سقف متراژ تکمیل شد`,-1),T[7]||=p(`p`,{class:`text-sm`},` سقف متراژ مجاز این سفارش پر شده است. می‌توانید همین پیش‌سفارش را ثبت کنید یا سبد را خالی کرده و سفارش جدید بسازید. `,-1),p(`div`,Ke,[o(k,{variant:`outline`,loading:_(h),onClick:_(S)},{default:n(()=>[...T[4]||=[u(` ثبت همین فاکتور `,-1)]]),_:1},8,[`loading`,`onClick`]),o(k,{onClick:_(C)},{default:n(()=>[...T[5]||=[u(`فاکتور جدید`,-1)]]),_:1},8,[`onClick`])])])])):c(``,!0)]))}}),[[`__scopeId`,`data-v-2f81af33`]]);export{qe as default}; \ No newline at end of file diff --git a/dist/assets/CashSettlementView-D_RtxoI6.js b/dist/assets/CashSettlementView-DMsMuhva.js similarity index 95% rename from dist/assets/CashSettlementView-D_RtxoI6.js rename to dist/assets/CashSettlementView-DMsMuhva.js index 6bd3f82..f1292ec 100644 --- a/dist/assets/CashSettlementView-D_RtxoI6.js +++ b/dist/assets/CashSettlementView-DMsMuhva.js @@ -1 +1 @@ -import{F as e,G as t,M as n,Pt as r,U as i,_ as a,c as o,f as s,g as c,i as l,l as u,nt as ee,t as te,ut as d,v as f}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{i as ne,n as re}from"./format-C72AoJ2H.js";import{t as ie}from"./catalog-DWpH1dVc.js";import{C as p,f as m,r as h,t as g}from"./index-DYwnTikp.js";import"./constants-ptWoEwwP.js";import{t as ae}from"./PageHeader-C5c2Pzrn.js";import{t as oe}from"./useRequirePricedOrder-Bivuv5Mx.js";var se={class:`page cash-mobile-page mobile-only`},ce={class:`cash-page__scroll page__scroll`},le={class:`cash-page__success cash-page__success--done`},ue={class:`cash-page__success-title`},de={class:`cash-page__success-subtitle`},_={class:`accounts-panel`},v={class:`accounts-panel__title`},y={class:`bank-card__head`},b={class:`bank-card__name`},x={class:`bank-card__icon`,"aria-hidden":`true`},S={class:`bank-card__field`},C={class:`bank-card__value`,dir:`ltr`},w={class:`bank-card__field`},T={class:`bank-card__value`,dir:`ltr`},E={class:`cash-page__footer`},D={class:`desktop-checkout-shell cash-desktop-page desktop-only`},O={class:`desktop-page__head`},k={class:`desktop-page__subtitle`},A={class:`cash-page__success cash-page__success--done`},j={class:`cash-page__success-title`},M={class:`accounts-panel`},N={class:`accounts-panel__title`},P={class:`desktop-grid-2`},F={class:`bank-card__head`},fe={class:`bank-card__name`},I={class:`bank-card__icon`,"aria-hidden":`true`},L={class:`bank-card__field`},R={class:`bank-card__value`,dir:`ltr`},z={class:`bank-card__field`},B={class:`bank-card__value`,dir:`ltr`},V={class:`cash-desktop-page__actions`},H=te(f({__name:`CashSettlementView`,setup(te){let f=p(),H=m(),U=ie(),W=ee([]),{orderId:G,order:K}=oe(),pe=o(()=>U.companies.find(e=>e.slug===`nademitex`)?.name??`نادمی تکس`);i(G,async e=>{e&&!H.getOrderById(e)&&await H.fetchOrder(e)},{immediate:!0}),i(()=>K.value?.id,async e=>{if(!e||!K.value){W.value=[];return}U.companies.length||await U.loadCompanies(),W.value=await H.getBankAccountsForOrder(K.value)},{immediate:!0});let q=o(()=>K.value?.finalAmount?re(K.value.finalAmount):`—`),J=o(()=>{let e=K.value?.cashInvoiceExpiresAt;return e?`مهلت پرداخت این فاکتور تا ${ne(e)} است.`:`مبلغ فاکتور را به یکی از حساب‌های زیر واریز و رسید را ثبت کنید.`}),Y=o(()=>`شماره حساب‌های واریز — ${pe.value}`);function X(e){return e.replace(/\D/g,``).replace(/(\d{4})(?=\d)/g,`$1 `).trim()}function Z(e){return e.replace(/\s/g,``).toUpperCase().replace(/(.{4})/g,`$1 `).trim()}function Q(){f.replace(`/orders/${G.value}?track=1`)}function $(){f.replace(`/orders/${G.value}?track=1&receipt=1`)}return(i,o)=>(n(),s(l,null,[u(`div`,se,[a(ae,{title:`تسویه نقدی`,"show-back":``,centered:``,onBack:o[0]||=e=>d(f).push(`/orders/${d(G)}`)}),u(`div`,ce,[u(`div`,le,[a(g,{size:56}),u(`p`,ue,`مبلغ قابل پرداخت `+r(q.value),1),u(`p`,de,r(J.value),1)]),u(`section`,_,[u(`h2`,v,r(Y.value),1),(n(!0),s(l,null,e(W.value,e=>(n(),s(`article`,{key:e.id,class:`bank-card`},[u(`div`,y,[u(`span`,b,r(e.bankName),1),u(`span`,x,r(e.bankName.charAt(0)),1)]),u(`div`,S,[o[1]||=u(`span`,{class:`bank-card__label`},`شماره کارت`,-1),u(`strong`,C,r(X(e.cardNumber)),1)]),u(`div`,w,[o[2]||=u(`span`,{class:`bank-card__label`},`شماره شبا`,-1),u(`strong`,T,r(Z(e.iban)),1)])]))),128))])]),u(`div`,E,[a(h,{variant:`outline`,block:``,onClick:Q},{default:t(()=>[...o[3]||=[c(`مشاهده سفارش`,-1)]]),_:1}),a(h,{block:``,class:`cash-page__submit`,onClick:$},{default:t(()=>[...o[4]||=[c(` ثبت رسید پرداخت `,-1)]]),_:1})])]),u(`div`,D,[u(`header`,O,[o[5]||=u(`h1`,{class:`desktop-page__title`},`تسویه نقدی`,-1),u(`p`,k,r(J.value),1)]),u(`div`,A,[a(g,{size:56}),u(`p`,j,`مبلغ قابل پرداخت `+r(q.value),1)]),u(`section`,M,[u(`h2`,N,r(Y.value),1),u(`div`,P,[(n(!0),s(l,null,e(W.value,e=>(n(),s(`article`,{key:e.id,class:`bank-card`},[u(`div`,F,[u(`span`,fe,r(e.bankName),1),u(`span`,I,r(e.bankName.charAt(0)),1)]),u(`div`,L,[o[6]||=u(`span`,{class:`bank-card__label`},`شماره کارت`,-1),u(`strong`,R,r(X(e.cardNumber)),1)]),u(`div`,z,[o[7]||=u(`span`,{class:`bank-card__label`},`شماره شبا`,-1),u(`strong`,B,r(Z(e.iban)),1)])]))),128))])]),u(`div`,V,[a(h,{variant:`outline`,class:`desktop-btn-compact`,onClick:Q},{default:t(()=>[...o[8]||=[c(` مشاهده سفارش `,-1)]]),_:1}),a(h,{class:`desktop-btn-compact`,onClick:$},{default:t(()=>[...o[9]||=[c(` ثبت رسید پرداخت `,-1)]]),_:1})])])],64))}}),[[`__scopeId`,`data-v-fa758115`]]);export{H as default}; \ No newline at end of file +import{F as e,G as t,M as n,Pt as r,U as i,_ as a,c as o,f as s,g as c,i as l,l as u,nt as ee,t as te,ut as d,v as f}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{i as ne,n as re}from"./format-C72AoJ2H.js";import{t as ie}from"./catalog-DWpH1dVc.js";import{C as p,f as m,r as h,t as g}from"./index-CE4Fw0WE.js";import"./constants-ptWoEwwP.js";import{t as ae}from"./PageHeader-BDPrFkve.js";import{t as oe}from"./useRequirePricedOrder-B78MxGXz.js";var se={class:`page cash-mobile-page mobile-only`},ce={class:`cash-page__scroll page__scroll`},le={class:`cash-page__success cash-page__success--done`},ue={class:`cash-page__success-title`},de={class:`cash-page__success-subtitle`},_={class:`accounts-panel`},v={class:`accounts-panel__title`},y={class:`bank-card__head`},b={class:`bank-card__name`},x={class:`bank-card__icon`,"aria-hidden":`true`},S={class:`bank-card__field`},C={class:`bank-card__value`,dir:`ltr`},w={class:`bank-card__field`},T={class:`bank-card__value`,dir:`ltr`},E={class:`cash-page__footer`},D={class:`desktop-checkout-shell cash-desktop-page desktop-only`},O={class:`desktop-page__head`},k={class:`desktop-page__subtitle`},A={class:`cash-page__success cash-page__success--done`},j={class:`cash-page__success-title`},M={class:`accounts-panel`},N={class:`accounts-panel__title`},P={class:`desktop-grid-2`},F={class:`bank-card__head`},fe={class:`bank-card__name`},I={class:`bank-card__icon`,"aria-hidden":`true`},L={class:`bank-card__field`},R={class:`bank-card__value`,dir:`ltr`},z={class:`bank-card__field`},B={class:`bank-card__value`,dir:`ltr`},V={class:`cash-desktop-page__actions`},H=te(f({__name:`CashSettlementView`,setup(te){let f=p(),H=m(),U=ie(),W=ee([]),{orderId:G,order:K}=oe(),pe=o(()=>U.companies.find(e=>e.slug===`nademitex`)?.name??`نادمی تکس`);i(G,async e=>{e&&!H.getOrderById(e)&&await H.fetchOrder(e)},{immediate:!0}),i(()=>K.value?.id,async e=>{if(!e||!K.value){W.value=[];return}U.companies.length||await U.loadCompanies(),W.value=await H.getBankAccountsForOrder(K.value)},{immediate:!0});let q=o(()=>K.value?.finalAmount?re(K.value.finalAmount):`—`),J=o(()=>{let e=K.value?.cashInvoiceExpiresAt;return e?`مهلت پرداخت این فاکتور تا ${ne(e)} است.`:`مبلغ فاکتور را به یکی از حساب‌های زیر واریز و رسید را ثبت کنید.`}),Y=o(()=>`شماره حساب‌های واریز — ${pe.value}`);function X(e){return e.replace(/\D/g,``).replace(/(\d{4})(?=\d)/g,`$1 `).trim()}function Z(e){return e.replace(/\s/g,``).toUpperCase().replace(/(.{4})/g,`$1 `).trim()}function Q(){f.replace(`/orders/${G.value}?track=1`)}function $(){f.replace(`/orders/${G.value}?track=1&receipt=1`)}return(i,o)=>(n(),s(l,null,[u(`div`,se,[a(ae,{title:`تسویه نقدی`,"show-back":``,centered:``,onBack:o[0]||=e=>d(f).push(`/orders/${d(G)}`)}),u(`div`,ce,[u(`div`,le,[a(g,{size:56}),u(`p`,ue,`مبلغ قابل پرداخت `+r(q.value),1),u(`p`,de,r(J.value),1)]),u(`section`,_,[u(`h2`,v,r(Y.value),1),(n(!0),s(l,null,e(W.value,e=>(n(),s(`article`,{key:e.id,class:`bank-card`},[u(`div`,y,[u(`span`,b,r(e.bankName),1),u(`span`,x,r(e.bankName.charAt(0)),1)]),u(`div`,S,[o[1]||=u(`span`,{class:`bank-card__label`},`شماره کارت`,-1),u(`strong`,C,r(X(e.cardNumber)),1)]),u(`div`,w,[o[2]||=u(`span`,{class:`bank-card__label`},`شماره شبا`,-1),u(`strong`,T,r(Z(e.iban)),1)])]))),128))])]),u(`div`,E,[a(h,{variant:`outline`,block:``,onClick:Q},{default:t(()=>[...o[3]||=[c(`مشاهده سفارش`,-1)]]),_:1}),a(h,{block:``,class:`cash-page__submit`,onClick:$},{default:t(()=>[...o[4]||=[c(` ثبت رسید پرداخت `,-1)]]),_:1})])]),u(`div`,D,[u(`header`,O,[o[5]||=u(`h1`,{class:`desktop-page__title`},`تسویه نقدی`,-1),u(`p`,k,r(J.value),1)]),u(`div`,A,[a(g,{size:56}),u(`p`,j,`مبلغ قابل پرداخت `+r(q.value),1)]),u(`section`,M,[u(`h2`,N,r(Y.value),1),u(`div`,P,[(n(!0),s(l,null,e(W.value,e=>(n(),s(`article`,{key:e.id,class:`bank-card`},[u(`div`,F,[u(`span`,fe,r(e.bankName),1),u(`span`,I,r(e.bankName.charAt(0)),1)]),u(`div`,L,[o[6]||=u(`span`,{class:`bank-card__label`},`شماره کارت`,-1),u(`strong`,R,r(X(e.cardNumber)),1)]),u(`div`,z,[o[7]||=u(`span`,{class:`bank-card__label`},`شماره شبا`,-1),u(`strong`,B,r(Z(e.iban)),1)])]))),128))])]),u(`div`,V,[a(h,{variant:`outline`,class:`desktop-btn-compact`,onClick:Q},{default:t(()=>[...o[8]||=[c(` مشاهده سفارش `,-1)]]),_:1}),a(h,{class:`desktop-btn-compact`,onClick:$},{default:t(()=>[...o[9]||=[c(` ثبت رسید پرداخت `,-1)]]),_:1})])])],64))}}),[[`__scopeId`,`data-v-fa758115`]]);export{H as default}; \ No newline at end of file diff --git a/dist/assets/CatalogRequestsView-BtBi9qJl.js b/dist/assets/CatalogRequestsView-Daf5j2GU.js similarity index 93% rename from dist/assets/CatalogRequestsView-BtBi9qJl.js rename to dist/assets/CatalogRequestsView-Daf5j2GU.js index 99963f0..712a23d 100644 --- a/dist/assets/CatalogRequestsView-BtBi9qJl.js +++ b/dist/assets/CatalogRequestsView-Daf5j2GU.js @@ -1 +1 @@ -import{F as e,M as t,Pt as n,_ as r,d as i,f as a,i as o,k as s,l as c,t as l,ut as u,v as d}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{o as f}from"./format-C72AoJ2H.js";import{C as p}from"./index-DYwnTikp.js";import{t as m}from"./PageHeader-C5c2Pzrn.js";import{t as h}from"./catalogRequests-COPPKp3x.js";var g={class:`page catalog-requests-page`},_={class:`desktop-page__head desktop-only catalog-requests-desk-head`},v={class:`page__scroll page__scroll--with-nav body`},y={key:0,class:`empty`},b={class:`card__top`},x={class:`badge`},S={key:0,class:`note`},C=l(d({__name:`CatalogRequestsView`,setup(l){let d=p(),C=h();return s(()=>C.hydrate()),(s,l)=>(t(),a(`div`,g,[r(m,{class:`mobile-only`,title:`وضعیت کالیته‌ها`,"show-back":``,centered:``,onBack:l[0]||=e=>u(d).push(`/products`)}),c(`header`,_,[l[3]||=c(`div`,null,[c(`h1`,{class:`desktop-page__title`},`وضعیت کالیته‌ها`),c(`p`,{class:`desktop-page__subtitle`},`پیگیری درخواست‌های کالیته ثبت‌شده`)],-1),c(`button`,{type:`button`,class:`desk-new-btn`,onClick:l[1]||=e=>u(d).push(`/categories`)},` درخواست کالیته جدید `)]),c(`div`,v,[c(`button`,{type:`button`,class:`new-btn mobile-only`,onClick:l[2]||=e=>u(d).push(`/categories`)},` درخواست کالیته جدید `),u(C).sorted.length?i(``,!0):(t(),a(`p`,y,`هنوز درخواستی ثبت نکرده‌اید.`)),(t(!0),a(o,null,e(u(C).sorted,r=>(t(),a(`article`,{key:r.id,class:`card`},[c(`div`,b,[c(`strong`,null,`درخواست `+n(r.id.slice(-6)),1),c(`span`,x,n(u(C).statusLabel(r.status)),1)]),c(`p`,null,n(r.createdAt.slice(0,10)),1),c(`p`,null,n(u(f)(r.items.length))+` قلم`,1),c(`ul`,null,[(t(!0),a(o,null,e(r.items,e=>(t(),a(`li`,{key:e.productId},n(e.productName)+` × `+n(u(f)(e.quantity)),1))),128))]),r.note?(t(),a(`p`,S,n(r.note),1)):i(``,!0)]))),128))])]))}}),[[`__scopeId`,`data-v-90b3d301`]]);export{C as default}; \ No newline at end of file +import{F as e,M as t,Pt as n,_ as r,d as i,f as a,i as o,k as s,l as c,t as l,ut as u,v as d}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{o as f}from"./format-C72AoJ2H.js";import{C as p}from"./index-CE4Fw0WE.js";import{t as m}from"./PageHeader-BDPrFkve.js";import{t as h}from"./catalogRequests-COPPKp3x.js";var g={class:`page catalog-requests-page`},_={class:`desktop-page__head desktop-only catalog-requests-desk-head`},v={class:`page__scroll page__scroll--with-nav body`},y={key:0,class:`empty`},b={class:`card__top`},x={class:`badge`},S={key:0,class:`note`},C=l(d({__name:`CatalogRequestsView`,setup(l){let d=p(),C=h();return s(()=>C.hydrate()),(s,l)=>(t(),a(`div`,g,[r(m,{class:`mobile-only`,title:`وضعیت کالیته‌ها`,"show-back":``,centered:``,onBack:l[0]||=e=>u(d).push(`/products`)}),c(`header`,_,[l[3]||=c(`div`,null,[c(`h1`,{class:`desktop-page__title`},`وضعیت کالیته‌ها`),c(`p`,{class:`desktop-page__subtitle`},`پیگیری درخواست‌های کالیته ثبت‌شده`)],-1),c(`button`,{type:`button`,class:`desk-new-btn`,onClick:l[1]||=e=>u(d).push(`/categories`)},` درخواست کالیته جدید `)]),c(`div`,v,[c(`button`,{type:`button`,class:`new-btn mobile-only`,onClick:l[2]||=e=>u(d).push(`/categories`)},` درخواست کالیته جدید `),u(C).sorted.length?i(``,!0):(t(),a(`p`,y,`هنوز درخواستی ثبت نکرده‌اید.`)),(t(!0),a(o,null,e(u(C).sorted,r=>(t(),a(`article`,{key:r.id,class:`card`},[c(`div`,b,[c(`strong`,null,`درخواست `+n(r.id.slice(-6)),1),c(`span`,x,n(u(C).statusLabel(r.status)),1)]),c(`p`,null,n(r.createdAt.slice(0,10)),1),c(`p`,null,n(u(f)(r.items.length))+` قلم`,1),c(`ul`,null,[(t(!0),a(o,null,e(r.items,e=>(t(),a(`li`,{key:e.productId},n(e.productName)+` × `+n(u(f)(e.quantity)),1))),128))]),r.note?(t(),a(`p`,S,n(r.note),1)):i(``,!0)]))),128))])]))}}),[[`__scopeId`,`data-v-90b3d301`]]);export{C as default}; \ No newline at end of file diff --git a/dist/assets/CategoriesView-BBAIojBo.js b/dist/assets/CategoriesView-BUy2GAk9.js similarity index 97% rename from dist/assets/CategoriesView-BBAIojBo.js rename to dist/assets/CategoriesView-BUy2GAk9.js index e153770..412a25d 100644 --- a/dist/assets/CategoriesView-BBAIojBo.js +++ b/dist/assets/CategoriesView-BUy2GAk9.js @@ -1 +1 @@ -import{At as e,F as t,K as n,M as r,Nt as i,Pt as a,R as o,_ as s,c,d as l,f as u,g as d,i as f,k as p,l as m,nt as h,t as g,u as _,ut as v,v as y}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{c as b,l as x,s as S,t as C}from"./BasicIcon-DPmc0iaK.js";import{t as w}from"./IconCatalog-BaNuPmu8.js";import{C as T,a as E,o as D,s as O,y as k}from"./index-DYwnTikp.js";import{t as A}from"./IconChevronBack-BsHmfODG.js";import{t as j}from"./IconDiamond-BZQtRyIy.js";import{t as ee}from"./PageSkeleton-DYdjm4l9.js";import{t as M}from"./crm-CgnSby61.js";import{n as N,r as P,t as F}from"./useSlotBanners-VeAKsYT3.js";import{t as I}from"./useGoBack-DnRfwA4b.js";import{t as L}from"./useTouchSwipe-C8fUyAcQ.js";import{t as R}from"./bannerLink-BW8t2Oqp.js";var z=y({__name:`IconSearch`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(r(),_(C,{icon:`vuesax-linear:search-normal`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),B=[`aria-label`],V={class:`slot-banner__content`},H={key:0,class:`slot-banner__title`},U={key:1,class:`slot-banner__tagline`},W={key:0,class:`slot-banner__dots`,role:`tablist`,"aria-label":`بنرها`},G=[`aria-label`,`aria-selected`,`onClick`],K=g(y({__name:`AppSlotBanner`,props:{bannerSlot:{},hideWhenEmpty:{type:Boolean,default:!0}},setup(o){let s=o,d=T(),{banners:p,loading:g}=F(s.bannerSlot),_=h(0),y=c(()=>p.value[_.value]??null),b=c(()=>y.value?.bannerLink?.trim()||``),C=c(()=>{let e=y.value?.imageUrl?.trim();if(e)return{backgroundImage:`url(${e})`}});function w(){let e=y.value?.ctaLink?.trim();e&&R(e,d)}function E(e){b.value&&(e.target.closest(`.slot-banner__cta, .slot-banner__dots`)||R(b.value,d))}function D(e){p.value.length&&(_.value=(e%p.value.length+p.value.length)%p.value.length)}let{onTouchStart:O,onTouchEnd:k}=L({enabled:()=>p.value.length>1,onSwipe(e){D(_.value+e)}});return(s,c)=>!o.hideWhenEmpty||y.value?n((r(),u(`section`,{key:0,class:e([`slot-banner`,{"slot-banner--photo":!!y.value?.imageUrl,"slot-banner--linked":!!b.value}]),style:i(C.value),"aria-label":y.value?.title||`بنر`,onClick:E,onTouchstartPassive:c[0]||=(...e)=>v(O)&&v(O)(...e),onTouchendPassive:c[1]||=(...e)=>v(k)&&v(k)(...e)},[y.value?(r(),u(f,{key:0},[m(`div`,V,[y.value.showTitle!==!1&&y.value.title?(r(),u(`h2`,H,a(y.value.title),1)):l(``,!0),y.value.showSubtitle!==!1&&y.value.subtitle?(r(),u(`p`,U,a(y.value.subtitle),1)):l(``,!0),y.value.showCta!==!1&&y.value.ctaLabel?(r(),u(`button`,{key:2,type:`button`,class:`slot-banner__cta`,onClick:x(w,[`stop`])},a(y.value.ctaLabel),1)):l(``,!0)]),v(p).length>1?(r(),u(`div`,W,[(r(!0),u(f,null,t(v(p),(t,n)=>(r(),u(`button`,{key:t.id,type:`button`,class:e([`slot-banner__dot`,{"slot-banner__dot--active":n===_.value}]),"aria-label":t.title,"aria-selected":n===_.value,onClick:x(e=>D(n),[`stop`])},null,10,G))),128))])):l(``,!0)],64)):l(``,!0)],46,B)),[[S,!v(g)&&y.value]]):l(``,!0)}}),[[`__scopeId`,`data-v-e2649f82`]]),q={class:`page categories-page`},J={class:`cat-top mobile-only`},Y={class:`cat-top__actions`},X={class:`page__scroll page__scroll--with-nav cat-scroll`},Z={key:0},te={class:`usage-grid`},Q=[`onClick`],ne={key:0,class:`usage-card__icon`},re={class:`usage-card__body`},ie={key:0},ae={key:1,class:`usage-card__link`},oe={class:`season-stack`},se=[`onClick`],ce={class:`season-card__content`},le={key:0,class:`season-card__title-row`},ue={key:0,class:`season-card__icon`},de={key:1},fe={key:1},pe={key:2,class:`season-card__link`},$={class:`feature-row`,"aria-label":`ویژگی‌ها`},me={class:`feature-card`},he={class:`feature-card__icon`,"aria-hidden":`true`},ge={class:`feature-card`},_e={class:`feature-card__icon`,"aria-hidden":`true`},ve={class:`feature-card__icon`,"aria-hidden":`true`},ye=g(y({__name:`CategoriesView`,setup(n){let c=T(),{goBack:g}=I(`/`),y=M(),x=h([]),S=h([]),C=h(!0),F=h(null);function L(e){return e.icon||(e.id===`summer`?`bolt`:e.id===`winter`?`feather`:`diamond`)}p(async()=>{try{let e=await y.loadCategories();x.value=e.usage,S.value=e.seasons}catch(e){F.value=e instanceof Error?e.message:`بارگذاری دسته‌ها ناموفق بود.`}finally{C.value=!1}});function R(e){c.push({path:`/products`,query:{categoryId:e,filterAxis:`usage`}})}function B(e){c.push({path:`/products`,query:{season:e,filterAxis:`season`}})}return(n,p)=>(r(),u(`div`,q,[m(`header`,J,[m(`button`,{type:`button`,class:`icon-btn`,"aria-label":`بازگشت`,onClick:p[0]||=(...e)=>v(g)&&v(g)(...e)},[s(A,{size:20})]),p[5]||=m(`h1`,{class:`cat-top__title`},`دسته‌بندی‌ها`,-1),m(`div`,Y,[s(E,{variant:`inline`}),m(`button`,{type:`button`,class:`icon-btn`,"aria-label":`جستجو`,onClick:p[1]||=e=>v(c).push({path:`/products`,query:{q:``}})},[s(z,{size:20})]),m(`button`,{type:`button`,class:`icon-btn`,"aria-label":`اعلان‌ها`,onClick:p[2]||=e=>v(c).push(`/profile/notifications`)},[s(O,{size:20})])])]),p[13]||=m(`header`,{class:`desktop-page__head desktop-only`},[m(`h1`,{class:`desktop-page__title`},`دسته‌بندی‌ها`),m(`p`,{class:`desktop-page__subtitle`},`دسته موردنظر خود را انتخاب کنید`)],-1),m(`div`,X,[F.value?(r(),u(`p`,Z,a(F.value),1)):C.value?(r(),_(ee,{key:1,variant:`grid`})):(r(),u(f,{key:2},[s(K,{"banner-slot":`categories_hero`,class:`categories-page__hero`}),m(`section`,null,[p[6]||=m(`h2`,{class:`block-title`},`انتخاب بر اساس کاربرد`,-1),p[7]||=m(`p`,{class:`block-sub`},`دسته موردنظر خود را انتخاب کنید`,-1),m(`div`,te,[(r(!0),u(f,null,t(x.value,t=>(r(),u(`button`,{key:t.id,type:`button`,class:`usage-card`,onClick:e=>R(t.id)},[m(`div`,{class:e([`usage-card__image`,`usage-card__image--${t.id}`]),style:i(t.imageUrl?{backgroundImage:`url(${t.imageUrl})`}:void 0)},[t.showIcon===!1?l(``,!0):(r(),u(`span`,ne,[(r(),_(o(v(N)(v(P)(t),w)),{size:18}))]))],6),m(`div`,re,[t.showTitle===!1?l(``,!0):(r(),u(`strong`,ie,a(t.title),1)),t.showSubtitle===!1?l(``,!0):(r(),u(`span`,ae,[d(a(t.subtitle||`مشاهده محصولات`)+` `,1),s(D,{size:14})]))])],8,Q))),128))])]),m(`section`,null,[p[8]||=m(`h2`,{class:`block-title`},`انتخاب بر اساس فصل`,-1),p[9]||=m(`p`,{class:`block-sub`},`بر اساس فصل مناسب، پارچه دلخواه را پیدا کنید`,-1),m(`div`,oe,[(r(!0),u(f,null,t(S.value,t=>(r(),u(`button`,{key:t.id,type:`button`,class:e([`season-card`,[`season-card--${t.id}`,{"season-card--banner":!!t.imageUrl}]]),style:i(t.imageUrl?{backgroundImage:`url(${t.imageUrl})`}:void 0),onClick:e=>B(t.id)},[m(`div`,ce,[t.showTitle!==!1||t.showIcon!==!1?(r(),u(`div`,le,[t.showIcon===!1?l(``,!0):(r(),u(`span`,ue,[(r(),_(o(v(N)(L(t),j)),{size:16}))])),t.showTitle===!1?l(``,!0):(r(),u(`strong`,de,a(t.title),1))])):l(``,!0),t.showDescription===!1?l(``,!0):(r(),u(`p`,fe,a(t.description),1)),t.showCta===!1?l(``,!0):(r(),u(`span`,pe,[d(a(t.ctaLabel||`مشاهده محصولات`)+` `,1),s(D,{size:14})]))])],14,se))),128))])]),m(`section`,$,[m(`div`,me,[m(`span`,he,[s(k,{size:22})]),p[10]||=m(`div`,{class:`feature-card__text`},[m(`strong`,null,`پشتیبانی اختصاصی`),m(`span`,null,`در کنار شما هستیم`)],-1)]),m(`div`,ge,[m(`span`,_e,[s(j,{size:22})]),p[11]||=m(`div`,{class:`feature-card__text`},[m(`strong`,null,`مزایای مشتریان ویژه`),m(`span`,null,`بر اساس سطح شما`)],-1)]),m(`div`,{class:`feature-card feature-card--link`,role:`button`,tabindex:`0`,onClick:p[3]||=e=>v(c).push(`/products`),onKeydown:p[4]||=b(e=>v(c).push(`/products`),[`enter`])},[m(`span`,ve,[s(w,{size:22})]),p[12]||=m(`div`,{class:`feature-card__text`},[m(`strong`,null,`درخواست کالیته فیزیکی`),m(`span`,null,`کالیته را دریافت کنید`)],-1)],32)])],64))])]))}}),[[`__scopeId`,`data-v-f5361aa5`]]);export{ye as default}; \ No newline at end of file +import{At as e,F as t,K as n,M as r,Nt as i,Pt as a,R as o,_ as s,c,d as l,f as u,g as d,i as f,k as p,l as m,nt as h,t as g,u as _,ut as v,v as y}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{c as b,l as x,s as S,t as C}from"./BasicIcon-DPmc0iaK.js";import{t as w}from"./IconCatalog-BaNuPmu8.js";import{C as T,a as E,o as D,s as O,y as k}from"./index-CE4Fw0WE.js";import{t as A}from"./IconChevronBack-BsHmfODG.js";import{t as j}from"./IconDiamond-BZQtRyIy.js";import{t as ee}from"./PageSkeleton-DYdjm4l9.js";import{t as M}from"./crm-CgnSby61.js";import{n as N,r as P,t as F}from"./useSlotBanners-fCEY91jj.js";import{t as I}from"./useGoBack-BrwZYRKb.js";import{t as L}from"./useTouchSwipe-C8fUyAcQ.js";import{t as R}from"./bannerLink-BW8t2Oqp.js";var z=y({__name:`IconSearch`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(r(),_(C,{icon:`vuesax-linear:search-normal`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),B=[`aria-label`],V={class:`slot-banner__content`},H={key:0,class:`slot-banner__title`},U={key:1,class:`slot-banner__tagline`},W={key:0,class:`slot-banner__dots`,role:`tablist`,"aria-label":`بنرها`},G=[`aria-label`,`aria-selected`,`onClick`],K=g(y({__name:`AppSlotBanner`,props:{bannerSlot:{},hideWhenEmpty:{type:Boolean,default:!0}},setup(o){let s=o,d=T(),{banners:p,loading:g}=F(s.bannerSlot),_=h(0),y=c(()=>p.value[_.value]??null),b=c(()=>y.value?.bannerLink?.trim()||``),C=c(()=>{let e=y.value?.imageUrl?.trim();if(e)return{backgroundImage:`url(${e})`}});function w(){let e=y.value?.ctaLink?.trim();e&&R(e,d)}function E(e){b.value&&(e.target.closest(`.slot-banner__cta, .slot-banner__dots`)||R(b.value,d))}function D(e){p.value.length&&(_.value=(e%p.value.length+p.value.length)%p.value.length)}let{onTouchStart:O,onTouchEnd:k}=L({enabled:()=>p.value.length>1,onSwipe(e){D(_.value+e)}});return(s,c)=>!o.hideWhenEmpty||y.value?n((r(),u(`section`,{key:0,class:e([`slot-banner`,{"slot-banner--photo":!!y.value?.imageUrl,"slot-banner--linked":!!b.value}]),style:i(C.value),"aria-label":y.value?.title||`بنر`,onClick:E,onTouchstartPassive:c[0]||=(...e)=>v(O)&&v(O)(...e),onTouchendPassive:c[1]||=(...e)=>v(k)&&v(k)(...e)},[y.value?(r(),u(f,{key:0},[m(`div`,V,[y.value.showTitle!==!1&&y.value.title?(r(),u(`h2`,H,a(y.value.title),1)):l(``,!0),y.value.showSubtitle!==!1&&y.value.subtitle?(r(),u(`p`,U,a(y.value.subtitle),1)):l(``,!0),y.value.showCta!==!1&&y.value.ctaLabel?(r(),u(`button`,{key:2,type:`button`,class:`slot-banner__cta`,onClick:x(w,[`stop`])},a(y.value.ctaLabel),1)):l(``,!0)]),v(p).length>1?(r(),u(`div`,W,[(r(!0),u(f,null,t(v(p),(t,n)=>(r(),u(`button`,{key:t.id,type:`button`,class:e([`slot-banner__dot`,{"slot-banner__dot--active":n===_.value}]),"aria-label":t.title,"aria-selected":n===_.value,onClick:x(e=>D(n),[`stop`])},null,10,G))),128))])):l(``,!0)],64)):l(``,!0)],46,B)),[[S,!v(g)&&y.value]]):l(``,!0)}}),[[`__scopeId`,`data-v-e2649f82`]]),q={class:`page categories-page`},J={class:`cat-top mobile-only`},Y={class:`cat-top__actions`},X={class:`page__scroll page__scroll--with-nav cat-scroll`},Z={key:0},te={class:`usage-grid`},Q=[`onClick`],ne={key:0,class:`usage-card__icon`},re={class:`usage-card__body`},ie={key:0},ae={key:1,class:`usage-card__link`},oe={class:`season-stack`},se=[`onClick`],ce={class:`season-card__content`},le={key:0,class:`season-card__title-row`},ue={key:0,class:`season-card__icon`},de={key:1},fe={key:1},pe={key:2,class:`season-card__link`},$={class:`feature-row`,"aria-label":`ویژگی‌ها`},me={class:`feature-card`},he={class:`feature-card__icon`,"aria-hidden":`true`},ge={class:`feature-card`},_e={class:`feature-card__icon`,"aria-hidden":`true`},ve={class:`feature-card__icon`,"aria-hidden":`true`},ye=g(y({__name:`CategoriesView`,setup(n){let c=T(),{goBack:g}=I(`/`),y=M(),x=h([]),S=h([]),C=h(!0),F=h(null);function L(e){return e.icon||(e.id===`summer`?`bolt`:e.id===`winter`?`feather`:`diamond`)}p(async()=>{try{let e=await y.loadCategories();x.value=e.usage,S.value=e.seasons}catch(e){F.value=e instanceof Error?e.message:`بارگذاری دسته‌ها ناموفق بود.`}finally{C.value=!1}});function R(e){c.push({path:`/products`,query:{categoryId:e,filterAxis:`usage`}})}function B(e){c.push({path:`/products`,query:{season:e,filterAxis:`season`}})}return(n,p)=>(r(),u(`div`,q,[m(`header`,J,[m(`button`,{type:`button`,class:`icon-btn`,"aria-label":`بازگشت`,onClick:p[0]||=(...e)=>v(g)&&v(g)(...e)},[s(A,{size:20})]),p[5]||=m(`h1`,{class:`cat-top__title`},`دسته‌بندی‌ها`,-1),m(`div`,Y,[s(E,{variant:`inline`}),m(`button`,{type:`button`,class:`icon-btn`,"aria-label":`جستجو`,onClick:p[1]||=e=>v(c).push({path:`/products`,query:{q:``}})},[s(z,{size:20})]),m(`button`,{type:`button`,class:`icon-btn`,"aria-label":`اعلان‌ها`,onClick:p[2]||=e=>v(c).push(`/profile/notifications`)},[s(O,{size:20})])])]),p[13]||=m(`header`,{class:`desktop-page__head desktop-only`},[m(`h1`,{class:`desktop-page__title`},`دسته‌بندی‌ها`),m(`p`,{class:`desktop-page__subtitle`},`دسته موردنظر خود را انتخاب کنید`)],-1),m(`div`,X,[F.value?(r(),u(`p`,Z,a(F.value),1)):C.value?(r(),_(ee,{key:1,variant:`grid`})):(r(),u(f,{key:2},[s(K,{"banner-slot":`categories_hero`,class:`categories-page__hero`}),m(`section`,null,[p[6]||=m(`h2`,{class:`block-title`},`انتخاب بر اساس کاربرد`,-1),p[7]||=m(`p`,{class:`block-sub`},`دسته موردنظر خود را انتخاب کنید`,-1),m(`div`,te,[(r(!0),u(f,null,t(x.value,t=>(r(),u(`button`,{key:t.id,type:`button`,class:`usage-card`,onClick:e=>R(t.id)},[m(`div`,{class:e([`usage-card__image`,`usage-card__image--${t.id}`]),style:i(t.imageUrl?{backgroundImage:`url(${t.imageUrl})`}:void 0)},[t.showIcon===!1?l(``,!0):(r(),u(`span`,ne,[(r(),_(o(v(N)(v(P)(t),w)),{size:18}))]))],6),m(`div`,re,[t.showTitle===!1?l(``,!0):(r(),u(`strong`,ie,a(t.title),1)),t.showSubtitle===!1?l(``,!0):(r(),u(`span`,ae,[d(a(t.subtitle||`مشاهده محصولات`)+` `,1),s(D,{size:14})]))])],8,Q))),128))])]),m(`section`,null,[p[8]||=m(`h2`,{class:`block-title`},`انتخاب بر اساس فصل`,-1),p[9]||=m(`p`,{class:`block-sub`},`بر اساس فصل مناسب، پارچه دلخواه را پیدا کنید`,-1),m(`div`,oe,[(r(!0),u(f,null,t(S.value,t=>(r(),u(`button`,{key:t.id,type:`button`,class:e([`season-card`,[`season-card--${t.id}`,{"season-card--banner":!!t.imageUrl}]]),style:i(t.imageUrl?{backgroundImage:`url(${t.imageUrl})`}:void 0),onClick:e=>B(t.id)},[m(`div`,ce,[t.showTitle!==!1||t.showIcon!==!1?(r(),u(`div`,le,[t.showIcon===!1?l(``,!0):(r(),u(`span`,ue,[(r(),_(o(v(N)(L(t),j)),{size:16}))])),t.showTitle===!1?l(``,!0):(r(),u(`strong`,de,a(t.title),1))])):l(``,!0),t.showDescription===!1?l(``,!0):(r(),u(`p`,fe,a(t.description),1)),t.showCta===!1?l(``,!0):(r(),u(`span`,pe,[d(a(t.ctaLabel||`مشاهده محصولات`)+` `,1),s(D,{size:14})]))])],14,se))),128))])]),m(`section`,$,[m(`div`,me,[m(`span`,he,[s(k,{size:22})]),p[10]||=m(`div`,{class:`feature-card__text`},[m(`strong`,null,`پشتیبانی اختصاصی`),m(`span`,null,`در کنار شما هستیم`)],-1)]),m(`div`,ge,[m(`span`,_e,[s(j,{size:22})]),p[11]||=m(`div`,{class:`feature-card__text`},[m(`strong`,null,`مزایای مشتریان ویژه`),m(`span`,null,`بر اساس سطح شما`)],-1)]),m(`div`,{class:`feature-card feature-card--link`,role:`button`,tabindex:`0`,onClick:p[3]||=e=>v(c).push(`/products`),onKeydown:p[4]||=b(e=>v(c).push(`/products`),[`enter`])},[m(`span`,ve,[s(w,{size:22})]),p[12]||=m(`div`,{class:`feature-card__text`},[m(`strong`,null,`درخواست کالیته فیزیکی`),m(`span`,null,`کالیته را دریافت کنید`)],-1)],32)])],64))])]))}}),[[`__scopeId`,`data-v-f5361aa5`]]);export{ye as default}; \ No newline at end of file diff --git a/dist/assets/CheckFormView-B9M6Dswt.js b/dist/assets/CheckFormView-tFovxTRe.js similarity index 97% rename from dist/assets/CheckFormView-B9M6Dswt.js rename to dist/assets/CheckFormView-tFovxTRe.js index 4b07e16..bbc3f38 100644 --- a/dist/assets/CheckFormView-B9M6Dswt.js +++ b/dist/assets/CheckFormView-tFovxTRe.js @@ -1 +1 @@ -import{At as e,G as t,M as n,Pt as r,U as i,_ as a,c as o,d as s,f as c,g as l,i as ee,l as u,nt as d,t as te,u as f,ut as p,v as m}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{t as h}from"./BasicIcon-DPmc0iaK.js";import{n as g,o as ne,u as _}from"./format-C72AoJ2H.js";import{i as re,n as v,o as ie,t as ae}from"./validation-Duyyve7l.js";import{t as oe}from"./IconCheckBook-IuV8Li8k.js";import{C as se,f as ce,r as le}from"./index-DYwnTikp.js";import{t as ue}from"./FormErrorBanner-Ud1D04xf.js";import{n as y,r as b,t as de}from"./formErrors-DglFjYkZ.js";import{t as fe}from"./PageHeader-C5c2Pzrn.js";import{t as pe}from"./useRequirePricedOrder-Bivuv5Mx.js";import{t as x}from"./BaseInput-CpE3bVJZ.js";import{t as me}from"./CurrencyInput-Cu2dRPFo.js";import{t as he}from"./PersianDateInput-BcTTynHd.js";var ge=m({__name:`IconCash`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,r)=>(n(),f(h,{icon:`vuesax-linear:money-4`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),_e={class:`page`},ve={class:`page__scroll checkout-page__scroll`},ye={class:`mb-3 flex items-start gap-3`},be={class:`flex h-10 w-10 shrink-0 items-center justify-center rounded-full bg-[var(--color-primary-soft)] text-[var(--color-primary)]`,"aria-hidden":`true`},xe={class:`flex flex-col gap-2`},Se={class:`flex items-center justify-between gap-3 text-sm`},Ce={class:`font-tabular text-[var(--color-text)]`},we={class:`flex items-center justify-between gap-3 text-sm`},S={class:`inline-flex items-center gap-1.5 text-[var(--color-text-muted)]`},C={key:0,class:`text-xs`},w={class:`font-tabular text-[var(--color-text)]`},T={class:`mt-1 flex items-center justify-between gap-3 border-t border-[var(--color-border)] pt-3`},E={class:`card`},D={class:`form-group`},O=[`src`],k={key:1,class:`upload-box__placeholder`},Te={key:0,class:`input-error-text`},Ee={key:2,class:`form-group`},De={class:`upload-box`},Oe=[`src`],ke={key:1,class:`upload-box__placeholder`},A=te(m({__name:`CheckFormView`,setup(te){let f=se(),m=ce(),{orderId:h,order:A}=pe(),j=o(()=>m.draftCheckMode===`full`),M=d(``),N=d(``),P=d(``),F=d(``),I=d(``),L=d(``),R=d(``),z=d(``),B=d(``),V=d(``),H=d(``),U=d(``),W=d({}),G=d(``),K=d(!1),q=o(()=>A.value?.finalAmount??0),J=o(()=>m.draftChecks.reduce((e,t)=>e+t.amount,0)),Y=o(()=>_(M.value)||0),X=o(()=>Math.max(0,q.value-J.value)),Ae=o(()=>Math.max(0,q.value-J.value-Y.value)),Z=o(()=>q.value>0&&J.value+Y.value>=q.value),Q=o(()=>q.value>0&&J.value+Y.value>q.value);i([q,X],()=>{K.value||M.value||X.value<=0||(M.value=String(X.value),K.value=!0)},{immediate:!0}),i(M,()=>{W.value=y(W.value,`amount`),b(W.value)||(G.value=``)}),i(N,()=>{W.value=y(W.value,`dueDate`),b(W.value)||(G.value=``)}),i(P,()=>{W.value=y(W.value,`sayadId`),b(W.value)||(G.value=``)}),i(I,()=>{W.value=y(W.value,`ownerNationalId`),b(W.value)||(G.value=``)}),i(V,()=>{W.value=y(W.value,`frontImage`),b(W.value)||(G.value=``)});async function $(e,t){let n=e.target.files?.[0];if(!n)return;let r=v(n);if(!r.valid){t===`front`&&(W.value={...W.value,frontImage:r.message??`خطا`});return}let i=await ae(n);t===`front`?V.value=i:H.value=i}function je(){X.value<=0||(M.value=String(X.value))}function Me(){W.value={},G.value=``;let e={},t=_(M.value);return(!t||t<=0)&&(e.amount=`مبلغ چک باید بزرگ‌تر از صفر باشد.`),N.value||(e.dueDate=`تاریخ سررسید الزامی است.`),V.value||(e.frontImage=`تصویر روی چک الزامی است.`),j.value&&(ie(P.value)||(e.sayadId=`شناسه صیادی باید ۱۶ رقم باشد.`),re(I.value)||(e.ownerNationalId=`کد ملی صاحب چک معتبر نیست.`),m.draftChecks.some(e=>e.sayadId===P.value.replace(/\s/g,``))&&(e.sayadId=`شناسه صیادی تکراری است.`)),W.value=e,!b(e)||(G.value=de,!1)}function Ne(){Me()&&(m.addDraftCheck({amount:_(M.value),dueDate:N.value,sayadId:j.value?P.value.replace(/\s/g,``):void 0,checkNumber:j.value?F.value:void 0,ownerNationalId:j.value?I.value:void 0,ownerFirstName:j.value?L.value:void 0,ownerLastName:j.value?R.value:void 0,bankName:j.value?z.value:void 0,branchName:j.value?B.value:void 0,frontImage:V.value,backImage:H.value||void 0,notes:U.value||void 0,mode:m.draftCheckMode??`brief`}),Pe(),f.push(`/orders/${h.value}/check-list`))}function Pe(){M.value=``,N.value=``,P.value=``,F.value=``,I.value=``,L.value=``,R.value=``,z.value=``,B.value=``,V.value=``,H.value=``,U.value=``,W.value={},G.value=``,K.value=!1}return(i,o)=>(n(),c(`div`,_e,[a(fe,{title:j.value?`ثبت چک - حالت کامل`:`ثبت چک - حالت مختصر`,"show-back":``,onBack:o[0]||=e=>p(f).push(`/orders/${p(h)}/check-mode`)},null,8,[`title`]),u(`div`,ve,[a(ue,{message:G.value},null,8,[`message`]),q.value>0?(n(),c(`div`,{key:0,class:e([`check-balance mb-4 rounded-[var(--radius-md)] border border-[var(--color-border)] bg-[var(--color-surface)] p-4`,{"check-balance--ok":Z.value&&!Q.value,"check-balance--warn":Q.value}])},[u(`div`,ye,[u(`span`,be,[a(ge,{size:22})]),o[13]||=u(`div`,{class:`min-w-0 flex-1`},[u(`p`,{class:`m-0 text-sm font-semibold text-[var(--color-text)]`},`مانده فاکتور`),u(`p`,{class:`m-0 mt-1 text-xs leading-relaxed text-[var(--color-text-muted)]`},` با هر چک، مبلغ باقی‌مانده به‌روز می‌شود تا پوشش کامل فاکتور را از دست ندهید. `)],-1)]),u(`div`,xe,[u(`div`,Se,[o[14]||=u(`span`,{class:`text-[var(--color-text-muted)]`},`مبلغ فاکتور`,-1),u(`strong`,Ce,r(p(g)(q.value)),1)]),u(`div`,we,[u(`span`,S,[a(oe,{size:14}),o[15]||=l(` چک‌های ثبت‌شده `,-1),p(m).draftChecks.length?(n(),c(`span`,C,` (`+r(p(ne)(p(m).draftChecks.length))+`) `,1)):s(``,!0)]),u(`strong`,w,r(p(g)(J.value)),1)]),u(`div`,T,[o[16]||=u(`span`,{class:`text-sm font-semibold text-[var(--color-text)]`},`باقی‌مانده`,-1),u(`strong`,{class:e([`font-tabular text-base`,Z.value&&!Q.value?`text-[var(--color-success)]`:Q.value?`text-[var(--color-danger)]`:`text-[var(--color-primary)]`])},r(Q.value?`${p(g)(J.value+Y.value-q.value)} بیش از فاکتور`:Z.value?`پوشش کامل شد`:p(g)(Ae.value)),3)])])],2)):s(``,!0),o[20]||=u(`div`,{class:`steps`},[u(`span`,{class:`step active`},`۱. اطلاعات چک`),u(`span`,{class:`step`},`۲. چک بعدی`),u(`span`,{class:`step`},`۳. خلاصه`)],-1),u(`div`,E,[a(me,{modelValue:M.value,"onUpdate:modelValue":o[1]||=e=>M.value=e,label:`مبلغ چک (تومان)`,placeholder:`مبلغ`,error:W.value.amount},null,8,[`modelValue`,`error`]),X.value>0&&Y.value!==X.value?(n(),c(`button`,{key:0,type:`button`,class:`check-fill-remaining mb-3 text-sm font-medium text-[var(--color-primary)]`,onClick:je},` پر کردن با باقی‌مانده (`+r(p(g)(X.value))+`) `,1)):s(``,!0),a(he,{modelValue:N.value,"onUpdate:modelValue":o[2]||=e=>N.value=e,label:`تاریخ سررسید`,error:W.value.dueDate},null,8,[`modelValue`,`error`]),j.value?(n(),c(ee,{key:1},[a(x,{modelValue:P.value,"onUpdate:modelValue":o[3]||=e=>P.value=e,label:`شناسه صیادی`,placeholder:`۱۶ رقم`,maxlength:`16`,inputmode:`numeric`,dir:`ltr`,error:W.value.sayadId},null,8,[`modelValue`,`error`]),a(x,{modelValue:F.value,"onUpdate:modelValue":o[4]||=e=>F.value=e,label:`شماره چک`,inputmode:`numeric`,dir:`ltr`},null,8,[`modelValue`]),a(x,{modelValue:I.value,"onUpdate:modelValue":o[5]||=e=>I.value=e,label:`کد ملی صاحب چک`,maxlength:`10`,inputmode:`numeric`,dir:`ltr`,error:W.value.ownerNationalId},null,8,[`modelValue`,`error`]),a(x,{modelValue:L.value,"onUpdate:modelValue":o[6]||=e=>L.value=e,label:`نام صاحب چک`},null,8,[`modelValue`]),a(x,{modelValue:R.value,"onUpdate:modelValue":o[7]||=e=>R.value=e,label:`نام خانوادگی صاحب چک`},null,8,[`modelValue`]),a(x,{modelValue:z.value,"onUpdate:modelValue":o[8]||=e=>z.value=e,label:`نام بانک`},null,8,[`modelValue`]),a(x,{modelValue:B.value,"onUpdate:modelValue":o[9]||=e=>B.value=e,label:`نام شعبه`},null,8,[`modelValue`])],64)):s(``,!0),u(`div`,D,[o[17]||=u(`label`,{class:`form-label`},`تصویر روی چک *`,-1),u(`label`,{class:e([`upload-box`,{"upload-box--error":W.value.frontImage}])},[u(`input`,{type:`file`,accept:`image/*`,class:`upload-box__input`,onChange:o[10]||=e=>$(e,`front`)},null,32),V.value?(n(),c(`img`,{key:0,src:V.value,class:`upload-box__preview`,alt:`روی چک`},null,8,O)):(n(),c(`span`,k,`بارگذاری تصویر چک`))],2),W.value.frontImage?(n(),c(`p`,Te,r(W.value.frontImage),1)):s(``,!0)]),j.value?(n(),c(`div`,Ee,[o[18]||=u(`label`,{class:`form-label`},`تصویر پشت چک`,-1),u(`label`,De,[u(`input`,{type:`file`,accept:`image/*`,class:`upload-box__input`,onChange:o[11]||=e=>$(e,`back`)},null,32),H.value?(n(),c(`img`,{key:0,src:H.value,class:`upload-box__preview`,alt:`پشت چک`},null,8,Oe)):(n(),c(`span`,ke,`بارگذاری تصویر`))])])):s(``,!0),a(x,{modelValue:U.value,"onUpdate:modelValue":o[12]||=e=>U.value=e,label:`توضیحات`},null,8,[`modelValue`]),a(le,{block:``,class:`mt-4`,onClick:Ne},{default:t(()=>[...o[19]||=[l(`ذخیره چک`,-1)]]),_:1})])])]))}}),[[`__scopeId`,`data-v-5976552f`]]);export{A as default}; \ No newline at end of file +import{At as e,G as t,M as n,Pt as r,U as i,_ as a,c as o,d as s,f as c,g as l,i as ee,l as u,nt as d,t as te,u as f,ut as p,v as m}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{t as h}from"./BasicIcon-DPmc0iaK.js";import{n as g,o as ne,u as _}from"./format-C72AoJ2H.js";import{i as re,n as v,o as ie,t as ae}from"./validation-Duyyve7l.js";import{t as oe}from"./IconCheckBook-IuV8Li8k.js";import{C as se,f as ce,r as le}from"./index-CE4Fw0WE.js";import{t as ue}from"./FormErrorBanner-Ud1D04xf.js";import{n as y,r as b,t as de}from"./formErrors-DglFjYkZ.js";import{t as fe}from"./PageHeader-BDPrFkve.js";import{t as pe}from"./useRequirePricedOrder-B78MxGXz.js";import{t as x}from"./BaseInput-CpE3bVJZ.js";import{t as me}from"./CurrencyInput-Cu2dRPFo.js";import{t as he}from"./PersianDateInput-BcTTynHd.js";var ge=m({__name:`IconCash`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,r)=>(n(),f(h,{icon:`vuesax-linear:money-4`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),_e={class:`page`},ve={class:`page__scroll checkout-page__scroll`},ye={class:`mb-3 flex items-start gap-3`},be={class:`flex h-10 w-10 shrink-0 items-center justify-center rounded-full bg-[var(--color-primary-soft)] text-[var(--color-primary)]`,"aria-hidden":`true`},xe={class:`flex flex-col gap-2`},Se={class:`flex items-center justify-between gap-3 text-sm`},Ce={class:`font-tabular text-[var(--color-text)]`},we={class:`flex items-center justify-between gap-3 text-sm`},S={class:`inline-flex items-center gap-1.5 text-[var(--color-text-muted)]`},C={key:0,class:`text-xs`},w={class:`font-tabular text-[var(--color-text)]`},T={class:`mt-1 flex items-center justify-between gap-3 border-t border-[var(--color-border)] pt-3`},E={class:`card`},D={class:`form-group`},O=[`src`],k={key:1,class:`upload-box__placeholder`},Te={key:0,class:`input-error-text`},Ee={key:2,class:`form-group`},De={class:`upload-box`},Oe=[`src`],ke={key:1,class:`upload-box__placeholder`},A=te(m({__name:`CheckFormView`,setup(te){let f=se(),m=ce(),{orderId:h,order:A}=pe(),j=o(()=>m.draftCheckMode===`full`),M=d(``),N=d(``),P=d(``),F=d(``),I=d(``),L=d(``),R=d(``),z=d(``),B=d(``),V=d(``),H=d(``),U=d(``),W=d({}),G=d(``),K=d(!1),q=o(()=>A.value?.finalAmount??0),J=o(()=>m.draftChecks.reduce((e,t)=>e+t.amount,0)),Y=o(()=>_(M.value)||0),X=o(()=>Math.max(0,q.value-J.value)),Ae=o(()=>Math.max(0,q.value-J.value-Y.value)),Z=o(()=>q.value>0&&J.value+Y.value>=q.value),Q=o(()=>q.value>0&&J.value+Y.value>q.value);i([q,X],()=>{K.value||M.value||X.value<=0||(M.value=String(X.value),K.value=!0)},{immediate:!0}),i(M,()=>{W.value=y(W.value,`amount`),b(W.value)||(G.value=``)}),i(N,()=>{W.value=y(W.value,`dueDate`),b(W.value)||(G.value=``)}),i(P,()=>{W.value=y(W.value,`sayadId`),b(W.value)||(G.value=``)}),i(I,()=>{W.value=y(W.value,`ownerNationalId`),b(W.value)||(G.value=``)}),i(V,()=>{W.value=y(W.value,`frontImage`),b(W.value)||(G.value=``)});async function $(e,t){let n=e.target.files?.[0];if(!n)return;let r=v(n);if(!r.valid){t===`front`&&(W.value={...W.value,frontImage:r.message??`خطا`});return}let i=await ae(n);t===`front`?V.value=i:H.value=i}function je(){X.value<=0||(M.value=String(X.value))}function Me(){W.value={},G.value=``;let e={},t=_(M.value);return(!t||t<=0)&&(e.amount=`مبلغ چک باید بزرگ‌تر از صفر باشد.`),N.value||(e.dueDate=`تاریخ سررسید الزامی است.`),V.value||(e.frontImage=`تصویر روی چک الزامی است.`),j.value&&(ie(P.value)||(e.sayadId=`شناسه صیادی باید ۱۶ رقم باشد.`),re(I.value)||(e.ownerNationalId=`کد ملی صاحب چک معتبر نیست.`),m.draftChecks.some(e=>e.sayadId===P.value.replace(/\s/g,``))&&(e.sayadId=`شناسه صیادی تکراری است.`)),W.value=e,!b(e)||(G.value=de,!1)}function Ne(){Me()&&(m.addDraftCheck({amount:_(M.value),dueDate:N.value,sayadId:j.value?P.value.replace(/\s/g,``):void 0,checkNumber:j.value?F.value:void 0,ownerNationalId:j.value?I.value:void 0,ownerFirstName:j.value?L.value:void 0,ownerLastName:j.value?R.value:void 0,bankName:j.value?z.value:void 0,branchName:j.value?B.value:void 0,frontImage:V.value,backImage:H.value||void 0,notes:U.value||void 0,mode:m.draftCheckMode??`brief`}),Pe(),f.push(`/orders/${h.value}/check-list`))}function Pe(){M.value=``,N.value=``,P.value=``,F.value=``,I.value=``,L.value=``,R.value=``,z.value=``,B.value=``,V.value=``,H.value=``,U.value=``,W.value={},G.value=``,K.value=!1}return(i,o)=>(n(),c(`div`,_e,[a(fe,{title:j.value?`ثبت چک - حالت کامل`:`ثبت چک - حالت مختصر`,"show-back":``,onBack:o[0]||=e=>p(f).push(`/orders/${p(h)}/check-mode`)},null,8,[`title`]),u(`div`,ve,[a(ue,{message:G.value},null,8,[`message`]),q.value>0?(n(),c(`div`,{key:0,class:e([`check-balance mb-4 rounded-[var(--radius-md)] border border-[var(--color-border)] bg-[var(--color-surface)] p-4`,{"check-balance--ok":Z.value&&!Q.value,"check-balance--warn":Q.value}])},[u(`div`,ye,[u(`span`,be,[a(ge,{size:22})]),o[13]||=u(`div`,{class:`min-w-0 flex-1`},[u(`p`,{class:`m-0 text-sm font-semibold text-[var(--color-text)]`},`مانده فاکتور`),u(`p`,{class:`m-0 mt-1 text-xs leading-relaxed text-[var(--color-text-muted)]`},` با هر چک، مبلغ باقی‌مانده به‌روز می‌شود تا پوشش کامل فاکتور را از دست ندهید. `)],-1)]),u(`div`,xe,[u(`div`,Se,[o[14]||=u(`span`,{class:`text-[var(--color-text-muted)]`},`مبلغ فاکتور`,-1),u(`strong`,Ce,r(p(g)(q.value)),1)]),u(`div`,we,[u(`span`,S,[a(oe,{size:14}),o[15]||=l(` چک‌های ثبت‌شده `,-1),p(m).draftChecks.length?(n(),c(`span`,C,` (`+r(p(ne)(p(m).draftChecks.length))+`) `,1)):s(``,!0)]),u(`strong`,w,r(p(g)(J.value)),1)]),u(`div`,T,[o[16]||=u(`span`,{class:`text-sm font-semibold text-[var(--color-text)]`},`باقی‌مانده`,-1),u(`strong`,{class:e([`font-tabular text-base`,Z.value&&!Q.value?`text-[var(--color-success)]`:Q.value?`text-[var(--color-danger)]`:`text-[var(--color-primary)]`])},r(Q.value?`${p(g)(J.value+Y.value-q.value)} بیش از فاکتور`:Z.value?`پوشش کامل شد`:p(g)(Ae.value)),3)])])],2)):s(``,!0),o[20]||=u(`div`,{class:`steps`},[u(`span`,{class:`step active`},`۱. اطلاعات چک`),u(`span`,{class:`step`},`۲. چک بعدی`),u(`span`,{class:`step`},`۳. خلاصه`)],-1),u(`div`,E,[a(me,{modelValue:M.value,"onUpdate:modelValue":o[1]||=e=>M.value=e,label:`مبلغ چک (تومان)`,placeholder:`مبلغ`,error:W.value.amount},null,8,[`modelValue`,`error`]),X.value>0&&Y.value!==X.value?(n(),c(`button`,{key:0,type:`button`,class:`check-fill-remaining mb-3 text-sm font-medium text-[var(--color-primary)]`,onClick:je},` پر کردن با باقی‌مانده (`+r(p(g)(X.value))+`) `,1)):s(``,!0),a(he,{modelValue:N.value,"onUpdate:modelValue":o[2]||=e=>N.value=e,label:`تاریخ سررسید`,error:W.value.dueDate},null,8,[`modelValue`,`error`]),j.value?(n(),c(ee,{key:1},[a(x,{modelValue:P.value,"onUpdate:modelValue":o[3]||=e=>P.value=e,label:`شناسه صیادی`,placeholder:`۱۶ رقم`,maxlength:`16`,inputmode:`numeric`,dir:`ltr`,error:W.value.sayadId},null,8,[`modelValue`,`error`]),a(x,{modelValue:F.value,"onUpdate:modelValue":o[4]||=e=>F.value=e,label:`شماره چک`,inputmode:`numeric`,dir:`ltr`},null,8,[`modelValue`]),a(x,{modelValue:I.value,"onUpdate:modelValue":o[5]||=e=>I.value=e,label:`کد ملی صاحب چک`,maxlength:`10`,inputmode:`numeric`,dir:`ltr`,error:W.value.ownerNationalId},null,8,[`modelValue`,`error`]),a(x,{modelValue:L.value,"onUpdate:modelValue":o[6]||=e=>L.value=e,label:`نام صاحب چک`},null,8,[`modelValue`]),a(x,{modelValue:R.value,"onUpdate:modelValue":o[7]||=e=>R.value=e,label:`نام خانوادگی صاحب چک`},null,8,[`modelValue`]),a(x,{modelValue:z.value,"onUpdate:modelValue":o[8]||=e=>z.value=e,label:`نام بانک`},null,8,[`modelValue`]),a(x,{modelValue:B.value,"onUpdate:modelValue":o[9]||=e=>B.value=e,label:`نام شعبه`},null,8,[`modelValue`])],64)):s(``,!0),u(`div`,D,[o[17]||=u(`label`,{class:`form-label`},`تصویر روی چک *`,-1),u(`label`,{class:e([`upload-box`,{"upload-box--error":W.value.frontImage}])},[u(`input`,{type:`file`,accept:`image/*`,class:`upload-box__input`,onChange:o[10]||=e=>$(e,`front`)},null,32),V.value?(n(),c(`img`,{key:0,src:V.value,class:`upload-box__preview`,alt:`روی چک`},null,8,O)):(n(),c(`span`,k,`بارگذاری تصویر چک`))],2),W.value.frontImage?(n(),c(`p`,Te,r(W.value.frontImage),1)):s(``,!0)]),j.value?(n(),c(`div`,Ee,[o[18]||=u(`label`,{class:`form-label`},`تصویر پشت چک`,-1),u(`label`,De,[u(`input`,{type:`file`,accept:`image/*`,class:`upload-box__input`,onChange:o[11]||=e=>$(e,`back`)},null,32),H.value?(n(),c(`img`,{key:0,src:H.value,class:`upload-box__preview`,alt:`پشت چک`},null,8,Oe)):(n(),c(`span`,ke,`بارگذاری تصویر`))])])):s(``,!0),a(x,{modelValue:U.value,"onUpdate:modelValue":o[12]||=e=>U.value=e,label:`توضیحات`},null,8,[`modelValue`]),a(le,{block:``,class:`mt-4`,onClick:Ne},{default:t(()=>[...o[19]||=[l(`ذخیره چک`,-1)]]),_:1})])])]))}}),[[`__scopeId`,`data-v-5976552f`]]);export{A as default}; \ No newline at end of file diff --git a/dist/assets/CheckListView-DEwQImhv.js b/dist/assets/CheckListView-B39-XRBU.js similarity index 98% rename from dist/assets/CheckListView-DEwQImhv.js rename to dist/assets/CheckListView-B39-XRBU.js index 6a5beb7..af311a2 100644 --- a/dist/assets/CheckListView-DEwQImhv.js +++ b/dist/assets/CheckListView-B39-XRBU.js @@ -1 +1 @@ -import{At as e,F as t,G as n,M as r,Pt as i,U as ee,_ as a,c as o,d as s,f as c,g as l,i as u,l as d,nt as f,t as te,u as p,ut as m,v as h}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{d as g,n as ne,o as _,r as v}from"./format-C72AoJ2H.js";import{C as re,S as ie,c as ae,f as oe,h as se,n as ce,p as y,r as b}from"./index-DYwnTikp.js";import{t as x}from"./EmptyState-DoHTAy4d.js";import{t as S}from"./IconChevronBack-BsHmfODG.js";import{t as le}from"./FormErrorBanner-Ud1D04xf.js";import{t as ue}from"./useRequirePricedOrder-Bivuv5Mx.js";var C=Object.defineProperty,w=(e,t)=>{let n={};for(var r in e)C(n,r,{get:e[r],enumerable:!0});return t||C(n,Symbol.toStringTag,{value:`Module`}),n},de={class:`check-list-page mobile-only`},fe={class:`check-list-page__nav`},pe={type:`button`,class:`nav-btn nav-btn--ghost`,"aria-hidden":`true`,tabindex:`-1`},me={key:0,class:`check-list-page__empty page__scroll page__scroll--with-nav`},he={class:`check-list-page__scroll page__scroll`},ge={class:`summary-cards`},_e={class:`summary-card`},T={class:`summary-card__value`},E={class:`summary-card`},D={class:`summary-card__value`},O={key:0,class:`summary-card__status`},k={key:1,class:`summary-card__status summary-card__status--warn`},A={class:`summary-card__value`},j={key:0,class:`summary-card__hint`},M={class:`checks-list`},N={class:`check-card__menu-wrap`},P=[`onClick`],F={key:1,class:`check-card__menu`},I=[`onClick`],ve={class:`check-card__body`},ye={class:`check-card__title`},be={class:`check-card__amount`},xe={class:`check-card__date`},Se={class:`check-card__thumb-wrap`},Ce=[`src`],we={key:1,class:`check-card__thumb check-card__thumb--empty`},Te={class:`rass-panel`},L={class:`rass-panel__days`},Ee={key:0,class:`rass-panel__date`},De={key:0,class:`check-list-page__footer`},Oe={key:0,class:`desktop-checkout-shell check-list-desktop desktop-only`},ke={class:`desktop-two-col`},Ae={class:`desktop-two-col__main`},je={class:`desktop-table-wrap`},Me={class:`desktop-table-scroll`},Ne={class:`desktop-table check-list-desktop__table`},Pe={key:0,scope:`col`},Fe=[`src`],Ie={key:1},Le={class:`check-list-desktop__amount`},Re={key:0},ze=[`onClick`],Be={class:`desktop-summary-panel`},Ve={class:`desktop-summary-panel__row`},He={class:`desktop-summary-panel__row`},Ue={class:`desktop-summary-panel__row`},We={key:0,class:`desktop-summary-panel__action`},Ge={key:1,class:`desktop-checkout-shell desktop-only`},R=h({__name:`CheckListView`,setup(te){let h=ie(),C=re(),w=oe(),R=ae(),z=f(``),B=f(!1),V=o(()=>h.name===`check-list`),{orderId:H}=ue(),U=o(()=>H.value?w.getOrderById(H.value):void 0);ee(H,async e=>{if(!e||!V.value)return;let t=w.getOrderById(e)??await w.fetchOrder(e);t&&(w.draftChecks.length===0&&(t.checks?.length??0)>0?w.loadChecksIntoDraft(t):w.draftOrderId!==e&&w.startCheckDraft(e,t.checkMode??void 0))},{immediate:!0});let W=o(()=>w.draftChecks.length>0?w.draftChecks:V.value?U.value?.checks??[]:R.user?w.userOrders(R.user.id).filter(e=>(e.settlementType===`check`||e.settlementType===`cash_check`)&&e.checks?.length).flatMap(e=>e.checks??[]):[]),G=o(()=>{let e=U.value?se(U.value):void 0;return w.draftChecks.length>0?w.getDraftRass(e):e?y(W.value,e):y([],new Date(0))}),K=o(()=>U.value?.finalAmount??0),q=o(()=>Math.max(0,K.value-G.value.totalAmount)),J=o(()=>K.value>0&&G.value.totalAmount>=K.value),Y=o(()=>K.value>0&&G.value.totalAmount>K.value),X=o({get:()=>h.query.menu??``,set:e=>{C.replace({query:e?{menu:e}:{}})}});function Ke(){C.push(V.value?`/orders/${H.value}`:`/profile`)}function Z(){C.push(`/orders/${H.value}/check-form`)}async function Q(e){X.value=``,await ce({title:`حذف چک`,message:`آیا از حذف این چک مطمئن هستید؟`,confirmLabel:`حذف`,cancelLabel:`انصراف`,tone:`danger`})&&w.removeDraftCheck(e)}function qe(e){X.value=X.value===e?``:e}async function $(){if(!(!H.value||w.draftChecks.length===0||B.value)){z.value=``,B.value=!0;try{await w.updateOrderChecks(H.value,[...w.draftChecks],w.draftCheckMode??`brief`),C.replace(`/orders/${H.value}?track=1`)}catch(e){z.value=e instanceof Error?e.message:`ثبت چک‌ها ناموفق بود.`}finally{B.value=!1}}}return(ee,o)=>(r(),c(u,null,[d(`div`,de,[d(`header`,fe,[d(`button`,{type:`button`,class:`nav-btn`,"aria-label":`بازگشت`,onClick:Ke},[a(S,{size:20})]),o[1]||=d(`h1`,{class:`check-list-page__title`},`چک‌های ثبت شده`,-1),d(`button`,pe,[a(S,{size:18,class:`nav-btn__flip`})])]),W.value.length===0?(r(),c(`div`,me,[a(x,{variant:`checks`,message:`برای ادامه، حداقل یک چک ثبت کنید`},{default:n(()=>[V.value?(r(),p(b,{key:0,onClick:Z},{default:n(()=>[...o[2]||=[l(`ثبت چک جدید`,-1)]]),_:1})):(r(),p(b,{key:1,variant:`outline`,onClick:o[0]||=e=>m(C).push(`/categories`)},{default:n(()=>[...o[3]||=[l(`ثبت سفارش جدید`,-1)]]),_:1}))]),_:1})])):(r(),c(u,{key:1},[d(`div`,he,[a(le,{message:z.value},null,8,[`message`]),d(`div`,ge,[d(`div`,_e,[o[4]||=d(`span`,{class:`summary-card__label`},`مجموع مبلغ چک‌ها`,-1),d(`strong`,T,i(m(_)(G.value.totalAmount)),1),o[5]||=d(`span`,{class:`summary-card__unit`},`تومان`,-1)]),d(`div`,E,[o[7]||=d(`span`,{class:`summary-card__label`},`مبلغ فاکتور`,-1),d(`strong`,D,i(m(_)(K.value)),1),o[8]||=d(`span`,{class:`summary-card__unit`},`تومان`,-1),J.value&&!Y.value?(r(),c(`p`,O,[...o[6]||=[d(`span`,{class:`summary-card__status-icon`},`✓`,-1),l(` مبلغ کامل است `,-1)]])):Y.value?(r(),c(`p`,k,` بیش از مبلغ فاکتور `)):s(``,!0)]),d(`div`,{class:e([`summary-card summary-card--remain`,{"summary-card--remain-ok":J.value&&!Y.value,"summary-card--remain-warn":Y.value}])},[o[9]||=d(`span`,{class:`summary-card__label`},`باقی‌مانده`,-1),d(`strong`,A,i(Y.value?m(_)(G.value.totalAmount-K.value):m(_)(q.value)),1),o[10]||=d(`span`,{class:`summary-card__unit`},`تومان`,-1),J.value?s(``,!0):(r(),c(`p`,j,` هنوز باید چک ثبت کنید `))],2)]),d(`div`,M,[(r(!0),c(u,null,t(W.value,(e,t)=>(r(),c(`article`,{key:e.id,class:`check-card`},[d(`div`,N,[V.value&&m(w).draftChecks.length>0?(r(),c(`button`,{key:0,type:`button`,class:`check-card__menu-btn`,"aria-label":`گزینه‌ها`,onClick:t=>qe(e.id)},` ⋮ `,8,P)):s(``,!0),X.value===e.id?(r(),c(`div`,F,[d(`button`,{type:`button`,onClick:t=>Q(e.id)},`حذف`,8,I)])):s(``,!0)]),d(`div`,ve,[d(`h3`,ye,`چک `+i(m(g)(String(t+1))),1),d(`p`,be,i(m(ne)(e.amount)),1),d(`p`,xe,`تاریخ: `+i(m(v)(e.dueDate)),1)]),d(`div`,Se,[e.frontImage?(r(),c(`img`,{key:0,src:e.frontImage,class:`check-card__thumb`,alt:`تصویر چک`},null,8,Ce)):(r(),c(`div`,we,`چک`))])]))),128))]),d(`div`,Te,[o[11]||=d(`h3`,{class:`rass-panel__title`},`رأس چک‌ها`,-1),d(`div`,L,i(m(g)(String(G.value.rassDays)))+` روز`,1),G.value.rassDate?(r(),c(`p`,Ee,` تاریخ رأس تقریبی: `+i(m(v)(G.value.rassDate)),1)):s(``,!0)])]),V.value&&m(w).draftChecks.length>0?(r(),c(`div`,De,[a(b,{block:``,variant:`outline`,disabled:B.value,onClick:Z},{default:n(()=>[...o[12]||=[l(` افزودن چک جدید `,-1)]]),_:1},8,[`disabled`]),a(b,{block:``,disabled:W.value.length===0,loading:B.value,onClick:$},{default:n(()=>[...o[13]||=[l(` ارسال برای بررسی `,-1)]]),_:1},8,[`disabled`,`loading`])])):s(``,!0)],64))]),W.value.length>0?(r(),c(`div`,Oe,[o[26]||=d(`header`,{class:`desktop-page__head`},[d(`h1`,{class:`desktop-page__title`},`چک‌های ثبت شده`),d(`p`,{class:`desktop-page__subtitle`},`خلاصه و فهرست چک‌های ثبت‌شده`)],-1),d(`div`,ke,[d(`div`,Ae,[d(`div`,je,[d(`div`,Me,[d(`table`,Ne,[d(`thead`,null,[d(`tr`,null,[o[14]||=d(`th`,{scope:`col`},`تصویر`,-1),o[15]||=d(`th`,{scope:`col`},`مبلغ (تومان)`,-1),o[16]||=d(`th`,{scope:`col`},`تاریخ سررسید`,-1),o[17]||=d(`th`,{scope:`col`},`شناسه`,-1),V.value?(r(),c(`th`,Pe,`عملیات`)):s(``,!0)])]),d(`tbody`,null,[(r(!0),c(u,null,t(W.value,(e,t)=>(r(),c(`tr`,{key:e.id},[d(`td`,null,[e.frontImage?(r(),c(`img`,{key:0,src:e.frontImage,class:`check-list-desktop__thumb`,alt:`تصویر چک`},null,8,Fe)):(r(),c(`span`,Ie,`—`))]),d(`td`,Le,i(m(_)(e.amount)),1),d(`td`,null,i(m(v)(e.dueDate)),1),d(`td`,null,`چک `+i(m(g)(String(t+1))),1),V.value&&m(w).draftChecks.length>0?(r(),c(`td`,Re,[d(`button`,{type:`button`,class:`orders-table__action`,onClick:t=>Q(e.id)},` حذف `,8,ze)])):s(``,!0)]))),128))])])])]),V.value?(r(),p(b,{key:0,variant:`outline`,class:`desktop-btn-compact check-list-desktop__add`,onClick:Z},{default:n(()=>[...o[18]||=[l(` ثبت چک دیگر `,-1)]]),_:1})):s(``,!0)]),d(`aside`,Be,[o[25]||=d(`h2`,{class:`desktop-summary-panel__title`},`خلاصه مالی`,-1),d(`div`,Ve,[o[19]||=d(`span`,null,`مجموع چک‌ها`,-1),d(`strong`,null,i(m(_)(G.value.totalAmount))+` تومان`,1)]),d(`div`,He,[o[20]||=d(`span`,null,`مبلغ فاکتور`,-1),d(`strong`,null,i(m(_)(K.value))+` تومان`,1)]),d(`div`,{class:e([`desktop-summary-panel__row desktop-summary-panel__row--remain`,{"desktop-summary-panel__row--ok":J.value&&!Y.value,"desktop-summary-panel__row--warn":Y.value}])},[o[21]||=d(`span`,null,`باقی‌مانده`,-1),d(`strong`,null,i(Y.value?`${m(_)(G.value.totalAmount-K.value)} بیش از فاکتور`:J.value?`پوشش کامل`:`${m(_)(q.value)} تومان`),1)],2),d(`div`,Ue,[o[22]||=d(`span`,null,`رأس چک‌ها`,-1),d(`strong`,null,i(m(g)(String(G.value.rassDays)))+` روز`,1)]),V.value&&m(w).draftChecks.length>0?(r(),c(`div`,We,[a(b,{block:``,variant:`outline`,disabled:B.value,onClick:Z},{default:n(()=>[...o[23]||=[l(` افزودن چک جدید `,-1)]]),_:1},8,[`disabled`]),a(b,{block:``,disabled:W.value.length===0,loading:B.value,onClick:$},{default:n(()=>[...o[24]||=[l(` ارسال برای بررسی `,-1)]]),_:1},8,[`disabled`,`loading`])])):s(``,!0)])])])):(r(),c(`div`,Ge,[a(x,{variant:`checks`,message:`برای ادامه، حداقل یک چک ثبت کنید`},{default:n(()=>[V.value?(r(),p(b,{key:0,onClick:Z},{default:n(()=>[...o[27]||=[l(`ثبت چک جدید`,-1)]]),_:1})):s(``,!0)]),_:1})]))],64))}}),z=w({default:()=>B}),B=te(R,[[`__scopeId`,`data-v-e951b25f`]]);export{z as n,B as t}; \ No newline at end of file +import{At as e,F as t,G as n,M as r,Pt as i,U as ee,_ as a,c as o,d as s,f as c,g as l,i as u,l as d,nt as f,t as te,u as p,ut as m,v as h}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{d as g,n as ne,o as _,r as v}from"./format-C72AoJ2H.js";import{C as re,S as ie,c as ae,f as oe,h as se,n as ce,p as y,r as b}from"./index-CE4Fw0WE.js";import{t as x}from"./EmptyState-DoHTAy4d.js";import{t as S}from"./IconChevronBack-BsHmfODG.js";import{t as le}from"./FormErrorBanner-Ud1D04xf.js";import{t as ue}from"./useRequirePricedOrder-B78MxGXz.js";var C=Object.defineProperty,w=(e,t)=>{let n={};for(var r in e)C(n,r,{get:e[r],enumerable:!0});return t||C(n,Symbol.toStringTag,{value:`Module`}),n},de={class:`check-list-page mobile-only`},fe={class:`check-list-page__nav`},pe={type:`button`,class:`nav-btn nav-btn--ghost`,"aria-hidden":`true`,tabindex:`-1`},me={key:0,class:`check-list-page__empty page__scroll page__scroll--with-nav`},he={class:`check-list-page__scroll page__scroll`},ge={class:`summary-cards`},_e={class:`summary-card`},T={class:`summary-card__value`},E={class:`summary-card`},D={class:`summary-card__value`},O={key:0,class:`summary-card__status`},k={key:1,class:`summary-card__status summary-card__status--warn`},A={class:`summary-card__value`},j={key:0,class:`summary-card__hint`},M={class:`checks-list`},N={class:`check-card__menu-wrap`},P=[`onClick`],F={key:1,class:`check-card__menu`},I=[`onClick`],ve={class:`check-card__body`},ye={class:`check-card__title`},be={class:`check-card__amount`},xe={class:`check-card__date`},Se={class:`check-card__thumb-wrap`},Ce=[`src`],we={key:1,class:`check-card__thumb check-card__thumb--empty`},Te={class:`rass-panel`},L={class:`rass-panel__days`},Ee={key:0,class:`rass-panel__date`},De={key:0,class:`check-list-page__footer`},Oe={key:0,class:`desktop-checkout-shell check-list-desktop desktop-only`},ke={class:`desktop-two-col`},Ae={class:`desktop-two-col__main`},je={class:`desktop-table-wrap`},Me={class:`desktop-table-scroll`},Ne={class:`desktop-table check-list-desktop__table`},Pe={key:0,scope:`col`},Fe=[`src`],Ie={key:1},Le={class:`check-list-desktop__amount`},Re={key:0},ze=[`onClick`],Be={class:`desktop-summary-panel`},Ve={class:`desktop-summary-panel__row`},He={class:`desktop-summary-panel__row`},Ue={class:`desktop-summary-panel__row`},We={key:0,class:`desktop-summary-panel__action`},Ge={key:1,class:`desktop-checkout-shell desktop-only`},R=h({__name:`CheckListView`,setup(te){let h=ie(),C=re(),w=oe(),R=ae(),z=f(``),B=f(!1),V=o(()=>h.name===`check-list`),{orderId:H}=ue(),U=o(()=>H.value?w.getOrderById(H.value):void 0);ee(H,async e=>{if(!e||!V.value)return;let t=w.getOrderById(e)??await w.fetchOrder(e);t&&(w.draftChecks.length===0&&(t.checks?.length??0)>0?w.loadChecksIntoDraft(t):w.draftOrderId!==e&&w.startCheckDraft(e,t.checkMode??void 0))},{immediate:!0});let W=o(()=>w.draftChecks.length>0?w.draftChecks:V.value?U.value?.checks??[]:R.user?w.userOrders(R.user.id).filter(e=>(e.settlementType===`check`||e.settlementType===`cash_check`)&&e.checks?.length).flatMap(e=>e.checks??[]):[]),G=o(()=>{let e=U.value?se(U.value):void 0;return w.draftChecks.length>0?w.getDraftRass(e):e?y(W.value,e):y([],new Date(0))}),K=o(()=>U.value?.finalAmount??0),q=o(()=>Math.max(0,K.value-G.value.totalAmount)),J=o(()=>K.value>0&&G.value.totalAmount>=K.value),Y=o(()=>K.value>0&&G.value.totalAmount>K.value),X=o({get:()=>h.query.menu??``,set:e=>{C.replace({query:e?{menu:e}:{}})}});function Ke(){C.push(V.value?`/orders/${H.value}`:`/profile`)}function Z(){C.push(`/orders/${H.value}/check-form`)}async function Q(e){X.value=``,await ce({title:`حذف چک`,message:`آیا از حذف این چک مطمئن هستید؟`,confirmLabel:`حذف`,cancelLabel:`انصراف`,tone:`danger`})&&w.removeDraftCheck(e)}function qe(e){X.value=X.value===e?``:e}async function $(){if(!(!H.value||w.draftChecks.length===0||B.value)){z.value=``,B.value=!0;try{await w.updateOrderChecks(H.value,[...w.draftChecks],w.draftCheckMode??`brief`),C.replace(`/orders/${H.value}?track=1`)}catch(e){z.value=e instanceof Error?e.message:`ثبت چک‌ها ناموفق بود.`}finally{B.value=!1}}}return(ee,o)=>(r(),c(u,null,[d(`div`,de,[d(`header`,fe,[d(`button`,{type:`button`,class:`nav-btn`,"aria-label":`بازگشت`,onClick:Ke},[a(S,{size:20})]),o[1]||=d(`h1`,{class:`check-list-page__title`},`چک‌های ثبت شده`,-1),d(`button`,pe,[a(S,{size:18,class:`nav-btn__flip`})])]),W.value.length===0?(r(),c(`div`,me,[a(x,{variant:`checks`,message:`برای ادامه، حداقل یک چک ثبت کنید`},{default:n(()=>[V.value?(r(),p(b,{key:0,onClick:Z},{default:n(()=>[...o[2]||=[l(`ثبت چک جدید`,-1)]]),_:1})):(r(),p(b,{key:1,variant:`outline`,onClick:o[0]||=e=>m(C).push(`/categories`)},{default:n(()=>[...o[3]||=[l(`ثبت سفارش جدید`,-1)]]),_:1}))]),_:1})])):(r(),c(u,{key:1},[d(`div`,he,[a(le,{message:z.value},null,8,[`message`]),d(`div`,ge,[d(`div`,_e,[o[4]||=d(`span`,{class:`summary-card__label`},`مجموع مبلغ چک‌ها`,-1),d(`strong`,T,i(m(_)(G.value.totalAmount)),1),o[5]||=d(`span`,{class:`summary-card__unit`},`تومان`,-1)]),d(`div`,E,[o[7]||=d(`span`,{class:`summary-card__label`},`مبلغ فاکتور`,-1),d(`strong`,D,i(m(_)(K.value)),1),o[8]||=d(`span`,{class:`summary-card__unit`},`تومان`,-1),J.value&&!Y.value?(r(),c(`p`,O,[...o[6]||=[d(`span`,{class:`summary-card__status-icon`},`✓`,-1),l(` مبلغ کامل است `,-1)]])):Y.value?(r(),c(`p`,k,` بیش از مبلغ فاکتور `)):s(``,!0)]),d(`div`,{class:e([`summary-card summary-card--remain`,{"summary-card--remain-ok":J.value&&!Y.value,"summary-card--remain-warn":Y.value}])},[o[9]||=d(`span`,{class:`summary-card__label`},`باقی‌مانده`,-1),d(`strong`,A,i(Y.value?m(_)(G.value.totalAmount-K.value):m(_)(q.value)),1),o[10]||=d(`span`,{class:`summary-card__unit`},`تومان`,-1),J.value?s(``,!0):(r(),c(`p`,j,` هنوز باید چک ثبت کنید `))],2)]),d(`div`,M,[(r(!0),c(u,null,t(W.value,(e,t)=>(r(),c(`article`,{key:e.id,class:`check-card`},[d(`div`,N,[V.value&&m(w).draftChecks.length>0?(r(),c(`button`,{key:0,type:`button`,class:`check-card__menu-btn`,"aria-label":`گزینه‌ها`,onClick:t=>qe(e.id)},` ⋮ `,8,P)):s(``,!0),X.value===e.id?(r(),c(`div`,F,[d(`button`,{type:`button`,onClick:t=>Q(e.id)},`حذف`,8,I)])):s(``,!0)]),d(`div`,ve,[d(`h3`,ye,`چک `+i(m(g)(String(t+1))),1),d(`p`,be,i(m(ne)(e.amount)),1),d(`p`,xe,`تاریخ: `+i(m(v)(e.dueDate)),1)]),d(`div`,Se,[e.frontImage?(r(),c(`img`,{key:0,src:e.frontImage,class:`check-card__thumb`,alt:`تصویر چک`},null,8,Ce)):(r(),c(`div`,we,`چک`))])]))),128))]),d(`div`,Te,[o[11]||=d(`h3`,{class:`rass-panel__title`},`رأس چک‌ها`,-1),d(`div`,L,i(m(g)(String(G.value.rassDays)))+` روز`,1),G.value.rassDate?(r(),c(`p`,Ee,` تاریخ رأس تقریبی: `+i(m(v)(G.value.rassDate)),1)):s(``,!0)])]),V.value&&m(w).draftChecks.length>0?(r(),c(`div`,De,[a(b,{block:``,variant:`outline`,disabled:B.value,onClick:Z},{default:n(()=>[...o[12]||=[l(` افزودن چک جدید `,-1)]]),_:1},8,[`disabled`]),a(b,{block:``,disabled:W.value.length===0,loading:B.value,onClick:$},{default:n(()=>[...o[13]||=[l(` ارسال برای بررسی `,-1)]]),_:1},8,[`disabled`,`loading`])])):s(``,!0)],64))]),W.value.length>0?(r(),c(`div`,Oe,[o[26]||=d(`header`,{class:`desktop-page__head`},[d(`h1`,{class:`desktop-page__title`},`چک‌های ثبت شده`),d(`p`,{class:`desktop-page__subtitle`},`خلاصه و فهرست چک‌های ثبت‌شده`)],-1),d(`div`,ke,[d(`div`,Ae,[d(`div`,je,[d(`div`,Me,[d(`table`,Ne,[d(`thead`,null,[d(`tr`,null,[o[14]||=d(`th`,{scope:`col`},`تصویر`,-1),o[15]||=d(`th`,{scope:`col`},`مبلغ (تومان)`,-1),o[16]||=d(`th`,{scope:`col`},`تاریخ سررسید`,-1),o[17]||=d(`th`,{scope:`col`},`شناسه`,-1),V.value?(r(),c(`th`,Pe,`عملیات`)):s(``,!0)])]),d(`tbody`,null,[(r(!0),c(u,null,t(W.value,(e,t)=>(r(),c(`tr`,{key:e.id},[d(`td`,null,[e.frontImage?(r(),c(`img`,{key:0,src:e.frontImage,class:`check-list-desktop__thumb`,alt:`تصویر چک`},null,8,Fe)):(r(),c(`span`,Ie,`—`))]),d(`td`,Le,i(m(_)(e.amount)),1),d(`td`,null,i(m(v)(e.dueDate)),1),d(`td`,null,`چک `+i(m(g)(String(t+1))),1),V.value&&m(w).draftChecks.length>0?(r(),c(`td`,Re,[d(`button`,{type:`button`,class:`orders-table__action`,onClick:t=>Q(e.id)},` حذف `,8,ze)])):s(``,!0)]))),128))])])])]),V.value?(r(),p(b,{key:0,variant:`outline`,class:`desktop-btn-compact check-list-desktop__add`,onClick:Z},{default:n(()=>[...o[18]||=[l(` ثبت چک دیگر `,-1)]]),_:1})):s(``,!0)]),d(`aside`,Be,[o[25]||=d(`h2`,{class:`desktop-summary-panel__title`},`خلاصه مالی`,-1),d(`div`,Ve,[o[19]||=d(`span`,null,`مجموع چک‌ها`,-1),d(`strong`,null,i(m(_)(G.value.totalAmount))+` تومان`,1)]),d(`div`,He,[o[20]||=d(`span`,null,`مبلغ فاکتور`,-1),d(`strong`,null,i(m(_)(K.value))+` تومان`,1)]),d(`div`,{class:e([`desktop-summary-panel__row desktop-summary-panel__row--remain`,{"desktop-summary-panel__row--ok":J.value&&!Y.value,"desktop-summary-panel__row--warn":Y.value}])},[o[21]||=d(`span`,null,`باقی‌مانده`,-1),d(`strong`,null,i(Y.value?`${m(_)(G.value.totalAmount-K.value)} بیش از فاکتور`:J.value?`پوشش کامل`:`${m(_)(q.value)} تومان`),1)],2),d(`div`,Ue,[o[22]||=d(`span`,null,`رأس چک‌ها`,-1),d(`strong`,null,i(m(g)(String(G.value.rassDays)))+` روز`,1)]),V.value&&m(w).draftChecks.length>0?(r(),c(`div`,We,[a(b,{block:``,variant:`outline`,disabled:B.value,onClick:Z},{default:n(()=>[...o[23]||=[l(` افزودن چک جدید `,-1)]]),_:1},8,[`disabled`]),a(b,{block:``,disabled:W.value.length===0,loading:B.value,onClick:$},{default:n(()=>[...o[24]||=[l(` ارسال برای بررسی `,-1)]]),_:1},8,[`disabled`,`loading`])])):s(``,!0)])])])):(r(),c(`div`,Ge,[a(x,{variant:`checks`,message:`برای ادامه، حداقل یک چک ثبت کنید`},{default:n(()=>[V.value?(r(),p(b,{key:0,onClick:Z},{default:n(()=>[...o[27]||=[l(`ثبت چک جدید`,-1)]]),_:1})):s(``,!0)]),_:1})]))],64))}}),z=w({default:()=>B}),B=te(R,[[`__scopeId`,`data-v-e951b25f`]]);export{z as n,B as t}; \ No newline at end of file diff --git a/dist/assets/CheckModeSelectView-Cab34XIX.js b/dist/assets/CheckModeSelectView-KJJE3f5u.js similarity index 90% rename from dist/assets/CheckModeSelectView-Cab34XIX.js rename to dist/assets/CheckModeSelectView-KJJE3f5u.js index 80e24ef..d0fb72b 100644 --- a/dist/assets/CheckModeSelectView-Cab34XIX.js +++ b/dist/assets/CheckModeSelectView-KJJE3f5u.js @@ -1 +1 @@ -import{M as e,Pt as t,U as n,_ as r,c as i,f as a,l as o,t as s,ut as c,v as l}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{n as u}from"./format-C72AoJ2H.js";import{t as d}from"./IconCheckBook-IuV8Li8k.js";import{C as f,f as p}from"./index-DYwnTikp.js";import{t as m}from"./PageHeader-C5c2Pzrn.js";import{t as h}from"./useRequirePricedOrder-Bivuv5Mx.js";import{t as g}from"./IconEditPen-D6lQ4xNz.js";var _={class:`page check-mode-page`},v={class:`page__scroll check-mode-page__scroll`},y={class:`check-mode-invoice`},b={class:`check-mode-invoice__value`},x={class:`mode-options`},S={class:`mode-card__icon`},C={class:`mode-card__icon`},w=s(l({__name:`CheckModeSelectView`,setup(s){let l=f(),w=p(),{orderId:T,order:E}=h(),D=i(()=>E.value?.finalAmount?u(E.value.finalAmount):`—`);n(T,async e=>{e&&(w.getOrderById(e)||await w.fetchOrder(e),w.draftOrderId!==e&&w.startCheckDraft(e))},{immediate:!0});function O(e){w.setCheckMode(e),l.push(`/orders/${T.value}/check-form`)}return(n,i)=>(e(),a(`div`,_,[r(m,{title:`تسویه چکی`,subtitle:`بر اساس مبلغ فاکتور، نحوه ثبت چک را انتخاب کنید`,"show-back":``,centered:``,onBack:i[0]||=e=>c(l).push(`/orders/${c(T)}`)}),o(`div`,v,[o(`div`,y,[i[3]||=o(`span`,{class:`check-mode-invoice__label`},`مبلغ فاکتور`,-1),o(`strong`,b,t(D.value),1)]),o(`div`,x,[o(`button`,{type:`button`,class:`mode-card`,onClick:i[1]||=e=>O(`full`)},[o(`span`,S,[r(d,{size:36})]),i[4]||=o(`h3`,{class:`mode-card__title`},`ثبت کامل (پیشنهادی)`,-1),i[5]||=o(`p`,{class:`mode-card__desc`},`وارد کردن همه اطلاعات چک`,-1)]),o(`button`,{type:`button`,class:`mode-card`,onClick:i[2]||=e=>O(`brief`)},[o(`span`,C,[r(g,{size:36})]),i[6]||=o(`h3`,{class:`mode-card__title`},`ثبت مختصر`,-1),i[7]||=o(`p`,{class:`mode-card__desc`},`وارد کردن حداقل اطلاعات`,-1)])])])]))}}),[[`__scopeId`,`data-v-680065b0`]]);export{w as default}; \ No newline at end of file +import{M as e,Pt as t,U as n,_ as r,c as i,f as a,l as o,t as s,ut as c,v as l}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{n as u}from"./format-C72AoJ2H.js";import{t as d}from"./IconCheckBook-IuV8Li8k.js";import{C as f,f as p}from"./index-CE4Fw0WE.js";import{t as m}from"./PageHeader-BDPrFkve.js";import{t as h}from"./useRequirePricedOrder-B78MxGXz.js";import{t as g}from"./IconEditPen-D6lQ4xNz.js";var _={class:`page check-mode-page`},v={class:`page__scroll check-mode-page__scroll`},y={class:`check-mode-invoice`},b={class:`check-mode-invoice__value`},x={class:`mode-options`},S={class:`mode-card__icon`},C={class:`mode-card__icon`},w=s(l({__name:`CheckModeSelectView`,setup(s){let l=f(),w=p(),{orderId:T,order:E}=h(),D=i(()=>E.value?.finalAmount?u(E.value.finalAmount):`—`);n(T,async e=>{e&&(w.getOrderById(e)||await w.fetchOrder(e),w.draftOrderId!==e&&w.startCheckDraft(e))},{immediate:!0});function O(e){w.setCheckMode(e),l.push(`/orders/${T.value}/check-form`)}return(n,i)=>(e(),a(`div`,_,[r(m,{title:`تسویه چکی`,subtitle:`بر اساس مبلغ فاکتور، نحوه ثبت چک را انتخاب کنید`,"show-back":``,centered:``,onBack:i[0]||=e=>c(l).push(`/orders/${c(T)}`)}),o(`div`,v,[o(`div`,y,[i[3]||=o(`span`,{class:`check-mode-invoice__label`},`مبلغ فاکتور`,-1),o(`strong`,b,t(D.value),1)]),o(`div`,x,[o(`button`,{type:`button`,class:`mode-card`,onClick:i[1]||=e=>O(`full`)},[o(`span`,S,[r(d,{size:36})]),i[4]||=o(`h3`,{class:`mode-card__title`},`ثبت کامل (پیشنهادی)`,-1),i[5]||=o(`p`,{class:`mode-card__desc`},`وارد کردن همه اطلاعات چک`,-1)]),o(`button`,{type:`button`,class:`mode-card`,onClick:i[2]||=e=>O(`brief`)},[o(`span`,C,[r(g,{size:36})]),i[6]||=o(`h3`,{class:`mode-card__title`},`ثبت مختصر`,-1),i[7]||=o(`p`,{class:`mode-card__desc`},`وارد کردن حداقل اطلاعات`,-1)])])])]))}}),[[`__scopeId`,`data-v-680065b0`]]);export{w as default}; \ No newline at end of file diff --git a/dist/assets/CustomerCreateOverlay-BV-An-zG.js b/dist/assets/CustomerCreateOverlay-C0ajQDnY.js similarity index 97% rename from dist/assets/CustomerCreateOverlay-BV-An-zG.js rename to dist/assets/CustomerCreateOverlay-C0ajQDnY.js index c6ef1ff..18a6ac3 100644 --- a/dist/assets/CustomerCreateOverlay-BV-An-zG.js +++ b/dist/assets/CustomerCreateOverlay-C0ajQDnY.js @@ -1 +1 @@ -import{D as e,G as t,M as n,Pt as r,U as i,_ as a,c as o,d as s,f as c,g as l,l as u,nt as d,o as f,t as p,u as m,v as h}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{l as g,n as _}from"./BasicIcon-DPmc0iaK.js";import{l as v}from"./format-C72AoJ2H.js";import{a as y}from"./validation-Duyyve7l.js";import{t as b}from"./http-CU_N-R2R.js";import{c as x,r as S}from"./index-DYwnTikp.js";import{t as C}from"./FormErrorBanner-Ud1D04xf.js";import{n as w,r as T,t as E}from"./formErrors-DglFjYkZ.js";import{t as D}from"./crm-CgnSby61.js";import{t as O}from"./BaseInput-CpE3bVJZ.js";var k={class:`customer-create-form`},A={key:0,class:`customer-create-form__intro`},j={class:`customer-create-form__fields`},M=p(h({__name:`CustomerCreateForm`,props:{customerId:{},initial:{}},emits:[`success`],setup(e,{expose:o,emit:f}){let p=e,m=f,h=x(),g=D(),_=d(``),M=d(``),N=d(``),P=d(``),F=d({}),I=d(``),L=d(!1),R=()=>!!p.customerId;function z(e){_.value=e?.firstName??``,M.value=e?.lastName??``,N.value=e?.phone??``,P.value=e?.businessName??``,F.value={},I.value=``}i(()=>p.initial,e=>z(e),{immediate:!0});function B(e){F.value=w(F.value,e),T(F.value)||(I.value=``)}async function V(){if(F.value={},I.value=``,!h.isAgent){I.value=`فقط واسطه می‌تواند مشتری به لیست خود اضافه کند.`;return}let e=v(N.value),t={};if(_.value.trim()||(t.firstName=`نام الزامی است.`),M.value.trim()||(t.lastName=`نام خانوادگی الزامی است.`),y(e)||(t.phone=`شماره موبایل معتبر نیست.`),T(t)){F.value=t,I.value=E;return}let n={firstName:_.value.trim(),lastName:M.value.trim(),phone:e,businessName:P.value.trim()||void 0};L.value=!0;try{if(R()&&p.customerId){let e=await g.updateCustomer(p.customerId,n);m(`success`,e?.id??p.customerId);return}let e=await g.registerCustomer(n);m(`success`,e?.id)}catch(e){I.value=e instanceof b||e instanceof Error?e.message:R()?`ویرایش مشتری ناموفق بود.`:`ثبت مشتری ناموفق بود.`}finally{L.value=!1}}return o({submit:V,saving:L}),(e,i)=>(n(),c(`div`,k,[R()?s(``,!0):(n(),c(`p`,A,` مشتری به لیست شما اضافه می‌شود و بعد از ورود با همین شماره، سفارش‌هایش به حساب شما وصل می‌ماند. `)),a(C,{message:I.value},null,8,[`message`]),u(`div`,j,[a(O,{modelValue:_.value,"onUpdate:modelValue":[i[0]||=e=>_.value=e,i[1]||=e=>B(`firstName`)],label:`نام`,placeholder:`نام مشتری`,error:F.value.firstName},null,8,[`modelValue`,`error`]),a(O,{modelValue:M.value,"onUpdate:modelValue":[i[2]||=e=>M.value=e,i[3]||=e=>B(`lastName`)],label:`نام خانوادگی`,placeholder:`نام خانوادگی`,error:F.value.lastName},null,8,[`modelValue`,`error`]),a(O,{modelValue:N.value,"onUpdate:modelValue":[i[4]||=e=>N.value=e,i[5]||=e=>B(`phone`)],label:`شماره موبایل`,type:`tel`,inputmode:`tel`,dir:`ltr`,placeholder:`۰۹۱۲۳۴۵۶۷۸۹`,error:F.value.phone},null,8,[`modelValue`,`error`]),a(O,{modelValue:P.value,"onUpdate:modelValue":i[6]||=e=>P.value=e,label:`نام فروشگاه (اختیاری)`,placeholder:`مثلاً بوتیک رز`},null,8,[`modelValue`])]),a(S,{block:``,loading:L.value,disabled:L.value,onClick:V},{default:t(()=>[l(r(R()?`ثبت تغییرات`:`ثبت مشتری`),1)]),_:1},8,[`loading`,`disabled`])]))}}),[[`__scopeId`,`data-v-ec8ddbc3`]]),N={class:`customer-create-sheet`},P={class:`customer-create-sheet__head`},F={id:`customer-create-title`},I=p(h({__name:`CustomerCreateOverlay`,props:{open:{type:Boolean},customerId:{},initial:{},title:{}},emits:[`close`,`success`],setup(l,{emit:d}){let p=l,h=o(()=>p.title??(p.customerId?`ویرایش مشتری`:`افزودن مشتری`)),v=d;function y(){v(`close`)}function b(e){v(`success`,e)}function x(e){e.key===`Escape`&&p.open&&y()}return i(()=>p.open,e=>{document.body.style.overflow=e?`hidden`:``,e?window.addEventListener(`keydown`,x):window.removeEventListener(`keydown`,x)},{immediate:!0}),e(()=>{document.body.style.overflow=``,window.removeEventListener(`keydown`,x)}),(e,i)=>(n(),m(f,{to:`body`},[a(_,{name:`customer-create-sheet`},{default:t(()=>[l.open?(n(),c(`div`,{key:0,class:`customer-create-overlay`,role:`dialog`,"aria-modal":`true`,"aria-labelledby":`customer-create-title`,onClick:g(y,[`self`])},[u(`div`,N,[i[0]||=u(`div`,{class:`customer-create-sheet__handle`,"aria-hidden":`true`},null,-1),u(`header`,P,[u(`h2`,F,r(h.value),1),u(`button`,{type:`button`,class:`customer-create-sheet__close`,"aria-label":`بستن`,onClick:y},` × `)]),a(M,{"customer-id":l.customerId,initial:l.initial,onSuccess:b},null,8,[`customer-id`,`initial`])])])):s(``,!0)]),_:1})]))}}),[[`__scopeId`,`data-v-ac91feb8`]]);export{I as t}; \ No newline at end of file +import{D as e,G as t,M as n,Pt as r,U as i,_ as a,c as o,d as s,f as c,g as l,l as u,nt as d,o as f,t as p,u as m,v as h}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{l as g,n as _}from"./BasicIcon-DPmc0iaK.js";import{l as v}from"./format-C72AoJ2H.js";import{a as y}from"./validation-Duyyve7l.js";import{t as b}from"./http-CU_N-R2R.js";import{c as x,r as S}from"./index-CE4Fw0WE.js";import{t as C}from"./FormErrorBanner-Ud1D04xf.js";import{n as w,r as T,t as E}from"./formErrors-DglFjYkZ.js";import{t as D}from"./crm-CgnSby61.js";import{t as O}from"./BaseInput-CpE3bVJZ.js";var k={class:`customer-create-form`},A={key:0,class:`customer-create-form__intro`},j={class:`customer-create-form__fields`},M=p(h({__name:`CustomerCreateForm`,props:{customerId:{},initial:{}},emits:[`success`],setup(e,{expose:o,emit:f}){let p=e,m=f,h=x(),g=D(),_=d(``),M=d(``),N=d(``),P=d(``),F=d({}),I=d(``),L=d(!1),R=()=>!!p.customerId;function z(e){_.value=e?.firstName??``,M.value=e?.lastName??``,N.value=e?.phone??``,P.value=e?.businessName??``,F.value={},I.value=``}i(()=>p.initial,e=>z(e),{immediate:!0});function B(e){F.value=w(F.value,e),T(F.value)||(I.value=``)}async function V(){if(F.value={},I.value=``,!h.isAgent){I.value=`فقط واسطه می‌تواند مشتری به لیست خود اضافه کند.`;return}let e=v(N.value),t={};if(_.value.trim()||(t.firstName=`نام الزامی است.`),M.value.trim()||(t.lastName=`نام خانوادگی الزامی است.`),y(e)||(t.phone=`شماره موبایل معتبر نیست.`),T(t)){F.value=t,I.value=E;return}let n={firstName:_.value.trim(),lastName:M.value.trim(),phone:e,businessName:P.value.trim()||void 0};L.value=!0;try{if(R()&&p.customerId){let e=await g.updateCustomer(p.customerId,n);m(`success`,e?.id??p.customerId);return}let e=await g.registerCustomer(n);m(`success`,e?.id)}catch(e){I.value=e instanceof b||e instanceof Error?e.message:R()?`ویرایش مشتری ناموفق بود.`:`ثبت مشتری ناموفق بود.`}finally{L.value=!1}}return o({submit:V,saving:L}),(e,i)=>(n(),c(`div`,k,[R()?s(``,!0):(n(),c(`p`,A,` مشتری به لیست شما اضافه می‌شود و بعد از ورود با همین شماره، سفارش‌هایش به حساب شما وصل می‌ماند. `)),a(C,{message:I.value},null,8,[`message`]),u(`div`,j,[a(O,{modelValue:_.value,"onUpdate:modelValue":[i[0]||=e=>_.value=e,i[1]||=e=>B(`firstName`)],label:`نام`,placeholder:`نام مشتری`,error:F.value.firstName},null,8,[`modelValue`,`error`]),a(O,{modelValue:M.value,"onUpdate:modelValue":[i[2]||=e=>M.value=e,i[3]||=e=>B(`lastName`)],label:`نام خانوادگی`,placeholder:`نام خانوادگی`,error:F.value.lastName},null,8,[`modelValue`,`error`]),a(O,{modelValue:N.value,"onUpdate:modelValue":[i[4]||=e=>N.value=e,i[5]||=e=>B(`phone`)],label:`شماره موبایل`,type:`tel`,inputmode:`tel`,dir:`ltr`,placeholder:`۰۹۱۲۳۴۵۶۷۸۹`,error:F.value.phone},null,8,[`modelValue`,`error`]),a(O,{modelValue:P.value,"onUpdate:modelValue":i[6]||=e=>P.value=e,label:`نام فروشگاه (اختیاری)`,placeholder:`مثلاً بوتیک رز`},null,8,[`modelValue`])]),a(S,{block:``,loading:L.value,disabled:L.value,onClick:V},{default:t(()=>[l(r(R()?`ثبت تغییرات`:`ثبت مشتری`),1)]),_:1},8,[`loading`,`disabled`])]))}}),[[`__scopeId`,`data-v-ec8ddbc3`]]),N={class:`customer-create-sheet`},P={class:`customer-create-sheet__head`},F={id:`customer-create-title`},I=p(h({__name:`CustomerCreateOverlay`,props:{open:{type:Boolean},customerId:{},initial:{},title:{}},emits:[`close`,`success`],setup(l,{emit:d}){let p=l,h=o(()=>p.title??(p.customerId?`ویرایش مشتری`:`افزودن مشتری`)),v=d;function y(){v(`close`)}function b(e){v(`success`,e)}function x(e){e.key===`Escape`&&p.open&&y()}return i(()=>p.open,e=>{document.body.style.overflow=e?`hidden`:``,e?window.addEventListener(`keydown`,x):window.removeEventListener(`keydown`,x)},{immediate:!0}),e(()=>{document.body.style.overflow=``,window.removeEventListener(`keydown`,x)}),(e,i)=>(n(),m(f,{to:`body`},[a(_,{name:`customer-create-sheet`},{default:t(()=>[l.open?(n(),c(`div`,{key:0,class:`customer-create-overlay`,role:`dialog`,"aria-modal":`true`,"aria-labelledby":`customer-create-title`,onClick:g(y,[`self`])},[u(`div`,N,[i[0]||=u(`div`,{class:`customer-create-sheet__handle`,"aria-hidden":`true`},null,-1),u(`header`,P,[u(`h2`,F,r(h.value),1),u(`button`,{type:`button`,class:`customer-create-sheet__close`,"aria-label":`بستن`,onClick:y},` × `)]),a(M,{"customer-id":l.customerId,initial:l.initial,onSuccess:b},null,8,[`customer-id`,`initial`])])])):s(``,!0)]),_:1})]))}}),[[`__scopeId`,`data-v-ac91feb8`]]);export{I as t}; \ No newline at end of file diff --git a/dist/assets/CustomerDetailView-7DfKtoIe.js b/dist/assets/CustomerDetailView-CkjR4WPp.js similarity index 98% rename from dist/assets/CustomerDetailView-7DfKtoIe.js rename to dist/assets/CustomerDetailView-CkjR4WPp.js index 44c25b7..d8c87a3 100644 --- a/dist/assets/CustomerDetailView-7DfKtoIe.js +++ b/dist/assets/CustomerDetailView-CkjR4WPp.js @@ -1 +1 @@ -import{At as e,D as t,F as n,G as r,K as i,M as a,Nt as o,Pt as s,U as c,_ as l,c as u,d,f,g as p,i as m,k as h,l as g,m as _,nt as v,o as y,t as b,u as x,ut as S,v as C}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{c as w,l as T,n as E,o as D,t as O}from"./BasicIcon-DPmc0iaK.js";import{o as k}from"./format-C72AoJ2H.js";import{t as A}from"./IconCart-D9TX5E-P.js";import{C as j,S as M,c as N,o as P}from"./index-DYwnTikp.js";import{i as F,t as I}from"./constants-ptWoEwwP.js";import{t as ee}from"./IconPhone-BSof4l2r.js";import{t as te}from"./IconClipboardEmpty-DMrB9tzG.js";import{t as ne}from"./PageHeader-C5c2Pzrn.js";import{t as re}from"./PageSkeleton-DYdjm4l9.js";import{t as ie}from"./crm-CgnSby61.js";import{t as L}from"./PersianDateInput-BcTTynHd.js";import{t as R}from"./IconEditPen-D6lQ4xNz.js";import{t as z}from"./TimeInput-D6PzFPdF.js";import{t as ae}from"./CustomerCreateOverlay-BV-An-zG.js";var oe=C({__name:`IconMail`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(a(),x(O,{icon:`vuesax-linear:sms`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),B={class:`meeting-report-form`},V={key:1,class:`form-error`},H={class:`customer-card`},U={dir:`ltr`},W={class:`type-grid`},G=[`onClick`],K={class:`two-cols two-cols--date`},q={class:`field`},J={class:`field`},se={class:`reminder-box`},Y={class:`reminder-box__head`},X=[`aria-pressed`],ce={class:`field`},Z={class:`two-cols two-cols--date`},le={class:`field`},Q=[`disabled`],ue=b(C({__name:`MeetingReportForm`,props:{customerId:{}},emits:[`success`],setup(t,{emit:r}){let u=t,p=r,_=ie(),y=v(null),b=v(!0),S=v(!1),C=v(null),w=v(`in_person`),T=v(``),E=v(``),O=v(``),k=v(``),A=v(!0),j=v(``),M=v(``),N=v(``),P=v(``),F=[{id:`in_person`,label:`ملاقات حضوری`,icon:`clipboard`},{id:`call`,label:`تماس تلفنی`,icon:`phone`},{id:`message`,label:`پیام`,icon:`mail`},{id:`note`,label:`یادداشت`,icon:`pen`}];async function I(){if(!u.customerId){b.value=!1,C.value=`مشتری مشخص نشده است.`,y.value=null;return}b.value=!0,C.value=null;try{let e=await _.loadCustomerDetail(u.customerId);y.value=e.customer}catch(e){y.value=null,C.value=e instanceof Error?e.message:`بارگذاری مشتری ناموفق بود.`}finally{b.value=!1}}h(I),c(()=>u.customerId,I);async function ne(){if(!u.customerId||!O.value.trim()||!T.value.trim()){C.value=`موضوع و تاریخ الزامی است.`;return}S.value=!0,C.value=null;try{await _.submitMeeting({customerId:u.customerId,type:w.value,title:O.value.trim(),subject:O.value.trim(),content:k.value.trim()||void 0,description:k.value.trim()||void 0,date:T.value.trim(),time:E.value.trim()||void 0,createReminder:A.value,reminderTitle:A.value?j.value.trim()||O.value.trim():void 0,reminderDate:A.value?M.value.trim()||T.value.trim():void 0,reminderTime:A.value?N.value.trim()||E.value.trim()||`10:00`:void 0,reminderNote:A.value&&P.value.trim()||void 0}),p(`success`)}catch(e){C.value=e instanceof Error?e.message:`ثبت گزارش ناموفق بود.`}finally{S.value=!1}}return(t,r)=>(a(),f(`div`,B,[b.value?(a(),x(re,{key:0,variant:`form`})):C.value?(a(),f(`p`,V,s(C.value),1)):d(``,!0),y.value?(a(),f(m,{key:2},[g(`section`,H,[g(`div`,{class:`avatar`,style:o({background:y.value.avatarColor})},s(y.value.avatarLetter),5),g(`div`,null,[g(`strong`,null,s(y.value.name),1),g(`p`,null,s(y.value.contactName),1),g(`p`,U,s(y.value.phone),1)])]),g(`section`,null,[r[9]||=g(`h3`,null,`نوع تعامل`,-1),g(`div`,W,[(a(),f(m,null,n(F,t=>g(`button`,{key:t.id,type:`button`,class:e([`type-btn`,{"type-btn--active":w.value===t.id}]),onClick:e=>w.value=t.id},[t.icon===`clipboard`?(a(),x(te,{key:0,size:22})):t.icon===`phone`?(a(),x(ee,{key:1,size:22})):t.icon===`mail`?(a(),x(oe,{key:2,size:22})):(a(),x(R,{key:3,size:22})),g(`span`,null,s(t.label),1)],10,G)),64))])]),g(`section`,null,[r[10]||=g(`h3`,null,`تاریخ و زمان`,-1),g(`div`,K,[l(L,{modelValue:T.value,"onUpdate:modelValue":r[0]||=e=>T.value=e,label:`تاریخ`,class:`meeting-date`},null,8,[`modelValue`]),l(z,{modelValue:E.value,"onUpdate:modelValue":r[1]||=e=>E.value=e,label:`ساعت`,placeholder:`مثلاً ۱۰:۳۰`,class:`meeting-time`},null,8,[`modelValue`])])]),g(`label`,q,[r[11]||=g(`span`,null,`موضوع گزارش`,-1),i(g(`input`,{"onUpdate:modelValue":r[2]||=e=>O.value=e,type:`text`},null,512),[[D,O.value]])]),g(`label`,J,[r[12]||=g(`span`,null,`محتوای گزارش`,-1),i(g(`textarea`,{"onUpdate:modelValue":r[3]||=e=>k.value=e,rows:`5`,maxlength:`1000`},null,512),[[D,k.value]]),g(`em`,null,s(k.value.length.toLocaleString(`fa-IR`))+`/۱۰۰۰`,1)]),r[17]||=g(`section`,null,[g(`h3`,null,`تصاویر و فایل‌ها`),g(`div`,{class:`files`},[g(`div`,{class:`file-thumb`}),g(`div`,{class:`file-thumb`}),g(`button`,{type:`button`,class:`file-add`,"aria-label":`افزودن فایل`},`+`)])],-1),g(`section`,se,[g(`div`,Y,[r[14]||=g(`h3`,null,`یادآور`,-1),g(`button`,{type:`button`,class:e([`toggle`,{"toggle--on":A.value}]),"aria-pressed":A.value,onClick:r[4]||=e=>A.value=!A.value},[...r[13]||=[g(`span`,null,null,-1)]],10,X)]),A.value?(a(),f(m,{key:0},[g(`label`,ce,[r[15]||=g(`span`,null,`عنوان یادآور`,-1),i(g(`input`,{"onUpdate:modelValue":r[5]||=e=>j.value=e,type:`text`},null,512),[[D,j.value]])]),g(`div`,Z,[l(L,{modelValue:M.value,"onUpdate:modelValue":r[6]||=e=>M.value=e,label:`تاریخ یادآور`,class:`meeting-date`},null,8,[`modelValue`]),l(z,{modelValue:N.value,"onUpdate:modelValue":r[7]||=e=>N.value=e,label:`ساعت یادآور`,placeholder:`مثلاً ۱۰:۳۰`,class:`meeting-time`},null,8,[`modelValue`])]),g(`label`,le,[r[16]||=g(`span`,null,`یادداشت یادآور (اختیاری)`,-1),i(g(`input`,{"onUpdate:modelValue":r[8]||=e=>P.value=e,type:`text`},null,512),[[D,P.value]])])],64)):d(``,!0)]),g(`button`,{type:`button`,class:`submit`,disabled:S.value,onClick:ne},s(S.value?`در حال ثبت...`:`ثبت گزارش و یادآور`),9,Q)],64)):d(``,!0)]))}}),[[`__scopeId`,`data-v-5d6dd8b7`]]),de={class:`meeting-report-sheet`},fe=b(C({__name:`MeetingReportOverlay`,props:{open:{type:Boolean},customerId:{}},emits:[`close`,`success`],setup(e,{emit:n}){let i=e,o=n;function s(){o(`close`)}function u(){o(`success`)}function p(e){e.key===`Escape`&&i.open&&s()}return c(()=>i.open,e=>{document.body.style.overflow=e?`hidden`:``,e?window.addEventListener(`keydown`,p):window.removeEventListener(`keydown`,p)},{immediate:!0}),t(()=>{document.body.style.overflow=``,window.removeEventListener(`keydown`,p)}),(t,n)=>(a(),x(y,{to:`body`},[l(E,{name:`meeting-report-sheet`},{default:r(()=>[e.open?(a(),f(`div`,{key:0,class:`meeting-report-overlay`,role:`dialog`,"aria-modal":`true`,"aria-labelledby":`meeting-report-title`,onClick:T(s,[`self`])},[g(`div`,de,[n[1]||=g(`div`,{class:`meeting-report-sheet__handle`,"aria-hidden":`true`},null,-1),g(`header`,{class:`meeting-report-sheet__head`},[n[0]||=g(`h2`,{id:`meeting-report-title`},`ثبت گزارش ملاقات`,-1),g(`button`,{type:`button`,class:`meeting-report-sheet__close`,"aria-label":`بستن`,onClick:s},` × `)]),e.customerId?(a(),x(ue,{key:e.customerId,"customer-id":e.customerId,onSuccess:u},null,8,[`customer-id`])):d(``,!0)])])):d(``,!0)]),_:1})]))}}),[[`__scopeId`,`data-v-be25c066`]]),pe={key:0,class:`page customer-page`},me={class:`desktop-page__head desktop-only customer-desk-head`},he={class:`desktop-page__title`},ge={class:`desktop-page__subtitle`,dir:`ltr`},_e={class:`page__scroll page__scroll--with-nav customer-scroll`},ve={key:0,class:`profile-card`},ye={class:`profile-card__info`},be={class:`profile-card__name-row`},xe={class:`profile-card__phone`,dir:`ltr`},Se={key:1,class:`profile-banner`},Ce={class:`profile-banner__top`},we={dir:`ltr`},Te={class:`profile-banner__stats`},Ee={class:`tabs`,role:`tablist`},De=[`aria-selected`,`onClick`],Oe={class:`tab__text`},ke={class:`purchase-card`},Ae={class:`purchase-stats`},je={class:`purchase-stats__item`},Me={class:`purchase-stats__value`},Ne={class:`purchase-stats__item`},Pe={class:`purchase-stats__value`},Fe={class:`purchase-stats__item`},Ie={class:`purchase-stats__value`},Le={class:`panel-card`},Re={class:`agent-row__avatar`},ze={class:`agent-row__info`},Be={class:`orders-block`},Ve={class:`orders-block__head`},He=[`onClick`,`onKeydown`],Ue={class:`order-row__title`},We={class:`order-row__amount`},Ge={key:0,class:`empty-inline`},Ke={key:3,class:`panel-card panel-card--list`},qe=[`onClick`,`onKeydown`],Je={class:`order-row__title`},Ye={class:`order-row__amount`},Xe={key:0,class:`empty-inline`},Ze={key:4,class:`panel-card panel-card--reports`},Qe={class:`meeting-filters`},$e=[`onClick`],et={class:`meeting-row__body`},tt={class:`meeting-row__date`},nt={key:0,class:`empty-inline`},rt={key:0,class:`cta-bar`},it={key:1,class:`page empty`},at={key:2,class:`page empty`},ot=b(C({__name:`CustomerDetailView`,setup(t){let i=M(),y=j(),b=ie(),C=N(),T=u(()=>String(i.query.id??``)),E=u(()=>String(i.query.tab??`info`)),D=u(()=>i.query.meetingReport===`1`),O=u(()=>i.query.edit===`1`),L=v(null),z=v([]),B=v([]),V=v(`all`),H=v(!0),U=v(null),W=[{id:`info`,label:`اطلاعات`},{id:`orders`,label:`سفارش‌ها`},{id:`reports`,label:`گزارش‌ها و پیگیری‌ها`}];async function G(){if(!T.value){L.value=null,H.value=!1;return}H.value=!0,U.value=null;try{let e=await b.loadCustomerDetail(T.value);L.value=e.customer,z.value=e.orders,B.value=e.meetings}catch(e){L.value=null,U.value=e instanceof Error?e.message:`مشتری یافت نشد.`}finally{H.value=!1}}h(G),c(T,G);function K(e){y.replace({path:`/customer`,query:{id:T.value,tab:e}})}function q(){y.push({path:`/customer`,query:{id:T.value,tab:`reports`,meetingReport:`1`}})}function J(){y.replace({path:`/customer`,query:{id:T.value,tab:`reports`}})}async function se(){J(),await G()}function Y(){y.push({path:`/customer`,query:{id:T.value,tab:E.value,edit:`1`}})}function X(){y.replace({path:`/customer`,query:{id:T.value,tab:E.value}})}async function ce(){X(),await G()}let Z=u(()=>{if(!L.value)return null;let e=L.value;if(e.firstName&&e.lastName)return{firstName:e.firstName,lastName:e.lastName,phone:e.phone,businessName:e.businessName??``};let t=e.contactName.trim().split(/\s+/),n=t[0]??``;return{firstName:n,lastName:t.slice(1).join(` `)||n,phone:e.phone,businessName:e.name===e.contactName?``:e.name}});function le(e){return e===`in_person`?`ملاقات حضوری`:e===`call`?`تماس`:e===`message`?`پیام`:`یادداشت`}let Q=u(()=>L.value?.agentName||C.fullName||`واسطه`),ue=u(()=>L.value?.agentCode||C.user?.agentCode||`—`),de=u(()=>Q.value.charAt(0)),ot=[{id:`all`,label:`همه`},{id:`in_person`,label:`ملاقات حضوری`},{id:`call`,label:`تماس`},{id:`message`,label:`پیام`},{id:`note`,label:`یادداشت`}],st=u(()=>V.value===`all`?B.value:B.value.filter(e=>e.type===V.value));function ct(e){return e===`in_person`?`meeting-row__icon--green`:e===`call`?`meeting-row__icon--blue`:`meeting-row__icon--purple`}function $(e){e&&y.push({path:`/order`,query:{id:e}})}function lt(e){let t=e.statusLabel;return I[t]||e.statusLabel}function ut(e){let t=F[e.statusLabel];return t===`success`?`success`:t===`warning`||t===`danger`?`warning`:e.statusTone||`info`}let dt=u(()=>z.value.slice(0,3));function ft(e){return e===`active`?`فعال`:e===`inactive`?`غیرفعال`:`جدید`}function pt(e){return e===`active`?`status-badge--active`:e===`inactive`?`status-badge--inactive`:`status-badge--new`}return(t,i)=>(a(),f(m,null,[L.value?(a(),f(`div`,pe,[l(ne,{class:`mobile-only`,title:E.value===`reports`?`پروفایل مشتری`:`جزئیات مشتری`,"show-back":``,centered:``,onBack:i[0]||=e=>S(y).push(`/customers`)},_({_:2},[E.value===`info`?{name:`trailing`,fn:r(()=>[g(`button`,{type:`button`,class:`edit-btn edit-btn--compact`,"aria-label":`ویرایش`,onClick:Y},[l(R,{size:18}),i[4]||=g(`span`,{class:`edit-btn__label`},`ویرایش`,-1)])]),key:`0`}:void 0]),1032,[`title`]),g(`header`,me,[g(`div`,null,[g(`h1`,he,s(L.value.name),1),g(`p`,ge,s(L.value.phone),1)]),E.value===`info`?(a(),f(`button`,{key:0,type:`button`,class:`edit-btn edit-btn--desk`,onClick:Y},` ویرایش `)):d(``,!0)]),g(`div`,_e,[E.value===`reports`?(a(),f(`section`,Se,[g(`div`,Ce,[g(`div`,{class:`profile-card__avatar profile-card__avatar--lg`,style:o({background:L.value.avatarColor})},s(L.value.avatarLetter),5),g(`div`,null,[g(`h2`,null,s(L.value.name),1),g(`p`,null,s(L.value.contactName),1),g(`p`,we,s(L.value.phone),1)]),i[5]||=g(`span`,{class:`status-badge status-badge--active status-badge--on-dark`},`فعال`,-1)]),g(`div`,Te,[g(`div`,null,[i[6]||=g(`span`,null,`سطح مشتری`,-1),g(`strong`,null,s(L.value.levelLabel),1)]),g(`div`,null,[i[7]||=g(`span`,null,`تاریخ اولین خرید`,-1),g(`strong`,null,s(L.value.firstPurchaseDate),1)]),g(`div`,null,[i[8]||=g(`span`,null,`تعداد سفارش`,-1),g(`strong`,null,s(S(k)(L.value.orderCount))+` سفارش`,1)])])])):(a(),f(`section`,ve,[g(`div`,{class:`profile-card__avatar`,style:o({background:L.value.avatarColor})},s(L.value.avatarLetter),5),g(`div`,ye,[g(`div`,be,[g(`h2`,null,s(L.value.name),1),g(`span`,{class:e([`status-badge`,pt(L.value.status)])},s(ft(L.value.status)),3)]),g(`p`,xe,s(L.value.phone),1)])])),g(`div`,Ee,[(a(),f(m,null,n(W,t=>g(`button`,{key:t.id,type:`button`,role:`tab`,class:e([`tab`,{"tab--active":E.value===t.id}]),"aria-selected":E.value===t.id,onClick:e=>K(t.id)},[g(`span`,Oe,s(t.label),1)],10,De)),64))]),E.value===`info`?(a(),f(m,{key:2},[g(`section`,ke,[i[16]||=g(`h3`,{class:`section-title`},`اطلاعات خرید`,-1),g(`div`,Ae,[g(`div`,je,[i[9]||=g(`span`,{class:`purchase-stats__label`},`تعداد سفارش`,-1),g(`strong`,Me,s(S(k)(L.value.orderCount)),1)]),i[14]||=g(`span`,{class:`purchase-stats__divider`,"aria-hidden":`true`},null,-1),g(`div`,Ne,[i[10]||=g(`span`,{class:`purchase-stats__label`},`مجموع خرید`,-1),g(`strong`,Pe,s(S(k)(L.value.totalPurchaseToman)),1),i[11]||=g(`em`,{class:`purchase-stats__unit`},`تومان`,-1)]),i[15]||=g(`span`,{class:`purchase-stats__divider`,"aria-hidden":`true`},null,-1),g(`div`,Fe,[i[12]||=g(`span`,{class:`purchase-stats__label`},`میانگین هر سفارش`,-1),g(`strong`,Ie,s(S(k)(L.value.averageOrderToman)),1),i[13]||=g(`em`,{class:`purchase-stats__unit`},`تومان`,-1)])])]),g(`section`,Le,[g(`button`,{type:`button`,class:`agent-row`,onClick:i[1]||=e=>S(y).push(`/profile`)},[g(`div`,Re,s(de.value),1),g(`div`,ze,[g(`strong`,null,s(Q.value),1),g(`p`,null,`کد واسطه: `+s(ue.value),1)]),l(P,{size:18,class:`agent-row__chevron`,"aria-hidden":`true`})]),g(`div`,Be,[g(`div`,Ve,[i[17]||=g(`h3`,{class:`section-title`},`آخرین سفارش‌ها`,-1),g(`button`,{type:`button`,class:`link-btn`,onClick:i[2]||=e=>K(`orders`)},`مشاهده همه`)]),(a(!0),f(m,null,n(dt.value,t=>(a(),f(`article`,{key:t.id,class:`order-row`,role:`button`,tabindex:`0`,onClick:e=>$(t.id),onKeydown:w(e=>$(t.id),[`enter`])},[g(`div`,Ue,[g(`strong`,null,s(t.title),1),l(P,{size:14,class:`order-row__chevron`,"aria-hidden":`true`})]),g(`span`,We,s(S(k)(t.amountToman))+` تومان`,1),g(`span`,{class:e([`status-pill`,`status-pill--${ut(t)}`])},s(lt(t)),3)],40,He))),128)),dt.value.length?d(``,!0):(a(),f(`p`,Ge,`سفارشی ثبت نشده است.`))])])],64)):E.value===`orders`?(a(),f(`section`,Ke,[(a(!0),f(m,null,n(z.value,t=>(a(),f(`article`,{key:t.id,class:`order-row`,role:`button`,tabindex:`0`,onClick:e=>$(t.id),onKeydown:w(e=>$(t.id),[`enter`])},[g(`div`,Je,[g(`strong`,null,s(t.title),1),l(P,{size:14,class:`order-row__chevron`,"aria-hidden":`true`})]),g(`span`,Ye,s(S(k)(t.amountToman))+` تومان`,1),g(`span`,{class:e([`status-pill`,`status-pill--${ut(t)}`])},s(lt(t)),3)],40,qe))),128)),z.value.length?d(``,!0):(a(),f(`p`,Xe,`سفارشی ثبت نشده است.`))])):(a(),f(`section`,Ze,[i[18]||=g(`h3`,{class:`section-title`},`تعاملات و پیگیری‌ها`,-1),g(`button`,{type:`button`,class:`dashed-btn`,onClick:q},` + ثبت گزارش ملاقات جدید `),g(`div`,Qe,[(a(),f(m,null,n(ot,t=>g(`button`,{key:t.id,type:`button`,class:e([`meeting-filter`,{"meeting-filter--active":V.value===t.id}]),onClick:e=>V.value=t.id},s(t.label),11,$e)),64))]),(a(!0),f(m,null,n(st.value,t=>(a(),f(`article`,{key:t.id,class:`meeting-row`},[g(`div`,{class:e([`meeting-row__icon`,ct(t.type)])},[t.type===`in_person`?(a(),x(te,{key:0,size:16})):t.type===`call`?(a(),x(ee,{key:1,size:16})):t.type===`message`?(a(),x(oe,{key:2,size:16})):(a(),x(R,{key:3,size:16}))],2),g(`div`,et,[g(`strong`,null,s(le(t.type)),1),g(`p`,null,s(t.description||t.title),1)]),g(`span`,tt,s(t.date),1)]))),128)),st.value.length?d(``,!0):(a(),f(`p`,nt,` گزارشی برای این فیلتر ثبت نشده است. `))]))]),E.value===`info`?(a(),f(`footer`,rt,[g(`button`,{type:`button`,class:`cta`,onClick:i[3]||=e=>S(y).push(`/categories`)},[l(A,{size:20,color:`#fff`}),i[19]||=p(` سفارش جدید برای این مشتری `,-1)])])):d(``,!0)])):H.value?(a(),f(`div`,it,[l(re,{variant:`detail`})])):(a(),f(`div`,at,[g(`p`,null,s(U.value||`مشتری یافت نشد.`),1)])),l(fe,{open:D.value,"customer-id":T.value,onClose:J,onSuccess:se},null,8,[`open`,`customer-id`]),l(ae,{open:O.value,"customer-id":T.value,initial:Z.value,onClose:X,onSuccess:ce},null,8,[`open`,`customer-id`,`initial`])],64))}}),[[`__scopeId`,`data-v-938375e3`]]);export{ot as default}; \ No newline at end of file +import{At as e,D as t,F as n,G as r,K as i,M as a,Nt as o,Pt as s,U as c,_ as l,c as u,d,f,g as p,i as m,k as h,l as g,m as _,nt as v,o as y,t as b,u as x,ut as S,v as C}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{c as w,l as T,n as E,o as D,t as O}from"./BasicIcon-DPmc0iaK.js";import{o as k}from"./format-C72AoJ2H.js";import{t as A}from"./IconCart-D9TX5E-P.js";import{C as j,S as M,c as N,o as P}from"./index-CE4Fw0WE.js";import{i as F,t as I}from"./constants-ptWoEwwP.js";import{t as ee}from"./IconPhone-BSof4l2r.js";import{t as te}from"./IconClipboardEmpty-DMrB9tzG.js";import{t as ne}from"./PageHeader-BDPrFkve.js";import{t as re}from"./PageSkeleton-DYdjm4l9.js";import{t as ie}from"./crm-CgnSby61.js";import{t as L}from"./PersianDateInput-BcTTynHd.js";import{t as R}from"./IconEditPen-D6lQ4xNz.js";import{t as z}from"./TimeInput-D6PzFPdF.js";import{t as ae}from"./CustomerCreateOverlay-C0ajQDnY.js";var oe=C({__name:`IconMail`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(a(),x(O,{icon:`vuesax-linear:sms`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),B={class:`meeting-report-form`},V={key:1,class:`form-error`},H={class:`customer-card`},U={dir:`ltr`},W={class:`type-grid`},G=[`onClick`],K={class:`two-cols two-cols--date`},q={class:`field`},J={class:`field`},se={class:`reminder-box`},Y={class:`reminder-box__head`},X=[`aria-pressed`],ce={class:`field`},Z={class:`two-cols two-cols--date`},le={class:`field`},Q=[`disabled`],ue=b(C({__name:`MeetingReportForm`,props:{customerId:{}},emits:[`success`],setup(t,{emit:r}){let u=t,p=r,_=ie(),y=v(null),b=v(!0),S=v(!1),C=v(null),w=v(`in_person`),T=v(``),E=v(``),O=v(``),k=v(``),A=v(!0),j=v(``),M=v(``),N=v(``),P=v(``),F=[{id:`in_person`,label:`ملاقات حضوری`,icon:`clipboard`},{id:`call`,label:`تماس تلفنی`,icon:`phone`},{id:`message`,label:`پیام`,icon:`mail`},{id:`note`,label:`یادداشت`,icon:`pen`}];async function I(){if(!u.customerId){b.value=!1,C.value=`مشتری مشخص نشده است.`,y.value=null;return}b.value=!0,C.value=null;try{let e=await _.loadCustomerDetail(u.customerId);y.value=e.customer}catch(e){y.value=null,C.value=e instanceof Error?e.message:`بارگذاری مشتری ناموفق بود.`}finally{b.value=!1}}h(I),c(()=>u.customerId,I);async function ne(){if(!u.customerId||!O.value.trim()||!T.value.trim()){C.value=`موضوع و تاریخ الزامی است.`;return}S.value=!0,C.value=null;try{await _.submitMeeting({customerId:u.customerId,type:w.value,title:O.value.trim(),subject:O.value.trim(),content:k.value.trim()||void 0,description:k.value.trim()||void 0,date:T.value.trim(),time:E.value.trim()||void 0,createReminder:A.value,reminderTitle:A.value?j.value.trim()||O.value.trim():void 0,reminderDate:A.value?M.value.trim()||T.value.trim():void 0,reminderTime:A.value?N.value.trim()||E.value.trim()||`10:00`:void 0,reminderNote:A.value&&P.value.trim()||void 0}),p(`success`)}catch(e){C.value=e instanceof Error?e.message:`ثبت گزارش ناموفق بود.`}finally{S.value=!1}}return(t,r)=>(a(),f(`div`,B,[b.value?(a(),x(re,{key:0,variant:`form`})):C.value?(a(),f(`p`,V,s(C.value),1)):d(``,!0),y.value?(a(),f(m,{key:2},[g(`section`,H,[g(`div`,{class:`avatar`,style:o({background:y.value.avatarColor})},s(y.value.avatarLetter),5),g(`div`,null,[g(`strong`,null,s(y.value.name),1),g(`p`,null,s(y.value.contactName),1),g(`p`,U,s(y.value.phone),1)])]),g(`section`,null,[r[9]||=g(`h3`,null,`نوع تعامل`,-1),g(`div`,W,[(a(),f(m,null,n(F,t=>g(`button`,{key:t.id,type:`button`,class:e([`type-btn`,{"type-btn--active":w.value===t.id}]),onClick:e=>w.value=t.id},[t.icon===`clipboard`?(a(),x(te,{key:0,size:22})):t.icon===`phone`?(a(),x(ee,{key:1,size:22})):t.icon===`mail`?(a(),x(oe,{key:2,size:22})):(a(),x(R,{key:3,size:22})),g(`span`,null,s(t.label),1)],10,G)),64))])]),g(`section`,null,[r[10]||=g(`h3`,null,`تاریخ و زمان`,-1),g(`div`,K,[l(L,{modelValue:T.value,"onUpdate:modelValue":r[0]||=e=>T.value=e,label:`تاریخ`,class:`meeting-date`},null,8,[`modelValue`]),l(z,{modelValue:E.value,"onUpdate:modelValue":r[1]||=e=>E.value=e,label:`ساعت`,placeholder:`مثلاً ۱۰:۳۰`,class:`meeting-time`},null,8,[`modelValue`])])]),g(`label`,q,[r[11]||=g(`span`,null,`موضوع گزارش`,-1),i(g(`input`,{"onUpdate:modelValue":r[2]||=e=>O.value=e,type:`text`},null,512),[[D,O.value]])]),g(`label`,J,[r[12]||=g(`span`,null,`محتوای گزارش`,-1),i(g(`textarea`,{"onUpdate:modelValue":r[3]||=e=>k.value=e,rows:`5`,maxlength:`1000`},null,512),[[D,k.value]]),g(`em`,null,s(k.value.length.toLocaleString(`fa-IR`))+`/۱۰۰۰`,1)]),r[17]||=g(`section`,null,[g(`h3`,null,`تصاویر و فایل‌ها`),g(`div`,{class:`files`},[g(`div`,{class:`file-thumb`}),g(`div`,{class:`file-thumb`}),g(`button`,{type:`button`,class:`file-add`,"aria-label":`افزودن فایل`},`+`)])],-1),g(`section`,se,[g(`div`,Y,[r[14]||=g(`h3`,null,`یادآور`,-1),g(`button`,{type:`button`,class:e([`toggle`,{"toggle--on":A.value}]),"aria-pressed":A.value,onClick:r[4]||=e=>A.value=!A.value},[...r[13]||=[g(`span`,null,null,-1)]],10,X)]),A.value?(a(),f(m,{key:0},[g(`label`,ce,[r[15]||=g(`span`,null,`عنوان یادآور`,-1),i(g(`input`,{"onUpdate:modelValue":r[5]||=e=>j.value=e,type:`text`},null,512),[[D,j.value]])]),g(`div`,Z,[l(L,{modelValue:M.value,"onUpdate:modelValue":r[6]||=e=>M.value=e,label:`تاریخ یادآور`,class:`meeting-date`},null,8,[`modelValue`]),l(z,{modelValue:N.value,"onUpdate:modelValue":r[7]||=e=>N.value=e,label:`ساعت یادآور`,placeholder:`مثلاً ۱۰:۳۰`,class:`meeting-time`},null,8,[`modelValue`])]),g(`label`,le,[r[16]||=g(`span`,null,`یادداشت یادآور (اختیاری)`,-1),i(g(`input`,{"onUpdate:modelValue":r[8]||=e=>P.value=e,type:`text`},null,512),[[D,P.value]])])],64)):d(``,!0)]),g(`button`,{type:`button`,class:`submit`,disabled:S.value,onClick:ne},s(S.value?`در حال ثبت...`:`ثبت گزارش و یادآور`),9,Q)],64)):d(``,!0)]))}}),[[`__scopeId`,`data-v-5d6dd8b7`]]),de={class:`meeting-report-sheet`},fe=b(C({__name:`MeetingReportOverlay`,props:{open:{type:Boolean},customerId:{}},emits:[`close`,`success`],setup(e,{emit:n}){let i=e,o=n;function s(){o(`close`)}function u(){o(`success`)}function p(e){e.key===`Escape`&&i.open&&s()}return c(()=>i.open,e=>{document.body.style.overflow=e?`hidden`:``,e?window.addEventListener(`keydown`,p):window.removeEventListener(`keydown`,p)},{immediate:!0}),t(()=>{document.body.style.overflow=``,window.removeEventListener(`keydown`,p)}),(t,n)=>(a(),x(y,{to:`body`},[l(E,{name:`meeting-report-sheet`},{default:r(()=>[e.open?(a(),f(`div`,{key:0,class:`meeting-report-overlay`,role:`dialog`,"aria-modal":`true`,"aria-labelledby":`meeting-report-title`,onClick:T(s,[`self`])},[g(`div`,de,[n[1]||=g(`div`,{class:`meeting-report-sheet__handle`,"aria-hidden":`true`},null,-1),g(`header`,{class:`meeting-report-sheet__head`},[n[0]||=g(`h2`,{id:`meeting-report-title`},`ثبت گزارش ملاقات`,-1),g(`button`,{type:`button`,class:`meeting-report-sheet__close`,"aria-label":`بستن`,onClick:s},` × `)]),e.customerId?(a(),x(ue,{key:e.customerId,"customer-id":e.customerId,onSuccess:u},null,8,[`customer-id`])):d(``,!0)])])):d(``,!0)]),_:1})]))}}),[[`__scopeId`,`data-v-be25c066`]]),pe={key:0,class:`page customer-page`},me={class:`desktop-page__head desktop-only customer-desk-head`},he={class:`desktop-page__title`},ge={class:`desktop-page__subtitle`,dir:`ltr`},_e={class:`page__scroll page__scroll--with-nav customer-scroll`},ve={key:0,class:`profile-card`},ye={class:`profile-card__info`},be={class:`profile-card__name-row`},xe={class:`profile-card__phone`,dir:`ltr`},Se={key:1,class:`profile-banner`},Ce={class:`profile-banner__top`},we={dir:`ltr`},Te={class:`profile-banner__stats`},Ee={class:`tabs`,role:`tablist`},De=[`aria-selected`,`onClick`],Oe={class:`tab__text`},ke={class:`purchase-card`},Ae={class:`purchase-stats`},je={class:`purchase-stats__item`},Me={class:`purchase-stats__value`},Ne={class:`purchase-stats__item`},Pe={class:`purchase-stats__value`},Fe={class:`purchase-stats__item`},Ie={class:`purchase-stats__value`},Le={class:`panel-card`},Re={class:`agent-row__avatar`},ze={class:`agent-row__info`},Be={class:`orders-block`},Ve={class:`orders-block__head`},He=[`onClick`,`onKeydown`],Ue={class:`order-row__title`},We={class:`order-row__amount`},Ge={key:0,class:`empty-inline`},Ke={key:3,class:`panel-card panel-card--list`},qe=[`onClick`,`onKeydown`],Je={class:`order-row__title`},Ye={class:`order-row__amount`},Xe={key:0,class:`empty-inline`},Ze={key:4,class:`panel-card panel-card--reports`},Qe={class:`meeting-filters`},$e=[`onClick`],et={class:`meeting-row__body`},tt={class:`meeting-row__date`},nt={key:0,class:`empty-inline`},rt={key:0,class:`cta-bar`},it={key:1,class:`page empty`},at={key:2,class:`page empty`},ot=b(C({__name:`CustomerDetailView`,setup(t){let i=M(),y=j(),b=ie(),C=N(),T=u(()=>String(i.query.id??``)),E=u(()=>String(i.query.tab??`info`)),D=u(()=>i.query.meetingReport===`1`),O=u(()=>i.query.edit===`1`),L=v(null),z=v([]),B=v([]),V=v(`all`),H=v(!0),U=v(null),W=[{id:`info`,label:`اطلاعات`},{id:`orders`,label:`سفارش‌ها`},{id:`reports`,label:`گزارش‌ها و پیگیری‌ها`}];async function G(){if(!T.value){L.value=null,H.value=!1;return}H.value=!0,U.value=null;try{let e=await b.loadCustomerDetail(T.value);L.value=e.customer,z.value=e.orders,B.value=e.meetings}catch(e){L.value=null,U.value=e instanceof Error?e.message:`مشتری یافت نشد.`}finally{H.value=!1}}h(G),c(T,G);function K(e){y.replace({path:`/customer`,query:{id:T.value,tab:e}})}function q(){y.push({path:`/customer`,query:{id:T.value,tab:`reports`,meetingReport:`1`}})}function J(){y.replace({path:`/customer`,query:{id:T.value,tab:`reports`}})}async function se(){J(),await G()}function Y(){y.push({path:`/customer`,query:{id:T.value,tab:E.value,edit:`1`}})}function X(){y.replace({path:`/customer`,query:{id:T.value,tab:E.value}})}async function ce(){X(),await G()}let Z=u(()=>{if(!L.value)return null;let e=L.value;if(e.firstName&&e.lastName)return{firstName:e.firstName,lastName:e.lastName,phone:e.phone,businessName:e.businessName??``};let t=e.contactName.trim().split(/\s+/),n=t[0]??``;return{firstName:n,lastName:t.slice(1).join(` `)||n,phone:e.phone,businessName:e.name===e.contactName?``:e.name}});function le(e){return e===`in_person`?`ملاقات حضوری`:e===`call`?`تماس`:e===`message`?`پیام`:`یادداشت`}let Q=u(()=>L.value?.agentName||C.fullName||`واسطه`),ue=u(()=>L.value?.agentCode||C.user?.agentCode||`—`),de=u(()=>Q.value.charAt(0)),ot=[{id:`all`,label:`همه`},{id:`in_person`,label:`ملاقات حضوری`},{id:`call`,label:`تماس`},{id:`message`,label:`پیام`},{id:`note`,label:`یادداشت`}],st=u(()=>V.value===`all`?B.value:B.value.filter(e=>e.type===V.value));function ct(e){return e===`in_person`?`meeting-row__icon--green`:e===`call`?`meeting-row__icon--blue`:`meeting-row__icon--purple`}function $(e){e&&y.push({path:`/order`,query:{id:e}})}function lt(e){let t=e.statusLabel;return I[t]||e.statusLabel}function ut(e){let t=F[e.statusLabel];return t===`success`?`success`:t===`warning`||t===`danger`?`warning`:e.statusTone||`info`}let dt=u(()=>z.value.slice(0,3));function ft(e){return e===`active`?`فعال`:e===`inactive`?`غیرفعال`:`جدید`}function pt(e){return e===`active`?`status-badge--active`:e===`inactive`?`status-badge--inactive`:`status-badge--new`}return(t,i)=>(a(),f(m,null,[L.value?(a(),f(`div`,pe,[l(ne,{class:`mobile-only`,title:E.value===`reports`?`پروفایل مشتری`:`جزئیات مشتری`,"show-back":``,centered:``,onBack:i[0]||=e=>S(y).push(`/customers`)},_({_:2},[E.value===`info`?{name:`trailing`,fn:r(()=>[g(`button`,{type:`button`,class:`edit-btn edit-btn--compact`,"aria-label":`ویرایش`,onClick:Y},[l(R,{size:18}),i[4]||=g(`span`,{class:`edit-btn__label`},`ویرایش`,-1)])]),key:`0`}:void 0]),1032,[`title`]),g(`header`,me,[g(`div`,null,[g(`h1`,he,s(L.value.name),1),g(`p`,ge,s(L.value.phone),1)]),E.value===`info`?(a(),f(`button`,{key:0,type:`button`,class:`edit-btn edit-btn--desk`,onClick:Y},` ویرایش `)):d(``,!0)]),g(`div`,_e,[E.value===`reports`?(a(),f(`section`,Se,[g(`div`,Ce,[g(`div`,{class:`profile-card__avatar profile-card__avatar--lg`,style:o({background:L.value.avatarColor})},s(L.value.avatarLetter),5),g(`div`,null,[g(`h2`,null,s(L.value.name),1),g(`p`,null,s(L.value.contactName),1),g(`p`,we,s(L.value.phone),1)]),i[5]||=g(`span`,{class:`status-badge status-badge--active status-badge--on-dark`},`فعال`,-1)]),g(`div`,Te,[g(`div`,null,[i[6]||=g(`span`,null,`سطح مشتری`,-1),g(`strong`,null,s(L.value.levelLabel),1)]),g(`div`,null,[i[7]||=g(`span`,null,`تاریخ اولین خرید`,-1),g(`strong`,null,s(L.value.firstPurchaseDate),1)]),g(`div`,null,[i[8]||=g(`span`,null,`تعداد سفارش`,-1),g(`strong`,null,s(S(k)(L.value.orderCount))+` سفارش`,1)])])])):(a(),f(`section`,ve,[g(`div`,{class:`profile-card__avatar`,style:o({background:L.value.avatarColor})},s(L.value.avatarLetter),5),g(`div`,ye,[g(`div`,be,[g(`h2`,null,s(L.value.name),1),g(`span`,{class:e([`status-badge`,pt(L.value.status)])},s(ft(L.value.status)),3)]),g(`p`,xe,s(L.value.phone),1)])])),g(`div`,Ee,[(a(),f(m,null,n(W,t=>g(`button`,{key:t.id,type:`button`,role:`tab`,class:e([`tab`,{"tab--active":E.value===t.id}]),"aria-selected":E.value===t.id,onClick:e=>K(t.id)},[g(`span`,Oe,s(t.label),1)],10,De)),64))]),E.value===`info`?(a(),f(m,{key:2},[g(`section`,ke,[i[16]||=g(`h3`,{class:`section-title`},`اطلاعات خرید`,-1),g(`div`,Ae,[g(`div`,je,[i[9]||=g(`span`,{class:`purchase-stats__label`},`تعداد سفارش`,-1),g(`strong`,Me,s(S(k)(L.value.orderCount)),1)]),i[14]||=g(`span`,{class:`purchase-stats__divider`,"aria-hidden":`true`},null,-1),g(`div`,Ne,[i[10]||=g(`span`,{class:`purchase-stats__label`},`مجموع خرید`,-1),g(`strong`,Pe,s(S(k)(L.value.totalPurchaseToman)),1),i[11]||=g(`em`,{class:`purchase-stats__unit`},`تومان`,-1)]),i[15]||=g(`span`,{class:`purchase-stats__divider`,"aria-hidden":`true`},null,-1),g(`div`,Fe,[i[12]||=g(`span`,{class:`purchase-stats__label`},`میانگین هر سفارش`,-1),g(`strong`,Ie,s(S(k)(L.value.averageOrderToman)),1),i[13]||=g(`em`,{class:`purchase-stats__unit`},`تومان`,-1)])])]),g(`section`,Le,[g(`button`,{type:`button`,class:`agent-row`,onClick:i[1]||=e=>S(y).push(`/profile`)},[g(`div`,Re,s(de.value),1),g(`div`,ze,[g(`strong`,null,s(Q.value),1),g(`p`,null,`کد واسطه: `+s(ue.value),1)]),l(P,{size:18,class:`agent-row__chevron`,"aria-hidden":`true`})]),g(`div`,Be,[g(`div`,Ve,[i[17]||=g(`h3`,{class:`section-title`},`آخرین سفارش‌ها`,-1),g(`button`,{type:`button`,class:`link-btn`,onClick:i[2]||=e=>K(`orders`)},`مشاهده همه`)]),(a(!0),f(m,null,n(dt.value,t=>(a(),f(`article`,{key:t.id,class:`order-row`,role:`button`,tabindex:`0`,onClick:e=>$(t.id),onKeydown:w(e=>$(t.id),[`enter`])},[g(`div`,Ue,[g(`strong`,null,s(t.title),1),l(P,{size:14,class:`order-row__chevron`,"aria-hidden":`true`})]),g(`span`,We,s(S(k)(t.amountToman))+` تومان`,1),g(`span`,{class:e([`status-pill`,`status-pill--${ut(t)}`])},s(lt(t)),3)],40,He))),128)),dt.value.length?d(``,!0):(a(),f(`p`,Ge,`سفارشی ثبت نشده است.`))])])],64)):E.value===`orders`?(a(),f(`section`,Ke,[(a(!0),f(m,null,n(z.value,t=>(a(),f(`article`,{key:t.id,class:`order-row`,role:`button`,tabindex:`0`,onClick:e=>$(t.id),onKeydown:w(e=>$(t.id),[`enter`])},[g(`div`,Je,[g(`strong`,null,s(t.title),1),l(P,{size:14,class:`order-row__chevron`,"aria-hidden":`true`})]),g(`span`,Ye,s(S(k)(t.amountToman))+` تومان`,1),g(`span`,{class:e([`status-pill`,`status-pill--${ut(t)}`])},s(lt(t)),3)],40,qe))),128)),z.value.length?d(``,!0):(a(),f(`p`,Xe,`سفارشی ثبت نشده است.`))])):(a(),f(`section`,Ze,[i[18]||=g(`h3`,{class:`section-title`},`تعاملات و پیگیری‌ها`,-1),g(`button`,{type:`button`,class:`dashed-btn`,onClick:q},` + ثبت گزارش ملاقات جدید `),g(`div`,Qe,[(a(),f(m,null,n(ot,t=>g(`button`,{key:t.id,type:`button`,class:e([`meeting-filter`,{"meeting-filter--active":V.value===t.id}]),onClick:e=>V.value=t.id},s(t.label),11,$e)),64))]),(a(!0),f(m,null,n(st.value,t=>(a(),f(`article`,{key:t.id,class:`meeting-row`},[g(`div`,{class:e([`meeting-row__icon`,ct(t.type)])},[t.type===`in_person`?(a(),x(te,{key:0,size:16})):t.type===`call`?(a(),x(ee,{key:1,size:16})):t.type===`message`?(a(),x(oe,{key:2,size:16})):(a(),x(R,{key:3,size:16}))],2),g(`div`,et,[g(`strong`,null,s(le(t.type)),1),g(`p`,null,s(t.description||t.title),1)]),g(`span`,tt,s(t.date),1)]))),128)),st.value.length?d(``,!0):(a(),f(`p`,nt,` گزارشی برای این فیلتر ثبت نشده است. `))]))]),E.value===`info`?(a(),f(`footer`,rt,[g(`button`,{type:`button`,class:`cta`,onClick:i[3]||=e=>S(y).push(`/categories`)},[l(A,{size:20,color:`#fff`}),i[19]||=p(` سفارش جدید برای این مشتری `,-1)])])):d(``,!0)])):H.value?(a(),f(`div`,it,[l(re,{variant:`detail`})])):(a(),f(`div`,at,[g(`p`,null,s(U.value||`مشتری یافت نشد.`),1)])),l(fe,{open:D.value,"customer-id":T.value,onClose:J,onSuccess:se},null,8,[`open`,`customer-id`]),l(ae,{open:O.value,"customer-id":T.value,initial:Z.value,onClose:X,onSuccess:ce},null,8,[`open`,`customer-id`,`initial`])],64))}}),[[`__scopeId`,`data-v-938375e3`]]);export{ot as default}; \ No newline at end of file diff --git a/dist/assets/CustomersView-Bpq3-lKt.js b/dist/assets/CustomersView-yj__rh-t.js similarity index 96% rename from dist/assets/CustomersView-Bpq3-lKt.js rename to dist/assets/CustomersView-yj__rh-t.js index babd240..965257e 100644 --- a/dist/assets/CustomersView-Bpq3-lKt.js +++ b/dist/assets/CustomersView-yj__rh-t.js @@ -1 +1 @@ -import{At as e,F as t,G as ee,M as n,Nt as te,Pt as r,U as i,_ as a,c as o,d as s,f as c,g as l,i as u,k as ne,l as d,nt as f,t as p,u as m,ut as h,v as g}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{o as _}from"./format-C72AoJ2H.js";import{t as re}from"./IconProfile-ginWFJfQ.js";import{t as v}from"./IconPlus-Dk2FJATn.js";import{C as ie,S as ae,o as oe}from"./index-DYwnTikp.js";import{t as y}from"./IconFilter-CeX90aW_.js";import{t as b}from"./PageHeader-C5c2Pzrn.js";import{t as x}from"./PageSkeleton-DYdjm4l9.js";import{t as S}from"./crm-CgnSby61.js";import{t as C}from"./CustomerCreateOverlay-BV-An-zG.js";import{t as w}from"./SearchField-dVDn9y5S.js";var T={class:`page customers-page`},E={class:`desktop-page__head desktop-only customers-desk-head`},D={class:`page__scroll page__scroll--with-nav customers-scroll`},O={class:`toolbar`},k={class:`summary-card`},A={class:`summary-card__icon`,"aria-hidden":`true`},j={class:`summary-card__cols`},M={class:`tabs`,role:`tablist`},N=[`aria-selected`,`onClick`],P={class:`tab__text`},F={key:1},I=[`onClick`],L={class:`customer-card__body`},R={class:`customer-card__top`},z=p(g({__name:`CustomersView`,setup(p){let g=ae(),z=ie(),B=S(),V=f(String(g.query.q??``)),H=o(()=>String(g.query.status??`all`)),U=f([]),W=f(!0),G=f(null),K=o(()=>U.value),q=o(()=>g.query.create===`1`),se=o(()=>U.value.filter(e=>e.status===`active`).length),ce=o(()=>U.value.reduce((e,t)=>e+t.totalPurchaseToman,0)),le=[{id:`all`,label:`همه`},{id:`active`,label:`فعال`},{id:`inactive`,label:`غیرفعال`},{id:`new`,label:`جدید`}];async function J(){W.value=!0,G.value=null;try{U.value=await B.loadCustomers({q:V.value||void 0,status:H.value===`all`?void 0:H.value})}catch(e){G.value=e instanceof Error?e.message:`بارگذاری مشتریان ناموفق بود.`,U.value=[]}finally{W.value=!1}}ne(J),i([H,V],J);function Y(e){z.replace({path:`/customers`,query:{...e===`all`?{}:{status:e},...V.value?{q:V.value}:{}}})}function X(e){V.value=e,z.replace({path:`/customers`,query:{...H.value===`all`?{}:{status:H.value},...e?{q:e}:{}}})}function ue(e){return e===`active`?`فعال`:e===`inactive`?`غیرفعال`:`جدید`}function Z(e={}){return{...H.value===`all`?{}:{status:H.value},...V.value?{q:V.value}:{},...e}}function Q(){z.push({path:`/customers`,query:{...Z(),create:`1`}})}function $(){z.replace({path:`/customers`,query:Z()})}async function de(e){if(e){await z.replace({path:`/customer`,query:{id:e}});return}$(),await J()}function fe(){let e=[`all`,`active`,`inactive`,`new`],t=e.indexOf(H.value);Y(e[(t<0?0:t+1)%e.length]??`all`)}return(i,o)=>(n(),c(`div`,T,[a(b,{class:`mobile-only`,title:`مشتریان من`,"show-back":``,centered:``,onBack:o[0]||=e=>h(z).back()},{trailing:ee(()=>[d(`button`,{type:`button`,class:`nav-add-btn`,"aria-label":`ثبت مشتری`,onClick:Q},[a(v,{size:22})])]),_:1}),d(`header`,E,[o[2]||=d(`div`,null,[d(`h1`,{class:`desktop-page__title`},`مشتریان من`),d(`p`,{class:`desktop-page__subtitle`},`مدیریت مشتریان و پیگیری خریدها`)],-1),d(`button`,{type:`button`,class:`desk-add-btn`,onClick:Q},[a(v,{size:18}),o[1]||=l(` ثبت مشتری `,-1)])]),d(`div`,D,[d(`div`,O,[a(w,{"model-value":V.value,placeholder:`جستجو بر اساس نام یا موبایل...`,"onUpdate:modelValue":X},null,8,[`model-value`]),d(`button`,{type:`button`,class:`filter-btn`,"aria-label":`فیلتر وضعیت`,onClick:fe},[a(y,{size:18})])]),d(`section`,k,[d(`div`,A,[a(re,{size:22,color:`#fff`})]),d(`div`,j,[d(`div`,null,[o[3]||=d(`span`,null,`تعداد مشتری فعال`,-1),d(`strong`,null,r(h(_)(se.value)),1)]),o[6]||=d(`span`,{class:`summary-card__divider`,"aria-hidden":`true`},null,-1),d(`div`,null,[o[4]||=d(`span`,null,`مجموع خرید (ریال)`,-1),d(`strong`,null,r(h(_)(ce.value)),1),o[5]||=d(`em`,null,`تومان`,-1)])])]),d(`div`,M,[(n(),c(u,null,t(le,t=>d(`button`,{key:t.id,type:`button`,role:`tab`,class:e([`tab`,{"tab--active":H.value===t.id}]),"aria-selected":H.value===t.id,onClick:e=>Y(t.id)},[d(`span`,P,r(t.label),1)],10,N)),64))]),W.value?(n(),m(x,{key:0,variant:`list`})):G.value?(n(),c(`p`,F,r(G.value),1)):s(``,!0),(n(!0),c(u,null,t(K.value,t=>(n(),c(`button`,{key:t.id,type:`button`,class:`customer-card`,onClick:e=>h(z).push({path:`/customer`,query:{id:t.id}})},[d(`div`,{class:`customer-card__avatar`,style:te({background:t.avatarColor})},r(t.avatarLetter),5),d(`div`,L,[d(`div`,R,[d(`strong`,null,r(t.name),1)]),d(`p`,null,r(t.phone),1),d(`p`,null,`مجموع خرید: `+r(h(_)(t.totalPurchaseToman))+` تومان`,1)]),d(`span`,{class:e([`status`,{"status--ok":t.status===`active`,"status--off":t.status===`inactive`,"status--new":t.status===`new`}])},r(ue(t.status)),3),a(oe,{size:18,class:`chevron`})],8,I))),128)),o[7]||=d(`section`,{class:`promo`},[d(`div`,null,[d(`strong`,null,`افزایش مشتریان = افزایش سطح شما`),d(`p`,null,`با جذب مشتریان بیشتر به سطح VIP برسید`)])],-1)]),a(C,{open:q.value,onClose:$,onSuccess:de},null,8,[`open`])]))}}),[[`__scopeId`,`data-v-a6283622`]]);export{z as default}; \ No newline at end of file +import{At as e,F as t,G as ee,M as n,Nt as te,Pt as r,U as i,_ as a,c as o,d as s,f as c,g as l,i as u,k as ne,l as d,nt as f,t as p,u as m,ut as h,v as g}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{o as _}from"./format-C72AoJ2H.js";import{t as re}from"./IconProfile-ginWFJfQ.js";import{t as v}from"./IconPlus-Dk2FJATn.js";import{C as ie,S as ae,o as oe}from"./index-CE4Fw0WE.js";import{t as y}from"./IconFilter-CeX90aW_.js";import{t as b}from"./PageHeader-BDPrFkve.js";import{t as x}from"./PageSkeleton-DYdjm4l9.js";import{t as S}from"./crm-CgnSby61.js";import{t as C}from"./CustomerCreateOverlay-C0ajQDnY.js";import{t as w}from"./SearchField-dVDn9y5S.js";var T={class:`page customers-page`},E={class:`desktop-page__head desktop-only customers-desk-head`},D={class:`page__scroll page__scroll--with-nav customers-scroll`},O={class:`toolbar`},k={class:`summary-card`},A={class:`summary-card__icon`,"aria-hidden":`true`},j={class:`summary-card__cols`},M={class:`tabs`,role:`tablist`},N=[`aria-selected`,`onClick`],P={class:`tab__text`},F={key:1},I=[`onClick`],L={class:`customer-card__body`},R={class:`customer-card__top`},z=p(g({__name:`CustomersView`,setup(p){let g=ae(),z=ie(),B=S(),V=f(String(g.query.q??``)),H=o(()=>String(g.query.status??`all`)),U=f([]),W=f(!0),G=f(null),K=o(()=>U.value),q=o(()=>g.query.create===`1`),se=o(()=>U.value.filter(e=>e.status===`active`).length),ce=o(()=>U.value.reduce((e,t)=>e+t.totalPurchaseToman,0)),le=[{id:`all`,label:`همه`},{id:`active`,label:`فعال`},{id:`inactive`,label:`غیرفعال`},{id:`new`,label:`جدید`}];async function J(){W.value=!0,G.value=null;try{U.value=await B.loadCustomers({q:V.value||void 0,status:H.value===`all`?void 0:H.value})}catch(e){G.value=e instanceof Error?e.message:`بارگذاری مشتریان ناموفق بود.`,U.value=[]}finally{W.value=!1}}ne(J),i([H,V],J);function Y(e){z.replace({path:`/customers`,query:{...e===`all`?{}:{status:e},...V.value?{q:V.value}:{}}})}function X(e){V.value=e,z.replace({path:`/customers`,query:{...H.value===`all`?{}:{status:H.value},...e?{q:e}:{}}})}function ue(e){return e===`active`?`فعال`:e===`inactive`?`غیرفعال`:`جدید`}function Z(e={}){return{...H.value===`all`?{}:{status:H.value},...V.value?{q:V.value}:{},...e}}function Q(){z.push({path:`/customers`,query:{...Z(),create:`1`}})}function $(){z.replace({path:`/customers`,query:Z()})}async function de(e){if(e){await z.replace({path:`/customer`,query:{id:e}});return}$(),await J()}function fe(){let e=[`all`,`active`,`inactive`,`new`],t=e.indexOf(H.value);Y(e[(t<0?0:t+1)%e.length]??`all`)}return(i,o)=>(n(),c(`div`,T,[a(b,{class:`mobile-only`,title:`مشتریان من`,"show-back":``,centered:``,onBack:o[0]||=e=>h(z).back()},{trailing:ee(()=>[d(`button`,{type:`button`,class:`nav-add-btn`,"aria-label":`ثبت مشتری`,onClick:Q},[a(v,{size:22})])]),_:1}),d(`header`,E,[o[2]||=d(`div`,null,[d(`h1`,{class:`desktop-page__title`},`مشتریان من`),d(`p`,{class:`desktop-page__subtitle`},`مدیریت مشتریان و پیگیری خریدها`)],-1),d(`button`,{type:`button`,class:`desk-add-btn`,onClick:Q},[a(v,{size:18}),o[1]||=l(` ثبت مشتری `,-1)])]),d(`div`,D,[d(`div`,O,[a(w,{"model-value":V.value,placeholder:`جستجو بر اساس نام یا موبایل...`,"onUpdate:modelValue":X},null,8,[`model-value`]),d(`button`,{type:`button`,class:`filter-btn`,"aria-label":`فیلتر وضعیت`,onClick:fe},[a(y,{size:18})])]),d(`section`,k,[d(`div`,A,[a(re,{size:22,color:`#fff`})]),d(`div`,j,[d(`div`,null,[o[3]||=d(`span`,null,`تعداد مشتری فعال`,-1),d(`strong`,null,r(h(_)(se.value)),1)]),o[6]||=d(`span`,{class:`summary-card__divider`,"aria-hidden":`true`},null,-1),d(`div`,null,[o[4]||=d(`span`,null,`مجموع خرید (ریال)`,-1),d(`strong`,null,r(h(_)(ce.value)),1),o[5]||=d(`em`,null,`تومان`,-1)])])]),d(`div`,M,[(n(),c(u,null,t(le,t=>d(`button`,{key:t.id,type:`button`,role:`tab`,class:e([`tab`,{"tab--active":H.value===t.id}]),"aria-selected":H.value===t.id,onClick:e=>Y(t.id)},[d(`span`,P,r(t.label),1)],10,N)),64))]),W.value?(n(),m(x,{key:0,variant:`list`})):G.value?(n(),c(`p`,F,r(G.value),1)):s(``,!0),(n(!0),c(u,null,t(K.value,t=>(n(),c(`button`,{key:t.id,type:`button`,class:`customer-card`,onClick:e=>h(z).push({path:`/customer`,query:{id:t.id}})},[d(`div`,{class:`customer-card__avatar`,style:te({background:t.avatarColor})},r(t.avatarLetter),5),d(`div`,L,[d(`div`,R,[d(`strong`,null,r(t.name),1)]),d(`p`,null,r(t.phone),1),d(`p`,null,`مجموع خرید: `+r(h(_)(t.totalPurchaseToman))+` تومان`,1)]),d(`span`,{class:e([`status`,{"status--ok":t.status===`active`,"status--off":t.status===`inactive`,"status--new":t.status===`new`}])},r(ue(t.status)),3),a(oe,{size:18,class:`chevron`})],8,I))),128)),o[7]||=d(`section`,{class:`promo`},[d(`div`,null,[d(`strong`,null,`افزایش مشتریان = افزایش سطح شما`),d(`p`,null,`با جذب مشتریان بیشتر به سطح VIP برسید`)])],-1)]),a(C,{open:q.value,onClose:$,onSuccess:de},null,8,[`open`])]))}}),[[`__scopeId`,`data-v-a6283622`]]);export{z as default}; \ No newline at end of file diff --git a/dist/assets/FavoritesView-qjhpwB4y.js b/dist/assets/FavoritesView-Q3gbkHep.js similarity index 96% rename from dist/assets/FavoritesView-qjhpwB4y.js rename to dist/assets/FavoritesView-Q3gbkHep.js index 882ba55..6b1bd1c 100644 --- a/dist/assets/FavoritesView-qjhpwB4y.js +++ b/dist/assets/FavoritesView-Q3gbkHep.js @@ -1 +1 @@ -import{F as e,M as t,Nt as n,Pt as r,_ as i,d as a,f as o,g as s,i as c,k as l,l as u,nt as d,t as f,u as p,ut as m,v as h}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{l as g}from"./BasicIcon-DPmc0iaK.js";import{o as _}from"./format-C72AoJ2H.js";import{C as v,l as y,o as b}from"./index-DYwnTikp.js";import{t as x}from"./PageHeader-C5c2Pzrn.js";import{t as S}from"./PageSkeleton-DYdjm4l9.js";import{t as C}from"./crm-CgnSby61.js";import{t as w}from"./IconBookmark-CQq-TOS-.js";import{i as T,n as E,r as D,t as O}from"./productAvailability-B5nVr_sJ.js";var k={class:`page favorites-page`},A={class:`page__scroll page__scroll--with-nav body`},j={key:1},M={key:2,class:`empty`},N=[`onClick`],P={class:`product-item__body`},F={class:`product-item__head`},I={class:`product-item__title`},L={key:0,class:`new-tag new-tag--oos`},R={key:1,class:`new-tag`},z=[`onClick`],B={class:`product-item__specs`},V={key:0,class:`swatches`},H=[`onClick`],U=f(h({__name:`FavoritesView`,setup(f){let h={summer:`تابستانه`,winter:`زمستانه`,all_season:`چهارفصل`},U=v(),W=y(),G=C(),K=d([]),q=d(!0),J=d(null);l(async()=>{q.value=!0;try{await W.hydrate();let e=await G.loadBrowseProducts(),t=new Set(W.ids);K.value=e.filter(e=>t.has(e.id))}catch(e){J.value=e instanceof Error?e.message:`بارگذاری علاقه‌مندی‌ها ناموفق بود.`}finally{q.value=!1}});function Y(e){return h[e]??`—`}function X(e){return T(e.imageUrls,e.colorImages,e.imageUrl)}function Z(e){U.push({path:`/product`,query:{id:e}})}async function Q(e){await W.toggle(e),K.value=K.value.filter(t=>t.id!==e)}return(l,d)=>(t(),o(`div`,k,[i(x,{class:`mobile-only`,title:`علاقه‌مندی‌ها`,"show-back":``,centered:``,onBack:d[0]||=e=>m(U).back()}),d[2]||=u(`header`,{class:`desktop-page__head desktop-only`},[u(`h1`,{class:`desktop-page__title`},`علاقه‌مندی‌ها`),u(`p`,{class:`desktop-page__subtitle`},`محصولات ذخیره‌شده برای دسترسی سریع`)],-1),u(`div`,A,[q.value?(t(),p(S,{key:0,variant:`grid`})):J.value?(t(),o(`p`,j,r(J.value),1)):K.value.length?a(``,!0):(t(),o(`p`,M,`هنوز محصولی ذخیره نکرده‌اید.`)),(t(!0),o(c,null,e(K.value,l=>(t(),o(`article`,{key:l.id,class:`product-item`,onClick:e=>Z(l.id)},[u(`div`,{class:`product-item__image`,style:n(X(l)?{backgroundImage:`url(${X(l)})`}:m(E)(l.colors[0]??``))},null,4),u(`div`,P,[u(`div`,F,[u(`div`,I,[u(`strong`,null,r(l.name),1),m(O)(l)?(t(),o(`span`,L,`ناموجود`)):l.isNew?(t(),o(`span`,R,`جدید`)):a(``,!0)]),u(`button`,{type:`button`,class:`bookmark`,"aria-label":`حذف از علاقه‌مندی‌ها`,onClick:g(e=>Q(l.id),[`stop`])},[i(w,{size:18,filled:``,color:`var(--color-primary)`})],8,z)]),u(`ul`,B,[u(`li`,null,`عرض: `+r(m(_)(l.widthCm))+` سانتی‌متر`,1),u(`li`,null,`ترکیب: `+r(l.composition||`—`),1),u(`li`,null,`مناسب: `+r(Y(l.season)),1)]),l.colors.length?(t(),o(`div`,V,[(t(!0),o(c,null,e(l.colors.slice(0,6),(e,r)=>(t(),o(`span`,{key:r,class:`swatch`,style:n(m(E)(e,m(D)(l.colorImages,l.colorVariantImages,r)))},null,4))),128))])):a(``,!0),u(`button`,{type:`button`,class:`details-link`,onClick:g(e=>Z(l.id),[`stop`])},[d[1]||=s(` مشاهده جزئیات `,-1),i(b,{size:14})],8,H)])],8,N))),128))])]))}}),[[`__scopeId`,`data-v-241cceb3`]]);export{U as default}; \ No newline at end of file +import{F as e,M as t,Nt as n,Pt as r,_ as i,d as a,f as o,g as s,i as c,k as l,l as u,nt as d,t as f,u as p,ut as m,v as h}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{l as g}from"./BasicIcon-DPmc0iaK.js";import{o as _}from"./format-C72AoJ2H.js";import{C as v,l as y,o as b}from"./index-CE4Fw0WE.js";import{t as x}from"./PageHeader-BDPrFkve.js";import{t as S}from"./PageSkeleton-DYdjm4l9.js";import{t as C}from"./crm-CgnSby61.js";import{t as w}from"./IconBookmark-CQq-TOS-.js";import{i as T,n as E,r as D,t as O}from"./productAvailability-B5nVr_sJ.js";var k={class:`page favorites-page`},A={class:`page__scroll page__scroll--with-nav body`},j={key:1},M={key:2,class:`empty`},N=[`onClick`],P={class:`product-item__body`},F={class:`product-item__head`},I={class:`product-item__title`},L={key:0,class:`new-tag new-tag--oos`},R={key:1,class:`new-tag`},z=[`onClick`],B={class:`product-item__specs`},V={key:0,class:`swatches`},H=[`onClick`],U=f(h({__name:`FavoritesView`,setup(f){let h={summer:`تابستانه`,winter:`زمستانه`,all_season:`چهارفصل`},U=v(),W=y(),G=C(),K=d([]),q=d(!0),J=d(null);l(async()=>{q.value=!0;try{await W.hydrate();let e=await G.loadBrowseProducts(),t=new Set(W.ids);K.value=e.filter(e=>t.has(e.id))}catch(e){J.value=e instanceof Error?e.message:`بارگذاری علاقه‌مندی‌ها ناموفق بود.`}finally{q.value=!1}});function Y(e){return h[e]??`—`}function X(e){return T(e.imageUrls,e.colorImages,e.imageUrl)}function Z(e){U.push({path:`/product`,query:{id:e}})}async function Q(e){await W.toggle(e),K.value=K.value.filter(t=>t.id!==e)}return(l,d)=>(t(),o(`div`,k,[i(x,{class:`mobile-only`,title:`علاقه‌مندی‌ها`,"show-back":``,centered:``,onBack:d[0]||=e=>m(U).back()}),d[2]||=u(`header`,{class:`desktop-page__head desktop-only`},[u(`h1`,{class:`desktop-page__title`},`علاقه‌مندی‌ها`),u(`p`,{class:`desktop-page__subtitle`},`محصولات ذخیره‌شده برای دسترسی سریع`)],-1),u(`div`,A,[q.value?(t(),p(S,{key:0,variant:`grid`})):J.value?(t(),o(`p`,j,r(J.value),1)):K.value.length?a(``,!0):(t(),o(`p`,M,`هنوز محصولی ذخیره نکرده‌اید.`)),(t(!0),o(c,null,e(K.value,l=>(t(),o(`article`,{key:l.id,class:`product-item`,onClick:e=>Z(l.id)},[u(`div`,{class:`product-item__image`,style:n(X(l)?{backgroundImage:`url(${X(l)})`}:m(E)(l.colors[0]??``))},null,4),u(`div`,P,[u(`div`,F,[u(`div`,I,[u(`strong`,null,r(l.name),1),m(O)(l)?(t(),o(`span`,L,`ناموجود`)):l.isNew?(t(),o(`span`,R,`جدید`)):a(``,!0)]),u(`button`,{type:`button`,class:`bookmark`,"aria-label":`حذف از علاقه‌مندی‌ها`,onClick:g(e=>Q(l.id),[`stop`])},[i(w,{size:18,filled:``,color:`var(--color-primary)`})],8,z)]),u(`ul`,B,[u(`li`,null,`عرض: `+r(m(_)(l.widthCm))+` سانتی‌متر`,1),u(`li`,null,`ترکیب: `+r(l.composition||`—`),1),u(`li`,null,`مناسب: `+r(Y(l.season)),1)]),l.colors.length?(t(),o(`div`,V,[(t(!0),o(c,null,e(l.colors.slice(0,6),(e,r)=>(t(),o(`span`,{key:r,class:`swatch`,style:n(m(E)(e,m(D)(l.colorImages,l.colorVariantImages,r)))},null,4))),128))])):a(``,!0),u(`button`,{type:`button`,class:`details-link`,onClick:g(e=>Z(l.id),[`stop`])},[d[1]||=s(` مشاهده جزئیات `,-1),i(b,{size:14})],8,H)])],8,N))),128))])]))}}),[[`__scopeId`,`data-v-241cceb3`]]);export{U as default}; \ No newline at end of file diff --git a/dist/assets/HomeView-BmHs1we_.js b/dist/assets/HomeView-BgFl9KRb.js similarity index 98% rename from dist/assets/HomeView-BmHs1we_.js rename to dist/assets/HomeView-BgFl9KRb.js index 4029621..a6af9a8 100644 --- a/dist/assets/HomeView-BmHs1we_.js +++ b/dist/assets/HomeView-BgFl9KRb.js @@ -1 +1 @@ -import{A as e,At as t,F as n,G as r,M as i,Nt as a,Pt as o,R as s,_ as c,c as l,d as u,f as d,g as f,h as ee,i as p,k as m,l as h,nt as g,t as _,u as v,ut as y,v as b}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{l as x,r as te}from"./BasicIcon-DPmc0iaK.js";import{n as ne}from"./dist-Bc4P4ngC.js";import{o as S}from"./format-C72AoJ2H.js";import{n as C}from"./http-CU_N-R2R.js";import{C as re,a as ie,c as ae,i as oe,l as se,o as ce,s as w}from"./index-DYwnTikp.js";import{t as T}from"./IconChevronBack-BsHmfODG.js";import{t as le}from"./PageSkeleton-DYdjm4l9.js";import{n as ue,r as de,t as fe}from"./crm-CgnSby61.js";import{t as pe}from"./useGoBack-DnRfwA4b.js";import{t as me}from"./useTouchSwipe-C8fUyAcQ.js";import{t as he}from"./bannerLink-BW8t2Oqp.js";import{t as ge}from"./IconBookmark-CQq-TOS-.js";import{t as _e}from"./IconHeart-CvzbNH_T.js";import{n as E,t as D}from"./AddressCompletionModal-DV8NqYZ8.js";import{n as O,t as ve}from"./productAvailability-B5nVr_sJ.js";async function ye(){return C(`/suggestions/me`)}var be=`/assets/level-medal-Avpe4Lqa.webp`,xe=`/assets/quick-categories-grid-MFEfEUjL.webp`,Se=`/assets/quick-catalog-request-Ck7EqicC.webp`,Ce=`/assets/latest-order-status-CfJ1sx5U.webp`,k={class:`suggest-panel`,"aria-label":`پیشنهاد اختصاصی`},A={class:`suggest-panel__head`},j={key:0,class:`suggest-panel__empty`},M={key:1,class:`suggest-panel__row scroll-x`},N=[`onClick`],P={key:0,class:`suggest-product__chip suggest-product__chip--oos`},F={key:1,class:`suggest-product__chip`},I=[`aria-label`,`aria-pressed`,`onClick`],L={class:`suggest-product__body`},R={class:`suggest-product__name`},z={class:`suggest-product__desc`},B={key:0,class:`suggest-product__swatches`},V={key:0,class:`suggest-product__swatch suggest-product__swatch--more`},H={class:`suggest-product__specs`},U={class:`suggest-product__spec`},W={class:`suggest-product__spec-copy`},we={class:`suggest-product__spec-val`},Te={class:`suggest-product__spec`},G={class:`suggest-product__spec-copy`},K={class:`suggest-product__spec-val`},q={class:`suggest-product__spec`},Ee={class:`suggest-product__spec-copy`},J={class:`suggest-product__spec-val`},Y=[`disabled`,`onClick`],X=4,De=_(b({__name:`HomeSuggestionsSection`,props:{items:{}},setup(e){let t=e,r=re(),s=se(),{requesting:m,addressModalOpen:g,addressError:_,requestCatalog:v,submitAddressAndRequest:b,closeAddressModal:te}=E();function ne(e){return e.note?.trim()||e.subtitle?.trim()||`مشابه خریدهای قبلی شما`}function C(e){let t=e.colors?.length??0;return t>X?t-X:0}function ie(e){return{id:e.productId,name:e.productName,code:e.productCode,categoryId:``,season:`all_season`,widthCm:e.widthCm??0,composition:e.composition??``,weightGrams:e.weightGrams,colors:e.colors??(e.color?[e.color]:[]),colorImages:e.colorImages,tags:[],isNew:!!e.isNew,imageUrl:e.imageUrl,subtitle:e.subtitle,rollMeters:1,catalogName:e.catalogName,catalogCode:e.catalogCode,color:e.color,isActive:e.productIsActive!==!1}}function ae(e){r.push({path:`/product`,query:{id:e.productId}})}async function oe(e){await s.toggle(e)}async function w(e){await v(ie(e))}let T=l(()=>t.items.length>0);function le(e){return e.composition?.trim()||`—`}function ue(e){return e.widthCm?`${S(e.widthCm)} cm`:`—`}function de(e){return e.weightGrams?`${S(e.weightGrams)} گرم`:`—`}return(t,l)=>(i(),d(`section`,k,[h(`header`,A,[l[3]||=ee(`

پیشنهادهای اختصاصی برای شما

بر اساس خریدهای قبلی و علاقه‌مندی‌های شما

`,1),h(`button`,{type:`button`,class:`suggest-panel__all`,onClick:l[0]||=e=>y(r).push(`/products`)},[l[2]||=f(` مشاهده همه `,-1),c(ce,{size:14})])]),T.value?(i(),d(`div`,M,[(i(!0),d(p,null,n(e.items,e=>(i(),d(`article`,{key:e.id,class:`suggest-product`,onClick:t=>ae(e)},[h(`div`,{class:`suggest-product__media`,style:a(e.imageUrl?{backgroundImage:`url(${e.imageUrl})`}:void 0)},[y(ve)({isActive:e.productIsActive})?(i(),d(`span`,P,`ناموجود`)):(i(),d(`span`,F,`کالیته پیشنهادی`)),h(`button`,{type:`button`,class:`suggest-product__save`,"aria-label":y(s).isFavorite(e.productId)?`حذف از علاقه‌مندی‌ها`:`افزودن به علاقه‌مندی‌ها`,"aria-pressed":y(s).isFavorite(e.productId),onClick:x(t=>oe(e.productId),[`stop`])},[c(ge,{size:18,filled:y(s).isFavorite(e.productId),color:y(s).isFavorite(e.productId)?`var(--color-primary)`:`#1f2937`},null,8,[`filled`,`color`])],8,I)],4),h(`div`,L,[h(`h4`,R,o(e.productName),1),h(`p`,z,o(ne(e)),1),e.colors?.length?(i(),d(`div`,B,[(i(!0),d(p,null,n(e.colors.slice(0,X),(t,n)=>(i(),d(`span`,{key:`${e.id}-${n}`,class:`suggest-product__swatch`,style:a(y(O)(t,e.colorImages?.[n]))},null,4))),128)),C(e)?(i(),d(`span`,V,` +`+o(y(S)(C(e))),1)):u(``,!0)])):u(``,!0),h(`div`,H,[h(`div`,U,[l[5]||=h(`span`,{class:`suggest-product__spec-icon`,"aria-hidden":`true`},[h(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.5`},[h(`path`,{d:`M12 4 20 8v8l-8 4-8-4V8l8-4Z`,"stroke-linejoin":`round`}),h(`path`,{d:`M4 10l8 4 8-4`,"stroke-linecap":`round`,"stroke-linejoin":`round`})])],-1),h(`span`,W,[l[4]||=h(`span`,{class:`suggest-product__spec-key`},`جنس`,-1),h(`span`,we,o(le(e)),1)])]),l[10]||=h(`div`,{class:`suggest-product__spec-divider`,"aria-hidden":`true`},null,-1),h(`div`,Te,[l[7]||=ee(``,1),h(`span`,G,[l[6]||=h(`span`,{class:`suggest-product__spec-key`},`وزن`,-1),h(`span`,K,o(de(e)),1)])]),l[11]||=h(`div`,{class:`suggest-product__spec-divider`,"aria-hidden":`true`},null,-1),h(`div`,q,[l[9]||=h(`span`,{class:`suggest-product__spec-icon`,"aria-hidden":`true`},[h(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.5`},[h(`path`,{d:`M6 4h12v16H6z`,"stroke-linejoin":`round`}),h(`path`,{d:`M9 8h6M9 12h4`,"stroke-linecap":`round`})])],-1),h(`span`,Ee,[l[8]||=h(`span`,{class:`suggest-product__spec-key`},`عرض`,-1),h(`span`,J,o(ue(e)),1)])])]),h(`button`,{type:`button`,class:`suggest-product__cta`,disabled:y(m),onClick:x(t=>w(e),[`stop`])},` درخواست کالیته `,8,Y)])],8,N))),128))])):(i(),d(`p`,j,` هنوز پیشنهاد اختصاصی برای شما ثبت نشده است. `)),c(D,{open:y(g),error:y(_),loading:y(m),onClose:l[1]||=e=>y(te)(),onSubmit:y(b)},null,8,[`open`,`error`,`loading`,`onSubmit`])]))}}),[[`__scopeId`,`data-v-58849343`]]),Oe={class:`page home-page`},ke={class:`home-header mobile-only`},Ae={class:`home-header__user`},je={class:`home-header__text`},Me={class:`home-header__hello`},Ne={class:`home-header__actions`},Pe={class:`home-desk-head desktop-only`},Fe={class:`home-desk-head__sub`},Ie={key:0,class:`home-error`},Le=[`aria-label`],Re={class:`hero-banner__content`},ze={key:0,class:`hero-banner__title`},Be={key:0},Ve={key:1,class:`hero-banner__title`},He={key:0,class:`hero-banner__dots`,role:`tablist`,"aria-label":`بنرها`},Ue=[`aria-label`,`aria-selected`,`onClick`],We={class:`quick-grid`,"aria-label":`دسترسی سریع`},Ge=[`onClick`],Ke={class:`quick-card__icon`,"aria-hidden":`true`},qe=[`src`],Je={class:`quick-card__label`},Ye={key:0,class:`level-card`,"aria-label":`سطح عضویت`},Xe={class:`level-card__top`},Ze={class:`level-card__identity`},Qe=[`src`],$e={class:`level-card__text`},et={class:`level-card__name`},tt={class:`level-card__next`},nt={class:`level-card__progress`},rt=[`aria-valuenow`],it={class:`level-card__points`},at={class:`section`},ot={class:`section__head`},st={class:`product-row scroll-x`},ct=[`onClick`],lt={key:0,class:`product-card__badge product-card__badge--oos`},ut={key:1,class:`product-card__badge`},dt={class:`product-card__body`},ft={class:`product-card__name`},pt={class:`product-card__sub`},mt=[`aria-label`,`aria-pressed`,`onClick`],Z=_(b({__name:`HomeView`,setup(ee){let _=re(),{goBack:b}=pe(`/`),C=ae(),ge=fe(),E=se(),D=g(!0),O=g(null),k=g([]),A=g([]),j=g([]),M=g(null),N=g(null),P=[{id:`qa-cat`,label:`دسته بندی`,to:`/categories`,image:xe},{id:`qa-club`,label:`وضعیت سفارش`,to:`/orders/latest-status`,image:Ce},{id:`qa-swatch`,label:`درخواست کالیته`,to:`/catalog-requests/latest-status`,image:Se}],F=[{id:`qa-cat`,label:`دسته بندی`,to:`/categories`,image:xe},{id:`qa-customers`,label:`وضعیت سفارش`,to:`/orders/latest-status`,image:Ce},{id:`qa-swatch`,label:`درخواست کالیته`,to:`/catalog-requests/latest-status`,image:Se}],I=l(()=>C.isAgent?F:P),L=l(()=>{let e=new Map(j.value.map(e=>[e.id,e]));return A.value.map(t=>{let n=e.get(t.productId);return{...t,composition:t.composition?.trim()||n?.composition?.trim()||``,widthCm:t.widthCm??n?.widthCm,weightGrams:t.weightGrams??n?.weightGrams,colors:t.colors?.length?t.colors:n?.colors??[],colorImages:t.colorImages?.some(Boolean)?t.colorImages:n?.colorImages,productIsActive:t.productIsActive??n?.isActive}})}),R={id:`fallback`,slot:`home_hero`,title:`کالکشن پاییز و زمستان`,subtitle:`جدیدترین پارچه‌ها`,ctaLabel:`مشاهده کالکشن`,ctaLink:`/categories`,imageUrl:``,showTitle:!0,showSubtitle:!0,showCta:!0},z=g([R]),B=g(0),V=g(`hero-next`),H,U=l(()=>z.value[B.value]??R),W=l(()=>U.value.bannerLink?.trim()||``),we=l(()=>{let e=U.value;return e.showTitle!==!1&&e.title||e.showSubtitle!==!1&&e.subtitle||e.showCta!==!1&&e.ctaLabel});function Te(e){if(e.imageUrl)return{"--hero-image":`url("${e.imageUrl}")`}}function G(e,t){let n=z.value.length;if(!n)return;let r=(e%n+n)%n;r!==B.value&&(t===1?V.value=`hero-next`:t===-1?V.value=`hero-prev`:B.value===n-1&&r===0?V.value=`hero-next`:B.value===0&&r===n-1?V.value=`hero-prev`:V.value=r>B.value?`hero-next`:`hero-prev`,B.value=r)}function K(){q(),!(z.value.length<2)&&(H=window.setInterval(()=>{G(B.value+1,1)},5500))}function q(){H&&window.clearInterval(H),H=void 0}function Ee(e){G(e),K()}let{onTouchStart:J,onTouchEnd:Y}=me({enabled:()=>z.value.length>1,onSwipe(e){G(B.value+e,e),K()}}),X=l(()=>C.user?.firstName||`کاربر`),Z=l(()=>C.user?.lastName||``),ht=ne(`(max-width: 467px)`),gt=l(()=>ht.value?36:44),_t=l(()=>ht.value?X.value:`${X.value} ${Z.value}`.trim()),Q=l(()=>{if(N.value)return N.value;let e=C.user;return{label:e?.levelLabel||`برنزی`,nextLabel:e?.nextLevelLabel||`نقره‌ای`,pointsRemaining:e?.pointsToNext??0,progressPercent:e?.levelProgress??0}});e(q),m(async()=>{D.value=!0,O.value=null;try{let[e,t]=await Promise.all([ge.loadBrowseProducts().then(e=>(j.value=e,e)),de(`home_hero`).catch(()=>[]),E.hydrate()]);if(t.length&&(z.value=t),K(),k.value=e.filter(e=>e.isNew).slice(0,6),k.value.length||(k.value=e.slice(0,6)),C.isAgent)try{let e=await ue();N.value={label:e.levelLabel,nextLabel:e.nextLevelLabel,pointsRemaining:e.pointsToNext,progressPercent:e.levelProgress}}catch{}else try{A.value=await ye()}catch{A.value=[]}}catch(e){O.value=e instanceof Error?e.message:`بارگذاری خانه ناموفق بود.`}finally{D.value=!1}});function $(e){if(/^https?:\/\//i.test(e)){window.location.assign(e);return}_.push(e)}function vt(){$(U.value.ctaLink.trim()||`/categories`)}function yt(e){W.value&&(e.target.closest(`.hero-banner__cta, .hero-banner__dots`)||he(W.value,_))}async function bt(e){M.value=null;try{await E.toggle(e)}catch(e){M.value=e instanceof Error?e.message:`ذخیره علاقه‌مندی ناموفق بود.`}}return(e,l)=>(i(),d(`div`,Oe,[h(`header`,ke,[h(`button`,{type:`button`,class:`icon-btn`,"aria-label":`بازگشت`,onClick:l[0]||=(...e)=>y(b)&&y(b)(...e)},[c(T,{size:20})]),h(`div`,Ae,[c(oe,{class:`home-header__avatar`,src:y(C).user?.avatarUrl,initials:X.value.charAt(0),size:gt.value},null,8,[`src`,`initials`,`size`]),h(`div`,je,[h(`p`,Me,` سلام، `+o(_t.value),1),l[6]||=h(`p`,{class:`home-header__welcome`},`خوش آمدید`,-1)])]),h(`div`,Ne,[c(ie,{variant:`inline`}),h(`button`,{type:`button`,class:`icon-btn`,"aria-label":`اعلان‌ها`,onClick:l[1]||=e=>$(`/profile/notifications`)},[c(w,{size:20})])])]),h(`header`,Pe,[h(`div`,null,[l[7]||=h(`h1`,{class:`home-desk-head__title`},`خانه`,-1),h(`p`,Fe,` سلام `+o(X.value)+` `+o(Z.value)+` — خوش آمدید `,1)])]),h(`div`,{class:t([`page__scroll page__scroll--with-nav home-scroll`,{"home-scroll--customer":!y(C).isAgent}])},[O.value?(i(),d(`p`,Ie,o(O.value),1)):D.value?(i(),v(le,{key:1,variant:`home`})):(i(),d(p,{key:2},[h(`section`,{class:t([`hero-banner`,{"hero-banner--linked":!!W.value}]),"aria-label":U.value.title,onClick:yt,onTouchstartPassive:l[2]||=(...e)=>y(J)&&y(J)(...e),onTouchendPassive:l[3]||=(...e)=>y(Y)&&y(Y)(...e)},[c(te,{name:V.value,tag:`div`,class:`hero-banner__stage`},{default:r(()=>[(i(),d(`article`,{key:U.value.id,class:t([`hero-slide`,{"hero-slide--copy":we.value}]),style:a(Te(U.value))},[l[8]||=h(`div`,{class:`hero-slide__media`,"aria-hidden":`true`},null,-1),h(`div`,Re,[U.value.showTitle===!1?U.value.showSubtitle!==!1&&U.value.subtitle?(i(),d(`p`,Ve,[h(`span`,null,o(U.value.subtitle),1)])):u(``,!0):(i(),d(`h2`,ze,[f(o(U.value.title)+` `,1),U.value.showSubtitle!==!1&&U.value.subtitle?(i(),d(`span`,Be,o(U.value.subtitle),1)):u(``,!0)])),U.value.showCta!==!1&&U.value.ctaLabel?(i(),d(`button`,{key:2,type:`button`,class:`hero-banner__cta`,onClick:x(vt,[`stop`])},o(U.value.ctaLabel),1)):u(``,!0)])],6))]),_:1},8,[`name`]),z.value.length>1?(i(),d(`div`,He,[(i(!0),d(p,null,n(z.value,(e,n)=>(i(),d(`button`,{key:e.id,type:`button`,class:t([`dot`,{"dot--active":n===B.value}]),"aria-label":e.title,"aria-selected":n===B.value,onClick:x(e=>Ee(n),[`stop`])},null,10,Ue))),128))])):u(``,!0)],42,Le),h(`section`,We,[(i(!0),d(p,null,n(I.value,e=>(i(),d(`button`,{key:e.id,type:`button`,class:`quick-card`,onClick:t=>$(e.to)},[h(`span`,Ke,[e.image?(i(),d(`img`,{key:0,class:`quick-card__image`,src:e.image,alt:``},null,8,qe)):(i(),v(s(e.icon),{key:1,size:20}))]),h(`span`,Je,o(e.label),1)],8,Ge))),128))]),y(C).isAgent?(i(),d(`section`,Ye,[h(`div`,Xe,[h(`div`,Ze,[h(`img`,{class:`level-card__medal`,src:y(be),alt:``,width:`48`,height:`48`,"aria-hidden":`true`},null,8,Qe),h(`div`,$e,[l[9]||=h(`span`,{class:`level-card__eyebrow`},`سطح شما`,-1),h(`strong`,et,o(Q.value.label),1),h(`span`,tt,`تا سطح `+o(Q.value.nextLabel),1)])]),h(`button`,{type:`button`,class:`level-card__details`,onClick:l[4]||=e=>$(`/profile`)},` جزئیات سطح `)]),h(`div`,nt,[h(`div`,{class:`level-card__bar`,role:`progressbar`,"aria-valuenow":Q.value.progressPercent,"aria-valuemin":`0`,"aria-valuemax":`100`},[h(`span`,{class:`level-card__bar-fill`,style:a({width:`${Q.value.progressPercent}%`})},null,4)],8,rt),h(`span`,it,o(y(S)(Q.value.pointsRemaining))+` امتیاز دیگر `,1)])])):u(``,!0),y(C).isAgent?u(``,!0):(i(),v(De,{key:1,class:`home-suggestions`,items:L.value},null,8,[`items`])),h(`section`,at,[h(`div`,ot,[l[11]||=h(`h3`,{class:`section__title`},`جدیدترین محصولات`,-1),h(`button`,{type:`button`,class:`section__link`,onClick:l[5]||=e=>$(`/products`)},[l[10]||=f(` مشاهده همه `,-1),c(ce,{size:14})])]),h(`div`,st,[(i(!0),d(p,null,n(k.value,(e,n)=>(i(),d(`article`,{key:e.id,class:`product-card`,onClick:t=>$(`/product?id=${e.id}`)},[h(`div`,{class:t([`product-card__image`,`product-card__image--${n%3}`]),style:a(e.imageUrl?{backgroundImage:`url(${e.imageUrl})`}:void 0)},[y(ve)(e)?(i(),d(`span`,lt,`ناموجود`)):e.isNew?(i(),d(`span`,ut,`جدید`)):u(``,!0)],6),h(`div`,dt,[h(`strong`,ft,o(e.name),1),h(`span`,pt,o(e.subtitle),1),h(`button`,{type:`button`,class:t([`product-card__fav`,{"product-card__fav--on":y(E).isFavorite(e.id)}]),"aria-label":y(E).isFavorite(e.id)?`حذف از علاقه‌مندی‌ها`:`افزودن به علاقه‌مندی‌ها`,"aria-pressed":y(E).isFavorite(e.id),onClick:x(t=>bt(e.id),[`stop`])},[c(_e,{size:16,filled:y(E).isFavorite(e.id),color:y(E).isFavorite(e.id)?`var(--color-primary)`:`#b0b7c0`},null,8,[`filled`,`color`])],10,mt)])],8,ct))),128))])])],64))],2)]))}}),[[`__scopeId`,`data-v-dc4738e7`]]);export{Z as default}; \ No newline at end of file +import{A as e,At as t,F as n,G as r,M as i,Nt as a,Pt as o,R as s,_ as c,c as l,d as u,f as d,g as f,h as ee,i as p,k as m,l as h,nt as g,t as _,u as v,ut as y,v as b}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{l as x,r as te}from"./BasicIcon-DPmc0iaK.js";import{n as ne}from"./dist-Bc4P4ngC.js";import{o as S}from"./format-C72AoJ2H.js";import{n as C}from"./http-CU_N-R2R.js";import{C as re,a as ie,c as ae,i as oe,l as se,o as ce,s as w}from"./index-CE4Fw0WE.js";import{t as T}from"./IconChevronBack-BsHmfODG.js";import{t as le}from"./PageSkeleton-DYdjm4l9.js";import{n as ue,r as de,t as fe}from"./crm-CgnSby61.js";import{t as pe}from"./useGoBack-BrwZYRKb.js";import{t as me}from"./useTouchSwipe-C8fUyAcQ.js";import{t as he}from"./bannerLink-BW8t2Oqp.js";import{t as ge}from"./IconBookmark-CQq-TOS-.js";import{t as _e}from"./IconHeart-CvzbNH_T.js";import{n as E,t as D}from"./AddressCompletionModal-CtlERD8F.js";import{n as O,t as ve}from"./productAvailability-B5nVr_sJ.js";async function ye(){return C(`/suggestions/me`)}var be=`/assets/level-medal-Avpe4Lqa.webp`,xe=`/assets/quick-categories-grid-MFEfEUjL.webp`,Se=`/assets/quick-catalog-request-Ck7EqicC.webp`,Ce=`/assets/latest-order-status-CfJ1sx5U.webp`,k={class:`suggest-panel`,"aria-label":`پیشنهاد اختصاصی`},A={class:`suggest-panel__head`},j={key:0,class:`suggest-panel__empty`},M={key:1,class:`suggest-panel__row scroll-x`},N=[`onClick`],P={key:0,class:`suggest-product__chip suggest-product__chip--oos`},F={key:1,class:`suggest-product__chip`},I=[`aria-label`,`aria-pressed`,`onClick`],L={class:`suggest-product__body`},R={class:`suggest-product__name`},z={class:`suggest-product__desc`},B={key:0,class:`suggest-product__swatches`},V={key:0,class:`suggest-product__swatch suggest-product__swatch--more`},H={class:`suggest-product__specs`},U={class:`suggest-product__spec`},W={class:`suggest-product__spec-copy`},we={class:`suggest-product__spec-val`},Te={class:`suggest-product__spec`},G={class:`suggest-product__spec-copy`},K={class:`suggest-product__spec-val`},q={class:`suggest-product__spec`},Ee={class:`suggest-product__spec-copy`},J={class:`suggest-product__spec-val`},Y=[`disabled`,`onClick`],X=4,De=_(b({__name:`HomeSuggestionsSection`,props:{items:{}},setup(e){let t=e,r=re(),s=se(),{requesting:m,addressModalOpen:g,addressError:_,requestCatalog:v,submitAddressAndRequest:b,closeAddressModal:te}=E();function ne(e){return e.note?.trim()||e.subtitle?.trim()||`مشابه خریدهای قبلی شما`}function C(e){let t=e.colors?.length??0;return t>X?t-X:0}function ie(e){return{id:e.productId,name:e.productName,code:e.productCode,categoryId:``,season:`all_season`,widthCm:e.widthCm??0,composition:e.composition??``,weightGrams:e.weightGrams,colors:e.colors??(e.color?[e.color]:[]),colorImages:e.colorImages,tags:[],isNew:!!e.isNew,imageUrl:e.imageUrl,subtitle:e.subtitle,rollMeters:1,catalogName:e.catalogName,catalogCode:e.catalogCode,color:e.color,isActive:e.productIsActive!==!1}}function ae(e){r.push({path:`/product`,query:{id:e.productId}})}async function oe(e){await s.toggle(e)}async function w(e){await v(ie(e))}let T=l(()=>t.items.length>0);function le(e){return e.composition?.trim()||`—`}function ue(e){return e.widthCm?`${S(e.widthCm)} cm`:`—`}function de(e){return e.weightGrams?`${S(e.weightGrams)} گرم`:`—`}return(t,l)=>(i(),d(`section`,k,[h(`header`,A,[l[3]||=ee(`

پیشنهادهای اختصاصی برای شما

بر اساس خریدهای قبلی و علاقه‌مندی‌های شما

`,1),h(`button`,{type:`button`,class:`suggest-panel__all`,onClick:l[0]||=e=>y(r).push(`/products`)},[l[2]||=f(` مشاهده همه `,-1),c(ce,{size:14})])]),T.value?(i(),d(`div`,M,[(i(!0),d(p,null,n(e.items,e=>(i(),d(`article`,{key:e.id,class:`suggest-product`,onClick:t=>ae(e)},[h(`div`,{class:`suggest-product__media`,style:a(e.imageUrl?{backgroundImage:`url(${e.imageUrl})`}:void 0)},[y(ve)({isActive:e.productIsActive})?(i(),d(`span`,P,`ناموجود`)):(i(),d(`span`,F,`کالیته پیشنهادی`)),h(`button`,{type:`button`,class:`suggest-product__save`,"aria-label":y(s).isFavorite(e.productId)?`حذف از علاقه‌مندی‌ها`:`افزودن به علاقه‌مندی‌ها`,"aria-pressed":y(s).isFavorite(e.productId),onClick:x(t=>oe(e.productId),[`stop`])},[c(ge,{size:18,filled:y(s).isFavorite(e.productId),color:y(s).isFavorite(e.productId)?`var(--color-primary)`:`#1f2937`},null,8,[`filled`,`color`])],8,I)],4),h(`div`,L,[h(`h4`,R,o(e.productName),1),h(`p`,z,o(ne(e)),1),e.colors?.length?(i(),d(`div`,B,[(i(!0),d(p,null,n(e.colors.slice(0,X),(t,n)=>(i(),d(`span`,{key:`${e.id}-${n}`,class:`suggest-product__swatch`,style:a(y(O)(t,e.colorImages?.[n]))},null,4))),128)),C(e)?(i(),d(`span`,V,` +`+o(y(S)(C(e))),1)):u(``,!0)])):u(``,!0),h(`div`,H,[h(`div`,U,[l[5]||=h(`span`,{class:`suggest-product__spec-icon`,"aria-hidden":`true`},[h(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.5`},[h(`path`,{d:`M12 4 20 8v8l-8 4-8-4V8l8-4Z`,"stroke-linejoin":`round`}),h(`path`,{d:`M4 10l8 4 8-4`,"stroke-linecap":`round`,"stroke-linejoin":`round`})])],-1),h(`span`,W,[l[4]||=h(`span`,{class:`suggest-product__spec-key`},`جنس`,-1),h(`span`,we,o(le(e)),1)])]),l[10]||=h(`div`,{class:`suggest-product__spec-divider`,"aria-hidden":`true`},null,-1),h(`div`,Te,[l[7]||=ee(``,1),h(`span`,G,[l[6]||=h(`span`,{class:`suggest-product__spec-key`},`وزن`,-1),h(`span`,K,o(de(e)),1)])]),l[11]||=h(`div`,{class:`suggest-product__spec-divider`,"aria-hidden":`true`},null,-1),h(`div`,q,[l[9]||=h(`span`,{class:`suggest-product__spec-icon`,"aria-hidden":`true`},[h(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.5`},[h(`path`,{d:`M6 4h12v16H6z`,"stroke-linejoin":`round`}),h(`path`,{d:`M9 8h6M9 12h4`,"stroke-linecap":`round`})])],-1),h(`span`,Ee,[l[8]||=h(`span`,{class:`suggest-product__spec-key`},`عرض`,-1),h(`span`,J,o(ue(e)),1)])])]),h(`button`,{type:`button`,class:`suggest-product__cta`,disabled:y(m),onClick:x(t=>w(e),[`stop`])},` درخواست کالیته `,8,Y)])],8,N))),128))])):(i(),d(`p`,j,` هنوز پیشنهاد اختصاصی برای شما ثبت نشده است. `)),c(D,{open:y(g),error:y(_),loading:y(m),onClose:l[1]||=e=>y(te)(),onSubmit:y(b)},null,8,[`open`,`error`,`loading`,`onSubmit`])]))}}),[[`__scopeId`,`data-v-58849343`]]),Oe={class:`page home-page`},ke={class:`home-header mobile-only`},Ae={class:`home-header__user`},je={class:`home-header__text`},Me={class:`home-header__hello`},Ne={class:`home-header__actions`},Pe={class:`home-desk-head desktop-only`},Fe={class:`home-desk-head__sub`},Ie={key:0,class:`home-error`},Le=[`aria-label`],Re={class:`hero-banner__content`},ze={key:0,class:`hero-banner__title`},Be={key:0},Ve={key:1,class:`hero-banner__title`},He={key:0,class:`hero-banner__dots`,role:`tablist`,"aria-label":`بنرها`},Ue=[`aria-label`,`aria-selected`,`onClick`],We={class:`quick-grid`,"aria-label":`دسترسی سریع`},Ge=[`onClick`],Ke={class:`quick-card__icon`,"aria-hidden":`true`},qe=[`src`],Je={class:`quick-card__label`},Ye={key:0,class:`level-card`,"aria-label":`سطح عضویت`},Xe={class:`level-card__top`},Ze={class:`level-card__identity`},Qe=[`src`],$e={class:`level-card__text`},et={class:`level-card__name`},tt={class:`level-card__next`},nt={class:`level-card__progress`},rt=[`aria-valuenow`],it={class:`level-card__points`},at={class:`section`},ot={class:`section__head`},st={class:`product-row scroll-x`},ct=[`onClick`],lt={key:0,class:`product-card__badge product-card__badge--oos`},ut={key:1,class:`product-card__badge`},dt={class:`product-card__body`},ft={class:`product-card__name`},pt={class:`product-card__sub`},mt=[`aria-label`,`aria-pressed`,`onClick`],Z=_(b({__name:`HomeView`,setup(ee){let _=re(),{goBack:b}=pe(`/`),C=ae(),ge=fe(),E=se(),D=g(!0),O=g(null),k=g([]),A=g([]),j=g([]),M=g(null),N=g(null),P=[{id:`qa-cat`,label:`دسته بندی`,to:`/categories`,image:xe},{id:`qa-club`,label:`وضعیت سفارش`,to:`/orders/latest-status`,image:Ce},{id:`qa-swatch`,label:`درخواست کالیته`,to:`/catalog-requests/latest-status`,image:Se}],F=[{id:`qa-cat`,label:`دسته بندی`,to:`/categories`,image:xe},{id:`qa-customers`,label:`وضعیت سفارش`,to:`/orders/latest-status`,image:Ce},{id:`qa-swatch`,label:`درخواست کالیته`,to:`/catalog-requests/latest-status`,image:Se}],I=l(()=>C.isAgent?F:P),L=l(()=>{let e=new Map(j.value.map(e=>[e.id,e]));return A.value.map(t=>{let n=e.get(t.productId);return{...t,composition:t.composition?.trim()||n?.composition?.trim()||``,widthCm:t.widthCm??n?.widthCm,weightGrams:t.weightGrams??n?.weightGrams,colors:t.colors?.length?t.colors:n?.colors??[],colorImages:t.colorImages?.some(Boolean)?t.colorImages:n?.colorImages,productIsActive:t.productIsActive??n?.isActive}})}),R={id:`fallback`,slot:`home_hero`,title:`کالکشن پاییز و زمستان`,subtitle:`جدیدترین پارچه‌ها`,ctaLabel:`مشاهده کالکشن`,ctaLink:`/categories`,imageUrl:``,showTitle:!0,showSubtitle:!0,showCta:!0},z=g([R]),B=g(0),V=g(`hero-next`),H,U=l(()=>z.value[B.value]??R),W=l(()=>U.value.bannerLink?.trim()||``),we=l(()=>{let e=U.value;return e.showTitle!==!1&&e.title||e.showSubtitle!==!1&&e.subtitle||e.showCta!==!1&&e.ctaLabel});function Te(e){if(e.imageUrl)return{"--hero-image":`url("${e.imageUrl}")`}}function G(e,t){let n=z.value.length;if(!n)return;let r=(e%n+n)%n;r!==B.value&&(t===1?V.value=`hero-next`:t===-1?V.value=`hero-prev`:B.value===n-1&&r===0?V.value=`hero-next`:B.value===0&&r===n-1?V.value=`hero-prev`:V.value=r>B.value?`hero-next`:`hero-prev`,B.value=r)}function K(){q(),!(z.value.length<2)&&(H=window.setInterval(()=>{G(B.value+1,1)},5500))}function q(){H&&window.clearInterval(H),H=void 0}function Ee(e){G(e),K()}let{onTouchStart:J,onTouchEnd:Y}=me({enabled:()=>z.value.length>1,onSwipe(e){G(B.value+e,e),K()}}),X=l(()=>C.user?.firstName||`کاربر`),Z=l(()=>C.user?.lastName||``),ht=ne(`(max-width: 467px)`),gt=l(()=>ht.value?36:44),_t=l(()=>ht.value?X.value:`${X.value} ${Z.value}`.trim()),Q=l(()=>{if(N.value)return N.value;let e=C.user;return{label:e?.levelLabel||`برنزی`,nextLabel:e?.nextLevelLabel||`نقره‌ای`,pointsRemaining:e?.pointsToNext??0,progressPercent:e?.levelProgress??0}});e(q),m(async()=>{D.value=!0,O.value=null;try{let[e,t]=await Promise.all([ge.loadBrowseProducts().then(e=>(j.value=e,e)),de(`home_hero`).catch(()=>[]),E.hydrate()]);if(t.length&&(z.value=t),K(),k.value=e.filter(e=>e.isNew).slice(0,6),k.value.length||(k.value=e.slice(0,6)),C.isAgent)try{let e=await ue();N.value={label:e.levelLabel,nextLabel:e.nextLevelLabel,pointsRemaining:e.pointsToNext,progressPercent:e.levelProgress}}catch{}else try{A.value=await ye()}catch{A.value=[]}}catch(e){O.value=e instanceof Error?e.message:`بارگذاری خانه ناموفق بود.`}finally{D.value=!1}});function $(e){if(/^https?:\/\//i.test(e)){window.location.assign(e);return}_.push(e)}function vt(){$(U.value.ctaLink.trim()||`/categories`)}function yt(e){W.value&&(e.target.closest(`.hero-banner__cta, .hero-banner__dots`)||he(W.value,_))}async function bt(e){M.value=null;try{await E.toggle(e)}catch(e){M.value=e instanceof Error?e.message:`ذخیره علاقه‌مندی ناموفق بود.`}}return(e,l)=>(i(),d(`div`,Oe,[h(`header`,ke,[h(`button`,{type:`button`,class:`icon-btn`,"aria-label":`بازگشت`,onClick:l[0]||=(...e)=>y(b)&&y(b)(...e)},[c(T,{size:20})]),h(`div`,Ae,[c(oe,{class:`home-header__avatar`,src:y(C).user?.avatarUrl,initials:X.value.charAt(0),size:gt.value},null,8,[`src`,`initials`,`size`]),h(`div`,je,[h(`p`,Me,` سلام، `+o(_t.value),1),l[6]||=h(`p`,{class:`home-header__welcome`},`خوش آمدید`,-1)])]),h(`div`,Ne,[c(ie,{variant:`inline`}),h(`button`,{type:`button`,class:`icon-btn`,"aria-label":`اعلان‌ها`,onClick:l[1]||=e=>$(`/profile/notifications`)},[c(w,{size:20})])])]),h(`header`,Pe,[h(`div`,null,[l[7]||=h(`h1`,{class:`home-desk-head__title`},`خانه`,-1),h(`p`,Fe,` سلام `+o(X.value)+` `+o(Z.value)+` — خوش آمدید `,1)])]),h(`div`,{class:t([`page__scroll page__scroll--with-nav home-scroll`,{"home-scroll--customer":!y(C).isAgent}])},[O.value?(i(),d(`p`,Ie,o(O.value),1)):D.value?(i(),v(le,{key:1,variant:`home`})):(i(),d(p,{key:2},[h(`section`,{class:t([`hero-banner`,{"hero-banner--linked":!!W.value}]),"aria-label":U.value.title,onClick:yt,onTouchstartPassive:l[2]||=(...e)=>y(J)&&y(J)(...e),onTouchendPassive:l[3]||=(...e)=>y(Y)&&y(Y)(...e)},[c(te,{name:V.value,tag:`div`,class:`hero-banner__stage`},{default:r(()=>[(i(),d(`article`,{key:U.value.id,class:t([`hero-slide`,{"hero-slide--copy":we.value}]),style:a(Te(U.value))},[l[8]||=h(`div`,{class:`hero-slide__media`,"aria-hidden":`true`},null,-1),h(`div`,Re,[U.value.showTitle===!1?U.value.showSubtitle!==!1&&U.value.subtitle?(i(),d(`p`,Ve,[h(`span`,null,o(U.value.subtitle),1)])):u(``,!0):(i(),d(`h2`,ze,[f(o(U.value.title)+` `,1),U.value.showSubtitle!==!1&&U.value.subtitle?(i(),d(`span`,Be,o(U.value.subtitle),1)):u(``,!0)])),U.value.showCta!==!1&&U.value.ctaLabel?(i(),d(`button`,{key:2,type:`button`,class:`hero-banner__cta`,onClick:x(vt,[`stop`])},o(U.value.ctaLabel),1)):u(``,!0)])],6))]),_:1},8,[`name`]),z.value.length>1?(i(),d(`div`,He,[(i(!0),d(p,null,n(z.value,(e,n)=>(i(),d(`button`,{key:e.id,type:`button`,class:t([`dot`,{"dot--active":n===B.value}]),"aria-label":e.title,"aria-selected":n===B.value,onClick:x(e=>Ee(n),[`stop`])},null,10,Ue))),128))])):u(``,!0)],42,Le),h(`section`,We,[(i(!0),d(p,null,n(I.value,e=>(i(),d(`button`,{key:e.id,type:`button`,class:`quick-card`,onClick:t=>$(e.to)},[h(`span`,Ke,[e.image?(i(),d(`img`,{key:0,class:`quick-card__image`,src:e.image,alt:``},null,8,qe)):(i(),v(s(e.icon),{key:1,size:20}))]),h(`span`,Je,o(e.label),1)],8,Ge))),128))]),y(C).isAgent?(i(),d(`section`,Ye,[h(`div`,Xe,[h(`div`,Ze,[h(`img`,{class:`level-card__medal`,src:y(be),alt:``,width:`48`,height:`48`,"aria-hidden":`true`},null,8,Qe),h(`div`,$e,[l[9]||=h(`span`,{class:`level-card__eyebrow`},`سطح شما`,-1),h(`strong`,et,o(Q.value.label),1),h(`span`,tt,`تا سطح `+o(Q.value.nextLabel),1)])]),h(`button`,{type:`button`,class:`level-card__details`,onClick:l[4]||=e=>$(`/profile`)},` جزئیات سطح `)]),h(`div`,nt,[h(`div`,{class:`level-card__bar`,role:`progressbar`,"aria-valuenow":Q.value.progressPercent,"aria-valuemin":`0`,"aria-valuemax":`100`},[h(`span`,{class:`level-card__bar-fill`,style:a({width:`${Q.value.progressPercent}%`})},null,4)],8,rt),h(`span`,it,o(y(S)(Q.value.pointsRemaining))+` امتیاز دیگر `,1)])])):u(``,!0),y(C).isAgent?u(``,!0):(i(),v(De,{key:1,class:`home-suggestions`,items:L.value},null,8,[`items`])),h(`section`,at,[h(`div`,ot,[l[11]||=h(`h3`,{class:`section__title`},`جدیدترین محصولات`,-1),h(`button`,{type:`button`,class:`section__link`,onClick:l[5]||=e=>$(`/products`)},[l[10]||=f(` مشاهده همه `,-1),c(ce,{size:14})])]),h(`div`,st,[(i(!0),d(p,null,n(k.value,(e,n)=>(i(),d(`article`,{key:e.id,class:`product-card`,onClick:t=>$(`/product?id=${e.id}`)},[h(`div`,{class:t([`product-card__image`,`product-card__image--${n%3}`]),style:a(e.imageUrl?{backgroundImage:`url(${e.imageUrl})`}:void 0)},[y(ve)(e)?(i(),d(`span`,lt,`ناموجود`)):e.isNew?(i(),d(`span`,ut,`جدید`)):u(``,!0)],6),h(`div`,dt,[h(`strong`,ft,o(e.name),1),h(`span`,pt,o(e.subtitle),1),h(`button`,{type:`button`,class:t([`product-card__fav`,{"product-card__fav--on":y(E).isFavorite(e.id)}]),"aria-label":y(E).isFavorite(e.id)?`حذف از علاقه‌مندی‌ها`:`افزودن به علاقه‌مندی‌ها`,"aria-pressed":y(E).isFavorite(e.id),onClick:x(t=>bt(e.id),[`stop`])},[c(_e,{size:16,filled:y(E).isFavorite(e.id),color:y(E).isFavorite(e.id)?`var(--color-primary)`:`#b0b7c0`},null,8,[`filled`,`color`])],10,mt)])],8,ct))),128))])])],64))],2)]))}}),[[`__scopeId`,`data-v-dc4738e7`]]);export{Z as default}; \ No newline at end of file diff --git a/dist/assets/LatestCatalogRequestStatusView-BKQRyTdg.js b/dist/assets/LatestCatalogRequestStatusView-B9OfO5rw.js similarity index 95% rename from dist/assets/LatestCatalogRequestStatusView-BKQRyTdg.js rename to dist/assets/LatestCatalogRequestStatusView-B9OfO5rw.js index f2cf650..24d3f6e 100644 --- a/dist/assets/LatestCatalogRequestStatusView-BKQRyTdg.js +++ b/dist/assets/LatestCatalogRequestStatusView-B9OfO5rw.js @@ -1 +1 @@ -import{M as e,Pt as t,_ as n,c as r,f as i,g as a,i as o,k as s,l as c,nt as l,t as u,u as d,ut as f,v as p}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{i as m,o as h}from"./format-C72AoJ2H.js";import{C as g}from"./index-DYwnTikp.js";import{t as _}from"./PageHeader-C5c2Pzrn.js";import{t as v}from"./catalogRequests-COPPKp3x.js";import{t as y}from"./PageSkeleton-DYdjm4l9.js";import{t as b}from"./SimpleStatusTimeline-C5IzJmCG.js";var x=[{id:`registered`,label:`درخواست کالیته ثبت شد`},{id:`ready_to_ship`,label:`آماده ارسال`},{id:`shipped`,label:`ارسال شد`},{id:`returned`,label:`تحویل گرفته شد`},{id:`cancelled`,label:`درخواست لغو شد`}],S={new:0,approved:0,ready_to_ship:1,delivered:2,returned:3,cancelled:4};function C(e){return e.serverStatus?e.serverStatus:{submitted:`new`,reviewing:`approved`,preparing:`ready_to_ship`,shipped:`delivered`,delivered:`returned`,new:`new`,approved:`approved`,ready_to_ship:`ready_to_ship`,returned:`returned`,cancelled:`cancelled`}[e.status]??`new`}function w(e){return S[C(e)]??0}function T(e){let t=C(e),n=m(e.createdAt),r=e.updatedAt?m(e.updatedAt):null;return{registered:n,ready_to_ship:[`ready_to_ship`,`delivered`,`returned`].includes(t)?r:null,shipped:[`delivered`,`returned`].includes(t)?r:null,returned:t===`returned`?r:null,cancelled:t===`cancelled`?r:null}}var E={class:`page latest-status-page`},D={class:`page__scroll page__scroll--with-nav body`},O={class:`summary-card`},k={class:`summary-card__value`},A={class:`summary-card__meta`},j={key:2,class:`empty-cta`},M=u(p({__name:`LatestCatalogRequestStatusView`,setup(u){let p=g(),m=v(),S=l(!0),C=r(()=>m.sorted.length?m.sorted[0]:null),M=r(()=>C.value?w(C.value):0),N=r(()=>C.value?T(C.value):{});s(async()=>{S.value=!0,await m.hydrate(),S.value=!1});function P(){p.push(`/categories`)}return(r,s)=>(e(),i(`div`,E,[n(_,{class:`mobile-only`,title:`آخرین درخواست کالیته`,"show-back":``,centered:``,onBack:s[0]||=e=>f(p).push(`/`)}),s[4]||=c(`header`,{class:`desktop-page__head desktop-only`},[c(`div`,null,[c(`h1`,{class:`desktop-page__title`},`آخرین درخواست کالیته`),c(`p`,{class:`desktop-page__subtitle`},`پیگیری مراحل آخرین درخواست کالیته`)])],-1),c(`div`,D,[S.value?(e(),d(y,{key:0})):C.value?(e(),i(o,{key:1},[c(`article`,O,[s[2]||=c(`p`,{class:`summary-card__label`},`درخواست`,-1),c(`strong`,k,t(C.value.id.slice(-8)),1),c(`p`,A,t(f(h)(C.value.items.length))+` قلم کالیته `,1)]),n(b,{steps:f(x),"current-index":M.value,timestamps:N.value},null,8,[`steps`,`current-index`,`timestamps`]),c(`button`,{type:`button`,class:`detail-link`,onClick:s[1]||=e=>f(p).push(`/catalog-requests`)},` مشاهده همه درخواست‌ها `)],64)):(e(),i(`div`,j,[s[3]||=a(` شما هیچ کالیته ای درخواست نکرده اید، جهت درخواست کالیته و مشاهده فیزیکی پارچه ها کلیک کنید `,-1),c(`button`,{type:`button`,class:`desk-new-btn`,onClick:P},` مشاهده محصولات `)]))])]))}}),[[`__scopeId`,`data-v-ceeabf36`]]);export{M as default}; \ No newline at end of file +import{M as e,Pt as t,_ as n,c as r,f as i,g as a,i as o,k as s,l as c,nt as l,t as u,u as d,ut as f,v as p}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{i as m,o as h}from"./format-C72AoJ2H.js";import{C as g}from"./index-CE4Fw0WE.js";import{t as _}from"./PageHeader-BDPrFkve.js";import{t as v}from"./catalogRequests-COPPKp3x.js";import{t as y}from"./PageSkeleton-DYdjm4l9.js";import{t as b}from"./SimpleStatusTimeline-C5IzJmCG.js";var x=[{id:`registered`,label:`درخواست کالیته ثبت شد`},{id:`ready_to_ship`,label:`آماده ارسال`},{id:`shipped`,label:`ارسال شد`},{id:`returned`,label:`تحویل گرفته شد`},{id:`cancelled`,label:`درخواست لغو شد`}],S={new:0,approved:0,ready_to_ship:1,delivered:2,returned:3,cancelled:4};function C(e){return e.serverStatus?e.serverStatus:{submitted:`new`,reviewing:`approved`,preparing:`ready_to_ship`,shipped:`delivered`,delivered:`returned`,new:`new`,approved:`approved`,ready_to_ship:`ready_to_ship`,returned:`returned`,cancelled:`cancelled`}[e.status]??`new`}function w(e){return S[C(e)]??0}function T(e){let t=C(e),n=m(e.createdAt),r=e.updatedAt?m(e.updatedAt):null;return{registered:n,ready_to_ship:[`ready_to_ship`,`delivered`,`returned`].includes(t)?r:null,shipped:[`delivered`,`returned`].includes(t)?r:null,returned:t===`returned`?r:null,cancelled:t===`cancelled`?r:null}}var E={class:`page latest-status-page`},D={class:`page__scroll page__scroll--with-nav body`},O={class:`summary-card`},k={class:`summary-card__value`},A={class:`summary-card__meta`},j={key:2,class:`empty-cta`},M=u(p({__name:`LatestCatalogRequestStatusView`,setup(u){let p=g(),m=v(),S=l(!0),C=r(()=>m.sorted.length?m.sorted[0]:null),M=r(()=>C.value?w(C.value):0),N=r(()=>C.value?T(C.value):{});s(async()=>{S.value=!0,await m.hydrate(),S.value=!1});function P(){p.push(`/categories`)}return(r,s)=>(e(),i(`div`,E,[n(_,{class:`mobile-only`,title:`آخرین درخواست کالیته`,"show-back":``,centered:``,onBack:s[0]||=e=>f(p).push(`/`)}),s[4]||=c(`header`,{class:`desktop-page__head desktop-only`},[c(`div`,null,[c(`h1`,{class:`desktop-page__title`},`آخرین درخواست کالیته`),c(`p`,{class:`desktop-page__subtitle`},`پیگیری مراحل آخرین درخواست کالیته`)])],-1),c(`div`,D,[S.value?(e(),d(y,{key:0})):C.value?(e(),i(o,{key:1},[c(`article`,O,[s[2]||=c(`p`,{class:`summary-card__label`},`درخواست`,-1),c(`strong`,k,t(C.value.id.slice(-8)),1),c(`p`,A,t(f(h)(C.value.items.length))+` قلم کالیته `,1)]),n(b,{steps:f(x),"current-index":M.value,timestamps:N.value},null,8,[`steps`,`current-index`,`timestamps`]),c(`button`,{type:`button`,class:`detail-link`,onClick:s[1]||=e=>f(p).push(`/catalog-requests`)},` مشاهده همه درخواست‌ها `)],64)):(e(),i(`div`,j,[s[3]||=a(` شما هیچ کالیته ای درخواست نکرده اید، جهت درخواست کالیته و مشاهده فیزیکی پارچه ها کلیک کنید `,-1),c(`button`,{type:`button`,class:`desk-new-btn`,onClick:P},` مشاهده محصولات `)]))])]))}}),[[`__scopeId`,`data-v-ceeabf36`]]);export{M as default}; \ No newline at end of file diff --git a/dist/assets/LatestOrderStatusView-Bw1EA_ra.js b/dist/assets/LatestOrderStatusView-gdIC0Keq.js similarity index 96% rename from dist/assets/LatestOrderStatusView-Bw1EA_ra.js rename to dist/assets/LatestOrderStatusView-gdIC0Keq.js index bc054df..39d4ce8 100644 --- a/dist/assets/LatestOrderStatusView-Bw1EA_ra.js +++ b/dist/assets/LatestOrderStatusView-gdIC0Keq.js @@ -1 +1 @@ -import{M as e,Pt as t,_ as n,c as r,d as i,f as a,i as o,k as s,l as c,nt as l,t as u,u as d,ut as f,v as p}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{i as m,n as h}from"./format-C72AoJ2H.js";import{C as g,c as _,f as v}from"./index-DYwnTikp.js";import{t as y}from"./PageHeader-C5c2Pzrn.js";import{t as b}from"./PageSkeleton-DYdjm4l9.js";import{t as x}from"./SimpleStatusTimeline-C5IzJmCG.js";var S=[{id:`registered`,label:`سفارش ثبت شد`},{id:`priced`,label:`قیمت گذاری انجام شد`},{id:`proforma_sent`,label:`پیش فاکتور ارسال شد`},{id:`proforma_confirmed`,label:`پیش فاکتور تایید شد`},{id:`invoice_sent`,label:`فاکتور ارسال شد`},{id:`shipped`,label:`بار ارسال شد`},{id:`delivered`,label:`بار توسط شما تحویل گرفته شد`}],C={submitted:0,awaiting_review:1,pricing:1,needs_correction:1,awaiting_settlement:2,awaiting_settlement_fix:2,cash_in_progress:2,cash_invoice_issued:2,awaiting_cash_payment:2,cash_payment_submitted:2,check_in_progress:2,awaiting_cash_confirmation:3,awaiting_check_review:3,check_needs_fix:3,check_rejected:3,checks_approved:3,cash_confirmed:3,final_approved:4,preparing:4,ready_to_ship:4,shipped:5,delivered:6,expired:2,cancelled:0,rejected:1},w={registered:[`submitted`],priced:[`pricing`,`awaiting_review`,`needs_correction`],proforma_sent:[`awaiting_settlement`,`awaiting_settlement_fix`,`cash_in_progress`,`cash_invoice_issued`,`awaiting_cash_payment`,`cash_payment_submitted`,`check_in_progress`],proforma_confirmed:[`awaiting_cash_confirmation`,`awaiting_check_review`,`check_needs_fix`,`check_rejected`,`checks_approved`,`cash_confirmed`],invoice_sent:[`final_approved`,`preparing`,`ready_to_ship`],shipped:[`shipped`],delivered:[`delivered`]};function T(e){return C[e]??0}function E(e){let t={};for(let n of S){if(n.id===`registered`){t[n.id]=m(e.createdAt);continue}let r=w[n.id]??[],i=[...e.statusHistory].reverse().find(e=>r.includes(e.toStatus));t[n.id]=i?m(i.changedAt):null}return t}var D={class:`page latest-status-page`},O={class:`page__scroll page__scroll--with-nav body`},k={class:`summary-card`},A={class:`summary-card__value`},j={key:0,class:`summary-card__meta`},M=u(p({__name:`LatestOrderStatusView`,setup(u){let p=g(),m=v(),C=_(),w=l(!0),M=r(()=>{let e=m.userOrders(C.user?.id??``);return e.length?e[0]:null}),N=r(()=>M.value?T(M.value.status):0),P=r(()=>M.value?E(M.value):{});s(async()=>{w.value=!0,await m.hydrate(),w.value=!1});function F(){p.push(`/categories`)}return(r,s)=>(e(),a(`div`,D,[n(y,{class:`mobile-only`,title:`آخرین وضعیت سفارش`,"show-back":``,centered:``,onBack:s[0]||=e=>f(p).push(`/`)}),s[3]||=c(`header`,{class:`desktop-page__head desktop-only`},[c(`div`,null,[c(`h1`,{class:`desktop-page__title`},`آخرین وضعیت سفارش`),c(`p`,{class:`desktop-page__subtitle`},`پیگیری مراحل آخرین سفارش ثبت‌شده`)])],-1),c(`div`,O,[w.value?(e(),d(b,{key:0})):M.value?(e(),a(o,{key:1},[c(`article`,k,[s[2]||=c(`p`,{class:`summary-card__label`},`سفارش شماره`,-1),c(`strong`,A,t(M.value.orderNumber),1),M.value.finalAmount?(e(),a(`p`,j,t(f(h)(M.value.finalAmount)),1)):i(``,!0)]),n(x,{steps:f(S),"current-index":N.value,timestamps:P.value},null,8,[`steps`,`current-index`,`timestamps`]),c(`button`,{type:`button`,class:`detail-link`,onClick:s[1]||=e=>f(p).push(`/orders/${M.value.id}`)},` مشاهده جزئیات سفارش `)],64)):(e(),a(`button`,{key:2,type:`button`,class:`empty-cta`,onClick:F},` سفارشی ثبت نکرده اید. لطفا جهت مشاهده محصولات کلیک کنید `))])]))}}),[[`__scopeId`,`data-v-030bc575`]]);export{M as default}; \ No newline at end of file +import{M as e,Pt as t,_ as n,c as r,d as i,f as a,i as o,k as s,l as c,nt as l,t as u,u as d,ut as f,v as p}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{i as m,n as h}from"./format-C72AoJ2H.js";import{C as g,c as _,f as v}from"./index-CE4Fw0WE.js";import{t as y}from"./PageHeader-BDPrFkve.js";import{t as b}from"./PageSkeleton-DYdjm4l9.js";import{t as x}from"./SimpleStatusTimeline-C5IzJmCG.js";var S=[{id:`registered`,label:`سفارش ثبت شد`},{id:`priced`,label:`قیمت گذاری انجام شد`},{id:`proforma_sent`,label:`پیش فاکتور ارسال شد`},{id:`proforma_confirmed`,label:`پیش فاکتور تایید شد`},{id:`invoice_sent`,label:`فاکتور ارسال شد`},{id:`shipped`,label:`بار ارسال شد`},{id:`delivered`,label:`بار توسط شما تحویل گرفته شد`}],C={submitted:0,awaiting_review:1,pricing:1,needs_correction:1,awaiting_settlement:2,awaiting_settlement_fix:2,cash_in_progress:2,cash_invoice_issued:2,awaiting_cash_payment:2,cash_payment_submitted:2,check_in_progress:2,awaiting_cash_confirmation:3,awaiting_check_review:3,check_needs_fix:3,check_rejected:3,checks_approved:3,cash_confirmed:3,final_approved:4,preparing:4,ready_to_ship:4,shipped:5,delivered:6,expired:2,cancelled:0,rejected:1},w={registered:[`submitted`],priced:[`pricing`,`awaiting_review`,`needs_correction`],proforma_sent:[`awaiting_settlement`,`awaiting_settlement_fix`,`cash_in_progress`,`cash_invoice_issued`,`awaiting_cash_payment`,`cash_payment_submitted`,`check_in_progress`],proforma_confirmed:[`awaiting_cash_confirmation`,`awaiting_check_review`,`check_needs_fix`,`check_rejected`,`checks_approved`,`cash_confirmed`],invoice_sent:[`final_approved`,`preparing`,`ready_to_ship`],shipped:[`shipped`],delivered:[`delivered`]};function T(e){return C[e]??0}function E(e){let t={};for(let n of S){if(n.id===`registered`){t[n.id]=m(e.createdAt);continue}let r=w[n.id]??[],i=[...e.statusHistory].reverse().find(e=>r.includes(e.toStatus));t[n.id]=i?m(i.changedAt):null}return t}var D={class:`page latest-status-page`},O={class:`page__scroll page__scroll--with-nav body`},k={class:`summary-card`},A={class:`summary-card__value`},j={key:0,class:`summary-card__meta`},M=u(p({__name:`LatestOrderStatusView`,setup(u){let p=g(),m=v(),C=_(),w=l(!0),M=r(()=>{let e=m.userOrders(C.user?.id??``);return e.length?e[0]:null}),N=r(()=>M.value?T(M.value.status):0),P=r(()=>M.value?E(M.value):{});s(async()=>{w.value=!0,await m.hydrate(),w.value=!1});function F(){p.push(`/categories`)}return(r,s)=>(e(),a(`div`,D,[n(y,{class:`mobile-only`,title:`آخرین وضعیت سفارش`,"show-back":``,centered:``,onBack:s[0]||=e=>f(p).push(`/`)}),s[3]||=c(`header`,{class:`desktop-page__head desktop-only`},[c(`div`,null,[c(`h1`,{class:`desktop-page__title`},`آخرین وضعیت سفارش`),c(`p`,{class:`desktop-page__subtitle`},`پیگیری مراحل آخرین سفارش ثبت‌شده`)])],-1),c(`div`,O,[w.value?(e(),d(b,{key:0})):M.value?(e(),a(o,{key:1},[c(`article`,k,[s[2]||=c(`p`,{class:`summary-card__label`},`سفارش شماره`,-1),c(`strong`,A,t(M.value.orderNumber),1),M.value.finalAmount?(e(),a(`p`,j,t(f(h)(M.value.finalAmount)),1)):i(``,!0)]),n(x,{steps:f(S),"current-index":N.value,timestamps:P.value},null,8,[`steps`,`current-index`,`timestamps`]),c(`button`,{type:`button`,class:`detail-link`,onClick:s[1]||=e=>f(p).push(`/orders/${M.value.id}`)},` مشاهده جزئیات سفارش `)],64)):(e(),a(`button`,{key:2,type:`button`,class:`empty-cta`,onClick:F},` سفارشی ثبت نکرده اید. لطفا جهت مشاهده محصولات کلیک کنید `))])]))}}),[[`__scopeId`,`data-v-030bc575`]]);export{M as default}; \ No newline at end of file diff --git a/dist/assets/LoginView-CYh1C8uL.js b/dist/assets/LoginView-CN1LsC3t.js similarity index 94% rename from dist/assets/LoginView-CYh1C8uL.js rename to dist/assets/LoginView-CN1LsC3t.js index c211607..9dfddd4 100644 --- a/dist/assets/LoginView-CYh1C8uL.js +++ b/dist/assets/LoginView-CN1LsC3t.js @@ -1 +1 @@ -import{At as e,G as t,L as n,M as r,Pt as i,_ as a,c as o,d as s,f as c,g as l,l as u,nt as d,t as f,u as p,ut as m,v as h}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{l as g}from"./BasicIcon-DPmc0iaK.js";import{d as _,l as v}from"./format-C72AoJ2H.js";import{a as y}from"./validation-Duyyve7l.js";import{C as b,c as x}from"./index-DYwnTikp.js";import{t as S}from"./AuthShell-BRlVYnTX.js";import{t as C}from"./FormErrorBanner-Ud1D04xf.js";import{t as w}from"./IconPhone-BSof4l2r.js";import{n as T,r as E,t as D}from"./formErrors-DglFjYkZ.js";var O=[`value`,`aria-invalid`],k={key:0,class:`auth-error`},A=[`disabled`],j=f(h({__name:`LoginView`,setup(f){let h=b(),j=x(),M=d(``),N=d({}),P=d(``),F=o(()=>M.value?_(M.value):``);function I(e){return e?y(e)?``:`شماره موبایل معتبر نیست. (مثال: ۰۹۱۲۱۲۳۴۵۶۷)`:`شماره موبایل را وارد کنید.`}function L(){N.value=T(N.value,`phone`),E(N.value)||(P.value=``)}function R(e){M.value=v(e),L()}function z(){if(!M.value)return;let e=I(M.value);e&&(N.value={...N.value,phone:e})}async function B(){N.value={},P.value=``;let e=v(M.value);M.value=e;let t=I(e);if(t){N.value={phone:t},P.value=D;return}let n=await j.requestOtp(e,{isRegister:!1});n.success?h.push({name:`otp`,query:{phone:e,mode:`login`}}):P.value=n.message??`خطا در ارسال کد تأیید.`}return(o,d)=>{let f=n(`RouterLink`);return r(),p(S,{"back-to":`/welcome`},{default:t(()=>[d[3]||=u(`h1`,{class:`auth-title`},`به نادمی تکس خوش آمدید`,-1),d[4]||=u(`p`,{class:`auth-lead`},`برای ادامه، وارد حساب کاربری خود شوید`,-1),u(`form`,{class:`auth-form`,onSubmit:g(B,[`prevent`])},[a(C,{message:P.value},null,8,[`message`]),u(`label`,{class:e([`auth-field`,{"is-invalid":!!N.value.phone}])},[a(w,{size:18,color:`#64748b`}),u(`input`,{value:F.value,type:`tel`,inputmode:`numeric`,autocomplete:`tel`,maxlength:`11`,placeholder:`شماره موبایل`,"aria-invalid":!!N.value.phone,"aria-label":`شماره موبایل`,onInput:d[0]||=e=>R(e.target.value),onBlur:z},null,40,O)],2),N.value.phone?(r(),c(`p`,k,i(N.value.phone),1)):s(``,!0),u(`button`,{class:`auth-submit`,type:`submit`,disabled:m(j).loading},i(m(j).loading?`در حال ارسال…`:`ورود`),9,A),d[2]||=u(`p`,{class:`auth-or`},[u(`span`,null,`یا`)],-1),a(f,{class:`auth-outline`,to:`/register`},{default:t(()=>[...d[1]||=[l(`ثبت‌نام در نادمی تکس`,-1)]]),_:1})],32)]),_:1})}}}),[[`__scopeId`,`data-v-5764ebe1`]]);export{j as default}; \ No newline at end of file +import{At as e,G as t,L as n,M as r,Pt as i,_ as a,c as o,d as s,f as c,g as l,l as u,nt as d,t as f,u as p,ut as m,v as h}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{l as g}from"./BasicIcon-DPmc0iaK.js";import{d as _,l as v}from"./format-C72AoJ2H.js";import{a as y}from"./validation-Duyyve7l.js";import{C as b,c as x}from"./index-CE4Fw0WE.js";import{t as S}from"./AuthShell-prz1TrpO.js";import{t as C}from"./FormErrorBanner-Ud1D04xf.js";import{t as w}from"./IconPhone-BSof4l2r.js";import{n as T,r as E,t as D}from"./formErrors-DglFjYkZ.js";var O=[`value`,`aria-invalid`],k={key:0,class:`auth-error`},A=[`disabled`],j=f(h({__name:`LoginView`,setup(f){let h=b(),j=x(),M=d(``),N=d({}),P=d(``),F=o(()=>M.value?_(M.value):``);function I(e){return e?y(e)?``:`شماره موبایل معتبر نیست. (مثال: ۰۹۱۲۱۲۳۴۵۶۷)`:`شماره موبایل را وارد کنید.`}function L(){N.value=T(N.value,`phone`),E(N.value)||(P.value=``)}function R(e){M.value=v(e),L()}function z(){if(!M.value)return;let e=I(M.value);e&&(N.value={...N.value,phone:e})}async function B(){N.value={},P.value=``;let e=v(M.value);M.value=e;let t=I(e);if(t){N.value={phone:t},P.value=D;return}let n=await j.requestOtp(e,{isRegister:!1});n.success?h.push({name:`otp`,query:{phone:e,mode:`login`}}):P.value=n.message??`خطا در ارسال کد تأیید.`}return(o,d)=>{let f=n(`RouterLink`);return r(),p(S,{"back-to":`/welcome`},{default:t(()=>[d[3]||=u(`h1`,{class:`auth-title`},`به نادمی تکس خوش آمدید`,-1),d[4]||=u(`p`,{class:`auth-lead`},`برای ادامه، وارد حساب کاربری خود شوید`,-1),u(`form`,{class:`auth-form`,onSubmit:g(B,[`prevent`])},[a(C,{message:P.value},null,8,[`message`]),u(`label`,{class:e([`auth-field`,{"is-invalid":!!N.value.phone}])},[a(w,{size:18,color:`#64748b`}),u(`input`,{value:F.value,type:`tel`,inputmode:`numeric`,autocomplete:`tel`,maxlength:`11`,placeholder:`شماره موبایل`,"aria-invalid":!!N.value.phone,"aria-label":`شماره موبایل`,onInput:d[0]||=e=>R(e.target.value),onBlur:z},null,40,O)],2),N.value.phone?(r(),c(`p`,k,i(N.value.phone),1)):s(``,!0),u(`button`,{class:`auth-submit`,type:`submit`,disabled:m(j).loading},i(m(j).loading?`در حال ارسال…`:`ورود`),9,A),d[2]||=u(`p`,{class:`auth-or`},[u(`span`,null,`یا`)],-1),a(f,{class:`auth-outline`,to:`/register`},{default:t(()=>[...d[1]||=[l(`ثبت‌نام در نادمی تکس`,-1)]]),_:1})],32)]),_:1})}}}),[[`__scopeId`,`data-v-5764ebe1`]]);export{j as default}; \ No newline at end of file diff --git a/dist/assets/OrderDetailView-PxnhEnTG.js b/dist/assets/OrderDetailView-CeMJPWH_.js similarity index 99% rename from dist/assets/OrderDetailView-PxnhEnTG.js rename to dist/assets/OrderDetailView-CeMJPWH_.js index fb00bdb..b1df76a 100644 --- a/dist/assets/OrderDetailView-PxnhEnTG.js +++ b/dist/assets/OrderDetailView-CeMJPWH_.js @@ -1 +1 @@ -import{At as e,F as t,G as n,K as r,M as i,Pt as a,U as o,_ as s,c,d as l,f as u,g as d,i as f,l as p,nt as m,o as ee,t as h,u as g,ut as _,v}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{l as te,s as ne,t as y}from"./BasicIcon-DPmc0iaK.js";import{n as re}from"./dist-Bc4P4ngC.js";import{a as ie,d as b,i as x,n as S,o as C,r as w,u as ae}from"./format-C72AoJ2H.js";import{n as oe,t as se}from"./validation-Duyyve7l.js";import{C as ce,S as le,f as ue,h as de,m as fe,o as T,r as E}from"./index-DYwnTikp.js";import{n as pe}from"./constants-ptWoEwwP.js";import{t as D}from"./IconChevronBack-BsHmfODG.js";import{t as me}from"./FormErrorBanner-Ud1D04xf.js";import{n as O,r as k,t as he}from"./formErrors-DglFjYkZ.js";import{n as ge,r as _e,t as A}from"./orderInvoice-DPYzRyAs.js";import{t as ve}from"./CurrencyInput-Cu2dRPFo.js";import{t as ye}from"./PersianDateInput-BcTTynHd.js";import{t as be}from"./TimeInput-D6PzFPdF.js";import{t as xe}from"./AppSelect-CbWqXW3b.js";var j={cash:`تسویه نقدی`,check:`تسویه چکی`,cash_check:`تسویه نقدی-چکی`};function M(e){return e?j[e]??e:`در انتظار انتخاب مشتری`}function N(e){return e===`cash`||e===`cash_check`}function P(e){return e===`check`||e===`cash_check`}var F=[`awaiting_cash_payment`,`cash_invoice_issued`,`cash_payment_submitted`,`awaiting_cash_confirmation`];function Se(e){return N(e.settlementType)?(e.settlementType,F.includes(e.status)):!1}function Ce(e){return P(e.settlementType)?e.settlementType===`check`||!F.includes(e.status):!1}var I={submitted:0,awaiting_review:1,pricing:2,needs_correction:1,awaiting_settlement:3,awaiting_settlement_fix:3,cash_in_progress:4,cash_invoice_issued:4,awaiting_cash_payment:4,cash_payment_submitted:4,check_in_progress:4,awaiting_cash_confirmation:5,awaiting_check_review:5,check_needs_fix:5,check_rejected:5,checks_approved:6,cash_confirmed:6,final_approved:7,preparing:8,ready_to_ship:9,shipped:10,delivered:11,expired:3,cancelled:0,rejected:1},L={submitted:{variant:`waiting`,title:`پیش‌سفارش ثبت شد`,description:`سفارش شما برای بررسی و قیمت‌گذاری به مدیریت ارسال شد. پس از صدور فاکتور می‌توانید روش تسویه (نقد یا چک) را انتخاب کنید.`},awaiting_review:{variant:`waiting`,title:`در انتظار بررسی مدیریت`,description:`پیش‌سفارش شما در صف بررسی است. پس از قیمت‌گذاری و صدور فاکتور، از طریق همین صفحه برای انتخاب تسویه مطلع می‌شوید.`},pricing:{variant:`waiting`,title:`در حال قیمت‌گذاری`,description:`مدیریت در حال تعیین مبلغ نهایی فاکتور است. تا قبل از صدور فاکتور امکان ثبت چک یا پرداخت وجود ندارد.`},awaiting_settlement:{variant:`info`,title:`فاکتور آماده است`,description:`مبلغ فاکتور مشخص شده. لطفاً روش تسویه را انتخاب کنید و مسیر پرداخت را ادامه دهید.`},awaiting_settlement_fix:{variant:`info`,title:`نیاز به اصلاح تسویه`,description:`لطفاً روش تسویه یا اطلاعات پرداخت را اصلاح کنید.`},cash_invoice_issued:{variant:`info`,title:`فاکتور نقدی صادر شد`,description:`مبلغ را به حساب‌های اعلام‌شده واریز و رسید پرداخت را ثبت کنید.`},awaiting_cash_payment:{variant:`info`,title:`در انتظار پرداخت نقدی`,description:`لطفاً مبلغ فاکتور را واریز و رسید پرداخت را ثبت کنید.`},cash_payment_submitted:{variant:`waiting`,title:`رسید ثبت شد`,description:`رسید پرداخت شما دریافت شد و در صف بررسی مدیریت است.`},awaiting_cash_confirmation:{variant:`waiting`,title:`در انتظار تأیید پرداخت`,description:`رسید پرداخت در حال بررسی است. نتیجه به‌زودی اعلام می‌شود.`},awaiting_check_review:{variant:`waiting`,title:`در حال بررسی چک‌ها`,description:`چک‌های ثبت‌شده در حال بررسی هستند. نتیجه بررسی به‌زودی اعلام می‌شود.`},checks_approved:{variant:`success`,title:`چک‌ها تأیید شده`,description:`چک‌های شما تأیید شد. سفارش در انتظار تأیید نهایی مدیریت است و پس از آن وارد آماده‌سازی می‌شود.`},cash_confirmed:{variant:`success`,title:`پرداخت تأیید شد`,description:`رسید پرداخت شما تأیید شد و سفارش وارد مراحل بعدی می‌شود.`},final_approved:{variant:`success`,title:`تأیید نهایی`,description:`سفارش شما تأیید نهایی شد و آماده آماده‌سازی است.`},preparing:{variant:`info`,title:`در حال آماده‌سازی`,description:`سفارش شما در انبار در حال آماده‌سازی است.`},ready_to_ship:{variant:`info`,title:`آماده ارسال`,description:`سفارش آماده ارسال است و به‌زودی تحویل باربری می‌شود.`},shipped:{variant:`info`,title:`ارسال شده`,description:`سفارش ارسال شده است. جزئیات بارنامه را می‌توانید مشاهده کنید.`},delivered:{variant:`success`,title:`تحویل شده`,description:`سفارش با موفقیت تحویل داده شد.`},expired:{variant:`waiting`,title:`فاکتور منقضی شده`,description:`مهلت پرداخت این فاکتور به پایان رسیده است. برای ادامه با پشتیبانی یا مدیریت هماهنگ کنید.`}};function R(e){return e===`cash`?{payment:`ثبت رسید پرداخت`,review:`بررسی پرداخت نقدی`,approved:`پرداخت تأیید شده`}:e===`check`?{payment:`ثبت چک`,review:`در حال بررسی چک‌ها`,approved:`چک‌ها تأیید شده`}:e===`cash_check`?{payment:`ثبت رسید نقدی`,review:`بررسی چک‌ها`,approved:`چک‌ها تأیید شده`}:{payment:`ثبت پرداخت / چک`,review:`بررسی پرداخت / چک`,approved:`تأیید پرداخت`}}function z(e){let t=R(e.settlementType);return pe.map(e=>e.status===`check_in_progress`?{...e,label:t.payment}:e.status===`awaiting_check_review`?{...e,label:t.review}:e.status===`checks_approved`?{...e,label:t.approved}:e)}function B(e){return I[e]??0}function we(e){return L[e]??null}var V={awaiting_settlement:[`awaiting_settlement`,`awaiting_settlement_fix`],check_in_progress:[`check_in_progress`,`cash_in_progress`,`cash_invoice_issued`,`awaiting_cash_payment`,`cash_payment_submitted`],awaiting_check_review:[`awaiting_check_review`,`awaiting_cash_confirmation`,`check_needs_fix`,`check_rejected`],checks_approved:[`checks_approved`,`cash_confirmed`],pricing:[`pricing`]};function H(e,t){if(t===`submitted`)return e.createdAt;let n=V[t]??[t];return[...e.statusHistory].reverse().find(e=>n.includes(e.toStatus))?.changedAt??null}function Te(e){return e===`shipped`?`مشاهده جزئیات و بارنامه`:[`checks_approved`,`cash_confirmed`,`delivered`,`final_approved`].includes(e)?`مشاهده جزئیات`:`مشاهده جزئیات سفارش`}var U={class:`tracking-timeline`},W={class:`tracking-timeline__marker-wrap`},G={class:`tracking-timeline__marker`},K={key:0,class:`tracking-timeline__check`},q={class:`tracking-timeline__label`},Ee={key:0,class:`tracking-timeline__time`},De=h(v({__name:`OrderTrackingTimeline`,props:{order:{}},setup(n){let r=n,o=c(()=>z(r.order)),s=c(()=>B(r.order.status));function d(e){return e(i(),u(`div`,U,[(i(!0),u(f,null,t(o.value,(t,n)=>(i(),u(`div`,{key:t.status,class:e([`tracking-timeline__item`,`tracking-timeline__item--${d(n)}`])},[p(`div`,W,[r[0]||=p(`div`,{class:`tracking-timeline__line`,"aria-hidden":`true`},null,-1),p(`div`,G,[d(n)===`done`?(i(),u(`span`,K,`✓`)):l(``,!0)])]),p(`div`,{class:e([`tracking-timeline__content`,{"tracking-timeline__content--current":d(n)===`current`}])},[p(`strong`,q,a(t.label),1),m(t.status)?(i(),u(`span`,Ee,a(m(t.status)),1)):l(``,!0)],2)],2))),128))]))}}),[[`__scopeId`,`data-v-603b6d66`]]),J={class:`status-hero__icon`,"aria-hidden":`true`},Oe={class:`status-hero__copy`},ke={class:`status-hero__title`},Ae={key:0,class:`status-hero__desc`},je=h(v({__name:`OrderStatusHero`,props:{config:{}},setup(t){let n={waiting:`vuesax-linear:timer-1`,success:`vuesax-linear:tick-circle`,info:`vuesax-linear:info-circle`,none:`vuesax-linear:info-circle`};return(r,o)=>t.config.variant===`none`?l(``,!0):(i(),u(`div`,{key:0,class:e([`status-hero`,`status-hero--${t.config.variant}`])},[p(`div`,J,[s(y,{icon:n[t.config.variant],size:28,"stroke-width":1.5},null,8,[`icon`])]),p(`div`,Oe,[p(`h2`,ke,a(t.config.title),1),t.config.description?(i(),u(`p`,Ae,a(t.config.description),1)):l(``,!0)])],2))}}),[[`__scopeId`,`data-v-896684d9`]]),Me={class:`tracking-summary`},Y={class:`tracking-summary__row`},X={class:`tracking-summary__row`},Z={class:`tracking-summary__row`},Ne={class:`tracking-summary__row`},Q={key:0,class:`tracking-summary__row`},Pe={key:1,class:`tracking-summary__row`},Fe=h(v({__name:`OrderTrackingSummary`,props:{order:{}},setup(e){let t=e,n=c(()=>t.order.checks?.reduce((e,t)=>e+t.amount,0)??0);return(t,r)=>(i(),u(`div`,Me,[p(`div`,Y,[r[0]||=p(`span`,null,`مبلغ فاکتور`,-1),p(`strong`,null,a(e.order.finalAmount?_(C)(e.order.finalAmount):`در انتظار قیمت‌گذاری`),1)]),p(`div`,X,[r[1]||=p(`span`,null,`نوع تسویه`,-1),p(`strong`,null,a(_(M)(e.order.settlementType)),1)]),_(P)(e.order.settlementType)&&e.order.checks?.length?(i(),u(f,{key:0},[p(`div`,Z,[r[2]||=p(`span`,null,`تعداد چک‌ها`,-1),p(`strong`,null,a(_(b)(String(e.order.checks.length)))+` فقره`,1)]),p(`div`,Ne,[r[3]||=p(`span`,null,`مجموع مبلغ چک‌ها`,-1),p(`strong`,null,a(_(S)(n.value)),1)]),e.order.checkRassDays==null?l(``,!0):(i(),u(`div`,Q,[r[4]||=p(`span`,null,`رأس چک (تقریبی)`,-1),p(`strong`,null,a(_(b)(String(e.order.checkRassDays)))+` روز`,1)]))],64)):l(``,!0),_(N)(e.order.settlementType)&&e.order.cashReceipt?(i(),u(`div`,Pe,[r[5]||=p(`span`,null,`مبلغ واریزی`,-1),p(`strong`,null,a(_(S)(e.order.cashReceipt.amount)),1)])):l(``,!0)]))}}),[[`__scopeId`,`data-v-05777d03`]]),Ie={key:0,class:`order-detail-page`},Le={class:`order-detail-page__nav mobile-only`},Re={class:`order-detail-page__nav-center`},ze={class:`order-detail-page__title`},Be={key:0,class:`order-detail-page__order-id`},Ve={type:`button`,class:`nav-btn nav-btn--ghost`,"aria-hidden":`true`,tabindex:`-1`},He={class:`desktop-page__head desktop-only order-detail-page__desktop-head`},Ue={class:`desktop-page__subtitle`},We={class:`order-detail-page__body`},Ge={key:0,class:`order-info-card mobile-only`},Ke={class:`order-info-card__head`},qe={class:`order-info-card__number`},Je={class:`order-info-card__row`},Ye={class:`order-info-card__value order-info-card__value--accent`},Xe={class:`order-info-card__row`},Ze={class:`order-info-card__value order-info-card__value--accent`},Qe={class:`order-info-card__row`},$e={class:`order-info-card__value order-info-card__value--accent`},et={class:`order-info-card__row order-info-card__row--last`},tt={class:`order-info-card__amount`},nt={key:1,class:`order-next-action`},rt={key:2,class:`order-detail-page__tracking`},it={class:`order-detail-page__tracking-hero`},at={class:`tracking-card tracking-card--hero`},ot={class:`order-detail-page__tracking-main`},st={key:0,class:`order-next-action`},ct={class:`tracking-card tracking-collapse`},lt=[`aria-expanded`],ut={class:`tracking-collapse__body`},dt={class:`tracking-collapse__section tracking-collapse__section--flush`},ft={class:`tracking-card tracking-collapse`},pt=[`aria-expanded`],mt={class:`tracking-collapse__body`},ht={class:`tracking-collapse__section`},gt={class:`item-row__meta`},_t={class:`item-row item-row--summary`},vt={key:0,class:`tracking-alert`},yt={class:`tracking-collapse__section`},bt={dir:`ltr`,class:`bank-row__meta`},xt={dir:`ltr`,class:`bank-row__meta`},St={key:2,class:`tracking-collapse__section`},Ct={class:`detail-row`},wt={key:0,class:`detail-row`},Tt={class:`tracking-collapse__section`},Et={class:`rass-display`},Dt={key:0,class:`rass-date`},Ot={class:`detail-row`},kt={class:`detail-row`},At=[`src`],jt={key:0,class:`order-detail-page__footer mobile-only`},Mt={class:`receipt-modal card`,role:`dialog`,"aria-modal":`true`,"aria-labelledby":`receipt-modal-title`},Nt={class:`receipt-modal__header`},Pt={class:`receipt-modal__body`},Ft={class:`form-group`},It=[`src`],Lt={key:1,class:`upload-box__placeholder`},Rt={key:0,class:`input-error-text`},zt={key:1,class:`page empty-state`},$=h(v({__name:`OrderDetailView`,setup(h){let v=le(),y=ce(),b=ue(),pe=re(`(min-width: 768px)`),j=c(()=>v.params.id),F=c(()=>b.getOrderById(j.value)),I=m(v.query.track===`1`||v.query.receipt===`1`),L=m(!1),R=m(!0),z=m(v.query.receipt===`1`),B=m(``),V=m(``),H=m(``),U=m(``),W=m(``),G=m({}),K=m(``);o([F,()=>v.query.receipt],([e])=>{let t=v.query.receipt===`1`;if(t&&A(e)){L.value=!0,z.value=!0;return}if(t&&e&&!A(e)){L.value=!1;let{receipt:e,...t}=v.query;y.replace({query:{...t,track:`1`}})}},{immediate:!0}),o(pe,e=>{e&&(I.value=!0,R.value=!0,z.value=!0,v.query.track!==`1`&&v.query.receipt!==`1`&&y.replace({query:{...v.query,track:`1`}}))},{immediate:!0}),o(B,()=>{G.value=O(G.value,`receiptAmount`),k(G.value)||(K.value=``)}),o(V,()=>{G.value=O(G.value,`receiptDate`),k(G.value)||(K.value=``)}),o(U,()=>{G.value=O(G.value,`destinationAccountId`),k(G.value)||(K.value=``)});let q=m([]);o(()=>F.value?.id,async e=>{if(!e||!F.value){q.value=[];return}try{q.value=await b.getBankAccountsForOrder(F.value)}catch{q.value=[]}},{immediate:!0});let Ee=c(()=>[{value:``,label:`انتخاب کنید`},...q.value.map(e=>({value:e.id,label:`${e.bankName} — ${e.cardNumber}`}))]);o(()=>j.value,async e=>{if(e&&!b.getOrderById(e))try{await b.fetchOrder(e)}catch{}},{immediate:!0});let J=c(()=>F.value?we(F.value.status):null),Oe=c(()=>F.value?Te(F.value.status):`مشاهده جزئیات سفارش`);function ke(e){return M(e)}function Ae(e){return N(e.settlementType)?Se(e)||!!e.cashReceipt:!1}function Me(e){return P(e.settlementType)?Ce(e)||(e.checks?.length??0)>0:!1}let Y=c(()=>{let e=F.value;if(!e)return null;let t=ge(e);switch(e.status){case`awaiting_settlement`:case`awaiting_settlement_fix`:return t?{label:`انتخاب روش تسویه`,to:`/orders/${e.id}/settlement`}:null;case`check_in_progress`:return t?{label:`ثبت چک‌ها`,to:`/orders/${e.id}/check-mode`}:null;case`check_needs_fix`:case`check_rejected`:return t?{label:`اصلاح چک‌ها`,to:`/orders/${e.id}/check-list`}:null;case`awaiting_cash_payment`:case`cash_invoice_issued`:return t?{label:`ثبت رسید پرداخت`,receipt:!0}:null;default:return null}});function X(){if(!A(F.value)){K.value=`در وضعیت فعلی سفارش امکان ثبت رسید وجود ندارد`;return}I.value=!0,z.value=!0,L.value=!0}function Z(){let e=Y.value;if(e){if(e.receipt){X();return}e.to&&y.push(e.to)}}function Ne(){I.value=!0,z.value=!1,y.replace({query:{track:`1`}})}function Q(){z.value=!z.value}function Pe(){R.value=!R.value}async function $(e){let t=e.target.files?.[0];if(!t)return;let n=oe(t);if(!n.valid){G.value={...G.value,receiptImage:n.message??`خطا`};return}G.value=O(G.value,`receiptImage`),W.value=await se(t)}async function Bt(){if(!F.value)return;if(G.value={},K.value=``,!A(F.value)){K.value=`در وضعیت فعلی سفارش امکان ثبت رسید وجود ندارد`;return}let e=ae(B.value),t={};if(e||(t.receiptAmount=`مبلغ واریزی الزامی است.`),V.value||(t.receiptDate=`تاریخ واریز الزامی است.`),U.value||(t.destinationAccountId=`حساب مقصد را انتخاب کنید.`),k(t)){G.value=t,K.value=he;return}try{await b.submitCashReceipt(F.value.id,{amount:e,transferDate:V.value,transferTime:H.value||`12:00`,destinationAccountId:U.value,receiptImage:W.value||void 0}),L.value=!1,G.value={},K.value=``}catch(e){K.value=e instanceof Error?e.message:`ثبت رسید ناموفق بود.`}}return(o,c)=>F.value?(i(),u(`div`,Ie,[p(`header`,Le,[p(`button`,{type:`button`,class:`nav-btn`,"aria-label":`بازگشت`,onClick:c[0]||=e=>_(y).push(`/orders`)},[s(D,{size:20})]),p(`div`,Re,[p(`h1`,ze,a(I.value?`پیگیری سفارش`:`جزئیات سفارش`),1),I.value?(i(),u(`p`,Be,a(F.value.orderNumber),1)):l(``,!0)]),p(`button`,Ve,[s(D,{size:18,class:`nav-btn__flip`})])]),p(`header`,He,[p(`button`,{type:`button`,class:`order-detail-back`,onClick:c[1]||=e=>_(y).push(`/orders`)},[s(D,{size:18}),c[9]||=d(` بازگشت به سفارش‌ها `,-1)]),c[10]||=p(`h1`,{class:`desktop-page__title`},`پیگیری سفارش`,-1),p(`p`,Ue,a(F.value.orderNumber)+` · `+a(F.value.companyName),1)]),p(`div`,We,[I.value?l(``,!0):(i(),u(`div`,Ge,[p(`div`,Ke,[c[11]||=p(`span`,{class:`order-info-card__label`},`شماره سفارش`,-1),p(`strong`,qe,a(F.value.orderNumber),1)]),p(`div`,Je,[c[12]||=p(`span`,{class:`order-info-card__key`},`تأمین‌کننده`,-1),p(`span`,Ye,a(F.value.companyName),1)]),p(`div`,Xe,[c[13]||=p(`span`,{class:`order-info-card__key`},`تاریخ ثبت`,-1),p(`span`,Ze,a(_(x)(F.value.createdAt)),1)]),p(`div`,Qe,[c[14]||=p(`span`,{class:`order-info-card__key`},`نوع تسویه`,-1),p(`span`,$e,a(ke(F.value.settlementType)),1)]),p(`div`,et,[c[15]||=p(`span`,{class:`order-info-card__key`},`مبلغ فاکتور`,-1),p(`strong`,tt,a(F.value.finalAmount?_(C)(F.value.finalAmount):`پس از قیمت‌گذاری مدیریت`),1)])])),Y.value&&!I.value?(i(),u(`div`,nt,[c[16]||=p(`span`,{class:`order-next-action__text`},`برای ادامه سفارش، این مرحله باقی مانده است.`,-1),s(E,{class:`order-next-action__btn`,onClick:Z},{default:n(()=>[d(a(Y.value.label),1)]),_:1})])):l(``,!0),I.value?(i(),u(`div`,rt,[p(`section`,it,[p(`div`,at,[J.value?(i(),g(je,{key:0,config:J.value},null,8,[`config`])):l(``,!0),s(Fe,{order:F.value},null,8,[`order`])])]),p(`section`,ot,[Y.value?(i(),u(`div`,st,[c[17]||=p(`span`,{class:`order-next-action__text`},`برای ادامه سفارش، این مرحله باقی مانده است.`,-1),s(E,{class:`order-next-action__btn`,onClick:Z},{default:n(()=>[d(a(Y.value.label),1)]),_:1})])):l(``,!0),p(`div`,ct,[p(`button`,{type:`button`,class:`tracking-collapse__trigger`,"aria-expanded":R.value,onClick:Pe},[c[18]||=p(`span`,null,`پیگیری وضعیت`,-1),s(T,{size:18,class:e([`tracking-collapse__chevron`,{"tracking-collapse__chevron--open":R.value}]),"aria-hidden":`true`},null,8,[`class`])],8,lt),r(p(`div`,ut,[p(`div`,dt,[s(De,{order:F.value},null,8,[`order`])])],512),[[ne,R.value]])]),p(`div`,ft,[p(`button`,{type:`button`,class:`tracking-collapse__trigger`,"aria-expanded":z.value,onClick:Q},[p(`span`,null,a(Oe.value),1),s(T,{size:18,class:e([`tracking-collapse__chevron`,{"tracking-collapse__chevron--open":z.value}]),"aria-hidden":`true`},null,8,[`class`])],8,pt),r(p(`div`,mt,[p(`div`,ht,[c[20]||=p(`h3`,{class:`tracking-card__title`},`اقلام سفارش`,-1),(i(!0),u(f,null,t(F.value.items,e=>(i(),u(`div`,{key:e.id,class:`item-row`},[p(`div`,null,[p(`strong`,null,a(e.productName),1),p(`p`,gt,`کالیته `+a(e.catalogCode)+` · `+a(e.color),1)]),p(`span`,null,a(_(ie)(_(_e)(e))),1)]))),128)),p(`div`,_t,[c[19]||=p(`span`,null,`مجموع متراژ`,-1),p(`strong`,null,a(_(ie)(F.value.totalMeterage)),1)])]),Ae(F.value)?(i(),u(f,{key:0},[F.value.cashInvoiceExpiresAt?(i(),u(`div`,vt,` اعتبار فاکتور: `+a(_(x)(F.value.cashInvoiceExpiresAt)),1)):l(``,!0),p(`div`,yt,[c[21]||=p(`h3`,{class:`tracking-card__title`},`حساب‌های بانکی`,-1),(i(!0),u(f,null,t(q.value,e=>(i(),u(`div`,{key:e.id,class:`bank-row`},[p(`strong`,null,a(e.bankName),1),p(`p`,bt,a(e.cardNumber),1),p(`p`,xt,a(e.iban),1)]))),128))]),Y.value?.receipt?(i(),g(E,{key:1,block:``,onClick:X},{default:n(()=>[d(a(F.value.cashReceipt?`ثبت رسید جدید`:`ثبت رسید پرداخت`),1)]),_:1})):l(``,!0),F.value.cashReceipt?(i(),u(`div`,St,[c[24]||=p(`h3`,{class:`tracking-card__title`},`رسید ثبت‌شده`,-1),p(`div`,Ct,[c[22]||=p(`span`,null,`مبلغ`,-1),p(`span`,null,a(_(S)(F.value.cashReceipt.amount)),1)]),F.value.cashReceipt.trackingNumber?(i(),u(`div`,wt,[c[23]||=p(`span`,null,`شماره پیگیری`,-1),p(`span`,null,a(F.value.cashReceipt.trackingNumber),1)])):l(``,!0)])):l(``,!0)],64)):l(``,!0),Me(F.value)&&F.value.checks?(i(),u(f,{key:1},[p(`div`,Tt,[c[25]||=p(`h3`,{class:`tracking-card__title`},`رأس چک‌ها`,-1),p(`div`,Et,a(F.value.checkRassDays)+` روز`,1),F.value.checkRassDate?(i(),u(`p`,Dt,` تاریخ رأس: `+a(_(w)(F.value.checkRassDate)),1)):l(``,!0)]),(i(!0),u(f,null,t(F.value.checks,(e,t)=>(i(),u(`div`,{key:e.id,class:`tracking-collapse__section`},[p(`strong`,null,`چک `+a(t+1),1),p(`div`,Ot,[c[26]||=p(`span`,null,`مبلغ`,-1),p(`span`,null,a(_(S)(e.amount)),1)]),p(`div`,kt,[c[27]||=p(`span`,null,`سررسید`,-1),p(`span`,null,a(_(w)(e.dueDate))+` (`+a(_(fe)(e.dueDate,_(de)(F.value)))+` روز)`,1)]),e.frontImage?(i(),u(`img`,{key:0,src:e.frontImage,class:`check-img`,alt:`چک`},null,8,At)):l(``,!0)]))),128))],64)):l(``,!0)],512),[[ne,z.value]])])])])):l(``,!0)]),I.value?l(``,!0):(i(),u(`div`,jt,[s(E,{block:``,onClick:Ne},{default:n(()=>[...c[28]||=[d(`مشاهده جزئیات و پیگیری`,-1)]]),_:1})])),(i(),g(ee,{to:`body`},[L.value?(i(),u(`div`,{key:0,class:`receipt-modal-overlay`,onClick:c[7]||=te(e=>L.value=!1,[`self`])},[p(`div`,Mt,[p(`header`,Nt,[c[29]||=p(`h3`,{id:`receipt-modal-title`,class:`receipt-modal__title`},`ثبت رسید پرداخت`,-1),p(`button`,{type:`button`,class:`receipt-modal__close`,"aria-label":`بستن`,onClick:c[2]||=e=>L.value=!1},` × `)]),p(`div`,Pt,[s(me,{message:K.value},null,8,[`message`]),s(ve,{modelValue:B.value,"onUpdate:modelValue":c[3]||=e=>B.value=e,label:`مبلغ واریزی`,error:G.value.receiptAmount},null,8,[`modelValue`,`error`]),s(ye,{modelValue:V.value,"onUpdate:modelValue":c[4]||=e=>V.value=e,label:`تاریخ واریز`,error:G.value.receiptDate},null,8,[`modelValue`,`error`]),s(be,{modelValue:H.value,"onUpdate:modelValue":c[5]||=e=>H.value=e,label:`ساعت واریز`,placeholder:`مثلاً ۱۴:۳۰`,hint:`با گام ۵ دقیقه`},null,8,[`modelValue`]),s(xe,{modelValue:U.value,"onUpdate:modelValue":c[6]||=e=>U.value=e,label:`حساب مقصد`,"aria-label":`حساب مقصد`,options:Ee.value,error:G.value.destinationAccountId},null,8,[`modelValue`,`options`,`error`]),p(`div`,Ft,[c[30]||=p(`label`,{class:`form-label`},`تصویر رسید`,-1),p(`label`,{class:e([`upload-box`,{"upload-box--error":G.value.receiptImage}])},[p(`input`,{type:`file`,accept:`image/*`,class:`upload-box__input`,onChange:$},null,32),W.value?(i(),u(`img`,{key:0,src:W.value,class:`upload-box__preview`,alt:`تصویر رسید`},null,8,It)):(i(),u(`span`,Lt,`انتخاب تصویر رسید`))],2),G.value.receiptImage?(i(),u(`p`,Rt,a(G.value.receiptImage),1)):l(``,!0)]),s(E,{block:``,class:`mt-4`,onClick:Bt},{default:n(()=>[...c[31]||=[d(`ثبت رسید`,-1)]]),_:1})])])])):l(``,!0)]))])):(i(),u(`div`,zt,[c[33]||=p(`p`,null,`سفارش یافت نشد`,-1),s(E,{onClick:c[8]||=e=>_(y).push(`/orders`)},{default:n(()=>[...c[32]||=[d(`بازگشت`,-1)]]),_:1})]))}}),[[`__scopeId`,`data-v-a56bec50`]]);export{$ as default}; \ No newline at end of file +import{At as e,F as t,G as n,K as r,M as i,Pt as a,U as o,_ as s,c,d as l,f as u,g as d,i as f,l as p,nt as m,o as ee,t as h,u as g,ut as _,v}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{l as te,s as ne,t as y}from"./BasicIcon-DPmc0iaK.js";import{n as re}from"./dist-Bc4P4ngC.js";import{a as ie,d as b,i as x,n as S,o as C,r as w,u as ae}from"./format-C72AoJ2H.js";import{n as oe,t as se}from"./validation-Duyyve7l.js";import{C as ce,S as le,f as ue,h as de,m as fe,o as T,r as E}from"./index-CE4Fw0WE.js";import{n as pe}from"./constants-ptWoEwwP.js";import{t as D}from"./IconChevronBack-BsHmfODG.js";import{t as me}from"./FormErrorBanner-Ud1D04xf.js";import{n as O,r as k,t as he}from"./formErrors-DglFjYkZ.js";import{n as ge,r as _e,t as A}from"./orderInvoice-DPYzRyAs.js";import{t as ve}from"./CurrencyInput-Cu2dRPFo.js";import{t as ye}from"./PersianDateInput-BcTTynHd.js";import{t as be}from"./TimeInput-D6PzFPdF.js";import{t as xe}from"./AppSelect-CbWqXW3b.js";var j={cash:`تسویه نقدی`,check:`تسویه چکی`,cash_check:`تسویه نقدی-چکی`};function M(e){return e?j[e]??e:`در انتظار انتخاب مشتری`}function N(e){return e===`cash`||e===`cash_check`}function P(e){return e===`check`||e===`cash_check`}var F=[`awaiting_cash_payment`,`cash_invoice_issued`,`cash_payment_submitted`,`awaiting_cash_confirmation`];function Se(e){return N(e.settlementType)?(e.settlementType,F.includes(e.status)):!1}function Ce(e){return P(e.settlementType)?e.settlementType===`check`||!F.includes(e.status):!1}var I={submitted:0,awaiting_review:1,pricing:2,needs_correction:1,awaiting_settlement:3,awaiting_settlement_fix:3,cash_in_progress:4,cash_invoice_issued:4,awaiting_cash_payment:4,cash_payment_submitted:4,check_in_progress:4,awaiting_cash_confirmation:5,awaiting_check_review:5,check_needs_fix:5,check_rejected:5,checks_approved:6,cash_confirmed:6,final_approved:7,preparing:8,ready_to_ship:9,shipped:10,delivered:11,expired:3,cancelled:0,rejected:1},L={submitted:{variant:`waiting`,title:`پیش‌سفارش ثبت شد`,description:`سفارش شما برای بررسی و قیمت‌گذاری به مدیریت ارسال شد. پس از صدور فاکتور می‌توانید روش تسویه (نقد یا چک) را انتخاب کنید.`},awaiting_review:{variant:`waiting`,title:`در انتظار بررسی مدیریت`,description:`پیش‌سفارش شما در صف بررسی است. پس از قیمت‌گذاری و صدور فاکتور، از طریق همین صفحه برای انتخاب تسویه مطلع می‌شوید.`},pricing:{variant:`waiting`,title:`در حال قیمت‌گذاری`,description:`مدیریت در حال تعیین مبلغ نهایی فاکتور است. تا قبل از صدور فاکتور امکان ثبت چک یا پرداخت وجود ندارد.`},awaiting_settlement:{variant:`info`,title:`فاکتور آماده است`,description:`مبلغ فاکتور مشخص شده. لطفاً روش تسویه را انتخاب کنید و مسیر پرداخت را ادامه دهید.`},awaiting_settlement_fix:{variant:`info`,title:`نیاز به اصلاح تسویه`,description:`لطفاً روش تسویه یا اطلاعات پرداخت را اصلاح کنید.`},cash_invoice_issued:{variant:`info`,title:`فاکتور نقدی صادر شد`,description:`مبلغ را به حساب‌های اعلام‌شده واریز و رسید پرداخت را ثبت کنید.`},awaiting_cash_payment:{variant:`info`,title:`در انتظار پرداخت نقدی`,description:`لطفاً مبلغ فاکتور را واریز و رسید پرداخت را ثبت کنید.`},cash_payment_submitted:{variant:`waiting`,title:`رسید ثبت شد`,description:`رسید پرداخت شما دریافت شد و در صف بررسی مدیریت است.`},awaiting_cash_confirmation:{variant:`waiting`,title:`در انتظار تأیید پرداخت`,description:`رسید پرداخت در حال بررسی است. نتیجه به‌زودی اعلام می‌شود.`},awaiting_check_review:{variant:`waiting`,title:`در حال بررسی چک‌ها`,description:`چک‌های ثبت‌شده در حال بررسی هستند. نتیجه بررسی به‌زودی اعلام می‌شود.`},checks_approved:{variant:`success`,title:`چک‌ها تأیید شده`,description:`چک‌های شما تأیید شد. سفارش در انتظار تأیید نهایی مدیریت است و پس از آن وارد آماده‌سازی می‌شود.`},cash_confirmed:{variant:`success`,title:`پرداخت تأیید شد`,description:`رسید پرداخت شما تأیید شد و سفارش وارد مراحل بعدی می‌شود.`},final_approved:{variant:`success`,title:`تأیید نهایی`,description:`سفارش شما تأیید نهایی شد و آماده آماده‌سازی است.`},preparing:{variant:`info`,title:`در حال آماده‌سازی`,description:`سفارش شما در انبار در حال آماده‌سازی است.`},ready_to_ship:{variant:`info`,title:`آماده ارسال`,description:`سفارش آماده ارسال است و به‌زودی تحویل باربری می‌شود.`},shipped:{variant:`info`,title:`ارسال شده`,description:`سفارش ارسال شده است. جزئیات بارنامه را می‌توانید مشاهده کنید.`},delivered:{variant:`success`,title:`تحویل شده`,description:`سفارش با موفقیت تحویل داده شد.`},expired:{variant:`waiting`,title:`فاکتور منقضی شده`,description:`مهلت پرداخت این فاکتور به پایان رسیده است. برای ادامه با پشتیبانی یا مدیریت هماهنگ کنید.`}};function R(e){return e===`cash`?{payment:`ثبت رسید پرداخت`,review:`بررسی پرداخت نقدی`,approved:`پرداخت تأیید شده`}:e===`check`?{payment:`ثبت چک`,review:`در حال بررسی چک‌ها`,approved:`چک‌ها تأیید شده`}:e===`cash_check`?{payment:`ثبت رسید نقدی`,review:`بررسی چک‌ها`,approved:`چک‌ها تأیید شده`}:{payment:`ثبت پرداخت / چک`,review:`بررسی پرداخت / چک`,approved:`تأیید پرداخت`}}function z(e){let t=R(e.settlementType);return pe.map(e=>e.status===`check_in_progress`?{...e,label:t.payment}:e.status===`awaiting_check_review`?{...e,label:t.review}:e.status===`checks_approved`?{...e,label:t.approved}:e)}function B(e){return I[e]??0}function we(e){return L[e]??null}var V={awaiting_settlement:[`awaiting_settlement`,`awaiting_settlement_fix`],check_in_progress:[`check_in_progress`,`cash_in_progress`,`cash_invoice_issued`,`awaiting_cash_payment`,`cash_payment_submitted`],awaiting_check_review:[`awaiting_check_review`,`awaiting_cash_confirmation`,`check_needs_fix`,`check_rejected`],checks_approved:[`checks_approved`,`cash_confirmed`],pricing:[`pricing`]};function H(e,t){if(t===`submitted`)return e.createdAt;let n=V[t]??[t];return[...e.statusHistory].reverse().find(e=>n.includes(e.toStatus))?.changedAt??null}function Te(e){return e===`shipped`?`مشاهده جزئیات و بارنامه`:[`checks_approved`,`cash_confirmed`,`delivered`,`final_approved`].includes(e)?`مشاهده جزئیات`:`مشاهده جزئیات سفارش`}var U={class:`tracking-timeline`},W={class:`tracking-timeline__marker-wrap`},G={class:`tracking-timeline__marker`},K={key:0,class:`tracking-timeline__check`},q={class:`tracking-timeline__label`},Ee={key:0,class:`tracking-timeline__time`},De=h(v({__name:`OrderTrackingTimeline`,props:{order:{}},setup(n){let r=n,o=c(()=>z(r.order)),s=c(()=>B(r.order.status));function d(e){return e(i(),u(`div`,U,[(i(!0),u(f,null,t(o.value,(t,n)=>(i(),u(`div`,{key:t.status,class:e([`tracking-timeline__item`,`tracking-timeline__item--${d(n)}`])},[p(`div`,W,[r[0]||=p(`div`,{class:`tracking-timeline__line`,"aria-hidden":`true`},null,-1),p(`div`,G,[d(n)===`done`?(i(),u(`span`,K,`✓`)):l(``,!0)])]),p(`div`,{class:e([`tracking-timeline__content`,{"tracking-timeline__content--current":d(n)===`current`}])},[p(`strong`,q,a(t.label),1),m(t.status)?(i(),u(`span`,Ee,a(m(t.status)),1)):l(``,!0)],2)],2))),128))]))}}),[[`__scopeId`,`data-v-603b6d66`]]),J={class:`status-hero__icon`,"aria-hidden":`true`},Oe={class:`status-hero__copy`},ke={class:`status-hero__title`},Ae={key:0,class:`status-hero__desc`},je=h(v({__name:`OrderStatusHero`,props:{config:{}},setup(t){let n={waiting:`vuesax-linear:timer-1`,success:`vuesax-linear:tick-circle`,info:`vuesax-linear:info-circle`,none:`vuesax-linear:info-circle`};return(r,o)=>t.config.variant===`none`?l(``,!0):(i(),u(`div`,{key:0,class:e([`status-hero`,`status-hero--${t.config.variant}`])},[p(`div`,J,[s(y,{icon:n[t.config.variant],size:28,"stroke-width":1.5},null,8,[`icon`])]),p(`div`,Oe,[p(`h2`,ke,a(t.config.title),1),t.config.description?(i(),u(`p`,Ae,a(t.config.description),1)):l(``,!0)])],2))}}),[[`__scopeId`,`data-v-896684d9`]]),Me={class:`tracking-summary`},Y={class:`tracking-summary__row`},X={class:`tracking-summary__row`},Z={class:`tracking-summary__row`},Ne={class:`tracking-summary__row`},Q={key:0,class:`tracking-summary__row`},Pe={key:1,class:`tracking-summary__row`},Fe=h(v({__name:`OrderTrackingSummary`,props:{order:{}},setup(e){let t=e,n=c(()=>t.order.checks?.reduce((e,t)=>e+t.amount,0)??0);return(t,r)=>(i(),u(`div`,Me,[p(`div`,Y,[r[0]||=p(`span`,null,`مبلغ فاکتور`,-1),p(`strong`,null,a(e.order.finalAmount?_(C)(e.order.finalAmount):`در انتظار قیمت‌گذاری`),1)]),p(`div`,X,[r[1]||=p(`span`,null,`نوع تسویه`,-1),p(`strong`,null,a(_(M)(e.order.settlementType)),1)]),_(P)(e.order.settlementType)&&e.order.checks?.length?(i(),u(f,{key:0},[p(`div`,Z,[r[2]||=p(`span`,null,`تعداد چک‌ها`,-1),p(`strong`,null,a(_(b)(String(e.order.checks.length)))+` فقره`,1)]),p(`div`,Ne,[r[3]||=p(`span`,null,`مجموع مبلغ چک‌ها`,-1),p(`strong`,null,a(_(S)(n.value)),1)]),e.order.checkRassDays==null?l(``,!0):(i(),u(`div`,Q,[r[4]||=p(`span`,null,`رأس چک (تقریبی)`,-1),p(`strong`,null,a(_(b)(String(e.order.checkRassDays)))+` روز`,1)]))],64)):l(``,!0),_(N)(e.order.settlementType)&&e.order.cashReceipt?(i(),u(`div`,Pe,[r[5]||=p(`span`,null,`مبلغ واریزی`,-1),p(`strong`,null,a(_(S)(e.order.cashReceipt.amount)),1)])):l(``,!0)]))}}),[[`__scopeId`,`data-v-05777d03`]]),Ie={key:0,class:`order-detail-page`},Le={class:`order-detail-page__nav mobile-only`},Re={class:`order-detail-page__nav-center`},ze={class:`order-detail-page__title`},Be={key:0,class:`order-detail-page__order-id`},Ve={type:`button`,class:`nav-btn nav-btn--ghost`,"aria-hidden":`true`,tabindex:`-1`},He={class:`desktop-page__head desktop-only order-detail-page__desktop-head`},Ue={class:`desktop-page__subtitle`},We={class:`order-detail-page__body`},Ge={key:0,class:`order-info-card mobile-only`},Ke={class:`order-info-card__head`},qe={class:`order-info-card__number`},Je={class:`order-info-card__row`},Ye={class:`order-info-card__value order-info-card__value--accent`},Xe={class:`order-info-card__row`},Ze={class:`order-info-card__value order-info-card__value--accent`},Qe={class:`order-info-card__row`},$e={class:`order-info-card__value order-info-card__value--accent`},et={class:`order-info-card__row order-info-card__row--last`},tt={class:`order-info-card__amount`},nt={key:1,class:`order-next-action`},rt={key:2,class:`order-detail-page__tracking`},it={class:`order-detail-page__tracking-hero`},at={class:`tracking-card tracking-card--hero`},ot={class:`order-detail-page__tracking-main`},st={key:0,class:`order-next-action`},ct={class:`tracking-card tracking-collapse`},lt=[`aria-expanded`],ut={class:`tracking-collapse__body`},dt={class:`tracking-collapse__section tracking-collapse__section--flush`},ft={class:`tracking-card tracking-collapse`},pt=[`aria-expanded`],mt={class:`tracking-collapse__body`},ht={class:`tracking-collapse__section`},gt={class:`item-row__meta`},_t={class:`item-row item-row--summary`},vt={key:0,class:`tracking-alert`},yt={class:`tracking-collapse__section`},bt={dir:`ltr`,class:`bank-row__meta`},xt={dir:`ltr`,class:`bank-row__meta`},St={key:2,class:`tracking-collapse__section`},Ct={class:`detail-row`},wt={key:0,class:`detail-row`},Tt={class:`tracking-collapse__section`},Et={class:`rass-display`},Dt={key:0,class:`rass-date`},Ot={class:`detail-row`},kt={class:`detail-row`},At=[`src`],jt={key:0,class:`order-detail-page__footer mobile-only`},Mt={class:`receipt-modal card`,role:`dialog`,"aria-modal":`true`,"aria-labelledby":`receipt-modal-title`},Nt={class:`receipt-modal__header`},Pt={class:`receipt-modal__body`},Ft={class:`form-group`},It=[`src`],Lt={key:1,class:`upload-box__placeholder`},Rt={key:0,class:`input-error-text`},zt={key:1,class:`page empty-state`},$=h(v({__name:`OrderDetailView`,setup(h){let v=le(),y=ce(),b=ue(),pe=re(`(min-width: 768px)`),j=c(()=>v.params.id),F=c(()=>b.getOrderById(j.value)),I=m(v.query.track===`1`||v.query.receipt===`1`),L=m(!1),R=m(!0),z=m(v.query.receipt===`1`),B=m(``),V=m(``),H=m(``),U=m(``),W=m(``),G=m({}),K=m(``);o([F,()=>v.query.receipt],([e])=>{let t=v.query.receipt===`1`;if(t&&A(e)){L.value=!0,z.value=!0;return}if(t&&e&&!A(e)){L.value=!1;let{receipt:e,...t}=v.query;y.replace({query:{...t,track:`1`}})}},{immediate:!0}),o(pe,e=>{e&&(I.value=!0,R.value=!0,z.value=!0,v.query.track!==`1`&&v.query.receipt!==`1`&&y.replace({query:{...v.query,track:`1`}}))},{immediate:!0}),o(B,()=>{G.value=O(G.value,`receiptAmount`),k(G.value)||(K.value=``)}),o(V,()=>{G.value=O(G.value,`receiptDate`),k(G.value)||(K.value=``)}),o(U,()=>{G.value=O(G.value,`destinationAccountId`),k(G.value)||(K.value=``)});let q=m([]);o(()=>F.value?.id,async e=>{if(!e||!F.value){q.value=[];return}try{q.value=await b.getBankAccountsForOrder(F.value)}catch{q.value=[]}},{immediate:!0});let Ee=c(()=>[{value:``,label:`انتخاب کنید`},...q.value.map(e=>({value:e.id,label:`${e.bankName} — ${e.cardNumber}`}))]);o(()=>j.value,async e=>{if(e&&!b.getOrderById(e))try{await b.fetchOrder(e)}catch{}},{immediate:!0});let J=c(()=>F.value?we(F.value.status):null),Oe=c(()=>F.value?Te(F.value.status):`مشاهده جزئیات سفارش`);function ke(e){return M(e)}function Ae(e){return N(e.settlementType)?Se(e)||!!e.cashReceipt:!1}function Me(e){return P(e.settlementType)?Ce(e)||(e.checks?.length??0)>0:!1}let Y=c(()=>{let e=F.value;if(!e)return null;let t=ge(e);switch(e.status){case`awaiting_settlement`:case`awaiting_settlement_fix`:return t?{label:`انتخاب روش تسویه`,to:`/orders/${e.id}/settlement`}:null;case`check_in_progress`:return t?{label:`ثبت چک‌ها`,to:`/orders/${e.id}/check-mode`}:null;case`check_needs_fix`:case`check_rejected`:return t?{label:`اصلاح چک‌ها`,to:`/orders/${e.id}/check-list`}:null;case`awaiting_cash_payment`:case`cash_invoice_issued`:return t?{label:`ثبت رسید پرداخت`,receipt:!0}:null;default:return null}});function X(){if(!A(F.value)){K.value=`در وضعیت فعلی سفارش امکان ثبت رسید وجود ندارد`;return}I.value=!0,z.value=!0,L.value=!0}function Z(){let e=Y.value;if(e){if(e.receipt){X();return}e.to&&y.push(e.to)}}function Ne(){I.value=!0,z.value=!1,y.replace({query:{track:`1`}})}function Q(){z.value=!z.value}function Pe(){R.value=!R.value}async function $(e){let t=e.target.files?.[0];if(!t)return;let n=oe(t);if(!n.valid){G.value={...G.value,receiptImage:n.message??`خطا`};return}G.value=O(G.value,`receiptImage`),W.value=await se(t)}async function Bt(){if(!F.value)return;if(G.value={},K.value=``,!A(F.value)){K.value=`در وضعیت فعلی سفارش امکان ثبت رسید وجود ندارد`;return}let e=ae(B.value),t={};if(e||(t.receiptAmount=`مبلغ واریزی الزامی است.`),V.value||(t.receiptDate=`تاریخ واریز الزامی است.`),U.value||(t.destinationAccountId=`حساب مقصد را انتخاب کنید.`),k(t)){G.value=t,K.value=he;return}try{await b.submitCashReceipt(F.value.id,{amount:e,transferDate:V.value,transferTime:H.value||`12:00`,destinationAccountId:U.value,receiptImage:W.value||void 0}),L.value=!1,G.value={},K.value=``}catch(e){K.value=e instanceof Error?e.message:`ثبت رسید ناموفق بود.`}}return(o,c)=>F.value?(i(),u(`div`,Ie,[p(`header`,Le,[p(`button`,{type:`button`,class:`nav-btn`,"aria-label":`بازگشت`,onClick:c[0]||=e=>_(y).push(`/orders`)},[s(D,{size:20})]),p(`div`,Re,[p(`h1`,ze,a(I.value?`پیگیری سفارش`:`جزئیات سفارش`),1),I.value?(i(),u(`p`,Be,a(F.value.orderNumber),1)):l(``,!0)]),p(`button`,Ve,[s(D,{size:18,class:`nav-btn__flip`})])]),p(`header`,He,[p(`button`,{type:`button`,class:`order-detail-back`,onClick:c[1]||=e=>_(y).push(`/orders`)},[s(D,{size:18}),c[9]||=d(` بازگشت به سفارش‌ها `,-1)]),c[10]||=p(`h1`,{class:`desktop-page__title`},`پیگیری سفارش`,-1),p(`p`,Ue,a(F.value.orderNumber)+` · `+a(F.value.companyName),1)]),p(`div`,We,[I.value?l(``,!0):(i(),u(`div`,Ge,[p(`div`,Ke,[c[11]||=p(`span`,{class:`order-info-card__label`},`شماره سفارش`,-1),p(`strong`,qe,a(F.value.orderNumber),1)]),p(`div`,Je,[c[12]||=p(`span`,{class:`order-info-card__key`},`تأمین‌کننده`,-1),p(`span`,Ye,a(F.value.companyName),1)]),p(`div`,Xe,[c[13]||=p(`span`,{class:`order-info-card__key`},`تاریخ ثبت`,-1),p(`span`,Ze,a(_(x)(F.value.createdAt)),1)]),p(`div`,Qe,[c[14]||=p(`span`,{class:`order-info-card__key`},`نوع تسویه`,-1),p(`span`,$e,a(ke(F.value.settlementType)),1)]),p(`div`,et,[c[15]||=p(`span`,{class:`order-info-card__key`},`مبلغ فاکتور`,-1),p(`strong`,tt,a(F.value.finalAmount?_(C)(F.value.finalAmount):`پس از قیمت‌گذاری مدیریت`),1)])])),Y.value&&!I.value?(i(),u(`div`,nt,[c[16]||=p(`span`,{class:`order-next-action__text`},`برای ادامه سفارش، این مرحله باقی مانده است.`,-1),s(E,{class:`order-next-action__btn`,onClick:Z},{default:n(()=>[d(a(Y.value.label),1)]),_:1})])):l(``,!0),I.value?(i(),u(`div`,rt,[p(`section`,it,[p(`div`,at,[J.value?(i(),g(je,{key:0,config:J.value},null,8,[`config`])):l(``,!0),s(Fe,{order:F.value},null,8,[`order`])])]),p(`section`,ot,[Y.value?(i(),u(`div`,st,[c[17]||=p(`span`,{class:`order-next-action__text`},`برای ادامه سفارش، این مرحله باقی مانده است.`,-1),s(E,{class:`order-next-action__btn`,onClick:Z},{default:n(()=>[d(a(Y.value.label),1)]),_:1})])):l(``,!0),p(`div`,ct,[p(`button`,{type:`button`,class:`tracking-collapse__trigger`,"aria-expanded":R.value,onClick:Pe},[c[18]||=p(`span`,null,`پیگیری وضعیت`,-1),s(T,{size:18,class:e([`tracking-collapse__chevron`,{"tracking-collapse__chevron--open":R.value}]),"aria-hidden":`true`},null,8,[`class`])],8,lt),r(p(`div`,ut,[p(`div`,dt,[s(De,{order:F.value},null,8,[`order`])])],512),[[ne,R.value]])]),p(`div`,ft,[p(`button`,{type:`button`,class:`tracking-collapse__trigger`,"aria-expanded":z.value,onClick:Q},[p(`span`,null,a(Oe.value),1),s(T,{size:18,class:e([`tracking-collapse__chevron`,{"tracking-collapse__chevron--open":z.value}]),"aria-hidden":`true`},null,8,[`class`])],8,pt),r(p(`div`,mt,[p(`div`,ht,[c[20]||=p(`h3`,{class:`tracking-card__title`},`اقلام سفارش`,-1),(i(!0),u(f,null,t(F.value.items,e=>(i(),u(`div`,{key:e.id,class:`item-row`},[p(`div`,null,[p(`strong`,null,a(e.productName),1),p(`p`,gt,`کالیته `+a(e.catalogCode)+` · `+a(e.color),1)]),p(`span`,null,a(_(ie)(_(_e)(e))),1)]))),128)),p(`div`,_t,[c[19]||=p(`span`,null,`مجموع متراژ`,-1),p(`strong`,null,a(_(ie)(F.value.totalMeterage)),1)])]),Ae(F.value)?(i(),u(f,{key:0},[F.value.cashInvoiceExpiresAt?(i(),u(`div`,vt,` اعتبار فاکتور: `+a(_(x)(F.value.cashInvoiceExpiresAt)),1)):l(``,!0),p(`div`,yt,[c[21]||=p(`h3`,{class:`tracking-card__title`},`حساب‌های بانکی`,-1),(i(!0),u(f,null,t(q.value,e=>(i(),u(`div`,{key:e.id,class:`bank-row`},[p(`strong`,null,a(e.bankName),1),p(`p`,bt,a(e.cardNumber),1),p(`p`,xt,a(e.iban),1)]))),128))]),Y.value?.receipt?(i(),g(E,{key:1,block:``,onClick:X},{default:n(()=>[d(a(F.value.cashReceipt?`ثبت رسید جدید`:`ثبت رسید پرداخت`),1)]),_:1})):l(``,!0),F.value.cashReceipt?(i(),u(`div`,St,[c[24]||=p(`h3`,{class:`tracking-card__title`},`رسید ثبت‌شده`,-1),p(`div`,Ct,[c[22]||=p(`span`,null,`مبلغ`,-1),p(`span`,null,a(_(S)(F.value.cashReceipt.amount)),1)]),F.value.cashReceipt.trackingNumber?(i(),u(`div`,wt,[c[23]||=p(`span`,null,`شماره پیگیری`,-1),p(`span`,null,a(F.value.cashReceipt.trackingNumber),1)])):l(``,!0)])):l(``,!0)],64)):l(``,!0),Me(F.value)&&F.value.checks?(i(),u(f,{key:1},[p(`div`,Tt,[c[25]||=p(`h3`,{class:`tracking-card__title`},`رأس چک‌ها`,-1),p(`div`,Et,a(F.value.checkRassDays)+` روز`,1),F.value.checkRassDate?(i(),u(`p`,Dt,` تاریخ رأس: `+a(_(w)(F.value.checkRassDate)),1)):l(``,!0)]),(i(!0),u(f,null,t(F.value.checks,(e,t)=>(i(),u(`div`,{key:e.id,class:`tracking-collapse__section`},[p(`strong`,null,`چک `+a(t+1),1),p(`div`,Ot,[c[26]||=p(`span`,null,`مبلغ`,-1),p(`span`,null,a(_(S)(e.amount)),1)]),p(`div`,kt,[c[27]||=p(`span`,null,`سررسید`,-1),p(`span`,null,a(_(w)(e.dueDate))+` (`+a(_(fe)(e.dueDate,_(de)(F.value)))+` روز)`,1)]),e.frontImage?(i(),u(`img`,{key:0,src:e.frontImage,class:`check-img`,alt:`چک`},null,8,At)):l(``,!0)]))),128))],64)):l(``,!0)],512),[[ne,z.value]])])])])):l(``,!0)]),I.value?l(``,!0):(i(),u(`div`,jt,[s(E,{block:``,onClick:Ne},{default:n(()=>[...c[28]||=[d(`مشاهده جزئیات و پیگیری`,-1)]]),_:1})])),(i(),g(ee,{to:`body`},[L.value?(i(),u(`div`,{key:0,class:`receipt-modal-overlay`,onClick:c[7]||=te(e=>L.value=!1,[`self`])},[p(`div`,Mt,[p(`header`,Nt,[c[29]||=p(`h3`,{id:`receipt-modal-title`,class:`receipt-modal__title`},`ثبت رسید پرداخت`,-1),p(`button`,{type:`button`,class:`receipt-modal__close`,"aria-label":`بستن`,onClick:c[2]||=e=>L.value=!1},` × `)]),p(`div`,Pt,[s(me,{message:K.value},null,8,[`message`]),s(ve,{modelValue:B.value,"onUpdate:modelValue":c[3]||=e=>B.value=e,label:`مبلغ واریزی`,error:G.value.receiptAmount},null,8,[`modelValue`,`error`]),s(ye,{modelValue:V.value,"onUpdate:modelValue":c[4]||=e=>V.value=e,label:`تاریخ واریز`,error:G.value.receiptDate},null,8,[`modelValue`,`error`]),s(be,{modelValue:H.value,"onUpdate:modelValue":c[5]||=e=>H.value=e,label:`ساعت واریز`,placeholder:`مثلاً ۱۴:۳۰`,hint:`با گام ۵ دقیقه`},null,8,[`modelValue`]),s(xe,{modelValue:U.value,"onUpdate:modelValue":c[6]||=e=>U.value=e,label:`حساب مقصد`,"aria-label":`حساب مقصد`,options:Ee.value,error:G.value.destinationAccountId},null,8,[`modelValue`,`options`,`error`]),p(`div`,Ft,[c[30]||=p(`label`,{class:`form-label`},`تصویر رسید`,-1),p(`label`,{class:e([`upload-box`,{"upload-box--error":G.value.receiptImage}])},[p(`input`,{type:`file`,accept:`image/*`,class:`upload-box__input`,onChange:$},null,32),W.value?(i(),u(`img`,{key:0,src:W.value,class:`upload-box__preview`,alt:`تصویر رسید`},null,8,It)):(i(),u(`span`,Lt,`انتخاب تصویر رسید`))],2),G.value.receiptImage?(i(),u(`p`,Rt,a(G.value.receiptImage),1)):l(``,!0)]),s(E,{block:``,class:`mt-4`,onClick:Bt},{default:n(()=>[...c[31]||=[d(`ثبت رسید`,-1)]]),_:1})])])])):l(``,!0)]))])):(i(),u(`div`,zt,[c[33]||=p(`p`,null,`سفارش یافت نشد`,-1),s(E,{onClick:c[8]||=e=>_(y).push(`/orders`)},{default:n(()=>[...c[32]||=[d(`بازگشت`,-1)]]),_:1})]))}}),[[`__scopeId`,`data-v-a56bec50`]]);export{$ as default}; \ No newline at end of file diff --git a/dist/assets/OrderSuccessView-BWqBSxwt.js b/dist/assets/OrderSuccessView-CHvxXHyZ.js similarity index 90% rename from dist/assets/OrderSuccessView-BWqBSxwt.js rename to dist/assets/OrderSuccessView-CHvxXHyZ.js index 234b8dc..1eff611 100644 --- a/dist/assets/OrderSuccessView-BWqBSxwt.js +++ b/dist/assets/OrderSuccessView-CHvxXHyZ.js @@ -1 +1 @@ -import{G as e,M as t,Pt as n,_ as r,c as i,d as a,f as o,g as s,l as c,t as l,ut as u,v as d}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{a as f}from"./format-C72AoJ2H.js";import{C as p,S as m,f as h,r as g}from"./index-DYwnTikp.js";import{t as _}from"./PageHeader-C5c2Pzrn.js";import{t as v}from"./useGoBack-DnRfwA4b.js";var y={class:`page success-page`},b={class:`page__scroll success-page__scroll`},x={key:0,class:`card mb-4`},S={class:`info-row`},C={class:`info-row`},w={class:`info-row`},T=l(d({__name:`OrderSuccessView`,setup(l){let d=m(),T=p(),{goBack:E}=v(`/orders`),D=h(),O=i(()=>D.getOrderById(d.params.id));return(i,l)=>(t(),o(`div`,y,[r(_,{title:`ثبت موفق`,"show-back":``,centered:``,onBack:u(E)},null,8,[`onBack`]),c(`div`,b,[l[8]||=c(`div`,{class:`success-icon`},`✓`,-1),l[9]||=c(`h1`,{class:`page-title text-center`},`سفارش ثبت شد`,-1),l[10]||=c(`p`,{class:`text-center text-muted mb-4`},` سفارش شما با موفقیت ثبت شد. کارشناسان ما سفارش را بررسی و قیمت‌گذاری می‌کنند و به‌محض صدور فاکتور، از طریق پیامک و پنل کاربری به شما اطلاع می‌دهیم تا روش تسویه را انتخاب کنید. `,-1),O.value?(t(),o(`div`,x,[c(`div`,S,[l[2]||=c(`span`,null,`شماره سفارش:`,-1),c(`strong`,null,n(O.value.orderNumber),1)]),c(`div`,C,[l[3]||=c(`span`,null,`تأمین‌کننده:`,-1),c(`span`,null,n(O.value.companyName),1)]),c(`div`,w,[l[4]||=c(`span`,null,`متراژ:`,-1),c(`span`,null,n(u(f)(O.value.totalMeterage)),1)]),l[5]||=c(`div`,{class:`info-row`},[c(`span`,null,`وضعیت:`),c(`span`,null,`در انتظار قیمت‌گذاری`)],-1)])):a(``,!0),r(g,{block:``,onClick:l[0]||=e=>u(T).replace(`/orders/${O.value?.id}`)},{default:e(()=>[...l[6]||=[s(` مشاهده جزئیات سفارش `,-1)]]),_:1}),r(g,{block:``,variant:`outline`,class:`mt-2`,onClick:l[1]||=e=>u(T).replace(`/`)},{default:e(()=>[...l[7]||=[s(` بازگشت به خانه `,-1)]]),_:1})])]))}}),[[`__scopeId`,`data-v-bb2e861d`]]);export{T as default}; \ No newline at end of file +import{G as e,M as t,Pt as n,_ as r,c as i,d as a,f as o,g as s,l as c,t as l,ut as u,v as d}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{a as f}from"./format-C72AoJ2H.js";import{C as p,S as m,f as h,r as g}from"./index-CE4Fw0WE.js";import{t as _}from"./PageHeader-BDPrFkve.js";import{t as v}from"./useGoBack-BrwZYRKb.js";var y={class:`page success-page`},b={class:`page__scroll success-page__scroll`},x={key:0,class:`card mb-4`},S={class:`info-row`},C={class:`info-row`},w={class:`info-row`},T=l(d({__name:`OrderSuccessView`,setup(l){let d=m(),T=p(),{goBack:E}=v(`/orders`),D=h(),O=i(()=>D.getOrderById(d.params.id));return(i,l)=>(t(),o(`div`,y,[r(_,{title:`ثبت موفق`,"show-back":``,centered:``,onBack:u(E)},null,8,[`onBack`]),c(`div`,b,[l[8]||=c(`div`,{class:`success-icon`},`✓`,-1),l[9]||=c(`h1`,{class:`page-title text-center`},`سفارش ثبت شد`,-1),l[10]||=c(`p`,{class:`text-center text-muted mb-4`},` سفارش شما با موفقیت ثبت شد. کارشناسان ما سفارش را بررسی و قیمت‌گذاری می‌کنند و به‌محض صدور فاکتور، از طریق پیامک و پنل کاربری به شما اطلاع می‌دهیم تا روش تسویه را انتخاب کنید. `,-1),O.value?(t(),o(`div`,x,[c(`div`,S,[l[2]||=c(`span`,null,`شماره سفارش:`,-1),c(`strong`,null,n(O.value.orderNumber),1)]),c(`div`,C,[l[3]||=c(`span`,null,`تأمین‌کننده:`,-1),c(`span`,null,n(O.value.companyName),1)]),c(`div`,w,[l[4]||=c(`span`,null,`متراژ:`,-1),c(`span`,null,n(u(f)(O.value.totalMeterage)),1)]),l[5]||=c(`div`,{class:`info-row`},[c(`span`,null,`وضعیت:`),c(`span`,null,`در انتظار قیمت‌گذاری`)],-1)])):a(``,!0),r(g,{block:``,onClick:l[0]||=e=>u(T).replace(`/orders/${O.value?.id}`)},{default:e(()=>[...l[6]||=[s(` مشاهده جزئیات سفارش `,-1)]]),_:1}),r(g,{block:``,variant:`outline`,class:`mt-2`,onClick:l[1]||=e=>u(T).replace(`/`)},{default:e(()=>[...l[7]||=[s(` بازگشت به خانه `,-1)]]),_:1})])]))}}),[[`__scopeId`,`data-v-bb2e861d`]]);export{T as default}; \ No newline at end of file diff --git a/dist/assets/OrdersView-8q5gwU0V.js b/dist/assets/OrdersView-BPdTqQNi.js similarity index 99% rename from dist/assets/OrdersView-8q5gwU0V.js rename to dist/assets/OrdersView-BPdTqQNi.js index b763584..e27af08 100644 --- a/dist/assets/OrdersView-8q5gwU0V.js +++ b/dist/assets/OrdersView-BPdTqQNi.js @@ -1 +1 @@ -import{At as e,F as t,G as n,I as r,M as i,Pt as a,U as o,_ as s,c,d as l,f as u,g as d,i as f,k as p,l as m,nt as h,t as g,u as _,ut as v,v as y}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{t as b}from"./BasicIcon-DPmc0iaK.js";import{d as x,i as S,n as C,o as w}from"./format-C72AoJ2H.js";import{t as T}from"./catalog-DWpH1dVc.js";import{t as E}from"./IconOrders-Cf-FXBIB.js";import{C as D,S as O,a as k,c as A,f as j,o as M,r as N}from"./index-DYwnTikp.js";import{t as P}from"./EmptyState-DoHTAy4d.js";import{i as F,t as I}from"./constants-ptWoEwwP.js";import{t as L}from"./IconChevronBack-BsHmfODG.js";import{t as R}from"./IconProgressClock-C5Z0LodX.js";import"./IconFilter-CeX90aW_.js";import{t as z}from"./IconMoreVertical-DpXrbzlD.js";var B=[`awaiting_review`,`awaiting_check_review`],V=[`submitted`,`pricing`,`check_in_progress`,`awaiting_cash_confirmation`,`preparing`,`ready_to_ship`,`needs_correction`,`awaiting_settlement_fix`,`cash_in_progress`,`awaiting_cash_payment`,`cash_payment_submitted`,`check_needs_fix`,`awaiting_settlement`,`cash_invoice_issued`],H=[`shipped`],U=[`delivered`,`final_approved`,`checks_approved`,`cash_confirmed`],W=[`cancelled`,`rejected`,`expired`,`check_rejected`],ee=[...B,...V,...H];function te(e,t){switch(t){case`review`:return B.includes(e);case`in_progress`:return V.includes(e);case`shipped`:return H.includes(e);case`delivered`:return U.includes(e);case`cancelled`:return W.includes(e);default:return!0}}function G(e,t){return t===`active`?ee.includes(e):t===`done`?U.includes(e):t!==`cancelled`||W.includes(e)}function ne(e){return e.productName.trim()||e.productCode.trim()||e.catalogCode.trim()}function K(e){return e?.length?[...new Set(e.map(ne).filter(Boolean))].join(`، `):``}var q=5,J=5;function Y(){let e=D(),t=O(),n=j(),r=A(),i=T(),a=h(1),s=h(1),l=h(``);p(async()=>{await Promise.all([n.hydrate(),i.loadCompanies()])}),o(()=>t.query.submitted,n=>{let r=Number(n);if(!Number.isFinite(r)||r<1){l.value=``;return}l.value=r===1?`پیش‌سفارش با موفقیت ثبت شد.`:`${x(String(r))} پیش‌سفارش (برای شرکت‌های مختلف) ثبت شد.`;let{submitted:i,...a}=t.query;e.replace({query:a})},{immediate:!0});let u=c({get:()=>e.currentRoute.value.query.tab??`all`,set:t=>e.replace({query:{...e.currentRoute.value.query,tab:t}})}),d=c({get:()=>e.currentRoute.value.query.filter??`all`,set:t=>e.replace({query:{...e.currentRoute.value.query,filter:t===`all`?void 0:t}})}),f=c(()=>e.currentRoute.value.query.q??``),m=c(()=>r.user?n.userOrders(r.user.id):[]),g=c(()=>({total:m.value.length,review:m.value.filter(e=>B.includes(e.status)).length,inProgress:m.value.filter(e=>V.includes(e.status)).length,done:m.value.filter(e=>U.includes(e.status)).length}));function _(e,t){if(!t.trim())return!0;let n=t.trim().toLowerCase();return e.orderNumber.toLowerCase().includes(n)||e.companyName.toLowerCase().includes(n)||K(e.items).toLowerCase().includes(n)}let v=c(()=>m.value.filter(e=>_(e,f.value)).filter(e=>G(e.status,u.value))),y=c(()=>m.value.filter(e=>_(e,f.value)).filter(e=>te(e.status,d.value))),b=c(()=>{let e=(a.value-1)*q;return y.value.slice(e,e+q)}),S=c(()=>Math.max(1,Math.ceil(y.value.length/q))),C=c(()=>y.value.length===0?{start:0,end:0}:{start:(a.value-1)*q+1,end:Math.min(a.value*q,y.value.length)}),w=c(()=>{let e=S.value,t=a.value;if(e<=7)return Array.from({length:e},(e,t)=>t+1);let n=[1];t>3&&n.push(`ellipsis`);let r=Math.max(2,t-1),i=Math.min(e-1,t+1);for(let e=r;e<=i;e+=1)n.push(e);return t1&&n.push(e),n}),E=c(()=>Math.max(1,Math.ceil(v.value.length/J))),k=c(()=>{let e=(s.value-1)*J;return v.value.slice(e,e+J)}),M=c(()=>v.value.length===0?{start:0,end:0}:{start:(s.value-1)*J+1,end:Math.min(s.value*J,v.value.length)}),N=c(()=>{let e=E.value,t=s.value;if(e<=5)return Array.from({length:e},(e,t)=>t+1);let n=[1];t>3&&n.push(`ellipsis`);let r=Math.max(2,t-1),i=Math.min(e-1,t+1);for(let e=r;e<=i;e+=1)n.push(e);return t1&&n.push(e),n});o([y,d,f],()=>{a.value=1}),o([v,u,f],()=>{s.value=1});function P(e){return i.getCompany(e.companyId)?.slug??`par`}function F(e){return U.includes(e.status)?`success`:P(e)===`fam-baft`?`fam-baft`:`par`}function I(t){e.push(`/orders/${t}`)}function L(e){e<1||e>S.value||(a.value=e)}function R(e){e<1||e>E.value||(s.value=e)}function z(e){d.value=d.value===e&&e!==`all`?`all`:e}function H(e){d.value=e}return{tab:u,desktopFilter:d,searchQuery:f,stats:g,filteredOrdersMobile:v,filteredOrdersDesktop:y,paginatedOrders:b,paginatedOrdersMobile:k,totalPages:S,mobileTotalPages:E,paginationRange:C,mobilePaginationRange:M,visiblePages:w,mobileVisiblePages:N,currentPage:a,mobilePage:s,companySlug:P,iconVariant:F,submitSuccessMessage:l,goToOrder:I,setPage:L,setMobilePage:R,setDesktopFilter:z,viewStatFilter:H}}var X=[`aria-selected`,`onClick`],Z=g(y({__name:`FilterTabs`,props:{modelValue:{},tabs:{},equal:{type:Boolean}},emits:[`update:modelValue`],setup(n){return(r,o)=>(i(),u(`div`,{class:e([`filter-tabs`,{"filter-tabs--equal":n.equal}]),role:`tablist`},[(i(!0),u(f,null,t(n.tabs,t=>(i(),u(`button`,{key:t.id,type:`button`,role:`tab`,class:e([`filter-tab`,{active:n.modelValue===t.id}]),"aria-selected":n.modelValue===t.id,onClick:e=>r.$emit(`update:modelValue`,t.id)},a(t.label),11,X))),128))],2))}}),[[`__scopeId`,`data-v-4cd20e9b`]]),re=g(y({__name:`BaseBadge`,props:{variant:{}},setup(t){return(n,a)=>(i(),u(`span`,{class:e([`badge`,`badge-${t.variant??`neutral`}`])},[r(n.$slots,`default`,{},void 0,!0)],2))}}),[[`__scopeId`,`data-v-5e1be8f4`]]),Q=y({__name:`StatusBadge`,props:{status:{}},setup(e){let t=e,r=c(()=>I[t.status]??t.status),o=c(()=>F[t.status]??`neutral`);return(e,t)=>(i(),_(re,{variant:o.value},{default:n(()=>[d(a(r.value),1)]),_:1},8,[`variant`]))}}),ie=[`width`,`height`],ae=g(y({__name:`IconParLogo`,props:{size:{default:72}},setup(e){return(t,n)=>(i(),u(`svg`,{class:`icon-logo`,width:e.size,height:e.size,viewBox:`0 0 72 72`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,"aria-hidden":`true`},[...n[0]||=[m(`text`,{x:`36`,y:`50`,"text-anchor":`middle`,"dominant-baseline":`middle`,fill:`currentColor`,style:{"font-family":`IRANSans, Tahoma, sans-serif`,"font-size":`48px`,"font-weight":`700`}},` پ `,-1)]],8,ie))}}),[[`__scopeId`,`data-v-beccd0f1`]]),oe=[`width`,`height`],se=g(y({__name:`IconFamBaftLogo`,props:{size:{default:72}},setup(e){return(t,n)=>(i(),u(`svg`,{class:`icon-logo`,width:e.size,height:e.size,viewBox:`0 0 72 72`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,"aria-hidden":`true`},[...n[0]||=[m(`g`,{fill:`currentColor`},[m(`rect`,{x:`14`,y:`14`,width:`28`,height:`28`,rx:`4`,transform:`rotate(12 28 28)`}),m(`rect`,{x:`30`,y:`30`,width:`28`,height:`28`,rx:`4`,transform:`rotate(-12 44 44)`})],-1)]],8,oe))}}),[[`__scopeId`,`data-v-bbb3dcd8`]]),ce={class:`page orders-mobile-page`},le={class:`orders-mobile-page__nav`},ue={class:`page__scroll page__scroll--with-nav orders-mobile-page__scroll`},de={key:0,class:`orders-mobile-page__list`},fe=[`onClick`],pe={class:`order-card__content`},me={class:`order-card__number`},he={class:`order-card__fabric`},ge={class:`order-card__company`},_e={key:1,class:`order-card__amount`},ve={key:2,class:`orders-mobile-pagination`},ye={class:`orders-mobile-pagination__summary`},be={class:`orders-mobile-pagination__controls`},xe=[`disabled`],Se={key:0,class:`orders-mobile-pagination__ellipsis`},Ce=[`onClick`],we=[`disabled`],Te=g(y({__name:`MobileOrdersPage`,props:{tab:{},tabs:{},orders:{},totalCount:{},currentPage:{},totalPages:{},paginationRange:{},visiblePages:{},companySlug:{type:Function},iconVariant:{type:Function}},emits:[`update:tab`,`select`,`back`,`set-page`],setup(r,{emit:o}){let c=o;return(o,p)=>(i(),u(`div`,ce,[m(`header`,le,[m(`button`,{type:`button`,class:`nav-btn`,"aria-label":`بازگشت`,onClick:p[0]||=e=>c(`back`)},[s(L,{size:20})]),p[5]||=m(`h1`,{class:`orders-mobile-page__title`},`سفارش‌ها`,-1),s(k,{variant:`inline`})]),s(Z,{"model-value":r.tab,tabs:r.tabs,equal:``,class:`orders-mobile-page__tabs`,"onUpdate:modelValue":p[1]||=e=>c(`update:tab`,e)},null,8,[`model-value`,`tabs`]),m(`div`,ue,[r.orders.length>0?(i(),u(`div`,de,[(i(!0),u(f,null,t(r.orders,t=>(i(),u(`button`,{key:t.id,type:`button`,class:`order-card`,onClick:e=>c(`select`,t.id)},[m(`div`,pe,[p[7]||=m(`span`,{class:`order-card__label`},`سفارش شماره`,-1),m(`strong`,me,a(t.orderNumber),1),v(K)(t.items)?(i(),u(f,{key:0},[p[6]||=m(`span`,{class:`order-card__label`},`پارچه`,-1),m(`strong`,he,a(v(K)(t.items)),1)],64)):l(``,!0),m(`p`,ge,a(t.companyName),1),t.finalAmount?(i(),u(`p`,_e,a(v(C)(t.finalAmount)),1)):l(``,!0),s(Q,{status:t.status,class:`order-card__badge`},null,8,[`status`])]),m(`span`,{class:e([`order-card__icon`,`order-card__icon--${r.iconVariant(t)}`])},[r.companySlug(t)===`fam-baft`?(i(),_(se,{key:0,size:36})):(i(),_(ae,{key:1,size:36}))],2)],8,fe))),128))])):(i(),_(P,{key:1,variant:`orders`,message:`هنوز سفارشی ثبت نکرده‌اید`},{default:n(()=>[s(N,{onClick:p[2]||=e=>c(`back`)},{default:n(()=>[...p[8]||=[d(`ثبت سفارش جدید`,-1)]]),_:1})]),_:1})),r.totalCount>0?(i(),u(`div`,ve,[m(`p`,ye,a(v(x)(String(r.paginationRange.start)))+`– `+a(v(x)(String(r.paginationRange.end)))+` از `+a(v(w)(r.totalCount)),1),m(`div`,be,[m(`button`,{type:`button`,class:`orders-mobile-pagination__arrow`,disabled:r.currentPage<=1,"aria-label":`صفحه قبل`,onClick:p[3]||=e=>c(`set-page`,r.currentPage-1)},[s(M,{size:16,class:`orders-mobile-pagination__arrow--prev`})],8,xe),(i(!0),u(f,null,t(r.visiblePages,(t,n)=>(i(),u(f,{key:`${t}-${n}`},[t===`ellipsis`?(i(),u(`span`,Se,`…`)):(i(),u(`button`,{key:1,type:`button`,class:e([`orders-mobile-pagination__page`,{"orders-mobile-pagination__page--active":t===r.currentPage}]),onClick:e=>c(`set-page`,t)},a(v(x)(String(t))),11,Ce))],64))),128)),m(`button`,{type:`button`,class:`orders-mobile-pagination__arrow`,disabled:r.currentPage>=r.totalPages,"aria-label":`صفحه بعد`,onClick:p[4]||=e=>c(`set-page`,r.currentPage+1)},[s(M,{size:16,class:`orders-mobile-pagination__arrow--next`})],8,we)])])):l(``,!0)])]))}}),[[`__scopeId`,`data-v-47b1623c`]]),Ee=y({__name:`IconHourglass`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(i(),_(b,{icon:`vuesax-linear:timer-1`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),De=y({__name:`IconCheckCircleOutline`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(i(),_(b,{icon:`vuesax-linear:tick-circle`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),Oe={class:`desktop-page orders-desktop-page`},ke={class:`orders-stats desktop-grid-4`},Ae={class:`orders-stat-card`},je={class:`orders-stat-card__head`},Me={class:`orders-stat-card__icon orders-stat-card__icon--total`,"aria-hidden":`true`},Ne={class:`orders-stat-card__value`},Pe={class:`orders-stat-card`},Fe={class:`orders-stat-card__head`},Ie={class:`orders-stat-card__icon orders-stat-card__icon--review`,"aria-hidden":`true`},Le={class:`orders-stat-card__value`},Re={class:`orders-stat-card`},ze={class:`orders-stat-card__head`},Be={class:`orders-stat-card__icon orders-stat-card__icon--active`,"aria-hidden":`true`},Ve={class:`orders-stat-card__value`},He={class:`orders-stat-card`},Ue={class:`orders-stat-card__head`},We={class:`orders-stat-card__icon orders-stat-card__icon--done`,"aria-hidden":`true`},Ge={class:`orders-stat-card__value`},Ke={class:`desktop-toolbar`},qe={class:`orders-toolbar__pills`,role:`tablist`,"aria-label":`فیلتر وضعیت`},Je=[`aria-selected`,`onClick`],Ye={key:0,class:`desktop-table-wrap`},Xe={class:`desktop-table-scroll`},Ze={class:`desktop-table orders-table`},Qe={class:`orders-table__number`},$e={class:`orders-table__fabric`},et={class:`orders-table__amount`},tt={class:`orders-table__date`},$={class:`orders-table__actions`},nt=[`onClick`],rt={type:`button`,class:`orders-table__menu`,"aria-label":`گزینه‌های بیشتر`},it={class:`orders-pagination`},at={class:`orders-pagination__summary`},ot={class:`orders-pagination__controls`},st=[`disabled`],ct={key:0,class:`orders-pagination__ellipsis`},lt=[`onClick`],ut=[`disabled`],dt=y({__name:`DesktopOrdersPage`,props:{stats:{},desktopFilter:{},desktopFilterTabs:{},filteredOrders:{},paginatedOrders:{},paginationRange:{},visiblePages:{},currentPage:{},totalPages:{}},emits:[`viewStatFilter`,`setDesktopFilter`,`select`,`setPage`,`newOrder`],setup(r,{emit:o}){let c=o;return(o,l)=>(i(),u(`div`,Oe,[l[13]||=m(`header`,{class:`desktop-page__head`},[m(`h1`,{class:`desktop-page__title`},`سفارش‌ها`),m(`p`,{class:`desktop-page__subtitle`},`مدیریت و پیگیری سفارش‌های ثبت شده`)],-1),m(`div`,ke,[m(`article`,Ae,[m(`div`,je,[l[7]||=m(`span`,{class:`orders-stat-card__label orders-stat-card__label--total`},`همه سفارش‌ها`,-1),m(`span`,Me,[s(E,{size:20})])]),m(`strong`,Ne,a(v(w)(r.stats.total)),1),m(`button`,{type:`button`,class:`orders-stat-card__link`,onClick:l[0]||=e=>c(`viewStatFilter`,`all`)},` مشاهده همه `)]),m(`article`,Pe,[m(`div`,Fe,[l[8]||=m(`span`,{class:`orders-stat-card__label orders-stat-card__label--review`},`در انتظار بررسی`,-1),m(`span`,Ie,[s(Ee,{size:20})])]),m(`strong`,Le,a(v(w)(r.stats.review)),1),m(`button`,{type:`button`,class:`orders-stat-card__link`,onClick:l[1]||=e=>c(`viewStatFilter`,`review`)},` مشاهده همه `)]),m(`article`,Re,[m(`div`,ze,[l[9]||=m(`span`,{class:`orders-stat-card__label orders-stat-card__label--active`},`در حال انجام`,-1),m(`span`,Be,[s(R,{size:20})])]),m(`strong`,Ve,a(v(w)(r.stats.inProgress)),1),m(`button`,{type:`button`,class:`orders-stat-card__link`,onClick:l[2]||=e=>c(`viewStatFilter`,`in_progress`)},` مشاهده همه `)]),m(`article`,He,[m(`div`,Ue,[l[10]||=m(`span`,{class:`orders-stat-card__label orders-stat-card__label--done`},`تکمیل شده`,-1),m(`span`,We,[s(De,{size:20})])]),m(`strong`,Ge,a(v(w)(r.stats.done)),1),m(`button`,{type:`button`,class:`orders-stat-card__link`,onClick:l[3]||=e=>c(`viewStatFilter`,`delivered`)},` مشاهده همه `)])]),m(`div`,Ke,[m(`div`,qe,[(i(!0),u(f,null,t(r.desktopFilterTabs,t=>(i(),u(`button`,{key:t.id,type:`button`,role:`tab`,class:e([`orders-filter-pill`,{"orders-filter-pill--active":r.desktopFilter===t.id}]),"aria-selected":r.desktopFilter===t.id,onClick:e=>c(`setDesktopFilter`,t.id)},a(t.label),11,Je))),128))])]),r.filteredOrders.length>0?(i(),u(`div`,Ye,[m(`div`,Xe,[m(`table`,Ze,[l[11]||=m(`thead`,null,[m(`tr`,null,[m(`th`,{scope:`col`},`شماره سفارش`),m(`th`,{scope:`col`},`پارچه`),m(`th`,{scope:`col`},`شرکت`),m(`th`,{scope:`col`},`مبلغ فاکتور (تومان)`),m(`th`,{scope:`col`},`وضعیت`),m(`th`,{scope:`col`},`تاریخ ثبت`),m(`th`,{scope:`col`},`عملیات`)])],-1),m(`tbody`,null,[(i(!0),u(f,null,t(r.paginatedOrders,e=>(i(),u(`tr`,{key:e.id},[m(`td`,Qe,a(e.orderNumber),1),m(`td`,$e,a(v(K)(e.items)||`—`),1),m(`td`,null,a(e.companyName),1),m(`td`,et,a(e.finalAmount?v(w)(e.finalAmount):`—`),1),m(`td`,null,[s(Q,{status:e.status},null,8,[`status`])]),m(`td`,tt,a(v(S)(e.createdAt)),1),m(`td`,null,[m(`div`,$,[m(`button`,{type:`button`,class:`orders-table__action`,onClick:t=>c(`select`,e.id)},` مشاهده `,8,nt),m(`button`,rt,[s(z,{size:18})])])])]))),128))])])]),m(`div`,it,[m(`span`,at,` نمایش `+a(v(w)(r.paginationRange.start))+` تا `+a(v(w)(r.paginationRange.end))+` از `+a(v(w)(r.filteredOrders.length))+` سفارش `,1),m(`div`,ot,[m(`button`,{type:`button`,class:`orders-pagination__arrow`,disabled:r.currentPage<=1,"aria-label":`صفحه قبل`,onClick:l[4]||=e=>c(`setPage`,r.currentPage-1)},[s(M,{size:16,class:`orders-pagination__arrow-icon--prev`})],8,st),(i(!0),u(f,null,t(r.visiblePages,(t,n)=>(i(),u(f,{key:`${t}-${n}`},[t===`ellipsis`?(i(),u(`span`,ct,`…`)):(i(),u(`button`,{key:1,type:`button`,class:e([`orders-pagination__page`,{"orders-pagination__page--active":t===r.currentPage}]),onClick:e=>c(`setPage`,t)},a(v(w)(t)),11,lt))],64))),128)),m(`button`,{type:`button`,class:`orders-pagination__arrow`,disabled:r.currentPage>=r.totalPages,"aria-label":`صفحه بعد`,onClick:l[5]||=e=>c(`setPage`,r.currentPage+1)},[s(M,{size:16,class:`orders-pagination__arrow-icon--next`})],8,ut)])])])):(i(),_(P,{key:1,variant:`orders`,message:`هنوز سفارشی ثبت نکرده‌اید`},{default:n(()=>[s(N,{onClick:l[6]||=e=>c(`newOrder`)},{default:n(()=>[...l[12]||=[d(`ثبت سفارش جدید`,-1)]]),_:1})]),_:1}))]))}}),ft={class:`orders-view`},pt={key:0,class:`orders-view__success`,role:`status`},mt=g(y({__name:`OrdersView`,setup(e){let t=D(),{tab:n,desktopFilter:r,stats:o,filteredOrdersMobile:c,filteredOrdersDesktop:d,paginatedOrders:f,paginatedOrdersMobile:p,totalPages:m,mobileTotalPages:h,paginationRange:g,mobilePaginationRange:_,visiblePages:y,mobileVisiblePages:b,currentPage:x,mobilePage:S,companySlug:C,iconVariant:w,submitSuccessMessage:T,goToOrder:E,setPage:O,setMobilePage:k,setDesktopFilter:A,viewStatFilter:j}=Y(),M=[{id:`all`,label:`همه`},{id:`active`,label:`در جریان`},{id:`done`,label:`تکمیل شده`},{id:`cancelled`,label:`لغو شده`}],N=[{id:`review`,label:`در انتظار بررسی`},{id:`in_progress`,label:`در حال انجام`},{id:`shipped`,label:`ارسال شده`},{id:`delivered`,label:`تحویل شده`},{id:`cancelled`,label:`لغو شده`}];return(e,D)=>(i(),u(`div`,ft,[v(T)?(i(),u(`p`,pt,a(v(T)),1)):l(``,!0),s(Te,{class:`mobile-only`,tab:v(n),tabs:M,orders:v(p),"total-count":v(c).length,"current-page":v(S),"total-pages":v(h),"pagination-range":v(_),"visible-pages":v(b),"company-slug":v(C),"icon-variant":v(w),"onUpdate:tab":D[0]||=e=>n.value=e,onSelect:v(E),onBack:D[1]||=e=>v(t).push(`/categories`),onSetPage:v(k)},null,8,[`tab`,`orders`,`total-count`,`current-page`,`total-pages`,`pagination-range`,`visible-pages`,`company-slug`,`icon-variant`,`onSelect`,`onSetPage`]),s(dt,{class:`desktop-only`,stats:v(o),"desktop-filter":v(r),"desktop-filter-tabs":N,"filtered-orders":v(d),"paginated-orders":v(f),"pagination-range":v(g),"visible-pages":v(y),"current-page":v(x),"total-pages":v(m),onViewStatFilter:v(j),onSetDesktopFilter:v(A),onSelect:v(E),onSetPage:v(O),onNewOrder:D[2]||=e=>v(t).push(`/categories`)},null,8,[`stats`,`desktop-filter`,`filtered-orders`,`paginated-orders`,`pagination-range`,`visible-pages`,`current-page`,`total-pages`,`onViewStatFilter`,`onSetDesktopFilter`,`onSelect`,`onSetPage`])]))}}),[[`__scopeId`,`data-v-8db6efc9`]]);export{mt as default}; \ No newline at end of file +import{At as e,F as t,G as n,I as r,M as i,Pt as a,U as o,_ as s,c,d as l,f as u,g as d,i as f,k as p,l as m,nt as h,t as g,u as _,ut as v,v as y}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{t as b}from"./BasicIcon-DPmc0iaK.js";import{d as x,i as S,n as C,o as w}from"./format-C72AoJ2H.js";import{t as T}from"./catalog-DWpH1dVc.js";import{t as E}from"./IconOrders-Cf-FXBIB.js";import{C as D,S as O,a as k,c as A,f as j,o as M,r as N}from"./index-CE4Fw0WE.js";import{t as P}from"./EmptyState-DoHTAy4d.js";import{i as F,t as I}from"./constants-ptWoEwwP.js";import{t as L}from"./IconChevronBack-BsHmfODG.js";import{t as R}from"./IconProgressClock-C5Z0LodX.js";import"./IconFilter-CeX90aW_.js";import{t as z}from"./IconMoreVertical-DpXrbzlD.js";var B=[`awaiting_review`,`awaiting_check_review`],V=[`submitted`,`pricing`,`check_in_progress`,`awaiting_cash_confirmation`,`preparing`,`ready_to_ship`,`needs_correction`,`awaiting_settlement_fix`,`cash_in_progress`,`awaiting_cash_payment`,`cash_payment_submitted`,`check_needs_fix`,`awaiting_settlement`,`cash_invoice_issued`],H=[`shipped`],U=[`delivered`,`final_approved`,`checks_approved`,`cash_confirmed`],W=[`cancelled`,`rejected`,`expired`,`check_rejected`],ee=[...B,...V,...H];function te(e,t){switch(t){case`review`:return B.includes(e);case`in_progress`:return V.includes(e);case`shipped`:return H.includes(e);case`delivered`:return U.includes(e);case`cancelled`:return W.includes(e);default:return!0}}function G(e,t){return t===`active`?ee.includes(e):t===`done`?U.includes(e):t!==`cancelled`||W.includes(e)}function ne(e){return e.productName.trim()||e.productCode.trim()||e.catalogCode.trim()}function K(e){return e?.length?[...new Set(e.map(ne).filter(Boolean))].join(`، `):``}var q=5,J=5;function Y(){let e=D(),t=O(),n=j(),r=A(),i=T(),a=h(1),s=h(1),l=h(``);p(async()=>{await Promise.all([n.hydrate(),i.loadCompanies()])}),o(()=>t.query.submitted,n=>{let r=Number(n);if(!Number.isFinite(r)||r<1){l.value=``;return}l.value=r===1?`پیش‌سفارش با موفقیت ثبت شد.`:`${x(String(r))} پیش‌سفارش (برای شرکت‌های مختلف) ثبت شد.`;let{submitted:i,...a}=t.query;e.replace({query:a})},{immediate:!0});let u=c({get:()=>e.currentRoute.value.query.tab??`all`,set:t=>e.replace({query:{...e.currentRoute.value.query,tab:t}})}),d=c({get:()=>e.currentRoute.value.query.filter??`all`,set:t=>e.replace({query:{...e.currentRoute.value.query,filter:t===`all`?void 0:t}})}),f=c(()=>e.currentRoute.value.query.q??``),m=c(()=>r.user?n.userOrders(r.user.id):[]),g=c(()=>({total:m.value.length,review:m.value.filter(e=>B.includes(e.status)).length,inProgress:m.value.filter(e=>V.includes(e.status)).length,done:m.value.filter(e=>U.includes(e.status)).length}));function _(e,t){if(!t.trim())return!0;let n=t.trim().toLowerCase();return e.orderNumber.toLowerCase().includes(n)||e.companyName.toLowerCase().includes(n)||K(e.items).toLowerCase().includes(n)}let v=c(()=>m.value.filter(e=>_(e,f.value)).filter(e=>G(e.status,u.value))),y=c(()=>m.value.filter(e=>_(e,f.value)).filter(e=>te(e.status,d.value))),b=c(()=>{let e=(a.value-1)*q;return y.value.slice(e,e+q)}),S=c(()=>Math.max(1,Math.ceil(y.value.length/q))),C=c(()=>y.value.length===0?{start:0,end:0}:{start:(a.value-1)*q+1,end:Math.min(a.value*q,y.value.length)}),w=c(()=>{let e=S.value,t=a.value;if(e<=7)return Array.from({length:e},(e,t)=>t+1);let n=[1];t>3&&n.push(`ellipsis`);let r=Math.max(2,t-1),i=Math.min(e-1,t+1);for(let e=r;e<=i;e+=1)n.push(e);return t1&&n.push(e),n}),E=c(()=>Math.max(1,Math.ceil(v.value.length/J))),k=c(()=>{let e=(s.value-1)*J;return v.value.slice(e,e+J)}),M=c(()=>v.value.length===0?{start:0,end:0}:{start:(s.value-1)*J+1,end:Math.min(s.value*J,v.value.length)}),N=c(()=>{let e=E.value,t=s.value;if(e<=5)return Array.from({length:e},(e,t)=>t+1);let n=[1];t>3&&n.push(`ellipsis`);let r=Math.max(2,t-1),i=Math.min(e-1,t+1);for(let e=r;e<=i;e+=1)n.push(e);return t1&&n.push(e),n});o([y,d,f],()=>{a.value=1}),o([v,u,f],()=>{s.value=1});function P(e){return i.getCompany(e.companyId)?.slug??`par`}function F(e){return U.includes(e.status)?`success`:P(e)===`fam-baft`?`fam-baft`:`par`}function I(t){e.push(`/orders/${t}`)}function L(e){e<1||e>S.value||(a.value=e)}function R(e){e<1||e>E.value||(s.value=e)}function z(e){d.value=d.value===e&&e!==`all`?`all`:e}function H(e){d.value=e}return{tab:u,desktopFilter:d,searchQuery:f,stats:g,filteredOrdersMobile:v,filteredOrdersDesktop:y,paginatedOrders:b,paginatedOrdersMobile:k,totalPages:S,mobileTotalPages:E,paginationRange:C,mobilePaginationRange:M,visiblePages:w,mobileVisiblePages:N,currentPage:a,mobilePage:s,companySlug:P,iconVariant:F,submitSuccessMessage:l,goToOrder:I,setPage:L,setMobilePage:R,setDesktopFilter:z,viewStatFilter:H}}var X=[`aria-selected`,`onClick`],Z=g(y({__name:`FilterTabs`,props:{modelValue:{},tabs:{},equal:{type:Boolean}},emits:[`update:modelValue`],setup(n){return(r,o)=>(i(),u(`div`,{class:e([`filter-tabs`,{"filter-tabs--equal":n.equal}]),role:`tablist`},[(i(!0),u(f,null,t(n.tabs,t=>(i(),u(`button`,{key:t.id,type:`button`,role:`tab`,class:e([`filter-tab`,{active:n.modelValue===t.id}]),"aria-selected":n.modelValue===t.id,onClick:e=>r.$emit(`update:modelValue`,t.id)},a(t.label),11,X))),128))],2))}}),[[`__scopeId`,`data-v-4cd20e9b`]]),re=g(y({__name:`BaseBadge`,props:{variant:{}},setup(t){return(n,a)=>(i(),u(`span`,{class:e([`badge`,`badge-${t.variant??`neutral`}`])},[r(n.$slots,`default`,{},void 0,!0)],2))}}),[[`__scopeId`,`data-v-5e1be8f4`]]),Q=y({__name:`StatusBadge`,props:{status:{}},setup(e){let t=e,r=c(()=>I[t.status]??t.status),o=c(()=>F[t.status]??`neutral`);return(e,t)=>(i(),_(re,{variant:o.value},{default:n(()=>[d(a(r.value),1)]),_:1},8,[`variant`]))}}),ie=[`width`,`height`],ae=g(y({__name:`IconParLogo`,props:{size:{default:72}},setup(e){return(t,n)=>(i(),u(`svg`,{class:`icon-logo`,width:e.size,height:e.size,viewBox:`0 0 72 72`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,"aria-hidden":`true`},[...n[0]||=[m(`text`,{x:`36`,y:`50`,"text-anchor":`middle`,"dominant-baseline":`middle`,fill:`currentColor`,style:{"font-family":`IRANSans, Tahoma, sans-serif`,"font-size":`48px`,"font-weight":`700`}},` پ `,-1)]],8,ie))}}),[[`__scopeId`,`data-v-beccd0f1`]]),oe=[`width`,`height`],se=g(y({__name:`IconFamBaftLogo`,props:{size:{default:72}},setup(e){return(t,n)=>(i(),u(`svg`,{class:`icon-logo`,width:e.size,height:e.size,viewBox:`0 0 72 72`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,"aria-hidden":`true`},[...n[0]||=[m(`g`,{fill:`currentColor`},[m(`rect`,{x:`14`,y:`14`,width:`28`,height:`28`,rx:`4`,transform:`rotate(12 28 28)`}),m(`rect`,{x:`30`,y:`30`,width:`28`,height:`28`,rx:`4`,transform:`rotate(-12 44 44)`})],-1)]],8,oe))}}),[[`__scopeId`,`data-v-bbb3dcd8`]]),ce={class:`page orders-mobile-page`},le={class:`orders-mobile-page__nav`},ue={class:`page__scroll page__scroll--with-nav orders-mobile-page__scroll`},de={key:0,class:`orders-mobile-page__list`},fe=[`onClick`],pe={class:`order-card__content`},me={class:`order-card__number`},he={class:`order-card__fabric`},ge={class:`order-card__company`},_e={key:1,class:`order-card__amount`},ve={key:2,class:`orders-mobile-pagination`},ye={class:`orders-mobile-pagination__summary`},be={class:`orders-mobile-pagination__controls`},xe=[`disabled`],Se={key:0,class:`orders-mobile-pagination__ellipsis`},Ce=[`onClick`],we=[`disabled`],Te=g(y({__name:`MobileOrdersPage`,props:{tab:{},tabs:{},orders:{},totalCount:{},currentPage:{},totalPages:{},paginationRange:{},visiblePages:{},companySlug:{type:Function},iconVariant:{type:Function}},emits:[`update:tab`,`select`,`back`,`set-page`],setup(r,{emit:o}){let c=o;return(o,p)=>(i(),u(`div`,ce,[m(`header`,le,[m(`button`,{type:`button`,class:`nav-btn`,"aria-label":`بازگشت`,onClick:p[0]||=e=>c(`back`)},[s(L,{size:20})]),p[5]||=m(`h1`,{class:`orders-mobile-page__title`},`سفارش‌ها`,-1),s(k,{variant:`inline`})]),s(Z,{"model-value":r.tab,tabs:r.tabs,equal:``,class:`orders-mobile-page__tabs`,"onUpdate:modelValue":p[1]||=e=>c(`update:tab`,e)},null,8,[`model-value`,`tabs`]),m(`div`,ue,[r.orders.length>0?(i(),u(`div`,de,[(i(!0),u(f,null,t(r.orders,t=>(i(),u(`button`,{key:t.id,type:`button`,class:`order-card`,onClick:e=>c(`select`,t.id)},[m(`div`,pe,[p[7]||=m(`span`,{class:`order-card__label`},`سفارش شماره`,-1),m(`strong`,me,a(t.orderNumber),1),v(K)(t.items)?(i(),u(f,{key:0},[p[6]||=m(`span`,{class:`order-card__label`},`پارچه`,-1),m(`strong`,he,a(v(K)(t.items)),1)],64)):l(``,!0),m(`p`,ge,a(t.companyName),1),t.finalAmount?(i(),u(`p`,_e,a(v(C)(t.finalAmount)),1)):l(``,!0),s(Q,{status:t.status,class:`order-card__badge`},null,8,[`status`])]),m(`span`,{class:e([`order-card__icon`,`order-card__icon--${r.iconVariant(t)}`])},[r.companySlug(t)===`fam-baft`?(i(),_(se,{key:0,size:36})):(i(),_(ae,{key:1,size:36}))],2)],8,fe))),128))])):(i(),_(P,{key:1,variant:`orders`,message:`هنوز سفارشی ثبت نکرده‌اید`},{default:n(()=>[s(N,{onClick:p[2]||=e=>c(`back`)},{default:n(()=>[...p[8]||=[d(`ثبت سفارش جدید`,-1)]]),_:1})]),_:1})),r.totalCount>0?(i(),u(`div`,ve,[m(`p`,ye,a(v(x)(String(r.paginationRange.start)))+`– `+a(v(x)(String(r.paginationRange.end)))+` از `+a(v(w)(r.totalCount)),1),m(`div`,be,[m(`button`,{type:`button`,class:`orders-mobile-pagination__arrow`,disabled:r.currentPage<=1,"aria-label":`صفحه قبل`,onClick:p[3]||=e=>c(`set-page`,r.currentPage-1)},[s(M,{size:16,class:`orders-mobile-pagination__arrow--prev`})],8,xe),(i(!0),u(f,null,t(r.visiblePages,(t,n)=>(i(),u(f,{key:`${t}-${n}`},[t===`ellipsis`?(i(),u(`span`,Se,`…`)):(i(),u(`button`,{key:1,type:`button`,class:e([`orders-mobile-pagination__page`,{"orders-mobile-pagination__page--active":t===r.currentPage}]),onClick:e=>c(`set-page`,t)},a(v(x)(String(t))),11,Ce))],64))),128)),m(`button`,{type:`button`,class:`orders-mobile-pagination__arrow`,disabled:r.currentPage>=r.totalPages,"aria-label":`صفحه بعد`,onClick:p[4]||=e=>c(`set-page`,r.currentPage+1)},[s(M,{size:16,class:`orders-mobile-pagination__arrow--next`})],8,we)])])):l(``,!0)])]))}}),[[`__scopeId`,`data-v-47b1623c`]]),Ee=y({__name:`IconHourglass`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(i(),_(b,{icon:`vuesax-linear:timer-1`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),De=y({__name:`IconCheckCircleOutline`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(i(),_(b,{icon:`vuesax-linear:tick-circle`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),Oe={class:`desktop-page orders-desktop-page`},ke={class:`orders-stats desktop-grid-4`},Ae={class:`orders-stat-card`},je={class:`orders-stat-card__head`},Me={class:`orders-stat-card__icon orders-stat-card__icon--total`,"aria-hidden":`true`},Ne={class:`orders-stat-card__value`},Pe={class:`orders-stat-card`},Fe={class:`orders-stat-card__head`},Ie={class:`orders-stat-card__icon orders-stat-card__icon--review`,"aria-hidden":`true`},Le={class:`orders-stat-card__value`},Re={class:`orders-stat-card`},ze={class:`orders-stat-card__head`},Be={class:`orders-stat-card__icon orders-stat-card__icon--active`,"aria-hidden":`true`},Ve={class:`orders-stat-card__value`},He={class:`orders-stat-card`},Ue={class:`orders-stat-card__head`},We={class:`orders-stat-card__icon orders-stat-card__icon--done`,"aria-hidden":`true`},Ge={class:`orders-stat-card__value`},Ke={class:`desktop-toolbar`},qe={class:`orders-toolbar__pills`,role:`tablist`,"aria-label":`فیلتر وضعیت`},Je=[`aria-selected`,`onClick`],Ye={key:0,class:`desktop-table-wrap`},Xe={class:`desktop-table-scroll`},Ze={class:`desktop-table orders-table`},Qe={class:`orders-table__number`},$e={class:`orders-table__fabric`},et={class:`orders-table__amount`},tt={class:`orders-table__date`},$={class:`orders-table__actions`},nt=[`onClick`],rt={type:`button`,class:`orders-table__menu`,"aria-label":`گزینه‌های بیشتر`},it={class:`orders-pagination`},at={class:`orders-pagination__summary`},ot={class:`orders-pagination__controls`},st=[`disabled`],ct={key:0,class:`orders-pagination__ellipsis`},lt=[`onClick`],ut=[`disabled`],dt=y({__name:`DesktopOrdersPage`,props:{stats:{},desktopFilter:{},desktopFilterTabs:{},filteredOrders:{},paginatedOrders:{},paginationRange:{},visiblePages:{},currentPage:{},totalPages:{}},emits:[`viewStatFilter`,`setDesktopFilter`,`select`,`setPage`,`newOrder`],setup(r,{emit:o}){let c=o;return(o,l)=>(i(),u(`div`,Oe,[l[13]||=m(`header`,{class:`desktop-page__head`},[m(`h1`,{class:`desktop-page__title`},`سفارش‌ها`),m(`p`,{class:`desktop-page__subtitle`},`مدیریت و پیگیری سفارش‌های ثبت شده`)],-1),m(`div`,ke,[m(`article`,Ae,[m(`div`,je,[l[7]||=m(`span`,{class:`orders-stat-card__label orders-stat-card__label--total`},`همه سفارش‌ها`,-1),m(`span`,Me,[s(E,{size:20})])]),m(`strong`,Ne,a(v(w)(r.stats.total)),1),m(`button`,{type:`button`,class:`orders-stat-card__link`,onClick:l[0]||=e=>c(`viewStatFilter`,`all`)},` مشاهده همه `)]),m(`article`,Pe,[m(`div`,Fe,[l[8]||=m(`span`,{class:`orders-stat-card__label orders-stat-card__label--review`},`در انتظار بررسی`,-1),m(`span`,Ie,[s(Ee,{size:20})])]),m(`strong`,Le,a(v(w)(r.stats.review)),1),m(`button`,{type:`button`,class:`orders-stat-card__link`,onClick:l[1]||=e=>c(`viewStatFilter`,`review`)},` مشاهده همه `)]),m(`article`,Re,[m(`div`,ze,[l[9]||=m(`span`,{class:`orders-stat-card__label orders-stat-card__label--active`},`در حال انجام`,-1),m(`span`,Be,[s(R,{size:20})])]),m(`strong`,Ve,a(v(w)(r.stats.inProgress)),1),m(`button`,{type:`button`,class:`orders-stat-card__link`,onClick:l[2]||=e=>c(`viewStatFilter`,`in_progress`)},` مشاهده همه `)]),m(`article`,He,[m(`div`,Ue,[l[10]||=m(`span`,{class:`orders-stat-card__label orders-stat-card__label--done`},`تکمیل شده`,-1),m(`span`,We,[s(De,{size:20})])]),m(`strong`,Ge,a(v(w)(r.stats.done)),1),m(`button`,{type:`button`,class:`orders-stat-card__link`,onClick:l[3]||=e=>c(`viewStatFilter`,`delivered`)},` مشاهده همه `)])]),m(`div`,Ke,[m(`div`,qe,[(i(!0),u(f,null,t(r.desktopFilterTabs,t=>(i(),u(`button`,{key:t.id,type:`button`,role:`tab`,class:e([`orders-filter-pill`,{"orders-filter-pill--active":r.desktopFilter===t.id}]),"aria-selected":r.desktopFilter===t.id,onClick:e=>c(`setDesktopFilter`,t.id)},a(t.label),11,Je))),128))])]),r.filteredOrders.length>0?(i(),u(`div`,Ye,[m(`div`,Xe,[m(`table`,Ze,[l[11]||=m(`thead`,null,[m(`tr`,null,[m(`th`,{scope:`col`},`شماره سفارش`),m(`th`,{scope:`col`},`پارچه`),m(`th`,{scope:`col`},`شرکت`),m(`th`,{scope:`col`},`مبلغ فاکتور (تومان)`),m(`th`,{scope:`col`},`وضعیت`),m(`th`,{scope:`col`},`تاریخ ثبت`),m(`th`,{scope:`col`},`عملیات`)])],-1),m(`tbody`,null,[(i(!0),u(f,null,t(r.paginatedOrders,e=>(i(),u(`tr`,{key:e.id},[m(`td`,Qe,a(e.orderNumber),1),m(`td`,$e,a(v(K)(e.items)||`—`),1),m(`td`,null,a(e.companyName),1),m(`td`,et,a(e.finalAmount?v(w)(e.finalAmount):`—`),1),m(`td`,null,[s(Q,{status:e.status},null,8,[`status`])]),m(`td`,tt,a(v(S)(e.createdAt)),1),m(`td`,null,[m(`div`,$,[m(`button`,{type:`button`,class:`orders-table__action`,onClick:t=>c(`select`,e.id)},` مشاهده `,8,nt),m(`button`,rt,[s(z,{size:18})])])])]))),128))])])]),m(`div`,it,[m(`span`,at,` نمایش `+a(v(w)(r.paginationRange.start))+` تا `+a(v(w)(r.paginationRange.end))+` از `+a(v(w)(r.filteredOrders.length))+` سفارش `,1),m(`div`,ot,[m(`button`,{type:`button`,class:`orders-pagination__arrow`,disabled:r.currentPage<=1,"aria-label":`صفحه قبل`,onClick:l[4]||=e=>c(`setPage`,r.currentPage-1)},[s(M,{size:16,class:`orders-pagination__arrow-icon--prev`})],8,st),(i(!0),u(f,null,t(r.visiblePages,(t,n)=>(i(),u(f,{key:`${t}-${n}`},[t===`ellipsis`?(i(),u(`span`,ct,`…`)):(i(),u(`button`,{key:1,type:`button`,class:e([`orders-pagination__page`,{"orders-pagination__page--active":t===r.currentPage}]),onClick:e=>c(`setPage`,t)},a(v(w)(t)),11,lt))],64))),128)),m(`button`,{type:`button`,class:`orders-pagination__arrow`,disabled:r.currentPage>=r.totalPages,"aria-label":`صفحه بعد`,onClick:l[5]||=e=>c(`setPage`,r.currentPage+1)},[s(M,{size:16,class:`orders-pagination__arrow-icon--next`})],8,ut)])])])):(i(),_(P,{key:1,variant:`orders`,message:`هنوز سفارشی ثبت نکرده‌اید`},{default:n(()=>[s(N,{onClick:l[6]||=e=>c(`newOrder`)},{default:n(()=>[...l[12]||=[d(`ثبت سفارش جدید`,-1)]]),_:1})]),_:1}))]))}}),ft={class:`orders-view`},pt={key:0,class:`orders-view__success`,role:`status`},mt=g(y({__name:`OrdersView`,setup(e){let t=D(),{tab:n,desktopFilter:r,stats:o,filteredOrdersMobile:c,filteredOrdersDesktop:d,paginatedOrders:f,paginatedOrdersMobile:p,totalPages:m,mobileTotalPages:h,paginationRange:g,mobilePaginationRange:_,visiblePages:y,mobileVisiblePages:b,currentPage:x,mobilePage:S,companySlug:C,iconVariant:w,submitSuccessMessage:T,goToOrder:E,setPage:O,setMobilePage:k,setDesktopFilter:A,viewStatFilter:j}=Y(),M=[{id:`all`,label:`همه`},{id:`active`,label:`در جریان`},{id:`done`,label:`تکمیل شده`},{id:`cancelled`,label:`لغو شده`}],N=[{id:`review`,label:`در انتظار بررسی`},{id:`in_progress`,label:`در حال انجام`},{id:`shipped`,label:`ارسال شده`},{id:`delivered`,label:`تحویل شده`},{id:`cancelled`,label:`لغو شده`}];return(e,D)=>(i(),u(`div`,ft,[v(T)?(i(),u(`p`,pt,a(v(T)),1)):l(``,!0),s(Te,{class:`mobile-only`,tab:v(n),tabs:M,orders:v(p),"total-count":v(c).length,"current-page":v(S),"total-pages":v(h),"pagination-range":v(_),"visible-pages":v(b),"company-slug":v(C),"icon-variant":v(w),"onUpdate:tab":D[0]||=e=>n.value=e,onSelect:v(E),onBack:D[1]||=e=>v(t).push(`/categories`),onSetPage:v(k)},null,8,[`tab`,`orders`,`total-count`,`current-page`,`total-pages`,`pagination-range`,`visible-pages`,`company-slug`,`icon-variant`,`onSelect`,`onSetPage`]),s(dt,{class:`desktop-only`,stats:v(o),"desktop-filter":v(r),"desktop-filter-tabs":N,"filtered-orders":v(d),"paginated-orders":v(f),"pagination-range":v(g),"visible-pages":v(y),"current-page":v(x),"total-pages":v(m),onViewStatFilter:v(j),onSetDesktopFilter:v(A),onSelect:v(E),onSetPage:v(O),onNewOrder:D[2]||=e=>v(t).push(`/categories`)},null,8,[`stats`,`desktop-filter`,`filtered-orders`,`paginated-orders`,`pagination-range`,`visible-pages`,`current-page`,`total-pages`,`onViewStatFilter`,`onSetDesktopFilter`,`onSelect`,`onSetPage`])]))}}),[[`__scopeId`,`data-v-8db6efc9`]]);export{mt as default}; \ No newline at end of file diff --git a/dist/assets/OtpView-ynM94iKr.js b/dist/assets/OtpView-DSgorpHY.js similarity index 97% rename from dist/assets/OtpView-ynM94iKr.js rename to dist/assets/OtpView-DSgorpHY.js index ce1aa35..77f362b 100644 --- a/dist/assets/OtpView-ynM94iKr.js +++ b/dist/assets/OtpView-DSgorpHY.js @@ -1 +1 @@ -import{At as e,E as t,F as n,G as r,M as i,Pt as a,_ as o,c as s,d as c,f as l,g as u,i as d,k as f,l as p,nt as m,t as h,u as g,ut as _,v}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{l as y}from"./BasicIcon-DPmc0iaK.js";import{l as b}from"./dist-U-AqZ6hP.js";import{d as x,l as S,t as C}from"./format-C72AoJ2H.js";import{C as w,S as T,_ as E,c as ee}from"./index-DYwnTikp.js";import{t as te}from"./AuthShell-BRlVYnTX.js";import{t as ne}from"./FormErrorBanner-Ud1D04xf.js";import{n as re,r as D,t as O}from"./formErrors-DglFjYkZ.js";var k={class:`auth-lead`},A={dir:`ltr`},ie={class:`otp-row`,dir:`ltr`,role:`group`,"aria-label":`کد تأیید`},ae=[`id`,`value`,`aria-label`,`onInput`,`onKeydown`,`onPaste`],j={key:0,class:`auth-error`},M=[`disabled`],N=[`disabled`],P=4,F=60,I=h(v({__name:`OtpView`,setup(h){let v=T(),I=w(),L=ee(),R=s(()=>{let e=v.query.phone,t=Array.isArray(e)?e[0]:e;return S(typeof t==`string`?t:``)}),z=s(()=>v.query.mode===`register`),B=m(Array.from({length:P},()=>``)),V=m([]),H=m({}),U=m(``),W=m(F),G=s(()=>B.value.join(``)),K=s(()=>W.value<=0&&!L.loading),q=s(()=>x(String(W.value))),{pause:oe,resume:se}=b(()=>{if(W.value<=1){W.value=0,oe();return}--W.value},1e3,{immediate:!1});function J(){H.value=re(H.value,`code`),D(H.value)||(U.value=``)}function ce(e,t){V.value[t]=e}function Y(e){let n=Math.max(0,Math.min(3,e));t(()=>V.value[n]?.focus())}function X(){W.value=F,se()}function Z(e,t=0){let n=C(e).slice(0,P-t);if(!n)return t;let r=[...B.value],i=t;for(let e of n){if(i>=P)break;r[i]=e,i+=1}return B.value=r,J(),Math.min(i,3)}function Q(){G.value.length===P&&!L.loading&&$()}function le(e,t){let n=t.target,r=C(n.value);if(r.length>1){let t=Z(r,e);n.value=B.value[e]??``,Y(t),Q();return}let i=r.slice(-1);B.value[e]=i,n.value=i,J(),i&&e<3?Y(e+1):i&&Q()}function ue(e,t){if(t.key===`Backspace`){if(B.value[e]){B.value[e]=``,J();return}e>0&&(B.value[e-1]=``,J(),Y(e-1));return}if(t.key===`ArrowLeft`){t.preventDefault(),Y(e-1);return}t.key===`ArrowRight`&&(t.preventDefault(),Y(e+1))}function de(e,t){t.preventDefault(),Y(Z(t.clipboardData?.getData(`text`)??``,e)),Q()}function fe(e){return e?x(e):``}async function $(){if(L.loading)return;H.value={},U.value=``;let e={};if(G.value.length``),Y(0))}async function pe(){if(!K.value)return;U.value=``,H.value={};let e=z.value?E():null;if(z.value&&!e){U.value=`برای ارسال مجدد کد، نام و نام خانوادگی لازم است. لطفاً دوباره ثبت‌نام را شروع کنید.`;return}let t=await L.requestOtp(R.value,{isRegister:z.value,firstName:e?.firstName,lastName:e?.lastName,referrerAgentCode:e?.referrerAgentCode});t.success?(B.value=Array.from({length:P},()=>``),X(),Y(0)):U.value=t.message??`خطا در ارسال مجدد کد.`}function me(){I.replace({name:z.value?`register`:`login`})}return f(()=>{if(!R.value){I.replace({name:`login`});return}X(),Y(0)}),(t,s)=>(i(),g(te,{"back-to":z.value?`/register`:`/login`},{default:r(()=>[s[2]||=p(`h1`,{class:`auth-title`},`کد تأیید`,-1),p(`p`,k,[s[0]||=u(` کد ارسال‌شده به `,-1),p(`span`,A,a(_(x)(R.value)),1),s[1]||=u(` را وارد کنید `,-1)]),p(`form`,{class:`auth-form`,onSubmit:y($,[`prevent`])},[o(ne,{message:U.value},null,8,[`message`]),p(`div`,ie,[(i(!0),l(d,null,n(B.value,(t,n)=>(i(),l(`input`,{id:`otp-${n}`,key:n,ref_for:!0,ref:e=>ce(e,n),class:e([`otp-box`,{"is-invalid":H.value.code}]),type:`text`,inputmode:`numeric`,autocomplete:`one-time-code`,maxlength:`1`,value:fe(t),"aria-label":`رقم ${_(x)(String(n+1))}`,onInput:e=>le(n,e),onKeydown:e=>ue(n,e),onPaste:e=>de(n,e)},null,42,ae))),128))]),H.value.code?(i(),l(`p`,j,a(H.value.code),1)):c(``,!0),p(`button`,{class:`otp-resend`,type:`button`,disabled:!K.value,onClick:pe},[K.value?(i(),l(d,{key:0},[u(`ارسال مجدد کد`)],64)):(i(),l(d,{key:1},[u(`ارسال مجدد کد (`+a(q.value)+` ثانیه)`,1)],64))],8,M),p(`button`,{class:`auth-submit`,type:`submit`,disabled:_(L).loading},a(_(L).loading?`در حال بررسی…`:`تأیید`),9,N),p(`button`,{type:`button`,class:`otp-edit`,onClick:me},`ویرایش شماره`)],32)]),_:1},8,[`back-to`]))}}),[[`__scopeId`,`data-v-dd3d5b1e`]]);export{I as default}; \ No newline at end of file +import{At as e,E as t,F as n,G as r,M as i,Pt as a,_ as o,c as s,d as c,f as l,g as u,i as d,k as f,l as p,nt as m,t as h,u as g,ut as _,v}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{l as y}from"./BasicIcon-DPmc0iaK.js";import{l as b}from"./dist-U-AqZ6hP.js";import{d as x,l as S,t as C}from"./format-C72AoJ2H.js";import{C as w,S as T,_ as E,c as ee}from"./index-CE4Fw0WE.js";import{t as te}from"./AuthShell-prz1TrpO.js";import{t as ne}from"./FormErrorBanner-Ud1D04xf.js";import{n as re,r as D,t as O}from"./formErrors-DglFjYkZ.js";var k={class:`auth-lead`},A={dir:`ltr`},ie={class:`otp-row`,dir:`ltr`,role:`group`,"aria-label":`کد تأیید`},ae=[`id`,`value`,`aria-label`,`onInput`,`onKeydown`,`onPaste`],j={key:0,class:`auth-error`},M=[`disabled`],N=[`disabled`],P=4,F=60,I=h(v({__name:`OtpView`,setup(h){let v=T(),I=w(),L=ee(),R=s(()=>{let e=v.query.phone,t=Array.isArray(e)?e[0]:e;return S(typeof t==`string`?t:``)}),z=s(()=>v.query.mode===`register`),B=m(Array.from({length:P},()=>``)),V=m([]),H=m({}),U=m(``),W=m(F),G=s(()=>B.value.join(``)),K=s(()=>W.value<=0&&!L.loading),q=s(()=>x(String(W.value))),{pause:oe,resume:se}=b(()=>{if(W.value<=1){W.value=0,oe();return}--W.value},1e3,{immediate:!1});function J(){H.value=re(H.value,`code`),D(H.value)||(U.value=``)}function ce(e,t){V.value[t]=e}function Y(e){let n=Math.max(0,Math.min(3,e));t(()=>V.value[n]?.focus())}function X(){W.value=F,se()}function Z(e,t=0){let n=C(e).slice(0,P-t);if(!n)return t;let r=[...B.value],i=t;for(let e of n){if(i>=P)break;r[i]=e,i+=1}return B.value=r,J(),Math.min(i,3)}function Q(){G.value.length===P&&!L.loading&&$()}function le(e,t){let n=t.target,r=C(n.value);if(r.length>1){let t=Z(r,e);n.value=B.value[e]??``,Y(t),Q();return}let i=r.slice(-1);B.value[e]=i,n.value=i,J(),i&&e<3?Y(e+1):i&&Q()}function ue(e,t){if(t.key===`Backspace`){if(B.value[e]){B.value[e]=``,J();return}e>0&&(B.value[e-1]=``,J(),Y(e-1));return}if(t.key===`ArrowLeft`){t.preventDefault(),Y(e-1);return}t.key===`ArrowRight`&&(t.preventDefault(),Y(e+1))}function de(e,t){t.preventDefault(),Y(Z(t.clipboardData?.getData(`text`)??``,e)),Q()}function fe(e){return e?x(e):``}async function $(){if(L.loading)return;H.value={},U.value=``;let e={};if(G.value.length``),Y(0))}async function pe(){if(!K.value)return;U.value=``,H.value={};let e=z.value?E():null;if(z.value&&!e){U.value=`برای ارسال مجدد کد، نام و نام خانوادگی لازم است. لطفاً دوباره ثبت‌نام را شروع کنید.`;return}let t=await L.requestOtp(R.value,{isRegister:z.value,firstName:e?.firstName,lastName:e?.lastName,referrerAgentCode:e?.referrerAgentCode});t.success?(B.value=Array.from({length:P},()=>``),X(),Y(0)):U.value=t.message??`خطا در ارسال مجدد کد.`}function me(){I.replace({name:z.value?`register`:`login`})}return f(()=>{if(!R.value){I.replace({name:`login`});return}X(),Y(0)}),(t,s)=>(i(),g(te,{"back-to":z.value?`/register`:`/login`},{default:r(()=>[s[2]||=p(`h1`,{class:`auth-title`},`کد تأیید`,-1),p(`p`,k,[s[0]||=u(` کد ارسال‌شده به `,-1),p(`span`,A,a(_(x)(R.value)),1),s[1]||=u(` را وارد کنید `,-1)]),p(`form`,{class:`auth-form`,onSubmit:y($,[`prevent`])},[o(ne,{message:U.value},null,8,[`message`]),p(`div`,ie,[(i(!0),l(d,null,n(B.value,(t,n)=>(i(),l(`input`,{id:`otp-${n}`,key:n,ref_for:!0,ref:e=>ce(e,n),class:e([`otp-box`,{"is-invalid":H.value.code}]),type:`text`,inputmode:`numeric`,autocomplete:`one-time-code`,maxlength:`1`,value:fe(t),"aria-label":`رقم ${_(x)(String(n+1))}`,onInput:e=>le(n,e),onKeydown:e=>ue(n,e),onPaste:e=>de(n,e)},null,42,ae))),128))]),H.value.code?(i(),l(`p`,j,a(H.value.code),1)):c(``,!0),p(`button`,{class:`otp-resend`,type:`button`,disabled:!K.value,onClick:pe},[K.value?(i(),l(d,{key:0},[u(`ارسال مجدد کد`)],64)):(i(),l(d,{key:1},[u(`ارسال مجدد کد (`+a(q.value)+` ثانیه)`,1)],64))],8,M),p(`button`,{class:`auth-submit`,type:`submit`,disabled:_(L).loading},a(_(L).loading?`در حال بررسی…`:`تأیید`),9,N),p(`button`,{type:`button`,class:`otp-edit`,onClick:me},`ویرایش شماره`)],32)]),_:1},8,[`back-to`]))}}),[[`__scopeId`,`data-v-dd3d5b1e`]]);export{I as default}; \ No newline at end of file diff --git a/dist/assets/PageHeader-C5c2Pzrn.js b/dist/assets/PageHeader-BDPrFkve.js similarity index 95% rename from dist/assets/PageHeader-C5c2Pzrn.js rename to dist/assets/PageHeader-BDPrFkve.js index 1964213..1fd2ccc 100644 --- a/dist/assets/PageHeader-C5c2Pzrn.js +++ b/dist/assets/PageHeader-BDPrFkve.js @@ -1 +1 @@ -import{I as e,M as t,Pt as n,T as r,_ as i,d as a,f as o,i as s,l as c,t as l,v as u}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{a as d}from"./index-DYwnTikp.js";import{t as f}from"./IconChevronBack-BsHmfODG.js";var p={key:1,class:`nav-btn`},m={class:`page-nav__title`},h={class:`page-nav__trailing`},g={key:0,class:`page-nav__subtitle`},_={class:`header-text`},v={class:`page-title`},y={key:0,class:`page-subtitle`},b={class:`page-header__trailing`},x=l(u({inheritAttrs:!1,__name:`PageHeader`,props:{title:{},subtitle:{},showBack:{type:Boolean},centered:{type:Boolean}},emits:[`back`],setup(l){return(u,x)=>l.centered?(t(),o(s,{key:0},[c(`header`,r({class:`page-nav`},u.$attrs),[l.showBack?(t(),o(`button`,{key:0,type:`button`,class:`nav-btn`,"aria-label":`بازگشت`,onClick:x[0]||=e=>u.$emit(`back`)},[i(f,{size:20})])):(t(),o(`span`,p)),c(`h1`,m,n(l.title),1),c(`div`,h,[e(u.$slots,`trailing`,{},void 0,!0),i(d,{variant:`inline`,class:`mobile-only`})])],16),l.subtitle?(t(),o(`p`,g,n(l.subtitle),1)):a(``,!0)],64)):(t(),o(`header`,r({key:1,class:`page-header`},u.$attrs),[l.showBack?(t(),o(`button`,{key:0,type:`button`,class:`back-btn`,"aria-label":`بازگشت`,onClick:x[1]||=e=>u.$emit(`back`)},[i(f,{size:20})])):a(``,!0),c(`div`,_,[c(`h1`,v,n(l.title),1),l.subtitle?(t(),o(`p`,y,n(l.subtitle),1)):a(``,!0)]),c(`div`,b,[e(u.$slots,`trailing`,{},void 0,!0),i(d,{variant:`inline`,class:`mobile-only`})])],16))}}),[[`__scopeId`,`data-v-45fb00ff`]]);export{x as t}; \ No newline at end of file +import{I as e,M as t,Pt as n,T as r,_ as i,d as a,f as o,i as s,l as c,t as l,v as u}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{a as d}from"./index-CE4Fw0WE.js";import{t as f}from"./IconChevronBack-BsHmfODG.js";var p={key:1,class:`nav-btn`},m={class:`page-nav__title`},h={class:`page-nav__trailing`},g={key:0,class:`page-nav__subtitle`},_={class:`header-text`},v={class:`page-title`},y={key:0,class:`page-subtitle`},b={class:`page-header__trailing`},x=l(u({inheritAttrs:!1,__name:`PageHeader`,props:{title:{},subtitle:{},showBack:{type:Boolean},centered:{type:Boolean}},emits:[`back`],setup(l){return(u,x)=>l.centered?(t(),o(s,{key:0},[c(`header`,r({class:`page-nav`},u.$attrs),[l.showBack?(t(),o(`button`,{key:0,type:`button`,class:`nav-btn`,"aria-label":`بازگشت`,onClick:x[0]||=e=>u.$emit(`back`)},[i(f,{size:20})])):(t(),o(`span`,p)),c(`h1`,m,n(l.title),1),c(`div`,h,[e(u.$slots,`trailing`,{},void 0,!0),i(d,{variant:`inline`,class:`mobile-only`})])],16),l.subtitle?(t(),o(`p`,g,n(l.subtitle),1)):a(``,!0)],64)):(t(),o(`header`,r({key:1,class:`page-header`},u.$attrs),[l.showBack?(t(),o(`button`,{key:0,type:`button`,class:`back-btn`,"aria-label":`بازگشت`,onClick:x[1]||=e=>u.$emit(`back`)},[i(f,{size:20})])):a(``,!0),c(`div`,_,[c(`h1`,v,n(l.title),1),l.subtitle?(t(),o(`p`,y,n(l.subtitle),1)):a(``,!0)]),c(`div`,b,[e(u.$slots,`trailing`,{},void 0,!0),i(d,{variant:`inline`,class:`mobile-only`})])],16))}}),[[`__scopeId`,`data-v-45fb00ff`]]);export{x as t}; \ No newline at end of file diff --git a/dist/assets/ProductDetailView-5IPJ4kFG.js b/dist/assets/ProductDetailView-2P8iuLL9.js similarity index 98% rename from dist/assets/ProductDetailView-5IPJ4kFG.js rename to dist/assets/ProductDetailView-2P8iuLL9.js index 4aa8083..8d88fdd 100644 --- a/dist/assets/ProductDetailView-5IPJ4kFG.js +++ b/dist/assets/ProductDetailView-2P8iuLL9.js @@ -1 +1 @@ -import{At as e,D as t,F as n,G as r,M as i,Nt as a,Pt as o,U as s,_ as c,c as l,d as u,f as d,g as f,i as p,k as m,l as h,nt as g,o as ee,t as _,u as v,ut as y,v as b}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{l as x}from"./BasicIcon-DPmc0iaK.js";import{o as S}from"./format-C72AoJ2H.js";import{t as C}from"./catalog-DWpH1dVc.js";import{t as w}from"./cart-F5Rptvi1.js";import{t as T}from"./IconCart-D9TX5E-P.js";import{C as E,S as D,l as O,r as k}from"./index-DYwnTikp.js";import{t as te}from"./IconChevronBack-BsHmfODG.js";import{t as ne}from"./PageSkeleton-DYdjm4l9.js";import{a as re,o as ie,t as ae}from"./crm-CgnSby61.js";import{n as oe,r as se,t as ce}from"./IconWeave-DAcvD2P0.js";import{t as le}from"./useGoBack-DnRfwA4b.js";import{t as ue}from"./useTouchSwipe-C8fUyAcQ.js";import{t as de}from"./IconHeart-CvzbNH_T.js";import{n as fe,t as pe}from"./AddressCompletionModal-DV8NqYZ8.js";import{n as A,r as me,t as he}from"./productAvailability-B5nVr_sJ.js";var ge=[`width`,`height`],j=[`stroke`],M=[`stroke`],N=[`stroke`],_e=b({__name:`IconShare`,props:{size:{default:20},color:{default:`#9AA3AF`}},setup(e){return(t,n)=>(i(),d(`svg`,{width:e.size,height:e.size,viewBox:`0 0 24 24`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,"aria-hidden":`true`},[h(`path`,{d:`M12 3.5v11`,stroke:e.color,"stroke-width":`1.5`,"stroke-linecap":`round`},null,8,j),h(`path`,{d:`M8.25 7 12 3.25 15.75 7`,stroke:e.color,"stroke-width":`1.5`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null,8,M),h(`path`,{d:`M6.5 11.5v7.25c0 .97.78 1.75 1.75 1.75h7.5c.97 0 1.75-.78 1.75-1.75V11.5`,stroke:e.color,"stroke-width":`1.5`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null,8,N)],8,ge))}}),P={class:`dialog card product-order-modal`},F={class:`product-order-modal__head`},I={class:`product-order-modal__rows`},L={class:`product-order-row__color`},R=[`title`],z={key:0,class:`product-order-row__label`},B={class:`product-order-row__stepper`},V=[`disabled`,`onClick`],H={class:`product-order-row__qty`},U=[`disabled`,`onClick`],W={key:0,class:`product-order-modal__error`},G={class:`product-order-modal__footer`},K={class:`product-order-modal__prices`},q={key:0,class:`product-order-modal__price`},J={class:`product-order-modal__price`},Y={key:0},X={key:1},Z={key:2},Q={key:0,class:`product-order-modal__hint`},ve=_(b({__name:`ProductOrderModal`,props:{open:{type:Boolean},product:{},rollMeters:{},minRolls:{},basePrice:{},loading:{type:Boolean},error:{}},emits:[`close`,`submit`],setup(e,{emit:m}){let _=e,b=m,C=g([]);s(()=>[_.open,_.product?.colors.length],([e])=>{!e||!_.product||(C.value=_.product.colors.map(()=>0))});let w=l(()=>C.value.reduce((e,t)=>e+(t>0?t:0),0)),T=l(()=>w.value*_.rollMeters),E=l(()=>!_.basePrice||T.value<=0?null:_.basePrice*T.value);function D(e){e.key===`Escape`&&_.open&&b(`close`)}s(()=>_.open,e=>{document.body.style.overflow=e?`hidden`:``,e?window.addEventListener(`keydown`,D):window.removeEventListener(`keydown`,D)},{immediate:!0}),t(()=>{document.body.style.overflow=``,window.removeEventListener(`keydown`,D)});function O(e,t){let n=[...C.value];n[e]=Math.max(0,(n[e]??0)+t),C.value=n}function te(){b(`submit`,[...C.value])}return(t,s)=>(i(),v(ee,{to:`body`},[e.open&&e.product?(i(),d(`div`,{key:0,class:`dialog-overlay product-order-overlay`,role:`dialog`,"aria-modal":`true`,"aria-labelledby":`product-order-title`,onClick:s[1]||=x(e=>b(`close`),[`self`])},[h(`div`,P,[h(`header`,F,[s[2]||=h(`h3`,{id:`product-order-title`,class:`product-order-modal__title`},`ثبت سفارش`,-1),h(`button`,{type:`button`,class:`product-order-modal__close`,"aria-label":`بستن`,onClick:s[0]||=e=>b(`close`)},` × `)]),s[5]||=h(`div`,{class:`product-order-modal__table-head`,"aria-hidden":`true`},[h(`span`,null,`رنگ`),h(`span`,null,`طاقه`)],-1),h(`ul`,I,[(i(!0),d(p,null,n(e.product.colors,(t,n)=>(i(),d(`li`,{key:n,class:`product-order-row`},[h(`div`,L,[h(`span`,{class:`product-order-row__swatch`,style:a(y(A)(t,y(me)(e.product.colorImages,e.product.colorVariantImages,n))),title:t},null,12,R),t?(i(),d(`span`,z,o(t),1)):u(``,!0)]),h(`div`,B,[h(`button`,{type:`button`,class:`product-order-row__btn`,"aria-label":`کاهش`,disabled:e.loading||(C.value[n]??0)<=0,onClick:e=>O(n,-1)},` − `,8,V),h(`span`,H,o(y(S)(C.value[n]??0)),1),h(`button`,{type:`button`,class:`product-order-row__btn`,"aria-label":`افزایش`,disabled:e.loading,onClick:e=>O(n,1)},` + `,8,U)])]))),128))]),e.error?(i(),d(`p`,W,o(e.error),1)):u(``,!0),h(`footer`,G,[h(`div`,K,[e.basePrice&&e.basePrice>0?(i(),d(`div`,q,[s[3]||=h(`span`,null,`قیمت هر متر`,-1),h(`strong`,null,o(y(S)(e.basePrice))+` تومان`,1)])):u(``,!0),h(`div`,J,[s[4]||=h(`span`,null,`جمع تقریبی`,-1),E.value==null?w.value>0&&(!e.basePrice||e.basePrice<=0)?(i(),d(`strong`,X,o(y(S)(T.value))+` متر `,1)):(i(),d(`strong`,Z,`—`)):(i(),d(`strong`,Y,o(y(S)(E.value))+` تومان`,1))])]),e.minRolls>0?(i(),d(`p`,Q,` حداقل سفارش: `+o(y(S)(e.minRolls))+` طاقه `,1)):u(``,!0),c(k,{class:`product-order-modal__submit`,disabled:e.loading,onClick:te},{default:r(()=>[f(o(e.loading?`در حال ثبت...`:`ثبت`),1)]),_:1},8,[`disabled`])])])])):u(``,!0)]))}}),[[`__scopeId`,`data-v-5c5793fb`]]),ye={key:0,class:`page product-detail product-page`},be={class:`pd-header mobile-only`},xe={class:`pd-header__actions`},Se=[`aria-label`,`aria-pressed`],Ce={class:`desktop-page__head desktop-only pd-desk-head`},we={class:`desktop-page__title`},Te={class:`desktop-page__subtitle`},Ee={key:0,class:`pd-stock-badge`},De={class:`pd-desk-head__actions`},Oe=[`aria-label`,`aria-pressed`],ke={class:`page__scroll pd-scroll product-page__scroll`},Ae={class:`product-page__layout`},je={class:`product-page__main`},Me={class:`gallery`},Ne={key:0,class:`gallery__dots`,role:`tablist`,"aria-label":`تصاویر عمومی محصول`},Pe=[`aria-label`,`aria-selected`,`onClick`],Fe={key:0,class:`gallery__thumbs`},Ie=[`onClick`],Le={class:`pd-body`},Re={class:`title-row`},ze={key:0,class:`pd-stock-badge`},Be={key:1,class:`new-badge`},Ve={class:`code`},He={class:`specs`},Ue={class:`spec-cell`},We={class:`spec-icon`,"aria-hidden":`true`},Ge={class:`spec-cell`},Ke={class:`spec-cell`},qe={class:`spec-icon`,"aria-hidden":`true`},Je={class:`spec-cell`},Ye={class:`spec-icon`,"aria-hidden":`true`},Xe={key:0,class:`specs-extra`},Ze={class:`specs-extra__text`},Qe={class:`pd-section pd-section--boxed`},$e={class:`section-head`},et={class:`colors`},tt=[`onClick`],nt={key:0,class:`variant-images`,role:`list`},rt={class:`pd-section`},it={class:`tags`,role:`list`},at=[`onClick`],ot={class:`pd-section`},st={class:`roll-field`},ct={class:`product-page__sidebar desktop-only`},lt={class:`cart-summary-panel`},ut={class:`cart-summary-panel__row`},dt={class:`cart-summary-panel__row`},ft={key:0,class:`cart-summary-panel__unavailable`},pt={key:1,class:`cart-summary-panel__btn`},mt=[`disabled`],ht={class:`pd-footer mobile-only sticky-footer`},gt={key:0,class:`pd-footer__primary`},_t={key:1,class:`pd-footer__primary`},vt={class:`min-note`},yt=[`disabled`],bt={key:1,class:`page empty`},xt={key:2,class:`page empty`},St=_(b({__name:`ProductDetailView`,setup(t){let r={suit:`پارچه کت‌شلواری`,trousers:`پارچه شلواری`,shirt:`پارچه پیراهنی`},ee={summer:`پارچه تابستانه`,winter:`پارچه زمستانه`,all_season:`پارچه چهارفصل`},_=D(),v=E(),{goBack:b}=le(`/products`),x=ae(),k=O(),ge=w(),j=C(),M=l(()=>String(_.query.id??``)),N=g(null),P=g(!0),F=g(null),I=g(0),L=g(0),R=g(1),z=g(!1),B=g(!1),V=g(!1),H=g(``),{requesting:U,addressModalOpen:W,addressError:G,requestCatalog:K,submitAddressAndRequest:q,closeAddressModal:J}=fe(),Y=l(()=>N.value?.rollMeters??50),X=l(()=>N.value?he(N.value):!1),Z=l(()=>(N.value?.imageUrls??[]).filter(e=>typeof e==`string`&&e.trim().length>0)),Q=l(()=>Z.value[L.value]??``);function St(e){let t=Z.value.length;t&&(L.value=(e%t+t)%t)}let{onTouchStart:Ct,onTouchEnd:wt}=ue({enabled:()=>Z.value.length>1,onSwipe(e){St(L.value+e)}}),Tt=l(()=>{let e=N.value;if(!e)return[];let t=I.value,n=e.colorVariantImages?.[t];if(n?.length)return n;let r=e.colorImages?.[t];return r?[r]:[]}),Et=l(()=>N.value?.colors[I.value]??``),Dt=l(()=>R.value*Y.value),Ot=l(()=>{let e=N.value?.minMeterage;return e&&e>0?e:Y.value}),$=l(()=>Math.max(1,Math.ceil(Ot.value/Y.value))),kt=l(()=>N.value?.specs?.trim()??``),At=l(()=>kt.value.length>0),jt=l(()=>{let e=N.value;if(!e)return[];let t=[],n=ie.some(t=>t.id===e.categoryId)?e.categoryId:``,i=n?r[n]:``;i&&t.push({key:`usage-${n}`,label:i,to:{path:`/products`,query:{categoryId:n}}});let a=re.some(t=>t.id===e.season)?e.season:``,o=a?ee[a]:``;o&&t.push({key:`season-${a}`,label:o,to:{path:`/products`,query:{season:a}}});let s=new Set(t.flatMap(e=>[e.label,e.label.replace(/^پارچه\s*/,``)]));for(let n of e.tags){let e=n.replace(/^پارچه‌?های?\s*/,``).trim();if(!e||s.has(e)||t.some(t=>t.label.includes(e)))continue;let r=n.startsWith(`پارچه`)?n:`پارچه ${e}`;s.add(e),t.push({key:`tag-${n}`,label:r})}return t});async function Mt(){if(!M.value){N.value=null,P.value=!1;return}P.value=!0,F.value=null;try{await Promise.all([k.hydrate(),j.loadCompanies()]),N.value=await x.loadProductById(M.value),I.value=0,L.value=0,R.value=$.value}catch(e){N.value=null,F.value=e instanceof Error?e.message:`محصول یافت نشد.`}finally{P.value=!1}}m(Mt),s(M,Mt);function Nt(e,t=I.value){let n=e.rollMeters||50,r=e.orderMultiplier&&e.orderMultiplier>0?e.orderMultiplier:n,i=e.minMeterage&&e.minMeterage>0?e.minMeterage:n;return{id:e.id,companyId:e.companyId||``,catalogId:e.catalogId||``,name:e.name,code:e.code,color:e.color||e.colors[t]||`—`,minMeterage:i,orderMultiplier:r,basePrice:e.basePrice,isActive:e.isActive!==!1}}function Pt(e,t,n){let r=t>0?t:1,i=Math.ceil(e/r)*r,a=Math.ceil(n/r)*r;return Math.max(i,a)}function Ft(){!N.value||X.value||(H.value=``,V.value=!0)}function It(){V.value=!1,H.value=``}async function Lt(e){let t=N.value;if(!t)return;let n=t.colors.map((t,n)=>({color:t,idx:n,rolls:e[n]??0})).filter(e=>e.rolls>0);if(!n.length){H.value=`حداقل یک رنگ با تعداد انتخاب کنید.`;return}let r=n.reduce((e,t)=>e+t.rolls,0)*Y.value;if(r`${e.color||`رنگ ${e.idx+1}`}: ${S(e.rolls)} طاقه`).join(`، `);z.value=!0,H.value=``;try{let e=await ge.addItem(a,t.catalogCode||t.code,o,s,!0);if(!e.success){H.value=e.message??`افزودن به سفارش ناموفق بود.`;return}It()}finally{z.value=!1}}function Rt(){N.value&&k.toggle(N.value.id)}function zt(){let e=window.location.href;if(navigator.share){navigator.share({title:N.value?.name,url:e}).catch(()=>void 0);return}navigator.clipboard?.writeText(e)}function Bt(){!N.value||U.value||K(N.value)}function Vt(e){q(e)}return(t,r)=>N.value?(i(),d(`div`,ye,[h(`header`,be,[h(`button`,{type:`button`,class:`icon-btn`,"aria-label":`بازگشت`,onClick:r[0]||=(...e)=>y(b)&&y(b)(...e)},[c(te,{size:20})]),h(`div`,xe,[h(`button`,{type:`button`,class:`icon-btn`,"aria-label":y(k).isFavorite(N.value.id)?`حذف از علاقه‌مندی‌ها`:`افزودن به علاقه‌مندی‌ها`,"aria-pressed":y(k).isFavorite(N.value.id),onClick:Rt},[c(de,{size:20,filled:y(k).isFavorite(N.value.id),color:y(k).isFavorite(N.value.id)?`var(--color-primary)`:void 0},null,8,[`filled`,`color`])],8,Se),h(`button`,{type:`button`,class:`icon-btn`,"aria-label":`اشتراک‌گذاری`,onClick:zt},[c(_e,{size:20})])])]),h(`header`,Ce,[h(`div`,null,[h(`h1`,we,o(N.value.name),1),h(`p`,Te,[f(` کد محصول: `+o(N.value.code)+` `,1),X.value?(i(),d(`span`,Ee,`ناموجود`)):u(``,!0)])]),h(`div`,De,[h(`button`,{type:`button`,class:`icon-btn`,"aria-label":y(k).isFavorite(N.value.id)?`حذف از علاقه‌مندی‌ها`:`افزودن به علاقه‌مندی‌ها`,"aria-pressed":y(k).isFavorite(N.value.id),onClick:Rt},[c(de,{size:20,filled:y(k).isFavorite(N.value.id),color:y(k).isFavorite(N.value.id)?`var(--color-primary)`:void 0},null,8,[`filled`,`color`])],8,Oe),h(`button`,{type:`button`,class:`icon-btn`,"aria-label":`اشتراک‌گذاری`,onClick:zt},[c(_e,{size:20})])])]),h(`div`,ke,[h(`div`,Ae,[h(`div`,je,[h(`div`,Me,[h(`div`,{class:`gallery__stage`,onTouchstartPassive:r[1]||=(...e)=>y(Ct)&&y(Ct)(...e),onTouchendPassive:r[2]||=(...e)=>y(wt)&&y(wt)(...e)},[h(`div`,{class:`gallery__main`,style:a(Q.value?{backgroundImage:`url(${Q.value})`,backgroundSize:`cover`,backgroundPosition:`center`}:y(A)(N.value.color||Et.value))},null,4),Z.value.length>1?(i(),d(`div`,Ne,[(i(!0),d(p,null,n(Z.value,(t,n)=>(i(),d(`button`,{key:n,type:`button`,class:e([`gallery__dot`,{"gallery__dot--active":L.value===n}]),"aria-label":`تصویر ${n+1}`,"aria-selected":L.value===n,onClick:e=>L.value=n},null,10,Pe))),128))])):u(``,!0)],32),Z.value.length>1?(i(),d(`div`,Fe,[(i(!0),d(p,null,n(Z.value,(t,n)=>(i(),d(`button`,{key:t+n,type:`button`,class:e([`thumb`,{"thumb--active":L.value===n}]),onClick:e=>L.value=n},[h(`span`,{class:`thumb__swatch`,style:a({backgroundImage:`url(${t})`,backgroundSize:`cover`,backgroundPosition:`center`})},null,4)],10,Ie))),128))])):u(``,!0)]),h(`div`,Le,[h(`div`,Re,[h(`h1`,null,o(N.value.name),1),X.value?(i(),d(`span`,ze,`ناموجود`)):N.value.isNew?(i(),d(`span`,Be,`جدید`)):u(``,!0)]),h(`p`,Ve,`کد محصول: `+o(N.value.code),1),h(`div`,He,[h(`div`,Ue,[h(`span`,We,[c(oe,{color:`#98a2ad`})]),r[5]||=h(`span`,null,`عرض`,-1),h(`strong`,null,o(y(S)(N.value.widthCm))+` سانتی‌متر`,1)]),h(`div`,Ge,[r[6]||=h(`span`,{class:`spec-icon`,"aria-hidden":`true`},[h(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.6`},[h(`path`,{d:`M12 3.5 20 8v8l-8 4.5L4 16V8l8-4.5Z`})])],-1),r[7]||=h(`span`,null,`جنس`,-1),h(`strong`,null,o(N.value.composition||`—`),1)]),h(`div`,Ke,[h(`span`,qe,[c(se,{size:22,color:`#98a2ad`})]),r[8]||=h(`span`,null,`وزن`,-1),h(`strong`,null,o(N.value.weightGrams?`${y(S)(N.value.weightGrams)} گرم`:`—`),1)]),h(`div`,Je,[h(`span`,Ye,[c(ce,{color:`#98a2ad`})]),r[9]||=h(`span`,null,`نوع بافت`,-1),h(`strong`,null,o(N.value.weaveType||`—`),1)])]),At.value?(i(),d(p,{key:0},[h(`button`,{type:`button`,class:`specs-more`,onClick:r[3]||=e=>B.value=!B.value},[f(o(B.value?`بستن مشخصات`:`مشاهده همه مشخصات`)+` `,1),(i(),d(`svg`,{class:e([`specs-more__chevron`,{"is-open":B.value}]),viewBox:`0 0 12 12`,"aria-hidden":`true`},[...r[10]||=[h(`path`,{d:`M3 4.5 6 8l3-3.5`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.4`,"stroke-linecap":`round`},null,-1)]],2))]),B.value?(i(),d(`div`,Xe,[h(`p`,Ze,o(kt.value),1)])):u(``,!0)],64)):u(``,!0),h(`section`,Qe,[h(`div`,$e,[r[11]||=h(`h2`,null,`رنگ‌بندی`,-1),h(`span`,null,`(`+o(y(S)(N.value.colors.length))+` رنگ موجود)`,1)]),h(`div`,et,[(i(!0),d(p,null,n(N.value.colors,(t,n)=>(i(),d(`button`,{key:n,type:`button`,class:e([`color-dot`,{"color-dot--active":I.value===n}]),style:a(y(A)(t,y(me)(N.value.colorImages,N.value.colorVariantImages,n))),onClick:e=>I.value=n},null,14,tt))),128))]),Tt.value.length?(i(),d(`div`,nt,[(i(!0),d(p,null,n(Tt.value,(e,t)=>(i(),d(`div`,{key:`${I.value}-${t}-${e}`,class:`variant-images__item`,role:`listitem`,style:a({backgroundImage:`url(${e})`,backgroundSize:`cover`,backgroundPosition:`center`})},null,4))),128))])):u(``,!0)]),h(`section`,rt,[r[12]||=h(`h2`,{class:`section-title`},`دسته‌بندی`,-1),h(`div`,it,[(i(!0),d(p,null,n(jt.value,t=>(i(),d(`button`,{key:t.key,type:`button`,class:e([`tag`,{"tag--link":!!t.to}]),role:`listitem`,onClick:e=>t.to&&y(v).push(t.to)},o(t.label),11,at))),128))])]),h(`section`,ot,[r[13]||=h(`h2`,{class:`section-title`},`متراژ هر طاقه`,-1),h(`div`,st,o(y(S)(N.value.rollMeters))+` متر`,1)])])]),h(`aside`,ct,[h(`div`,lt,[r[17]||=h(`h2`,{class:`cart-summary-panel__title`},`ثبت سفارش`,-1),h(`div`,ut,[r[14]||=h(`span`,null,`متراژ سفارش`,-1),h(`strong`,null,o(y(S)(Dt.value))+` متر`,1)]),h(`div`,dt,[r[15]||=h(`span`,null,`حداقل سفارش`,-1),h(`strong`,null,o(y(S)($.value))+` طاقه`,1)]),X.value?(i(),d(`p`,ft,` این محصول فعلاً موجود نیست. `)):(i(),d(`div`,pt,[h(`button`,{type:`button`,class:`btn-primary`,onClick:Ft},[c(T,{size:18,color:`#ffffff`}),r[16]||=f(` افزودن به سفارش `,-1)])])),h(`button`,{type:`button`,class:`btn-secondary pd-desk-catalog-btn`,disabled:y(U),onClick:Bt},o(y(U)?`در حال ثبت...`:`درخواست کالیته`),9,mt)])])])]),h(`footer`,ht,[X.value?(i(),d(`div`,gt,[...r[18]||=[h(`p`,{class:`pd-footer__unavailable`},`این محصول فعلاً موجود نیست.`,-1)]])):(i(),d(`div`,_t,[h(`button`,{type:`button`,class:`btn-primary`,onClick:Ft},[c(T,{size:18,color:`#ffffff`}),r[19]||=f(` افزودن به سفارش `,-1)]),h(`p`,vt,`حداقل سفارش: `+o(y(S)($.value))+` طاقه`,1)])),h(`button`,{type:`button`,class:`btn-secondary`,disabled:y(U),onClick:Bt},o(y(U)?`در حال ثبت...`:`درخواست کالیته`),9,yt)]),c(pe,{open:y(W),loading:y(U),error:y(G),onClose:y(J),onSubmit:Vt},null,8,[`open`,`loading`,`error`,`onClose`]),c(ve,{open:V.value,product:N.value,"roll-meters":Y.value,"min-rolls":$.value,"base-price":N.value.basePrice,loading:z.value,error:H.value,onClose:It,onSubmit:Lt},null,8,[`open`,`product`,`roll-meters`,`min-rolls`,`base-price`,`loading`,`error`])])):P.value?(i(),d(`div`,bt,[c(ne,{variant:`detail`})])):(i(),d(`div`,xt,[h(`p`,null,o(F.value||`محصول یافت نشد.`),1),h(`button`,{type:`button`,onClick:r[4]||=e=>y(v).push(`/products`)},`بازگشت به لیست`)]))}}),[[`__scopeId`,`data-v-3b08e9ce`]]);export{St as default}; \ No newline at end of file +import{At as e,D as t,F as n,G as r,M as i,Nt as a,Pt as o,U as s,_ as c,c as l,d as u,f as d,g as f,i as p,k as m,l as h,nt as g,o as ee,t as _,u as v,ut as y,v as b}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{l as x}from"./BasicIcon-DPmc0iaK.js";import{o as S}from"./format-C72AoJ2H.js";import{t as C}from"./catalog-DWpH1dVc.js";import{t as w}from"./cart-F5Rptvi1.js";import{t as T}from"./IconCart-D9TX5E-P.js";import{C as E,S as D,l as O,r as k}from"./index-CE4Fw0WE.js";import{t as te}from"./IconChevronBack-BsHmfODG.js";import{t as ne}from"./PageSkeleton-DYdjm4l9.js";import{a as re,o as ie,t as ae}from"./crm-CgnSby61.js";import{n as oe,r as se,t as ce}from"./IconWeave-DAcvD2P0.js";import{t as le}from"./useGoBack-BrwZYRKb.js";import{t as ue}from"./useTouchSwipe-C8fUyAcQ.js";import{t as de}from"./IconHeart-CvzbNH_T.js";import{n as fe,t as pe}from"./AddressCompletionModal-CtlERD8F.js";import{n as A,r as me,t as he}from"./productAvailability-B5nVr_sJ.js";var ge=[`width`,`height`],j=[`stroke`],M=[`stroke`],N=[`stroke`],_e=b({__name:`IconShare`,props:{size:{default:20},color:{default:`#9AA3AF`}},setup(e){return(t,n)=>(i(),d(`svg`,{width:e.size,height:e.size,viewBox:`0 0 24 24`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,"aria-hidden":`true`},[h(`path`,{d:`M12 3.5v11`,stroke:e.color,"stroke-width":`1.5`,"stroke-linecap":`round`},null,8,j),h(`path`,{d:`M8.25 7 12 3.25 15.75 7`,stroke:e.color,"stroke-width":`1.5`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null,8,M),h(`path`,{d:`M6.5 11.5v7.25c0 .97.78 1.75 1.75 1.75h7.5c.97 0 1.75-.78 1.75-1.75V11.5`,stroke:e.color,"stroke-width":`1.5`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null,8,N)],8,ge))}}),P={class:`dialog card product-order-modal`},F={class:`product-order-modal__head`},I={class:`product-order-modal__rows`},L={class:`product-order-row__color`},R=[`title`],z={key:0,class:`product-order-row__label`},B={class:`product-order-row__stepper`},V=[`disabled`,`onClick`],H={class:`product-order-row__qty`},U=[`disabled`,`onClick`],W={key:0,class:`product-order-modal__error`},G={class:`product-order-modal__footer`},K={class:`product-order-modal__prices`},q={key:0,class:`product-order-modal__price`},J={class:`product-order-modal__price`},Y={key:0},X={key:1},Z={key:2},Q={key:0,class:`product-order-modal__hint`},ve=_(b({__name:`ProductOrderModal`,props:{open:{type:Boolean},product:{},rollMeters:{},minRolls:{},basePrice:{},loading:{type:Boolean},error:{}},emits:[`close`,`submit`],setup(e,{emit:m}){let _=e,b=m,C=g([]);s(()=>[_.open,_.product?.colors.length],([e])=>{!e||!_.product||(C.value=_.product.colors.map(()=>0))});let w=l(()=>C.value.reduce((e,t)=>e+(t>0?t:0),0)),T=l(()=>w.value*_.rollMeters),E=l(()=>!_.basePrice||T.value<=0?null:_.basePrice*T.value);function D(e){e.key===`Escape`&&_.open&&b(`close`)}s(()=>_.open,e=>{document.body.style.overflow=e?`hidden`:``,e?window.addEventListener(`keydown`,D):window.removeEventListener(`keydown`,D)},{immediate:!0}),t(()=>{document.body.style.overflow=``,window.removeEventListener(`keydown`,D)});function O(e,t){let n=[...C.value];n[e]=Math.max(0,(n[e]??0)+t),C.value=n}function te(){b(`submit`,[...C.value])}return(t,s)=>(i(),v(ee,{to:`body`},[e.open&&e.product?(i(),d(`div`,{key:0,class:`dialog-overlay product-order-overlay`,role:`dialog`,"aria-modal":`true`,"aria-labelledby":`product-order-title`,onClick:s[1]||=x(e=>b(`close`),[`self`])},[h(`div`,P,[h(`header`,F,[s[2]||=h(`h3`,{id:`product-order-title`,class:`product-order-modal__title`},`ثبت سفارش`,-1),h(`button`,{type:`button`,class:`product-order-modal__close`,"aria-label":`بستن`,onClick:s[0]||=e=>b(`close`)},` × `)]),s[5]||=h(`div`,{class:`product-order-modal__table-head`,"aria-hidden":`true`},[h(`span`,null,`رنگ`),h(`span`,null,`طاقه`)],-1),h(`ul`,I,[(i(!0),d(p,null,n(e.product.colors,(t,n)=>(i(),d(`li`,{key:n,class:`product-order-row`},[h(`div`,L,[h(`span`,{class:`product-order-row__swatch`,style:a(y(A)(t,y(me)(e.product.colorImages,e.product.colorVariantImages,n))),title:t},null,12,R),t?(i(),d(`span`,z,o(t),1)):u(``,!0)]),h(`div`,B,[h(`button`,{type:`button`,class:`product-order-row__btn`,"aria-label":`کاهش`,disabled:e.loading||(C.value[n]??0)<=0,onClick:e=>O(n,-1)},` − `,8,V),h(`span`,H,o(y(S)(C.value[n]??0)),1),h(`button`,{type:`button`,class:`product-order-row__btn`,"aria-label":`افزایش`,disabled:e.loading,onClick:e=>O(n,1)},` + `,8,U)])]))),128))]),e.error?(i(),d(`p`,W,o(e.error),1)):u(``,!0),h(`footer`,G,[h(`div`,K,[e.basePrice&&e.basePrice>0?(i(),d(`div`,q,[s[3]||=h(`span`,null,`قیمت هر متر`,-1),h(`strong`,null,o(y(S)(e.basePrice))+` تومان`,1)])):u(``,!0),h(`div`,J,[s[4]||=h(`span`,null,`جمع تقریبی`,-1),E.value==null?w.value>0&&(!e.basePrice||e.basePrice<=0)?(i(),d(`strong`,X,o(y(S)(T.value))+` متر `,1)):(i(),d(`strong`,Z,`—`)):(i(),d(`strong`,Y,o(y(S)(E.value))+` تومان`,1))])]),e.minRolls>0?(i(),d(`p`,Q,` حداقل سفارش: `+o(y(S)(e.minRolls))+` طاقه `,1)):u(``,!0),c(k,{class:`product-order-modal__submit`,disabled:e.loading,onClick:te},{default:r(()=>[f(o(e.loading?`در حال ثبت...`:`ثبت`),1)]),_:1},8,[`disabled`])])])])):u(``,!0)]))}}),[[`__scopeId`,`data-v-5c5793fb`]]),ye={key:0,class:`page product-detail product-page`},be={class:`pd-header mobile-only`},xe={class:`pd-header__actions`},Se=[`aria-label`,`aria-pressed`],Ce={class:`desktop-page__head desktop-only pd-desk-head`},we={class:`desktop-page__title`},Te={class:`desktop-page__subtitle`},Ee={key:0,class:`pd-stock-badge`},De={class:`pd-desk-head__actions`},Oe=[`aria-label`,`aria-pressed`],ke={class:`page__scroll pd-scroll product-page__scroll`},Ae={class:`product-page__layout`},je={class:`product-page__main`},Me={class:`gallery`},Ne={key:0,class:`gallery__dots`,role:`tablist`,"aria-label":`تصاویر عمومی محصول`},Pe=[`aria-label`,`aria-selected`,`onClick`],Fe={key:0,class:`gallery__thumbs`},Ie=[`onClick`],Le={class:`pd-body`},Re={class:`title-row`},ze={key:0,class:`pd-stock-badge`},Be={key:1,class:`new-badge`},Ve={class:`code`},He={class:`specs`},Ue={class:`spec-cell`},We={class:`spec-icon`,"aria-hidden":`true`},Ge={class:`spec-cell`},Ke={class:`spec-cell`},qe={class:`spec-icon`,"aria-hidden":`true`},Je={class:`spec-cell`},Ye={class:`spec-icon`,"aria-hidden":`true`},Xe={key:0,class:`specs-extra`},Ze={class:`specs-extra__text`},Qe={class:`pd-section pd-section--boxed`},$e={class:`section-head`},et={class:`colors`},tt=[`onClick`],nt={key:0,class:`variant-images`,role:`list`},rt={class:`pd-section`},it={class:`tags`,role:`list`},at=[`onClick`],ot={class:`pd-section`},st={class:`roll-field`},ct={class:`product-page__sidebar desktop-only`},lt={class:`cart-summary-panel`},ut={class:`cart-summary-panel__row`},dt={class:`cart-summary-panel__row`},ft={key:0,class:`cart-summary-panel__unavailable`},pt={key:1,class:`cart-summary-panel__btn`},mt=[`disabled`],ht={class:`pd-footer mobile-only sticky-footer`},gt={key:0,class:`pd-footer__primary`},_t={key:1,class:`pd-footer__primary`},vt={class:`min-note`},yt=[`disabled`],bt={key:1,class:`page empty`},xt={key:2,class:`page empty`},St=_(b({__name:`ProductDetailView`,setup(t){let r={suit:`پارچه کت‌شلواری`,trousers:`پارچه شلواری`,shirt:`پارچه پیراهنی`},ee={summer:`پارچه تابستانه`,winter:`پارچه زمستانه`,all_season:`پارچه چهارفصل`},_=D(),v=E(),{goBack:b}=le(`/products`),x=ae(),k=O(),ge=w(),j=C(),M=l(()=>String(_.query.id??``)),N=g(null),P=g(!0),F=g(null),I=g(0),L=g(0),R=g(1),z=g(!1),B=g(!1),V=g(!1),H=g(``),{requesting:U,addressModalOpen:W,addressError:G,requestCatalog:K,submitAddressAndRequest:q,closeAddressModal:J}=fe(),Y=l(()=>N.value?.rollMeters??50),X=l(()=>N.value?he(N.value):!1),Z=l(()=>(N.value?.imageUrls??[]).filter(e=>typeof e==`string`&&e.trim().length>0)),Q=l(()=>Z.value[L.value]??``);function St(e){let t=Z.value.length;t&&(L.value=(e%t+t)%t)}let{onTouchStart:Ct,onTouchEnd:wt}=ue({enabled:()=>Z.value.length>1,onSwipe(e){St(L.value+e)}}),Tt=l(()=>{let e=N.value;if(!e)return[];let t=I.value,n=e.colorVariantImages?.[t];if(n?.length)return n;let r=e.colorImages?.[t];return r?[r]:[]}),Et=l(()=>N.value?.colors[I.value]??``),Dt=l(()=>R.value*Y.value),Ot=l(()=>{let e=N.value?.minMeterage;return e&&e>0?e:Y.value}),$=l(()=>Math.max(1,Math.ceil(Ot.value/Y.value))),kt=l(()=>N.value?.specs?.trim()??``),At=l(()=>kt.value.length>0),jt=l(()=>{let e=N.value;if(!e)return[];let t=[],n=ie.some(t=>t.id===e.categoryId)?e.categoryId:``,i=n?r[n]:``;i&&t.push({key:`usage-${n}`,label:i,to:{path:`/products`,query:{categoryId:n}}});let a=re.some(t=>t.id===e.season)?e.season:``,o=a?ee[a]:``;o&&t.push({key:`season-${a}`,label:o,to:{path:`/products`,query:{season:a}}});let s=new Set(t.flatMap(e=>[e.label,e.label.replace(/^پارچه\s*/,``)]));for(let n of e.tags){let e=n.replace(/^پارچه‌?های?\s*/,``).trim();if(!e||s.has(e)||t.some(t=>t.label.includes(e)))continue;let r=n.startsWith(`پارچه`)?n:`پارچه ${e}`;s.add(e),t.push({key:`tag-${n}`,label:r})}return t});async function Mt(){if(!M.value){N.value=null,P.value=!1;return}P.value=!0,F.value=null;try{await Promise.all([k.hydrate(),j.loadCompanies()]),N.value=await x.loadProductById(M.value),I.value=0,L.value=0,R.value=$.value}catch(e){N.value=null,F.value=e instanceof Error?e.message:`محصول یافت نشد.`}finally{P.value=!1}}m(Mt),s(M,Mt);function Nt(e,t=I.value){let n=e.rollMeters||50,r=e.orderMultiplier&&e.orderMultiplier>0?e.orderMultiplier:n,i=e.minMeterage&&e.minMeterage>0?e.minMeterage:n;return{id:e.id,companyId:e.companyId||``,catalogId:e.catalogId||``,name:e.name,code:e.code,color:e.color||e.colors[t]||`—`,minMeterage:i,orderMultiplier:r,basePrice:e.basePrice,isActive:e.isActive!==!1}}function Pt(e,t,n){let r=t>0?t:1,i=Math.ceil(e/r)*r,a=Math.ceil(n/r)*r;return Math.max(i,a)}function Ft(){!N.value||X.value||(H.value=``,V.value=!0)}function It(){V.value=!1,H.value=``}async function Lt(e){let t=N.value;if(!t)return;let n=t.colors.map((t,n)=>({color:t,idx:n,rolls:e[n]??0})).filter(e=>e.rolls>0);if(!n.length){H.value=`حداقل یک رنگ با تعداد انتخاب کنید.`;return}let r=n.reduce((e,t)=>e+t.rolls,0)*Y.value;if(r`${e.color||`رنگ ${e.idx+1}`}: ${S(e.rolls)} طاقه`).join(`، `);z.value=!0,H.value=``;try{let e=await ge.addItem(a,t.catalogCode||t.code,o,s,!0);if(!e.success){H.value=e.message??`افزودن به سفارش ناموفق بود.`;return}It()}finally{z.value=!1}}function Rt(){N.value&&k.toggle(N.value.id)}function zt(){let e=window.location.href;if(navigator.share){navigator.share({title:N.value?.name,url:e}).catch(()=>void 0);return}navigator.clipboard?.writeText(e)}function Bt(){!N.value||U.value||K(N.value)}function Vt(e){q(e)}return(t,r)=>N.value?(i(),d(`div`,ye,[h(`header`,be,[h(`button`,{type:`button`,class:`icon-btn`,"aria-label":`بازگشت`,onClick:r[0]||=(...e)=>y(b)&&y(b)(...e)},[c(te,{size:20})]),h(`div`,xe,[h(`button`,{type:`button`,class:`icon-btn`,"aria-label":y(k).isFavorite(N.value.id)?`حذف از علاقه‌مندی‌ها`:`افزودن به علاقه‌مندی‌ها`,"aria-pressed":y(k).isFavorite(N.value.id),onClick:Rt},[c(de,{size:20,filled:y(k).isFavorite(N.value.id),color:y(k).isFavorite(N.value.id)?`var(--color-primary)`:void 0},null,8,[`filled`,`color`])],8,Se),h(`button`,{type:`button`,class:`icon-btn`,"aria-label":`اشتراک‌گذاری`,onClick:zt},[c(_e,{size:20})])])]),h(`header`,Ce,[h(`div`,null,[h(`h1`,we,o(N.value.name),1),h(`p`,Te,[f(` کد محصول: `+o(N.value.code)+` `,1),X.value?(i(),d(`span`,Ee,`ناموجود`)):u(``,!0)])]),h(`div`,De,[h(`button`,{type:`button`,class:`icon-btn`,"aria-label":y(k).isFavorite(N.value.id)?`حذف از علاقه‌مندی‌ها`:`افزودن به علاقه‌مندی‌ها`,"aria-pressed":y(k).isFavorite(N.value.id),onClick:Rt},[c(de,{size:20,filled:y(k).isFavorite(N.value.id),color:y(k).isFavorite(N.value.id)?`var(--color-primary)`:void 0},null,8,[`filled`,`color`])],8,Oe),h(`button`,{type:`button`,class:`icon-btn`,"aria-label":`اشتراک‌گذاری`,onClick:zt},[c(_e,{size:20})])])]),h(`div`,ke,[h(`div`,Ae,[h(`div`,je,[h(`div`,Me,[h(`div`,{class:`gallery__stage`,onTouchstartPassive:r[1]||=(...e)=>y(Ct)&&y(Ct)(...e),onTouchendPassive:r[2]||=(...e)=>y(wt)&&y(wt)(...e)},[h(`div`,{class:`gallery__main`,style:a(Q.value?{backgroundImage:`url(${Q.value})`,backgroundSize:`cover`,backgroundPosition:`center`}:y(A)(N.value.color||Et.value))},null,4),Z.value.length>1?(i(),d(`div`,Ne,[(i(!0),d(p,null,n(Z.value,(t,n)=>(i(),d(`button`,{key:n,type:`button`,class:e([`gallery__dot`,{"gallery__dot--active":L.value===n}]),"aria-label":`تصویر ${n+1}`,"aria-selected":L.value===n,onClick:e=>L.value=n},null,10,Pe))),128))])):u(``,!0)],32),Z.value.length>1?(i(),d(`div`,Fe,[(i(!0),d(p,null,n(Z.value,(t,n)=>(i(),d(`button`,{key:t+n,type:`button`,class:e([`thumb`,{"thumb--active":L.value===n}]),onClick:e=>L.value=n},[h(`span`,{class:`thumb__swatch`,style:a({backgroundImage:`url(${t})`,backgroundSize:`cover`,backgroundPosition:`center`})},null,4)],10,Ie))),128))])):u(``,!0)]),h(`div`,Le,[h(`div`,Re,[h(`h1`,null,o(N.value.name),1),X.value?(i(),d(`span`,ze,`ناموجود`)):N.value.isNew?(i(),d(`span`,Be,`جدید`)):u(``,!0)]),h(`p`,Ve,`کد محصول: `+o(N.value.code),1),h(`div`,He,[h(`div`,Ue,[h(`span`,We,[c(oe,{color:`#98a2ad`})]),r[5]||=h(`span`,null,`عرض`,-1),h(`strong`,null,o(y(S)(N.value.widthCm))+` سانتی‌متر`,1)]),h(`div`,Ge,[r[6]||=h(`span`,{class:`spec-icon`,"aria-hidden":`true`},[h(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.6`},[h(`path`,{d:`M12 3.5 20 8v8l-8 4.5L4 16V8l8-4.5Z`})])],-1),r[7]||=h(`span`,null,`جنس`,-1),h(`strong`,null,o(N.value.composition||`—`),1)]),h(`div`,Ke,[h(`span`,qe,[c(se,{size:22,color:`#98a2ad`})]),r[8]||=h(`span`,null,`وزن`,-1),h(`strong`,null,o(N.value.weightGrams?`${y(S)(N.value.weightGrams)} گرم`:`—`),1)]),h(`div`,Je,[h(`span`,Ye,[c(ce,{color:`#98a2ad`})]),r[9]||=h(`span`,null,`نوع بافت`,-1),h(`strong`,null,o(N.value.weaveType||`—`),1)])]),At.value?(i(),d(p,{key:0},[h(`button`,{type:`button`,class:`specs-more`,onClick:r[3]||=e=>B.value=!B.value},[f(o(B.value?`بستن مشخصات`:`مشاهده همه مشخصات`)+` `,1),(i(),d(`svg`,{class:e([`specs-more__chevron`,{"is-open":B.value}]),viewBox:`0 0 12 12`,"aria-hidden":`true`},[...r[10]||=[h(`path`,{d:`M3 4.5 6 8l3-3.5`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.4`,"stroke-linecap":`round`},null,-1)]],2))]),B.value?(i(),d(`div`,Xe,[h(`p`,Ze,o(kt.value),1)])):u(``,!0)],64)):u(``,!0),h(`section`,Qe,[h(`div`,$e,[r[11]||=h(`h2`,null,`رنگ‌بندی`,-1),h(`span`,null,`(`+o(y(S)(N.value.colors.length))+` رنگ موجود)`,1)]),h(`div`,et,[(i(!0),d(p,null,n(N.value.colors,(t,n)=>(i(),d(`button`,{key:n,type:`button`,class:e([`color-dot`,{"color-dot--active":I.value===n}]),style:a(y(A)(t,y(me)(N.value.colorImages,N.value.colorVariantImages,n))),onClick:e=>I.value=n},null,14,tt))),128))]),Tt.value.length?(i(),d(`div`,nt,[(i(!0),d(p,null,n(Tt.value,(e,t)=>(i(),d(`div`,{key:`${I.value}-${t}-${e}`,class:`variant-images__item`,role:`listitem`,style:a({backgroundImage:`url(${e})`,backgroundSize:`cover`,backgroundPosition:`center`})},null,4))),128))])):u(``,!0)]),h(`section`,rt,[r[12]||=h(`h2`,{class:`section-title`},`دسته‌بندی`,-1),h(`div`,it,[(i(!0),d(p,null,n(jt.value,t=>(i(),d(`button`,{key:t.key,type:`button`,class:e([`tag`,{"tag--link":!!t.to}]),role:`listitem`,onClick:e=>t.to&&y(v).push(t.to)},o(t.label),11,at))),128))])]),h(`section`,ot,[r[13]||=h(`h2`,{class:`section-title`},`متراژ هر طاقه`,-1),h(`div`,st,o(y(S)(N.value.rollMeters))+` متر`,1)])])]),h(`aside`,ct,[h(`div`,lt,[r[17]||=h(`h2`,{class:`cart-summary-panel__title`},`ثبت سفارش`,-1),h(`div`,ut,[r[14]||=h(`span`,null,`متراژ سفارش`,-1),h(`strong`,null,o(y(S)(Dt.value))+` متر`,1)]),h(`div`,dt,[r[15]||=h(`span`,null,`حداقل سفارش`,-1),h(`strong`,null,o(y(S)($.value))+` طاقه`,1)]),X.value?(i(),d(`p`,ft,` این محصول فعلاً موجود نیست. `)):(i(),d(`div`,pt,[h(`button`,{type:`button`,class:`btn-primary`,onClick:Ft},[c(T,{size:18,color:`#ffffff`}),r[16]||=f(` افزودن به سفارش `,-1)])])),h(`button`,{type:`button`,class:`btn-secondary pd-desk-catalog-btn`,disabled:y(U),onClick:Bt},o(y(U)?`در حال ثبت...`:`درخواست کالیته`),9,mt)])])])]),h(`footer`,ht,[X.value?(i(),d(`div`,gt,[...r[18]||=[h(`p`,{class:`pd-footer__unavailable`},`این محصول فعلاً موجود نیست.`,-1)]])):(i(),d(`div`,_t,[h(`button`,{type:`button`,class:`btn-primary`,onClick:Ft},[c(T,{size:18,color:`#ffffff`}),r[19]||=f(` افزودن به سفارش `,-1)]),h(`p`,vt,`حداقل سفارش: `+o(y(S)($.value))+` طاقه`,1)])),h(`button`,{type:`button`,class:`btn-secondary`,disabled:y(U),onClick:Bt},o(y(U)?`در حال ثبت...`:`درخواست کالیته`),9,yt)]),c(pe,{open:y(W),loading:y(U),error:y(G),onClose:y(J),onSubmit:Vt},null,8,[`open`,`loading`,`error`,`onClose`]),c(ve,{open:V.value,product:N.value,"roll-meters":Y.value,"min-rolls":$.value,"base-price":N.value.basePrice,loading:z.value,error:H.value,onClose:It,onSubmit:Lt},null,8,[`open`,`product`,`roll-meters`,`min-rolls`,`base-price`,`loading`,`error`])])):P.value?(i(),d(`div`,bt,[c(ne,{variant:`detail`})])):(i(),d(`div`,xt,[h(`p`,null,o(F.value||`محصول یافت نشد.`),1),h(`button`,{type:`button`,onClick:r[4]||=e=>y(v).push(`/products`)},`بازگشت به لیست`)]))}}),[[`__scopeId`,`data-v-3b08e9ce`]]);export{St as default}; \ No newline at end of file diff --git a/dist/assets/ProductsView-BHnNS9AU.js b/dist/assets/ProductsView-B0IHOsMw.js similarity index 98% rename from dist/assets/ProductsView-BHnNS9AU.js rename to dist/assets/ProductsView-B0IHOsMw.js index 276a849..4f855f4 100644 --- a/dist/assets/ProductsView-BHnNS9AU.js +++ b/dist/assets/ProductsView-B0IHOsMw.js @@ -1 +1 @@ -import{A as e,At as t,F as n,G as r,M as i,Nt as a,Pt as o,R as s,U as c,_ as l,c as u,d,f,g as p,h as ee,i as m,k as te,l as h,nt as g,o as ne,t as re,u as _,ut as v,v as y}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{l as b,n as ie}from"./BasicIcon-DPmc0iaK.js";import{t as ae}from"./IconCatalog-BaNuPmu8.js";import{C as oe,S as se,l as ce,o as le,r as ue}from"./index-DYwnTikp.js";import{t as de}from"./IconFilter-CeX90aW_.js";import{t as fe}from"./IconDiamond-BZQtRyIy.js";import{t as pe}from"./PageHeader-C5c2Pzrn.js";import{t as me}from"./PageSkeleton-DYdjm4l9.js";import{t as he}from"./crm-CgnSby61.js";import{n as ge,r as _e,t as ve}from"./useSlotBanners-VeAKsYT3.js";import{t as ye}from"./useTouchSwipe-C8fUyAcQ.js";import{t as be}from"./bannerLink-BW8t2Oqp.js";import"./SearchField-dVDn9y5S.js";import{t as xe}from"./IconHeart-CvzbNH_T.js";import{n as Se,r as Ce,t as we}from"./productAvailability-B5nVr_sJ.js";import{t as x}from"./AppSelect-CbWqXW3b.js";var Te={class:`page products-page`},Ee=[`aria-expanded`],De={class:`desktop-page__head desktop-only products-desk-head`},Oe={class:`products-desk-head__copy`},ke={class:`desktop-page__title`},Ae={class:`desktop-page__subtitle`},je={key:0,class:`products-filter-desk desktop-only`},Me={class:`products-filter-sheet products-filter-sheet--desk`},Ne={class:`products-filter-actions products-filter-actions--desk`},Pe={class:`products-filter-actions`},Fe={class:`page__scroll page__scroll--with-nav products-scroll`},Ie={key:0},Le={class:`cat-banner__content`},Re={key:0,class:`cat-banner__lead`},ze={key:1,class:`cat-banner__title-row`},Be={key:0,class:`cat-banner__icon-ring`,"aria-hidden":`true`},Ve={key:1,class:`cat-banner__title`},He={key:2,class:`cat-banner__title`},Ue={key:3,class:`cat-banner__tagline`},We={key:0,class:`cat-banner__icon-ring cat-banner__icon-ring--aside`,"aria-hidden":`true`},Ge={key:1,class:`cat-banner__dots`,role:`tablist`,"aria-label":`بنرها`},Ke=[`aria-label`,`aria-selected`,`onClick`],qe={key:0,class:`chips-row scroll-x`},Je=[`aria-label`],Ye=[`onClick`],Xe=[`onClick`],Ze={class:`list-meta`},Qe=[`aria-label`],$e={class:`products-list`},et=[`onClick`],tt={class:`product-item__body`},nt={class:`product-item__head`},rt={class:`product-item__title`},it={key:0,class:`new-tag new-tag--oos`},at={key:1,class:`new-tag`},ot=[`aria-label`,`aria-pressed`,`onClick`],st={class:`product-item__specs`},ct={class:`swatches`},lt=[`onClick`],ut={key:1,class:`empty-list`},S=re(y({__name:`ProductsView`,setup(re){let y=se(),S=oe(),C=he(),w=ce(),{banners:T}=ve(`products_hero`),E=g(0);c(T,()=>{E.value=0});let D=u(()=>M.value||P.value?0:T.value.length),O=u(()=>{if(M.value||P.value)return null;let e=T.value;return e.length?e[(E.value%e.length+e.length)%e.length]??null:null});function k(e){let t=T.value.length;t&&(E.value=(e%t+t)%t)}let{onTouchStart:A,onTouchEnd:j}=ye({enabled:()=>D.value>1,onSwipe(e){k(E.value+e)}}),M=u(()=>String(y.query.categoryId??``)),N=u(()=>String(y.query.companyId??``)),P=u(()=>String(y.query.season??``)),dt=u(()=>String(y.query.filterAxis??``)),F=u(()=>String(y.query.q??``)),ft=g(String(y.query.q??``)),I=g([]),L=g(!0),R=g(null),z=g(`newest`),B=g(!1),V=g(``),H=g(``),U=u(()=>!0),W=u(()=>[{value:``,label:`همه دسته‌ها`},...C.usageCategories.map(e=>({value:e.id,label:e.title}))]),G=u(()=>[{value:``,label:`همه فصول`},...C.seasonCategories.map(e=>({value:e.id,label:e.title}))]),K=u(()=>!!M.value||!!P.value),q=u(()=>M.value?C.usageCategories.find(e=>e.id===M.value)?.title??`محصولات`:P.value?C.seasonCategories.find(e=>e.id===P.value)?.title??`محصولات`:F.value?`جستجو: ${F.value}`:`محصولات`);function pt(e){let t=e.trim();return t.startsWith(`پارچه‌های `)?{lead:`پارچه‌های`,headline:t.slice(10)}:{lead:void 0,headline:t}}function mt(e){return e.icon||(e.id===`summer`?`bolt`:e.id===`winter`?`feather`:`diamond`)}function ht(){let e=Y.value.ctaLink?.trim();e&&be(e,S)}let J=u(()=>O.value?.bannerLink?.trim()||``);function gt(e){J.value&&(e.target.closest(`.cat-banner__cta, .cat-banner__dots`)||be(J.value,S))}let Y=u(()=>{let e=O.value;if(e)return{lead:void 0,headline:e.showTitle===!1?void 0:e.title,tagline:e.showSubtitle===!1?void 0:e.subtitle||void 0,showIcon:!1,ctaLabel:e.showCta===!1?void 0:e.ctaLabel||void 0,ctaLink:e.ctaLink||void 0};if(M.value){let e=C.usageCategories.find(e=>e.id===M.value),t=pt(e?.title??q.value);return{lead:e?.showTitle===!1?void 0:t.lead,headline:e?.showTitle===!1?void 0:t.headline,tagline:e?.showSubtitle===!1?void 0:e?.subtitle,showIcon:e?.showIcon!==!1}}if(P.value){let e=C.seasonCategories.find(e=>e.id===P.value);return{lead:void 0,headline:e?.showTitle===!1?void 0:e?.title??q.value,tagline:e?.showDescription===!1?void 0:e?.description||void 0,showIcon:e?.showIcon!==!1}}return{lead:void 0,headline:q.value,tagline:F.value?`نتایج جستجو`:`مشاهده و ثبت سفارش`,showIcon:!1}}),X=u(()=>{if(O.value||Y.value.showIcon===!1)return null;if(M.value){let e=C.usageCategories.find(e=>e.id===M.value);if(e)return ge(_e(e),ae)}if(P.value){let e=C.seasonCategories.find(e=>e.id===P.value);if(e)return ge(mt(e),fe)}return null}),Z=u(()=>{let e=O.value?.imageUrl?.trim();if(e)return e;if(M.value){let e=C.usageCategories.find(e=>e.id===M.value);if(e?.imageUrl)return e.imageUrl}if(P.value){let e=C.seasonCategories.find(e=>e.id===P.value);if(e?.imageUrl)return e.imageUrl}}),_t=u(()=>Z.value?{backgroundImage:`url(${Z.value})`}:void 0);u(()=>!M.value);let vt=u(()=>dt.value===`usage`||M.value?`season`:dt.value===`season`||P.value?`usage`:`season`),yt=u(()=>vt.value===`season`?`فصل`:`دسته کاربرد`),Q=u(()=>{let e=F.value.trim().toLowerCase(),t=[...I.value];return e&&(t=t.filter(t=>t.name.toLowerCase().includes(e)||t.code.toLowerCase().includes(e)||(t.composition||``).toLowerCase().includes(e))),z.value===`name`?t.sort((e,t)=>e.name.localeCompare(t.name,`fa`)):t.sort((e,t)=>Number(t.isNew)-Number(e.isNew)||e.name.localeCompare(t.name,`fa`))});function bt(){z.value=z.value===`newest`?`name`:`newest`}let xt=u(()=>z.value===`newest`?`مرتب‌سازی: جدیدترین`:`مرتب‌سازی: نام`);async function St(){L.value=!0,R.value=null;try{await C.loadCategories(),I.value=await C.loadBrowseProducts({categoryId:M.value||void 0,season:P.value||void 0,companyId:N.value||void 0})}catch(e){R.value=e instanceof Error?e.message:`بارگذاری محصولات ناموفق بود.`,I.value=[]}finally{L.value=!1}}te(async()=>{await w.hydrate(),await St()}),c([M,P,N],St),c(F,e=>{ft.value=e});function Ct(e){let t=M.value,n=t?`usage`:e?`season`:void 0;S.replace({path:`/products`,query:{...t?{categoryId:t}:{},...N.value?{companyId:N.value}:{},...e?{season:e}:{},...n?{filterAxis:n}:{},...F.value?{q:F.value}:{}}})}function wt(e){let t=P.value,n=t?`season`:e?`usage`:void 0;S.replace({path:`/products`,query:{...e?{categoryId:e}:{},...N.value?{companyId:N.value}:{},...t?{season:t}:{},...n?{filterAxis:n}:{},...F.value?{q:F.value}:{}}})}function Tt(e){S.push({path:`/product`,query:{id:e}})}function Et(e){return C.seasonCategories.find(t=>t.id===e)?.title??e}function Dt(e){w.toggle(e)}function Ot(){V.value=M.value,H.value=P.value,B.value=!0}function $(){B.value=!1}function kt(e,t){if(e)return`usage`;if(t)return`season`}function At(e,t){let n=kt(e,t);return{...e?{categoryId:e}:{},...t?{season:t}:{},...n?{filterAxis:n}:{},...N.value?{companyId:N.value}:{},...F.value?{q:F.value}:{}}}function jt(){S.replace({path:`/products`,query:At(V.value,H.value)}),$()}function Mt(){V.value=``,H.value=``,S.replace({path:`/products`,query:At(``,``)}),$()}return c(B,e=>{typeof window<`u`&&window.matchMedia(`(min-width: 768px)`).matches||(document.body.style.overflow=e?`hidden`:``)}),e(()=>{document.body.style.overflow=``}),(e,c)=>(i(),f(`div`,Te,[l(pe,{class:`mobile-only`,title:q.value,"show-back":``,centered:``,onBack:c[0]||=e=>v(S).back()},{trailing:r(()=>[U.value?(i(),f(`button`,{key:0,type:`button`,class:t([`nav-filter`,{"nav-filter--active":K.value}]),"aria-label":`فیلتر محصولات`,"aria-expanded":B.value,onClick:Ot},[l(de,{size:18})],10,Ee)):d(``,!0)]),_:1},8,[`title`]),h(`header`,De,[h(`div`,Oe,[h(`h1`,ke,o(q.value),1),h(`p`,Ae,o(Y.value.tagline||(F.value?`نتایج جستجو`:`مشاهده و ثبت سفارش`)),1)])]),U.value?(i(),f(`div`,je,[h(`div`,Me,[c[12]||=h(`header`,{class:`products-filter-sheet__head`},[h(`h2`,null,`فیلتر محصولات`)],-1),l(x,{modelValue:V.value,"onUpdate:modelValue":c[1]||=e=>V.value=e,class:`products-filter-section`,label:`دسته کاربرد`,"aria-label":`دسته کاربرد`,options:W.value},null,8,[`modelValue`,`options`]),l(x,{modelValue:H.value,"onUpdate:modelValue":c[2]||=e=>H.value=e,class:`products-filter-section`,label:`فصل`,"aria-label":`فصل`,options:G.value},null,8,[`modelValue`,`options`]),h(`div`,Ne,[l(ue,{onClick:jt},{default:r(()=>[...c[11]||=[p(`اعمال فیلتر`,-1)]]),_:1}),K.value?(i(),f(`button`,{key:0,type:`button`,class:`products-filter-clear`,onClick:Mt},` پاک کردن فیلترها `)):d(``,!0)])])])):d(``,!0),(i(),_(ne,{to:`body`},[l(ie,{name:`products-filter-sheet`},{default:r(()=>[B.value&&U.value?(i(),f(`div`,{key:0,class:`products-filter-panel mobile-only`,role:`dialog`,"aria-modal":`true`,"aria-labelledby":`products-filter-title`,onClick:b($,[`self`])},[h(`div`,{class:`products-filter-sheet`,onClick:c[6]||=b(()=>{},[`stop`])},[c[15]||=h(`div`,{class:`products-filter-sheet__handle`,"aria-hidden":`true`},null,-1),h(`header`,{class:`products-filter-sheet__head`},[c[13]||=h(`h2`,{id:`products-filter-title`},`فیلتر محصولات`,-1),h(`button`,{type:`button`,class:`products-filter-sheet__close`,"aria-label":`بستن`,onClick:$},` × `)]),l(x,{modelValue:V.value,"onUpdate:modelValue":c[3]||=e=>V.value=e,class:`products-filter-section`,label:`دسته کاربرد`,"aria-label":`دسته کاربرد`,options:W.value},null,8,[`modelValue`,`options`]),l(x,{modelValue:H.value,"onUpdate:modelValue":c[4]||=e=>H.value=e,class:`products-filter-section`,label:`فصل`,"aria-label":`فصل`,options:G.value},null,8,[`modelValue`,`options`]),h(`div`,Pe,[l(ue,{block:``,onClick:jt},{default:r(()=>[...c[14]||=[p(`اعمال فیلتر`,-1)]]),_:1}),K.value?(i(),f(`button`,{key:0,type:`button`,class:`products-filter-clear`,onClick:Mt},` پاک کردن فیلترها `)):d(``,!0),h(`button`,{type:`button`,class:`products-filter-link`,onClick:c[5]||=e=>{v(S).push(`/categories`),$()}},` مشاهده همه دسته‌بندی‌ها `)])])])):d(``,!0)]),_:1})])),h(`div`,Fe,[R.value?(i(),f(`p`,Ie,o(R.value),1)):L.value?(i(),_(me,{key:1,variant:`grid`})):(i(),f(m,{key:2},[h(`section`,{class:t([`cat-banner`,{"cat-banner--photo":!!Z.value,"cat-banner--linked":!!J.value}]),style:a(_t.value),onClick:gt,onTouchstartPassive:c[7]||=(...e)=>v(A)&&v(A)(...e),onTouchendPassive:c[8]||=(...e)=>v(j)&&v(j)(...e)},[h(`div`,Le,[Y.value.lead?(i(),f(`p`,Re,o(Y.value.lead),1)):d(``,!0),Y.value.headline||X.value&&Z.value?(i(),f(`div`,ze,[X.value&&Z.value?(i(),f(`span`,Be,[(i(),_(s(X.value),{size:22,color:`#ffffff`}))])):d(``,!0),Y.value.headline?(i(),f(`h2`,Ve,o(Y.value.headline),1)):d(``,!0)])):Y.value.headline?(i(),f(`h2`,He,o(Y.value.headline),1)):d(``,!0),Y.value.tagline?(i(),f(`p`,Ue,o(Y.value.tagline),1)):d(``,!0),Y.value.ctaLabel?(i(),f(`button`,{key:4,type:`button`,class:`cat-banner__cta`,onClick:b(ht,[`stop`])},o(Y.value.ctaLabel),1)):d(``,!0)]),X.value&&!Z.value?(i(),f(`span`,We,[(i(),_(s(X.value),{size:26,color:`#ffffff`}))])):d(``,!0),D.value>1?(i(),f(`div`,Ge,[(i(!0),f(m,null,n(v(T),(e,n)=>(i(),f(`button`,{key:e.id,type:`button`,class:t([`cat-banner__dot`,{"cat-banner__dot--active":n===E.value}]),"aria-label":e.title,"aria-selected":n===E.value,onClick:b(e=>k(n),[`stop`])},null,10,Ke))),128))])):d(``,!0)],38),U.value?(i(),f(`div`,qe,[h(`div`,{class:`chips`,role:`tablist`,"aria-label":yt.value},[vt.value===`season`?(i(),f(m,{key:0},[h(`button`,{type:`button`,class:t([`chip`,{"chip--active":!P.value}]),onClick:c[9]||=e=>Ct(``)},` همه `,2),(i(!0),f(m,null,n(v(C).seasonCategories,e=>(i(),f(`button`,{key:e.id,type:`button`,class:t([`chip`,{"chip--active":P.value===e.id}]),onClick:t=>Ct(e.id)},o(e.title),11,Ye))),128))],64)):(i(),f(m,{key:1},[h(`button`,{type:`button`,class:t([`chip`,{"chip--active":!M.value}]),onClick:c[10]||=e=>wt(``)},` همه `,2),(i(!0),f(m,null,n(v(C).usageCategories,e=>(i(),f(`button`,{key:e.id,type:`button`,class:t([`chip`,{"chip--active":M.value===e.id}]),onClick:t=>wt(e.id)},o(e.title),11,Xe))),128))],64))],8,Je)])):d(``,!0),h(`div`,Ze,[h(`span`,null,`تعداد محصولات: `+o(Q.value.length.toLocaleString(`fa-IR`)),1),h(`button`,{type:`button`,class:`list-meta__sort`,"aria-label":xt.value,onClick:bt},[...c[16]||=[ee(`۱مرتب‌سازی`,3)]],8,Qe)]),h(`div`,$e,[(i(!0),f(m,null,n(Q.value,e=>(i(),f(`article`,{key:e.id,class:`product-item`,onClick:t=>Tt(e.id)},[h(`div`,{class:`product-item__image`,style:a(e.imageUrl?{backgroundImage:`url(${e.imageUrl})`}:void 0)},null,4),h(`div`,tt,[h(`div`,nt,[h(`div`,rt,[h(`strong`,null,o(e.name),1),v(we)(e)?(i(),f(`span`,it,`ناموجود`)):e.isNew?(i(),f(`span`,at,`جدید`)):d(``,!0)]),h(`button`,{type:`button`,class:`bookmark`,"aria-label":v(w).isFavorite(e.id)?`حذف از علاقه‌مندی‌ها`:`افزودن به علاقه‌مندی‌ها`,"aria-pressed":v(w).isFavorite(e.id),onClick:b(t=>Dt(e.id),[`stop`])},[l(xe,{size:18,filled:v(w).isFavorite(e.id),color:v(w).isFavorite(e.id)?`var(--color-primary)`:`#9ca3af`},null,8,[`filled`,`color`])],8,ot)]),h(`ul`,st,[h(`li`,null,`عرض: `+o(e.widthCm.toLocaleString(`fa-IR`))+` سانتی‌متر`,1),h(`li`,null,`ترکیب: `+o(e.composition||`—`),1),h(`li`,null,`مناسب: `+o(Et(e.season)),1)]),h(`div`,ct,[(i(!0),f(m,null,n(e.colors.slice(0,6),(t,n)=>(i(),f(`span`,{key:n,class:`swatch`,style:a(v(Se)(t,v(Ce)(e.colorImages,e.colorVariantImages,n)))},null,4))),128))]),h(`button`,{type:`button`,class:`details-link`,onClick:b(t=>Tt(e.id),[`stop`])},[c[17]||=p(` مشاهده جزئیات `,-1),l(le,{size:14})],8,lt)])],8,et))),128))]),Q.value.length?d(``,!0):(i(),f(`p`,ut,`محصولی در این دسته یافت نشد.`))],64))])]))}}),[[`__scopeId`,`data-v-20ae6f8c`]]);export{S as default}; \ No newline at end of file +import{A as e,At as t,F as n,G as r,M as i,Nt as a,Pt as o,R as s,U as c,_ as l,c as u,d,f,g as p,h as ee,i as m,k as te,l as h,nt as g,o as ne,t as re,u as _,ut as v,v as y}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{l as b,n as ie}from"./BasicIcon-DPmc0iaK.js";import{t as ae}from"./IconCatalog-BaNuPmu8.js";import{C as oe,S as se,l as ce,o as le,r as ue}from"./index-CE4Fw0WE.js";import{t as de}from"./IconFilter-CeX90aW_.js";import{t as fe}from"./IconDiamond-BZQtRyIy.js";import{t as pe}from"./PageHeader-BDPrFkve.js";import{t as me}from"./PageSkeleton-DYdjm4l9.js";import{t as he}from"./crm-CgnSby61.js";import{n as ge,r as _e,t as ve}from"./useSlotBanners-fCEY91jj.js";import{t as ye}from"./useTouchSwipe-C8fUyAcQ.js";import{t as be}from"./bannerLink-BW8t2Oqp.js";import"./SearchField-dVDn9y5S.js";import{t as xe}from"./IconHeart-CvzbNH_T.js";import{n as Se,r as Ce,t as we}from"./productAvailability-B5nVr_sJ.js";import{t as x}from"./AppSelect-CbWqXW3b.js";var Te={class:`page products-page`},Ee=[`aria-expanded`],De={class:`desktop-page__head desktop-only products-desk-head`},Oe={class:`products-desk-head__copy`},ke={class:`desktop-page__title`},Ae={class:`desktop-page__subtitle`},je={key:0,class:`products-filter-desk desktop-only`},Me={class:`products-filter-sheet products-filter-sheet--desk`},Ne={class:`products-filter-actions products-filter-actions--desk`},Pe={class:`products-filter-actions`},Fe={class:`page__scroll page__scroll--with-nav products-scroll`},Ie={key:0},Le={class:`cat-banner__content`},Re={key:0,class:`cat-banner__lead`},ze={key:1,class:`cat-banner__title-row`},Be={key:0,class:`cat-banner__icon-ring`,"aria-hidden":`true`},Ve={key:1,class:`cat-banner__title`},He={key:2,class:`cat-banner__title`},Ue={key:3,class:`cat-banner__tagline`},We={key:0,class:`cat-banner__icon-ring cat-banner__icon-ring--aside`,"aria-hidden":`true`},Ge={key:1,class:`cat-banner__dots`,role:`tablist`,"aria-label":`بنرها`},Ke=[`aria-label`,`aria-selected`,`onClick`],qe={key:0,class:`chips-row scroll-x`},Je=[`aria-label`],Ye=[`onClick`],Xe=[`onClick`],Ze={class:`list-meta`},Qe=[`aria-label`],$e={class:`products-list`},et=[`onClick`],tt={class:`product-item__body`},nt={class:`product-item__head`},rt={class:`product-item__title`},it={key:0,class:`new-tag new-tag--oos`},at={key:1,class:`new-tag`},ot=[`aria-label`,`aria-pressed`,`onClick`],st={class:`product-item__specs`},ct={class:`swatches`},lt=[`onClick`],ut={key:1,class:`empty-list`},S=re(y({__name:`ProductsView`,setup(re){let y=se(),S=oe(),C=he(),w=ce(),{banners:T}=ve(`products_hero`),E=g(0);c(T,()=>{E.value=0});let D=u(()=>M.value||P.value?0:T.value.length),O=u(()=>{if(M.value||P.value)return null;let e=T.value;return e.length?e[(E.value%e.length+e.length)%e.length]??null:null});function k(e){let t=T.value.length;t&&(E.value=(e%t+t)%t)}let{onTouchStart:A,onTouchEnd:j}=ye({enabled:()=>D.value>1,onSwipe(e){k(E.value+e)}}),M=u(()=>String(y.query.categoryId??``)),N=u(()=>String(y.query.companyId??``)),P=u(()=>String(y.query.season??``)),dt=u(()=>String(y.query.filterAxis??``)),F=u(()=>String(y.query.q??``)),ft=g(String(y.query.q??``)),I=g([]),L=g(!0),R=g(null),z=g(`newest`),B=g(!1),V=g(``),H=g(``),U=u(()=>!0),W=u(()=>[{value:``,label:`همه دسته‌ها`},...C.usageCategories.map(e=>({value:e.id,label:e.title}))]),G=u(()=>[{value:``,label:`همه فصول`},...C.seasonCategories.map(e=>({value:e.id,label:e.title}))]),K=u(()=>!!M.value||!!P.value),q=u(()=>M.value?C.usageCategories.find(e=>e.id===M.value)?.title??`محصولات`:P.value?C.seasonCategories.find(e=>e.id===P.value)?.title??`محصولات`:F.value?`جستجو: ${F.value}`:`محصولات`);function pt(e){let t=e.trim();return t.startsWith(`پارچه‌های `)?{lead:`پارچه‌های`,headline:t.slice(10)}:{lead:void 0,headline:t}}function mt(e){return e.icon||(e.id===`summer`?`bolt`:e.id===`winter`?`feather`:`diamond`)}function ht(){let e=Y.value.ctaLink?.trim();e&&be(e,S)}let J=u(()=>O.value?.bannerLink?.trim()||``);function gt(e){J.value&&(e.target.closest(`.cat-banner__cta, .cat-banner__dots`)||be(J.value,S))}let Y=u(()=>{let e=O.value;if(e)return{lead:void 0,headline:e.showTitle===!1?void 0:e.title,tagline:e.showSubtitle===!1?void 0:e.subtitle||void 0,showIcon:!1,ctaLabel:e.showCta===!1?void 0:e.ctaLabel||void 0,ctaLink:e.ctaLink||void 0};if(M.value){let e=C.usageCategories.find(e=>e.id===M.value),t=pt(e?.title??q.value);return{lead:e?.showTitle===!1?void 0:t.lead,headline:e?.showTitle===!1?void 0:t.headline,tagline:e?.showSubtitle===!1?void 0:e?.subtitle,showIcon:e?.showIcon!==!1}}if(P.value){let e=C.seasonCategories.find(e=>e.id===P.value);return{lead:void 0,headline:e?.showTitle===!1?void 0:e?.title??q.value,tagline:e?.showDescription===!1?void 0:e?.description||void 0,showIcon:e?.showIcon!==!1}}return{lead:void 0,headline:q.value,tagline:F.value?`نتایج جستجو`:`مشاهده و ثبت سفارش`,showIcon:!1}}),X=u(()=>{if(O.value||Y.value.showIcon===!1)return null;if(M.value){let e=C.usageCategories.find(e=>e.id===M.value);if(e)return ge(_e(e),ae)}if(P.value){let e=C.seasonCategories.find(e=>e.id===P.value);if(e)return ge(mt(e),fe)}return null}),Z=u(()=>{let e=O.value?.imageUrl?.trim();if(e)return e;if(M.value){let e=C.usageCategories.find(e=>e.id===M.value);if(e?.imageUrl)return e.imageUrl}if(P.value){let e=C.seasonCategories.find(e=>e.id===P.value);if(e?.imageUrl)return e.imageUrl}}),_t=u(()=>Z.value?{backgroundImage:`url(${Z.value})`}:void 0);u(()=>!M.value);let vt=u(()=>dt.value===`usage`||M.value?`season`:dt.value===`season`||P.value?`usage`:`season`),yt=u(()=>vt.value===`season`?`فصل`:`دسته کاربرد`),Q=u(()=>{let e=F.value.trim().toLowerCase(),t=[...I.value];return e&&(t=t.filter(t=>t.name.toLowerCase().includes(e)||t.code.toLowerCase().includes(e)||(t.composition||``).toLowerCase().includes(e))),z.value===`name`?t.sort((e,t)=>e.name.localeCompare(t.name,`fa`)):t.sort((e,t)=>Number(t.isNew)-Number(e.isNew)||e.name.localeCompare(t.name,`fa`))});function bt(){z.value=z.value===`newest`?`name`:`newest`}let xt=u(()=>z.value===`newest`?`مرتب‌سازی: جدیدترین`:`مرتب‌سازی: نام`);async function St(){L.value=!0,R.value=null;try{await C.loadCategories(),I.value=await C.loadBrowseProducts({categoryId:M.value||void 0,season:P.value||void 0,companyId:N.value||void 0})}catch(e){R.value=e instanceof Error?e.message:`بارگذاری محصولات ناموفق بود.`,I.value=[]}finally{L.value=!1}}te(async()=>{await w.hydrate(),await St()}),c([M,P,N],St),c(F,e=>{ft.value=e});function Ct(e){let t=M.value,n=t?`usage`:e?`season`:void 0;S.replace({path:`/products`,query:{...t?{categoryId:t}:{},...N.value?{companyId:N.value}:{},...e?{season:e}:{},...n?{filterAxis:n}:{},...F.value?{q:F.value}:{}}})}function wt(e){let t=P.value,n=t?`season`:e?`usage`:void 0;S.replace({path:`/products`,query:{...e?{categoryId:e}:{},...N.value?{companyId:N.value}:{},...t?{season:t}:{},...n?{filterAxis:n}:{},...F.value?{q:F.value}:{}}})}function Tt(e){S.push({path:`/product`,query:{id:e}})}function Et(e){return C.seasonCategories.find(t=>t.id===e)?.title??e}function Dt(e){w.toggle(e)}function Ot(){V.value=M.value,H.value=P.value,B.value=!0}function $(){B.value=!1}function kt(e,t){if(e)return`usage`;if(t)return`season`}function At(e,t){let n=kt(e,t);return{...e?{categoryId:e}:{},...t?{season:t}:{},...n?{filterAxis:n}:{},...N.value?{companyId:N.value}:{},...F.value?{q:F.value}:{}}}function jt(){S.replace({path:`/products`,query:At(V.value,H.value)}),$()}function Mt(){V.value=``,H.value=``,S.replace({path:`/products`,query:At(``,``)}),$()}return c(B,e=>{typeof window<`u`&&window.matchMedia(`(min-width: 768px)`).matches||(document.body.style.overflow=e?`hidden`:``)}),e(()=>{document.body.style.overflow=``}),(e,c)=>(i(),f(`div`,Te,[l(pe,{class:`mobile-only`,title:q.value,"show-back":``,centered:``,onBack:c[0]||=e=>v(S).back()},{trailing:r(()=>[U.value?(i(),f(`button`,{key:0,type:`button`,class:t([`nav-filter`,{"nav-filter--active":K.value}]),"aria-label":`فیلتر محصولات`,"aria-expanded":B.value,onClick:Ot},[l(de,{size:18})],10,Ee)):d(``,!0)]),_:1},8,[`title`]),h(`header`,De,[h(`div`,Oe,[h(`h1`,ke,o(q.value),1),h(`p`,Ae,o(Y.value.tagline||(F.value?`نتایج جستجو`:`مشاهده و ثبت سفارش`)),1)])]),U.value?(i(),f(`div`,je,[h(`div`,Me,[c[12]||=h(`header`,{class:`products-filter-sheet__head`},[h(`h2`,null,`فیلتر محصولات`)],-1),l(x,{modelValue:V.value,"onUpdate:modelValue":c[1]||=e=>V.value=e,class:`products-filter-section`,label:`دسته کاربرد`,"aria-label":`دسته کاربرد`,options:W.value},null,8,[`modelValue`,`options`]),l(x,{modelValue:H.value,"onUpdate:modelValue":c[2]||=e=>H.value=e,class:`products-filter-section`,label:`فصل`,"aria-label":`فصل`,options:G.value},null,8,[`modelValue`,`options`]),h(`div`,Ne,[l(ue,{onClick:jt},{default:r(()=>[...c[11]||=[p(`اعمال فیلتر`,-1)]]),_:1}),K.value?(i(),f(`button`,{key:0,type:`button`,class:`products-filter-clear`,onClick:Mt},` پاک کردن فیلترها `)):d(``,!0)])])])):d(``,!0),(i(),_(ne,{to:`body`},[l(ie,{name:`products-filter-sheet`},{default:r(()=>[B.value&&U.value?(i(),f(`div`,{key:0,class:`products-filter-panel mobile-only`,role:`dialog`,"aria-modal":`true`,"aria-labelledby":`products-filter-title`,onClick:b($,[`self`])},[h(`div`,{class:`products-filter-sheet`,onClick:c[6]||=b(()=>{},[`stop`])},[c[15]||=h(`div`,{class:`products-filter-sheet__handle`,"aria-hidden":`true`},null,-1),h(`header`,{class:`products-filter-sheet__head`},[c[13]||=h(`h2`,{id:`products-filter-title`},`فیلتر محصولات`,-1),h(`button`,{type:`button`,class:`products-filter-sheet__close`,"aria-label":`بستن`,onClick:$},` × `)]),l(x,{modelValue:V.value,"onUpdate:modelValue":c[3]||=e=>V.value=e,class:`products-filter-section`,label:`دسته کاربرد`,"aria-label":`دسته کاربرد`,options:W.value},null,8,[`modelValue`,`options`]),l(x,{modelValue:H.value,"onUpdate:modelValue":c[4]||=e=>H.value=e,class:`products-filter-section`,label:`فصل`,"aria-label":`فصل`,options:G.value},null,8,[`modelValue`,`options`]),h(`div`,Pe,[l(ue,{block:``,onClick:jt},{default:r(()=>[...c[14]||=[p(`اعمال فیلتر`,-1)]]),_:1}),K.value?(i(),f(`button`,{key:0,type:`button`,class:`products-filter-clear`,onClick:Mt},` پاک کردن فیلترها `)):d(``,!0),h(`button`,{type:`button`,class:`products-filter-link`,onClick:c[5]||=e=>{v(S).push(`/categories`),$()}},` مشاهده همه دسته‌بندی‌ها `)])])])):d(``,!0)]),_:1})])),h(`div`,Fe,[R.value?(i(),f(`p`,Ie,o(R.value),1)):L.value?(i(),_(me,{key:1,variant:`grid`})):(i(),f(m,{key:2},[h(`section`,{class:t([`cat-banner`,{"cat-banner--photo":!!Z.value,"cat-banner--linked":!!J.value}]),style:a(_t.value),onClick:gt,onTouchstartPassive:c[7]||=(...e)=>v(A)&&v(A)(...e),onTouchendPassive:c[8]||=(...e)=>v(j)&&v(j)(...e)},[h(`div`,Le,[Y.value.lead?(i(),f(`p`,Re,o(Y.value.lead),1)):d(``,!0),Y.value.headline||X.value&&Z.value?(i(),f(`div`,ze,[X.value&&Z.value?(i(),f(`span`,Be,[(i(),_(s(X.value),{size:22,color:`#ffffff`}))])):d(``,!0),Y.value.headline?(i(),f(`h2`,Ve,o(Y.value.headline),1)):d(``,!0)])):Y.value.headline?(i(),f(`h2`,He,o(Y.value.headline),1)):d(``,!0),Y.value.tagline?(i(),f(`p`,Ue,o(Y.value.tagline),1)):d(``,!0),Y.value.ctaLabel?(i(),f(`button`,{key:4,type:`button`,class:`cat-banner__cta`,onClick:b(ht,[`stop`])},o(Y.value.ctaLabel),1)):d(``,!0)]),X.value&&!Z.value?(i(),f(`span`,We,[(i(),_(s(X.value),{size:26,color:`#ffffff`}))])):d(``,!0),D.value>1?(i(),f(`div`,Ge,[(i(!0),f(m,null,n(v(T),(e,n)=>(i(),f(`button`,{key:e.id,type:`button`,class:t([`cat-banner__dot`,{"cat-banner__dot--active":n===E.value}]),"aria-label":e.title,"aria-selected":n===E.value,onClick:b(e=>k(n),[`stop`])},null,10,Ke))),128))])):d(``,!0)],38),U.value?(i(),f(`div`,qe,[h(`div`,{class:`chips`,role:`tablist`,"aria-label":yt.value},[vt.value===`season`?(i(),f(m,{key:0},[h(`button`,{type:`button`,class:t([`chip`,{"chip--active":!P.value}]),onClick:c[9]||=e=>Ct(``)},` همه `,2),(i(!0),f(m,null,n(v(C).seasonCategories,e=>(i(),f(`button`,{key:e.id,type:`button`,class:t([`chip`,{"chip--active":P.value===e.id}]),onClick:t=>Ct(e.id)},o(e.title),11,Ye))),128))],64)):(i(),f(m,{key:1},[h(`button`,{type:`button`,class:t([`chip`,{"chip--active":!M.value}]),onClick:c[10]||=e=>wt(``)},` همه `,2),(i(!0),f(m,null,n(v(C).usageCategories,e=>(i(),f(`button`,{key:e.id,type:`button`,class:t([`chip`,{"chip--active":M.value===e.id}]),onClick:t=>wt(e.id)},o(e.title),11,Xe))),128))],64))],8,Je)])):d(``,!0),h(`div`,Ze,[h(`span`,null,`تعداد محصولات: `+o(Q.value.length.toLocaleString(`fa-IR`)),1),h(`button`,{type:`button`,class:`list-meta__sort`,"aria-label":xt.value,onClick:bt},[...c[16]||=[ee(`۱مرتب‌سازی`,3)]],8,Qe)]),h(`div`,$e,[(i(!0),f(m,null,n(Q.value,e=>(i(),f(`article`,{key:e.id,class:`product-item`,onClick:t=>Tt(e.id)},[h(`div`,{class:`product-item__image`,style:a(e.imageUrl?{backgroundImage:`url(${e.imageUrl})`}:void 0)},null,4),h(`div`,tt,[h(`div`,nt,[h(`div`,rt,[h(`strong`,null,o(e.name),1),v(we)(e)?(i(),f(`span`,it,`ناموجود`)):e.isNew?(i(),f(`span`,at,`جدید`)):d(``,!0)]),h(`button`,{type:`button`,class:`bookmark`,"aria-label":v(w).isFavorite(e.id)?`حذف از علاقه‌مندی‌ها`:`افزودن به علاقه‌مندی‌ها`,"aria-pressed":v(w).isFavorite(e.id),onClick:b(t=>Dt(e.id),[`stop`])},[l(xe,{size:18,filled:v(w).isFavorite(e.id),color:v(w).isFavorite(e.id)?`var(--color-primary)`:`#9ca3af`},null,8,[`filled`,`color`])],8,ot)]),h(`ul`,st,[h(`li`,null,`عرض: `+o(e.widthCm.toLocaleString(`fa-IR`))+` سانتی‌متر`,1),h(`li`,null,`ترکیب: `+o(e.composition||`—`),1),h(`li`,null,`مناسب: `+o(Et(e.season)),1)]),h(`div`,ct,[(i(!0),f(m,null,n(e.colors.slice(0,6),(t,n)=>(i(),f(`span`,{key:n,class:`swatch`,style:a(v(Se)(t,v(Ce)(e.colorImages,e.colorVariantImages,n)))},null,4))),128))]),h(`button`,{type:`button`,class:`details-link`,onClick:b(t=>Tt(e.id),[`stop`])},[c[17]||=p(` مشاهده جزئیات `,-1),l(le,{size:14})],8,lt)])],8,et))),128))]),Q.value.length?d(``,!0):(i(),f(`p`,ut,`محصولی در این دسته یافت نشد.`))],64))])]))}}),[[`__scopeId`,`data-v-20ae6f8c`]]);export{S as default}; \ No newline at end of file diff --git a/dist/assets/ProfileChecksView-Du4b9ELG.js b/dist/assets/ProfileChecksView-DW2GQwpr.js similarity index 70% rename from dist/assets/ProfileChecksView-Du4b9ELG.js rename to dist/assets/ProfileChecksView-DW2GQwpr.js index 029d12c..f0f92a5 100644 --- a/dist/assets/ProfileChecksView-Du4b9ELG.js +++ b/dist/assets/ProfileChecksView-DW2GQwpr.js @@ -1 +1 @@ -import{t as e}from"./CheckListView-DEwQImhv.js";import{M as t,u as n,v as r}from"./_plugin-vue_export-helper-1xMDlcEE.js";var i=r({__name:`ProfileChecksView`,setup(r){return(r,i)=>(t(),n(e))}});export{i as default}; \ No newline at end of file +import{t as e}from"./CheckListView-B39-XRBU.js";import{M as t,u as n,v as r}from"./_plugin-vue_export-helper-1xMDlcEE.js";var i=r({__name:`ProfileChecksView`,setup(r){return(r,i)=>(t(),n(e))}});export{i as default}; \ No newline at end of file diff --git a/dist/assets/ProfileDisplayView-prlxDHbu.js b/dist/assets/ProfileDisplayView-BremQpkm.js similarity index 96% rename from dist/assets/ProfileDisplayView-prlxDHbu.js rename to dist/assets/ProfileDisplayView-BremQpkm.js index a11cf86..53d27cf 100644 --- a/dist/assets/ProfileDisplayView-prlxDHbu.js +++ b/dist/assets/ProfileDisplayView-BremQpkm.js @@ -1 +1 @@ -import{At as e,F as t,G as n,M as r,Pt as i,_ as a,c as o,d as s,f as c,g as l,i as u,l as d,nt as f,t as p,u as m,ut as h,v as g}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{t as _}from"./BasicIcon-DPmc0iaK.js";import{u as v}from"./dist-U-AqZ6hP.js";import{t as y}from"./theme-DDmZuxb4.js";import{C as b,c as x,f as S,r as C}from"./index-DYwnTikp.js";import{t as w}from"./ProfileSubpageLayout-CbD3-u8j.js";var T={class:`settings-page`},E={class:`settings-links`,"aria-label":`حساب کاربری`},D={class:`settings-link__icon`,"aria-hidden":`true`},O={class:`settings-link__icon`,"aria-hidden":`true`},k={class:`settings-link__label`},A={key:0},j={class:`display-fieldset`},M={class:`display-grid`,role:`radiogroup`,"aria-label":`حالت نمایش`},N=[`aria-checked`,`onClick`],P={class:`theme-card__icon`,"aria-hidden":`true`},F={class:`theme-card__body`},I={class:`theme-card__label`},L={class:`theme-card__desc`},R={class:`theme-card__check`,"aria-hidden":`true`},z={key:0,class:`display-saved`},B=p(g({__name:`ProfileDisplayView`,setup(p){let g=b(),B=x(),V=S(),H=y(),U=f(!1),{start:W}=v(()=>{U.value=!1},2e3),G=[{value:`light`,label:`روشن`,description:`پس‌زمینه روشن و کنتراست بالا`,icon:`vuesax-linear:sun-1`},{value:`dark`,label:`تاریک`,description:`مناسب استفاده در شب`,icon:`vuesax-linear:moon`},{value:`system`,label:`سیستم`,description:`هم‌تراز با تنظیمات دستگاه`,icon:`vuesax-linear:mobile`}],K=o(()=>V.draftChecks.length);function q(){U.value=!0,W()}function J(){B.logout(),g.replace(`/welcome`)}return(o,f)=>(r(),m(w,{title:`تنظیمات`,subtitle:`نمایش، حساب کاربری و خروج`},{default:n(()=>[d(`div`,T,[d(`nav`,E,[d(`button`,{type:`button`,class:`settings-link`,onClick:f[0]||=e=>h(g).push(`/profile/edit`)},[d(`span`,D,[a(_,{icon:`vuesax-linear:profile-circle`,size:20,"stroke-width":1.5})]),f[2]||=d(`span`,{class:`settings-link__label`},`اطلاعات کاربری`,-1),a(_,{class:`settings-link__chevron`,icon:`vuesax-linear:arrow-left-1`,size:16,"stroke-width":1.5})]),d(`button`,{type:`button`,class:`settings-link`,onClick:f[1]||=e=>h(g).push(`/profile/checks`)},[d(`span`,O,[a(_,{icon:`vuesax-linear:card`,size:20,"stroke-width":1.5})]),d(`span`,k,[f[3]||=l(` لیست چک‌ها `,-1),K.value?(r(),c(`em`,A,`(`+i(K.value)+`)`,1)):s(``,!0)]),a(_,{class:`settings-link__chevron`,icon:`vuesax-linear:arrow-left-1`,size:16,"stroke-width":1.5})])]),d(`fieldset`,j,[f[4]||=d(`legend`,{class:`display-fieldset__legend`},`حالت نمایش`,-1),d(`div`,M,[(r(),c(u,null,t(G,t=>d(`button`,{key:t.value,type:`button`,class:e([`theme-card`,{"theme-card--active":h(H).preference===t.value}]),role:`radio`,"aria-checked":h(H).preference===t.value,onClick:e=>h(H).preference=t.value},[d(`span`,P,[a(_,{icon:t.icon,size:26,"stroke-width":1.5},null,8,[`icon`])]),d(`span`,F,[d(`strong`,I,i(t.label),1),d(`span`,L,i(t.description),1)]),d(`span`,R,[h(H).preference===t.value?(r(),m(_,{key:0,icon:`vuesax-linear:tick-circle`,size:20,"stroke-width":1.75})):s(``,!0)])],10,N)),64))])]),a(C,{block:``,onClick:q},{default:n(()=>[...f[5]||=[l(`ذخیره تنظیمات`,-1)]]),_:1}),U.value?(r(),c(`p`,z,`تنظیمات نمایش ذخیره شد ✓`)):s(``,!0),d(`button`,{type:`button`,class:`settings-logout`,onClick:J},`خروج`)])]),_:1}))}}),[[`__scopeId`,`data-v-f16dc950`]]);export{B as default}; \ No newline at end of file +import{At as e,F as t,G as n,M as r,Pt as i,_ as a,c as o,d as s,f as c,g as l,i as u,l as d,nt as f,t as p,u as m,ut as h,v as g}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{t as _}from"./BasicIcon-DPmc0iaK.js";import{u as v}from"./dist-U-AqZ6hP.js";import{t as y}from"./theme-DDmZuxb4.js";import{C as b,c as x,f as S,r as C}from"./index-CE4Fw0WE.js";import{t as w}from"./ProfileSubpageLayout-TZxLAQ-r.js";var T={class:`settings-page`},E={class:`settings-links`,"aria-label":`حساب کاربری`},D={class:`settings-link__icon`,"aria-hidden":`true`},O={class:`settings-link__icon`,"aria-hidden":`true`},k={class:`settings-link__label`},A={key:0},j={class:`display-fieldset`},M={class:`display-grid`,role:`radiogroup`,"aria-label":`حالت نمایش`},N=[`aria-checked`,`onClick`],P={class:`theme-card__icon`,"aria-hidden":`true`},F={class:`theme-card__body`},I={class:`theme-card__label`},L={class:`theme-card__desc`},R={class:`theme-card__check`,"aria-hidden":`true`},z={key:0,class:`display-saved`},B=p(g({__name:`ProfileDisplayView`,setup(p){let g=b(),B=x(),V=S(),H=y(),U=f(!1),{start:W}=v(()=>{U.value=!1},2e3),G=[{value:`light`,label:`روشن`,description:`پس‌زمینه روشن و کنتراست بالا`,icon:`vuesax-linear:sun-1`},{value:`dark`,label:`تاریک`,description:`مناسب استفاده در شب`,icon:`vuesax-linear:moon`},{value:`system`,label:`سیستم`,description:`هم‌تراز با تنظیمات دستگاه`,icon:`vuesax-linear:mobile`}],K=o(()=>V.draftChecks.length);function q(){U.value=!0,W()}function J(){B.logout(),g.replace(`/welcome`)}return(o,f)=>(r(),m(w,{title:`تنظیمات`,subtitle:`نمایش، حساب کاربری و خروج`},{default:n(()=>[d(`div`,T,[d(`nav`,E,[d(`button`,{type:`button`,class:`settings-link`,onClick:f[0]||=e=>h(g).push(`/profile/edit`)},[d(`span`,D,[a(_,{icon:`vuesax-linear:profile-circle`,size:20,"stroke-width":1.5})]),f[2]||=d(`span`,{class:`settings-link__label`},`اطلاعات کاربری`,-1),a(_,{class:`settings-link__chevron`,icon:`vuesax-linear:arrow-left-1`,size:16,"stroke-width":1.5})]),d(`button`,{type:`button`,class:`settings-link`,onClick:f[1]||=e=>h(g).push(`/profile/checks`)},[d(`span`,O,[a(_,{icon:`vuesax-linear:card`,size:20,"stroke-width":1.5})]),d(`span`,k,[f[3]||=l(` لیست چک‌ها `,-1),K.value?(r(),c(`em`,A,`(`+i(K.value)+`)`,1)):s(``,!0)]),a(_,{class:`settings-link__chevron`,icon:`vuesax-linear:arrow-left-1`,size:16,"stroke-width":1.5})])]),d(`fieldset`,j,[f[4]||=d(`legend`,{class:`display-fieldset__legend`},`حالت نمایش`,-1),d(`div`,M,[(r(),c(u,null,t(G,t=>d(`button`,{key:t.value,type:`button`,class:e([`theme-card`,{"theme-card--active":h(H).preference===t.value}]),role:`radio`,"aria-checked":h(H).preference===t.value,onClick:e=>h(H).preference=t.value},[d(`span`,P,[a(_,{icon:t.icon,size:26,"stroke-width":1.5},null,8,[`icon`])]),d(`span`,F,[d(`strong`,I,i(t.label),1),d(`span`,L,i(t.description),1)]),d(`span`,R,[h(H).preference===t.value?(r(),m(_,{key:0,icon:`vuesax-linear:tick-circle`,size:20,"stroke-width":1.75})):s(``,!0)])],10,N)),64))])]),a(C,{block:``,onClick:q},{default:n(()=>[...f[5]||=[l(`ذخیره تنظیمات`,-1)]]),_:1}),U.value?(r(),c(`p`,z,`تنظیمات نمایش ذخیره شد ✓`)):s(``,!0),d(`button`,{type:`button`,class:`settings-logout`,onClick:J},`خروج`)])]),_:1}))}}),[[`__scopeId`,`data-v-f16dc950`]]);export{B as default}; \ No newline at end of file diff --git a/dist/assets/ProfileEditView-BPZL0Ss-.js b/dist/assets/ProfileEditView-D8y7Pway.js similarity index 96% rename from dist/assets/ProfileEditView-BPZL0Ss-.js rename to dist/assets/ProfileEditView-D8y7Pway.js index 314e145..0e302c5 100644 --- a/dist/assets/ProfileEditView-BPZL0Ss-.js +++ b/dist/assets/ProfileEditView-D8y7Pway.js @@ -1 +1 @@ -import{G as e,K as t,M as n,Pt as r,_ as i,c as a,d as o,f as s,g as ee,k as c,l,nt as u,t as te,u as d,ut as f,v as p}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{o as ne,t as re}from"./BasicIcon-DPmc0iaK.js";import{t as m}from"./http-CU_N-R2R.js";import{C as h,c as g,i as _,r as ie,u as ae}from"./index-DYwnTikp.js";import{t as oe}from"./FormErrorBanner-Ud1D04xf.js";import{n as se,r as v,t as ce}from"./formErrors-DglFjYkZ.js";import{t as y}from"./BaseInput-CpE3bVJZ.js";import{t as le}from"./addresses-tV-zgZYG.js";import{t as ue}from"./ProfileSubpageLayout-CbD3-u8j.js";var b=512,x=.82;async function de(e){if(!e.type.startsWith(`image/`))throw Error(`فقط فایل تصویری مجاز است.`);if(e.size>8388608)throw Error(`حجم تصویر نباید بیشتر از ۸ مگابایت باشد.`);return C(await S(e))}function S(e){return new Promise((t,n)=>{let r=new FileReader;r.onload=()=>t(String(r.result??``)),r.onerror=()=>n(Error(`خواندن تصویر ناموفق بود.`)),r.readAsDataURL(e)})}function C(e){return new Promise((t,n)=>{let r=new Image;r.onload=()=>{let e=Math.min(1,b/Math.max(r.width,r.height)),i=Math.max(1,Math.round(r.width*e)),a=Math.max(1,Math.round(r.height*e)),o=document.createElement(`canvas`);o.width=i,o.height=a;let s=o.getContext(`2d`);if(!s){n(Error(`پردازش تصویر ناموفق بود.`));return}s.drawImage(r,0,0,i,a),t(o.toDataURL(`image/jpeg`,x))},r.onerror=()=>n(Error(`تصویر نامعتبر است.`)),r.src=e})}var w={class:`profile-edit`},T={class:`avatar-editor`},E={class:`avatar-editor__actions`},D={class:`avatar-editor__btns`},O=[`disabled`],k=[`disabled`],A={class:`profile-edit__intro`},j={class:`profile-edit__intro-icon`,"aria-hidden":`true`},M={class:`profile-edit__grid`},N={key:1,class:`form-group profile-edit__full`},P={key:0,class:`input-error-text`},F={key:2,class:`form-group profile-edit__full profile-edit__saved-address`},I={key:0,class:`profile-edit__address-hint`},L={key:1,class:`profile-edit__address-text`},fe={key:2,class:`profile-edit__address-hint`},R={class:`profile-edit__actions`},z={key:0,class:`profile-edit__saved`},B=te(p({__name:`ProfileEditView`,setup(te){let p=g(),b=h(),x=u(null),S=u(!0),C=u(p.user?.firstName??``),B=u(p.user?.lastName??``),V=u(p.user?.nationalId??``),H=u(p.user?.address??``),U=u(p.user?.avatarUrl??null),W=u(null),G=u({}),K=u(``),q=u(!1),J=u(!1),Y=u(!1),X=ae(),pe=a(()=>`${C.value.trim().charAt(0)}${B.value.trim().charAt(0)}`||`؟`),me=a(()=>p.user?.agentCode?.trim()||`—`);function Z(e){G.value=se(G.value,e),v(G.value)||(K.value=``)}function he(){W.value?.click()}async function Q(e){Y.value=!0,K.value=``;try{let t=await p.updateProfile({avatarUrl:e??``});t?U.value=t.avatarUrl??null:U.value=e}catch(e){K.value=e instanceof Error?e.message:`ذخیره تصویر ناموفق بود.`}finally{Y.value=!1}}async function ge(e){let t=e.target,n=t.files?.[0];if(t.value=``,n){Y.value=!0,K.value=``;try{let e=await de(n);U.value=e,await Q(e)}catch(e){K.value=e instanceof Error?e.message:`بارگذاری تصویر ناموفق بود.`,Y.value=!1}}}async function $(){U.value=null,await Q(null)}c(async()=>{S.value=!0;try{let e=await le.list(),t=e.find(e=>e.isDefault)??e[0];x.value=t?.text??null}catch{x.value=null}finally{S.value=!1}});async function _e(){G.value={},K.value=``,q.value=!1;let e={};if(C.value.trim()||(e.firstName=`نام الزامی است.`),B.value.trim()||(e.lastName=`نام خانوادگی الزامی است.`),V.value&&V.value.length!==10&&(e.nationalId=`کد ملی باید ۱۰ رقم باشد.`),v(e)){G.value=e,K.value=ce,X.show(`لطفاً فیلدهای مشخص‌شده را اصلاح کنید.`,{tone:`error`});return}let t={firstName:C.value.trim(),lastName:B.value.trim(),nationalId:V.value||void 0,avatarUrl:U.value??``};p.isAgent&&(t.address=H.value.trim()),J.value=!0;try{if(!await p.updateProfile(t)){K.value=`ذخیره پروفایل ناموفق بود.`,X.show(`ذخیره اطلاعات انجام نشد. دوباره تلاش کنید.`,{tone:`error`});return}q.value=!0,X.show(`اطلاعات کاربری با موفقیت ذخیره شد.`),setTimeout(()=>{q.value=!1},2e3)}catch(e){let t=e instanceof m||e instanceof Error?e.message:`ذخیره پروفایل ناموفق بود.`;K.value=t,X.show(t,{tone:`error`})}finally{J.value=!1}}return(a,c)=>(n(),d(ue,{title:`اطلاعات کاربری`,subtitle:`ویرایش تصویر، نام و کد ملی حساب کاربری`},{default:e(()=>[i(oe,{message:K.value},null,8,[`message`]),l(`div`,w,[l(`div`,T,[i(_,{src:U.value,initials:pe.value,size:96,class:`avatar-editor__photo`},null,8,[`src`,`initials`]),l(`div`,E,[c[9]||=l(`p`,{class:`avatar-editor__title`},`تصویر پروفایل`,-1),c[10]||=l(`p`,{class:`avatar-editor__hint`},`افزودن، تغییر یا حذف عکس نمایش‌داده‌شده در پروفایل`,-1),l(`div`,D,[l(`button`,{type:`button`,class:`avatar-btn`,disabled:Y.value,onClick:he},r(U.value?`تغییر تصویر`:`افزودن تصویر`),9,O),U.value?(n(),s(`button`,{key:0,type:`button`,class:`avatar-btn avatar-btn--danger`,disabled:Y.value,onClick:$},` حذف تصویر `,8,k)):o(``,!0)])]),l(`input`,{ref_key:`fileInput`,ref:W,type:`file`,accept:`image/*`,class:`avatar-editor__file`,onChange:ge},null,544)]),l(`div`,A,[l(`span`,j,[i(re,{icon:`vuesax-linear:profile-circle`,size:22,"stroke-width":1.5})]),c[11]||=l(`div`,{class:`profile-edit__intro-text`},[l(`strong`,null,`مشخصات فردی`),l(`p`,null,`این اطلاعات روی سفارش‌ها و چک‌های ثبت‌شده نمایش داده می‌شود.`)],-1)]),l(`div`,M,[i(y,{modelValue:C.value,"onUpdate:modelValue":[c[0]||=e=>C.value=e,c[1]||=e=>Z(`firstName`)],label:`نام`,error:G.value.firstName},null,8,[`modelValue`,`error`]),i(y,{modelValue:B.value,"onUpdate:modelValue":[c[2]||=e=>B.value=e,c[3]||=e=>Z(`lastName`)],label:`نام خانوادگی`,error:G.value.lastName},null,8,[`modelValue`,`error`]),i(y,{modelValue:V.value,"onUpdate:modelValue":[c[4]||=e=>V.value=e,c[5]||=e=>Z(`nationalId`)],class:`profile-edit__full`,label:`کد ملی`,maxlength:`10`,inputmode:`numeric`,dir:`ltr`,hint:`برای ثبت چک الزامی است`,error:G.value.nationalId},null,8,[`modelValue`,`error`]),f(p).isAgent?(n(),d(y,{key:0,class:`profile-edit__full`,"model-value":me.value,label:`کد واسطه`,dir:`ltr`,disabled:``,hint:`این کد را به مشتریان معرفی‌شده بدهید تا هنگام ثبت‌نام در اپ وارد کنند.`},null,8,[`model-value`])):o(``,!0),f(p).isAgent?(n(),s(`div`,N,[c[12]||=l(`label`,{class:`form-label`,for:`profile-address`},`آدرس (واسطه)`,-1),t(l(`textarea`,{id:`profile-address`,"onUpdate:modelValue":c[6]||=e=>H.value=e,class:`profile-edit__textarea`,rows:`3`,maxlength:`500`,placeholder:`آدرس کامل محل فعالیت`,onInput:c[7]||=e=>Z(`address`)},null,544),[[ne,H.value]]),G.value.address?(n(),s(`p`,P,r(G.value.address),1)):o(``,!0)])):(n(),s(`div`,F,[c[13]||=l(`label`,{class:`form-label`},`آدرس ثبت‌شده`,-1),S.value?(n(),s(`p`,I,`در حال بارگذاری…`)):x.value?(n(),s(`p`,L,r(x.value),1)):(n(),s(`p`,fe,` هنوز آدرسی ثبت نشده. هنگام درخواست کالیته یا از بخش «آدرس‌ها» می‌توانید آدرس اضافه کنید. `)),l(`button`,{type:`button`,class:`profile-edit__address-link`,onClick:c[8]||=e=>f(b).push(`/profile/addresses`)},` مدیریت آدرس‌ها `)]))]),l(`div`,R,[i(ie,{class:`profile-edit__save`,loading:J.value,onClick:_e},{default:e(()=>[...c[14]||=[ee(` ثبت تغییرات `,-1)]]),_:1},8,[`loading`]),q.value?(n(),s(`p`,z,`ذخیره شد ✓`)):o(``,!0)])])]),_:1}))}}),[[`__scopeId`,`data-v-bb556af8`]]);export{B as default}; \ No newline at end of file +import{G as e,K as t,M as n,Pt as r,_ as i,c as a,d as o,f as s,g as ee,k as c,l,nt as u,t as te,u as d,ut as f,v as p}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{o as ne,t as re}from"./BasicIcon-DPmc0iaK.js";import{t as m}from"./http-CU_N-R2R.js";import{C as h,c as g,i as _,r as ie,u as ae}from"./index-CE4Fw0WE.js";import{t as oe}from"./FormErrorBanner-Ud1D04xf.js";import{n as se,r as v,t as ce}from"./formErrors-DglFjYkZ.js";import{t as y}from"./BaseInput-CpE3bVJZ.js";import{t as le}from"./addresses-tV-zgZYG.js";import{t as ue}from"./ProfileSubpageLayout-TZxLAQ-r.js";var b=512,x=.82;async function de(e){if(!e.type.startsWith(`image/`))throw Error(`فقط فایل تصویری مجاز است.`);if(e.size>8388608)throw Error(`حجم تصویر نباید بیشتر از ۸ مگابایت باشد.`);return C(await S(e))}function S(e){return new Promise((t,n)=>{let r=new FileReader;r.onload=()=>t(String(r.result??``)),r.onerror=()=>n(Error(`خواندن تصویر ناموفق بود.`)),r.readAsDataURL(e)})}function C(e){return new Promise((t,n)=>{let r=new Image;r.onload=()=>{let e=Math.min(1,b/Math.max(r.width,r.height)),i=Math.max(1,Math.round(r.width*e)),a=Math.max(1,Math.round(r.height*e)),o=document.createElement(`canvas`);o.width=i,o.height=a;let s=o.getContext(`2d`);if(!s){n(Error(`پردازش تصویر ناموفق بود.`));return}s.drawImage(r,0,0,i,a),t(o.toDataURL(`image/jpeg`,x))},r.onerror=()=>n(Error(`تصویر نامعتبر است.`)),r.src=e})}var w={class:`profile-edit`},T={class:`avatar-editor`},E={class:`avatar-editor__actions`},D={class:`avatar-editor__btns`},O=[`disabled`],k=[`disabled`],A={class:`profile-edit__intro`},j={class:`profile-edit__intro-icon`,"aria-hidden":`true`},M={class:`profile-edit__grid`},N={key:1,class:`form-group profile-edit__full`},P={key:0,class:`input-error-text`},F={key:2,class:`form-group profile-edit__full profile-edit__saved-address`},I={key:0,class:`profile-edit__address-hint`},L={key:1,class:`profile-edit__address-text`},fe={key:2,class:`profile-edit__address-hint`},R={class:`profile-edit__actions`},z={key:0,class:`profile-edit__saved`},B=te(p({__name:`ProfileEditView`,setup(te){let p=g(),b=h(),x=u(null),S=u(!0),C=u(p.user?.firstName??``),B=u(p.user?.lastName??``),V=u(p.user?.nationalId??``),H=u(p.user?.address??``),U=u(p.user?.avatarUrl??null),W=u(null),G=u({}),K=u(``),q=u(!1),J=u(!1),Y=u(!1),X=ae(),pe=a(()=>`${C.value.trim().charAt(0)}${B.value.trim().charAt(0)}`||`؟`),me=a(()=>p.user?.agentCode?.trim()||`—`);function Z(e){G.value=se(G.value,e),v(G.value)||(K.value=``)}function he(){W.value?.click()}async function Q(e){Y.value=!0,K.value=``;try{let t=await p.updateProfile({avatarUrl:e??``});t?U.value=t.avatarUrl??null:U.value=e}catch(e){K.value=e instanceof Error?e.message:`ذخیره تصویر ناموفق بود.`}finally{Y.value=!1}}async function ge(e){let t=e.target,n=t.files?.[0];if(t.value=``,n){Y.value=!0,K.value=``;try{let e=await de(n);U.value=e,await Q(e)}catch(e){K.value=e instanceof Error?e.message:`بارگذاری تصویر ناموفق بود.`,Y.value=!1}}}async function $(){U.value=null,await Q(null)}c(async()=>{S.value=!0;try{let e=await le.list(),t=e.find(e=>e.isDefault)??e[0];x.value=t?.text??null}catch{x.value=null}finally{S.value=!1}});async function _e(){G.value={},K.value=``,q.value=!1;let e={};if(C.value.trim()||(e.firstName=`نام الزامی است.`),B.value.trim()||(e.lastName=`نام خانوادگی الزامی است.`),V.value&&V.value.length!==10&&(e.nationalId=`کد ملی باید ۱۰ رقم باشد.`),v(e)){G.value=e,K.value=ce,X.show(`لطفاً فیلدهای مشخص‌شده را اصلاح کنید.`,{tone:`error`});return}let t={firstName:C.value.trim(),lastName:B.value.trim(),nationalId:V.value||void 0,avatarUrl:U.value??``};p.isAgent&&(t.address=H.value.trim()),J.value=!0;try{if(!await p.updateProfile(t)){K.value=`ذخیره پروفایل ناموفق بود.`,X.show(`ذخیره اطلاعات انجام نشد. دوباره تلاش کنید.`,{tone:`error`});return}q.value=!0,X.show(`اطلاعات کاربری با موفقیت ذخیره شد.`),setTimeout(()=>{q.value=!1},2e3)}catch(e){let t=e instanceof m||e instanceof Error?e.message:`ذخیره پروفایل ناموفق بود.`;K.value=t,X.show(t,{tone:`error`})}finally{J.value=!1}}return(a,c)=>(n(),d(ue,{title:`اطلاعات کاربری`,subtitle:`ویرایش تصویر، نام و کد ملی حساب کاربری`},{default:e(()=>[i(oe,{message:K.value},null,8,[`message`]),l(`div`,w,[l(`div`,T,[i(_,{src:U.value,initials:pe.value,size:96,class:`avatar-editor__photo`},null,8,[`src`,`initials`]),l(`div`,E,[c[9]||=l(`p`,{class:`avatar-editor__title`},`تصویر پروفایل`,-1),c[10]||=l(`p`,{class:`avatar-editor__hint`},`افزودن، تغییر یا حذف عکس نمایش‌داده‌شده در پروفایل`,-1),l(`div`,D,[l(`button`,{type:`button`,class:`avatar-btn`,disabled:Y.value,onClick:he},r(U.value?`تغییر تصویر`:`افزودن تصویر`),9,O),U.value?(n(),s(`button`,{key:0,type:`button`,class:`avatar-btn avatar-btn--danger`,disabled:Y.value,onClick:$},` حذف تصویر `,8,k)):o(``,!0)])]),l(`input`,{ref_key:`fileInput`,ref:W,type:`file`,accept:`image/*`,class:`avatar-editor__file`,onChange:ge},null,544)]),l(`div`,A,[l(`span`,j,[i(re,{icon:`vuesax-linear:profile-circle`,size:22,"stroke-width":1.5})]),c[11]||=l(`div`,{class:`profile-edit__intro-text`},[l(`strong`,null,`مشخصات فردی`),l(`p`,null,`این اطلاعات روی سفارش‌ها و چک‌های ثبت‌شده نمایش داده می‌شود.`)],-1)]),l(`div`,M,[i(y,{modelValue:C.value,"onUpdate:modelValue":[c[0]||=e=>C.value=e,c[1]||=e=>Z(`firstName`)],label:`نام`,error:G.value.firstName},null,8,[`modelValue`,`error`]),i(y,{modelValue:B.value,"onUpdate:modelValue":[c[2]||=e=>B.value=e,c[3]||=e=>Z(`lastName`)],label:`نام خانوادگی`,error:G.value.lastName},null,8,[`modelValue`,`error`]),i(y,{modelValue:V.value,"onUpdate:modelValue":[c[4]||=e=>V.value=e,c[5]||=e=>Z(`nationalId`)],class:`profile-edit__full`,label:`کد ملی`,maxlength:`10`,inputmode:`numeric`,dir:`ltr`,hint:`برای ثبت چک الزامی است`,error:G.value.nationalId},null,8,[`modelValue`,`error`]),f(p).isAgent?(n(),d(y,{key:0,class:`profile-edit__full`,"model-value":me.value,label:`کد واسطه`,dir:`ltr`,disabled:``,hint:`این کد را به مشتریان معرفی‌شده بدهید تا هنگام ثبت‌نام در اپ وارد کنند.`},null,8,[`model-value`])):o(``,!0),f(p).isAgent?(n(),s(`div`,N,[c[12]||=l(`label`,{class:`form-label`,for:`profile-address`},`آدرس (واسطه)`,-1),t(l(`textarea`,{id:`profile-address`,"onUpdate:modelValue":c[6]||=e=>H.value=e,class:`profile-edit__textarea`,rows:`3`,maxlength:`500`,placeholder:`آدرس کامل محل فعالیت`,onInput:c[7]||=e=>Z(`address`)},null,544),[[ne,H.value]]),G.value.address?(n(),s(`p`,P,r(G.value.address),1)):o(``,!0)])):(n(),s(`div`,F,[c[13]||=l(`label`,{class:`form-label`},`آدرس ثبت‌شده`,-1),S.value?(n(),s(`p`,I,`در حال بارگذاری…`)):x.value?(n(),s(`p`,L,r(x.value),1)):(n(),s(`p`,fe,` هنوز آدرسی ثبت نشده. هنگام درخواست کالیته یا از بخش «آدرس‌ها» می‌توانید آدرس اضافه کنید. `)),l(`button`,{type:`button`,class:`profile-edit__address-link`,onClick:c[8]||=e=>f(b).push(`/profile/addresses`)},` مدیریت آدرس‌ها `)]))]),l(`div`,R,[i(ie,{class:`profile-edit__save`,loading:J.value,onClick:_e},{default:e(()=>[...c[14]||=[ee(` ثبت تغییرات `,-1)]]),_:1},8,[`loading`]),q.value?(n(),s(`p`,z,`ذخیره شد ✓`)):o(``,!0)])])]),_:1}))}}),[[`__scopeId`,`data-v-bb556af8`]]);export{B as default}; \ No newline at end of file diff --git a/dist/assets/ProfileNotificationsView-BtIUUGDp.js b/dist/assets/ProfileNotificationsView-DrsdXR64.js similarity index 94% rename from dist/assets/ProfileNotificationsView-BtIUUGDp.js rename to dist/assets/ProfileNotificationsView-DrsdXR64.js index 02ef64f..625a2ef 100644 --- a/dist/assets/ProfileNotificationsView-BtIUUGDp.js +++ b/dist/assets/ProfileNotificationsView-DrsdXR64.js @@ -1 +1 @@ -import{At as e,F as t,G as n,M as r,Pt as i,_ as a,c as o,d as s,f as c,g as l,i as u,k as d,l as f,t as p,u as m,ut as h,v as g}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{t as _}from"./BasicIcon-DPmc0iaK.js";import{i as v}from"./format-C72AoJ2H.js";import{C as y,d as b,r as x}from"./index-DYwnTikp.js";import{t as S}from"./EmptyState-DoHTAy4d.js";import{t as C}from"./ProfileSubpageLayout-CbD3-u8j.js";var w={key:0,class:`notif-box`},T={class:`notif-box__head`},E={class:`notif-box__count`},D=[`onClick`],O={class:`notif-row__icon`,"aria-hidden":`true`},k={class:`notif-row__body`},A={class:`notif-row__title-row`},j={class:`notif-row__title`},M={key:0,class:`notif-row__dot`,"aria-label":`خوانده‌نشده`},N={class:`notif-row__text`},P={class:`notif-row__time`},F=p(g({__name:`ProfileNotificationsView`,setup(p){let g=y(),F=b(),I=o(()=>F.items),L=o(()=>F.hasUnread),R={info:`vuesax-linear:information`,success:`vuesax-linear:tick-circle`,warning:`vuesax-linear:timer`,danger:`vuesax-linear:close-circle`};d(()=>{F.hydrate()});async function z(e){await F.markRead(e.id),e.link&&g.push(e.link)}return(o,d)=>(r(),m(C,{title:`اعلان‌ها`,subtitle:`سفارش‌ها، پیشنهاد محصول و سایر اعلان‌ها`},{default:n(()=>[I.value.length?(r(),c(`div`,w,[f(`div`,T,[f(`span`,E,i(L.value?`${h(F).unreadCount} اعلان خوانده‌نشده`:`همه خوانده شده`),1),L.value?(r(),m(x,{key:0,variant:`outline`,class:`notif-box__mark`,onClick:d[0]||=e=>h(F).markAllRead()},{default:n(()=>[...d[2]||=[l(` خواندن همه `,-1)]]),_:1})):s(``,!0)]),(r(!0),c(u,null,t(I.value,t=>(r(),c(`button`,{key:t.id,type:`button`,class:e([`notif-row`,[`notif-row--${t.tone}`,{"notif-row--unread":!t.isRead}]]),onClick:e=>z(t)},[f(`span`,O,[a(_,{icon:R[t.tone],size:22,"stroke-width":1.5},null,8,[`icon`])]),f(`span`,k,[f(`span`,A,[f(`strong`,j,i(t.title),1),t.isRead?s(``,!0):(r(),c(`span`,M))]),f(`span`,N,i(t.body),1),f(`span`,P,i(h(v)(t.sentAt)),1)])],10,D))),128))])):(r(),m(S,{key:1,icon:`vuesax-linear:notification-bing`,title:`اعلانی ندارید`,message:`وقتی فاکتور سفارشتان صادر شود، پیشنهاد محصولی برایتان ثبت شود یا وضعیت پرداخت تغییر کند، همین‌جا خبردار می‌شوید.`},{default:n(()=>[a(x,{variant:`outline`,onClick:d[1]||=e=>h(g).push(`/orders`)},{default:n(()=>[...d[3]||=[l(`سفارش‌های من`,-1)]]),_:1})]),_:1}))]),_:1}))}}),[[`__scopeId`,`data-v-7e884b50`]]);export{F as default}; \ No newline at end of file +import{At as e,F as t,G as n,M as r,Pt as i,_ as a,c as o,d as s,f as c,g as l,i as u,k as d,l as f,t as p,u as m,ut as h,v as g}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{t as _}from"./BasicIcon-DPmc0iaK.js";import{i as v}from"./format-C72AoJ2H.js";import{C as y,d as b,r as x}from"./index-CE4Fw0WE.js";import{t as S}from"./EmptyState-DoHTAy4d.js";import{t as C}from"./ProfileSubpageLayout-TZxLAQ-r.js";var w={key:0,class:`notif-box`},T={class:`notif-box__head`},E={class:`notif-box__count`},D=[`onClick`],O={class:`notif-row__icon`,"aria-hidden":`true`},k={class:`notif-row__body`},A={class:`notif-row__title-row`},j={class:`notif-row__title`},M={key:0,class:`notif-row__dot`,"aria-label":`خوانده‌نشده`},N={class:`notif-row__text`},P={class:`notif-row__time`},F=p(g({__name:`ProfileNotificationsView`,setup(p){let g=y(),F=b(),I=o(()=>F.items),L=o(()=>F.hasUnread),R={info:`vuesax-linear:information`,success:`vuesax-linear:tick-circle`,warning:`vuesax-linear:timer`,danger:`vuesax-linear:close-circle`};d(()=>{F.hydrate()});async function z(e){await F.markRead(e.id),e.link&&g.push(e.link)}return(o,d)=>(r(),m(C,{title:`اعلان‌ها`,subtitle:`سفارش‌ها، پیشنهاد محصول و سایر اعلان‌ها`},{default:n(()=>[I.value.length?(r(),c(`div`,w,[f(`div`,T,[f(`span`,E,i(L.value?`${h(F).unreadCount} اعلان خوانده‌نشده`:`همه خوانده شده`),1),L.value?(r(),m(x,{key:0,variant:`outline`,class:`notif-box__mark`,onClick:d[0]||=e=>h(F).markAllRead()},{default:n(()=>[...d[2]||=[l(` خواندن همه `,-1)]]),_:1})):s(``,!0)]),(r(!0),c(u,null,t(I.value,t=>(r(),c(`button`,{key:t.id,type:`button`,class:e([`notif-row`,[`notif-row--${t.tone}`,{"notif-row--unread":!t.isRead}]]),onClick:e=>z(t)},[f(`span`,O,[a(_,{icon:R[t.tone],size:22,"stroke-width":1.5},null,8,[`icon`])]),f(`span`,k,[f(`span`,A,[f(`strong`,j,i(t.title),1),t.isRead?s(``,!0):(r(),c(`span`,M))]),f(`span`,N,i(t.body),1),f(`span`,P,i(h(v)(t.sentAt)),1)])],10,D))),128))])):(r(),m(S,{key:1,icon:`vuesax-linear:notification-bing`,title:`اعلانی ندارید`,message:`وقتی فاکتور سفارشتان صادر شود، پیشنهاد محصولی برایتان ثبت شود یا وضعیت پرداخت تغییر کند، همین‌جا خبردار می‌شوید.`},{default:n(()=>[a(x,{variant:`outline`,onClick:d[1]||=e=>h(g).push(`/orders`)},{default:n(()=>[...d[3]||=[l(`سفارش‌های من`,-1)]]),_:1})]),_:1}))]),_:1}))}}),[[`__scopeId`,`data-v-7e884b50`]]);export{F as default}; \ No newline at end of file diff --git a/dist/assets/ProfileSecurityView-BWpD4liS.js b/dist/assets/ProfileSecurityView-BVkxmi2F.js similarity index 93% rename from dist/assets/ProfileSecurityView-BWpD4liS.js rename to dist/assets/ProfileSecurityView-BVkxmi2F.js index b352f63..b72fd3a 100644 --- a/dist/assets/ProfileSecurityView-BWpD4liS.js +++ b/dist/assets/ProfileSecurityView-BVkxmi2F.js @@ -1 +1 @@ -import{G as e,M as t,_ as n,d as r,f as i,g as a,l as o,nt as s,t as c,u as l,v as u}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{r as d}from"./index-DYwnTikp.js";import{t as f}from"./FormErrorBanner-Ud1D04xf.js";import{n as p,r as m,t as h}from"./formErrors-DglFjYkZ.js";import{t as g}from"./BaseInput-CpE3bVJZ.js";import{t as _}from"./ProfileSubpageLayout-CbD3-u8j.js";var v={class:`settings-form`},y={key:0,class:`settings-form__saved`},b=c(u({__name:`ProfileSecurityView`,setup(c){let u=s(``),b=s(``),x=s(``),S=s({}),C=s(``),w=s(!1);function T(e){S.value=p(S.value,e),m(S.value)||(C.value=``)}function E(){S.value={},C.value=``,w.value=!1;let e={};if(u.value||(e.currentPassword=`رمز فعلی الزامی است.`),b.value.length<6&&(e.newPassword=`رمز جدید باید حداقل ۶ کاراکتر باشد.`),x.value!==b.value&&(e.confirmPassword=`تکرار رمز با رمز جدید یکسان نیست.`),m(e)){S.value=e,C.value=h;return}u.value=``,b.value=``,x.value=``,w.value=!0,setTimeout(()=>{w.value=!1},2e3)}return(s,c)=>(t(),l(_,{title:`امنیت حساب`,subtitle:`تغییر رمز عبور و تنظیمات ورود`},{default:e(()=>[n(f,{message:C.value},null,8,[`message`]),o(`div`,v,[n(g,{modelValue:u.value,"onUpdate:modelValue":[c[0]||=e=>u.value=e,c[1]||=e=>T(`currentPassword`)],type:`password`,label:`رمز عبور فعلی`,error:S.value.currentPassword},null,8,[`modelValue`,`error`]),n(g,{modelValue:b.value,"onUpdate:modelValue":[c[2]||=e=>b.value=e,c[3]||=e=>T(`newPassword`)],type:`password`,label:`رمز عبور جدید`,error:S.value.newPassword},null,8,[`modelValue`,`error`]),n(g,{modelValue:x.value,"onUpdate:modelValue":[c[4]||=e=>x.value=e,c[5]||=e=>T(`confirmPassword`)],type:`password`,label:`تکرار رمز عبور جدید`,error:S.value.confirmPassword},null,8,[`modelValue`,`error`]),n(d,{block:``,onClick:E},{default:e(()=>[...c[6]||=[a(`ذخیره رمز جدید`,-1)]]),_:1}),w.value?(t(),i(`p`,y,`رمز عبور با موفقیت تغییر کرد ✓`)):r(``,!0)])]),_:1}))}}),[[`__scopeId`,`data-v-074827a2`]]);export{b as default}; \ No newline at end of file +import{G as e,M as t,_ as n,d as r,f as i,g as a,l as o,nt as s,t as c,u as l,v as u}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{r as d}from"./index-CE4Fw0WE.js";import{t as f}from"./FormErrorBanner-Ud1D04xf.js";import{n as p,r as m,t as h}from"./formErrors-DglFjYkZ.js";import{t as g}from"./BaseInput-CpE3bVJZ.js";import{t as _}from"./ProfileSubpageLayout-TZxLAQ-r.js";var v={class:`settings-form`},y={key:0,class:`settings-form__saved`},b=c(u({__name:`ProfileSecurityView`,setup(c){let u=s(``),b=s(``),x=s(``),S=s({}),C=s(``),w=s(!1);function T(e){S.value=p(S.value,e),m(S.value)||(C.value=``)}function E(){S.value={},C.value=``,w.value=!1;let e={};if(u.value||(e.currentPassword=`رمز فعلی الزامی است.`),b.value.length<6&&(e.newPassword=`رمز جدید باید حداقل ۶ کاراکتر باشد.`),x.value!==b.value&&(e.confirmPassword=`تکرار رمز با رمز جدید یکسان نیست.`),m(e)){S.value=e,C.value=h;return}u.value=``,b.value=``,x.value=``,w.value=!0,setTimeout(()=>{w.value=!1},2e3)}return(s,c)=>(t(),l(_,{title:`امنیت حساب`,subtitle:`تغییر رمز عبور و تنظیمات ورود`},{default:e(()=>[n(f,{message:C.value},null,8,[`message`]),o(`div`,v,[n(g,{modelValue:u.value,"onUpdate:modelValue":[c[0]||=e=>u.value=e,c[1]||=e=>T(`currentPassword`)],type:`password`,label:`رمز عبور فعلی`,error:S.value.currentPassword},null,8,[`modelValue`,`error`]),n(g,{modelValue:b.value,"onUpdate:modelValue":[c[2]||=e=>b.value=e,c[3]||=e=>T(`newPassword`)],type:`password`,label:`رمز عبور جدید`,error:S.value.newPassword},null,8,[`modelValue`,`error`]),n(g,{modelValue:x.value,"onUpdate:modelValue":[c[4]||=e=>x.value=e,c[5]||=e=>T(`confirmPassword`)],type:`password`,label:`تکرار رمز عبور جدید`,error:S.value.confirmPassword},null,8,[`modelValue`,`error`]),n(d,{block:``,onClick:E},{default:e(()=>[...c[6]||=[a(`ذخیره رمز جدید`,-1)]]),_:1}),w.value?(t(),i(`p`,y,`رمز عبور با موفقیت تغییر کرد ✓`)):r(``,!0)])]),_:1}))}}),[[`__scopeId`,`data-v-074827a2`]]);export{b as default}; \ No newline at end of file diff --git a/dist/assets/ProfileSubpageLayout-CbD3-u8j.js b/dist/assets/ProfileSubpageLayout-TZxLAQ-r.js similarity index 95% rename from dist/assets/ProfileSubpageLayout-CbD3-u8j.js rename to dist/assets/ProfileSubpageLayout-TZxLAQ-r.js index ea2876c..e3e213f 100644 --- a/dist/assets/ProfileSubpageLayout-CbD3-u8j.js +++ b/dist/assets/ProfileSubpageLayout-TZxLAQ-r.js @@ -1 +1 @@ -import{I as e,M as t,Pt as n,_ as r,d as i,f as a,i as o,l as s,t as c,v as l}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{C as u}from"./index-DYwnTikp.js";import{t as d}from"./IconChevronBack-BsHmfODG.js";var f={class:`page profile-subpage mobile-only`},p={class:`page__scroll page__scroll--with-nav`},m={class:`profile-subpage__card card`},h={class:`profile-subpage__nav`},g={class:`profile-subpage__title`},_={type:`button`,class:`nav-btn nav-btn--ghost`,"aria-hidden":`true`,tabindex:`-1`},v={class:`desktop-page profile-subpage-desktop desktop-only`},y={class:`desktop-page__head profile-subpage-desktop__head`},b={class:`desktop-page__title`},x={key:0,class:`desktop-page__subtitle`},S={class:`profile-subpage-desktop__panel card`},C=c(l({__name:`ProfileSubpageLayout`,props:{title:{},subtitle:{}},setup(c){let l=u();function C(){l.push(`/profile`)}return(l,u)=>(t(),a(o,null,[s(`div`,f,[s(`div`,p,[s(`div`,m,[s(`header`,h,[s(`button`,{type:`button`,class:`nav-btn`,"aria-label":`بازگشت`,onClick:C},[r(d,{size:20})]),s(`h1`,g,n(c.title),1),s(`button`,_,[r(d,{size:18,class:`nav-btn__flip`})])]),e(l.$slots,`default`,{},void 0,!0)])])]),s(`div`,v,[s(`header`,y,[s(`h1`,b,n(c.title),1),c.subtitle?(t(),a(`p`,x,n(c.subtitle),1)):i(``,!0)]),s(`section`,S,[e(l.$slots,`default`,{},void 0,!0)])])],64))}}),[[`__scopeId`,`data-v-e7684fde`]]);export{C as t}; \ No newline at end of file +import{I as e,M as t,Pt as n,_ as r,d as i,f as a,i as o,l as s,t as c,v as l}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{C as u}from"./index-CE4Fw0WE.js";import{t as d}from"./IconChevronBack-BsHmfODG.js";var f={class:`page profile-subpage mobile-only`},p={class:`page__scroll page__scroll--with-nav`},m={class:`profile-subpage__card card`},h={class:`profile-subpage__nav`},g={class:`profile-subpage__title`},_={type:`button`,class:`nav-btn nav-btn--ghost`,"aria-hidden":`true`,tabindex:`-1`},v={class:`desktop-page profile-subpage-desktop desktop-only`},y={class:`desktop-page__head profile-subpage-desktop__head`},b={class:`desktop-page__title`},x={key:0,class:`desktop-page__subtitle`},S={class:`profile-subpage-desktop__panel card`},C=c(l({__name:`ProfileSubpageLayout`,props:{title:{},subtitle:{}},setup(c){let l=u();function C(){l.push(`/profile`)}return(l,u)=>(t(),a(o,null,[s(`div`,f,[s(`div`,p,[s(`div`,m,[s(`header`,h,[s(`button`,{type:`button`,class:`nav-btn`,"aria-label":`بازگشت`,onClick:C},[r(d,{size:20})]),s(`h1`,g,n(c.title),1),s(`button`,_,[r(d,{size:18,class:`nav-btn__flip`})])]),e(l.$slots,`default`,{},void 0,!0)])])]),s(`div`,v,[s(`header`,y,[s(`h1`,b,n(c.title),1),c.subtitle?(t(),a(`p`,x,n(c.subtitle),1)):i(``,!0)]),s(`section`,S,[e(l.$slots,`default`,{},void 0,!0)])])],64))}}),[[`__scopeId`,`data-v-e7684fde`]]);export{C as t}; \ No newline at end of file diff --git a/dist/assets/ProfileView-B4uQciEk.js b/dist/assets/ProfileView-4jYZXvL7.js similarity index 99% rename from dist/assets/ProfileView-B4uQciEk.js rename to dist/assets/ProfileView-4jYZXvL7.js index d13d8d0..ef764cf 100644 --- a/dist/assets/ProfileView-B4uQciEk.js +++ b/dist/assets/ProfileView-4jYZXvL7.js @@ -1 +1 @@ -import{At as e,F as t,M as n,Nt as r,Pt as i,_ as a,c as o,d as s,f as c,g as l,h as ee,i as u,k as d,l as f,nt as p,t as te,u as m,ut as h,v as g}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{c as ne,t as _}from"./BasicIcon-DPmc0iaK.js";import{o as v,r as re}from"./format-C72AoJ2H.js";import{t as ie}from"./IconCart-D9TX5E-P.js";import{t as ae}from"./IconSettings-D9-FUXw4.js";import{C as oe,c as se,d as ce,f as le,i as ue,o as y,s as b}from"./index-DYwnTikp.js";import{i as x,t as S}from"./constants-ptWoEwwP.js";import{t as C}from"./PageSkeleton-DYdjm4l9.js";import{n as w,t as T}from"./crm-CgnSby61.js";import{t as E}from"./IconHeart-CvzbNH_T.js";var D={class:`page profile-page`},O={class:`hero__top mobile-only`},k=[`aria-label`],A={class:`page__scroll page__scroll--with-nav profile-scroll`},j={class:`hero`},M={class:`hero__rest`},N={class:`hero__meta`},P={key:0},F={key:1,class:`level-pill`},I={class:`hero__desk-actions desktop-only-flex`},L={class:`profile-sheet`},R={key:0,class:`panel`},z={class:`panel__head`},B={class:`panel__period`},V={class:`stats`},H={class:`stat-card`},U={class:`stat-card__text`},de={class:`stat-card__value`},fe={class:`stat-card__icon stat-card__icon--orders`},pe={class:`stat-card`},me={class:`stat-card__text`},he={class:`stat-card__value`},ge={class:`stat-card__icon stat-card__icon--customers`},_e={class:`stat-card`},ve={class:`stat-card__text`},ye={class:`stat-card__value`},be={class:`stat-card__icon stat-card__icon--profit`},xe={class:`stat-card`},Se={class:`stat-card__text`},Ce={class:`stat-card__value`},we={class:`stat-card__icon stat-card__icon--sales`},Te={key:1,class:`loyalty`},Ee={class:`loyalty__row`},De={class:`loyalty__text`},Oe={class:`loyalty__text-next`},ke={class:`loyalty__bar`},Ae={class:`quick-section`},je={class:`quick-grid`},Me=[`onClick`],Ne={class:`quick-item__icon`},Pe={class:`orders-box`},Fe={class:`section-head`},Ie=[`onClick`,`onKeydown`],Le={class:`order-row__meta`},Re={class:`order-row__date`},ze={class:`order-row__title`},Be={key:0,class:`order-row__customer`},Ve={class:`price-section`},He={class:`price-card`},Ue={class:`price-card__body`},We={class:`price-card__info`},W=te(g({__name:`MobileProfilePage`,setup(te){let g={id:`sample-base-price`,name:`پارچه فاستونی ایتالیایی`,code:`DF-1204`,categoryId:``,season:`all_season`,widthCm:160,composition:``,colors:[`1`,`2`,`3`,`4`,`5`,`6`],tags:[],isNew:!1,rollMeters:0,basePrice:38e4},W=oe(),G=se(),K=le(),Ge=T(),q=ce(),J=p(null),Y=p(g),X=p(!1),Ke=[{id:`add-customer`,label:`ثبت مشتری جدید`,to:`/customers`,icon:`vuesax-linear:add`},{id:`orders`,label:`سفارش‌ها`,to:`/orders`,icon:`vuesax-linear:document-text`},{id:`customers`,label:`مشتریان من`,to:`/customers`,icon:`vuesax-linear:people`},{id:`reports`,label:`گزارش‌ها`,to:`/reminders`,icon:`vuesax-linear:chart-2`},{id:`catalog`,label:`درخواست کالیته`,to:`/categories`,icon:`vuesax-linear:box-1`},{id:`pricing`,label:`قیمت‌گذاری`,to:`/categories`,icon:`vuesax-linear:money-4`}],qe=[{id:`orders`,label:`سفارش‌ها`,to:`/orders`,icon:`vuesax-linear:document-text`},{id:`categories`,label:`دسته‌بندی`,to:`/categories`,icon:`vuesax-linear:element-3`},{id:`products`,label:`محصولات`,to:`/products`,icon:`vuesax-linear:box-search`},{id:`favorites`,label:`علاقه‌مندی‌ها`,to:`/favorites`,useHeart:!0},{id:`order-status`,label:`وضعیت سفارش`,to:`/orders/latest-status`,icon:`vuesax-linear:timer-1`},{id:`addresses`,label:`آدرس‌ها`,to:`/profile/addresses`,icon:`vuesax-linear:location`},{id:`catalog`,label:`درخواست کالیته`,to:`/categories`,icon:`vuesax-linear:box-1`}],Je=o(()=>G.isAgent?Ke:qe),Ye=o(()=>[...K.orders].sort((e,t)=>String(t.createdAt).localeCompare(String(e.createdAt))).slice(0,3).map(e=>{let t=x[e.status]??`info`,n=t===`danger`||t===`neutral`?`danger`:t===`success`?`success`:t===`warning`?`warning`:`info`;return{id:e.id,title:`سفارش #${e.orderNumber}`,date:e.createdAt?re(e.createdAt):``,customer:e.companyName||``,statusLabel:S[e.status]||e.status,statusTone:n}})),Z=o(()=>G.fullName||`کاربر`),Q=o(()=>J.value?.code||G.user?.agentCode||`—`),Xe=o(()=>G.isAgent?`کد واسطه`:`کد مشتری`),$=o(()=>J.value?.levelLabel||G.user?.levelLabel||`برنزی`),Ze=o(()=>J.value?.nextLevelLabel||G.user?.nextLevelLabel||`نقره‌ای`),Qe=o(()=>J.value?.pointsToNext??G.user?.pointsToNext??0),$e=o(()=>J.value?.periodLabel||`۳۰ روز اخیر`),et=o(()=>J.value?.customersCount??0),tt=o(()=>J.value?.ordersCount??K.orders.length),nt=o(()=>J.value?.salesVolumeToman??0),rt=o(()=>J.value?.profitToman??0),it=o(()=>J.value?.levelProgress??G.user?.levelProgress??0),at=o(()=>q.unreadCount>9?`9+`:String(q.unreadCount)),ot=o(()=>Y.value.basePrice??g.basePrice??0);return d(async()=>{X.value=!0;try{if(q.hydrate(),G.isAgent)try{J.value=await w()}catch{J.value=null}try{let e=(await Ge.loadBrowseProducts())[0];Y.value=e?{...g,...e,basePrice:e.basePrice??g.basePrice}:g}catch{Y.value=g}K.orders.length||await K.hydrate()}finally{X.value=!1}}),(o,d)=>(n(),c(`div`,D,[f(`div`,O,[f(`button`,{type:`button`,class:`icon-btn`,"aria-label":`تنظیمات`,onClick:d[0]||=e=>h(W).push(`/profile/display`)},[a(ae,{size:20,color:`#ffffff`})]),d[5]||=f(`h1`,null,`پروفایل من`,-1),f(`button`,{type:`button`,class:`icon-btn`,"aria-label":`اعلان‌ها`,onClick:d[1]||=e=>h(W).push(`/profile/notifications`)},[a(b,{size:20,color:`#ffffff`}),h(q).hasUnread?(n(),c(`span`,{key:0,class:`icon-btn__badge`,"aria-label":`${h(q).unreadCount} اعلان خوانده‌نشده`},i(at.value),9,k)):s(``,!0)])]),f(`div`,A,[f(`header`,j,[f(`div`,M,[a(ue,{class:`hero__avatar`,src:h(G).user?.avatarUrl,initials:Z.value.charAt(0),size:84},null,8,[`src`,`initials`]),f(`div`,N,[f(`h2`,null,i(Z.value),1),h(G).isAgent?(n(),c(`p`,P,i(Xe.value)+`: `+i(Q.value),1)):s(``,!0),h(G).isAgent?(n(),c(`span`,F,[d[6]||=f(`svg`,{class:`level-pill__crown`,viewBox:`0 0 24 24`,"aria-hidden":`true`},[f(`path`,{fill:`currentColor`,d:`M3.5 17.5h17l-1.2-8.2a1 1 0 0 0-1.5-.7L14 11l-2.5-5.2a1 1 0 0 0-1.8 0L7.2 11 4.2 8.6a1 1 0 0 0-1.5.7L3.5 17.5Zm1.7 1.5h13.6v1.2H5.2V19Z`})],-1),l(` سطح: `+i($.value),1)])):s(``,!0)])]),f(`div`,I,[f(`button`,{type:`button`,class:`hero__desk-btn`,onClick:d[2]||=e=>h(W).push(`/profile/edit`)},` ویرایش اطلاعات `)])]),f(`div`,L,[X.value?(n(),m(C,{key:0,variant:`profile`})):(n(),c(u,{key:1},[h(G).isAgent?(n(),c(`section`,R,[f(`div`,z,[d[7]||=f(`h3`,null,`خلاصه عملکرد`,-1),f(`span`,B,[l(i($e.value)+` `,1),a(_,{icon:`vuesax-linear:arrow-down`,size:14,"stroke-width":1.5})])]),f(`div`,V,[f(`div`,H,[f(`div`,U,[d[8]||=f(`span`,{class:`stat-card__label`},`سفارش‌ها`,-1),f(`strong`,de,i(h(v)(tt.value)),1),d[9]||=f(`em`,{class:`stat-card__hint`},`سفارش`,-1)]),f(`span`,fe,[a(ie,{size:18})])]),f(`div`,pe,[f(`div`,me,[d[10]||=f(`span`,{class:`stat-card__label`},`مشتریان من`,-1),f(`strong`,he,i(h(v)(et.value)),1),d[11]||=f(`em`,{class:`stat-card__hint`},`مشتری فعال`,-1)]),f(`span`,ge,[a(_,{icon:`vuesax-linear:people`,size:18,"stroke-width":1.5})])]),f(`div`,_e,[f(`div`,ve,[d[12]||=f(`span`,{class:`stat-card__label`},`سود شما (ریال)`,-1),f(`strong`,ye,i(h(v)(rt.value)),1),d[13]||=f(`em`,{class:`stat-card__hint`},`تومان`,-1)]),f(`span`,be,[a(_,{icon:`vuesax-linear:chart-2`,size:18,"stroke-width":1.5})])]),f(`div`,xe,[f(`div`,Se,[d[14]||=f(`span`,{class:`stat-card__label`},`حجم فروش (ریال)`,-1),f(`strong`,Ce,i(h(v)(nt.value)),1),d[15]||=f(`em`,{class:`stat-card__hint`},`تومان`,-1)]),f(`span`,we,[a(_,{icon:`vuesax-linear:wallet`,size:18,"stroke-width":1.5})])])])])):s(``,!0),h(G).isAgent?(n(),c(`section`,Te,[f(`div`,Ee,[d[16]||=ee(``,1),f(`p`,De,[f(`span`,null,`شما در سطح `+i($.value)+` قرار دارید.`,1),f(`span`,Oe,` تا سطح `+i(Ze.value)+` فقط `+i(h(v)(Qe.value))+` تومان فروش دیگر نیاز دارید. `,1)])]),f(`div`,ke,[f(`span`,{style:r({width:`${Math.min(100,Math.max(0,it.value))}%`})},null,4)])])):s(``,!0),f(`section`,Ae,[d[17]||=f(`h3`,{class:`section-title`},`دسترسی سریع`,-1),f(`div`,je,[(n(!0),c(u,null,t(Je.value,e=>(n(),c(`button`,{key:e.id,type:`button`,class:`quick-item`,onClick:t=>h(W).push(e.to)},[f(`span`,Ne,[e.useHeart?(n(),m(E,{key:0,size:22,color:`var(--color-primary)`})):e.icon?(n(),m(_,{key:1,icon:e.icon,size:22,"stroke-width":1.5},null,8,[`icon`])):s(``,!0)]),l(` `+i(e.label),1)],8,Me))),128))])]),f(`section`,Pe,[f(`div`,Fe,[d[18]||=f(`h3`,null,`آخرین سفارش‌ها`,-1),f(`button`,{type:`button`,class:`link`,onClick:d[3]||=e=>h(W).push(`/orders`)},`مشاهده همه`)]),(n(!0),c(u,null,t(Ye.value,t=>(n(),c(`article`,{key:t.id,class:`order-row`,role:`button`,tabindex:`0`,onClick:e=>h(W).push({path:`/order`,query:{id:t.id}}),onKeydown:ne(e=>h(W).push({path:`/order`,query:{id:t.id}}),[`enter`])},[f(`div`,Le,[f(`span`,Re,i(t.date),1),f(`strong`,ze,i(t.title),1),t.customer?(n(),c(`p`,Be,`مشتری: `+i(t.customer),1)):s(``,!0)]),f(`span`,{class:e([`tone`,`tone--${t.statusTone}`])},i(t.statusLabel),3),a(y,{size:16,class:`order-row__chevron`})],40,Ie))),128)),f(`button`,{type:`button`,class:`orders-all`,onClick:d[4]||=e=>h(W).push(`/orders`)},` مشاهده همه سفارش‌ها `)]),f(`section`,Ve,[d[19]||=f(`h3`,{class:`section-title`},`قیمت‌های پایه (نمونه)`,-1),f(`div`,He,[f(`div`,Ue,[f(`div`,We,[f(`strong`,null,i(Y.value.name),1),f(`p`,null,`کد: `+i(Y.value.code),1),f(`p`,null,`عرض: `+i(h(v)(Y.value.widthCm))+` سانتی‌متر`,1),f(`p`,null,`رنگ‌ها: `+i(h(v)(Y.value.colors.length))+` رنگ`,1)]),f(`div`,{class:`price-card__image`,style:r(Y.value.imageUrl?{backgroundImage:`url(${Y.value.imageUrl})`}:void 0)},null,4)]),f(`footer`,null,`قیمت پایه به شما: `+i(h(v)(ot.value))+` تومان / متر`,1)])])],64))])])]))}}),[[`__scopeId`,`data-v-29885552`]]),G=g({__name:`ProfileView`,setup(e){return(e,t)=>(n(),m(W))}});export{G as default}; \ No newline at end of file +import{At as e,F as t,M as n,Nt as r,Pt as i,_ as a,c as o,d as s,f as c,g as l,h as ee,i as u,k as d,l as f,nt as p,t as te,u as m,ut as h,v as g}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{c as ne,t as _}from"./BasicIcon-DPmc0iaK.js";import{o as v,r as re}from"./format-C72AoJ2H.js";import{t as ie}from"./IconCart-D9TX5E-P.js";import{t as ae}from"./IconSettings-D9-FUXw4.js";import{C as oe,c as se,d as ce,f as le,i as ue,o as y,s as b}from"./index-CE4Fw0WE.js";import{i as x,t as S}from"./constants-ptWoEwwP.js";import{t as C}from"./PageSkeleton-DYdjm4l9.js";import{n as w,t as T}from"./crm-CgnSby61.js";import{t as E}from"./IconHeart-CvzbNH_T.js";var D={class:`page profile-page`},O={class:`hero__top mobile-only`},k=[`aria-label`],A={class:`page__scroll page__scroll--with-nav profile-scroll`},j={class:`hero`},M={class:`hero__rest`},N={class:`hero__meta`},P={key:0},F={key:1,class:`level-pill`},I={class:`hero__desk-actions desktop-only-flex`},L={class:`profile-sheet`},R={key:0,class:`panel`},z={class:`panel__head`},B={class:`panel__period`},V={class:`stats`},H={class:`stat-card`},U={class:`stat-card__text`},de={class:`stat-card__value`},fe={class:`stat-card__icon stat-card__icon--orders`},pe={class:`stat-card`},me={class:`stat-card__text`},he={class:`stat-card__value`},ge={class:`stat-card__icon stat-card__icon--customers`},_e={class:`stat-card`},ve={class:`stat-card__text`},ye={class:`stat-card__value`},be={class:`stat-card__icon stat-card__icon--profit`},xe={class:`stat-card`},Se={class:`stat-card__text`},Ce={class:`stat-card__value`},we={class:`stat-card__icon stat-card__icon--sales`},Te={key:1,class:`loyalty`},Ee={class:`loyalty__row`},De={class:`loyalty__text`},Oe={class:`loyalty__text-next`},ke={class:`loyalty__bar`},Ae={class:`quick-section`},je={class:`quick-grid`},Me=[`onClick`],Ne={class:`quick-item__icon`},Pe={class:`orders-box`},Fe={class:`section-head`},Ie=[`onClick`,`onKeydown`],Le={class:`order-row__meta`},Re={class:`order-row__date`},ze={class:`order-row__title`},Be={key:0,class:`order-row__customer`},Ve={class:`price-section`},He={class:`price-card`},Ue={class:`price-card__body`},We={class:`price-card__info`},W=te(g({__name:`MobileProfilePage`,setup(te){let g={id:`sample-base-price`,name:`پارچه فاستونی ایتالیایی`,code:`DF-1204`,categoryId:``,season:`all_season`,widthCm:160,composition:``,colors:[`1`,`2`,`3`,`4`,`5`,`6`],tags:[],isNew:!1,rollMeters:0,basePrice:38e4},W=oe(),G=se(),K=le(),Ge=T(),q=ce(),J=p(null),Y=p(g),X=p(!1),Ke=[{id:`add-customer`,label:`ثبت مشتری جدید`,to:`/customers`,icon:`vuesax-linear:add`},{id:`orders`,label:`سفارش‌ها`,to:`/orders`,icon:`vuesax-linear:document-text`},{id:`customers`,label:`مشتریان من`,to:`/customers`,icon:`vuesax-linear:people`},{id:`reports`,label:`گزارش‌ها`,to:`/reminders`,icon:`vuesax-linear:chart-2`},{id:`catalog`,label:`درخواست کالیته`,to:`/categories`,icon:`vuesax-linear:box-1`},{id:`pricing`,label:`قیمت‌گذاری`,to:`/categories`,icon:`vuesax-linear:money-4`}],qe=[{id:`orders`,label:`سفارش‌ها`,to:`/orders`,icon:`vuesax-linear:document-text`},{id:`categories`,label:`دسته‌بندی`,to:`/categories`,icon:`vuesax-linear:element-3`},{id:`products`,label:`محصولات`,to:`/products`,icon:`vuesax-linear:box-search`},{id:`favorites`,label:`علاقه‌مندی‌ها`,to:`/favorites`,useHeart:!0},{id:`order-status`,label:`وضعیت سفارش`,to:`/orders/latest-status`,icon:`vuesax-linear:timer-1`},{id:`addresses`,label:`آدرس‌ها`,to:`/profile/addresses`,icon:`vuesax-linear:location`},{id:`catalog`,label:`درخواست کالیته`,to:`/categories`,icon:`vuesax-linear:box-1`}],Je=o(()=>G.isAgent?Ke:qe),Ye=o(()=>[...K.orders].sort((e,t)=>String(t.createdAt).localeCompare(String(e.createdAt))).slice(0,3).map(e=>{let t=x[e.status]??`info`,n=t===`danger`||t===`neutral`?`danger`:t===`success`?`success`:t===`warning`?`warning`:`info`;return{id:e.id,title:`سفارش #${e.orderNumber}`,date:e.createdAt?re(e.createdAt):``,customer:e.companyName||``,statusLabel:S[e.status]||e.status,statusTone:n}})),Z=o(()=>G.fullName||`کاربر`),Q=o(()=>J.value?.code||G.user?.agentCode||`—`),Xe=o(()=>G.isAgent?`کد واسطه`:`کد مشتری`),$=o(()=>J.value?.levelLabel||G.user?.levelLabel||`برنزی`),Ze=o(()=>J.value?.nextLevelLabel||G.user?.nextLevelLabel||`نقره‌ای`),Qe=o(()=>J.value?.pointsToNext??G.user?.pointsToNext??0),$e=o(()=>J.value?.periodLabel||`۳۰ روز اخیر`),et=o(()=>J.value?.customersCount??0),tt=o(()=>J.value?.ordersCount??K.orders.length),nt=o(()=>J.value?.salesVolumeToman??0),rt=o(()=>J.value?.profitToman??0),it=o(()=>J.value?.levelProgress??G.user?.levelProgress??0),at=o(()=>q.unreadCount>9?`9+`:String(q.unreadCount)),ot=o(()=>Y.value.basePrice??g.basePrice??0);return d(async()=>{X.value=!0;try{if(q.hydrate(),G.isAgent)try{J.value=await w()}catch{J.value=null}try{let e=(await Ge.loadBrowseProducts())[0];Y.value=e?{...g,...e,basePrice:e.basePrice??g.basePrice}:g}catch{Y.value=g}K.orders.length||await K.hydrate()}finally{X.value=!1}}),(o,d)=>(n(),c(`div`,D,[f(`div`,O,[f(`button`,{type:`button`,class:`icon-btn`,"aria-label":`تنظیمات`,onClick:d[0]||=e=>h(W).push(`/profile/display`)},[a(ae,{size:20,color:`#ffffff`})]),d[5]||=f(`h1`,null,`پروفایل من`,-1),f(`button`,{type:`button`,class:`icon-btn`,"aria-label":`اعلان‌ها`,onClick:d[1]||=e=>h(W).push(`/profile/notifications`)},[a(b,{size:20,color:`#ffffff`}),h(q).hasUnread?(n(),c(`span`,{key:0,class:`icon-btn__badge`,"aria-label":`${h(q).unreadCount} اعلان خوانده‌نشده`},i(at.value),9,k)):s(``,!0)])]),f(`div`,A,[f(`header`,j,[f(`div`,M,[a(ue,{class:`hero__avatar`,src:h(G).user?.avatarUrl,initials:Z.value.charAt(0),size:84},null,8,[`src`,`initials`]),f(`div`,N,[f(`h2`,null,i(Z.value),1),h(G).isAgent?(n(),c(`p`,P,i(Xe.value)+`: `+i(Q.value),1)):s(``,!0),h(G).isAgent?(n(),c(`span`,F,[d[6]||=f(`svg`,{class:`level-pill__crown`,viewBox:`0 0 24 24`,"aria-hidden":`true`},[f(`path`,{fill:`currentColor`,d:`M3.5 17.5h17l-1.2-8.2a1 1 0 0 0-1.5-.7L14 11l-2.5-5.2a1 1 0 0 0-1.8 0L7.2 11 4.2 8.6a1 1 0 0 0-1.5.7L3.5 17.5Zm1.7 1.5h13.6v1.2H5.2V19Z`})],-1),l(` سطح: `+i($.value),1)])):s(``,!0)])]),f(`div`,I,[f(`button`,{type:`button`,class:`hero__desk-btn`,onClick:d[2]||=e=>h(W).push(`/profile/edit`)},` ویرایش اطلاعات `)])]),f(`div`,L,[X.value?(n(),m(C,{key:0,variant:`profile`})):(n(),c(u,{key:1},[h(G).isAgent?(n(),c(`section`,R,[f(`div`,z,[d[7]||=f(`h3`,null,`خلاصه عملکرد`,-1),f(`span`,B,[l(i($e.value)+` `,1),a(_,{icon:`vuesax-linear:arrow-down`,size:14,"stroke-width":1.5})])]),f(`div`,V,[f(`div`,H,[f(`div`,U,[d[8]||=f(`span`,{class:`stat-card__label`},`سفارش‌ها`,-1),f(`strong`,de,i(h(v)(tt.value)),1),d[9]||=f(`em`,{class:`stat-card__hint`},`سفارش`,-1)]),f(`span`,fe,[a(ie,{size:18})])]),f(`div`,pe,[f(`div`,me,[d[10]||=f(`span`,{class:`stat-card__label`},`مشتریان من`,-1),f(`strong`,he,i(h(v)(et.value)),1),d[11]||=f(`em`,{class:`stat-card__hint`},`مشتری فعال`,-1)]),f(`span`,ge,[a(_,{icon:`vuesax-linear:people`,size:18,"stroke-width":1.5})])]),f(`div`,_e,[f(`div`,ve,[d[12]||=f(`span`,{class:`stat-card__label`},`سود شما (ریال)`,-1),f(`strong`,ye,i(h(v)(rt.value)),1),d[13]||=f(`em`,{class:`stat-card__hint`},`تومان`,-1)]),f(`span`,be,[a(_,{icon:`vuesax-linear:chart-2`,size:18,"stroke-width":1.5})])]),f(`div`,xe,[f(`div`,Se,[d[14]||=f(`span`,{class:`stat-card__label`},`حجم فروش (ریال)`,-1),f(`strong`,Ce,i(h(v)(nt.value)),1),d[15]||=f(`em`,{class:`stat-card__hint`},`تومان`,-1)]),f(`span`,we,[a(_,{icon:`vuesax-linear:wallet`,size:18,"stroke-width":1.5})])])])])):s(``,!0),h(G).isAgent?(n(),c(`section`,Te,[f(`div`,Ee,[d[16]||=ee(``,1),f(`p`,De,[f(`span`,null,`شما در سطح `+i($.value)+` قرار دارید.`,1),f(`span`,Oe,` تا سطح `+i(Ze.value)+` فقط `+i(h(v)(Qe.value))+` تومان فروش دیگر نیاز دارید. `,1)])]),f(`div`,ke,[f(`span`,{style:r({width:`${Math.min(100,Math.max(0,it.value))}%`})},null,4)])])):s(``,!0),f(`section`,Ae,[d[17]||=f(`h3`,{class:`section-title`},`دسترسی سریع`,-1),f(`div`,je,[(n(!0),c(u,null,t(Je.value,e=>(n(),c(`button`,{key:e.id,type:`button`,class:`quick-item`,onClick:t=>h(W).push(e.to)},[f(`span`,Ne,[e.useHeart?(n(),m(E,{key:0,size:22,color:`var(--color-primary)`})):e.icon?(n(),m(_,{key:1,icon:e.icon,size:22,"stroke-width":1.5},null,8,[`icon`])):s(``,!0)]),l(` `+i(e.label),1)],8,Me))),128))])]),f(`section`,Pe,[f(`div`,Fe,[d[18]||=f(`h3`,null,`آخرین سفارش‌ها`,-1),f(`button`,{type:`button`,class:`link`,onClick:d[3]||=e=>h(W).push(`/orders`)},`مشاهده همه`)]),(n(!0),c(u,null,t(Ye.value,t=>(n(),c(`article`,{key:t.id,class:`order-row`,role:`button`,tabindex:`0`,onClick:e=>h(W).push({path:`/order`,query:{id:t.id}}),onKeydown:ne(e=>h(W).push({path:`/order`,query:{id:t.id}}),[`enter`])},[f(`div`,Le,[f(`span`,Re,i(t.date),1),f(`strong`,ze,i(t.title),1),t.customer?(n(),c(`p`,Be,`مشتری: `+i(t.customer),1)):s(``,!0)]),f(`span`,{class:e([`tone`,`tone--${t.statusTone}`])},i(t.statusLabel),3),a(y,{size:16,class:`order-row__chevron`})],40,Ie))),128)),f(`button`,{type:`button`,class:`orders-all`,onClick:d[4]||=e=>h(W).push(`/orders`)},` مشاهده همه سفارش‌ها `)]),f(`section`,Ve,[d[19]||=f(`h3`,{class:`section-title`},`قیمت‌های پایه (نمونه)`,-1),f(`div`,He,[f(`div`,Ue,[f(`div`,We,[f(`strong`,null,i(Y.value.name),1),f(`p`,null,`کد: `+i(Y.value.code),1),f(`p`,null,`عرض: `+i(h(v)(Y.value.widthCm))+` سانتی‌متر`,1),f(`p`,null,`رنگ‌ها: `+i(h(v)(Y.value.colors.length))+` رنگ`,1)]),f(`div`,{class:`price-card__image`,style:r(Y.value.imageUrl?{backgroundImage:`url(${Y.value.imageUrl})`}:void 0)},null,4)]),f(`footer`,null,`قیمت پایه به شما: `+i(h(v)(ot.value))+` تومان / متر`,1)])])],64))])])]))}}),[[`__scopeId`,`data-v-29885552`]]),G=g({__name:`ProfileView`,setup(e){return(e,t)=>(n(),m(W))}});export{G as default}; \ No newline at end of file diff --git a/dist/assets/RegisterView-CWi6xfK_.js b/dist/assets/RegisterView-BXt1mR93.js similarity index 99% rename from dist/assets/RegisterView-CWi6xfK_.js rename to dist/assets/RegisterView-BXt1mR93.js index 43faf6f..e6c9e5f 100644 --- a/dist/assets/RegisterView-CWi6xfK_.js +++ b/dist/assets/RegisterView-BXt1mR93.js @@ -1 +1 @@ -import{At as e,F as t,G as n,K as r,M as i,Pt as a,_ as o,c as s,d as c,f as l,i as u,l as d,nt as f,t as p,u as m,ut as h,v as g}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{a as ee,l as _,o as v}from"./BasicIcon-DPmc0iaK.js";import{d as y,l as b}from"./format-C72AoJ2H.js";import{a as x}from"./validation-Duyyve7l.js";import{t as S}from"./IconProfile-ginWFJfQ.js";import{C,c as te,g as ne,v as re}from"./index-DYwnTikp.js";import{t as w}from"./AuthShell-BRlVYnTX.js";import{t as T}from"./FormErrorBanner-Ud1D04xf.js";import{t as E}from"./IconPhone-BSof4l2r.js";import{n as D,r as O,t as k}from"./formErrors-DglFjYkZ.js";var A=`data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAALQAAAC0CAYAAAA9zQYyAAAABmJLR0QA/wD/AP+gvaeTAAAKPUlEQVR4nO3da2xb5RkH8P/zOuktrWDQcCmM2wfYGIxNdJs2YEvZWoqdZhv1yVqJrFq3xU65dEybJvphytgAsWlSuShNMhWVlkltTsqiNmlX1rGKaghYkbiN2xCVOgalEYHQNpQmPs8+ECMKtmM7557/T6rUnOPzvk+Uv44fv7bPAYiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIKJ4k6AIoGpqW3Tgv54z9HIovwp3c/EdNbu2OLX96xYWxPsJA04SS191wriRyjwM4w+Whj6ijC3Zs7drn1oDGrYEoxmqc2+B+mAFgthj5o5sDMtA0IVH9hofDfx0udgoMNJVjhodj1zY0tCfcGqzGrYGIqjX71KHzU0vbcpUcU1Mro8MHT3tzz572sY9v54tCmlDKyv4XwNlB1/FJAhxSwa0DPZ33f2wbUWmlAi2qK9SYN0qPoAko/upBaQAAI/L97T3r+gC2HDRJRhKPbevpeLXUYxoa2mvq6g96VoOjuhpAH8AXheSDw4ff8LoT+OjZg4Emz82ZM0+9nUGezf+PLUcA2tvbzb4X3kw5jrkMoq/XfHB867Zt9x8Ouq6IOpJw8Jv8Dwy0zxa1tNT9698H+wFpEPnwxJWbPu23Sas1ucPufi7g8gKi+wGp9CzuCPCMceS2bVvX8QwdlNr369ZA0PCJzWcLzN+TVuu3p2Kojw6eeeEn15OrxR7ab4KmInvqx0N9qa/1xAwD7b+TS+xjqCeJgQ4fhnoSGOhwYqirxECHF0NdBQY63BjqCjHQ4cdQV4CBjgaGukwMdHQw1GVgoMPltQn2M9QTYKBDxBjHEuDxCR7GUJfAQIeIODXvHYOzmKGuHgMdMrvt7mGGunoMdAgx1NVjoEOKoa4OAx1iDHXlGOiQY6grw0BHAENdPgY6Ihjq8jDQEcJQT4xfki3CslbNHhHnLiiWATgl6Hrydtvdw9+xWhdPR2IXoF8r8dB6gXk2ZWV9qy0MeIYuTI4itxWKVQhRmPN2293DHyB3DSBPBF1L2DDQBSSXtn5VIIuCrqMUhrowBroQYz4fxLTHE05F16YIQ6grrdlrDHQhKkG8tnhvTu7tCS5L+2kBh7qqmr3EQIeFyF22bR+v5tB8qMtY/XDXJGr2CgMdONkPlVsGetbdOZlRdtvdwzNhFkLQAWDIpeKKcKdmL3DZrlKqDw70drUEXUYhtt1xBMAN4/+mJJ6hKVYYaIoVBppihYGmWGGgKVYYaIoVBppihYGmWIlcoJcsb527ZHnr3KDroHCKzDuFi622ixLQ9c4YrgCAlJXd6whu3dnT+c+ga6PwiMQZuqlp5RwD/RvwYZjHXWUUe1Pp7Iam5T85PajaKFwiEejcjOnXCfDZArsEghW5scRLqXTmJsuyEr4XR6ESiUBDcUHpB8jJELlnBKfsu7Y5e0Xpx1KcRSLQIk6ZdcqXjGJvo5XdyDZkaprUi8Lk0sx8I1gIkcMmUfPQts33heHbC6JAS24ssSSVzvx6lgx12LadC7oo8kfVZ+hGK/N7MfKkityhwL253Nj+ZHPbHYtaWurcLLB6bEOmoqoCnbQyCxXySwDysc3TRPXW2mN1LySbs0vdKc8NH7YhXA2ZGqoKtECK3YAdAM4RRW/SyuxK/uCnF1ZZl9u4GjJFVNdyqJa6ATsAQCCLxEk8530bIvsBlNkjsw2JO69XOfJtyMuN6cwPvZhAxPmzGL0cQAXvGHI1JK78WrY7S0UeSFmZR661Mhe7PXj/lq5nBuzOq0R1BYC3yjwsvxryUqOVWd3Q0B6ZjwFQcT6vQ8sCA3m6MZ29u6lp5RyXB9f+3q6NtaMzPieKewCUeUUfOVkha+vqD+5bYrVe6XJN5LMg3lipVcHNuenTXvSiDenrW/tuf2/najE6HxW1IbjMgXm00cpuFFG2IREV5DuFZ6nIA16thuTbEAV+JMChMg8TBVoA/M7tesgfrgdaRTYC+kq5j/d4NUR32J0bakZnXATgPpS9GkJR5f4Z2sHeg5/RSwT6MwCHyzzK09WQvr617w7YnTdVvhpCUeNJy/FUd/dov911t4FziQBbKzg0jG0IRYinPfR2u/tAv92ZhpirAbxQ7nHjbcjzXq2G5NuQylZDKAp8eVE40NPxj1l4+8uiugaQo2Uell8NeV5VXF9Oy6+GKMxXADzm9vgUDN9WOWzbPt7f23WnQe7iCtuQcwA0eFQWdtgdTw/YnVeW24aIkWNe1UKT5/uyXb4NMWquqWQ1xGPlr4Y4wrN5iAW2Dr29t+PhWRi6tMI2xFP51RCFmY/CbcjeN0/JPeh3XVS+QL+CNYk2xFP5NgSK5YA8JMBOKH5xtO7Yoqe6u0eDro+KC8UHcrbb3QcApFPNqxZAnfsAuP4BpiroQG/nZgCbgy6EyheqL8lWuRpC9JFQBRqovA1xIIN+1EXRELpA55W5GvJ+Qp0+XwujUAttoPNKrIYcVkHLeP9NBCAkLwonMn5zxzuvsX7cVYuaqwFgFGOP7OpZ7/H9+ChqIhHovF32+iEAvUHXQeEV+paDqBIMNMUKA02xwkBTrDDQFCsMNMUKA02xwkBTrDDQFCsMNMUKA02xwkBTrDDQFCuR+rRdMQ0N7TUnnXHozOEZI4N7Nmzw47oZ0mhl582EGbbtjiM+zFeQZVnTjifqT5+WG3xr/CO2U17kz9Cp5uzK2fUH/zeWcw7UHZ0xlLSyay9vba31ar5kOtuYsrKvKfD6CJx3UunMJg8uVzYRSTW3rRnBqYfGcs6BEZx6KNXctgYn3pVsSop0oJc0t30PivUKnDa+aaYAq09/x/zBi/mSSzPzRfAXAOeNb6qByPW56dM2eTFfMal022qo3g7gpPFNJ0H19lS6bbWfdYRRpAPtqBb8AwrQalm3zHR7PjFyAwq3ad9dvCx7ntvzFS+k8O9ddPsUEulAA0Vvaj9zxDl2po/zQXLF97lp/B6L5xbZfe5Uvwdj1ANdtP6EEQ9+t+JjGvFivk8bHPyCoHivLOP7p6yoB5roBAw0xQoDTbHCQFOsMNAUKww0xQoDTbHCQFOsMNAUKww0xQoDTbHCQFOsMNAUKww0xQoDTbHCQFOsMNAUK1V9uyGVzmyCyPVFdu+DYP8kaiqfSiOgBb87KMBOFbh7iQHFAgBzC+4TPArgLVfnK1yDAEiXeEQvBOp5HZWYoOajg2fU7tnTPubGVF5cl2M+FPM9GLeA4n83Ba719c+q+KaPs5WSDlmcfcWWg2KFgaZYqSrQKuaQ24XQlDXkVv8MVBloA92CUg0sUbkEm90crqpA99udTwpwMwBeIJCqptCHZ6n5lZtjTuqiJE3Lbpw35ox+S9T4fbHCExjVsx1jzoLjvCNGXlWF4+2MWg8xFwicI+qYlyHq2lNm2RWoiho530DqHeigOLpfRCLxrCmK0VwCL+7csu4J8JmeiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIjIc/8HnUeNKV5NLdwAAAAASUVORK5CYII=`,j=`data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAALQAAAC0CAYAAAA9zQYyAAAABmJLR0QA/wD/AP+gvaeTAAAOL0lEQVR4nO3daZBU1RkG4Pc7d3pkBklEEHcttVRcMO5l3EI0DM4qOHMlLrhhZolLoj8sYypxYln+MFVqqTDDlEWixAXuDOKsBrWiWdQo7kbBwoqYKJR7RBhgps+XH9MoS5/bPT3dt7vP+Z4q/3gu93yjr+3tfnvuBYQQQgghhBBCCCGEEEIIIYQQ7qF8D2CritnNU3YrVQczx/fRmvYDAKX4Yx3HumFNH654vP2TfM9oIwl0FtXVtxwXV3oWQOcDODHkUAbwKghPMOvl/UHHWxGNaD0JdBbU1l9zjPbit4LhZ3iKp7XGTQNd7a9ldTAHSaDHYNasX+4xHNt8LwOXAFBjPJ0GY/EW0r94Ouj4Xzbmc5EEOkM19U2Hs6JuAFOzfOp3Pai67mDBmiyf1wljfVVxUq3f8iNW9CKyH2YAOCoO/c+qC5vOzsG5rSev0KN0nt9ypAf9IkB75Hirr5X2Tu/pmv+vHO9jFQn0KMz05+1ZgtiLAA5P84+sY/BbILUeAMB6HwJNA7Bven+c30NMndb3SNuXmczropJ8D1BMShB7AKnDHGfihxRTe2/Q/jJGPqL7Vmtrq3rprY9PIaWaAcwF4JlPRUdgiDuAjD89cY68Qqep1m88U0P9LewYBt70tHdxupcJ1XOaj4XGowCODT2Q1Rl9nQueT39ad8mbwvSQhrozxTH946HOGM01b9+S9re9LVtPJ2Agxe6p9hYJ8gqdhkq/+RwFPBNyyKtqsz6rp6djUybnr5g7d3xsc/nfATredAwxftzb2f5sJud3ibxCp8FjviBkeYvCcEOmYQaAFYsXb/Tg+QC2mo5hRWEziAQJdGqkiepMiwya3xM88O+xbtIdLFhDjHbjAcznQ/6PmpIEOoWaOU3HEXCgad3D0P3Z2ivu6XtDlg+q8hvD3zwKCXQqHMdhIauvZ+PVeZuBJR3vAzB+884jL2QWAUigU2KljCUIEa3M+n7ExnNqrffL9n62kUCnQMzGQLPGumzvp4CPjLOodBtGd0mgU2BCzLioMJT1/dh8Tg0qzfZ+tpFAp7beuMI5eMUkMl5WKOaPs76fZSTQKYSHiLP/9VHGUaYlTZT1SxzbSKBTYPb+Y16lM2f68/bM1l6zZ18zCcDppnXFHDKLACTQKZXTpysBmH4lKuZR7NJs7bUlFr8Mxm9A8lfrJpo/AREjJNApBEGwFYx+0zoxflN5yXXfG+s+dXVXTVCMm40HEPW90tGR9TehtpFAp6c7ZG2yt3WoDWOrpSk+rrSDgSmmAzh8BpEggU7Dxt03Lwew1rTOwMXVfktrpuevbmj+HRg/DTnkA94QeyLT87tEvuySppqGpsuY6MHQgxgPllNZSxDcPZjOOX3/hrJBDC7kkd9cMSLGpb2d7Q+PYlxnySt0mk4+dt8/AXgj9CDC5RsxuLrKb76isvK63UyHVVZet1tNQ8uVGzG4OmWYgddOPnafRzOb2j3yCj0KVX7jNIL6B4AJaRz+NRhPgmiVZl0OAIrUJhAfBcZ56Z5DfvN7dCTQo1TZ0FKpiHsQ+sutWaGJeFbv0oU9Od7HKrn+l2KdNe+sXHPE0ad8DcJM5O4FgQl8Y2+w8KEcnd9a8gqdoWq/pRrgRwCM+TPoHdFGsL6sr3Phsuye1w0S6DGo8n9+PEEvRfo3nglFwGoontO7ZGH4m09hJJ9yjEF/sOD19RP1MQA1Iexbeal9BqKb49/EfiBhHht5hc6SurqrJujdSi9nYBaAs4GQ71GPGALwHBMtH8/0YBAs+Cb3U9pPAp0D1Re3TKRh7mBGQ7J1InSWbB33s+XL7/kq6tlsJ5ccOTByc0VeZT6CV0mYc0MCLawigRZWkUALq8ibwuyiar/lRBBXgXE5kPwmNURYw8BDinRfz5KO17DTPaRF5iTQWVAxd+74ki3j5xHzNQAdMZo/S8BqZp4/VLZp0YrFizfmakZXSKDHhqoaWuYR8W1I+zETRh8D/Nu+YOEiyCt2xiTQGaq84OoDlFfyBwA/yfKpn9bx4SsHlj3w3yyf1wkS6AxUzmk5TWleDmDvHG3xGZgu6OtsC30EhtiVBHqUqvym8wj0OIBxOd5qEITZfUvb/5zjfawigR6Fmobm6UzoB1AW0ZaDClTZE7Q9F9F+RU8+h05TdX3LoUzoQnphXg/ghZD1F5Det/PKNLir1r/6kHRmFBLotPi+XwqluwCkuu3XF0x0bTk+P5iIjQ8ZIuJnyvH5wQRcByDVQzUnMUq6TmpsTPXtPQEJdFoGadItYU+oSvir55VM61/aNj8Igq3QtMF4pKYNQRBs7Q3a7ydgGoBUzz88Ye8v1C0ZjO4cCXQKlXMaD2PGr0IPIgTl+HxG92P3f3unUsX0JACd5GidWAMA9AbtH+lvYjMI6ArdgnBL5ZxGeSRFChLoFBSr2wEYbzTO4BXr99CXBEGwwyPZurva3mSmW7FjScLMdGt3V9ub2x87MHDflnUT9UUMXhEySqmn1W2Z/AwukU85QtTUNx3OilbB/B/+WsTohLCHy9f4zaeCuBYAwNTTG7S/ZDp2pj9vzxLEXgNwkOEQ7UEd2R0sWJPmj+AcCXSI6obmu0C4wbSuWM3s6VwQ9qo6aonPuc2PSmbc3dfZfmM297SJXHIYTJ/eWgIKu00X92U7zADQHyx8MvTZ34S506e3Gu4hLSTQBmV7rT8bwGTTulbq9lztzRx67snjp3xyVq72LnYSaANFqApZfmNgSduLudq7r3PB8wi7MaTmsNmcJoE2IMYZ5jVeEsEIgXGF+IcR7F+UJNBJ+L7vMXCCaZ08zvkXhliH7nGS7/tyX8Ik5M1FEhu8SQd6cSS9vzODh3jYO7Xabzk5lzNosEcjN6NJVnmP24yJ+wP4MJczFCMJdBIUx6HGNVCMFbfleobU/+v0DoEEehdyyZGEVwzP1CZ5kH0yEugkeNj8hrBQMFTBz5gPEuhkiNN5XEResdbfz/cMhUgCnQzR9HyPkFIxzJgHEuid1NZfcwyAA/I9RxoOqPSbjs73EIVGPuXYiSY9I2T5UxCejWoWAABjOoC9ki0pVhUA3ol0ngIngd4JEVcY7/JC9Fjf0rbro5yn2m++D8C1yefhGQDuiXKeQieXHNvxfb+UAeMXfwj6qSjnSewatuf0sAd8ukgCvZ1vMOlMALsblofisdLIbyfgbdnyF4w0hsmUqwnx06Ocp9BJoLfjAcbrZwaeH3j4vq+jnAcAursXbUDILREYHHbN7xwJ9HYYqDCtEZCHy40RzObLDmI2zuwiCXRC7UWNkwEYb1WQz0ArCv3l2RMqZjdPiWyYAieBTojHaQbM/zy+LMPnr0Q5z/YSe39hWFYxD+dEOU8hk0B/x3wtyngqCIJ4hLPsIAiCOAjGOzEhbHbHSKC3YTLe55nDPzqLROglD2FmhKMUNAk0RupuAg40resSfjrKeZLOMOyFXUfvLzX4CAk0gLgXD/t0Y/WTj7V/EOE4SfUvm78W4PdM64ka3HkSaACKQz5/Jsr6vTcyFzILyefRgAS6QOtuE6nBU3E+0IVYd5tIDZ6a84EuxLrbRGrw1JwPdKHW3SZSg4dzOtCFXHebSA0ezulAF3LdbSI1eDinA40CrrtNpAYP53agC7zuNpEa3MzZQBdD3W0iNbiZs4EuhrrbRGpwM2cDXTx1t4nU4Mk4GejiqrtNpAZPxslAF1PdbSI1eHJOBrqY6m4TqcGTczLQxVZ3m0gNvivnAl2MdbeJ1OC7ci7QxVh3m0gNvivnAo0irLtNpAbflXuBLtK620Rq8B05FehirrtNpAbfkVOBLua620Rq8B05Fejir7tNpAbfxplA21F3m0gNvo0zgbah7jaRGvw7zgTahrrbRGrw7zgTaFvqbhOpwUc4EWib6m4TqcFHOBFom+puE6nBRzgRaFhUd5tIDT7CjUBbVnebSA3uQKBtrLtNpAZ3INA21t0mUoM7EGh7624Tt2twqwNtd91t4nYNbnWgba67TVyvwa0OtM11t4nrNbjVgba97jZxuQa3NtAu1N0mLtfg1gbahbrbxOUa3NpAw4G628TlGtzeQDtSd5u4WoNbGWiX6m4TV2vwknwPkAtxL15BnHwt6rq7tr5xqvaoBgBUnHt7ujpWRbFv/7L5a6v9pvcAOiLZeqIGfyeKWaJk5St0odTdVRc2X6+VehtMvwfT77VSb1dd2Hx9VPu7WINbF+hCqbtr6xunEuMuAN52f9sjxl219Y1To5jBxRrcukADiBOjFow7AKwEoLdbG1Kbh56NYghNqho7hnkbL7GWc0lqcA1gJRh3EKN6993XD0cxR5Ssu4ZOfBz3bOKvX9de1DiZh+lcZqqAQnmiGs45UrwHMxnXopihu3vRhuoLm7ugsYmIV1AJP9PzaMdnUeydL9YFemeJf4FLEn85p29p+0X5niFKNl5yCIdJoIVVJNDCKhJoYRUJtLCKBFpYRQItrCKBFlaRQAurSKCFVSTQwioSaGEVCbSwigRaWEUCLawigRZWkUALq0igc4S16UYK4WtibCTQuUK8NqM1MSbJf4vTYq2trerldz85EprLc7oRYSKYewCM22llM4hqwfgyp/sr2nTKUVNWt7a26tQH28OpQNc0NJ3LRIsAHJTvWSLyITFf1du5MOzGjVZxJtCVcxoPU1q9BaAs37NEbFArPW1gScf7+R4kCs5cQ3tMV8C9MANAWeJnd4IzgQZon3xPkD/u/OzOBFprrMz3DPni0s/uTKB5Y+yPAF7N8xj58GriZ3eCM28KAaCu7qoJelzsJmY6F0BpvufJsa1E/IzaPHRnVPfzE0IIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCJG5/wOg6gFlVj4vbgAAAABJRU5ErkJggg==`,M=`/assets/job-icon-fabric-C5l546gN.png`,N={class:`auth-row`},P={key:0,class:`auth-error`},F=[`value`],I={key:1,class:`auth-error`},L={key:2,class:`auth-error`},R=[`onClick`],z=[`src`,`alt`],ie={key:3,class:`auth-error`},B=[`disabled`],V={class:`terms`},H={key:4,class:`auth-error`},U=p(g({__name:`RegisterView`,setup(p){let g={garment_producer:A,atelier:j,fabric_wholesaler:M},U=C(),W=te(),G=f(``),K=f(``),q=f(``),J=f(`garment_producer`),Y=f(``),X=f(!0),Z=f({}),Q=f(``),ae=s(()=>q.value?y(q.value):``);function oe(e){J.value=e,$(`jobCategory`)}function $(e){Z.value=D(Z.value,e),O(Z.value)||(Q.value=``)}function se(e){q.value=b(e),$(`phone`)}async function ce(){Z.value={},Q.value=``;let e=b(q.value),t={};if(G.value.trim()||(t.firstName=`نام الزامی است.`),K.value.trim()||(t.lastName=`نام خانوادگی الزامی است.`),x(e)||(t.phone=`شماره موبایل معتبر نیست.`),J.value||(t.jobCategory=`دسته شغلی را انتخاب کنید.`),X.value||(t.terms=`پذیرش قوانین برای ثبت‌نام لازم است.`),O(t)){Z.value=t,Q.value=k;return}let n={firstName:G.value.trim(),lastName:K.value.trim(),jobCategory:J.value,referrerAgentCode:Y.value.trim()||void 0};re(n);let r=await W.requestOtp(e,{isRegister:!0,firstName:n.firstName,lastName:n.lastName,referrerAgentCode:n.referrerAgentCode});if(r.success)U.push({name:`otp`,query:{phone:e,mode:`register`}});else{let e=r.message??`خطا در ارسال کد تأیید.`;e.includes(`کد واسطه معتبر نیست`)?(Z.value={...Z.value,referrerAgentCode:`کد واسطه معتبر نیست`},Q.value=``):Q.value=e}}return(s,f)=>(i(),m(w,{"back-to":`/login`},{default:n(()=>[f[12]||=d(`h1`,{class:`auth-title`},`ثبت‌نام`,-1),f[13]||=d(`p`,{class:`auth-lead`},`برای ساخت حساب کاربری، اطلاعات زیر را وارد کنید`,-1),d(`form`,{class:`auth-form`,onSubmit:_(ce,[`prevent`])},[o(T,{message:Q.value},null,8,[`message`]),d(`div`,N,[d(`label`,{class:e([`auth-field`,{"is-invalid":Z.value.firstName}])},[o(S,{size:18,color:`#98a2b3`}),r(d(`input`,{"onUpdate:modelValue":f[0]||=e=>G.value=e,type:`text`,autocomplete:`given-name`,placeholder:`نام`,onInput:f[1]||=e=>$(`firstName`)},null,544),[[v,G.value]])],2),d(`label`,{class:e([`auth-field`,{"is-invalid":Z.value.lastName}])},[r(d(`input`,{"onUpdate:modelValue":f[2]||=e=>K.value=e,type:`text`,autocomplete:`family-name`,placeholder:`نام خانوادگی`,onInput:f[3]||=e=>$(`lastName`)},null,544),[[v,K.value]])],2)]),Z.value.firstName||Z.value.lastName?(i(),l(`p`,P,a(Z.value.firstName||Z.value.lastName),1)):c(``,!0),d(`label`,{class:e([`auth-field`,{"is-invalid":Z.value.phone}])},[o(E,{size:18,color:`#98a2b3`}),d(`input`,{value:ae.value,type:`tel`,inputmode:`numeric`,autocomplete:`tel`,maxlength:`11`,placeholder:`شماره موبایل`,onInput:f[4]||=e=>se(e.target.value)},null,40,F)],2),Z.value.phone?(i(),l(`p`,I,a(Z.value.phone),1)):c(``,!0),d(`label`,{class:e([`auth-field auth-field--stacked`,{"is-invalid":Z.value.referrerAgentCode}])},[f[8]||=d(`span`,{class:`auth-field__caption`},`کد واسطه (اختیاری)`,-1),r(d(`input`,{"onUpdate:modelValue":f[5]||=e=>Y.value=e,type:`text`,autocomplete:`off`,dir:`ltr`,class:`auth-field__input-ltr`,placeholder:`مثلاً W-1247`,onInput:f[6]||=e=>$(`referrerAgentCode`)},null,544),[[v,Y.value]])],2),f[10]||=d(`p`,{class:`auth-hint`},` اگر از طریق واسطه معرفی شده‌اید، کد واسطه را وارد کنید؛ در غیر این صورت این قسمت را خالی بگذارید. `,-1),Z.value.referrerAgentCode?(i(),l(`p`,L,a(Z.value.referrerAgentCode),1)):c(``,!0),f[11]||=d(`p`,{class:`job-label`},`دسته شغلی شما`,-1),d(`div`,{class:e([`job-grid`,{"is-invalid":Z.value.jobCategory}])},[(i(!0),l(u,null,t(h(ne),t=>(i(),l(`button`,{key:t.id,type:`button`,class:e([`job-card`,{"is-on":J.value===t.id}]),onClick:e=>oe(t.id)},[d(`img`,{class:`job-card__icon`,src:g[t.id],alt:t.label,draggable:`false`},null,8,z),d(`span`,null,a(t.label),1)],10,R))),128))],2),Z.value.jobCategory?(i(),l(`p`,ie,a(Z.value.jobCategory),1)):c(``,!0),d(`button`,{class:`auth-submit`,type:`submit`,disabled:h(W).loading},a(h(W).loading?`در حال ارسال…`:`ثبت‌نام`),9,B),d(`label`,V,[r(d(`input`,{"onUpdate:modelValue":f[7]||=e=>X.value=e,type:`checkbox`},null,512),[[ee,X.value]]),f[9]||=d(`span`,null,`با ثبت‌نام، قوانین و شرایط استفاده را می‌پذیرم.`,-1)]),Z.value.terms?(i(),l(`p`,H,a(Z.value.terms),1)):c(``,!0)],32)]),_:1}))}}),[[`__scopeId`,`data-v-28da5e36`]]);export{U as default}; \ No newline at end of file +import{At as e,F as t,G as n,K as r,M as i,Pt as a,_ as o,c as s,d as c,f as l,i as u,l as d,nt as f,t as p,u as m,ut as h,v as g}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{a as ee,l as _,o as v}from"./BasicIcon-DPmc0iaK.js";import{d as y,l as b}from"./format-C72AoJ2H.js";import{a as x}from"./validation-Duyyve7l.js";import{t as S}from"./IconProfile-ginWFJfQ.js";import{C,c as te,g as ne,v as re}from"./index-CE4Fw0WE.js";import{t as w}from"./AuthShell-prz1TrpO.js";import{t as T}from"./FormErrorBanner-Ud1D04xf.js";import{t as E}from"./IconPhone-BSof4l2r.js";import{n as D,r as O,t as k}from"./formErrors-DglFjYkZ.js";var A=`data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAALQAAAC0CAYAAAA9zQYyAAAABmJLR0QA/wD/AP+gvaeTAAAKPUlEQVR4nO3da2xb5RkH8P/zOuktrWDQcCmM2wfYGIxNdJs2YEvZWoqdZhv1yVqJrFq3xU65dEybJvphytgAsWlSuShNMhWVlkltTsqiNmlX1rGKaghYkbiN2xCVOgalEYHQNpQmPs8+ECMKtmM7557/T6rUnOPzvk+Uv44fv7bPAYiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIKJ4k6AIoGpqW3Tgv54z9HIovwp3c/EdNbu2OLX96xYWxPsJA04SS191wriRyjwM4w+Whj6ijC3Zs7drn1oDGrYEoxmqc2+B+mAFgthj5o5sDMtA0IVH9hofDfx0udgoMNJVjhodj1zY0tCfcGqzGrYGIqjX71KHzU0vbcpUcU1Mro8MHT3tzz572sY9v54tCmlDKyv4XwNlB1/FJAhxSwa0DPZ33f2wbUWmlAi2qK9SYN0qPoAko/upBaQAAI/L97T3r+gC2HDRJRhKPbevpeLXUYxoa2mvq6g96VoOjuhpAH8AXheSDw4ff8LoT+OjZg4Emz82ZM0+9nUGezf+PLUcA2tvbzb4X3kw5jrkMoq/XfHB867Zt9x8Ouq6IOpJw8Jv8Dwy0zxa1tNT9698H+wFpEPnwxJWbPu23Sas1ucPufi7g8gKi+wGp9CzuCPCMceS2bVvX8QwdlNr369ZA0PCJzWcLzN+TVuu3p2Kojw6eeeEn15OrxR7ab4KmInvqx0N9qa/1xAwD7b+TS+xjqCeJgQ4fhnoSGOhwYqirxECHF0NdBQY63BjqCjHQ4cdQV4CBjgaGukwMdHQw1GVgoMPltQn2M9QTYKBDxBjHEuDxCR7GUJfAQIeIODXvHYOzmKGuHgMdMrvt7mGGunoMdAgx1NVjoEOKoa4OAx1iDHXlGOiQY6grw0BHAENdPgY6Ihjq8jDQEcJQT4xfki3CslbNHhHnLiiWATgl6Hrydtvdw9+xWhdPR2IXoF8r8dB6gXk2ZWV9qy0MeIYuTI4itxWKVQhRmPN2293DHyB3DSBPBF1L2DDQBSSXtn5VIIuCrqMUhrowBroQYz4fxLTHE05F16YIQ6grrdlrDHQhKkG8tnhvTu7tCS5L+2kBh7qqmr3EQIeFyF22bR+v5tB8qMtY/XDXJGr2CgMdONkPlVsGetbdOZlRdtvdwzNhFkLQAWDIpeKKcKdmL3DZrlKqDw70drUEXUYhtt1xBMAN4/+mJJ6hKVYYaIoVBppihYGmWGGgKVYYaIoVBppihYGmWIlcoJcsb527ZHnr3KDroHCKzDuFi622ixLQ9c4YrgCAlJXd6whu3dnT+c+ga6PwiMQZuqlp5RwD/RvwYZjHXWUUe1Pp7Iam5T85PajaKFwiEejcjOnXCfDZArsEghW5scRLqXTmJsuyEr4XR6ESiUBDcUHpB8jJELlnBKfsu7Y5e0Xpx1KcRSLQIk6ZdcqXjGJvo5XdyDZkaprUi8Lk0sx8I1gIkcMmUfPQts33heHbC6JAS24ssSSVzvx6lgx12LadC7oo8kfVZ+hGK/N7MfKkityhwL253Nj+ZHPbHYtaWurcLLB6bEOmoqoCnbQyCxXySwDysc3TRPXW2mN1LySbs0vdKc8NH7YhXA2ZGqoKtECK3YAdAM4RRW/SyuxK/uCnF1ZZl9u4GjJFVNdyqJa6ATsAQCCLxEk8530bIvsBlNkjsw2JO69XOfJtyMuN6cwPvZhAxPmzGL0cQAXvGHI1JK78WrY7S0UeSFmZR661Mhe7PXj/lq5nBuzOq0R1BYC3yjwsvxryUqOVWd3Q0B6ZjwFQcT6vQ8sCA3m6MZ29u6lp5RyXB9f+3q6NtaMzPieKewCUeUUfOVkha+vqD+5bYrVe6XJN5LMg3lipVcHNuenTXvSiDenrW/tuf2/najE6HxW1IbjMgXm00cpuFFG2IREV5DuFZ6nIA16thuTbEAV+JMChMg8TBVoA/M7tesgfrgdaRTYC+kq5j/d4NUR32J0bakZnXATgPpS9GkJR5f4Z2sHeg5/RSwT6MwCHyzzK09WQvr617w7YnTdVvhpCUeNJy/FUd/dov911t4FziQBbKzg0jG0IRYinPfR2u/tAv92ZhpirAbxQ7nHjbcjzXq2G5NuQylZDKAp8eVE40NPxj1l4+8uiugaQo2Uell8NeV5VXF9Oy6+GKMxXADzm9vgUDN9WOWzbPt7f23WnQe7iCtuQcwA0eFQWdtgdTw/YnVeW24aIkWNe1UKT5/uyXb4NMWquqWQ1xGPlr4Y4wrN5iAW2Dr29t+PhWRi6tMI2xFP51RCFmY/CbcjeN0/JPeh3XVS+QL+CNYk2xFP5NgSK5YA8JMBOKH5xtO7Yoqe6u0eDro+KC8UHcrbb3QcApFPNqxZAnfsAuP4BpiroQG/nZgCbgy6EyheqL8lWuRpC9JFQBRqovA1xIIN+1EXRELpA55W5GvJ+Qp0+XwujUAttoPNKrIYcVkHLeP9NBCAkLwonMn5zxzuvsX7cVYuaqwFgFGOP7OpZ7/H9+ChqIhHovF32+iEAvUHXQeEV+paDqBIMNMUKA02xwkBTrDDQFCsMNMUKA02xwkBTrDDQFCsMNMUKA02xwkBTrDDQFCuR+rRdMQ0N7TUnnXHozOEZI4N7Nmzw47oZ0mhl582EGbbtjiM+zFeQZVnTjifqT5+WG3xr/CO2U17kz9Cp5uzK2fUH/zeWcw7UHZ0xlLSyay9vba31ar5kOtuYsrKvKfD6CJx3UunMJg8uVzYRSTW3rRnBqYfGcs6BEZx6KNXctgYn3pVsSop0oJc0t30PivUKnDa+aaYAq09/x/zBi/mSSzPzRfAXAOeNb6qByPW56dM2eTFfMal022qo3g7gpPFNJ0H19lS6bbWfdYRRpAPtqBb8AwrQalm3zHR7PjFyAwq3ad9dvCx7ntvzFS+k8O9ddPsUEulAA0Vvaj9zxDl2po/zQXLF97lp/B6L5xbZfe5Uvwdj1ANdtP6EEQ9+t+JjGvFivk8bHPyCoHivLOP7p6yoB5roBAw0xQoDTbHCQFOsMNAUKww0xQoDTbHCQFOsMNAUKww0xQoDTbHCQFOsMNAUKww0xQoDTbHCQFOsMNAUK1V9uyGVzmyCyPVFdu+DYP8kaiqfSiOgBb87KMBOFbh7iQHFAgBzC+4TPArgLVfnK1yDAEiXeEQvBOp5HZWYoOajg2fU7tnTPubGVF5cl2M+FPM9GLeA4n83Ba719c+q+KaPs5WSDlmcfcWWg2KFgaZYqSrQKuaQ24XQlDXkVv8MVBloA92CUg0sUbkEm90crqpA99udTwpwMwBeIJCqptCHZ6n5lZtjTuqiJE3Lbpw35ox+S9T4fbHCExjVsx1jzoLjvCNGXlWF4+2MWg8xFwicI+qYlyHq2lNm2RWoiho530DqHeigOLpfRCLxrCmK0VwCL+7csu4J8JmeiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIjIc/8HnUeNKV5NLdwAAAAASUVORK5CYII=`,j=`data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAALQAAAC0CAYAAAA9zQYyAAAABmJLR0QA/wD/AP+gvaeTAAAOL0lEQVR4nO3daZBU1RkG4Pc7d3pkBklEEHcttVRcMO5l3EI0DM4qOHMlLrhhZolLoj8sYypxYln+MFVqqTDDlEWixAXuDOKsBrWiWdQo7kbBwoqYKJR7RBhgps+XH9MoS5/bPT3dt7vP+Z4q/3gu93yjr+3tfnvuBYQQQgghhBBCCCGEEEIIIYQQ7qF8D2CritnNU3YrVQczx/fRmvYDAKX4Yx3HumFNH654vP2TfM9oIwl0FtXVtxwXV3oWQOcDODHkUAbwKghPMOvl/UHHWxGNaD0JdBbU1l9zjPbit4LhZ3iKp7XGTQNd7a9ldTAHSaDHYNasX+4xHNt8LwOXAFBjPJ0GY/EW0r94Ouj4Xzbmc5EEOkM19U2Hs6JuAFOzfOp3Pai67mDBmiyf1wljfVVxUq3f8iNW9CKyH2YAOCoO/c+qC5vOzsG5rSev0KN0nt9ypAf9IkB75Hirr5X2Tu/pmv+vHO9jFQn0KMz05+1ZgtiLAA5P84+sY/BbILUeAMB6HwJNA7Bven+c30NMndb3SNuXmczropJ8D1BMShB7AKnDHGfihxRTe2/Q/jJGPqL7Vmtrq3rprY9PIaWaAcwF4JlPRUdgiDuAjD89cY68Qqep1m88U0P9LewYBt70tHdxupcJ1XOaj4XGowCODT2Q1Rl9nQueT39ad8mbwvSQhrozxTH946HOGM01b9+S9re9LVtPJ2Agxe6p9hYJ8gqdhkq/+RwFPBNyyKtqsz6rp6djUybnr5g7d3xsc/nfATredAwxftzb2f5sJud3ibxCp8FjviBkeYvCcEOmYQaAFYsXb/Tg+QC2mo5hRWEziAQJdGqkiepMiwya3xM88O+xbtIdLFhDjHbjAcznQ/6PmpIEOoWaOU3HEXCgad3D0P3Z2ivu6XtDlg+q8hvD3zwKCXQqHMdhIauvZ+PVeZuBJR3vAzB+884jL2QWAUigU2KljCUIEa3M+n7ExnNqrffL9n62kUCnQMzGQLPGumzvp4CPjLOodBtGd0mgU2BCzLioMJT1/dh8Tg0qzfZ+tpFAp7beuMI5eMUkMl5WKOaPs76fZSTQKYSHiLP/9VHGUaYlTZT1SxzbSKBTYPb+Y16lM2f68/bM1l6zZ18zCcDppnXFHDKLACTQKZXTpysBmH4lKuZR7NJs7bUlFr8Mxm9A8lfrJpo/AREjJNApBEGwFYx+0zoxflN5yXXfG+s+dXVXTVCMm40HEPW90tGR9TehtpFAp6c7ZG2yt3WoDWOrpSk+rrSDgSmmAzh8BpEggU7Dxt03Lwew1rTOwMXVfktrpuevbmj+HRg/DTnkA94QeyLT87tEvuySppqGpsuY6MHQgxgPllNZSxDcPZjOOX3/hrJBDC7kkd9cMSLGpb2d7Q+PYlxnySt0mk4+dt8/AXgj9CDC5RsxuLrKb76isvK63UyHVVZet1tNQ8uVGzG4OmWYgddOPnafRzOb2j3yCj0KVX7jNIL6B4AJaRz+NRhPgmiVZl0OAIrUJhAfBcZ56Z5DfvN7dCTQo1TZ0FKpiHsQ+sutWaGJeFbv0oU9Od7HKrn+l2KdNe+sXHPE0ad8DcJM5O4FgQl8Y2+w8KEcnd9a8gqdoWq/pRrgRwCM+TPoHdFGsL6sr3Phsuye1w0S6DGo8n9+PEEvRfo3nglFwGoontO7ZGH4m09hJJ9yjEF/sOD19RP1MQA1Iexbeal9BqKb49/EfiBhHht5hc6SurqrJujdSi9nYBaAs4GQ71GPGALwHBMtH8/0YBAs+Cb3U9pPAp0D1Re3TKRh7mBGQ7J1InSWbB33s+XL7/kq6tlsJ5ccOTByc0VeZT6CV0mYc0MCLawigRZWkUALq8ibwuyiar/lRBBXgXE5kPwmNURYw8BDinRfz5KO17DTPaRF5iTQWVAxd+74ki3j5xHzNQAdMZo/S8BqZp4/VLZp0YrFizfmakZXSKDHhqoaWuYR8W1I+zETRh8D/Nu+YOEiyCt2xiTQGaq84OoDlFfyBwA/yfKpn9bx4SsHlj3w3yyf1wkS6AxUzmk5TWleDmDvHG3xGZgu6OtsC30EhtiVBHqUqvym8wj0OIBxOd5qEITZfUvb/5zjfawigR6Fmobm6UzoB1AW0ZaDClTZE7Q9F9F+RU8+h05TdX3LoUzoQnphXg/ghZD1F5Det/PKNLir1r/6kHRmFBLotPi+XwqluwCkuu3XF0x0bTk+P5iIjQ8ZIuJnyvH5wQRcByDVQzUnMUq6TmpsTPXtPQEJdFoGadItYU+oSvir55VM61/aNj8Igq3QtMF4pKYNQRBs7Q3a7ydgGoBUzz88Ye8v1C0ZjO4cCXQKlXMaD2PGr0IPIgTl+HxG92P3f3unUsX0JACd5GidWAMA9AbtH+lvYjMI6ArdgnBL5ZxGeSRFChLoFBSr2wEYbzTO4BXr99CXBEGwwyPZurva3mSmW7FjScLMdGt3V9ub2x87MHDflnUT9UUMXhEySqmn1W2Z/AwukU85QtTUNx3OilbB/B/+WsTohLCHy9f4zaeCuBYAwNTTG7S/ZDp2pj9vzxLEXgNwkOEQ7UEd2R0sWJPmj+AcCXSI6obmu0C4wbSuWM3s6VwQ9qo6aonPuc2PSmbc3dfZfmM297SJXHIYTJ/eWgIKu00X92U7zADQHyx8MvTZ34S506e3Gu4hLSTQBmV7rT8bwGTTulbq9lztzRx67snjp3xyVq72LnYSaANFqApZfmNgSduLudq7r3PB8wi7MaTmsNmcJoE2IMYZ5jVeEsEIgXGF+IcR7F+UJNBJ+L7vMXCCaZ08zvkXhliH7nGS7/tyX8Ik5M1FEhu8SQd6cSS9vzODh3jYO7Xabzk5lzNosEcjN6NJVnmP24yJ+wP4MJczFCMJdBIUx6HGNVCMFbfleobU/+v0DoEEehdyyZGEVwzP1CZ5kH0yEugkeNj8hrBQMFTBz5gPEuhkiNN5XEResdbfz/cMhUgCnQzR9HyPkFIxzJgHEuid1NZfcwyAA/I9RxoOqPSbjs73EIVGPuXYiSY9I2T5UxCejWoWAABjOoC9ki0pVhUA3ol0ngIngd4JEVcY7/JC9Fjf0rbro5yn2m++D8C1yefhGQDuiXKeQieXHNvxfb+UAeMXfwj6qSjnSewatuf0sAd8ukgCvZ1vMOlMALsblofisdLIbyfgbdnyF4w0hsmUqwnx06Ocp9BJoLfjAcbrZwaeH3j4vq+jnAcAursXbUDILREYHHbN7xwJ9HYYqDCtEZCHy40RzObLDmI2zuwiCXRC7UWNkwEYb1WQz0ArCv3l2RMqZjdPiWyYAieBTojHaQbM/zy+LMPnr0Q5z/YSe39hWFYxD+dEOU8hk0B/x3wtyngqCIJ4hLPsIAiCOAjGOzEhbHbHSKC3YTLe55nDPzqLROglD2FmhKMUNAk0RupuAg40resSfjrKeZLOMOyFXUfvLzX4CAk0gLgXD/t0Y/WTj7V/EOE4SfUvm78W4PdM64ka3HkSaACKQz5/Jsr6vTcyFzILyefRgAS6QOtuE6nBU3E+0IVYd5tIDZ6a84EuxLrbRGrw1JwPdKHW3SZSg4dzOtCFXHebSA0ezulAF3LdbSI1eDinA40CrrtNpAYP53agC7zuNpEa3MzZQBdD3W0iNbiZs4EuhrrbRGpwM2cDXTx1t4nU4Mk4GejiqrtNpAZPxslAF1PdbSI1eHJOBrqY6m4TqcGTczLQxVZ3m0gNvivnAl2MdbeJ1OC7ci7QxVh3m0gNvivnAo0irLtNpAbflXuBLtK620Rq8B05FehirrtNpAbfkVOBLua620Rq8B05Fejir7tNpAbfxplA21F3m0gNvo0zgbah7jaRGvw7zgTahrrbRGrw7zgTaFvqbhOpwUc4EWib6m4TqcFHOBFom+puE6nBRzgRaFhUd5tIDT7CjUBbVnebSA3uQKBtrLtNpAZ3INA21t0mUoM7EGh7624Tt2twqwNtd91t4nYNbnWgba67TVyvwa0OtM11t4nrNbjVgba97jZxuQa3NtAu1N0mLtfg1gbahbrbxOUa3NpAw4G628TlGtzeQDtSd5u4WoNbGWiX6m4TV2vwknwPkAtxL15BnHwt6rq7tr5xqvaoBgBUnHt7ujpWRbFv/7L5a6v9pvcAOiLZeqIGfyeKWaJk5St0odTdVRc2X6+VehtMvwfT77VSb1dd2Hx9VPu7WINbF+hCqbtr6xunEuMuAN52f9sjxl219Y1To5jBxRrcukADiBOjFow7AKwEoLdbG1Kbh56NYghNqho7hnkbL7GWc0lqcA1gJRh3EKN6993XD0cxR5Ssu4ZOfBz3bOKvX9de1DiZh+lcZqqAQnmiGs45UrwHMxnXopihu3vRhuoLm7ugsYmIV1AJP9PzaMdnUeydL9YFemeJf4FLEn85p29p+0X5niFKNl5yCIdJoIVVJNDCKhJoYRUJtLCKBFpYRQItrCKBFlaRQAurSKCFVSTQwioSaGEVCbSwigRaWEUCLawigRZWkUALq0igc4S16UYK4WtibCTQuUK8NqM1MSbJf4vTYq2trerldz85EprLc7oRYSKYewCM22llM4hqwfgyp/sr2nTKUVNWt7a26tQH28OpQNc0NJ3LRIsAHJTvWSLyITFf1du5MOzGjVZxJtCVcxoPU1q9BaAs37NEbFArPW1gScf7+R4kCs5cQ3tMV8C9MANAWeJnd4IzgQZon3xPkD/u/OzOBFprrMz3DPni0s/uTKB5Y+yPAF7N8xj58GriZ3eCM28KAaCu7qoJelzsJmY6F0BpvufJsa1E/IzaPHRnVPfzE0IIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCJG5/wOg6gFlVj4vbgAAAABJRU5ErkJggg==`,M=`/assets/job-icon-fabric-C5l546gN.png`,N={class:`auth-row`},P={key:0,class:`auth-error`},F=[`value`],I={key:1,class:`auth-error`},L={key:2,class:`auth-error`},R=[`onClick`],z=[`src`,`alt`],ie={key:3,class:`auth-error`},B=[`disabled`],V={class:`terms`},H={key:4,class:`auth-error`},U=p(g({__name:`RegisterView`,setup(p){let g={garment_producer:A,atelier:j,fabric_wholesaler:M},U=C(),W=te(),G=f(``),K=f(``),q=f(``),J=f(`garment_producer`),Y=f(``),X=f(!0),Z=f({}),Q=f(``),ae=s(()=>q.value?y(q.value):``);function oe(e){J.value=e,$(`jobCategory`)}function $(e){Z.value=D(Z.value,e),O(Z.value)||(Q.value=``)}function se(e){q.value=b(e),$(`phone`)}async function ce(){Z.value={},Q.value=``;let e=b(q.value),t={};if(G.value.trim()||(t.firstName=`نام الزامی است.`),K.value.trim()||(t.lastName=`نام خانوادگی الزامی است.`),x(e)||(t.phone=`شماره موبایل معتبر نیست.`),J.value||(t.jobCategory=`دسته شغلی را انتخاب کنید.`),X.value||(t.terms=`پذیرش قوانین برای ثبت‌نام لازم است.`),O(t)){Z.value=t,Q.value=k;return}let n={firstName:G.value.trim(),lastName:K.value.trim(),jobCategory:J.value,referrerAgentCode:Y.value.trim()||void 0};re(n);let r=await W.requestOtp(e,{isRegister:!0,firstName:n.firstName,lastName:n.lastName,referrerAgentCode:n.referrerAgentCode});if(r.success)U.push({name:`otp`,query:{phone:e,mode:`register`}});else{let e=r.message??`خطا در ارسال کد تأیید.`;e.includes(`کد واسطه معتبر نیست`)?(Z.value={...Z.value,referrerAgentCode:`کد واسطه معتبر نیست`},Q.value=``):Q.value=e}}return(s,f)=>(i(),m(w,{"back-to":`/login`},{default:n(()=>[f[12]||=d(`h1`,{class:`auth-title`},`ثبت‌نام`,-1),f[13]||=d(`p`,{class:`auth-lead`},`برای ساخت حساب کاربری، اطلاعات زیر را وارد کنید`,-1),d(`form`,{class:`auth-form`,onSubmit:_(ce,[`prevent`])},[o(T,{message:Q.value},null,8,[`message`]),d(`div`,N,[d(`label`,{class:e([`auth-field`,{"is-invalid":Z.value.firstName}])},[o(S,{size:18,color:`#98a2b3`}),r(d(`input`,{"onUpdate:modelValue":f[0]||=e=>G.value=e,type:`text`,autocomplete:`given-name`,placeholder:`نام`,onInput:f[1]||=e=>$(`firstName`)},null,544),[[v,G.value]])],2),d(`label`,{class:e([`auth-field`,{"is-invalid":Z.value.lastName}])},[r(d(`input`,{"onUpdate:modelValue":f[2]||=e=>K.value=e,type:`text`,autocomplete:`family-name`,placeholder:`نام خانوادگی`,onInput:f[3]||=e=>$(`lastName`)},null,544),[[v,K.value]])],2)]),Z.value.firstName||Z.value.lastName?(i(),l(`p`,P,a(Z.value.firstName||Z.value.lastName),1)):c(``,!0),d(`label`,{class:e([`auth-field`,{"is-invalid":Z.value.phone}])},[o(E,{size:18,color:`#98a2b3`}),d(`input`,{value:ae.value,type:`tel`,inputmode:`numeric`,autocomplete:`tel`,maxlength:`11`,placeholder:`شماره موبایل`,onInput:f[4]||=e=>se(e.target.value)},null,40,F)],2),Z.value.phone?(i(),l(`p`,I,a(Z.value.phone),1)):c(``,!0),d(`label`,{class:e([`auth-field auth-field--stacked`,{"is-invalid":Z.value.referrerAgentCode}])},[f[8]||=d(`span`,{class:`auth-field__caption`},`کد واسطه (اختیاری)`,-1),r(d(`input`,{"onUpdate:modelValue":f[5]||=e=>Y.value=e,type:`text`,autocomplete:`off`,dir:`ltr`,class:`auth-field__input-ltr`,placeholder:`مثلاً W-1247`,onInput:f[6]||=e=>$(`referrerAgentCode`)},null,544),[[v,Y.value]])],2),f[10]||=d(`p`,{class:`auth-hint`},` اگر از طریق واسطه معرفی شده‌اید، کد واسطه را وارد کنید؛ در غیر این صورت این قسمت را خالی بگذارید. `,-1),Z.value.referrerAgentCode?(i(),l(`p`,L,a(Z.value.referrerAgentCode),1)):c(``,!0),f[11]||=d(`p`,{class:`job-label`},`دسته شغلی شما`,-1),d(`div`,{class:e([`job-grid`,{"is-invalid":Z.value.jobCategory}])},[(i(!0),l(u,null,t(h(ne),t=>(i(),l(`button`,{key:t.id,type:`button`,class:e([`job-card`,{"is-on":J.value===t.id}]),onClick:e=>oe(t.id)},[d(`img`,{class:`job-card__icon`,src:g[t.id],alt:t.label,draggable:`false`},null,8,z),d(`span`,null,a(t.label),1)],10,R))),128))],2),Z.value.jobCategory?(i(),l(`p`,ie,a(Z.value.jobCategory),1)):c(``,!0),d(`button`,{class:`auth-submit`,type:`submit`,disabled:h(W).loading},a(h(W).loading?`در حال ارسال…`:`ثبت‌نام`),9,B),d(`label`,V,[r(d(`input`,{"onUpdate:modelValue":f[7]||=e=>X.value=e,type:`checkbox`},null,512),[[ee,X.value]]),f[9]||=d(`span`,null,`با ثبت‌نام، قوانین و شرایط استفاده را می‌پذیرم.`,-1)]),Z.value.terms?(i(),l(`p`,H,a(Z.value.terms),1)):c(``,!0)],32)]),_:1}))}}),[[`__scopeId`,`data-v-28da5e36`]]);export{U as default}; \ No newline at end of file diff --git a/dist/assets/ReminderDetailView-bB7d06zX.js b/dist/assets/ReminderDetailView-8V-oDMXC.js similarity index 97% rename from dist/assets/ReminderDetailView-bB7d06zX.js rename to dist/assets/ReminderDetailView-8V-oDMXC.js index a5b37b1..c4d2f71 100644 --- a/dist/assets/ReminderDetailView-bB7d06zX.js +++ b/dist/assets/ReminderDetailView-8V-oDMXC.js @@ -1 +1 @@ -import{F as e,M as t,Nt as n,Pt as r,U as i,_ as a,c as o,d as s,f as c,i as l,k as u,l as d,nt as f,t as p,ut as m,v as h}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{C as g,S as _,c as v}from"./index-DYwnTikp.js";import{t as y}from"./PageHeader-C5c2Pzrn.js";import{t as b}from"./PageSkeleton-DYdjm4l9.js";import{t as x}from"./crm-CgnSby61.js";var S={key:0,class:`page reminder-detail`},C={class:`page__scroll detail-scroll`},ee={key:0,class:`form-error`},w={class:`layout`},T={class:`panel`},E={class:`field`},D={class:`field`},O={class:`customer-line`},k={class:`field`},A={class:`field`},j={class:`field`},M={class:`actions`},N=[`disabled`],P={class:`panel`},F={class:`panel chart-panel`},I={class:`bars`},L={class:`stats-grid`},R={key:1,class:`page empty`},z={key:2,class:`page empty`},B=p(h({__name:`ReminderDetailView`,setup(p){let h=_(),B=g(),V=x(),H=v(),U=o(()=>String(h.query.id??``)),W=f(null),G=f(null),K=f([]),q=f(!0),J=f(!1),Y=f(null);async function X(){if(!U.value){W.value=null,q.value=!1;return}q.value=!0,Y.value=null;try{let e=await V.loadReminderDetail(U.value);W.value=e.reminder,G.value=e.customer,K.value=e.history}catch(e){W.value=null,Y.value=e instanceof Error?e.message:`یادآور یافت نشد.`}finally{q.value=!1}}u(X),i(U,X);function Z(e){return e===`in_person`?`ملاقات حضوری`:e===`call`?`تماس تلفنی`:e===`message`?`پیام`:`یادداشت`}async function Q(){if(!(!W.value||W.value.completed)){J.value=!0,Y.value=null;try{await V.markReminderComplete(W.value.id),W.value={...W.value,completed:!0},B.push(`/reminders?filter=today`)}catch(e){Y.value=e instanceof Error?e.message:`تکمیل یادآور ناموفق بود.`}finally{J.value=!1}}}let te=o(()=>H.fullName||`واسطه`),$=o(()=>{let e=K.value;return{total:e.length,inPerson:e.filter(e=>e.type===`in_person`).length,call:e.filter(e=>e.type===`call`).length,other:e.filter(e=>e.type===`message`||e.type===`note`).length}}),ne=o(()=>{let e=Array.from({length:6},()=>({a:0,b:0,c:0}));K.value.forEach((t,n)=>{let r=e[n%6];r&&(t.type===`in_person`?r.a+=1:t.type===`call`?r.b+=1:r.c+=1)});let t=Math.max(1,...e.map(e=>e.a+e.b+e.c));return e.map(e=>({a:`${e.a/t*100}%`,b:`${e.b/t*100}%`,c:`${e.c/t*100}%`}))});return(i,o)=>W.value&&G.value?(t(),c(`div`,S,[a(y,{title:`جزئیات یادآور`,"show-back":``,centered:``,onBack:o[0]||=e=>m(B).back()}),d(`div`,C,[Y.value?(t(),c(`p`,ee,r(Y.value),1)):s(``,!0),d(`div`,w,[d(`section`,T,[o[8]||=d(`h2`,null,`جزئیات یادآور`,-1),d(`div`,E,[o[3]||=d(`span`,null,`عنوان`,-1),d(`strong`,null,r(W.value.title)+` — `+r(W.value.description),1)]),d(`div`,D,[o[4]||=d(`span`,null,`مشتری`,-1),d(`div`,O,[d(`div`,{class:`avatar`,style:n({background:G.value.avatarColor})},r(G.value.avatarLetter),5),d(`div`,null,[d(`strong`,null,r(G.value.name),1),d(`p`,null,r(G.value.contactName),1)])])]),d(`div`,k,[o[5]||=d(`span`,null,`فروشنده حامل حضوری`,-1),d(`strong`,null,r(te.value),1)]),d(`div`,A,[o[6]||=d(`span`,null,`تاریخ و زمان`,-1),d(`strong`,null,r(W.value.date)+` — `+r(W.value.time),1)]),d(`div`,j,[o[7]||=d(`span`,null,`یادداشت`,-1),d(`strong`,null,r(W.value.note||`—`),1)]),d(`div`,M,[d(`button`,{type:`button`,class:`btn-outline`,onClick:o[1]||=e=>m(B).back()},`ویرایش`),d(`button`,{type:`button`,class:`btn-primary`,disabled:J.value||W.value.completed,onClick:Q},r(W.value.completed?`تکمیل‌شده`:J.value?`...`:`تکمیل شد`),9,N)])]),d(`section`,P,[o[9]||=d(`h2`,null,`تاریخچه تعاملات`,-1),(t(!0),c(l,null,e(K.value,e=>(t(),c(`article`,{key:e.id,class:`history-row`},[d(`div`,null,[d(`strong`,null,r(Z(e.type)),1),d(`p`,null,r(e.description),1)]),d(`span`,null,r(e.date),1)]))),128)),d(`button`,{type:`button`,class:`see-all`,onClick:o[2]||=e=>m(B).push({path:`/customer`,query:{id:G.value.id,tab:`reports`}})},` مشاهده همه `)]),d(`section`,F,[o[14]||=d(`div`,{class:`chart-panel__head`},[d(`h2`,null,`نمودار فعالیت`),d(`span`,null,`تعاملات ثبت‌شده`)],-1),d(`div`,I,[(t(!0),c(l,null,e(ne.value,(e,r)=>(t(),c(`div`,{key:r,class:`bar`},[e.c===`0%`?s(``,!0):(t(),c(`span`,{key:0,class:`seg seg--c`,style:n({height:e.c})},null,4)),e.b===`0%`?s(``,!0):(t(),c(`span`,{key:1,class:`seg seg--b`,style:n({height:e.b})},null,4)),e.a===`0%`?s(``,!0):(t(),c(`span`,{key:2,class:`seg seg--a`,style:n({height:e.a})},null,4))]))),128))]),d(`div`,L,[d(`div`,null,[o[10]||=d(`span`,null,`کل تعاملات`,-1),d(`strong`,null,r($.value.total.toLocaleString(`fa-IR`))+` مورد`,1)]),d(`div`,null,[o[11]||=d(`span`,null,`ملاقات حضوری`,-1),d(`strong`,null,r($.value.inPerson.toLocaleString(`fa-IR`))+` مورد`,1)]),d(`div`,null,[o[12]||=d(`span`,null,`تماس تلفنی`,-1),d(`strong`,null,r($.value.call.toLocaleString(`fa-IR`))+` مورد`,1)]),d(`div`,null,[o[13]||=d(`span`,null,`یادداشت و پیام`,-1),d(`strong`,null,r($.value.other.toLocaleString(`fa-IR`))+` مورد`,1)])])])])])])):q.value?(t(),c(`div`,R,[a(b,{variant:`detail`})])):(t(),c(`div`,z,[d(`p`,null,r(Y.value||`یادآور یافت نشد.`),1)]))}}),[[`__scopeId`,`data-v-59c58cf4`]]);export{B as default}; \ No newline at end of file +import{F as e,M as t,Nt as n,Pt as r,U as i,_ as a,c as o,d as s,f as c,i as l,k as u,l as d,nt as f,t as p,ut as m,v as h}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{C as g,S as _,c as v}from"./index-CE4Fw0WE.js";import{t as y}from"./PageHeader-BDPrFkve.js";import{t as b}from"./PageSkeleton-DYdjm4l9.js";import{t as x}from"./crm-CgnSby61.js";var S={key:0,class:`page reminder-detail`},C={class:`page__scroll detail-scroll`},ee={key:0,class:`form-error`},w={class:`layout`},T={class:`panel`},E={class:`field`},D={class:`field`},O={class:`customer-line`},k={class:`field`},A={class:`field`},j={class:`field`},M={class:`actions`},N=[`disabled`],P={class:`panel`},F={class:`panel chart-panel`},I={class:`bars`},L={class:`stats-grid`},R={key:1,class:`page empty`},z={key:2,class:`page empty`},B=p(h({__name:`ReminderDetailView`,setup(p){let h=_(),B=g(),V=x(),H=v(),U=o(()=>String(h.query.id??``)),W=f(null),G=f(null),K=f([]),q=f(!0),J=f(!1),Y=f(null);async function X(){if(!U.value){W.value=null,q.value=!1;return}q.value=!0,Y.value=null;try{let e=await V.loadReminderDetail(U.value);W.value=e.reminder,G.value=e.customer,K.value=e.history}catch(e){W.value=null,Y.value=e instanceof Error?e.message:`یادآور یافت نشد.`}finally{q.value=!1}}u(X),i(U,X);function Z(e){return e===`in_person`?`ملاقات حضوری`:e===`call`?`تماس تلفنی`:e===`message`?`پیام`:`یادداشت`}async function Q(){if(!(!W.value||W.value.completed)){J.value=!0,Y.value=null;try{await V.markReminderComplete(W.value.id),W.value={...W.value,completed:!0},B.push(`/reminders?filter=today`)}catch(e){Y.value=e instanceof Error?e.message:`تکمیل یادآور ناموفق بود.`}finally{J.value=!1}}}let te=o(()=>H.fullName||`واسطه`),$=o(()=>{let e=K.value;return{total:e.length,inPerson:e.filter(e=>e.type===`in_person`).length,call:e.filter(e=>e.type===`call`).length,other:e.filter(e=>e.type===`message`||e.type===`note`).length}}),ne=o(()=>{let e=Array.from({length:6},()=>({a:0,b:0,c:0}));K.value.forEach((t,n)=>{let r=e[n%6];r&&(t.type===`in_person`?r.a+=1:t.type===`call`?r.b+=1:r.c+=1)});let t=Math.max(1,...e.map(e=>e.a+e.b+e.c));return e.map(e=>({a:`${e.a/t*100}%`,b:`${e.b/t*100}%`,c:`${e.c/t*100}%`}))});return(i,o)=>W.value&&G.value?(t(),c(`div`,S,[a(y,{title:`جزئیات یادآور`,"show-back":``,centered:``,onBack:o[0]||=e=>m(B).back()}),d(`div`,C,[Y.value?(t(),c(`p`,ee,r(Y.value),1)):s(``,!0),d(`div`,w,[d(`section`,T,[o[8]||=d(`h2`,null,`جزئیات یادآور`,-1),d(`div`,E,[o[3]||=d(`span`,null,`عنوان`,-1),d(`strong`,null,r(W.value.title)+` — `+r(W.value.description),1)]),d(`div`,D,[o[4]||=d(`span`,null,`مشتری`,-1),d(`div`,O,[d(`div`,{class:`avatar`,style:n({background:G.value.avatarColor})},r(G.value.avatarLetter),5),d(`div`,null,[d(`strong`,null,r(G.value.name),1),d(`p`,null,r(G.value.contactName),1)])])]),d(`div`,k,[o[5]||=d(`span`,null,`فروشنده حامل حضوری`,-1),d(`strong`,null,r(te.value),1)]),d(`div`,A,[o[6]||=d(`span`,null,`تاریخ و زمان`,-1),d(`strong`,null,r(W.value.date)+` — `+r(W.value.time),1)]),d(`div`,j,[o[7]||=d(`span`,null,`یادداشت`,-1),d(`strong`,null,r(W.value.note||`—`),1)]),d(`div`,M,[d(`button`,{type:`button`,class:`btn-outline`,onClick:o[1]||=e=>m(B).back()},`ویرایش`),d(`button`,{type:`button`,class:`btn-primary`,disabled:J.value||W.value.completed,onClick:Q},r(W.value.completed?`تکمیل‌شده`:J.value?`...`:`تکمیل شد`),9,N)])]),d(`section`,P,[o[9]||=d(`h2`,null,`تاریخچه تعاملات`,-1),(t(!0),c(l,null,e(K.value,e=>(t(),c(`article`,{key:e.id,class:`history-row`},[d(`div`,null,[d(`strong`,null,r(Z(e.type)),1),d(`p`,null,r(e.description),1)]),d(`span`,null,r(e.date),1)]))),128)),d(`button`,{type:`button`,class:`see-all`,onClick:o[2]||=e=>m(B).push({path:`/customer`,query:{id:G.value.id,tab:`reports`}})},` مشاهده همه `)]),d(`section`,F,[o[14]||=d(`div`,{class:`chart-panel__head`},[d(`h2`,null,`نمودار فعالیت`),d(`span`,null,`تعاملات ثبت‌شده`)],-1),d(`div`,I,[(t(!0),c(l,null,e(ne.value,(e,r)=>(t(),c(`div`,{key:r,class:`bar`},[e.c===`0%`?s(``,!0):(t(),c(`span`,{key:0,class:`seg seg--c`,style:n({height:e.c})},null,4)),e.b===`0%`?s(``,!0):(t(),c(`span`,{key:1,class:`seg seg--b`,style:n({height:e.b})},null,4)),e.a===`0%`?s(``,!0):(t(),c(`span`,{key:2,class:`seg seg--a`,style:n({height:e.a})},null,4))]))),128))]),d(`div`,L,[d(`div`,null,[o[10]||=d(`span`,null,`کل تعاملات`,-1),d(`strong`,null,r($.value.total.toLocaleString(`fa-IR`))+` مورد`,1)]),d(`div`,null,[o[11]||=d(`span`,null,`ملاقات حضوری`,-1),d(`strong`,null,r($.value.inPerson.toLocaleString(`fa-IR`))+` مورد`,1)]),d(`div`,null,[o[12]||=d(`span`,null,`تماس تلفنی`,-1),d(`strong`,null,r($.value.call.toLocaleString(`fa-IR`))+` مورد`,1)]),d(`div`,null,[o[13]||=d(`span`,null,`یادداشت و پیام`,-1),d(`strong`,null,r($.value.other.toLocaleString(`fa-IR`))+` مورد`,1)])])])])])])):q.value?(t(),c(`div`,R,[a(b,{variant:`detail`})])):(t(),c(`div`,z,[d(`p`,null,r(Y.value||`یادآور یافت نشد.`),1)]))}}),[[`__scopeId`,`data-v-59c58cf4`]]);export{B as default}; \ No newline at end of file diff --git a/dist/assets/RemindersView-CmQQhLnf.js b/dist/assets/RemindersView-pG6M0HAE.js similarity index 98% rename from dist/assets/RemindersView-CmQQhLnf.js rename to dist/assets/RemindersView-pG6M0HAE.js index d0d335f..ba82c3d 100644 --- a/dist/assets/RemindersView-CmQQhLnf.js +++ b/dist/assets/RemindersView-pG6M0HAE.js @@ -1 +1 @@ -import{At as e,F as t,K as n,M as r,Nt as i,Pt as a,U as ee,_ as o,c as s,d as c,f as l,g as u,i as d,k as te,l as f,nt as p,t as ne,u as re,ut as m,v as h}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{l as ie,o as g}from"./BasicIcon-DPmc0iaK.js";import{o as _}from"./format-C72AoJ2H.js";import{t as v}from"./IconPlus-Dk2FJATn.js";import{C as ae,S as oe,s as y}from"./index-DYwnTikp.js";import{t as se}from"./IconChevronBack-BsHmfODG.js";import{t as b}from"./IconMoreVertical-DpXrbzlD.js";import{t as ce}from"./PageSkeleton-DYdjm4l9.js";import{i as le,t as ue}from"./crm-CgnSby61.js";import{t as de}from"./useGoBack-DnRfwA4b.js";import{t as fe}from"./PersianDateInput-BcTTynHd.js";import{t as pe}from"./TimeInput-D6PzFPdF.js";import{t as me}from"./AppSelect-CbWqXW3b.js";var he={class:`page reminders-page`},ge={class:`top mobile-only`},_e={class:`desktop-page__head desktop-only reminders-desk-head`},ve={class:`reminders-desk-head__actions`},ye={class:`page__scroll page__scroll--with-nav reminders-scroll`},be={class:`tabs`,role:`tablist`,"aria-label":`فیلتر یادآورها`},xe=[`aria-selected`,`onClick`],x={class:`tab__text`},S={key:0,class:`tab__badge`},C={key:1,class:`error-text`},w={key:2,class:`create-panel`},T={key:0,class:`create-error`},E={class:`create-row`},D={class:`create-actions`},O=[`disabled`],k={class:`summary`},A={class:`summary__top`},j={class:`summary__label`},M={class:`summary__calendar`,"aria-hidden":`true`},Se={class:`summary__count`},Ce={key:0,class:`empty-state`},we=[`onClick`],Te=[`onClick`],Ee={class:`reminder-card__header`},De={class:`reminder-card__time`},Oe={class:`reminder-card__title-row`},ke={class:`reminder-card__body`},Ae={class:`reminder-card__customer`},je={class:`reminder-card__customer-text`},Me={class:`reminder-card__name`},Ne={class:`reminder-card__contact`},Pe={key:0,class:`reminder-card__desc`},Fe={class:`completed-section`},Ie={class:`completed-bar__count`},Le={key:0,class:`completed-list`},N=[`onClick`],Re={class:`reminder-card__header`},ze={class:`reminder-card__time`},Be={class:`reminder-card__title-row`},Ve={class:`reminder-card__body`},He={class:`reminder-card__customer`},Ue={class:`reminder-card__customer-text`},We={class:`reminder-card__name`},Ge={class:`reminder-card__contact`},Ke={key:0,class:`reminder-card__desc`},qe={key:0,class:`completed-empty`},P=ne(h({__name:`RemindersView`,setup(ne){let h=oe(),P=ae(),{goBack:F}=de(`/`),I=ue(),L=s(()=>String(h.query.filter??`today`)),R=p([]),z=p([]),B=p(!0),V=p(null),H=p(!1),U=p(!1),W=p(0),G=p(!1),K=p({customerId:``,title:``,date:``,time:`10:00`,note:``}),Je=s(()=>z.value.map(e=>({value:e.id,label:e.name||e.contactName||e.id}))),Ye=[{id:`all`,label:`همه`},{id:`today`,label:`امروز`},{id:`week`,label:`هفته آینده`},{id:`past`,label:`گذشته`}],q=s(()=>R.value.filter(e=>!e.completed)),J=s(()=>{let e=new Date().toISOString().slice(0,10);return R.value.filter(t=>t.completed&&t.date===e)}),Xe=s(()=>q.value.length),Ze=s(()=>L.value===`today`?`پیگیری‌های امروز`:L.value===`week`?`پیگیری‌های هفته آینده`:L.value===`past`?`پیگیری‌های گذشته`:`پیگیری‌های باز`),Qe=s(()=>new Date().getDate().toLocaleString(`fa-IR`));async function Y(){try{let e=await le(`past`);W.value=e.length}catch{W.value=0}}async function X(){B.value=!0,V.value=null;try{R.value=await I.loadReminders(L.value)}catch(e){V.value=e instanceof Error?e.message:`بارگذاری یادآورها ناموفق بود.`,R.value=[]}finally{B.value=!1}}te(async()=>{await Promise.all([X(),Y()])}),ee(L,X);function $e(e){P.replace({path:`/reminders`,query:{filter:e}})}async function et(e){try{await I.markReminderComplete(e),await X(),await Y()}catch(e){V.value=e instanceof Error?e.message:`تکمیل یادآور ناموفق بود.`}}function Z(e){return e===`in_person`?`ملاقات حضوری`:e===`call`?`تماس تلفنی`:e===`message`?`پیام`:`یادداشت`}function Q(e){return e===`in_person`?`tag--green`:e===`call`?`tag--blue`:`tag--purple`}async function $(){H.value=!0,G.value=!1,V.value=null;try{if(z.value=await I.loadCustomers(),!K.value.customerId&&z.value[0]&&(K.value.customerId=z.value[0].id),!K.value.date){let e=new Date;K.value.date=`${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,`0`)}-${String(e.getDate()).padStart(2,`0`)}`}}catch(e){V.value=e instanceof Error?e.message:`بارگذاری مشتریان ناموفق بود.`}}async function tt(){if(!K.value.customerId||!K.value.title.trim()||!K.value.date||!K.value.time){V.value=`مشتری، عنوان، تاریخ و ساعت الزامی است.`;return}U.value=!0,V.value=null;try{await I.createReminder({customerId:K.value.customerId,title:K.value.title.trim(),date:K.value.date,time:K.value.time,note:K.value.note.trim()||void 0,description:K.value.note.trim()||void 0}),H.value=!1,K.value.title=``,K.value.note=``,await X(),await Y()}catch(e){V.value=e instanceof Error?e.message:`ثبت یادآور ناموفق بود.`}finally{U.value=!1}}function nt(){G.value=!G.value}return(ee,s)=>(r(),l(`div`,he,[f(`header`,ge,[f(`button`,{type:`button`,class:`icon-btn`,"aria-label":`بازگشت`,onClick:s[0]||=(...e)=>m(F)&&m(F)(...e)},[o(se,{size:20})]),s[9]||=f(`h1`,null,`یادآورها`,-1),f(`button`,{type:`button`,class:`icon-btn`,"aria-label":`اعلان‌ها`,onClick:s[1]||=e=>m(P).push(`/profile/notifications`)},[o(y,{size:20})])]),f(`header`,_e,[s[11]||=f(`div`,null,[f(`h1`,{class:`desktop-page__title`},`یادآورها`),f(`p`,{class:`desktop-page__subtitle`},`پیگیری و مدیریت یادآورهای مشتریان`)],-1),f(`div`,ve,[f(`button`,{type:`button`,class:`desk-icon-btn`,"aria-label":`اعلان‌ها`,onClick:s[2]||=e=>m(P).push(`/profile/notifications`)},[o(y,{size:20})]),f(`button`,{type:`button`,class:`desk-new-btn`,onClick:$},[o(v,{size:18,color:`#fff`}),s[10]||=u(` یادآور جدید `,-1)])])]),f(`div`,ye,[f(`div`,be,[(r(),l(d,null,t(Ye,t=>f(`button`,{key:t.id,type:`button`,role:`tab`,class:e([`tab`,{"tab--active":L.value===t.id}]),"aria-selected":L.value===t.id,onClick:e=>$e(t.id)},[f(`span`,x,[u(a(t.label)+` `,1),t.id===`past`&&W.value?(r(),l(`span`,S,a(W.value.toLocaleString(`fa-IR`)),1)):c(``,!0)])],10,xe)),64))]),B.value?(r(),re(ce,{key:0,variant:`list`})):V.value&&!H.value?(r(),l(`p`,C,a(V.value),1)):c(``,!0),H.value?(r(),l(`section`,w,[s[14]||=f(`h3`,null,`یادآور جدید`,-1),V.value?(r(),l(`p`,T,a(V.value),1)):c(``,!0),o(me,{modelValue:K.value.customerId,"onUpdate:modelValue":s[3]||=e=>K.value.customerId=e,label:`مشتری`,placeholder:`انتخاب مشتری`,"aria-label":`مشتری`,searchable:``,options:Je.value},null,8,[`modelValue`,`options`]),f(`label`,null,[s[12]||=u(` عنوان `,-1),n(f(`input`,{"onUpdate:modelValue":s[4]||=e=>K.value.title=e,type:`text`,placeholder:`مثلاً پیگیری نمونه`},null,512),[[g,K.value.title]])]),f(`div`,E,[o(fe,{modelValue:K.value.date,"onUpdate:modelValue":s[5]||=e=>K.value.date=e,label:`تاریخ`,class:`create-date`},null,8,[`modelValue`]),o(pe,{modelValue:K.value.time,"onUpdate:modelValue":s[6]||=e=>K.value.time=e,label:`ساعت`,placeholder:`مثلاً ۱۰:۳۰`},null,8,[`modelValue`])]),f(`label`,null,[s[13]||=u(` یادداشت `,-1),n(f(`textarea`,{"onUpdate:modelValue":s[7]||=e=>K.value.note=e,rows:`2`,placeholder:`اختیاری`},null,512),[[g,K.value.note]])]),f(`div`,D,[f(`button`,{type:`button`,class:`btn-cancel`,onClick:s[8]||=e=>H.value=!1},`انصراف`),f(`button`,{type:`button`,class:`btn-save`,disabled:U.value,onClick:tt},a(U.value?`در حال ثبت...`:`ثبت یادآور`),9,O)])])):!B.value&&!V.value?(r(),l(d,{key:3},[f(`section`,k,[f(`div`,A,[f(`span`,j,a(Ze.value),1),f(`div`,M,[s[15]||=f(`svg`,{viewBox:`0 0 24 24`,fill:`none`},[f(`path`,{d:`M8 2.5V5.5M16 2.5V5.5M4.5 9.5H19.5M19 8.5V17.5C19 20 17.5 21.5 14.5 21.5H9.5C6.5 21.5 5 20 5 17.5V8.5C5 6 6.5 4.5 9.5 4.5H14.5C17.5 4.5 19 6 19 8.5Z`,stroke:`currentColor`,"stroke-width":`1.5`,"stroke-linecap":`round`,"stroke-linejoin":`round`})],-1),f(`span`,null,a(Qe.value),1)])]),f(`div`,Se,[f(`strong`,null,a(m(_)(Xe.value)),1),s[16]||=f(`span`,null,`مورد`,-1)]),s[17]||=f(`p`,{class:`summary__sub`},`یادآورهای شما برای پیگیری مشتریان`,-1)]),q.value.length?c(``,!0):(r(),l(`div`,Ce,`یادآوری برای این بازه ثبت نشده است.`)),(r(!0),l(d,null,t(q.value,t=>(r(),l(`div`,{key:t.id,class:`reminder-row`},[f(`button`,{type:`button`,class:`reminder-row__check`,"aria-label":`تکمیل یادآور`,onClick:ie(e=>et(t.id),[`stop`])},null,8,we),f(`article`,{class:`reminder-card`,onClick:e=>m(P).push({path:`/reminder`,query:{id:t.id}})},[f(`div`,Ee,[f(`span`,De,a(t.time),1),f(`div`,Oe,[f(`strong`,null,a(t.title),1),o(b,{size:18,class:`reminder-card__menu`})])]),f(`div`,ke,[f(`span`,{class:e([`tag`,Q(t.interactionType)])},a(Z(t.interactionType)),3),f(`div`,Ae,[f(`div`,je,[f(`p`,Me,a(t.customerName),1),f(`p`,Ne,a(t.contactName),1)]),f(`div`,{class:`reminder-card__avatar`,style:i({background:t.avatarColor})},a(t.avatarLetter),5)])]),t.description?(r(),l(`p`,Pe,a(t.description),1)):c(``,!0)],8,Te)]))),128)),f(`section`,Fe,[f(`button`,{type:`button`,class:`completed-bar`,onClick:nt},[(r(),l(`svg`,{class:e([`completed-bar__chevron`,{"is-open":G.value}]),viewBox:`0 0 12 12`,"aria-hidden":`true`},[...s[18]||=[f(`path`,{d:`M2.5 4.5 6 8l3.5-3.5`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.4`,"stroke-linecap":`round`},null,-1)]],2)),s[19]||=f(`span`,{class:`completed-bar__label`},`یادآورهای تکمیل شده امروز`,-1),f(`span`,Ie,a(m(_)(J.value.length)),1)]),G.value?(r(),l(`div`,Le,[(r(!0),l(d,null,t(J.value,t=>(r(),l(`div`,{key:t.id,class:`reminder-row reminder-row--done`},[s[20]||=f(`span`,{class:`reminder-row__check reminder-row__check--done`,"aria-hidden":`true`},null,-1),f(`article`,{class:`reminder-card reminder-card--done`,onClick:e=>m(P).push({path:`/reminder`,query:{id:t.id}})},[f(`div`,Re,[f(`span`,ze,a(t.time),1),f(`div`,Be,[f(`strong`,null,a(t.title),1),o(b,{size:18,class:`reminder-card__menu`})])]),f(`div`,Ve,[f(`span`,{class:e([`tag`,Q(t.interactionType)])},a(Z(t.interactionType)),3),f(`div`,He,[f(`div`,Ue,[f(`p`,We,a(t.customerName),1),f(`p`,Ge,a(t.contactName),1)]),f(`div`,{class:`reminder-card__avatar`,style:i({background:t.avatarColor})},a(t.avatarLetter),5)])]),t.description?(r(),l(`p`,Ke,a(t.description),1)):c(``,!0)],8,N)]))),128)),J.value.length?c(``,!0):(r(),l(`p`,qe,`یادآور تکمیل‌شده‌ای برای امروز نیست.`))])):c(``,!0)])],64)):c(``,!0),f(`button`,{type:`button`,class:`new-btn mobile-only`,onClick:$},[o(v,{size:20,color:`#fff`}),s[21]||=u(` یادآور جدید `,-1)])])]))}}),[[`__scopeId`,`data-v-a6c01aa1`]]);export{P as default}; \ No newline at end of file +import{At as e,F as t,K as n,M as r,Nt as i,Pt as a,U as ee,_ as o,c as s,d as c,f as l,g as u,i as d,k as te,l as f,nt as p,t as ne,u as re,ut as m,v as h}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{l as ie,o as g}from"./BasicIcon-DPmc0iaK.js";import{o as _}from"./format-C72AoJ2H.js";import{t as v}from"./IconPlus-Dk2FJATn.js";import{C as ae,S as oe,s as y}from"./index-CE4Fw0WE.js";import{t as se}from"./IconChevronBack-BsHmfODG.js";import{t as b}from"./IconMoreVertical-DpXrbzlD.js";import{t as ce}from"./PageSkeleton-DYdjm4l9.js";import{i as le,t as ue}from"./crm-CgnSby61.js";import{t as de}from"./useGoBack-BrwZYRKb.js";import{t as fe}from"./PersianDateInput-BcTTynHd.js";import{t as pe}from"./TimeInput-D6PzFPdF.js";import{t as me}from"./AppSelect-CbWqXW3b.js";var he={class:`page reminders-page`},ge={class:`top mobile-only`},_e={class:`desktop-page__head desktop-only reminders-desk-head`},ve={class:`reminders-desk-head__actions`},ye={class:`page__scroll page__scroll--with-nav reminders-scroll`},be={class:`tabs`,role:`tablist`,"aria-label":`فیلتر یادآورها`},xe=[`aria-selected`,`onClick`],x={class:`tab__text`},S={key:0,class:`tab__badge`},C={key:1,class:`error-text`},w={key:2,class:`create-panel`},T={key:0,class:`create-error`},E={class:`create-row`},D={class:`create-actions`},O=[`disabled`],k={class:`summary`},A={class:`summary__top`},j={class:`summary__label`},M={class:`summary__calendar`,"aria-hidden":`true`},Se={class:`summary__count`},Ce={key:0,class:`empty-state`},we=[`onClick`],Te=[`onClick`],Ee={class:`reminder-card__header`},De={class:`reminder-card__time`},Oe={class:`reminder-card__title-row`},ke={class:`reminder-card__body`},Ae={class:`reminder-card__customer`},je={class:`reminder-card__customer-text`},Me={class:`reminder-card__name`},Ne={class:`reminder-card__contact`},Pe={key:0,class:`reminder-card__desc`},Fe={class:`completed-section`},Ie={class:`completed-bar__count`},Le={key:0,class:`completed-list`},N=[`onClick`],Re={class:`reminder-card__header`},ze={class:`reminder-card__time`},Be={class:`reminder-card__title-row`},Ve={class:`reminder-card__body`},He={class:`reminder-card__customer`},Ue={class:`reminder-card__customer-text`},We={class:`reminder-card__name`},Ge={class:`reminder-card__contact`},Ke={key:0,class:`reminder-card__desc`},qe={key:0,class:`completed-empty`},P=ne(h({__name:`RemindersView`,setup(ne){let h=oe(),P=ae(),{goBack:F}=de(`/`),I=ue(),L=s(()=>String(h.query.filter??`today`)),R=p([]),z=p([]),B=p(!0),V=p(null),H=p(!1),U=p(!1),W=p(0),G=p(!1),K=p({customerId:``,title:``,date:``,time:`10:00`,note:``}),Je=s(()=>z.value.map(e=>({value:e.id,label:e.name||e.contactName||e.id}))),Ye=[{id:`all`,label:`همه`},{id:`today`,label:`امروز`},{id:`week`,label:`هفته آینده`},{id:`past`,label:`گذشته`}],q=s(()=>R.value.filter(e=>!e.completed)),J=s(()=>{let e=new Date().toISOString().slice(0,10);return R.value.filter(t=>t.completed&&t.date===e)}),Xe=s(()=>q.value.length),Ze=s(()=>L.value===`today`?`پیگیری‌های امروز`:L.value===`week`?`پیگیری‌های هفته آینده`:L.value===`past`?`پیگیری‌های گذشته`:`پیگیری‌های باز`),Qe=s(()=>new Date().getDate().toLocaleString(`fa-IR`));async function Y(){try{let e=await le(`past`);W.value=e.length}catch{W.value=0}}async function X(){B.value=!0,V.value=null;try{R.value=await I.loadReminders(L.value)}catch(e){V.value=e instanceof Error?e.message:`بارگذاری یادآورها ناموفق بود.`,R.value=[]}finally{B.value=!1}}te(async()=>{await Promise.all([X(),Y()])}),ee(L,X);function $e(e){P.replace({path:`/reminders`,query:{filter:e}})}async function et(e){try{await I.markReminderComplete(e),await X(),await Y()}catch(e){V.value=e instanceof Error?e.message:`تکمیل یادآور ناموفق بود.`}}function Z(e){return e===`in_person`?`ملاقات حضوری`:e===`call`?`تماس تلفنی`:e===`message`?`پیام`:`یادداشت`}function Q(e){return e===`in_person`?`tag--green`:e===`call`?`tag--blue`:`tag--purple`}async function $(){H.value=!0,G.value=!1,V.value=null;try{if(z.value=await I.loadCustomers(),!K.value.customerId&&z.value[0]&&(K.value.customerId=z.value[0].id),!K.value.date){let e=new Date;K.value.date=`${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,`0`)}-${String(e.getDate()).padStart(2,`0`)}`}}catch(e){V.value=e instanceof Error?e.message:`بارگذاری مشتریان ناموفق بود.`}}async function tt(){if(!K.value.customerId||!K.value.title.trim()||!K.value.date||!K.value.time){V.value=`مشتری، عنوان، تاریخ و ساعت الزامی است.`;return}U.value=!0,V.value=null;try{await I.createReminder({customerId:K.value.customerId,title:K.value.title.trim(),date:K.value.date,time:K.value.time,note:K.value.note.trim()||void 0,description:K.value.note.trim()||void 0}),H.value=!1,K.value.title=``,K.value.note=``,await X(),await Y()}catch(e){V.value=e instanceof Error?e.message:`ثبت یادآور ناموفق بود.`}finally{U.value=!1}}function nt(){G.value=!G.value}return(ee,s)=>(r(),l(`div`,he,[f(`header`,ge,[f(`button`,{type:`button`,class:`icon-btn`,"aria-label":`بازگشت`,onClick:s[0]||=(...e)=>m(F)&&m(F)(...e)},[o(se,{size:20})]),s[9]||=f(`h1`,null,`یادآورها`,-1),f(`button`,{type:`button`,class:`icon-btn`,"aria-label":`اعلان‌ها`,onClick:s[1]||=e=>m(P).push(`/profile/notifications`)},[o(y,{size:20})])]),f(`header`,_e,[s[11]||=f(`div`,null,[f(`h1`,{class:`desktop-page__title`},`یادآورها`),f(`p`,{class:`desktop-page__subtitle`},`پیگیری و مدیریت یادآورهای مشتریان`)],-1),f(`div`,ve,[f(`button`,{type:`button`,class:`desk-icon-btn`,"aria-label":`اعلان‌ها`,onClick:s[2]||=e=>m(P).push(`/profile/notifications`)},[o(y,{size:20})]),f(`button`,{type:`button`,class:`desk-new-btn`,onClick:$},[o(v,{size:18,color:`#fff`}),s[10]||=u(` یادآور جدید `,-1)])])]),f(`div`,ye,[f(`div`,be,[(r(),l(d,null,t(Ye,t=>f(`button`,{key:t.id,type:`button`,role:`tab`,class:e([`tab`,{"tab--active":L.value===t.id}]),"aria-selected":L.value===t.id,onClick:e=>$e(t.id)},[f(`span`,x,[u(a(t.label)+` `,1),t.id===`past`&&W.value?(r(),l(`span`,S,a(W.value.toLocaleString(`fa-IR`)),1)):c(``,!0)])],10,xe)),64))]),B.value?(r(),re(ce,{key:0,variant:`list`})):V.value&&!H.value?(r(),l(`p`,C,a(V.value),1)):c(``,!0),H.value?(r(),l(`section`,w,[s[14]||=f(`h3`,null,`یادآور جدید`,-1),V.value?(r(),l(`p`,T,a(V.value),1)):c(``,!0),o(me,{modelValue:K.value.customerId,"onUpdate:modelValue":s[3]||=e=>K.value.customerId=e,label:`مشتری`,placeholder:`انتخاب مشتری`,"aria-label":`مشتری`,searchable:``,options:Je.value},null,8,[`modelValue`,`options`]),f(`label`,null,[s[12]||=u(` عنوان `,-1),n(f(`input`,{"onUpdate:modelValue":s[4]||=e=>K.value.title=e,type:`text`,placeholder:`مثلاً پیگیری نمونه`},null,512),[[g,K.value.title]])]),f(`div`,E,[o(fe,{modelValue:K.value.date,"onUpdate:modelValue":s[5]||=e=>K.value.date=e,label:`تاریخ`,class:`create-date`},null,8,[`modelValue`]),o(pe,{modelValue:K.value.time,"onUpdate:modelValue":s[6]||=e=>K.value.time=e,label:`ساعت`,placeholder:`مثلاً ۱۰:۳۰`},null,8,[`modelValue`])]),f(`label`,null,[s[13]||=u(` یادداشت `,-1),n(f(`textarea`,{"onUpdate:modelValue":s[7]||=e=>K.value.note=e,rows:`2`,placeholder:`اختیاری`},null,512),[[g,K.value.note]])]),f(`div`,D,[f(`button`,{type:`button`,class:`btn-cancel`,onClick:s[8]||=e=>H.value=!1},`انصراف`),f(`button`,{type:`button`,class:`btn-save`,disabled:U.value,onClick:tt},a(U.value?`در حال ثبت...`:`ثبت یادآور`),9,O)])])):!B.value&&!V.value?(r(),l(d,{key:3},[f(`section`,k,[f(`div`,A,[f(`span`,j,a(Ze.value),1),f(`div`,M,[s[15]||=f(`svg`,{viewBox:`0 0 24 24`,fill:`none`},[f(`path`,{d:`M8 2.5V5.5M16 2.5V5.5M4.5 9.5H19.5M19 8.5V17.5C19 20 17.5 21.5 14.5 21.5H9.5C6.5 21.5 5 20 5 17.5V8.5C5 6 6.5 4.5 9.5 4.5H14.5C17.5 4.5 19 6 19 8.5Z`,stroke:`currentColor`,"stroke-width":`1.5`,"stroke-linecap":`round`,"stroke-linejoin":`round`})],-1),f(`span`,null,a(Qe.value),1)])]),f(`div`,Se,[f(`strong`,null,a(m(_)(Xe.value)),1),s[16]||=f(`span`,null,`مورد`,-1)]),s[17]||=f(`p`,{class:`summary__sub`},`یادآورهای شما برای پیگیری مشتریان`,-1)]),q.value.length?c(``,!0):(r(),l(`div`,Ce,`یادآوری برای این بازه ثبت نشده است.`)),(r(!0),l(d,null,t(q.value,t=>(r(),l(`div`,{key:t.id,class:`reminder-row`},[f(`button`,{type:`button`,class:`reminder-row__check`,"aria-label":`تکمیل یادآور`,onClick:ie(e=>et(t.id),[`stop`])},null,8,we),f(`article`,{class:`reminder-card`,onClick:e=>m(P).push({path:`/reminder`,query:{id:t.id}})},[f(`div`,Ee,[f(`span`,De,a(t.time),1),f(`div`,Oe,[f(`strong`,null,a(t.title),1),o(b,{size:18,class:`reminder-card__menu`})])]),f(`div`,ke,[f(`span`,{class:e([`tag`,Q(t.interactionType)])},a(Z(t.interactionType)),3),f(`div`,Ae,[f(`div`,je,[f(`p`,Me,a(t.customerName),1),f(`p`,Ne,a(t.contactName),1)]),f(`div`,{class:`reminder-card__avatar`,style:i({background:t.avatarColor})},a(t.avatarLetter),5)])]),t.description?(r(),l(`p`,Pe,a(t.description),1)):c(``,!0)],8,Te)]))),128)),f(`section`,Fe,[f(`button`,{type:`button`,class:`completed-bar`,onClick:nt},[(r(),l(`svg`,{class:e([`completed-bar__chevron`,{"is-open":G.value}]),viewBox:`0 0 12 12`,"aria-hidden":`true`},[...s[18]||=[f(`path`,{d:`M2.5 4.5 6 8l3.5-3.5`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.4`,"stroke-linecap":`round`},null,-1)]],2)),s[19]||=f(`span`,{class:`completed-bar__label`},`یادآورهای تکمیل شده امروز`,-1),f(`span`,Ie,a(m(_)(J.value.length)),1)]),G.value?(r(),l(`div`,Le,[(r(!0),l(d,null,t(J.value,t=>(r(),l(`div`,{key:t.id,class:`reminder-row reminder-row--done`},[s[20]||=f(`span`,{class:`reminder-row__check reminder-row__check--done`,"aria-hidden":`true`},null,-1),f(`article`,{class:`reminder-card reminder-card--done`,onClick:e=>m(P).push({path:`/reminder`,query:{id:t.id}})},[f(`div`,Re,[f(`span`,ze,a(t.time),1),f(`div`,Be,[f(`strong`,null,a(t.title),1),o(b,{size:18,class:`reminder-card__menu`})])]),f(`div`,Ve,[f(`span`,{class:e([`tag`,Q(t.interactionType)])},a(Z(t.interactionType)),3),f(`div`,He,[f(`div`,Ue,[f(`p`,We,a(t.customerName),1),f(`p`,Ge,a(t.contactName),1)]),f(`div`,{class:`reminder-card__avatar`,style:i({background:t.avatarColor})},a(t.avatarLetter),5)])]),t.description?(r(),l(`p`,Ke,a(t.description),1)):c(``,!0)],8,N)]))),128)),J.value.length?c(``,!0):(r(),l(`p`,qe,`یادآور تکمیل‌شده‌ای برای امروز نیست.`))])):c(``,!0)])],64)):c(``,!0),f(`button`,{type:`button`,class:`new-btn mobile-only`,onClick:$},[o(v,{size:20,color:`#fff`}),s[21]||=u(` یادآور جدید `,-1)])])]))}}),[[`__scopeId`,`data-v-a6c01aa1`]]);export{P as default}; \ No newline at end of file diff --git a/dist/assets/SettlementTypeView-BX-jH-Nn.js b/dist/assets/SettlementTypeView-C3nP1V6W.js similarity index 96% rename from dist/assets/SettlementTypeView-BX-jH-Nn.js rename to dist/assets/SettlementTypeView-C3nP1V6W.js index ab7eb22..684a60a 100644 --- a/dist/assets/SettlementTypeView-BX-jH-Nn.js +++ b/dist/assets/SettlementTypeView-C3nP1V6W.js @@ -1 +1 @@ -import{G as e,M as t,Pt as n,U as r,_ as i,c as a,d as o,f as s,g as c,i as l,k as ee,l as u,nt as d,t as te,u as f,ut as p,v as m}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{t as h}from"./BasicIcon-DPmc0iaK.js";import{n as ne}from"./format-C72AoJ2H.js";import{t as g}from"./IconCheckBook-IuV8Li8k.js";import{C as re,b as ie,f as ae,r as _}from"./index-DYwnTikp.js";import{t as v}from"./FormErrorBanner-Ud1D04xf.js";import{t as oe}from"./CheckoutStepper-DptjKnv0.js";import{t as se}from"./PageHeader-C5c2Pzrn.js";import{n as ce}from"./orderInvoice-DPYzRyAs.js";import{t as le}from"./useRequirePricedOrder-Bivuv5Mx.js";var y=m({__name:`IconCashSettlement`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(n,r)=>(t(),f(h,{icon:`vuesax-linear:card`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),b={class:`page settlement-page mobile-only`},x={class:`page__scroll page__scroll--with-nav settlement-page__scroll`},S={key:0,class:`settlement-waiting`},C={class:`settlement-invoice`},w={class:`settlement-invoice__value`},T={key:0,class:`settlement-invoice__meta`},E={class:`settlement-mobile-options`},D=[`disabled`],O={class:`settlement-card__icon settlement-card__icon--cash`},k=[`disabled`],A={class:`settlement-card__icon settlement-card__icon--check`},j=[`disabled`],M={class:`settlement-card__icon settlement-card__icon--check settlement-card__icon--hybrid`},N={class:`desktop-page settlement-desktop desktop-only`},P={class:`desktop-page__head`},F={class:`desktop-page__subtitle`},ue={key:0,class:`settlement-invoice settlement-invoice--desktop`,role:`status`},I={class:`settlement-invoice--desktop__main`},L={class:`settlement-invoice__value`},R={key:0,class:`settlement-invoice__meta`},z={key:1,class:`settlement-waiting settlement-waiting--desktop`},B={key:2,class:`desktop-settlement-grid`},V=[`disabled`],H={class:`settlement-card__icon settlement-card__icon--cash`},U=[`disabled`],de={class:`settlement-card__icon settlement-card__icon--check`},fe=[`disabled`],pe={class:`settlement-card__icon settlement-card__icon--check settlement-card__icon--hybrid`},W=te(m({__name:`SettlementTypeView`,setup(te){let f=re(),m=ae(),{load:h,defaultSettlementCash:W,defaultSettlementCheck:G,defaultSettlementCashCheck:K}=ie();ee(()=>{h()});let{orderId:q,order:J,invoiceReady:Y}=le(),X=d(!1),Z=d(``);r(q,async e=>{e&&!m.getOrderById(e)&&await m.fetchOrder(e)},{immediate:!0});let Q=a(()=>J.value?.finalAmount?ne(J.value.finalAmount):`—`);async function $(e){if(X.value||!ce(J.value)){Z.value=`تا قبل از قیمت‌گذاری مدیریت، امکان انتخاب روش تسویه وجود ندارد.`;return}X.value=!0,Z.value=``;try{await m.chooseSettlement(q.value,e),e===`cash`||e===`cash_check`?f.replace(`/orders/${q.value}/cash`):(m.startCheckDraft(q.value),f.replace(`/orders/${q.value}/check-mode`))}catch(e){Z.value=e instanceof Error?e.message:`ثبت روش تسویه ناموفق بود.`}finally{X.value=!1}}return(r,a)=>(t(),s(l,null,[u(`div`,b,[i(se,{title:`انتخاب نوع تسویه`,subtitle:`پس از صدور فاکتور، نوع تسویه را انتخاب کنید`,"show-back":``,centered:``,onBack:a[0]||=e=>p(f).push(`/orders/${p(q)}`)}),u(`div`,x,[i(v,{message:Z.value},null,8,[`message`]),p(Y)?(t(),s(l,{key:1},[u(`div`,C,[a[12]||=u(`span`,{class:`settlement-invoice__label`},`مبلغ فاکتور`,-1),u(`strong`,w,n(Q.value),1),p(J)?(t(),s(`span`,T,`سفارش `+n(p(J).orderNumber),1)):o(``,!0)]),u(`div`,E,[p(W)?(t(),s(`button`,{key:0,type:`button`,class:`settlement-card`,disabled:X.value,onClick:a[2]||=e=>$(`cash`)},[u(`span`,O,[i(y,{size:36})]),a[13]||=u(`h3`,null,`تسویه نقدی`,-1),a[14]||=u(`p`,null,`پرداخت از طریق واریز به حساب شرکت`,-1)],8,D)):o(``,!0),p(G)?(t(),s(`button`,{key:1,type:`button`,class:`settlement-card`,disabled:X.value,onClick:a[3]||=e=>$(`check`)},[u(`span`,A,[i(g,{size:36})]),a[15]||=u(`h3`,null,`تسویه چکی`,-1),a[16]||=u(`p`,null,`پرداخت بر اساس مبلغ فاکتور با ثبت چک`,-1)],8,k)):o(``,!0),p(K)?(t(),s(`button`,{key:2,type:`button`,class:`settlement-card`,disabled:X.value,onClick:a[4]||=e=>$(`cash_check`)},[u(`span`,M,[i(y,{size:28}),i(g,{size:28})]),a[17]||=u(`h3`,null,`تسویه نقدی-چکی`,-1),a[18]||=u(`p`,null,`ابتدا واریز نقدی، سپس ثبت چک برای مابقی تسویه`,-1)],8,j)):o(``,!0)])],64)):(t(),s(`div`,S,[a[10]||=u(`h3`,{class:`settlement-waiting__title`},`در انتظار قیمت‌گذاری`,-1),a[11]||=u(`p`,{class:`settlement-waiting__text`},` پیش‌سفارش ثبت شده است. پس از تعیین قیمت توسط مدیریت و صدور فاکتور، از این صفحه روش تسویه (نقد یا چک) را انتخاب کنید. `,-1),i(_,{block:``,variant:`outline`,onClick:a[1]||=e=>p(f).push(`/orders/${p(q)}`)},{default:e(()=>[...a[9]||=[c(` بازگشت به جزئیات سفارش `,-1)]]),_:1})]))])]),u(`div`,N,[i(oe,{"current-step":4}),u(`header`,P,[a[19]||=u(`h1`,{class:`desktop-page__title`},`انتخاب نوع تسویه`,-1),u(`p`,F,[p(Y)?(t(),s(l,{key:0},[c(` پس از صدور فاکتور، روش تسویه را انتخاب کنید. `)],64)):(t(),s(l,{key:1},[c(`پس از قیمت‌گذاری مدیریت فعال می‌شود`)],64))])]),p(Y)?(t(),s(`div`,ue,[u(`div`,I,[a[20]||=u(`span`,{class:`settlement-invoice__label`},`مبلغ فاکتور`,-1),u(`strong`,L,n(Q.value),1)]),p(J)?(t(),s(`span`,R,`سفارش `+n(p(J).orderNumber),1)):o(``,!0)])):o(``,!0),i(v,{message:Z.value},null,8,[`message`]),p(Y)?(t(),s(`div`,B,[p(W)?(t(),s(`button`,{key:0,type:`button`,class:`settlement-card settlement-card--desktop`,disabled:X.value,onClick:a[6]||=e=>$(`cash`)},[u(`span`,H,[i(y,{size:40})]),a[24]||=u(`h3`,null,`تسویه نقدی`,-1),a[25]||=u(`p`,null,`پرداخت از طریق واریز به حساب شرکت`,-1)],8,V)):o(``,!0),p(G)?(t(),s(`button`,{key:1,type:`button`,class:`settlement-card settlement-card--desktop`,disabled:X.value,onClick:a[7]||=e=>$(`check`)},[u(`span`,de,[i(g,{size:40})]),a[26]||=u(`h3`,null,`تسویه چکی`,-1),a[27]||=u(`p`,null,`پرداخت بر اساس مبلغ فاکتور با ثبت چک`,-1)],8,U)):o(``,!0),p(K)?(t(),s(`button`,{key:2,type:`button`,class:`settlement-card settlement-card--desktop`,disabled:X.value,onClick:a[8]||=e=>$(`cash_check`)},[u(`span`,pe,[i(y,{size:32}),i(g,{size:32})]),a[28]||=u(`h3`,null,`تسویه نقدی-چکی`,-1),a[29]||=u(`p`,null,`ابتدا واریز نقدی، سپس ثبت چک برای مابقی تسویه`,-1)],8,fe)):o(``,!0)])):(t(),s(`div`,z,[a[22]||=u(`h3`,{class:`settlement-waiting__title`},`در انتظار قیمت‌گذاری`,-1),a[23]||=u(`p`,{class:`settlement-waiting__text`},` پیش‌سفارش ثبت شده است. پس از صدور فاکتور می‌توانید روش تسویه را انتخاب کنید. `,-1),i(_,{variant:`outline`,onClick:a[5]||=e=>p(f).push(`/orders/${p(q)}`)},{default:e(()=>[...a[21]||=[c(` بازگشت به جزئیات سفارش `,-1)]]),_:1})]))])],64))}}),[[`__scopeId`,`data-v-7148524a`]]);export{W as default}; \ No newline at end of file +import{G as e,M as t,Pt as n,U as r,_ as i,c as a,d as o,f as s,g as c,i as l,k as ee,l as u,nt as d,t as te,u as f,ut as p,v as m}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{t as h}from"./BasicIcon-DPmc0iaK.js";import{n as ne}from"./format-C72AoJ2H.js";import{t as g}from"./IconCheckBook-IuV8Li8k.js";import{C as re,b as ie,f as ae,r as _}from"./index-CE4Fw0WE.js";import{t as v}from"./FormErrorBanner-Ud1D04xf.js";import{t as oe}from"./CheckoutStepper-DptjKnv0.js";import{t as se}from"./PageHeader-BDPrFkve.js";import{n as ce}from"./orderInvoice-DPYzRyAs.js";import{t as le}from"./useRequirePricedOrder-B78MxGXz.js";var y=m({__name:`IconCashSettlement`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(n,r)=>(t(),f(h,{icon:`vuesax-linear:card`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),b={class:`page settlement-page mobile-only`},x={class:`page__scroll page__scroll--with-nav settlement-page__scroll`},S={key:0,class:`settlement-waiting`},C={class:`settlement-invoice`},w={class:`settlement-invoice__value`},T={key:0,class:`settlement-invoice__meta`},E={class:`settlement-mobile-options`},D=[`disabled`],O={class:`settlement-card__icon settlement-card__icon--cash`},k=[`disabled`],A={class:`settlement-card__icon settlement-card__icon--check`},j=[`disabled`],M={class:`settlement-card__icon settlement-card__icon--check settlement-card__icon--hybrid`},N={class:`desktop-page settlement-desktop desktop-only`},P={class:`desktop-page__head`},F={class:`desktop-page__subtitle`},ue={key:0,class:`settlement-invoice settlement-invoice--desktop`,role:`status`},I={class:`settlement-invoice--desktop__main`},L={class:`settlement-invoice__value`},R={key:0,class:`settlement-invoice__meta`},z={key:1,class:`settlement-waiting settlement-waiting--desktop`},B={key:2,class:`desktop-settlement-grid`},V=[`disabled`],H={class:`settlement-card__icon settlement-card__icon--cash`},U=[`disabled`],de={class:`settlement-card__icon settlement-card__icon--check`},fe=[`disabled`],pe={class:`settlement-card__icon settlement-card__icon--check settlement-card__icon--hybrid`},W=te(m({__name:`SettlementTypeView`,setup(te){let f=re(),m=ae(),{load:h,defaultSettlementCash:W,defaultSettlementCheck:G,defaultSettlementCashCheck:K}=ie();ee(()=>{h()});let{orderId:q,order:J,invoiceReady:Y}=le(),X=d(!1),Z=d(``);r(q,async e=>{e&&!m.getOrderById(e)&&await m.fetchOrder(e)},{immediate:!0});let Q=a(()=>J.value?.finalAmount?ne(J.value.finalAmount):`—`);async function $(e){if(X.value||!ce(J.value)){Z.value=`تا قبل از قیمت‌گذاری مدیریت، امکان انتخاب روش تسویه وجود ندارد.`;return}X.value=!0,Z.value=``;try{await m.chooseSettlement(q.value,e),e===`cash`||e===`cash_check`?f.replace(`/orders/${q.value}/cash`):(m.startCheckDraft(q.value),f.replace(`/orders/${q.value}/check-mode`))}catch(e){Z.value=e instanceof Error?e.message:`ثبت روش تسویه ناموفق بود.`}finally{X.value=!1}}return(r,a)=>(t(),s(l,null,[u(`div`,b,[i(se,{title:`انتخاب نوع تسویه`,subtitle:`پس از صدور فاکتور، نوع تسویه را انتخاب کنید`,"show-back":``,centered:``,onBack:a[0]||=e=>p(f).push(`/orders/${p(q)}`)}),u(`div`,x,[i(v,{message:Z.value},null,8,[`message`]),p(Y)?(t(),s(l,{key:1},[u(`div`,C,[a[12]||=u(`span`,{class:`settlement-invoice__label`},`مبلغ فاکتور`,-1),u(`strong`,w,n(Q.value),1),p(J)?(t(),s(`span`,T,`سفارش `+n(p(J).orderNumber),1)):o(``,!0)]),u(`div`,E,[p(W)?(t(),s(`button`,{key:0,type:`button`,class:`settlement-card`,disabled:X.value,onClick:a[2]||=e=>$(`cash`)},[u(`span`,O,[i(y,{size:36})]),a[13]||=u(`h3`,null,`تسویه نقدی`,-1),a[14]||=u(`p`,null,`پرداخت از طریق واریز به حساب شرکت`,-1)],8,D)):o(``,!0),p(G)?(t(),s(`button`,{key:1,type:`button`,class:`settlement-card`,disabled:X.value,onClick:a[3]||=e=>$(`check`)},[u(`span`,A,[i(g,{size:36})]),a[15]||=u(`h3`,null,`تسویه چکی`,-1),a[16]||=u(`p`,null,`پرداخت بر اساس مبلغ فاکتور با ثبت چک`,-1)],8,k)):o(``,!0),p(K)?(t(),s(`button`,{key:2,type:`button`,class:`settlement-card`,disabled:X.value,onClick:a[4]||=e=>$(`cash_check`)},[u(`span`,M,[i(y,{size:28}),i(g,{size:28})]),a[17]||=u(`h3`,null,`تسویه نقدی-چکی`,-1),a[18]||=u(`p`,null,`ابتدا واریز نقدی، سپس ثبت چک برای مابقی تسویه`,-1)],8,j)):o(``,!0)])],64)):(t(),s(`div`,S,[a[10]||=u(`h3`,{class:`settlement-waiting__title`},`در انتظار قیمت‌گذاری`,-1),a[11]||=u(`p`,{class:`settlement-waiting__text`},` پیش‌سفارش ثبت شده است. پس از تعیین قیمت توسط مدیریت و صدور فاکتور، از این صفحه روش تسویه (نقد یا چک) را انتخاب کنید. `,-1),i(_,{block:``,variant:`outline`,onClick:a[1]||=e=>p(f).push(`/orders/${p(q)}`)},{default:e(()=>[...a[9]||=[c(` بازگشت به جزئیات سفارش `,-1)]]),_:1})]))])]),u(`div`,N,[i(oe,{"current-step":4}),u(`header`,P,[a[19]||=u(`h1`,{class:`desktop-page__title`},`انتخاب نوع تسویه`,-1),u(`p`,F,[p(Y)?(t(),s(l,{key:0},[c(` پس از صدور فاکتور، روش تسویه را انتخاب کنید. `)],64)):(t(),s(l,{key:1},[c(`پس از قیمت‌گذاری مدیریت فعال می‌شود`)],64))])]),p(Y)?(t(),s(`div`,ue,[u(`div`,I,[a[20]||=u(`span`,{class:`settlement-invoice__label`},`مبلغ فاکتور`,-1),u(`strong`,L,n(Q.value),1)]),p(J)?(t(),s(`span`,R,`سفارش `+n(p(J).orderNumber),1)):o(``,!0)])):o(``,!0),i(v,{message:Z.value},null,8,[`message`]),p(Y)?(t(),s(`div`,B,[p(W)?(t(),s(`button`,{key:0,type:`button`,class:`settlement-card settlement-card--desktop`,disabled:X.value,onClick:a[6]||=e=>$(`cash`)},[u(`span`,H,[i(y,{size:40})]),a[24]||=u(`h3`,null,`تسویه نقدی`,-1),a[25]||=u(`p`,null,`پرداخت از طریق واریز به حساب شرکت`,-1)],8,V)):o(``,!0),p(G)?(t(),s(`button`,{key:1,type:`button`,class:`settlement-card settlement-card--desktop`,disabled:X.value,onClick:a[7]||=e=>$(`check`)},[u(`span`,de,[i(g,{size:40})]),a[26]||=u(`h3`,null,`تسویه چکی`,-1),a[27]||=u(`p`,null,`پرداخت بر اساس مبلغ فاکتور با ثبت چک`,-1)],8,U)):o(``,!0),p(K)?(t(),s(`button`,{key:2,type:`button`,class:`settlement-card settlement-card--desktop`,disabled:X.value,onClick:a[8]||=e=>$(`cash_check`)},[u(`span`,pe,[i(y,{size:32}),i(g,{size:32})]),a[28]||=u(`h3`,null,`تسویه نقدی-چکی`,-1),a[29]||=u(`p`,null,`ابتدا واریز نقدی، سپس ثبت چک برای مابقی تسویه`,-1)],8,fe)):o(``,!0)])):(t(),s(`div`,z,[a[22]||=u(`h3`,{class:`settlement-waiting__title`},`در انتظار قیمت‌گذاری`,-1),a[23]||=u(`p`,{class:`settlement-waiting__text`},` پیش‌سفارش ثبت شده است. پس از صدور فاکتور می‌توانید روش تسویه را انتخاب کنید. `,-1),i(_,{variant:`outline`,onClick:a[5]||=e=>p(f).push(`/orders/${p(q)}`)},{default:e(()=>[...a[21]||=[c(` بازگشت به جزئیات سفارش `,-1)]]),_:1})]))])],64))}}),[[`__scopeId`,`data-v-7148524a`]]);export{W as default}; \ No newline at end of file diff --git a/dist/assets/WelcomeView-C4--jdQ8.js b/dist/assets/WelcomeView-dH4aiNDy.js similarity index 97% rename from dist/assets/WelcomeView-C4--jdQ8.js rename to dist/assets/WelcomeView-dH4aiNDy.js index 7f9d14a..e307eaf 100644 --- a/dist/assets/WelcomeView-C4--jdQ8.js +++ b/dist/assets/WelcomeView-dH4aiNDy.js @@ -1 +1 @@ -import{At as e,D as t,F as n,M as r,Pt as i,f as a,i as o,k as s,l as c,nt as l,t as u,ut as d,v as f}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{C as p}from"./index-DYwnTikp.js";import{t as m}from"./nademitex-auth-logo-CQhPwje_.js";var h=`/assets/login-fabric-CSZOoxR9.jpg`,g=`/assets/fabric-slide-2-BWGo09Th.jpg`,_=`/assets/fabric-slide-3-CyMWKjFB.jpg`,v=`/assets/fabric-slide-4-UycLZic-.jpg`,y=[`src`],b={class:`welcome__brand`},x=[`src`],S={class:`welcome__copy`},C={class:`welcome__dots`,role:`tablist`,"aria-label":`اسلایدها`},w=[`aria-label`,`onClick`],T=u(f({__name:`WelcomeView`,setup(u){let f=p(),T=[{image:h,title:`پارچه، برای ایده‌های بزرگ`,lead:`انتخاب بهتر، تأمین سریع‌تر، همراه حرفه‌ای شما در مسیر تولید پوشاک`},{image:g,title:`پارچه، برای ایده‌های بزرگ`,lead:`از کت و شلوار تا مانتو؛ بافتی که طرح شما را کامل می‌کند`},{image:_,title:`پارچه، برای ایده‌های بزرگ`,lead:`کتان، پنبه و فاستونی؛ موجودی عمده برای مزون و تولیدکننده`},{image:v,title:`پارچه، برای ایده‌های بزرگ`,lead:`کالیته را ببینید، رنگ را لمس کنید، بعد سفارش دهید`}],E=l(0),D=0,O=0;function k(e){E.value=(e+T.length)%T.length}function A(e){O=e.changedTouches[0]?.clientX??0}function j(e){let t=(e.changedTouches[0]?.clientX??0)-O;Math.abs(t)<40||k(E.value+(t<0?1:-1))}return s(()=>{D=window.setInterval(()=>k(E.value+1),4500)}),t(()=>window.clearInterval(D)),(t,s)=>(r(),a(`div`,{class:`welcome`,onTouchstartPassive:A,onTouchendPassive:j},[(r(),a(o,null,n(T,(t,n)=>c(`img`,{key:t.lead,class:e([`welcome__photo`,{"is-on":n===E.value}]),src:t.image,alt:``},null,10,y)),64)),s[1]||=c(`div`,{class:`welcome__shade`},null,-1),c(`header`,b,[c(`img`,{class:`welcome__logo`,src:d(m),alt:`Nademi Tex`,draggable:`false`},null,8,x)]),c(`div`,S,[c(`h1`,null,i(T[E.value]?.title),1),c(`p`,null,i(T[E.value]?.lead),1),c(`div`,C,[(r(),a(o,null,n(T,(t,n)=>c(`button`,{key:t.lead,type:`button`,class:e({"is-on":n===E.value}),"aria-label":`اسلاید ${n+1}`,onClick:e=>k(n)},null,10,w)),64))])]),c(`button`,{type:`button`,class:`welcome__cta`,onClick:s[0]||=e=>d(f).push(`/login`)},`ورود / ثبت‌نام`)],32))}}),[[`__scopeId`,`data-v-34e03d54`]]);export{T as default}; \ No newline at end of file +import{At as e,D as t,F as n,M as r,Pt as i,f as a,i as o,k as s,l as c,nt as l,t as u,ut as d,v as f}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{C as p}from"./index-CE4Fw0WE.js";import{t as m}from"./nademitex-auth-logo-CQhPwje_.js";var h=`/assets/login-fabric-CSZOoxR9.jpg`,g=`/assets/fabric-slide-2-BWGo09Th.jpg`,_=`/assets/fabric-slide-3-CyMWKjFB.jpg`,v=`/assets/fabric-slide-4-UycLZic-.jpg`,y=[`src`],b={class:`welcome__brand`},x=[`src`],S={class:`welcome__copy`},C={class:`welcome__dots`,role:`tablist`,"aria-label":`اسلایدها`},w=[`aria-label`,`onClick`],T=u(f({__name:`WelcomeView`,setup(u){let f=p(),T=[{image:h,title:`پارچه، برای ایده‌های بزرگ`,lead:`انتخاب بهتر، تأمین سریع‌تر، همراه حرفه‌ای شما در مسیر تولید پوشاک`},{image:g,title:`پارچه، برای ایده‌های بزرگ`,lead:`از کت و شلوار تا مانتو؛ بافتی که طرح شما را کامل می‌کند`},{image:_,title:`پارچه، برای ایده‌های بزرگ`,lead:`کتان، پنبه و فاستونی؛ موجودی عمده برای مزون و تولیدکننده`},{image:v,title:`پارچه، برای ایده‌های بزرگ`,lead:`کالیته را ببینید، رنگ را لمس کنید، بعد سفارش دهید`}],E=l(0),D=0,O=0;function k(e){E.value=(e+T.length)%T.length}function A(e){O=e.changedTouches[0]?.clientX??0}function j(e){let t=(e.changedTouches[0]?.clientX??0)-O;Math.abs(t)<40||k(E.value+(t<0?1:-1))}return s(()=>{D=window.setInterval(()=>k(E.value+1),4500)}),t(()=>window.clearInterval(D)),(t,s)=>(r(),a(`div`,{class:`welcome`,onTouchstartPassive:A,onTouchendPassive:j},[(r(),a(o,null,n(T,(t,n)=>c(`img`,{key:t.lead,class:e([`welcome__photo`,{"is-on":n===E.value}]),src:t.image,alt:``},null,10,y)),64)),s[1]||=c(`div`,{class:`welcome__shade`},null,-1),c(`header`,b,[c(`img`,{class:`welcome__logo`,src:d(m),alt:`Nademi Tex`,draggable:`false`},null,8,x)]),c(`div`,S,[c(`h1`,null,i(T[E.value]?.title),1),c(`p`,null,i(T[E.value]?.lead),1),c(`div`,C,[(r(),a(o,null,n(T,(t,n)=>c(`button`,{key:t.lead,type:`button`,class:e({"is-on":n===E.value}),"aria-label":`اسلاید ${n+1}`,onClick:e=>k(n)},null,10,w)),64))])]),c(`button`,{type:`button`,class:`welcome__cta`,onClick:s[0]||=e=>d(f).push(`/login`)},`ورود / ثبت‌نام`)],32))}}),[[`__scopeId`,`data-v-34e03d54`]]);export{T as default}; \ No newline at end of file diff --git a/dist/assets/index-7tUw5-eF.css b/dist/assets/index-7tUw5-eF.css deleted file mode 100644 index 05aa550..0000000 --- a/dist/assets/index-7tUw5-eF.css +++ /dev/null @@ -1 +0,0 @@ -.bottom-nav[data-v-759f4bb7]{min-height:var(--nav-height);background:var(--color-surface);border-top:1px solid var(--color-border);z-index:100;padding:6px 4px calc(6px + env(safe-area-inset-bottom,0));flex-shrink:0;justify-content:space-around;align-items:flex-end;display:flex}@media (width>=768px){.bottom-nav[data-v-759f4bb7]{display:none}}.nav-item[data-v-759f4bb7]{cursor:pointer;color:var(--color-text-muted);background:0 0;border:none;border-radius:10px;flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:4px;min-width:0;margin:0;padding:4px 2px 2px;transition:color .15s;display:flex;position:relative}.nav-item[data-v-759f4bb7]:focus,.nav-item[data-v-759f4bb7]:focus-visible{outline:none}.nav-item.active[data-v-759f4bb7]{color:var(--color-primary);background:0 0}.nav-item.active .nav-label[data-v-759f4bb7]{font-weight:700}.nav-item--fab[data-v-759f4bb7]{color:var(--color-text-muted);justify-content:flex-end}.nav-item--fab.active[data-v-759f4bb7]{color:var(--color-primary)}.nav-icon[data-v-759f4bb7]{flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;display:flex;position:relative;overflow:visible}.nav-icon--fab[data-v-759f4bb7]{background:var(--color-primary);color:#fff;width:52px;height:52px;box-shadow:0 6px 16px rgba(var(--color-primary-rgb), .35);border-radius:999px;margin-top:-28px}.nav-label[data-v-759f4bb7]{white-space:nowrap;font-size:.6875rem;font-weight:500;line-height:1.2}.nav-label--fab[data-v-759f4bb7]{font-size:.625rem}.nav-badge[data-v-759f4bb7]{top:-2px;background:var(--color-danger);color:#fff;pointer-events:none;border-radius:999px;justify-content:center;align-items:center;min-width:16px;height:16px;padding:0 4px;font-size:.625rem;font-weight:700;line-height:1;display:flex;position:absolute;inset-inline-end:-2px}.brand-logo[data-v-b6600860]{object-fit:contain;-webkit-user-select:none;user-select:none;flex-shrink:0;width:auto;display:block}.desktop-sidebar[data-v-69fbaed9]{width:var(--sidebar-width);background:var(--color-surface);border-inline-start:1px solid var(--color-border);flex-direction:column;flex-shrink:0;height:100%;padding:0;display:none;overflow-y:auto}@media (width>=768px){.desktop-sidebar[data-v-69fbaed9]{display:flex}}.desktop-sidebar__brand[data-v-69fbaed9]{height:var(--header-height);min-height:var(--header-height);max-height:var(--header-height);box-sizing:border-box;border-bottom:none;flex-shrink:0;justify-content:flex-start;align-items:center;gap:10px;padding:0 20px;display:flex}@media (width>=1200px){.desktop-sidebar__brand[data-v-69fbaed9]{padding:0 28px}}.desktop-sidebar__logo-mark[data-v-69fbaed9]{flex-shrink:0}.desktop-sidebar__title[data-v-69fbaed9]{color:var(--color-primary);font-size:1rem;font-weight:700;display:block}.desktop-sidebar__nav[data-v-69fbaed9]{flex-direction:column;flex:1;gap:4px;padding:12px 12px 0;display:flex}@media (width>=1200px){.desktop-sidebar__nav[data-v-69fbaed9]{padding:16px 16px 0}}.desktop-sidebar__item[data-v-69fbaed9]{border-radius:var(--radius-md);cursor:pointer;width:100%;color:var(--color-text-secondary);text-align:start;background:0 0;border:none;justify-content:flex-start;align-items:center;gap:12px;padding:11px 12px;transition:background .15s,color .15s;display:flex;position:relative}@media (width>=1200px){.desktop-sidebar__item[data-v-69fbaed9]{padding:11px 14px}}.desktop-sidebar__item[data-v-69fbaed9]:hover{background:var(--color-elevated);color:var(--color-text)}.desktop-sidebar__item[data-v-69fbaed9]:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.desktop-sidebar__item.active[data-v-69fbaed9]{background:var(--color-primary-soft);color:var(--color-primary);font-weight:600}.desktop-sidebar__item.active .desktop-sidebar__icon[data-v-69fbaed9]{color:var(--color-primary)}.desktop-sidebar__icon[data-v-69fbaed9]{width:22px;height:22px;color:inherit;flex-shrink:0;justify-content:center;align-items:center;display:flex}.desktop-sidebar__label[data-v-69fbaed9]{font-size:.875rem;font-weight:inherit;white-space:nowrap;display:block}.desktop-sidebar__badge[data-v-69fbaed9]{background:var(--color-danger);color:var(--color-surface);border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;min-width:20px;height:20px;margin-inline-start:auto;padding:0 4px;font-size:.6875rem;font-weight:700;display:flex}.desktop-sidebar__support[data-v-69fbaed9]{background:var(--color-primary-soft);border-radius:var(--radius-lg);flex-direction:column;gap:8px;margin:auto 12px 20px;padding:14px;display:flex}@media (width>=1200px){.desktop-sidebar__support[data-v-69fbaed9]{margin:auto 16px 24px;padding:16px}}.desktop-sidebar__support-icon[data-v-69fbaed9]{background:var(--color-primary);width:36px;height:36px;color:var(--color-surface);border-radius:50%;justify-content:center;align-items:center;display:flex}.desktop-sidebar__support-title[data-v-69fbaed9]{color:var(--color-text);font-size:.875rem;font-weight:700}.desktop-sidebar__support-text[data-v-69fbaed9]{color:var(--color-text-muted);margin:0;font-size:.6875rem;line-height:1.5}.desktop-sidebar__support-btn[data-v-69fbaed9]{border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-primary);text-align:center;margin-top:4px;padding:10px 12px;font-size:.8125rem;font-weight:600;text-decoration:none;transition:opacity .15s;display:block}.desktop-sidebar__support-btn[data-v-69fbaed9]:hover{opacity:.9}.desktop-sidebar__support-btn--disabled[data-v-69fbaed9]{opacity:.55;pointer-events:none;cursor:default}.desktop-sidebar__support-phone[data-v-69fbaed9]{text-align:center;color:var(--color-primary);direction:ltr;margin:0;font-size:.8125rem;font-weight:600}.auth-theme-toggle[data-v-3a58cb84]{color:inherit;cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;transition:color .15s;display:inline-flex}.auth-theme-toggle--floating[data-v-3a58cb84]{top:calc(12px + env(safe-area-inset-top,0px));z-index:100;width:40px;height:40px;color:var(--color-text);box-shadow:none;background:0 0;position:fixed;inset-inline-end:16px}.auth-theme-toggle--inline[data-v-3a58cb84]{width:40px;height:40px;color:inherit;flex-shrink:0;position:relative}.auth-theme-toggle[data-v-3a58cb84]:hover{color:var(--color-primary)}.user-avatar[data-v-5c562bf0]{color:inherit;background:#ffffff2e;border-radius:999px;flex-shrink:0;place-items:center;font-weight:700;display:grid;overflow:hidden}.user-avatar__img[data-v-5c562bf0]{object-fit:cover;width:100%;height:100%;display:block}.desktop-header[data-v-5f322d95]{height:var(--header-height);min-height:var(--header-height);max-height:var(--header-height);box-sizing:border-box;background:var(--color-surface);border-bottom:none;flex-shrink:0;justify-content:space-between;align-items:center;gap:24px;padding:0 28px;display:none}@media (width>=768px){.desktop-header[data-v-5f322d95]{padding:0 var(--page-padding);gap:16px;display:flex}}@media (width>=1200px){.desktop-header[data-v-5f322d95]{padding:0 var(--page-padding);gap:24px}}.desktop-header__spacer[data-v-5f322d95]{flex:1;min-width:0}.desktop-header__actions[data-v-5f322d95]{flex-shrink:0;align-items:center;gap:16px;margin-inline-start:auto;display:flex}.desktop-header__company[data-v-5f322d95]{color:var(--color-text-muted);border-inline-end:1px solid var(--color-border);padding-inline-end:8px;font-size:.8125rem;font-weight:600;display:none}@media (width>=992px){.desktop-header__company[data-v-5f322d95]{display:block}}.desktop-header__icon-btn[data-v-5f322d95]{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);width:40px;height:40px;color:var(--color-text-muted);cursor:pointer;justify-content:center;align-items:center;display:flex;position:relative}.desktop-header__notif-badge[data-v-5f322d95]{top:4px;background:var(--color-danger);min-width:18px;height:18px;color:var(--color-on-primary,#fff);border:2px solid var(--color-surface);border-radius:9px;justify-content:center;align-items:center;padding:0 4px;font-size:.625rem;font-weight:700;display:flex;position:absolute;inset-inline-end:4px}.desktop-header__user-wrap[data-v-5f322d95]{position:relative}.desktop-header__user[data-v-5f322d95]{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);cursor:pointer;align-items:center;gap:10px;padding:6px 12px 6px 8px;font-family:inherit;display:flex}.desktop-header__avatar[data-v-5f322d95]{background:var(--color-primary);color:var(--color-surface)}.desktop-header__user-name[data-v-5f322d95]{color:var(--color-text);font-size:.875rem;font-weight:600;display:none}@media (width>=1200px){.desktop-header__user-name[data-v-5f322d95]{display:block}}.desktop-header__chevron[data-v-5f322d95]{color:var(--color-text-muted);transform:rotate(-90deg)}.desktop-header__menu[data-v-5f322d95]{top:calc(100% + 6px);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);min-width:160px;box-shadow:var(--shadow-md);z-index:100;padding:6px;position:absolute;inset-inline-end:0}.desktop-header__menu button[data-v-5f322d95]{text-align:start;cursor:pointer;border-radius:var(--radius-sm);width:100%;color:var(--color-text);background:0 0;border:none;padding:10px 12px;font-family:inherit;font-size:.875rem}.desktop-header__menu button[data-v-5f322d95]:hover{background:var(--color-elevated)}.desktop-header__menu-logout[data-v-5f322d95]{color:var(--color-danger)!important}.support-widget[data-v-101e3d29]{z-index:110;inset-inline-end:16px;bottom:calc(16px + env(safe-area-inset-bottom,0));pointer-events:none;grid-auto-flow:row;justify-items:stretch;row-gap:8px;width:max-content;max-width:calc(100vw - 20px);display:grid;position:fixed}.support-widget[data-v-101e3d29]>*{pointer-events:auto}.support-widget--above-nav[data-v-101e3d29]{bottom:calc(var(--nav-height,56px) + 12px + env(safe-area-inset-bottom,0))}@media (width>=768px){.support-widget[data-v-101e3d29]{bottom:24px;inset-inline-end:24px}.support-widget--above-nav[data-v-101e3d29]{bottom:24px}}.support-widget__fab[data-v-101e3d29]{width:min(var(--support-pill-width,max-content), calc(100vw - 20px));color:#152033;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;background:#fff;border:1px solid #1520330f;border-radius:999px;align-items:center;gap:8px;height:38px;padding-inline:14px 11px;font-family:inherit;font-size:.8125rem;font-weight:600;line-height:1;transition:background .15s,box-shadow .15s;display:flex;box-shadow:0 1px 2px #0f172a0d,0 8px 22px #0f172a1f}.support-widget__fab-label[data-v-101e3d29]{white-space:nowrap}.support-widget__fab-icon[data-v-101e3d29]{color:#1fc16b;flex-shrink:0;margin-inline-start:auto;display:block}.support-widget__fab[data-v-101e3d29]:hover:not(.support-widget__fab--dragging){box-shadow:0 2px 4px #0f172a0f,0 12px 28px #0f172a24}.support-widget__fab[data-v-101e3d29]:active:not(.support-widget__fab--dragging){background:#f3f5f7}.support-widget__fab[data-v-101e3d29]:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px}.support-widget__fab--open[data-v-101e3d29]{background:#f3f5f7}.support-widget__fab--dragging[data-v-101e3d29]{cursor:grabbing;box-shadow:0 6px 16px #0f172a1a,0 16px 36px #0f172a29}html.dark,html.dark{background:#eef1f4}.support-widget__panel[data-v-101e3d29]{width:100%;box-shadow:none;transform-origin:bottom;background:0 0;border:0;padding:0;overflow:visible}.support-widget__list[data-v-101e3d29]{gap:8px;margin:0;padding:0;list-style:none;display:grid}.support-widget__list>li[data-v-101e3d29]{min-width:0;display:flex}.support-widget__link[data-v-101e3d29]{width:min(var(--support-pill-width,max-content), calc(100vw - 20px));color:#152033;white-space:nowrap;background:#fff;border:1px solid #1520330f;border-radius:999px;align-items:center;gap:8px;height:38px;padding-inline:14px 11px;font-family:inherit;font-size:.8125rem;font-weight:600;line-height:1;text-decoration:none;transition:background .15s,box-shadow .15s;display:flex;box-shadow:0 1px 2px #0f172a0d,0 8px 22px #0f172a1f}.support-widget__link[data-v-101e3d29]:hover{box-shadow:0 2px 4px #0f172a0f,0 12px 28px #0f172a24}.support-widget__link[data-v-101e3d29]:active{background:#f3f5f7}.support-widget__link[data-v-101e3d29]:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px}.support-widget__link-label[data-v-101e3d29]{white-space:nowrap}.support-widget__mark[data-v-101e3d29]{color:#1fc16b;flex-shrink:0;margin-inline-start:auto;display:inline-flex}.support-widget__mark--badge[data-v-101e3d29]{color:#fff;background:#14b8a6;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px}html.dark{color:#152033;background:#eef1f4;box-shadow:0 1px 2px #00000047,0 12px 30px #0006}.support-pop-enter-active[data-v-101e3d29],.support-pop-leave-active[data-v-101e3d29]{transition:opacity .16s,transform .16s}.support-pop-enter-from[data-v-101e3d29],.support-pop-leave-to[data-v-101e3d29]{opacity:0;transform:translateY(8px)scale(.97)}.btn[data-v-3628a8bb]{border-radius:var(--radius-sm);cursor:pointer;border:none;justify-content:center;align-items:center;gap:8px;font-weight:600;transition:background .15s,opacity .15s;display:inline-flex}.btn[data-v-3628a8bb]:disabled{opacity:.55;cursor:not-allowed}.btn-block[data-v-3628a8bb]{width:100%}.btn-sm[data-v-3628a8bb]{min-height:36px;padding:0 14px;font-size:.8125rem}.btn-md[data-v-3628a8bb]{min-height:var(--btn-height);padding:0 24px;font-size:.9375rem}.btn-lg[data-v-3628a8bb]{min-height:52px;padding:0 28px;font-size:1rem}.btn-primary[data-v-3628a8bb]{background:var(--color-primary);color:var(--color-surface)}.btn-primary[data-v-3628a8bb]:not(:disabled):hover{background:var(--color-primary-dark)}.btn-secondary[data-v-3628a8bb]{background:var(--color-primary-light);color:var(--color-primary)}.btn-outline[data-v-3628a8bb]{color:var(--color-primary);border:1.5px solid var(--color-primary);background:0 0}.btn-danger[data-v-3628a8bb]{background:var(--color-danger);color:var(--color-surface)}.btn-ghost[data-v-3628a8bb]{color:var(--color-text-muted);background:0 0}.btn-spinner[data-v-3628a8bb]{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:16px;height:16px;animation:.6s linear infinite spin-3628a8bb}@keyframes spin-3628a8bb{to{transform:rotate(360deg)}}.confirm-dialog[data-v-2e50e2a7]{padding:20px}.confirm-dialog__title[data-v-2e50e2a7]{margin:0 0 8px;font-size:1.0625rem;font-weight:700}.confirm-dialog__message[data-v-2e50e2a7]{color:var(--color-text-muted);margin:0;font-size:.875rem;line-height:1.7}.confirm-dialog__actions[data-v-2e50e2a7]{margin-top:20px}@media (width>=768px){.confirm-dialog__actions[data-v-2e50e2a7]{flex-direction:row;justify-content:flex-end}}.message-modal-overlay[data-v-2ec86b0d]{z-index:1200;padding:max(16px, env(safe-area-inset-top)) 16px max(16px, env(safe-area-inset-bottom));box-sizing:border-box}.message-modal[data-v-2ec86b0d]{border:1px solid var(--color-border);max-height:min(85vh,520px);box-shadow:var(--shadow-lg);flex-direction:column;padding:0;display:flex;overflow:hidden}.message-modal__head[data-v-2ec86b0d]{text-align:center;flex-direction:column;align-items:center;gap:10px;padding:20px 20px 8px;display:flex}.message-modal__icon[data-v-2ec86b0d]{border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;display:flex}.message-modal--success .message-modal__icon[data-v-2ec86b0d]{background:var(--color-success-light);color:var(--color-success)}.message-modal--error .message-modal__icon[data-v-2ec86b0d]{background:var(--color-danger-light);color:var(--color-danger)}.message-modal--warning .message-modal__icon[data-v-2ec86b0d]{background:color-mix(in srgb, var(--color-warning,#f59e0b) 18%, transparent);color:var(--color-warning,#d97706)}.message-modal--info .message-modal__icon[data-v-2ec86b0d]{background:var(--color-primary-light);color:var(--color-primary)}.message-modal__icon-fallback[data-v-2ec86b0d]{font-size:1.375rem;font-weight:800;line-height:1}.message-modal__title[data-v-2ec86b0d]{color:var(--color-text);margin:0;font-size:1.0625rem;font-weight:700}.message-modal__body[data-v-2ec86b0d]{-webkit-overflow-scrolling:touch;flex:1;min-height:0;padding:8px 20px 4px;overflow-y:auto}.message-modal__text[data-v-2ec86b0d]{color:var(--color-text-muted);text-align:center;white-space:pre-line;overflow-wrap:anywhere;margin:0;font-size:.9375rem;line-height:1.75}.message-modal__footer[data-v-2ec86b0d]{border-top:1px solid var(--color-border);flex-shrink:0;margin:0;padding:16px 20px 20px}@media (width>=768px){.message-modal[data-v-2ec86b0d]{max-width:min(420px,100vw - 48px)}.message-modal__footer[data-v-2ec86b0d] .btn{max-width:280px;margin-inline:auto}}.message-modal-fade-enter-active[data-v-2ec86b0d],.message-modal-fade-leave-active[data-v-2ec86b0d]{transition:opacity .2s}.message-modal-fade-enter-active .message-modal[data-v-2ec86b0d],.message-modal-fade-leave-active .message-modal[data-v-2ec86b0d]{transition:transform .2s}.message-modal-fade-enter-from[data-v-2ec86b0d],.message-modal-fade-leave-to[data-v-2ec86b0d]{opacity:0}.message-modal-fade-enter-from .message-modal[data-v-2ec86b0d],.message-modal-fade-leave-to .message-modal[data-v-2ec86b0d]{transform:scale(.96)}*,:before,:after,::backdrop{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 #0000;--un-ring-shadow:0 0 #0000;--un-shadow-inset: ;--un-shadow:0 0 #0000;--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:#93c5fd80;--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: }.btn-block{width:100%}.page-shell{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.sticky{position:sticky}.static{position:static}.isolate{isolation:isolate}.grid{display:grid}.inline-grid{display:inline-grid}.m-0{margin:0}.m4\.5{margin:1.125rem}.mb-3{margin-bottom:.75rem}.mt-1{margin-top:.25rem}.inline,.empty-inline:empty{display:inline}.block{display:block}.inline-block{display:inline-block}.contents{display:contents}.hidden{display:none}.h-10{height:2.5rem}.h1{height:.25rem}.h2{height:.5rem}.h3{height:.75rem}.h4{height:1rem}.min-w-0{min-width:0}.w-10{width:2.5rem}.flex{display:flex}.inline-flex{display:inline-flex}.flex-1{flex:1}.flex-shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.table{display:table}.border-collapse{border-collapse:collapse}.transform{transform:translateX(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotateZ(var(--un-rotate-z)) skewX(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.resize{resize:both}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.b,.border{border-width:1px}.border-t{border-top-width:1px}.border-\[var\(--color-border\)\]{border-color:var(--color-border)}.rounded-\[var\(--radius-md\)\]{border-radius:var(--radius-md)}.rounded-full{border-radius:9999px}.bg-\[var\(--color-primary-soft\)\]{background-color:var(--color-primary-soft)}.bg-\[var\(--color-surface\)\]{background-color:var(--color-surface)}.p-4{padding:1rem}.px{padding-left:1rem;padding-right:1rem}.pt-3{padding-top:.75rem}.text-base{font-size:1rem;line-height:1.5rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.text-\[var\(--color-danger\)\]{color:var(--color-danger)}.text-\[var\(--color-primary\)\]{color:var(--color-primary)}.text-\[var\(--color-success\)\]{color:var(--color-success)}.text-\[var\(--color-text-muted\)\],.text-muted{color:var(--color-text-muted)}.text-\[var\(--color-text\)\]{color:var(--color-text)}.font-medium{font-weight:500}.font-semibold{font-weight:600}.leading-relaxed{line-height:1.625}.tabular-nums{--un-numeric-spacing:tabular-nums;font-variant-numeric:var(--un-ordinal) var(--un-slashed-zero) var(--un-numeric-figure) var(--un-numeric-spacing) var(--un-numeric-fraction)}.underline{text-decoration-line:underline}.tab{tab-size:4}.text-shadow{--un-text-shadow:0 0 1px var(--un-text-shadow-color,#0003),0 0 1px var(--un-text-shadow-color,#0100051a);text-shadow:var(--un-text-shadow)}.outline{outline-style:solid}.blur{--un-blur:blur(8px);filter:var(--un-blur) var(--un-brightness) var(--un-contrast) var(--un-drop-shadow) var(--un-grayscale) var(--un-hue-rotate) var(--un-invert) var(--un-saturate) var(--un-sepia)}.filter{filter:var(--un-blur) var(--un-brightness) var(--un-contrast) var(--un-drop-shadow) var(--un-grayscale) var(--un-hue-rotate) var(--un-invert) var(--un-saturate) var(--un-sepia)}.backdrop-filter{-webkit-backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia);backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter,backdrop-filter;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease,.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}@font-face{font-family:IRANSans;src:url(/assets/IRANSansWeb\(FaNum\)-BLA2CtIC.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:IRANSans;src:url(/assets/IRANSansWeb\(FaNum\)_Light-B637MNLG.woff2)format("woff2");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:IRANSans;src:url(/assets/IRANSansWeb\(FaNum\)_UltraLight-hW-WDKY9.woff2)format("woff2");font-weight:200;font-style:normal;font-display:swap}@font-face{font-family:IRANSans;src:url(/assets/IRANSansWeb\(FaNum\)_Medium-C2CKjrKB.woff2)format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:IRANSans;src:url(/assets/IRANSansWeb\(FaNum\)_Medium-C2CKjrKB.woff2)format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:IRANSans;src:url(/assets/IRANSansWeb\(FaNum\)_Bold-C8urhp07.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:IRANSans;src:url(/assets/IRANSansWeb\(FaNum\)_Black-BFAfOkt4.woff2)format("woff2");font-weight:900;font-style:normal;font-display:swap}:root{--color-primary:#091d36;--color-primary-hover:#061426;--color-primary-soft:#e9edf2;--color-primary-dark:#04101f;--color-primary-light:var(--color-primary-soft);--color-primary-rgb:9, 29, 54;--color-accent-navy:#091d36;--color-accent-navy-rgb:9, 29, 54;--color-success:#1b8a5a;--color-success-light:#eaf8f1;--color-success-soft:#eaf8f1;--color-warning:#e8a317;--color-warning-light:#fff6e5;--color-danger:#dc3545;--color-danger-light:#fee2e2;--color-purple:#7c3aed;--color-purple-light:#ede9fe;--color-info:#3b6fa0;--color-info-light:#eef3f7;--color-bg:#f3f5f7;--color-page-background:#f3f5f7;--color-shell-bg:#f3f5f7;--color-surface:#fff;--color-border:#dfe4ea;--color-text:#121821;--color-text-primary:#121821;--color-text-muted:#6b7280;--color-text-secondary:#6b7280;--color-tab-inactive-bg:#e8ecf1;--color-tab-inactive-text:#64748b;--color-summary-bg:#e8ecf1;--color-elevated:#fff;--color-brand-warm:#f3ece3;--color-brand-warm-text:#1a202c;--color-brand-warm-muted:#718096;--color-level-gold:#c9a227;--color-level-gold-soft:#f7efd6;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--shadow-sm:none;--shadow-md:none;--shadow-card:none;--shadow-frame:0 8px 32px #0f172a1a;--nav-height:64px;--page-padding:16px;--page-padding-tablet:20px;--page-padding-desktop:28px;--page-gap:12px;--content-max-width:1360px;--form-max-width:520px;--auth-form-max-width:440px;--summary-panel-width:320px;--sidebar-width:240px;--sidebar-width-compact:72px;--header-height:70px;--app-shell-breakpoint:768px;--font-family:"IRANSans", "Tahoma", sans-serif;--btn-height:48px;--desktop-breakpoint:1200px}html.dark{--color-primary:#7d8695;--color-primary-hover:#aeb6c2;--color-primary-soft:#27303d;--color-primary-dark:#aeb6c2;--color-primary-light:var(--color-primary-soft);--color-primary-rgb:125, 134, 149;--color-accent-navy:#7d8695;--color-accent-navy-rgb:125, 134, 149;--color-success:#3dd68c;--color-success-light:#123528;--color-success-soft:#123528;--color-warning:#f5c14a;--color-warning-light:#3a2f14;--color-danger:#f47979;--color-danger-light:#3f1d22;--color-purple:#b39afa;--color-purple-light:#2a2144;--color-info:#7b9cff;--color-info-light:#1b2740;--color-bg:#0b0f14;--color-page-background:#0b0f14;--color-shell-bg:#0b0f14;--color-surface:#0b0f14;--color-elevated:#0b0f14;--color-border:#2a3444;--color-text:#fff;--color-text-primary:#fff;--color-text-muted:#9aa8bc;--color-text-secondary:#9aa8bc;--color-tab-inactive-bg:#1a2230;--color-tab-inactive-text:#9aa8bc;--color-summary-bg:#1a2230;--color-brand-warm:#2a241c;--color-brand-warm-text:#f3ebe0;--color-brand-warm-muted:#b9a88d;--color-level-gold:#e0c35a;--color-level-gold-soft:#3a3420;--shadow-sm:0 1px 2px #00000073;--shadow-md:0 8px 24px #00000073;--shadow-card:0 1px 2px #00000059, 0 8px 24px #00000059;--shadow-frame:0 12px 40px #00000080}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;height:100%;font-size:16px;overflow:hidden}body{font-family:var(--font-family);background:var(--color-shell-bg);color:var(--color-text);direction:rtl;height:100%;margin:0;line-height:1.5;overflow:hidden}#app{height:100dvh;overflow:hidden}*{scrollbar-width:none;-ms-overflow-style:none}::-webkit-scrollbar{width:0;height:0;display:none}.scroll-x{-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;scroll-behavior:smooth;scrollbar-width:none;-ms-overflow-style:none;overflow:auto hidden}.scroll-x::-webkit-scrollbar{width:0;height:0;display:none}a{color:var(--color-primary);text-decoration:none}button,input,select,textarea{font-family:inherit}input:not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=button]):not([type=reset]):not([type=file]):not([type=hidden]):not([type=image]):not([type=range]):not([type=color]),textarea,select,.persian-date-input__trigger,.time-input__trigger,.app-select__trigger,.search-field__input{background-color:#0000}input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield;text-align:right}.page{background:var(--color-bg);min-height:0;color:var(--color-text);flex-direction:column;flex:1;padding:0;display:flex;overflow:hidden}.page__scroll{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;flex:1;min-height:0;overflow-y:auto}.page__scroll--with-nav{padding-bottom:calc(12px + env(safe-area-inset-bottom,0px))}.page-title{color:var(--color-text);margin:0 0 4px;font-size:1.25rem;font-weight:700;line-height:1.35}.page-subtitle{color:var(--color-text-muted);margin:0;font-size:.875rem;line-height:1.5}.card{background:var(--color-elevated);border-radius:var(--radius-md);border:1px solid var(--color-border);box-shadow:none;color:var(--color-text);padding:16px}.auth-page{background:0 0}.auth-top{padding:8px var(--page-padding);background:var(--color-surface);grid-template-columns:40px 1fr 40px;align-items:center;gap:4px;display:grid}.auth-top__title{text-align:center;color:var(--color-text);margin:0;font-size:1rem;font-weight:700}.auth-top .icon-btn{cursor:pointer;width:40px;height:40px;color:var(--color-text);background:0 0;border:none;border-radius:12px;place-items:center;padding:0;display:grid}.auth-body{padding:20px var(--page-padding) 32px;background:0 0;flex-direction:column;gap:16px;display:flex}.auth-lead{color:var(--color-text-muted);margin:0;font-size:.875rem;line-height:1.6}.auth-page .card{width:100%;max-width:var(--auth-form-max-width);box-shadow:none;background:0 0;border:none;margin-inline:auto;padding:0}.auth-switch{width:100%;max-width:var(--auth-form-max-width);text-align:center;color:var(--color-text-muted);margin:0 auto;font-size:.875rem}.auth-switch a{color:var(--color-primary);font-weight:700}.auth-page .input,.auth-page .job-select,.auth-page .otp-box{border:1px solid #eeeef1;border-radius:12px}.auth-page .btn{border-radius:12px}.card+.card{margin-top:var(--page-gap)}.alert{border-radius:var(--radius-sm);padding:12px 14px;font-size:.875rem;line-height:1.5}.alert-info{background:var(--color-primary-light);color:var(--color-primary);border:1px solid #cbd5e1}.alert-warning{background:var(--color-warning-light);color:#9a3412;border:1px solid #fed7aa}.alert-success{background:var(--color-success-light);color:#155724;border:1px solid #c3e6cb}.alert-danger{background:var(--color-danger-light);color:#991b1b;border:1px solid #fecaca}.form-group{margin-bottom:16px}.form-label{color:var(--color-text);margin-bottom:6px;font-size:.875rem;font-weight:600;display:block}.form-hint{color:var(--color-text-muted);margin-top:4px;font-size:.75rem}.divider{background:var(--color-border);height:1px;margin:16px 0}.text-muted{color:var(--color-text-muted)}.text-sm{font-size:.875rem}.text-center{text-align:center}.mt-2{margin-top:8px}.mt-4{margin-top:16px}.mb-4{margin-bottom:16px}.flex-between{justify-content:space-between;align-items:center;gap:8px;display:flex}.sticky-footer{bottom:calc(var(--nav-height) + 12px);z-index:50;width:100%;max-width:100%;padding-inline:var(--page-padding);box-sizing:border-box;position:fixed;inset-inline:0}.sticky-footer-inner{max-width:100%}.no-nav .page{padding-bottom:0}.no-nav .sticky-footer{bottom:0}.dialog-overlay{z-index:200;background:#0f172a66;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.dialog-overlay .dialog{width:100%;max-width:400px}.dialog-actions{flex-direction:column;gap:8px;margin-top:16px;display:flex}.desktop-only,.desktop-only-flex,.desktop-only-grid{display:none!important}.mobile-hidden{display:block}.desktop-hidden{display:none!important}@media (width>=768px){.mobile-only,.mobile-block{display:none!important}.desktop-only{display:block!important}.mobile-hidden{display:none!important}.desktop-hidden{display:block!important}.desktop-only-flex{display:flex!important}.desktop-only-grid{display:grid!important}.page{background:0 0;padding:0}.page__scroll--with-nav{padding-bottom:0}}.page-fade-enter-active,.page-fade-leave-active,.page-forward-enter-active,.page-forward-leave-active,.page-back-enter-active,.page-back-leave-active{transition:opacity .22s,transform .22s}.page-fade-enter-from,.page-fade-leave-to{opacity:0}.page-forward-enter-from{opacity:0;transform:translate(-18px)}.page-forward-leave-to{opacity:0;transform:translate(12px)}.page-back-enter-from{opacity:0;transform:translate(18px)}.page-back-leave-to{opacity:0;transform:translate(-12px)}@media (prefers-reduced-motion:reduce){.page-fade-enter-active,.page-fade-leave-active,.page-forward-enter-active,.page-forward-leave-active,.page-back-enter-active,.page-back-leave-active{transition:none}}.app-shell{background:var(--color-shell-bg);width:100%;height:100dvh;display:flex;overflow:hidden}.app-layout{flex-direction:row;width:100%;height:100%;min-height:0;display:flex}.app-frame{background:var(--color-bg);width:100%;height:100%;color:var(--color-text);flex-direction:column;flex:1;min-width:0;display:flex;overflow:hidden}.app-main,.app-main__content{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.app-content{width:100%;min-height:0;max-width:var(--content-max-width);flex-direction:column;flex:1;margin-inline:auto;padding-inline:0;display:flex;position:relative}.page-transition{flex-direction:column;flex:1;width:100%;min-height:0;display:flex;overflow:hidden}.app-shell--with-nav{justify-content:stretch}.app-shell--with-nav .app-frame{max-width:100%;box-shadow:none;border-radius:0;margin:0}@media (width>=768px){.app-shell--with-nav,.app-shell--with-nav .app-frame{background:var(--color-page-background)}.app-shell--with-nav .app-layout{position:relative}.app-shell--with-nav .app-layout:after{content:"";top:var(--header-height);background:var(--color-border);z-index:30;pointer-events:none;height:1px;position:absolute;inset-inline:0}.app-shell--with-nav .app-main__content{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;overflow:hidden auto}.app-shell--with-nav .app-content,.app-shell--with-nav .page-transition{flex:1 0 auto;min-height:min-content;overflow:visible}.app-shell--with-nav .page-transition>*{flex:1 0 auto;height:auto;min-height:min-content;max-height:none;overflow:visible}}.app-shell--no-nav{background:var(--color-page-background);justify-content:center;align-items:center;padding:16px}.app-shell--no-nav .app-layout{max-width:var(--form-max-width);width:100%;height:auto;min-height:0;max-height:calc(100dvh - 32px);overflow:hidden}.app-shell--no-nav .app-frame{max-width:var(--form-max-width);border-radius:var(--radius-lg);width:100%;height:auto;min-height:0;max-height:calc(100dvh - 32px);box-shadow:var(--shadow-frame);background:var(--color-surface);overscroll-behavior:contain;-webkit-overflow-scrolling:touch;overflow:hidden auto}.app-shell--no-nav .app-main,.app-shell--no-nav .app-main__content,.app-shell--no-nav .app-content,.app-shell--no-nav .page-transition{flex:1 0 auto;height:auto;min-height:min-content;overflow:visible}.app-shell--no-nav .app-content{padding-inline:var(--page-padding)}.app-shell--no-nav .page{background:0 0;min-height:auto;overflow:visible}.app-shell--no-nav.app-shell--wide .app-layout,.app-shell--no-nav.app-shell--wide .app-frame{max-width:min(var(--content-max-width), calc(100vw - 32px))}.app-shell--no-nav.app-shell--wide .app-frame{background:var(--color-bg)}.app-shell--immersive{background:#efe8df;justify-content:stretch;align-items:stretch;padding:0}.app-shell--immersive .app-layout,.app-shell--immersive .app-frame{width:100%;max-width:none;height:100%;max-height:none;box-shadow:none;background:0 0;border-radius:0;overflow:hidden}.app-shell--immersive .app-main,.app-shell--immersive .app-main__content,.app-shell--immersive .app-content,.app-shell--immersive .page-transition{flex:1;height:100%;min-height:0;overflow:hidden}.app-shell--immersive .page-transition{flex-direction:column;display:flex}.app-shell--immersive .page-transition>*{flex:1;height:100%;min-height:0}.app-shell--immersive .app-content{max-width:none;padding-inline:0}.app-shell--immersive .page{background:0 0;height:100%;min-height:0;overflow:hidden}@media (width>=768px){.app-shell--immersive .page{flex:1;max-width:none;height:100%;min-height:0;margin:0;padding:0;overflow:hidden}.app-shell--no-nav{padding:24px}.app-shell--no-nav.app-shell--immersive{background:#141210;justify-content:center;align-items:center;padding:0}.app-shell--no-nav.app-shell--immersive .app-layout,.app-shell--no-nav.app-shell--immersive .app-frame{width:min(100%,430px);max-width:430px;height:100%;max-height:100dvh;box-shadow:none;border-radius:0;margin-inline:auto}.app-shell--no-nav .app-layout,.app-shell--no-nav .app-frame{max-height:calc(100dvh - 48px)}.app-shell--no-nav.app-shell--wide .app-layout,.app-shell--no-nav.app-shell--wide .app-frame{max-width:min(var(--content-max-width), calc(100vw - 48px))}:root{--page-padding:var(--page-padding-tablet);--nav-height:0px}html,body{height:auto;overflow:auto}#app{height:100dvh;overflow:hidden}*{scrollbar-width:thin;scrollbar-color:#cbd5e1 transparent}::-webkit-scrollbar{width:6px;height:6px;display:block}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:999px}.sticky-footer{max-width:min(var(--content-max-width), calc(100% - 2 * var(--page-padding)));bottom:0}.no-nav .sticky-footer{bottom:0}.auth-body{align-items:center;padding-block:32px 48px}.auth-lead,.auth-page .card,.auth-switch{width:100%;max-width:var(--auth-form-max-width)}.company-select-page__list{grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:20px;display:grid}.company-brand-card{min-height:220px}.catalog-list{gap:var(--page-gap);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.product-list{gap:var(--page-gap);grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;display:grid}.product-page__scroll{padding-bottom:88px}.settlement-options,.mode-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;max-width:720px;margin-inline:auto;display:grid}.company-select-page{max-width:var(--content-max-width);width:100%;padding-inline:var(--page-padding);margin-inline:auto}.company-select-page__header{max-width:560px;margin-inline:auto}.catalog-page .page__scroll,.orders-page__scroll,.product-page .product-page__scroll{max-width:var(--content-max-width);width:100%;margin-inline:auto}.cart-page{max-width:var(--content-max-width);width:100%;padding-inline:var(--page-padding);margin-inline:auto}.cart-page__body{grid-template-rows:auto 1fr;grid-template-columns:minmax(0,1fr) minmax(260px,300px);align-items:start;gap:16px 20px;display:grid}.cart-page__company{grid-column:1/-1;margin-bottom:0;font-size:.9375rem}.cart-page__scroll{grid-column:1;max-height:none;overflow:visible}.cart-page__footer{box-shadow:var(--shadow-md);border-radius:var(--radius-md);border-top:none;border:1px solid var(--color-border);grid-area:1/2/-1;margin:0;padding:16px;position:sticky;top:16px}.cart-table__head{position:static}.check-list-page{max-width:var(--content-max-width);width:100%;padding-inline:var(--page-padding);margin-inline:auto}.check-list-page__scroll{max-width:var(--content-max-width);width:100%;margin-inline:auto}.summary-cards{gap:16px}.checks-list{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:12px;display:grid}.rass-panel{max-width:480px;margin-inline:auto}.profile-page__scroll{max-width:var(--content-max-width);width:100%;margin-inline:auto}.profile-menu{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.profile-menu__item{border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-sm)}.order-detail-page__body{-webkit-overflow-scrolling:touch;width:100%;max-width:none;margin-inline:0;overflow-y:auto}.order-detail-page__footer{width:100%;max-width:none;margin-inline:0}.checkout-page__scroll,.cash-page__scroll,.check-mode-page__scroll{max-width:var(--form-max-width);width:100%;margin-inline:auto}.cash-page{max-width:var(--content-max-width);width:100%;margin-inline:auto}.cash-page__footer{max-width:var(--form-max-width);width:100%;box-shadow:none;border-top:none;grid-template-columns:1fr 1fr;gap:12px;margin-inline:auto;padding-top:16px;display:grid}.accounts-panel{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.bank-card+.bank-card,.cash-page__submit{margin-top:0}.order-info-card{max-width:520px;margin-inline:auto}.profile-edit-page .page__scroll{max-width:var(--form-max-width);width:100%;margin-inline:auto}.success-page__scroll{max-width:var(--form-max-width);flex-direction:column;align-items:center;width:100%;margin-inline:auto;display:flex}.dialog-overlay .dialog,.dialog-overlay .card.dialog{width:100%;max-width:480px}.dialog-actions{flex-direction:row;justify-content:flex-end}}@media (width>=1200px){:root{--page-padding:var(--page-padding-desktop)}.catalog-list{grid-template-columns:repeat(3,minmax(0,1fr))}.checks-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1440px){.product-list{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width>=1920px){:root{--content-max-width:1120px}}@media (width>=768px){:root{--page-padding:var(--page-padding-tablet);--nav-height:0px}.page{padding:20px var(--page-padding-tablet) 28px;max-width:var(--content-max-width);background:0 0;flex:1 0 auto;width:100%;min-height:auto;margin-inline:auto;overflow:visible}.page__scroll{flex:none;min-height:auto;overflow:visible}.page__scroll--with-nav{padding-bottom:0}.page-head{margin-bottom:20px}.page-head__title{color:var(--color-text);margin:0 0 4px;font-size:1.25rem;font-weight:700}.page-head__subtitle{color:var(--color-text-muted);margin:0;font-size:.875rem}.orders-page__desktop-head{margin-bottom:20px}.orders-page__desktop-title{color:var(--color-text);margin:0 0 6px;font-size:1.375rem;font-weight:700}.orders-page__desktop-subtitle{color:var(--color-text-muted);margin:0;font-size:.875rem}.orders-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:20px;display:grid}.orders-stat-card{background:var(--color-surface);border-radius:var(--radius-md);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);flex-direction:column;align-items:stretch;gap:0;min-height:0;padding:16px 18px 14px;display:flex}.orders-stat-card__head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;display:flex}.orders-stat-card__label{font-size:.8125rem;font-weight:600;line-height:1.4}.orders-stat-card__label--total,.orders-stat-card__label--review{color:var(--color-text)}.orders-stat-card__label--active{color:#ea580c}.orders-stat-card__label--done{color:var(--color-success)}.orders-stat-card__value{color:var(--color-text);font-variant-numeric:tabular-nums;margin:0 0 12px;font-size:1.75rem;font-weight:700;line-height:1.15}.orders-stat-card__link{color:var(--color-primary);cursor:pointer;text-underline-offset:3px;background:0 0;border:none;align-self:flex-start;margin-top:auto;padding:0;font-family:inherit;font-size:.8125rem;font-weight:600;text-decoration:underline}.orders-stat-card__link:hover{color:var(--color-primary-hover)}.orders-stat-card__icon{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.orders-stat-card__icon--total,.orders-stat-card__icon--review{background:var(--color-primary-soft);color:var(--color-primary)}.orders-stat-card__icon--active{background:var(--color-warning-light);color:#ea580c}.orders-stat-card__icon--done{background:var(--color-success-soft);color:var(--color-success)}.orders-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.orders-toolbar__actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.orders-toolbar__filter-btn{border-radius:var(--radius-sm);background:var(--color-primary);color:#fff;cursor:pointer;white-space:nowrap;border:none;align-items:center;gap:8px;height:40px;padding:0 18px;font-family:inherit;font-size:.875rem;font-weight:600;display:inline-flex}.orders-toolbar__filter-btn:hover{background:var(--color-primary-hover)}.orders-toolbar__pills{flex-wrap:wrap;flex:1;justify-content:flex-end;align-items:center;gap:8px;min-width:0;display:flex}.orders-filter-pill{border:1px solid var(--color-border);background:var(--color-surface);height:36px;color:var(--color-text-muted);cursor:pointer;white-space:nowrap;border-radius:999px;padding:0 16px;font-family:inherit;font-size:.8125rem;font-weight:500;transition:background .15s,color .15s,border-color .15s}.orders-filter-pill:hover{color:var(--color-text);border-color:#cbd5e1}.orders-filter-pill--active{background:var(--color-primary-soft);color:var(--color-primary);border-color:#c7d7ff;font-weight:600}.orders-table-wrap{background:var(--color-surface);border-radius:var(--radius-md);border:1px solid var(--color-border);box-shadow:var(--shadow-card);overflow:hidden}.orders-table-scroll{overflow-x:auto}.orders-table{border-collapse:collapse;width:100%;min-width:860px;font-size:.875rem}.orders-table th{text-align:start;color:var(--color-text-muted);background:var(--color-bg);border-bottom:1px solid var(--color-border);white-space:nowrap;padding:14px 16px;font-size:.8125rem;font-weight:600}.orders-table td{border-bottom:1px solid var(--color-border);color:var(--color-text);vertical-align:middle;background:var(--color-surface);padding:16px}.orders-table tr:last-child td{border-bottom:none}.orders-table tbody tr:hover td{background:var(--color-elevated)}.orders-table__number{color:var(--color-text);white-space:nowrap;font-weight:700}.orders-table__fabric{max-width:240px;font-weight:600;line-height:1.45}.orders-table__amount{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}.orders-table__date{color:var(--color-text-muted);white-space:nowrap;font-size:.8125rem}.orders-table__actions{align-items:center;gap:8px;display:flex}.orders-table__action{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-primary);cursor:pointer;white-space:nowrap;padding:7px 16px;font-family:inherit;font-size:.8125rem;font-weight:600}.orders-table__action:hover{background:var(--color-primary-soft);border-color:#c7d7ff}.orders-table__menu{border-radius:var(--radius-sm);width:34px;height:34px;color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:flex}.orders-table__menu:hover{background:var(--color-elevated);color:var(--color-text)}.orders-pagination{border-top:1px solid var(--color-border);color:var(--color-text-muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:14px 16px;font-size:.8125rem;display:flex}.orders-pagination__summary{white-space:nowrap}.orders-pagination__controls{align-items:center;gap:4px;display:flex}.orders-pagination__arrow{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);cursor:pointer;width:32px;height:32px;color:var(--color-text);justify-content:center;align-items:center;padding:0;display:flex}.orders-pagination__arrow:disabled{opacity:.4;cursor:not-allowed}.orders-pagination__arrow:not(:disabled):hover{border-color:var(--color-primary);color:var(--color-primary)}.orders-pagination__arrow-icon--prev{transform:scaleX(-1)}.orders-pagination__arrow-icon--next{transform:none}.orders-pagination__ellipsis{text-align:center;min-width:24px;color:var(--color-text-muted)}.orders-pagination__page{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);cursor:pointer;min-width:32px;height:32px;color:var(--color-text);padding:0 6px;font-family:inherit;font-size:.8125rem}.orders-pagination__page:hover:not(.orders-pagination__page--active){border-color:var(--color-primary);color:var(--color-primary)}.orders-pagination__page--active{background:var(--color-primary);border-color:var(--color-primary);color:#fff;font-weight:600}.product-page__layout{grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:24px;display:grid}.product-page__main{min-width:0}.product-page__sidebar{position:sticky;top:16px}.cart-summary-panel{background:var(--color-surface);border-radius:var(--radius-md);border:1px solid var(--color-border);box-shadow:var(--shadow-card);padding:20px}.cart-summary-panel__title{color:var(--color-text);border-bottom:1px solid var(--color-border);margin:0 0 16px;padding-bottom:12px;font-size:.9375rem;font-weight:700}.cart-summary-panel__row{justify-content:space-between;align-items:center;padding:8px 0;font-size:.875rem;display:flex}.cart-summary-panel__row span:first-child{color:var(--color-text-muted)}.cart-summary-panel__row strong{color:var(--color-text)}.cart-summary-panel__btn{margin-top:16px}.product-page__scroll{padding-bottom:0}.product-page .sticky-footer{display:none}.product-list{grid-template-columns:repeat(2,minmax(0,1fr))}.cart-page{max-width:var(--content-max-width);padding:20px var(--page-padding-tablet) 28px;background:0 0;margin-inline:auto}.cart-page__desktop-title{margin:0 0 16px;font-size:1.25rem;font-weight:700}.cart-page__body{grid-template-columns:minmax(0,1fr) minmax(280px,320px);align-items:start;gap:20px 24px;display:grid}.cart-page__company{grid-column:1/-1}.order-detail-page{max-width:none;padding:24px var(--page-padding) 32px;background:0 0;height:100%;margin-inline:0;overflow:hidden}.order-detail-back{color:var(--color-primary);cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;margin-bottom:12px;padding:0;font-family:inherit;font-size:.875rem;font-weight:600;display:inline-flex}.company-select-page{max-width:var(--content-max-width);padding:24px var(--page-padding-desktop);background:0 0;margin-inline:auto}.catalog-page{background:0 0}.page.calite-detail,.page.calite-hub{background:#f4f0ed;max-width:none;padding:0;overflow:visible}.catalog-list{grid-template-columns:repeat(3,minmax(0,1fr))}.profile-page{background:0 0}.profile-hero{border-radius:var(--radius-md);margin-inline:0}}@media (width>=1200px){:root{--page-padding:var(--page-padding-desktop)}.page{padding:24px var(--page-padding-desktop) 32px}.page.calite-detail,.page.calite-hub{padding:0}.orders-stats{gap:16px;margin-bottom:24px}.orders-page__desktop-head{margin-bottom:24px}.orders-toolbar{margin-bottom:20px}.catalog-list{grid-template-columns:repeat(3,minmax(0,1fr))}.product-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=768px){.desktop-page{width:100%;min-height:auto;max-width:var(--content-max-width);padding:20px var(--page-padding) 28px;box-sizing:border-box;background:0 0;flex-direction:column;flex:1 0 auto;margin-inline:auto;display:flex}.desktop-page__head{margin-bottom:20px}.desktop-page__title{color:var(--color-text);margin:0 0 6px;font-size:1.375rem;font-weight:700}.desktop-page__subtitle{color:var(--color-text-muted);margin:0;font-size:.875rem}.desktop-two-col{grid-template-columns:minmax(0,1fr);align-items:start;gap:24px;display:grid}.desktop-two-col__main{min-width:0}.desktop-summary-panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-card);padding:20px;position:sticky;top:16px}.desktop-summary-panel__title{border-bottom:1px solid var(--color-border);margin:0 0 16px;padding-bottom:12px;font-size:.9375rem;font-weight:700}.desktop-summary-panel__row{justify-content:space-between;align-items:center;gap:12px;padding:8px 0;font-size:.875rem;display:flex}.desktop-summary-panel__row span:first-child{color:var(--color-text-muted)}.desktop-summary-panel__row strong{color:var(--color-text);font-variant-numeric:tabular-nums}.desktop-summary-panel__action{margin-top:16px}.desktop-table-wrap{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-card);width:100%;min-width:0;overflow:hidden}.desktop-table-scroll{-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;overflow-x:auto}.desktop-table{border-collapse:collapse;width:100%;min-width:560px;font-size:.875rem}.desktop-table th{text-align:start;color:var(--color-text-muted);background:var(--color-bg);border-bottom:1px solid var(--color-border);white-space:nowrap;padding:12px 16px;font-size:.8125rem;font-weight:600}.desktop-table td{border-bottom:1px solid var(--color-border);color:var(--color-text);vertical-align:middle;background:var(--color-surface);padding:14px 16px}.desktop-table tbody tr:last-child td{border-bottom:none}.desktop-table tbody tr:hover td{background:var(--color-elevated)}.desktop-grid-2{grid-template-columns:repeat(2,minmax(280px,1fr));gap:16px;display:grid}.desktop-grid-3{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.desktop-grid-4{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.desktop-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.desktop-toolbar__actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.desktop-btn-compact{min-width:120px;width:auto!important;padding-inline:20px!important}.desktop-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.desktop-form-grid__full{grid-column:1/-1}.desktop-checkout-shell{width:100%;max-width:var(--content-max-width);padding:20px var(--page-padding) 28px;box-sizing:border-box;margin-inline:auto}.desktop-settlement-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;width:100%;max-width:none;margin-inline:0;display:grid}.desktop-company-grid{grid-template-columns:repeat(2,minmax(280px,400px));justify-content:center;gap:20px;width:100%;max-width:900px;margin-inline:auto;display:grid}}@media (width>=1200px){.desktop-page,.desktop-checkout-shell{padding:24px var(--page-padding) 32px}.desktop-page__head{margin-bottom:24px}.desktop-two-col:has(>.desktop-summary-panel){grid-template-columns:minmax(0, 1fr) var(--summary-panel-width,320px)}.desktop-grid-3{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.desktop-grid-4{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}}@media (width>=1440px){.desktop-grid-3{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width<=467px){:root{--header-compact-control:36px}.page-nav{grid-template-columns:var(--header-compact-control) minmax(0, 1fr) minmax(0, auto);padding-inline:10px;column-gap:4px;margin-bottom:4px;padding-top:6px}.page-nav .nav-btn{width:var(--header-compact-control);height:var(--header-compact-control)}.page-nav__title{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.9375rem;overflow:hidden}.page-nav__trailing{min-height:var(--header-compact-control);max-width:calc(var(--header-compact-control) * 2 + 4px);gap:2px}.page-nav__trailing .auth-theme-toggle--inline{display:none}.page-header{padding-inline:10px;align-items:center;gap:8px;margin-bottom:12px;padding-top:6px}.page-header .back-btn{width:var(--header-compact-control);height:var(--header-compact-control)}.page-header__trailing .auth-theme-toggle--inline{display:none}.page-title{text-overflow:ellipsis;white-space:nowrap;font-size:1.0625rem;overflow:hidden}.page-subtitle{text-overflow:ellipsis;white-space:nowrap;font-size:.8125rem;overflow:hidden}.home-header{gap:4px;padding:6px 10px 4px}.home-header__user{gap:8px}.home-header__welcome{display:none}.home-header__hello{text-overflow:ellipsis;white-space:nowrap;font-size:.8125rem;line-height:1.3;overflow:hidden}.home-header__actions .auth-theme-toggle--inline{display:none}.home-header .icon-btn{width:var(--header-compact-control);height:var(--header-compact-control);border-radius:10px}.nav-filter,.nav-add-btn{width:var(--header-compact-control);height:var(--header-compact-control)}.page-nav__trailing .edit-btn--compact{width:var(--header-compact-control);height:var(--header-compact-control);justify-content:center;align-items:center;padding:0;display:inline-flex}.page-nav__trailing .edit-btn--compact .edit-btn__label{display:none}.page-nav__trailing .edit-btn--compact svg{display:block}} diff --git a/dist/assets/index-BfS90rWw.css b/dist/assets/index-BfS90rWw.css new file mode 100644 index 0000000..70aba87 --- /dev/null +++ b/dist/assets/index-BfS90rWw.css @@ -0,0 +1 @@ +.bottom-nav[data-v-759f4bb7]{min-height:var(--nav-height);background:var(--color-surface);border-top:1px solid var(--color-border);z-index:100;padding:6px 4px calc(6px + env(safe-area-inset-bottom,0));flex-shrink:0;justify-content:space-around;align-items:flex-end;display:flex}@media (width>=768px){.bottom-nav[data-v-759f4bb7]{display:none}}.nav-item[data-v-759f4bb7]{cursor:pointer;color:var(--color-text-muted);background:0 0;border:none;border-radius:10px;flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:4px;min-width:0;margin:0;padding:4px 2px 2px;transition:color .15s;display:flex;position:relative}.nav-item[data-v-759f4bb7]:focus,.nav-item[data-v-759f4bb7]:focus-visible{outline:none}.nav-item.active[data-v-759f4bb7]{color:var(--color-primary);background:0 0}.nav-item.active .nav-label[data-v-759f4bb7]{font-weight:700}.nav-item--fab[data-v-759f4bb7]{color:var(--color-text-muted);justify-content:flex-end}.nav-item--fab.active[data-v-759f4bb7]{color:var(--color-primary)}.nav-icon[data-v-759f4bb7]{flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;display:flex;position:relative;overflow:visible}.nav-icon--fab[data-v-759f4bb7]{background:var(--color-primary);color:#fff;width:52px;height:52px;box-shadow:0 6px 16px rgba(var(--color-primary-rgb), .35);border-radius:999px;margin-top:-28px}.nav-label[data-v-759f4bb7]{white-space:nowrap;font-size:.6875rem;font-weight:500;line-height:1.2}.nav-label--fab[data-v-759f4bb7]{font-size:.625rem}.nav-badge[data-v-759f4bb7]{top:-2px;background:var(--color-danger);color:#fff;pointer-events:none;border-radius:999px;justify-content:center;align-items:center;min-width:16px;height:16px;padding:0 4px;font-size:.625rem;font-weight:700;line-height:1;display:flex;position:absolute;inset-inline-end:-2px}.brand-logo[data-v-b6600860]{object-fit:contain;-webkit-user-select:none;user-select:none;flex-shrink:0;width:auto;display:block}.desktop-sidebar[data-v-69fbaed9]{width:var(--sidebar-width);background:var(--color-surface);border-inline-start:1px solid var(--color-border);flex-direction:column;flex-shrink:0;height:100%;padding:0;display:none;overflow-y:auto}@media (width>=768px){.desktop-sidebar[data-v-69fbaed9]{display:flex}}.desktop-sidebar__brand[data-v-69fbaed9]{height:var(--header-height);min-height:var(--header-height);max-height:var(--header-height);box-sizing:border-box;border-bottom:none;flex-shrink:0;justify-content:flex-start;align-items:center;gap:10px;padding:0 20px;display:flex}@media (width>=1200px){.desktop-sidebar__brand[data-v-69fbaed9]{padding:0 28px}}.desktop-sidebar__logo-mark[data-v-69fbaed9]{flex-shrink:0}.desktop-sidebar__title[data-v-69fbaed9]{color:var(--color-primary);font-size:1rem;font-weight:700;display:block}.desktop-sidebar__nav[data-v-69fbaed9]{flex-direction:column;flex:1;gap:4px;padding:12px 12px 0;display:flex}@media (width>=1200px){.desktop-sidebar__nav[data-v-69fbaed9]{padding:16px 16px 0}}.desktop-sidebar__item[data-v-69fbaed9]{border-radius:var(--radius-md);cursor:pointer;width:100%;color:var(--color-text-secondary);text-align:start;background:0 0;border:none;justify-content:flex-start;align-items:center;gap:12px;padding:11px 12px;transition:background .15s,color .15s;display:flex;position:relative}@media (width>=1200px){.desktop-sidebar__item[data-v-69fbaed9]{padding:11px 14px}}.desktop-sidebar__item[data-v-69fbaed9]:hover{background:var(--color-elevated);color:var(--color-text)}.desktop-sidebar__item[data-v-69fbaed9]:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.desktop-sidebar__item.active[data-v-69fbaed9]{background:var(--color-primary-soft);color:var(--color-primary);font-weight:600}.desktop-sidebar__item.active .desktop-sidebar__icon[data-v-69fbaed9]{color:var(--color-primary)}.desktop-sidebar__icon[data-v-69fbaed9]{width:22px;height:22px;color:inherit;flex-shrink:0;justify-content:center;align-items:center;display:flex}.desktop-sidebar__label[data-v-69fbaed9]{font-size:.875rem;font-weight:inherit;white-space:nowrap;display:block}.desktop-sidebar__badge[data-v-69fbaed9]{background:var(--color-danger);color:var(--color-surface);border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;min-width:20px;height:20px;margin-inline-start:auto;padding:0 4px;font-size:.6875rem;font-weight:700;display:flex}.desktop-sidebar__support[data-v-69fbaed9]{background:var(--color-primary-soft);border-radius:var(--radius-lg);flex-direction:column;gap:8px;margin:auto 12px 20px;padding:14px;display:flex}@media (width>=1200px){.desktop-sidebar__support[data-v-69fbaed9]{margin:auto 16px 24px;padding:16px}}.desktop-sidebar__support-icon[data-v-69fbaed9]{background:var(--color-primary);width:36px;height:36px;color:var(--color-surface);border-radius:50%;justify-content:center;align-items:center;display:flex}.desktop-sidebar__support-title[data-v-69fbaed9]{color:var(--color-text);font-size:.875rem;font-weight:700}.desktop-sidebar__support-text[data-v-69fbaed9]{color:var(--color-text-muted);margin:0;font-size:.6875rem;line-height:1.5}.desktop-sidebar__support-btn[data-v-69fbaed9]{border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-primary);text-align:center;margin-top:4px;padding:10px 12px;font-size:.8125rem;font-weight:600;text-decoration:none;transition:opacity .15s;display:block}.desktop-sidebar__support-btn[data-v-69fbaed9]:hover{opacity:.9}.desktop-sidebar__support-btn--disabled[data-v-69fbaed9]{opacity:.55;pointer-events:none;cursor:default}.desktop-sidebar__support-phone[data-v-69fbaed9]{text-align:center;color:var(--color-primary);direction:ltr;margin:0;font-size:.8125rem;font-weight:600}.auth-theme-toggle[data-v-3a58cb84]{color:inherit;cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;transition:color .15s;display:inline-flex}.auth-theme-toggle--floating[data-v-3a58cb84]{top:calc(12px + env(safe-area-inset-top,0px));z-index:100;width:40px;height:40px;color:var(--color-text);box-shadow:none;background:0 0;position:fixed;inset-inline-end:16px}.auth-theme-toggle--inline[data-v-3a58cb84]{width:40px;height:40px;color:inherit;flex-shrink:0;position:relative}.auth-theme-toggle[data-v-3a58cb84]:hover{color:var(--color-primary)}.user-avatar[data-v-5c562bf0]{color:inherit;background:#ffffff2e;border-radius:999px;flex-shrink:0;place-items:center;font-weight:700;display:grid;overflow:hidden}.user-avatar__img[data-v-5c562bf0]{object-fit:cover;width:100%;height:100%;display:block}.desktop-header[data-v-5f322d95]{height:var(--header-height);min-height:var(--header-height);max-height:var(--header-height);box-sizing:border-box;background:var(--color-surface);border-bottom:none;flex-shrink:0;justify-content:space-between;align-items:center;gap:24px;padding:0 28px;display:none}@media (width>=768px){.desktop-header[data-v-5f322d95]{padding:0 var(--page-padding);gap:16px;display:flex}}@media (width>=1200px){.desktop-header[data-v-5f322d95]{padding:0 var(--page-padding);gap:24px}}.desktop-header__spacer[data-v-5f322d95]{flex:1;min-width:0}.desktop-header__actions[data-v-5f322d95]{flex-shrink:0;align-items:center;gap:16px;margin-inline-start:auto;display:flex}.desktop-header__company[data-v-5f322d95]{color:var(--color-text-muted);border-inline-end:1px solid var(--color-border);padding-inline-end:8px;font-size:.8125rem;font-weight:600;display:none}@media (width>=992px){.desktop-header__company[data-v-5f322d95]{display:block}}.desktop-header__icon-btn[data-v-5f322d95]{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);width:40px;height:40px;color:var(--color-text-muted);cursor:pointer;justify-content:center;align-items:center;display:flex;position:relative}.desktop-header__notif-badge[data-v-5f322d95]{top:4px;background:var(--color-danger);min-width:18px;height:18px;color:var(--color-on-primary,#fff);border:2px solid var(--color-surface);border-radius:9px;justify-content:center;align-items:center;padding:0 4px;font-size:.625rem;font-weight:700;display:flex;position:absolute;inset-inline-end:4px}.desktop-header__user-wrap[data-v-5f322d95]{position:relative}.desktop-header__user[data-v-5f322d95]{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);cursor:pointer;align-items:center;gap:10px;padding:6px 12px 6px 8px;font-family:inherit;display:flex}.desktop-header__avatar[data-v-5f322d95]{background:var(--color-primary);color:var(--color-surface)}.desktop-header__user-name[data-v-5f322d95]{color:var(--color-text);font-size:.875rem;font-weight:600;display:none}@media (width>=1200px){.desktop-header__user-name[data-v-5f322d95]{display:block}}.desktop-header__chevron[data-v-5f322d95]{color:var(--color-text-muted);transform:rotate(-90deg)}.desktop-header__menu[data-v-5f322d95]{top:calc(100% + 6px);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);min-width:160px;box-shadow:var(--shadow-md);z-index:100;padding:6px;position:absolute;inset-inline-end:0}.desktop-header__menu button[data-v-5f322d95]{text-align:start;cursor:pointer;border-radius:var(--radius-sm);width:100%;color:var(--color-text);background:0 0;border:none;padding:10px 12px;font-family:inherit;font-size:.875rem}.desktop-header__menu button[data-v-5f322d95]:hover{background:var(--color-elevated)}.desktop-header__menu-logout[data-v-5f322d95]{color:var(--color-danger)!important}.support-widget[data-v-dfd8ae36]{z-index:110;inset-inline-end:16px;bottom:calc(16px + env(safe-area-inset-bottom,0));width:min(var(--support-pill-width,max-content), calc(100vw - 20px));pointer-events:none;grid-auto-flow:row;justify-items:stretch;row-gap:0;max-width:calc(100vw - 20px);display:grid;position:fixed}.support-widget[data-v-dfd8ae36]>*{pointer-events:auto}.support-widget--above-nav[data-v-dfd8ae36]{bottom:calc(var(--nav-height,56px) + 12px + env(safe-area-inset-bottom,0))}@media (width>=768px){.support-widget[data-v-dfd8ae36]{bottom:24px;inset-inline-end:24px}.support-widget--above-nav[data-v-dfd8ae36]{bottom:24px}}.support-widget__fab[data-v-dfd8ae36]{color:#152033;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;background:#fff;border:1px solid #1520330f;border-radius:999px;flex-shrink:0;align-items:center;gap:8px;width:100%;height:38px;padding-inline:14px 11px;font-family:inherit;font-size:.8125rem;font-weight:600;line-height:1;transition:background .15s,box-shadow .15s;display:flex;box-shadow:0 1px 2px #0f172a0d,0 8px 22px #0f172a1f}.support-widget__fab-label[data-v-dfd8ae36]{white-space:nowrap}.support-widget__fab-icon[data-v-dfd8ae36]{color:#1fc16b;flex-shrink:0;margin-inline-start:auto;display:block}.support-widget__fab[data-v-dfd8ae36]:hover:not(.support-widget__fab--dragging){box-shadow:0 2px 4px #0f172a0f,0 12px 28px #0f172a24}.support-widget__fab[data-v-dfd8ae36]:active:not(.support-widget__fab--dragging){background:#f3f5f7}.support-widget__fab[data-v-dfd8ae36]:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px}.support-widget__fab--open[data-v-dfd8ae36]{background:#f3f5f7}.support-widget__fab--dragging[data-v-dfd8ae36]{cursor:grabbing;box-shadow:0 6px 16px #0f172a1a,0 16px 36px #0f172a29}html.dark,html.dark{background:#eef1f4}.support-widget>.support-widget__panel[data-v-dfd8ae36]{inset-inline:0;width:auto;box-shadow:none;opacity:0;visibility:hidden;pointer-events:none;background:0 0;border:0;padding:0;transition:opacity .16s,visibility 0s linear .16s;position:absolute;bottom:calc(100% + 8px)}.support-widget>.support-widget__panel.support-widget__panel--open[data-v-dfd8ae36]{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .16s,visibility}.support-widget__list[data-v-dfd8ae36]{gap:8px;margin:0;padding:0;list-style:none;display:grid}.support-widget__list>li[data-v-dfd8ae36]{min-width:0;display:flex}.support-widget__link[data-v-dfd8ae36]{color:#152033;white-space:nowrap;background:#fff;border:1px solid #1520330f;border-radius:999px;flex-shrink:0;align-items:center;gap:8px;width:100%;height:38px;padding-inline:14px 11px;font-family:inherit;font-size:.8125rem;font-weight:600;line-height:1;text-decoration:none;transition:background .15s,box-shadow .15s;display:flex;box-shadow:0 1px 2px #0f172a0d,0 8px 22px #0f172a1f}.support-widget__link[data-v-dfd8ae36]:hover{box-shadow:0 2px 4px #0f172a0f,0 12px 28px #0f172a24}.support-widget__link[data-v-dfd8ae36]:active{background:#f3f5f7}.support-widget__link[data-v-dfd8ae36]:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px}.support-widget__link-label[data-v-dfd8ae36]{white-space:nowrap}.support-widget__mark[data-v-dfd8ae36]{color:#1fc16b;flex-shrink:0;margin-inline-start:auto;display:inline-flex}.support-widget__mark--badge[data-v-dfd8ae36]{color:#fff;background:#14b8a6;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px}html.dark{color:#152033;background:#eef1f4;box-shadow:0 1px 2px #00000047,0 12px 30px #0006}.btn[data-v-3628a8bb]{border-radius:var(--radius-sm);cursor:pointer;border:none;justify-content:center;align-items:center;gap:8px;font-weight:600;transition:background .15s,opacity .15s;display:inline-flex}.btn[data-v-3628a8bb]:disabled{opacity:.55;cursor:not-allowed}.btn-block[data-v-3628a8bb]{width:100%}.btn-sm[data-v-3628a8bb]{min-height:36px;padding:0 14px;font-size:.8125rem}.btn-md[data-v-3628a8bb]{min-height:var(--btn-height);padding:0 24px;font-size:.9375rem}.btn-lg[data-v-3628a8bb]{min-height:52px;padding:0 28px;font-size:1rem}.btn-primary[data-v-3628a8bb]{background:var(--color-primary);color:var(--color-surface)}.btn-primary[data-v-3628a8bb]:not(:disabled):hover{background:var(--color-primary-dark)}.btn-secondary[data-v-3628a8bb]{background:var(--color-primary-light);color:var(--color-primary)}.btn-outline[data-v-3628a8bb]{color:var(--color-primary);border:1.5px solid var(--color-primary);background:0 0}.btn-danger[data-v-3628a8bb]{background:var(--color-danger);color:var(--color-surface)}.btn-ghost[data-v-3628a8bb]{color:var(--color-text-muted);background:0 0}.btn-spinner[data-v-3628a8bb]{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:16px;height:16px;animation:.6s linear infinite spin-3628a8bb}@keyframes spin-3628a8bb{to{transform:rotate(360deg)}}.confirm-dialog[data-v-2e50e2a7]{padding:20px}.confirm-dialog__title[data-v-2e50e2a7]{margin:0 0 8px;font-size:1.0625rem;font-weight:700}.confirm-dialog__message[data-v-2e50e2a7]{color:var(--color-text-muted);margin:0;font-size:.875rem;line-height:1.7}.confirm-dialog__actions[data-v-2e50e2a7]{margin-top:20px}@media (width>=768px){.confirm-dialog__actions[data-v-2e50e2a7]{flex-direction:row;justify-content:flex-end}}.message-modal-overlay[data-v-2ec86b0d]{z-index:1200;padding:max(16px, env(safe-area-inset-top)) 16px max(16px, env(safe-area-inset-bottom));box-sizing:border-box}.message-modal[data-v-2ec86b0d]{border:1px solid var(--color-border);max-height:min(85vh,520px);box-shadow:var(--shadow-lg);flex-direction:column;padding:0;display:flex;overflow:hidden}.message-modal__head[data-v-2ec86b0d]{text-align:center;flex-direction:column;align-items:center;gap:10px;padding:20px 20px 8px;display:flex}.message-modal__icon[data-v-2ec86b0d]{border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;display:flex}.message-modal--success .message-modal__icon[data-v-2ec86b0d]{background:var(--color-success-light);color:var(--color-success)}.message-modal--error .message-modal__icon[data-v-2ec86b0d]{background:var(--color-danger-light);color:var(--color-danger)}.message-modal--warning .message-modal__icon[data-v-2ec86b0d]{background:color-mix(in srgb, var(--color-warning,#f59e0b) 18%, transparent);color:var(--color-warning,#d97706)}.message-modal--info .message-modal__icon[data-v-2ec86b0d]{background:var(--color-primary-light);color:var(--color-primary)}.message-modal__icon-fallback[data-v-2ec86b0d]{font-size:1.375rem;font-weight:800;line-height:1}.message-modal__title[data-v-2ec86b0d]{color:var(--color-text);margin:0;font-size:1.0625rem;font-weight:700}.message-modal__body[data-v-2ec86b0d]{-webkit-overflow-scrolling:touch;flex:1;min-height:0;padding:8px 20px 4px;overflow-y:auto}.message-modal__text[data-v-2ec86b0d]{color:var(--color-text-muted);text-align:center;white-space:pre-line;overflow-wrap:anywhere;margin:0;font-size:.9375rem;line-height:1.75}.message-modal__footer[data-v-2ec86b0d]{border-top:1px solid var(--color-border);flex-shrink:0;margin:0;padding:16px 20px 20px}@media (width>=768px){.message-modal[data-v-2ec86b0d]{max-width:min(420px,100vw - 48px)}.message-modal__footer[data-v-2ec86b0d] .btn{max-width:280px;margin-inline:auto}}.message-modal-fade-enter-active[data-v-2ec86b0d],.message-modal-fade-leave-active[data-v-2ec86b0d]{transition:opacity .2s}.message-modal-fade-enter-active .message-modal[data-v-2ec86b0d],.message-modal-fade-leave-active .message-modal[data-v-2ec86b0d]{transition:transform .2s}.message-modal-fade-enter-from[data-v-2ec86b0d],.message-modal-fade-leave-to[data-v-2ec86b0d]{opacity:0}.message-modal-fade-enter-from .message-modal[data-v-2ec86b0d],.message-modal-fade-leave-to .message-modal[data-v-2ec86b0d]{transform:scale(.96)}*,:before,:after,::backdrop{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 #0000;--un-ring-shadow:0 0 #0000;--un-shadow-inset: ;--un-shadow:0 0 #0000;--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:#93c5fd80;--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: }.btn-block{width:100%}.page-shell{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.sticky{position:sticky}.static{position:static}.isolate{isolation:isolate}.grid{display:grid}.inline-grid{display:inline-grid}.m-0{margin:0}.m4\.5{margin:1.125rem}.mb-3{margin-bottom:.75rem}.mt-1{margin-top:.25rem}.inline,.empty-inline:empty{display:inline}.block{display:block}.inline-block{display:inline-block}.contents{display:contents}.hidden{display:none}.h-10{height:2.5rem}.h1{height:.25rem}.h2{height:.5rem}.h3{height:.75rem}.h4{height:1rem}.min-w-0{min-width:0}.w-10{width:2.5rem}.flex{display:flex}.inline-flex{display:inline-flex}.flex-1{flex:1}.flex-shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.table{display:table}.border-collapse{border-collapse:collapse}.transform{transform:translateX(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotateZ(var(--un-rotate-z)) skewX(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.resize{resize:both}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.b,.border{border-width:1px}.border-t{border-top-width:1px}.border-\[var\(--color-border\)\]{border-color:var(--color-border)}.rounded-\[var\(--radius-md\)\]{border-radius:var(--radius-md)}.rounded-full{border-radius:9999px}.bg-\[var\(--color-primary-soft\)\]{background-color:var(--color-primary-soft)}.bg-\[var\(--color-surface\)\]{background-color:var(--color-surface)}.p-4{padding:1rem}.px{padding-left:1rem;padding-right:1rem}.pt-3{padding-top:.75rem}.text-base{font-size:1rem;line-height:1.5rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.text-\[var\(--color-danger\)\]{color:var(--color-danger)}.text-\[var\(--color-primary\)\]{color:var(--color-primary)}.text-\[var\(--color-success\)\]{color:var(--color-success)}.text-\[var\(--color-text-muted\)\],.text-muted{color:var(--color-text-muted)}.text-\[var\(--color-text\)\]{color:var(--color-text)}.font-medium{font-weight:500}.font-semibold{font-weight:600}.leading-relaxed{line-height:1.625}.tabular-nums{--un-numeric-spacing:tabular-nums;font-variant-numeric:var(--un-ordinal) var(--un-slashed-zero) var(--un-numeric-figure) var(--un-numeric-spacing) var(--un-numeric-fraction)}.underline{text-decoration-line:underline}.tab{tab-size:4}.text-shadow{--un-text-shadow:0 0 1px var(--un-text-shadow-color,#0003),0 0 1px var(--un-text-shadow-color,#0100051a);text-shadow:var(--un-text-shadow)}.outline{outline-style:solid}.blur{--un-blur:blur(8px);filter:var(--un-blur) var(--un-brightness) var(--un-contrast) var(--un-drop-shadow) var(--un-grayscale) var(--un-hue-rotate) var(--un-invert) var(--un-saturate) var(--un-sepia)}.filter{filter:var(--un-blur) var(--un-brightness) var(--un-contrast) var(--un-drop-shadow) var(--un-grayscale) var(--un-hue-rotate) var(--un-invert) var(--un-saturate) var(--un-sepia)}.backdrop-filter{-webkit-backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia);backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter,backdrop-filter;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease,.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}@font-face{font-family:IRANSans;src:url(/assets/IRANSansWeb\(FaNum\)-BLA2CtIC.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:IRANSans;src:url(/assets/IRANSansWeb\(FaNum\)_Light-B637MNLG.woff2)format("woff2");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:IRANSans;src:url(/assets/IRANSansWeb\(FaNum\)_UltraLight-hW-WDKY9.woff2)format("woff2");font-weight:200;font-style:normal;font-display:swap}@font-face{font-family:IRANSans;src:url(/assets/IRANSansWeb\(FaNum\)_Medium-C2CKjrKB.woff2)format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:IRANSans;src:url(/assets/IRANSansWeb\(FaNum\)_Medium-C2CKjrKB.woff2)format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:IRANSans;src:url(/assets/IRANSansWeb\(FaNum\)_Bold-C8urhp07.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:IRANSans;src:url(/assets/IRANSansWeb\(FaNum\)_Black-BFAfOkt4.woff2)format("woff2");font-weight:900;font-style:normal;font-display:swap}:root{--color-primary:#091d36;--color-primary-hover:#061426;--color-primary-soft:#e9edf2;--color-primary-dark:#04101f;--color-primary-light:var(--color-primary-soft);--color-primary-rgb:9, 29, 54;--color-accent-navy:#091d36;--color-accent-navy-rgb:9, 29, 54;--color-success:#1b8a5a;--color-success-light:#eaf8f1;--color-success-soft:#eaf8f1;--color-warning:#e8a317;--color-warning-light:#fff6e5;--color-danger:#dc3545;--color-danger-light:#fee2e2;--color-purple:#7c3aed;--color-purple-light:#ede9fe;--color-info:#3b6fa0;--color-info-light:#eef3f7;--color-bg:#f3f5f7;--color-page-background:#f3f5f7;--color-shell-bg:#f3f5f7;--color-surface:#fff;--color-border:#dfe4ea;--color-text:#121821;--color-text-primary:#121821;--color-text-muted:#6b7280;--color-text-secondary:#6b7280;--color-tab-inactive-bg:#e8ecf1;--color-tab-inactive-text:#64748b;--color-summary-bg:#e8ecf1;--color-elevated:#fff;--color-brand-warm:#f3ece3;--color-brand-warm-text:#1a202c;--color-brand-warm-muted:#718096;--color-level-gold:#c9a227;--color-level-gold-soft:#f7efd6;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--shadow-sm:none;--shadow-md:none;--shadow-card:none;--shadow-frame:0 8px 32px #0f172a1a;--nav-height:64px;--page-padding:16px;--page-padding-tablet:20px;--page-padding-desktop:28px;--page-gap:12px;--content-max-width:1360px;--form-max-width:520px;--auth-form-max-width:440px;--summary-panel-width:320px;--sidebar-width:240px;--sidebar-width-compact:72px;--header-height:70px;--app-shell-breakpoint:768px;--font-family:"IRANSans", "Tahoma", sans-serif;--btn-height:48px;--desktop-breakpoint:1200px}html.dark{--color-primary:#7d8695;--color-primary-hover:#aeb6c2;--color-primary-soft:#27303d;--color-primary-dark:#aeb6c2;--color-primary-light:var(--color-primary-soft);--color-primary-rgb:125, 134, 149;--color-accent-navy:#7d8695;--color-accent-navy-rgb:125, 134, 149;--color-success:#3dd68c;--color-success-light:#123528;--color-success-soft:#123528;--color-warning:#f5c14a;--color-warning-light:#3a2f14;--color-danger:#f47979;--color-danger-light:#3f1d22;--color-purple:#b39afa;--color-purple-light:#2a2144;--color-info:#7b9cff;--color-info-light:#1b2740;--color-bg:#0b0f14;--color-page-background:#0b0f14;--color-shell-bg:#0b0f14;--color-surface:#0b0f14;--color-elevated:#0b0f14;--color-border:#2a3444;--color-text:#fff;--color-text-primary:#fff;--color-text-muted:#9aa8bc;--color-text-secondary:#9aa8bc;--color-tab-inactive-bg:#1a2230;--color-tab-inactive-text:#9aa8bc;--color-summary-bg:#1a2230;--color-brand-warm:#2a241c;--color-brand-warm-text:#f3ebe0;--color-brand-warm-muted:#b9a88d;--color-level-gold:#e0c35a;--color-level-gold-soft:#3a3420;--shadow-sm:0 1px 2px #00000073;--shadow-md:0 8px 24px #00000073;--shadow-card:0 1px 2px #00000059, 0 8px 24px #00000059;--shadow-frame:0 12px 40px #00000080}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;height:100%;font-size:16px;overflow:hidden}body{font-family:var(--font-family);background:var(--color-shell-bg);color:var(--color-text);direction:rtl;height:100%;margin:0;line-height:1.5;overflow:hidden}#app{height:100dvh;overflow:hidden}*{scrollbar-width:none;-ms-overflow-style:none}::-webkit-scrollbar{width:0;height:0;display:none}.scroll-x{-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;scroll-behavior:smooth;scrollbar-width:none;-ms-overflow-style:none;overflow:auto hidden}.scroll-x::-webkit-scrollbar{width:0;height:0;display:none}a{color:var(--color-primary);text-decoration:none}button,input,select,textarea{font-family:inherit}input:not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=button]):not([type=reset]):not([type=file]):not([type=hidden]):not([type=image]):not([type=range]):not([type=color]),textarea,select,.persian-date-input__trigger,.time-input__trigger,.app-select__trigger,.search-field__input{background-color:#0000}input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield;text-align:right}.page{background:var(--color-bg);min-height:0;color:var(--color-text);flex-direction:column;flex:1;padding:0;display:flex;overflow:hidden}.page__scroll{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;flex:1;min-height:0;overflow-y:auto}.page__scroll--with-nav{padding-bottom:calc(12px + env(safe-area-inset-bottom,0px))}.page-title{color:var(--color-text);margin:0 0 4px;font-size:1.25rem;font-weight:700;line-height:1.35}.page-subtitle{color:var(--color-text-muted);margin:0;font-size:.875rem;line-height:1.5}.card{background:var(--color-elevated);border-radius:var(--radius-md);border:1px solid var(--color-border);box-shadow:none;color:var(--color-text);padding:16px}.auth-page{background:0 0}.auth-top{padding:8px var(--page-padding);background:var(--color-surface);grid-template-columns:40px 1fr 40px;align-items:center;gap:4px;display:grid}.auth-top__title{text-align:center;color:var(--color-text);margin:0;font-size:1rem;font-weight:700}.auth-top .icon-btn{cursor:pointer;width:40px;height:40px;color:var(--color-text);background:0 0;border:none;border-radius:12px;place-items:center;padding:0;display:grid}.auth-body{padding:20px var(--page-padding) 32px;background:0 0;flex-direction:column;gap:16px;display:flex}.auth-lead{color:var(--color-text-muted);margin:0;font-size:.875rem;line-height:1.6}.auth-page .card{width:100%;max-width:var(--auth-form-max-width);box-shadow:none;background:0 0;border:none;margin-inline:auto;padding:0}.auth-switch{width:100%;max-width:var(--auth-form-max-width);text-align:center;color:var(--color-text-muted);margin:0 auto;font-size:.875rem}.auth-switch a{color:var(--color-primary);font-weight:700}.auth-page .input,.auth-page .job-select,.auth-page .otp-box{border:1px solid #eeeef1;border-radius:12px}.auth-page .btn{border-radius:12px}.card+.card{margin-top:var(--page-gap)}.alert{border-radius:var(--radius-sm);padding:12px 14px;font-size:.875rem;line-height:1.5}.alert-info{background:var(--color-primary-light);color:var(--color-primary);border:1px solid #cbd5e1}.alert-warning{background:var(--color-warning-light);color:#9a3412;border:1px solid #fed7aa}.alert-success{background:var(--color-success-light);color:#155724;border:1px solid #c3e6cb}.alert-danger{background:var(--color-danger-light);color:#991b1b;border:1px solid #fecaca}.form-group{margin-bottom:16px}.form-label{color:var(--color-text);margin-bottom:6px;font-size:.875rem;font-weight:600;display:block}.form-hint{color:var(--color-text-muted);margin-top:4px;font-size:.75rem}.divider{background:var(--color-border);height:1px;margin:16px 0}.text-muted{color:var(--color-text-muted)}.text-sm{font-size:.875rem}.text-center{text-align:center}.mt-2{margin-top:8px}.mt-4{margin-top:16px}.mb-4{margin-bottom:16px}.flex-between{justify-content:space-between;align-items:center;gap:8px;display:flex}.sticky-footer{bottom:calc(var(--nav-height) + 12px);z-index:50;width:100%;max-width:100%;padding-inline:var(--page-padding);box-sizing:border-box;position:fixed;inset-inline:0}.sticky-footer-inner{max-width:100%}.no-nav .page{padding-bottom:0}.no-nav .sticky-footer{bottom:0}.dialog-overlay{z-index:200;background:#0f172a66;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.dialog-overlay .dialog{width:100%;max-width:400px}.dialog-actions{flex-direction:column;gap:8px;margin-top:16px;display:flex}.desktop-only,.desktop-only-flex,.desktop-only-grid{display:none!important}.mobile-hidden{display:block}.desktop-hidden{display:none!important}@media (width>=768px){.mobile-only,.mobile-block{display:none!important}.desktop-only{display:block!important}.mobile-hidden{display:none!important}.desktop-hidden{display:block!important}.desktop-only-flex{display:flex!important}.desktop-only-grid{display:grid!important}.page{background:0 0;padding:0}.page__scroll--with-nav{padding-bottom:0}}.page-fade-enter-active,.page-fade-leave-active,.page-forward-enter-active,.page-forward-leave-active,.page-back-enter-active,.page-back-leave-active{transition:opacity .22s,transform .22s}.page-fade-enter-from,.page-fade-leave-to{opacity:0}.page-forward-enter-from{opacity:0;transform:translate(-18px)}.page-forward-leave-to{opacity:0;transform:translate(12px)}.page-back-enter-from{opacity:0;transform:translate(18px)}.page-back-leave-to{opacity:0;transform:translate(-12px)}@media (prefers-reduced-motion:reduce){.page-fade-enter-active,.page-fade-leave-active,.page-forward-enter-active,.page-forward-leave-active,.page-back-enter-active,.page-back-leave-active{transition:none}}.app-shell{background:var(--color-shell-bg);width:100%;height:100dvh;display:flex;overflow:hidden}.app-layout{flex-direction:row;width:100%;height:100%;min-height:0;display:flex}.app-frame{background:var(--color-bg);width:100%;height:100%;color:var(--color-text);flex-direction:column;flex:1;min-width:0;display:flex;overflow:hidden}.app-main,.app-main__content{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.app-content{width:100%;min-height:0;max-width:var(--content-max-width);flex-direction:column;flex:1;margin-inline:auto;padding-inline:0;display:flex;position:relative}.page-transition{flex-direction:column;flex:1;width:100%;min-height:0;display:flex;overflow:hidden}.app-shell--with-nav{justify-content:stretch}.app-shell--with-nav .app-frame{max-width:100%;box-shadow:none;border-radius:0;margin:0}@media (width>=768px){.app-shell--with-nav,.app-shell--with-nav .app-frame{background:var(--color-page-background)}.app-shell--with-nav .app-layout{position:relative}.app-shell--with-nav .app-layout:after{content:"";top:var(--header-height);background:var(--color-border);z-index:30;pointer-events:none;height:1px;position:absolute;inset-inline:0}.app-shell--with-nav .app-main__content{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;overflow:hidden auto}.app-shell--with-nav .app-content,.app-shell--with-nav .page-transition{flex:1 0 auto;min-height:min-content;overflow:visible}.app-shell--with-nav .page-transition>*{flex:1 0 auto;height:auto;min-height:min-content;max-height:none;overflow:visible}}.app-shell--no-nav{background:var(--color-page-background);justify-content:center;align-items:center;padding:16px}.app-shell--no-nav .app-layout{max-width:var(--form-max-width);width:100%;height:auto;min-height:0;max-height:calc(100dvh - 32px);overflow:hidden}.app-shell--no-nav .app-frame{max-width:var(--form-max-width);border-radius:var(--radius-lg);width:100%;height:auto;min-height:0;max-height:calc(100dvh - 32px);box-shadow:var(--shadow-frame);background:var(--color-surface);overscroll-behavior:contain;-webkit-overflow-scrolling:touch;overflow:hidden auto}.app-shell--no-nav .app-main,.app-shell--no-nav .app-main__content,.app-shell--no-nav .app-content,.app-shell--no-nav .page-transition{flex:1 0 auto;height:auto;min-height:min-content;overflow:visible}.app-shell--no-nav .app-content{padding-inline:var(--page-padding)}.app-shell--no-nav .page{background:0 0;min-height:auto;overflow:visible}.app-shell--no-nav.app-shell--wide .app-layout,.app-shell--no-nav.app-shell--wide .app-frame{max-width:min(var(--content-max-width), calc(100vw - 32px))}.app-shell--no-nav.app-shell--wide .app-frame{background:var(--color-bg)}.app-shell--immersive{background:#efe8df;justify-content:stretch;align-items:stretch;padding:0}.app-shell--immersive .app-layout,.app-shell--immersive .app-frame{width:100%;max-width:none;height:100%;max-height:none;box-shadow:none;background:0 0;border-radius:0;overflow:hidden}.app-shell--immersive .app-main,.app-shell--immersive .app-main__content,.app-shell--immersive .app-content,.app-shell--immersive .page-transition{flex:1;height:100%;min-height:0;overflow:hidden}.app-shell--immersive .page-transition{flex-direction:column;display:flex}.app-shell--immersive .page-transition>*{flex:1;height:100%;min-height:0}.app-shell--immersive .app-content{max-width:none;padding-inline:0}.app-shell--immersive .page{background:0 0;height:100%;min-height:0;overflow:hidden}@media (width>=768px){.app-shell--immersive .page{flex:1;max-width:none;height:100%;min-height:0;margin:0;padding:0;overflow:hidden}.app-shell--no-nav{padding:24px}.app-shell--no-nav.app-shell--immersive{background:#141210;justify-content:center;align-items:center;padding:0}.app-shell--no-nav.app-shell--immersive .app-layout,.app-shell--no-nav.app-shell--immersive .app-frame{width:min(100%,430px);max-width:430px;height:100%;max-height:100dvh;box-shadow:none;border-radius:0;margin-inline:auto}.app-shell--no-nav .app-layout,.app-shell--no-nav .app-frame{max-height:calc(100dvh - 48px)}.app-shell--no-nav.app-shell--wide .app-layout,.app-shell--no-nav.app-shell--wide .app-frame{max-width:min(var(--content-max-width), calc(100vw - 48px))}:root{--page-padding:var(--page-padding-tablet);--nav-height:0px}html,body{height:auto;overflow:auto}#app{height:100dvh;overflow:hidden}*{scrollbar-width:thin;scrollbar-color:#cbd5e1 transparent}::-webkit-scrollbar{width:6px;height:6px;display:block}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:999px}.sticky-footer{max-width:min(var(--content-max-width), calc(100% - 2 * var(--page-padding)));bottom:0}.no-nav .sticky-footer{bottom:0}.auth-body{align-items:center;padding-block:32px 48px}.auth-lead,.auth-page .card,.auth-switch{width:100%;max-width:var(--auth-form-max-width)}.company-select-page__list{grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:20px;display:grid}.company-brand-card{min-height:220px}.catalog-list{gap:var(--page-gap);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.product-list{gap:var(--page-gap);grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;display:grid}.product-page__scroll{padding-bottom:88px}.settlement-options,.mode-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;max-width:720px;margin-inline:auto;display:grid}.company-select-page{max-width:var(--content-max-width);width:100%;padding-inline:var(--page-padding);margin-inline:auto}.company-select-page__header{max-width:560px;margin-inline:auto}.catalog-page .page__scroll,.orders-page__scroll,.product-page .product-page__scroll{max-width:var(--content-max-width);width:100%;margin-inline:auto}.cart-page{max-width:var(--content-max-width);width:100%;padding-inline:var(--page-padding);margin-inline:auto}.cart-page__body{grid-template-rows:auto 1fr;grid-template-columns:minmax(0,1fr) minmax(260px,300px);align-items:start;gap:16px 20px;display:grid}.cart-page__company{grid-column:1/-1;margin-bottom:0;font-size:.9375rem}.cart-page__scroll{grid-column:1;max-height:none;overflow:visible}.cart-page__footer{box-shadow:var(--shadow-md);border-radius:var(--radius-md);border-top:none;border:1px solid var(--color-border);grid-area:1/2/-1;margin:0;padding:16px;position:sticky;top:16px}.cart-table__head{position:static}.check-list-page{max-width:var(--content-max-width);width:100%;padding-inline:var(--page-padding);margin-inline:auto}.check-list-page__scroll{max-width:var(--content-max-width);width:100%;margin-inline:auto}.summary-cards{gap:16px}.checks-list{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:12px;display:grid}.rass-panel{max-width:480px;margin-inline:auto}.profile-page__scroll{max-width:var(--content-max-width);width:100%;margin-inline:auto}.profile-menu{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.profile-menu__item{border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-sm)}.order-detail-page__body{-webkit-overflow-scrolling:touch;width:100%;max-width:none;margin-inline:0;overflow-y:auto}.order-detail-page__footer{width:100%;max-width:none;margin-inline:0}.checkout-page__scroll,.cash-page__scroll,.check-mode-page__scroll{max-width:var(--form-max-width);width:100%;margin-inline:auto}.cash-page{max-width:var(--content-max-width);width:100%;margin-inline:auto}.cash-page__footer{max-width:var(--form-max-width);width:100%;box-shadow:none;border-top:none;grid-template-columns:1fr 1fr;gap:12px;margin-inline:auto;padding-top:16px;display:grid}.accounts-panel{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.bank-card+.bank-card,.cash-page__submit{margin-top:0}.order-info-card{max-width:520px;margin-inline:auto}.profile-edit-page .page__scroll{max-width:var(--form-max-width);width:100%;margin-inline:auto}.success-page__scroll{max-width:var(--form-max-width);flex-direction:column;align-items:center;width:100%;margin-inline:auto;display:flex}.dialog-overlay .dialog,.dialog-overlay .card.dialog{width:100%;max-width:480px}.dialog-actions{flex-direction:row;justify-content:flex-end}}@media (width>=1200px){:root{--page-padding:var(--page-padding-desktop)}.catalog-list{grid-template-columns:repeat(3,minmax(0,1fr))}.checks-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1440px){.product-list{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width>=1920px){:root{--content-max-width:1120px}}@media (width>=768px){:root{--page-padding:var(--page-padding-tablet);--nav-height:0px}.page{padding:20px var(--page-padding-tablet) 28px;max-width:var(--content-max-width);background:0 0;flex:1 0 auto;width:100%;min-height:auto;margin-inline:auto;overflow:visible}.page__scroll{flex:none;min-height:auto;overflow:visible}.page__scroll--with-nav{padding-bottom:0}.page-head{margin-bottom:20px}.page-head__title{color:var(--color-text);margin:0 0 4px;font-size:1.25rem;font-weight:700}.page-head__subtitle{color:var(--color-text-muted);margin:0;font-size:.875rem}.orders-page__desktop-head{margin-bottom:20px}.orders-page__desktop-title{color:var(--color-text);margin:0 0 6px;font-size:1.375rem;font-weight:700}.orders-page__desktop-subtitle{color:var(--color-text-muted);margin:0;font-size:.875rem}.orders-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:20px;display:grid}.orders-stat-card{background:var(--color-surface);border-radius:var(--radius-md);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);flex-direction:column;align-items:stretch;gap:0;min-height:0;padding:16px 18px 14px;display:flex}.orders-stat-card__head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;display:flex}.orders-stat-card__label{font-size:.8125rem;font-weight:600;line-height:1.4}.orders-stat-card__label--total,.orders-stat-card__label--review{color:var(--color-text)}.orders-stat-card__label--active{color:#ea580c}.orders-stat-card__label--done{color:var(--color-success)}.orders-stat-card__value{color:var(--color-text);font-variant-numeric:tabular-nums;margin:0 0 12px;font-size:1.75rem;font-weight:700;line-height:1.15}.orders-stat-card__link{color:var(--color-primary);cursor:pointer;text-underline-offset:3px;background:0 0;border:none;align-self:flex-start;margin-top:auto;padding:0;font-family:inherit;font-size:.8125rem;font-weight:600;text-decoration:underline}.orders-stat-card__link:hover{color:var(--color-primary-hover)}.orders-stat-card__icon{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.orders-stat-card__icon--total,.orders-stat-card__icon--review{background:var(--color-primary-soft);color:var(--color-primary)}.orders-stat-card__icon--active{background:var(--color-warning-light);color:#ea580c}.orders-stat-card__icon--done{background:var(--color-success-soft);color:var(--color-success)}.orders-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.orders-toolbar__actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.orders-toolbar__filter-btn{border-radius:var(--radius-sm);background:var(--color-primary);color:#fff;cursor:pointer;white-space:nowrap;border:none;align-items:center;gap:8px;height:40px;padding:0 18px;font-family:inherit;font-size:.875rem;font-weight:600;display:inline-flex}.orders-toolbar__filter-btn:hover{background:var(--color-primary-hover)}.orders-toolbar__pills{flex-wrap:wrap;flex:1;justify-content:flex-end;align-items:center;gap:8px;min-width:0;display:flex}.orders-filter-pill{border:1px solid var(--color-border);background:var(--color-surface);height:36px;color:var(--color-text-muted);cursor:pointer;white-space:nowrap;border-radius:999px;padding:0 16px;font-family:inherit;font-size:.8125rem;font-weight:500;transition:background .15s,color .15s,border-color .15s}.orders-filter-pill:hover{color:var(--color-text);border-color:#cbd5e1}.orders-filter-pill--active{background:var(--color-primary-soft);color:var(--color-primary);border-color:#c7d7ff;font-weight:600}.orders-table-wrap{background:var(--color-surface);border-radius:var(--radius-md);border:1px solid var(--color-border);box-shadow:var(--shadow-card);overflow:hidden}.orders-table-scroll{overflow-x:auto}.orders-table{border-collapse:collapse;width:100%;min-width:860px;font-size:.875rem}.orders-table th{text-align:start;color:var(--color-text-muted);background:var(--color-bg);border-bottom:1px solid var(--color-border);white-space:nowrap;padding:14px 16px;font-size:.8125rem;font-weight:600}.orders-table td{border-bottom:1px solid var(--color-border);color:var(--color-text);vertical-align:middle;background:var(--color-surface);padding:16px}.orders-table tr:last-child td{border-bottom:none}.orders-table tbody tr:hover td{background:var(--color-elevated)}.orders-table__number{color:var(--color-text);white-space:nowrap;font-weight:700}.orders-table__fabric{max-width:240px;font-weight:600;line-height:1.45}.orders-table__amount{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}.orders-table__date{color:var(--color-text-muted);white-space:nowrap;font-size:.8125rem}.orders-table__actions{align-items:center;gap:8px;display:flex}.orders-table__action{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-primary);cursor:pointer;white-space:nowrap;padding:7px 16px;font-family:inherit;font-size:.8125rem;font-weight:600}.orders-table__action:hover{background:var(--color-primary-soft);border-color:#c7d7ff}.orders-table__menu{border-radius:var(--radius-sm);width:34px;height:34px;color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:flex}.orders-table__menu:hover{background:var(--color-elevated);color:var(--color-text)}.orders-pagination{border-top:1px solid var(--color-border);color:var(--color-text-muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:14px 16px;font-size:.8125rem;display:flex}.orders-pagination__summary{white-space:nowrap}.orders-pagination__controls{align-items:center;gap:4px;display:flex}.orders-pagination__arrow{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);cursor:pointer;width:32px;height:32px;color:var(--color-text);justify-content:center;align-items:center;padding:0;display:flex}.orders-pagination__arrow:disabled{opacity:.4;cursor:not-allowed}.orders-pagination__arrow:not(:disabled):hover{border-color:var(--color-primary);color:var(--color-primary)}.orders-pagination__arrow-icon--prev{transform:scaleX(-1)}.orders-pagination__arrow-icon--next{transform:none}.orders-pagination__ellipsis{text-align:center;min-width:24px;color:var(--color-text-muted)}.orders-pagination__page{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);cursor:pointer;min-width:32px;height:32px;color:var(--color-text);padding:0 6px;font-family:inherit;font-size:.8125rem}.orders-pagination__page:hover:not(.orders-pagination__page--active){border-color:var(--color-primary);color:var(--color-primary)}.orders-pagination__page--active{background:var(--color-primary);border-color:var(--color-primary);color:#fff;font-weight:600}.product-page__layout{grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:24px;display:grid}.product-page__main{min-width:0}.product-page__sidebar{position:sticky;top:16px}.cart-summary-panel{background:var(--color-surface);border-radius:var(--radius-md);border:1px solid var(--color-border);box-shadow:var(--shadow-card);padding:20px}.cart-summary-panel__title{color:var(--color-text);border-bottom:1px solid var(--color-border);margin:0 0 16px;padding-bottom:12px;font-size:.9375rem;font-weight:700}.cart-summary-panel__row{justify-content:space-between;align-items:center;padding:8px 0;font-size:.875rem;display:flex}.cart-summary-panel__row span:first-child{color:var(--color-text-muted)}.cart-summary-panel__row strong{color:var(--color-text)}.cart-summary-panel__btn{margin-top:16px}.product-page__scroll{padding-bottom:0}.product-page .sticky-footer{display:none}.product-list{grid-template-columns:repeat(2,minmax(0,1fr))}.cart-page{max-width:var(--content-max-width);padding:20px var(--page-padding-tablet) 28px;background:0 0;margin-inline:auto}.cart-page__desktop-title{margin:0 0 16px;font-size:1.25rem;font-weight:700}.cart-page__body{grid-template-columns:minmax(0,1fr) minmax(280px,320px);align-items:start;gap:20px 24px;display:grid}.cart-page__company{grid-column:1/-1}.order-detail-page{max-width:none;padding:24px var(--page-padding) 32px;background:0 0;height:100%;margin-inline:0;overflow:hidden}.order-detail-back{color:var(--color-primary);cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;margin-bottom:12px;padding:0;font-family:inherit;font-size:.875rem;font-weight:600;display:inline-flex}.company-select-page{max-width:var(--content-max-width);padding:24px var(--page-padding-desktop);background:0 0;margin-inline:auto}.catalog-page{background:0 0}.page.calite-detail,.page.calite-hub{background:#f4f0ed;max-width:none;padding:0;overflow:visible}.catalog-list{grid-template-columns:repeat(3,minmax(0,1fr))}.profile-page{background:0 0}.profile-hero{border-radius:var(--radius-md);margin-inline:0}}@media (width>=1200px){:root{--page-padding:var(--page-padding-desktop)}.page{padding:24px var(--page-padding-desktop) 32px}.page.calite-detail,.page.calite-hub{padding:0}.orders-stats{gap:16px;margin-bottom:24px}.orders-page__desktop-head{margin-bottom:24px}.orders-toolbar{margin-bottom:20px}.catalog-list{grid-template-columns:repeat(3,minmax(0,1fr))}.product-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=768px){.desktop-page{width:100%;min-height:auto;max-width:var(--content-max-width);padding:20px var(--page-padding) 28px;box-sizing:border-box;background:0 0;flex-direction:column;flex:1 0 auto;margin-inline:auto;display:flex}.desktop-page__head{margin-bottom:20px}.desktop-page__title{color:var(--color-text);margin:0 0 6px;font-size:1.375rem;font-weight:700}.desktop-page__subtitle{color:var(--color-text-muted);margin:0;font-size:.875rem}.desktop-two-col{grid-template-columns:minmax(0,1fr);align-items:start;gap:24px;display:grid}.desktop-two-col__main{min-width:0}.desktop-summary-panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-card);padding:20px;position:sticky;top:16px}.desktop-summary-panel__title{border-bottom:1px solid var(--color-border);margin:0 0 16px;padding-bottom:12px;font-size:.9375rem;font-weight:700}.desktop-summary-panel__row{justify-content:space-between;align-items:center;gap:12px;padding:8px 0;font-size:.875rem;display:flex}.desktop-summary-panel__row span:first-child{color:var(--color-text-muted)}.desktop-summary-panel__row strong{color:var(--color-text);font-variant-numeric:tabular-nums}.desktop-summary-panel__action{margin-top:16px}.desktop-table-wrap{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-card);width:100%;min-width:0;overflow:hidden}.desktop-table-scroll{-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;overflow-x:auto}.desktop-table{border-collapse:collapse;width:100%;min-width:560px;font-size:.875rem}.desktop-table th{text-align:start;color:var(--color-text-muted);background:var(--color-bg);border-bottom:1px solid var(--color-border);white-space:nowrap;padding:12px 16px;font-size:.8125rem;font-weight:600}.desktop-table td{border-bottom:1px solid var(--color-border);color:var(--color-text);vertical-align:middle;background:var(--color-surface);padding:14px 16px}.desktop-table tbody tr:last-child td{border-bottom:none}.desktop-table tbody tr:hover td{background:var(--color-elevated)}.desktop-grid-2{grid-template-columns:repeat(2,minmax(280px,1fr));gap:16px;display:grid}.desktop-grid-3{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.desktop-grid-4{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.desktop-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.desktop-toolbar__actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.desktop-btn-compact{min-width:120px;width:auto!important;padding-inline:20px!important}.desktop-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.desktop-form-grid__full{grid-column:1/-1}.desktop-checkout-shell{width:100%;max-width:var(--content-max-width);padding:20px var(--page-padding) 28px;box-sizing:border-box;margin-inline:auto}.desktop-settlement-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;width:100%;max-width:none;margin-inline:0;display:grid}.desktop-company-grid{grid-template-columns:repeat(2,minmax(280px,400px));justify-content:center;gap:20px;width:100%;max-width:900px;margin-inline:auto;display:grid}}@media (width>=1200px){.desktop-page,.desktop-checkout-shell{padding:24px var(--page-padding) 32px}.desktop-page__head{margin-bottom:24px}.desktop-two-col:has(>.desktop-summary-panel){grid-template-columns:minmax(0, 1fr) var(--summary-panel-width,320px)}.desktop-grid-3{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.desktop-grid-4{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}}@media (width>=1440px){.desktop-grid-3{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width<=467px){:root{--header-compact-control:36px}.page-nav{grid-template-columns:var(--header-compact-control) minmax(0, 1fr) minmax(0, auto);padding-inline:10px;column-gap:4px;margin-bottom:4px;padding-top:6px}.page-nav .nav-btn{width:var(--header-compact-control);height:var(--header-compact-control)}.page-nav__title{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.9375rem;overflow:hidden}.page-nav__trailing{min-height:var(--header-compact-control);max-width:calc(var(--header-compact-control) * 2 + 4px);gap:2px}.page-nav__trailing .auth-theme-toggle--inline{display:none}.page-header{padding-inline:10px;align-items:center;gap:8px;margin-bottom:12px;padding-top:6px}.page-header .back-btn{width:var(--header-compact-control);height:var(--header-compact-control)}.page-header__trailing .auth-theme-toggle--inline{display:none}.page-title{text-overflow:ellipsis;white-space:nowrap;font-size:1.0625rem;overflow:hidden}.page-subtitle{text-overflow:ellipsis;white-space:nowrap;font-size:.8125rem;overflow:hidden}.home-header{gap:4px;padding:6px 10px 4px}.home-header__user{gap:8px}.home-header__welcome{display:none}.home-header__hello{text-overflow:ellipsis;white-space:nowrap;font-size:.8125rem;line-height:1.3;overflow:hidden}.home-header__actions .auth-theme-toggle--inline{display:none}.home-header .icon-btn{width:var(--header-compact-control);height:var(--header-compact-control);border-radius:10px}.nav-filter,.nav-add-btn{width:var(--header-compact-control);height:var(--header-compact-control)}.page-nav__trailing .edit-btn--compact{width:var(--header-compact-control);height:var(--header-compact-control);justify-content:center;align-items:center;padding:0;display:inline-flex}.page-nav__trailing .edit-btn--compact .edit-btn__label{display:none}.page-nav__trailing .edit-btn--compact svg{display:block}} diff --git a/dist/assets/index-CE4Fw0WE.js b/dist/assets/index-CE4Fw0WE.js new file mode 100644 index 0000000..2b53a08 --- /dev/null +++ b/dist/assets/index-CE4Fw0WE.js @@ -0,0 +1,2 @@ +const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/WelcomeView-dH4aiNDy.js","assets/_plugin-vue_export-helper-1xMDlcEE.js","assets/nademitex-auth-logo-CQhPwje_.js","assets/WelcomeView-2wVBLEk1.css","assets/LoginView-CN1LsC3t.js","assets/BasicIcon-DPmc0iaK.js","assets/BasicIcon-QF_b9Svq.css","assets/format-C72AoJ2H.js","assets/validation-Duyyve7l.js","assets/AuthShell-prz1TrpO.js","assets/IconChevronBack-BsHmfODG.js","assets/AuthShell-C2CigAry.css","assets/FormErrorBanner-Ud1D04xf.js","assets/FormErrorBanner-Hje8L-00.css","assets/IconPhone-BSof4l2r.js","assets/formErrors-DglFjYkZ.js","assets/LoginView-53ZsC6o4.css","assets/RegisterView-BXt1mR93.js","assets/IconProfile-ginWFJfQ.js","assets/RegisterView-C8h_ajs0.css","assets/OtpView-DSgorpHY.js","assets/dist-U-AqZ6hP.js","assets/OtpView-BAQ3aimw.css","assets/HomeView-BgFl9KRb.js","assets/dist-Bc4P4ngC.js","assets/http-CU_N-R2R.js","assets/PageSkeleton-DYdjm4l9.js","assets/PageSkeleton-CaQ4bDKV.css","assets/crm-CgnSby61.js","assets/pinia-BK9B9Wwf.js","assets/useGoBack-BrwZYRKb.js","assets/useTouchSwipe-C8fUyAcQ.js","assets/bannerLink-BW8t2Oqp.js","assets/IconBookmark-CQq-TOS-.js","assets/IconHeart-CvzbNH_T.js","assets/AddressCompletionModal-CtlERD8F.js","assets/catalogRequests-COPPKp3x.js","assets/addresses-tV-zgZYG.js","assets/AddressCompletionModal-CRKRndkm.css","assets/productAvailability-B5nVr_sJ.js","assets/HomeView-Bny7w3RA.css","assets/CategoriesView-BUy2GAk9.js","assets/IconCatalog-BaNuPmu8.js","assets/IconDiamond-BZQtRyIy.js","assets/useSlotBanners-fCEY91jj.js","assets/IconWeave-DAcvD2P0.js","assets/CategoriesView-CMnlVSez.css","assets/ProductsView-B0IHOsMw.js","assets/IconFilter-CeX90aW_.js","assets/PageHeader-BDPrFkve.js","assets/PageHeader-BfLmRSdd.css","assets/SearchField-dVDn9y5S.js","assets/SearchField-QJMYJEg3.css","assets/AppSelect-CbWqXW3b.js","assets/AppSelect-BSCEbrV4.css","assets/ProductsView-Cftto3rD.css","assets/ProductDetailView-2P8iuLL9.js","assets/catalog-DWpH1dVc.js","assets/cart-F5Rptvi1.js","assets/IconCart-D9TX5E-P.js","assets/ProductDetailView-BhHhAbbF.css","assets/CatalogRequestsView-Daf5j2GU.js","assets/CatalogRequestsView-B4MH1m71.css","assets/LatestCatalogRequestStatusView-B9OfO5rw.js","assets/SimpleStatusTimeline-C5IzJmCG.js","assets/SimpleStatusTimeline-DkF151UZ.css","assets/LatestCatalogRequestStatusView-C3eK4taf.css","assets/FavoritesView-Q3gbkHep.js","assets/FavoritesView-jColzuRg.css","assets/CustomersView-yj__rh-t.js","assets/IconPlus-Dk2FJATn.js","assets/CustomerCreateOverlay-C0ajQDnY.js","assets/BaseInput-CpE3bVJZ.js","assets/BaseInput-BKq5OFkZ.css","assets/CustomerCreateOverlay-JNFd7rvA.css","assets/CustomersView-ZfDgnskm.css","assets/CustomerDetailView-CkjR4WPp.js","assets/constants-ptWoEwwP.js","assets/IconClipboardEmpty-DMrB9tzG.js","assets/PersianDateInput-BcTTynHd.js","assets/PersianDateInput-CQDjJN3F.css","assets/IconEditPen-D6lQ4xNz.js","assets/TimeInput-D6PzFPdF.js","assets/IconProgressClock-C5Z0LodX.js","assets/TimeInput-YvgZhBw7.css","assets/CustomerDetailView-DrIbQ27X.css","assets/RemindersView-pG6M0HAE.js","assets/IconMoreVertical-DpXrbzlD.js","assets/RemindersView-BU6rqJ2Z.css","assets/ReminderDetailView-8V-oDMXC.js","assets/ReminderDetailView-Bgb1iArR.css","assets/CartView-_JOMEanl.js","assets/IconOrders-Cf-FXBIB.js","assets/EmptyState-DoHTAy4d.js","assets/EmptyState-D6A5GmrP.css","assets/IconTrash-B73-wwf6.js","assets/CheckoutStepper-DptjKnv0.js","assets/CheckoutStepper-hqk-kVCz.css","assets/CartView-BIcoGdy0.css","assets/OrdersView-BPdTqQNi.js","assets/OrdersView-38EjyGTh.css","assets/LatestOrderStatusView-gdIC0Keq.js","assets/LatestOrderStatusView-Dt4fuopS.css","assets/OrderDetailView-CeMJPWH_.js","assets/orderInvoice-DPYzRyAs.js","assets/CurrencyInput-Cu2dRPFo.js","assets/CurrencyInput-ByU-DLUz.css","assets/OrderDetailView-cbtSg9bS.css","assets/OrderSuccessView-CHvxXHyZ.js","assets/OrderSuccessView-BI6XPtrV.css","assets/SettlementTypeView-C3nP1V6W.js","assets/IconCheckBook-IuV8Li8k.js","assets/useRequirePricedOrder-B78MxGXz.js","assets/SettlementTypeView-DQbe-3F7.css","assets/CashSettlementView-DMsMuhva.js","assets/CashSettlementView-CM8tye-z.css","assets/CheckModeSelectView-KJJE3f5u.js","assets/CheckModeSelectView-BZlKzxFL.css","assets/CheckFormView-tFovxTRe.js","assets/CheckFormView-Cgp6kUZ2.css","assets/CheckListView-B39-XRBU.js","assets/CheckListView-Br-acGNV.css","assets/ProfileView-4jYZXvL7.js","assets/IconSettings-D9-FUXw4.js","assets/ProfileView-DVHaqeAW.css","assets/ProfileEditView-D8y7Pway.js","assets/ProfileSubpageLayout-TZxLAQ-r.js","assets/ProfileSubpageLayout-DCtwNGmO.css","assets/ProfileEditView-QSX0nhkf.css","assets/AddressesView-2ETl40m5.js","assets/AddressesView-DwLRUjs3.css","assets/ProfileSecurityView-BVkxmi2F.js","assets/ProfileSecurityView-BjbybMSz.css","assets/ProfileNotificationsView-DrsdXR64.js","assets/ProfileNotificationsView-BqMkB4wX.css","assets/ProfileDisplayView-BremQpkm.js","assets/theme-DDmZuxb4.js","assets/ProfileDisplayView-CDaE5E6F.css","assets/ProfileChecksView-DW2GQwpr.js","assets/NotFoundView-DcuA7MTj.js","assets/NotFoundView-N95LQNdN.css"])))=>i.map(i=>d[i]); +import{A as e,At as t,E as n,F as r,G as i,I as a,M as o,N as s,Nt as c,Pt as l,R as u,S as d,U as f,_ as p,at as m,c as h,d as g,et as _,f as v,g as y,i as b,k as ee,l as x,nt as S,o as C,rt as w,t as T,u as E,ut as D,v as O,w as k}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{i as A,l as te,n as j,t as M}from"./BasicIcon-DPmc0iaK.js";import{n as N,r as P,t as F}from"./pinia-BK9B9Wwf.js";import{l as I}from"./dist-U-AqZ6hP.js";import{t as ne}from"./dist-Bc4P4ngC.js";import{d as re,l as ie,s as ae,t as oe,v as L,y as R}from"./format-C72AoJ2H.js";import{i as z,n as B,r as V,t as H}from"./http-CU_N-R2R.js";import{t as U}from"./catalog-DWpH1dVc.js";import{t as W}from"./cart-F5Rptvi1.js";import{n as se,t as ce}from"./IconCatalog-BaNuPmu8.js";import{t as le}from"./IconCart-D9TX5E-P.js";import{t as ue}from"./IconOrders-Cf-FXBIB.js";import{t as de}from"./IconProfile-ginWFJfQ.js";import{t as fe}from"./IconPlus-Dk2FJATn.js";import{t as pe}from"./IconCheckBook-IuV8Li8k.js";import{t as me}from"./IconSettings-D9-FUXw4.js";import{t as he}from"./theme-DDmZuxb4.js";(function(){let e=document.createElement(`link`).relList;if(e&&e.supports&&e.supports(`modulepreload`))return;for(let e of document.querySelectorAll(`link[rel="modulepreload"]`))n(e);new MutationObserver(e=>{for(let t of e)if(t.type===`childList`)for(let e of t.addedNodes)e.tagName===`LINK`&&e.rel===`modulepreload`&&n(e)}).observe(document,{childList:!0,subtree:!0});function t(e){let t={};return e.integrity&&(t.integrity=e.integrity),e.referrerPolicy&&(t.referrerPolicy=e.referrerPolicy),t.credentials=e.crossOrigin===`use-credentials`?`include`:e.crossOrigin===`anonymous`?`omit`:`same-origin`,t}function n(e){if(e.ep)return;e.ep=!0;let n=t(e);fetch(e.href,n)}})();function ge(e){return typeof e==`object`||`displayName`in e||`props`in e||`__vccOpts`in e}function _e(e){return e.__esModule||e[Symbol.toStringTag]===`Module`||e.default&&ge(e.default)}var G=Object.assign;function ve(e,t){let n={};for(let r in t){let i=t[r];n[r]=K(i)?i.map(e):e(i)}return n}var ye=()=>{},K=Array.isArray;function be(e,t){let n={};for(let r in e)n[r]=r in t?t[r]:e[r];return n}var xe=Symbol(``);function Se(e,t){return G(Error(),{type:e,[xe]:!0},t)}function q(e,t){return e instanceof Error&&xe in e&&(t==null||!!(e.type&t))}var Ce=Symbol(``),we=Symbol(``),Te=Symbol(``),Ee=Symbol(``),De=Symbol(``);function Oe(){return k(Te)}function ke(e){return k(Ee)}var Ae=typeof document<`u`,je=/#/g,Me=/&/g,Ne=/\//g,Pe=/=/g,Fe=/\?/g,Ie=/\+/g,Le=/%5B/g,Re=/%5D/g,ze=/%5E/g,Be=/%60/g,Ve=/%7B/g,He=/%7C/g,Ue=/%7D/g,We=/%20/g;function Ge(e){return e==null?``:encodeURI(``+e).replace(He,`|`).replace(Le,`[`).replace(Re,`]`)}function Ke(e){return Ge(e).replace(Ve,`{`).replace(Ue,`}`).replace(ze,`^`)}function qe(e){return Ge(e).replace(Ie,`%2B`).replace(We,`+`).replace(je,`%23`).replace(Me,`%26`).replace(Be,"`").replace(Ve,`{`).replace(Ue,`}`).replace(ze,`^`)}function Je(e){return qe(e).replace(Pe,`%3D`)}function Ye(e){return Ge(e).replace(je,`%23`).replace(Fe,`%3F`)}function Xe(e){return Ye(e).replace(Ne,`%2F`)}function Ze(e){if(e==null)return null;try{return decodeURIComponent(``+e)}catch{}return``+e}var Qe=/\/$/,$e=e=>e.replace(Qe,``);function et(e,t,n=`/`){let r,i={},a=``,o=``,s=t.indexOf(`#`),c=t.indexOf(`?`);return c=s>=0&&c>s?-1:c,c>=0&&(r=t.slice(0,c),a=t.slice(c,s>0?s:t.length),i=e(a.slice(1))),s>=0&&(r||=t.slice(0,s),o=t.slice(s,t.length)),r=ct(r??t,n),{fullPath:r+a+o,path:r,query:i,hash:Ze(o)}}function tt(e,t){let n=t.query?e(t.query):``;return t.path+(n&&`?`)+n+(t.hash||``)}function nt(e,t){return!t||!e.toLowerCase().startsWith(t.toLowerCase())?e:e.slice(t.length)||`/`}function rt(e,t,n){let r=t.matched.length-1,i=n.matched.length-1;return r>-1&&r===i&&it(t.matched[r],n.matched[i])&&at(t.params,n.params)&&e(t.query)===e(n.query)&&t.hash===n.hash}function it(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function at(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(var n in e)if(!ot(e[n],t[n]))return!1;return!0}function ot(e,t){return K(e)?st(e,t):K(t)?st(t,e):(e&&e.valueOf())===(t&&t.valueOf())}function st(e,t){return K(t)?e.length===t.length&&e.every((e,n)=>e===t[n]):e.length===1&&e[0]===t}function ct(e,t){if(e.startsWith(`/`))return e;if(!e)return t;let n=t.split(`/`),r=e.split(`/`),i=r[r.length-1];(i===`..`||i===`.`)&&r.push(``);let a=n.length-1,o,s;for(o=0;o1&&a--;else break;return n.slice(0,a).join(`/`)+`/`+r.slice(o).join(`/`)}var J={path:`/`,name:void 0,params:{},query:{},hash:``,fullPath:`/`,matched:[],meta:{},redirectedFrom:void 0};function lt(e){if(!e)if(Ae){let t=document.querySelector(`base`);e=t&&t.getAttribute(`href`)||`/`,e=e.replace(/^\w+:\/\/[^/]+/,``)}else e=`/`;return e[0]!==`/`&&e[0]!==`#`&&(e=`/`+e),$e(e)}var ut=/^[^#]+#/;function dt(e,t){return e.replace(ut,`#`)+t}function ft(e,t){let n=document.documentElement.getBoundingClientRect(),r=e.getBoundingClientRect();return{behavior:t.behavior,left:r.left-n.left-(t.left||0),top:r.top-n.top-(t.top||0)}}var pt=()=>({left:window.scrollX,top:window.scrollY});function mt(e){let t;if(`el`in e){let n=e.el,r=typeof n==`string`&&n.startsWith(`#`),i=typeof n==`string`?r?document.getElementById(n.slice(1)):document.querySelector(n):n;if(!i)return;t=ft(i,e)}else t=e;`scrollBehavior`in document.documentElement.style?window.scrollTo(t):window.scrollTo(t.left==null?window.scrollX:t.left,t.top==null?window.scrollY:t.top)}function ht(e,t){return(history.state?history.state.position-t:-1)+e}var gt=new Map;function _t(e,t){gt.set(e,t)}function vt(e){let t=gt.get(e);return gt.delete(e),t}function yt(e){return typeof e==`string`||e&&typeof e==`object`}function bt(e){return typeof e==`string`||typeof e==`symbol`}function xt(e){let t={};if(e===``||e===`?`)return t;let n=(e[0]===`?`?e.slice(1):e).split(`&`);for(let e=0;ee&&qe(e)):[r&&qe(r)]).forEach(e=>{e!==void 0&&(t+=(t.length?`&`:``)+n,e!=null&&(t+=`=`+e))})}return t}function Ct(e){let t={};for(let n in e){let r=e[n];r!==void 0&&(t[n]=K(r)?r.map(e=>e==null?null:``+e):r==null?r:``+r)}return t}function wt(){let e=[];function t(t){return e.push(t),()=>{let n=e.indexOf(t);n>-1&&e.splice(n,1)}}function n(){e=[]}return{add:t,list:()=>e.slice(),reset:n}}function Y(e,t,n,r,i,a=e=>e()){let o=r&&(r.enterCallbacks[i]=r.enterCallbacks[i]||[]);return()=>new Promise((s,c)=>{let l=e=>{e===!1?c(Se(4,{from:n,to:t})):e instanceof Error?c(e):yt(e)?c(Se(2,{from:t,to:e})):(o&&r.enterCallbacks[i]===o&&typeof e==`function`&&o.push(e),s())},u=a(()=>e.call(r&&r.instances[i],t,n,l)),d=Promise.resolve(u);e.length<3&&(d=d.then(l)),d.catch(e=>c(e))})}function Tt(e,t,n,r,i=e=>e()){let a=[];for(let o of e)for(let e in o.components){let s=o.components[e];if(!(t!==`beforeRouteEnter`&&!o.instances[e]))if(ge(s)){let c=(s.__vccOpts||s)[t];c&&a.push(Y(c,n,r,o,e,i))}else{let c=s();a.push(()=>c.then(a=>{if(!a)throw Error(`Couldn't resolve component "${e}" at "${o.path}"`);let s=_e(a)?a.default:a;o.mods[e]=a,o.components[e]=s;let c=(s.__vccOpts||s)[t];return c&&Y(c,n,r,o,e,i)()}))}}return a}function Et(e,t){let n=[],r=[],i=[],a=Math.max(t.matched.length,e.matched.length);for(let o=0;oit(e,a))?r.push(a):n.push(a));let s=e.matched[o];s&&(t.matched.find(e=>it(e,s))||i.push(s))}return[n,r,i]}var Dt=()=>location.protocol+`//`+location.host;function Ot(e,t){let{pathname:n,search:r,hash:i}=t,a=e.indexOf(`#`);if(a>-1){let t=i.includes(e.slice(a))?e.slice(a).length:1,n=i.slice(t);return n[0]!==`/`&&(n=`/`+n),nt(n,``)}return nt(n,e)+r+i}function kt(e,t,n,r){let i=[],a=[],o=null,s=({state:a})=>{let s=Ot(e,location),c=n.value,l=t.value,u=0;if(a){if(n.value=s,t.value=a,o&&o===c){o=null;return}u=l?a.position-l.position:0}else r(s);i.forEach(e=>{e(n.value,c,{delta:u,type:`pop`,direction:u?u>0?`forward`:`back`:``})})};function c(){o=n.value}function l(e){i.push(e);let t=()=>{let t=i.indexOf(e);t>-1&&i.splice(t,1)};return a.push(t),t}function u(){if(document.visibilityState===`hidden`){let{history:e}=window;if(!e.state)return;e.replaceState(G({},e.state,{scroll:pt()}),``)}}function d(){for(let e of a)e();a=[],window.removeEventListener(`popstate`,s),window.removeEventListener(`pagehide`,u),document.removeEventListener(`visibilitychange`,u)}return window.addEventListener(`popstate`,s),window.addEventListener(`pagehide`,u),document.addEventListener(`visibilitychange`,u),{pauseListeners:c,listen:l,destroy:d}}function At(e,t,n,r=!1,i=!1){return{back:e,current:t,forward:n,replaced:r,position:window.history.length,scroll:i?pt():null}}function jt(e){let{history:t,location:n}=window,r={value:Ot(e,n)},i={value:t.state};i.value||a(r.value,{back:null,current:r.value,forward:null,position:t.length-1,replaced:!0,scroll:null},!0);function a(r,a,o){let s=e.indexOf(`#`),c=s>-1?(n.host&&document.querySelector(`base`)?e:e.slice(s))+r:Dt()+e+r;try{t[o?`replaceState`:`pushState`](a,``,c),i.value=a}catch(e){console.error(e),n[o?`replace`:`assign`](c)}}function o(e,n){a(e,G({},t.state,At(i.value.back,e,i.value.forward,!0),n,{position:i.value.position}),!0),r.value=e}function s(e,n){let o=G({},i.value,t.state,{forward:e,scroll:pt()});a(o.current,o,!0),a(e,G({},At(r.value,e,null),{position:o.position+1},n),!1),r.value=e}return{location:r,state:i,push:s,replace:o}}function Mt(e){e=lt(e);let t=jt(e),n=kt(e,t.state,t.location,t.replace);function r(e,t=!0){t||n.pauseListeners(),history.go(e)}let i=G({location:``,base:e,go:r,createHref:dt.bind(null,e)},t,n);return Object.defineProperty(i,"location",{enumerable:!0,get:()=>t.location.value}),Object.defineProperty(i,"state",{enumerable:!0,get:()=>t.state.value}),i}var Nt={type:0,value:``},Pt=/[a-zA-Z0-9_]/;function Ft(e){if(!e)return[[]];if(e===`/`)return[[Nt]];if(!e.startsWith(`/`))throw Error(`Invalid path "${e}"`);function t(e){throw Error(`ERR (${n})/"${l}": ${e}`)}let n=0,r=n,i=[],a;function o(){a&&i.push(a),a=[]}let s=0,c,l=``,u=``;function d(){l&&=(n===0?a.push({type:0,value:l}):n===1||n===2||n===3?(a.length>1&&(c===`*`||c===`+`)&&t(`A repeatable param (${l}) must be alone in its segment. eg: '/:ids+.`),a.push({type:1,value:l,regexp:u,repeatable:c===`*`||c===`+`,optional:c===`*`||c===`?`})):t(`Invalid state to consume buffer`),``)}function f(){l+=c}for(;st.length?t.length===1&&t[0]===80?1:-1:0}function Vt(e,t){let n=0,r=e.score,i=t.score;for(;n0&&t[t.length-1]<0}var Ut={strict:!1,end:!0,sensitive:!1};function Wt(e,t,n){let r=G(zt(Ft(e.path),n),{record:e,parent:t,children:[],alias:[]});return t&&!r.record.aliasOf==!t.record.aliasOf&&t.children.push(r),r}function Gt(e,t){let n=[],r=new Map;t=be(Ut,t);function i(e){return r.get(e)}function a(e,n,r){let i=!r,s=qt(e);s.aliasOf=r&&r.record;let l=be(t,e),u=[s];if(`alias`in e){let t=typeof e.alias==`string`?[e.alias]:e.alias;for(let e of t)u.push(qt(G({},s,{components:r?r.record.components:s.components,path:e,aliasOf:r?r.record:s})))}let d,f;for(let t of u){let{path:u}=t;if(n&&u[0]!==`/`){let e=n.record.path,r=e[e.length-1]===`/`?``:`/`;t.path=n.record.path+(u&&r+u)}if(d=Wt(t,n,l),r?r.alias.push(d):(f||=d,f!==d&&f.alias.push(d),i&&e.name&&!Yt(d)&&o(e.name)),$t(d)&&c(d),s.children){let e=s.children;for(let t=0;t{o(f)}:ye}function o(e){if(bt(e)){let t=r.get(e);t&&(r.delete(e),n.splice(n.indexOf(t),1),t.children.forEach(o),t.alias.forEach(o))}else{let t=n.indexOf(e);t>-1&&(n.splice(t,1),e.record.name&&r.delete(e.record.name),e.children.forEach(o),e.alias.forEach(o))}}function s(){return n}function c(e){let t=Zt(e,n);n.splice(t,0,e),e.record.name&&!Yt(e)&&r.set(e.record.name,e)}function l(e,t){let i,a={},o,s;if(`name`in e&&e.name){if(i=r.get(e.name),!i)throw Se(1,{location:e});s=i.record.name,a=G(Kt(t.params,i.keys.filter(e=>!e.optional).concat(i.parent?i.parent.keys.filter(e=>e.optional):[]).map(e=>e.name)),e.params&&Kt(e.params,i.keys.map(e=>e.name))),o=i.stringify(a)}else if(e.path!=null)o=e.path,i=n.find(e=>e.re.test(o)),i&&(a=i.parse(o),s=i.record.name,i.keys.forEach(e=>{e.optional&&!a[e.name]&&delete a[e.name]}));else{if(i=t.name?r.get(t.name):n.find(e=>e.re.test(t.path)),!i)throw Se(1,{location:e,currentLocation:t});s=i.record.name,a=G({},t.params,e.params),o=i.stringify(a)}let c=[],l=i;for(;l;)c.unshift(l.record),l=l.parent;return{name:s,path:o,params:a,matched:c,meta:Xt(c)}}e.forEach(e=>a(e));function u(){n.length=0,r.clear()}return{addRoute:a,resolve:l,removeRoute:o,clearRoutes:u,getRoutes:s,getRecordMatcher:i}}function Kt(e,t){let n={};for(let r of t)r in e&&(n[r]=e[r]);return n}function qt(e){let t={path:e.path,redirect:e.redirect,name:e.name,meta:e.meta||{},aliasOf:e.aliasOf,beforeEnter:e.beforeEnter,props:Jt(e),children:e.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:`components`in e?e.components||null:e.component&&{default:e.component}};return Object.defineProperty(t,"mods",{value:{}}),t}function Jt(e){let t={},n=e.props||!1;if(`component`in e)t.default=n;else for(let r in e.components)t[r]=typeof n==`object`?n[r]:n;return t}function Yt(e){for(;e;){if(e.record.aliasOf)return!0;e=e.parent}return!1}function Xt(e){return e.reduce((e,t)=>G(e,t.meta),{})}function Zt(e,t){let n=0,r=t.length;for(;n!==r;){let i=n+r>>1;Vt(e,t[i])<0?r=i:n=i+1}let i=Qt(e);return i&&(r=t.lastIndexOf(i,r-1)),r}function Qt(e){let t=e;for(;t=t.parent;)if($t(t)&&Vt(e,t)===0)return t}function $t({record:e}){return!!(e.name||e.components&&Object.keys(e.components).length||e.redirect)}function en(e){let t=k(Te),n=k(Ee),r=h(()=>{let n=D(e.to);return t.resolve(n)}),i=h(()=>{let{matched:e}=r.value,{length:t}=e,i=e[t-1],a=n.matched;if(!i||!a.length)return-1;let o=a.findIndex(it.bind(null,i));if(o>-1)return o;let s=on(e[t-2]);return t>1&&on(i)===s&&a[a.length-1].path!==s?a.findIndex(it.bind(null,e[t-2])):o}),a=h(()=>i.value>-1&&an(n.params,r.value.params)),o=h(()=>i.value>-1&&i.value===n.matched.length-1&&at(n.params,r.value.params));function s(n={}){if(rn(n)){let n=t[D(e.replace)?`replace`:`push`](D(e.to)).catch(ye);return e.viewTransition&&typeof document<`u`&&`startViewTransition`in document&&document.startViewTransition(()=>n),n}return Promise.resolve()}return{route:r,href:h(()=>r.value.href),isActive:a,isExactActive:o,navigate:s}}function tn(e){return e.length===1?e[0]:e}var nn=O({name:`RouterLink`,compatConfig:{MODE:3},props:{to:{type:[String,Object],required:!0},replace:Boolean,activeClass:String,exactActiveClass:String,custom:Boolean,ariaCurrentValue:{type:String,default:`page`},viewTransition:Boolean},useLink:en,setup(e,{slots:t}){let n=_(en(e)),{options:r}=k(Te),i=h(()=>({[sn(e.activeClass,r.linkActiveClass,`router-link-active`)]:n.isActive,[sn(e.exactActiveClass,r.linkExactActiveClass,`router-link-exact-active`)]:n.isExactActive}));return()=>{let r=t.default&&tn(t.default(n));return e.custom?r:d(`a`,{"aria-current":n.isExactActive?e.ariaCurrentValue:null,href:n.href,onClick:n.navigate,class:i.value},r)}}});function rn(e){if(!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)&&!e.defaultPrevented&&(e.button===void 0||e.button===0)){if(e.currentTarget&&e.currentTarget.getAttribute){let t=e.currentTarget.getAttribute(`target`);if(/\b_blank\b/i.test(t))return}return e.preventDefault&&e.preventDefault(),!0}}function an(e,t){for(let n in t){let r=t[n],i=e[n];if(typeof r==`string`){if(r!==i)return!1}else if(!K(i)||i.length!==r.length||r.some((e,t)=>e.valueOf()!==i[t].valueOf()))return!1}return!0}function on(e){return e?e.aliasOf?e.aliasOf.path:e.path:``}var sn=(e,t,n)=>e??t??n,cn=O({name:`RouterView`,inheritAttrs:!1,props:{name:{type:String,default:`default`},route:Object},compatConfig:{MODE:3},setup(e,{attrs:t,slots:n}){let r=k(De),i=h(()=>e.route||r.value),a=k(we,0),o=h(()=>{let e=D(a),{matched:t}=i.value,n;for(;(n=t[e])&&!n.components;)e++;return e}),c=h(()=>i.value.matched[o.value]);s(we,h(()=>o.value+1)),s(Ce,c),s(De,i);let l=S();return f(()=>[l.value,c.value,e.name],([e,t,n],[r,i,a])=>{t&&(t.instances[n]=e,i&&i!==t&&e&&e===r&&(t.leaveGuards.size||(t.leaveGuards=i.leaveGuards),t.updateGuards.size||(t.updateGuards=i.updateGuards))),e&&t&&(!i||!it(t,i)||!r)&&(t.enterCallbacks[n]||[]).forEach(t=>t(e))},{flush:`post`}),()=>{let r=i.value,a=e.name,o=c.value,s=o&&o.components[a];if(!s)return ln(n.default,{Component:s,route:r});let u=o.props[a],f=u?u===!0?r.params:typeof u==`function`?u(r):u:null,p=d(s,G({},f,t,{onVnodeUnmounted:e=>{e.component.isUnmounted&&(o.instances[a]=null)},ref:l}));return ln(n.default,{Component:p,route:r})||p}}});function ln(e,t){if(!e)return null;let n=e(t);return n.length===1?n[0]:n}var un=cn;function dn(e){let t=Gt(e.routes,e),r=e.parseQuery||xt,i=e.stringifyQuery||St,a=e.history,o=wt(),s=wt(),c=wt(),l=m(J),u=J;Ae&&e.scrollBehavior&&`scrollRestoration`in history&&(history.scrollRestoration=`manual`);let d=ve.bind(null,e=>``+e),f=ve.bind(null,Xe),p=ve.bind(null,Ze);function h(e,n){let r,i;return bt(e)?(r=t.getRecordMatcher(e),i=n):i=e,t.addRoute(i,r)}function g(e){let n=t.getRecordMatcher(e);n&&t.removeRoute(n)}function _(){return t.getRoutes().map(e=>e.record)}function v(e){return!!t.getRecordMatcher(e)}function y(e,n){if(n=G({},n||l.value),typeof e==`string`){let i=et(r,e,n.path),o=t.resolve({path:i.path},n),s=a.createHref(i.fullPath);return G(i,o,{params:p(o.params),redirectedFrom:void 0,href:s})}let o;if(e.path!=null)o=G({},e,{path:et(r,e.path,n.path).path});else{let t=G({},e.params);for(let e in t)t[e]??delete t[e];o=G({},e,{params:f(t)}),n.params=f(n.params)}let s=t.resolve(o,n),c=e.hash||``;s.params=d(p(s.params));let u=tt(i,G({},e,{hash:Ke(c),path:s.path})),m=a.createHref(u);return G({fullPath:u,hash:c,query:i===St?Ct(e.query):e.query||{}},s,{redirectedFrom:void 0,href:m})}function b(e){return typeof e==`string`?et(r,e,l.value.path):G({},e)}function ee(e,t){if(u!==e)return Se(8,{from:t,to:e})}function x(e){return T(e)}function S(e){return x(G(b(e),{replace:!0}))}function C(e,t){let n=e.matched[e.matched.length-1];if(n&&n.redirect){let{redirect:r}=n,i=typeof r==`function`?r(e,t):r;return typeof i==`string`&&(i=i.includes(`?`)||i.includes(`#`)?i=b(i):{path:i},i.params={}),G({query:e.query,hash:e.hash,params:i.path==null?e.params:{}},i)}}function T(e,t){let n=u=y(e),r=l.value,a=e.state,o=e.force,s=e.replace===!0,c=C(n,r);if(c)return T(G(b(c),{state:typeof c==`object`?G({},a,c.state):a,force:o,replace:s}),t||n);let d=n;d.redirectedFrom=t;let f;return!o&&rt(i,r,n)&&(f=Se(16,{to:d,from:r}),ie(r,r,!0,!1)),(f?Promise.resolve(f):k(d,r)).catch(e=>q(e)?q(e,2)?e:re(e):I(e,d,r)).then(e=>{if(e){if(q(e,2))return T(G({replace:s},b(e.to),{state:typeof e.to==`object`?G({},a,e.to.state):a,force:o}),t||d)}else e=te(d,r,!0,s,a);return A(d,r,e),e})}function E(e,t){let n=ee(e,t);return n?Promise.reject(n):Promise.resolve()}function O(e){let t=L.values().next().value;return t&&typeof t.runWithContext==`function`?t.runWithContext(e):e()}function k(e,t){let n,[r,i,a]=Et(e,t);n=Tt(r.reverse(),`beforeRouteLeave`,e,t);for(let i of r)i.leaveGuards.forEach(r=>{n.push(Y(r,e,t))});let c=E.bind(null,e,t);return n.push(c),z(n).then(()=>{n=[];for(let r of o.list())n.push(Y(r,e,t));return n.push(c),z(n)}).then(()=>{n=Tt(i,`beforeRouteUpdate`,e,t);for(let r of i)r.updateGuards.forEach(r=>{n.push(Y(r,e,t))});return n.push(c),z(n)}).then(()=>{n=[];for(let r of a)if(r.beforeEnter)if(K(r.beforeEnter))for(let i of r.beforeEnter)n.push(Y(i,e,t));else n.push(Y(r.beforeEnter,e,t));return n.push(c),z(n)}).then(()=>(e.matched.forEach(e=>e.enterCallbacks={}),n=Tt(a,`beforeRouteEnter`,e,t,O),n.push(c),z(n))).then(()=>{n=[];for(let r of s.list())n.push(Y(r,e,t));return n.push(c),z(n)}).catch(e=>q(e,8)?e:Promise.reject(e))}function A(e,t,n){c.list().forEach(r=>O(()=>r(e,t,n)))}function te(e,t,n,r,i){let o=ee(e,t);if(o)return o;let s=t===J,c=Ae?history.state:{};n&&(r||s?a.replace(e.fullPath,G({scroll:s&&c&&c.scroll},i)):a.push(e.fullPath,i)),l.value=e,ie(e,t,n,s),re()}let j;function M(){j||=a.listen((e,t,n)=>{if(!R.listening)return;let r=y(e),i=C(r,R.currentRoute.value);if(i){T(G(i,{replace:!0,force:!0}),r).catch(ye);return}u=r;let o=l.value;Ae&&_t(ht(o.fullPath,n.delta),pt()),k(r,o).catch(e=>q(e,12)?e:q(e,2)?(T(G(b(e.to),{force:!0}),r).then(e=>{q(e,20)&&!n.delta&&n.type===`pop`&&a.go(-1,!1)}).catch(ye),Promise.reject()):(n.delta&&a.go(-n.delta,!1),I(e,r,o))).then(e=>{e||=te(r,o,!1),e&&(n.delta&&!q(e,8)?a.go(-n.delta,!1):n.type===`pop`&&q(e,20)&&a.go(-1,!1)),A(r,o,e)}).catch(ye)})}let N=wt(),P=wt(),F;function I(e,t,n){re(e);let r=P.list();return r.length?r.forEach(r=>r(e,t,n)):console.error(e),Promise.reject(e)}function ne(){return F&&l.value!==J?Promise.resolve():new Promise((e,t)=>{N.add([e,t])})}function re(e){return F||(F=!e,M(),N.list().forEach(([t,n])=>e?n(e):t()),N.reset()),e}function ie(t,r,i,a){let{scrollBehavior:o}=e;if(!Ae||!o)return Promise.resolve();let s=!i&&vt(ht(t.fullPath,0))||(a||!i)&&history.state&&history.state.scroll||null;return n().then(()=>o(t,r,s)).then(e=>t===l.value&&e&&mt(e)).catch(e=>t===l.value&&I(e,t,r))}let ae=e=>a.go(e),oe,L=new Set,R={currentRoute:l,listening:!0,addRoute:h,removeRoute:g,clearRoutes:t.clearRoutes,hasRoute:v,getRoutes:_,resolve:y,options:e,push:x,replace:S,go:ae,back:()=>ae(-1),forward:()=>ae(1),beforeEach:o.add,beforeResolve:s.add,afterEach:c.add,onError:P.add,isReady:ne,install(e){e.component(`RouterLink`,nn),e.component(`RouterView`,un),e.config.globalProperties.$router=R,Object.defineProperty(e.config.globalProperties,"$route",{enumerable:!0,get:()=>D(l)}),Ae&&!oe&&l.value===J&&(oe=!0,x(a.location).catch(e=>{}));let t={};for(let e in J)Object.defineProperty(t,e,{get:()=>l.value[e],enumerable:!0});e.provide(Te,R),e.provide(Ee,w(t)),e.provide(De,l);let n=e.unmount;L.add(e),e.unmount=function(){L.delete(e),L.size<1&&(u=J,j&&j(),j=null,l.value=J,oe=!1,F=!1),n()}}};function z(e){return e.reduce((e,t)=>e.then(()=>O(t)),Promise.resolve())}return R}var fn=typeof global==`object`&&global&&global.Object===Object&&global,pn=typeof self==`object`&&self&&self.Object===Object&&self,mn=(fn||pn||Function(`return this`)()).Symbol,hn=Object.prototype,gn=hn.hasOwnProperty,_n=hn.toString,vn=mn?mn.toStringTag:void 0;function yn(e){var t=gn.call(e,vn),n=e[vn];try{e[vn]=void 0;var r=!0}catch{}var i=_n.call(e);return r&&(t?e[vn]=n:delete e[vn]),i}var bn=Object.prototype.toString;function xn(e){return bn.call(e)}var Sn=`[object Null]`,Cn=`[object Undefined]`,wn=mn?mn.toStringTag:void 0;function Tn(e){return e==null?e===void 0?Cn:Sn:wn&&wn in Object(e)?yn(e):xn(e)}function En(e){return typeof e==`object`&&!!e}var Dn=`[object Symbol]`;function On(e){return typeof e==`symbol`||En(e)&&Tn(e)==Dn}var kn=/\s/;function An(e){for(var t=e.length;t--&&kn.test(e.charAt(t)););return t}var jn=/^\s+/;function Mn(e){return e&&e.slice(0,An(e)+1).replace(jn,``)}function Nn(e){var t=typeof e;return e!=null&&(t==`object`||t==`function`)}var Pn=NaN,Fn=/^[-+]0x[0-9a-f]+$/i,In=/^0b[01]+$/i,Ln=/^0o[0-7]+$/i,Rn=parseInt;function zn(e){if(typeof e==`number`)return e;if(On(e))return Pn;if(Nn(e)){var t=typeof e.valueOf==`function`?e.valueOf():e;e=Nn(t)?t+``:t}if(typeof e!=`string`)return e===0?e:+e;e=Mn(e);var n=In.test(e);return n||Ln.test(e)?Rn(e.slice(2),n?2:8):Fn.test(e)?Pn:+e}function Bn(e,t,n){return e===e&&(n!==void 0&&(e=e<=n?e:n),t!==void 0&&(e=e>=t?e:t)),e}function Vn(e,t,n){return n===void 0&&(n=t,t=void 0),n!==void 0&&(n=zn(n),n=n===n?n:0),t!==void 0&&(t=zn(t),t=t===t?t:0),Bn(zn(e),t,n)}var Hn=[{name:`home`,path:`/`,label:`خانه`,icon:se},{name:`products`,path:`/products`,label:`محصولات`,icon:ce},{name:`order-fab`,path:`/cart`,label:`ثبت سفارش`,icon:fe},{name:`orders`,path:`/orders`,label:`سفارش‌ها`,icon:ue},{name:`profile`,path:`/profile`,label:`پروفایل`,icon:de}],Un=[{name:`home`,path:`/`,label:`خانه`,icon:se},{name:`products`,path:`/products`,label:`محصولات`,icon:ce},{name:`cart`,path:`/cart`,label:`ثبت سفارش`,icon:le},{name:`orders`,path:`/orders`,label:`سفارش‌ها`,icon:ue},{name:`checks`,path:`/profile/checks`,label:`لیست چک‌ها`,icon:pe},{name:`settings`,path:`/profile/display`,label:`تنظیمات`,icon:me},{name:`profile`,path:`/profile`,label:`پروفایل`,icon:de}],Wn=`/categories`,Gn=[`/categories`,`/products`,`/product`,`/favorites`],Kn=[`/profile/display`,`/profile/edit`,`/profile/security`],qn=[`/profile/checks`,...Kn];function Jn(e,t){return t.some(t=>e===t||e.startsWith(`${t}/`))}function Yn(e,t,n){return e===`home`?n===`/`:e===`products`?Jn(n,Gn):e===`order-fab`||e===`cart`?n===`/cart`||n.startsWith(`/cart/`):e===`checks`?Jn(n,[`/profile/checks`]):e===`settings`?Jn(n,Kn):e===`profile`?n===`/profile`?!0:n.startsWith(`/profile/`)?!Jn(n,qn):!1:t===`/`?n===`/`:n.startsWith(t)}function Xn(e,t){return e.path}function Zn(e){return e===0?Wn:`/cart`}var Qn={class:`bottom-nav`,"aria-label":`ناوبری اصلی`},$n=[`aria-current`,`aria-label`,`onClick`],er={key:0,class:`nav-badge`},tr={key:0,class:`nav-label`},nr={key:1,class:`nav-label nav-label--fab`},rr=T(O({__name:`BottomNav`,setup(e){let n=ke(),i=Oe(),a=W(),s=h(()=>a.itemCount);function c(e,t){let n=t.currentTarget;if(n instanceof HTMLElement&&n.blur(),e===`/cart`){i.push(Zn(a.itemCount));return}i.push(e)}return(e,i)=>(o(),v(`nav`,Qn,[(o(!0),v(b,null,r(D(Hn),e=>(o(),v(`button`,{key:e.name,type:`button`,class:t([`nav-item`,{active:D(Yn)(e.name,e.path,D(n).path),"nav-item--fab":e.name===`order-fab`}]),"aria-current":D(Yn)(e.name,e.path,D(n).path)?`page`:void 0,"aria-label":e.label,onClick:t=>c(e.path,t)},[x(`span`,{class:t([`nav-icon`,{"nav-icon--fab":e.name===`order-fab`}])},[(o(),E(u(e.icon),{size:e.name===`order-fab`?26:22,"stroke-width":e.name===`order-fab`?1.8:1.5,color:e.name===`order-fab`?`#ffffff`:void 0},null,8,[`size`,`stroke-width`,`color`])),e.name===`order-fab`&&s.value>0?(o(),v(`span`,er,l(s.value),1)):g(``,!0)],2),e.name===`order-fab`?(o(),v(`span`,nr,l(e.label),1)):(o(),v(`span`,tr,l(e.label),1))],10,$n))),128))]))}}),[[`__scopeId`,`data-v-759f4bb7`]]);function ir(e){if(!e)return;let t=e.replace(/[^\d+]/g,``);return t?`tel:${t}`:void 0}function ar(e){let t=e?.trim();if(t)return`mailto:${t}`}function or(){return B(`/settings/public`,{auth:!1})}function sr(e){return e?.trim()??``}function cr(e){return/^https?:\/\//i.test(e)}function lr(e){if(!e)return;if(cr(e))return e;let t=e.replace(/[^\d]/g,``);if(t)return`https://wa.me/${t}`}function ur(e){if(!e)return;if(cr(e))return e;let t=e.replace(/^@/,``).replace(/^https?:\/\/(t\.me|telegram\.me)\//i,``).trim();if(t)return`https://t.me/${t}`}function dr(e){if(!e)return;if(cr(e))return e;let t=e.replace(/^@/,``).replace(/^instagram\.com\//i,``).trim();if(t)return`https://instagram.com/${t}`}function fr(e){if(!e)return[];let t=[],n=sr(e.supportWhatsapp),r=lr(n);r&&t.push({kind:`whatsapp`,label:`واتساپ`,href:r,subtitle:n});let i=sr(e.supportTelegram),a=ur(i);a&&t.push({kind:`telegram`,label:`تلگرام`,href:a,subtitle:i});let o=sr(e.supportInstagram),s=dr(o);s&&t.push({kind:`instagram`,label:`اینستاگرام`,href:s,subtitle:o});let c=sr(e.supportPhone),l=ir(c);l&&t.push({kind:`phone`,label:`تماس تلفنی`,href:l,subtitle:c});let u=sr(e.supportEmail),d=ar(u);return d&&t.push({kind:`email`,label:`ایمیل`,href:d,subtitle:u}),t}var X=S(null),pr=null,mr={supportPhone:null,supportEmail:null,supportWhatsapp:null,supportTelegram:null,supportInstagram:null,defaultSettlementCash:!0,defaultSettlementCheck:!0,defaultSettlementCashCheck:!1};function hr(){return X.value?Promise.resolve():(pr||=or().then(e=>{X.value=e}).catch(()=>{X.value=mr}),pr)}function gr(){let e=h(()=>X.value!==null),t=h(()=>fr(X.value)),n=h(()=>t.value.length>0),r=h(()=>X.value?.supportPhone??null),i=h(()=>X.value?.supportEmail??null),a=h(()=>ir(r.value)),o=h(()=>X.value?.defaultSettlementCash??!0),s=h(()=>X.value?.defaultSettlementCheck??!0),c=h(()=>X.value?.defaultSettlementCashCheck??!1);function l(){return hr()}return{load:l,loaded:e,supportPhone:r,supportEmail:i,supportHref:a,supportLinks:t,hasSupportLinks:n,defaultSettlementCash:o,defaultSettlementCheck:s,defaultSettlementCashCheck:c}}var _r=O({__name:`IconHeadset`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(o(),E(M,{icon:`vuesax-linear:headphone`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),vr=T(O({__name:`IconQemashMark`,props:{size:{default:72}},setup(e){return(t,n)=>(o(),v(`img`,{class:`brand-logo`,src:`/brand-mark.png`,alt:``,style:c({height:`${e.size}px`}),draggable:`false`},null,4))}}),[[`__scopeId`,`data-v-b6600860`]]),yr={class:`desktop-sidebar`,"aria-label":`ناوبری اصلی`},br={class:`desktop-sidebar__brand`},xr={class:`desktop-sidebar__nav`},Sr=[`aria-current`,`aria-label`,`title`,`onClick`],Cr={class:`desktop-sidebar__icon`},wr={class:`desktop-sidebar__label`},Tr={key:0,class:`desktop-sidebar__badge`},Er={class:`desktop-sidebar__support`},Dr={class:`desktop-sidebar__support-icon`,"aria-hidden":`true`},Or=[`href`,`aria-disabled`],kr={key:0,class:`desktop-sidebar__support-phone`,dir:`ltr`},Ar=T(O({__name:`DesktopSidebar`,setup(e){let n=ke(),i=Oe(),a=W(),{load:s,supportPhone:c,supportHref:d}=gr();ee(()=>{s()});let f=h(()=>a.itemCount),m=h(()=>a.selectedCompanyId||a.activeCart?.companyId||null);function _(e){if(e.name===`cart`){i.push(Zn(a.itemCount));return}i.push(Xn(e,m.value))}return(e,i)=>(o(),v(`aside`,yr,[x(`div`,br,[p(vr,{size:36}),i[1]||=x(`strong`,{class:`desktop-sidebar__title`},`نادمی تکس`,-1)]),x(`nav`,xr,[(o(!0),v(b,null,r(D(Un),e=>(o(),v(`button`,{key:e.name,type:`button`,class:t([`desktop-sidebar__item`,{active:D(Yn)(e.name,e.path,D(n).path)}]),"aria-current":D(Yn)(e.name,e.path,D(n).path)?`page`:void 0,"aria-label":e.label,title:e.label,onClick:t=>_(e)},[x(`span`,Cr,[(o(),E(u(e.icon),{size:20}))]),x(`span`,wr,l(e.label),1),e.name===`cart`&&f.value>0?(o(),v(`span`,Tr,l(f.value),1)):g(``,!0)],10,Sr))),128))]),x(`div`,Er,[x(`span`,Dr,[p(_r,{size:22})]),i[2]||=x(`strong`,{class:`desktop-sidebar__support-title`},`پشتیبانی و راهنما`,-1),i[3]||=x(`p`,{class:`desktop-sidebar__support-text`},` در صورت نیاز به راهنمایی یا گزارش مشکل با تیم پشتیبانی تماس بگیرید. `,-1),x(`a`,{href:D(d)??`#`,class:t([`desktop-sidebar__support-btn`,{"desktop-sidebar__support-btn--disabled":!D(d)}]),"aria-disabled":!D(d),onClick:i[0]||=e=>!D(d)&&e.preventDefault()},` تماس با پشتیبانی `,10,Or),D(c)?(o(),v(`p`,kr,l(D(c)),1)):g(``,!0)])]))}}),[[`__scopeId`,`data-v-69fbaed9`]]),jr=`ft_user`,Mr=`ft_pending_otp`;function Z(e){e?localStorage.setItem(jr,JSON.stringify(e)):localStorage.removeItem(jr)}function Nr(){try{let e=localStorage.getItem(jr);return e?JSON.parse(e):null}catch{return null}}function Pr(){return V()?Nr():null}function Fr(){return!!V()}function Ir(e){try{e?sessionStorage.setItem(Mr,JSON.stringify(e)):sessionStorage.removeItem(Mr)}catch{}}async function Lr(e,t){let n=ie(e);if(!/^09\d{9}$/.test(n))return{success:!1,message:`شماره موبایل معتبر نیست.`};if(t.isRegister&&(!t.firstName?.trim()||!t.lastName?.trim()))return{success:!1,message:`نام و نام خانوادگی الزامی است.`};try{let e=t.referrerAgentCode?.trim()||void 0;Ir({phone:n,isRegister:t.isRegister,firstName:t.firstName,lastName:t.lastName,referrerAgentCode:e});let r=await B(`/auth/otp/request`,{method:`POST`,auth:!1,body:{phone:n,firstName:t.firstName,lastName:t.lastName,isRegister:t.isRegister,referrerAgentCode:e}}),i=r.debugCode?` (کد: ${r.debugCode})`:``;return{success:!0,message:`${r.message}${i}`}}catch(e){return{success:!1,message:e instanceof H?e.message:`ارسال کد ناموفق بود.`}}}async function Rr(e,t){let n=ie(e);try{let e=await B(`/auth/otp/verify`,{method:`POST`,auth:!1,body:{phone:n,code:oe(t)}});return z(e.accessToken),Z(e.user),Ir(null),{success:!0,message:`ورود موفق.`,user:e.user}}catch(e){return{success:!1,message:e instanceof H?e.message:`تأیید کد ناموفق بود.`}}}function zr(){z(null),Z(null),Ir(null)}async function Br(){if(!V())return Z(null),null;try{let e=await B(`/auth/me`);return Z(e),e}catch{return Z(null),null}}async function Vr(e){try{let t=await B(`/auth/profile`,{method:`PATCH`,body:e});return Z(t),t}catch(t){let n=e.avatarUrl!==void 0&&e.firstName===void 0&&e.lastName===void 0&&e.nationalId===void 0&&e.address===void 0,r=Nr();if(!n||!r)throw t;let i={...r};return e.avatarUrl?i.avatarUrl=e.avatarUrl:delete i.avatarUrl,Z(i),i}}var Hr=`ft_pending_register`,Ur=[{id:`garment_producer`,label:`تولیدکننده پوشاک عمده`},{id:`atelier`,label:`مزون`},{id:`fabric_wholesaler`,label:`فروشنده عمده پارچه`}];function Wr(){try{let e=sessionStorage.getItem(Hr);if(!e)return null;let t=JSON.parse(e);return!t?.firstName?.trim()||!t?.lastName?.trim()?null:{firstName:t.firstName.trim(),lastName:t.lastName.trim(),jobCategory:t.jobCategory,referrerAgentCode:t.referrerAgentCode?.trim()||void 0}}catch{return null}}function Gr(e){if(e?.firstName?.trim()&&e?.lastName?.trim()){sessionStorage.setItem(Hr,JSON.stringify({firstName:e.firstName.trim(),lastName:e.lastName.trim(),jobCategory:e.jobCategory,referrerAgentCode:e.referrerAgentCode?.trim()||void 0}));return}sessionStorage.removeItem(Hr)}var Kr=`awaiting_settlement`;function qr(e){let t=e.statusHistory??[];for(let e=t.length-1;e>=0;--e){let n=t[e];if(n?.toStatus!==Kr)continue;let r=new Date(n.changedAt);if(!Number.isNaN(r.getTime()))return r}let n=new Date(e.createdAt);return Number.isNaN(n.getTime())?new Date(0):n}function Jr(){return{checkCount:0,totalAmount:0,nearestDueDate:null,farthestDueDate:null,rassDays:0,rassDate:null}}function Yr(e,t){if(e.length===0)return Jr();let n=new Date(t);n.setHours(0,0,0,0);let r=0,i=0,a=[];for(let t of e){if(!t.dueDate){r+=t.amount;continue}let e=L(t.dueDate);if(Number.isNaN(e.getTime())){r+=t.amount;continue}e.setHours(0,0,0,0),a.push(e);let o=e.getTime()-n.getTime(),s=Math.max(0,Math.round(o/864e5));r+=t.amount,i+=t.amount*s}let o=r>0?Math.round(i/r):0,s=new Date(n);return s.setDate(s.getDate()+o),a.sort((e,t)=>e.getTime()-t.getTime()),{checkCount:e.length,totalAmount:r,nearestDueDate:a[0]?R(a[0]):null,farthestDueDate:a.length?R(a[a.length-1]):null,rassDays:o,rassDate:R(s)}}function Xr(e,t){let n=new Date(t);n.setHours(0,0,0,0);let r=L(e);return Number.isNaN(r.getTime())?0:(r.setHours(0,0,0,0),Math.max(0,Math.round((r.getTime()-n.getTime())/864e5)))}var Zr=N(`order`,()=>{let e=S([]),t=S([]),n=S(null),r=S(null),i=S(null),a=S(!1),o=h(()=>t=>[...e.value].sort((e,t)=>new Date(t.createdAt).getTime()-new Date(e.createdAt).getTime()));function s(t){return e.value.find(e=>e.id===t)}function c(e,a){i.value=e,n.value=`check`,t.value=[],r.value=a??null}function l(e){i.value=e.id,n.value=`check`,r.value=e.checkMode??`full`,t.value=(e.checks??[]).map(e=>({...e}))}function u(){i.value=null,t.value=[],r.value=null,n.value=null}function d(e){r.value=e}function f(e){t.value.push({...e,id:ae()})}function p(e,n){let r=t.value.findIndex(t=>t.id===e);r>=0&&(t.value[r]={...t.value[r],...n})}function m(e){t.value=t.value.filter(t=>t.id!==e)}function g(e){let n=i.value?s(i.value):void 0,r=e??(n?qr(n):new Date(0));return Yr(t.value,r)}async function _(){if(!V()){e.value=[];return}a.value=!0;try{e.value=await B(`/orders`)}catch{e.value=[]}finally{a.value=!1}}function v(){e.value=[],u()}function y(t){let n=e.value.findIndex(e=>e.id===t.id);n>=0?e.value[n]=t:e.value.unshift(t)}async function b(e){try{let t=await B(`/orders/${e}`);return y(t),t}catch{return null}}async function ee(t){if(!t.items.length)throw Error(`سبد خرید خالی است.`);if(t.id===`local`||t.items.some(e=>e.id.startsWith(`local-item-`)))throw Error(`سبد خرید با سرور همگام نیست. لطفاً دوباره محصولات را به سبد اضافه کنید.`);let n=[...new Set(t.items.map(e=>e.companyId).filter(Boolean))];if(!n.length)throw Error(`شرکت سبد مشخص نیست. سبد را خالی کنید و دوباره اضافه کنید.`);let r=t.notes?.trim()||``;try{let i=await B(`/orders`,{method:`POST`,body:{companyId:n[0],notes:r||void 0,items:t.items.map(e=>({productId:e.productId,meterage:Number(e.meterage),notes:e.notes}))}});return e.value.unshift(i),u(),i}catch(e){throw Error(e instanceof H?e.message:`ثبت سفارش ناموفق بود.`)}}async function x(e,t,n){try{let r=await B(`/orders/${e}/settlement`,{method:`POST`,body:{settlementType:t,checkMode:t===`check`?n??`full`:void 0}});return y(r),r}catch(e){throw Error(e instanceof H?e.message:`ثبت روش تسویه ناموفق بود.`)}}async function C(e,t){try{await B(`/orders/${e}/cash-receipt`,{method:`POST`,body:{amount:t.amount,transferDate:t.transferDate,transferTime:t.transferTime,...t.trackingNumber?.trim()?{trackingNumber:t.trackingNumber.trim()}:{},destinationAccountId:t.destinationAccountId,receiptImage:t.receiptImage,notes:t.notes}});let n=await b(e);if(!n)throw Error(`رسید ثبت شد ولی دریافت سفارش ناموفق بود.`);return n}catch(e){throw Error(e instanceof H?e.message:`ثبت رسید ناموفق بود.`)}}async function w(e,t,n){try{let r=await B(`/orders/${e}/checks`,{method:`PATCH`,body:{checkMode:n,checks:t.map(e=>({amount:e.amount,dueDate:e.dueDate,sayadId:e.sayadId,checkNumber:e.checkNumber,ownerNationalId:e.ownerNationalId,ownerFirstName:e.ownerFirstName,ownerLastName:e.ownerLastName,bankName:e.bankName,branchName:e.branchName,frontImage:e.frontImage,backImage:e.backImage,notes:e.notes,mode:e.mode}))}});return y(r),u(),r}catch(e){throw Error(e instanceof H?e.message:`ثبت چک‌ها ناموفق بود.`)}}async function T(e){return U().loadPaymentBankAccounts()}async function E(e){return U().loadBankAccounts(e)}return{orders:e,draftChecks:t,draftSettlementType:n,draftCheckMode:r,draftOrderId:i,loading:a,userOrders:o,getOrderById:s,startCheckDraft:c,loadChecksIntoDraft:l,clearCheckDraft:u,setCheckMode:d,addDraftCheck:f,updateDraftCheck:p,removeDraftCheck:m,getDraftRass:g,submitOrder:ee,chooseSettlement:x,submitCashReceipt:C,updateOrderChecks:w,hydrate:_,resetLocal:v,fetchOrder:b,getBankAccountsForOrder:T,getBankAccountsForCompany:E}}),Qr=N(`notification`,()=>{let e=S([]),t=S(0),n=S(!1),r=h(()=>t.value>0);async function i(){if(!V()){e.value=[],t.value=0;return}n.value=!0;try{e.value=await B(`/notifications`),t.value=e.value.filter(e=>!e.isRead).length}catch{e.value=[],t.value=0}finally{n.value=!1}}async function a(){if(!V()){t.value=0;return}try{let e=await B(`/notifications/unread-count`);t.value=e.count}catch{}}async function o(n){let r=e.value.find(e=>e.id===n);if(!(!r||r.isRead)){r.isRead=!0,t.value=Math.max(0,t.value-1);try{await B(`/notifications/${n}/read`,{method:`PATCH`})}catch{await i()}}}async function s(){if(t.value){e.value=e.value.map(e=>({...e,isRead:!0})),t.value=0;try{await B(`/notifications/read-all`,{method:`PATCH`})}catch{await i()}}}function c(){e.value=[],t.value=0}return{items:e,unreadCount:t,loading:n,hasUnread:r,hydrate:i,refreshUnreadCount:a,markRead:o,markAllRead:s,resetLocal:c}}),$r=S(``),ei=S(``),ti=S(`success`),ni=[],ri,ii=null;function ai(e){switch(e){case`error`:return`خطا`;case`warning`:return`هشدار`;case`info`:return`اطلاع`;default:return`موفقیت`}}function oi(e){$r.value=e.text,ei.value=e.title,ti.value=e.tone,ri=e.onDismiss}function si(){function e(e,t){let n=e.trim();if(!n)return;let r={text:n,tone:t?.tone??`success`,title:t?.title?.trim()??ai(t?.tone??`success`),onDismiss:t?.onDismiss};if(!$r.value){typeof document<`u`&&(ii=document.activeElement),oi(r);return}ni.push(r)}function t(){$r.value=``,ei.value=``;let e=ri;if(ri=void 0,e?.(),ni.length){oi(ni.shift());return}ii&&typeof ii.focus==`function`&&ii.focus(),ii=null}return{message:$r,title:ei,tone:ti,show:e,clear:t}}var ci=`admin_broadcast`,li=new Set;function ui(e){return e===`danger`?`error`:e===`success`||e===`warning`||e===`info`?e:`info`}function di(){li.clear()}function fi(){let e=Qr(),t=si(),n=e.items.filter(e=>!e.isRead&&e.event===ci).filter(e=>!li.has(e.id)).sort((e,t)=>new Date(e.sentAt).getTime()-new Date(t.sentAt).getTime());for(let r of n)li.add(r.id),t.show(r.body,{title:r.title,tone:ui(r.tone),onDismiss:()=>{e.markRead(r.id)}})}var pi=`ft_favorites`;function mi(){try{let e=localStorage.getItem(pi);if(!e)return[];let t=JSON.parse(e);return Array.isArray(t)?t.filter(e=>typeof e==`string`):[]}catch{return[]}}function hi(e){localStorage.setItem(pi,JSON.stringify(e))}var gi=N(`favorites`,()=>{let e=S(mi()),t=S(!1),n=S({}),r=h(()=>new Set(e.value));function i(e){return r.value.has(e)}async function a(){try{let t=await B(`/products/favorites/ids`);e.value=t,hi(t)}catch{e.value=mi()}finally{t.value=!0}}async function o(t){if(!t||n.value[t])return;n.value={...n.value,[t]:!0};let r=i(t);e.value=r?e.value.filter(e=>e!==t):[...e.value,t],hi(e.value);try{let n=await B(`/products/${t}/favorite`,{method:`POST`});e.value=n.favorited?[...new Set([...e.value.filter(e=>e!==t),t])]:e.value.filter(e=>e!==t),hi(e.value)}catch(n){if(!(n instanceof H&&n.status===404))throw e.value=r?[...new Set([...e.value,t])]:e.value.filter(e=>e!==t),hi(e.value),n}finally{let e={...n.value};delete e[t],n.value=e}}function s(){e.value=[],hi([]),t.value=!1}return{ids:e,loaded:t,pending:n,isFavorite:i,hydrate:a,toggle:o,resetLocal:s}}),_i=N(`auth`,()=>{let e=S(Pr()),t=S(!1),n=S(null),r=S(Wr()),i=h(()=>!!e.value),a=h(()=>e.value?`${e.value.firstName} ${e.value.lastName}`:``),o=h(()=>e.value?.appRole===`agent`),s=h(()=>!!e.value&&e.value.appRole!==`agent`);function c(){n.value=null}function l(){r.value=null,Gr(null)}async function u(e,i){t.value=!0,n.value=null;try{let t=Wr();r.value=t;let a=i.firstName?.trim()||t?.firstName,o=i.lastName?.trim()||t?.lastName,s=i.referrerAgentCode?.trim()||t?.referrerAgentCode;i.isRegister&&a&&o&&(r.value={firstName:a,lastName:o,jobCategory:t?.jobCategory,referrerAgentCode:s},Gr(r.value));let c=await Lr(e,{isRegister:i.isRegister,firstName:a,lastName:o,referrerAgentCode:s});return c.success||(n.value=c.message),c}finally{t.value=!1}}async function d(r,i){t.value=!0,n.value=null;let a=await Rr(r,i);return t.value=!1,a.success&&a.user?(e.value=a.user,l(),await Promise.all([U().loadCompanies(),W().hydrate(),Zr().hydrate(),Qr().hydrate(),gi().hydrate()]),fi()):n.value=a.message,a}function f(){zr(),e.value=null,l(),W().resetLocal(),Zr().resetLocal(),Qr().resetLocal(),di(),gi().resetLocal()}async function p(t){if(!e.value)return null;let n=await Vr(t);return n&&(e.value=n),n}async function m(){if(e.value=Pr(),!e.value)return;let t=await Br();e.value=t}return{user:e,loading:t,error:n,isAuthenticated:i,fullName:a,isAgent:o,isCustomerOnly:s,clearError:c,requestOtp:u,confirmOtp:d,logout:f,updateProfile:p,hydrate:m}}),vi=O({__name:`IconBell`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(o(),E(M,{icon:`vuesax-linear:notification`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),yi=O({__name:`IconChevronLeft`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(o(),E(M,{icon:`vuesax-linear:arrow-left-1`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),bi=[`aria-label`,`title`],xi=T(O({__name:`AuthThemeToggle`,props:{variant:{default:`floating`}},setup(e){let n=he(),{isDark:r}=P(n),i=h(()=>r.value?`vuesax-linear:sun-1`:`vuesax-linear:moon`),a=h(()=>r.value?`تغییر به تم روشن`:`تغییر به تم تاریک`);return(r,s)=>(o(),v(`button`,{type:`button`,class:t([`auth-theme-toggle`,e.variant===`inline`?`auth-theme-toggle--inline`:`auth-theme-toggle--floating`]),"aria-label":a.value,title:a.value,onClick:s[0]||=e=>D(n).toggleLightDark()},[p(M,{icon:i.value,size:18,"stroke-width":1.5},null,8,[`icon`])],10,bi))}}),[[`__scopeId`,`data-v-3a58cb84`]]),Si=[`src`],Ci={key:1},wi=T(O({__name:`UserAvatar`,props:{src:{},initials:{},size:{default:72}},setup(e){return(t,n)=>(o(),v(`span`,{class:`user-avatar`,style:c({width:`${e.size}px`,height:`${e.size}px`,fontSize:`${Math.round(e.size*.38)}px`})},[e.src?(o(),v(`img`,{key:0,class:`user-avatar__img`,src:e.src,alt:``},null,8,Si)):(o(),v(`span`,Ci,l(e.initials),1))],4))}}),[[`__scopeId`,`data-v-5c562bf0`]]),Ti={class:`desktop-header`},Ei={class:`desktop-header__actions`},Di={key:0,class:`desktop-header__company`},Oi=[`aria-label`],ki={class:`desktop-header__user-wrap`},Ai=[`aria-expanded`],ji={class:`desktop-header__user-name`},Mi={key:0,class:`desktop-header__menu`},Ni=T(O({__name:`DesktopHeader`,setup(e){let t=Oe(),n=_i(),r=W(),i=Qr(),a=S(!1),s=h(()=>re(i.unreadCount>9?`9+`:String(i.unreadCount))),c=h(()=>`${n.user?.firstName?.[0]??``}${n.user?.lastName?.[0]??``}`||`؟`),u=h(()=>r.companyNamesLabel||r.activeCart?.companyName||``);function d(){a.value=!a.value}function f(){a.value=!1,t.push(`/profile`)}function m(){a.value=!1,n.logout(),t.replace(`/welcome`)}return(e,r)=>(o(),v(`header`,Ti,[r[1]||=x(`div`,{class:`desktop-header__spacer`,"aria-hidden":`true`},null,-1),x(`div`,Ei,[u.value?(o(),v(`span`,Di,l(u.value),1)):g(``,!0),p(xi,{variant:`inline`}),x(`button`,{type:`button`,class:`desktop-header__icon-btn`,"aria-label":`اعلان‌ها`,onClick:r[0]||=e=>D(t).push(`/profile/notifications`)},[p(vi,{size:20}),D(i).hasUnread?(o(),v(`span`,{key:0,class:`desktop-header__notif-badge`,"aria-label":`${D(i).unreadCount} اعلان خوانده‌نشده`},l(s.value),9,Oi)):g(``,!0)]),x(`div`,ki,[x(`button`,{type:`button`,class:`desktop-header__user`,"aria-expanded":a.value,onClick:d},[p(wi,{class:`desktop-header__avatar`,src:D(n).user?.avatarUrl,initials:c.value,size:32},null,8,[`src`,`initials`]),x(`span`,ji,l(D(n).fullName),1),p(yi,{size:16,class:`desktop-header__chevron`})],8,Ai),a.value?(o(),v(`div`,Mi,[x(`button`,{type:`button`,onClick:f},`پروفایل`),x(`button`,{type:`button`,class:`desktop-header__menu-logout`,onClick:m},`خروج`)])):g(``,!0)])])]))}}),[[`__scopeId`,`data-v-5f322d95`]]),Pi=[`aria-hidden`,`inert`],Fi={class:`support-widget__list`},Ii=[`href`,`title`,`aria-label`,`target`,`rel`],Li={class:`support-widget__link-label`},Ri={key:0,viewBox:`0 0 24 24`,width:`18`,height:`18`,fill:`none`},zi={key:1,viewBox:`0 0 24 24`,width:`12`,height:`12`,fill:`none`},Bi={key:2,viewBox:`0 0 24 24`,width:`12`,height:`12`,fill:`none`},Vi={key:3,viewBox:`0 0 24 24`,width:`18`,height:`18`,fill:`none`},Hi={key:4,viewBox:`0 0 24 24`,width:`18`,height:`18`,fill:`none`},Ui=[`aria-expanded`],Wi=`nademitex.supportFab.position`,Gi=8,Q=10,Ki=T(O({__name:`SupportWidget`,props:{aboveBottomNav:{type:Boolean,default:!1}},setup(i){let a=i,{load:s,loaded:u,supportLinks:d,hasSupportLinks:p}=gr(),m=S(!1),_=S(null),y=S(null),C=S(null),w=S(!1),T=null,E=0,O=0,k=0,A=0,j=!1,M=!1,N=0,P=0,F=``,I=``,re=new Set([`email`,`telegram`]),ie=h(()=>{if(C.value)return{bottom:`${C.value.bottom}px`,insetInlineEnd:`${C.value.inlineEnd}px`}});function ae(){return document.documentElement.dir===`rtl`}function oe(e){let t=e.getBoundingClientRect();return{bottom:window.innerHeight-t.bottom,inlineEnd:ae()?t.left:window.innerWidth-t.right}}function L(e,t){let n=t.getBoundingClientRect(),r=Math.max(Q,window.innerHeight-n.height-Q),i=Math.max(Q,window.innerWidth-n.width-Q);return{bottom:Math.min(Math.max(e.bottom,Q),r),inlineEnd:Math.min(Math.max(e.inlineEnd,Q),i)}}function R(){try{let e=localStorage.getItem(Wi);if(!e)return null;let t=JSON.parse(e);return typeof t.bottom!=`number`||typeof t.inlineEnd!=`number`||!Number.isFinite(t.bottom)||!Number.isFinite(t.inlineEnd)?null:{bottom:t.bottom,inlineEnd:t.inlineEnd}}catch{return null}}function z(e){try{localStorage.setItem(Wi,JSON.stringify(e))}catch{}}function B(){let e=R(),t=_.value;!e||!t||t.getBoundingClientRect().width===0||(C.value=L(e,t))}function V(){let e=_.value;if(!e)return;let t=[...e.querySelectorAll(`.support-widget__link, .support-widget__fab`)];if(!t.length)return;let n=document.createElement(`div`);n.style.cssText=`position:fixed;left:-9999px;top:0;visibility:hidden;pointer-events:none;width:max-content;`;for(let e of t){let t=e.cloneNode(!0);t.style.width=`max-content`,n.appendChild(t)}document.body.appendChild(n);let r=Math.ceil(n.getBoundingClientRect().width);n.remove(),r>0&&e.style.setProperty(`--support-pill-width`,`${r}px`)}function H(){let e=y.value,t=_.value;if(!t||!m.value)return;t.style.transform=``,e&&(e.style.maxHeight=``,e.style.overflowY=``);let n=t.getBoundingClientRect(),r=Q-n.left,i=n.right-(window.innerWidth-Q),a=0;if(r>0&&i>0?a=r:(r>0&&(a+=r),i>0&&(a-=i)),a&&(t.style.transform=`translateX(${a}px)`),!e)return;let o=e.getBoundingClientRect();if(o.top{P=0,H()})}function W(e){if(e.button!==0)return;let t=_.value,n=e.currentTarget;if(!t||!(n instanceof HTMLElement))return;T=e.pointerId,j=!1,E=e.clientX,O=e.clientY,t.style.transform=``;let r=oe(t);k=r.bottom,A=r.inlineEnd,n.setPointerCapture(e.pointerId)}function se(e){if(T!==e.pointerId||!_.value)return;let t=e.clientX-E,n=e.clientY-O;if(!j){if(Math.hypot(t,n){M=!1},400))}function le(){if(M){M=!1,window.clearTimeout(N);return}ue()}ee(()=>{s(),document.addEventListener(`keydown`,fe),window.addEventListener(`resize`,pe)}),ne(_,()=>{m.value&&=!1});function ue(){p.value&&(m.value=!m.value)}function de(e){(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),ue())}function fe(e){e.key===`Escape`&&m.value&&(m.value=!1)}function pe(){let e=_.value;C.value&&e&&(C.value=L(C.value,e)),m.value&&U()}e(()=>{document.removeEventListener(`keydown`,fe),window.removeEventListener(`resize`,pe),window.clearTimeout(N),P&&window.cancelAnimationFrame(P),w.value&&(document.body.style.cursor=F,document.body.style.userSelect=I)});let me=h(()=>u.value&&p.value);return f(p,e=>{e||(m.value=!1)}),f(me,e=>{e&&n(()=>{V(),requestAnimationFrame(()=>B())})}),f(d,()=>{me.value&&n(()=>V())}),f(m,e=>{e&&n(()=>H())}),f(w,e=>{if(e){F=document.body.style.cursor,I=document.body.style.userSelect,document.body.style.cursor=`grabbing`,document.body.style.userSelect=`none`;return}document.body.style.cursor=F,document.body.style.userSelect=I}),(e,n)=>me.value?(o(),v(`div`,{key:0,ref_key:`rootRef`,ref:_,class:t([`support-widget`,{"support-widget--above-nav":a.aboveBottomNav}]),style:c(ie.value)},[x(`div`,{ref_key:`panelRef`,ref:y,class:t([`support-widget__panel`,{"support-widget__panel--open":m.value}]),role:`dialog`,"aria-label":`پشتیبانی`,"aria-hidden":!m.value,inert:!m.value||void 0},[x(`ul`,Fi,[(o(!0),v(b,null,r(D(d),e=>(o(),v(`li`,{key:e.kind},[x(`a`,{class:`support-widget__link`,href:e.href,title:e.subtitle,"aria-label":e.subtitle?`${e.label}، ${e.subtitle}`:e.label,target:e.kind===`phone`||e.kind===`email`?void 0:`_blank`,rel:e.kind===`phone`||e.kind===`email`?void 0:`noopener noreferrer`},[x(`span`,Li,l(e.label),1),x(`span`,{class:t([`support-widget__mark`,{"support-widget__mark--badge":D(re).has(e.kind)}]),"aria-hidden":`true`},[e.kind===`phone`?(o(),v(`svg`,Ri,[...n[1]||=[x(`path`,{d:`M8.2 4.8h2l1.1 2.6-1.5 1.1a11 11 0 0 0 5.7 5.7l1.1-1.5 2.6 1.1v2a1.6 1.6 0 0 1-1.7 1.6A13.4 13.4 0 0 1 6.6 6.5a1.6 1.6 0 0 1 1.6-1.7Z`,stroke:`currentColor`,"stroke-width":`1.6`,"stroke-linejoin":`round`,"stroke-linecap":`round`},null,-1)]])):e.kind===`email`?(o(),v(`svg`,zi,[...n[2]||=[x(`path`,{d:`M4 7.5h16v10H4v-10Z`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linejoin":`round`},null,-1),x(`path`,{d:`m4.5 8 7.5 5.5L19.5 8`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null,-1)]])):e.kind===`telegram`?(o(),v(`svg`,Bi,[...n[3]||=[x(`path`,{d:`M4.5 11.5 19 6.2l-4.8 12.2-3.2-4.6-6.5-2.3Z`,stroke:`currentColor`,"stroke-width":`1.8`,"stroke-linejoin":`round`},null,-1)]])):e.kind===`instagram`?(o(),v(`svg`,Vi,[...n[4]||=[x(`rect`,{x:`4.5`,y:`4.5`,width:`15`,height:`15`,rx:`4`,stroke:`currentColor`,"stroke-width":`1.6`},null,-1),x(`circle`,{cx:`12`,cy:`12`,r:`3.2`,stroke:`currentColor`,"stroke-width":`1.6`},null,-1)]])):(o(),v(`svg`,Hi,[...n[5]||=[x(`path`,{d:`M12 5.25A6.75 6.75 0 0 0 6.1 16.2c.2.36.26.78.16 1.18l-.4 1.58a.55.55 0 0 0 .68.67l1.58-.4c.4-.1.82-.04 1.18.16A6.75 6.75 0 1 0 12 5.25Z`,stroke:`currentColor`,"stroke-width":`1.6`,"stroke-linejoin":`round`},null,-1)]]))],2)],8,Ii)]))),128))])],10,Pi),x(`button`,{type:`button`,class:t([`support-widget__fab`,{"support-widget__fab--open":m.value,"support-widget__fab--dragging":w.value}]),"aria-label":`پشتیبانی`,"aria-expanded":m.value,"aria-haspopup":`dialog`,onPointerdown:W,onPointermove:se,onPointerup:ce,onPointercancel:ce,onClick:le,onKeydown:de,onContextmenu:n[0]||=te(()=>{},[`prevent`])},[...n[6]||=[x(`span`,{class:`support-widget__fab-label`},`پشتیبانی`,-1),x(`svg`,{class:`support-widget__fab-icon`,viewBox:`0 0 24 24`,width:`18`,height:`18`,"aria-hidden":`true`},[x(`path`,{d:`M12 5.25A6.75 6.75 0 0 0 6.1 16.2c.2.36.26.78.16 1.18l-.4 1.58a.55.55 0 0 0 .68.67l1.58-.4c.4-.1.82-.04 1.18.16A6.75 6.75 0 1 0 12 5.25Z`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.6`,"stroke-linejoin":`round`})],-1)]],42,Ui)],6)):g(``,!0)}}),[[`__scopeId`,`data-v-dfd8ae36`]]),qi={class:`app-layout`},Ji={class:`app-frame`},Yi={class:`app-main`},Xi={class:`app-main__content`},Zi={class:`app-content`},Qi=O({__name:`DefaultLayout`,setup(e){let n=ke(),r=h(()=>![`welcome`,`login`,`register`,`otp`,`check-mode`,`check-form`,`check-list`,`cash-settlement`,`order-success`].includes(n.name)&&!n.meta.hideNav),i=h(()=>[`check-mode`,`check-form`,`check-list`,`cash-settlement`].includes(n.name)),s=h(()=>n.name===`welcome`||n.name===`login`||n.name===`register`||n.name===`otp`),c=h(()=>n.name!==`welcome`);return(e,n)=>(o(),v(`div`,{class:t([`app-shell`,{"app-shell--no-nav":!r.value,"app-shell--wide":i.value,"app-shell--with-nav":r.value,"app-shell--immersive":s.value}])},[x(`div`,qi,[r.value?(o(),E(Ar,{key:0})):g(``,!0),x(`div`,Ji,[r.value?(o(),E(Ni,{key:0})):g(``,!0),x(`main`,Yi,[x(`div`,Xi,[x(`div`,Zi,[a(e.$slots,`default`)])])]),r.value?(o(),E(rr,{key:1})):g(``,!0)])]),c.value?(o(),E(Ki,{key:0,"above-bottom-nav":r.value},null,8,[`above-bottom-nav`])):g(``,!0)],2))}}),$i=[`type`,`disabled`],ea={key:0,class:`btn-spinner`},ta=T(O({__name:`BaseButton`,props:{variant:{},size:{},block:{type:Boolean},disabled:{type:Boolean},loading:{type:Boolean},type:{}},setup(e){return(n,r)=>(o(),v(`button`,{type:e.type??`button`,class:t([`btn`,[`btn-${e.variant??`primary`}`,`btn-${e.size??`md`}`,{"btn-block":e.block}]]),disabled:e.disabled||e.loading},[e.loading?(o(),v(`span`,ea)):g(``,!0),a(n.$slots,`default`,{},void 0,!0)],10,$i))}}),[[`__scopeId`,`data-v-3628a8bb`]]),na=_({open:!1,title:``,message:``,confirmLabel:`حذف`,cancelLabel:`انصراف`,tone:`danger`,resolve:null});function ra(){return na}function ia(e){return new Promise(t=>{Object.assign(na,{open:!0,title:e.title,message:e.message,confirmLabel:e.confirmLabel??`حذف`,cancelLabel:e.cancelLabel??`انصراف`,tone:e.tone??`danger`,resolve:t})})}function aa(e){na.resolve?.(e),na.open=!1,na.resolve=null}var oa={class:`dialog card confirm-dialog`},sa={id:`confirm-dialog-title`,class:`confirm-dialog__title`},ca={class:`confirm-dialog__message`},la={class:`dialog-actions confirm-dialog__actions`},ua=T(O({__name:`ConfirmDialog`,setup(e){let t=ra();function n(){aa(!1)}function r(){aa(!0)}return(e,a)=>D(t).open?(o(),v(`div`,{key:0,class:`dialog-overlay confirm-dialog-overlay`,role:`dialog`,"aria-modal":`true`,"aria-labelledby":`confirm-dialog-title`,onClick:te(n,[`self`])},[x(`div`,oa,[x(`h3`,sa,l(D(t).title),1),x(`p`,ca,l(D(t).message),1),x(`div`,la,[p(ta,{variant:`outline`,onClick:n},{default:i(()=>[y(l(D(t).cancelLabel),1)]),_:1}),p(ta,{variant:D(t).tone===`danger`?`danger`:`primary`,onClick:r},{default:i(()=>[y(l(D(t).confirmLabel),1)]),_:1},8,[`variant`])])])])):g(``,!0)}}),[[`__scopeId`,`data-v-2e50e2a7`]]),da=O({__name:`IconSuccessCircle`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(o(),E(M,{icon:`vuesax-linear:tick-circle`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),fa=[`aria-labelledby`,`aria-describedby`],pa={class:`message-modal__head`},ma={class:`message-modal__icon`,"aria-hidden":`true`},ha={key:1,class:`message-modal__icon-fallback`},ga={id:`message-modal-title`,class:`message-modal__title`},_a={id:`message-modal-body`,class:`message-modal__body`},va={class:`message-modal__text`},ya=T(O({__name:`AppToast`,setup(r){let{message:a,title:s,tone:c,clear:u}=si(),d=S(null);function m(e){return e===`error`?`!`:e===`warning`?`⚠`:`i`}let h={success:`message-modal--success`,error:`message-modal--error`,info:`message-modal--info`,warning:`message-modal--warning`};function _(e){e.key===`Escape`&&(e.preventDefault(),u())}function b(e){typeof document>`u`||(document.documentElement.style.overflow=e?`hidden`:``,document.body.style.overflow=e?`hidden`:``)}return f(a,async(e,t,r)=>{let i=!!e;b(i),i?(document.addEventListener(`keydown`,_),r(()=>document.removeEventListener(`keydown`,_)),await n(),d.value?.querySelector(`button`)?.focus()):document.removeEventListener(`keydown`,_)},{flush:`post`}),e(()=>{b(!1),document.removeEventListener(`keydown`,_)}),(e,n)=>(o(),E(C,{to:`body`},[p(j,{name:`message-modal-fade`},{default:i(()=>[D(a)?(o(),v(`div`,{key:0,class:`dialog-overlay message-modal-overlay`,role:`presentation`,onClick:n[0]||=te((...e)=>D(u)&&D(u)(...e),[`self`])},[x(`div`,{class:t([`dialog card message-modal`,h[D(c)]]),role:`alertdialog`,"aria-modal":`true`,"aria-labelledby":D(a)?`message-modal-title`:void 0,"aria-describedby":D(a)?`message-modal-body`:void 0},[x(`header`,pa,[x(`span`,ma,[D(c)===`success`?(o(),E(da,{key:0,size:40})):(o(),v(`span`,ha,l(m(D(c))),1))]),x(`h2`,ga,l(D(s)),1)]),x(`div`,_a,[x(`p`,va,l(D(a)),1)]),x(`footer`,{ref_key:`footerRef`,ref:d,class:`message-modal__footer dialog-actions`},[p(ta,{block:``,onClick:D(u)},{default:i(()=>[...n[1]||=[y(`متوجه شدم`,-1)]]),_:1},8,[`onClick`])],512)],10,fa)])):g(``,!0)]),_:1})]))}}),[[`__scopeId`,`data-v-2ec86b0d`]]),ba=O({__name:`App`,setup(e){let t=_i(),n=W(),r=Zr(),a=U(),s=Qr(),c=Oe(),l=S(`page-fade`);function d(e){return e.split(`/`).filter(Boolean).length}return c.beforeEach((e,t)=>{if(!t.name){l.value=`page-fade`;return}let n=Vn(d(e.path)-d(t.path),-1,1);n>0?l.value=`page-forward`:n<0?l.value=`page-back`:l.value=`page-fade`}),ee(async()=>{await t.hydrate(),t.isAuthenticated&&(await Promise.all([a.loadCompanies(),n.hydrate(),r.hydrate(),s.hydrate()]),fi())}),I(()=>{t.isAuthenticated&&s.refreshUnreadCount()},6e4,{immediate:!1}),(e,t)=>(o(),v(b,null,[p(Qi,null,{default:i(()=>[p(D(un),null,{default:i(({Component:e,route:t})=>[p(j,{name:l.value,mode:`out-in`},{default:i(()=>[(o(),v(`div`,{key:t.path,class:`page-transition page-shell`},[(o(),E(u(e)))]))]),_:2},1032,[`name`])]),_:1})]),_:1}),p(ua),p(ya)],64))}}),xa=`modulepreload`,Sa=function(e){return`/`+e},Ca={},$=function(e,t,n){let r=Promise.resolve();if(t&&t.length>0){let e=document.getElementsByTagName(`link`),i=document.querySelector(`meta[property=csp-nonce]`),a=i?.nonce||i?.getAttribute(`nonce`);function o(e){return Promise.all(e.map(e=>Promise.resolve(e).then(e=>({status:`fulfilled`,value:e}),e=>({status:`rejected`,reason:e}))))}function s(e){return import.meta.resolve?import.meta.resolve(e):new URL(e,import.meta.url).href}r=o(t.map(t=>{if(t=Sa(t,n),t=s(t),t in Ca)return;Ca[t]=!0;let r=t.endsWith(`.css`);for(let n=e.length-1;n>=0;n--){let i=e[n];if(i.href===t&&(!r||i.rel===`stylesheet`))return}let i=document.createElement(`link`);if(i.rel=r?`stylesheet`:xa,r||(i.as=`script`),i.crossOrigin=``,i.href=t,a&&i.setAttribute(`nonce`,a),document.head.appendChild(i),r)return new Promise((e,n)=>{i.addEventListener(`load`,e),i.addEventListener(`error`,()=>n(Error(`Unable to preload CSS for ${t}`)))})}))}function i(e){let t=new Event(`vite:preloadError`,{cancelable:!0});if(t.payload=e,window.dispatchEvent(t),!t.defaultPrevented)throw e}return r.then(t=>{for(let e of t||[])e.status===`rejected`&&i(e.reason);return e().catch(i)})},wa=dn({history:Mt(`/`),routes:[{path:`/welcome`,name:`welcome`,component:()=>$(()=>import(`./WelcomeView-dH4aiNDy.js`),__vite__mapDeps([0,1,2,3])),meta:{guest:!0,hideNav:!0}},{path:`/login`,name:`login`,component:()=>$(()=>import(`./LoginView-CN1LsC3t.js`),__vite__mapDeps([4,1,5,6,7,8,9,10,2,11,12,13,14,15,16])),meta:{guest:!0,hideNav:!0}},{path:`/register`,name:`register`,component:()=>$(()=>import(`./RegisterView-BXt1mR93.js`),__vite__mapDeps([17,1,5,6,7,8,18,9,10,2,11,12,13,14,15,19])),meta:{guest:!0,hideNav:!0}},{path:`/otp`,name:`otp`,component:()=>$(()=>import(`./OtpView-DSgorpHY.js`),__vite__mapDeps([20,1,5,6,21,7,9,10,2,11,12,13,15,22])),meta:{guest:!0,hideNav:!0}},{path:`/`,name:`home`,component:()=>$(()=>import(`./HomeView-BgFl9KRb.js`),__vite__mapDeps([23,1,5,6,24,21,7,25,10,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40])),meta:{requiresAuth:!0}},{path:`/companies`,redirect:`/categories`},{path:`/categories`,name:`categories`,component:()=>$(()=>import(`./CategoriesView-BUy2GAk9.js`),__vite__mapDeps([41,1,5,6,42,10,43,26,27,28,29,25,44,45,30,31,32,46])),meta:{requiresAuth:!0}},{path:`/products`,name:`products`,component:()=>$(()=>import(`./ProductsView-B0IHOsMw.js`),__vite__mapDeps([47,1,5,6,42,48,43,49,10,50,26,27,28,29,25,44,45,31,32,51,52,34,33,39,53,24,21,7,54,55])),meta:{requiresAuth:!0}},{path:`/product`,name:`product`,component:()=>$(()=>import(`./ProductDetailView-2P8iuLL9.js`),__vite__mapDeps([56,1,5,6,7,57,29,25,58,8,59,10,26,27,28,45,30,31,34,33,35,36,37,38,39,60])),meta:{requiresAuth:!0}},{path:`/catalogs`,redirect:`/products`},{path:`/catalogs/:catalogId`,redirect:e=>({path:`/product`,query:{id:String(e.params.catalogId??``)}})},{path:`/catalog-requests`,name:`catalog-requests`,component:()=>$(()=>import(`./CatalogRequestsView-Daf5j2GU.js`),__vite__mapDeps([61,1,7,49,10,5,6,50,36,29,25,62])),meta:{requiresAuth:!0}},{path:`/catalog-requests/latest-status`,name:`catalog-request-latest-status`,component:()=>$(()=>import(`./LatestCatalogRequestStatusView-B9OfO5rw.js`),__vite__mapDeps([63,1,7,49,10,5,6,50,36,29,25,26,27,64,65,66])),meta:{requiresAuth:!0}},{path:`/favorites`,name:`favorites`,component:()=>$(()=>import(`./FavoritesView-Q3gbkHep.js`),__vite__mapDeps([67,1,5,6,7,49,10,50,26,27,28,29,25,33,39,68])),meta:{requiresAuth:!0}},{path:`/customers`,name:`customers`,component:()=>$(()=>import(`./CustomersView-yj__rh-t.js`),__vite__mapDeps([69,1,7,18,5,6,70,48,49,10,50,26,27,28,29,25,71,8,12,13,15,72,73,74,51,52,75])),meta:{requiresAuth:!0,agentOnly:!0}},{path:`/customers/new`,redirect:e=>({path:`/customers`,query:{...e.query,create:`1`}})},{path:`/customer`,name:`customer`,component:()=>$(()=>import(`./CustomerDetailView-CkjR4WPp.js`),__vite__mapDeps([76,1,5,6,7,59,77,14,78,49,10,50,26,27,28,29,25,79,80,81,82,83,84,71,8,12,13,15,72,73,74,85])),meta:{requiresAuth:!0,agentOnly:!0}},{path:`/meeting-report`,redirect:e=>({path:`/customer`,query:{id:String(e.query.customerId??``),tab:`reports`,meetingReport:`1`}})},{path:`/reminders`,name:`reminders`,component:()=>$(()=>import(`./RemindersView-pG6M0HAE.js`),__vite__mapDeps([86,1,5,6,7,70,10,87,26,27,28,29,25,30,79,80,82,83,84,53,24,21,54,88])),meta:{requiresAuth:!0,agentOnly:!0}},{path:`/reminder`,name:`reminder`,component:()=>$(()=>import(`./ReminderDetailView-8V-oDMXC.js`),__vite__mapDeps([89,1,49,10,5,6,50,26,27,28,29,25,90])),meta:{requiresAuth:!0,agentOnly:!0,hideNav:!0}},{path:`/companies/:companyId/catalogs`,redirect:e=>({path:`/products`,query:{companyId:String(e.params.companyId??``)}})},{path:`/companies/:companyId/catalogs/:catalogId/products`,redirect:e=>({path:`/products`,query:{companyId:String(e.params.companyId??``)}})},{path:`/cart`,name:`cart`,component:()=>$(()=>import(`./CartView-_JOMEanl.js`),__vite__mapDeps([91,1,5,6,7,58,29,8,25,57,59,92,93,94,10,12,13,95,96,97,78,43,98])),meta:{requiresAuth:!0}},{path:`/orders`,name:`orders`,component:()=>$(()=>import(`./OrdersView-BPdTqQNi.js`),__vite__mapDeps([99,1,5,6,7,57,29,25,92,93,94,77,10,83,48,87,100])),meta:{requiresAuth:!0}},{path:`/orders/latest-status`,name:`order-latest-status`,component:()=>$(()=>import(`./LatestOrderStatusView-gdIC0Keq.js`),__vite__mapDeps([101,1,7,49,10,5,6,50,26,27,64,65,102])),meta:{requiresAuth:!0}},{path:`/order`,name:`order-query`,redirect:e=>{let t=String(e.query.id??``);return t?{path:`/orders/${t}`}:{name:`orders`}}},{path:`/orders/:id`,name:`order-detail`,component:()=>$(()=>import(`./OrderDetailView-CeMJPWH_.js`),__vite__mapDeps([103,1,5,6,24,21,7,8,77,10,12,13,15,104,105,106,79,80,82,83,84,53,54,107])),meta:{requiresAuth:!0}},{path:`/orders/:id/success`,name:`order-success`,component:()=>$(()=>import(`./OrderSuccessView-CHvxXHyZ.js`),__vite__mapDeps([108,1,7,49,10,5,6,50,30,109])),meta:{requiresAuth:!0,hideNav:!0}},{path:`/orders/:id/settlement`,name:`settlement`,component:()=>$(()=>import(`./SettlementTypeView-C3nP1V6W.js`),__vite__mapDeps([110,1,5,6,7,111,12,13,96,97,49,10,50,104,112,113])),meta:{requiresAuth:!0}},{path:`/orders/:id/cash`,name:`cash-settlement`,component:()=>$(()=>import(`./CashSettlementView-DMsMuhva.js`),__vite__mapDeps([114,1,7,57,29,25,77,49,10,5,6,50,112,104,115])),meta:{requiresAuth:!0,hideNav:!0}},{path:`/orders/:id/check-mode`,name:`check-mode`,component:()=>$(()=>import(`./CheckModeSelectView-KJJE3f5u.js`),__vite__mapDeps([116,1,7,111,5,6,49,10,50,112,104,81,117])),meta:{requiresAuth:!0,hideNav:!0}},{path:`/orders/:id/check-form`,name:`check-form`,component:()=>$(()=>import(`./CheckFormView-tFovxTRe.js`),__vite__mapDeps([118,1,5,6,7,8,111,12,13,15,49,10,50,112,104,72,73,105,106,79,80,119])),meta:{requiresAuth:!0,hideNav:!0}},{path:`/orders/:id/check-list`,name:`check-list`,component:()=>$(()=>import(`./CheckListView-B39-XRBU.js`).then(e=>e.n),__vite__mapDeps([120,1,7,93,5,6,94,10,12,13,112,104,121])),meta:{requiresAuth:!0,hideNav:!0}},{path:`/profile`,name:`profile`,component:()=>$(()=>import(`./ProfileView-4jYZXvL7.js`),__vite__mapDeps([122,1,5,6,7,59,123,77,26,27,28,29,25,34,33,124])),meta:{requiresAuth:!0}},{path:`/profile/edit`,name:`profile-edit`,component:()=>$(()=>import(`./ProfileEditView-D8y7Pway.js`),__vite__mapDeps([125,1,5,6,25,12,13,15,72,73,37,126,10,127,128])),meta:{requiresAuth:!0}},{path:`/profile/addresses`,name:`profile-addresses`,component:()=>$(()=>import(`./AddressesView-2ETl40m5.js`),__vite__mapDeps([129,1,5,6,24,21,25,70,95,37,126,10,127,130])),meta:{requiresAuth:!0}},{path:`/profile/security`,name:`profile-security`,component:()=>$(()=>import(`./ProfileSecurityView-BVkxmi2F.js`),__vite__mapDeps([131,1,12,13,15,72,73,126,10,5,6,127,132])),meta:{requiresAuth:!0}},{path:`/profile/notifications`,name:`profile-notifications`,component:()=>$(()=>import(`./ProfileNotificationsView-DrsdXR64.js`),__vite__mapDeps([133,1,5,6,7,93,94,126,10,127,134])),meta:{requiresAuth:!0}},{path:`/profile/display`,name:`profile-display`,component:()=>$(()=>import(`./ProfileDisplayView-BremQpkm.js`),__vite__mapDeps([135,1,5,6,21,136,29,24,126,10,127,137])),meta:{requiresAuth:!0}},{path:`/profile/checks`,name:`profile-checks`,component:()=>$(()=>import(`./ProfileChecksView-DW2GQwpr.js`),__vite__mapDeps([138,120,1,7,93,5,6,94,10,12,13,112,104,121])),meta:{requiresAuth:!0}},{path:`/:pathMatch(.*)*`,name:`not-found`,component:()=>$(()=>import(`./NotFoundView-DcuA7MTj.js`),__vite__mapDeps([139,1,140]))}],scrollBehavior(){return{top:0}}});wa.beforeEach(async e=>{await _i().hydrate();let t=Fr();return e.meta.requiresAuth&&!t?{name:`welcome`,query:{redirect:e.fullPath}}:e.meta.guest&&t||e.meta.agentOnly&&Nr()?.appRole!==`agent`?{name:`home`}:!0});var Ta=A(ba),Ea=F();Ta.use(Ea),Ta.use(wa),he(Ea),Ta.mount(`#app`),`serviceWorker`in navigator&&window.addEventListener(`load`,()=>{navigator.serviceWorker.register(`/sw.js`,{scope:`/`})});export{Oe as C,ke as S,Wr as _,xi as a,gr as b,_i as c,Qr as d,Zr as f,Ur as g,qr as h,wi as i,gi as l,Xr as m,ia as n,yi as o,Yr as p,ta as r,vi as s,da as t,si as u,Gr as v,Wn as x,_r as y}; \ No newline at end of file diff --git a/dist/assets/index-DYwnTikp.js b/dist/assets/index-DYwnTikp.js deleted file mode 100644 index d657905..0000000 --- a/dist/assets/index-DYwnTikp.js +++ /dev/null @@ -1,2 +0,0 @@ -const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/WelcomeView-C4--jdQ8.js","assets/_plugin-vue_export-helper-1xMDlcEE.js","assets/nademitex-auth-logo-CQhPwje_.js","assets/WelcomeView-2wVBLEk1.css","assets/LoginView-CYh1C8uL.js","assets/BasicIcon-DPmc0iaK.js","assets/BasicIcon-QF_b9Svq.css","assets/format-C72AoJ2H.js","assets/validation-Duyyve7l.js","assets/AuthShell-BRlVYnTX.js","assets/IconChevronBack-BsHmfODG.js","assets/AuthShell-C2CigAry.css","assets/FormErrorBanner-Ud1D04xf.js","assets/FormErrorBanner-Hje8L-00.css","assets/IconPhone-BSof4l2r.js","assets/formErrors-DglFjYkZ.js","assets/LoginView-53ZsC6o4.css","assets/RegisterView-CWi6xfK_.js","assets/IconProfile-ginWFJfQ.js","assets/RegisterView-C8h_ajs0.css","assets/OtpView-ynM94iKr.js","assets/dist-U-AqZ6hP.js","assets/OtpView-BAQ3aimw.css","assets/HomeView-BmHs1we_.js","assets/dist-Bc4P4ngC.js","assets/http-CU_N-R2R.js","assets/PageSkeleton-DYdjm4l9.js","assets/PageSkeleton-CaQ4bDKV.css","assets/crm-CgnSby61.js","assets/pinia-BK9B9Wwf.js","assets/useGoBack-DnRfwA4b.js","assets/useTouchSwipe-C8fUyAcQ.js","assets/bannerLink-BW8t2Oqp.js","assets/IconBookmark-CQq-TOS-.js","assets/IconHeart-CvzbNH_T.js","assets/AddressCompletionModal-DV8NqYZ8.js","assets/catalogRequests-COPPKp3x.js","assets/addresses-tV-zgZYG.js","assets/AddressCompletionModal-CRKRndkm.css","assets/productAvailability-B5nVr_sJ.js","assets/HomeView-Bny7w3RA.css","assets/CategoriesView-BBAIojBo.js","assets/IconCatalog-BaNuPmu8.js","assets/IconDiamond-BZQtRyIy.js","assets/useSlotBanners-VeAKsYT3.js","assets/IconWeave-DAcvD2P0.js","assets/CategoriesView-CMnlVSez.css","assets/ProductsView-BHnNS9AU.js","assets/IconFilter-CeX90aW_.js","assets/PageHeader-C5c2Pzrn.js","assets/PageHeader-BfLmRSdd.css","assets/SearchField-dVDn9y5S.js","assets/SearchField-QJMYJEg3.css","assets/AppSelect-CbWqXW3b.js","assets/AppSelect-BSCEbrV4.css","assets/ProductsView-Cftto3rD.css","assets/ProductDetailView-5IPJ4kFG.js","assets/catalog-DWpH1dVc.js","assets/cart-F5Rptvi1.js","assets/IconCart-D9TX5E-P.js","assets/ProductDetailView-BhHhAbbF.css","assets/CatalogRequestsView-BtBi9qJl.js","assets/CatalogRequestsView-B4MH1m71.css","assets/LatestCatalogRequestStatusView-BKQRyTdg.js","assets/SimpleStatusTimeline-C5IzJmCG.js","assets/SimpleStatusTimeline-DkF151UZ.css","assets/LatestCatalogRequestStatusView-C3eK4taf.css","assets/FavoritesView-qjhpwB4y.js","assets/FavoritesView-jColzuRg.css","assets/CustomersView-Bpq3-lKt.js","assets/IconPlus-Dk2FJATn.js","assets/CustomerCreateOverlay-BV-An-zG.js","assets/BaseInput-CpE3bVJZ.js","assets/BaseInput-BKq5OFkZ.css","assets/CustomerCreateOverlay-JNFd7rvA.css","assets/CustomersView-ZfDgnskm.css","assets/CustomerDetailView-7DfKtoIe.js","assets/constants-ptWoEwwP.js","assets/IconClipboardEmpty-DMrB9tzG.js","assets/PersianDateInput-BcTTynHd.js","assets/PersianDateInput-CQDjJN3F.css","assets/IconEditPen-D6lQ4xNz.js","assets/TimeInput-D6PzFPdF.js","assets/IconProgressClock-C5Z0LodX.js","assets/TimeInput-YvgZhBw7.css","assets/CustomerDetailView-DrIbQ27X.css","assets/RemindersView-CmQQhLnf.js","assets/IconMoreVertical-DpXrbzlD.js","assets/RemindersView-BU6rqJ2Z.css","assets/ReminderDetailView-bB7d06zX.js","assets/ReminderDetailView-Bgb1iArR.css","assets/CartView-CbjvTlMq.js","assets/IconOrders-Cf-FXBIB.js","assets/EmptyState-DoHTAy4d.js","assets/EmptyState-D6A5GmrP.css","assets/IconTrash-B73-wwf6.js","assets/CheckoutStepper-DptjKnv0.js","assets/CheckoutStepper-hqk-kVCz.css","assets/CartView-BIcoGdy0.css","assets/OrdersView-8q5gwU0V.js","assets/OrdersView-38EjyGTh.css","assets/LatestOrderStatusView-Bw1EA_ra.js","assets/LatestOrderStatusView-Dt4fuopS.css","assets/OrderDetailView-PxnhEnTG.js","assets/orderInvoice-DPYzRyAs.js","assets/CurrencyInput-Cu2dRPFo.js","assets/CurrencyInput-ByU-DLUz.css","assets/OrderDetailView-cbtSg9bS.css","assets/OrderSuccessView-BWqBSxwt.js","assets/OrderSuccessView-BI6XPtrV.css","assets/SettlementTypeView-BX-jH-Nn.js","assets/IconCheckBook-IuV8Li8k.js","assets/useRequirePricedOrder-Bivuv5Mx.js","assets/SettlementTypeView-DQbe-3F7.css","assets/CashSettlementView-D_RtxoI6.js","assets/CashSettlementView-CM8tye-z.css","assets/CheckModeSelectView-Cab34XIX.js","assets/CheckModeSelectView-BZlKzxFL.css","assets/CheckFormView-B9M6Dswt.js","assets/CheckFormView-Cgp6kUZ2.css","assets/CheckListView-DEwQImhv.js","assets/CheckListView-Br-acGNV.css","assets/ProfileView-B4uQciEk.js","assets/IconSettings-D9-FUXw4.js","assets/ProfileView-DVHaqeAW.css","assets/ProfileEditView-BPZL0Ss-.js","assets/ProfileSubpageLayout-CbD3-u8j.js","assets/ProfileSubpageLayout-DCtwNGmO.css","assets/ProfileEditView-QSX0nhkf.css","assets/AddressesView-C3SN6Jwn.js","assets/AddressesView-DwLRUjs3.css","assets/ProfileSecurityView-BWpD4liS.js","assets/ProfileSecurityView-BjbybMSz.css","assets/ProfileNotificationsView-BtIUUGDp.js","assets/ProfileNotificationsView-BqMkB4wX.css","assets/ProfileDisplayView-prlxDHbu.js","assets/theme-DDmZuxb4.js","assets/ProfileDisplayView-CDaE5E6F.css","assets/ProfileChecksView-Du4b9ELG.js","assets/NotFoundView-DcuA7MTj.js","assets/NotFoundView-N95LQNdN.css"])))=>i.map(i=>d[i]); -import{A as e,At as t,E as n,F as r,G as i,I as a,M as o,N as s,Nt as c,Pt as l,R as u,S as d,U as f,_ as p,at as m,c as h,d as g,et as _,f as v,g as y,i as b,k as ee,l as x,nt as S,o as C,rt as te,t as w,u as T,ut as E,v as D,w as O}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{i as ne,l as re,n as k,t as A}from"./BasicIcon-DPmc0iaK.js";import{n as j,r as M,t as N}from"./pinia-BK9B9Wwf.js";import{l as P}from"./dist-U-AqZ6hP.js";import{t as ie}from"./dist-Bc4P4ngC.js";import{d as F,l as I,s as L,t as ae,v as R,y as z}from"./format-C72AoJ2H.js";import{i as B,n as V,r as H,t as U}from"./http-CU_N-R2R.js";import{t as oe}from"./catalog-DWpH1dVc.js";import{t as W}from"./cart-F5Rptvi1.js";import{n as se,t as ce}from"./IconCatalog-BaNuPmu8.js";import{t as le}from"./IconCart-D9TX5E-P.js";import{t as ue}from"./IconOrders-Cf-FXBIB.js";import{t as de}from"./IconProfile-ginWFJfQ.js";import{t as fe}from"./IconPlus-Dk2FJATn.js";import{t as pe}from"./IconCheckBook-IuV8Li8k.js";import{t as me}from"./IconSettings-D9-FUXw4.js";import{t as he}from"./theme-DDmZuxb4.js";(function(){let e=document.createElement(`link`).relList;if(e&&e.supports&&e.supports(`modulepreload`))return;for(let e of document.querySelectorAll(`link[rel="modulepreload"]`))n(e);new MutationObserver(e=>{for(let t of e)if(t.type===`childList`)for(let e of t.addedNodes)e.tagName===`LINK`&&e.rel===`modulepreload`&&n(e)}).observe(document,{childList:!0,subtree:!0});function t(e){let t={};return e.integrity&&(t.integrity=e.integrity),e.referrerPolicy&&(t.referrerPolicy=e.referrerPolicy),t.credentials=e.crossOrigin===`use-credentials`?`include`:e.crossOrigin===`anonymous`?`omit`:`same-origin`,t}function n(e){if(e.ep)return;e.ep=!0;let n=t(e);fetch(e.href,n)}})();function ge(e){return typeof e==`object`||`displayName`in e||`props`in e||`__vccOpts`in e}function _e(e){return e.__esModule||e[Symbol.toStringTag]===`Module`||e.default&&ge(e.default)}var G=Object.assign;function ve(e,t){let n={};for(let r in t){let i=t[r];n[r]=K(i)?i.map(e):e(i)}return n}var ye=()=>{},K=Array.isArray;function be(e,t){let n={};for(let r in e)n[r]=r in t?t[r]:e[r];return n}var xe=Symbol(``);function Se(e,t){return G(Error(),{type:e,[xe]:!0},t)}function q(e,t){return e instanceof Error&&xe in e&&(t==null||!!(e.type&t))}var Ce=Symbol(``),we=Symbol(``),Te=Symbol(``),Ee=Symbol(``),De=Symbol(``);function Oe(){return O(Te)}function ke(e){return O(Ee)}var Ae=typeof document<`u`,je=/#/g,Me=/&/g,Ne=/\//g,Pe=/=/g,Fe=/\?/g,Ie=/\+/g,Le=/%5B/g,Re=/%5D/g,ze=/%5E/g,Be=/%60/g,Ve=/%7B/g,He=/%7C/g,Ue=/%7D/g,We=/%20/g;function Ge(e){return e==null?``:encodeURI(``+e).replace(He,`|`).replace(Le,`[`).replace(Re,`]`)}function Ke(e){return Ge(e).replace(Ve,`{`).replace(Ue,`}`).replace(ze,`^`)}function qe(e){return Ge(e).replace(Ie,`%2B`).replace(We,`+`).replace(je,`%23`).replace(Me,`%26`).replace(Be,"`").replace(Ve,`{`).replace(Ue,`}`).replace(ze,`^`)}function Je(e){return qe(e).replace(Pe,`%3D`)}function Ye(e){return Ge(e).replace(je,`%23`).replace(Fe,`%3F`)}function Xe(e){return Ye(e).replace(Ne,`%2F`)}function Ze(e){if(e==null)return null;try{return decodeURIComponent(``+e)}catch{}return``+e}var Qe=/\/$/,$e=e=>e.replace(Qe,``);function et(e,t,n=`/`){let r,i={},a=``,o=``,s=t.indexOf(`#`),c=t.indexOf(`?`);return c=s>=0&&c>s?-1:c,c>=0&&(r=t.slice(0,c),a=t.slice(c,s>0?s:t.length),i=e(a.slice(1))),s>=0&&(r||=t.slice(0,s),o=t.slice(s,t.length)),r=ct(r??t,n),{fullPath:r+a+o,path:r,query:i,hash:Ze(o)}}function tt(e,t){let n=t.query?e(t.query):``;return t.path+(n&&`?`)+n+(t.hash||``)}function nt(e,t){return!t||!e.toLowerCase().startsWith(t.toLowerCase())?e:e.slice(t.length)||`/`}function rt(e,t,n){let r=t.matched.length-1,i=n.matched.length-1;return r>-1&&r===i&&it(t.matched[r],n.matched[i])&&at(t.params,n.params)&&e(t.query)===e(n.query)&&t.hash===n.hash}function it(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function at(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(var n in e)if(!ot(e[n],t[n]))return!1;return!0}function ot(e,t){return K(e)?st(e,t):K(t)?st(t,e):(e&&e.valueOf())===(t&&t.valueOf())}function st(e,t){return K(t)?e.length===t.length&&e.every((e,n)=>e===t[n]):e.length===1&&e[0]===t}function ct(e,t){if(e.startsWith(`/`))return e;if(!e)return t;let n=t.split(`/`),r=e.split(`/`),i=r[r.length-1];(i===`..`||i===`.`)&&r.push(``);let a=n.length-1,o,s;for(o=0;o1&&a--;else break;return n.slice(0,a).join(`/`)+`/`+r.slice(o).join(`/`)}var J={path:`/`,name:void 0,params:{},query:{},hash:``,fullPath:`/`,matched:[],meta:{},redirectedFrom:void 0};function lt(e){if(!e)if(Ae){let t=document.querySelector(`base`);e=t&&t.getAttribute(`href`)||`/`,e=e.replace(/^\w+:\/\/[^/]+/,``)}else e=`/`;return e[0]!==`/`&&e[0]!==`#`&&(e=`/`+e),$e(e)}var ut=/^[^#]+#/;function dt(e,t){return e.replace(ut,`#`)+t}function ft(e,t){let n=document.documentElement.getBoundingClientRect(),r=e.getBoundingClientRect();return{behavior:t.behavior,left:r.left-n.left-(t.left||0),top:r.top-n.top-(t.top||0)}}var pt=()=>({left:window.scrollX,top:window.scrollY});function mt(e){let t;if(`el`in e){let n=e.el,r=typeof n==`string`&&n.startsWith(`#`),i=typeof n==`string`?r?document.getElementById(n.slice(1)):document.querySelector(n):n;if(!i)return;t=ft(i,e)}else t=e;`scrollBehavior`in document.documentElement.style?window.scrollTo(t):window.scrollTo(t.left==null?window.scrollX:t.left,t.top==null?window.scrollY:t.top)}function ht(e,t){return(history.state?history.state.position-t:-1)+e}var gt=new Map;function _t(e,t){gt.set(e,t)}function vt(e){let t=gt.get(e);return gt.delete(e),t}function yt(e){return typeof e==`string`||e&&typeof e==`object`}function bt(e){return typeof e==`string`||typeof e==`symbol`}function xt(e){let t={};if(e===``||e===`?`)return t;let n=(e[0]===`?`?e.slice(1):e).split(`&`);for(let e=0;ee&&qe(e)):[r&&qe(r)]).forEach(e=>{e!==void 0&&(t+=(t.length?`&`:``)+n,e!=null&&(t+=`=`+e))})}return t}function Ct(e){let t={};for(let n in e){let r=e[n];r!==void 0&&(t[n]=K(r)?r.map(e=>e==null?null:``+e):r==null?r:``+r)}return t}function wt(){let e=[];function t(t){return e.push(t),()=>{let n=e.indexOf(t);n>-1&&e.splice(n,1)}}function n(){e=[]}return{add:t,list:()=>e.slice(),reset:n}}function Y(e,t,n,r,i,a=e=>e()){let o=r&&(r.enterCallbacks[i]=r.enterCallbacks[i]||[]);return()=>new Promise((s,c)=>{let l=e=>{e===!1?c(Se(4,{from:n,to:t})):e instanceof Error?c(e):yt(e)?c(Se(2,{from:t,to:e})):(o&&r.enterCallbacks[i]===o&&typeof e==`function`&&o.push(e),s())},u=a(()=>e.call(r&&r.instances[i],t,n,l)),d=Promise.resolve(u);e.length<3&&(d=d.then(l)),d.catch(e=>c(e))})}function Tt(e,t,n,r,i=e=>e()){let a=[];for(let o of e)for(let e in o.components){let s=o.components[e];if(!(t!==`beforeRouteEnter`&&!o.instances[e]))if(ge(s)){let c=(s.__vccOpts||s)[t];c&&a.push(Y(c,n,r,o,e,i))}else{let c=s();a.push(()=>c.then(a=>{if(!a)throw Error(`Couldn't resolve component "${e}" at "${o.path}"`);let s=_e(a)?a.default:a;o.mods[e]=a,o.components[e]=s;let c=(s.__vccOpts||s)[t];return c&&Y(c,n,r,o,e,i)()}))}}return a}function Et(e,t){let n=[],r=[],i=[],a=Math.max(t.matched.length,e.matched.length);for(let o=0;oit(e,a))?r.push(a):n.push(a));let s=e.matched[o];s&&(t.matched.find(e=>it(e,s))||i.push(s))}return[n,r,i]}var Dt=()=>location.protocol+`//`+location.host;function Ot(e,t){let{pathname:n,search:r,hash:i}=t,a=e.indexOf(`#`);if(a>-1){let t=i.includes(e.slice(a))?e.slice(a).length:1,n=i.slice(t);return n[0]!==`/`&&(n=`/`+n),nt(n,``)}return nt(n,e)+r+i}function kt(e,t,n,r){let i=[],a=[],o=null,s=({state:a})=>{let s=Ot(e,location),c=n.value,l=t.value,u=0;if(a){if(n.value=s,t.value=a,o&&o===c){o=null;return}u=l?a.position-l.position:0}else r(s);i.forEach(e=>{e(n.value,c,{delta:u,type:`pop`,direction:u?u>0?`forward`:`back`:``})})};function c(){o=n.value}function l(e){i.push(e);let t=()=>{let t=i.indexOf(e);t>-1&&i.splice(t,1)};return a.push(t),t}function u(){if(document.visibilityState===`hidden`){let{history:e}=window;if(!e.state)return;e.replaceState(G({},e.state,{scroll:pt()}),``)}}function d(){for(let e of a)e();a=[],window.removeEventListener(`popstate`,s),window.removeEventListener(`pagehide`,u),document.removeEventListener(`visibilitychange`,u)}return window.addEventListener(`popstate`,s),window.addEventListener(`pagehide`,u),document.addEventListener(`visibilitychange`,u),{pauseListeners:c,listen:l,destroy:d}}function At(e,t,n,r=!1,i=!1){return{back:e,current:t,forward:n,replaced:r,position:window.history.length,scroll:i?pt():null}}function jt(e){let{history:t,location:n}=window,r={value:Ot(e,n)},i={value:t.state};i.value||a(r.value,{back:null,current:r.value,forward:null,position:t.length-1,replaced:!0,scroll:null},!0);function a(r,a,o){let s=e.indexOf(`#`),c=s>-1?(n.host&&document.querySelector(`base`)?e:e.slice(s))+r:Dt()+e+r;try{t[o?`replaceState`:`pushState`](a,``,c),i.value=a}catch(e){console.error(e),n[o?`replace`:`assign`](c)}}function o(e,n){a(e,G({},t.state,At(i.value.back,e,i.value.forward,!0),n,{position:i.value.position}),!0),r.value=e}function s(e,n){let o=G({},i.value,t.state,{forward:e,scroll:pt()});a(o.current,o,!0),a(e,G({},At(r.value,e,null),{position:o.position+1},n),!1),r.value=e}return{location:r,state:i,push:s,replace:o}}function Mt(e){e=lt(e);let t=jt(e),n=kt(e,t.state,t.location,t.replace);function r(e,t=!0){t||n.pauseListeners(),history.go(e)}let i=G({location:``,base:e,go:r,createHref:dt.bind(null,e)},t,n);return Object.defineProperty(i,"location",{enumerable:!0,get:()=>t.location.value}),Object.defineProperty(i,"state",{enumerable:!0,get:()=>t.state.value}),i}var Nt={type:0,value:``},Pt=/[a-zA-Z0-9_]/;function Ft(e){if(!e)return[[]];if(e===`/`)return[[Nt]];if(!e.startsWith(`/`))throw Error(`Invalid path "${e}"`);function t(e){throw Error(`ERR (${n})/"${l}": ${e}`)}let n=0,r=n,i=[],a;function o(){a&&i.push(a),a=[]}let s=0,c,l=``,u=``;function d(){l&&=(n===0?a.push({type:0,value:l}):n===1||n===2||n===3?(a.length>1&&(c===`*`||c===`+`)&&t(`A repeatable param (${l}) must be alone in its segment. eg: '/:ids+.`),a.push({type:1,value:l,regexp:u,repeatable:c===`*`||c===`+`,optional:c===`*`||c===`?`})):t(`Invalid state to consume buffer`),``)}function f(){l+=c}for(;st.length?t.length===1&&t[0]===80?1:-1:0}function Vt(e,t){let n=0,r=e.score,i=t.score;for(;n0&&t[t.length-1]<0}var Ut={strict:!1,end:!0,sensitive:!1};function Wt(e,t,n){let r=G(zt(Ft(e.path),n),{record:e,parent:t,children:[],alias:[]});return t&&!r.record.aliasOf==!t.record.aliasOf&&t.children.push(r),r}function Gt(e,t){let n=[],r=new Map;t=be(Ut,t);function i(e){return r.get(e)}function a(e,n,r){let i=!r,s=qt(e);s.aliasOf=r&&r.record;let l=be(t,e),u=[s];if(`alias`in e){let t=typeof e.alias==`string`?[e.alias]:e.alias;for(let e of t)u.push(qt(G({},s,{components:r?r.record.components:s.components,path:e,aliasOf:r?r.record:s})))}let d,f;for(let t of u){let{path:u}=t;if(n&&u[0]!==`/`){let e=n.record.path,r=e[e.length-1]===`/`?``:`/`;t.path=n.record.path+(u&&r+u)}if(d=Wt(t,n,l),r?r.alias.push(d):(f||=d,f!==d&&f.alias.push(d),i&&e.name&&!Yt(d)&&o(e.name)),$t(d)&&c(d),s.children){let e=s.children;for(let t=0;t{o(f)}:ye}function o(e){if(bt(e)){let t=r.get(e);t&&(r.delete(e),n.splice(n.indexOf(t),1),t.children.forEach(o),t.alias.forEach(o))}else{let t=n.indexOf(e);t>-1&&(n.splice(t,1),e.record.name&&r.delete(e.record.name),e.children.forEach(o),e.alias.forEach(o))}}function s(){return n}function c(e){let t=Zt(e,n);n.splice(t,0,e),e.record.name&&!Yt(e)&&r.set(e.record.name,e)}function l(e,t){let i,a={},o,s;if(`name`in e&&e.name){if(i=r.get(e.name),!i)throw Se(1,{location:e});s=i.record.name,a=G(Kt(t.params,i.keys.filter(e=>!e.optional).concat(i.parent?i.parent.keys.filter(e=>e.optional):[]).map(e=>e.name)),e.params&&Kt(e.params,i.keys.map(e=>e.name))),o=i.stringify(a)}else if(e.path!=null)o=e.path,i=n.find(e=>e.re.test(o)),i&&(a=i.parse(o),s=i.record.name,i.keys.forEach(e=>{e.optional&&!a[e.name]&&delete a[e.name]}));else{if(i=t.name?r.get(t.name):n.find(e=>e.re.test(t.path)),!i)throw Se(1,{location:e,currentLocation:t});s=i.record.name,a=G({},t.params,e.params),o=i.stringify(a)}let c=[],l=i;for(;l;)c.unshift(l.record),l=l.parent;return{name:s,path:o,params:a,matched:c,meta:Xt(c)}}e.forEach(e=>a(e));function u(){n.length=0,r.clear()}return{addRoute:a,resolve:l,removeRoute:o,clearRoutes:u,getRoutes:s,getRecordMatcher:i}}function Kt(e,t){let n={};for(let r of t)r in e&&(n[r]=e[r]);return n}function qt(e){let t={path:e.path,redirect:e.redirect,name:e.name,meta:e.meta||{},aliasOf:e.aliasOf,beforeEnter:e.beforeEnter,props:Jt(e),children:e.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:`components`in e?e.components||null:e.component&&{default:e.component}};return Object.defineProperty(t,"mods",{value:{}}),t}function Jt(e){let t={},n=e.props||!1;if(`component`in e)t.default=n;else for(let r in e.components)t[r]=typeof n==`object`?n[r]:n;return t}function Yt(e){for(;e;){if(e.record.aliasOf)return!0;e=e.parent}return!1}function Xt(e){return e.reduce((e,t)=>G(e,t.meta),{})}function Zt(e,t){let n=0,r=t.length;for(;n!==r;){let i=n+r>>1;Vt(e,t[i])<0?r=i:n=i+1}let i=Qt(e);return i&&(r=t.lastIndexOf(i,r-1)),r}function Qt(e){let t=e;for(;t=t.parent;)if($t(t)&&Vt(e,t)===0)return t}function $t({record:e}){return!!(e.name||e.components&&Object.keys(e.components).length||e.redirect)}function en(e){let t=O(Te),n=O(Ee),r=h(()=>{let n=E(e.to);return t.resolve(n)}),i=h(()=>{let{matched:e}=r.value,{length:t}=e,i=e[t-1],a=n.matched;if(!i||!a.length)return-1;let o=a.findIndex(it.bind(null,i));if(o>-1)return o;let s=on(e[t-2]);return t>1&&on(i)===s&&a[a.length-1].path!==s?a.findIndex(it.bind(null,e[t-2])):o}),a=h(()=>i.value>-1&&an(n.params,r.value.params)),o=h(()=>i.value>-1&&i.value===n.matched.length-1&&at(n.params,r.value.params));function s(n={}){if(rn(n)){let n=t[E(e.replace)?`replace`:`push`](E(e.to)).catch(ye);return e.viewTransition&&typeof document<`u`&&`startViewTransition`in document&&document.startViewTransition(()=>n),n}return Promise.resolve()}return{route:r,href:h(()=>r.value.href),isActive:a,isExactActive:o,navigate:s}}function tn(e){return e.length===1?e[0]:e}var nn=D({name:`RouterLink`,compatConfig:{MODE:3},props:{to:{type:[String,Object],required:!0},replace:Boolean,activeClass:String,exactActiveClass:String,custom:Boolean,ariaCurrentValue:{type:String,default:`page`},viewTransition:Boolean},useLink:en,setup(e,{slots:t}){let n=_(en(e)),{options:r}=O(Te),i=h(()=>({[sn(e.activeClass,r.linkActiveClass,`router-link-active`)]:n.isActive,[sn(e.exactActiveClass,r.linkExactActiveClass,`router-link-exact-active`)]:n.isExactActive}));return()=>{let r=t.default&&tn(t.default(n));return e.custom?r:d(`a`,{"aria-current":n.isExactActive?e.ariaCurrentValue:null,href:n.href,onClick:n.navigate,class:i.value},r)}}});function rn(e){if(!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)&&!e.defaultPrevented&&(e.button===void 0||e.button===0)){if(e.currentTarget&&e.currentTarget.getAttribute){let t=e.currentTarget.getAttribute(`target`);if(/\b_blank\b/i.test(t))return}return e.preventDefault&&e.preventDefault(),!0}}function an(e,t){for(let n in t){let r=t[n],i=e[n];if(typeof r==`string`){if(r!==i)return!1}else if(!K(i)||i.length!==r.length||r.some((e,t)=>e.valueOf()!==i[t].valueOf()))return!1}return!0}function on(e){return e?e.aliasOf?e.aliasOf.path:e.path:``}var sn=(e,t,n)=>e??t??n,cn=D({name:`RouterView`,inheritAttrs:!1,props:{name:{type:String,default:`default`},route:Object},compatConfig:{MODE:3},setup(e,{attrs:t,slots:n}){let r=O(De),i=h(()=>e.route||r.value),a=O(we,0),o=h(()=>{let e=E(a),{matched:t}=i.value,n;for(;(n=t[e])&&!n.components;)e++;return e}),c=h(()=>i.value.matched[o.value]);s(we,h(()=>o.value+1)),s(Ce,c),s(De,i);let l=S();return f(()=>[l.value,c.value,e.name],([e,t,n],[r,i,a])=>{t&&(t.instances[n]=e,i&&i!==t&&e&&e===r&&(t.leaveGuards.size||(t.leaveGuards=i.leaveGuards),t.updateGuards.size||(t.updateGuards=i.updateGuards))),e&&t&&(!i||!it(t,i)||!r)&&(t.enterCallbacks[n]||[]).forEach(t=>t(e))},{flush:`post`}),()=>{let r=i.value,a=e.name,o=c.value,s=o&&o.components[a];if(!s)return ln(n.default,{Component:s,route:r});let u=o.props[a],f=u?u===!0?r.params:typeof u==`function`?u(r):u:null,p=d(s,G({},f,t,{onVnodeUnmounted:e=>{e.component.isUnmounted&&(o.instances[a]=null)},ref:l}));return ln(n.default,{Component:p,route:r})||p}}});function ln(e,t){if(!e)return null;let n=e(t);return n.length===1?n[0]:n}var un=cn;function dn(e){let t=Gt(e.routes,e),r=e.parseQuery||xt,i=e.stringifyQuery||St,a=e.history,o=wt(),s=wt(),c=wt(),l=m(J),u=J;Ae&&e.scrollBehavior&&`scrollRestoration`in history&&(history.scrollRestoration=`manual`);let d=ve.bind(null,e=>``+e),f=ve.bind(null,Xe),p=ve.bind(null,Ze);function h(e,n){let r,i;return bt(e)?(r=t.getRecordMatcher(e),i=n):i=e,t.addRoute(i,r)}function g(e){let n=t.getRecordMatcher(e);n&&t.removeRoute(n)}function _(){return t.getRoutes().map(e=>e.record)}function v(e){return!!t.getRecordMatcher(e)}function y(e,n){if(n=G({},n||l.value),typeof e==`string`){let i=et(r,e,n.path),o=t.resolve({path:i.path},n),s=a.createHref(i.fullPath);return G(i,o,{params:p(o.params),redirectedFrom:void 0,href:s})}let o;if(e.path!=null)o=G({},e,{path:et(r,e.path,n.path).path});else{let t=G({},e.params);for(let e in t)t[e]??delete t[e];o=G({},e,{params:f(t)}),n.params=f(n.params)}let s=t.resolve(o,n),c=e.hash||``;s.params=d(p(s.params));let u=tt(i,G({},e,{hash:Ke(c),path:s.path})),m=a.createHref(u);return G({fullPath:u,hash:c,query:i===St?Ct(e.query):e.query||{}},s,{redirectedFrom:void 0,href:m})}function b(e){return typeof e==`string`?et(r,e,l.value.path):G({},e)}function ee(e,t){if(u!==e)return Se(8,{from:t,to:e})}function x(e){return w(e)}function S(e){return x(G(b(e),{replace:!0}))}function C(e,t){let n=e.matched[e.matched.length-1];if(n&&n.redirect){let{redirect:r}=n,i=typeof r==`function`?r(e,t):r;return typeof i==`string`&&(i=i.includes(`?`)||i.includes(`#`)?i=b(i):{path:i},i.params={}),G({query:e.query,hash:e.hash,params:i.path==null?e.params:{}},i)}}function w(e,t){let n=u=y(e),r=l.value,a=e.state,o=e.force,s=e.replace===!0,c=C(n,r);if(c)return w(G(b(c),{state:typeof c==`object`?G({},a,c.state):a,force:o,replace:s}),t||n);let d=n;d.redirectedFrom=t;let f;return!o&&rt(i,r,n)&&(f=Se(16,{to:d,from:r}),I(r,r,!0,!1)),(f?Promise.resolve(f):O(d,r)).catch(e=>q(e)?q(e,2)?e:F(e):P(e,d,r)).then(e=>{if(e){if(q(e,2))return w(G({replace:s},b(e.to),{state:typeof e.to==`object`?G({},a,e.to.state):a,force:o}),t||d)}else e=re(d,r,!0,s,a);return ne(d,r,e),e})}function T(e,t){let n=ee(e,t);return n?Promise.reject(n):Promise.resolve()}function D(e){let t=R.values().next().value;return t&&typeof t.runWithContext==`function`?t.runWithContext(e):e()}function O(e,t){let n,[r,i,a]=Et(e,t);n=Tt(r.reverse(),`beforeRouteLeave`,e,t);for(let i of r)i.leaveGuards.forEach(r=>{n.push(Y(r,e,t))});let c=T.bind(null,e,t);return n.push(c),B(n).then(()=>{n=[];for(let r of o.list())n.push(Y(r,e,t));return n.push(c),B(n)}).then(()=>{n=Tt(i,`beforeRouteUpdate`,e,t);for(let r of i)r.updateGuards.forEach(r=>{n.push(Y(r,e,t))});return n.push(c),B(n)}).then(()=>{n=[];for(let r of a)if(r.beforeEnter)if(K(r.beforeEnter))for(let i of r.beforeEnter)n.push(Y(i,e,t));else n.push(Y(r.beforeEnter,e,t));return n.push(c),B(n)}).then(()=>(e.matched.forEach(e=>e.enterCallbacks={}),n=Tt(a,`beforeRouteEnter`,e,t,D),n.push(c),B(n))).then(()=>{n=[];for(let r of s.list())n.push(Y(r,e,t));return n.push(c),B(n)}).catch(e=>q(e,8)?e:Promise.reject(e))}function ne(e,t,n){c.list().forEach(r=>D(()=>r(e,t,n)))}function re(e,t,n,r,i){let o=ee(e,t);if(o)return o;let s=t===J,c=Ae?history.state:{};n&&(r||s?a.replace(e.fullPath,G({scroll:s&&c&&c.scroll},i)):a.push(e.fullPath,i)),l.value=e,I(e,t,n,s),F()}let k;function A(){k||=a.listen((e,t,n)=>{if(!z.listening)return;let r=y(e),i=C(r,z.currentRoute.value);if(i){w(G(i,{replace:!0,force:!0}),r).catch(ye);return}u=r;let o=l.value;Ae&&_t(ht(o.fullPath,n.delta),pt()),O(r,o).catch(e=>q(e,12)?e:q(e,2)?(w(G(b(e.to),{force:!0}),r).then(e=>{q(e,20)&&!n.delta&&n.type===`pop`&&a.go(-1,!1)}).catch(ye),Promise.reject()):(n.delta&&a.go(-n.delta,!1),P(e,r,o))).then(e=>{e||=re(r,o,!1),e&&(n.delta&&!q(e,8)?a.go(-n.delta,!1):n.type===`pop`&&q(e,20)&&a.go(-1,!1)),ne(r,o,e)}).catch(ye)})}let j=wt(),M=wt(),N;function P(e,t,n){F(e);let r=M.list();return r.length?r.forEach(r=>r(e,t,n)):console.error(e),Promise.reject(e)}function ie(){return N&&l.value!==J?Promise.resolve():new Promise((e,t)=>{j.add([e,t])})}function F(e){return N||(N=!e,A(),j.list().forEach(([t,n])=>e?n(e):t()),j.reset()),e}function I(t,r,i,a){let{scrollBehavior:o}=e;if(!Ae||!o)return Promise.resolve();let s=!i&&vt(ht(t.fullPath,0))||(a||!i)&&history.state&&history.state.scroll||null;return n().then(()=>o(t,r,s)).then(e=>t===l.value&&e&&mt(e)).catch(e=>t===l.value&&P(e,t,r))}let L=e=>a.go(e),ae,R=new Set,z={currentRoute:l,listening:!0,addRoute:h,removeRoute:g,clearRoutes:t.clearRoutes,hasRoute:v,getRoutes:_,resolve:y,options:e,push:x,replace:S,go:L,back:()=>L(-1),forward:()=>L(1),beforeEach:o.add,beforeResolve:s.add,afterEach:c.add,onError:M.add,isReady:ie,install(e){e.component(`RouterLink`,nn),e.component(`RouterView`,un),e.config.globalProperties.$router=z,Object.defineProperty(e.config.globalProperties,"$route",{enumerable:!0,get:()=>E(l)}),Ae&&!ae&&l.value===J&&(ae=!0,x(a.location).catch(e=>{}));let t={};for(let e in J)Object.defineProperty(t,e,{get:()=>l.value[e],enumerable:!0});e.provide(Te,z),e.provide(Ee,te(t)),e.provide(De,l);let n=e.unmount;R.add(e),e.unmount=function(){R.delete(e),R.size<1&&(u=J,k&&k(),k=null,l.value=J,ae=!1,N=!1),n()}}};function B(e){return e.reduce((e,t)=>e.then(()=>D(t)),Promise.resolve())}return z}var fn=typeof global==`object`&&global&&global.Object===Object&&global,pn=typeof self==`object`&&self&&self.Object===Object&&self,mn=(fn||pn||Function(`return this`)()).Symbol,hn=Object.prototype,gn=hn.hasOwnProperty,_n=hn.toString,vn=mn?mn.toStringTag:void 0;function yn(e){var t=gn.call(e,vn),n=e[vn];try{e[vn]=void 0;var r=!0}catch{}var i=_n.call(e);return r&&(t?e[vn]=n:delete e[vn]),i}var bn=Object.prototype.toString;function xn(e){return bn.call(e)}var Sn=`[object Null]`,Cn=`[object Undefined]`,wn=mn?mn.toStringTag:void 0;function Tn(e){return e==null?e===void 0?Cn:Sn:wn&&wn in Object(e)?yn(e):xn(e)}function En(e){return typeof e==`object`&&!!e}var Dn=`[object Symbol]`;function On(e){return typeof e==`symbol`||En(e)&&Tn(e)==Dn}var kn=/\s/;function An(e){for(var t=e.length;t--&&kn.test(e.charAt(t)););return t}var jn=/^\s+/;function Mn(e){return e&&e.slice(0,An(e)+1).replace(jn,``)}function Nn(e){var t=typeof e;return e!=null&&(t==`object`||t==`function`)}var Pn=NaN,Fn=/^[-+]0x[0-9a-f]+$/i,In=/^0b[01]+$/i,Ln=/^0o[0-7]+$/i,Rn=parseInt;function zn(e){if(typeof e==`number`)return e;if(On(e))return Pn;if(Nn(e)){var t=typeof e.valueOf==`function`?e.valueOf():e;e=Nn(t)?t+``:t}if(typeof e!=`string`)return e===0?e:+e;e=Mn(e);var n=In.test(e);return n||Ln.test(e)?Rn(e.slice(2),n?2:8):Fn.test(e)?Pn:+e}function Bn(e,t,n){return e===e&&(n!==void 0&&(e=e<=n?e:n),t!==void 0&&(e=e>=t?e:t)),e}function Vn(e,t,n){return n===void 0&&(n=t,t=void 0),n!==void 0&&(n=zn(n),n=n===n?n:0),t!==void 0&&(t=zn(t),t=t===t?t:0),Bn(zn(e),t,n)}var Hn=[{name:`home`,path:`/`,label:`خانه`,icon:se},{name:`products`,path:`/products`,label:`محصولات`,icon:ce},{name:`order-fab`,path:`/cart`,label:`ثبت سفارش`,icon:fe},{name:`orders`,path:`/orders`,label:`سفارش‌ها`,icon:ue},{name:`profile`,path:`/profile`,label:`پروفایل`,icon:de}],Un=[{name:`home`,path:`/`,label:`خانه`,icon:se},{name:`products`,path:`/products`,label:`محصولات`,icon:ce},{name:`cart`,path:`/cart`,label:`ثبت سفارش`,icon:le},{name:`orders`,path:`/orders`,label:`سفارش‌ها`,icon:ue},{name:`checks`,path:`/profile/checks`,label:`لیست چک‌ها`,icon:pe},{name:`settings`,path:`/profile/display`,label:`تنظیمات`,icon:me},{name:`profile`,path:`/profile`,label:`پروفایل`,icon:de}],Wn=`/categories`,Gn=[`/categories`,`/products`,`/product`,`/favorites`],Kn=[`/profile/display`,`/profile/edit`,`/profile/security`],qn=[`/profile/checks`,...Kn];function Jn(e,t){return t.some(t=>e===t||e.startsWith(`${t}/`))}function Yn(e,t,n){return e===`home`?n===`/`:e===`products`?Jn(n,Gn):e===`order-fab`||e===`cart`?n===`/cart`||n.startsWith(`/cart/`):e===`checks`?Jn(n,[`/profile/checks`]):e===`settings`?Jn(n,Kn):e===`profile`?n===`/profile`?!0:n.startsWith(`/profile/`)?!Jn(n,qn):!1:t===`/`?n===`/`:n.startsWith(t)}function Xn(e,t){return e.path}function Zn(e){return e===0?Wn:`/cart`}var Qn={class:`bottom-nav`,"aria-label":`ناوبری اصلی`},$n=[`aria-current`,`aria-label`,`onClick`],er={key:0,class:`nav-badge`},tr={key:0,class:`nav-label`},nr={key:1,class:`nav-label nav-label--fab`},rr=w(D({__name:`BottomNav`,setup(e){let n=ke(),i=Oe(),a=W(),s=h(()=>a.itemCount);function c(e,t){let n=t.currentTarget;if(n instanceof HTMLElement&&n.blur(),e===`/cart`){i.push(Zn(a.itemCount));return}i.push(e)}return(e,i)=>(o(),v(`nav`,Qn,[(o(!0),v(b,null,r(E(Hn),e=>(o(),v(`button`,{key:e.name,type:`button`,class:t([`nav-item`,{active:E(Yn)(e.name,e.path,E(n).path),"nav-item--fab":e.name===`order-fab`}]),"aria-current":E(Yn)(e.name,e.path,E(n).path)?`page`:void 0,"aria-label":e.label,onClick:t=>c(e.path,t)},[x(`span`,{class:t([`nav-icon`,{"nav-icon--fab":e.name===`order-fab`}])},[(o(),T(u(e.icon),{size:e.name===`order-fab`?26:22,"stroke-width":e.name===`order-fab`?1.8:1.5,color:e.name===`order-fab`?`#ffffff`:void 0},null,8,[`size`,`stroke-width`,`color`])),e.name===`order-fab`&&s.value>0?(o(),v(`span`,er,l(s.value),1)):g(``,!0)],2),e.name===`order-fab`?(o(),v(`span`,nr,l(e.label),1)):(o(),v(`span`,tr,l(e.label),1))],10,$n))),128))]))}}),[[`__scopeId`,`data-v-759f4bb7`]]);function ir(e){if(!e)return;let t=e.replace(/[^\d+]/g,``);return t?`tel:${t}`:void 0}function ar(e){let t=e?.trim();if(t)return`mailto:${t}`}function or(){return V(`/settings/public`,{auth:!1})}function sr(e){return e?.trim()??``}function cr(e){return/^https?:\/\//i.test(e)}function lr(e){if(!e)return;if(cr(e))return e;let t=e.replace(/[^\d]/g,``);if(t)return`https://wa.me/${t}`}function ur(e){if(!e)return;if(cr(e))return e;let t=e.replace(/^@/,``).replace(/^https?:\/\/(t\.me|telegram\.me)\//i,``).trim();if(t)return`https://t.me/${t}`}function dr(e){if(!e)return;if(cr(e))return e;let t=e.replace(/^@/,``).replace(/^instagram\.com\//i,``).trim();if(t)return`https://instagram.com/${t}`}function fr(e){if(!e)return[];let t=[],n=sr(e.supportWhatsapp),r=lr(n);r&&t.push({kind:`whatsapp`,label:`واتساپ`,href:r,subtitle:n});let i=sr(e.supportTelegram),a=ur(i);a&&t.push({kind:`telegram`,label:`تلگرام`,href:a,subtitle:i});let o=sr(e.supportInstagram),s=dr(o);s&&t.push({kind:`instagram`,label:`اینستاگرام`,href:s,subtitle:o});let c=sr(e.supportPhone),l=ir(c);l&&t.push({kind:`phone`,label:`تماس تلفنی`,href:l,subtitle:c});let u=sr(e.supportEmail),d=ar(u);return d&&t.push({kind:`email`,label:`ایمیل`,href:d,subtitle:u}),t}var X=S(null),pr=null,mr={supportPhone:null,supportEmail:null,supportWhatsapp:null,supportTelegram:null,supportInstagram:null,defaultSettlementCash:!0,defaultSettlementCheck:!0,defaultSettlementCashCheck:!1};function hr(){return X.value?Promise.resolve():(pr||=or().then(e=>{X.value=e}).catch(()=>{X.value=mr}),pr)}function gr(){let e=h(()=>X.value!==null),t=h(()=>fr(X.value)),n=h(()=>t.value.length>0),r=h(()=>X.value?.supportPhone??null),i=h(()=>X.value?.supportEmail??null),a=h(()=>ir(r.value)),o=h(()=>X.value?.defaultSettlementCash??!0),s=h(()=>X.value?.defaultSettlementCheck??!0),c=h(()=>X.value?.defaultSettlementCashCheck??!1);function l(){return hr()}return{load:l,loaded:e,supportPhone:r,supportEmail:i,supportHref:a,supportLinks:t,hasSupportLinks:n,defaultSettlementCash:o,defaultSettlementCheck:s,defaultSettlementCashCheck:c}}var _r=D({__name:`IconHeadset`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(o(),T(A,{icon:`vuesax-linear:headphone`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),vr=w(D({__name:`IconQemashMark`,props:{size:{default:72}},setup(e){return(t,n)=>(o(),v(`img`,{class:`brand-logo`,src:`/brand-mark.png`,alt:``,style:c({height:`${e.size}px`}),draggable:`false`},null,4))}}),[[`__scopeId`,`data-v-b6600860`]]),yr={class:`desktop-sidebar`,"aria-label":`ناوبری اصلی`},br={class:`desktop-sidebar__brand`},xr={class:`desktop-sidebar__nav`},Sr=[`aria-current`,`aria-label`,`title`,`onClick`],Cr={class:`desktop-sidebar__icon`},wr={class:`desktop-sidebar__label`},Tr={key:0,class:`desktop-sidebar__badge`},Er={class:`desktop-sidebar__support`},Dr={class:`desktop-sidebar__support-icon`,"aria-hidden":`true`},Or=[`href`,`aria-disabled`],kr={key:0,class:`desktop-sidebar__support-phone`,dir:`ltr`},Ar=w(D({__name:`DesktopSidebar`,setup(e){let n=ke(),i=Oe(),a=W(),{load:s,supportPhone:c,supportHref:d}=gr();ee(()=>{s()});let f=h(()=>a.itemCount),m=h(()=>a.selectedCompanyId||a.activeCart?.companyId||null);function _(e){if(e.name===`cart`){i.push(Zn(a.itemCount));return}i.push(Xn(e,m.value))}return(e,i)=>(o(),v(`aside`,yr,[x(`div`,br,[p(vr,{size:36}),i[1]||=x(`strong`,{class:`desktop-sidebar__title`},`نادمی تکس`,-1)]),x(`nav`,xr,[(o(!0),v(b,null,r(E(Un),e=>(o(),v(`button`,{key:e.name,type:`button`,class:t([`desktop-sidebar__item`,{active:E(Yn)(e.name,e.path,E(n).path)}]),"aria-current":E(Yn)(e.name,e.path,E(n).path)?`page`:void 0,"aria-label":e.label,title:e.label,onClick:t=>_(e)},[x(`span`,Cr,[(o(),T(u(e.icon),{size:20}))]),x(`span`,wr,l(e.label),1),e.name===`cart`&&f.value>0?(o(),v(`span`,Tr,l(f.value),1)):g(``,!0)],10,Sr))),128))]),x(`div`,Er,[x(`span`,Dr,[p(_r,{size:22})]),i[2]||=x(`strong`,{class:`desktop-sidebar__support-title`},`پشتیبانی و راهنما`,-1),i[3]||=x(`p`,{class:`desktop-sidebar__support-text`},` در صورت نیاز به راهنمایی یا گزارش مشکل با تیم پشتیبانی تماس بگیرید. `,-1),x(`a`,{href:E(d)??`#`,class:t([`desktop-sidebar__support-btn`,{"desktop-sidebar__support-btn--disabled":!E(d)}]),"aria-disabled":!E(d),onClick:i[0]||=e=>!E(d)&&e.preventDefault()},` تماس با پشتیبانی `,10,Or),E(c)?(o(),v(`p`,kr,l(E(c)),1)):g(``,!0)])]))}}),[[`__scopeId`,`data-v-69fbaed9`]]),jr=`ft_user`,Mr=`ft_pending_otp`;function Z(e){e?localStorage.setItem(jr,JSON.stringify(e)):localStorage.removeItem(jr)}function Nr(){try{let e=localStorage.getItem(jr);return e?JSON.parse(e):null}catch{return null}}function Pr(){return H()?Nr():null}function Fr(){return!!H()}function Ir(e){try{e?sessionStorage.setItem(Mr,JSON.stringify(e)):sessionStorage.removeItem(Mr)}catch{}}async function Lr(e,t){let n=I(e);if(!/^09\d{9}$/.test(n))return{success:!1,message:`شماره موبایل معتبر نیست.`};if(t.isRegister&&(!t.firstName?.trim()||!t.lastName?.trim()))return{success:!1,message:`نام و نام خانوادگی الزامی است.`};try{let e=t.referrerAgentCode?.trim()||void 0;Ir({phone:n,isRegister:t.isRegister,firstName:t.firstName,lastName:t.lastName,referrerAgentCode:e});let r=await V(`/auth/otp/request`,{method:`POST`,auth:!1,body:{phone:n,firstName:t.firstName,lastName:t.lastName,isRegister:t.isRegister,referrerAgentCode:e}}),i=r.debugCode?` (کد: ${r.debugCode})`:``;return{success:!0,message:`${r.message}${i}`}}catch(e){return{success:!1,message:e instanceof U?e.message:`ارسال کد ناموفق بود.`}}}async function Rr(e,t){let n=I(e);try{let e=await V(`/auth/otp/verify`,{method:`POST`,auth:!1,body:{phone:n,code:ae(t)}});return B(e.accessToken),Z(e.user),Ir(null),{success:!0,message:`ورود موفق.`,user:e.user}}catch(e){return{success:!1,message:e instanceof U?e.message:`تأیید کد ناموفق بود.`}}}function zr(){B(null),Z(null),Ir(null)}async function Br(){if(!H())return Z(null),null;try{let e=await V(`/auth/me`);return Z(e),e}catch{return Z(null),null}}async function Vr(e){try{let t=await V(`/auth/profile`,{method:`PATCH`,body:e});return Z(t),t}catch(t){let n=e.avatarUrl!==void 0&&e.firstName===void 0&&e.lastName===void 0&&e.nationalId===void 0&&e.address===void 0,r=Nr();if(!n||!r)throw t;let i={...r};return e.avatarUrl?i.avatarUrl=e.avatarUrl:delete i.avatarUrl,Z(i),i}}var Hr=`ft_pending_register`,Ur=[{id:`garment_producer`,label:`تولیدکننده پوشاک عمده`},{id:`atelier`,label:`مزون`},{id:`fabric_wholesaler`,label:`فروشنده عمده پارچه`}];function Wr(){try{let e=sessionStorage.getItem(Hr);if(!e)return null;let t=JSON.parse(e);return!t?.firstName?.trim()||!t?.lastName?.trim()?null:{firstName:t.firstName.trim(),lastName:t.lastName.trim(),jobCategory:t.jobCategory,referrerAgentCode:t.referrerAgentCode?.trim()||void 0}}catch{return null}}function Gr(e){if(e?.firstName?.trim()&&e?.lastName?.trim()){sessionStorage.setItem(Hr,JSON.stringify({firstName:e.firstName.trim(),lastName:e.lastName.trim(),jobCategory:e.jobCategory,referrerAgentCode:e.referrerAgentCode?.trim()||void 0}));return}sessionStorage.removeItem(Hr)}var Kr=`awaiting_settlement`;function qr(e){let t=e.statusHistory??[];for(let e=t.length-1;e>=0;--e){let n=t[e];if(n?.toStatus!==Kr)continue;let r=new Date(n.changedAt);if(!Number.isNaN(r.getTime()))return r}let n=new Date(e.createdAt);return Number.isNaN(n.getTime())?new Date(0):n}function Jr(){return{checkCount:0,totalAmount:0,nearestDueDate:null,farthestDueDate:null,rassDays:0,rassDate:null}}function Yr(e,t){if(e.length===0)return Jr();let n=new Date(t);n.setHours(0,0,0,0);let r=0,i=0,a=[];for(let t of e){if(!t.dueDate){r+=t.amount;continue}let e=R(t.dueDate);if(Number.isNaN(e.getTime())){r+=t.amount;continue}e.setHours(0,0,0,0),a.push(e);let o=e.getTime()-n.getTime(),s=Math.max(0,Math.round(o/864e5));r+=t.amount,i+=t.amount*s}let o=r>0?Math.round(i/r):0,s=new Date(n);return s.setDate(s.getDate()+o),a.sort((e,t)=>e.getTime()-t.getTime()),{checkCount:e.length,totalAmount:r,nearestDueDate:a[0]?z(a[0]):null,farthestDueDate:a.length?z(a[a.length-1]):null,rassDays:o,rassDate:z(s)}}function Xr(e,t){let n=new Date(t);n.setHours(0,0,0,0);let r=R(e);return Number.isNaN(r.getTime())?0:(r.setHours(0,0,0,0),Math.max(0,Math.round((r.getTime()-n.getTime())/864e5)))}var Zr=j(`order`,()=>{let e=S([]),t=S([]),n=S(null),r=S(null),i=S(null),a=S(!1),o=h(()=>t=>[...e.value].sort((e,t)=>new Date(t.createdAt).getTime()-new Date(e.createdAt).getTime()));function s(t){return e.value.find(e=>e.id===t)}function c(e,a){i.value=e,n.value=`check`,t.value=[],r.value=a??null}function l(e){i.value=e.id,n.value=`check`,r.value=e.checkMode??`full`,t.value=(e.checks??[]).map(e=>({...e}))}function u(){i.value=null,t.value=[],r.value=null,n.value=null}function d(e){r.value=e}function f(e){t.value.push({...e,id:L()})}function p(e,n){let r=t.value.findIndex(t=>t.id===e);r>=0&&(t.value[r]={...t.value[r],...n})}function m(e){t.value=t.value.filter(t=>t.id!==e)}function g(e){let n=i.value?s(i.value):void 0,r=e??(n?qr(n):new Date(0));return Yr(t.value,r)}async function _(){if(!H()){e.value=[];return}a.value=!0;try{e.value=await V(`/orders`)}catch{e.value=[]}finally{a.value=!1}}function v(){e.value=[],u()}function y(t){let n=e.value.findIndex(e=>e.id===t.id);n>=0?e.value[n]=t:e.value.unshift(t)}async function b(e){try{let t=await V(`/orders/${e}`);return y(t),t}catch{return null}}async function ee(t){if(!t.items.length)throw Error(`سبد خرید خالی است.`);if(t.id===`local`||t.items.some(e=>e.id.startsWith(`local-item-`)))throw Error(`سبد خرید با سرور همگام نیست. لطفاً دوباره محصولات را به سبد اضافه کنید.`);let n=[...new Set(t.items.map(e=>e.companyId).filter(Boolean))];if(!n.length)throw Error(`شرکت سبد مشخص نیست. سبد را خالی کنید و دوباره اضافه کنید.`);let r=t.notes?.trim()||``;try{let i=await V(`/orders`,{method:`POST`,body:{companyId:n[0],notes:r||void 0,items:t.items.map(e=>({productId:e.productId,meterage:Number(e.meterage),notes:e.notes}))}});return e.value.unshift(i),u(),i}catch(e){throw Error(e instanceof U?e.message:`ثبت سفارش ناموفق بود.`)}}async function x(e,t,n){try{let r=await V(`/orders/${e}/settlement`,{method:`POST`,body:{settlementType:t,checkMode:t===`check`?n??`full`:void 0}});return y(r),r}catch(e){throw Error(e instanceof U?e.message:`ثبت روش تسویه ناموفق بود.`)}}async function C(e,t){try{await V(`/orders/${e}/cash-receipt`,{method:`POST`,body:{amount:t.amount,transferDate:t.transferDate,transferTime:t.transferTime,...t.trackingNumber?.trim()?{trackingNumber:t.trackingNumber.trim()}:{},destinationAccountId:t.destinationAccountId,receiptImage:t.receiptImage,notes:t.notes}});let n=await b(e);if(!n)throw Error(`رسید ثبت شد ولی دریافت سفارش ناموفق بود.`);return n}catch(e){throw Error(e instanceof U?e.message:`ثبت رسید ناموفق بود.`)}}async function te(e,t,n){try{let r=await V(`/orders/${e}/checks`,{method:`PATCH`,body:{checkMode:n,checks:t.map(e=>({amount:e.amount,dueDate:e.dueDate,sayadId:e.sayadId,checkNumber:e.checkNumber,ownerNationalId:e.ownerNationalId,ownerFirstName:e.ownerFirstName,ownerLastName:e.ownerLastName,bankName:e.bankName,branchName:e.branchName,frontImage:e.frontImage,backImage:e.backImage,notes:e.notes,mode:e.mode}))}});return y(r),u(),r}catch(e){throw Error(e instanceof U?e.message:`ثبت چک‌ها ناموفق بود.`)}}async function w(e){return oe().loadPaymentBankAccounts()}async function T(e){return oe().loadBankAccounts(e)}return{orders:e,draftChecks:t,draftSettlementType:n,draftCheckMode:r,draftOrderId:i,loading:a,userOrders:o,getOrderById:s,startCheckDraft:c,loadChecksIntoDraft:l,clearCheckDraft:u,setCheckMode:d,addDraftCheck:f,updateDraftCheck:p,removeDraftCheck:m,getDraftRass:g,submitOrder:ee,chooseSettlement:x,submitCashReceipt:C,updateOrderChecks:te,hydrate:_,resetLocal:v,fetchOrder:b,getBankAccountsForOrder:w,getBankAccountsForCompany:T}}),Qr=j(`notification`,()=>{let e=S([]),t=S(0),n=S(!1),r=h(()=>t.value>0);async function i(){if(!H()){e.value=[],t.value=0;return}n.value=!0;try{e.value=await V(`/notifications`),t.value=e.value.filter(e=>!e.isRead).length}catch{e.value=[],t.value=0}finally{n.value=!1}}async function a(){if(!H()){t.value=0;return}try{let e=await V(`/notifications/unread-count`);t.value=e.count}catch{}}async function o(n){let r=e.value.find(e=>e.id===n);if(!(!r||r.isRead)){r.isRead=!0,t.value=Math.max(0,t.value-1);try{await V(`/notifications/${n}/read`,{method:`PATCH`})}catch{await i()}}}async function s(){if(t.value){e.value=e.value.map(e=>({...e,isRead:!0})),t.value=0;try{await V(`/notifications/read-all`,{method:`PATCH`})}catch{await i()}}}function c(){e.value=[],t.value=0}return{items:e,unreadCount:t,loading:n,hasUnread:r,hydrate:i,refreshUnreadCount:a,markRead:o,markAllRead:s,resetLocal:c}}),$r=S(``),ei=S(``),ti=S(`success`),ni=[],ri,ii=null;function ai(e){switch(e){case`error`:return`خطا`;case`warning`:return`هشدار`;case`info`:return`اطلاع`;default:return`موفقیت`}}function oi(e){$r.value=e.text,ei.value=e.title,ti.value=e.tone,ri=e.onDismiss}function si(){function e(e,t){let n=e.trim();if(!n)return;let r={text:n,tone:t?.tone??`success`,title:t?.title?.trim()??ai(t?.tone??`success`),onDismiss:t?.onDismiss};if(!$r.value){typeof document<`u`&&(ii=document.activeElement),oi(r);return}ni.push(r)}function t(){$r.value=``,ei.value=``;let e=ri;if(ri=void 0,e?.(),ni.length){oi(ni.shift());return}ii&&typeof ii.focus==`function`&&ii.focus(),ii=null}return{message:$r,title:ei,tone:ti,show:e,clear:t}}var ci=`admin_broadcast`,li=new Set;function ui(e){return e===`danger`?`error`:e===`success`||e===`warning`||e===`info`?e:`info`}function di(){li.clear()}function fi(){let e=Qr(),t=si(),n=e.items.filter(e=>!e.isRead&&e.event===ci).filter(e=>!li.has(e.id)).sort((e,t)=>new Date(e.sentAt).getTime()-new Date(t.sentAt).getTime());for(let r of n)li.add(r.id),t.show(r.body,{title:r.title,tone:ui(r.tone),onDismiss:()=>{e.markRead(r.id)}})}var pi=`ft_favorites`;function mi(){try{let e=localStorage.getItem(pi);if(!e)return[];let t=JSON.parse(e);return Array.isArray(t)?t.filter(e=>typeof e==`string`):[]}catch{return[]}}function hi(e){localStorage.setItem(pi,JSON.stringify(e))}var gi=j(`favorites`,()=>{let e=S(mi()),t=S(!1),n=S({}),r=h(()=>new Set(e.value));function i(e){return r.value.has(e)}async function a(){try{let t=await V(`/products/favorites/ids`);e.value=t,hi(t)}catch{e.value=mi()}finally{t.value=!0}}async function o(t){if(!t||n.value[t])return;n.value={...n.value,[t]:!0};let r=i(t);e.value=r?e.value.filter(e=>e!==t):[...e.value,t],hi(e.value);try{let n=await V(`/products/${t}/favorite`,{method:`POST`});e.value=n.favorited?[...new Set([...e.value.filter(e=>e!==t),t])]:e.value.filter(e=>e!==t),hi(e.value)}catch(n){if(!(n instanceof U&&n.status===404))throw e.value=r?[...new Set([...e.value,t])]:e.value.filter(e=>e!==t),hi(e.value),n}finally{let e={...n.value};delete e[t],n.value=e}}function s(){e.value=[],hi([]),t.value=!1}return{ids:e,loaded:t,pending:n,isFavorite:i,hydrate:a,toggle:o,resetLocal:s}}),_i=j(`auth`,()=>{let e=S(Pr()),t=S(!1),n=S(null),r=S(Wr()),i=h(()=>!!e.value),a=h(()=>e.value?`${e.value.firstName} ${e.value.lastName}`:``),o=h(()=>e.value?.appRole===`agent`),s=h(()=>!!e.value&&e.value.appRole!==`agent`);function c(){n.value=null}function l(){r.value=null,Gr(null)}async function u(e,i){t.value=!0,n.value=null;try{let t=Wr();r.value=t;let a=i.firstName?.trim()||t?.firstName,o=i.lastName?.trim()||t?.lastName,s=i.referrerAgentCode?.trim()||t?.referrerAgentCode;i.isRegister&&a&&o&&(r.value={firstName:a,lastName:o,jobCategory:t?.jobCategory,referrerAgentCode:s},Gr(r.value));let c=await Lr(e,{isRegister:i.isRegister,firstName:a,lastName:o,referrerAgentCode:s});return c.success||(n.value=c.message),c}finally{t.value=!1}}async function d(r,i){t.value=!0,n.value=null;let a=await Rr(r,i);return t.value=!1,a.success&&a.user?(e.value=a.user,l(),await Promise.all([oe().loadCompanies(),W().hydrate(),Zr().hydrate(),Qr().hydrate(),gi().hydrate()]),fi()):n.value=a.message,a}function f(){zr(),e.value=null,l(),W().resetLocal(),Zr().resetLocal(),Qr().resetLocal(),di(),gi().resetLocal()}async function p(t){if(!e.value)return null;let n=await Vr(t);return n&&(e.value=n),n}async function m(){if(e.value=Pr(),!e.value)return;let t=await Br();e.value=t}return{user:e,loading:t,error:n,isAuthenticated:i,fullName:a,isAgent:o,isCustomerOnly:s,clearError:c,requestOtp:u,confirmOtp:d,logout:f,updateProfile:p,hydrate:m}}),vi=D({__name:`IconBell`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(o(),T(A,{icon:`vuesax-linear:notification`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),yi=D({__name:`IconChevronLeft`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(o(),T(A,{icon:`vuesax-linear:arrow-left-1`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),bi=[`aria-label`,`title`],xi=w(D({__name:`AuthThemeToggle`,props:{variant:{default:`floating`}},setup(e){let n=he(),{isDark:r}=M(n),i=h(()=>r.value?`vuesax-linear:sun-1`:`vuesax-linear:moon`),a=h(()=>r.value?`تغییر به تم روشن`:`تغییر به تم تاریک`);return(r,s)=>(o(),v(`button`,{type:`button`,class:t([`auth-theme-toggle`,e.variant===`inline`?`auth-theme-toggle--inline`:`auth-theme-toggle--floating`]),"aria-label":a.value,title:a.value,onClick:s[0]||=e=>E(n).toggleLightDark()},[p(A,{icon:i.value,size:18,"stroke-width":1.5},null,8,[`icon`])],10,bi))}}),[[`__scopeId`,`data-v-3a58cb84`]]),Si=[`src`],Ci={key:1},wi=w(D({__name:`UserAvatar`,props:{src:{},initials:{},size:{default:72}},setup(e){return(t,n)=>(o(),v(`span`,{class:`user-avatar`,style:c({width:`${e.size}px`,height:`${e.size}px`,fontSize:`${Math.round(e.size*.38)}px`})},[e.src?(o(),v(`img`,{key:0,class:`user-avatar__img`,src:e.src,alt:``},null,8,Si)):(o(),v(`span`,Ci,l(e.initials),1))],4))}}),[[`__scopeId`,`data-v-5c562bf0`]]),Ti={class:`desktop-header`},Ei={class:`desktop-header__actions`},Di={key:0,class:`desktop-header__company`},Oi=[`aria-label`],ki={class:`desktop-header__user-wrap`},Ai=[`aria-expanded`],ji={class:`desktop-header__user-name`},Mi={key:0,class:`desktop-header__menu`},Ni=w(D({__name:`DesktopHeader`,setup(e){let t=Oe(),n=_i(),r=W(),i=Qr(),a=S(!1),s=h(()=>F(i.unreadCount>9?`9+`:String(i.unreadCount))),c=h(()=>`${n.user?.firstName?.[0]??``}${n.user?.lastName?.[0]??``}`||`؟`),u=h(()=>r.companyNamesLabel||r.activeCart?.companyName||``);function d(){a.value=!a.value}function f(){a.value=!1,t.push(`/profile`)}function m(){a.value=!1,n.logout(),t.replace(`/welcome`)}return(e,r)=>(o(),v(`header`,Ti,[r[1]||=x(`div`,{class:`desktop-header__spacer`,"aria-hidden":`true`},null,-1),x(`div`,Ei,[u.value?(o(),v(`span`,Di,l(u.value),1)):g(``,!0),p(xi,{variant:`inline`}),x(`button`,{type:`button`,class:`desktop-header__icon-btn`,"aria-label":`اعلان‌ها`,onClick:r[0]||=e=>E(t).push(`/profile/notifications`)},[p(vi,{size:20}),E(i).hasUnread?(o(),v(`span`,{key:0,class:`desktop-header__notif-badge`,"aria-label":`${E(i).unreadCount} اعلان خوانده‌نشده`},l(s.value),9,Oi)):g(``,!0)]),x(`div`,ki,[x(`button`,{type:`button`,class:`desktop-header__user`,"aria-expanded":a.value,onClick:d},[p(wi,{class:`desktop-header__avatar`,src:E(n).user?.avatarUrl,initials:c.value,size:32},null,8,[`src`,`initials`]),x(`span`,ji,l(E(n).fullName),1),p(yi,{size:16,class:`desktop-header__chevron`})],8,Ai),a.value?(o(),v(`div`,Mi,[x(`button`,{type:`button`,onClick:f},`پروفایل`),x(`button`,{type:`button`,class:`desktop-header__menu-logout`,onClick:m},`خروج`)])):g(``,!0)])])]))}}),[[`__scopeId`,`data-v-5f322d95`]]),Pi={class:`support-widget__list`},Fi=[`href`,`title`,`aria-label`,`target`,`rel`],Ii={class:`support-widget__link-label`},Li={key:0,viewBox:`0 0 24 24`,width:`18`,height:`18`,fill:`none`},Ri={key:1,viewBox:`0 0 24 24`,width:`12`,height:`12`,fill:`none`},zi={key:2,viewBox:`0 0 24 24`,width:`12`,height:`12`,fill:`none`},Bi={key:3,viewBox:`0 0 24 24`,width:`18`,height:`18`,fill:`none`},Vi={key:4,viewBox:`0 0 24 24`,width:`18`,height:`18`,fill:`none`},Hi=[`aria-expanded`],Ui=`nademitex.supportFab.position`,Wi=8,Q=10,Gi=w(D({__name:`SupportWidget`,props:{aboveBottomNav:{type:Boolean,default:!1}},setup(a){let s=a,{load:u,loaded:d,supportLinks:m,hasSupportLinks:_}=gr(),y=S(!1),C=S(null),te=S(null),w=S(null),T=S(!1),D=null,O=0,ne=0,A=0,j=0,M=!1,N=!1,P=0,F=0,I=``,L=``,ae=new Set([`email`,`telegram`]),R=h(()=>{if(w.value)return{bottom:`${w.value.bottom}px`,insetInlineEnd:`${w.value.inlineEnd}px`}});function z(){return document.documentElement.dir===`rtl`}function B(e){let t=e.getBoundingClientRect();return{bottom:window.innerHeight-t.bottom,inlineEnd:z()?t.left:window.innerWidth-t.right}}function V(e,t){let n=t.getBoundingClientRect(),r=Math.max(Q,window.innerHeight-n.height-Q),i=Math.max(Q,window.innerWidth-n.width-Q);return{bottom:Math.min(Math.max(e.bottom,Q),r),inlineEnd:Math.min(Math.max(e.inlineEnd,Q),i)}}function H(){try{let e=localStorage.getItem(Ui);if(!e)return null;let t=JSON.parse(e);return typeof t.bottom!=`number`||typeof t.inlineEnd!=`number`||!Number.isFinite(t.bottom)||!Number.isFinite(t.inlineEnd)?null:{bottom:t.bottom,inlineEnd:t.inlineEnd}}catch{return null}}function U(e){try{localStorage.setItem(Ui,JSON.stringify(e))}catch{}}function oe(){let e=H(),t=C.value;!e||!t||t.getBoundingClientRect().width===0||(w.value=V(e,t))}function W(){let e=C.value;if(!e)return;let t=[...e.querySelectorAll(`.support-widget__link, .support-widget__fab`)];if(!t.length)return;for(let e of t)e.style.width=`max-content`;let n=Math.ceil(Math.max(...t.map(e=>e.getBoundingClientRect().width)));for(let e of t)e.style.width=``;e.style.setProperty(`--support-pill-width`,`${n}px`)}function se(){let e=te.value,t=C.value;if(!t||!y.value)return;t.style.transform=``,e&&(e.style.maxHeight=``,e.style.overflowY=``),W();let n=t.getBoundingClientRect(),r=Q-n.left,i=n.right-(window.innerWidth-Q),a=0;if(r>0&&i>0?a=r:(r>0&&(a+=r),i>0&&(a-=i)),a&&(t.style.transform=`translateX(${a}px)`),!e)return;let o=e.getBoundingClientRect();if(o.top{F=0,se()})}function le(e){if(e.button!==0)return;let t=C.value,n=e.currentTarget;if(!t||!(n instanceof HTMLElement))return;D=e.pointerId,M=!1,O=e.clientX,ne=e.clientY,t.style.transform=``;let r=B(t);A=r.bottom,j=r.inlineEnd,n.setPointerCapture(e.pointerId)}function ue(e){if(D!==e.pointerId||!C.value)return;let t=e.clientX-O,n=e.clientY-ne;if(!M){if(Math.hypot(t,n){N=!1},400))}function fe(){if(N){N=!1,window.clearTimeout(P);return}pe()}ee(()=>{u(),document.addEventListener(`keydown`,he),window.addEventListener(`resize`,ge)}),ie(C,()=>{y.value&&=!1});function pe(){_.value&&(y.value=!y.value)}function me(e){(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),pe())}function he(e){e.key===`Escape`&&y.value&&(y.value=!1)}function ge(){let e=C.value;w.value&&e&&(w.value=V(w.value,e)),y.value&&ce()}e(()=>{document.removeEventListener(`keydown`,he),window.removeEventListener(`resize`,ge),window.clearTimeout(P),F&&window.cancelAnimationFrame(F),T.value&&(document.body.style.cursor=I,document.body.style.userSelect=L)});let _e=h(()=>d.value&&_.value);return f(_,e=>{e||(y.value=!1)}),f(_e,e=>{e&&n(()=>requestAnimationFrame(()=>oe()))}),f(y,e=>{if(!e){C.value&&(C.value.style.transform=``,C.value.style.removeProperty(`--support-pill-width`));return}n(()=>se())}),f(T,e=>{if(e){I=document.body.style.cursor,L=document.body.style.userSelect,document.body.style.cursor=`grabbing`,document.body.style.userSelect=`none`;return}document.body.style.cursor=I,document.body.style.userSelect=L}),(e,n)=>_e.value?(o(),v(`div`,{key:0,ref_key:`rootRef`,ref:C,class:t([`support-widget`,{"support-widget--above-nav":s.aboveBottomNav}]),style:c(R.value)},[p(k,{name:`support-pop`,onAfterEnter:se},{default:i(()=>[y.value?(o(),v(`div`,{key:0,ref_key:`panelRef`,ref:te,class:`support-widget__panel`,role:`dialog`,"aria-label":`پشتیبانی`,"aria-modal":`false`},[x(`ul`,Pi,[(o(!0),v(b,null,r(E(m),e=>(o(),v(`li`,{key:e.kind},[x(`a`,{class:`support-widget__link`,href:e.href,title:e.subtitle,"aria-label":e.subtitle?`${e.label}، ${e.subtitle}`:e.label,target:e.kind===`phone`||e.kind===`email`?void 0:`_blank`,rel:e.kind===`phone`||e.kind===`email`?void 0:`noopener noreferrer`},[x(`span`,Ii,l(e.label),1),x(`span`,{class:t([`support-widget__mark`,{"support-widget__mark--badge":E(ae).has(e.kind)}]),"aria-hidden":`true`},[e.kind===`phone`?(o(),v(`svg`,Li,[...n[1]||=[x(`path`,{d:`M8.2 4.8h2l1.1 2.6-1.5 1.1a11 11 0 0 0 5.7 5.7l1.1-1.5 2.6 1.1v2a1.6 1.6 0 0 1-1.7 1.6A13.4 13.4 0 0 1 6.6 6.5a1.6 1.6 0 0 1 1.6-1.7Z`,stroke:`currentColor`,"stroke-width":`1.6`,"stroke-linejoin":`round`,"stroke-linecap":`round`},null,-1)]])):e.kind===`email`?(o(),v(`svg`,Ri,[...n[2]||=[x(`path`,{d:`M4 7.5h16v10H4v-10Z`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linejoin":`round`},null,-1),x(`path`,{d:`m4.5 8 7.5 5.5L19.5 8`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null,-1)]])):e.kind===`telegram`?(o(),v(`svg`,zi,[...n[3]||=[x(`path`,{d:`M4.5 11.5 19 6.2l-4.8 12.2-3.2-4.6-6.5-2.3Z`,stroke:`currentColor`,"stroke-width":`1.8`,"stroke-linejoin":`round`},null,-1)]])):e.kind===`instagram`?(o(),v(`svg`,Bi,[...n[4]||=[x(`rect`,{x:`4.5`,y:`4.5`,width:`15`,height:`15`,rx:`4`,stroke:`currentColor`,"stroke-width":`1.6`},null,-1),x(`circle`,{cx:`12`,cy:`12`,r:`3.2`,stroke:`currentColor`,"stroke-width":`1.6`},null,-1)]])):(o(),v(`svg`,Vi,[...n[5]||=[x(`path`,{d:`M12 5.25A6.75 6.75 0 0 0 6.1 16.2c.2.36.26.78.16 1.18l-.4 1.58a.55.55 0 0 0 .68.67l1.58-.4c.4-.1.82-.04 1.18.16A6.75 6.75 0 1 0 12 5.25Z`,stroke:`currentColor`,"stroke-width":`1.6`,"stroke-linejoin":`round`},null,-1)]]))],2)],8,Fi)]))),128))])],512)):g(``,!0)]),_:1}),x(`button`,{type:`button`,class:t([`support-widget__fab`,{"support-widget__fab--open":y.value,"support-widget__fab--dragging":T.value}]),"aria-label":`پشتیبانی`,"aria-expanded":y.value,"aria-haspopup":`dialog`,onPointerdown:le,onPointermove:ue,onPointerup:de,onPointercancel:de,onClick:fe,onKeydown:me,onContextmenu:n[0]||=re(()=>{},[`prevent`])},[...n[6]||=[x(`span`,{class:`support-widget__fab-label`},`پشتیبانی`,-1),x(`svg`,{class:`support-widget__fab-icon`,viewBox:`0 0 24 24`,width:`18`,height:`18`,"aria-hidden":`true`},[x(`path`,{d:`M12 5.25A6.75 6.75 0 0 0 6.1 16.2c.2.36.26.78.16 1.18l-.4 1.58a.55.55 0 0 0 .68.67l1.58-.4c.4-.1.82-.04 1.18.16A6.75 6.75 0 1 0 12 5.25Z`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.6`,"stroke-linejoin":`round`})],-1)]],42,Hi)],6)):g(``,!0)}}),[[`__scopeId`,`data-v-101e3d29`]]),Ki={class:`app-layout`},qi={class:`app-frame`},Ji={class:`app-main`},Yi={class:`app-main__content`},Xi={class:`app-content`},Zi=D({__name:`DefaultLayout`,setup(e){let n=ke(),r=h(()=>![`welcome`,`login`,`register`,`otp`,`check-mode`,`check-form`,`check-list`,`cash-settlement`,`order-success`].includes(n.name)&&!n.meta.hideNav),i=h(()=>[`check-mode`,`check-form`,`check-list`,`cash-settlement`].includes(n.name)),s=h(()=>n.name===`welcome`||n.name===`login`||n.name===`register`||n.name===`otp`),c=h(()=>n.name!==`welcome`);return(e,n)=>(o(),v(`div`,{class:t([`app-shell`,{"app-shell--no-nav":!r.value,"app-shell--wide":i.value,"app-shell--with-nav":r.value,"app-shell--immersive":s.value}])},[x(`div`,Ki,[r.value?(o(),T(Ar,{key:0})):g(``,!0),x(`div`,qi,[r.value?(o(),T(Ni,{key:0})):g(``,!0),x(`main`,Ji,[x(`div`,Yi,[x(`div`,Xi,[a(e.$slots,`default`)])])]),r.value?(o(),T(rr,{key:1})):g(``,!0)])]),c.value?(o(),T(Gi,{key:0,"above-bottom-nav":r.value},null,8,[`above-bottom-nav`])):g(``,!0)],2))}}),Qi=[`type`,`disabled`],$i={key:0,class:`btn-spinner`},ea=w(D({__name:`BaseButton`,props:{variant:{},size:{},block:{type:Boolean},disabled:{type:Boolean},loading:{type:Boolean},type:{}},setup(e){return(n,r)=>(o(),v(`button`,{type:e.type??`button`,class:t([`btn`,[`btn-${e.variant??`primary`}`,`btn-${e.size??`md`}`,{"btn-block":e.block}]]),disabled:e.disabled||e.loading},[e.loading?(o(),v(`span`,$i)):g(``,!0),a(n.$slots,`default`,{},void 0,!0)],10,Qi))}}),[[`__scopeId`,`data-v-3628a8bb`]]),ta=_({open:!1,title:``,message:``,confirmLabel:`حذف`,cancelLabel:`انصراف`,tone:`danger`,resolve:null});function na(){return ta}function ra(e){return new Promise(t=>{Object.assign(ta,{open:!0,title:e.title,message:e.message,confirmLabel:e.confirmLabel??`حذف`,cancelLabel:e.cancelLabel??`انصراف`,tone:e.tone??`danger`,resolve:t})})}function ia(e){ta.resolve?.(e),ta.open=!1,ta.resolve=null}var aa={class:`dialog card confirm-dialog`},oa={id:`confirm-dialog-title`,class:`confirm-dialog__title`},sa={class:`confirm-dialog__message`},ca={class:`dialog-actions confirm-dialog__actions`},la=w(D({__name:`ConfirmDialog`,setup(e){let t=na();function n(){ia(!1)}function r(){ia(!0)}return(e,a)=>E(t).open?(o(),v(`div`,{key:0,class:`dialog-overlay confirm-dialog-overlay`,role:`dialog`,"aria-modal":`true`,"aria-labelledby":`confirm-dialog-title`,onClick:re(n,[`self`])},[x(`div`,aa,[x(`h3`,oa,l(E(t).title),1),x(`p`,sa,l(E(t).message),1),x(`div`,ca,[p(ea,{variant:`outline`,onClick:n},{default:i(()=>[y(l(E(t).cancelLabel),1)]),_:1}),p(ea,{variant:E(t).tone===`danger`?`danger`:`primary`,onClick:r},{default:i(()=>[y(l(E(t).confirmLabel),1)]),_:1},8,[`variant`])])])])):g(``,!0)}}),[[`__scopeId`,`data-v-2e50e2a7`]]),ua=D({__name:`IconSuccessCircle`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(o(),T(A,{icon:`vuesax-linear:tick-circle`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),da=[`aria-labelledby`,`aria-describedby`],fa={class:`message-modal__head`},pa={class:`message-modal__icon`,"aria-hidden":`true`},ma={key:1,class:`message-modal__icon-fallback`},ha={id:`message-modal-title`,class:`message-modal__title`},ga={id:`message-modal-body`,class:`message-modal__body`},_a={class:`message-modal__text`},va=w(D({__name:`AppToast`,setup(r){let{message:a,title:s,tone:c,clear:u}=si(),d=S(null);function m(e){return e===`error`?`!`:e===`warning`?`⚠`:`i`}let h={success:`message-modal--success`,error:`message-modal--error`,info:`message-modal--info`,warning:`message-modal--warning`};function _(e){e.key===`Escape`&&(e.preventDefault(),u())}function b(e){typeof document>`u`||(document.documentElement.style.overflow=e?`hidden`:``,document.body.style.overflow=e?`hidden`:``)}return f(a,async(e,t,r)=>{let i=!!e;b(i),i?(document.addEventListener(`keydown`,_),r(()=>document.removeEventListener(`keydown`,_)),await n(),d.value?.querySelector(`button`)?.focus()):document.removeEventListener(`keydown`,_)},{flush:`post`}),e(()=>{b(!1),document.removeEventListener(`keydown`,_)}),(e,n)=>(o(),T(C,{to:`body`},[p(k,{name:`message-modal-fade`},{default:i(()=>[E(a)?(o(),v(`div`,{key:0,class:`dialog-overlay message-modal-overlay`,role:`presentation`,onClick:n[0]||=re((...e)=>E(u)&&E(u)(...e),[`self`])},[x(`div`,{class:t([`dialog card message-modal`,h[E(c)]]),role:`alertdialog`,"aria-modal":`true`,"aria-labelledby":E(a)?`message-modal-title`:void 0,"aria-describedby":E(a)?`message-modal-body`:void 0},[x(`header`,fa,[x(`span`,pa,[E(c)===`success`?(o(),T(ua,{key:0,size:40})):(o(),v(`span`,ma,l(m(E(c))),1))]),x(`h2`,ha,l(E(s)),1)]),x(`div`,ga,[x(`p`,_a,l(E(a)),1)]),x(`footer`,{ref_key:`footerRef`,ref:d,class:`message-modal__footer dialog-actions`},[p(ea,{block:``,onClick:E(u)},{default:i(()=>[...n[1]||=[y(`متوجه شدم`,-1)]]),_:1},8,[`onClick`])],512)],10,da)])):g(``,!0)]),_:1})]))}}),[[`__scopeId`,`data-v-2ec86b0d`]]),ya=D({__name:`App`,setup(e){let t=_i(),n=W(),r=Zr(),a=oe(),s=Qr(),c=Oe(),l=S(`page-fade`);function d(e){return e.split(`/`).filter(Boolean).length}return c.beforeEach((e,t)=>{if(!t.name){l.value=`page-fade`;return}let n=Vn(d(e.path)-d(t.path),-1,1);n>0?l.value=`page-forward`:n<0?l.value=`page-back`:l.value=`page-fade`}),ee(async()=>{await t.hydrate(),t.isAuthenticated&&(await Promise.all([a.loadCompanies(),n.hydrate(),r.hydrate(),s.hydrate()]),fi())}),P(()=>{t.isAuthenticated&&s.refreshUnreadCount()},6e4,{immediate:!1}),(e,t)=>(o(),v(b,null,[p(Zi,null,{default:i(()=>[p(E(un),null,{default:i(({Component:e,route:t})=>[p(k,{name:l.value,mode:`out-in`},{default:i(()=>[(o(),v(`div`,{key:t.path,class:`page-transition page-shell`},[(o(),T(u(e)))]))]),_:2},1032,[`name`])]),_:1})]),_:1}),p(la),p(va)],64))}}),ba=`modulepreload`,xa=function(e){return`/`+e},Sa={},$=function(e,t,n){let r=Promise.resolve();if(t&&t.length>0){let e=document.getElementsByTagName(`link`),i=document.querySelector(`meta[property=csp-nonce]`),a=i?.nonce||i?.getAttribute(`nonce`);function o(e){return Promise.all(e.map(e=>Promise.resolve(e).then(e=>({status:`fulfilled`,value:e}),e=>({status:`rejected`,reason:e}))))}function s(e){return import.meta.resolve?import.meta.resolve(e):new URL(e,import.meta.url).href}r=o(t.map(t=>{if(t=xa(t,n),t=s(t),t in Sa)return;Sa[t]=!0;let r=t.endsWith(`.css`);for(let n=e.length-1;n>=0;n--){let i=e[n];if(i.href===t&&(!r||i.rel===`stylesheet`))return}let i=document.createElement(`link`);if(i.rel=r?`stylesheet`:ba,r||(i.as=`script`),i.crossOrigin=``,i.href=t,a&&i.setAttribute(`nonce`,a),document.head.appendChild(i),r)return new Promise((e,n)=>{i.addEventListener(`load`,e),i.addEventListener(`error`,()=>n(Error(`Unable to preload CSS for ${t}`)))})}))}function i(e){let t=new Event(`vite:preloadError`,{cancelable:!0});if(t.payload=e,window.dispatchEvent(t),!t.defaultPrevented)throw e}return r.then(t=>{for(let e of t||[])e.status===`rejected`&&i(e.reason);return e().catch(i)})},Ca=dn({history:Mt(`/`),routes:[{path:`/welcome`,name:`welcome`,component:()=>$(()=>import(`./WelcomeView-C4--jdQ8.js`),__vite__mapDeps([0,1,2,3])),meta:{guest:!0,hideNav:!0}},{path:`/login`,name:`login`,component:()=>$(()=>import(`./LoginView-CYh1C8uL.js`),__vite__mapDeps([4,1,5,6,7,8,9,10,2,11,12,13,14,15,16])),meta:{guest:!0,hideNav:!0}},{path:`/register`,name:`register`,component:()=>$(()=>import(`./RegisterView-CWi6xfK_.js`),__vite__mapDeps([17,1,5,6,7,8,18,9,10,2,11,12,13,14,15,19])),meta:{guest:!0,hideNav:!0}},{path:`/otp`,name:`otp`,component:()=>$(()=>import(`./OtpView-ynM94iKr.js`),__vite__mapDeps([20,1,5,6,21,7,9,10,2,11,12,13,15,22])),meta:{guest:!0,hideNav:!0}},{path:`/`,name:`home`,component:()=>$(()=>import(`./HomeView-BmHs1we_.js`),__vite__mapDeps([23,1,5,6,24,21,7,25,10,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40])),meta:{requiresAuth:!0}},{path:`/companies`,redirect:`/categories`},{path:`/categories`,name:`categories`,component:()=>$(()=>import(`./CategoriesView-BBAIojBo.js`),__vite__mapDeps([41,1,5,6,42,10,43,26,27,28,29,25,44,45,30,31,32,46])),meta:{requiresAuth:!0}},{path:`/products`,name:`products`,component:()=>$(()=>import(`./ProductsView-BHnNS9AU.js`),__vite__mapDeps([47,1,5,6,42,48,43,49,10,50,26,27,28,29,25,44,45,31,32,51,52,34,33,39,53,24,21,7,54,55])),meta:{requiresAuth:!0}},{path:`/product`,name:`product`,component:()=>$(()=>import(`./ProductDetailView-5IPJ4kFG.js`),__vite__mapDeps([56,1,5,6,7,57,29,25,58,8,59,10,26,27,28,45,30,31,34,33,35,36,37,38,39,60])),meta:{requiresAuth:!0}},{path:`/catalogs`,redirect:`/products`},{path:`/catalogs/:catalogId`,redirect:e=>({path:`/product`,query:{id:String(e.params.catalogId??``)}})},{path:`/catalog-requests`,name:`catalog-requests`,component:()=>$(()=>import(`./CatalogRequestsView-BtBi9qJl.js`),__vite__mapDeps([61,1,7,49,10,5,6,50,36,29,25,62])),meta:{requiresAuth:!0}},{path:`/catalog-requests/latest-status`,name:`catalog-request-latest-status`,component:()=>$(()=>import(`./LatestCatalogRequestStatusView-BKQRyTdg.js`),__vite__mapDeps([63,1,7,49,10,5,6,50,36,29,25,26,27,64,65,66])),meta:{requiresAuth:!0}},{path:`/favorites`,name:`favorites`,component:()=>$(()=>import(`./FavoritesView-qjhpwB4y.js`),__vite__mapDeps([67,1,5,6,7,49,10,50,26,27,28,29,25,33,39,68])),meta:{requiresAuth:!0}},{path:`/customers`,name:`customers`,component:()=>$(()=>import(`./CustomersView-Bpq3-lKt.js`),__vite__mapDeps([69,1,7,18,5,6,70,48,49,10,50,26,27,28,29,25,71,8,12,13,15,72,73,74,51,52,75])),meta:{requiresAuth:!0,agentOnly:!0}},{path:`/customers/new`,redirect:e=>({path:`/customers`,query:{...e.query,create:`1`}})},{path:`/customer`,name:`customer`,component:()=>$(()=>import(`./CustomerDetailView-7DfKtoIe.js`),__vite__mapDeps([76,1,5,6,7,59,77,14,78,49,10,50,26,27,28,29,25,79,80,81,82,83,84,71,8,12,13,15,72,73,74,85])),meta:{requiresAuth:!0,agentOnly:!0}},{path:`/meeting-report`,redirect:e=>({path:`/customer`,query:{id:String(e.query.customerId??``),tab:`reports`,meetingReport:`1`}})},{path:`/reminders`,name:`reminders`,component:()=>$(()=>import(`./RemindersView-CmQQhLnf.js`),__vite__mapDeps([86,1,5,6,7,70,10,87,26,27,28,29,25,30,79,80,82,83,84,53,24,21,54,88])),meta:{requiresAuth:!0,agentOnly:!0}},{path:`/reminder`,name:`reminder`,component:()=>$(()=>import(`./ReminderDetailView-bB7d06zX.js`),__vite__mapDeps([89,1,49,10,5,6,50,26,27,28,29,25,90])),meta:{requiresAuth:!0,agentOnly:!0,hideNav:!0}},{path:`/companies/:companyId/catalogs`,redirect:e=>({path:`/products`,query:{companyId:String(e.params.companyId??``)}})},{path:`/companies/:companyId/catalogs/:catalogId/products`,redirect:e=>({path:`/products`,query:{companyId:String(e.params.companyId??``)}})},{path:`/cart`,name:`cart`,component:()=>$(()=>import(`./CartView-CbjvTlMq.js`),__vite__mapDeps([91,1,5,6,7,58,29,8,25,57,59,92,93,94,10,12,13,95,96,97,78,43,98])),meta:{requiresAuth:!0}},{path:`/orders`,name:`orders`,component:()=>$(()=>import(`./OrdersView-8q5gwU0V.js`),__vite__mapDeps([99,1,5,6,7,57,29,25,92,93,94,77,10,83,48,87,100])),meta:{requiresAuth:!0}},{path:`/orders/latest-status`,name:`order-latest-status`,component:()=>$(()=>import(`./LatestOrderStatusView-Bw1EA_ra.js`),__vite__mapDeps([101,1,7,49,10,5,6,50,26,27,64,65,102])),meta:{requiresAuth:!0}},{path:`/order`,name:`order-query`,redirect:e=>{let t=String(e.query.id??``);return t?{path:`/orders/${t}`}:{name:`orders`}}},{path:`/orders/:id`,name:`order-detail`,component:()=>$(()=>import(`./OrderDetailView-PxnhEnTG.js`),__vite__mapDeps([103,1,5,6,24,21,7,8,77,10,12,13,15,104,105,106,79,80,82,83,84,53,54,107])),meta:{requiresAuth:!0}},{path:`/orders/:id/success`,name:`order-success`,component:()=>$(()=>import(`./OrderSuccessView-BWqBSxwt.js`),__vite__mapDeps([108,1,7,49,10,5,6,50,30,109])),meta:{requiresAuth:!0,hideNav:!0}},{path:`/orders/:id/settlement`,name:`settlement`,component:()=>$(()=>import(`./SettlementTypeView-BX-jH-Nn.js`),__vite__mapDeps([110,1,5,6,7,111,12,13,96,97,49,10,50,104,112,113])),meta:{requiresAuth:!0}},{path:`/orders/:id/cash`,name:`cash-settlement`,component:()=>$(()=>import(`./CashSettlementView-D_RtxoI6.js`),__vite__mapDeps([114,1,7,57,29,25,77,49,10,5,6,50,112,104,115])),meta:{requiresAuth:!0,hideNav:!0}},{path:`/orders/:id/check-mode`,name:`check-mode`,component:()=>$(()=>import(`./CheckModeSelectView-Cab34XIX.js`),__vite__mapDeps([116,1,7,111,5,6,49,10,50,112,104,81,117])),meta:{requiresAuth:!0,hideNav:!0}},{path:`/orders/:id/check-form`,name:`check-form`,component:()=>$(()=>import(`./CheckFormView-B9M6Dswt.js`),__vite__mapDeps([118,1,5,6,7,8,111,12,13,15,49,10,50,112,104,72,73,105,106,79,80,119])),meta:{requiresAuth:!0,hideNav:!0}},{path:`/orders/:id/check-list`,name:`check-list`,component:()=>$(()=>import(`./CheckListView-DEwQImhv.js`).then(e=>e.n),__vite__mapDeps([120,1,7,93,5,6,94,10,12,13,112,104,121])),meta:{requiresAuth:!0,hideNav:!0}},{path:`/profile`,name:`profile`,component:()=>$(()=>import(`./ProfileView-B4uQciEk.js`),__vite__mapDeps([122,1,5,6,7,59,123,77,26,27,28,29,25,34,33,124])),meta:{requiresAuth:!0}},{path:`/profile/edit`,name:`profile-edit`,component:()=>$(()=>import(`./ProfileEditView-BPZL0Ss-.js`),__vite__mapDeps([125,1,5,6,25,12,13,15,72,73,37,126,10,127,128])),meta:{requiresAuth:!0}},{path:`/profile/addresses`,name:`profile-addresses`,component:()=>$(()=>import(`./AddressesView-C3SN6Jwn.js`),__vite__mapDeps([129,1,5,6,24,21,25,70,95,37,126,10,127,130])),meta:{requiresAuth:!0}},{path:`/profile/security`,name:`profile-security`,component:()=>$(()=>import(`./ProfileSecurityView-BWpD4liS.js`),__vite__mapDeps([131,1,12,13,15,72,73,126,10,5,6,127,132])),meta:{requiresAuth:!0}},{path:`/profile/notifications`,name:`profile-notifications`,component:()=>$(()=>import(`./ProfileNotificationsView-BtIUUGDp.js`),__vite__mapDeps([133,1,5,6,7,93,94,126,10,127,134])),meta:{requiresAuth:!0}},{path:`/profile/display`,name:`profile-display`,component:()=>$(()=>import(`./ProfileDisplayView-prlxDHbu.js`),__vite__mapDeps([135,1,5,6,21,136,29,24,126,10,127,137])),meta:{requiresAuth:!0}},{path:`/profile/checks`,name:`profile-checks`,component:()=>$(()=>import(`./ProfileChecksView-Du4b9ELG.js`),__vite__mapDeps([138,120,1,7,93,5,6,94,10,12,13,112,104,121])),meta:{requiresAuth:!0}},{path:`/:pathMatch(.*)*`,name:`not-found`,component:()=>$(()=>import(`./NotFoundView-DcuA7MTj.js`),__vite__mapDeps([139,1,140]))}],scrollBehavior(){return{top:0}}});Ca.beforeEach(async e=>{await _i().hydrate();let t=Fr();return e.meta.requiresAuth&&!t?{name:`welcome`,query:{redirect:e.fullPath}}:e.meta.guest&&t||e.meta.agentOnly&&Nr()?.appRole!==`agent`?{name:`home`}:!0});var wa=ne(ya),Ta=N();wa.use(Ta),wa.use(Ca),he(Ta),wa.mount(`#app`),`serviceWorker`in navigator&&window.addEventListener(`load`,()=>{navigator.serviceWorker.register(`/sw.js`,{scope:`/`})});export{Oe as C,ke as S,Wr as _,xi as a,gr as b,_i as c,Qr as d,Zr as f,Ur as g,qr as h,wi as i,gi as l,Xr as m,ra as n,yi as o,Yr as p,ea as r,vi as s,ua as t,si as u,Gr as v,Wn as x,_r as y}; \ No newline at end of file diff --git a/dist/assets/useGoBack-DnRfwA4b.js b/dist/assets/useGoBack-BrwZYRKb.js similarity index 60% rename from dist/assets/useGoBack-DnRfwA4b.js rename to dist/assets/useGoBack-BrwZYRKb.js index e88417c..55994bf 100644 --- a/dist/assets/useGoBack-DnRfwA4b.js +++ b/dist/assets/useGoBack-BrwZYRKb.js @@ -1 +1 @@ -import{C as e}from"./index-DYwnTikp.js";function t(t=`/`){let n=e();function r(){if(window.history.length>1){n.back();return}n.push(t)}return{goBack:r}}export{t}; \ No newline at end of file +import{C as e}from"./index-CE4Fw0WE.js";function t(t=`/`){let n=e();function r(){if(window.history.length>1){n.back();return}n.push(t)}return{goBack:r}}export{t}; \ No newline at end of file diff --git a/dist/assets/useRequirePricedOrder-Bivuv5Mx.js b/dist/assets/useRequirePricedOrder-B78MxGXz.js similarity index 86% rename from dist/assets/useRequirePricedOrder-Bivuv5Mx.js rename to dist/assets/useRequirePricedOrder-B78MxGXz.js index d5bdc1b..214ff2f 100644 --- a/dist/assets/useRequirePricedOrder-Bivuv5Mx.js +++ b/dist/assets/useRequirePricedOrder-B78MxGXz.js @@ -1 +1 @@ -import{U as e,c as t}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{C as n,S as r,f as i}from"./index-DYwnTikp.js";import{n as a}from"./orderInvoice-DPYzRyAs.js";function o(){let o=r(),s=n(),c=i(),l=t(()=>o.params.id),u=t(()=>c.getOrderById(l.value)),d=t(()=>a(u.value));function f(e){e&&(a(e)||s.replace(`/orders/${e.id}`))}return e(l,async e=>{e&&f(c.getOrderById(e)??await c.fetchOrder(e))},{immediate:!0}),e(u,e=>{f(e)}),{orderId:l,order:u,invoiceReady:d}}export{o as t}; \ No newline at end of file +import{U as e,c as t}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{C as n,S as r,f as i}from"./index-CE4Fw0WE.js";import{n as a}from"./orderInvoice-DPYzRyAs.js";function o(){let o=r(),s=n(),c=i(),l=t(()=>o.params.id),u=t(()=>c.getOrderById(l.value)),d=t(()=>a(u.value));function f(e){e&&(a(e)||s.replace(`/orders/${e.id}`))}return e(l,async e=>{e&&f(c.getOrderById(e)??await c.fetchOrder(e))},{immediate:!0}),e(u,e=>{f(e)}),{orderId:l,order:u,invoiceReady:d}}export{o as t}; \ No newline at end of file diff --git a/dist/assets/useSlotBanners-VeAKsYT3.js b/dist/assets/useSlotBanners-fCEY91jj.js similarity index 98% rename from dist/assets/useSlotBanners-VeAKsYT3.js rename to dist/assets/useSlotBanners-fCEY91jj.js index 4844cfe..fc224a0 100644 --- a/dist/assets/useSlotBanners-VeAKsYT3.js +++ b/dist/assets/useSlotBanners-fCEY91jj.js @@ -1 +1 @@ -import{M as e,f as t,k as n,l as r,nt as i,u as a,v as o}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{t as s}from"./BasicIcon-DPmc0iaK.js";import{n as c,t as l}from"./IconCatalog-BaNuPmu8.js";import{y as u}from"./index-DYwnTikp.js";import{n as d,t as f}from"./IconDiamond-BZQtRyIy.js";import{r as p}from"./crm-CgnSby61.js";import{n as m,r as h,t as g}from"./IconWeave-DAcvD2P0.js";var _=o({__name:`IconBolt`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(t){return(n,r)=>(e(),a(s,{icon:`vuesax-linear:flash`,size:t.size,"stroke-width":t.strokeWidth,color:t.color},null,8,[`size`,`stroke-width`,`color`]))}}),v=o({__name:`IconFeather`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(t){return(n,r)=>(e(),a(s,{icon:`vuesax-linear:pen-add`,size:t.size,"stroke-width":t.strokeWidth,color:t.color},null,8,[`size`,`stroke-width`,`color`]))}}),y=o({__name:`IconIdCard`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(t){return(n,r)=>(e(),a(s,{icon:`vuesax-linear:personalcard`,size:t.size,"stroke-width":t.strokeWidth,color:t.color},null,8,[`size`,`stroke-width`,`color`]))}}),b=[`width`,`height`],x=[`stroke`,`stroke-width`],S=[`stroke`,`stroke-width`],C=o({__name:`IconShirt`,props:{size:{default:24},color:{default:`currentColor`},strokeWidth:{default:1.5}},setup(n){return(i,a)=>(e(),t(`svg`,{width:n.size,height:n.size,viewBox:`0 0 24 24`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,"aria-hidden":`true`},[r(`path`,{d:`M8.25 5.25 12 7.75l3.75-2.5 2.25 2.75L16 9.5V18.5a1 1 0 0 1-1 1H9a1 1 0 0 1-1-1V9.5L6 8l2.25-2.75Z`,stroke:n.color,"stroke-width":n.strokeWidth,"stroke-linecap":`round`,"stroke-linejoin":`round`},null,8,x),r(`path`,{d:`M12 7.75V18.5`,stroke:n.color,"stroke-width":n.strokeWidth,"stroke-linecap":`round`},null,8,S)],8,b))}}),w=[`width`,`height`],T=[`stroke`,`stroke-width`],E=[`stroke`,`stroke-width`],D=[`stroke`,`stroke-width`],O=[`stroke`,`stroke-width`],k=o({__name:`IconSuit`,props:{size:{default:24},color:{default:`currentColor`},strokeWidth:{default:1.5}},setup(n){return(i,a)=>(e(),t(`svg`,{width:n.size,height:n.size,viewBox:`0 0 24 24`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,"aria-hidden":`true`},[r(`path`,{d:`M7.5 5.5h9l2 3v10.5a1 1 0 0 1-1 1h-11a1 1 0 0 1-1-1V8.5l2-3Z`,stroke:n.color,"stroke-width":n.strokeWidth,"stroke-linecap":`round`,"stroke-linejoin":`round`},null,8,T),r(`path`,{d:`M12 5.5v13`,stroke:n.color,"stroke-width":n.strokeWidth,"stroke-linecap":`round`},null,8,E),r(`path`,{d:`M7.5 9 12 11.75 16.5 9`,stroke:n.color,"stroke-width":n.strokeWidth,"stroke-linecap":`round`,"stroke-linejoin":`round`},null,8,D),r(`path`,{d:`M10.25 5.5V4a1.75 1.75 0 0 1 3.5 0v1.5`,stroke:n.color,"stroke-width":n.strokeWidth,"stroke-linecap":`round`},null,8,O)],8,w))}}),A=[`width`,`height`],j=[`stroke`,`stroke-width`],M=[`stroke`,`stroke-width`],N=[`stroke`,`stroke-width`],P=o({__name:`IconTrousers`,props:{size:{default:24},color:{default:`currentColor`},strokeWidth:{default:1.5}},setup(n){return(i,a)=>(e(),t(`svg`,{width:n.size,height:n.size,viewBox:`0 0 24 24`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,"aria-hidden":`true`},[r(`path`,{d:`M8 4.5h8v4.25l-1.75 11H13l-1-9.5-1 9.5H7.75L6 8.75V4.5Z`,stroke:n.color,"stroke-width":n.strokeWidth,"stroke-linecap":`round`,"stroke-linejoin":`round`},null,8,j),r(`path`,{d:`M12 8.75v11`,stroke:n.color,"stroke-width":n.strokeWidth,"stroke-linecap":`round`},null,8,M),r(`path`,{d:`M8 7.25h8`,stroke:n.color,"stroke-width":n.strokeWidth,"stroke-linecap":`round`},null,8,N)],8,A))}}),F=[`width`,`height`,`stroke`,`stroke-width`],I={bolt:_,feather:v,diamond:f,grid:d,bag:h,"id-card":y,catalog:l,headset:u,home:c,shirt:C,suit:k,trousers:P,ruler:m,composition:o({__name:`IconComposition`,props:{size:{default:22},color:{default:`currentColor`},strokeWidth:{default:1.6}},setup(n){return(i,a)=>(e(),t(`svg`,{width:n.size,height:n.size,viewBox:`0 0 24 24`,fill:`none`,stroke:n.color,"stroke-width":n.strokeWidth,"stroke-linecap":`round`,"stroke-linejoin":`round`,"aria-hidden":`true`},[...a[0]||=[r(`path`,{d:`M12 3.5 20 8v8l-8 4.5L4 16V8l8-4.5Z`},null,-1)]],8,F))}}),weight:h,weave:g},L={shirt:`shirt`,suit:`suit`,trousers:`trousers`};function R(e){return L[e.id]?L[e.id]:e.icon&&I[e.icon]?e.icon:e.icon??`grid`}function z(e,t=f){return e&&I[e]||t}function B(e){let t=i([]),r=i(!0);async function a(){r.value=!0;try{t.value=await p(e)}catch{t.value=[]}finally{r.value=!1}}return n(()=>{a()}),{banners:t,loading:r,reload:a}}export{z as n,R as r,B as t}; \ No newline at end of file +import{M as e,f as t,k as n,l as r,nt as i,u as a,v as o}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{t as s}from"./BasicIcon-DPmc0iaK.js";import{n as c,t as l}from"./IconCatalog-BaNuPmu8.js";import{y as u}from"./index-CE4Fw0WE.js";import{n as d,t as f}from"./IconDiamond-BZQtRyIy.js";import{r as p}from"./crm-CgnSby61.js";import{n as m,r as h,t as g}from"./IconWeave-DAcvD2P0.js";var _=o({__name:`IconBolt`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(t){return(n,r)=>(e(),a(s,{icon:`vuesax-linear:flash`,size:t.size,"stroke-width":t.strokeWidth,color:t.color},null,8,[`size`,`stroke-width`,`color`]))}}),v=o({__name:`IconFeather`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(t){return(n,r)=>(e(),a(s,{icon:`vuesax-linear:pen-add`,size:t.size,"stroke-width":t.strokeWidth,color:t.color},null,8,[`size`,`stroke-width`,`color`]))}}),y=o({__name:`IconIdCard`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(t){return(n,r)=>(e(),a(s,{icon:`vuesax-linear:personalcard`,size:t.size,"stroke-width":t.strokeWidth,color:t.color},null,8,[`size`,`stroke-width`,`color`]))}}),b=[`width`,`height`],x=[`stroke`,`stroke-width`],S=[`stroke`,`stroke-width`],C=o({__name:`IconShirt`,props:{size:{default:24},color:{default:`currentColor`},strokeWidth:{default:1.5}},setup(n){return(i,a)=>(e(),t(`svg`,{width:n.size,height:n.size,viewBox:`0 0 24 24`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,"aria-hidden":`true`},[r(`path`,{d:`M8.25 5.25 12 7.75l3.75-2.5 2.25 2.75L16 9.5V18.5a1 1 0 0 1-1 1H9a1 1 0 0 1-1-1V9.5L6 8l2.25-2.75Z`,stroke:n.color,"stroke-width":n.strokeWidth,"stroke-linecap":`round`,"stroke-linejoin":`round`},null,8,x),r(`path`,{d:`M12 7.75V18.5`,stroke:n.color,"stroke-width":n.strokeWidth,"stroke-linecap":`round`},null,8,S)],8,b))}}),w=[`width`,`height`],T=[`stroke`,`stroke-width`],E=[`stroke`,`stroke-width`],D=[`stroke`,`stroke-width`],O=[`stroke`,`stroke-width`],k=o({__name:`IconSuit`,props:{size:{default:24},color:{default:`currentColor`},strokeWidth:{default:1.5}},setup(n){return(i,a)=>(e(),t(`svg`,{width:n.size,height:n.size,viewBox:`0 0 24 24`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,"aria-hidden":`true`},[r(`path`,{d:`M7.5 5.5h9l2 3v10.5a1 1 0 0 1-1 1h-11a1 1 0 0 1-1-1V8.5l2-3Z`,stroke:n.color,"stroke-width":n.strokeWidth,"stroke-linecap":`round`,"stroke-linejoin":`round`},null,8,T),r(`path`,{d:`M12 5.5v13`,stroke:n.color,"stroke-width":n.strokeWidth,"stroke-linecap":`round`},null,8,E),r(`path`,{d:`M7.5 9 12 11.75 16.5 9`,stroke:n.color,"stroke-width":n.strokeWidth,"stroke-linecap":`round`,"stroke-linejoin":`round`},null,8,D),r(`path`,{d:`M10.25 5.5V4a1.75 1.75 0 0 1 3.5 0v1.5`,stroke:n.color,"stroke-width":n.strokeWidth,"stroke-linecap":`round`},null,8,O)],8,w))}}),A=[`width`,`height`],j=[`stroke`,`stroke-width`],M=[`stroke`,`stroke-width`],N=[`stroke`,`stroke-width`],P=o({__name:`IconTrousers`,props:{size:{default:24},color:{default:`currentColor`},strokeWidth:{default:1.5}},setup(n){return(i,a)=>(e(),t(`svg`,{width:n.size,height:n.size,viewBox:`0 0 24 24`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,"aria-hidden":`true`},[r(`path`,{d:`M8 4.5h8v4.25l-1.75 11H13l-1-9.5-1 9.5H7.75L6 8.75V4.5Z`,stroke:n.color,"stroke-width":n.strokeWidth,"stroke-linecap":`round`,"stroke-linejoin":`round`},null,8,j),r(`path`,{d:`M12 8.75v11`,stroke:n.color,"stroke-width":n.strokeWidth,"stroke-linecap":`round`},null,8,M),r(`path`,{d:`M8 7.25h8`,stroke:n.color,"stroke-width":n.strokeWidth,"stroke-linecap":`round`},null,8,N)],8,A))}}),F=[`width`,`height`,`stroke`,`stroke-width`],I={bolt:_,feather:v,diamond:f,grid:d,bag:h,"id-card":y,catalog:l,headset:u,home:c,shirt:C,suit:k,trousers:P,ruler:m,composition:o({__name:`IconComposition`,props:{size:{default:22},color:{default:`currentColor`},strokeWidth:{default:1.6}},setup(n){return(i,a)=>(e(),t(`svg`,{width:n.size,height:n.size,viewBox:`0 0 24 24`,fill:`none`,stroke:n.color,"stroke-width":n.strokeWidth,"stroke-linecap":`round`,"stroke-linejoin":`round`,"aria-hidden":`true`},[...a[0]||=[r(`path`,{d:`M12 3.5 20 8v8l-8 4.5L4 16V8l8-4.5Z`},null,-1)]],8,F))}}),weight:h,weave:g},L={shirt:`shirt`,suit:`suit`,trousers:`trousers`};function R(e){return L[e.id]?L[e.id]:e.icon&&I[e.icon]?e.icon:e.icon??`grid`}function z(e,t=f){return e&&I[e]||t}function B(e){let t=i([]),r=i(!0);async function a(){r.value=!0;try{t.value=await p(e)}catch{t.value=[]}finally{r.value=!1}}return n(()=>{a()}),{banners:t,loading:r,reload:a}}export{z as n,R as r,B as t}; \ No newline at end of file diff --git a/dist/index.html b/dist/index.html index b8a1ea9..95e7efd 100644 --- a/dist/index.html +++ b/dist/index.html @@ -11,7 +11,7 @@ سامانه سفارش عمده پارچه - + @@ -31,7 +31,7 @@ - +
diff --git a/src/components/support/SupportWidget.vue b/src/components/support/SupportWidget.vue index f9cfe22..750be09 100644 --- a/src/components/support/SupportWidget.vue +++ b/src/components/support/SupportWidget.vue @@ -98,15 +98,22 @@ function restorePosition() { placed.value = clampAnchor(saved, el) } -function equalizePills() { +function lockPillWidth() { const root = rootRef.value if (!root) return const pills = [...root.querySelectorAll('.support-widget__link, .support-widget__fab')] if (!pills.length) return - for (const pill of pills) pill.style.width = 'max-content' - const width = Math.ceil(Math.max(...pills.map((pill) => pill.getBoundingClientRect().width))) - for (const pill of pills) pill.style.width = '' - root.style.setProperty('--support-pill-width', `${width}px`) + const probe = document.createElement('div') + probe.style.cssText = 'position:fixed;left:-9999px;top:0;visibility:hidden;pointer-events:none;width:max-content;' + for (const pill of pills) { + const clone = pill.cloneNode(true) as HTMLElement + clone.style.width = 'max-content' + probe.appendChild(clone) + } + document.body.appendChild(probe) + const width = Math.ceil(probe.getBoundingClientRect().width) + probe.remove() + if (width > 0) root.style.setProperty('--support-pill-width', `${width}px`) } function fitPanel() { @@ -119,7 +126,6 @@ function fitPanel() { panel.style.maxHeight = '' panel.style.overflowY = '' } - equalizePills() const rect = root.getBoundingClientRect() const overflowLeft = EDGE - rect.left @@ -268,17 +274,19 @@ watch(hasSupportLinks, (ok) => { watch(showWidget, (show) => { if (!show) return - void nextTick(() => requestAnimationFrame(() => restorePosition())) + void nextTick(() => { + lockPillWidth() + requestAnimationFrame(() => restorePosition()) + }) +}) + +watch(supportLinks, () => { + if (!showWidget.value) return + void nextTick(() => lockPillWidth()) }) watch(open, (isOpen) => { - if (!isOpen) { - if (rootRef.value) { - rootRef.value.style.transform = '' - rootRef.value.style.removeProperty('--support-pill-width') - } - return - } + if (!isOpen) return void nextTick(() => fitPanel()) }) @@ -303,15 +311,15 @@ watch(dragging, (isDragging) => { :class="{ 'support-widget--above-nav': props.aboveBottomNav }" :style="widgetStyle" > - -