This commit is contained in:
2026-09-13 15:36:48 +03:30
parent d6e424137d
commit d02c27fef4
98 changed files with 1886 additions and 234 deletions
File diff suppressed because one or more lines are too long
@@ -1 +1 @@
import{A as e,D as t,I as n,J as r,L as i,N as a,R as o,Tt as s,X as c,_ as l,et as u,j as d,k as f,n as p,nt as m,pt as ee,t as h,xt as g}from"./BasicIcon-B6lR-mG3.js";import{i as te,n as ne}from"./format-BHJptHdF.js";import{t as re}from"./catalog-DNpqlweh.js";import{g as ie,n as _}from"./index-DDi4iM2C.js";import{t as ae}from"./PageHeader-COmjOmby.js";import{t as oe}from"./useRequirePricedOrder-CgVrKOPu.js";var v=o({__name:`IconSuccessCircle`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(r(),d(h,{icon:`vuesax-linear:tick-circle`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),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`},y={class:`cash-page__success-subtitle`},b={class:`accounts-panel`},x={class:`accounts-panel__title`},S={class:`bank-card__head`},C={class:`bank-card__name`},w={class:`bank-card__icon`,"aria-hidden":`true`},T={class:`bank-card__field`},E={class:`bank-card__value`,dir:`ltr`},D={class:`bank-card__field`},O={class:`bank-card__value`,dir:`ltr`},k={class:`cash-page__footer`},A={class:`desktop-checkout-shell cash-desktop-page desktop-only`},j={class:`desktop-page__head`},M={class:`desktop-page__subtitle`},N={class:`cash-page__success cash-page__success--done`},P={class:`cash-page__success-title`},de={class:`accounts-panel`},F={class:`accounts-panel__title`},I={class:`desktop-grid-2`},L={class:`bank-card__head`},R={class:`bank-card__name`},z={class:`bank-card__icon`,"aria-hidden":`true`},B={class:`bank-card__field`},V={class:`bank-card__value`,dir:`ltr`},H={class:`bank-card__field`},fe={class:`bank-card__value`,dir:`ltr`},pe={class:`cash-desktop-page__actions`},U=p(o({__name:`CashSettlementView`,setup(o){let d=l(),p=ie(),h=re(),U=ee([]),{orderId:W,order:G}=oe(),K=f(()=>G.value?.companyName??``);u(W,async e=>{e&&!p.getOrderById(e)&&await p.fetchOrder(e)},{immediate:!0}),u(()=>G.value?.id,async e=>{if(!e||!G.value){U.value=[];return}h.companies.length||await h.loadCompanies(),U.value=await p.getBankAccountsForOrder(G.value)},{immediate:!0});let q=f(()=>G.value?.finalAmount?ne(G.value.finalAmount):`—`),J=f(()=>{let e=G.value?.cashInvoiceExpiresAt;return e?`مهلت پرداخت این فاکتور تا ${te(e)} است.`:`مبلغ فاکتور را به یکی از حساب‌های زیر واریز و رسید را ثبت کنید.`}),Y=f(()=>{let e=K.value.replace(/^شرکت\s+/u,``);return e?`شماره حساب‌های واریز — ${e}`:`شماره حساب‌های واریز`});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(){d.replace(`/orders/${W.value}?track=1`)}function $(){d.replace(`/orders/${W.value}?track=1&receipt=1`)}return(o,l)=>(r(),a(t,null,[e(`div`,se,[i(ae,{title:`تسویه نقدی`,"show-back":``,centered:``,onBack:l[0]||=e=>g(d).push(`/orders/${g(W)}`)}),e(`div`,ce,[e(`div`,le,[i(v,{size:56}),e(`p`,ue,`مبلغ قابل پرداخت `+s(q.value),1),e(`p`,y,s(J.value),1)]),e(`section`,b,[e(`h2`,x,s(Y.value),1),(r(!0),a(t,null,c(U.value,t=>(r(),a(`article`,{key:t.id,class:`bank-card`},[e(`div`,S,[e(`span`,C,s(t.bankName),1),e(`span`,w,s(t.bankName.charAt(0)),1)]),e(`div`,T,[l[1]||=e(`span`,{class:`bank-card__label`},`شماره کارت`,-1),e(`strong`,E,s(X(t.cardNumber)),1)]),e(`div`,D,[l[2]||=e(`span`,{class:`bank-card__label`},`شماره شبا`,-1),e(`strong`,O,s(Z(t.iban)),1)])]))),128))])]),e(`div`,k,[i(_,{variant:`outline`,block:``,onClick:Q},{default:m(()=>[...l[3]||=[n(`مشاهده سفارش`,-1)]]),_:1}),i(_,{block:``,class:`cash-page__submit`,onClick:$},{default:m(()=>[...l[4]||=[n(` ثبت رسید پرداخت `,-1)]]),_:1})])]),e(`div`,A,[e(`header`,j,[l[5]||=e(`h1`,{class:`desktop-page__title`},`تسویه نقدی`,-1),e(`p`,M,s(J.value),1)]),e(`div`,N,[i(v,{size:56}),e(`p`,P,`مبلغ قابل پرداخت `+s(q.value),1)]),e(`section`,de,[e(`h2`,F,s(Y.value),1),e(`div`,I,[(r(!0),a(t,null,c(U.value,t=>(r(),a(`article`,{key:t.id,class:`bank-card`},[e(`div`,L,[e(`span`,R,s(t.bankName),1),e(`span`,z,s(t.bankName.charAt(0)),1)]),e(`div`,B,[l[6]||=e(`span`,{class:`bank-card__label`},`شماره کارت`,-1),e(`strong`,V,s(X(t.cardNumber)),1)]),e(`div`,H,[l[7]||=e(`span`,{class:`bank-card__label`},`شماره شبا`,-1),e(`strong`,fe,s(Z(t.iban)),1)])]))),128))])]),e(`div`,pe,[i(_,{variant:`outline`,class:`desktop-btn-compact`,onClick:Q},{default:m(()=>[...l[8]||=[n(` مشاهده سفارش `,-1)]]),_:1}),i(_,{class:`desktop-btn-compact`,onClick:$},{default:m(()=>[...l[9]||=[n(` ثبت رسید پرداخت `,-1)]]),_:1})])])],64))}}),[[`__scopeId`,`data-v-c299caf6`]]);export{U as default};
import{A as e,D as t,I as n,J as r,L as i,N as a,R as o,Tt as s,X as c,_ as l,et as u,j as d,k as f,n as p,nt as m,pt as ee,t as h,xt as g}from"./BasicIcon-B6lR-mG3.js";import{i as te,n as ne}from"./format-BHJptHdF.js";import{t as re}from"./catalog-DNpqlweh.js";import{g as ie,n as _}from"./index-DXso6ia7.js";import{t as ae}from"./PageHeader-Dzrx58_B.js";import{t as oe}from"./useRequirePricedOrder-BHwPSld8.js";var v=o({__name:`IconSuccessCircle`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(r(),d(h,{icon:`vuesax-linear:tick-circle`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),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`},y={class:`cash-page__success-subtitle`},b={class:`accounts-panel`},x={class:`accounts-panel__title`},S={class:`bank-card__head`},C={class:`bank-card__name`},w={class:`bank-card__icon`,"aria-hidden":`true`},T={class:`bank-card__field`},E={class:`bank-card__value`,dir:`ltr`},D={class:`bank-card__field`},O={class:`bank-card__value`,dir:`ltr`},k={class:`cash-page__footer`},A={class:`desktop-checkout-shell cash-desktop-page desktop-only`},j={class:`desktop-page__head`},M={class:`desktop-page__subtitle`},N={class:`cash-page__success cash-page__success--done`},P={class:`cash-page__success-title`},de={class:`accounts-panel`},F={class:`accounts-panel__title`},I={class:`desktop-grid-2`},L={class:`bank-card__head`},R={class:`bank-card__name`},z={class:`bank-card__icon`,"aria-hidden":`true`},B={class:`bank-card__field`},V={class:`bank-card__value`,dir:`ltr`},H={class:`bank-card__field`},fe={class:`bank-card__value`,dir:`ltr`},pe={class:`cash-desktop-page__actions`},U=p(o({__name:`CashSettlementView`,setup(o){let d=l(),p=ie(),h=re(),U=ee([]),{orderId:W,order:G}=oe(),K=f(()=>G.value?.companyName??``);u(W,async e=>{e&&!p.getOrderById(e)&&await p.fetchOrder(e)},{immediate:!0}),u(()=>G.value?.id,async e=>{if(!e||!G.value){U.value=[];return}h.companies.length||await h.loadCompanies(),U.value=await p.getBankAccountsForOrder(G.value)},{immediate:!0});let q=f(()=>G.value?.finalAmount?ne(G.value.finalAmount):`—`),J=f(()=>{let e=G.value?.cashInvoiceExpiresAt;return e?`مهلت پرداخت این فاکتور تا ${te(e)} است.`:`مبلغ فاکتور را به یکی از حساب‌های زیر واریز و رسید را ثبت کنید.`}),Y=f(()=>{let e=K.value.replace(/^شرکت\s+/u,``);return e?`شماره حساب‌های واریز — ${e}`:`شماره حساب‌های واریز`});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(){d.replace(`/orders/${W.value}?track=1`)}function $(){d.replace(`/orders/${W.value}?track=1&receipt=1`)}return(o,l)=>(r(),a(t,null,[e(`div`,se,[i(ae,{title:`تسویه نقدی`,"show-back":``,centered:``,onBack:l[0]||=e=>g(d).push(`/orders/${g(W)}`)}),e(`div`,ce,[e(`div`,le,[i(v,{size:56}),e(`p`,ue,`مبلغ قابل پرداخت `+s(q.value),1),e(`p`,y,s(J.value),1)]),e(`section`,b,[e(`h2`,x,s(Y.value),1),(r(!0),a(t,null,c(U.value,t=>(r(),a(`article`,{key:t.id,class:`bank-card`},[e(`div`,S,[e(`span`,C,s(t.bankName),1),e(`span`,w,s(t.bankName.charAt(0)),1)]),e(`div`,T,[l[1]||=e(`span`,{class:`bank-card__label`},`شماره کارت`,-1),e(`strong`,E,s(X(t.cardNumber)),1)]),e(`div`,D,[l[2]||=e(`span`,{class:`bank-card__label`},`شماره شبا`,-1),e(`strong`,O,s(Z(t.iban)),1)])]))),128))])]),e(`div`,k,[i(_,{variant:`outline`,block:``,onClick:Q},{default:m(()=>[...l[3]||=[n(`مشاهده سفارش`,-1)]]),_:1}),i(_,{block:``,class:`cash-page__submit`,onClick:$},{default:m(()=>[...l[4]||=[n(` ثبت رسید پرداخت `,-1)]]),_:1})])]),e(`div`,A,[e(`header`,j,[l[5]||=e(`h1`,{class:`desktop-page__title`},`تسویه نقدی`,-1),e(`p`,M,s(J.value),1)]),e(`div`,N,[i(v,{size:56}),e(`p`,P,`مبلغ قابل پرداخت `+s(q.value),1)]),e(`section`,de,[e(`h2`,F,s(Y.value),1),e(`div`,I,[(r(!0),a(t,null,c(U.value,t=>(r(),a(`article`,{key:t.id,class:`bank-card`},[e(`div`,L,[e(`span`,R,s(t.bankName),1),e(`span`,z,s(t.bankName.charAt(0)),1)]),e(`div`,B,[l[6]||=e(`span`,{class:`bank-card__label`},`شماره کارت`,-1),e(`strong`,V,s(X(t.cardNumber)),1)]),e(`div`,H,[l[7]||=e(`span`,{class:`bank-card__label`},`شماره شبا`,-1),e(`strong`,fe,s(Z(t.iban)),1)])]))),128))])]),e(`div`,pe,[i(_,{variant:`outline`,class:`desktop-btn-compact`,onClick:Q},{default:m(()=>[...l[8]||=[n(` مشاهده سفارش `,-1)]]),_:1}),i(_,{class:`desktop-btn-compact`,onClick:$},{default:m(()=>[...l[9]||=[n(` ثبت رسید پرداخت `,-1)]]),_:1})])])],64))}}),[[`__scopeId`,`data-v-c299caf6`]]);export{U as default};
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+1
View File
@@ -0,0 +1 @@
import{A as e,D as t,J as n,K as r,L as i,N as a,R as o,Tt as s,X as c,_ as l,et as u,g as d,j as f,k as p,n as m,pt as h,xt as g}from"./BasicIcon-B6lR-mG3.js";import{t as _}from"./catalog-DNpqlweh.js";import{x as v}from"./index-DXso6ia7.js";import{t as y}from"./EmptyState-C6UAJ5_3.js";import{t as b}from"./PageSkeleton-BImjuI6S.js";import{t as x}from"./PageHeader-Dzrx58_B.js";import{t as S}from"./SearchField-txVsGGXT.js";var C={class:`page catalog-mobile-page mobile-only`},w={class:`page__scroll page__scroll--with-nav catalog-mobile-scroll`},T={key:1,class:`catalog-mobile-list`},E=[`onClick`],D={class:`catalog-card__icon`},O={class:`catalog-card__info`},k={class:`catalog-card__count`},A={class:`desktop-page catalog-desktop-page desktop-only`},j={class:`desktop-page__head`},M={class:`desktop-page__title`},N={key:0,class:`desktop-grid-3`},P=[`onClick`],F={class:`catalog-card__icon`},I={class:`catalog-card__info`},L={class:`catalog-card__count`},R=m(o({__name:`CatalogListView`,setup(o){let m=d(),R=l(),z=_(),B=h(!0),V=p(()=>m.params.companyId),H=p(()=>z.getCompany(V.value)),U=h(``),W=p(()=>z.fetchCatalogs(V.value,U.value));async function G(){B.value=!0,z.getCompany(V.value)||await z.loadCompanies(),await z.loadCatalogs(V.value),B.value=!1}r(G),u(V,G);function K(e){R.push({name:`catalog-detail`,params:{catalogId:e}})}function q(e){let t=z.getCatalog(e);return t?.productCount==null?z.fetchProducts(e).length:t.productCount}return(r,o)=>(n(),a(t,null,[e(`div`,C,[i(x,{title:H.value?.name??`کالیته‌ها`,subtitle:`کالیته مورد نظر را انتخاب کنید`,"show-back":``,centered:``,onBack:o[0]||=e=>g(R).push(`/`)},null,8,[`title`]),i(S,{modelValue:U.value,"onUpdate:modelValue":o[1]||=e=>U.value=e,placeholder:`جستجو بر اساس کد یا نام کالیته...`,class:`catalog-page__search`},null,8,[`modelValue`]),e(`div`,w,[B.value?(n(),f(b,{key:0,variant:`cards`,rows:5})):W.value.length>0?(n(),a(`div`,T,[(n(!0),a(t,null,c(W.value,t=>(n(),a(`button`,{key:t.id,type:`button`,class:`catalog-card`,onClick:e=>K(t.id)},[e(`span`,D,[i(v,{size:22})]),e(`div`,O,[e(`h3`,null,`کالیته کد `+s(t.code),1),e(`p`,null,s(t.name),1)]),e(`span`,k,s(q(t.id))+` محصول`,1)],8,E))),128))])):(n(),f(y,{key:2,variant:U.value?`search`:`catalogs`,message:U.value?`با این جستجو کالیته‌ای پیدا نشد`:`برای این شرکت هنوز کالیته‌ای ثبت نشده است`},null,8,[`variant`,`message`]))])]),e(`div`,A,[e(`header`,j,[e(`h1`,M,s(H.value?.name??`کالیته‌ها`),1),o[3]||=e(`p`,{class:`desktop-page__subtitle`},`کالیته مورد نظر را انتخاب کنید`,-1)]),i(S,{modelValue:U.value,"onUpdate:modelValue":o[2]||=e=>U.value=e,placeholder:`جستجو بر اساس کد یا نام کالیته...`,class:`catalog-page__search`},null,8,[`modelValue`]),W.value.length>0?(n(),a(`div`,N,[(n(!0),a(t,null,c(W.value,t=>(n(),a(`button`,{key:t.id,type:`button`,class:`catalog-card catalog-card--desktop`,onClick:e=>K(t.id)},[e(`span`,F,[i(v,{size:24})]),e(`div`,I,[e(`h3`,null,`کالیته کد `+s(t.code),1),e(`p`,null,s(t.name),1)]),e(`span`,L,s(q(t.id))+` محصول`,1)],8,P))),128))])):(n(),f(y,{key:1,variant:U.value?`search`:`catalogs`,message:U.value?`با این جستجو کالیته‌ای پیدا نشد`:`برای این شرکت هنوز کالیته‌ای ثبت نشده است`},null,8,[`variant`,`message`]))])],64))}}),[[`__scopeId`,`data-v-986a9367`]]);export{R as default};
+1
View File
@@ -0,0 +1 @@
.catalog-mobile-page[data-v-986a9367]{background:var(--color-bg);color:var(--color-text);padding:12px 0 0}.catalog-page__search[data-v-986a9367]{margin-bottom:16px}.catalog-mobile-scroll[data-v-986a9367]{flex-direction:column;flex:1;min-height:0;display:flex}.catalog-mobile-list[data-v-986a9367]{flex-direction:column;gap:12px;display:flex}.catalog-card[data-v-986a9367]{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-elevated);width:100%;box-shadow:var(--shadow-sm);color:var(--color-text);text-align:right;cursor:pointer;align-items:center;gap:12px;padding:14px 16px;display:flex}.catalog-card--desktop[data-v-986a9367]{flex-direction:column;align-items:flex-start;min-height:140px;padding:20px}.catalog-card[data-v-986a9367]:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md)}.catalog-card__icon[data-v-986a9367]{background:var(--color-primary-light);border-radius:var(--radius-sm);width:40px;height:40px;color:var(--color-primary);justify-content:center;align-items:center;display:flex}.catalog-card__info[data-v-986a9367]{flex:1}.catalog-card__info h3[data-v-986a9367]{color:var(--color-text);margin:0 0 4px;font-size:.9375rem}.catalog-card__info p[data-v-986a9367]{color:var(--color-text-muted);margin:0;font-size:.8125rem}.catalog-card__count[data-v-986a9367]{color:var(--color-primary);font-size:.8125rem;font-weight:600}
-1
View File
@@ -1 +0,0 @@
import{A as e,D as t,J as n,K as r,L as i,N as a,R as o,Tt as s,X as c,_ as l,et as u,g as d,j as f,k as p,n as m,pt as h,xt as g}from"./BasicIcon-B6lR-mG3.js";import{t as _}from"./catalog-DNpqlweh.js";import{x as v}from"./index-DDi4iM2C.js";import{t as y}from"./EmptyState-C6UAJ5_3.js";import{t as b}from"./PageHeader-COmjOmby.js";import{t as x}from"./SearchField-txVsGGXT.js";import{t as S}from"./PageSkeleton-BImjuI6S.js";var C={class:`page catalog-mobile-page mobile-only`},w={class:`page__scroll page__scroll--with-nav catalog-mobile-scroll`},T={key:1,class:`catalog-mobile-list`},E=[`onClick`],D={class:`catalog-card__icon`},O={class:`catalog-card__info`},k={class:`catalog-card__count`},A={class:`desktop-page catalog-desktop-page desktop-only`},j={class:`desktop-page__head`},M={class:`desktop-page__title`},N={key:0,class:`desktop-grid-3`},P=[`onClick`],F={class:`catalog-card__icon`},I={class:`catalog-card__info`},L={class:`catalog-card__count`},R=m(o({__name:`CatalogListView`,setup(o){let m=d(),R=l(),z=_(),B=h(!0),V=p(()=>m.params.companyId),H=p(()=>z.getCompany(V.value)),U=h(``),W=p(()=>z.fetchCatalogs(V.value,U.value));async function G(){B.value=!0,z.getCompany(V.value)||await z.loadCompanies(),await z.loadCatalogs(V.value),B.value=!1}r(G),u(V,G);function K(e){R.push({path:`/products`,query:{catalogId:e,companyId:V.value}})}function q(e){let t=z.getCatalog(e);return t?.productCount==null?z.fetchProducts(e).length:t.productCount}return(r,o)=>(n(),a(t,null,[e(`div`,C,[i(b,{title:H.value?.name??`کالیته‌ها`,subtitle:`کالیته مورد نظر را انتخاب کنید`,"show-back":``,centered:``,onBack:o[0]||=e=>g(R).push(`/`)},null,8,[`title`]),i(x,{modelValue:U.value,"onUpdate:modelValue":o[1]||=e=>U.value=e,placeholder:`جستجو بر اساس کد یا نام کالیته...`,class:`catalog-page__search`},null,8,[`modelValue`]),e(`div`,w,[B.value?(n(),f(S,{key:0,variant:`cards`,rows:5})):W.value.length>0?(n(),a(`div`,T,[(n(!0),a(t,null,c(W.value,t=>(n(),a(`button`,{key:t.id,type:`button`,class:`catalog-card`,onClick:e=>K(t.id)},[e(`span`,D,[i(v,{size:22})]),e(`div`,O,[e(`h3`,null,`کالیته کد `+s(t.code),1),e(`p`,null,s(t.name),1)]),e(`span`,k,s(q(t.id))+` محصول`,1)],8,E))),128))])):(n(),f(y,{key:2,variant:U.value?`search`:`catalogs`,message:U.value?`با این جستجو کالیته‌ای پیدا نشد`:`برای این شرکت هنوز کالیته‌ای ثبت نشده است`},null,8,[`variant`,`message`]))])]),e(`div`,A,[e(`header`,j,[e(`h1`,M,s(H.value?.name??`کالیته‌ها`),1),o[3]||=e(`p`,{class:`desktop-page__subtitle`},`کالیته مورد نظر را انتخاب کنید`,-1)]),i(x,{modelValue:U.value,"onUpdate:modelValue":o[2]||=e=>U.value=e,placeholder:`جستجو بر اساس کد یا نام کالیته...`,class:`catalog-page__search`},null,8,[`modelValue`]),W.value.length>0?(n(),a(`div`,N,[(n(!0),a(t,null,c(W.value,t=>(n(),a(`button`,{key:t.id,type:`button`,class:`catalog-card catalog-card--desktop`,onClick:e=>K(t.id)},[e(`span`,F,[i(v,{size:24})]),e(`div`,I,[e(`h3`,null,`کالیته کد `+s(t.code),1),e(`p`,null,s(t.name),1)]),e(`span`,L,s(q(t.id))+` محصول`,1)],8,P))),128))])):(n(),f(y,{key:1,variant:U.value?`search`:`catalogs`,message:U.value?`با این جستجو کالیته‌ای پیدا نشد`:`برای این شرکت هنوز کالیته‌ای ثبت نشده است`},null,8,[`variant`,`message`]))])],64))}}),[[`__scopeId`,`data-v-fa6b4c3f`]]);export{R as default};
-1
View File
@@ -1 +0,0 @@
.catalog-mobile-page[data-v-fa6b4c3f]{background:var(--color-bg);color:var(--color-text);padding:12px 0 0}.catalog-page__search[data-v-fa6b4c3f]{margin-bottom:16px}.catalog-mobile-scroll[data-v-fa6b4c3f]{flex-direction:column;flex:1;min-height:0;display:flex}.catalog-mobile-list[data-v-fa6b4c3f]{flex-direction:column;gap:12px;display:flex}.catalog-card[data-v-fa6b4c3f]{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-elevated);width:100%;box-shadow:var(--shadow-sm);color:var(--color-text);text-align:right;cursor:pointer;align-items:center;gap:12px;padding:14px 16px;display:flex}.catalog-card--desktop[data-v-fa6b4c3f]{flex-direction:column;align-items:flex-start;min-height:140px;padding:20px}.catalog-card[data-v-fa6b4c3f]:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md)}.catalog-card__icon[data-v-fa6b4c3f]{background:var(--color-primary-light);border-radius:var(--radius-sm);width:40px;height:40px;color:var(--color-primary);justify-content:center;align-items:center;display:flex}.catalog-card__info[data-v-fa6b4c3f]{flex:1}.catalog-card__info h3[data-v-fa6b4c3f]{color:var(--color-text);margin:0 0 4px;font-size:.9375rem}.catalog-card__info p[data-v-fa6b4c3f]{color:var(--color-text-muted);margin:0;font-size:.8125rem}.catalog-card__count[data-v-fa6b4c3f]{color:var(--color-primary);font-size:.8125rem;font-weight:600}
+1
View File
@@ -0,0 +1 @@
.body[data-v-6bde0457]{padding:12px var(--page-padding) 24px;flex-direction:column;gap:10px;display:flex}.hint[data-v-6bde0457]{color:var(--color-text-muted);margin:0;font-size:.85rem}.error[data-v-6bde0457]{color:#b42318}.row[data-v-6bde0457]{background:var(--color-surface);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex}.row--selected[data-v-6bde0457]{outline:2px solid var(--color-primary)}.row strong[data-v-6bde0457]{font-size:.9rem;display:block}.row span[data-v-6bde0457]{color:var(--color-text-muted);font-size:.78rem}.qty[data-v-6bde0457]{border:1px solid var(--color-border);text-align:center;width:64px;height:40px;font:inherit;background:var(--color-bg);color:var(--color-text);border-radius:10px}.note[data-v-6bde0457]{color:var(--color-text-muted);flex-direction:column;gap:6px;font-size:.85rem;display:flex}.note textarea[data-v-6bde0457]{border:1px solid var(--color-border);font:inherit;resize:vertical;background:var(--color-surface);color:var(--color-text);border-radius:12px;padding:10px 12px}.summary[data-v-6bde0457]{color:var(--color-text-muted);margin:4px 0 0;font-size:.85rem}.submit[data-v-6bde0457]{background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:12px;min-height:48px;font-weight:700}.submit[data-v-6bde0457]:disabled{opacity:.7}.linkish[data-v-6bde0457]{color:var(--color-primary);cursor:pointer;background:0 0;border:none;padding:8px;font-weight:700}
-1
View File
@@ -1 +0,0 @@
.body[data-v-74250a20]{padding:12px var(--page-padding) 24px;flex-direction:column;gap:10px;display:flex}.hint[data-v-74250a20]{color:var(--color-text-muted);margin:0;font-size:.85rem}.error[data-v-74250a20]{color:#b42318}.row[data-v-74250a20]{background:var(--color-surface);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex}.row--selected[data-v-74250a20]{outline:2px solid var(--color-primary)}.row strong[data-v-74250a20]{font-size:.9rem;display:block}.row span[data-v-74250a20]{color:var(--color-text-muted);font-size:.78rem}.qty[data-v-74250a20]{border:1px solid var(--color-border);text-align:center;width:64px;height:40px;font:inherit;background:var(--color-bg);color:var(--color-text);border-radius:10px}.note[data-v-74250a20]{color:var(--color-text-muted);flex-direction:column;gap:6px;font-size:.85rem;display:flex}.note textarea[data-v-74250a20]{border:1px solid var(--color-border);font:inherit;resize:vertical;background:var(--color-surface);color:var(--color-text);border-radius:12px;padding:10px 12px}.summary[data-v-74250a20]{color:var(--color-text-muted);margin:4px 0 0;font-size:.85rem}.submit[data-v-74250a20]{background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:12px;min-height:48px;font-weight:700}.submit[data-v-74250a20]:disabled{opacity:.7}.linkish[data-v-74250a20]{color:var(--color-primary);cursor:pointer;background:0 0;border:none;padding:8px;font-weight:700}
-1
View File
@@ -1 +0,0 @@
import{A as e,C as t,D as n,I as r,J as i,K as a,L as o,N as s,R as c,St as l,Tt as u,X as d,_ as f,g as p,j as m,k as h,n as g,pt as _,rt as v,xt as y}from"./BasicIcon-B6lR-mG3.js";import{o as b}from"./format-BHJptHdF.js";import{t as x}from"./PageHeader-COmjOmby.js";import{t as S}from"./PageSkeleton-BImjuI6S.js";import{t as C}from"./crm-DbcoqKAF.js";import{t as w}from"./catalogRequests-4v_wDAbs.js";var T={class:`page`},E={class:`page__scroll page__scroll--with-nav body`},D={class:`hint`},O={key:1,class:`error`},k=[`value`,`onInput`],A={class:`note`},j={class:`summary`},M=[`disabled`],N=g(c({__name:`CatalogRequestView`,setup(c){let g=p(),N=f(),P=C(),F=w(),I=_(!0),L=_(!1),R=_(null),z=_(``),B=_([]),V=_({}),H=h(()=>String(g.query.productId??``)),U=h(()=>B.value.filter(e=>(V.value[e.id]??0)>0).map(e=>({productId:e.id,productName:e.name,productCode:e.code,quantity:V.value[e.id]??0})));a(async()=>{I.value=!0,R.value=null;try{let e=await P.loadBrowseProducts(),t=H.value;B.value=t?[...e].sort((e,n)=>Number(n.id===t)-Number(e.id===t)):e,t&&(V.value={...V.value,[t]:1})}catch(e){R.value=e instanceof Error?e.message:`بارگذاری محصولات ناموفق بود.`}finally{I.value=!1}});function W(e,t){V.value={...V.value,[e]:Math.max(0,Math.floor(t)||0)}}async function G(){L.value=!0,R.value=null;try{let e=await F.create({items:U.value,note:z.value});if(!e.success){R.value=e.message;return}N.push(`/catalog-requests`)}finally{L.value=!1}}return(a,c)=>(i(),s(`div`,T,[o(x,{title:`درخواست کالیته`,"show-back":``,centered:``,onBack:c[0]||=e=>y(N).back()}),e(`div`,E,[e(`p`,D,u(H.value?`این محصول برای درخواست کالیته انتخاب شده است. در صورت نیاز اقلام دیگر را هم اضافه کنید.`:`محصولات و تعداد اقلام موردنظر را مشخص کنید.`),1),I.value?(i(),m(S,{key:0,variant:`form`})):R.value?(i(),s(`p`,O,u(R.value),1)):(i(),s(n,{key:2},[(i(!0),s(n,null,d(B.value,t=>(i(),s(`article`,{key:t.id,class:l([`row`,{"row--selected":H.value===t.id}])},[e(`div`,null,[e(`strong`,null,u(t.name),1),e(`span`,null,`کد `+u(t.code),1)]),e(`input`,{class:`qty`,type:`number`,min:`0`,value:V.value[t.id]??0,onInput:e=>W(t.id,Number(e.target.value))},null,40,k)],2))),128)),e(`label`,A,[c[3]||=r(` توضیحات `,-1),v(e(`textarea`,{"onUpdate:modelValue":c[1]||=e=>z.value=e,rows:`3`,placeholder:`آدرس یا توضیحات اختیاری`},null,512),[[t,z.value]])]),e(`p`,j,`اقلام انتخاب‌شده: `+u(y(b)(U.value.length)),1),e(`button`,{type:`button`,class:`submit`,disabled:L.value,onClick:G},u(L.value?`در حال ثبت...`:`ثبت درخواست کالیته`),9,M),e(`button`,{type:`button`,class:`linkish`,onClick:c[2]||=e=>y(N).push(`/catalog-requests`)},` وضعیت درخواست‌های قبلی `)],64))])]))}}),[[`__scopeId`,`data-v-74250a20`]]);export{N as default};
+1
View File
@@ -0,0 +1 @@
import{A as e,C as t,D as n,I as r,J as i,K as a,L as o,N as s,R as c,St as l,Tt as u,X as d,_ as f,g as p,j as m,k as h,n as g,pt as _,rt as v,xt as y}from"./BasicIcon-B6lR-mG3.js";import{o as b}from"./format-BHJptHdF.js";import{t as x}from"./PageSkeleton-BImjuI6S.js";import{t as S}from"./crm-DbcoqKAF.js";import{t as C}from"./PageHeader-Dzrx58_B.js";import{t as w}from"./catalogRequests-4v_wDAbs.js";var T={class:`page`},E={class:`page__scroll page__scroll--with-nav body`},D={class:`hint`},O={key:1,class:`error`},k=[`value`,`onInput`],A={class:`note`},j={class:`summary`},M=[`disabled`],N=g(c({__name:`CatalogRequestView`,setup(c){let g=p(),N=f(),P=S(),F=w(),I=_(!0),L=_(!1),R=_(null),z=_(``),B=_([]),V=_({}),H=h(()=>String(g.query.productId??``)),U=h(()=>String(g.query.catalogId??``)),W=h(()=>B.value.filter(e=>(V.value[e.id]??0)>0).map(e=>({productId:e.id,productName:e.name,productCode:e.code,quantity:V.value[e.id]??0})));a(async()=>{I.value=!0,R.value=null;try{let e=await P.loadBrowseProducts(U.value?{catalogId:U.value}:void 0),t=H.value;B.value=t?[...e].sort((e,n)=>Number(n.id===t)-Number(e.id===t)):e,t&&(V.value={...V.value,[t]:1})}catch(e){R.value=e instanceof Error?e.message:`بارگذاری محصولات ناموفق بود.`}finally{I.value=!1}});function G(e,t){V.value={...V.value,[e]:Math.max(0,Math.floor(t)||0)}}async function K(){L.value=!0,R.value=null;try{let e=await F.create({items:W.value,note:z.value});if(!e.success){R.value=e.message;return}N.push(`/catalog-requests`)}finally{L.value=!1}}return(a,c)=>(i(),s(`div`,T,[o(C,{title:`درخواست کالیته`,"show-back":``,centered:``,onBack:c[0]||=e=>y(N).back()}),e(`div`,E,[e(`p`,D,u(H.value?`این محصول برای درخواست کالیته انتخاب شده است. در صورت نیاز اقلام دیگر را هم اضافه کنید.`:`محصولات و تعداد اقلام موردنظر را مشخص کنید.`),1),I.value?(i(),m(x,{key:0,variant:`form`})):R.value?(i(),s(`p`,O,u(R.value),1)):(i(),s(n,{key:2},[(i(!0),s(n,null,d(B.value,t=>(i(),s(`article`,{key:t.id,class:l([`row`,{"row--selected":H.value===t.id}])},[e(`div`,null,[e(`strong`,null,u(t.name),1),e(`span`,null,`کد `+u(t.code),1)]),e(`input`,{class:`qty`,type:`number`,min:`0`,value:V.value[t.id]??0,onInput:e=>G(t.id,Number(e.target.value))},null,40,k)],2))),128)),e(`label`,A,[c[3]||=r(` توضیحات `,-1),v(e(`textarea`,{"onUpdate:modelValue":c[1]||=e=>z.value=e,rows:`3`,placeholder:`آدرس یا توضیحات اختیاری`},null,512),[[t,z.value]])]),e(`p`,j,`اقلام انتخاب‌شده: `+u(y(b)(W.value.length)),1),e(`button`,{type:`button`,class:`submit`,disabled:L.value,onClick:K},u(L.value?`در حال ثبت...`:`ثبت درخواست کالیته`),9,M),e(`button`,{type:`button`,class:`linkish`,onClick:c[2]||=e=>y(N).push(`/catalog-requests`)},` وضعیت درخواست‌های قبلی `)],64))])]))}}),[[`__scopeId`,`data-v-6bde0457`]]);export{N as default};
@@ -1 +1 @@
import{A as e,D as t,J as n,K as r,L as i,M as a,N as o,R as s,Tt as c,X as l,_ as u,n as d,xt as f}from"./BasicIcon-B6lR-mG3.js";import{o as p}from"./format-BHJptHdF.js";import{t as m}from"./PageHeader-COmjOmby.js";import{t as h}from"./catalogRequests-4v_wDAbs.js";var g={class:`page`},_={class:`page__scroll page__scroll--with-nav body`},v={key:0,class:`empty`},y={class:`card__top`},b={class:`badge`},x={key:0,class:`note`},S=d(s({__name:`CatalogRequestsView`,setup(s){let d=u(),S=h();return r(()=>S.hydrate()),(r,s)=>(n(),o(`div`,g,[i(m,{title:`وضعیت کالیته‌ها`,"show-back":``,centered:``,onBack:s[0]||=e=>f(d).push(`/catalogs`)}),e(`div`,_,[e(`button`,{type:`button`,class:`new-btn`,onClick:s[1]||=e=>f(d).push(`/catalog-request`)},` درخواست کالیته جدید `),f(S).sorted.length?a(``,!0):(n(),o(`p`,v,`هنوز درخواستی ثبت نکرده‌اید.`)),(n(!0),o(t,null,l(f(S).sorted,r=>(n(),o(`article`,{key:r.id,class:`card`},[e(`div`,y,[e(`strong`,null,`درخواست `+c(r.id.slice(-6)),1),e(`span`,b,c(f(S).statusLabel(r.status)),1)]),e(`p`,null,c(r.createdAt.slice(0,10)),1),e(`p`,null,c(f(p)(r.items.length))+` قلم`,1),e(`ul`,null,[(n(!0),o(t,null,l(r.items,e=>(n(),o(`li`,{key:e.productId},c(e.productName)+` × `+c(f(p)(e.quantity)),1))),128))]),r.note?(n(),o(`p`,x,c(r.note),1)):a(``,!0)]))),128))])]))}}),[[`__scopeId`,`data-v-fc04181d`]]);export{S as default};
import{A as e,D as t,J as n,K as r,L as i,M as a,N as o,R as s,Tt as c,X as l,_ as u,n as d,xt as f}from"./BasicIcon-B6lR-mG3.js";import{o as p}from"./format-BHJptHdF.js";import{t as m}from"./PageHeader-Dzrx58_B.js";import{t as h}from"./catalogRequests-4v_wDAbs.js";var g={class:`page`},_={class:`page__scroll page__scroll--with-nav body`},v={key:0,class:`empty`},y={class:`card__top`},b={class:`badge`},x={key:0,class:`note`},S=d(s({__name:`CatalogRequestsView`,setup(s){let d=u(),S=h();return r(()=>S.hydrate()),(r,s)=>(n(),o(`div`,g,[i(m,{title:`وضعیت کالیته‌ها`,"show-back":``,centered:``,onBack:s[0]||=e=>f(d).push(`/catalogs`)}),e(`div`,_,[e(`button`,{type:`button`,class:`new-btn`,onClick:s[1]||=e=>f(d).push(`/catalog-request`)},` درخواست کالیته جدید `),f(S).sorted.length?a(``,!0):(n(),o(`p`,v,`هنوز درخواستی ثبت نکرده‌اید.`)),(n(!0),o(t,null,l(f(S).sorted,r=>(n(),o(`article`,{key:r.id,class:`card`},[e(`div`,y,[e(`strong`,null,`درخواست `+c(r.id.slice(-6)),1),e(`span`,b,c(f(S).statusLabel(r.status)),1)]),e(`p`,null,c(r.createdAt.slice(0,10)),1),e(`p`,null,c(f(p)(r.items.length))+` قلم`,1),e(`ul`,null,[(n(!0),o(t,null,l(r.items,e=>(n(),o(`li`,{key:e.productId},c(e.productName)+` × `+c(f(p)(e.quantity)),1))),128))]),r.note?(n(),o(`p`,x,c(r.note),1)):a(``,!0)]))),128))])]))}}),[[`__scopeId`,`data-v-fc04181d`]]);export{S as default};
-1
View File
@@ -1 +0,0 @@
import{A as e,D as t,J as n,K as r,L as i,M as a,N as o,R as s,St as c,Tt as l,W as u,X as d,_ as f,g as p,j as m,n as h,pt as g,xt as _}from"./BasicIcon-B6lR-mG3.js";import{t as v}from"./catalog-DNpqlweh.js";import{o as y}from"./index-DDi4iM2C.js";import{t as b}from"./PageHeader-COmjOmby.js";import{t as x}from"./PageSkeleton-BImjuI6S.js";var S={class:`page`},C={class:`page__scroll page__scroll--with-nav catalog-hub`},w={key:1},T=[`onClick`],E={class:`calite-item__text`},D={key:0,class:`empty-hint`},O=h(s({__name:`CatalogsHubView`,setup(s){let h=p(),O=f(),k=v(),A=g([]),j=g(!0),M=g(null);r(async()=>{try{let e=await k.loadCompanies(),t=await Promise.all(e.map(e=>k.loadCatalogs(e.id)));A.value=t.flat();let n=String(h.query.id??``);if(n){let e=A.value.find(e=>e.id===n);e&&(await u(),N(e))}}catch(e){M.value=e instanceof Error?e.message:`بارگذاری کالیته‌ها ناموفق بود.`}finally{j.value=!1}});function N(e){O.push({path:`/products`,query:{catalogId:e.id,companyId:e.companyId}})}function P(e){return k.getCompany(e)?.name??`برند`}return(r,s)=>(n(),o(`div`,S,[i(b,{title:`کالیته‌ها`,"show-back":``,centered:``,onBack:s[0]||=e=>_(O).push(`/`)}),e(`div`,C,[e(`button`,{type:`button`,class:`hub-card`,onClick:s[1]||=e=>_(O).push(`/catalog-request`)},[...s[5]||=[e(`strong`,null,`درخواست کالیته فیزیکی`,-1),e(`span`,null,`ثبت اقلام و پیگیری وضعیت`,-1)]]),e(`button`,{type:`button`,class:`hub-card`,onClick:s[2]||=e=>_(O).push(`/catalog-requests`)},[...s[6]||=[e(`strong`,null,`وضعیت درخواست‌ها`,-1),e(`span`,null,`پیگیری کالیته‌های ثبت‌شده`,-1)]]),e(`button`,{type:`button`,class:`hub-card`,onClick:s[3]||=e=>_(O).push(`/categories`)},[...s[7]||=[e(`strong`,null,`مشاهده دسته‌بندی‌ها`,-1),e(`span`,null,`انتخاب بر اساس کاربرد و فصل`,-1)]]),e(`button`,{type:`button`,class:`hub-card`,onClick:s[4]||=e=>_(O).push(`/products`)},[...s[8]||=[e(`strong`,null,`همه محصولات`,-1),e(`span`,null,`مشاهده کاتالوگ و ثبت سفارش`,-1)]]),j.value?(n(),m(x,{key:0,variant:`grid`})):M.value?(n(),o(`p`,w,l(M.value),1)):(n(),o(t,{key:2},[s[9]||=e(`h2`,{class:`section-title`},`کالیته‌های موجود`,-1),(n(!0),o(t,null,d(A.value,t=>(n(),o(`button`,{key:t.id,type:`button`,class:c([`calite-item`,{"calite-item--focus":String(_(h).query.id??``)===t.id}]),onClick:e=>N(t)},[e(`div`,E,[e(`strong`,null,l(t.name),1),e(`span`,null,`کد `+l(t.code),1),e(`em`,null,l(P(t.companyId)),1)]),i(y,{size:18,color:`#9aa3a0`})],10,T))),128)),A.value.length?a(``,!0):(n(),o(`p`,D,`کالیته‌ای یافت نشد.`))],64))])]))}}),[[`__scopeId`,`data-v-a452107a`]]);export{O as default};
+1
View File
@@ -0,0 +1 @@
import{A as e,D as t,J as n,K as r,L as i,M as a,N as o,R as s,St as c,Tt as l,X as u,_ as d,g as f,j as p,k as m,n as h,pt as g,wt as _,xt as v}from"./BasicIcon-B6lR-mG3.js";import{o as y}from"./format-BHJptHdF.js";import{t as b}from"./catalog-DNpqlweh.js";import{i as x}from"./index-DXso6ia7.js";import{t as S}from"./IconChevronBack-BXRfc2bX.js";import{t as C}from"./PageSkeleton-BImjuI6S.js";import{t as ee}from"./crm-DbcoqKAF.js";import{t as te}from"./useGoBack-yePcdjuj.js";import{a as w,n as T}from"./catalogGallery-sguYVy7M.js";import{t as E}from"./SearchField-txVsGGXT.js";import{t as D}from"./IconSearch-CQT-DmXF.js";var O={class:`page calite-hub`},k={class:`calite-hub__nav`},A={class:`calite-hub__nav-end`},j=[`aria-label`,`aria-pressed`],M={class:`page__scroll page__scroll--with-nav calite-hub__scroll`},N={class:`calite-hub__chips`,role:`tablist`,"aria-label":`مرتب‌سازی کالیته‌ها`},P=[`onClick`],F={key:2,class:`calite-hub__empty`},I={key:3,class:`calite-hub__list`},L=[`onClick`],R={key:0,class:`calite-card__badge`},z={class:`calite-card__copy`,dir:`rtl`},ne={class:`mr-4 text-white`},B={class:`text-lg font-bold`},V={class:`text-md`},H={class:`text-xs mt-4`},U=h(s({__name:`CatalogsHubView`,setup(s){let h=f(),U=d(),{goBack:W}=te(`/`),G=b(),K=ee(),q=g([]),J=g([]),Y=g(!0),X=g(!1),Z=g(``),Q=g(`all`),re=[{id:`all`,label:`همه`},{id:`newest`,label:`جدیدترین`},{id:`popular`,label:`محبوب‌ترین`},{id:`season`,label:`بر اساس فصل`}],ie=m(()=>T(q.value,J.value)),$=m(()=>w(ie.value,Q.value,Z.value));r(async()=>{try{let e=await G.loadCompanies(),[t,n]=await Promise.all([Promise.all(e.map(e=>G.loadCatalogs(e.id))),K.loadBrowseProducts().catch(()=>[])]);q.value=t.flat(),J.value=n;let r=String(h.query.id??``);r&&q.value.some(e=>e.id===r)&&U.replace({name:`catalog-detail`,params:{catalogId:r}})}catch{q.value=[]}finally{Y.value=!1}});function ae(e){U.push({name:`catalog-detail`,params:{catalogId:e}})}function oe(){X.value=!X.value,X.value||(Z.value=``)}function se(e){let t=e.season===`winter`?`مناسب زمستان`:e.season===`summer`?`مناسب تابستان`:`مناسب چهار فصل`;return`${y(e.patternCount)} طرح • ${t}`}return(r,s)=>(n(),o(`div`,O,[e(`header`,k,[e(`button`,{type:`button`,class:`icon-btn`,"aria-label":`بازگشت`,onClick:s[0]||=(...e)=>v(W)&&v(W)(...e)},[i(S,{size:20})]),s[2]||=e(`h1`,null,`کالیته‌ها`,-1),e(`div`,A,[i(x,{variant:`inline`,class:`mobile-only`}),e(`button`,{type:`button`,class:`icon-btn`,"aria-label":X.value?`بستن جستجو`:`جستجو`,"aria-pressed":X.value,onClick:oe},[i(D,{size:20})],8,j)])]),e(`div`,M,[s[4]||=e(`p`,{class:`calite-hub__lead`},`مجموعه‌ای از بهترین پارچه‌ها، در یک نگاه`,-1),X.value?(n(),p(E,{key:0,"model-value":Z.value,placeholder:`جستجوی نام کالیته...`,"onUpdate:modelValue":s[1]||=e=>Z.value=e},null,8,[`model-value`])):a(``,!0),e(`div`,N,[(n(),o(t,null,u(re,t=>e(`button`,{key:t.id,type:`button`,class:c([`calite-chip`,{"is-on":Q.value===t.id}]),onClick:e=>Q.value=t.id},l(t.label),11,P)),64))]),Y.value?(n(),p(C,{key:1,variant:`cards`,rows:4})):$.value.length?(n(),o(`div`,I,[(n(!0),o(t,null,u($.value,t=>(n(),o(`button`,{key:t.id,type:`button`,class:`calite-card`,dir:`ltr`,onClick:e=>ae(t.id)},[e(`span`,{class:`calite-card__photo`,style:_(t.imageUrl?{backgroundImage:`url(${t.imageUrl})`}:void 0)},null,4),t.badge?(n(),o(`span`,R,l(t.badge===`new`?`جدید`:`پرفروش`),1)):a(``,!0),e(`div`,z,[s[3]||=e(`svg`,{class:`calite-card__arrow`,width:`12`,height:`16`,viewBox:`0 0 8 12`,fill:`none`,"aria-hidden":`true`},[e(`path`,{d:`M1.5 1.5 6 6l-4.5 4.5`,stroke:`#fff`,"stroke-width":`1.4`,"stroke-linecap":`round`,"stroke-linejoin":`round`})],-1),e(`div`,ne,[e(`div`,B,l(t.title),1),e(`div`,V,l(t.subtitle),1),e(`div`,H,l(se(t)),1)])])],8,L))),128))])):(n(),o(`p`,F,`کالیته‌ای یافت نشد.`))])]))}}),[[`__scopeId`,`data-v-b8e1ce8b`]]);export{U as default};
+1
View File
@@ -0,0 +1 @@
.calite-hub[data-v-b8e1ce8b]{color:#2a2622;background:#f4f0ed}.calite-hub__nav[data-v-b8e1ce8b]{background:#f4f0ed;grid-template-columns:40px 1fr auto;align-items:center;padding:6px 12px 0;display:grid}.calite-hub__nav-end[data-v-b8e1ce8b]{align-items:center;display:flex}.calite-hub__nav h1[data-v-b8e1ce8b]{text-align:center;margin:0;font-size:1.125rem;font-weight:700}.calite-hub__scroll[data-v-b8e1ce8b]{flex-direction:column;gap:12px;padding:2px 16px 28px;display:flex}.calite-hub__lead[data-v-b8e1ce8b]{text-align:center;color:#8a847c;margin:0;font-size:.78rem;line-height:1.7}.icon-btn[data-v-b8e1ce8b]{width:40px;height:40px;color:inherit;cursor:pointer;background:0 0;border:none;place-items:center;display:grid}.calite-hub__chips[data-v-b8e1ce8b]{scrollbar-width:none;gap:8px;padding:2px 0 4px;display:flex}.calite-hub__chips[data-v-b8e1ce8b]::-webkit-scrollbar{display:none}.calite-chip[data-v-b8e1ce8b]{color:#615f5c;height:36px;font:inherit;cursor:pointer;background:#eae6e2;border:1px solid #eae6e2;border-radius:999px;flex-shrink:0;padding:0 16px;font-size:.78rem;font-weight:600}.calite-chip.is-on[data-v-b8e1ce8b]{border-color:var(--color-primary);background:var(--color-primary);color:#fff}.calite-hub__list[data-v-b8e1ce8b]{flex-direction:column;gap:12px;display:flex}.calite-card[data-v-b8e1ce8b]{cursor:pointer;text-align:start;color:#2c2824;background:#e7ddd4;border:none;border-radius:22px;width:100%;min-height:132px;padding:0;display:block;position:relative;overflow:hidden}.calite-card__photo[data-v-b8e1ce8b]{z-index:0;background:linear-gradient(160deg,#c4b7a8,#8a7b6c) 50%/cover;position:absolute;inset:0}.calite-card__photo[data-v-b8e1ce8b]:after{content:"";background:linear-gradient(90deg,#0000 28%,#e7ddd46b 58%,#e7ddd4e0 100%);position:absolute;inset:0}.calite-card__badge[data-v-b8e1ce8b]{z-index:2;color:#000;background:#e7ddd4;border-radius:999px;padding:5px 12px;font-size:1rem;font-weight:500;line-height:1.2;position:absolute;top:12px;left:12px}.calite-card__copy[data-v-b8e1ce8b]{z-index:1;align-items:center;gap:4px;min-height:132px;padding:16px 16px 16px 42%;display:flex;position:relative}.calite-card__copy strong[data-v-b8e1ce8b]{color:#2c2824;font-size:1.0625rem;font-weight:700;line-height:1.4}.calite-card__sub[data-v-b8e1ce8b]{color:#5c5752;justify-content:flex-start;align-items:center;gap:2px;display:flex}.calite-card__arrow[data-v-b8e1ce8b]{flex-shrink:0;display:block}.calite-card__copy em[data-v-b8e1ce8b]{color:#5c5752;font-size:.75rem;font-style:normal;font-weight:500;line-height:1.45}.calite-card__copy small[data-v-b8e1ce8b]{color:#7a746c;font-size:.6875rem;font-weight:500;line-height:1.45}.calite-hub__empty[data-v-b8e1ce8b]{text-align:center;color:#8a847c;margin:16px 0 0}html.dark .calite-hub[data-v-b8e1ce8b],html.dark .calite-hub__nav[data-v-b8e1ce8b]{color:#eef2f8;background:#0b0f14}html.dark .calite-hub__lead[data-v-b8e1ce8b],html.dark .calite-hub__empty[data-v-b8e1ce8b]{color:#9aa8bc}html.dark .calite-chip[data-v-b8e1ce8b]{color:#c5d0de;background:#1a2230;border-color:#2a3444}html.dark .calite-chip.is-on[data-v-b8e1ce8b]{color:#121821;background:#e8e4df;border-color:#e8e4df}html.dark .calite-card[data-v-b8e1ce8b]{color:#eef2f8;background:#1a2230}html.dark .calite-card__photo[data-v-b8e1ce8b]{background:linear-gradient(160deg,#3a4454,#151b24)}html.dark .calite-card__photo[data-v-b8e1ce8b]:after{background:linear-gradient(90deg,#0000 22%,#0b0f146b 55%,#0b0f14e0 100%)}html.dark .calite-card__badge[data-v-b8e1ce8b]{color:#121821;background:#e8e4df}html.dark .calite-card__copy strong[data-v-b8e1ce8b],html.dark .calite-card__sub[data-v-b8e1ce8b],html.dark .calite-card__copy em[data-v-b8e1ce8b],html.dark .calite-card__copy small[data-v-b8e1ce8b]{color:#eef2f8}html.dark .calite-card__copy small[data-v-b8e1ce8b]{color:#c5d0de}
-1
View File
@@ -1 +0,0 @@
.catalog-hub[data-v-a452107a]{padding:12px var(--page-padding) 24px;flex-direction:column;gap:10px;display:flex}.section-title[data-v-a452107a]{margin:8px 0 0;font-size:.95rem}.hub-card[data-v-a452107a],.calite-item[data-v-a452107a]{text-align:start;background:var(--color-surface);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);cursor:pointer;border:none;flex-direction:column;align-items:stretch;gap:4px;width:100%;padding:14px;display:flex}.calite-item[data-v-a452107a]{flex-direction:row;justify-content:space-between;align-items:center;gap:12px}.calite-item--focus[data-v-a452107a]{outline:2px solid var(--color-primary)}.calite-item__text[data-v-a452107a]{flex-direction:column;gap:4px;min-width:0;display:flex}.calite-item strong[data-v-a452107a]{color:var(--color-text);font-size:.95rem;font-weight:700;line-height:1.5;display:block}.hub-card span[data-v-a452107a],.calite-item span[data-v-a452107a],.calite-item em[data-v-a452107a]{color:var(--color-text-muted);font-size:.8rem;font-style:normal;line-height:1.5;display:block}.empty-hint[data-v-a452107a]{color:var(--color-text-muted);text-align:center;margin:12px 0 0}
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -1 +1 @@
import{A as e,J as t,L as n,N as r,R as i,Tt as a,_ as o,et as s,k as c,n as l,xt as u}from"./BasicIcon-B6lR-mG3.js";import{n as d}from"./format-BHJptHdF.js";import{b as f,g as p}from"./index-DDi4iM2C.js";import{t as m}from"./IconEditPen-CppsBLM9.js";import{t as h}from"./PageHeader-COmjOmby.js";import{t as g}from"./useRequirePricedOrder-CgVrKOPu.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=l(i({__name:`CheckModeSelectView`,setup(i){let l=o(),w=p(),{orderId:T,order:E}=g(),D=c(()=>E.value?.finalAmount?d(E.value.finalAmount):`—`);s(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(i,o)=>(t(),r(`div`,_,[n(h,{title:`تسویه چکی`,subtitle:`بر اساس مبلغ فاکتور، نحوه ثبت چک را انتخاب کنید`,"show-back":``,centered:``,onBack:o[0]||=e=>u(l).push(`/orders/${u(T)}`)}),e(`div`,v,[e(`div`,y,[o[3]||=e(`span`,{class:`check-mode-invoice__label`},`مبلغ فاکتور`,-1),e(`strong`,b,a(D.value),1)]),e(`div`,x,[e(`button`,{type:`button`,class:`mode-card`,onClick:o[1]||=e=>O(`full`)},[e(`span`,S,[n(f,{size:36})]),o[4]||=e(`h3`,{class:`mode-card__title`},`ثبت کامل (پیشنهادی)`,-1),o[5]||=e(`p`,{class:`mode-card__desc`},`وارد کردن همه اطلاعات چک`,-1)]),e(`button`,{type:`button`,class:`mode-card`,onClick:o[2]||=e=>O(`brief`)},[e(`span`,C,[n(m,{size:36})]),o[6]||=e(`h3`,{class:`mode-card__title`},`ثبت مختصر`,-1),o[7]||=e(`p`,{class:`mode-card__desc`},`وارد کردن حداقل اطلاعات`,-1)])])])]))}}),[[`__scopeId`,`data-v-680065b0`]]);export{w as default};
import{A as e,J as t,L as n,N as r,R as i,Tt as a,_ as o,et as s,k as c,n as l,xt as u}from"./BasicIcon-B6lR-mG3.js";import{n as d}from"./format-BHJptHdF.js";import{b as f,g as p}from"./index-DXso6ia7.js";import{t as m}from"./IconEditPen-CppsBLM9.js";import{t as h}from"./PageHeader-Dzrx58_B.js";import{t as g}from"./useRequirePricedOrder-BHwPSld8.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=l(i({__name:`CheckModeSelectView`,setup(i){let l=o(),w=p(),{orderId:T,order:E}=g(),D=c(()=>E.value?.finalAmount?d(E.value.finalAmount):`—`);s(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(i,o)=>(t(),r(`div`,_,[n(h,{title:`تسویه چکی`,subtitle:`بر اساس مبلغ فاکتور، نحوه ثبت چک را انتخاب کنید`,"show-back":``,centered:``,onBack:o[0]||=e=>u(l).push(`/orders/${u(T)}`)}),e(`div`,v,[e(`div`,y,[o[3]||=e(`span`,{class:`check-mode-invoice__label`},`مبلغ فاکتور`,-1),e(`strong`,b,a(D.value),1)]),e(`div`,x,[e(`button`,{type:`button`,class:`mode-card`,onClick:o[1]||=e=>O(`full`)},[e(`span`,S,[n(f,{size:36})]),o[4]||=e(`h3`,{class:`mode-card__title`},`ثبت کامل (پیشنهادی)`,-1),o[5]||=e(`p`,{class:`mode-card__desc`},`وارد کردن همه اطلاعات چک`,-1)]),e(`button`,{type:`button`,class:`mode-card`,onClick:o[2]||=e=>O(`brief`)},[e(`span`,C,[n(m,{size:36})]),o[6]||=e(`h3`,{class:`mode-card__title`},`ثبت مختصر`,-1),o[7]||=e(`p`,{class:`mode-card__desc`},`وارد کردن حداقل اطلاعات`,-1)])])])]))}}),[[`__scopeId`,`data-v-680065b0`]]);export{w as default};
File diff suppressed because one or more lines are too long
@@ -1 +1 @@
import{A as e,I as t,J as n,L as r,N as i,R as a,_ as o,n as s,nt as c,pt as l,xt as u}from"./BasicIcon-B6lR-mG3.js";import{t as d}from"./http-CHgEV7QF.js";import{c as f}from"./format-BHJptHdF.js";import{a as p}from"./validation-BD7oi-2I.js";import{c as m,n as h}from"./index-DDi4iM2C.js";import{t as g}from"./FormErrorBanner-8PcsTbdO.js";import{n as _,r as v,t as y}from"./formErrors-DglFjYkZ.js";import{t as b}from"./PageHeader-COmjOmby.js";import{t as x}from"./crm-DbcoqKAF.js";import{t as S}from"./useGoBack-yePcdjuj.js";import{t as C}from"./BaseInput-9HB-GJGt.js";var w={class:`page customer-create-page`},T={class:`page__scroll customer-create-scroll`},E={class:`form-card`},D={class:`footer`},O=s(a({__name:`CustomerCreateView`,setup(a){let s=o(),O=m(),k=x(),{goBack:A}=S(`/customers`),j=l(``),M=l(``),N=l(``),P=l(``),F=l({}),I=l(``),L=l(!1);function R(e){F.value=_(F.value,e),v(F.value)||(I.value=``)}async function z(){if(F.value={},I.value=``,!O.isAgent){I.value=`فقط واسطه می‌تواند مشتری به لیست خود اضافه کند.`;return}let e=f(N.value),t={};if(j.value.trim()||(t.firstName=`نام الزامی است.`),M.value.trim()||(t.lastName=`نام خانوادگی الزامی است.`),p(e)||(t.phone=`شماره موبایل معتبر نیست.`),v(t)){F.value=t,I.value=y;return}L.value=!0;try{let t=await k.registerCustomer({firstName:j.value.trim(),lastName:M.value.trim(),phone:e,businessName:P.value.trim()||void 0});if(t?.id){await s.replace({path:`/customer`,query:{id:t.id}});return}await s.replace(`/customers`)}catch(e){I.value=e instanceof d||e instanceof Error?e.message:`ثبت مشتری ناموفق بود.`}finally{L.value=!1}}return(a,o)=>(n(),i(`div`,w,[r(b,{title:`افزودن مشتری`,"show-back":``,centered:``,onBack:u(A)},null,8,[`onBack`]),e(`div`,T,[o[7]||=e(`p`,{class:`intro`},` مشتری به لیست شما اضافه می‌شود و بعد از ورود با همین شماره، سفارش‌هایش به حساب شما وصل می‌ماند. `,-1),r(g,{message:I.value},null,8,[`message`]),e(`div`,E,[r(C,{modelValue:j.value,"onUpdate:modelValue":[o[0]||=e=>j.value=e,o[1]||=e=>R(`firstName`)],label:`نام`,placeholder:`نام مشتری`,error:F.value.firstName},null,8,[`modelValue`,`error`]),r(C,{modelValue:M.value,"onUpdate:modelValue":[o[2]||=e=>M.value=e,o[3]||=e=>R(`lastName`)],label:`نام خانوادگی`,placeholder:`نام خانوادگی`,error:F.value.lastName},null,8,[`modelValue`,`error`]),r(C,{modelValue:N.value,"onUpdate:modelValue":[o[4]||=e=>N.value=e,o[5]||=e=>R(`phone`)],label:`شماره موبایل`,type:`tel`,inputmode:`tel`,dir:`ltr`,placeholder:`۰۹۱۲۳۴۵۶۷۸۹`,error:F.value.phone},null,8,[`modelValue`,`error`]),r(C,{modelValue:P.value,"onUpdate:modelValue":o[6]||=e=>P.value=e,label:`نام فروشگاه یا برند (اختیاری)`,placeholder:`مثلاً بوتیک رز`},null,8,[`modelValue`])])]),e(`footer`,D,[r(h,{block:``,loading:L.value,disabled:L.value,onClick:z},{default:c(()=>[...o[8]||=[t(` ثبت مشتری `,-1)]]),_:1},8,[`loading`,`disabled`])])]))}}),[[`__scopeId`,`data-v-f29dd241`]]);export{O as default};
import{A as e,I as t,J as n,L as r,N as i,R as a,_ as o,n as s,nt as c,pt as l,xt as u}from"./BasicIcon-B6lR-mG3.js";import{t as d}from"./http-CHgEV7QF.js";import{c as f}from"./format-BHJptHdF.js";import{a as p}from"./validation-BD7oi-2I.js";import{c as m,n as h}from"./index-DXso6ia7.js";import{t as g}from"./FormErrorBanner-8PcsTbdO.js";import{n as _,r as v,t as y}from"./formErrors-DglFjYkZ.js";import{t as b}from"./crm-DbcoqKAF.js";import{t as x}from"./useGoBack-yePcdjuj.js";import{t as S}from"./PageHeader-Dzrx58_B.js";import{t as C}from"./BaseInput-9HB-GJGt.js";var w={class:`page customer-create-page`},T={class:`page__scroll customer-create-scroll`},E={class:`form-card`},D={class:`footer`},O=s(a({__name:`CustomerCreateView`,setup(a){let s=o(),O=m(),k=b(),{goBack:A}=x(`/customers`),j=l(``),M=l(``),N=l(``),P=l(``),F=l({}),I=l(``),L=l(!1);function R(e){F.value=_(F.value,e),v(F.value)||(I.value=``)}async function z(){if(F.value={},I.value=``,!O.isAgent){I.value=`فقط واسطه می‌تواند مشتری به لیست خود اضافه کند.`;return}let e=f(N.value),t={};if(j.value.trim()||(t.firstName=`نام الزامی است.`),M.value.trim()||(t.lastName=`نام خانوادگی الزامی است.`),p(e)||(t.phone=`شماره موبایل معتبر نیست.`),v(t)){F.value=t,I.value=y;return}L.value=!0;try{let t=await k.registerCustomer({firstName:j.value.trim(),lastName:M.value.trim(),phone:e,businessName:P.value.trim()||void 0});if(t?.id){await s.replace({path:`/customer`,query:{id:t.id}});return}await s.replace(`/customers`)}catch(e){I.value=e instanceof d||e instanceof Error?e.message:`ثبت مشتری ناموفق بود.`}finally{L.value=!1}}return(a,o)=>(n(),i(`div`,w,[r(S,{title:`افزودن مشتری`,"show-back":``,centered:``,onBack:u(A)},null,8,[`onBack`]),e(`div`,T,[o[7]||=e(`p`,{class:`intro`},` مشتری به لیست شما اضافه می‌شود و بعد از ورود با همین شماره، سفارش‌هایش به حساب شما وصل می‌ماند. `,-1),r(g,{message:I.value},null,8,[`message`]),e(`div`,E,[r(C,{modelValue:j.value,"onUpdate:modelValue":[o[0]||=e=>j.value=e,o[1]||=e=>R(`firstName`)],label:`نام`,placeholder:`نام مشتری`,error:F.value.firstName},null,8,[`modelValue`,`error`]),r(C,{modelValue:M.value,"onUpdate:modelValue":[o[2]||=e=>M.value=e,o[3]||=e=>R(`lastName`)],label:`نام خانوادگی`,placeholder:`نام خانوادگی`,error:F.value.lastName},null,8,[`modelValue`,`error`]),r(C,{modelValue:N.value,"onUpdate:modelValue":[o[4]||=e=>N.value=e,o[5]||=e=>R(`phone`)],label:`شماره موبایل`,type:`tel`,inputmode:`tel`,dir:`ltr`,placeholder:`۰۹۱۲۳۴۵۶۷۸۹`,error:F.value.phone},null,8,[`modelValue`,`error`]),r(C,{modelValue:P.value,"onUpdate:modelValue":o[6]||=e=>P.value=e,label:`نام فروشگاه یا برند (اختیاری)`,placeholder:`مثلاً بوتیک رز`},null,8,[`modelValue`])])]),e(`footer`,D,[r(h,{block:``,loading:L.value,disabled:L.value,onClick:z},{default:c(()=>[...o[8]||=[t(` ثبت مشتری `,-1)]]),_:1},8,[`loading`,`disabled`])])]))}}),[[`__scopeId`,`data-v-f29dd241`]]);export{O as default};
File diff suppressed because one or more lines are too long
@@ -1 +1 @@
import{A as e,D as t,J as n,K as r,L as i,M as a,N as o,R as s,St as c,Tt as l,X as u,_ as d,et as f,g as p,j as m,k as h,n as g,nt as _,pt as v,wt as y,xt as b}from"./BasicIcon-B6lR-mG3.js";import{o as x}from"./format-BHJptHdF.js";import{S as ee,o as te,y as S}from"./index-DDi4iM2C.js";import{t as C}from"./IconFilter-DJjJ9EAy.js";import{t as w}from"./PageHeader-COmjOmby.js";import{t as T}from"./SearchField-txVsGGXT.js";import{t as E}from"./PageSkeleton-BImjuI6S.js";import{t as D}from"./crm-DbcoqKAF.js";var O={class:`page customers-page`},k={class:`page__scroll page__scroll--with-nav customers-scroll`},A={class:`toolbar`},j={class:`summary-card`},M={class:`summary-card__icon`,"aria-hidden":`true`},N={class:`summary-card__cols`},P={class:`tabs`,role:`tablist`},F=[`aria-selected`,`onClick`],I={class:`tab__text`},ne={key:1},L=[`onClick`],R={class:`customer-card__body`},z={class:`customer-card__top`},B={dir:`ltr`},V=g(s({__name:`CustomersView`,setup(s){let g=p(),V=d(),H=D(),U=v(String(g.query.q??``)),W=h(()=>String(g.query.status??`all`)),G=v([]),K=v(!0),q=v(null),J=h(()=>G.value),Y=h(()=>G.value.filter(e=>e.status===`active`).length),X=h(()=>G.value.reduce((e,t)=>e+t.totalPurchaseToman,0)),Z=[{id:`all`,label:`همه`},{id:`active`,label:`فعال`},{id:`inactive`,label:`غیرفعال`},{id:`new`,label:`جدید`}];async function Q(){K.value=!0,q.value=null;try{G.value=await H.loadCustomers({q:U.value||void 0,status:W.value===`all`?void 0:W.value})}catch(e){q.value=e instanceof Error?e.message:`بارگذاری مشتریان ناموفق بود.`,G.value=[]}finally{K.value=!1}}r(Q),f([W,U],Q);function $(e){V.replace({path:`/customers`,query:{...e===`all`?{}:{status:e},...U.value?{q:U.value}:{}}})}function re(e){U.value=e,V.replace({path:`/customers`,query:{...W.value===`all`?{}:{status:W.value},...e?{q:e}:{}}})}function ie(e){return e===`active`?`فعال`:e===`inactive`?`غیرفعال`:`جدید`}function ae(){V.push(`/customers/new`)}function oe(){let e=[`all`,`active`,`inactive`,`new`],t=e.indexOf(W.value);$(e[(t<0?0:t+1)%e.length]??`all`)}return(r,s)=>(n(),o(`div`,O,[i(w,{title:`مشتریان من`,"show-back":``,centered:``,onBack:s[0]||=e=>b(V).back()},{trailing:_(()=>[e(`button`,{type:`button`,class:`nav-add-btn`,"aria-label":`ثبت مشتری`,onClick:ae},[i(S,{size:22})])]),_:1}),e(`div`,k,[e(`div`,A,[i(T,{"model-value":U.value,placeholder:`جستجو بر اساس نام یا موبایل...`,"onUpdate:modelValue":re},null,8,[`model-value`]),e(`button`,{type:`button`,class:`filter-btn`,"aria-label":`فیلتر وضعیت`,onClick:oe},[i(C,{size:18})])]),e(`section`,j,[e(`div`,M,[i(ee,{size:22,color:`#fff`})]),e(`div`,N,[e(`div`,null,[s[1]||=e(`span`,null,`تعداد مشتری فعال`,-1),e(`strong`,null,l(b(x)(Y.value)),1)]),s[4]||=e(`span`,{class:`summary-card__divider`,"aria-hidden":`true`},null,-1),e(`div`,null,[s[2]||=e(`span`,null,`مجموع خرید (ریال)`,-1),e(`strong`,null,l(b(x)(X.value)),1),s[3]||=e(`em`,null,`تومان`,-1)])])]),e(`div`,P,[(n(),o(t,null,u(Z,t=>e(`button`,{key:t.id,type:`button`,role:`tab`,class:c([`tab`,{"tab--active":W.value===t.id}]),"aria-selected":W.value===t.id,onClick:e=>$(t.id)},[e(`span`,I,l(t.label),1)],10,F)),64))]),K.value?(n(),m(E,{key:0,variant:`list`})):q.value?(n(),o(`p`,ne,l(q.value),1)):a(``,!0),(n(!0),o(t,null,u(J.value,t=>(n(),o(`button`,{key:t.id,type:`button`,class:`customer-card`,onClick:e=>b(V).push({path:`/customer`,query:{id:t.id}})},[e(`div`,{class:`customer-card__avatar`,style:y({background:t.avatarColor})},l(t.avatarLetter),5),e(`div`,R,[e(`div`,z,[e(`strong`,null,l(t.name),1),e(`span`,{class:c([`status`,t.status===`active`?`status--ok`:`status--muted`])},l(ie(t.status)),3)]),e(`p`,B,l(t.phone),1),e(`p`,null,`مجموع خرید: `+l(b(x)(t.totalPurchaseToman))+` تومان`,1)]),i(te,{size:18,class:`chevron`})],8,L))),128)),s[5]||=e(`section`,{class:`promo`},[e(`div`,null,[e(`strong`,null,`افزایش مشتریان = افزایش سطح شما`),e(`p`,null,`با جذب مشتریان بیشتر به سطح VIP برسید`)])],-1)])]))}}),[[`__scopeId`,`data-v-d0b58aa9`]]);export{V as default};
import{A as e,D as t,J as n,K as r,L as i,M as a,N as o,R as s,St as c,Tt as l,X as u,_ as d,et as f,g as p,j as m,k as h,n as g,nt as _,pt as v,wt as y,xt as b}from"./BasicIcon-B6lR-mG3.js";import{o as x}from"./format-BHJptHdF.js";import{S as ee,o as te,y as S}from"./index-DXso6ia7.js";import{t as C}from"./IconFilter-DJjJ9EAy.js";import{t as w}from"./PageSkeleton-BImjuI6S.js";import{t as T}from"./crm-DbcoqKAF.js";import{t as E}from"./PageHeader-Dzrx58_B.js";import{t as D}from"./SearchField-txVsGGXT.js";var O={class:`page customers-page`},k={class:`page__scroll page__scroll--with-nav customers-scroll`},A={class:`toolbar`},j={class:`summary-card`},M={class:`summary-card__icon`,"aria-hidden":`true`},N={class:`summary-card__cols`},P={class:`tabs`,role:`tablist`},F=[`aria-selected`,`onClick`],I={class:`tab__text`},ne={key:1},L=[`onClick`],R={class:`customer-card__body`},z={class:`customer-card__top`},B={dir:`ltr`},V=g(s({__name:`CustomersView`,setup(s){let g=p(),V=d(),H=T(),U=v(String(g.query.q??``)),W=h(()=>String(g.query.status??`all`)),G=v([]),K=v(!0),q=v(null),J=h(()=>G.value),Y=h(()=>G.value.filter(e=>e.status===`active`).length),X=h(()=>G.value.reduce((e,t)=>e+t.totalPurchaseToman,0)),Z=[{id:`all`,label:`همه`},{id:`active`,label:`فعال`},{id:`inactive`,label:`غیرفعال`},{id:`new`,label:`جدید`}];async function Q(){K.value=!0,q.value=null;try{G.value=await H.loadCustomers({q:U.value||void 0,status:W.value===`all`?void 0:W.value})}catch(e){q.value=e instanceof Error?e.message:`بارگذاری مشتریان ناموفق بود.`,G.value=[]}finally{K.value=!1}}r(Q),f([W,U],Q);function $(e){V.replace({path:`/customers`,query:{...e===`all`?{}:{status:e},...U.value?{q:U.value}:{}}})}function re(e){U.value=e,V.replace({path:`/customers`,query:{...W.value===`all`?{}:{status:W.value},...e?{q:e}:{}}})}function ie(e){return e===`active`?`فعال`:e===`inactive`?`غیرفعال`:`جدید`}function ae(){V.push(`/customers/new`)}function oe(){let e=[`all`,`active`,`inactive`,`new`],t=e.indexOf(W.value);$(e[(t<0?0:t+1)%e.length]??`all`)}return(r,s)=>(n(),o(`div`,O,[i(E,{title:`مشتریان من`,"show-back":``,centered:``,onBack:s[0]||=e=>b(V).back()},{trailing:_(()=>[e(`button`,{type:`button`,class:`nav-add-btn`,"aria-label":`ثبت مشتری`,onClick:ae},[i(S,{size:22})])]),_:1}),e(`div`,k,[e(`div`,A,[i(D,{"model-value":U.value,placeholder:`جستجو بر اساس نام یا موبایل...`,"onUpdate:modelValue":re},null,8,[`model-value`]),e(`button`,{type:`button`,class:`filter-btn`,"aria-label":`فیلتر وضعیت`,onClick:oe},[i(C,{size:18})])]),e(`section`,j,[e(`div`,M,[i(ee,{size:22,color:`#fff`})]),e(`div`,N,[e(`div`,null,[s[1]||=e(`span`,null,`تعداد مشتری فعال`,-1),e(`strong`,null,l(b(x)(Y.value)),1)]),s[4]||=e(`span`,{class:`summary-card__divider`,"aria-hidden":`true`},null,-1),e(`div`,null,[s[2]||=e(`span`,null,`مجموع خرید (ریال)`,-1),e(`strong`,null,l(b(x)(X.value)),1),s[3]||=e(`em`,null,`تومان`,-1)])])]),e(`div`,P,[(n(),o(t,null,u(Z,t=>e(`button`,{key:t.id,type:`button`,role:`tab`,class:c([`tab`,{"tab--active":W.value===t.id}]),"aria-selected":W.value===t.id,onClick:e=>$(t.id)},[e(`span`,I,l(t.label),1)],10,F)),64))]),K.value?(n(),m(w,{key:0,variant:`list`})):q.value?(n(),o(`p`,ne,l(q.value),1)):a(``,!0),(n(!0),o(t,null,u(J.value,t=>(n(),o(`button`,{key:t.id,type:`button`,class:`customer-card`,onClick:e=>b(V).push({path:`/customer`,query:{id:t.id}})},[e(`div`,{class:`customer-card__avatar`,style:y({background:t.avatarColor})},l(t.avatarLetter),5),e(`div`,R,[e(`div`,z,[e(`strong`,null,l(t.name),1),e(`span`,{class:c([`status`,t.status===`active`?`status--ok`:`status--muted`])},l(ie(t.status)),3)]),e(`p`,B,l(t.phone),1),e(`p`,null,`مجموع خرید: `+l(b(x)(t.totalPurchaseToman))+` تومان`,1)]),i(te,{size:18,class:`chevron`})],8,L))),128)),s[5]||=e(`section`,{class:`promo`},[e(`div`,null,[e(`strong`,null,`افزایش مشتریان = افزایش سطح شما`),e(`p`,null,`با جذب مشتریان بیشتر به سطح VIP برسید`)])],-1)])]))}}),[[`__scopeId`,`data-v-d0b58aa9`]]);export{V as default};
@@ -1 +1 @@
import{A as e,D as t,E as n,J as r,K as i,L as a,M as o,N as s,R as c,Tt as l,X as u,_ as d,j as f,n as p,pt as m,xt as h}from"./BasicIcon-B6lR-mG3.js";import{l as g,o as _}from"./index-DDi4iM2C.js";import{t as v}from"./PageHeader-COmjOmby.js";import{t as y}from"./PageSkeleton-BImjuI6S.js";import{t as b}from"./crm-DbcoqKAF.js";import{t as x}from"./IconHeart-DjMqqdO0.js";var S={class:`page`},C={class:`page__scroll page__scroll--with-nav body`},w={key:1},T={key:2,class:`empty`},E=[`onClick`],D={class:`row__body`},O=[`onClick`],k=p(c({__name:`FavoritesView`,setup(c){let p=d(),k=g(),A=b(),j=m([]),M=m(!0),N=m(null);i(async()=>{M.value=!0;try{await k.hydrate();let e=await A.loadBrowseProducts(),t=new Set(k.ids);j.value=e.filter(e=>t.has(e.id))}catch(e){N.value=e instanceof Error?e.message:`بارگذاری علاقه‌مندی‌ها ناموفق بود.`}finally{M.value=!1}});async function P(e){await k.toggle(e),j.value=j.value.filter(t=>t.id!==e)}return(i,c)=>(r(),s(`div`,S,[a(v,{title:`علاقه‌مندی‌ها`,"show-back":``,centered:``,onBack:c[0]||=e=>h(p).back()}),e(`div`,C,[M.value?(r(),f(y,{key:0,variant:`grid`})):N.value?(r(),s(`p`,w,l(N.value),1)):j.value.length?o(``,!0):(r(),s(`p`,T,`هنوز محصولی ذخیره نکرده‌اید.`)),(r(!0),s(t,null,u(j.value,t=>(r(),s(`article`,{key:t.id,class:`row`,onClick:e=>h(p).push({path:`/product`,query:{id:t.id}})},[e(`div`,D,[e(`strong`,null,l(t.name),1),e(`span`,null,`کد `+l(t.code),1)]),e(`button`,{type:`button`,class:`bookmark`,"aria-label":`حذف از نشان‌شده‌ها`,onClick:n(e=>P(t.id),[`stop`])},[a(x,{size:18,filled:``,color:`#0a353c`})],8,O),a(_,{size:16,color:`#9aa3a0`})],8,E))),128))])]))}}),[[`__scopeId`,`data-v-8e70f9c9`]]);export{k as default};
import{A as e,D as t,E as n,J as r,K as i,L as a,M as o,N as s,R as c,Tt as l,X as u,_ as d,j as f,n as p,pt as m,xt as h}from"./BasicIcon-B6lR-mG3.js";import{l as g,o as _}from"./index-DXso6ia7.js";import{t as v}from"./PageSkeleton-BImjuI6S.js";import{t as y}from"./crm-DbcoqKAF.js";import{t as b}from"./PageHeader-Dzrx58_B.js";import{t as x}from"./IconHeart-DjMqqdO0.js";var S={class:`page`},C={class:`page__scroll page__scroll--with-nav body`},w={key:1},T={key:2,class:`empty`},E=[`onClick`],D={class:`row__body`},O=[`onClick`],k=p(c({__name:`FavoritesView`,setup(c){let p=d(),k=g(),A=y(),j=m([]),M=m(!0),N=m(null);i(async()=>{M.value=!0;try{await k.hydrate();let e=await A.loadBrowseProducts(),t=new Set(k.ids);j.value=e.filter(e=>t.has(e.id))}catch(e){N.value=e instanceof Error?e.message:`بارگذاری علاقه‌مندی‌ها ناموفق بود.`}finally{M.value=!1}});async function P(e){await k.toggle(e),j.value=j.value.filter(t=>t.id!==e)}return(i,c)=>(r(),s(`div`,S,[a(b,{title:`علاقه‌مندی‌ها`,"show-back":``,centered:``,onBack:c[0]||=e=>h(p).back()}),e(`div`,C,[M.value?(r(),f(v,{key:0,variant:`grid`})):N.value?(r(),s(`p`,w,l(N.value),1)):j.value.length?o(``,!0):(r(),s(`p`,T,`هنوز محصولی ذخیره نکرده‌اید.`)),(r(!0),s(t,null,u(j.value,t=>(r(),s(`article`,{key:t.id,class:`row`,onClick:e=>h(p).push({path:`/product`,query:{id:t.id}})},[e(`div`,D,[e(`strong`,null,l(t.name),1),e(`span`,null,`کد `+l(t.code),1)]),e(`button`,{type:`button`,class:`bookmark`,"aria-label":`حذف از نشان‌شده‌ها`,onClick:n(e=>P(t.id),[`stop`])},[a(x,{size:18,filled:``,color:`#0a353c`})],8,O),a(_,{size:16,color:`#9aa3a0`})],8,E))),128))])]))}}),[[`__scopeId`,`data-v-8e70f9c9`]]);export{k as default};
File diff suppressed because one or more lines are too long
+1
View File
@@ -0,0 +1 @@
import{J as e,R as t,j as n,t as r}from"./BasicIcon-B6lR-mG3.js";var i=t({__name:`IconSearch`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(t){return(i,a)=>(e(),n(r,{icon:`vuesax-linear:search-normal`,size:t.size,"stroke-width":t.strokeWidth,color:t.color},null,8,[`size`,`stroke-width`,`color`]))}});export{i as t};
+1
View File
@@ -0,0 +1 @@
import{A as e,J as t,N as n,R as r}from"./BasicIcon-B6lR-mG3.js";var i=[`width`,`height`],a=[`stroke`],o=[`stroke`],s=[`stroke`],c=r({__name:`IconShare`,props:{size:{default:20},color:{default:`#9AA3AF`}},setup(r){return(c,l)=>(t(),n(`svg`,{width:r.size,height:r.size,viewBox:`0 0 24 24`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,"aria-hidden":`true`},[e(`path`,{d:`M12 3.5v11`,stroke:r.color,"stroke-width":`1.5`,"stroke-linecap":`round`},null,8,a),e(`path`,{d:`M8.25 7 12 3.25 15.75 7`,stroke:r.color,"stroke-width":`1.5`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null,8,o),e(`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:r.color,"stroke-width":`1.5`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null,8,s)],8,i))}});export{c as t};
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -1 +1 @@
import{A as e,I as t,J as n,L as r,M as i,N as a,R as o,Tt as s,_ as c,g as l,k as u,n as d,nt as f,xt as p}from"./BasicIcon-B6lR-mG3.js";import{a as m}from"./format-BHJptHdF.js";import{g as h,n as g}from"./index-DDi4iM2C.js";import{t as _}from"./PageHeader-COmjOmby.js";import{t as v}from"./useGoBack-yePcdjuj.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=d(o({__name:`OrderSuccessView`,setup(o){let d=l(),T=c(),{goBack:E}=v(`/orders`),D=h(),O=u(()=>D.getOrderById(d.params.id));return(o,c)=>(n(),a(`div`,y,[r(_,{title:`ثبت موفق`,"show-back":``,centered:``,onBack:p(E)},null,8,[`onBack`]),e(`div`,b,[c[8]||=e(`div`,{class:`success-icon`},`✓`,-1),c[9]||=e(`h1`,{class:`page-title text-center`},`سفارش ثبت شد`,-1),c[10]||=e(`p`,{class:`text-center text-muted mb-4`},` سفارش شما با موفقیت ثبت شد. کارشناسان ما سفارش را بررسی و قیمت‌گذاری می‌کنند و به‌محض صدور فاکتور، از طریق پیامک و پنل کاربری به شما اطلاع می‌دهیم تا روش تسویه را انتخاب کنید. `,-1),O.value?(n(),a(`div`,x,[e(`div`,S,[c[2]||=e(`span`,null,`شماره سفارش:`,-1),e(`strong`,null,s(O.value.orderNumber),1)]),e(`div`,C,[c[3]||=e(`span`,null,`شرکت:`,-1),e(`span`,null,s(O.value.companyName),1)]),e(`div`,w,[c[4]||=e(`span`,null,`متراژ:`,-1),e(`span`,null,s(p(m)(O.value.totalMeterage)),1)]),c[5]||=e(`div`,{class:`info-row`},[e(`span`,null,`وضعیت:`),e(`span`,null,`در انتظار قیمت‌گذاری`)],-1)])):i(``,!0),r(g,{block:``,onClick:c[0]||=e=>p(T).replace(`/orders/${O.value?.id}`)},{default:f(()=>[...c[6]||=[t(` مشاهده جزئیات سفارش `,-1)]]),_:1}),r(g,{block:``,variant:`outline`,class:`mt-2`,onClick:c[1]||=e=>p(T).replace(`/`)},{default:f(()=>[...c[7]||=[t(` بازگشت به خانه `,-1)]]),_:1})])]))}}),[[`__scopeId`,`data-v-3d172af9`]]);export{T as default};
import{A as e,I as t,J as n,L as r,M as i,N as a,R as o,Tt as s,_ as c,g as l,k as u,n as d,nt as f,xt as p}from"./BasicIcon-B6lR-mG3.js";import{a as m}from"./format-BHJptHdF.js";import{g as h,n as g}from"./index-DXso6ia7.js";import{t as _}from"./useGoBack-yePcdjuj.js";import{t as v}from"./PageHeader-Dzrx58_B.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=d(o({__name:`OrderSuccessView`,setup(o){let d=l(),T=c(),{goBack:E}=_(`/orders`),D=h(),O=u(()=>D.getOrderById(d.params.id));return(o,c)=>(n(),a(`div`,y,[r(v,{title:`ثبت موفق`,"show-back":``,centered:``,onBack:p(E)},null,8,[`onBack`]),e(`div`,b,[c[8]||=e(`div`,{class:`success-icon`},`✓`,-1),c[9]||=e(`h1`,{class:`page-title text-center`},`سفارش ثبت شد`,-1),c[10]||=e(`p`,{class:`text-center text-muted mb-4`},` سفارش شما با موفقیت ثبت شد. کارشناسان ما سفارش را بررسی و قیمت‌گذاری می‌کنند و به‌محض صدور فاکتور، از طریق پیامک و پنل کاربری به شما اطلاع می‌دهیم تا روش تسویه را انتخاب کنید. `,-1),O.value?(n(),a(`div`,x,[e(`div`,S,[c[2]||=e(`span`,null,`شماره سفارش:`,-1),e(`strong`,null,s(O.value.orderNumber),1)]),e(`div`,C,[c[3]||=e(`span`,null,`شرکت:`,-1),e(`span`,null,s(O.value.companyName),1)]),e(`div`,w,[c[4]||=e(`span`,null,`متراژ:`,-1),e(`span`,null,s(p(m)(O.value.totalMeterage)),1)]),c[5]||=e(`div`,{class:`info-row`},[e(`span`,null,`وضعیت:`),e(`span`,null,`در انتظار قیمت‌گذاری`)],-1)])):i(``,!0),r(g,{block:``,onClick:c[0]||=e=>p(T).replace(`/orders/${O.value?.id}`)},{default:f(()=>[...c[6]||=[t(` مشاهده جزئیات سفارش `,-1)]]),_:1}),r(g,{block:``,variant:`outline`,class:`mt-2`,onClick:c[1]||=e=>p(T).replace(`/`)},{default:f(()=>[...c[7]||=[t(` بازگشت به خانه `,-1)]]),_:1})])]))}}),[[`__scopeId`,`data-v-3d172af9`]]);export{T as default};
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+1
View File
@@ -0,0 +1 @@
.otp-page[data-v-ae24a66d]{isolation:isolate;color:#f4ede4;background:#1a1612;height:100%;min-height:100%;position:relative;overflow:hidden}.otp-page__bg[data-v-ae24a66d]{z-index:0;object-fit:cover;object-position:center center;pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;inset:0}.otp-page__scroll[data-v-ae24a66d]{z-index:1;overscroll-behavior:contain;height:100%;position:relative;overflow:hidden auto}.otp-page__stage[data-v-ae24a66d]{width:100%;max-width:360px;min-height:100%;padding:calc(10px + env(safe-area-inset-top,0px)) 16px calc(14px + env(safe-area-inset-bottom,0px));flex-direction:column;margin-inline:auto;display:flex}.otp-top[data-v-ae24a66d]{justify-content:flex-end;align-items:center;min-height:36px;display:flex}.otp-top__back[data-v-ae24a66d]{color:#f3e6d6;cursor:pointer;background:#f4ede424;border:none;border-radius:999px;place-items:center;width:36px;height:36px;display:grid}.otp-brand[data-v-ae24a66d]{text-align:center;color:#f3e6d6;flex-direction:column;align-items:center;margin-top:18px;margin-bottom:18px;display:flex}.otp-brand__fa[data-v-ae24a66d]{margin:12px 0 0;font-size:1.625rem;font-weight:700;line-height:1.25}.otp-brand__en[data-v-ae24a66d]{letter-spacing:.28em;color:#ead7c0;margin:6px 0 0;font-size:.6875rem;font-weight:500}.otp-card[data-v-ae24a66d]{color:#2a2622;background:#f4f1ed;border:none;border-radius:28px;width:100%;margin:0;padding:22px 18px 18px;box-shadow:0 18px 40px #0c0a0838}.otp-card__title[data-v-ae24a66d]{text-align:center;color:#1c1b19;margin:0;font-size:1.0625rem;font-weight:700;line-height:1.5}.otp-card__lead[data-v-ae24a66d]{text-align:center;color:#8a847c;margin:6px 0 0;font-size:.75rem;line-height:1.7}.otp-card[data-v-ae24a66d] .form-error-banner{margin-top:14px;margin-bottom:0}.otp-row[data-v-ae24a66d]{justify-content:center;gap:10px;margin-top:18px;display:flex}.otp-box[data-v-ae24a66d]{color:#1c1b19;text-align:center;width:52px;height:56px;caret-color:var(--color-primary);background:#f7f5f1;border:1px solid #e4e0db;border-radius:16px;padding:0;font-family:inherit;font-size:1.25rem;font-weight:700;transition:border-color .15s}.otp-box[data-v-ae24a66d]:focus{border-color:var(--color-primary);background:#fff;outline:none}.otp-box--error[data-v-ae24a66d]{border-color:color-mix(in srgb, var(--color-danger) 55%, #e4e0db)}.otp-card__error[data-v-ae24a66d]{color:var(--color-danger);text-align:center;margin:8px 4px 0;font-size:.75rem}.otp-submit[data-v-ae24a66d]{background:var(--color-primary);color:#f7f4ef;cursor:pointer;border:none;border-radius:999px;justify-content:center;align-items:center;width:100%;height:48px;margin-top:16px;padding:0 44px;font-family:inherit;font-size:.9375rem;font-weight:600;transition:background .15s;display:flex;position:relative}.otp-submit[data-v-ae24a66d]:not(:disabled):hover,.otp-submit[data-v-ae24a66d]:not(:disabled):focus-visible{background:var(--color-primary-hover)}.otp-submit[data-v-ae24a66d]:disabled{opacity:.7;cursor:not-allowed}.otp-submit__chevron[data-v-ae24a66d]{place-items:center;display:grid;position:absolute;inset-inline-end:16px}.otp-submit__spinner[data-v-ae24a66d]{border:2px solid #ffffff47;border-top-color:#fff;border-radius:50%;width:16px;height:16px;animation:.6s linear infinite otp-spin-ae24a66d;position:absolute;inset-inline-start:16px}.otp-resend[data-v-ae24a66d]{color:#6f6b66;cursor:pointer;background:0 0;border:1px solid #d8d3cd;border-radius:999px;width:100%;height:48px;margin-top:10px;font-family:inherit;font-size:.875rem;font-weight:500}.otp-resend[data-v-ae24a66d]:disabled{opacity:.7;cursor:not-allowed}.otp-edit[data-v-ae24a66d]{color:#8a847c;cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;gap:6px;width:100%;margin-top:14px;font-family:inherit;font-size:.8125rem;display:flex}.otp-spacer[data-v-ae24a66d]{flex:auto;min-height:16px}.otp-watermark[data-v-ae24a66d]{color:#f4ede494;letter-spacing:.2em;text-align:left;direction:ltr;margin:0;padding-bottom:8px;font-size:.625rem;font-weight:600;line-height:1.35}@keyframes otp-spin-ae24a66d{to{transform:rotate(360deg)}}@media (width>=768px){.otp-page[data-v-ae24a66d]{max-width:none;height:100%;min-height:0;margin:0;padding:0;overflow:hidden}}
-1
View File
@@ -1 +0,0 @@
.otp-row[data-v-125d5e90]{gap:clamp(.25rem,1.8vw,.625rem)}.otp-box[data-v-125d5e90]{aspect-ratio:48/52;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);width:0;min-width:0;max-width:48px;height:auto;color:var(--color-text);text-align:center;caret-color:var(--color-primary);flex:1 1 0;padding:0;font-size:clamp(.95rem,4.2vw,1.25rem);font-weight:600;transition:border-color .15s}.otp-box[data-v-125d5e90]:focus{border-color:var(--color-primary);outline:none}.otp-box--error[data-v-125d5e90]{border-color:var(--color-danger)}.input-error-text[data-v-125d5e90]{color:var(--color-danger);margin:4px 0 0;font-size:.8125rem}
@@ -1 +1 @@
import{A as e,D as t,J as n,L as r,M as i,N as a,R as o,Tt as s,Z as c,n as l}from"./BasicIcon-B6lR-mG3.js";import{i as u}from"./index-DDi4iM2C.js";import{t as d}from"./IconChevronBack-BXRfc2bX.js";var f={class:`page-nav`},p={key:1,class:`nav-btn`},m={class:`page-nav__title`},h={class:`page-nav__trailing`},g={key:0,class:`page-nav__subtitle`},_={key:1,class:`page-header`},v={class:`header-text`},y={class:`page-title`},b={key:0,class:`page-subtitle`},x={class:`page-header__trailing`},S=l(o({__name:`PageHeader`,props:{title:{},subtitle:{},showBack:{type:Boolean},centered:{type:Boolean}},emits:[`back`],setup(o){return(l,S)=>o.centered?(n(),a(t,{key:0},[e(`header`,f,[o.showBack?(n(),a(`button`,{key:0,type:`button`,class:`nav-btn`,"aria-label":`بازگشت`,onClick:S[0]||=e=>l.$emit(`back`)},[r(d,{size:20})])):(n(),a(`span`,p)),e(`h1`,m,s(o.title),1),e(`div`,h,[c(l.$slots,`trailing`,{},void 0,!0),r(u,{variant:`inline`,class:`mobile-only`})])]),o.subtitle?(n(),a(`p`,g,s(o.subtitle),1)):i(``,!0)],64)):(n(),a(`header`,_,[o.showBack?(n(),a(`button`,{key:0,type:`button`,class:`back-btn`,"aria-label":`بازگشت`,onClick:S[1]||=e=>l.$emit(`back`)},[r(d,{size:20})])):i(``,!0),e(`div`,v,[e(`h1`,y,s(o.title),1),o.subtitle?(n(),a(`p`,b,s(o.subtitle),1)):i(``,!0)]),e(`div`,x,[c(l.$slots,`trailing`,{},void 0,!0),r(u,{variant:`inline`,class:`mobile-only`})])]))}}),[[`__scopeId`,`data-v-dd86426f`]]);export{S as t};
import{A as e,D as t,J as n,L as r,M as i,N as a,R as o,Tt as s,Z as c,n as l}from"./BasicIcon-B6lR-mG3.js";import{i as u}from"./index-DXso6ia7.js";import{t as d}from"./IconChevronBack-BXRfc2bX.js";var f={class:`page-nav`},p={key:1,class:`nav-btn`},m={class:`page-nav__title`},h={class:`page-nav__trailing`},g={key:0,class:`page-nav__subtitle`},_={key:1,class:`page-header`},v={class:`header-text`},y={class:`page-title`},b={key:0,class:`page-subtitle`},x={class:`page-header__trailing`},S=l(o({__name:`PageHeader`,props:{title:{},subtitle:{},showBack:{type:Boolean},centered:{type:Boolean}},emits:[`back`],setup(o){return(l,S)=>o.centered?(n(),a(t,{key:0},[e(`header`,f,[o.showBack?(n(),a(`button`,{key:0,type:`button`,class:`nav-btn`,"aria-label":`بازگشت`,onClick:S[0]||=e=>l.$emit(`back`)},[r(d,{size:20})])):(n(),a(`span`,p)),e(`h1`,m,s(o.title),1),e(`div`,h,[c(l.$slots,`trailing`,{},void 0,!0),r(u,{variant:`inline`,class:`mobile-only`})])]),o.subtitle?(n(),a(`p`,g,s(o.subtitle),1)):i(``,!0)],64)):(n(),a(`header`,_,[o.showBack?(n(),a(`button`,{key:0,type:`button`,class:`back-btn`,"aria-label":`بازگشت`,onClick:S[1]||=e=>l.$emit(`back`)},[r(d,{size:20})])):i(``,!0),e(`div`,v,[e(`h1`,y,s(o.title),1),o.subtitle?(n(),a(`p`,b,s(o.subtitle),1)):i(``,!0)]),e(`div`,x,[c(l.$slots,`trailing`,{},void 0,!0),r(u,{variant:`inline`,class:`mobile-only`})])]))}}),[[`__scopeId`,`data-v-dd86426f`]]);export{S as t};
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -1 +1 @@
import{t as e}from"./CheckListView-CRgU6JjM.js";import{J as t,R as n,j as r}from"./BasicIcon-B6lR-mG3.js";var i=n({__name:`ProfileChecksView`,setup(n){return(n,i)=>(t(),r(e))}});export{i as default};
import{t as e}from"./CheckListView-BjpVFz7J.js";import{J as t,R as n,j as r}from"./BasicIcon-B6lR-mG3.js";var i=n({__name:`ProfileChecksView`,setup(n){return(n,i)=>(t(),r(e))}});export{i as default};
@@ -1 +1 @@
import{A as e,D as t,I as n,J as r,L as i,M as a,N as o,R as s,St as c,Tt as l,X as u,_ as d,j as f,k as p,n as m,nt as h,pt as g,t as _,xt as v}from"./BasicIcon-B6lR-mG3.js";import{o as y}from"./dist-BEjUUhLz.js";import{a as b,c as x,g as S,n as C}from"./index-DDi4iM2C.js";import{t as w}from"./ProfileSubpageLayout-CHfCB62H.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=m(s({__name:`ProfileDisplayView`,setup(s){let m=d(),B=x(),V=S(),H=b(),U=g(!1),{start:W}=y(()=>{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=p(()=>V.draftChecks.length);function q(){U.value=!0,W()}function J(){B.logout(),m.replace(`/login`)}return(s,d)=>(r(),f(w,{title:`تنظیمات`,subtitle:`نمایش، حساب کاربری و خروج`},{default:h(()=>[e(`div`,T,[e(`nav`,E,[e(`button`,{type:`button`,class:`settings-link`,onClick:d[0]||=e=>v(m).push(`/profile/edit`)},[e(`span`,D,[i(_,{icon:`vuesax-linear:profile-circle`,size:20,"stroke-width":1.5})]),d[2]||=e(`span`,{class:`settings-link__label`},`اطلاعات کاربری`,-1),i(_,{class:`settings-link__chevron`,icon:`vuesax-linear:arrow-left-1`,size:16,"stroke-width":1.5})]),e(`button`,{type:`button`,class:`settings-link`,onClick:d[1]||=e=>v(m).push(`/profile/checks`)},[e(`span`,O,[i(_,{icon:`vuesax-linear:card`,size:20,"stroke-width":1.5})]),e(`span`,k,[d[3]||=n(` لیست چک‌ها `,-1),K.value?(r(),o(`em`,A,`(`+l(K.value)+`)`,1)):a(``,!0)]),i(_,{class:`settings-link__chevron`,icon:`vuesax-linear:arrow-left-1`,size:16,"stroke-width":1.5})])]),e(`fieldset`,j,[d[4]||=e(`legend`,{class:`display-fieldset__legend`},`حالت نمایش`,-1),e(`div`,M,[(r(),o(t,null,u(G,t=>e(`button`,{key:t.value,type:`button`,class:c([`theme-card`,{"theme-card--active":v(H).preference===t.value}]),role:`radio`,"aria-checked":v(H).preference===t.value,onClick:e=>v(H).preference=t.value},[e(`span`,P,[i(_,{icon:t.icon,size:26,"stroke-width":1.5},null,8,[`icon`])]),e(`span`,F,[e(`strong`,I,l(t.label),1),e(`span`,L,l(t.description),1)]),e(`span`,R,[v(H).preference===t.value?(r(),f(_,{key:0,icon:`vuesax-linear:tick-circle`,size:20,"stroke-width":1.75})):a(``,!0)])],10,N)),64))])]),i(C,{block:``,onClick:q},{default:h(()=>[...d[5]||=[n(`ذخیره تنظیمات`,-1)]]),_:1}),U.value?(r(),o(`p`,z,`تنظیمات نمایش ذخیره شد ✓`)):a(``,!0),e(`button`,{type:`button`,class:`settings-logout`,onClick:J},`خروج`)])]),_:1}))}}),[[`__scopeId`,`data-v-3187a788`]]);export{B as default};
import{A as e,D as t,I as n,J as r,L as i,M as a,N as o,R as s,St as c,Tt as l,X as u,_ as d,j as f,k as p,n as m,nt as h,pt as g,t as _,xt as v}from"./BasicIcon-B6lR-mG3.js";import{u as y}from"./dist-BcgVHqJQ.js";import{a as b,c as x,g as S,n as C}from"./index-DXso6ia7.js";import{t as w}from"./ProfileSubpageLayout-CHfCB62H.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=m(s({__name:`ProfileDisplayView`,setup(s){let m=d(),B=x(),V=S(),H=b(),U=g(!1),{start:W}=y(()=>{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=p(()=>V.draftChecks.length);function q(){U.value=!0,W()}function J(){B.logout(),m.replace(`/login`)}return(s,d)=>(r(),f(w,{title:`تنظیمات`,subtitle:`نمایش، حساب کاربری و خروج`},{default:h(()=>[e(`div`,T,[e(`nav`,E,[e(`button`,{type:`button`,class:`settings-link`,onClick:d[0]||=e=>v(m).push(`/profile/edit`)},[e(`span`,D,[i(_,{icon:`vuesax-linear:profile-circle`,size:20,"stroke-width":1.5})]),d[2]||=e(`span`,{class:`settings-link__label`},`اطلاعات کاربری`,-1),i(_,{class:`settings-link__chevron`,icon:`vuesax-linear:arrow-left-1`,size:16,"stroke-width":1.5})]),e(`button`,{type:`button`,class:`settings-link`,onClick:d[1]||=e=>v(m).push(`/profile/checks`)},[e(`span`,O,[i(_,{icon:`vuesax-linear:card`,size:20,"stroke-width":1.5})]),e(`span`,k,[d[3]||=n(` لیست چک‌ها `,-1),K.value?(r(),o(`em`,A,`(`+l(K.value)+`)`,1)):a(``,!0)]),i(_,{class:`settings-link__chevron`,icon:`vuesax-linear:arrow-left-1`,size:16,"stroke-width":1.5})])]),e(`fieldset`,j,[d[4]||=e(`legend`,{class:`display-fieldset__legend`},`حالت نمایش`,-1),e(`div`,M,[(r(),o(t,null,u(G,t=>e(`button`,{key:t.value,type:`button`,class:c([`theme-card`,{"theme-card--active":v(H).preference===t.value}]),role:`radio`,"aria-checked":v(H).preference===t.value,onClick:e=>v(H).preference=t.value},[e(`span`,P,[i(_,{icon:t.icon,size:26,"stroke-width":1.5},null,8,[`icon`])]),e(`span`,F,[e(`strong`,I,l(t.label),1),e(`span`,L,l(t.description),1)]),e(`span`,R,[v(H).preference===t.value?(r(),f(_,{key:0,icon:`vuesax-linear:tick-circle`,size:20,"stroke-width":1.75})):a(``,!0)])],10,N)),64))])]),i(C,{block:``,onClick:q},{default:h(()=>[...d[5]||=[n(`ذخیره تنظیمات`,-1)]]),_:1}),U.value?(r(),o(`p`,z,`تنظیمات نمایش ذخیره شد ✓`)):a(``,!0),e(`button`,{type:`button`,class:`settings-logout`,onClick:J},`خروج`)])]),_:1}))}}),[[`__scopeId`,`data-v-3187a788`]]);export{B as default};
File diff suppressed because one or more lines are too long
@@ -1 +1 @@
import{A as e,D as t,I as n,J as r,K as i,L as a,M as o,N as s,R as c,St as l,Tt as u,X as d,_ as f,j as p,k as m,n as h,nt as g,t as _,xt as v}from"./BasicIcon-B6lR-mG3.js";import{i as y}from"./format-BHJptHdF.js";import{n as b,u as x}from"./index-DDi4iM2C.js";import{t as S}from"./EmptyState-C6UAJ5_3.js";import{t as C}from"./ProfileSubpageLayout-CHfCB62H.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=h(c({__name:`ProfileNotificationsView`,setup(c){let h=f(),F=x(),I=m(()=>F.items),L=m(()=>F.hasUnread),R={info:`vuesax-linear:information`,success:`vuesax-linear:tick-circle`,warning:`vuesax-linear:timer`,danger:`vuesax-linear:close-circle`};i(()=>{F.hydrate()});async function z(e){await F.markRead(e.id),e.link&&h.push(e.link)}return(i,c)=>(r(),p(C,{title:`اعلان‌ها`,subtitle:`آخرین خبرهای سفارش‌های شما`},{default:g(()=>[I.value.length?(r(),s(`div`,w,[e(`div`,T,[e(`span`,E,u(L.value?`${v(F).unreadCount} اعلان خوانده‌نشده`:`همه خوانده شده`),1),L.value?(r(),p(b,{key:0,variant:`outline`,class:`notif-box__mark`,onClick:c[0]||=e=>v(F).markAllRead()},{default:g(()=>[...c[2]||=[n(` خواندن همه `,-1)]]),_:1})):o(``,!0)]),(r(!0),s(t,null,d(I.value,t=>(r(),s(`button`,{key:t.id,type:`button`,class:l([`notif-row`,[`notif-row--${t.tone}`,{"notif-row--unread":!t.isRead}]]),onClick:e=>z(t)},[e(`span`,O,[a(_,{icon:R[t.tone],size:22,"stroke-width":1.5},null,8,[`icon`])]),e(`span`,k,[e(`span`,A,[e(`strong`,j,u(t.title),1),t.isRead?o(``,!0):(r(),s(`span`,M))]),e(`span`,N,u(t.body),1),e(`span`,P,u(v(y)(t.sentAt)),1)])],10,D))),128))])):(r(),p(S,{key:1,icon:`vuesax-linear:notification-bing`,title:`اعلانی ندارید`,message:`وقتی فاکتور سفارشتان صادر شود یا وضعیت چک و پرداخت تغییر کند، همین‌جا خبردار می‌شوید.`},{default:g(()=>[a(b,{variant:`outline`,onClick:c[1]||=e=>v(h).push(`/orders`)},{default:g(()=>[...c[3]||=[n(`سفارش‌های من`,-1)]]),_:1})]),_:1}))]),_:1}))}}),[[`__scopeId`,`data-v-57190756`]]);export{F as default};
import{A as e,D as t,I as n,J as r,K as i,L as a,M as o,N as s,R as c,St as l,Tt as u,X as d,_ as f,j as p,k as m,n as h,nt as g,t as _,xt as v}from"./BasicIcon-B6lR-mG3.js";import{i as y}from"./format-BHJptHdF.js";import{n as b,u as x}from"./index-DXso6ia7.js";import{t as S}from"./EmptyState-C6UAJ5_3.js";import{t as C}from"./ProfileSubpageLayout-CHfCB62H.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=h(c({__name:`ProfileNotificationsView`,setup(c){let h=f(),F=x(),I=m(()=>F.items),L=m(()=>F.hasUnread),R={info:`vuesax-linear:information`,success:`vuesax-linear:tick-circle`,warning:`vuesax-linear:timer`,danger:`vuesax-linear:close-circle`};i(()=>{F.hydrate()});async function z(e){await F.markRead(e.id),e.link&&h.push(e.link)}return(i,c)=>(r(),p(C,{title:`اعلان‌ها`,subtitle:`آخرین خبرهای سفارش‌های شما`},{default:g(()=>[I.value.length?(r(),s(`div`,w,[e(`div`,T,[e(`span`,E,u(L.value?`${v(F).unreadCount} اعلان خوانده‌نشده`:`همه خوانده شده`),1),L.value?(r(),p(b,{key:0,variant:`outline`,class:`notif-box__mark`,onClick:c[0]||=e=>v(F).markAllRead()},{default:g(()=>[...c[2]||=[n(` خواندن همه `,-1)]]),_:1})):o(``,!0)]),(r(!0),s(t,null,d(I.value,t=>(r(),s(`button`,{key:t.id,type:`button`,class:l([`notif-row`,[`notif-row--${t.tone}`,{"notif-row--unread":!t.isRead}]]),onClick:e=>z(t)},[e(`span`,O,[a(_,{icon:R[t.tone],size:22,"stroke-width":1.5},null,8,[`icon`])]),e(`span`,k,[e(`span`,A,[e(`strong`,j,u(t.title),1),t.isRead?o(``,!0):(r(),s(`span`,M))]),e(`span`,N,u(t.body),1),e(`span`,P,u(v(y)(t.sentAt)),1)])],10,D))),128))])):(r(),p(S,{key:1,icon:`vuesax-linear:notification-bing`,title:`اعلانی ندارید`,message:`وقتی فاکتور سفارشتان صادر شود یا وضعیت چک و پرداخت تغییر کند، همین‌جا خبردار می‌شوید.`},{default:g(()=>[a(b,{variant:`outline`,onClick:c[1]||=e=>v(h).push(`/orders`)},{default:g(()=>[...c[3]||=[n(`سفارش‌های من`,-1)]]),_:1})]),_:1}))]),_:1}))}}),[[`__scopeId`,`data-v-57190756`]]);export{F as default};
@@ -1 +1 @@
import{A as e,I as t,J as n,L as r,M as i,N as a,R as o,j as s,n as c,nt as l,pt as u}from"./BasicIcon-B6lR-mG3.js";import{n as d}from"./index-DDi4iM2C.js";import{t as f}from"./FormErrorBanner-8PcsTbdO.js";import{n as p,r as m,t as h}from"./formErrors-DglFjYkZ.js";import{t as g}from"./BaseInput-9HB-GJGt.js";import{t as _}from"./ProfileSubpageLayout-CHfCB62H.js";var v={class:`settings-form`},y={key:0,class:`settings-form__saved`},b=c(o({__name:`ProfileSecurityView`,setup(o){let c=u(``),b=u(``),x=u(``),S=u({}),C=u(``),w=u(!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(c.value||(e.currentPassword=`رمز فعلی الزامی است.`),b.value.length<6&&(e.newPassword=`رمز جدید باید حداقل ۶ کاراکتر باشد.`),x.value!==b.value&&(e.confirmPassword=`تکرار رمز با رمز جدید یکسان نیست.`),m(e)){S.value=e,C.value=h;return}c.value=``,b.value=``,x.value=``,w.value=!0,setTimeout(()=>{w.value=!1},2e3)}return(o,u)=>(n(),s(_,{title:`امنیت حساب`,subtitle:`تغییر رمز عبور و تنظیمات ورود`},{default:l(()=>[r(f,{message:C.value},null,8,[`message`]),e(`div`,v,[r(g,{modelValue:c.value,"onUpdate:modelValue":[u[0]||=e=>c.value=e,u[1]||=e=>T(`currentPassword`)],type:`password`,label:`رمز عبور فعلی`,error:S.value.currentPassword},null,8,[`modelValue`,`error`]),r(g,{modelValue:b.value,"onUpdate:modelValue":[u[2]||=e=>b.value=e,u[3]||=e=>T(`newPassword`)],type:`password`,label:`رمز عبور جدید`,error:S.value.newPassword},null,8,[`modelValue`,`error`]),r(g,{modelValue:x.value,"onUpdate:modelValue":[u[4]||=e=>x.value=e,u[5]||=e=>T(`confirmPassword`)],type:`password`,label:`تکرار رمز عبور جدید`,error:S.value.confirmPassword},null,8,[`modelValue`,`error`]),r(d,{block:``,onClick:E},{default:l(()=>[...u[6]||=[t(`ذخیره رمز جدید`,-1)]]),_:1}),w.value?(n(),a(`p`,y,`رمز عبور با موفقیت تغییر کرد ✓`)):i(``,!0)])]),_:1}))}}),[[`__scopeId`,`data-v-074827a2`]]);export{b as default};
import{A as e,I as t,J as n,L as r,M as i,N as a,R as o,j as s,n as c,nt as l,pt as u}from"./BasicIcon-B6lR-mG3.js";import{n as d}from"./index-DXso6ia7.js";import{t as f}from"./FormErrorBanner-8PcsTbdO.js";import{n as p,r as m,t as h}from"./formErrors-DglFjYkZ.js";import{t as g}from"./BaseInput-9HB-GJGt.js";import{t as _}from"./ProfileSubpageLayout-CHfCB62H.js";var v={class:`settings-form`},y={key:0,class:`settings-form__saved`},b=c(o({__name:`ProfileSecurityView`,setup(o){let c=u(``),b=u(``),x=u(``),S=u({}),C=u(``),w=u(!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(c.value||(e.currentPassword=`رمز فعلی الزامی است.`),b.value.length<6&&(e.newPassword=`رمز جدید باید حداقل ۶ کاراکتر باشد.`),x.value!==b.value&&(e.confirmPassword=`تکرار رمز با رمز جدید یکسان نیست.`),m(e)){S.value=e,C.value=h;return}c.value=``,b.value=``,x.value=``,w.value=!0,setTimeout(()=>{w.value=!1},2e3)}return(o,u)=>(n(),s(_,{title:`امنیت حساب`,subtitle:`تغییر رمز عبور و تنظیمات ورود`},{default:l(()=>[r(f,{message:C.value},null,8,[`message`]),e(`div`,v,[r(g,{modelValue:c.value,"onUpdate:modelValue":[u[0]||=e=>c.value=e,u[1]||=e=>T(`currentPassword`)],type:`password`,label:`رمز عبور فعلی`,error:S.value.currentPassword},null,8,[`modelValue`,`error`]),r(g,{modelValue:b.value,"onUpdate:modelValue":[u[2]||=e=>b.value=e,u[3]||=e=>T(`newPassword`)],type:`password`,label:`رمز عبور جدید`,error:S.value.newPassword},null,8,[`modelValue`,`error`]),r(g,{modelValue:x.value,"onUpdate:modelValue":[u[4]||=e=>x.value=e,u[5]||=e=>T(`confirmPassword`)],type:`password`,label:`تکرار رمز عبور جدید`,error:S.value.confirmPassword},null,8,[`modelValue`,`error`]),r(d,{block:``,onClick:E},{default:l(()=>[...u[6]||=[t(`ذخیره رمز جدید`,-1)]]),_:1}),w.value?(n(),a(`p`,y,`رمز عبور با موفقیت تغییر کرد ✓`)):i(``,!0)])]),_:1}))}}),[[`__scopeId`,`data-v-074827a2`]]);export{b as default};
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+1
View File
@@ -0,0 +1 @@
var e={suit:`پارچه‌های کت‌وشلواری`,trousers:`پارچه‌های شلواری`,shirt:`پارچه‌های پیراهنی`},t={summer:`تابستانه`,winter:`زمستانه`,all_season:`چهار فصل`};function n(e){let t=e.trim();return t.includes(`کالیته`)?t:`کالیته ${t}`}function r(e){return e.description?.match(/[A-Za-z][A-Za-z0-9 .&-]{1,28}/)?.[0]?.trim()||(/^[A-Za-z]/.test(e.code)?e.code:``)}function i(e,t){if(!e.length)return t;let n=new Map;for(let t of e)n.set(t,(n.get(t)??0)+1);return[...n.entries()].sort((e,t)=>t[1]-e[1])[0]?.[0]??t}function a(e){let t=`${e.weaveType??``} ${e.tags.join(` `)} ${e.name}`;return/ملانژ|melange|mélange|heather/i.test(t)?`melange`:/طرح‌?دار|striped?|check|print|jacquard|pattern/i.test(t)?`patterned`:/ساده|plain|solid/i.test(t)?`plain`:`other`}function o(e){let t=new Map;for(let n of e){let e=n.name.trim()||n.code,r=t.get(e)??[];r.push(n),t.set(e,r)}return[...t.entries()].map(([,e])=>{let t=[...new Set(e.flatMap(e=>e.colors.length?e.colors:e.color?[e.color]:[]))];return{id:e[0].id,name:e[0].name,imageUrl:e.find(e=>e.imageUrl)?.imageUrl,colorCount:Math.max(t.length,e.length),colors:t.slice(0,5),kind:a(e[0]),items:e}})}function s(t,a){let s=new Map;for(let e of a){if(!e.catalogId)continue;let t=s.get(e.catalogId)??[];t.push(e),s.set(e.catalogId,t)}let c=t.map(e=>s.get(e.id)?.length??e.productCount??0),l=Math.max(4,[...c].sort((e,t)=>t-e)[Math.floor(t.length/3)]??4);return t.map(t=>{let a=s.get(t.id)??[],c=o(a).length||a.length||t.productCount||0,u=i(a.map(e=>e.categoryId),`suit`),d=i(a.map(e=>e.season),`all_season`),f=a.some(e=>e.isNew),p=c>=l;return{id:t.id,companyId:t.companyId,name:t.name,title:n(t.name),latinName:r(t),subtitle:t.description?.trim()||e[u]||`پارچه‌های منتخب`,imageUrl:t.imageUrl||a.find(e=>e.imageUrl)?.imageUrl,patternCount:c,badge:f?`new`:p?`popular`:void 0,season:d,isNew:f,isPopular:p}})}function c(e,t,n){let r=n.trim().toLowerCase(),i=e.filter(e=>!r||[e.title,e.name,e.latinName,e.subtitle].join(` `).toLowerCase().includes(r));if(t===`newest`)return i.sort((e,t)=>Number(t.isNew)-Number(e.isNew)||t.patternCount-e.patternCount);if(t===`popular`)return i.sort((e,t)=>Number(t.isPopular)-Number(e.isPopular)||t.patternCount-e.patternCount);if(t===`season`){let e=[`summer`,`winter`,`all_season`];return i.sort((t,n)=>e.indexOf(t.season)-e.indexOf(n.season)||t.title.localeCompare(n.title,`fa`))}return i}export{c as a,r as i,s as n,o,n as r,t};
Binary file not shown.

After

Width:  |  Height:  |  Size: 178 KiB

-1
View File
File diff suppressed because one or more lines are too long
+1
View File
@@ -0,0 +1 @@
import{H as e,K as t,U as n,W as r,bt as i,ct as a,et as o,ft as s,gt as c,ht as l,it as u,ot as d,pt as f,ut as p,vt as m,z as h}from"./BasicIcon-B6lR-mG3.js";function g(e,t){return d()?(p(e,t),!0):!1}var _=new WeakMap,v=(...t)=>{let r=t[0],i=h()?.proxy??d();if(i==null&&!e())throw Error(`injectLocal must be called in setup`);return i&&_.has(i)&&r in _.get(i)?_.get(i)[r]:n(...t)},y=typeof window<`u`&&typeof document<`u`;typeof WorkerGlobalScope<`u`&&globalThis instanceof WorkerGlobalScope;var b=Object.prototype.toString,x=e=>b.call(e)===`[object Object]`,S=()=>{},C=w();function w(){var e,t;return y&&!!((e=window)!=null&&(e=e.navigator)!=null&&e.userAgent)&&(/iP(?:ad|hone|od)/.test(window.navigator.userAgent)||((t=window)==null||(t=t.navigator)==null?void 0:t.maxTouchPoints)>2&&/iPad|Macintosh/.test(window?.navigator.userAgent))}function T(...e){if(e.length!==1)return m(...e);let t=e[0];return typeof t==`function`?s(u(()=>({get:t,set:S}))):f(t)}function E(e,t){function n(...n){return new Promise((r,i)=>{Promise.resolve(e(()=>t.apply(this,n),{fn:t,thisArg:this,args:n})).then(r).catch(i)})}return`cancel`in e&&Object.assign(n,{cancel:e.cancel,flush:e.flush,isPending:e.isPending}),n}var D=e=>e();function O(e=D,t={}){let{initialState:n=`active`}=t,r=T(n===`active`);function i(){r.value=!1}function a(){r.value=!0}return{isActive:l(r),pause:i,resume:a,eventFilter:(...t)=>{r.value&&e(...t)}}}function k(e){return e.endsWith(`rem`)?Number.parseFloat(e)*16:Number.parseFloat(e)}function A(e){return Array.isArray(e)?e:[e]}function j(e){return e||h()}function M(e,t,n={}){let{eventFilter:r=D,...i}=n;return o(e,E(r,t),i)}function N(e,t,n={}){let{eventFilter:r,initialState:i=`active`,...a}=n,{eventFilter:o,pause:s,resume:c,isActive:l}=O(r,{initialState:i});return{stop:M(e,t,{...a,eventFilter:o}),pause:s,resume:c,isActive:l}}function P(e,n=!0,i){j(i)?t(e,i):n?e():r(e)}function F(e,t=1e3,n={}){let{immediate:r=!0,immediateCallback:s=!1}=n,u=null,d=c(!1);function f(){u&&=(clearInterval(u),null)}function p(){d.value=!1,f()}function m(){let n=i(t);n<=0||(d.value=!0,s&&e(),f(),d.value&&(u=setInterval(e,n)))}return r&&y&&m(),(a(t)||typeof t==`function`)&&g(o(t,()=>{d.value&&y&&m()})),g(p),{isActive:l(d),pause:p,resume:m}}function I(e,t,n={}){let{immediate:r=!0,immediateCallback:a=!1}=n,o=c(!1),s;function u(){s&&=(clearTimeout(s),void 0)}function d(){o.value=!1,u()}function f(...n){a&&e(),u(),o.value=!0,s=setTimeout(()=>{o.value=!1,s=void 0,e(...n)},i(t))}return r&&(o.value=!0,y&&f()),g(d),{isPending:l(o),start:f,stop:d}}function L(e,t,n){return o(e,t,{...n,immediate:!0})}export{S as a,P as c,L as d,N as f,x as i,F as l,y as n,k as o,C as r,A as s,v as t,I as u};
+1
View File
File diff suppressed because one or more lines are too long
Binary file not shown.

After

Width:  |  Height:  |  Size: 112 KiB

File diff suppressed because one or more lines are too long
-2
View File
File diff suppressed because one or more lines are too long
+2
View File
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+1
View File
@@ -0,0 +1 @@
var e=`/assets/login-fabric-CSZOoxR9.jpg`;export{e as t};
BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 144 KiB

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 109 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 218 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 89 KiB

@@ -1 +1 @@
import{_ as e,et as t,g as n,k as r}from"./BasicIcon-B6lR-mG3.js";import{g as i}from"./index-DDi4iM2C.js";import{n as a}from"./orderInvoice-B0L1Aeuk.js";function o(){let o=n(),s=e(),c=i(),l=r(()=>o.params.id),u=r(()=>c.getOrderById(l.value)),d=r(()=>a(u.value));function f(e){e&&(a(e)||s.replace(`/orders/${e.id}`))}return t(l,async e=>{e&&f(c.getOrderById(e)??await c.fetchOrder(e))},{immediate:!0}),t(u,e=>{f(e)}),{orderId:l,order:u,invoiceReady:d}}export{o as t};
import{_ as e,et as t,g as n,k as r}from"./BasicIcon-B6lR-mG3.js";import{g as i}from"./index-DXso6ia7.js";import{n as a}from"./orderInvoice-B0L1Aeuk.js";function o(){let o=n(),s=e(),c=i(),l=r(()=>o.params.id),u=r(()=>c.getOrderById(l.value)),d=r(()=>a(u.value));function f(e){e&&(a(e)||s.replace(`/orders/${e.id}`))}return t(l,async e=>{e&&f(c.getOrderById(e)??await c.fetchOrder(e))},{immediate:!0}),t(u,e=>{f(e)}),{orderId:l,order:u,invoiceReady:d}}export{o as t};
+4 -3
View File
@@ -6,15 +6,16 @@
<meta name="viewport" content="width=device-width, initial-scale=1.0, viewport-fit=cover">
<meta name="theme-color" content="#17379f">
<title>سامانه سفارش عمده پارچه</title>
<script type="module" crossorigin src="/assets/index-DDi4iM2C.js"></script>
<script type="module" crossorigin src="/assets/index-DXso6ia7.js"></script>
<link rel="modulepreload" crossorigin href="/assets/BasicIcon-B6lR-mG3.js">
<link rel="modulepreload" crossorigin href="/assets/http-CHgEV7QF.js">
<link rel="modulepreload" crossorigin href="/assets/dist-BEjUUhLz.js">
<link rel="modulepreload" crossorigin href="/assets/dist-BcgVHqJQ.js">
<link rel="modulepreload" crossorigin href="/assets/dist-DwqEDRqq.js">
<link rel="modulepreload" crossorigin href="/assets/format-BHJptHdF.js">
<link rel="modulepreload" crossorigin href="/assets/validation-BD7oi-2I.js">
<link rel="modulepreload" crossorigin href="/assets/catalog-DNpqlweh.js">
<link rel="stylesheet" crossorigin href="/assets/BasicIcon-QF_b9Svq.css">
<link rel="stylesheet" crossorigin href="/assets/index-Db2rZFq1.css">
<link rel="stylesheet" crossorigin href="/assets/index-CREBAUB-.css">
</head>
<body>
<div id="app"></div>