From 4df9143a9643c4c08df2a726a594796e5002ce2a Mon Sep 17 00:00:00 2001 From: adonis Date: Thu, 24 Sep 2026 20:16:10 +0330 Subject: [PATCH] build: refresh user production assets Publish the verified user build output. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- dist/assets/BaseInput-CVNdy37R.js | 1 - dist/assets/BaseInput-CpE3bVJZ.js | 1 + ...BasicIcon-BXxbbWA_.js => BasicIcon-Bzeb0Iwd.js} | 4 ++-- dist/assets/CartView-BFjbSmpZ.js | 1 - dist/assets/CartView-Bke6TXBV.js | 1 + dist/assets/CashSettlementView-BbwaRcwg.js | 1 + dist/assets/CashSettlementView-BxW5Z-lD.js | 1 - dist/assets/CatalogListView-JUCOpCr_.js | 1 + dist/assets/CatalogListView-kLwRIxQN.js | 1 - dist/assets/CatalogProductRedirectView-Bzfk8EFi.js | 1 + dist/assets/CatalogProductRedirectView-GITIU3xk.js | 1 - dist/assets/CatalogRequestsView-B_32f4tA.js | 1 - dist/assets/CatalogRequestsView-DavJD797.js | 1 + dist/assets/CatalogsHubView-BnSYeqwJ.js | 1 + dist/assets/CatalogsHubView-CAAnf2JN.js | 1 - dist/assets/CategoriesView-DT-MUnmH.js | 1 - dist/assets/CategoriesView-fGgvG-m4.js | 1 + dist/assets/CheckFormView-BZacVTAv.js | 1 + dist/assets/CheckFormView-C6JGTT8G.js | 1 - dist/assets/CheckListView-BhenoTXJ.js | 1 - dist/assets/CheckListView-CjmQVBmc.js | 1 + dist/assets/CheckModeSelectView-BZfruEWx.js | 1 - dist/assets/CheckModeSelectView-DXLWag4X.js | 1 + dist/assets/CheckoutStepper-DptjKnv0.js | 1 + dist/assets/CheckoutStepper-Dw7-dJI5.js | 1 - dist/assets/CurrencyInput-Cu2dRPFo.js | 1 + dist/assets/CurrencyInput-D6gR57Z3.js | 1 - dist/assets/CustomerCreateOverlay-BlatCdeJ.js | 1 - dist/assets/CustomerCreateOverlay-iQAyp2AI.js | 1 + dist/assets/CustomerDetailView-Cvk2MqwU.js | 1 - dist/assets/CustomerDetailView-D06mrc2B.js | 1 + dist/assets/CustomersView-CNLgp8Je.js | 1 - dist/assets/CustomersView-oFAB_RWo.js | 1 + dist/assets/EmptyState-D-8eFOUi.js | 1 - dist/assets/EmptyState-D72g65G-.js | 1 + dist/assets/FavoritesView-RlUx7_H2.js | 1 + dist/assets/FavoritesView-y720DF4m.js | 1 - dist/assets/FormErrorBanner-DI5hhxpk.js | 1 - dist/assets/FormErrorBanner-Ud1D04xf.js | 1 + dist/assets/HomeView-Bqa7R1Mj.js | 1 - dist/assets/HomeView-CvirsHZC.js | 1 + dist/assets/IconBookmark-CQq-TOS-.js | 1 + dist/assets/IconBookmark-DQEBziz0.js | 1 - ...ack-DfGoZJJk.js => IconChevronBack-CDeN0Cbu.js} | 2 +- ...-BdL7YkiR.js => IconClipboardEmpty-D-FEqLzR.js} | 2 +- ...Diamond-R4uguqMC.js => IconDiamond-bOGfMf7j.js} | 2 +- ...EditPen-LGjdaNbi.js => IconEditPen-DkMxper9.js} | 2 +- ...onFilter-C0e5CP4I.js => IconFilter-DgpHKrEL.js} | 2 +- dist/assets/IconHeart-Be5RRWq4.js | 1 - dist/assets/IconHeart-CvzbNH_T.js | 1 + ...Grid-DTCDTb_O.js => IconLayoutGrid-CTmPrZXE.js} | 2 +- ...al-zeD1VV0e.js => IconMoreVertical-DxvtLM6t.js} | 2 +- ...IconPhone-ZmPXu1y3.js => IconPhone-DymoL1t0.js} | 2 +- ...k-CpMlnCU2.js => IconProgressClock-C2Emr6X3.js} | 2 +- ...onSearch-BUr8iOwb.js => IconSearch-CUp0Xr9R.js} | 2 +- ...Bag-BeSLUxcB.js => IconShoppingBag-BHoZiOex.js} | 2 +- .../LatestCatalogRequestStatusView-CKVcuf7K.js | 1 + .../LatestCatalogRequestStatusView-CQQrt43S.js | 1 - ...-ByuMy.js => LatestOrderStatusView-Cmvk1IZX.js} | 2 +- dist/assets/LoginView-BHpJH2ha.js | 1 + dist/assets/LoginView-DkQyawlh.js | 1 - dist/assets/NotFoundView-DcuA7MTj.js | 1 + dist/assets/NotFoundView-N95LQNdN.css | 1 + dist/assets/OrderDetailView-BQgUhha9.js | 1 + dist/assets/OrderDetailView-DPEL7-lF.js | 1 - dist/assets/OrderSuccessView-BGnYjzbC.js | 1 + dist/assets/OrderSuccessView-DbGNDiom.js | 1 - dist/assets/OrdersView-BIlEM87V.js | 1 - dist/assets/OrdersView-BXe3x3fy.js | 1 + dist/assets/OtpView-CsrAaJgf.js | 1 - dist/assets/OtpView-DEZNJ86U.js | 1 + dist/assets/PageHeader-BSsCNguu.js | 1 + dist/assets/PageHeader-DTO8lja2.js | 1 - dist/assets/PageSkeleton-DHtB6RUa.js | 1 - dist/assets/PageSkeleton-DYdjm4l9.js | 1 + dist/assets/PersianDateInput-CTe_lYug.js | 1 - dist/assets/PersianDateInput-DrDb_iFF.js | 1 + dist/assets/ProductDetailView-BqszvyUB.js | 1 + dist/assets/ProductDetailView-BxbbLfCJ.js | 1 - dist/assets/ProductsView-Da45qLqI.js | 1 + dist/assets/ProductsView-DtAZBhWt.js | 1 - dist/assets/ProfileChecksView-CZ9czIQ3.js | 1 - dist/assets/ProfileChecksView-CspNmMYH.js | 1 + dist/assets/ProfileDisplayView-D1_O0poX.js | 1 + dist/assets/ProfileDisplayView-lgTZCjkL.js | 1 - dist/assets/ProfileEditView-D1Tcro0s.js | 1 + dist/assets/ProfileEditView-DKPvUiwL.js | 1 - dist/assets/ProfileNotificationsView-CRUkrfu7.js | 1 - dist/assets/ProfileNotificationsView-HWhGI6LP.js | 1 + dist/assets/ProfileSecurityView-CtNJOjnr.js | 1 + dist/assets/ProfileSecurityView-Kv1i6EIE.js | 1 - dist/assets/ProfileSubpageLayout-C-s-O95S.js | 1 - dist/assets/ProfileSubpageLayout-Ce-Qt1do.js | 1 + dist/assets/ProfileView-DOOsdorU.js | 1 + dist/assets/ProfileView-Du0bsfdh.js | 1 - dist/assets/RegisterView-B12mniS_.js | 1 + dist/assets/RegisterView-B5N97yVt.js | 1 - dist/assets/ReminderDetailView-CB182Fxn.js | 1 + dist/assets/ReminderDetailView-Dr0qYekB.js | 1 - dist/assets/RemindersView-CP53npYK.js | 1 - dist/assets/RemindersView-DQScMISF.js | 1 + dist/assets/SearchField-BMLbKLPW.js | 1 - dist/assets/SearchField-dVDn9y5S.js | 1 + dist/assets/SettlementTypeView-B79MwpEm.js | 1 + dist/assets/SettlementTypeView-BAS_xsRw.js | 1 - dist/assets/SimpleStatusTimeline-BYp_nmbJ.js | 1 + dist/assets/SimpleStatusTimeline-wcI2qobj.js | 1 - ...omeView-CY8sq5mY.js => WelcomeView-B9nyWLIh.js} | 2 +- ...wJ.js => _plugin-vue_export-helper-1xMDlcEE.js} | 2 +- .../{catalog-CIw6in_a.js => catalog-BHsy1JeE.js} | 2 +- ...n-BKzzgMwI.js => catalogNavigation-CNQR36ce.js} | 2 +- ...sts-DB19-0hk.js => catalogRequests-Bfg-Nm09.js} | 2 +- dist/assets/categoryIcons-DNHSoriy.js | 1 + dist/assets/categoryIcons-xvNXaT6R.js | 1 - dist/assets/{crm-CooNUbmr.js => crm-DoYzOa8A.js} | 2 +- dist/assets/dist-2yEcZq4e.js | 1 - dist/assets/dist-Bc4P4ngC.js | 1 + dist/assets/dist-U-AqZ6hP.js | 1 + dist/assets/dist-nK9ByyUG.js | 1 - dist/assets/http-CeONvUNq.js | 1 - dist/assets/http-Cmeatq0_.js | 1 + dist/assets/index-BAQfYU-Q.js | 2 -- dist/assets/index-BrjLizie.js | 2 ++ dist/assets/useGoBack-C1ocTT2D.js | 1 + dist/assets/useGoBack-TJZZv7or.js | 1 - dist/assets/useRequirePricedOrder-CmTdgjZX.js | 1 + dist/assets/useRequirePricedOrder-DWh7nbsh.js | 1 - dist/index.html | 14 +++++++------- 128 files changed, 83 insertions(+), 81 deletions(-) delete mode 100644 dist/assets/BaseInput-CVNdy37R.js create mode 100644 dist/assets/BaseInput-CpE3bVJZ.js rename dist/assets/{BasicIcon-BXxbbWA_.js => BasicIcon-Bzeb0Iwd.js} (77%) delete mode 100644 dist/assets/CartView-BFjbSmpZ.js create mode 100644 dist/assets/CartView-Bke6TXBV.js create mode 100644 dist/assets/CashSettlementView-BbwaRcwg.js delete mode 100644 dist/assets/CashSettlementView-BxW5Z-lD.js create mode 100644 dist/assets/CatalogListView-JUCOpCr_.js delete mode 100644 dist/assets/CatalogListView-kLwRIxQN.js create mode 100644 dist/assets/CatalogProductRedirectView-Bzfk8EFi.js delete mode 100644 dist/assets/CatalogProductRedirectView-GITIU3xk.js delete mode 100644 dist/assets/CatalogRequestsView-B_32f4tA.js create mode 100644 dist/assets/CatalogRequestsView-DavJD797.js create mode 100644 dist/assets/CatalogsHubView-BnSYeqwJ.js delete mode 100644 dist/assets/CatalogsHubView-CAAnf2JN.js delete mode 100644 dist/assets/CategoriesView-DT-MUnmH.js create mode 100644 dist/assets/CategoriesView-fGgvG-m4.js create mode 100644 dist/assets/CheckFormView-BZacVTAv.js delete mode 100644 dist/assets/CheckFormView-C6JGTT8G.js delete mode 100644 dist/assets/CheckListView-BhenoTXJ.js create mode 100644 dist/assets/CheckListView-CjmQVBmc.js delete mode 100644 dist/assets/CheckModeSelectView-BZfruEWx.js create mode 100644 dist/assets/CheckModeSelectView-DXLWag4X.js create mode 100644 dist/assets/CheckoutStepper-DptjKnv0.js delete mode 100644 dist/assets/CheckoutStepper-Dw7-dJI5.js create mode 100644 dist/assets/CurrencyInput-Cu2dRPFo.js delete mode 100644 dist/assets/CurrencyInput-D6gR57Z3.js delete mode 100644 dist/assets/CustomerCreateOverlay-BlatCdeJ.js create mode 100644 dist/assets/CustomerCreateOverlay-iQAyp2AI.js delete mode 100644 dist/assets/CustomerDetailView-Cvk2MqwU.js create mode 100644 dist/assets/CustomerDetailView-D06mrc2B.js delete mode 100644 dist/assets/CustomersView-CNLgp8Je.js create mode 100644 dist/assets/CustomersView-oFAB_RWo.js delete mode 100644 dist/assets/EmptyState-D-8eFOUi.js create mode 100644 dist/assets/EmptyState-D72g65G-.js create mode 100644 dist/assets/FavoritesView-RlUx7_H2.js delete mode 100644 dist/assets/FavoritesView-y720DF4m.js delete mode 100644 dist/assets/FormErrorBanner-DI5hhxpk.js create mode 100644 dist/assets/FormErrorBanner-Ud1D04xf.js delete mode 100644 dist/assets/HomeView-Bqa7R1Mj.js create mode 100644 dist/assets/HomeView-CvirsHZC.js create mode 100644 dist/assets/IconBookmark-CQq-TOS-.js delete mode 100644 dist/assets/IconBookmark-DQEBziz0.js rename dist/assets/{IconChevronBack-DfGoZJJk.js => IconChevronBack-CDeN0Cbu.js} (52%) rename dist/assets/{IconClipboardEmpty-BdL7YkiR.js => IconClipboardEmpty-D-FEqLzR.js} (53%) rename dist/assets/{IconDiamond-R4uguqMC.js => IconDiamond-bOGfMf7j.js} (51%) rename dist/assets/{IconEditPen-LGjdaNbi.js => IconEditPen-DkMxper9.js} (51%) rename dist/assets/{IconFilter-C0e5CP4I.js => IconFilter-DgpHKrEL.js} (51%) delete mode 100644 dist/assets/IconHeart-Be5RRWq4.js create mode 100644 dist/assets/IconHeart-CvzbNH_T.js rename dist/assets/{IconLayoutGrid-DTCDTb_O.js => IconLayoutGrid-CTmPrZXE.js} (52%) rename dist/assets/{IconMoreVertical-zeD1VV0e.js => IconMoreVertical-DxvtLM6t.js} (51%) rename dist/assets/{IconPhone-ZmPXu1y3.js => IconPhone-DymoL1t0.js} (51%) rename dist/assets/{IconProgressClock-CpMlnCU2.js => IconProgressClock-C2Emr6X3.js} (52%) rename dist/assets/{IconSearch-BUr8iOwb.js => IconSearch-CUp0Xr9R.js} (52%) rename dist/assets/{IconShoppingBag-BeSLUxcB.js => IconShoppingBag-BHoZiOex.js} (52%) create mode 100644 dist/assets/LatestCatalogRequestStatusView-CKVcuf7K.js delete mode 100644 dist/assets/LatestCatalogRequestStatusView-CQQrt43S.js rename dist/assets/{LatestOrderStatusView-xE-ByuMy.js => LatestOrderStatusView-Cmvk1IZX.js} (61%) create mode 100644 dist/assets/LoginView-BHpJH2ha.js delete mode 100644 dist/assets/LoginView-DkQyawlh.js create mode 100644 dist/assets/NotFoundView-DcuA7MTj.js create mode 100644 dist/assets/NotFoundView-N95LQNdN.css create mode 100644 dist/assets/OrderDetailView-BQgUhha9.js delete mode 100644 dist/assets/OrderDetailView-DPEL7-lF.js create mode 100644 dist/assets/OrderSuccessView-BGnYjzbC.js delete mode 100644 dist/assets/OrderSuccessView-DbGNDiom.js delete mode 100644 dist/assets/OrdersView-BIlEM87V.js create mode 100644 dist/assets/OrdersView-BXe3x3fy.js delete mode 100644 dist/assets/OtpView-CsrAaJgf.js create mode 100644 dist/assets/OtpView-DEZNJ86U.js create mode 100644 dist/assets/PageHeader-BSsCNguu.js delete mode 100644 dist/assets/PageHeader-DTO8lja2.js delete mode 100644 dist/assets/PageSkeleton-DHtB6RUa.js create mode 100644 dist/assets/PageSkeleton-DYdjm4l9.js delete mode 100644 dist/assets/PersianDateInput-CTe_lYug.js create mode 100644 dist/assets/PersianDateInput-DrDb_iFF.js create mode 100644 dist/assets/ProductDetailView-BqszvyUB.js delete mode 100644 dist/assets/ProductDetailView-BxbbLfCJ.js create mode 100644 dist/assets/ProductsView-Da45qLqI.js delete mode 100644 dist/assets/ProductsView-DtAZBhWt.js delete mode 100644 dist/assets/ProfileChecksView-CZ9czIQ3.js create mode 100644 dist/assets/ProfileChecksView-CspNmMYH.js create mode 100644 dist/assets/ProfileDisplayView-D1_O0poX.js delete mode 100644 dist/assets/ProfileDisplayView-lgTZCjkL.js create mode 100644 dist/assets/ProfileEditView-D1Tcro0s.js delete mode 100644 dist/assets/ProfileEditView-DKPvUiwL.js delete mode 100644 dist/assets/ProfileNotificationsView-CRUkrfu7.js create mode 100644 dist/assets/ProfileNotificationsView-HWhGI6LP.js create mode 100644 dist/assets/ProfileSecurityView-CtNJOjnr.js delete mode 100644 dist/assets/ProfileSecurityView-Kv1i6EIE.js delete mode 100644 dist/assets/ProfileSubpageLayout-C-s-O95S.js create mode 100644 dist/assets/ProfileSubpageLayout-Ce-Qt1do.js create mode 100644 dist/assets/ProfileView-DOOsdorU.js delete mode 100644 dist/assets/ProfileView-Du0bsfdh.js create mode 100644 dist/assets/RegisterView-B12mniS_.js delete mode 100644 dist/assets/RegisterView-B5N97yVt.js create mode 100644 dist/assets/ReminderDetailView-CB182Fxn.js delete mode 100644 dist/assets/ReminderDetailView-Dr0qYekB.js delete mode 100644 dist/assets/RemindersView-CP53npYK.js create mode 100644 dist/assets/RemindersView-DQScMISF.js delete mode 100644 dist/assets/SearchField-BMLbKLPW.js create mode 100644 dist/assets/SearchField-dVDn9y5S.js create mode 100644 dist/assets/SettlementTypeView-B79MwpEm.js delete mode 100644 dist/assets/SettlementTypeView-BAS_xsRw.js create mode 100644 dist/assets/SimpleStatusTimeline-BYp_nmbJ.js delete mode 100644 dist/assets/SimpleStatusTimeline-wcI2qobj.js rename dist/assets/{WelcomeView-CY8sq5mY.js => WelcomeView-B9nyWLIh.js} (69%) rename dist/assets/{_plugin-vue_export-helper-Bo3WtfwJ.js => _plugin-vue_export-helper-1xMDlcEE.js} (97%) rename dist/assets/{catalog-CIw6in_a.js => catalog-BHsy1JeE.js} (93%) rename dist/assets/{catalogNavigation-BKzzgMwI.js => catalogNavigation-CNQR36ce.js} (98%) rename dist/assets/{catalogRequests-DB19-0hk.js => catalogRequests-Bfg-Nm09.js} (88%) create mode 100644 dist/assets/categoryIcons-DNHSoriy.js delete mode 100644 dist/assets/categoryIcons-xvNXaT6R.js rename dist/assets/{crm-CooNUbmr.js => crm-DoYzOa8A.js} (96%) delete mode 100644 dist/assets/dist-2yEcZq4e.js create mode 100644 dist/assets/dist-Bc4P4ngC.js create mode 100644 dist/assets/dist-U-AqZ6hP.js delete mode 100644 dist/assets/dist-nK9ByyUG.js delete mode 100644 dist/assets/http-CeONvUNq.js create mode 100644 dist/assets/http-Cmeatq0_.js delete mode 100644 dist/assets/index-BAQfYU-Q.js create mode 100644 dist/assets/index-BrjLizie.js create mode 100644 dist/assets/useGoBack-C1ocTT2D.js delete mode 100644 dist/assets/useGoBack-TJZZv7or.js create mode 100644 dist/assets/useRequirePricedOrder-CmTdgjZX.js delete mode 100644 dist/assets/useRequirePricedOrder-DWh7nbsh.js diff --git a/dist/assets/BaseInput-CVNdy37R.js b/dist/assets/BaseInput-CVNdy37R.js deleted file mode 100644 index 6f2379a..0000000 --- a/dist/assets/BaseInput-CVNdy37R.js +++ /dev/null @@ -1 +0,0 @@ -import{D as e,J as t,Kt as n,O as r,P as i,T as a,Xt as o,t as s,w as c}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";var l={class:`form-group`},u={key:0,class:`form-label`},d=[`type`,`value`,`placeholder`,`disabled`,`min`,`max`,`step`,`maxlength`,`inputmode`,`autocomplete`,`dir`],f={key:1,class:`input-error-text`},p={key:2,class:`form-hint`},m=s(i({__name:`BaseInput`,props:{modelValue:{},label:{},type:{},placeholder:{},hint:{},error:{},disabled:{type:Boolean},min:{},max:{},step:{},maxlength:{},inputmode:{},autocomplete:{},dir:{},align:{}},emits:[`update:modelValue`,`blur`],setup(i){let s=i,m=c(()=>{let e=s.type??`text`;return e===`number`||e===`tel`||s.inputmode===`numeric`||s.inputmode===`decimal`||s.inputmode===`tel`||s.dir===`ltr`}),h=c(()=>s.align??(m.value?`end`:`start`));return(s,c)=>(t(),r(`div`,l,[i.label?(t(),r(`label`,u,o(i.label),1)):e(``,!0),a(`input`,{class:n([`input`,[`input--align-${h.value}`,{"input-error":i.error}]]),type:i.type??`text`,value:i.modelValue,placeholder:i.placeholder,disabled:i.disabled,min:i.min,max:i.max,step:i.step,maxlength:i.maxlength,inputmode:i.inputmode,autocomplete:i.autocomplete,dir:i.dir,onInput:c[0]||=e=>s.$emit(`update:modelValue`,e.target.value),onBlur:c[1]||=e=>s.$emit(`blur`,e)},null,42,d),i.error?(t(),r(`p`,f,o(i.error),1)):i.hint?(t(),r(`p`,p,o(i.hint),1)):e(``,!0)]))}}),[[`__scopeId`,`data-v-42608cc9`]]);export{m as t}; \ No newline at end of file diff --git a/dist/assets/BaseInput-CpE3bVJZ.js b/dist/assets/BaseInput-CpE3bVJZ.js new file mode 100644 index 0000000..df72fb6 --- /dev/null +++ b/dist/assets/BaseInput-CpE3bVJZ.js @@ -0,0 +1 @@ +import{At as e,M as t,Pt as n,c as r,d as i,f as a,l as o,t as s,v as c}from"./_plugin-vue_export-helper-1xMDlcEE.js";var l={class:`form-group`},u={key:0,class:`form-label`},d=[`type`,`value`,`placeholder`,`disabled`,`min`,`max`,`step`,`maxlength`,`inputmode`,`autocomplete`,`dir`],f={key:1,class:`input-error-text`},p={key:2,class:`form-hint`},m=s(c({__name:`BaseInput`,props:{modelValue:{},label:{},type:{},placeholder:{},hint:{},error:{},disabled:{type:Boolean},min:{},max:{},step:{},maxlength:{},inputmode:{},autocomplete:{},dir:{},align:{}},emits:[`update:modelValue`,`blur`],setup(s){let c=s,m=r(()=>{let e=c.type??`text`;return e===`number`||e===`tel`||c.inputmode===`numeric`||c.inputmode===`decimal`||c.inputmode===`tel`||c.dir===`ltr`}),h=r(()=>c.align??(m.value?`end`:`start`));return(r,c)=>(t(),a(`div`,l,[s.label?(t(),a(`label`,u,n(s.label),1)):i(``,!0),o(`input`,{class:e([`input`,[`input--align-${h.value}`,{"input-error":s.error}]]),type:s.type??`text`,value:s.modelValue,placeholder:s.placeholder,disabled:s.disabled,min:s.min,max:s.max,step:s.step,maxlength:s.maxlength,inputmode:s.inputmode,autocomplete:s.autocomplete,dir:s.dir,onInput:c[0]||=e=>r.$emit(`update:modelValue`,e.target.value),onBlur:c[1]||=e=>r.$emit(`blur`,e)},null,42,d),s.error?(t(),a(`p`,f,n(s.error),1)):s.hint?(t(),a(`p`,p,n(s.hint),1)):i(``,!0)]))}}),[[`__scopeId`,`data-v-42608cc9`]]);export{m as t}; \ No newline at end of file diff --git a/dist/assets/BasicIcon-BXxbbWA_.js b/dist/assets/BasicIcon-Bzeb0Iwd.js similarity index 77% rename from dist/assets/BasicIcon-BXxbbWA_.js rename to dist/assets/BasicIcon-Bzeb0Iwd.js index eaa6ff1..fe551d5 100644 --- a/dist/assets/BasicIcon-BXxbbWA_.js +++ b/dist/assets/BasicIcon-Bzeb0Iwd.js @@ -1,4 +1,4 @@ -import{At as e,Bt as t,C as n,Dt as r,Et as i,F as a,Ft as o,G as s,Gt as c,H as l,Ht as u,I as d,It as f,J as p,K as m,Lt as h,Mt as g,N as ee,Nt as _,O as v,Ot as y,P as b,Pt as x,R as te,Rt as ne,St as re,Ut as S,V as C,Vt as w,W as ie,Wt as T,X as ae,Zt as oe,at as se,b as ce,it as le,jt as E,k as ue,kt as de,nt as fe,q as pe,qt as me,rt as he,t as ge,tt as _e,v as ve,w as D,x as ye,y as be,zt as O}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";var k=void 0,xe=typeof window<`u`&&window.trustedTypes;if(xe)try{k=xe.createPolicy(`vue`,{createHTML:e=>e})}catch{}var Se=k?e=>k.createHTML(e):e=>e,Ce=`http://www.w3.org/2000/svg`,we=`http://www.w3.org/1998/Math/MathML`,A=typeof document<`u`?document:null,Te=A&&A.createElement(`template`),Ee={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{let t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,r)=>{let i=t===`svg`?A.createElementNS(Ce,e):t===`mathml`?A.createElementNS(we,e):n?A.createElement(e,{is:n}):A.createElement(e);return e===`select`&&r&&r.multiple!=null&&i.setAttribute(`multiple`,r.multiple),i},createText:e=>A.createTextNode(e),createComment:e=>A.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>A.querySelector(e),setScopeId(e,t){e.setAttribute(t,``)},insertStaticContent(e,t,n,r,i,a){let o=n?n.previousSibling:t.lastChild;if(i&&(i===a||i.nextSibling))for(;t.insertBefore(i.cloneNode(!0),n),!(i===a||!(i=i.nextSibling)););else{Te.innerHTML=Se(r===`svg`?`${e}`:r===`mathml`?`${e}`:e);let i=Te.content;if(r===`svg`||r===`mathml`){let e=i.firstChild;for(;e.firstChild;)i.appendChild(e.firstChild);i.removeChild(e)}t.insertBefore(i,n)}return[o?o.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},j=`transition`,M=`animation`,N=Symbol(`_vtc`),De={name:String,type:String,css:{type:Boolean,default:!0},duration:[String,Number,Object],enterFromClass:String,enterActiveClass:String,enterToClass:String,appearFromClass:String,appearActiveClass:String,appearToClass:String,leaveFromClass:String,leaveActiveClass:String,leaveToClass:String},Oe=e({},be,De),ke=(e=>(e.displayName=`Transition`,e.props=Oe,e))((e,{slots:t})=>te(ve,I(e),t)),P=(e,t=[])=>{x(e)?e.forEach(e=>e(...t)):e&&e(...t)},F=e=>e?x(e)?e.some(e=>e.length>1):e.length>1:!1;function I(t){let n={};for(let e in t)e in De||(n[e]=t[e]);if(t.css===!1)return n;let{name:r=`v`,type:i,duration:a,enterFromClass:o=`${r}-enter-from`,enterActiveClass:s=`${r}-enter-active`,enterToClass:c=`${r}-enter-to`,appearFromClass:l=o,appearActiveClass:u=s,appearToClass:d=c,leaveFromClass:f=`${r}-leave-from`,leaveActiveClass:p=`${r}-leave-active`,leaveToClass:m=`${r}-leave-to`}=t,h=Ae(a),g=h&&h[0],ee=h&&h[1],{onBeforeEnter:_,onEnter:v,onEnterCancelled:y,onLeave:b,onLeaveCancelled:x,onBeforeAppear:te=_,onAppear:ne=v,onAppearCancelled:re=y}=n,S=(e,t,n,r)=>{e._enterCancelled=r,z(e,t?d:c),z(e,t?u:s),n&&n()},C=(e,t)=>{e._isLeaving=!1,z(e,f),z(e,m),z(e,p),t&&t()},w=e=>(t,n)=>{let r=e?ne:v,a=()=>S(t,e,n);P(r,[t,a]),je(()=>{z(t,e?l:o),R(t,e?d:c),F(r)||Ne(t,i,g,a)})};return e(n,{onBeforeEnter(e){P(_,[e]),R(e,o),R(e,s)},onBeforeAppear(e){P(te,[e]),R(e,l),R(e,u)},onEnter:w(!1),onAppear:w(!0),onLeave(e,t){e._isLeaving=!0;let n=()=>C(e,t);R(e,f),e._enterCancelled?(R(e,p),V(e)):(V(e),R(e,p)),je(()=>{e._isLeaving&&(z(e,f),R(e,m),F(b)||Ne(e,i,ee,n))}),P(b,[e,n])},onEnterCancelled(e){S(e,!1,void 0,!0),P(y,[e])},onAppearCancelled(e){S(e,!0,void 0,!0),P(re,[e])},onLeaveCancelled(e){C(e),P(x,[e])}})}function Ae(e){if(e==null)return null;if(h(e))return[L(e.enter),L(e.leave)];{let t=L(e);return[t,t]}}function L(e){return oe(e)}function R(e,t){t.split(/\s+/).forEach(t=>t&&e.classList.add(t)),(e[N]||(e[N]=new Set)).add(t)}function z(e,t){t.split(/\s+/).forEach(t=>t&&e.classList.remove(t));let n=e[N];n&&(n.delete(t),n.size||(e[N]=void 0))}function je(e){requestAnimationFrame(()=>{requestAnimationFrame(e)})}var Me=0;function Ne(e,t,n,r){let i=e._endId=++Me,a=()=>{i===e._endId&&r()};if(n!=null)return setTimeout(a,n);let{type:o,timeout:s,propCount:c}=Pe(e,t);if(!o)return r();let l=o+`end`,u=0,d=()=>{e.removeEventListener(l,f),a()},f=t=>{t.target===e&&++u>=c&&d()};setTimeout(()=>{u(n[e]||``).split(`, `),i=r(`${j}Delay`),a=r(`${j}Duration`),o=B(i,a),s=r(`${M}Delay`),c=r(`${M}Duration`),l=B(s,c),u=null,d=0,f=0;t===j?o>0&&(u=j,d=o,f=a.length):t===M?l>0&&(u=M,d=l,f=c.length):(d=Math.max(o,l),u=d>0?o>l?j:M:null,f=u?u===j?a.length:c.length:0);let p=u===j&&/\b(?:transform|all)(?:,|$)/.test(r(`${j}Property`).toString());return{type:u,timeout:d,propCount:f,hasTransform:p}}function B(e,t){for(;e.lengthFe(t)+Fe(e[n])))}function Fe(e){return e===`auto`?0:Number(e.slice(0,-1).replace(`,`,`.`))*1e3}function V(e){return(e?e.ownerDocument:document).body.offsetHeight}function Ie(e,t,n){let r=e[N];r&&(t=(t?[t,...r]:[...r]).join(` `)),t==null?e.removeAttribute(`class`):n?e.setAttribute(`class`,t):e.className=t}var H=Symbol(`_vod`),U=Symbol(`_vsh`),Le={name:`show`,beforeMount(e,{value:t},{transition:n}){e[H]=e.style.display===`none`?``:e.style.display,n&&t?n.beforeEnter(e):W(e,t)},mounted(e,{value:t},{transition:n}){n&&t&&n.enter(e)},updated(e,{value:t,oldValue:n},{transition:r}){!t!=!n&&(r?t?(r.beforeEnter(e),W(e,!0),r.enter(e)):r.leave(e,()=>{W(e,!1)}):W(e,t))},beforeUnmount(e,{value:t}){W(e,t)}};function W(e,t){e.style.display=t?e[H]:`none`,e[U]=!t}var Re=Symbol(``);function ze(e){let t=a();if(!t)return;let n=t.ut=(n=e(t.proxy))=>{Array.from(document.querySelectorAll(`[data-v-owner="${t.uid}"]`)).forEach(e=>K(e,n))},i=()=>{let r=e(t.proxy);t.ce?K(t.ce,r):G(t.subTree,r),n(r)};ie(()=>{ae(i)}),s(()=>{se(i,r,{flush:`post`});let e=new MutationObserver(i);e.observe(t.subTree.el.parentNode,{childList:!0}),m(()=>e.disconnect())})}function G(e,t){if(e.shapeFlag&128){let n=e.suspense;e=n.activeBranch,n.pendingBranch&&!n.isHydrating&&n.effects.push(()=>{G(n.activeBranch,t)})}for(;e.component;)e=e.component.subTree;if(e.shapeFlag&1&&e.el)K(e.el,t);else if(e.type===ce)e.children.forEach(e=>G(e,t));else if(e.type===ye){let{el:n,anchor:r}=e;for(;n&&(K(n,t),n!==r);)n=n.nextSibling}}function K(e,t){if(e.nodeType===1){let n=e.style,r=``;for(let e in t){let i=me(t[e]);n.setProperty(`--${e}`,i),r+=`--${e}: ${i};`}n[Re]=r}}var Be=/(?:^|;)\s*display\s*:/;function Ve(e,t,n){let r=e.style,i=w(n),a=!1;if(n&&!i){if(t)if(w(t))for(let e of t.split(`;`)){let t=e.slice(0,e.indexOf(`:`)).trim();n[t]??q(r,t,``)}else for(let e in t)n[e]??q(r,e,``);for(let i in n){i===`display`&&(a=!0);let o=n[i];o==null?q(r,i,``):Ge(e,i,!w(t)&&t?t[i]:void 0,o)||q(r,i,o)}}else if(i){if(t!==n){let e=r[Re];e&&(n+=`;`+e),r.cssText=n,a=Be.test(n)}}else t&&e.removeAttribute(`style`);H in e&&(e[H]=a?r.display:``,e[U]&&(r.display=`none`))}var He=/\s*!important$/;function q(e,t,n){if(x(n))n.forEach(n=>q(e,t,n));else if(n??=``,t.startsWith(`--`))e.setProperty(t,n);else{let r=We(e,t);He.test(n)?e.setProperty(E(r),n.replace(He,``),`important`):e[r]=n}}var Ue=[`Webkit`,`Moz`,`ms`],J={};function We(e,t){let n=J[t];if(n)return n;let r=y(t);if(r!==`filter`&&r in e)return J[t]=r;r=de(r);for(let n=0;ntt||=(nt.then(()=>tt=0),Date.now());function it(e,t){let r=e=>{if(!e._vts)e._vts=Date.now();else if(e._vts<=r.attached)return;let i=r.value;if(x(i)){let r=e.stopImmediatePropagation;e.stopImmediatePropagation=()=>{r.call(e),e._stopped=!0};let a=i.slice(),o=[e];for(let r=0;re.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,ot=(e,t,n,r,i,a)=>{let o=i===`svg`;t===`class`?Ie(e,r,o):t===`style`?Ve(e,n,r):ne(t)?f(t)||Ze(e,t,n,r,a):(t[0]===`.`?(t=t.slice(1),!0):t[0]===`^`?(t=t.slice(1),!1):st(e,t,r,o))?(Je(e,t,r),!e.tagName.includes(`-`)&&(t===`value`||t===`checked`||t===`selected`)&&qe(e,t,r,o,a,t!==`value`)):e._isVueCE&&(ct(e,t)||e._def.__asyncLoader&&(/[A-Z]/.test(t)||!w(r)))?Je(e,y(t),r,a,t):(t===`true-value`?e._trueValue=r:t===`false-value`&&(e._falseValue=r),qe(e,t,r,o))};function st(e,t,n,r){if(r)return!!(t===`innerHTML`||t===`textContent`||t in e&&at(t)&&o(n));if(t===`spellcheck`||t===`draggable`||t===`translate`||t===`autocorrect`||t===`sandbox`&&e.tagName===`IFRAME`||t===`form`||t===`list`&&e.tagName===`INPUT`||t===`type`&&e.tagName===`TEXTAREA`)return!1;if(t===`width`||t===`height`){let t=e.tagName;if(t===`IMG`||t===`VIDEO`||t===`CANVAS`||t===`SOURCE`)return!1}return at(t)&&w(n)?!1:t in e}function ct(e,t){let n=e._def.props;if(!n)return!1;let r=y(t);return Array.isArray(n)?n.some(e=>y(e)===r):Object.keys(n).some(e=>y(e)===r)}var lt=new WeakMap,ut=new WeakMap,X=Symbol(`_moveCb`),dt=Symbol(`_enterCb`),ft=(e=>(delete e.props.mode,e))({name:`TransitionGroup`,props:e({},Oe,{tag:String,moveClass:String}),setup(e,{slots:t}){let n=a(),r=le(),i,o;return pe(()=>{if(!i.length)return;let t=e.moveClass||`${e.name||`v`}-move`;if(!_t(i[0].el,n.vnode.el,t)){i=[];return}i.forEach(pt),i.forEach(mt);let r=i.filter(ht);V(n.vnode.el),r.forEach(e=>{let n=e.el,r=n.style;R(n,t),r.transform=r.webkitTransform=r.transitionDuration=``;let i=n[X]=e=>{e&&e.target!==n||(!e||e.propertyName.endsWith(`transform`))&&(n.removeEventListener(`transitionend`,i),n[X]=null,z(n,t))};n.addEventListener(`transitionend`,i)}),i=[]}),()=>{let a=re(e),s=I(a),c=a.tag||ce;if(i=[],o)for(let e=0;e{e.split(/\s+/).forEach(e=>e&&r.classList.remove(e))}),n.split(/\s+/).forEach(e=>e&&r.classList.add(e)),r.style.display=`none`;let a=t.nodeType===1?t:t.parentNode;a.appendChild(r);let{hasTransform:o}=Pe(r);return a.removeChild(r),o}var Z=e=>{let t=e.props[`onUpdate:modelValue`]||!1;return x(t)?e=>_(t,e):t};function vt(e){e.target.composing=!0}function yt(e){let t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event(`input`)))}var Q=Symbol(`_assign`);function bt(e,t,n){return t&&(e=e.trim()),n&&(e=c(e)),e}var xt={created(e,{modifiers:{lazy:t,trim:n,number:r}},i){e[Q]=Z(i);let a=r||i.props&&i.props.type===`number`;Y(e,t?`change`:`input`,t=>{t.target.composing||e[Q](bt(e.value,n,a))}),(n||a)&&Y(e,`change`,()=>{e.value=bt(e.value,n,a)}),t||(Y(e,`compositionstart`,vt),Y(e,`compositionend`,yt),Y(e,`change`,yt))},mounted(e,{value:t}){e.value=t??``},beforeUpdate(e,{value:t,oldValue:n,modifiers:{lazy:r,trim:i,number:a}},o){if(e[Q]=Z(o),e.composing)return;let s=(a||e.type===`number`)&&!/^0\d/.test(e.value)?c(e.value):e.value,l=t??``;if(s===l)return;let u=e.getRootNode();(u instanceof Document||u instanceof ShadowRoot)&&u.activeElement===e&&e.type!==`range`&&(r&&t===n||i&&e.value.trim()===l)||(e.value=l)}},St={deep:!0,created(e,t,n){e[Q]=Z(n),Y(e,`change`,()=>{let t=e._modelValue,n=$(e),r=e.checked,i=e[Q];if(x(t)){let e=T(t,n),a=e!==-1;if(r&&!a)i(t.concat(n));else if(!r&&a){let n=[...t];n.splice(e,1),i(n)}}else if(O(t)){let e=new Set(t);r?e.add(n):e.delete(n),i(e)}else i(Et(e,r))})},mounted:Ct,beforeUpdate(e,t,n){e[Q]=Z(n),Ct(e,t,n)}};function Ct(e,{value:t,oldValue:n},r){e._modelValue=t;let i;if(x(t))i=T(t,r.props.value)>-1;else if(O(t))i=t.has(r.props.value);else{if(t===n)return;i=S(t,Et(e,!0))}e.checked!==i&&(e.checked=i)}var wt={deep:!0,created(e,{value:t,modifiers:{number:n}},r){e._modelValue=t,Y(e,`change`,()=>{let t=Array.prototype.filter.call(e.options,e=>e.selected).map(e=>n?c($(e)):$(e));e[Q](e.multiple?O(e._modelValue)?new Set(t):t:t[0]),e._assigning=!0,l(()=>{e._assigning=!1})}),e[Q]=Z(r)},mounted(e,{value:t}){Tt(e,t)},beforeUpdate(e,{value:t},n){e._modelValue=t,e[Q]=Z(n)},updated(e,{value:t}){e._assigning||Tt(e,t)}};function Tt(e,t){let n=e.multiple,r=x(t);if(!(n&&!r&&!O(t))){for(let i=0,a=e.options.length;iString(e)===String(o)):T(t,o)>-1}else a.selected=t.has(o);else if(S($(a),t)){e.selectedIndex!==i&&(e.selectedIndex=i);return}}!n&&e.selectedIndex!==-1&&(e.selectedIndex=-1)}}function $(e){return`_value`in e?e._value:e.value}function Et(e,t){let n=t?`_trueValue`:`_falseValue`;return n in e?e[n]:t}var Dt=[`ctrl`,`shift`,`alt`,`meta`],Ot={stop:e=>e.stopPropagation(),prevent:e=>e.preventDefault(),self:e=>e.target!==e.currentTarget,ctrl:e=>!e.ctrlKey,shift:e=>!e.shiftKey,alt:e=>!e.altKey,meta:e=>!e.metaKey,left:e=>`button`in e&&e.button!==0,middle:e=>`button`in e&&e.button!==1,right:e=>`button`in e&&e.button!==2,exact:(e,t)=>Dt.some(n=>e[`${n}Key`]&&!t.includes(n))},kt=(e,t)=>{if(!e)return e;let n=e._withMods||={},r=t.join(`.`);return n[r]||(n[r]=((n,...r)=>{for(let e=0;e{let n=e._withKeys||={},r=t.join(`.`);return n[r]||(n[r]=(n=>{if(!(`key`in n))return;let r=E(n.key);if(t.some(e=>e===r||At[e]===r))return e(n)}))},Mt=e({patchProp:ot},Ee),Nt;function Pt(){return Nt||=ue(Mt)}var Ft=((...e)=>{let t=Pt().createApp(...e),{mount:n}=t;return t.mount=e=>{let r=Lt(e);if(!r)return;let i=t._component;!o(i)&&!i.render&&!i.template&&(i.template=r.innerHTML),r.nodeType===1&&(r.textContent=``);let a=n(r,!1,It(r));return r instanceof Element&&(r.removeAttribute(`v-cloak`),r.setAttribute(`data-v-app`,``)),a},t});function It(e){if(e instanceof SVGElement)return`svg`;if(typeof MathMLElement==`function`&&e instanceof MathMLElement)return`mathml`}function Lt(e){return w(e)?document.querySelector(e):e}var Rt={"vuesax-linear:add":` +import{A as e,B as t,Ct as n,Dt as r,E as i,Et as a,Ft as o,H as s,M as c,O as l,Ot as u,P as d,S as f,St as p,T as m,Tt as h,U as g,V as _,_ as v,_t as y,a as b,b as ee,bt as x,c as S,dt as te,f as C,ft as w,gt as T,ht as E,i as ne,j as re,jt as ie,k as ae,kt as D,mt as O,n as oe,ot as se,p as ce,pt as le,r as ue,s as de,t as fe,ut as pe,v as me,vt as k,wt as he,xt as ge,y as _e,yt as ve,z as ye}from"./_plugin-vue_export-helper-1xMDlcEE.js";var A=void 0,be=typeof window<`u`&&window.trustedTypes;if(be)try{A=be.createPolicy(`vue`,{createHTML:e=>e})}catch{}var xe=A?e=>A.createHTML(e):e=>e,Se=`http://www.w3.org/2000/svg`,Ce=`http://www.w3.org/1998/Math/MathML`,j=typeof document<`u`?document:null,M=j&&j.createElement(`template`),we={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{let t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,r)=>{let i=t===`svg`?j.createElementNS(Se,e):t===`mathml`?j.createElementNS(Ce,e):n?j.createElement(e,{is:n}):j.createElement(e);return e===`select`&&r&&r.multiple!=null&&i.setAttribute(`multiple`,r.multiple),i},createText:e=>j.createTextNode(e),createComment:e=>j.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>j.querySelector(e),setScopeId(e,t){e.setAttribute(t,``)},insertStaticContent(e,t,n,r,i,a){let o=n?n.previousSibling:t.lastChild;if(i&&(i===a||i.nextSibling))for(;t.insertBefore(i.cloneNode(!0),n),!(i===a||!(i=i.nextSibling)););else{M.innerHTML=xe(r===`svg`?`${e}`:r===`mathml`?`${e}`:e);let i=M.content;if(r===`svg`||r===`mathml`){let e=i.firstChild;for(;e.firstChild;)i.appendChild(e.firstChild);i.removeChild(e)}t.insertBefore(i,n)}return[o?o.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},N=`transition`,P=`animation`,F=Symbol(`_vtc`),Te={name:String,type:String,css:{type:Boolean,default:!0},duration:[String,Number,Object],enterFromClass:String,enterActiveClass:String,enterToClass:String,appearFromClass:String,appearActiveClass:String,appearToClass:String,leaveFromClass:String,leaveActiveClass:String,leaveToClass:String},Ee=O({},ue,Te),De=(e=>(e.displayName=`Transition`,e.props=Ee,e))((e,{slots:t})=>f(oe,ke(e),t)),I=(e,t=[])=>{k(e)?e.forEach(e=>e(...t)):e&&e(...t)},Oe=e=>e?k(e)?e.some(e=>e.length>1):e.length>1:!1;function ke(e){let t={};for(let n in e)n in Te||(t[n]=e[n]);if(e.css===!1)return t;let{name:n=`v`,type:r,duration:i,enterFromClass:a=`${n}-enter-from`,enterActiveClass:o=`${n}-enter-active`,enterToClass:s=`${n}-enter-to`,appearFromClass:c=a,appearActiveClass:l=o,appearToClass:u=s,leaveFromClass:d=`${n}-leave-from`,leaveActiveClass:f=`${n}-leave-active`,leaveToClass:p=`${n}-leave-to`}=e,m=Ae(i),h=m&&m[0],g=m&&m[1],{onBeforeEnter:_,onEnter:v,onEnterCancelled:y,onLeave:b,onLeaveCancelled:ee,onBeforeAppear:x=_,onAppear:S=v,onAppearCancelled:te=y}=t,C=(e,t,n,r)=>{e._enterCancelled=r,z(e,t?u:s),z(e,t?l:o),n&&n()},w=(e,t)=>{e._isLeaving=!1,z(e,d),z(e,p),z(e,f),t&&t()},T=e=>(t,n)=>{let i=e?S:v,o=()=>C(t,e,n);I(i,[t,o]),je(()=>{z(t,e?c:a),R(t,e?u:s),Oe(i)||Ne(t,r,h,o)})};return O(t,{onBeforeEnter(e){I(_,[e]),R(e,a),R(e,o)},onBeforeAppear(e){I(x,[e]),R(e,c),R(e,l)},onEnter:T(!1),onAppear:T(!0),onLeave(e,t){e._isLeaving=!0;let n=()=>w(e,t);R(e,d),e._enterCancelled?(R(e,f),B(e)):(B(e),R(e,f)),je(()=>{e._isLeaving&&(z(e,d),R(e,p),Oe(b)||Ne(e,r,g,n))}),I(b,[e,n])},onEnterCancelled(e){C(e,!1,void 0,!0),I(y,[e])},onAppearCancelled(e){C(e,!0,void 0,!0),I(te,[e])},onLeaveCancelled(e){w(e),I(ee,[e])}})}function Ae(e){if(e==null)return null;if(ge(e))return[L(e.enter),L(e.leave)];{let t=L(e);return[t,t]}}function L(e){return o(e)}function R(e,t){t.split(/\s+/).forEach(t=>t&&e.classList.add(t)),(e[F]||(e[F]=new Set)).add(t)}function z(e,t){t.split(/\s+/).forEach(t=>t&&e.classList.remove(t));let n=e[F];n&&(n.delete(t),n.size||(e[F]=void 0))}function je(e){requestAnimationFrame(()=>{requestAnimationFrame(e)})}var Me=0;function Ne(e,t,n,r){let i=e._endId=++Me,a=()=>{i===e._endId&&r()};if(n!=null)return setTimeout(a,n);let{type:o,timeout:s,propCount:c}=Pe(e,t);if(!o)return r();let l=o+`end`,u=0,d=()=>{e.removeEventListener(l,f),a()},f=t=>{t.target===e&&++u>=c&&d()};setTimeout(()=>{u(n[e]||``).split(`, `),i=r(`${N}Delay`),a=r(`${N}Duration`),o=Fe(i,a),s=r(`${P}Delay`),c=r(`${P}Duration`),l=Fe(s,c),u=null,d=0,f=0;t===N?o>0&&(u=N,d=o,f=a.length):t===P?l>0&&(u=P,d=l,f=c.length):(d=Math.max(o,l),u=d>0?o>l?N:P:null,f=u?u===N?a.length:c.length:0);let p=u===N&&/\b(?:transform|all)(?:,|$)/.test(r(`${N}Property`).toString());return{type:u,timeout:d,propCount:f,hasTransform:p}}function Fe(e,t){for(;e.lengthIe(t)+Ie(e[n])))}function Ie(e){return e===`auto`?0:Number(e.slice(0,-1).replace(`,`,`.`))*1e3}function B(e){return(e?e.ownerDocument:document).body.offsetHeight}function Le(e,t,n){let r=e[F];r&&(t=(t?[t,...r]:[...r]).join(` `)),t==null?e.removeAttribute(`class`):n?e.setAttribute(`class`,t):e.className=t}var V=Symbol(`_vod`),H=Symbol(`_vsh`),Re={name:`show`,beforeMount(e,{value:t},{transition:n}){e[V]=e.style.display===`none`?``:e.style.display,n&&t?n.beforeEnter(e):U(e,t)},mounted(e,{value:t},{transition:n}){n&&t&&n.enter(e)},updated(e,{value:t,oldValue:n},{transition:r}){!t!=!n&&(r?t?(r.beforeEnter(e),U(e,!0),r.enter(e)):r.leave(e,()=>{U(e,!1)}):U(e,t))},beforeUnmount(e,{value:t}){U(e,t)}};function U(e,t){e.style.display=t?e[V]:`none`,e[H]=!t}var ze=Symbol(``);function Be(t){let n=_e();if(!n)return;let r=n.ut=(e=t(n.proxy))=>{Array.from(document.querySelectorAll(`[data-v-owner="${n.uid}"]`)).forEach(t=>G(t,e))},i=()=>{let e=t(n.proxy);n.ce?G(n.ce,e):W(n.subTree,e),r(e)};l(()=>{d(i)}),ae(()=>{g(i,te,{flush:`post`});let t=new MutationObserver(i);t.observe(n.subTree.el.parentNode,{childList:!0}),e(()=>t.disconnect())})}function W(e,t){if(e.shapeFlag&128){let n=e.suspense;e=n.activeBranch,n.pendingBranch&&!n.isHydrating&&n.effects.push(()=>{W(n.activeBranch,t)})}for(;e.component;)e=e.component.subTree;if(e.shapeFlag&1&&e.el)G(e.el,t);else if(e.type===ne)e.children.forEach(e=>W(e,t));else if(e.type===b){let{el:n,anchor:r}=e;for(;n&&(G(n,t),n!==r);)n=n.nextSibling}}function G(e,t){if(e.nodeType===1){let n=e.style,r=``;for(let e in t){let i=ie(t[e]);n.setProperty(`--${e}`,i),r+=`--${e}: ${i};`}n[ze]=r}}var Ve=/(?:^|;)\s*display\s*:/;function He(e,t,n){let r=e.style,i=h(n),a=!1;if(n&&!i){if(t)if(h(t))for(let e of t.split(`;`)){let t=e.slice(0,e.indexOf(`:`)).trim();n[t]??K(r,t,``)}else for(let e in t)n[e]??K(r,e,``);for(let i in n){i===`display`&&(a=!0);let o=n[i];o==null?K(r,i,``):Ke(e,i,!h(t)&&t?t[i]:void 0,o)||K(r,i,o)}}else if(i){if(t!==n){let e=r[ze];e&&(n+=`;`+e),r.cssText=n,a=Ve.test(n)}}else t&&e.removeAttribute(`style`);V in e&&(e[V]=a?r.display:``,e[H]&&(r.display=`none`))}var Ue=/\s*!important$/;function K(e,t,n){if(k(n))n.forEach(n=>K(e,t,n));else if(n??=``,t.startsWith(`--`))e.setProperty(t,n);else{let r=Ge(e,t);Ue.test(n)?e.setProperty(E(r),n.replace(Ue,``),`important`):e[r]=n}}var We=[`Webkit`,`Moz`,`ms`],q={};function Ge(e,t){let n=q[t];if(n)return n;let r=w(t);if(r!==`filter`&&r in e)return q[t]=r;r=le(r);for(let n=0;ntt||=(nt.then(()=>tt=0),Date.now());function it(e,t){let n=e=>{if(!e._vts)e._vts=Date.now();else if(e._vts<=n.attached)return;let r=n.value;if(k(r)){let n=e.stopImmediatePropagation;e.stopImmediatePropagation=()=>{n.call(e),e._stopped=!0};let i=r.slice(),a=[e];for(let n=0;ne.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,ot=(e,t,n,r,i,a)=>{let o=i===`svg`;t===`class`?Le(e,r,o):t===`style`?He(e,n,r):p(t)?x(t)||Ze(e,t,n,r,a):(t[0]===`.`?(t=t.slice(1),!0):t[0]===`^`?(t=t.slice(1),!1):st(e,t,r,o))?(Je(e,t,r),!e.tagName.includes(`-`)&&(t===`value`||t===`checked`||t===`selected`)&&qe(e,t,r,o,a,t!==`value`)):e._isVueCE&&(ct(e,t)||e._def.__asyncLoader&&(/[A-Z]/.test(t)||!h(r)))?Je(e,w(t),r,a,t):(t===`true-value`?e._trueValue=r:t===`false-value`&&(e._falseValue=r),qe(e,t,r,o))};function st(e,t,n,r){if(r)return!!(t===`innerHTML`||t===`textContent`||t in e&&at(t)&&ve(n));if(t===`spellcheck`||t===`draggable`||t===`translate`||t===`autocorrect`||t===`sandbox`&&e.tagName===`IFRAME`||t===`form`||t===`list`&&e.tagName===`INPUT`||t===`type`&&e.tagName===`TEXTAREA`)return!1;if(t===`width`||t===`height`){let t=e.tagName;if(t===`IMG`||t===`VIDEO`||t===`CANVAS`||t===`SOURCE`)return!1}return at(t)&&h(n)?!1:t in e}function ct(e,t){let n=e._def.props;if(!n)return!1;let r=w(t);return Array.isArray(n)?n.some(e=>w(e)===r):Object.keys(n).some(e=>w(e)===r)}var lt=new WeakMap,ut=new WeakMap,X=Symbol(`_moveCb`),dt=Symbol(`_enterCb`),ft=(e=>(delete e.props.mode,e))({name:`TransitionGroup`,props:O({},Ee,{tag:String,moveClass:String}),setup(e,{slots:n}){let r=_e(),i=s(),a,o;return re(()=>{if(!a.length)return;let t=e.moveClass||`${e.name||`v`}-move`;if(!_t(a[0].el,r.vnode.el,t)){a=[];return}a.forEach(pt),a.forEach(mt);let n=a.filter(ht);B(r.vnode.el),n.forEach(e=>{let n=e.el,r=n.style;R(n,t),r.transform=r.webkitTransform=r.transitionDuration=``;let i=n[X]=e=>{e&&e.target!==n||(!e||e.propertyName.endsWith(`transform`))&&(n.removeEventListener(`transitionend`,i),n[X]=null,z(n,t))};n.addEventListener(`transitionend`,i)}),a=[]}),()=>{let s=se(e),c=ke(s),l=s.tag||ne;if(a=[],o)for(let e=0;e{e.split(/\s+/).forEach(e=>e&&r.classList.remove(e))}),n.split(/\s+/).forEach(e=>e&&r.classList.add(e)),r.style.display=`none`;let a=t.nodeType===1?t:t.parentNode;a.appendChild(r);let{hasTransform:o}=Pe(r);return a.removeChild(r),o}var Z=e=>{let t=e.props[`onUpdate:modelValue`]||!1;return k(t)?e=>y(t,e):t};function vt(e){e.target.composing=!0}function yt(e){let t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event(`input`)))}var Q=Symbol(`_assign`);function bt(e,t,n){return t&&(e=e.trim()),n&&(e=D(e)),e}var xt={created(e,{modifiers:{lazy:t,trim:n,number:r}},i){e[Q]=Z(i);let a=r||i.props&&i.props.type===`number`;Y(e,t?`change`:`input`,t=>{t.target.composing||e[Q](bt(e.value,n,a))}),(n||a)&&Y(e,`change`,()=>{e.value=bt(e.value,n,a)}),t||(Y(e,`compositionstart`,vt),Y(e,`compositionend`,yt),Y(e,`change`,yt))},mounted(e,{value:t}){e.value=t??``},beforeUpdate(e,{value:t,oldValue:n,modifiers:{lazy:r,trim:i,number:a}},o){if(e[Q]=Z(o),e.composing)return;let s=(a||e.type===`number`)&&!/^0\d/.test(e.value)?D(e.value):e.value,c=t??``;if(s===c)return;let l=e.getRootNode();(l instanceof Document||l instanceof ShadowRoot)&&l.activeElement===e&&e.type!==`range`&&(r&&t===n||i&&e.value.trim()===c)||(e.value=c)}},St={deep:!0,created(e,t,r){e[Q]=Z(r),Y(e,`change`,()=>{let t=e._modelValue,r=$(e),i=e.checked,a=e[Q];if(k(t)){let e=u(t,r),n=e!==-1;if(i&&!n)a(t.concat(r));else if(!i&&n){let n=[...t];n.splice(e,1),a(n)}}else if(n(t)){let e=new Set(t);i?e.add(r):e.delete(r),a(e)}else a(Et(e,i))})},mounted:Ct,beforeUpdate(e,t,n){e[Q]=Z(n),Ct(e,t,n)}};function Ct(e,{value:t,oldValue:i},a){e._modelValue=t;let o;if(k(t))o=u(t,a.props.value)>-1;else if(n(t))o=t.has(a.props.value);else{if(t===i)return;o=r(t,Et(e,!0))}e.checked!==o&&(e.checked=o)}var wt={deep:!0,created(e,{value:t,modifiers:{number:r}},a){e._modelValue=t,Y(e,`change`,()=>{let t=Array.prototype.filter.call(e.options,e=>e.selected).map(e=>r?D($(e)):$(e));e[Q](e.multiple?n(e._modelValue)?new Set(t):t:t[0]),e._assigning=!0,i(()=>{e._assigning=!1})}),e[Q]=Z(a)},mounted(e,{value:t}){Tt(e,t)},beforeUpdate(e,{value:t},n){e._modelValue=t,e[Q]=Z(n)},updated(e,{value:t}){e._assigning||Tt(e,t)}};function Tt(e,t){let i=e.multiple,a=k(t);if(!(i&&!a&&!n(t))){for(let n=0,o=e.options.length;nString(e)===String(s)):u(t,s)>-1}else o.selected=t.has(s);else if(r($(o),t)){e.selectedIndex!==n&&(e.selectedIndex=n);return}}!i&&e.selectedIndex!==-1&&(e.selectedIndex=-1)}}function $(e){return`_value`in e?e._value:e.value}function Et(e,t){let n=t?`_trueValue`:`_falseValue`;return n in e?e[n]:t}var Dt=[`ctrl`,`shift`,`alt`,`meta`],Ot={stop:e=>e.stopPropagation(),prevent:e=>e.preventDefault(),self:e=>e.target!==e.currentTarget,ctrl:e=>!e.ctrlKey,shift:e=>!e.shiftKey,alt:e=>!e.altKey,meta:e=>!e.metaKey,left:e=>`button`in e&&e.button!==0,middle:e=>`button`in e&&e.button!==1,right:e=>`button`in e&&e.button!==2,exact:(e,t)=>Dt.some(n=>e[`${n}Key`]&&!t.includes(n))},kt=(e,t)=>{if(!e)return e;let n=e._withMods||={},r=t.join(`.`);return n[r]||(n[r]=((n,...r)=>{for(let e=0;e{let n=e._withKeys||={},r=t.join(`.`);return n[r]||(n[r]=(n=>{if(!(`key`in n))return;let r=E(n.key);if(t.some(e=>e===r||At[e]===r))return e(n)}))},Mt=O({patchProp:ot},we),Nt;function Pt(){return Nt||=ce(Mt)}var Ft=((...e)=>{let t=Pt().createApp(...e),{mount:n}=t;return t.mount=e=>{let r=Lt(e);if(!r)return;let i=t._component;!ve(i)&&!i.render&&!i.template&&(i.template=r.innerHTML),r.nodeType===1&&(r.textContent=``);let a=n(r,!1,It(r));return r instanceof Element&&(r.removeAttribute(`v-cloak`),r.setAttribute(`data-v-app`,``)),a},t});function It(e){if(e instanceof SVGElement)return`svg`;if(typeof MathMLElement==`function`&&e instanceof MathMLElement)return`mathml`}function Lt(e){return h(e)?document.querySelector(e):e}var Rt={"vuesax-linear:add":` @@ -378,4 +378,4 @@ import{At as e,Bt as t,C as n,Dt as r,Et as i,F as a,Ft as o,G as s,Gt as c,H as -`},zt=[`aria-hidden`,`innerHTML`],Bt=ge(b({inheritAttrs:!1,__name:`BasicIcon`,props:{icon:{},color:{default:null},size:{default:24},strokeWidth:{default:1.5}},setup(e){ze(e=>({v14b957da:String(t.strokeWidth)}));let t=e,n=he(),r=D(()=>{let e=Rt[t.icon];if(!e)return``;let n=String(t.size);return e.replace(/\swidth="[^"]*"/,` width="${n}"`).replace(/\sheight="[^"]*"/,` height="${n}"`).replace(/stroke="#[^"]*"/g,`stroke="currentColor"`)}),a=D(()=>({color:t.color||void 0,width:`${t.size}px`,height:`${t.size}px`,display:`inline-flex`,alignItems:`center`,justifyContent:`center`,lineHeight:0,flexShrink:0})),o=D(()=>n[`aria-hidden`]??!0);return(e,t)=>(p(),v(`span`,C({class:`basic-icon`},i(n),{style:a.value,"aria-hidden":o.value,innerHTML:r.value}),null,16,zt))}}),[[`__scopeId`,`data-v-94187925`]]);export{St as a,Le as c,Ft as i,jt as l,ke as n,wt as o,ft as r,xt as s,Bt as t,kt as u}; \ No newline at end of file +`},zt=[`aria-hidden`,`innerHTML`],Bt=fe(me({inheritAttrs:!1,__name:`BasicIcon`,props:{icon:{},color:{default:null},size:{default:24},strokeWidth:{default:1.5}},setup(e){Be(e=>({v14b957da:String(t.strokeWidth)}));let t=e,n=_(),r=S(()=>{let e=Rt[t.icon];if(!e)return``;let n=String(t.size);return e.replace(/\swidth="[^"]*"/,` width="${n}"`).replace(/\sheight="[^"]*"/,` height="${n}"`).replace(/stroke="#[^"]*"/g,`stroke="currentColor"`)}),i=S(()=>({color:t.color||void 0,width:`${t.size}px`,height:`${t.size}px`,display:`inline-flex`,alignItems:`center`,justifyContent:`center`,lineHeight:0,flexShrink:0})),a=S(()=>n[`aria-hidden`]??!0);return(e,t)=>(c(),C(`span`,m({class:`basic-icon`},pe(n),{style:i.value,"aria-hidden":a.value,innerHTML:r.value}),null,16,zt))}}),[[`__scopeId`,`data-v-94187925`]]);export{St as a,Re as c,Ft as i,jt as l,De as n,wt as o,ft as r,xt as s,Bt as t,kt as u}; \ No newline at end of file diff --git a/dist/assets/CartView-BFjbSmpZ.js b/dist/assets/CartView-BFjbSmpZ.js deleted file mode 100644 index 1a60e7c..0000000 --- a/dist/assets/CartView-BFjbSmpZ.js +++ /dev/null @@ -1 +0,0 @@ -import{D as e,E as t,Et as n,G as r,J as i,Kt as a,M as o,N as s,O as c,P as l,T as u,Xt as d,Z as f,b as p,et as m,g as h,st as g,t as _,vt as v,w as y}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";import{t as b,u as x}from"./BasicIcon-BXxbbWA_.js";import{a as S,o as C}from"./format-C72AoJ2H.js";import{A as w,D as T,O as E,d as D,n as O,o as k,t as A,x as ee}from"./index-BAQfYU-Q.js";import{t as te}from"./EmptyState-D-8eFOUi.js";import{t as j}from"./IconChevronBack-DfGoZJJk.js";import{t as M}from"./FormErrorBanner-DI5hhxpk.js";import{t as N}from"./IconDiamond-R4uguqMC.js";import{t as P}from"./CheckoutStepper-Dw7-dJI5.js";import{t as F}from"./IconClipboardEmpty-BdL7YkiR.js";import{t as I}from"./IconLayoutGrid-DTCDTb_O.js";function L(){let e=h(),t=w(),n=D(),i=v(!1),a=v(!1),o=v(``),s=y(()=>t.activeCart?.items??[]),c=y(()=>s.value.length===0),l=y(()=>t.companyNamesLabel||t.activeCart?.companyName||``),u=y(()=>t.companySummaries);async function d(e){let n=s.value.find(t=>t.id===e);await A({title:`حذف از سبد`,message:n?`آیا از حذف «${n.productName}» از سبد خرید مطمئن هستید؟`:`آیا از حذف این آیتم از سبد خرید مطمئن هستید؟`,confirmLabel:`حذف`,cancelLabel:`انصراف`,tone:`danger`})&&t.removeItem(e)}async function f(){if(!(!t.activeCart||s.value.length===0||a.value)){a.value=!0,o.value=``;try{if(await t.hydrate(),!t.activeCart?.items.length){o.value=`سبد خرید خالی است یا با سرور همگام نشد.`;return}let r=await n.submitOrder(t.activeCart);await t.hydrate(),e.replace(`/orders/${r.id}/success`)}catch(e){o.value=e instanceof Error?e.message:`ثبت سفارش ناموفق بود.`,await t.hydrate()}finally{a.value=!1}}}function p(){if(s.value.length!==0){if(t.isFull){i.value=!0;return}f()}}function m(){i.value=!1,f()}async function g(){await t.createNewCartForSameCompany(),i.value=!1,e.push(`/categories`)}return r(()=>{t.ensureActiveCartForCartPage()}),{cartStore:t,items:s,isEmpty:c,companyName:l,companySummaries:u,showFullDialog:i,submitting:a,submitError:o,removeItem:d,proceedToCheckout:p,proceedAnyway:m,createNewInvoice:g}}var R=l({__name:`IconTrash`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(n,r)=>(i(),t(b,{icon:`vuesax-linear:trash`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),z={class:`cart-mobile-page`},B={class:`cart-mobile-page__nav`},V={type:`button`,class:`nav-btn nav-btn--ghost`,"aria-hidden":`true`,tabindex:`-1`},H={key:0,class:`cart-mobile-page__body`},U={key:0,class:`cart-mobile-page__meta`},W={class:`cart-mobile-page__scroll`},G={class:`cart-mobile-table`},K={class:`col-product`},q={class:`col-meterage`},J={class:`col-delete`},Y=[`onClick`],X={class:`cart-mobile-page__footer`},Z={class:`cart-mobile-summary`},Q={class:`cart-mobile-summary__row`},ne={class:`cart-mobile-summary__cap`},re={key:1,class:`cart-mobile-summary__row`},ie={class:`cart-mobile-summary__row`},ae=_(l({__name:`MobileCartPage`,props:{items:{},companyName:{},companySummaries:{},totalMeterage:{},maxMeterage:{},remainingCapacity:{},isEmpty:{type:Boolean},submitting:{type:Boolean}},emits:[`back`,`remove`,`checkout`,`selectCompany`],setup(r,{emit:a}){let l=a;return(a,m)=>(i(),c(`div`,z,[u(`header`,B,[u(`button`,{type:`button`,class:`nav-btn`,"aria-label":`بازگشت`,onClick:m[0]||=e=>l(`back`)},[s(j,{size:20})]),m[3]||=u(`h1`,{class:`cart-mobile-page__title`},`سبد خرید`,-1),u(`button`,V,[s(j,{size:18,class:`nav-btn__flip`})])]),r.isEmpty?(i(),t(te,{key:1,variant:`cart`,message:`از دسته‌بندی یا کالیته محصول را انتخاب کنید`},{default:g(()=>[s(O,{onClick:m[2]||=e=>l(`selectCompany`)},{default:g(()=>[...m[10]||=[o(`مشاهده محصولات`,-1)]]),_:1})]),_:1})):(i(),c(`div`,H,[r.companyName?(i(),c(`p`,U,` تأمین‌کننده: `+d(r.companyName),1)):e(``,!0),u(`div`,W,[u(`div`,G,[m[4]||=u(`div`,{class:`cart-mobile-table__head`},[u(`span`,null,`محصول`),u(`span`,null,`متراژ (متر)`),u(`span`,null,`حذف`)],-1),(i(!0),c(p,null,f(r.items,e=>(i(),c(`div`,{key:e.id,class:`cart-mobile-table__row`},[u(`div`,K,[u(`strong`,null,d(e.productName),1),u(`span`,null,`کد: `+d(e.productCode),1)]),u(`div`,q,d(n(C)(e.meterage)),1),u(`div`,J,[u(`button`,{type:`button`,"aria-label":`حذف`,onClick:t=>l(`remove`,e.id)},[s(R,{size:20})],8,Y)])]))),128))])]),u(`div`,X,[u(`div`,Z,[u(`div`,Q,[m[5]||=u(`span`,null,`جمع متراژ کل`,-1),u(`strong`,null,d(n(S)(r.totalMeterage)),1)]),r.companySummaries?.length?(i(!0),c(p,{key:0},f(r.companySummaries,e=>(i(),c(`div`,{key:e.companyId,class:`cart-mobile-summary__row cart-mobile-summary__row--sub`},[u(`span`,null,d(e.companyName),1),u(`strong`,null,[o(d(n(S)(e.meterage))+` `,1),u(`span`,ne,`/ `+d(n(S)(e.maxMeterage)),1)])]))),128)):(i(),c(`div`,re,[m[6]||=u(`span`,null,`حداکثر مجاز`,-1),u(`strong`,null,d(n(S)(r.maxMeterage)),1)])),u(`div`,ie,[m[7]||=u(`span`,null,`باقی مانده`,-1),u(`strong`,null,d(n(S)(r.remainingCapacity)),1)])]),m[9]||=u(`p`,{class:`cart-mobile-page__hint`},` پس از ثبت سفارش، کارشناسان قیمت‌گذاری می‌کنند و فاکتور برای شما صادر می‌شود. `,-1),s(O,{block:``,loading:r.submitting,onClick:m[1]||=e=>l(`checkout`)},{default:g(()=>[...m[8]||=[o(`ثبت پیش‌سفارش`,-1)]]),_:1},8,[`loading`])])]))]))}}),[[`__scopeId`,`data-v-346cdc9a`]]),oe=l({__name:`IconLightbulb`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(n,r)=>(i(),t(b,{icon:`vuesax-linear:lamp-on`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),se={class:`desktop-page cart-desktop-page`},ce={class:`cart-desktop-page__head`},le={key:0,class:`cart-desktop-page__subtitle`},ue={class:`cart-desktop-page__layout`},de={class:`cart-desktop-page__main`},fe={key:0,class:`cart-empty-card`},pe={class:`cart-empty-card__visual`,"aria-hidden":`true`},me={class:`cart-empty-card__circle`},he={class:`cart-empty-card__actions`},ge={key:1,class:`cart-items-card`},_e={class:`cart-items-card__scroll`},ve={class:`cart-items-table`},ye={class:`cart-items-table__name`},be=[`onClick`],xe={class:`cart-desktop-page__sidebar`},Se={class:`cart-summary-card`},Ce={class:`cart-summary-card__title`},we={class:`cart-summary-card__title-icon`,"aria-hidden":`true`},Te={class:`cart-summary-card__rows`},Ee={class:`cart-summary-card__row`},De={class:`cart-summary-card__row-label`},Oe={class:`cart-summary-card__row`},ke={class:`cart-summary-card__row-label`},Ae={class:`cart-summary-card__row-label`},je={class:`cart-summary-card__cap`},Me={class:`cart-summary-card__row cart-summary-card__row--hint`},Ne={class:`cart-summary-card__row-label`},Pe=[`disabled`],$={class:`cart-guide-card`},Fe={class:`cart-guide-card__title`},Ie={class:`cart-guide-card__title-icon`,"aria-hidden":`true`},Le={class:`cart-guide-card__text`},Re={class:`cart-quick-nav`,"aria-label":`دسترسی سریع`},ze=[`onClick`],Be={class:`cart-quick-nav__body`},Ve={class:`cart-quick-nav__title`},He={class:`cart-quick-nav__desc`},Ue=_(l({__name:`DesktopCartPage`,props:{items:{},companyName:{},companySummaries:{},totalMeterage:{},maxMeterage:{},remainingCapacity:{},isEmpty:{type:Boolean},submitting:{type:Boolean}},emits:[`remove`,`checkout`,`selectCompany`,`back`],setup(r,{emit:l}){let g=l,_=h(),v=[{title:`کالیته‌ها`,desc:`مرور کالیته و طرح‌ها`,icon:I,tone:`blue`,action:()=>_.push(`/catalogs`)},{title:`دسته‌بندی`,desc:`مشاهده محصولات بر اساس کاربرد`,icon:N,tone:`green`,action:()=>_.push(`/categories`)},{title:`سفارش‌های من`,desc:`پیگیری وضعیت سفارش‌ها`,icon:T,tone:`blue`,action:()=>_.push(`/orders`)}];return(l,h)=>(i(),c(`div`,se,[s(P,{"current-step":1}),u(`header`,ce,[h[3]||=u(`h1`,{class:`cart-desktop-page__title`},`سبد خرید`,-1),r.companyName?(i(),c(`p`,le,` تأمین‌کننده: `+d(r.companyName),1)):e(``,!0)]),u(`div`,ue,[u(`section`,de,[r.isEmpty?(i(),c(`div`,fe,[u(`div`,pe,[h[4]||=u(`span`,{class:`cart-empty-card__spark cart-empty-card__spark--1`},`+`,-1),h[5]||=u(`span`,{class:`cart-empty-card__spark cart-empty-card__spark--2`},`·`,-1),u(`span`,me,[s(E,{size:40})]),h[6]||=u(`span`,{class:`cart-empty-card__spark cart-empty-card__spark--3`},`·`,-1)]),h[9]||=u(`h2`,{class:`cart-empty-card__heading`},`سبد خرید شما خالی است`,-1),h[10]||=u(`p`,{class:`cart-empty-card__text`},` از دسته‌بندی یا کالیته محصول را انتخاب کنید، جزئیات را ببینید و به سبد اضافه کنید. `,-1),u(`div`,he,[u(`button`,{type:`button`,class:`cart-btn cart-btn--primary`,onClick:h[0]||=e=>g(`selectCompany`)},[s(N,{size:16}),h[7]||=o(` دسته‌بندی محصولات `,-1)]),u(`button`,{type:`button`,class:`cart-btn cart-btn--outline`,onClick:h[1]||=e=>n(_).push(`/catalogs`)},[s(I,{size:18}),h[8]||=o(` مشاهده کالیته‌ها `,-1)])])])):(i(),c(`div`,ge,[u(`div`,_e,[u(`table`,ve,[h[11]||=u(`thead`,null,[u(`tr`,null,[u(`th`,{scope:`col`},`محصول`),u(`th`,{scope:`col`},`کد`),u(`th`,{scope:`col`},`متراژ (متر)`),u(`th`,{scope:`col`},`حذف`)])],-1),u(`tbody`,null,[(i(!0),c(p,null,f(r.items,e=>(i(),c(`tr`,{key:e.id},[u(`td`,null,[u(`strong`,ye,d(e.productName),1)]),u(`td`,null,d(e.productCode),1),u(`td`,null,d(n(C)(e.meterage)),1),u(`td`,null,[u(`button`,{type:`button`,class:`cart-items-table__delete`,"aria-label":`حذف`,onClick:t=>g(`remove`,e.id)},[s(R,{size:18})],8,be)])]))),128))])])])]))]),u(`aside`,xe,[u(`div`,Se,[u(`h2`,Ce,[u(`span`,we,[s(F,{size:22})]),h[12]||=o(` خلاصه سفارش `,-1)]),u(`div`,Te,[u(`div`,Ee,[u(`span`,De,[s(I,{size:16}),h[13]||=o(` تعداد آیتم‌ها `,-1)]),u(`strong`,null,d(n(C)(r.items.length)),1)]),u(`div`,Oe,[u(`span`,ke,[s(N,{size:16}),h[14]||=o(` متراژ کل `,-1)]),u(`strong`,null,d(n(S)(r.totalMeterage)),1)]),(i(!0),c(p,null,f(r.companySummaries??[],e=>(i(),c(`div`,{key:e.companyId,class:`cart-summary-card__row cart-summary-card__row--sub`},[u(`span`,Ae,d(e.companyName),1),u(`strong`,null,[o(d(n(S)(e.meterage))+` `,1),u(`span`,je,`/ `+d(n(S)(e.maxMeterage)),1)])]))),128)),u(`div`,Me,[u(`span`,Ne,[s(T,{size:16}),h[15]||=o(` مبلغ فاکتور `,-1)]),h[16]||=u(`span`,{class:`cart-summary-card__hint-value`},` پس از قیمت‌گذاری مدیریت `,-1)])]),u(`button`,{type:`button`,class:`cart-summary-card__cta`,disabled:r.isEmpty||r.submitting,onClick:h[2]||=e=>g(`checkout`)},[s(k,{size:16}),o(` `+d(r.submitting?`در حال ثبت…`:`ثبت پیش‌سفارش`),1)],8,Pe),h[17]||=u(`p`,{class:`cart-summary-card__note`},` پس از ثبت سفارش، مدیریت قیمت‌گذاری می‌کند و فاکتور صادر می‌شود؛ سپس روش تسویه را انتخاب می‌کنید. `,-1)]),u(`div`,$,[u(`h3`,Fe,[u(`span`,Ie,[s(oe,{size:18})]),h[18]||=o(` راهنمای گام بعدی `,-1)]),u(`p`,Le,[h[19]||=o(` محصولات موردنظر را به سبد اضافه کنید، متراژ کل را بررسی کنید و «ثبت پیش‌سفارش» را بزنید. `,-1),r.isEmpty?e(``,!0):(i(),c(p,{key:0},[o(` سقف مجاز: `+d(n(S)(r.maxMeterage))+` — باقی‌مانده: `+d(n(S)(r.remainingCapacity))+`. `,1)],64)),h[20]||=o(` پس از قیمت‌گذاری، از صفحه سفارش روش تسویه را انتخاب می‌کنید. `,-1)])])])]),u(`nav`,Re,[(i(),c(p,null,f(v,e=>u(`button`,{key:e.title,type:`button`,class:`cart-quick-nav__item`,onClick:t=>e.action()},[u(`span`,{class:a([`cart-quick-nav__icon`,`cart-quick-nav__icon--${e.tone}`])},[(i(),t(m(e.icon),{size:20}))],2),u(`span`,Be,[u(`strong`,Ve,d(e.title),1),u(`span`,He,d(e.desc),1)]),s(k,{size:16,class:`cart-quick-nav__chevron`,"aria-hidden":`true`})],8,ze)),64))]),h[21]||=u(`p`,{class:`cart-desktop-page__footer`},`پارس بافت — سامانه سفارش‌گذاری پارچه`,-1)]))}}),[[`__scopeId`,`data-v-e944f7f3`]]),We={class:`cart-view`},Ge={class:`dialog card`},Ke={class:`dialog-actions`},qe=_(l({__name:`CartView`,setup(r){let a=h(),{cartStore:l,items:d,isEmpty:f,companyName:p,companySummaries:m,showFullDialog:_,submitting:v,submitError:y,removeItem:b,proceedToCheckout:S,proceedAnyway:C,createNewInvoice:w}=L();function T(){a.push(ee)}return(r,h)=>(i(),c(`div`,We,[n(y)?(i(),t(M,{key:0,message:n(y),class:`cart-view__error`},null,8,[`message`])):e(``,!0),s(ae,{class:`mobile-only`,items:n(d),"company-name":n(p),"company-summaries":n(m),"total-meterage":n(l).totalMeterage,"max-meterage":n(l).maxMeterage,"remaining-capacity":n(l).remainingCapacity,"is-empty":n(f),submitting:n(v),onBack:h[0]||=e=>n(a).push(`/`),onRemove:n(b),onCheckout:n(S),onSelectCompany:h[1]||=e=>T()},null,8,[`items`,`company-name`,`company-summaries`,`total-meterage`,`max-meterage`,`remaining-capacity`,`is-empty`,`submitting`,`onRemove`,`onCheckout`]),s(Ue,{class:`desktop-only`,items:n(d),"company-name":n(p),"company-summaries":n(m),"total-meterage":n(l).totalMeterage,"max-meterage":n(l).maxMeterage,"remaining-capacity":n(l).remainingCapacity,"is-empty":n(f),submitting:n(v),onRemove:n(b),onCheckout:n(S),onSelectCompany:h[2]||=e=>T(),onBack:T},null,8,[`items`,`company-name`,`company-summaries`,`total-meterage`,`max-meterage`,`remaining-capacity`,`is-empty`,`submitting`,`onRemove`,`onCheckout`]),n(_)?(i(),c(`div`,{key:1,class:`dialog-overlay`,onClick:h[3]||=x(e=>_.value=!1,[`self`])},[u(`div`,Ge,[h[6]||=u(`h3`,null,`سقف متراژ تکمیل شد`,-1),h[7]||=u(`p`,{class:`text-sm`},` سقف متراژ مجاز این سفارش پر شده است. می‌توانید همین پیش‌سفارش را ثبت کنید یا سبد را خالی کرده و سفارش جدید بسازید. `,-1),u(`div`,Ke,[s(O,{variant:`outline`,loading:n(v),onClick:n(C)},{default:g(()=>[...h[4]||=[o(` ثبت همین فاکتور `,-1)]]),_:1},8,[`loading`,`onClick`]),s(O,{onClick:n(w)},{default:g(()=>[...h[5]||=[o(`فاکتور جدید`,-1)]]),_:1},8,[`onClick`])])])])):e(``,!0)]))}}),[[`__scopeId`,`data-v-2f81af33`]]);export{qe as default}; \ No newline at end of file diff --git a/dist/assets/CartView-Bke6TXBV.js b/dist/assets/CartView-Bke6TXBV.js new file mode 100644 index 0000000..69e6859 --- /dev/null +++ b/dist/assets/CartView-Bke6TXBV.js @@ -0,0 +1 @@ +import{At as e,F as t,G as n,M as r,Pt as i,R as a,_ as o,c as s,d as c,f as l,g as u,i as d,k as f,l as p,nt as m,t as h,u as g,ut as _,v}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{t as y,u as b}from"./BasicIcon-Bzeb0Iwd.js";import{a as x,o as S}from"./format-C72AoJ2H.js";import{A as C,D as w,M as T,O as E,d as D,n as O,o as k,t as A,x as ee}from"./index-BrjLizie.js";import{t as te}from"./EmptyState-D72g65G-.js";import{t as j}from"./IconChevronBack-CDeN0Cbu.js";import{t as M}from"./FormErrorBanner-Ud1D04xf.js";import{t as N}from"./IconDiamond-bOGfMf7j.js";import{t as P}from"./CheckoutStepper-DptjKnv0.js";import{t as F}from"./IconClipboardEmpty-D-FEqLzR.js";import{t as I}from"./IconLayoutGrid-CTmPrZXE.js";function L(){let e=T(),t=C(),n=D(),r=m(!1),i=m(!1),a=m(``),o=s(()=>t.activeCart?.items??[]),c=s(()=>o.value.length===0),l=s(()=>t.companyNamesLabel||t.activeCart?.companyName||``),u=s(()=>t.companySummaries);async function d(e){let n=o.value.find(t=>t.id===e);await A({title:`حذف از سبد`,message:n?`آیا از حذف «${n.productName}» از سبد خرید مطمئن هستید؟`:`آیا از حذف این آیتم از سبد خرید مطمئن هستید؟`,confirmLabel:`حذف`,cancelLabel:`انصراف`,tone:`danger`})&&t.removeItem(e)}async function p(){if(!(!t.activeCart||o.value.length===0||i.value)){i.value=!0,a.value=``;try{if(await t.hydrate(),!t.activeCart?.items.length){a.value=`سبد خرید خالی است یا با سرور همگام نشد.`;return}let r=await n.submitOrder(t.activeCart);await t.hydrate(),e.replace(`/orders/${r.id}/success`)}catch(e){a.value=e instanceof Error?e.message:`ثبت سفارش ناموفق بود.`,await t.hydrate()}finally{i.value=!1}}}function h(){if(o.value.length!==0){if(t.isFull){r.value=!0;return}p()}}function g(){r.value=!1,p()}async function _(){await t.createNewCartForSameCompany(),r.value=!1,e.push(`/categories`)}return f(()=>{t.ensureActiveCartForCartPage()}),{cartStore:t,items:o,isEmpty:c,companyName:l,companySummaries:u,showFullDialog:r,submitting:i,submitError:a,removeItem:d,proceedToCheckout:h,proceedAnyway:g,createNewInvoice:_}}var R=v({__name:`IconTrash`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(r(),g(y,{icon:`vuesax-linear:trash`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),z={class:`cart-mobile-page`},B={class:`cart-mobile-page__nav`},V={type:`button`,class:`nav-btn nav-btn--ghost`,"aria-hidden":`true`,tabindex:`-1`},H={key:0,class:`cart-mobile-page__body`},U={key:0,class:`cart-mobile-page__meta`},W={class:`cart-mobile-page__scroll`},G={class:`cart-mobile-table`},K={class:`col-product`},q={class:`col-meterage`},J={class:`col-delete`},Y=[`onClick`],X={class:`cart-mobile-page__footer`},Z={class:`cart-mobile-summary`},Q={class:`cart-mobile-summary__row`},ne={class:`cart-mobile-summary__cap`},re={key:1,class:`cart-mobile-summary__row`},ie={class:`cart-mobile-summary__row`},ae=h(v({__name:`MobileCartPage`,props:{items:{},companyName:{},companySummaries:{},totalMeterage:{},maxMeterage:{},remainingCapacity:{},isEmpty:{type:Boolean},submitting:{type:Boolean}},emits:[`back`,`remove`,`checkout`,`selectCompany`],setup(e,{emit:a}){let s=a;return(a,f)=>(r(),l(`div`,z,[p(`header`,B,[p(`button`,{type:`button`,class:`nav-btn`,"aria-label":`بازگشت`,onClick:f[0]||=e=>s(`back`)},[o(j,{size:20})]),f[3]||=p(`h1`,{class:`cart-mobile-page__title`},`سبد خرید`,-1),p(`button`,V,[o(j,{size:18,class:`nav-btn__flip`})])]),e.isEmpty?(r(),g(te,{key:1,variant:`cart`,message:`از دسته‌بندی یا کالیته محصول را انتخاب کنید`},{default:n(()=>[o(O,{onClick:f[2]||=e=>s(`selectCompany`)},{default:n(()=>[...f[10]||=[u(`مشاهده محصولات`,-1)]]),_:1})]),_:1})):(r(),l(`div`,H,[e.companyName?(r(),l(`p`,U,` تأمین‌کننده: `+i(e.companyName),1)):c(``,!0),p(`div`,W,[p(`div`,G,[f[4]||=p(`div`,{class:`cart-mobile-table__head`},[p(`span`,null,`محصول`),p(`span`,null,`متراژ (متر)`),p(`span`,null,`حذف`)],-1),(r(!0),l(d,null,t(e.items,e=>(r(),l(`div`,{key:e.id,class:`cart-mobile-table__row`},[p(`div`,K,[p(`strong`,null,i(e.productName),1),p(`span`,null,`کد: `+i(e.productCode),1)]),p(`div`,q,i(_(S)(e.meterage)),1),p(`div`,J,[p(`button`,{type:`button`,"aria-label":`حذف`,onClick:t=>s(`remove`,e.id)},[o(R,{size:20})],8,Y)])]))),128))])]),p(`div`,X,[p(`div`,Z,[p(`div`,Q,[f[5]||=p(`span`,null,`جمع متراژ کل`,-1),p(`strong`,null,i(_(x)(e.totalMeterage)),1)]),e.companySummaries?.length?(r(!0),l(d,{key:0},t(e.companySummaries,e=>(r(),l(`div`,{key:e.companyId,class:`cart-mobile-summary__row cart-mobile-summary__row--sub`},[p(`span`,null,i(e.companyName),1),p(`strong`,null,[u(i(_(x)(e.meterage))+` `,1),p(`span`,ne,`/ `+i(_(x)(e.maxMeterage)),1)])]))),128)):(r(),l(`div`,re,[f[6]||=p(`span`,null,`حداکثر مجاز`,-1),p(`strong`,null,i(_(x)(e.maxMeterage)),1)])),p(`div`,ie,[f[7]||=p(`span`,null,`باقی مانده`,-1),p(`strong`,null,i(_(x)(e.remainingCapacity)),1)])]),f[9]||=p(`p`,{class:`cart-mobile-page__hint`},` پس از ثبت سفارش، کارشناسان قیمت‌گذاری می‌کنند و فاکتور برای شما صادر می‌شود. `,-1),o(O,{block:``,loading:e.submitting,onClick:f[1]||=e=>s(`checkout`)},{default:n(()=>[...f[8]||=[u(`ثبت پیش‌سفارش`,-1)]]),_:1},8,[`loading`])])]))]))}}),[[`__scopeId`,`data-v-346cdc9a`]]),oe=v({__name:`IconLightbulb`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(r(),g(y,{icon:`vuesax-linear:lamp-on`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),se={class:`desktop-page cart-desktop-page`},ce={class:`cart-desktop-page__head`},le={key:0,class:`cart-desktop-page__subtitle`},ue={class:`cart-desktop-page__layout`},de={class:`cart-desktop-page__main`},fe={key:0,class:`cart-empty-card`},pe={class:`cart-empty-card__visual`,"aria-hidden":`true`},me={class:`cart-empty-card__circle`},he={class:`cart-empty-card__actions`},ge={key:1,class:`cart-items-card`},_e={class:`cart-items-card__scroll`},ve={class:`cart-items-table`},ye={class:`cart-items-table__name`},be=[`onClick`],xe={class:`cart-desktop-page__sidebar`},Se={class:`cart-summary-card`},Ce={class:`cart-summary-card__title`},we={class:`cart-summary-card__title-icon`,"aria-hidden":`true`},Te={class:`cart-summary-card__rows`},Ee={class:`cart-summary-card__row`},De={class:`cart-summary-card__row-label`},Oe={class:`cart-summary-card__row`},ke={class:`cart-summary-card__row-label`},Ae={class:`cart-summary-card__row-label`},je={class:`cart-summary-card__cap`},Me={class:`cart-summary-card__row cart-summary-card__row--hint`},Ne={class:`cart-summary-card__row-label`},Pe=[`disabled`],$={class:`cart-guide-card`},Fe={class:`cart-guide-card__title`},Ie={class:`cart-guide-card__title-icon`,"aria-hidden":`true`},Le={class:`cart-guide-card__text`},Re={class:`cart-quick-nav`,"aria-label":`دسترسی سریع`},ze=[`onClick`],Be={class:`cart-quick-nav__body`},Ve={class:`cart-quick-nav__title`},He={class:`cart-quick-nav__desc`},Ue=h(v({__name:`DesktopCartPage`,props:{items:{},companyName:{},companySummaries:{},totalMeterage:{},maxMeterage:{},remainingCapacity:{},isEmpty:{type:Boolean},submitting:{type:Boolean}},emits:[`remove`,`checkout`,`selectCompany`,`back`],setup(n,{emit:s}){let f=s,m=T(),h=[{title:`کالیته‌ها`,desc:`مرور کالیته و طرح‌ها`,icon:I,tone:`blue`,action:()=>m.push(`/catalogs`)},{title:`دسته‌بندی`,desc:`مشاهده محصولات بر اساس کاربرد`,icon:N,tone:`green`,action:()=>m.push(`/categories`)},{title:`سفارش‌های من`,desc:`پیگیری وضعیت سفارش‌ها`,icon:w,tone:`blue`,action:()=>m.push(`/orders`)}];return(s,v)=>(r(),l(`div`,se,[o(P,{"current-step":1}),p(`header`,ce,[v[3]||=p(`h1`,{class:`cart-desktop-page__title`},`سبد خرید`,-1),n.companyName?(r(),l(`p`,le,` تأمین‌کننده: `+i(n.companyName),1)):c(``,!0)]),p(`div`,ue,[p(`section`,de,[n.isEmpty?(r(),l(`div`,fe,[p(`div`,pe,[v[4]||=p(`span`,{class:`cart-empty-card__spark cart-empty-card__spark--1`},`+`,-1),v[5]||=p(`span`,{class:`cart-empty-card__spark cart-empty-card__spark--2`},`·`,-1),p(`span`,me,[o(E,{size:40})]),v[6]||=p(`span`,{class:`cart-empty-card__spark cart-empty-card__spark--3`},`·`,-1)]),v[9]||=p(`h2`,{class:`cart-empty-card__heading`},`سبد خرید شما خالی است`,-1),v[10]||=p(`p`,{class:`cart-empty-card__text`},` از دسته‌بندی یا کالیته محصول را انتخاب کنید، جزئیات را ببینید و به سبد اضافه کنید. `,-1),p(`div`,he,[p(`button`,{type:`button`,class:`cart-btn cart-btn--primary`,onClick:v[0]||=e=>f(`selectCompany`)},[o(N,{size:16}),v[7]||=u(` دسته‌بندی محصولات `,-1)]),p(`button`,{type:`button`,class:`cart-btn cart-btn--outline`,onClick:v[1]||=e=>_(m).push(`/catalogs`)},[o(I,{size:18}),v[8]||=u(` مشاهده کالیته‌ها `,-1)])])])):(r(),l(`div`,ge,[p(`div`,_e,[p(`table`,ve,[v[11]||=p(`thead`,null,[p(`tr`,null,[p(`th`,{scope:`col`},`محصول`),p(`th`,{scope:`col`},`کد`),p(`th`,{scope:`col`},`متراژ (متر)`),p(`th`,{scope:`col`},`حذف`)])],-1),p(`tbody`,null,[(r(!0),l(d,null,t(n.items,e=>(r(),l(`tr`,{key:e.id},[p(`td`,null,[p(`strong`,ye,i(e.productName),1)]),p(`td`,null,i(e.productCode),1),p(`td`,null,i(_(S)(e.meterage)),1),p(`td`,null,[p(`button`,{type:`button`,class:`cart-items-table__delete`,"aria-label":`حذف`,onClick:t=>f(`remove`,e.id)},[o(R,{size:18})],8,be)])]))),128))])])])]))]),p(`aside`,xe,[p(`div`,Se,[p(`h2`,Ce,[p(`span`,we,[o(F,{size:22})]),v[12]||=u(` خلاصه سفارش `,-1)]),p(`div`,Te,[p(`div`,Ee,[p(`span`,De,[o(I,{size:16}),v[13]||=u(` تعداد آیتم‌ها `,-1)]),p(`strong`,null,i(_(S)(n.items.length)),1)]),p(`div`,Oe,[p(`span`,ke,[o(N,{size:16}),v[14]||=u(` متراژ کل `,-1)]),p(`strong`,null,i(_(x)(n.totalMeterage)),1)]),(r(!0),l(d,null,t(n.companySummaries??[],e=>(r(),l(`div`,{key:e.companyId,class:`cart-summary-card__row cart-summary-card__row--sub`},[p(`span`,Ae,i(e.companyName),1),p(`strong`,null,[u(i(_(x)(e.meterage))+` `,1),p(`span`,je,`/ `+i(_(x)(e.maxMeterage)),1)])]))),128)),p(`div`,Me,[p(`span`,Ne,[o(w,{size:16}),v[15]||=u(` مبلغ فاکتور `,-1)]),v[16]||=p(`span`,{class:`cart-summary-card__hint-value`},` پس از قیمت‌گذاری مدیریت `,-1)])]),p(`button`,{type:`button`,class:`cart-summary-card__cta`,disabled:n.isEmpty||n.submitting,onClick:v[2]||=e=>f(`checkout`)},[o(k,{size:16}),u(` `+i(n.submitting?`در حال ثبت…`:`ثبت پیش‌سفارش`),1)],8,Pe),v[17]||=p(`p`,{class:`cart-summary-card__note`},` پس از ثبت سفارش، مدیریت قیمت‌گذاری می‌کند و فاکتور صادر می‌شود؛ سپس روش تسویه را انتخاب می‌کنید. `,-1)]),p(`div`,$,[p(`h3`,Fe,[p(`span`,Ie,[o(oe,{size:18})]),v[18]||=u(` راهنمای گام بعدی `,-1)]),p(`p`,Le,[v[19]||=u(` محصولات موردنظر را به سبد اضافه کنید، متراژ کل را بررسی کنید و «ثبت پیش‌سفارش» را بزنید. `,-1),n.isEmpty?c(``,!0):(r(),l(d,{key:0},[u(` سقف مجاز: `+i(_(x)(n.maxMeterage))+` — باقی‌مانده: `+i(_(x)(n.remainingCapacity))+`. `,1)],64)),v[20]||=u(` پس از قیمت‌گذاری، از صفحه سفارش روش تسویه را انتخاب می‌کنید. `,-1)])])])]),p(`nav`,Re,[(r(),l(d,null,t(h,t=>p(`button`,{key:t.title,type:`button`,class:`cart-quick-nav__item`,onClick:e=>t.action()},[p(`span`,{class:e([`cart-quick-nav__icon`,`cart-quick-nav__icon--${t.tone}`])},[(r(),g(a(t.icon),{size:20}))],2),p(`span`,Be,[p(`strong`,Ve,i(t.title),1),p(`span`,He,i(t.desc),1)]),o(k,{size:16,class:`cart-quick-nav__chevron`,"aria-hidden":`true`})],8,ze)),64))]),v[21]||=p(`p`,{class:`cart-desktop-page__footer`},`پارس بافت — سامانه سفارش‌گذاری پارچه`,-1)]))}}),[[`__scopeId`,`data-v-e944f7f3`]]),We={class:`cart-view`},Ge={class:`dialog card`},Ke={class:`dialog-actions`},qe=h(v({__name:`CartView`,setup(e){let t=T(),{cartStore:i,items:a,isEmpty:s,companyName:d,companySummaries:f,showFullDialog:m,submitting:h,submitError:v,removeItem:y,proceedToCheckout:x,proceedAnyway:S,createNewInvoice:C}=L();function w(){t.push(ee)}return(e,T)=>(r(),l(`div`,We,[_(v)?(r(),g(M,{key:0,message:_(v),class:`cart-view__error`},null,8,[`message`])):c(``,!0),o(ae,{class:`mobile-only`,items:_(a),"company-name":_(d),"company-summaries":_(f),"total-meterage":_(i).totalMeterage,"max-meterage":_(i).maxMeterage,"remaining-capacity":_(i).remainingCapacity,"is-empty":_(s),submitting:_(h),onBack:T[0]||=e=>_(t).push(`/`),onRemove:_(y),onCheckout:_(x),onSelectCompany:T[1]||=e=>w()},null,8,[`items`,`company-name`,`company-summaries`,`total-meterage`,`max-meterage`,`remaining-capacity`,`is-empty`,`submitting`,`onRemove`,`onCheckout`]),o(Ue,{class:`desktop-only`,items:_(a),"company-name":_(d),"company-summaries":_(f),"total-meterage":_(i).totalMeterage,"max-meterage":_(i).maxMeterage,"remaining-capacity":_(i).remainingCapacity,"is-empty":_(s),submitting:_(h),onRemove:_(y),onCheckout:_(x),onSelectCompany:T[2]||=e=>w(),onBack:w},null,8,[`items`,`company-name`,`company-summaries`,`total-meterage`,`max-meterage`,`remaining-capacity`,`is-empty`,`submitting`,`onRemove`,`onCheckout`]),_(m)?(r(),l(`div`,{key:1,class:`dialog-overlay`,onClick:T[3]||=b(e=>m.value=!1,[`self`])},[p(`div`,Ge,[T[6]||=p(`h3`,null,`سقف متراژ تکمیل شد`,-1),T[7]||=p(`p`,{class:`text-sm`},` سقف متراژ مجاز این سفارش پر شده است. می‌توانید همین پیش‌سفارش را ثبت کنید یا سبد را خالی کرده و سفارش جدید بسازید. `,-1),p(`div`,Ke,[o(O,{variant:`outline`,loading:_(h),onClick:_(S)},{default:n(()=>[...T[4]||=[u(` ثبت همین فاکتور `,-1)]]),_:1},8,[`loading`,`onClick`]),o(O,{onClick:_(C)},{default:n(()=>[...T[5]||=[u(`فاکتور جدید`,-1)]]),_:1},8,[`onClick`])])])])):c(``,!0)]))}}),[[`__scopeId`,`data-v-2f81af33`]]);export{qe as default}; \ No newline at end of file diff --git a/dist/assets/CashSettlementView-BbwaRcwg.js b/dist/assets/CashSettlementView-BbwaRcwg.js new file mode 100644 index 0000000..e6f1a97 --- /dev/null +++ b/dist/assets/CashSettlementView-BbwaRcwg.js @@ -0,0 +1 @@ +import{F as e,G as t,M as n,Pt as r,U as i,_ as a,c as o,f as s,g as c,i as l,l as u,nt as ee,t as te,u as d,ut as f,v as p}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{t as m}from"./BasicIcon-Bzeb0Iwd.js";import{i as ne,n as re}from"./format-C72AoJ2H.js";import{t as ie}from"./catalog-BHsy1JeE.js";import{M as ae,d as oe,n as h}from"./index-BrjLizie.js";import{t as se}from"./PageHeader-BSsCNguu.js";import{t as ce}from"./useRequirePricedOrder-CmTdgjZX.js";var g=p({__name:`IconSuccessCircle`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,r)=>(n(),d(m,{icon:`vuesax-linear:tick-circle`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),le={class:`page cash-mobile-page mobile-only`},ue={class:`cash-page__scroll page__scroll`},_={class:`cash-page__success cash-page__success--done`},v={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`},F={class:`accounts-panel`},I={class:`accounts-panel__title`},de={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=te(p({__name:`CashSettlementView`,setup(te){let d=ae(),p=oe(),m=ie(),U=ee([]),{orderId:W,order:G}=ce(),K=o(()=>G.value?.companyName??``);i(W,async e=>{e&&!p.getOrderById(e)&&await p.fetchOrder(e)},{immediate:!0}),i(()=>G.value?.id,async e=>{if(!e||!G.value){U.value=[];return}m.companies.length||await m.loadCompanies(),U.value=await p.getBankAccountsForOrder(G.value)},{immediate:!0});let q=o(()=>G.value?.finalAmount?re(G.value.finalAmount):`—`),J=o(()=>{let e=G.value?.cashInvoiceExpiresAt;return e?`مهلت پرداخت این فاکتور تا ${ne(e)} است.`:`مبلغ فاکتور را به یکی از حساب‌های زیر واریز و رسید را ثبت کنید.`}),Y=o(()=>{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(i,o)=>(n(),s(l,null,[u(`div`,le,[a(se,{title:`تسویه نقدی`,"show-back":``,centered:``,onBack:o[0]||=e=>f(d).push(`/orders/${f(W)}`)}),u(`div`,ue,[u(`div`,_,[a(g,{size:56}),u(`p`,v,`مبلغ قابل پرداخت `+r(q.value),1),u(`p`,y,r(J.value),1)]),u(`section`,b,[u(`h2`,x,r(Y.value),1),(n(!0),s(l,null,e(U.value,e=>(n(),s(`article`,{key:e.id,class:`bank-card`},[u(`div`,S,[u(`span`,C,r(e.bankName),1),u(`span`,w,r(e.bankName.charAt(0)),1)]),u(`div`,T,[o[1]||=u(`span`,{class:`bank-card__label`},`شماره کارت`,-1),u(`strong`,E,r(X(e.cardNumber)),1)]),u(`div`,D,[o[2]||=u(`span`,{class:`bank-card__label`},`شماره شبا`,-1),u(`strong`,O,r(Z(e.iban)),1)])]))),128))])]),u(`div`,k,[a(h,{variant:`outline`,block:``,onClick:Q},{default:t(()=>[...o[3]||=[c(`مشاهده سفارش`,-1)]]),_:1}),a(h,{block:``,class:`cash-page__submit`,onClick:$},{default:t(()=>[...o[4]||=[c(` ثبت رسید پرداخت `,-1)]]),_:1})])]),u(`div`,A,[u(`header`,j,[o[5]||=u(`h1`,{class:`desktop-page__title`},`تسویه نقدی`,-1),u(`p`,M,r(J.value),1)]),u(`div`,N,[a(g,{size:56}),u(`p`,P,`مبلغ قابل پرداخت `+r(q.value),1)]),u(`section`,F,[u(`h2`,I,r(Y.value),1),u(`div`,de,[(n(!0),s(l,null,e(U.value,e=>(n(),s(`article`,{key:e.id,class:`bank-card`},[u(`div`,L,[u(`span`,R,r(e.bankName),1),u(`span`,z,r(e.bankName.charAt(0)),1)]),u(`div`,B,[o[6]||=u(`span`,{class:`bank-card__label`},`شماره کارت`,-1),u(`strong`,V,r(X(e.cardNumber)),1)]),u(`div`,H,[o[7]||=u(`span`,{class:`bank-card__label`},`شماره شبا`,-1),u(`strong`,fe,r(Z(e.iban)),1)])]))),128))])]),u(`div`,pe,[a(h,{variant:`outline`,class:`desktop-btn-compact`,onClick:Q},{default:t(()=>[...o[8]||=[c(` مشاهده سفارش `,-1)]]),_:1}),a(h,{class:`desktop-btn-compact`,onClick:$},{default:t(()=>[...o[9]||=[c(` ثبت رسید پرداخت `,-1)]]),_:1})])])],64))}}),[[`__scopeId`,`data-v-c299caf6`]]);export{U as default}; \ No newline at end of file diff --git a/dist/assets/CashSettlementView-BxW5Z-lD.js b/dist/assets/CashSettlementView-BxW5Z-lD.js deleted file mode 100644 index f07f2bb..0000000 --- a/dist/assets/CashSettlementView-BxW5Z-lD.js +++ /dev/null @@ -1 +0,0 @@ -import{E as e,Et as t,J as n,M as r,N as i,O as a,P as o,T as s,Xt as c,Z as l,at as u,b as d,g as ee,st as f,t as p,vt as te,w as m}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";import{t as h}from"./BasicIcon-BXxbbWA_.js";import{i as ne,n as re}from"./format-C72AoJ2H.js";import{t as ie}from"./catalog-CIw6in_a.js";import{d as ae,n as g}from"./index-BAQfYU-Q.js";import{t as oe}from"./PageHeader-DTO8lja2.js";import{t as se}from"./useRequirePricedOrder-DWh7nbsh.js";var _=o({__name:`IconSuccessCircle`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(t){return(r,i)=>(n(),e(h,{icon:`vuesax-linear:tick-circle`,size:t.size,"stroke-width":t.strokeWidth,color:t.color},null,8,[`size`,`stroke-width`,`color`]))}}),ce={class:`page cash-mobile-page mobile-only`},le={class:`cash-page__scroll page__scroll`},ue={class:`cash-page__success cash-page__success--done`},v={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`},de={class:`cash-page__success-title`},P={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(e){let o=ee(),p=ae(),h=ie(),U=te([]),{orderId:W,order:G}=se(),K=m(()=>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=m(()=>G.value?.finalAmount?re(G.value.finalAmount):`—`),J=m(()=>{let e=G.value?.cashInvoiceExpiresAt;return e?`مهلت پرداخت این فاکتور تا ${ne(e)} است.`:`مبلغ فاکتور را به یکی از حساب‌های زیر واریز و رسید را ثبت کنید.`}),Y=m(()=>{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(){o.replace(`/orders/${W.value}?track=1`)}function $(){o.replace(`/orders/${W.value}?track=1&receipt=1`)}return(e,u)=>(n(),a(d,null,[s(`div`,ce,[i(oe,{title:`تسویه نقدی`,"show-back":``,centered:``,onBack:u[0]||=e=>t(o).push(`/orders/${t(W)}`)}),s(`div`,le,[s(`div`,ue,[i(_,{size:56}),s(`p`,v,`مبلغ قابل پرداخت `+c(q.value),1),s(`p`,y,c(J.value),1)]),s(`section`,b,[s(`h2`,x,c(Y.value),1),(n(!0),a(d,null,l(U.value,e=>(n(),a(`article`,{key:e.id,class:`bank-card`},[s(`div`,S,[s(`span`,C,c(e.bankName),1),s(`span`,w,c(e.bankName.charAt(0)),1)]),s(`div`,T,[u[1]||=s(`span`,{class:`bank-card__label`},`شماره کارت`,-1),s(`strong`,E,c(X(e.cardNumber)),1)]),s(`div`,D,[u[2]||=s(`span`,{class:`bank-card__label`},`شماره شبا`,-1),s(`strong`,O,c(Z(e.iban)),1)])]))),128))])]),s(`div`,k,[i(g,{variant:`outline`,block:``,onClick:Q},{default:f(()=>[...u[3]||=[r(`مشاهده سفارش`,-1)]]),_:1}),i(g,{block:``,class:`cash-page__submit`,onClick:$},{default:f(()=>[...u[4]||=[r(` ثبت رسید پرداخت `,-1)]]),_:1})])]),s(`div`,A,[s(`header`,j,[u[5]||=s(`h1`,{class:`desktop-page__title`},`تسویه نقدی`,-1),s(`p`,M,c(J.value),1)]),s(`div`,N,[i(_,{size:56}),s(`p`,de,`مبلغ قابل پرداخت `+c(q.value),1)]),s(`section`,P,[s(`h2`,F,c(Y.value),1),s(`div`,I,[(n(!0),a(d,null,l(U.value,e=>(n(),a(`article`,{key:e.id,class:`bank-card`},[s(`div`,L,[s(`span`,R,c(e.bankName),1),s(`span`,z,c(e.bankName.charAt(0)),1)]),s(`div`,B,[u[6]||=s(`span`,{class:`bank-card__label`},`شماره کارت`,-1),s(`strong`,V,c(X(e.cardNumber)),1)]),s(`div`,H,[u[7]||=s(`span`,{class:`bank-card__label`},`شماره شبا`,-1),s(`strong`,fe,c(Z(e.iban)),1)])]))),128))])]),s(`div`,pe,[i(g,{variant:`outline`,class:`desktop-btn-compact`,onClick:Q},{default:f(()=>[...u[8]||=[r(` مشاهده سفارش `,-1)]]),_:1}),i(g,{class:`desktop-btn-compact`,onClick:$},{default:f(()=>[...u[9]||=[r(` ثبت رسید پرداخت `,-1)]]),_:1})])])],64))}}),[[`__scopeId`,`data-v-c299caf6`]]);export{U as default}; \ No newline at end of file diff --git a/dist/assets/CatalogListView-JUCOpCr_.js b/dist/assets/CatalogListView-JUCOpCr_.js new file mode 100644 index 0000000..c48d9fa --- /dev/null +++ b/dist/assets/CatalogListView-JUCOpCr_.js @@ -0,0 +1 @@ +import{F as e,M as t,Pt as n,U as r,_ as i,c as a,f as o,i as s,k as c,l,nt as u,t as d,u as f,ut as p,v as m}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{t as h}from"./catalog-BHsy1JeE.js";import{M as g,T as _,j as v}from"./index-BrjLizie.js";import{t as y}from"./EmptyState-D72g65G-.js";import{t as b}from"./PageHeader-BSsCNguu.js";import{t as x}from"./SearchField-dVDn9y5S.js";import{t as S}from"./PageSkeleton-DYdjm4l9.js";import{t as C}from"./catalogNavigation-CNQR36ce.js";var w={class:`page catalog-list-page`},T={class:`catalog-list-page__desk-head desktop-only`},E={class:`page__scroll page__scroll--with-nav catalog-list-page__scroll`},D={key:1,class:`catalog-list`},O=[`onClick`],k={class:`catalog-card__icon`},A={class:`catalog-card__info`},j={class:`catalog-card__count`},M=d(m({__name:`CatalogListView`,setup(d){let m=v(),M=g(),N=h(),P=u(!0),F=a(()=>m.params.companyId),I=a(()=>N.getCompany(F.value)),L=u(``),R=a(()=>N.fetchCatalogs(F.value,L.value));async function z(){P.value=!0,N.getCompany(F.value)||await N.loadCompanies(),await N.loadCatalogs(F.value),P.value=!1}c(z),r(F,z);function B(e){C(M,e)}function V(e){let t=N.getCatalog(e);return t?.productCount==null?N.fetchProducts(e).length:t.productCount}return(r,a)=>(t(),o(`div`,w,[i(b,{class:`mobile-only`,title:I.value?.name??`کالیته‌ها`,subtitle:`کالیته مورد نظر را انتخاب کنید`,"show-back":``,centered:``,onBack:a[0]||=e=>p(M).push(`/catalogs`)},null,8,[`title`]),l(`header`,T,[l(`h1`,null,n(I.value?.name??`کالیته‌ها`),1),a[2]||=l(`p`,null,`کالیته مورد نظر را انتخاب کنید`,-1)]),i(x,{modelValue:L.value,"onUpdate:modelValue":a[1]||=e=>L.value=e,placeholder:`جستجو بر اساس کد یا نام کالیته...`,class:`catalog-list-page__search`},null,8,[`modelValue`]),l(`div`,E,[P.value?(t(),f(S,{key:0,variant:`cards`,rows:5})):R.value.length>0?(t(),o(`div`,D,[(t(!0),o(s,null,e(R.value,e=>(t(),o(`button`,{key:e.id,type:`button`,class:`catalog-card`,onClick:t=>B(e.id)},[l(`span`,k,[i(_,{size:22})]),l(`div`,A,[l(`h3`,null,`کالیته کد `+n(e.code),1),l(`p`,null,n(e.name),1)]),l(`span`,j,n(V(e.id))+` محصول`,1)],8,O))),128))])):(t(),f(y,{key:2,variant:L.value?`search`:`catalogs`,message:L.value?`با این جستجو کالیته‌ای پیدا نشد`:`برای این شرکت هنوز کالیته‌ای ثبت نشده است`},null,8,[`variant`,`message`]))])]))}}),[[`__scopeId`,`data-v-a8edb49d`]]);export{M as default}; \ No newline at end of file diff --git a/dist/assets/CatalogListView-kLwRIxQN.js b/dist/assets/CatalogListView-kLwRIxQN.js deleted file mode 100644 index a92801d..0000000 --- a/dist/assets/CatalogListView-kLwRIxQN.js +++ /dev/null @@ -1 +0,0 @@ -import{E as e,Et as t,G as n,J as r,N as i,O as a,P as o,T as s,Xt as c,Z as l,at as u,b as d,g as f,h as p,t as m,vt as h,w as g}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";import{t as _}from"./catalog-CIw6in_a.js";import{T as v}from"./index-BAQfYU-Q.js";import{t as y}from"./EmptyState-D-8eFOUi.js";import{t as b}from"./PageHeader-DTO8lja2.js";import{t as x}from"./SearchField-BMLbKLPW.js";import{t as S}from"./PageSkeleton-DHtB6RUa.js";import{t as C}from"./catalogNavigation-BKzzgMwI.js";var w={class:`page catalog-list-page`},T={class:`catalog-list-page__desk-head desktop-only`},E={class:`page__scroll page__scroll--with-nav catalog-list-page__scroll`},D={key:1,class:`catalog-list`},O=[`onClick`],k={class:`catalog-card__icon`},A={class:`catalog-card__info`},j={class:`catalog-card__count`},M=m(o({__name:`CatalogListView`,setup(o){let m=p(),M=f(),N=_(),P=h(!0),F=g(()=>m.params.companyId),I=g(()=>N.getCompany(F.value)),L=h(``),R=g(()=>N.fetchCatalogs(F.value,L.value));async function z(){P.value=!0,N.getCompany(F.value)||await N.loadCompanies(),await N.loadCatalogs(F.value),P.value=!1}n(z),u(F,z);function B(e){C(M,e)}function V(e){let t=N.getCatalog(e);return t?.productCount==null?N.fetchProducts(e).length:t.productCount}return(n,o)=>(r(),a(`div`,w,[i(b,{class:`mobile-only`,title:I.value?.name??`کالیته‌ها`,subtitle:`کالیته مورد نظر را انتخاب کنید`,"show-back":``,centered:``,onBack:o[0]||=e=>t(M).push(`/catalogs`)},null,8,[`title`]),s(`header`,T,[s(`h1`,null,c(I.value?.name??`کالیته‌ها`),1),o[2]||=s(`p`,null,`کالیته مورد نظر را انتخاب کنید`,-1)]),i(x,{modelValue:L.value,"onUpdate:modelValue":o[1]||=e=>L.value=e,placeholder:`جستجو بر اساس کد یا نام کالیته...`,class:`catalog-list-page__search`},null,8,[`modelValue`]),s(`div`,E,[P.value?(r(),e(S,{key:0,variant:`cards`,rows:5})):R.value.length>0?(r(),a(`div`,D,[(r(!0),a(d,null,l(R.value,e=>(r(),a(`button`,{key:e.id,type:`button`,class:`catalog-card`,onClick:t=>B(e.id)},[s(`span`,k,[i(v,{size:22})]),s(`div`,A,[s(`h3`,null,`کالیته کد `+c(e.code),1),s(`p`,null,c(e.name),1)]),s(`span`,j,c(V(e.id))+` محصول`,1)],8,O))),128))])):(r(),e(y,{key:2,variant:L.value?`search`:`catalogs`,message:L.value?`با این جستجو کالیته‌ای پیدا نشد`:`برای این شرکت هنوز کالیته‌ای ثبت نشده است`},null,8,[`variant`,`message`]))])]))}}),[[`__scopeId`,`data-v-a8edb49d`]]);export{M as default}; \ No newline at end of file diff --git a/dist/assets/CatalogProductRedirectView-Bzfk8EFi.js b/dist/assets/CatalogProductRedirectView-Bzfk8EFi.js new file mode 100644 index 0000000..3c69535 --- /dev/null +++ b/dist/assets/CatalogProductRedirectView-Bzfk8EFi.js @@ -0,0 +1 @@ +import{M as e,_ as t,f as n,k as r,v as i}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{M as a,j as o}from"./index-BrjLizie.js";import{t as s}from"./PageSkeleton-DYdjm4l9.js";import{t as c}from"./catalogNavigation-CNQR36ce.js";var l={class:`page`},u=i({__name:`CatalogProductRedirectView`,setup(i){let u=o(),d=a();return r(()=>{c(d,String(u.params.catalogId??``))}),(r,i)=>(e(),n(`div`,l,[t(s,{variant:`detail`})]))}});export{u as default}; \ No newline at end of file diff --git a/dist/assets/CatalogProductRedirectView-GITIU3xk.js b/dist/assets/CatalogProductRedirectView-GITIU3xk.js deleted file mode 100644 index 61172b5..0000000 --- a/dist/assets/CatalogProductRedirectView-GITIU3xk.js +++ /dev/null @@ -1 +0,0 @@ -import{G as e,J as t,N as n,O as r,P as i,g as a,h as o}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";import{t as s}from"./PageSkeleton-DHtB6RUa.js";import{t as c}from"./catalogNavigation-BKzzgMwI.js";var l={class:`page`},u=i({__name:`CatalogProductRedirectView`,setup(i){let u=o(),d=a();return e(()=>{c(d,String(u.params.catalogId??``))}),(e,i)=>(t(),r(`div`,l,[n(s,{variant:`detail`})]))}});export{u as default}; \ No newline at end of file diff --git a/dist/assets/CatalogRequestsView-B_32f4tA.js b/dist/assets/CatalogRequestsView-B_32f4tA.js deleted file mode 100644 index bfc4c4b..0000000 --- a/dist/assets/CatalogRequestsView-B_32f4tA.js +++ /dev/null @@ -1 +0,0 @@ -import{D as e,Et as t,G as n,J as r,N as i,O as a,P as o,T as s,Xt as c,Z as l,b as u,g as d,t as f}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";import{o as p}from"./format-C72AoJ2H.js";import{t as m}from"./PageHeader-DTO8lja2.js";import{t as h}from"./catalogRequests-DB19-0hk.js";var g={class:`page catalog-requests-page`},_={class:`desktop-page__head desktop-only catalog-requests-desk-head`},v={class:`page__scroll page__scroll--with-nav body`},y={key:0,class:`empty`},b={class:`card__top`},x={class:`badge`},S={key:0,class:`note`},C=f(o({__name:`CatalogRequestsView`,setup(o){let f=d(),C=h();return n(()=>C.hydrate()),(n,o)=>(r(),a(`div`,g,[i(m,{class:`mobile-only`,title:`وضعیت کالیته‌ها`,"show-back":``,centered:``,onBack:o[0]||=e=>t(f).push(`/catalogs`)}),s(`header`,_,[o[3]||=s(`div`,null,[s(`h1`,{class:`desktop-page__title`},`وضعیت کالیته‌ها`),s(`p`,{class:`desktop-page__subtitle`},`پیگیری درخواست‌های کالیته ثبت‌شده`)],-1),s(`button`,{type:`button`,class:`desk-new-btn`,onClick:o[1]||=e=>t(f).push(`/categories`)},` درخواست کالیته جدید `)]),s(`div`,v,[s(`button`,{type:`button`,class:`new-btn mobile-only`,onClick:o[2]||=e=>t(f).push(`/categories`)},` درخواست کالیته جدید `),t(C).sorted.length?e(``,!0):(r(),a(`p`,y,`هنوز درخواستی ثبت نکرده‌اید.`)),(r(!0),a(u,null,l(t(C).sorted,n=>(r(),a(`article`,{key:n.id,class:`card`},[s(`div`,b,[s(`strong`,null,`درخواست `+c(n.id.slice(-6)),1),s(`span`,x,c(t(C).statusLabel(n.status)),1)]),s(`p`,null,c(n.createdAt.slice(0,10)),1),s(`p`,null,c(t(p)(n.items.length))+` قلم`,1),s(`ul`,null,[(r(!0),a(u,null,l(n.items,e=>(r(),a(`li`,{key:e.productId},c(e.productName)+` × `+c(t(p)(e.quantity)),1))),128))]),n.note?(r(),a(`p`,S,c(n.note),1)):e(``,!0)]))),128))])]))}}),[[`__scopeId`,`data-v-9ea8c789`]]);export{C as default}; \ No newline at end of file diff --git a/dist/assets/CatalogRequestsView-DavJD797.js b/dist/assets/CatalogRequestsView-DavJD797.js new file mode 100644 index 0000000..1bc405a --- /dev/null +++ b/dist/assets/CatalogRequestsView-DavJD797.js @@ -0,0 +1 @@ +import{F as e,M as t,Pt as n,_ as r,d as i,f as a,i as o,k as s,l as c,t as l,ut as u,v as d}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{o as f}from"./format-C72AoJ2H.js";import{M as p}from"./index-BrjLizie.js";import{t as m}from"./PageHeader-BSsCNguu.js";import{t as h}from"./catalogRequests-Bfg-Nm09.js";var g={class:`page catalog-requests-page`},_={class:`desktop-page__head desktop-only catalog-requests-desk-head`},v={class:`page__scroll page__scroll--with-nav body`},y={key:0,class:`empty`},b={class:`card__top`},x={class:`badge`},S={key:0,class:`note`},C=l(d({__name:`CatalogRequestsView`,setup(l){let d=p(),C=h();return s(()=>C.hydrate()),(s,l)=>(t(),a(`div`,g,[r(m,{class:`mobile-only`,title:`وضعیت کالیته‌ها`,"show-back":``,centered:``,onBack:l[0]||=e=>u(d).push(`/catalogs`)}),c(`header`,_,[l[3]||=c(`div`,null,[c(`h1`,{class:`desktop-page__title`},`وضعیت کالیته‌ها`),c(`p`,{class:`desktop-page__subtitle`},`پیگیری درخواست‌های کالیته ثبت‌شده`)],-1),c(`button`,{type:`button`,class:`desk-new-btn`,onClick:l[1]||=e=>u(d).push(`/categories`)},` درخواست کالیته جدید `)]),c(`div`,v,[c(`button`,{type:`button`,class:`new-btn mobile-only`,onClick:l[2]||=e=>u(d).push(`/categories`)},` درخواست کالیته جدید `),u(C).sorted.length?i(``,!0):(t(),a(`p`,y,`هنوز درخواستی ثبت نکرده‌اید.`)),(t(!0),a(o,null,e(u(C).sorted,r=>(t(),a(`article`,{key:r.id,class:`card`},[c(`div`,b,[c(`strong`,null,`درخواست `+n(r.id.slice(-6)),1),c(`span`,x,n(u(C).statusLabel(r.status)),1)]),c(`p`,null,n(r.createdAt.slice(0,10)),1),c(`p`,null,n(u(f)(r.items.length))+` قلم`,1),c(`ul`,null,[(t(!0),a(o,null,e(r.items,e=>(t(),a(`li`,{key:e.productId},n(e.productName)+` × `+n(u(f)(e.quantity)),1))),128))]),r.note?(t(),a(`p`,S,n(r.note),1)):i(``,!0)]))),128))])]))}}),[[`__scopeId`,`data-v-9ea8c789`]]);export{C as default}; \ No newline at end of file diff --git a/dist/assets/CatalogsHubView-BnSYeqwJ.js b/dist/assets/CatalogsHubView-BnSYeqwJ.js new file mode 100644 index 0000000..f699fa8 --- /dev/null +++ b/dist/assets/CatalogsHubView-BnSYeqwJ.js @@ -0,0 +1 @@ +import{At as e,F as t,M as n,Nt as r,Pt as i,_ as a,c as o,d as s,f as c,i as l,k as u,l as d,nt as f,t as p,u as m,ut as h,v as g}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{o as _}from"./format-C72AoJ2H.js";import{t as v}from"./catalog-BHsy1JeE.js";import{M as y,i as b,j as x}from"./index-BrjLizie.js";import{t as S}from"./IconChevronBack-CDeN0Cbu.js";import{t as ee}from"./SearchField-dVDn9y5S.js";import{t as te}from"./PageSkeleton-DYdjm4l9.js";import{i as ne,n as C,r as w,t as T}from"./catalogNavigation-CNQR36ce.js";import{t as E}from"./crm-DoYzOa8A.js";import{t as D}from"./IconSearch-CUp0Xr9R.js";import{t as O}from"./useGoBack-C1ocTT2D.js";var k={class:`page calite-hub`},A={class:`calite-hub__nav`},j={class:`calite-hub__nav-end`},M={class:`page__scroll page__scroll--with-nav calite-hub__scroll`},N={class:`calite-hub__chips`,role:`tablist`,"aria-label":`مرتب‌سازی کالیته‌ها`},P=[`onClick`],F={key:1,class:`calite-hub__empty`},I={key:2,class:`calite-hub__list`},L=[`onClick`],R={key:0,class:`calite-card__badge`},re={class:`calite-card__copy`,dir:`rtl`},z={class:`mr-4 text-white`},B={class:`text-lg font-bold`},V={class:`text-md`},H={class:`text-xs mt-4`},U=p(g({__name:`CatalogsHubView`,setup(p){let g=x(),U=y(),{goBack:W}=O(`/`),G=v(),K=E(),q=f([]),J=f([]),Y=f(!0),X=f(``),Z=f(null),Q=f(`all`),ie=[{id:`all`,label:`همه`},{id:`newest`,label:`جدیدترین`},{id:`popular`,label:`محبوب‌ترین`},{id:`season`,label:`بر اساس فصل`}],ae=o(()=>{let e=C(q.value,J.value);return e.length?e:ne}),$=o(()=>w(ae.value,Q.value,X.value));u(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(g.query.id??``);r&&q.value.some(e=>e.id===r)&&await T(U,r,J.value)}catch{q.value=[]}finally{Y.value=!1}});function oe(e){T(U,e,J.value)}function se(){Z.value?.focus()}function ce(e){let t=e.season===`winter`?`مناسب زمستان`:e.season===`summer`?`مناسب تابستان`:`مناسب چهار فصل`;return`${_(e.patternCount)} طرح • ${t}`}return(o,u)=>(n(),c(`div`,k,[d(`header`,A,[d(`button`,{type:`button`,class:`icon-btn mobile-only`,"aria-label":`بازگشت`,onClick:u[0]||=(...e)=>h(W)&&h(W)(...e)},[a(S,{size:20})]),u[2]||=d(`h1`,null,`کالیته‌ها`,-1),d(`div`,j,[a(b,{variant:`inline`,class:`mobile-only`}),d(`button`,{type:`button`,class:`icon-btn mobile-only`,"aria-label":`جستجو`,onClick:se},[a(D,{size:20})])])]),d(`div`,M,[u[4]||=d(`p`,{class:`calite-hub__lead`},`مجموعه‌ای از بهترین پارچه‌ها، در یک نگاه`,-1),a(ee,{ref_key:`searchFieldRef`,ref:Z,modelValue:X.value,"onUpdate:modelValue":u[1]||=e=>X.value=e,class:`calite-hub__search`,placeholder:`جستجوی نام کالیته...`},null,8,[`modelValue`]),d(`div`,N,[(n(),c(l,null,t(ie,t=>d(`button`,{key:t.id,type:`button`,class:e([`calite-chip`,{"is-on":Q.value===t.id}]),onClick:e=>Q.value=t.id},i(t.label),11,P)),64))]),Y.value?(n(),m(te,{key:0,variant:`cards`,rows:4})):$.value.length?(n(),c(`div`,I,[(n(!0),c(l,null,t($.value,e=>(n(),c(`button`,{key:e.id,type:`button`,class:`calite-card`,dir:`ltr`,onClick:t=>oe(e.id)},[d(`span`,{class:`calite-card__photo`,style:r(e.imageUrl?{backgroundImage:`url(${e.imageUrl})`}:void 0)},null,4),e.badge?(n(),c(`span`,R,i(e.badge===`new`?`جدید`:`پرفروش`),1)):s(``,!0),d(`div`,re,[u[3]||=d(`svg`,{class:`calite-card__arrow`,width:`12`,height:`16`,viewBox:`0 0 8 12`,fill:`none`,"aria-hidden":`true`},[d(`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),d(`div`,z,[d(`div`,B,i(e.title),1),d(`div`,V,i(e.subtitle),1),d(`div`,H,i(ce(e)),1)])])],8,L))),128))])):(n(),c(`p`,F,`کالیته‌ای یافت نشد.`))])]))}}),[[`__scopeId`,`data-v-daa79410`]]);export{U as default}; \ No newline at end of file diff --git a/dist/assets/CatalogsHubView-CAAnf2JN.js b/dist/assets/CatalogsHubView-CAAnf2JN.js deleted file mode 100644 index 32ed26f..0000000 --- a/dist/assets/CatalogsHubView-CAAnf2JN.js +++ /dev/null @@ -1 +0,0 @@ -import{D as e,E as t,Et as n,G as r,J as i,Kt as a,N as o,O as s,P as c,T as l,Xt as u,Yt as d,Z as f,b as p,g as m,h,t as g,vt as _,w as v}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";import{o as y}from"./format-C72AoJ2H.js";import{t as b}from"./catalog-CIw6in_a.js";import{i as x}from"./index-BAQfYU-Q.js";import{t as S}from"./IconChevronBack-DfGoZJJk.js";import{t as C}from"./SearchField-BMLbKLPW.js";import{t as ee}from"./PageSkeleton-DHtB6RUa.js";import{i as te,n as ne,r as w,t as T}from"./catalogNavigation-BKzzgMwI.js";import{t as E}from"./crm-CooNUbmr.js";import{t as D}from"./IconSearch-BUr8iOwb.js";import{t as O}from"./useGoBack-TJZZv7or.js";var k={class:`page calite-hub`},A={class:`calite-hub__nav`},j={class:`calite-hub__nav-end`},M={class:`page__scroll page__scroll--with-nav calite-hub__scroll`},N={class:`calite-hub__chips`,role:`tablist`,"aria-label":`مرتب‌سازی کالیته‌ها`},P=[`onClick`],F={key:1,class:`calite-hub__empty`},I={key:2,class:`calite-hub__list`},L=[`onClick`],R={key:0,class:`calite-card__badge`},z={class:`calite-card__copy`,dir:`rtl`},re={class:`mr-4 text-white`},B={class:`text-lg font-bold`},V={class:`text-md`},H={class:`text-xs mt-4`},U=g(c({__name:`CatalogsHubView`,setup(c){let g=h(),U=m(),{goBack:W}=O(`/`),G=b(),K=E(),q=_([]),J=_([]),Y=_(!0),X=_(``),Z=_(null),Q=_(`all`),ie=[{id:`all`,label:`همه`},{id:`newest`,label:`جدیدترین`},{id:`popular`,label:`محبوب‌ترین`},{id:`season`,label:`بر اساس فصل`}],ae=v(()=>{let e=ne(q.value,J.value);return e.length?e:te}),$=v(()=>w(ae.value,Q.value,X.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(g.query.id??``);r&&q.value.some(e=>e.id===r)&&await T(U,r,J.value)}catch{q.value=[]}finally{Y.value=!1}});function oe(e){T(U,e,J.value)}function se(){Z.value?.focus()}function ce(e){let t=e.season===`winter`?`مناسب زمستان`:e.season===`summer`?`مناسب تابستان`:`مناسب چهار فصل`;return`${y(e.patternCount)} طرح • ${t}`}return(r,c)=>(i(),s(`div`,k,[l(`header`,A,[l(`button`,{type:`button`,class:`icon-btn mobile-only`,"aria-label":`بازگشت`,onClick:c[0]||=(...e)=>n(W)&&n(W)(...e)},[o(S,{size:20})]),c[2]||=l(`h1`,null,`کالیته‌ها`,-1),l(`div`,j,[o(x,{variant:`inline`,class:`mobile-only`}),l(`button`,{type:`button`,class:`icon-btn mobile-only`,"aria-label":`جستجو`,onClick:se},[o(D,{size:20})])])]),l(`div`,M,[c[4]||=l(`p`,{class:`calite-hub__lead`},`مجموعه‌ای از بهترین پارچه‌ها، در یک نگاه`,-1),o(C,{ref_key:`searchFieldRef`,ref:Z,modelValue:X.value,"onUpdate:modelValue":c[1]||=e=>X.value=e,class:`calite-hub__search`,placeholder:`جستجوی نام کالیته...`},null,8,[`modelValue`]),l(`div`,N,[(i(),s(p,null,f(ie,e=>l(`button`,{key:e.id,type:`button`,class:a([`calite-chip`,{"is-on":Q.value===e.id}]),onClick:t=>Q.value=e.id},u(e.label),11,P)),64))]),Y.value?(i(),t(ee,{key:0,variant:`cards`,rows:4})):$.value.length?(i(),s(`div`,I,[(i(!0),s(p,null,f($.value,t=>(i(),s(`button`,{key:t.id,type:`button`,class:`calite-card`,dir:`ltr`,onClick:e=>oe(t.id)},[l(`span`,{class:`calite-card__photo`,style:d(t.imageUrl?{backgroundImage:`url(${t.imageUrl})`}:void 0)},null,4),t.badge?(i(),s(`span`,R,u(t.badge===`new`?`جدید`:`پرفروش`),1)):e(``,!0),l(`div`,z,[c[3]||=l(`svg`,{class:`calite-card__arrow`,width:`12`,height:`16`,viewBox:`0 0 8 12`,fill:`none`,"aria-hidden":`true`},[l(`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),l(`div`,re,[l(`div`,B,u(t.title),1),l(`div`,V,u(t.subtitle),1),l(`div`,H,u(ce(t)),1)])])],8,L))),128))])):(i(),s(`p`,F,`کالیته‌ای یافت نشد.`))])]))}}),[[`__scopeId`,`data-v-daa79410`]]);export{U as default}; \ No newline at end of file diff --git a/dist/assets/CategoriesView-DT-MUnmH.js b/dist/assets/CategoriesView-DT-MUnmH.js deleted file mode 100644 index 77f4201..0000000 --- a/dist/assets/CategoriesView-DT-MUnmH.js +++ /dev/null @@ -1 +0,0 @@ -import{D as e,E as t,Et as n,G as r,J as i,Kt as a,M as o,N as s,O as c,P as l,T as u,Xt as d,Yt as f,Z as p,b as m,et as h,g,t as _,vt as v}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";import{l as y}from"./BasicIcon-BXxbbWA_.js";import{T as b,i as ee,o as x,s as te,v as ne}from"./index-BAQfYU-Q.js";import{t as re}from"./IconChevronBack-DfGoZJJk.js";import{t as S}from"./IconDiamond-R4uguqMC.js";import{t as ie}from"./PageSkeleton-DHtB6RUa.js";import{t as C}from"./crm-CooNUbmr.js";import{t as w}from"./IconSearch-BUr8iOwb.js";import{t as T}from"./useGoBack-TJZZv7or.js";import{n as E,t as D}from"./categoryIcons-xvNXaT6R.js";var O={class:`page categories-page`},k={class:`cat-top mobile-only`},A={class:`cat-top__actions`},j={class:`page__scroll page__scroll--with-nav cat-scroll`},M={key:0},N={class:`usage-grid`},P=[`onClick`],F={key:0,class:`usage-card__icon`},I={class:`usage-card__body`},L={key:0},R={key:1,class:`usage-card__link`},ae={class:`season-stack`},z=[`onClick`],B={class:`season-card__content`},V={key:0,class:`season-card__title-row`},H={key:0,class:`season-card__icon`},U={key:1},W={key:1},G={key:2,class:`season-card__link`},K={class:`feature-row`,"aria-label":`ویژگی‌ها`},q={class:`feature-card`},J={class:`feature-card__icon`,"aria-hidden":`true`},oe={class:`feature-card`},se={class:`feature-card__icon`,"aria-hidden":`true`},ce={class:`feature-card__icon`,"aria-hidden":`true`},Y=_(l({__name:`CategoriesView`,setup(l){let _=g(),{goBack:Y}=T(`/`),le=C(),X=v([]),Z=v([]),Q=v(!0),$=v(null);function ue(e){return e.icon||(e.id===`summer`?`bolt`:e.id===`winter`?`feather`:`diamond`)}r(async()=>{try{let e=await le.loadCategories();X.value=e.usage,Z.value=e.seasons}catch(e){$.value=e instanceof Error?e.message:`بارگذاری دسته‌ها ناموفق بود.`}finally{Q.value=!1}});function de(e){_.push({path:`/products`,query:{categoryId:e,filterAxis:`usage`}})}function fe(e){_.push({path:`/products`,query:{season:e,filterAxis:`season`}})}return(r,l)=>(i(),c(`div`,O,[u(`header`,k,[u(`button`,{type:`button`,class:`icon-btn`,"aria-label":`بازگشت`,onClick:l[0]||=(...e)=>n(Y)&&n(Y)(...e)},[s(re,{size:20})]),l[5]||=u(`h1`,{class:`cat-top__title`},`دسته‌بندی‌ها`,-1),u(`div`,A,[s(ee,{variant:`inline`}),u(`button`,{type:`button`,class:`icon-btn`,"aria-label":`جستجو`,onClick:l[1]||=e=>n(_).push({path:`/products`,query:{q:``}})},[s(w,{size:20})]),u(`button`,{type:`button`,class:`icon-btn`,"aria-label":`اعلان‌ها`,onClick:l[2]||=e=>n(_).push(`/profile/notifications`)},[s(te,{size:20})])])]),l[13]||=u(`header`,{class:`desktop-page__head desktop-only`},[u(`h1`,{class:`desktop-page__title`},`دسته‌بندی‌ها`),u(`p`,{class:`desktop-page__subtitle`},`دسته موردنظر خود را انتخاب کنید`)],-1),u(`div`,j,[$.value?(i(),c(`p`,M,d($.value),1)):Q.value?(i(),t(ie,{key:1,variant:`grid`})):(i(),c(m,{key:2},[u(`section`,null,[l[6]||=u(`h2`,{class:`block-title`},`انتخاب بر اساس کاربرد`,-1),l[7]||=u(`p`,{class:`block-sub`},`دسته موردنظر خود را انتخاب کنید`,-1),u(`div`,N,[(i(!0),c(m,null,p(X.value,r=>(i(),c(`button`,{key:r.id,type:`button`,class:`usage-card`,onClick:e=>de(r.id)},[u(`div`,{class:a([`usage-card__image`,`usage-card__image--${r.id}`]),style:f(r.imageUrl?{backgroundImage:`url(${r.imageUrl})`}:void 0)},[r.showIcon===!1?e(``,!0):(i(),c(`span`,F,[(i(),t(h(n(D)(n(E)(r),b)),{size:18}))]))],6),u(`div`,I,[r.showTitle===!1?e(``,!0):(i(),c(`strong`,L,d(r.title),1)),r.showSubtitle===!1?e(``,!0):(i(),c(`span`,R,[o(d(r.subtitle||`مشاهده محصولات`)+` `,1),s(x,{size:14})]))])],8,P))),128))])]),u(`section`,null,[l[8]||=u(`h2`,{class:`block-title`},`انتخاب بر اساس فصل`,-1),l[9]||=u(`p`,{class:`block-sub`},`بر اساس فصل مناسب، پارچه دلخواه را پیدا کنید`,-1),u(`div`,ae,[(i(!0),c(m,null,p(Z.value,r=>(i(),c(`button`,{key:r.id,type:`button`,class:a([`season-card`,[`season-card--${r.id}`,{"season-card--banner":!!r.imageUrl}]]),style:f(r.imageUrl?{backgroundImage:`url(${r.imageUrl})`}:void 0),onClick:e=>fe(r.id)},[u(`div`,B,[r.showTitle!==!1||r.showIcon!==!1?(i(),c(`div`,V,[r.showIcon===!1?e(``,!0):(i(),c(`span`,H,[(i(),t(h(n(D)(ue(r),S)),{size:16}))])),r.showTitle===!1?e(``,!0):(i(),c(`strong`,U,d(r.title),1))])):e(``,!0),r.showDescription===!1?e(``,!0):(i(),c(`p`,W,d(r.description),1)),r.showCta===!1?e(``,!0):(i(),c(`span`,G,[o(d(r.ctaLabel||`مشاهده محصولات`)+` `,1),s(x,{size:14})]))])],14,z))),128))])]),u(`section`,K,[u(`div`,q,[u(`span`,J,[s(ne,{size:22})]),l[10]||=u(`div`,{class:`feature-card__text`},[u(`strong`,null,`پشتیبانی اختصاصی`),u(`span`,null,`در کنار شما هستیم`)],-1)]),u(`div`,oe,[u(`span`,se,[s(S,{size:22})]),l[11]||=u(`div`,{class:`feature-card__text`},[u(`strong`,null,`مزایای مشتریان ویژه`),u(`span`,null,`بر اساس سطح شما`)],-1)]),u(`div`,{class:`feature-card feature-card--link`,role:`button`,tabindex:`0`,onClick:l[3]||=e=>n(_).push(`/products`),onKeydown:l[4]||=y(e=>n(_).push(`/products`),[`enter`])},[u(`span`,ce,[s(b,{size:22})]),l[12]||=u(`div`,{class:`feature-card__text`},[u(`strong`,null,`درخواست کالیته فیزیکی`),u(`span`,null,`کالیته را دریافت کنید`)],-1)],32)])],64))])]))}}),[[`__scopeId`,`data-v-cf5be167`]]);export{Y as default}; \ No newline at end of file diff --git a/dist/assets/CategoriesView-fGgvG-m4.js b/dist/assets/CategoriesView-fGgvG-m4.js new file mode 100644 index 0000000..3949979 --- /dev/null +++ b/dist/assets/CategoriesView-fGgvG-m4.js @@ -0,0 +1 @@ +import{At as e,F as t,M as n,Nt as r,Pt as i,R as a,_ as o,d as s,f as c,g as l,i as u,k as d,l as f,nt as p,t as ee,u as m,ut as h,v as g}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{l as _}from"./BasicIcon-Bzeb0Iwd.js";import{M as te,T as v,i as y,o as b,s as ne,v as re}from"./index-BrjLizie.js";import{t as ie}from"./IconChevronBack-CDeN0Cbu.js";import{t as x}from"./IconDiamond-bOGfMf7j.js";import{t as S}from"./PageSkeleton-DYdjm4l9.js";import{t as C}from"./crm-DoYzOa8A.js";import{t as w}from"./IconSearch-CUp0Xr9R.js";import{t as T}from"./useGoBack-C1ocTT2D.js";import{n as E,t as D}from"./categoryIcons-DNHSoriy.js";var O={class:`page categories-page`},k={class:`cat-top mobile-only`},A={class:`cat-top__actions`},j={class:`page__scroll page__scroll--with-nav cat-scroll`},M={key:0},N={class:`usage-grid`},P=[`onClick`],F={key:0,class:`usage-card__icon`},I={class:`usage-card__body`},L={key:0},R={key:1,class:`usage-card__link`},z={class:`season-stack`},B=[`onClick`],ae={class:`season-card__content`},V={key:0,class:`season-card__title-row`},H={key:0,class:`season-card__icon`},U={key:1},W={key:1},G={key:2,class:`season-card__link`},K={class:`feature-row`,"aria-label":`ویژگی‌ها`},q={class:`feature-card`},J={class:`feature-card__icon`,"aria-hidden":`true`},oe={class:`feature-card`},se={class:`feature-card__icon`,"aria-hidden":`true`},ce={class:`feature-card__icon`,"aria-hidden":`true`},Y=ee(g({__name:`CategoriesView`,setup(ee){let g=te(),{goBack:Y}=T(`/`),le=C(),X=p([]),Z=p([]),Q=p(!0),$=p(null);function ue(e){return e.icon||(e.id===`summer`?`bolt`:e.id===`winter`?`feather`:`diamond`)}d(async()=>{try{let e=await le.loadCategories();X.value=e.usage,Z.value=e.seasons}catch(e){$.value=e instanceof Error?e.message:`بارگذاری دسته‌ها ناموفق بود.`}finally{Q.value=!1}});function de(e){g.push({path:`/products`,query:{categoryId:e,filterAxis:`usage`}})}function fe(e){g.push({path:`/products`,query:{season:e,filterAxis:`season`}})}return(d,p)=>(n(),c(`div`,O,[f(`header`,k,[f(`button`,{type:`button`,class:`icon-btn`,"aria-label":`بازگشت`,onClick:p[0]||=(...e)=>h(Y)&&h(Y)(...e)},[o(ie,{size:20})]),p[5]||=f(`h1`,{class:`cat-top__title`},`دسته‌بندی‌ها`,-1),f(`div`,A,[o(y,{variant:`inline`}),f(`button`,{type:`button`,class:`icon-btn`,"aria-label":`جستجو`,onClick:p[1]||=e=>h(g).push({path:`/products`,query:{q:``}})},[o(w,{size:20})]),f(`button`,{type:`button`,class:`icon-btn`,"aria-label":`اعلان‌ها`,onClick:p[2]||=e=>h(g).push(`/profile/notifications`)},[o(ne,{size:20})])])]),p[13]||=f(`header`,{class:`desktop-page__head desktop-only`},[f(`h1`,{class:`desktop-page__title`},`دسته‌بندی‌ها`),f(`p`,{class:`desktop-page__subtitle`},`دسته موردنظر خود را انتخاب کنید`)],-1),f(`div`,j,[$.value?(n(),c(`p`,M,i($.value),1)):Q.value?(n(),m(S,{key:1,variant:`grid`})):(n(),c(u,{key:2},[f(`section`,null,[p[6]||=f(`h2`,{class:`block-title`},`انتخاب بر اساس کاربرد`,-1),p[7]||=f(`p`,{class:`block-sub`},`دسته موردنظر خود را انتخاب کنید`,-1),f(`div`,N,[(n(!0),c(u,null,t(X.value,t=>(n(),c(`button`,{key:t.id,type:`button`,class:`usage-card`,onClick:e=>de(t.id)},[f(`div`,{class:e([`usage-card__image`,`usage-card__image--${t.id}`]),style:r(t.imageUrl?{backgroundImage:`url(${t.imageUrl})`}:void 0)},[t.showIcon===!1?s(``,!0):(n(),c(`span`,F,[(n(),m(a(h(D)(h(E)(t),v)),{size:18}))]))],6),f(`div`,I,[t.showTitle===!1?s(``,!0):(n(),c(`strong`,L,i(t.title),1)),t.showSubtitle===!1?s(``,!0):(n(),c(`span`,R,[l(i(t.subtitle||`مشاهده محصولات`)+` `,1),o(b,{size:14})]))])],8,P))),128))])]),f(`section`,null,[p[8]||=f(`h2`,{class:`block-title`},`انتخاب بر اساس فصل`,-1),p[9]||=f(`p`,{class:`block-sub`},`بر اساس فصل مناسب، پارچه دلخواه را پیدا کنید`,-1),f(`div`,z,[(n(!0),c(u,null,t(Z.value,t=>(n(),c(`button`,{key:t.id,type:`button`,class:e([`season-card`,[`season-card--${t.id}`,{"season-card--banner":!!t.imageUrl}]]),style:r(t.imageUrl?{backgroundImage:`url(${t.imageUrl})`}:void 0),onClick:e=>fe(t.id)},[f(`div`,ae,[t.showTitle!==!1||t.showIcon!==!1?(n(),c(`div`,V,[t.showIcon===!1?s(``,!0):(n(),c(`span`,H,[(n(),m(a(h(D)(ue(t),x)),{size:16}))])),t.showTitle===!1?s(``,!0):(n(),c(`strong`,U,i(t.title),1))])):s(``,!0),t.showDescription===!1?s(``,!0):(n(),c(`p`,W,i(t.description),1)),t.showCta===!1?s(``,!0):(n(),c(`span`,G,[l(i(t.ctaLabel||`مشاهده محصولات`)+` `,1),o(b,{size:14})]))])],14,B))),128))])]),f(`section`,K,[f(`div`,q,[f(`span`,J,[o(re,{size:22})]),p[10]||=f(`div`,{class:`feature-card__text`},[f(`strong`,null,`پشتیبانی اختصاصی`),f(`span`,null,`در کنار شما هستیم`)],-1)]),f(`div`,oe,[f(`span`,se,[o(x,{size:22})]),p[11]||=f(`div`,{class:`feature-card__text`},[f(`strong`,null,`مزایای مشتریان ویژه`),f(`span`,null,`بر اساس سطح شما`)],-1)]),f(`div`,{class:`feature-card feature-card--link`,role:`button`,tabindex:`0`,onClick:p[3]||=e=>h(g).push(`/products`),onKeydown:p[4]||=_(e=>h(g).push(`/products`),[`enter`])},[f(`span`,ce,[o(v,{size:22})]),p[12]||=f(`div`,{class:`feature-card__text`},[f(`strong`,null,`درخواست کالیته فیزیکی`),f(`span`,null,`کالیته را دریافت کنید`)],-1)],32)])],64))])]))}}),[[`__scopeId`,`data-v-cf5be167`]]);export{Y as default}; \ No newline at end of file diff --git a/dist/assets/CheckFormView-BZacVTAv.js b/dist/assets/CheckFormView-BZacVTAv.js new file mode 100644 index 0000000..9b034fa --- /dev/null +++ b/dist/assets/CheckFormView-BZacVTAv.js @@ -0,0 +1 @@ +import{At as e,G as t,M as n,Pt as r,U as i,_ as a,c as o,d as s,f as c,g as l,i as ee,l as u,nt as d,t as te,u as f,ut as p,v as m}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{t as h}from"./BasicIcon-Bzeb0Iwd.js";import{n as g,o as ne,u as _}from"./format-C72AoJ2H.js";import{i as re,n as v,o as ie,t as ae}from"./validation-Duyyve7l.js";import{C as oe,M as se,d as ce,n as le}from"./index-BrjLizie.js";import{t as ue}from"./FormErrorBanner-Ud1D04xf.js";import{n as y,r as b,t as de}from"./formErrors-DglFjYkZ.js";import{t as fe}from"./PageHeader-BSsCNguu.js";import{t as pe}from"./useRequirePricedOrder-CmTdgjZX.js";import{t as x}from"./BaseInput-CpE3bVJZ.js";import{t as me}from"./CurrencyInput-Cu2dRPFo.js";import{t as he}from"./PersianDateInput-DrDb_iFF.js";var ge=m({__name:`IconCash`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,r)=>(n(),f(h,{icon:`vuesax-linear:money-4`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),_e={class:`page`},ve={class:`page__scroll checkout-page__scroll`},ye={class:`mb-3 flex items-start gap-3`},be={class:`flex h-10 w-10 shrink-0 items-center justify-center rounded-full bg-[var(--color-primary-soft)] text-[var(--color-primary)]`,"aria-hidden":`true`},xe={class:`flex flex-col gap-2`},Se={class:`flex items-center justify-between gap-3 text-sm`},Ce={class:`font-tabular text-[var(--color-text)]`},we={class:`flex items-center justify-between gap-3 text-sm`},S={class:`inline-flex items-center gap-1.5 text-[var(--color-text-muted)]`},C={key:0,class:`text-xs`},w={class:`font-tabular text-[var(--color-text)]`},T={class:`mt-1 flex items-center justify-between gap-3 border-t border-[var(--color-border)] pt-3`},E={class:`card`},D={class:`form-group`},O=[`src`],k={key:1,class:`upload-box__placeholder`},Te={key:0,class:`input-error-text`},Ee={key:2,class:`form-group`},De={class:`upload-box`},Oe=[`src`],ke={key:1,class:`upload-box__placeholder`},A=te(m({__name:`CheckFormView`,setup(te){let f=se(),m=ce(),{orderId:h,order:A}=pe(),j=o(()=>m.draftCheckMode===`full`),M=d(``),N=d(``),P=d(``),F=d(``),I=d(``),L=d(``),R=d(``),z=d(``),B=d(``),V=d(``),H=d(``),U=d(``),W=d({}),G=d(``),K=d(!1),q=o(()=>A.value?.finalAmount??0),J=o(()=>m.draftChecks.reduce((e,t)=>e+t.amount,0)),Y=o(()=>_(M.value)||0),X=o(()=>Math.max(0,q.value-J.value)),Ae=o(()=>Math.max(0,q.value-J.value-Y.value)),Z=o(()=>q.value>0&&J.value+Y.value>=q.value),Q=o(()=>q.value>0&&J.value+Y.value>q.value);i([q,X],()=>{K.value||M.value||X.value<=0||(M.value=String(X.value),K.value=!0)},{immediate:!0}),i(M,()=>{W.value=y(W.value,`amount`),b(W.value)||(G.value=``)}),i(N,()=>{W.value=y(W.value,`dueDate`),b(W.value)||(G.value=``)}),i(P,()=>{W.value=y(W.value,`sayadId`),b(W.value)||(G.value=``)}),i(I,()=>{W.value=y(W.value,`ownerNationalId`),b(W.value)||(G.value=``)}),i(V,()=>{W.value=y(W.value,`frontImage`),b(W.value)||(G.value=``)});async function $(e,t){let n=e.target.files?.[0];if(!n)return;let r=v(n);if(!r.valid){t===`front`&&(W.value={...W.value,frontImage:r.message??`خطا`});return}let i=await ae(n);t===`front`?V.value=i:H.value=i}function je(){X.value<=0||(M.value=String(X.value))}function Me(){W.value={},G.value=``;let e={},t=_(M.value);return(!t||t<=0)&&(e.amount=`مبلغ چک باید بزرگ‌تر از صفر باشد.`),N.value||(e.dueDate=`تاریخ سررسید الزامی است.`),V.value||(e.frontImage=`تصویر روی چک الزامی است.`),j.value&&(ie(P.value)||(e.sayadId=`شناسه صیادی باید ۱۶ رقم باشد.`),re(I.value)||(e.ownerNationalId=`کد ملی صاحب چک معتبر نیست.`),m.draftChecks.some(e=>e.sayadId===P.value.replace(/\s/g,``))&&(e.sayadId=`شناسه صیادی تکراری است.`)),W.value=e,!b(e)||(G.value=de,!1)}function Ne(){Me()&&(m.addDraftCheck({amount:_(M.value),dueDate:N.value,sayadId:j.value?P.value.replace(/\s/g,``):void 0,checkNumber:j.value?F.value:void 0,ownerNationalId:j.value?I.value:void 0,ownerFirstName:j.value?L.value:void 0,ownerLastName:j.value?R.value:void 0,bankName:j.value?z.value:void 0,branchName:j.value?B.value:void 0,frontImage:V.value,backImage:H.value||void 0,notes:U.value||void 0,mode:m.draftCheckMode??`brief`}),Pe(),f.push(`/orders/${h.value}/check-list`))}function Pe(){M.value=``,N.value=``,P.value=``,F.value=``,I.value=``,L.value=``,R.value=``,z.value=``,B.value=``,V.value=``,H.value=``,U.value=``,W.value={},G.value=``,K.value=!1}return(i,o)=>(n(),c(`div`,_e,[a(fe,{title:j.value?`ثبت چک - حالت کامل`:`ثبت چک - حالت مختصر`,"show-back":``,onBack:o[0]||=e=>p(f).push(`/orders/${p(h)}/check-mode`)},null,8,[`title`]),u(`div`,ve,[a(ue,{message:G.value},null,8,[`message`]),q.value>0?(n(),c(`div`,{key:0,class:e([`check-balance mb-4 rounded-[var(--radius-md)] border border-[var(--color-border)] bg-[var(--color-surface)] p-4`,{"check-balance--ok":Z.value&&!Q.value,"check-balance--warn":Q.value}])},[u(`div`,ye,[u(`span`,be,[a(ge,{size:22})]),o[13]||=u(`div`,{class:`min-w-0 flex-1`},[u(`p`,{class:`m-0 text-sm font-semibold text-[var(--color-text)]`},`مانده فاکتور`),u(`p`,{class:`m-0 mt-1 text-xs leading-relaxed text-[var(--color-text-muted)]`},` با هر چک، مبلغ باقی‌مانده به‌روز می‌شود تا پوشش کامل فاکتور را از دست ندهید. `)],-1)]),u(`div`,xe,[u(`div`,Se,[o[14]||=u(`span`,{class:`text-[var(--color-text-muted)]`},`مبلغ فاکتور`,-1),u(`strong`,Ce,r(p(g)(q.value)),1)]),u(`div`,we,[u(`span`,S,[a(oe,{size:14}),o[15]||=l(` چک‌های ثبت‌شده `,-1),p(m).draftChecks.length?(n(),c(`span`,C,` (`+r(p(ne)(p(m).draftChecks.length))+`) `,1)):s(``,!0)]),u(`strong`,w,r(p(g)(J.value)),1)]),u(`div`,T,[o[16]||=u(`span`,{class:`text-sm font-semibold text-[var(--color-text)]`},`باقی‌مانده`,-1),u(`strong`,{class:e([`font-tabular text-base`,Z.value&&!Q.value?`text-[var(--color-success)]`:Q.value?`text-[var(--color-danger)]`:`text-[var(--color-primary)]`])},r(Q.value?`${p(g)(J.value+Y.value-q.value)} بیش از فاکتور`:Z.value?`پوشش کامل شد`:p(g)(Ae.value)),3)])])],2)):s(``,!0),o[20]||=u(`div`,{class:`steps`},[u(`span`,{class:`step active`},`۱. اطلاعات چک`),u(`span`,{class:`step`},`۲. چک بعدی`),u(`span`,{class:`step`},`۳. خلاصه`)],-1),u(`div`,E,[a(me,{modelValue:M.value,"onUpdate:modelValue":o[1]||=e=>M.value=e,label:`مبلغ چک (تومان)`,placeholder:`مبلغ`,error:W.value.amount},null,8,[`modelValue`,`error`]),X.value>0&&Y.value!==X.value?(n(),c(`button`,{key:0,type:`button`,class:`check-fill-remaining mb-3 text-sm font-medium text-[var(--color-primary)]`,onClick:je},` پر کردن با باقی‌مانده (`+r(p(g)(X.value))+`) `,1)):s(``,!0),a(he,{modelValue:N.value,"onUpdate:modelValue":o[2]||=e=>N.value=e,label:`تاریخ سررسید`,error:W.value.dueDate},null,8,[`modelValue`,`error`]),j.value?(n(),c(ee,{key:1},[a(x,{modelValue:P.value,"onUpdate:modelValue":o[3]||=e=>P.value=e,label:`شناسه صیادی`,placeholder:`۱۶ رقم`,maxlength:`16`,inputmode:`numeric`,dir:`ltr`,error:W.value.sayadId},null,8,[`modelValue`,`error`]),a(x,{modelValue:F.value,"onUpdate:modelValue":o[4]||=e=>F.value=e,label:`شماره چک`,inputmode:`numeric`,dir:`ltr`},null,8,[`modelValue`]),a(x,{modelValue:I.value,"onUpdate:modelValue":o[5]||=e=>I.value=e,label:`کد ملی صاحب چک`,maxlength:`10`,inputmode:`numeric`,dir:`ltr`,error:W.value.ownerNationalId},null,8,[`modelValue`,`error`]),a(x,{modelValue:L.value,"onUpdate:modelValue":o[6]||=e=>L.value=e,label:`نام صاحب چک`},null,8,[`modelValue`]),a(x,{modelValue:R.value,"onUpdate:modelValue":o[7]||=e=>R.value=e,label:`نام خانوادگی صاحب چک`},null,8,[`modelValue`]),a(x,{modelValue:z.value,"onUpdate:modelValue":o[8]||=e=>z.value=e,label:`نام بانک`},null,8,[`modelValue`]),a(x,{modelValue:B.value,"onUpdate:modelValue":o[9]||=e=>B.value=e,label:`نام شعبه`},null,8,[`modelValue`])],64)):s(``,!0),u(`div`,D,[o[17]||=u(`label`,{class:`form-label`},`تصویر روی چک *`,-1),u(`label`,{class:e([`upload-box`,{"upload-box--error":W.value.frontImage}])},[u(`input`,{type:`file`,accept:`image/*`,class:`upload-box__input`,onChange:o[10]||=e=>$(e,`front`)},null,32),V.value?(n(),c(`img`,{key:0,src:V.value,class:`upload-box__preview`,alt:`روی چک`},null,8,O)):(n(),c(`span`,k,`بارگذاری تصویر چک`))],2),W.value.frontImage?(n(),c(`p`,Te,r(W.value.frontImage),1)):s(``,!0)]),j.value?(n(),c(`div`,Ee,[o[18]||=u(`label`,{class:`form-label`},`تصویر پشت چک`,-1),u(`label`,De,[u(`input`,{type:`file`,accept:`image/*`,class:`upload-box__input`,onChange:o[11]||=e=>$(e,`back`)},null,32),H.value?(n(),c(`img`,{key:0,src:H.value,class:`upload-box__preview`,alt:`پشت چک`},null,8,Oe)):(n(),c(`span`,ke,`بارگذاری تصویر`))])])):s(``,!0),a(x,{modelValue:U.value,"onUpdate:modelValue":o[12]||=e=>U.value=e,label:`توضیحات`},null,8,[`modelValue`]),a(le,{block:``,class:`mt-4`,onClick:Ne},{default:t(()=>[...o[19]||=[l(`ذخیره چک`,-1)]]),_:1})])])]))}}),[[`__scopeId`,`data-v-5976552f`]]);export{A as default}; \ No newline at end of file diff --git a/dist/assets/CheckFormView-C6JGTT8G.js b/dist/assets/CheckFormView-C6JGTT8G.js deleted file mode 100644 index 5d98d56..0000000 --- a/dist/assets/CheckFormView-C6JGTT8G.js +++ /dev/null @@ -1 +0,0 @@ -import{D as e,E as t,Et as n,J as r,Kt as i,M as a,N as o,O as s,P as c,T as l,Xt as u,at as d,b as ee,g as te,st as ne,t as f,vt as p,w as m}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";import{t as h}from"./BasicIcon-BXxbbWA_.js";import{n as g,o as re,u as _}from"./format-C72AoJ2H.js";import{i as v,n as ie,o as ae,t as oe}from"./validation-Duyyve7l.js";import{C as se,d as ce,n as le}from"./index-BAQfYU-Q.js";import{t as ue}from"./FormErrorBanner-DI5hhxpk.js";import{n as y,r as b,t as de}from"./formErrors-DglFjYkZ.js";import{t as fe}from"./PageHeader-DTO8lja2.js";import{t as pe}from"./useRequirePricedOrder-DWh7nbsh.js";import{t as x}from"./BaseInput-CVNdy37R.js";import{t as me}from"./CurrencyInput-D6gR57Z3.js";import{t as he}from"./PersianDateInput-CTe_lYug.js";var ge=c({__name:`IconCash`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(n,i)=>(r(),t(h,{icon:`vuesax-linear:money-4`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),_e={class:`page`},ve={class:`page__scroll checkout-page__scroll`},ye={class:`mb-3 flex items-start gap-3`},be={class:`flex h-10 w-10 shrink-0 items-center justify-center rounded-full bg-[var(--color-primary-soft)] text-[var(--color-primary)]`,"aria-hidden":`true`},xe={class:`flex flex-col gap-2`},Se={class:`flex items-center justify-between gap-3 text-sm`},Ce={class:`font-tabular text-[var(--color-text)]`},we={class:`flex items-center justify-between gap-3 text-sm`},S={class:`inline-flex items-center gap-1.5 text-[var(--color-text-muted)]`},C={key:0,class:`text-xs`},w={class:`font-tabular text-[var(--color-text)]`},T={class:`mt-1 flex items-center justify-between gap-3 border-t border-[var(--color-border)] pt-3`},E={class:`card`},D={class:`form-group`},O=[`src`],k={key:1,class:`upload-box__placeholder`},Te={key:0,class:`input-error-text`},Ee={key:2,class:`form-group`},De={class:`upload-box`},Oe=[`src`],ke={key:1,class:`upload-box__placeholder`},A=f(c({__name:`CheckFormView`,setup(t){let c=te(),f=ce(),{orderId:h,order:A}=pe(),j=m(()=>f.draftCheckMode===`full`),M=p(``),N=p(``),P=p(``),F=p(``),I=p(``),L=p(``),R=p(``),z=p(``),B=p(``),V=p(``),H=p(``),U=p(``),W=p({}),G=p(``),K=p(!1),q=m(()=>A.value?.finalAmount??0),J=m(()=>f.draftChecks.reduce((e,t)=>e+t.amount,0)),Y=m(()=>_(M.value)||0),X=m(()=>Math.max(0,q.value-J.value)),Ae=m(()=>Math.max(0,q.value-J.value-Y.value)),Z=m(()=>q.value>0&&J.value+Y.value>=q.value),Q=m(()=>q.value>0&&J.value+Y.value>q.value);d([q,X],()=>{K.value||M.value||X.value<=0||(M.value=String(X.value),K.value=!0)},{immediate:!0}),d(M,()=>{W.value=y(W.value,`amount`),b(W.value)||(G.value=``)}),d(N,()=>{W.value=y(W.value,`dueDate`),b(W.value)||(G.value=``)}),d(P,()=>{W.value=y(W.value,`sayadId`),b(W.value)||(G.value=``)}),d(I,()=>{W.value=y(W.value,`ownerNationalId`),b(W.value)||(G.value=``)}),d(V,()=>{W.value=y(W.value,`frontImage`),b(W.value)||(G.value=``)});async function $(e,t){let n=e.target.files?.[0];if(!n)return;let r=ie(n);if(!r.valid){t===`front`&&(W.value={...W.value,frontImage:r.message??`خطا`});return}let i=await oe(n);t===`front`?V.value=i:H.value=i}function je(){X.value<=0||(M.value=String(X.value))}function Me(){W.value={},G.value=``;let e={},t=_(M.value);return(!t||t<=0)&&(e.amount=`مبلغ چک باید بزرگ‌تر از صفر باشد.`),N.value||(e.dueDate=`تاریخ سررسید الزامی است.`),V.value||(e.frontImage=`تصویر روی چک الزامی است.`),j.value&&(ae(P.value)||(e.sayadId=`شناسه صیادی باید ۱۶ رقم باشد.`),v(I.value)||(e.ownerNationalId=`کد ملی صاحب چک معتبر نیست.`),f.draftChecks.some(e=>e.sayadId===P.value.replace(/\s/g,``))&&(e.sayadId=`شناسه صیادی تکراری است.`)),W.value=e,!b(e)||(G.value=de,!1)}function Ne(){Me()&&(f.addDraftCheck({amount:_(M.value),dueDate:N.value,sayadId:j.value?P.value.replace(/\s/g,``):void 0,checkNumber:j.value?F.value:void 0,ownerNationalId:j.value?I.value:void 0,ownerFirstName:j.value?L.value:void 0,ownerLastName:j.value?R.value:void 0,bankName:j.value?z.value:void 0,branchName:j.value?B.value:void 0,frontImage:V.value,backImage:H.value||void 0,notes:U.value||void 0,mode:f.draftCheckMode??`brief`}),Pe(),c.push(`/orders/${h.value}/check-list`))}function Pe(){M.value=``,N.value=``,P.value=``,F.value=``,I.value=``,L.value=``,R.value=``,z.value=``,B.value=``,V.value=``,H.value=``,U.value=``,W.value={},G.value=``,K.value=!1}return(t,d)=>(r(),s(`div`,_e,[o(fe,{title:j.value?`ثبت چک - حالت کامل`:`ثبت چک - حالت مختصر`,"show-back":``,onBack:d[0]||=e=>n(c).push(`/orders/${n(h)}/check-mode`)},null,8,[`title`]),l(`div`,ve,[o(ue,{message:G.value},null,8,[`message`]),q.value>0?(r(),s(`div`,{key:0,class:i([`check-balance mb-4 rounded-[var(--radius-md)] border border-[var(--color-border)] bg-[var(--color-surface)] p-4`,{"check-balance--ok":Z.value&&!Q.value,"check-balance--warn":Q.value}])},[l(`div`,ye,[l(`span`,be,[o(ge,{size:22})]),d[13]||=l(`div`,{class:`min-w-0 flex-1`},[l(`p`,{class:`m-0 text-sm font-semibold text-[var(--color-text)]`},`مانده فاکتور`),l(`p`,{class:`m-0 mt-1 text-xs leading-relaxed text-[var(--color-text-muted)]`},` با هر چک، مبلغ باقی‌مانده به‌روز می‌شود تا پوشش کامل فاکتور را از دست ندهید. `)],-1)]),l(`div`,xe,[l(`div`,Se,[d[14]||=l(`span`,{class:`text-[var(--color-text-muted)]`},`مبلغ فاکتور`,-1),l(`strong`,Ce,u(n(g)(q.value)),1)]),l(`div`,we,[l(`span`,S,[o(se,{size:14}),d[15]||=a(` چک‌های ثبت‌شده `,-1),n(f).draftChecks.length?(r(),s(`span`,C,` (`+u(n(re)(n(f).draftChecks.length))+`) `,1)):e(``,!0)]),l(`strong`,w,u(n(g)(J.value)),1)]),l(`div`,T,[d[16]||=l(`span`,{class:`text-sm font-semibold text-[var(--color-text)]`},`باقی‌مانده`,-1),l(`strong`,{class:i([`font-tabular text-base`,Z.value&&!Q.value?`text-[var(--color-success)]`:Q.value?`text-[var(--color-danger)]`:`text-[var(--color-primary)]`])},u(Q.value?`${n(g)(J.value+Y.value-q.value)} بیش از فاکتور`:Z.value?`پوشش کامل شد`:n(g)(Ae.value)),3)])])],2)):e(``,!0),d[20]||=l(`div`,{class:`steps`},[l(`span`,{class:`step active`},`۱. اطلاعات چک`),l(`span`,{class:`step`},`۲. چک بعدی`),l(`span`,{class:`step`},`۳. خلاصه`)],-1),l(`div`,E,[o(me,{modelValue:M.value,"onUpdate:modelValue":d[1]||=e=>M.value=e,label:`مبلغ چک (تومان)`,placeholder:`مبلغ`,error:W.value.amount},null,8,[`modelValue`,`error`]),X.value>0&&Y.value!==X.value?(r(),s(`button`,{key:0,type:`button`,class:`check-fill-remaining mb-3 text-sm font-medium text-[var(--color-primary)]`,onClick:je},` پر کردن با باقی‌مانده (`+u(n(g)(X.value))+`) `,1)):e(``,!0),o(he,{modelValue:N.value,"onUpdate:modelValue":d[2]||=e=>N.value=e,label:`تاریخ سررسید`,error:W.value.dueDate},null,8,[`modelValue`,`error`]),j.value?(r(),s(ee,{key:1},[o(x,{modelValue:P.value,"onUpdate:modelValue":d[3]||=e=>P.value=e,label:`شناسه صیادی`,placeholder:`۱۶ رقم`,maxlength:`16`,inputmode:`numeric`,dir:`ltr`,error:W.value.sayadId},null,8,[`modelValue`,`error`]),o(x,{modelValue:F.value,"onUpdate:modelValue":d[4]||=e=>F.value=e,label:`شماره چک`,inputmode:`numeric`,dir:`ltr`},null,8,[`modelValue`]),o(x,{modelValue:I.value,"onUpdate:modelValue":d[5]||=e=>I.value=e,label:`کد ملی صاحب چک`,maxlength:`10`,inputmode:`numeric`,dir:`ltr`,error:W.value.ownerNationalId},null,8,[`modelValue`,`error`]),o(x,{modelValue:L.value,"onUpdate:modelValue":d[6]||=e=>L.value=e,label:`نام صاحب چک`},null,8,[`modelValue`]),o(x,{modelValue:R.value,"onUpdate:modelValue":d[7]||=e=>R.value=e,label:`نام خانوادگی صاحب چک`},null,8,[`modelValue`]),o(x,{modelValue:z.value,"onUpdate:modelValue":d[8]||=e=>z.value=e,label:`نام بانک`},null,8,[`modelValue`]),o(x,{modelValue:B.value,"onUpdate:modelValue":d[9]||=e=>B.value=e,label:`نام شعبه`},null,8,[`modelValue`])],64)):e(``,!0),l(`div`,D,[d[17]||=l(`label`,{class:`form-label`},`تصویر روی چک *`,-1),l(`label`,{class:i([`upload-box`,{"upload-box--error":W.value.frontImage}])},[l(`input`,{type:`file`,accept:`image/*`,class:`upload-box__input`,onChange:d[10]||=e=>$(e,`front`)},null,32),V.value?(r(),s(`img`,{key:0,src:V.value,class:`upload-box__preview`,alt:`روی چک`},null,8,O)):(r(),s(`span`,k,`بارگذاری تصویر چک`))],2),W.value.frontImage?(r(),s(`p`,Te,u(W.value.frontImage),1)):e(``,!0)]),j.value?(r(),s(`div`,Ee,[d[18]||=l(`label`,{class:`form-label`},`تصویر پشت چک`,-1),l(`label`,De,[l(`input`,{type:`file`,accept:`image/*`,class:`upload-box__input`,onChange:d[11]||=e=>$(e,`back`)},null,32),H.value?(r(),s(`img`,{key:0,src:H.value,class:`upload-box__preview`,alt:`پشت چک`},null,8,Oe)):(r(),s(`span`,ke,`بارگذاری تصویر`))])])):e(``,!0),o(x,{modelValue:U.value,"onUpdate:modelValue":d[12]||=e=>U.value=e,label:`توضیحات`},null,8,[`modelValue`]),o(le,{block:``,class:`mt-4`,onClick:Ne},{default:ne(()=>[...d[19]||=[a(`ذخیره چک`,-1)]]),_:1})])])]))}}),[[`__scopeId`,`data-v-5976552f`]]);export{A as default}; \ No newline at end of file diff --git a/dist/assets/CheckListView-BhenoTXJ.js b/dist/assets/CheckListView-BhenoTXJ.js deleted file mode 100644 index a5151ee..0000000 --- a/dist/assets/CheckListView-BhenoTXJ.js +++ /dev/null @@ -1 +0,0 @@ -import{D as e,E as t,Et as n,J as r,Kt as i,M as a,N as o,O as s,P as ee,T as c,Xt as l,Z as u,at as d,b as f,g as te,h as ne,st as p,t as m,vt as h,w as g}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";import{d as _,n as re,o as v,r as y}from"./format-C72AoJ2H.js";import{c as ie,d as ae,f as oe,n as b,t as se}from"./index-BAQfYU-Q.js";import{t as x}from"./EmptyState-D-8eFOUi.js";import{t as S}from"./IconChevronBack-DfGoZJJk.js";import{t as ce}from"./FormErrorBanner-DI5hhxpk.js";import{t as le}from"./useRequirePricedOrder-DWh7nbsh.js";var C=Object.defineProperty,w=(e,t)=>{let n={};for(var r in e)C(n,r,{get:e[r],enumerable:!0});return t||C(n,Symbol.toStringTag,{value:`Module`}),n},ue={class:`check-list-page mobile-only`},de={class:`check-list-page__nav`},fe={type:`button`,class:`nav-btn nav-btn--ghost`,"aria-hidden":`true`,tabindex:`-1`},pe={key:0,class:`check-list-page__empty page__scroll page__scroll--with-nav`},me={class:`check-list-page__scroll page__scroll`},he={class:`summary-cards`},ge={class:`summary-card`},_e={class:`summary-card__value`},T={class:`summary-card`},E={class:`summary-card__value`},D={key:0,class:`summary-card__status`},O={key:1,class:`summary-card__status summary-card__status--warn`},k={class:`summary-card__value`},A={key:0,class:`summary-card__hint`},j={class:`checks-list`},M={class:`check-card__menu-wrap`},N=[`onClick`],P={key:1,class:`check-card__menu`},F=[`onClick`],I={class:`check-card__body`},ve={class:`check-card__title`},ye={class:`check-card__amount`},be={class:`check-card__date`},xe={class:`check-card__thumb-wrap`},Se=[`src`],Ce={key:1,class:`check-card__thumb check-card__thumb--empty`},we={class:`rass-panel`},Te={class:`rass-panel__days`},Ee={key:0,class:`rass-panel__date`},De={key:0,class:`check-list-page__footer`},Oe={key:0,class:`desktop-checkout-shell check-list-desktop desktop-only`},L={class:`desktop-two-col`},ke={class:`desktop-two-col__main`},Ae={class:`desktop-table-wrap`},je={class:`desktop-table-scroll`},Me={class:`desktop-table check-list-desktop__table`},Ne={key:0,scope:`col`},Pe=[`src`],Fe={key:1},Ie={class:`check-list-desktop__amount`},Le={key:0},Re=[`onClick`],ze={class:`desktop-summary-panel`},Be={class:`desktop-summary-panel__row`},Ve={class:`desktop-summary-panel__row`},He={class:`desktop-summary-panel__row`},Ue={key:0,class:`desktop-summary-panel__action`},We={key:1,class:`desktop-checkout-shell desktop-only`},R=ee({__name:`CheckListView`,setup(ee){let m=ne(),C=te(),w=ae(),R=ie(),z=h(``),B=h(!1),V=g(()=>m.name===`check-list`),{orderId:H}=le(),U=g(()=>H.value?w.getOrderById(H.value):void 0);d(H,async e=>{if(!e||!V.value)return;let t=w.getOrderById(e)??await w.fetchOrder(e);t&&(w.draftChecks.length===0&&(t.checks?.length??0)>0?w.loadChecksIntoDraft(t):w.draftOrderId!==e&&w.startCheckDraft(e,t.checkMode??void 0))},{immediate:!0});let W=g(()=>w.draftChecks.length>0?w.draftChecks:V.value?U.value?.checks??[]:R.user?w.userOrders(R.user.id).filter(e=>e.settlementType===`check`&&e.checks?.length).flatMap(e=>e.checks??[]):[]),G=g(()=>w.draftChecks.length>0?w.getDraftRass():oe(W.value,new Date)),K=g(()=>U.value?.finalAmount??0),q=g(()=>Math.max(0,K.value-G.value.totalAmount)),J=g(()=>K.value>0&&G.value.totalAmount>=K.value),Y=g(()=>K.value>0&&G.value.totalAmount>K.value),X=g({get:()=>m.query.menu??``,set:e=>{C.replace({query:e?{menu:e}:{}})}});function Ge(){C.push(V.value?`/orders/${H.value}`:`/profile`)}function Z(){C.push(`/orders/${H.value}/check-form`)}async function Q(e){X.value=``,await se({title:`حذف چک`,message:`آیا از حذف این چک مطمئن هستید؟`,confirmLabel:`حذف`,cancelLabel:`انصراف`,tone:`danger`})&&w.removeDraftCheck(e)}function Ke(e){X.value=X.value===e?``:e}async function $(){if(!(!H.value||w.draftChecks.length===0||B.value)){z.value=``,B.value=!0;try{await w.updateOrderChecks(H.value,[...w.draftChecks],w.draftCheckMode??`brief`),C.replace(`/orders/${H.value}?track=1`)}catch(e){z.value=e instanceof Error?e.message:`ثبت چک‌ها ناموفق بود.`}finally{B.value=!1}}}return(ee,d)=>(r(),s(f,null,[c(`div`,ue,[c(`header`,de,[c(`button`,{type:`button`,class:`nav-btn`,"aria-label":`بازگشت`,onClick:Ge},[o(S,{size:20})]),d[1]||=c(`h1`,{class:`check-list-page__title`},`چک‌های ثبت شده`,-1),c(`button`,fe,[o(S,{size:18,class:`nav-btn__flip`})])]),W.value.length===0?(r(),s(`div`,pe,[o(x,{variant:`checks`,message:`برای ادامه، حداقل یک چک ثبت کنید`},{default:p(()=>[V.value?(r(),t(b,{key:0,onClick:Z},{default:p(()=>[...d[2]||=[a(`ثبت چک جدید`,-1)]]),_:1})):(r(),t(b,{key:1,variant:`outline`,onClick:d[0]||=e=>n(C).push(`/categories`)},{default:p(()=>[...d[3]||=[a(`ثبت سفارش جدید`,-1)]]),_:1}))]),_:1})])):(r(),s(f,{key:1},[c(`div`,me,[o(ce,{message:z.value},null,8,[`message`]),c(`div`,he,[c(`div`,ge,[d[4]||=c(`span`,{class:`summary-card__label`},`مجموع مبلغ چک‌ها`,-1),c(`strong`,_e,l(n(v)(G.value.totalAmount)),1),d[5]||=c(`span`,{class:`summary-card__unit`},`تومان`,-1)]),c(`div`,T,[d[7]||=c(`span`,{class:`summary-card__label`},`مبلغ فاکتور`,-1),c(`strong`,E,l(n(v)(K.value)),1),d[8]||=c(`span`,{class:`summary-card__unit`},`تومان`,-1),J.value&&!Y.value?(r(),s(`p`,D,[...d[6]||=[c(`span`,{class:`summary-card__status-icon`},`✓`,-1),a(` مبلغ کامل است `,-1)]])):Y.value?(r(),s(`p`,O,` بیش از مبلغ فاکتور `)):e(``,!0)]),c(`div`,{class:i([`summary-card summary-card--remain`,{"summary-card--remain-ok":J.value&&!Y.value,"summary-card--remain-warn":Y.value}])},[d[9]||=c(`span`,{class:`summary-card__label`},`باقی‌مانده`,-1),c(`strong`,k,l(Y.value?n(v)(G.value.totalAmount-K.value):n(v)(q.value)),1),d[10]||=c(`span`,{class:`summary-card__unit`},`تومان`,-1),J.value?e(``,!0):(r(),s(`p`,A,` هنوز باید چک ثبت کنید `))],2)]),c(`div`,j,[(r(!0),s(f,null,u(W.value,(t,i)=>(r(),s(`article`,{key:t.id,class:`check-card`},[c(`div`,M,[V.value&&n(w).draftChecks.length>0?(r(),s(`button`,{key:0,type:`button`,class:`check-card__menu-btn`,"aria-label":`گزینه‌ها`,onClick:e=>Ke(t.id)},` ⋮ `,8,N)):e(``,!0),X.value===t.id?(r(),s(`div`,P,[c(`button`,{type:`button`,onClick:e=>Q(t.id)},`حذف`,8,F)])):e(``,!0)]),c(`div`,I,[c(`h3`,ve,`چک `+l(n(_)(String(i+1))),1),c(`p`,ye,l(n(re)(t.amount)),1),c(`p`,be,`تاریخ: `+l(n(y)(t.dueDate)),1)]),c(`div`,xe,[t.frontImage?(r(),s(`img`,{key:0,src:t.frontImage,class:`check-card__thumb`,alt:`تصویر چک`},null,8,Se)):(r(),s(`div`,Ce,`چک`))])]))),128))]),c(`div`,we,[d[11]||=c(`h3`,{class:`rass-panel__title`},`رأس چک‌ها`,-1),c(`div`,Te,l(n(_)(String(G.value.rassDays)))+` روز`,1),G.value.rassDate?(r(),s(`p`,Ee,` تاریخ رأس تقریبی: `+l(n(y)(G.value.rassDate)),1)):e(``,!0)])]),V.value&&n(w).draftChecks.length>0?(r(),s(`div`,De,[o(b,{block:``,variant:`outline`,disabled:B.value,onClick:Z},{default:p(()=>[...d[12]||=[a(` افزودن چک جدید `,-1)]]),_:1},8,[`disabled`]),o(b,{block:``,disabled:W.value.length===0,loading:B.value,onClick:$},{default:p(()=>[...d[13]||=[a(` ارسال برای بررسی `,-1)]]),_:1},8,[`disabled`,`loading`])])):e(``,!0)],64))]),W.value.length>0?(r(),s(`div`,Oe,[d[26]||=c(`header`,{class:`desktop-page__head`},[c(`h1`,{class:`desktop-page__title`},`چک‌های ثبت شده`),c(`p`,{class:`desktop-page__subtitle`},`خلاصه و فهرست چک‌های ثبت‌شده`)],-1),c(`div`,L,[c(`div`,ke,[c(`div`,Ae,[c(`div`,je,[c(`table`,Me,[c(`thead`,null,[c(`tr`,null,[d[14]||=c(`th`,{scope:`col`},`تصویر`,-1),d[15]||=c(`th`,{scope:`col`},`مبلغ (تومان)`,-1),d[16]||=c(`th`,{scope:`col`},`تاریخ سررسید`,-1),d[17]||=c(`th`,{scope:`col`},`شناسه`,-1),V.value?(r(),s(`th`,Ne,`عملیات`)):e(``,!0)])]),c(`tbody`,null,[(r(!0),s(f,null,u(W.value,(t,i)=>(r(),s(`tr`,{key:t.id},[c(`td`,null,[t.frontImage?(r(),s(`img`,{key:0,src:t.frontImage,class:`check-list-desktop__thumb`,alt:`تصویر چک`},null,8,Pe)):(r(),s(`span`,Fe,`—`))]),c(`td`,Ie,l(n(v)(t.amount)),1),c(`td`,null,l(n(y)(t.dueDate)),1),c(`td`,null,`چک `+l(n(_)(String(i+1))),1),V.value&&n(w).draftChecks.length>0?(r(),s(`td`,Le,[c(`button`,{type:`button`,class:`orders-table__action`,onClick:e=>Q(t.id)},` حذف `,8,Re)])):e(``,!0)]))),128))])])])]),V.value?(r(),t(b,{key:0,variant:`outline`,class:`desktop-btn-compact check-list-desktop__add`,onClick:Z},{default:p(()=>[...d[18]||=[a(` ثبت چک دیگر `,-1)]]),_:1})):e(``,!0)]),c(`aside`,ze,[d[25]||=c(`h2`,{class:`desktop-summary-panel__title`},`خلاصه مالی`,-1),c(`div`,Be,[d[19]||=c(`span`,null,`مجموع چک‌ها`,-1),c(`strong`,null,l(n(v)(G.value.totalAmount))+` تومان`,1)]),c(`div`,Ve,[d[20]||=c(`span`,null,`مبلغ فاکتور`,-1),c(`strong`,null,l(n(v)(K.value))+` تومان`,1)]),c(`div`,{class:i([`desktop-summary-panel__row desktop-summary-panel__row--remain`,{"desktop-summary-panel__row--ok":J.value&&!Y.value,"desktop-summary-panel__row--warn":Y.value}])},[d[21]||=c(`span`,null,`باقی‌مانده`,-1),c(`strong`,null,l(Y.value?`${n(v)(G.value.totalAmount-K.value)} بیش از فاکتور`:J.value?`پوشش کامل`:`${n(v)(q.value)} تومان`),1)],2),c(`div`,He,[d[22]||=c(`span`,null,`رأس چک‌ها`,-1),c(`strong`,null,l(n(_)(String(G.value.rassDays)))+` روز`,1)]),V.value&&n(w).draftChecks.length>0?(r(),s(`div`,Ue,[o(b,{block:``,variant:`outline`,disabled:B.value,onClick:Z},{default:p(()=>[...d[23]||=[a(` افزودن چک جدید `,-1)]]),_:1},8,[`disabled`]),o(b,{block:``,disabled:W.value.length===0,loading:B.value,onClick:$},{default:p(()=>[...d[24]||=[a(` ارسال برای بررسی `,-1)]]),_:1},8,[`disabled`,`loading`])])):e(``,!0)])])])):(r(),s(`div`,We,[o(x,{variant:`checks`,message:`برای ادامه، حداقل یک چک ثبت کنید`},{default:p(()=>[V.value?(r(),t(b,{key:0,onClick:Z},{default:p(()=>[...d[27]||=[a(`ثبت چک جدید`,-1)]]),_:1})):e(``,!0)]),_:1})]))],64))}}),z=w({default:()=>B}),B=m(R,[[`__scopeId`,`data-v-83f3f9a7`]]);export{z as n,B as t}; \ No newline at end of file diff --git a/dist/assets/CheckListView-CjmQVBmc.js b/dist/assets/CheckListView-CjmQVBmc.js new file mode 100644 index 0000000..a59f62d --- /dev/null +++ b/dist/assets/CheckListView-CjmQVBmc.js @@ -0,0 +1 @@ +import{At as e,F as t,G as n,M as r,Pt as i,U as ee,_ as a,c as o,d as s,f as c,g as l,i as u,l as d,nt as f,t as te,u as p,ut as m,v as h}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{d as g,n as ne,o as _,r as v}from"./format-C72AoJ2H.js";import{M as re,c as ie,d as ae,f as oe,j as se,n as y,t as ce}from"./index-BrjLizie.js";import{t as b}from"./EmptyState-D72g65G-.js";import{t as x}from"./IconChevronBack-CDeN0Cbu.js";import{t as le}from"./FormErrorBanner-Ud1D04xf.js";import{t as ue}from"./useRequirePricedOrder-CmTdgjZX.js";var S=Object.defineProperty,C=(e,t)=>{let n={};for(var r in e)S(n,r,{get:e[r],enumerable:!0});return t||S(n,Symbol.toStringTag,{value:`Module`}),n},de={class:`check-list-page mobile-only`},fe={class:`check-list-page__nav`},pe={type:`button`,class:`nav-btn nav-btn--ghost`,"aria-hidden":`true`,tabindex:`-1`},me={key:0,class:`check-list-page__empty page__scroll page__scroll--with-nav`},he={class:`check-list-page__scroll page__scroll`},ge={class:`summary-cards`},_e={class:`summary-card`},w={class:`summary-card__value`},T={class:`summary-card`},E={class:`summary-card__value`},D={key:0,class:`summary-card__status`},O={key:1,class:`summary-card__status summary-card__status--warn`},k={class:`summary-card__value`},A={key:0,class:`summary-card__hint`},j={class:`checks-list`},M={class:`check-card__menu-wrap`},N=[`onClick`],P={key:1,class:`check-card__menu`},F=[`onClick`],I={class:`check-card__body`},ve={class:`check-card__title`},ye={class:`check-card__amount`},be={class:`check-card__date`},xe={class:`check-card__thumb-wrap`},Se=[`src`],Ce={key:1,class:`check-card__thumb check-card__thumb--empty`},we={class:`rass-panel`},Te={class:`rass-panel__days`},Ee={key:0,class:`rass-panel__date`},De={key:0,class:`check-list-page__footer`},Oe={key:0,class:`desktop-checkout-shell check-list-desktop desktop-only`},L={class:`desktop-two-col`},ke={class:`desktop-two-col__main`},Ae={class:`desktop-table-wrap`},je={class:`desktop-table-scroll`},Me={class:`desktop-table check-list-desktop__table`},Ne={key:0,scope:`col`},Pe=[`src`],Fe={key:1},Ie={class:`check-list-desktop__amount`},Le={key:0},Re=[`onClick`],ze={class:`desktop-summary-panel`},Be={class:`desktop-summary-panel__row`},Ve={class:`desktop-summary-panel__row`},He={class:`desktop-summary-panel__row`},Ue={key:0,class:`desktop-summary-panel__action`},We={key:1,class:`desktop-checkout-shell desktop-only`},R=h({__name:`CheckListView`,setup(te){let h=se(),S=re(),C=ae(),R=ie(),z=f(``),B=f(!1),V=o(()=>h.name===`check-list`),{orderId:H}=ue(),U=o(()=>H.value?C.getOrderById(H.value):void 0);ee(H,async e=>{if(!e||!V.value)return;let t=C.getOrderById(e)??await C.fetchOrder(e);t&&(C.draftChecks.length===0&&(t.checks?.length??0)>0?C.loadChecksIntoDraft(t):C.draftOrderId!==e&&C.startCheckDraft(e,t.checkMode??void 0))},{immediate:!0});let W=o(()=>C.draftChecks.length>0?C.draftChecks:V.value?U.value?.checks??[]:R.user?C.userOrders(R.user.id).filter(e=>e.settlementType===`check`&&e.checks?.length).flatMap(e=>e.checks??[]):[]),G=o(()=>C.draftChecks.length>0?C.getDraftRass():oe(W.value,new Date)),K=o(()=>U.value?.finalAmount??0),q=o(()=>Math.max(0,K.value-G.value.totalAmount)),J=o(()=>K.value>0&&G.value.totalAmount>=K.value),Y=o(()=>K.value>0&&G.value.totalAmount>K.value),X=o({get:()=>h.query.menu??``,set:e=>{S.replace({query:e?{menu:e}:{}})}});function Ge(){S.push(V.value?`/orders/${H.value}`:`/profile`)}function Z(){S.push(`/orders/${H.value}/check-form`)}async function Q(e){X.value=``,await ce({title:`حذف چک`,message:`آیا از حذف این چک مطمئن هستید؟`,confirmLabel:`حذف`,cancelLabel:`انصراف`,tone:`danger`})&&C.removeDraftCheck(e)}function Ke(e){X.value=X.value===e?``:e}async function $(){if(!(!H.value||C.draftChecks.length===0||B.value)){z.value=``,B.value=!0;try{await C.updateOrderChecks(H.value,[...C.draftChecks],C.draftCheckMode??`brief`),S.replace(`/orders/${H.value}?track=1`)}catch(e){z.value=e instanceof Error?e.message:`ثبت چک‌ها ناموفق بود.`}finally{B.value=!1}}}return(ee,o)=>(r(),c(u,null,[d(`div`,de,[d(`header`,fe,[d(`button`,{type:`button`,class:`nav-btn`,"aria-label":`بازگشت`,onClick:Ge},[a(x,{size:20})]),o[1]||=d(`h1`,{class:`check-list-page__title`},`چک‌های ثبت شده`,-1),d(`button`,pe,[a(x,{size:18,class:`nav-btn__flip`})])]),W.value.length===0?(r(),c(`div`,me,[a(b,{variant:`checks`,message:`برای ادامه، حداقل یک چک ثبت کنید`},{default:n(()=>[V.value?(r(),p(y,{key:0,onClick:Z},{default:n(()=>[...o[2]||=[l(`ثبت چک جدید`,-1)]]),_:1})):(r(),p(y,{key:1,variant:`outline`,onClick:o[0]||=e=>m(S).push(`/categories`)},{default:n(()=>[...o[3]||=[l(`ثبت سفارش جدید`,-1)]]),_:1}))]),_:1})])):(r(),c(u,{key:1},[d(`div`,he,[a(le,{message:z.value},null,8,[`message`]),d(`div`,ge,[d(`div`,_e,[o[4]||=d(`span`,{class:`summary-card__label`},`مجموع مبلغ چک‌ها`,-1),d(`strong`,w,i(m(_)(G.value.totalAmount)),1),o[5]||=d(`span`,{class:`summary-card__unit`},`تومان`,-1)]),d(`div`,T,[o[7]||=d(`span`,{class:`summary-card__label`},`مبلغ فاکتور`,-1),d(`strong`,E,i(m(_)(K.value)),1),o[8]||=d(`span`,{class:`summary-card__unit`},`تومان`,-1),J.value&&!Y.value?(r(),c(`p`,D,[...o[6]||=[d(`span`,{class:`summary-card__status-icon`},`✓`,-1),l(` مبلغ کامل است `,-1)]])):Y.value?(r(),c(`p`,O,` بیش از مبلغ فاکتور `)):s(``,!0)]),d(`div`,{class:e([`summary-card summary-card--remain`,{"summary-card--remain-ok":J.value&&!Y.value,"summary-card--remain-warn":Y.value}])},[o[9]||=d(`span`,{class:`summary-card__label`},`باقی‌مانده`,-1),d(`strong`,k,i(Y.value?m(_)(G.value.totalAmount-K.value):m(_)(q.value)),1),o[10]||=d(`span`,{class:`summary-card__unit`},`تومان`,-1),J.value?s(``,!0):(r(),c(`p`,A,` هنوز باید چک ثبت کنید `))],2)]),d(`div`,j,[(r(!0),c(u,null,t(W.value,(e,t)=>(r(),c(`article`,{key:e.id,class:`check-card`},[d(`div`,M,[V.value&&m(C).draftChecks.length>0?(r(),c(`button`,{key:0,type:`button`,class:`check-card__menu-btn`,"aria-label":`گزینه‌ها`,onClick:t=>Ke(e.id)},` ⋮ `,8,N)):s(``,!0),X.value===e.id?(r(),c(`div`,P,[d(`button`,{type:`button`,onClick:t=>Q(e.id)},`حذف`,8,F)])):s(``,!0)]),d(`div`,I,[d(`h3`,ve,`چک `+i(m(g)(String(t+1))),1),d(`p`,ye,i(m(ne)(e.amount)),1),d(`p`,be,`تاریخ: `+i(m(v)(e.dueDate)),1)]),d(`div`,xe,[e.frontImage?(r(),c(`img`,{key:0,src:e.frontImage,class:`check-card__thumb`,alt:`تصویر چک`},null,8,Se)):(r(),c(`div`,Ce,`چک`))])]))),128))]),d(`div`,we,[o[11]||=d(`h3`,{class:`rass-panel__title`},`رأس چک‌ها`,-1),d(`div`,Te,i(m(g)(String(G.value.rassDays)))+` روز`,1),G.value.rassDate?(r(),c(`p`,Ee,` تاریخ رأس تقریبی: `+i(m(v)(G.value.rassDate)),1)):s(``,!0)])]),V.value&&m(C).draftChecks.length>0?(r(),c(`div`,De,[a(y,{block:``,variant:`outline`,disabled:B.value,onClick:Z},{default:n(()=>[...o[12]||=[l(` افزودن چک جدید `,-1)]]),_:1},8,[`disabled`]),a(y,{block:``,disabled:W.value.length===0,loading:B.value,onClick:$},{default:n(()=>[...o[13]||=[l(` ارسال برای بررسی `,-1)]]),_:1},8,[`disabled`,`loading`])])):s(``,!0)],64))]),W.value.length>0?(r(),c(`div`,Oe,[o[26]||=d(`header`,{class:`desktop-page__head`},[d(`h1`,{class:`desktop-page__title`},`چک‌های ثبت شده`),d(`p`,{class:`desktop-page__subtitle`},`خلاصه و فهرست چک‌های ثبت‌شده`)],-1),d(`div`,L,[d(`div`,ke,[d(`div`,Ae,[d(`div`,je,[d(`table`,Me,[d(`thead`,null,[d(`tr`,null,[o[14]||=d(`th`,{scope:`col`},`تصویر`,-1),o[15]||=d(`th`,{scope:`col`},`مبلغ (تومان)`,-1),o[16]||=d(`th`,{scope:`col`},`تاریخ سررسید`,-1),o[17]||=d(`th`,{scope:`col`},`شناسه`,-1),V.value?(r(),c(`th`,Ne,`عملیات`)):s(``,!0)])]),d(`tbody`,null,[(r(!0),c(u,null,t(W.value,(e,t)=>(r(),c(`tr`,{key:e.id},[d(`td`,null,[e.frontImage?(r(),c(`img`,{key:0,src:e.frontImage,class:`check-list-desktop__thumb`,alt:`تصویر چک`},null,8,Pe)):(r(),c(`span`,Fe,`—`))]),d(`td`,Ie,i(m(_)(e.amount)),1),d(`td`,null,i(m(v)(e.dueDate)),1),d(`td`,null,`چک `+i(m(g)(String(t+1))),1),V.value&&m(C).draftChecks.length>0?(r(),c(`td`,Le,[d(`button`,{type:`button`,class:`orders-table__action`,onClick:t=>Q(e.id)},` حذف `,8,Re)])):s(``,!0)]))),128))])])])]),V.value?(r(),p(y,{key:0,variant:`outline`,class:`desktop-btn-compact check-list-desktop__add`,onClick:Z},{default:n(()=>[...o[18]||=[l(` ثبت چک دیگر `,-1)]]),_:1})):s(``,!0)]),d(`aside`,ze,[o[25]||=d(`h2`,{class:`desktop-summary-panel__title`},`خلاصه مالی`,-1),d(`div`,Be,[o[19]||=d(`span`,null,`مجموع چک‌ها`,-1),d(`strong`,null,i(m(_)(G.value.totalAmount))+` تومان`,1)]),d(`div`,Ve,[o[20]||=d(`span`,null,`مبلغ فاکتور`,-1),d(`strong`,null,i(m(_)(K.value))+` تومان`,1)]),d(`div`,{class:e([`desktop-summary-panel__row desktop-summary-panel__row--remain`,{"desktop-summary-panel__row--ok":J.value&&!Y.value,"desktop-summary-panel__row--warn":Y.value}])},[o[21]||=d(`span`,null,`باقی‌مانده`,-1),d(`strong`,null,i(Y.value?`${m(_)(G.value.totalAmount-K.value)} بیش از فاکتور`:J.value?`پوشش کامل`:`${m(_)(q.value)} تومان`),1)],2),d(`div`,He,[o[22]||=d(`span`,null,`رأس چک‌ها`,-1),d(`strong`,null,i(m(g)(String(G.value.rassDays)))+` روز`,1)]),V.value&&m(C).draftChecks.length>0?(r(),c(`div`,Ue,[a(y,{block:``,variant:`outline`,disabled:B.value,onClick:Z},{default:n(()=>[...o[23]||=[l(` افزودن چک جدید `,-1)]]),_:1},8,[`disabled`]),a(y,{block:``,disabled:W.value.length===0,loading:B.value,onClick:$},{default:n(()=>[...o[24]||=[l(` ارسال برای بررسی `,-1)]]),_:1},8,[`disabled`,`loading`])])):s(``,!0)])])])):(r(),c(`div`,We,[a(b,{variant:`checks`,message:`برای ادامه، حداقل یک چک ثبت کنید`},{default:n(()=>[V.value?(r(),p(y,{key:0,onClick:Z},{default:n(()=>[...o[27]||=[l(`ثبت چک جدید`,-1)]]),_:1})):s(``,!0)]),_:1})]))],64))}}),z=C({default:()=>B}),B=te(R,[[`__scopeId`,`data-v-83f3f9a7`]]);export{z as n,B as t}; \ No newline at end of file diff --git a/dist/assets/CheckModeSelectView-BZfruEWx.js b/dist/assets/CheckModeSelectView-BZfruEWx.js deleted file mode 100644 index f73a207..0000000 --- a/dist/assets/CheckModeSelectView-BZfruEWx.js +++ /dev/null @@ -1 +0,0 @@ -import{Et as e,J as t,N as n,O as r,P as i,T as a,Xt as o,at as s,g as c,t as l,w as u}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";import{n as d}from"./format-C72AoJ2H.js";import{C as f,d as p}from"./index-BAQfYU-Q.js";import{t as m}from"./IconEditPen-LGjdaNbi.js";import{t as h}from"./PageHeader-DTO8lja2.js";import{t as g}from"./useRequirePricedOrder-DWh7nbsh.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=c(),w=p(),{orderId:T,order:E}=g(),D=u(()=>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,s)=>(t(),r(`div`,_,[n(h,{title:`تسویه چکی`,subtitle:`بر اساس مبلغ فاکتور، نحوه ثبت چک را انتخاب کنید`,"show-back":``,centered:``,onBack:s[0]||=t=>e(l).push(`/orders/${e(T)}`)}),a(`div`,v,[a(`div`,y,[s[3]||=a(`span`,{class:`check-mode-invoice__label`},`مبلغ فاکتور`,-1),a(`strong`,b,o(D.value),1)]),a(`div`,x,[a(`button`,{type:`button`,class:`mode-card`,onClick:s[1]||=e=>O(`full`)},[a(`span`,S,[n(f,{size:36})]),s[4]||=a(`h3`,{class:`mode-card__title`},`ثبت کامل (پیشنهادی)`,-1),s[5]||=a(`p`,{class:`mode-card__desc`},`وارد کردن همه اطلاعات چک`,-1)]),a(`button`,{type:`button`,class:`mode-card`,onClick:s[2]||=e=>O(`brief`)},[a(`span`,C,[n(m,{size:36})]),s[6]||=a(`h3`,{class:`mode-card__title`},`ثبت مختصر`,-1),s[7]||=a(`p`,{class:`mode-card__desc`},`وارد کردن حداقل اطلاعات`,-1)])])])]))}}),[[`__scopeId`,`data-v-680065b0`]]);export{w as default}; \ No newline at end of file diff --git a/dist/assets/CheckModeSelectView-DXLWag4X.js b/dist/assets/CheckModeSelectView-DXLWag4X.js new file mode 100644 index 0000000..9cea19e --- /dev/null +++ b/dist/assets/CheckModeSelectView-DXLWag4X.js @@ -0,0 +1 @@ +import{M as e,Pt as t,U as n,_ as r,c as i,f as a,l as o,t as s,ut as c,v as l}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{n as u}from"./format-C72AoJ2H.js";import{C as d,M as f,d as p}from"./index-BrjLizie.js";import{t as m}from"./IconEditPen-DkMxper9.js";import{t as h}from"./PageHeader-BSsCNguu.js";import{t as g}from"./useRequirePricedOrder-CmTdgjZX.js";var _={class:`page check-mode-page`},v={class:`page__scroll check-mode-page__scroll`},y={class:`check-mode-invoice`},b={class:`check-mode-invoice__value`},x={class:`mode-options`},S={class:`mode-card__icon`},C={class:`mode-card__icon`},w=s(l({__name:`CheckModeSelectView`,setup(s){let l=f(),w=p(),{orderId:T,order:E}=g(),D=i(()=>E.value?.finalAmount?u(E.value.finalAmount):`—`);n(T,async e=>{e&&(w.getOrderById(e)||await w.fetchOrder(e),w.draftOrderId!==e&&w.startCheckDraft(e))},{immediate:!0});function O(e){w.setCheckMode(e),l.push(`/orders/${T.value}/check-form`)}return(n,i)=>(e(),a(`div`,_,[r(h,{title:`تسویه چکی`,subtitle:`بر اساس مبلغ فاکتور، نحوه ثبت چک را انتخاب کنید`,"show-back":``,centered:``,onBack:i[0]||=e=>c(l).push(`/orders/${c(T)}`)}),o(`div`,v,[o(`div`,y,[i[3]||=o(`span`,{class:`check-mode-invoice__label`},`مبلغ فاکتور`,-1),o(`strong`,b,t(D.value),1)]),o(`div`,x,[o(`button`,{type:`button`,class:`mode-card`,onClick:i[1]||=e=>O(`full`)},[o(`span`,S,[r(d,{size:36})]),i[4]||=o(`h3`,{class:`mode-card__title`},`ثبت کامل (پیشنهادی)`,-1),i[5]||=o(`p`,{class:`mode-card__desc`},`وارد کردن همه اطلاعات چک`,-1)]),o(`button`,{type:`button`,class:`mode-card`,onClick:i[2]||=e=>O(`brief`)},[o(`span`,C,[r(m,{size:36})]),i[6]||=o(`h3`,{class:`mode-card__title`},`ثبت مختصر`,-1),i[7]||=o(`p`,{class:`mode-card__desc`},`وارد کردن حداقل اطلاعات`,-1)])])])]))}}),[[`__scopeId`,`data-v-680065b0`]]);export{w as default}; \ No newline at end of file diff --git a/dist/assets/CheckoutStepper-DptjKnv0.js b/dist/assets/CheckoutStepper-DptjKnv0.js new file mode 100644 index 0000000..e267d43 --- /dev/null +++ b/dist/assets/CheckoutStepper-DptjKnv0.js @@ -0,0 +1 @@ +import{At as e,F as t,M as n,Pt as r,d as i,f as a,g as o,i as s,l as c,t as l,v as u}from"./_plugin-vue_export-helper-1xMDlcEE.js";var d={class:`checkout-stepper`,"aria-label":`مراحل تسویه`},f={class:`checkout-stepper__dot`},p={key:0,class:`checkout-stepper__check`},m={class:`checkout-stepper__label`},h={key:0,class:`checkout-stepper__bridge`,"aria-hidden":`true`},g=l(u({__name:`CheckoutStepper`,props:{currentStep:{}},setup(l){let u=[{num:1,label:`سبد خرید`},{num:2,label:`پیش‌سفارش`},{num:3,label:`صدور فاکتور`},{num:4,label:`تسویه`}];return(g,_)=>(n(),a(`nav`,d,[(n(),a(s,null,t(u,(t,d)=>(n(),a(s,{key:t.num},[c(`div`,{class:e([`checkout-stepper__item`,{"checkout-stepper__item--done":t.num(t(),i(`nav`,d,[(t(),i(l,null,c(u,(c,d)=>(t(),i(l,{key:c.num},[o(`div`,{class:n([`checkout-stepper__item`,{"checkout-stepper__item--done":c.num_.modelValue,e=>{let t=d(e??``);y.value=t?u(Number(t)):``},{immediate:!0});function b(e){let t=e.target,n=d(t.value);y.value=n?u(Number(n)):``,v(`update:modelValue`,n)}return(r,s)=>(t(),a(`div`,f,[c.label?(t(),a(`label`,p,n(c.label),1)):i(``,!0),o(`input`,{class:e([`input`,{"input-error":c.error}]),type:`text`,inputmode:`numeric`,dir:`ltr`,value:y.value,placeholder:c.placeholder,disabled:c.disabled,onInput:b},null,42,m),c.error?(t(),a(`p`,h,n(c.error),1)):c.hint?(t(),a(`p`,g,n(c.hint),1)):i(``,!0)]))}}),[[`__scopeId`,`data-v-1becf1bc`]]);export{_ as t}; \ No newline at end of file diff --git a/dist/assets/CurrencyInput-D6gR57Z3.js b/dist/assets/CurrencyInput-D6gR57Z3.js deleted file mode 100644 index a0ff56d..0000000 --- a/dist/assets/CurrencyInput-D6gR57Z3.js +++ /dev/null @@ -1 +0,0 @@ -import{D as e,J as t,Kt as n,O as r,P as i,T as a,Xt as o,at as s,t as c,vt as l}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";import{o as u,t as d}from"./format-C72AoJ2H.js";var f={class:`form-group`},p={key:0,class:`form-label`},m=[`value`,`placeholder`,`disabled`],h={key:1,class:`input-error-text`},g={key:2,class:`form-hint`},_=c(i({__name:`CurrencyInput`,props:{modelValue:{},label:{},placeholder:{},hint:{},error:{},disabled:{type:Boolean}},emits:[`update:modelValue`],setup(i,{emit:c}){let _=i,v=c,y=l(``);s(()=>_.modelValue,e=>{let t=d(e??``);y.value=t?u(Number(t)):``},{immediate:!0});function b(e){let t=e.target,n=d(t.value);y.value=n?u(Number(n)):``,v(`update:modelValue`,n)}return(s,c)=>(t(),r(`div`,f,[i.label?(t(),r(`label`,p,o(i.label),1)):e(``,!0),a(`input`,{class:n([`input`,{"input-error":i.error}]),type:`text`,inputmode:`numeric`,dir:`ltr`,value:y.value,placeholder:i.placeholder,disabled:i.disabled,onInput:b},null,42,m),i.error?(t(),r(`p`,h,o(i.error),1)):i.hint?(t(),r(`p`,g,o(i.hint),1)):e(``,!0)]))}}),[[`__scopeId`,`data-v-1becf1bc`]]);export{_ as t}; \ No newline at end of file diff --git a/dist/assets/CustomerCreateOverlay-BlatCdeJ.js b/dist/assets/CustomerCreateOverlay-BlatCdeJ.js deleted file mode 100644 index 99176e4..0000000 --- a/dist/assets/CustomerCreateOverlay-BlatCdeJ.js +++ /dev/null @@ -1 +0,0 @@ -import{D as e,E as t,J as n,M as r,N as i,O as a,P as o,S as s,T as c,U as l,Xt as u,at as d,st as f,t as p,vt as m,w as h}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";import{n as g,u as _}from"./BasicIcon-BXxbbWA_.js";import{t as v}from"./http-CeONvUNq.js";import{l as y}from"./format-C72AoJ2H.js";import{a as b}from"./validation-Duyyve7l.js";import{c as x,n as S}from"./index-BAQfYU-Q.js";import{t as C}from"./FormErrorBanner-DI5hhxpk.js";import{n as w,r as T,t as E}from"./formErrors-DglFjYkZ.js";import{t as D}from"./crm-CooNUbmr.js";import{t as O}from"./BaseInput-CVNdy37R.js";var k={class:`customer-create-form`},A={key:0,class:`customer-create-form__intro`},j={class:`customer-create-form__fields`},M=p(o({__name:`CustomerCreateForm`,props:{customerId:{},initial:{}},emits:[`success`],setup(t,{expose:o,emit:s}){let l=t,p=s,h=x(),g=D(),_=m(``),M=m(``),N=m(``),P=m(``),F=m({}),I=m(``),L=m(!1),R=()=>!!l.customerId;function z(e){_.value=e?.firstName??``,M.value=e?.lastName??``,N.value=e?.phone??``,P.value=e?.businessName??``,F.value={},I.value=``}d(()=>l.initial,e=>z(e),{immediate:!0});function B(e){F.value=w(F.value,e),T(F.value)||(I.value=``)}async function V(){if(F.value={},I.value=``,!h.isAgent){I.value=`فقط واسطه می‌تواند مشتری به لیست خود اضافه کند.`;return}let e=y(N.value),t={};if(_.value.trim()||(t.firstName=`نام الزامی است.`),M.value.trim()||(t.lastName=`نام خانوادگی الزامی است.`),b(e)||(t.phone=`شماره موبایل معتبر نیست.`),T(t)){F.value=t,I.value=E;return}let n={firstName:_.value.trim(),lastName:M.value.trim(),phone:e,businessName:P.value.trim()||void 0};L.value=!0;try{if(R()&&l.customerId){let e=await g.updateCustomer(l.customerId,n);p(`success`,e?.id??l.customerId);return}let e=await g.registerCustomer(n);p(`success`,e?.id)}catch(e){I.value=e instanceof v||e instanceof Error?e.message:R()?`ویرایش مشتری ناموفق بود.`:`ثبت مشتری ناموفق بود.`}finally{L.value=!1}}return o({submit:V,saving:L}),(t,o)=>(n(),a(`div`,k,[R()?e(``,!0):(n(),a(`p`,A,` مشتری به لیست شما اضافه می‌شود و بعد از ورود با همین شماره، سفارش‌هایش به حساب شما وصل می‌ماند. `)),i(C,{message:I.value},null,8,[`message`]),c(`div`,j,[i(O,{modelValue:_.value,"onUpdate:modelValue":[o[0]||=e=>_.value=e,o[1]||=e=>B(`firstName`)],label:`نام`,placeholder:`نام مشتری`,error:F.value.firstName},null,8,[`modelValue`,`error`]),i(O,{modelValue:M.value,"onUpdate:modelValue":[o[2]||=e=>M.value=e,o[3]||=e=>B(`lastName`)],label:`نام خانوادگی`,placeholder:`نام خانوادگی`,error:F.value.lastName},null,8,[`modelValue`,`error`]),i(O,{modelValue:N.value,"onUpdate:modelValue":[o[4]||=e=>N.value=e,o[5]||=e=>B(`phone`)],label:`شماره موبایل`,type:`tel`,inputmode:`tel`,dir:`ltr`,placeholder:`۰۹۱۲۳۴۵۶۷۸۹`,error:F.value.phone},null,8,[`modelValue`,`error`]),i(O,{modelValue:P.value,"onUpdate:modelValue":o[6]||=e=>P.value=e,label:`نام فروشگاه یا برند (اختیاری)`,placeholder:`مثلاً بوتیک رز`},null,8,[`modelValue`])]),i(S,{block:``,loading:L.value,disabled:L.value,onClick:V},{default:f(()=>[r(u(R()?`ذخیره تغییرات`:`ثبت مشتری`),1)]),_:1},8,[`loading`,`disabled`])]))}}),[[`__scopeId`,`data-v-4f911c6f`]]),N={class:`customer-create-sheet`},P={class:`customer-create-sheet__head`},F={id:`customer-create-title`},I=p(o({__name:`CustomerCreateOverlay`,props:{open:{type:Boolean},customerId:{},initial:{},title:{}},emits:[`close`,`success`],setup(r,{emit:o}){let p=r,m=h(()=>p.title??(p.customerId?`ویرایش مشتری`:`افزودن مشتری`)),v=o;function y(){v(`close`)}function b(e){v(`success`,e)}function x(e){e.key===`Escape`&&p.open&&y()}return d(()=>p.open,e=>{document.body.style.overflow=e?`hidden`:``,e?window.addEventListener(`keydown`,x):window.removeEventListener(`keydown`,x)},{immediate:!0}),l(()=>{document.body.style.overflow=``,window.removeEventListener(`keydown`,x)}),(o,l)=>(n(),t(s,{to:`body`},[i(g,{name:`customer-create-sheet`},{default:f(()=>[r.open?(n(),a(`div`,{key:0,class:`customer-create-overlay`,role:`dialog`,"aria-modal":`true`,"aria-labelledby":`customer-create-title`,onClick:_(y,[`self`])},[c(`div`,N,[l[0]||=c(`div`,{class:`customer-create-sheet__handle`,"aria-hidden":`true`},null,-1),c(`header`,P,[c(`h2`,F,u(m.value),1),c(`button`,{type:`button`,class:`customer-create-sheet__close`,"aria-label":`بستن`,onClick:y},` × `)]),i(M,{"customer-id":r.customerId,initial:r.initial,onSuccess:b},null,8,[`customer-id`,`initial`])])])):e(``,!0)]),_:1})]))}}),[[`__scopeId`,`data-v-ac91feb8`]]);export{I as t}; \ No newline at end of file diff --git a/dist/assets/CustomerCreateOverlay-iQAyp2AI.js b/dist/assets/CustomerCreateOverlay-iQAyp2AI.js new file mode 100644 index 0000000..66f28b1 --- /dev/null +++ b/dist/assets/CustomerCreateOverlay-iQAyp2AI.js @@ -0,0 +1 @@ +import{D as e,G as t,M as n,Pt as r,U as i,_ as a,c as o,d as s,f as c,g as l,l as u,nt as d,o as f,t as p,u as m,v as h}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{n as g,u as _}from"./BasicIcon-Bzeb0Iwd.js";import{t as v}from"./http-Cmeatq0_.js";import{l as y}from"./format-C72AoJ2H.js";import{a as b}from"./validation-Duyyve7l.js";import{c as x,n as S}from"./index-BrjLizie.js";import{t as C}from"./FormErrorBanner-Ud1D04xf.js";import{n as w,r as T,t as E}from"./formErrors-DglFjYkZ.js";import{t as D}from"./crm-DoYzOa8A.js";import{t as O}from"./BaseInput-CpE3bVJZ.js";var k={class:`customer-create-form`},A={key:0,class:`customer-create-form__intro`},j={class:`customer-create-form__fields`},M=p(h({__name:`CustomerCreateForm`,props:{customerId:{},initial:{}},emits:[`success`],setup(e,{expose:o,emit:f}){let p=e,m=f,h=x(),g=D(),_=d(``),M=d(``),N=d(``),P=d(``),F=d({}),I=d(``),L=d(!1),R=()=>!!p.customerId;function z(e){_.value=e?.firstName??``,M.value=e?.lastName??``,N.value=e?.phone??``,P.value=e?.businessName??``,F.value={},I.value=``}i(()=>p.initial,e=>z(e),{immediate:!0});function B(e){F.value=w(F.value,e),T(F.value)||(I.value=``)}async function V(){if(F.value={},I.value=``,!h.isAgent){I.value=`فقط واسطه می‌تواند مشتری به لیست خود اضافه کند.`;return}let e=y(N.value),t={};if(_.value.trim()||(t.firstName=`نام الزامی است.`),M.value.trim()||(t.lastName=`نام خانوادگی الزامی است.`),b(e)||(t.phone=`شماره موبایل معتبر نیست.`),T(t)){F.value=t,I.value=E;return}let n={firstName:_.value.trim(),lastName:M.value.trim(),phone:e,businessName:P.value.trim()||void 0};L.value=!0;try{if(R()&&p.customerId){let e=await g.updateCustomer(p.customerId,n);m(`success`,e?.id??p.customerId);return}let e=await g.registerCustomer(n);m(`success`,e?.id)}catch(e){I.value=e instanceof v||e instanceof Error?e.message:R()?`ویرایش مشتری ناموفق بود.`:`ثبت مشتری ناموفق بود.`}finally{L.value=!1}}return o({submit:V,saving:L}),(e,i)=>(n(),c(`div`,k,[R()?s(``,!0):(n(),c(`p`,A,` مشتری به لیست شما اضافه می‌شود و بعد از ورود با همین شماره، سفارش‌هایش به حساب شما وصل می‌ماند. `)),a(C,{message:I.value},null,8,[`message`]),u(`div`,j,[a(O,{modelValue:_.value,"onUpdate:modelValue":[i[0]||=e=>_.value=e,i[1]||=e=>B(`firstName`)],label:`نام`,placeholder:`نام مشتری`,error:F.value.firstName},null,8,[`modelValue`,`error`]),a(O,{modelValue:M.value,"onUpdate:modelValue":[i[2]||=e=>M.value=e,i[3]||=e=>B(`lastName`)],label:`نام خانوادگی`,placeholder:`نام خانوادگی`,error:F.value.lastName},null,8,[`modelValue`,`error`]),a(O,{modelValue:N.value,"onUpdate:modelValue":[i[4]||=e=>N.value=e,i[5]||=e=>B(`phone`)],label:`شماره موبایل`,type:`tel`,inputmode:`tel`,dir:`ltr`,placeholder:`۰۹۱۲۳۴۵۶۷۸۹`,error:F.value.phone},null,8,[`modelValue`,`error`]),a(O,{modelValue:P.value,"onUpdate:modelValue":i[6]||=e=>P.value=e,label:`نام فروشگاه یا برند (اختیاری)`,placeholder:`مثلاً بوتیک رز`},null,8,[`modelValue`])]),a(S,{block:``,loading:L.value,disabled:L.value,onClick:V},{default:t(()=>[l(r(R()?`ذخیره تغییرات`:`ثبت مشتری`),1)]),_:1},8,[`loading`,`disabled`])]))}}),[[`__scopeId`,`data-v-4f911c6f`]]),N={class:`customer-create-sheet`},P={class:`customer-create-sheet__head`},F={id:`customer-create-title`},I=p(h({__name:`CustomerCreateOverlay`,props:{open:{type:Boolean},customerId:{},initial:{},title:{}},emits:[`close`,`success`],setup(l,{emit:d}){let p=l,h=o(()=>p.title??(p.customerId?`ویرایش مشتری`:`افزودن مشتری`)),v=d;function y(){v(`close`)}function b(e){v(`success`,e)}function x(e){e.key===`Escape`&&p.open&&y()}return i(()=>p.open,e=>{document.body.style.overflow=e?`hidden`:``,e?window.addEventListener(`keydown`,x):window.removeEventListener(`keydown`,x)},{immediate:!0}),e(()=>{document.body.style.overflow=``,window.removeEventListener(`keydown`,x)}),(e,i)=>(n(),m(f,{to:`body`},[a(g,{name:`customer-create-sheet`},{default:t(()=>[l.open?(n(),c(`div`,{key:0,class:`customer-create-overlay`,role:`dialog`,"aria-modal":`true`,"aria-labelledby":`customer-create-title`,onClick:_(y,[`self`])},[u(`div`,N,[i[0]||=u(`div`,{class:`customer-create-sheet__handle`,"aria-hidden":`true`},null,-1),u(`header`,P,[u(`h2`,F,r(h.value),1),u(`button`,{type:`button`,class:`customer-create-sheet__close`,"aria-label":`بستن`,onClick:y},` × `)]),a(M,{"customer-id":l.customerId,initial:l.initial,onSuccess:b},null,8,[`customer-id`,`initial`])])])):s(``,!0)]),_:1})]))}}),[[`__scopeId`,`data-v-ac91feb8`]]);export{I as t}; \ No newline at end of file diff --git a/dist/assets/CustomerDetailView-Cvk2MqwU.js b/dist/assets/CustomerDetailView-Cvk2MqwU.js deleted file mode 100644 index 7219e9f..0000000 --- a/dist/assets/CustomerDetailView-Cvk2MqwU.js +++ /dev/null @@ -1 +0,0 @@ -import{A as e,D as t,E as n,Et as r,G as i,J as a,Kt as o,M as s,N as c,O as l,P as u,S as d,T as f,U as p,Xt as m,Yt as h,Z as g,at as _,b as v,ct as y,g as b,h as x,st as S,t as C,vt as w,w as T}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";import{l as E,n as D,s as O,t as k,u as A}from"./BasicIcon-BXxbbWA_.js";import{d as j,o as M}from"./format-C72AoJ2H.js";import{O as N,c as P,o as F}from"./index-BAQfYU-Q.js";import{r as I,t as ee}from"./constants-DXXK14Zz.js";import{t as L}from"./IconProgressClock-CpMlnCU2.js";import{t as te}from"./IconPhone-ZmPXu1y3.js";import{t as ne}from"./IconEditPen-LGjdaNbi.js";import{t as re}from"./IconClipboardEmpty-BdL7YkiR.js";import{t as ie}from"./PageHeader-DTO8lja2.js";import{t as ae}from"./PageSkeleton-DHtB6RUa.js";import{t as oe}from"./crm-CooNUbmr.js";import{t as R}from"./PersianDateInput-CTe_lYug.js";import{t as se}from"./CustomerCreateOverlay-BlatCdeJ.js";var ce=u({__name:`IconMail`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,r)=>(a(),n(k,{icon:`vuesax-linear:sms`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),z={key:0,class:`form-label`},B=[`disabled`],V={class:`time-input__icon`,"aria-hidden":`true`},le={class:`time-input__picker`,role:`group`,"aria-label":`انتخاب ساعت`},H={class:`time-input__spinner`},U={class:`time-input__value`},ue={class:`time-input__spinner`},W={class:`time-input__value`},de={key:2,class:`input-error-text`},G={key:3,class:`form-hint`},K=C(u({__name:`TimeInput`,props:{modelValue:{},label:{},placeholder:{},hint:{},error:{},disabled:{type:Boolean}},emits:[`update:modelValue`],setup(e,{emit:n}){let s=e,u=n,d=w(null),h=w(!1),g=w(10),v=w(0),y=[0,5,10,15,20,25,30,35,40,45,50,55],b=T(()=>C(s.modelValue??``)),x=T(()=>b.value?E(b.value.hour,b.value.minute):``);_(()=>s.modelValue,e=>{let t=C(e??``);t&&(g.value=t.hour,v.value=S(t.minute))},{immediate:!0});function S(e){let t=Math.round(e/5)*5;return t===60?55:t}function C(e){let t=/^(\d{1,2}):(\d{2})$/.exec(e.trim());if(!t)return null;let n=Number(t[1]),r=Number(t[2]);return n<0||n>23||r<0||r>59?null:{hour:n,minute:r}}function E(e,t){return j(`${String(e).padStart(2,`0`)}:${String(t).padStart(2,`0`)}`)}function D(e,t){return`${String(e).padStart(2,`0`)}:${String(t).padStart(2,`0`)}`}function O(){if(!s.disabled){if(!h.value)if(b.value)g.value=b.value.hour,v.value=S(b.value.minute);else{let e=new Date;g.value=e.getHours(),v.value=S(e.getMinutes())}h.value=!h.value}}function k(){h.value=!1}function M(e){g.value=(g.value+e+24)%24}function N(e){let t=y.indexOf(v.value),n=((t<0?0:t)+e+y.length)%y.length;v.value=y[n]??0}function P(){u(`update:modelValue`,D(g.value,v.value)),k()}function F(){let e=new Date,t=e.getHours(),n=S(e.getMinutes());g.value=t,v.value=n,u(`update:modelValue`,D(t,n)),k()}function I(e){d.value?.contains(e.target)||k()}return i(()=>{document.addEventListener(`click`,I)}),p(()=>{document.removeEventListener(`click`,I)}),(n,i)=>(a(),l(`div`,{ref_key:`rootRef`,ref:d,class:`form-group time-input`},[e.label?(a(),l(`label`,z,m(e.label),1)):t(``,!0),f(`button`,{type:`button`,class:o([`input time-input__trigger`,{"input-error":e.error,"is-open":h.value}]),disabled:e.disabled,onClick:A(O,[`stop`])},[f(`span`,{class:o({"time-input__placeholder":!x.value})},m(x.value||e.placeholder||`انتخاب ساعت`),3),f(`span`,V,[c(L,{size:18})])],10,B),h.value?(a(),l(`div`,{key:1,class:`time-input__panel`,onClick:i[4]||=A(()=>{},[`stop`])},[f(`div`,le,[f(`div`,H,[i[7]||=f(`span`,{class:`time-input__spinner-label`},`ساعت`,-1),f(`button`,{type:`button`,class:`time-input__step`,"aria-label":`یک ساعت بعد`,onClick:i[0]||=e=>M(1)},[...i[5]||=[f(`svg`,{width:`14`,height:`14`,viewBox:`0 0 24 24`,"aria-hidden":`true`},[f(`path`,{d:`M6 14l6-6 6 6`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`})],-1)]]),f(`strong`,U,m(r(j)(String(g.value).padStart(2,`0`))),1),f(`button`,{type:`button`,class:`time-input__step`,"aria-label":`یک ساعت قبل`,onClick:i[1]||=e=>M(-1)},[...i[6]||=[f(`svg`,{width:`14`,height:`14`,viewBox:`0 0 24 24`,"aria-hidden":`true`},[f(`path`,{d:`M6 10l6 6 6-6`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`})],-1)]])]),i[11]||=f(`span`,{class:`time-input__colon`,"aria-hidden":`true`},`:`,-1),f(`div`,ue,[i[10]||=f(`span`,{class:`time-input__spinner-label`},`دقیقه`,-1),f(`button`,{type:`button`,class:`time-input__step`,"aria-label":`پنج دقیقه بعد`,onClick:i[2]||=e=>N(1)},[...i[8]||=[f(`svg`,{width:`14`,height:`14`,viewBox:`0 0 24 24`,"aria-hidden":`true`},[f(`path`,{d:`M6 14l6-6 6 6`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`})],-1)]]),f(`strong`,W,m(r(j)(String(v.value).padStart(2,`0`))),1),f(`button`,{type:`button`,class:`time-input__step`,"aria-label":`پنج دقیقه قبل`,onClick:i[3]||=e=>N(-1)},[...i[9]||=[f(`svg`,{width:`14`,height:`14`,viewBox:`0 0 24 24`,"aria-hidden":`true`},[f(`path`,{d:`M6 10l6 6 6-6`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`})],-1)]])])]),f(`div`,{class:`time-input__footer`},[f(`button`,{type:`button`,class:`time-input__now`,onClick:F},`اکنون`),f(`button`,{type:`button`,class:`time-input__confirm`,onClick:P},`تأیید`)])])):t(``,!0),e.error?(a(),l(`p`,de,m(e.error),1)):e.hint?(a(),l(`p`,G,m(e.hint),1)):t(``,!0)],512))}}),[[`__scopeId`,`data-v-fbdfb138`]]),fe={class:`meeting-report-form`},pe={key:1,class:`form-error`},me={class:`customer-card`},q={dir:`ltr`},he={class:`type-grid`},J=[`onClick`],ge={class:`two-cols two-cols--date`},Y={class:`field`},_e={class:`field`},X={class:`reminder-box`},Z={class:`reminder-box__head`},Q=[`aria-pressed`],$={class:`field`},ve={class:`two-cols two-cols--date`},ye={class:`field`},be=[`disabled`],xe=C(u({__name:`MeetingReportForm`,props:{customerId:{}},emits:[`success`],setup(e,{emit:r}){let s=e,u=r,d=oe(),p=w(null),b=w(!0),x=w(!1),S=w(null),C=w(`in_person`),T=w(``),E=w(``),D=w(``),k=w(``),A=w(!0),j=w(``),M=w(``),N=w(``),P=w(``),F=[{id:`in_person`,label:`ملاقات حضوری`,icon:`clipboard`},{id:`call`,label:`تماس تلفنی`,icon:`phone`},{id:`message`,label:`پیام`,icon:`mail`},{id:`note`,label:`یادداشت`,icon:`pen`}];async function I(){if(!s.customerId){b.value=!1,S.value=`مشتری مشخص نشده است.`,p.value=null;return}b.value=!0,S.value=null;try{let e=await d.loadCustomerDetail(s.customerId);p.value=e.customer}catch(e){p.value=null,S.value=e instanceof Error?e.message:`بارگذاری مشتری ناموفق بود.`}finally{b.value=!1}}i(I),_(()=>s.customerId,I);async function ee(){if(!s.customerId||!D.value.trim()||!T.value.trim()){S.value=`موضوع و تاریخ الزامی است.`;return}x.value=!0,S.value=null;try{await d.submitMeeting({customerId:s.customerId,type:C.value,title:D.value.trim(),subject:D.value.trim(),content:k.value.trim()||void 0,description:k.value.trim()||void 0,date:T.value.trim(),time:E.value.trim()||void 0,createReminder:A.value,reminderTitle:A.value?j.value.trim()||D.value.trim():void 0,reminderDate:A.value?M.value.trim()||T.value.trim():void 0,reminderTime:A.value?N.value.trim()||E.value.trim()||`10:00`:void 0,reminderNote:A.value&&P.value.trim()||void 0}),u(`success`)}catch(e){S.value=e instanceof Error?e.message:`ثبت گزارش ناموفق بود.`}finally{x.value=!1}}return(e,r)=>(a(),l(`div`,fe,[b.value?(a(),n(ae,{key:0,variant:`form`})):S.value?(a(),l(`p`,pe,m(S.value),1)):t(``,!0),p.value?(a(),l(v,{key:2},[f(`section`,me,[f(`div`,{class:`avatar`,style:h({background:p.value.avatarColor})},m(p.value.avatarLetter),5),f(`div`,null,[f(`strong`,null,m(p.value.name),1),f(`p`,null,m(p.value.contactName),1),f(`p`,q,m(p.value.phone),1)])]),f(`section`,null,[r[9]||=f(`h3`,null,`نوع تعامل`,-1),f(`div`,he,[(a(),l(v,null,g(F,e=>f(`button`,{key:e.id,type:`button`,class:o([`type-btn`,{"type-btn--active":C.value===e.id}]),onClick:t=>C.value=e.id},[e.icon===`clipboard`?(a(),n(re,{key:0,size:22})):e.icon===`phone`?(a(),n(te,{key:1,size:22})):e.icon===`mail`?(a(),n(ce,{key:2,size:22})):(a(),n(ne,{key:3,size:22})),f(`span`,null,m(e.label),1)],10,J)),64))])]),f(`section`,null,[r[10]||=f(`h3`,null,`تاریخ و زمان`,-1),f(`div`,ge,[c(R,{modelValue:T.value,"onUpdate:modelValue":r[0]||=e=>T.value=e,label:`تاریخ`,class:`meeting-date`},null,8,[`modelValue`]),c(K,{modelValue:E.value,"onUpdate:modelValue":r[1]||=e=>E.value=e,label:`ساعت`,placeholder:`مثلاً ۱۰:۳۰`,class:`meeting-time`},null,8,[`modelValue`])])]),f(`label`,Y,[r[11]||=f(`span`,null,`موضوع گزارش`,-1),y(f(`input`,{"onUpdate:modelValue":r[2]||=e=>D.value=e,type:`text`},null,512),[[O,D.value]])]),f(`label`,_e,[r[12]||=f(`span`,null,`محتوای گزارش`,-1),y(f(`textarea`,{"onUpdate:modelValue":r[3]||=e=>k.value=e,rows:`5`,maxlength:`1000`},null,512),[[O,k.value]]),f(`em`,null,m(k.value.length.toLocaleString(`fa-IR`))+`/۱۰۰۰`,1)]),r[17]||=f(`section`,null,[f(`h3`,null,`تصاویر و فایل‌ها`),f(`div`,{class:`files`},[f(`div`,{class:`file-thumb`}),f(`div`,{class:`file-thumb`}),f(`button`,{type:`button`,class:`file-add`,"aria-label":`افزودن فایل`},`+`)])],-1),f(`section`,X,[f(`div`,Z,[r[14]||=f(`h3`,null,`یادآور`,-1),f(`button`,{type:`button`,class:o([`toggle`,{"toggle--on":A.value}]),"aria-pressed":A.value,onClick:r[4]||=e=>A.value=!A.value},[...r[13]||=[f(`span`,null,null,-1)]],10,Q)]),A.value?(a(),l(v,{key:0},[f(`label`,$,[r[15]||=f(`span`,null,`عنوان یادآور`,-1),y(f(`input`,{"onUpdate:modelValue":r[5]||=e=>j.value=e,type:`text`},null,512),[[O,j.value]])]),f(`div`,ve,[c(R,{modelValue:M.value,"onUpdate:modelValue":r[6]||=e=>M.value=e,label:`تاریخ یادآور`,class:`meeting-date`},null,8,[`modelValue`]),c(K,{modelValue:N.value,"onUpdate:modelValue":r[7]||=e=>N.value=e,label:`ساعت یادآور`,placeholder:`مثلاً ۱۰:۳۰`,class:`meeting-time`},null,8,[`modelValue`])]),f(`label`,ye,[r[16]||=f(`span`,null,`یادداشت یادآور (اختیاری)`,-1),y(f(`input`,{"onUpdate:modelValue":r[8]||=e=>P.value=e,type:`text`},null,512),[[O,P.value]])])],64)):t(``,!0)]),f(`button`,{type:`button`,class:`submit`,disabled:x.value,onClick:ee},m(x.value?`در حال ثبت...`:`ثبت گزارش و یادآور`),9,be)],64)):t(``,!0)]))}}),[[`__scopeId`,`data-v-5d6dd8b7`]]),Se={class:`meeting-report-sheet`},Ce=C(u({__name:`MeetingReportOverlay`,props:{open:{type:Boolean},customerId:{}},emits:[`close`,`success`],setup(e,{emit:r}){let i=e,o=r;function s(){o(`close`)}function u(){o(`success`)}function m(e){e.key===`Escape`&&i.open&&s()}return _(()=>i.open,e=>{document.body.style.overflow=e?`hidden`:``,e?window.addEventListener(`keydown`,m):window.removeEventListener(`keydown`,m)},{immediate:!0}),p(()=>{document.body.style.overflow=``,window.removeEventListener(`keydown`,m)}),(r,i)=>(a(),n(d,{to:`body`},[c(D,{name:`meeting-report-sheet`},{default:S(()=>[e.open?(a(),l(`div`,{key:0,class:`meeting-report-overlay`,role:`dialog`,"aria-modal":`true`,"aria-labelledby":`meeting-report-title`,onClick:A(s,[`self`])},[f(`div`,Se,[i[1]||=f(`div`,{class:`meeting-report-sheet__handle`,"aria-hidden":`true`},null,-1),f(`header`,{class:`meeting-report-sheet__head`},[i[0]||=f(`h2`,{id:`meeting-report-title`},`ثبت گزارش ملاقات`,-1),f(`button`,{type:`button`,class:`meeting-report-sheet__close`,"aria-label":`بستن`,onClick:s},` × `)]),e.customerId?(a(),n(xe,{key:e.customerId,"customer-id":e.customerId,onSuccess:u},null,8,[`customer-id`])):t(``,!0)])])):t(``,!0)]),_:1})]))}}),[[`__scopeId`,`data-v-be25c066`]]),we={key:0,class:`page customer-page`},Te={class:`desktop-page__head desktop-only customer-desk-head`},Ee={class:`desktop-page__title`},De={class:`desktop-page__subtitle`,dir:`ltr`},Oe={class:`page__scroll page__scroll--with-nav customer-scroll`},ke={key:0,class:`profile-card`},Ae={class:`profile-card__info`},je={class:`profile-card__name-row`},Me={class:`profile-card__phone`,dir:`ltr`},Ne={key:1,class:`profile-banner`},Pe={class:`profile-banner__top`},Fe={dir:`ltr`},Ie={class:`profile-banner__stats`},Le={class:`tabs`,role:`tablist`},Re=[`aria-selected`,`onClick`],ze={class:`tab__text`},Be={class:`purchase-card`},Ve={class:`purchase-stats`},He={class:`purchase-stats__item`},Ue={class:`purchase-stats__value`},We={class:`purchase-stats__item`},Ge={class:`purchase-stats__value`},Ke={class:`purchase-stats__item`},qe={class:`purchase-stats__value`},Je={class:`panel-card`},Ye={class:`agent-row__avatar`},Xe={class:`agent-row__info`},Ze={class:`orders-block`},Qe={class:`orders-block__head`},$e=[`onClick`,`onKeydown`],et={class:`order-row__title`},tt={class:`order-row__amount`},nt={key:0,class:`empty-inline`},rt={key:3,class:`panel-card panel-card--list`},it=[`onClick`,`onKeydown`],at={class:`order-row__title`},ot={class:`order-row__amount`},st={key:0,class:`empty-inline`},ct={key:4,class:`panel-card panel-card--reports`},lt={class:`meeting-filters`},ut=[`onClick`],dt={class:`meeting-row__body`},ft={class:`meeting-row__date`},pt={key:0,class:`empty-inline`},mt={key:0,class:`cta-bar`},ht={key:1,class:`page empty`},gt={key:2,class:`page empty`},_t=C(u({__name:`CustomerDetailView`,setup(u){let d=x(),p=b(),y=oe(),C=P(),D=T(()=>String(d.query.id??``)),O=T(()=>String(d.query.tab??`info`)),k=T(()=>d.query.meetingReport===`1`),A=T(()=>d.query.edit===`1`),j=w(null),L=w([]),R=w([]),z=w(`all`),B=w(!0),V=w(null),le=[{id:`info`,label:`اطلاعات`},{id:`orders`,label:`سفارش‌ها`},{id:`reports`,label:`گزارش‌ها و پیگیری‌ها`}];async function H(){if(!D.value){j.value=null,B.value=!1;return}B.value=!0,V.value=null;try{let e=await y.loadCustomerDetail(D.value);j.value=e.customer,L.value=e.orders,R.value=e.meetings}catch(e){j.value=null,V.value=e instanceof Error?e.message:`مشتری یافت نشد.`}finally{B.value=!1}}i(H),_(D,H);function U(e){p.replace({path:`/customer`,query:{id:D.value,tab:e}})}function ue(){p.push({path:`/customer`,query:{id:D.value,tab:`reports`,meetingReport:`1`}})}function W(){p.replace({path:`/customer`,query:{id:D.value,tab:`reports`}})}async function de(){W(),await H()}function G(){p.push({path:`/customer`,query:{id:D.value,tab:O.value,edit:`1`}})}function K(){p.replace({path:`/customer`,query:{id:D.value,tab:O.value}})}async function fe(){K(),await H()}let pe=T(()=>{if(!j.value)return null;let e=j.value;if(e.firstName&&e.lastName)return{firstName:e.firstName,lastName:e.lastName,phone:e.phone,businessName:e.businessName??``};let t=e.contactName.trim().split(/\s+/),n=t[0]??``;return{firstName:n,lastName:t.slice(1).join(` `)||n,phone:e.phone,businessName:e.name===e.contactName?``:e.name}});function me(e){return e===`in_person`?`ملاقات حضوری`:e===`call`?`تماس`:e===`message`?`پیام`:`یادداشت`}let q=T(()=>j.value?.agentName||C.fullName||`واسطه`),he=T(()=>j.value?.agentCode||C.user?.agentCode||`—`),J=T(()=>q.value.charAt(0)),ge=[{id:`all`,label:`همه`},{id:`in_person`,label:`ملاقات حضوری`},{id:`call`,label:`تماس`},{id:`message`,label:`پیام`},{id:`note`,label:`یادداشت`}],Y=T(()=>z.value===`all`?R.value:R.value.filter(e=>e.type===z.value));function _e(e){return e===`in_person`?`meeting-row__icon--green`:e===`call`?`meeting-row__icon--blue`:`meeting-row__icon--purple`}function X(e){e&&p.push({path:`/order`,query:{id:e}})}function Z(e){let t=e.statusLabel;return ee[t]||e.statusLabel}function Q(e){let t=I[e.statusLabel];return t===`success`?`success`:t===`warning`||t===`danger`?`warning`:e.statusTone||`info`}let $=T(()=>L.value.slice(0,3));function ve(e){return e===`active`?`فعال`:e===`inactive`?`غیرفعال`:`جدید`}function ye(e){return e===`active`?`status-badge--active`:e===`inactive`?`status-badge--inactive`:`status-badge--new`}return(i,u)=>(a(),l(v,null,[j.value?(a(),l(`div`,we,[c(ie,{class:`mobile-only`,title:O.value===`reports`?`پروفایل مشتری`:`جزئیات مشتری`,"show-back":``,centered:``,onBack:u[0]||=e=>r(p).push(`/customers`)},e({_:2},[O.value===`info`?{name:`trailing`,fn:S(()=>[f(`button`,{type:`button`,class:`edit-btn`,onClick:G},`ویرایش`)]),key:`0`}:void 0]),1032,[`title`]),f(`header`,Te,[f(`div`,null,[f(`h1`,Ee,m(j.value.name),1),f(`p`,De,m(j.value.phone),1)]),O.value===`info`?(a(),l(`button`,{key:0,type:`button`,class:`edit-btn edit-btn--desk`,onClick:G},` ویرایش `)):t(``,!0)]),f(`div`,Oe,[O.value===`reports`?(a(),l(`section`,Ne,[f(`div`,Pe,[f(`div`,{class:`profile-card__avatar profile-card__avatar--lg`,style:h({background:j.value.avatarColor})},m(j.value.avatarLetter),5),f(`div`,null,[f(`h2`,null,m(j.value.name),1),f(`p`,null,m(j.value.contactName),1),f(`p`,Fe,m(j.value.phone),1)]),u[4]||=f(`span`,{class:`status-badge status-badge--active status-badge--on-dark`},`فعال`,-1)]),f(`div`,Ie,[f(`div`,null,[u[5]||=f(`span`,null,`سطح مشتری`,-1),f(`strong`,null,m(j.value.levelLabel),1)]),f(`div`,null,[u[6]||=f(`span`,null,`تاریخ اولین خرید`,-1),f(`strong`,null,m(j.value.firstPurchaseDate),1)]),f(`div`,null,[u[7]||=f(`span`,null,`تعداد سفارش`,-1),f(`strong`,null,m(r(M)(j.value.orderCount))+` سفارش`,1)])])])):(a(),l(`section`,ke,[f(`div`,{class:`profile-card__avatar`,style:h({background:j.value.avatarColor})},m(j.value.avatarLetter),5),f(`div`,Ae,[f(`div`,je,[f(`h2`,null,m(j.value.name),1),f(`span`,{class:o([`status-badge`,ye(j.value.status)])},m(ve(j.value.status)),3)]),f(`p`,Me,m(j.value.phone),1)])])),f(`div`,Le,[(a(),l(v,null,g(le,e=>f(`button`,{key:e.id,type:`button`,role:`tab`,class:o([`tab`,{"tab--active":O.value===e.id}]),"aria-selected":O.value===e.id,onClick:t=>U(e.id)},[f(`span`,ze,m(e.label),1)],10,Re)),64))]),O.value===`info`?(a(),l(v,{key:2},[f(`section`,Be,[u[15]||=f(`h3`,{class:`section-title`},`اطلاعات خرید`,-1),f(`div`,Ve,[f(`div`,He,[u[8]||=f(`span`,{class:`purchase-stats__label`},`تعداد سفارش`,-1),f(`strong`,Ue,m(r(M)(j.value.orderCount)),1)]),u[13]||=f(`span`,{class:`purchase-stats__divider`,"aria-hidden":`true`},null,-1),f(`div`,We,[u[9]||=f(`span`,{class:`purchase-stats__label`},`مجموع خرید`,-1),f(`strong`,Ge,m(r(M)(j.value.totalPurchaseToman)),1),u[10]||=f(`em`,{class:`purchase-stats__unit`},`تومان`,-1)]),u[14]||=f(`span`,{class:`purchase-stats__divider`,"aria-hidden":`true`},null,-1),f(`div`,Ke,[u[11]||=f(`span`,{class:`purchase-stats__label`},`میانگین هر سفارش`,-1),f(`strong`,qe,m(r(M)(j.value.averageOrderToman)),1),u[12]||=f(`em`,{class:`purchase-stats__unit`},`تومان`,-1)])])]),f(`section`,Je,[f(`button`,{type:`button`,class:`agent-row`,onClick:u[1]||=e=>r(p).push(`/profile`)},[f(`div`,Ye,m(J.value),1),f(`div`,Xe,[f(`strong`,null,m(q.value),1),f(`p`,null,`کد واسطه: `+m(he.value),1)]),c(F,{size:18,class:`agent-row__chevron`,"aria-hidden":`true`})]),f(`div`,Ze,[f(`div`,Qe,[u[16]||=f(`h3`,{class:`section-title`},`آخرین سفارش‌ها`,-1),f(`button`,{type:`button`,class:`link-btn`,onClick:u[2]||=e=>U(`orders`)},`مشاهده همه`)]),(a(!0),l(v,null,g($.value,e=>(a(),l(`article`,{key:e.id,class:`order-row`,role:`button`,tabindex:`0`,onClick:t=>X(e.id),onKeydown:E(t=>X(e.id),[`enter`])},[f(`div`,et,[f(`strong`,null,m(e.title),1),c(F,{size:14,class:`order-row__chevron`,"aria-hidden":`true`})]),f(`span`,tt,m(r(M)(e.amountToman))+` تومان`,1),f(`span`,{class:o([`status-pill`,`status-pill--${Q(e)}`])},m(Z(e)),3)],40,$e))),128)),$.value.length?t(``,!0):(a(),l(`p`,nt,`سفارشی ثبت نشده است.`))])])],64)):O.value===`orders`?(a(),l(`section`,rt,[(a(!0),l(v,null,g(L.value,e=>(a(),l(`article`,{key:e.id,class:`order-row`,role:`button`,tabindex:`0`,onClick:t=>X(e.id),onKeydown:E(t=>X(e.id),[`enter`])},[f(`div`,at,[f(`strong`,null,m(e.title),1),c(F,{size:14,class:`order-row__chevron`,"aria-hidden":`true`})]),f(`span`,ot,m(r(M)(e.amountToman))+` تومان`,1),f(`span`,{class:o([`status-pill`,`status-pill--${Q(e)}`])},m(Z(e)),3)],40,it))),128)),L.value.length?t(``,!0):(a(),l(`p`,st,`سفارشی ثبت نشده است.`))])):(a(),l(`section`,ct,[u[17]||=f(`h3`,{class:`section-title`},`تعاملات و پیگیری‌ها`,-1),f(`button`,{type:`button`,class:`dashed-btn`,onClick:ue},` + ثبت گزارش ملاقات جدید `),f(`div`,lt,[(a(),l(v,null,g(ge,e=>f(`button`,{key:e.id,type:`button`,class:o([`meeting-filter`,{"meeting-filter--active":z.value===e.id}]),onClick:t=>z.value=e.id},m(e.label),11,ut)),64))]),(a(!0),l(v,null,g(Y.value,e=>(a(),l(`article`,{key:e.id,class:`meeting-row`},[f(`div`,{class:o([`meeting-row__icon`,_e(e.type)])},[e.type===`in_person`?(a(),n(re,{key:0,size:16})):e.type===`call`?(a(),n(te,{key:1,size:16})):e.type===`message`?(a(),n(ce,{key:2,size:16})):(a(),n(ne,{key:3,size:16}))],2),f(`div`,dt,[f(`strong`,null,m(me(e.type)),1),f(`p`,null,m(e.description||e.title),1)]),f(`span`,ft,m(e.date),1)]))),128)),Y.value.length?t(``,!0):(a(),l(`p`,pt,` گزارشی برای این فیلتر ثبت نشده است. `))]))]),O.value===`info`?(a(),l(`footer`,mt,[f(`button`,{type:`button`,class:`cta`,onClick:u[3]||=e=>r(p).push(`/categories`)},[c(N,{size:20,color:`#fff`}),u[18]||=s(` سفارش جدید برای این مشتری `,-1)])])):t(``,!0)])):B.value?(a(),l(`div`,ht,[c(ae,{variant:`detail`})])):(a(),l(`div`,gt,[f(`p`,null,m(V.value||`مشتری یافت نشد.`),1)])),c(Ce,{open:k.value,"customer-id":D.value,onClose:W,onSuccess:de},null,8,[`open`,`customer-id`]),c(se,{open:A.value,"customer-id":D.value,initial:pe.value,onClose:K,onSuccess:fe},null,8,[`open`,`customer-id`,`initial`])],64))}}),[[`__scopeId`,`data-v-20a7b2ca`]]);export{_t as default}; \ No newline at end of file diff --git a/dist/assets/CustomerDetailView-D06mrc2B.js b/dist/assets/CustomerDetailView-D06mrc2B.js new file mode 100644 index 0000000..2d077ec --- /dev/null +++ b/dist/assets/CustomerDetailView-D06mrc2B.js @@ -0,0 +1 @@ +import{At as e,D as t,F as n,G as r,K as i,M as a,Nt as o,Pt as s,U as c,_ as l,c as u,d,f,g as p,i as m,k as h,l as g,m as _,nt as v,o as y,t as b,u as x,ut as S,v as C}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{l as w,n as T,s as E,t as D,u as O}from"./BasicIcon-Bzeb0Iwd.js";import{d as k,o as A}from"./format-C72AoJ2H.js";import{M as j,O as M,c as N,j as P,o as F}from"./index-BrjLizie.js";import{r as I,t as ee}from"./constants-DXXK14Zz.js";import{t as L}from"./IconProgressClock-C2Emr6X3.js";import{t as te}from"./IconPhone-DymoL1t0.js";import{t as ne}from"./IconEditPen-DkMxper9.js";import{t as re}from"./IconClipboardEmpty-D-FEqLzR.js";import{t as ie}from"./PageHeader-BSsCNguu.js";import{t as ae}from"./PageSkeleton-DYdjm4l9.js";import{t as oe}from"./crm-DoYzOa8A.js";import{t as R}from"./PersianDateInput-DrDb_iFF.js";import{t as se}from"./CustomerCreateOverlay-iQAyp2AI.js";var ce=C({__name:`IconMail`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(a(),x(D,{icon:`vuesax-linear:sms`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),z={key:0,class:`form-label`},B=[`disabled`],V={class:`time-input__icon`,"aria-hidden":`true`},le={class:`time-input__picker`,role:`group`,"aria-label":`انتخاب ساعت`},H={class:`time-input__spinner`},U={class:`time-input__value`},ue={class:`time-input__spinner`},W={class:`time-input__value`},de={key:2,class:`input-error-text`},G={key:3,class:`form-hint`},K=b(C({__name:`TimeInput`,props:{modelValue:{},label:{},placeholder:{},hint:{},error:{},disabled:{type:Boolean}},emits:[`update:modelValue`],setup(n,{emit:r}){let i=n,o=r,p=v(null),m=v(!1),_=v(10),y=v(0),b=[0,5,10,15,20,25,30,35,40,45,50,55],x=u(()=>T(i.modelValue??``)),C=u(()=>x.value?E(x.value.hour,x.value.minute):``);c(()=>i.modelValue,e=>{let t=T(e??``);t&&(_.value=t.hour,y.value=w(t.minute))},{immediate:!0});function w(e){let t=Math.round(e/5)*5;return t===60?55:t}function T(e){let t=/^(\d{1,2}):(\d{2})$/.exec(e.trim());if(!t)return null;let n=Number(t[1]),r=Number(t[2]);return n<0||n>23||r<0||r>59?null:{hour:n,minute:r}}function E(e,t){return k(`${String(e).padStart(2,`0`)}:${String(t).padStart(2,`0`)}`)}function D(e,t){return`${String(e).padStart(2,`0`)}:${String(t).padStart(2,`0`)}`}function A(){if(!i.disabled){if(!m.value)if(x.value)_.value=x.value.hour,y.value=w(x.value.minute);else{let e=new Date;_.value=e.getHours(),y.value=w(e.getMinutes())}m.value=!m.value}}function j(){m.value=!1}function M(e){_.value=(_.value+e+24)%24}function N(e){let t=b.indexOf(y.value),n=((t<0?0:t)+e+b.length)%b.length;y.value=b[n]??0}function P(){o(`update:modelValue`,D(_.value,y.value)),j()}function F(){let e=new Date,t=e.getHours(),n=w(e.getMinutes());_.value=t,y.value=n,o(`update:modelValue`,D(t,n)),j()}function I(e){p.value?.contains(e.target)||j()}return h(()=>{document.addEventListener(`click`,I)}),t(()=>{document.removeEventListener(`click`,I)}),(t,r)=>(a(),f(`div`,{ref_key:`rootRef`,ref:p,class:`form-group time-input`},[n.label?(a(),f(`label`,z,s(n.label),1)):d(``,!0),g(`button`,{type:`button`,class:e([`input time-input__trigger`,{"input-error":n.error,"is-open":m.value}]),disabled:n.disabled,onClick:O(A,[`stop`])},[g(`span`,{class:e({"time-input__placeholder":!C.value})},s(C.value||n.placeholder||`انتخاب ساعت`),3),g(`span`,V,[l(L,{size:18})])],10,B),m.value?(a(),f(`div`,{key:1,class:`time-input__panel`,onClick:r[4]||=O(()=>{},[`stop`])},[g(`div`,le,[g(`div`,H,[r[7]||=g(`span`,{class:`time-input__spinner-label`},`ساعت`,-1),g(`button`,{type:`button`,class:`time-input__step`,"aria-label":`یک ساعت بعد`,onClick:r[0]||=e=>M(1)},[...r[5]||=[g(`svg`,{width:`14`,height:`14`,viewBox:`0 0 24 24`,"aria-hidden":`true`},[g(`path`,{d:`M6 14l6-6 6 6`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`})],-1)]]),g(`strong`,U,s(S(k)(String(_.value).padStart(2,`0`))),1),g(`button`,{type:`button`,class:`time-input__step`,"aria-label":`یک ساعت قبل`,onClick:r[1]||=e=>M(-1)},[...r[6]||=[g(`svg`,{width:`14`,height:`14`,viewBox:`0 0 24 24`,"aria-hidden":`true`},[g(`path`,{d:`M6 10l6 6 6-6`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`})],-1)]])]),r[11]||=g(`span`,{class:`time-input__colon`,"aria-hidden":`true`},`:`,-1),g(`div`,ue,[r[10]||=g(`span`,{class:`time-input__spinner-label`},`دقیقه`,-1),g(`button`,{type:`button`,class:`time-input__step`,"aria-label":`پنج دقیقه بعد`,onClick:r[2]||=e=>N(1)},[...r[8]||=[g(`svg`,{width:`14`,height:`14`,viewBox:`0 0 24 24`,"aria-hidden":`true`},[g(`path`,{d:`M6 14l6-6 6 6`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`})],-1)]]),g(`strong`,W,s(S(k)(String(y.value).padStart(2,`0`))),1),g(`button`,{type:`button`,class:`time-input__step`,"aria-label":`پنج دقیقه قبل`,onClick:r[3]||=e=>N(-1)},[...r[9]||=[g(`svg`,{width:`14`,height:`14`,viewBox:`0 0 24 24`,"aria-hidden":`true`},[g(`path`,{d:`M6 10l6 6 6-6`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`})],-1)]])])]),g(`div`,{class:`time-input__footer`},[g(`button`,{type:`button`,class:`time-input__now`,onClick:F},`اکنون`),g(`button`,{type:`button`,class:`time-input__confirm`,onClick:P},`تأیید`)])])):d(``,!0),n.error?(a(),f(`p`,de,s(n.error),1)):n.hint?(a(),f(`p`,G,s(n.hint),1)):d(``,!0)],512))}}),[[`__scopeId`,`data-v-fbdfb138`]]),fe={class:`meeting-report-form`},pe={key:1,class:`form-error`},me={class:`customer-card`},q={dir:`ltr`},he={class:`type-grid`},J=[`onClick`],ge={class:`two-cols two-cols--date`},Y={class:`field`},_e={class:`field`},X={class:`reminder-box`},Z={class:`reminder-box__head`},Q=[`aria-pressed`],$={class:`field`},ve={class:`two-cols two-cols--date`},ye={class:`field`},be=[`disabled`],xe=b(C({__name:`MeetingReportForm`,props:{customerId:{}},emits:[`success`],setup(t,{emit:r}){let u=t,p=r,_=oe(),y=v(null),b=v(!0),S=v(!1),C=v(null),w=v(`in_person`),T=v(``),D=v(``),O=v(``),k=v(``),A=v(!0),j=v(``),M=v(``),N=v(``),P=v(``),F=[{id:`in_person`,label:`ملاقات حضوری`,icon:`clipboard`},{id:`call`,label:`تماس تلفنی`,icon:`phone`},{id:`message`,label:`پیام`,icon:`mail`},{id:`note`,label:`یادداشت`,icon:`pen`}];async function I(){if(!u.customerId){b.value=!1,C.value=`مشتری مشخص نشده است.`,y.value=null;return}b.value=!0,C.value=null;try{let e=await _.loadCustomerDetail(u.customerId);y.value=e.customer}catch(e){y.value=null,C.value=e instanceof Error?e.message:`بارگذاری مشتری ناموفق بود.`}finally{b.value=!1}}h(I),c(()=>u.customerId,I);async function ee(){if(!u.customerId||!O.value.trim()||!T.value.trim()){C.value=`موضوع و تاریخ الزامی است.`;return}S.value=!0,C.value=null;try{await _.submitMeeting({customerId:u.customerId,type:w.value,title:O.value.trim(),subject:O.value.trim(),content:k.value.trim()||void 0,description:k.value.trim()||void 0,date:T.value.trim(),time:D.value.trim()||void 0,createReminder:A.value,reminderTitle:A.value?j.value.trim()||O.value.trim():void 0,reminderDate:A.value?M.value.trim()||T.value.trim():void 0,reminderTime:A.value?N.value.trim()||D.value.trim()||`10:00`:void 0,reminderNote:A.value&&P.value.trim()||void 0}),p(`success`)}catch(e){C.value=e instanceof Error?e.message:`ثبت گزارش ناموفق بود.`}finally{S.value=!1}}return(t,r)=>(a(),f(`div`,fe,[b.value?(a(),x(ae,{key:0,variant:`form`})):C.value?(a(),f(`p`,pe,s(C.value),1)):d(``,!0),y.value?(a(),f(m,{key:2},[g(`section`,me,[g(`div`,{class:`avatar`,style:o({background:y.value.avatarColor})},s(y.value.avatarLetter),5),g(`div`,null,[g(`strong`,null,s(y.value.name),1),g(`p`,null,s(y.value.contactName),1),g(`p`,q,s(y.value.phone),1)])]),g(`section`,null,[r[9]||=g(`h3`,null,`نوع تعامل`,-1),g(`div`,he,[(a(),f(m,null,n(F,t=>g(`button`,{key:t.id,type:`button`,class:e([`type-btn`,{"type-btn--active":w.value===t.id}]),onClick:e=>w.value=t.id},[t.icon===`clipboard`?(a(),x(re,{key:0,size:22})):t.icon===`phone`?(a(),x(te,{key:1,size:22})):t.icon===`mail`?(a(),x(ce,{key:2,size:22})):(a(),x(ne,{key:3,size:22})),g(`span`,null,s(t.label),1)],10,J)),64))])]),g(`section`,null,[r[10]||=g(`h3`,null,`تاریخ و زمان`,-1),g(`div`,ge,[l(R,{modelValue:T.value,"onUpdate:modelValue":r[0]||=e=>T.value=e,label:`تاریخ`,class:`meeting-date`},null,8,[`modelValue`]),l(K,{modelValue:D.value,"onUpdate:modelValue":r[1]||=e=>D.value=e,label:`ساعت`,placeholder:`مثلاً ۱۰:۳۰`,class:`meeting-time`},null,8,[`modelValue`])])]),g(`label`,Y,[r[11]||=g(`span`,null,`موضوع گزارش`,-1),i(g(`input`,{"onUpdate:modelValue":r[2]||=e=>O.value=e,type:`text`},null,512),[[E,O.value]])]),g(`label`,_e,[r[12]||=g(`span`,null,`محتوای گزارش`,-1),i(g(`textarea`,{"onUpdate:modelValue":r[3]||=e=>k.value=e,rows:`5`,maxlength:`1000`},null,512),[[E,k.value]]),g(`em`,null,s(k.value.length.toLocaleString(`fa-IR`))+`/۱۰۰۰`,1)]),r[17]||=g(`section`,null,[g(`h3`,null,`تصاویر و فایل‌ها`),g(`div`,{class:`files`},[g(`div`,{class:`file-thumb`}),g(`div`,{class:`file-thumb`}),g(`button`,{type:`button`,class:`file-add`,"aria-label":`افزودن فایل`},`+`)])],-1),g(`section`,X,[g(`div`,Z,[r[14]||=g(`h3`,null,`یادآور`,-1),g(`button`,{type:`button`,class:e([`toggle`,{"toggle--on":A.value}]),"aria-pressed":A.value,onClick:r[4]||=e=>A.value=!A.value},[...r[13]||=[g(`span`,null,null,-1)]],10,Q)]),A.value?(a(),f(m,{key:0},[g(`label`,$,[r[15]||=g(`span`,null,`عنوان یادآور`,-1),i(g(`input`,{"onUpdate:modelValue":r[5]||=e=>j.value=e,type:`text`},null,512),[[E,j.value]])]),g(`div`,ve,[l(R,{modelValue:M.value,"onUpdate:modelValue":r[6]||=e=>M.value=e,label:`تاریخ یادآور`,class:`meeting-date`},null,8,[`modelValue`]),l(K,{modelValue:N.value,"onUpdate:modelValue":r[7]||=e=>N.value=e,label:`ساعت یادآور`,placeholder:`مثلاً ۱۰:۳۰`,class:`meeting-time`},null,8,[`modelValue`])]),g(`label`,ye,[r[16]||=g(`span`,null,`یادداشت یادآور (اختیاری)`,-1),i(g(`input`,{"onUpdate:modelValue":r[8]||=e=>P.value=e,type:`text`},null,512),[[E,P.value]])])],64)):d(``,!0)]),g(`button`,{type:`button`,class:`submit`,disabled:S.value,onClick:ee},s(S.value?`در حال ثبت...`:`ثبت گزارش و یادآور`),9,be)],64)):d(``,!0)]))}}),[[`__scopeId`,`data-v-5d6dd8b7`]]),Se={class:`meeting-report-sheet`},Ce=b(C({__name:`MeetingReportOverlay`,props:{open:{type:Boolean},customerId:{}},emits:[`close`,`success`],setup(e,{emit:n}){let i=e,o=n;function s(){o(`close`)}function u(){o(`success`)}function p(e){e.key===`Escape`&&i.open&&s()}return c(()=>i.open,e=>{document.body.style.overflow=e?`hidden`:``,e?window.addEventListener(`keydown`,p):window.removeEventListener(`keydown`,p)},{immediate:!0}),t(()=>{document.body.style.overflow=``,window.removeEventListener(`keydown`,p)}),(t,n)=>(a(),x(y,{to:`body`},[l(T,{name:`meeting-report-sheet`},{default:r(()=>[e.open?(a(),f(`div`,{key:0,class:`meeting-report-overlay`,role:`dialog`,"aria-modal":`true`,"aria-labelledby":`meeting-report-title`,onClick:O(s,[`self`])},[g(`div`,Se,[n[1]||=g(`div`,{class:`meeting-report-sheet__handle`,"aria-hidden":`true`},null,-1),g(`header`,{class:`meeting-report-sheet__head`},[n[0]||=g(`h2`,{id:`meeting-report-title`},`ثبت گزارش ملاقات`,-1),g(`button`,{type:`button`,class:`meeting-report-sheet__close`,"aria-label":`بستن`,onClick:s},` × `)]),e.customerId?(a(),x(xe,{key:e.customerId,"customer-id":e.customerId,onSuccess:u},null,8,[`customer-id`])):d(``,!0)])])):d(``,!0)]),_:1})]))}}),[[`__scopeId`,`data-v-be25c066`]]),we={key:0,class:`page customer-page`},Te={class:`desktop-page__head desktop-only customer-desk-head`},Ee={class:`desktop-page__title`},De={class:`desktop-page__subtitle`,dir:`ltr`},Oe={class:`page__scroll page__scroll--with-nav customer-scroll`},ke={key:0,class:`profile-card`},Ae={class:`profile-card__info`},je={class:`profile-card__name-row`},Me={class:`profile-card__phone`,dir:`ltr`},Ne={key:1,class:`profile-banner`},Pe={class:`profile-banner__top`},Fe={dir:`ltr`},Ie={class:`profile-banner__stats`},Le={class:`tabs`,role:`tablist`},Re=[`aria-selected`,`onClick`],ze={class:`tab__text`},Be={class:`purchase-card`},Ve={class:`purchase-stats`},He={class:`purchase-stats__item`},Ue={class:`purchase-stats__value`},We={class:`purchase-stats__item`},Ge={class:`purchase-stats__value`},Ke={class:`purchase-stats__item`},qe={class:`purchase-stats__value`},Je={class:`panel-card`},Ye={class:`agent-row__avatar`},Xe={class:`agent-row__info`},Ze={class:`orders-block`},Qe={class:`orders-block__head`},$e=[`onClick`,`onKeydown`],et={class:`order-row__title`},tt={class:`order-row__amount`},nt={key:0,class:`empty-inline`},rt={key:3,class:`panel-card panel-card--list`},it=[`onClick`,`onKeydown`],at={class:`order-row__title`},ot={class:`order-row__amount`},st={key:0,class:`empty-inline`},ct={key:4,class:`panel-card panel-card--reports`},lt={class:`meeting-filters`},ut=[`onClick`],dt={class:`meeting-row__body`},ft={class:`meeting-row__date`},pt={key:0,class:`empty-inline`},mt={key:0,class:`cta-bar`},ht={key:1,class:`page empty`},gt={key:2,class:`page empty`},_t=b(C({__name:`CustomerDetailView`,setup(t){let i=P(),y=j(),b=oe(),C=N(),T=u(()=>String(i.query.id??``)),E=u(()=>String(i.query.tab??`info`)),D=u(()=>i.query.meetingReport===`1`),O=u(()=>i.query.edit===`1`),k=v(null),L=v([]),R=v([]),z=v(`all`),B=v(!0),V=v(null),le=[{id:`info`,label:`اطلاعات`},{id:`orders`,label:`سفارش‌ها`},{id:`reports`,label:`گزارش‌ها و پیگیری‌ها`}];async function H(){if(!T.value){k.value=null,B.value=!1;return}B.value=!0,V.value=null;try{let e=await b.loadCustomerDetail(T.value);k.value=e.customer,L.value=e.orders,R.value=e.meetings}catch(e){k.value=null,V.value=e instanceof Error?e.message:`مشتری یافت نشد.`}finally{B.value=!1}}h(H),c(T,H);function U(e){y.replace({path:`/customer`,query:{id:T.value,tab:e}})}function ue(){y.push({path:`/customer`,query:{id:T.value,tab:`reports`,meetingReport:`1`}})}function W(){y.replace({path:`/customer`,query:{id:T.value,tab:`reports`}})}async function de(){W(),await H()}function G(){y.push({path:`/customer`,query:{id:T.value,tab:E.value,edit:`1`}})}function K(){y.replace({path:`/customer`,query:{id:T.value,tab:E.value}})}async function fe(){K(),await H()}let pe=u(()=>{if(!k.value)return null;let e=k.value;if(e.firstName&&e.lastName)return{firstName:e.firstName,lastName:e.lastName,phone:e.phone,businessName:e.businessName??``};let t=e.contactName.trim().split(/\s+/),n=t[0]??``;return{firstName:n,lastName:t.slice(1).join(` `)||n,phone:e.phone,businessName:e.name===e.contactName?``:e.name}});function me(e){return e===`in_person`?`ملاقات حضوری`:e===`call`?`تماس`:e===`message`?`پیام`:`یادداشت`}let q=u(()=>k.value?.agentName||C.fullName||`واسطه`),he=u(()=>k.value?.agentCode||C.user?.agentCode||`—`),J=u(()=>q.value.charAt(0)),ge=[{id:`all`,label:`همه`},{id:`in_person`,label:`ملاقات حضوری`},{id:`call`,label:`تماس`},{id:`message`,label:`پیام`},{id:`note`,label:`یادداشت`}],Y=u(()=>z.value===`all`?R.value:R.value.filter(e=>e.type===z.value));function _e(e){return e===`in_person`?`meeting-row__icon--green`:e===`call`?`meeting-row__icon--blue`:`meeting-row__icon--purple`}function X(e){e&&y.push({path:`/order`,query:{id:e}})}function Z(e){let t=e.statusLabel;return ee[t]||e.statusLabel}function Q(e){let t=I[e.statusLabel];return t===`success`?`success`:t===`warning`||t===`danger`?`warning`:e.statusTone||`info`}let $=u(()=>L.value.slice(0,3));function ve(e){return e===`active`?`فعال`:e===`inactive`?`غیرفعال`:`جدید`}function ye(e){return e===`active`?`status-badge--active`:e===`inactive`?`status-badge--inactive`:`status-badge--new`}return(t,i)=>(a(),f(m,null,[k.value?(a(),f(`div`,we,[l(ie,{class:`mobile-only`,title:E.value===`reports`?`پروفایل مشتری`:`جزئیات مشتری`,"show-back":``,centered:``,onBack:i[0]||=e=>S(y).push(`/customers`)},_({_:2},[E.value===`info`?{name:`trailing`,fn:r(()=>[g(`button`,{type:`button`,class:`edit-btn`,onClick:G},`ویرایش`)]),key:`0`}:void 0]),1032,[`title`]),g(`header`,Te,[g(`div`,null,[g(`h1`,Ee,s(k.value.name),1),g(`p`,De,s(k.value.phone),1)]),E.value===`info`?(a(),f(`button`,{key:0,type:`button`,class:`edit-btn edit-btn--desk`,onClick:G},` ویرایش `)):d(``,!0)]),g(`div`,Oe,[E.value===`reports`?(a(),f(`section`,Ne,[g(`div`,Pe,[g(`div`,{class:`profile-card__avatar profile-card__avatar--lg`,style:o({background:k.value.avatarColor})},s(k.value.avatarLetter),5),g(`div`,null,[g(`h2`,null,s(k.value.name),1),g(`p`,null,s(k.value.contactName),1),g(`p`,Fe,s(k.value.phone),1)]),i[4]||=g(`span`,{class:`status-badge status-badge--active status-badge--on-dark`},`فعال`,-1)]),g(`div`,Ie,[g(`div`,null,[i[5]||=g(`span`,null,`سطح مشتری`,-1),g(`strong`,null,s(k.value.levelLabel),1)]),g(`div`,null,[i[6]||=g(`span`,null,`تاریخ اولین خرید`,-1),g(`strong`,null,s(k.value.firstPurchaseDate),1)]),g(`div`,null,[i[7]||=g(`span`,null,`تعداد سفارش`,-1),g(`strong`,null,s(S(A)(k.value.orderCount))+` سفارش`,1)])])])):(a(),f(`section`,ke,[g(`div`,{class:`profile-card__avatar`,style:o({background:k.value.avatarColor})},s(k.value.avatarLetter),5),g(`div`,Ae,[g(`div`,je,[g(`h2`,null,s(k.value.name),1),g(`span`,{class:e([`status-badge`,ye(k.value.status)])},s(ve(k.value.status)),3)]),g(`p`,Me,s(k.value.phone),1)])])),g(`div`,Le,[(a(),f(m,null,n(le,t=>g(`button`,{key:t.id,type:`button`,role:`tab`,class:e([`tab`,{"tab--active":E.value===t.id}]),"aria-selected":E.value===t.id,onClick:e=>U(t.id)},[g(`span`,ze,s(t.label),1)],10,Re)),64))]),E.value===`info`?(a(),f(m,{key:2},[g(`section`,Be,[i[15]||=g(`h3`,{class:`section-title`},`اطلاعات خرید`,-1),g(`div`,Ve,[g(`div`,He,[i[8]||=g(`span`,{class:`purchase-stats__label`},`تعداد سفارش`,-1),g(`strong`,Ue,s(S(A)(k.value.orderCount)),1)]),i[13]||=g(`span`,{class:`purchase-stats__divider`,"aria-hidden":`true`},null,-1),g(`div`,We,[i[9]||=g(`span`,{class:`purchase-stats__label`},`مجموع خرید`,-1),g(`strong`,Ge,s(S(A)(k.value.totalPurchaseToman)),1),i[10]||=g(`em`,{class:`purchase-stats__unit`},`تومان`,-1)]),i[14]||=g(`span`,{class:`purchase-stats__divider`,"aria-hidden":`true`},null,-1),g(`div`,Ke,[i[11]||=g(`span`,{class:`purchase-stats__label`},`میانگین هر سفارش`,-1),g(`strong`,qe,s(S(A)(k.value.averageOrderToman)),1),i[12]||=g(`em`,{class:`purchase-stats__unit`},`تومان`,-1)])])]),g(`section`,Je,[g(`button`,{type:`button`,class:`agent-row`,onClick:i[1]||=e=>S(y).push(`/profile`)},[g(`div`,Ye,s(J.value),1),g(`div`,Xe,[g(`strong`,null,s(q.value),1),g(`p`,null,`کد واسطه: `+s(he.value),1)]),l(F,{size:18,class:`agent-row__chevron`,"aria-hidden":`true`})]),g(`div`,Ze,[g(`div`,Qe,[i[16]||=g(`h3`,{class:`section-title`},`آخرین سفارش‌ها`,-1),g(`button`,{type:`button`,class:`link-btn`,onClick:i[2]||=e=>U(`orders`)},`مشاهده همه`)]),(a(!0),f(m,null,n($.value,t=>(a(),f(`article`,{key:t.id,class:`order-row`,role:`button`,tabindex:`0`,onClick:e=>X(t.id),onKeydown:w(e=>X(t.id),[`enter`])},[g(`div`,et,[g(`strong`,null,s(t.title),1),l(F,{size:14,class:`order-row__chevron`,"aria-hidden":`true`})]),g(`span`,tt,s(S(A)(t.amountToman))+` تومان`,1),g(`span`,{class:e([`status-pill`,`status-pill--${Q(t)}`])},s(Z(t)),3)],40,$e))),128)),$.value.length?d(``,!0):(a(),f(`p`,nt,`سفارشی ثبت نشده است.`))])])],64)):E.value===`orders`?(a(),f(`section`,rt,[(a(!0),f(m,null,n(L.value,t=>(a(),f(`article`,{key:t.id,class:`order-row`,role:`button`,tabindex:`0`,onClick:e=>X(t.id),onKeydown:w(e=>X(t.id),[`enter`])},[g(`div`,at,[g(`strong`,null,s(t.title),1),l(F,{size:14,class:`order-row__chevron`,"aria-hidden":`true`})]),g(`span`,ot,s(S(A)(t.amountToman))+` تومان`,1),g(`span`,{class:e([`status-pill`,`status-pill--${Q(t)}`])},s(Z(t)),3)],40,it))),128)),L.value.length?d(``,!0):(a(),f(`p`,st,`سفارشی ثبت نشده است.`))])):(a(),f(`section`,ct,[i[17]||=g(`h3`,{class:`section-title`},`تعاملات و پیگیری‌ها`,-1),g(`button`,{type:`button`,class:`dashed-btn`,onClick:ue},` + ثبت گزارش ملاقات جدید `),g(`div`,lt,[(a(),f(m,null,n(ge,t=>g(`button`,{key:t.id,type:`button`,class:e([`meeting-filter`,{"meeting-filter--active":z.value===t.id}]),onClick:e=>z.value=t.id},s(t.label),11,ut)),64))]),(a(!0),f(m,null,n(Y.value,t=>(a(),f(`article`,{key:t.id,class:`meeting-row`},[g(`div`,{class:e([`meeting-row__icon`,_e(t.type)])},[t.type===`in_person`?(a(),x(re,{key:0,size:16})):t.type===`call`?(a(),x(te,{key:1,size:16})):t.type===`message`?(a(),x(ce,{key:2,size:16})):(a(),x(ne,{key:3,size:16}))],2),g(`div`,dt,[g(`strong`,null,s(me(t.type)),1),g(`p`,null,s(t.description||t.title),1)]),g(`span`,ft,s(t.date),1)]))),128)),Y.value.length?d(``,!0):(a(),f(`p`,pt,` گزارشی برای این فیلتر ثبت نشده است. `))]))]),E.value===`info`?(a(),f(`footer`,mt,[g(`button`,{type:`button`,class:`cta`,onClick:i[3]||=e=>S(y).push(`/categories`)},[l(M,{size:20,color:`#fff`}),i[18]||=p(` سفارش جدید برای این مشتری `,-1)])])):d(``,!0)])):B.value?(a(),f(`div`,ht,[l(ae,{variant:`detail`})])):(a(),f(`div`,gt,[g(`p`,null,s(V.value||`مشتری یافت نشد.`),1)])),l(Ce,{open:D.value,"customer-id":T.value,onClose:W,onSuccess:de},null,8,[`open`,`customer-id`]),l(se,{open:O.value,"customer-id":T.value,initial:pe.value,onClose:K,onSuccess:fe},null,8,[`open`,`customer-id`,`initial`])],64))}}),[[`__scopeId`,`data-v-20a7b2ca`]]);export{_t as default}; \ No newline at end of file diff --git a/dist/assets/CustomersView-CNLgp8Je.js b/dist/assets/CustomersView-CNLgp8Je.js deleted file mode 100644 index 201173a..0000000 --- a/dist/assets/CustomersView-CNLgp8Je.js +++ /dev/null @@ -1 +0,0 @@ -import{D as e,E as t,Et as n,G as r,J as i,Kt as a,M as o,N as s,O as c,P as l,T as u,Xt as d,Yt as f,Z as p,at as m,b as h,g as ee,h as g,st as _,t as v,vt as y,w as b}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";import{o as x}from"./format-C72AoJ2H.js";import{E as te,o as ne,w as S}from"./index-BAQfYU-Q.js";import{t as re}from"./IconFilter-C0e5CP4I.js";import{t as ie}from"./PageHeader-DTO8lja2.js";import{t as ae}from"./SearchField-BMLbKLPW.js";import{t as C}from"./PageSkeleton-DHtB6RUa.js";import{t as w}from"./crm-CooNUbmr.js";import{t as T}from"./CustomerCreateOverlay-BlatCdeJ.js";var E={class:`page customers-page`},D={class:`desktop-page__head desktop-only customers-desk-head`},O={class:`page__scroll page__scroll--with-nav customers-scroll`},k={class:`toolbar`},A={class:`summary-card`},j={class:`summary-card__icon`,"aria-hidden":`true`},M={class:`summary-card__cols`},N={class:`tabs`,role:`tablist`},P=[`aria-selected`,`onClick`],F={class:`tab__text`},I={key:1},L=[`onClick`],R={class:`customer-card__body`},oe={class:`customer-card__top`},z=v(l({__name:`CustomersView`,setup(l){let v=g(),z=ee(),B=w(),V=y(String(v.query.q??``)),H=b(()=>String(v.query.status??`all`)),U=y([]),W=y(!0),G=y(null),K=b(()=>U.value),q=b(()=>v.query.create===`1`),se=b(()=>U.value.filter(e=>e.status===`active`).length),ce=b(()=>U.value.reduce((e,t)=>e+t.totalPurchaseToman,0)),le=[{id:`all`,label:`همه`},{id:`active`,label:`فعال`},{id:`inactive`,label:`غیرفعال`},{id:`new`,label:`جدید`}];async function J(){W.value=!0,G.value=null;try{U.value=await B.loadCustomers({q:V.value||void 0,status:H.value===`all`?void 0:H.value})}catch(e){G.value=e instanceof Error?e.message:`بارگذاری مشتریان ناموفق بود.`,U.value=[]}finally{W.value=!1}}r(J),m([H,V],J);function Y(e){z.replace({path:`/customers`,query:{...e===`all`?{}:{status:e},...V.value?{q:V.value}:{}}})}function X(e){V.value=e,z.replace({path:`/customers`,query:{...H.value===`all`?{}:{status:H.value},...e?{q:e}:{}}})}function ue(e){return e===`active`?`فعال`:e===`inactive`?`غیرفعال`:`جدید`}function Z(e={}){return{...H.value===`all`?{}:{status:H.value},...V.value?{q:V.value}:{},...e}}function Q(){z.push({path:`/customers`,query:{...Z(),create:`1`}})}function $(){z.replace({path:`/customers`,query:Z()})}async function de(e){if(e){await z.replace({path:`/customer`,query:{id:e}});return}$(),await J()}function fe(){let e=[`all`,`active`,`inactive`,`new`],t=e.indexOf(H.value);Y(e[(t<0?0:t+1)%e.length]??`all`)}return(r,l)=>(i(),c(`div`,E,[s(ie,{class:`mobile-only`,title:`مشتریان من`,"show-back":``,centered:``,onBack:l[0]||=e=>n(z).back()},{trailing:_(()=>[u(`button`,{type:`button`,class:`nav-add-btn`,"aria-label":`ثبت مشتری`,onClick:Q},[s(S,{size:22})])]),_:1}),u(`header`,D,[l[2]||=u(`div`,null,[u(`h1`,{class:`desktop-page__title`},`مشتریان من`),u(`p`,{class:`desktop-page__subtitle`},`مدیریت مشتریان و پیگیری خریدها`)],-1),u(`button`,{type:`button`,class:`desk-add-btn`,onClick:Q},[s(S,{size:18}),l[1]||=o(` ثبت مشتری `,-1)])]),u(`div`,O,[u(`div`,k,[s(ae,{"model-value":V.value,placeholder:`جستجو بر اساس نام یا موبایل...`,"onUpdate:modelValue":X},null,8,[`model-value`]),u(`button`,{type:`button`,class:`filter-btn`,"aria-label":`فیلتر وضعیت`,onClick:fe},[s(re,{size:18})])]),u(`section`,A,[u(`div`,j,[s(te,{size:22,color:`#fff`})]),u(`div`,M,[u(`div`,null,[l[3]||=u(`span`,null,`تعداد مشتری فعال`,-1),u(`strong`,null,d(n(x)(se.value)),1)]),l[6]||=u(`span`,{class:`summary-card__divider`,"aria-hidden":`true`},null,-1),u(`div`,null,[l[4]||=u(`span`,null,`مجموع خرید (ریال)`,-1),u(`strong`,null,d(n(x)(ce.value)),1),l[5]||=u(`em`,null,`تومان`,-1)])])]),u(`div`,N,[(i(),c(h,null,p(le,e=>u(`button`,{key:e.id,type:`button`,role:`tab`,class:a([`tab`,{"tab--active":H.value===e.id}]),"aria-selected":H.value===e.id,onClick:t=>Y(e.id)},[u(`span`,F,d(e.label),1)],10,P)),64))]),W.value?(i(),t(C,{key:0,variant:`list`})):G.value?(i(),c(`p`,I,d(G.value),1)):e(``,!0),(i(!0),c(h,null,p(K.value,e=>(i(),c(`button`,{key:e.id,type:`button`,class:`customer-card`,onClick:t=>n(z).push({path:`/customer`,query:{id:e.id}})},[u(`div`,{class:`customer-card__avatar`,style:f({background:e.avatarColor})},d(e.avatarLetter),5),u(`div`,R,[u(`div`,oe,[u(`strong`,null,d(e.name),1)]),u(`p`,null,d(e.phone),1),u(`p`,null,`مجموع خرید: `+d(n(x)(e.totalPurchaseToman))+` تومان`,1)]),u(`span`,{class:a([`status`,{"status--ok":e.status===`active`,"status--off":e.status===`inactive`,"status--new":e.status===`new`}])},d(ue(e.status)),3),s(ne,{size:18,class:`chevron`})],8,L))),128)),l[7]||=u(`section`,{class:`promo`},[u(`div`,null,[u(`strong`,null,`افزایش مشتریان = افزایش سطح شما`),u(`p`,null,`با جذب مشتریان بیشتر به سطح VIP برسید`)])],-1)]),s(T,{open:q.value,onClose:$,onSuccess:de},null,8,[`open`])]))}}),[[`__scopeId`,`data-v-a6283622`]]);export{z as default}; \ No newline at end of file diff --git a/dist/assets/CustomersView-oFAB_RWo.js b/dist/assets/CustomersView-oFAB_RWo.js new file mode 100644 index 0000000..e868f8b --- /dev/null +++ b/dist/assets/CustomersView-oFAB_RWo.js @@ -0,0 +1 @@ +import{At as e,F as t,G as ee,M as n,Nt as te,Pt as r,U as i,_ as a,c as o,d as s,f as c,g as l,i as u,k as ne,l as d,nt as f,t as p,u as m,ut as h,v as g}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{o as _}from"./format-C72AoJ2H.js";import{E as re,M as ie,j as ae,o as oe,w as v}from"./index-BrjLizie.js";import{t as y}from"./IconFilter-DgpHKrEL.js";import{t as b}from"./PageHeader-BSsCNguu.js";import{t as x}from"./SearchField-dVDn9y5S.js";import{t as S}from"./PageSkeleton-DYdjm4l9.js";import{t as C}from"./crm-DoYzOa8A.js";import{t as w}from"./CustomerCreateOverlay-iQAyp2AI.js";var T={class:`page customers-page`},E={class:`desktop-page__head desktop-only customers-desk-head`},D={class:`page__scroll page__scroll--with-nav customers-scroll`},O={class:`toolbar`},k={class:`summary-card`},A={class:`summary-card__icon`,"aria-hidden":`true`},j={class:`summary-card__cols`},M={class:`tabs`,role:`tablist`},N=[`aria-selected`,`onClick`],P={class:`tab__text`},F={key:1},I=[`onClick`],L={class:`customer-card__body`},R={class:`customer-card__top`},z=p(g({__name:`CustomersView`,setup(p){let g=ae(),z=ie(),B=C(),V=f(String(g.query.q??``)),H=o(()=>String(g.query.status??`all`)),U=f([]),W=f(!0),G=f(null),K=o(()=>U.value),q=o(()=>g.query.create===`1`),se=o(()=>U.value.filter(e=>e.status===`active`).length),ce=o(()=>U.value.reduce((e,t)=>e+t.totalPurchaseToman,0)),le=[{id:`all`,label:`همه`},{id:`active`,label:`فعال`},{id:`inactive`,label:`غیرفعال`},{id:`new`,label:`جدید`}];async function J(){W.value=!0,G.value=null;try{U.value=await B.loadCustomers({q:V.value||void 0,status:H.value===`all`?void 0:H.value})}catch(e){G.value=e instanceof Error?e.message:`بارگذاری مشتریان ناموفق بود.`,U.value=[]}finally{W.value=!1}}ne(J),i([H,V],J);function Y(e){z.replace({path:`/customers`,query:{...e===`all`?{}:{status:e},...V.value?{q:V.value}:{}}})}function X(e){V.value=e,z.replace({path:`/customers`,query:{...H.value===`all`?{}:{status:H.value},...e?{q:e}:{}}})}function ue(e){return e===`active`?`فعال`:e===`inactive`?`غیرفعال`:`جدید`}function Z(e={}){return{...H.value===`all`?{}:{status:H.value},...V.value?{q:V.value}:{},...e}}function Q(){z.push({path:`/customers`,query:{...Z(),create:`1`}})}function $(){z.replace({path:`/customers`,query:Z()})}async function de(e){if(e){await z.replace({path:`/customer`,query:{id:e}});return}$(),await J()}function fe(){let e=[`all`,`active`,`inactive`,`new`],t=e.indexOf(H.value);Y(e[(t<0?0:t+1)%e.length]??`all`)}return(i,o)=>(n(),c(`div`,T,[a(b,{class:`mobile-only`,title:`مشتریان من`,"show-back":``,centered:``,onBack:o[0]||=e=>h(z).back()},{trailing:ee(()=>[d(`button`,{type:`button`,class:`nav-add-btn`,"aria-label":`ثبت مشتری`,onClick:Q},[a(v,{size:22})])]),_:1}),d(`header`,E,[o[2]||=d(`div`,null,[d(`h1`,{class:`desktop-page__title`},`مشتریان من`),d(`p`,{class:`desktop-page__subtitle`},`مدیریت مشتریان و پیگیری خریدها`)],-1),d(`button`,{type:`button`,class:`desk-add-btn`,onClick:Q},[a(v,{size:18}),o[1]||=l(` ثبت مشتری `,-1)])]),d(`div`,D,[d(`div`,O,[a(x,{"model-value":V.value,placeholder:`جستجو بر اساس نام یا موبایل...`,"onUpdate:modelValue":X},null,8,[`model-value`]),d(`button`,{type:`button`,class:`filter-btn`,"aria-label":`فیلتر وضعیت`,onClick:fe},[a(y,{size:18})])]),d(`section`,k,[d(`div`,A,[a(re,{size:22,color:`#fff`})]),d(`div`,j,[d(`div`,null,[o[3]||=d(`span`,null,`تعداد مشتری فعال`,-1),d(`strong`,null,r(h(_)(se.value)),1)]),o[6]||=d(`span`,{class:`summary-card__divider`,"aria-hidden":`true`},null,-1),d(`div`,null,[o[4]||=d(`span`,null,`مجموع خرید (ریال)`,-1),d(`strong`,null,r(h(_)(ce.value)),1),o[5]||=d(`em`,null,`تومان`,-1)])])]),d(`div`,M,[(n(),c(u,null,t(le,t=>d(`button`,{key:t.id,type:`button`,role:`tab`,class:e([`tab`,{"tab--active":H.value===t.id}]),"aria-selected":H.value===t.id,onClick:e=>Y(t.id)},[d(`span`,P,r(t.label),1)],10,N)),64))]),W.value?(n(),m(S,{key:0,variant:`list`})):G.value?(n(),c(`p`,F,r(G.value),1)):s(``,!0),(n(!0),c(u,null,t(K.value,t=>(n(),c(`button`,{key:t.id,type:`button`,class:`customer-card`,onClick:e=>h(z).push({path:`/customer`,query:{id:t.id}})},[d(`div`,{class:`customer-card__avatar`,style:te({background:t.avatarColor})},r(t.avatarLetter),5),d(`div`,L,[d(`div`,R,[d(`strong`,null,r(t.name),1)]),d(`p`,null,r(t.phone),1),d(`p`,null,`مجموع خرید: `+r(h(_)(t.totalPurchaseToman))+` تومان`,1)]),d(`span`,{class:e([`status`,{"status--ok":t.status===`active`,"status--off":t.status===`inactive`,"status--new":t.status===`new`}])},r(ue(t.status)),3),a(oe,{size:18,class:`chevron`})],8,I))),128)),o[7]||=d(`section`,{class:`promo`},[d(`div`,null,[d(`strong`,null,`افزایش مشتریان = افزایش سطح شما`),d(`p`,null,`با جذب مشتریان بیشتر به سطح VIP برسید`)])],-1)]),a(w,{open:q.value,onClose:$,onSuccess:de},null,8,[`open`])]))}}),[[`__scopeId`,`data-v-a6283622`]]);export{z as default}; \ No newline at end of file diff --git a/dist/assets/EmptyState-D-8eFOUi.js b/dist/assets/EmptyState-D-8eFOUi.js deleted file mode 100644 index 2eff47e..0000000 --- a/dist/assets/EmptyState-D-8eFOUi.js +++ /dev/null @@ -1 +0,0 @@ -import{D as e,J as t,M as n,N as r,O as i,P as a,Q as o,T as s,Xt as c,t as l,w as u}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";import{t as d}from"./BasicIcon-BXxbbWA_.js";var f={class:`empty-state`},p={class:`empty-state__icon`,"aria-hidden":`true`},m={key:0,class:`empty-state__title`},h={key:1,class:`empty-state__message`},g={key:2,class:`empty-state__action`},_=l(a({__name:`EmptyState`,props:{message:{default:void 0},title:{default:void 0},variant:{default:`default`},icon:{default:void 0},iconSize:{default:72}},setup(a){let l=a,_={default:`vuesax-linear:clipboard-close`,products:`vuesax-linear:box-remove`,catalogs:`vuesax-linear:category`,orders:`vuesax-linear:document-text`,cart:`vuesax-linear:bag-cross`,checks:`vuesax-linear:card-receive`,search:`vuesax-linear:search-status`},v={default:``,products:`محصولی یافت نشد`,catalogs:`کالیته‌ای یافت نشد`,orders:`سفارشی یافت نشد`,cart:`سبد خرید خالی است`,checks:`چکی ثبت نشده است`,search:`نتیجه‌ای یافت نشد`},y=u(()=>l.icon??_[l.variant]??`vuesax-linear:clipboard-close`),b=u(()=>l.title??v[l.variant]??``),x=u(()=>l.message??``);return(l,u)=>(t(),i(`div`,f,[s(`div`,p,[o(l.$slots,`icon`,{},()=>[r(d,{icon:y.value,size:a.iconSize,"stroke-width":1.25},null,8,[`icon`,`size`])],!0)]),b.value||l.$slots.title?(t(),i(`h2`,m,[o(l.$slots,`title`,{},()=>[n(c(b.value),1)],!0)])):e(``,!0),x.value||l.$slots.message?(t(),i(`p`,h,[o(l.$slots,`message`,{},()=>[n(c(x.value),1)],!0)])):e(``,!0),l.$slots.default?(t(),i(`div`,g,[o(l.$slots,`default`,{},void 0,!0)])):e(``,!0)]))}}),[[`__scopeId`,`data-v-243a4fc7`]]);export{_ as t}; \ No newline at end of file diff --git a/dist/assets/EmptyState-D72g65G-.js b/dist/assets/EmptyState-D72g65G-.js new file mode 100644 index 0000000..b96c82b --- /dev/null +++ b/dist/assets/EmptyState-D72g65G-.js @@ -0,0 +1 @@ +import{I as e,M as t,Pt as n,_ as r,c as i,d as a,f as o,g as s,l as c,t as l,v as u}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{t as d}from"./BasicIcon-Bzeb0Iwd.js";var f={class:`empty-state`},p={class:`empty-state__icon`,"aria-hidden":`true`},m={key:0,class:`empty-state__title`},h={key:1,class:`empty-state__message`},g={key:2,class:`empty-state__action`},_=l(u({__name:`EmptyState`,props:{message:{default:void 0},title:{default:void 0},variant:{default:`default`},icon:{default:void 0},iconSize:{default:72}},setup(l){let u=l,_={default:`vuesax-linear:clipboard-close`,products:`vuesax-linear:box-remove`,catalogs:`vuesax-linear:category`,orders:`vuesax-linear:document-text`,cart:`vuesax-linear:bag-cross`,checks:`vuesax-linear:card-receive`,search:`vuesax-linear:search-status`},v={default:``,products:`محصولی یافت نشد`,catalogs:`کالیته‌ای یافت نشد`,orders:`سفارشی یافت نشد`,cart:`سبد خرید خالی است`,checks:`چکی ثبت نشده است`,search:`نتیجه‌ای یافت نشد`},y=i(()=>u.icon??_[u.variant]??`vuesax-linear:clipboard-close`),b=i(()=>u.title??v[u.variant]??``),x=i(()=>u.message??``);return(i,u)=>(t(),o(`div`,f,[c(`div`,p,[e(i.$slots,`icon`,{},()=>[r(d,{icon:y.value,size:l.iconSize,"stroke-width":1.25},null,8,[`icon`,`size`])],!0)]),b.value||i.$slots.title?(t(),o(`h2`,m,[e(i.$slots,`title`,{},()=>[s(n(b.value),1)],!0)])):a(``,!0),x.value||i.$slots.message?(t(),o(`p`,h,[e(i.$slots,`message`,{},()=>[s(n(x.value),1)],!0)])):a(``,!0),i.$slots.default?(t(),o(`div`,g,[e(i.$slots,`default`,{},void 0,!0)])):a(``,!0)]))}}),[[`__scopeId`,`data-v-243a4fc7`]]);export{_ as t}; \ No newline at end of file diff --git a/dist/assets/FavoritesView-RlUx7_H2.js b/dist/assets/FavoritesView-RlUx7_H2.js new file mode 100644 index 0000000..738ebec --- /dev/null +++ b/dist/assets/FavoritesView-RlUx7_H2.js @@ -0,0 +1 @@ +import{F as e,M as t,Nt as n,Pt as r,_ as i,d as a,f as o,g as s,i as c,k as l,l as u,nt as d,t as f,u as p,ut as m,v as h}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{u as g}from"./BasicIcon-Bzeb0Iwd.js";import{o as _}from"./format-C72AoJ2H.js";import{M as v,l as y,o as b}from"./index-BrjLizie.js";import{t as x}from"./PageHeader-BSsCNguu.js";import{t as S}from"./PageSkeleton-DYdjm4l9.js";import{t as C}from"./crm-DoYzOa8A.js";import{t as w}from"./IconBookmark-CQq-TOS-.js";import{n as T,t as E}from"./colorSwatch-BgOH1LE5.js";var D={class:`page favorites-page`},O={class:`page__scroll page__scroll--with-nav body`},k={key:1},A={key:2,class:`empty`},j=[`onClick`],M={class:`product-item__body`},N={class:`product-item__head`},P={class:`product-item__title`},F={key:0,class:`new-tag`},I=[`onClick`],L={class:`product-item__specs`},R={key:0,class:`swatches`},z=[`onClick`],B=f(h({__name:`FavoritesView`,setup(f){let h={summer:`تابستانه`,winter:`زمستانه`,all_season:`چهارفصل`},B=v(),V=y(),H=C(),U=d([]),W=d(!0),G=d(null);l(async()=>{W.value=!0;try{await V.hydrate();let e=await H.loadBrowseProducts(),t=new Set(V.ids);U.value=e.filter(e=>t.has(e.id))}catch(e){G.value=e instanceof Error?e.message:`بارگذاری علاقه‌مندی‌ها ناموفق بود.`}finally{W.value=!1}});function K(e){return h[e]??`—`}function q(e){return E(e.colors,e.colorImages,e.imageUrls,0,e.imageUrl)}function J(e){B.push({path:`/product`,query:{id:e}})}async function Y(e){await V.toggle(e),U.value=U.value.filter(t=>t.id!==e)}return(l,d)=>(t(),o(`div`,D,[i(x,{class:`mobile-only`,title:`علاقه‌مندی‌ها`,"show-back":``,centered:``,onBack:d[0]||=e=>m(B).back()}),d[2]||=u(`header`,{class:`desktop-page__head desktop-only`},[u(`h1`,{class:`desktop-page__title`},`علاقه‌مندی‌ها`),u(`p`,{class:`desktop-page__subtitle`},`محصولات ذخیره‌شده برای دسترسی سریع`)],-1),u(`div`,O,[W.value?(t(),p(S,{key:0,variant:`grid`})):G.value?(t(),o(`p`,k,r(G.value),1)):U.value.length?a(``,!0):(t(),o(`p`,A,`هنوز محصولی ذخیره نکرده‌اید.`)),(t(!0),o(c,null,e(U.value,l=>(t(),o(`article`,{key:l.id,class:`product-item`,onClick:e=>J(l.id)},[u(`div`,{class:`product-item__image`,style:n(q(l)?{backgroundImage:`url(${q(l)})`}:m(T)(l.colors[0]??``))},null,4),u(`div`,M,[u(`div`,N,[u(`div`,P,[u(`strong`,null,r(l.name),1),l.isNew?(t(),o(`span`,F,`جدید`)):a(``,!0)]),u(`button`,{type:`button`,class:`bookmark`,"aria-label":`حذف از علاقه‌مندی‌ها`,onClick:g(e=>Y(l.id),[`stop`])},[i(w,{size:18,filled:``,color:`var(--color-primary)`})],8,I)]),u(`ul`,L,[u(`li`,null,`عرض: `+r(m(_)(l.widthCm))+` سانتی‌متر`,1),u(`li`,null,`ترکیب: `+r(l.composition||`—`),1),u(`li`,null,`مناسب: `+r(K(l.season)),1)]),l.colors.length?(t(),o(`div`,R,[(t(!0),o(c,null,e(l.colors.slice(0,6),(e,r)=>(t(),o(`span`,{key:r,class:`swatch`,style:n(m(T)(e,l.colorImages?.[r]||l.imageUrls?.[r]))},null,4))),128))])):a(``,!0),u(`button`,{type:`button`,class:`details-link`,onClick:g(e=>J(l.id),[`stop`])},[d[1]||=s(` مشاهده جزئیات `,-1),i(b,{size:14})],8,z)])],8,j))),128))])]))}}),[[`__scopeId`,`data-v-cc481a5f`]]);export{B as default}; \ No newline at end of file diff --git a/dist/assets/FavoritesView-y720DF4m.js b/dist/assets/FavoritesView-y720DF4m.js deleted file mode 100644 index 9461ec7..0000000 --- a/dist/assets/FavoritesView-y720DF4m.js +++ /dev/null @@ -1 +0,0 @@ -import{D as e,E as t,Et as n,G as r,J as i,M as a,N as o,O as s,P as c,T as l,Xt as u,Yt as d,Z as f,b as p,g as m,t as h,vt as g}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";import{u as _}from"./BasicIcon-BXxbbWA_.js";import{o as v}from"./format-C72AoJ2H.js";import{l as y,o as b}from"./index-BAQfYU-Q.js";import{t as x}from"./PageHeader-DTO8lja2.js";import{t as S}from"./PageSkeleton-DHtB6RUa.js";import{t as C}from"./crm-CooNUbmr.js";import{t as w}from"./IconBookmark-DQEBziz0.js";import{n as T,t as E}from"./colorSwatch-BgOH1LE5.js";var D={class:`page favorites-page`},O={class:`page__scroll page__scroll--with-nav body`},k={key:1},A={key:2,class:`empty`},j=[`onClick`],M={class:`product-item__body`},N={class:`product-item__head`},P={class:`product-item__title`},F={key:0,class:`new-tag`},I=[`onClick`],L={class:`product-item__specs`},R={key:0,class:`swatches`},z=[`onClick`],B=h(c({__name:`FavoritesView`,setup(c){let h={summer:`تابستانه`,winter:`زمستانه`,all_season:`چهارفصل`},B=m(),V=y(),H=C(),U=g([]),W=g(!0),G=g(null);r(async()=>{W.value=!0;try{await V.hydrate();let e=await H.loadBrowseProducts(),t=new Set(V.ids);U.value=e.filter(e=>t.has(e.id))}catch(e){G.value=e instanceof Error?e.message:`بارگذاری علاقه‌مندی‌ها ناموفق بود.`}finally{W.value=!1}});function K(e){return h[e]??`—`}function q(e){return E(e.colors,e.colorImages,e.imageUrls,0,e.imageUrl)}function J(e){B.push({path:`/product`,query:{id:e}})}async function Y(e){await V.toggle(e),U.value=U.value.filter(t=>t.id!==e)}return(r,c)=>(i(),s(`div`,D,[o(x,{class:`mobile-only`,title:`علاقه‌مندی‌ها`,"show-back":``,centered:``,onBack:c[0]||=e=>n(B).back()}),c[2]||=l(`header`,{class:`desktop-page__head desktop-only`},[l(`h1`,{class:`desktop-page__title`},`علاقه‌مندی‌ها`),l(`p`,{class:`desktop-page__subtitle`},`محصولات ذخیره‌شده برای دسترسی سریع`)],-1),l(`div`,O,[W.value?(i(),t(S,{key:0,variant:`grid`})):G.value?(i(),s(`p`,k,u(G.value),1)):U.value.length?e(``,!0):(i(),s(`p`,A,`هنوز محصولی ذخیره نکرده‌اید.`)),(i(!0),s(p,null,f(U.value,t=>(i(),s(`article`,{key:t.id,class:`product-item`,onClick:e=>J(t.id)},[l(`div`,{class:`product-item__image`,style:d(q(t)?{backgroundImage:`url(${q(t)})`}:n(T)(t.colors[0]??``))},null,4),l(`div`,M,[l(`div`,N,[l(`div`,P,[l(`strong`,null,u(t.name),1),t.isNew?(i(),s(`span`,F,`جدید`)):e(``,!0)]),l(`button`,{type:`button`,class:`bookmark`,"aria-label":`حذف از علاقه‌مندی‌ها`,onClick:_(e=>Y(t.id),[`stop`])},[o(w,{size:18,filled:``,color:`var(--color-primary)`})],8,I)]),l(`ul`,L,[l(`li`,null,`عرض: `+u(n(v)(t.widthCm))+` سانتی‌متر`,1),l(`li`,null,`ترکیب: `+u(t.composition||`—`),1),l(`li`,null,`مناسب: `+u(K(t.season)),1)]),t.colors.length?(i(),s(`div`,R,[(i(!0),s(p,null,f(t.colors.slice(0,6),(e,r)=>(i(),s(`span`,{key:r,class:`swatch`,style:d(n(T)(e,t.colorImages?.[r]||t.imageUrls?.[r]))},null,4))),128))])):e(``,!0),l(`button`,{type:`button`,class:`details-link`,onClick:_(e=>J(t.id),[`stop`])},[c[1]||=a(` مشاهده جزئیات `,-1),o(b,{size:14})],8,z)])],8,j))),128))])]))}}),[[`__scopeId`,`data-v-cc481a5f`]]);export{B as default}; \ No newline at end of file diff --git a/dist/assets/FormErrorBanner-DI5hhxpk.js b/dist/assets/FormErrorBanner-DI5hhxpk.js deleted file mode 100644 index 6ac7a31..0000000 --- a/dist/assets/FormErrorBanner-DI5hhxpk.js +++ /dev/null @@ -1 +0,0 @@ -import{D as e,J as t,O as n,P as r,Xt as i,t as a}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";var o={key:0,class:`form-error-banner`,role:`alert`},s=a(r({__name:`FormErrorBanner`,props:{message:{}},setup(r){return(a,s)=>r.message?(t(),n(`div`,o,i(r.message),1)):e(``,!0)}}),[[`__scopeId`,`data-v-ba22e021`]]);export{s as t}; \ No newline at end of file diff --git a/dist/assets/FormErrorBanner-Ud1D04xf.js b/dist/assets/FormErrorBanner-Ud1D04xf.js new file mode 100644 index 0000000..0e0646c --- /dev/null +++ b/dist/assets/FormErrorBanner-Ud1D04xf.js @@ -0,0 +1 @@ +import{M as e,Pt as t,d as n,f as r,t as i,v as a}from"./_plugin-vue_export-helper-1xMDlcEE.js";var o={key:0,class:`form-error-banner`,role:`alert`},s=i(a({__name:`FormErrorBanner`,props:{message:{}},setup(i){return(a,s)=>i.message?(e(),r(`div`,o,t(i.message),1)):n(``,!0)}}),[[`__scopeId`,`data-v-ba22e021`]]);export{s as t}; \ No newline at end of file diff --git a/dist/assets/HomeView-Bqa7R1Mj.js b/dist/assets/HomeView-Bqa7R1Mj.js deleted file mode 100644 index f516be3..0000000 --- a/dist/assets/HomeView-Bqa7R1Mj.js +++ /dev/null @@ -1 +0,0 @@ -import{D as e,E as t,Et as n,G as r,J as i,K as a,Kt as o,M as s,N as c,O as l,P as ee,T as u,Xt as d,Yt as f,Z as p,b as m,et as te,g as ne,st as re,t as h,vt as g,w as _}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";import{r as ie,u as ae}from"./BasicIcon-BXxbbWA_.js";import{n as v}from"./http-CeONvUNq.js";import{o as oe}from"./format-C72AoJ2H.js";import{c as se,i as ce,l as le,o as ue,r as de,s as fe}from"./index-BAQfYU-Q.js";import{t as pe}from"./IconChevronBack-DfGoZJJk.js";import{t as me}from"./PageSkeleton-DHtB6RUa.js";import{n as he,r as ge,t as _e}from"./crm-CooNUbmr.js";import{t as ve}from"./useGoBack-TJZZv7or.js";import{t as y}from"./quick-catalog-request-Di7-t6Ua.js";import{t as ye}from"./IconHeart-Be5RRWq4.js";async function be(){return v(`/suggestions/me`)}var xe=`/assets/level-medal-Avpe4Lqa.webp`,b=`/assets/quick-categories-grid-BcZY1Wu0.webp`,x=`/assets/latest-order-status-D65E3uoz.webp`,S=`/assets/quick-new-products-DBGxsuVa.webp`,Se={class:`page home-page`},C={class:`home-header mobile-only`},w={class:`home-header__user`},T={class:`home-header__hello`},E={class:`home-header__actions`},D={class:`home-desk-head desktop-only`},O={class:`home-desk-head__sub`},k={class:`page__scroll page__scroll--with-nav home-scroll`},A={key:0,class:`home-error`},j=[`aria-label`],Ce={class:`hero-banner__content`},we={key:0,class:`hero-banner__title`},Te={key:0},Ee={key:1,class:`hero-banner__title`},De={key:0,class:`hero-banner__dots`,role:`tablist`,"aria-label":`بنرها`},Oe=[`aria-label`,`aria-selected`,`onClick`],ke={class:`quick-grid`,"aria-label":`دسترسی سریع`},Ae=[`onClick`],je={class:`quick-card__icon`,"aria-hidden":`true`},Me=[`src`],Ne={class:`quick-card__label`},Pe={key:0,class:`level-card`,"aria-label":`سطح عضویت`},Fe={class:`level-card__top`},Ie={class:`level-card__identity`},Le=[`src`],M={class:`level-card__text`},Re={class:`level-card__name`},ze={class:`level-card__next`},Be={class:`level-card__progress`},Ve=[`aria-valuenow`],He={class:`level-card__points`},Ue={key:1,class:`suggest-card`,"aria-label":`پیشنهاد اختصاصی`},We={class:`suggest-card__head`},Ge={key:0,class:`suggest-card__empty`},Ke={key:0,class:`suggest-card__row scroll-x`},qe=[`onClick`],Je={key:0,class:`suggest-card__badge`},Ye={class:`suggest-card__body`},Xe={class:`suggest-card__name`},Ze={class:`suggest-card__sub`},Qe={key:0,class:`suggest-card__note`},$e={class:`section`},et={class:`section__head`},tt={class:`product-row scroll-x`},nt=[`onClick`],rt={key:0,class:`product-card__badge`},it={class:`product-card__body`},at={class:`product-card__name`},ot={class:`product-card__sub`},st=[`aria-label`,`aria-pressed`,`onClick`],N=h(ee({__name:`HomeView`,setup(ee){let h=ne(),{goBack:v}=ve(`/`),N=se(),ct=_e(),P=le(),F=g(!0),I=g(null),L=g([]),R=g([]),z=g(null),B=g(null),lt=[{id:`qa-new`,label:`محصولات جدید`,to:`/products`,image:S},{id:`qa-cat`,label:`دسته بندی`,to:`/categories`,image:b},{id:`qa-club`,label:`آخرین وضعیت سفارش`,to:`/orders/latest-status`,image:x},{id:`qa-swatch`,label:`آخرین درخواست کالیته`,to:`/catalog-requests/latest-status`,image:y}],ut=[{id:`qa-new`,label:`محصولات جدید`,to:`/products`,image:S},{id:`qa-cat`,label:`دسته بندی`,to:`/categories`,image:b},{id:`qa-customers`,label:`آخرین وضعیت سفارش`,to:`/orders/latest-status`,image:x},{id:`qa-swatch`,label:`آخرین درخواست کالیته`,to:`/catalog-requests/latest-status`,image:y}],dt=_(()=>N.isAgent?ut:lt),V={id:`fallback`,slot:`home_hero`,title:`کالکشن پاییز و زمستان`,subtitle:`جدیدترین پارچه‌ها`,ctaLabel:`مشاهده کالکشن`,ctaLink:`/categories`,imageUrl:``,showTitle:!0,showSubtitle:!0,showCta:!0},H=g([V]),U=g(0),W=g(`hero-next`),G,K=_(()=>H.value[U.value]??V),ft=_(()=>{let e=K.value;return e.showTitle!==!1&&e.title||e.showSubtitle!==!1&&e.subtitle||e.showCta!==!1&&e.ctaLabel});function pt(e){if(e.imageUrl)return{"--hero-image":`url("${e.imageUrl}")`}}function q(e,t){let n=H.value.length;if(!n)return;let r=(e%n+n)%n;r!==U.value&&(t===1?W.value=`hero-next`:t===-1?W.value=`hero-prev`:U.value===n-1&&r===0?W.value=`hero-next`:U.value===0&&r===n-1?W.value=`hero-prev`:W.value=r>U.value?`hero-next`:`hero-prev`,U.value=r)}function J(){Y(),!(H.value.length<2)&&(G=window.setInterval(()=>{q(U.value+1,1)},5500))}function Y(){G&&window.clearInterval(G),G=void 0}function mt(e){q(e),J()}let X=_(()=>N.user?.firstName||`کاربر`),Z=_(()=>N.user?.lastName||``),Q=_(()=>{if(B.value)return B.value;let e=N.user;return{label:e?.levelLabel||`برنزی`,nextLabel:e?.nextLevelLabel||`نقره‌ای`,pointsRemaining:e?.pointsToNext??0,progressPercent:e?.levelProgress??0}});a(Y),r(async()=>{F.value=!0,I.value=null;try{let[e,t]=await Promise.all([ct.loadBrowseProducts(),ge(`home_hero`).catch(()=>[]),P.hydrate()]);if(t.length&&(H.value=t),J(),L.value=e.filter(e=>e.isNew).slice(0,6),L.value.length||(L.value=e.slice(0,6)),N.isAgent)try{let e=await he();B.value={label:e.levelLabel,nextLabel:e.nextLevelLabel,pointsRemaining:e.pointsToNext,progressPercent:e.levelProgress}}catch{}else try{R.value=await be()}catch{R.value=[]}}catch(e){I.value=e instanceof Error?e.message:`بارگذاری خانه ناموفق بود.`}finally{F.value=!1}});function $(e){if(/^https?:\/\//i.test(e)){window.location.assign(e);return}h.push(e)}function ht(){$(K.value.ctaLink.trim()||`/categories`)}async function gt(e){z.value=null;try{await P.toggle(e)}catch(e){z.value=e instanceof Error?e.message:`ذخیره علاقه‌مندی ناموفق بود.`}}return(r,a)=>(i(),l(`div`,Se,[u(`header`,C,[u(`button`,{type:`button`,class:`icon-btn`,"aria-label":`بازگشت`,onClick:a[0]||=(...e)=>n(v)&&n(v)(...e)},[c(pe,{size:20})]),u(`div`,w,[c(de,{class:`home-header__avatar`,src:n(N).user?.avatarUrl,initials:X.value.charAt(0),size:44},null,8,[`src`,`initials`]),u(`div`,null,[u(`p`,T,` سلام، `+d(X.value)+` `+d(Z.value),1),a[4]||=u(`p`,{class:`home-header__welcome`},`خوش آمدید`,-1)])]),u(`div`,E,[c(ce,{variant:`inline`}),u(`button`,{type:`button`,class:`icon-btn`,"aria-label":`اعلان‌ها`,onClick:a[1]||=e=>$(`/profile/notifications`)},[c(fe,{size:20})])])]),u(`header`,D,[u(`div`,null,[a[5]||=u(`h1`,{class:`home-desk-head__title`},`خانه`,-1),u(`p`,O,` سلام `+d(X.value)+` `+d(Z.value)+` — خوش آمدید `,1)])]),u(`div`,k,[I.value?(i(),l(`p`,A,d(I.value),1)):F.value?(i(),t(me,{key:1,variant:`home`})):(i(),l(m,{key:2},[u(`section`,{class:`hero-banner`,"aria-label":K.value.title},[c(ie,{name:W.value,tag:`div`,class:`hero-banner__stage`},{default:re(()=>[(i(),l(`article`,{key:K.value.id,class:o([`hero-slide`,{"hero-slide--copy":ft.value}]),style:f(pt(K.value))},[a[6]||=u(`div`,{class:`hero-slide__media`,"aria-hidden":`true`},null,-1),u(`div`,Ce,[K.value.showTitle===!1?K.value.showSubtitle!==!1&&K.value.subtitle?(i(),l(`p`,Ee,[u(`span`,null,d(K.value.subtitle),1)])):e(``,!0):(i(),l(`h2`,we,[s(d(K.value.title)+` `,1),K.value.showSubtitle!==!1&&K.value.subtitle?(i(),l(`span`,Te,d(K.value.subtitle),1)):e(``,!0)])),K.value.showCta!==!1&&K.value.ctaLabel?(i(),l(`button`,{key:2,type:`button`,class:`hero-banner__cta`,onClick:ht},d(K.value.ctaLabel),1)):e(``,!0)])],6))]),_:1},8,[`name`]),H.value.length>1?(i(),l(`div`,De,[(i(!0),l(m,null,p(H.value,(e,t)=>(i(),l(`button`,{key:e.id,type:`button`,class:o([`dot`,{"dot--active":t===U.value}]),"aria-label":e.title,"aria-selected":t===U.value,onClick:e=>mt(t)},null,10,Oe))),128))])):e(``,!0)],8,j),u(`section`,ke,[(i(!0),l(m,null,p(dt.value,e=>(i(),l(`button`,{key:e.id,type:`button`,class:`quick-card`,onClick:t=>$(e.to)},[u(`span`,je,[e.image?(i(),l(`img`,{key:0,class:`quick-card__image`,src:e.image,alt:``},null,8,Me)):(i(),t(te(e.icon),{key:1,size:20}))]),u(`span`,Ne,d(e.label),1)],8,Ae))),128))]),n(N).isAgent?(i(),l(`section`,Pe,[u(`div`,Fe,[u(`div`,Ie,[u(`img`,{class:`level-card__medal`,src:n(xe),alt:``,width:`48`,height:`48`,"aria-hidden":`true`},null,8,Le),u(`div`,M,[a[7]||=u(`span`,{class:`level-card__eyebrow`},`سطح شما`,-1),u(`strong`,Re,d(Q.value.label),1),u(`span`,ze,`تا سطح `+d(Q.value.nextLabel),1)])]),u(`button`,{type:`button`,class:`level-card__details`,onClick:a[2]||=e=>$(`/profile`)},` جزئیات سطح `)]),u(`div`,Be,[u(`div`,{class:`level-card__bar`,role:`progressbar`,"aria-valuenow":Q.value.progressPercent,"aria-valuemin":`0`,"aria-valuemax":`100`},[u(`span`,{class:`level-card__bar-fill`,style:f({width:`${Q.value.progressPercent}%`})},null,4)],8,Ve),u(`span`,He,d(n(oe)(Q.value.pointsRemaining))+` امتیاز دیگر `,1)])])):(i(),l(`section`,Ue,[u(`div`,We,[a[8]||=u(`h3`,{class:`suggest-card__title`},`پیشنهاد اختصاصی ما برای شما`,-1),R.value.length?e(``,!0):(i(),l(`p`,Ge,` هنوز پیشنهاد اختصاصی برای شما ثبت نشده است. `))]),R.value.length?(i(),l(`div`,Ke,[(i(!0),l(m,null,p(R.value,(t,n)=>(i(),l(`article`,{key:t.id,class:`suggest-card__item`,onClick:e=>$(`/product?id=${t.productId}`)},[u(`div`,{class:o([`suggest-card__image`,`suggest-card__image--${n%3}`]),style:f(t.imageUrl?{backgroundImage:`url(${t.imageUrl})`}:void 0)},[t.isNew?(i(),l(`span`,Je,`جدید`)):e(``,!0)],6),u(`div`,Ye,[u(`strong`,Xe,d(t.productName),1),u(`span`,Ze,d(t.subtitle||t.catalogName||t.productCode),1),t.note?(i(),l(`p`,Qe,d(t.note),1)):e(``,!0)])],8,qe))),128))])):e(``,!0)])),u(`section`,$e,[u(`div`,et,[a[10]||=u(`h3`,{class:`section__title`},`جدیدترین محصولات`,-1),u(`button`,{type:`button`,class:`section__link`,onClick:a[3]||=e=>$(`/products`)},[a[9]||=s(` مشاهده همه `,-1),c(ue,{size:14})])]),u(`div`,tt,[(i(!0),l(m,null,p(L.value,(t,r)=>(i(),l(`article`,{key:t.id,class:`product-card`,onClick:e=>$(`/product?id=${t.id}`)},[u(`div`,{class:o([`product-card__image`,`product-card__image--${r%3}`]),style:f(t.imageUrl?{backgroundImage:`url(${t.imageUrl})`}:void 0)},[t.isNew?(i(),l(`span`,rt,`جدید`)):e(``,!0)],6),u(`div`,it,[u(`strong`,at,d(t.name),1),u(`span`,ot,d(t.subtitle),1),u(`button`,{type:`button`,class:o([`product-card__fav`,{"product-card__fav--on":n(P).isFavorite(t.id)}]),"aria-label":n(P).isFavorite(t.id)?`حذف از علاقه‌مندی‌ها`:`افزودن به علاقه‌مندی‌ها`,"aria-pressed":n(P).isFavorite(t.id),onClick:ae(e=>gt(t.id),[`stop`])},[c(ye,{size:16,filled:n(P).isFavorite(t.id),color:n(P).isFavorite(t.id)?`#0a353c`:`#b0b7c0`},null,8,[`filled`,`color`])],10,st)])],8,nt))),128))])])],64))])]))}}),[[`__scopeId`,`data-v-653b1e57`]]);export{N as default}; \ No newline at end of file diff --git a/dist/assets/HomeView-CvirsHZC.js b/dist/assets/HomeView-CvirsHZC.js new file mode 100644 index 0000000..1040ce1 --- /dev/null +++ b/dist/assets/HomeView-CvirsHZC.js @@ -0,0 +1 @@ +import{A as e,At as t,F as n,G as r,M as i,Nt as a,Pt as o,R as ee,_ as s,c,d as l,f as u,g as d,i as f,k as te,l as p,nt as m,t as ne,u as h,ut as g,v as _}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{r as re,u as ie}from"./BasicIcon-Bzeb0Iwd.js";import{n as v}from"./http-Cmeatq0_.js";import{o as ae}from"./format-C72AoJ2H.js";import{M as oe,c as se,i as ce,l as le,o as ue,r as de,s as fe}from"./index-BrjLizie.js";import{t as pe}from"./IconChevronBack-CDeN0Cbu.js";import{t as me}from"./PageSkeleton-DYdjm4l9.js";import{n as he,r as ge,t as _e}from"./crm-DoYzOa8A.js";import{t as ve}from"./useGoBack-C1ocTT2D.js";import{t as y}from"./quick-catalog-request-Di7-t6Ua.js";import{t as ye}from"./IconHeart-CvzbNH_T.js";async function be(){return v(`/suggestions/me`)}var xe=`/assets/level-medal-Avpe4Lqa.webp`,b=`/assets/quick-categories-grid-BcZY1Wu0.webp`,x=`/assets/latest-order-status-D65E3uoz.webp`,S=`/assets/quick-new-products-DBGxsuVa.webp`,Se={class:`page home-page`},C={class:`home-header mobile-only`},w={class:`home-header__user`},T={class:`home-header__hello`},E={class:`home-header__actions`},D={class:`home-desk-head desktop-only`},O={class:`home-desk-head__sub`},k={class:`page__scroll page__scroll--with-nav home-scroll`},A={key:0,class:`home-error`},j=[`aria-label`],Ce={class:`hero-banner__content`},we={key:0,class:`hero-banner__title`},Te={key:0},Ee={key:1,class:`hero-banner__title`},De={key:0,class:`hero-banner__dots`,role:`tablist`,"aria-label":`بنرها`},Oe=[`aria-label`,`aria-selected`,`onClick`],ke={class:`quick-grid`,"aria-label":`دسترسی سریع`},Ae=[`onClick`],je={class:`quick-card__icon`,"aria-hidden":`true`},Me=[`src`],Ne={class:`quick-card__label`},Pe={key:0,class:`level-card`,"aria-label":`سطح عضویت`},Fe={class:`level-card__top`},Ie={class:`level-card__identity`},Le=[`src`],M={class:`level-card__text`},Re={class:`level-card__name`},ze={class:`level-card__next`},Be={class:`level-card__progress`},Ve=[`aria-valuenow`],He={class:`level-card__points`},Ue={key:1,class:`suggest-card`,"aria-label":`پیشنهاد اختصاصی`},We={class:`suggest-card__head`},Ge={key:0,class:`suggest-card__empty`},Ke={key:0,class:`suggest-card__row scroll-x`},qe=[`onClick`],Je={key:0,class:`suggest-card__badge`},Ye={class:`suggest-card__body`},Xe={class:`suggest-card__name`},Ze={class:`suggest-card__sub`},Qe={key:0,class:`suggest-card__note`},$e={class:`section`},et={class:`section__head`},tt={class:`product-row scroll-x`},nt=[`onClick`],rt={key:0,class:`product-card__badge`},it={class:`product-card__body`},at={class:`product-card__name`},ot={class:`product-card__sub`},st=[`aria-label`,`aria-pressed`,`onClick`],N=ne(_({__name:`HomeView`,setup(ne){let _=oe(),{goBack:v}=ve(`/`),N=se(),ct=_e(),P=le(),F=m(!0),I=m(null),L=m([]),R=m([]),z=m(null),B=m(null),lt=[{id:`qa-new`,label:`محصولات جدید`,to:`/products`,image:S},{id:`qa-cat`,label:`دسته بندی`,to:`/categories`,image:b},{id:`qa-club`,label:`آخرین وضعیت سفارش`,to:`/orders/latest-status`,image:x},{id:`qa-swatch`,label:`آخرین درخواست کالیته`,to:`/catalog-requests/latest-status`,image:y}],ut=[{id:`qa-new`,label:`محصولات جدید`,to:`/products`,image:S},{id:`qa-cat`,label:`دسته بندی`,to:`/categories`,image:b},{id:`qa-customers`,label:`آخرین وضعیت سفارش`,to:`/orders/latest-status`,image:x},{id:`qa-swatch`,label:`آخرین درخواست کالیته`,to:`/catalog-requests/latest-status`,image:y}],dt=c(()=>N.isAgent?ut:lt),V={id:`fallback`,slot:`home_hero`,title:`کالکشن پاییز و زمستان`,subtitle:`جدیدترین پارچه‌ها`,ctaLabel:`مشاهده کالکشن`,ctaLink:`/categories`,imageUrl:``,showTitle:!0,showSubtitle:!0,showCta:!0},H=m([V]),U=m(0),W=m(`hero-next`),G,K=c(()=>H.value[U.value]??V),ft=c(()=>{let e=K.value;return e.showTitle!==!1&&e.title||e.showSubtitle!==!1&&e.subtitle||e.showCta!==!1&&e.ctaLabel});function pt(e){if(e.imageUrl)return{"--hero-image":`url("${e.imageUrl}")`}}function q(e,t){let n=H.value.length;if(!n)return;let r=(e%n+n)%n;r!==U.value&&(t===1?W.value=`hero-next`:t===-1?W.value=`hero-prev`:U.value===n-1&&r===0?W.value=`hero-next`:U.value===0&&r===n-1?W.value=`hero-prev`:W.value=r>U.value?`hero-next`:`hero-prev`,U.value=r)}function J(){Y(),!(H.value.length<2)&&(G=window.setInterval(()=>{q(U.value+1,1)},5500))}function Y(){G&&window.clearInterval(G),G=void 0}function mt(e){q(e),J()}let X=c(()=>N.user?.firstName||`کاربر`),Z=c(()=>N.user?.lastName||``),Q=c(()=>{if(B.value)return B.value;let e=N.user;return{label:e?.levelLabel||`برنزی`,nextLabel:e?.nextLevelLabel||`نقره‌ای`,pointsRemaining:e?.pointsToNext??0,progressPercent:e?.levelProgress??0}});e(Y),te(async()=>{F.value=!0,I.value=null;try{let[e,t]=await Promise.all([ct.loadBrowseProducts(),ge(`home_hero`).catch(()=>[]),P.hydrate()]);if(t.length&&(H.value=t),J(),L.value=e.filter(e=>e.isNew).slice(0,6),L.value.length||(L.value=e.slice(0,6)),N.isAgent)try{let e=await he();B.value={label:e.levelLabel,nextLabel:e.nextLevelLabel,pointsRemaining:e.pointsToNext,progressPercent:e.levelProgress}}catch{}else try{R.value=await be()}catch{R.value=[]}}catch(e){I.value=e instanceof Error?e.message:`بارگذاری خانه ناموفق بود.`}finally{F.value=!1}});function $(e){if(/^https?:\/\//i.test(e)){window.location.assign(e);return}_.push(e)}function ht(){$(K.value.ctaLink.trim()||`/categories`)}async function gt(e){z.value=null;try{await P.toggle(e)}catch(e){z.value=e instanceof Error?e.message:`ذخیره علاقه‌مندی ناموفق بود.`}}return(e,c)=>(i(),u(`div`,Se,[p(`header`,C,[p(`button`,{type:`button`,class:`icon-btn`,"aria-label":`بازگشت`,onClick:c[0]||=(...e)=>g(v)&&g(v)(...e)},[s(pe,{size:20})]),p(`div`,w,[s(de,{class:`home-header__avatar`,src:g(N).user?.avatarUrl,initials:X.value.charAt(0),size:44},null,8,[`src`,`initials`]),p(`div`,null,[p(`p`,T,` سلام، `+o(X.value)+` `+o(Z.value),1),c[4]||=p(`p`,{class:`home-header__welcome`},`خوش آمدید`,-1)])]),p(`div`,E,[s(ce,{variant:`inline`}),p(`button`,{type:`button`,class:`icon-btn`,"aria-label":`اعلان‌ها`,onClick:c[1]||=e=>$(`/profile/notifications`)},[s(fe,{size:20})])])]),p(`header`,D,[p(`div`,null,[c[5]||=p(`h1`,{class:`home-desk-head__title`},`خانه`,-1),p(`p`,O,` سلام `+o(X.value)+` `+o(Z.value)+` — خوش آمدید `,1)])]),p(`div`,k,[I.value?(i(),u(`p`,A,o(I.value),1)):F.value?(i(),h(me,{key:1,variant:`home`})):(i(),u(f,{key:2},[p(`section`,{class:`hero-banner`,"aria-label":K.value.title},[s(re,{name:W.value,tag:`div`,class:`hero-banner__stage`},{default:r(()=>[(i(),u(`article`,{key:K.value.id,class:t([`hero-slide`,{"hero-slide--copy":ft.value}]),style:a(pt(K.value))},[c[6]||=p(`div`,{class:`hero-slide__media`,"aria-hidden":`true`},null,-1),p(`div`,Ce,[K.value.showTitle===!1?K.value.showSubtitle!==!1&&K.value.subtitle?(i(),u(`p`,Ee,[p(`span`,null,o(K.value.subtitle),1)])):l(``,!0):(i(),u(`h2`,we,[d(o(K.value.title)+` `,1),K.value.showSubtitle!==!1&&K.value.subtitle?(i(),u(`span`,Te,o(K.value.subtitle),1)):l(``,!0)])),K.value.showCta!==!1&&K.value.ctaLabel?(i(),u(`button`,{key:2,type:`button`,class:`hero-banner__cta`,onClick:ht},o(K.value.ctaLabel),1)):l(``,!0)])],6))]),_:1},8,[`name`]),H.value.length>1?(i(),u(`div`,De,[(i(!0),u(f,null,n(H.value,(e,n)=>(i(),u(`button`,{key:e.id,type:`button`,class:t([`dot`,{"dot--active":n===U.value}]),"aria-label":e.title,"aria-selected":n===U.value,onClick:e=>mt(n)},null,10,Oe))),128))])):l(``,!0)],8,j),p(`section`,ke,[(i(!0),u(f,null,n(dt.value,e=>(i(),u(`button`,{key:e.id,type:`button`,class:`quick-card`,onClick:t=>$(e.to)},[p(`span`,je,[e.image?(i(),u(`img`,{key:0,class:`quick-card__image`,src:e.image,alt:``},null,8,Me)):(i(),h(ee(e.icon),{key:1,size:20}))]),p(`span`,Ne,o(e.label),1)],8,Ae))),128))]),g(N).isAgent?(i(),u(`section`,Pe,[p(`div`,Fe,[p(`div`,Ie,[p(`img`,{class:`level-card__medal`,src:g(xe),alt:``,width:`48`,height:`48`,"aria-hidden":`true`},null,8,Le),p(`div`,M,[c[7]||=p(`span`,{class:`level-card__eyebrow`},`سطح شما`,-1),p(`strong`,Re,o(Q.value.label),1),p(`span`,ze,`تا سطح `+o(Q.value.nextLabel),1)])]),p(`button`,{type:`button`,class:`level-card__details`,onClick:c[2]||=e=>$(`/profile`)},` جزئیات سطح `)]),p(`div`,Be,[p(`div`,{class:`level-card__bar`,role:`progressbar`,"aria-valuenow":Q.value.progressPercent,"aria-valuemin":`0`,"aria-valuemax":`100`},[p(`span`,{class:`level-card__bar-fill`,style:a({width:`${Q.value.progressPercent}%`})},null,4)],8,Ve),p(`span`,He,o(g(ae)(Q.value.pointsRemaining))+` امتیاز دیگر `,1)])])):(i(),u(`section`,Ue,[p(`div`,We,[c[8]||=p(`h3`,{class:`suggest-card__title`},`پیشنهاد اختصاصی ما برای شما`,-1),R.value.length?l(``,!0):(i(),u(`p`,Ge,` هنوز پیشنهاد اختصاصی برای شما ثبت نشده است. `))]),R.value.length?(i(),u(`div`,Ke,[(i(!0),u(f,null,n(R.value,(e,n)=>(i(),u(`article`,{key:e.id,class:`suggest-card__item`,onClick:t=>$(`/product?id=${e.productId}`)},[p(`div`,{class:t([`suggest-card__image`,`suggest-card__image--${n%3}`]),style:a(e.imageUrl?{backgroundImage:`url(${e.imageUrl})`}:void 0)},[e.isNew?(i(),u(`span`,Je,`جدید`)):l(``,!0)],6),p(`div`,Ye,[p(`strong`,Xe,o(e.productName),1),p(`span`,Ze,o(e.subtitle||e.catalogName||e.productCode),1),e.note?(i(),u(`p`,Qe,o(e.note),1)):l(``,!0)])],8,qe))),128))])):l(``,!0)])),p(`section`,$e,[p(`div`,et,[c[10]||=p(`h3`,{class:`section__title`},`جدیدترین محصولات`,-1),p(`button`,{type:`button`,class:`section__link`,onClick:c[3]||=e=>$(`/products`)},[c[9]||=d(` مشاهده همه `,-1),s(ue,{size:14})])]),p(`div`,tt,[(i(!0),u(f,null,n(L.value,(e,n)=>(i(),u(`article`,{key:e.id,class:`product-card`,onClick:t=>$(`/product?id=${e.id}`)},[p(`div`,{class:t([`product-card__image`,`product-card__image--${n%3}`]),style:a(e.imageUrl?{backgroundImage:`url(${e.imageUrl})`}:void 0)},[e.isNew?(i(),u(`span`,rt,`جدید`)):l(``,!0)],6),p(`div`,it,[p(`strong`,at,o(e.name),1),p(`span`,ot,o(e.subtitle),1),p(`button`,{type:`button`,class:t([`product-card__fav`,{"product-card__fav--on":g(P).isFavorite(e.id)}]),"aria-label":g(P).isFavorite(e.id)?`حذف از علاقه‌مندی‌ها`:`افزودن به علاقه‌مندی‌ها`,"aria-pressed":g(P).isFavorite(e.id),onClick:ie(t=>gt(e.id),[`stop`])},[s(ye,{size:16,filled:g(P).isFavorite(e.id),color:g(P).isFavorite(e.id)?`#0a353c`:`#b0b7c0`},null,8,[`filled`,`color`])],10,st)])],8,nt))),128))])])],64))])]))}}),[[`__scopeId`,`data-v-653b1e57`]]);export{N as default}; \ No newline at end of file diff --git a/dist/assets/IconBookmark-CQq-TOS-.js b/dist/assets/IconBookmark-CQq-TOS-.js new file mode 100644 index 0000000..74930e4 --- /dev/null +++ b/dist/assets/IconBookmark-CQq-TOS-.js @@ -0,0 +1 @@ +import{M as e,f as t,l as n,v as r}from"./_plugin-vue_export-helper-1xMDlcEE.js";var i=[`width`,`height`],a=[`stroke`,`fill`],o=r({__name:`IconBookmark`,props:{size:{default:18},color:{default:`#9AA3AF`},filled:{type:Boolean,default:!1}},setup(r){return(o,s)=>(e(),t(`svg`,{width:r.size,height:r.size,viewBox:`0 0 24 24`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,"aria-hidden":`true`},[n(`path`,{d:`M6.75 3.25h10.5c.97 0 1.75.78 1.75 1.75v15.2c0 .67-.73 1.08-1.3.73L12 17.02 6.3 20.93c-.57.35-1.3-.06-1.3-.73V5c0-.97.78-1.75 1.75-1.75Z`,stroke:r.color,fill:r.filled?r.color:`none`,"stroke-width":`1.5`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null,8,a)],8,i))}});export{o as t}; \ No newline at end of file diff --git a/dist/assets/IconBookmark-DQEBziz0.js b/dist/assets/IconBookmark-DQEBziz0.js deleted file mode 100644 index aa0440a..0000000 --- a/dist/assets/IconBookmark-DQEBziz0.js +++ /dev/null @@ -1 +0,0 @@ -import{J as e,O as t,P as n,T as r}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";var i=[`width`,`height`],a=[`stroke`,`fill`],o=n({__name:`IconBookmark`,props:{size:{default:18},color:{default:`#9AA3AF`},filled:{type:Boolean,default:!1}},setup(n){return(o,s)=>(e(),t(`svg`,{width:n.size,height:n.size,viewBox:`0 0 24 24`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,"aria-hidden":`true`},[r(`path`,{d:`M6.75 3.25h10.5c.97 0 1.75.78 1.75 1.75v15.2c0 .67-.73 1.08-1.3.73L12 17.02 6.3 20.93c-.57.35-1.3-.06-1.3-.73V5c0-.97.78-1.75 1.75-1.75Z`,stroke:n.color,fill:n.filled?n.color:`none`,"stroke-width":`1.5`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null,8,a)],8,i))}});export{o as t}; \ No newline at end of file diff --git a/dist/assets/IconChevronBack-DfGoZJJk.js b/dist/assets/IconChevronBack-CDeN0Cbu.js similarity index 52% rename from dist/assets/IconChevronBack-DfGoZJJk.js rename to dist/assets/IconChevronBack-CDeN0Cbu.js index c0eb4f5..cf85c7d 100644 --- a/dist/assets/IconChevronBack-DfGoZJJk.js +++ b/dist/assets/IconChevronBack-CDeN0Cbu.js @@ -1 +1 @@ -import{E as e,J as t,P as n}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";import{t as r}from"./BasicIcon-BXxbbWA_.js";var i=n({__name:`IconChevronBack`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(n){return(i,a)=>(t(),e(r,{icon:`vuesax-linear:arrow-right-1`,size:n.size,"stroke-width":n.strokeWidth,color:n.color},null,8,[`size`,`stroke-width`,`color`]))}});export{i as t}; \ No newline at end of file +import{M as e,u as t,v as n}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{t as r}from"./BasicIcon-Bzeb0Iwd.js";var i=n({__name:`IconChevronBack`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(n){return(i,a)=>(e(),t(r,{icon:`vuesax-linear:arrow-right-1`,size:n.size,"stroke-width":n.strokeWidth,color:n.color},null,8,[`size`,`stroke-width`,`color`]))}});export{i as t}; \ No newline at end of file diff --git a/dist/assets/IconClipboardEmpty-BdL7YkiR.js b/dist/assets/IconClipboardEmpty-D-FEqLzR.js similarity index 53% rename from dist/assets/IconClipboardEmpty-BdL7YkiR.js rename to dist/assets/IconClipboardEmpty-D-FEqLzR.js index 6477170..a7604c1 100644 --- a/dist/assets/IconClipboardEmpty-BdL7YkiR.js +++ b/dist/assets/IconClipboardEmpty-D-FEqLzR.js @@ -1 +1 @@ -import{E as e,J as t,P as n}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";import{t as r}from"./BasicIcon-BXxbbWA_.js";var i=n({__name:`IconClipboardEmpty`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(n){return(i,a)=>(t(),e(r,{icon:`vuesax-linear:clipboard-close`,size:n.size,"stroke-width":n.strokeWidth,color:n.color},null,8,[`size`,`stroke-width`,`color`]))}});export{i as t}; \ No newline at end of file +import{M as e,u as t,v as n}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{t as r}from"./BasicIcon-Bzeb0Iwd.js";var i=n({__name:`IconClipboardEmpty`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(n){return(i,a)=>(e(),t(r,{icon:`vuesax-linear:clipboard-close`,size:n.size,"stroke-width":n.strokeWidth,color:n.color},null,8,[`size`,`stroke-width`,`color`]))}});export{i as t}; \ No newline at end of file diff --git a/dist/assets/IconDiamond-R4uguqMC.js b/dist/assets/IconDiamond-bOGfMf7j.js similarity index 51% rename from dist/assets/IconDiamond-R4uguqMC.js rename to dist/assets/IconDiamond-bOGfMf7j.js index 95401ac..1d2bc0c 100644 --- a/dist/assets/IconDiamond-R4uguqMC.js +++ b/dist/assets/IconDiamond-bOGfMf7j.js @@ -1 +1 @@ -import{E as e,J as t,P as n}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";import{t as r}from"./BasicIcon-BXxbbWA_.js";var i=n({__name:`IconDiamond`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(n){return(i,a)=>(t(),e(r,{icon:`vuesax-linear:diamonds`,size:n.size,"stroke-width":n.strokeWidth,color:n.color},null,8,[`size`,`stroke-width`,`color`]))}});export{i as t}; \ No newline at end of file +import{M as e,u as t,v as n}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{t as r}from"./BasicIcon-Bzeb0Iwd.js";var i=n({__name:`IconDiamond`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(n){return(i,a)=>(e(),t(r,{icon:`vuesax-linear:diamonds`,size:n.size,"stroke-width":n.strokeWidth,color:n.color},null,8,[`size`,`stroke-width`,`color`]))}});export{i as t}; \ No newline at end of file diff --git a/dist/assets/IconEditPen-LGjdaNbi.js b/dist/assets/IconEditPen-DkMxper9.js similarity index 51% rename from dist/assets/IconEditPen-LGjdaNbi.js rename to dist/assets/IconEditPen-DkMxper9.js index a3fcc61..8319324 100644 --- a/dist/assets/IconEditPen-LGjdaNbi.js +++ b/dist/assets/IconEditPen-DkMxper9.js @@ -1 +1 @@ -import{E as e,J as t,P as n}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";import{t as r}from"./BasicIcon-BXxbbWA_.js";var i=n({__name:`IconEditPen`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(n){return(i,a)=>(t(),e(r,{icon:`vuesax-linear:edit-2`,size:n.size,"stroke-width":n.strokeWidth,color:n.color},null,8,[`size`,`stroke-width`,`color`]))}});export{i as t}; \ No newline at end of file +import{M as e,u as t,v as n}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{t as r}from"./BasicIcon-Bzeb0Iwd.js";var i=n({__name:`IconEditPen`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(n){return(i,a)=>(e(),t(r,{icon:`vuesax-linear:edit-2`,size:n.size,"stroke-width":n.strokeWidth,color:n.color},null,8,[`size`,`stroke-width`,`color`]))}});export{i as t}; \ No newline at end of file diff --git a/dist/assets/IconFilter-C0e5CP4I.js b/dist/assets/IconFilter-DgpHKrEL.js similarity index 51% rename from dist/assets/IconFilter-C0e5CP4I.js rename to dist/assets/IconFilter-DgpHKrEL.js index fec303c..0f36858 100644 --- a/dist/assets/IconFilter-C0e5CP4I.js +++ b/dist/assets/IconFilter-DgpHKrEL.js @@ -1 +1 @@ -import{E as e,J as t,P as n}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";import{t as r}from"./BasicIcon-BXxbbWA_.js";var i=n({__name:`IconFilter`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(n){return(i,a)=>(t(),e(r,{icon:`vuesax-linear:filter`,size:n.size,"stroke-width":n.strokeWidth,color:n.color},null,8,[`size`,`stroke-width`,`color`]))}});export{i as t}; \ No newline at end of file +import{M as e,u as t,v as n}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{t as r}from"./BasicIcon-Bzeb0Iwd.js";var i=n({__name:`IconFilter`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(n){return(i,a)=>(e(),t(r,{icon:`vuesax-linear:filter`,size:n.size,"stroke-width":n.strokeWidth,color:n.color},null,8,[`size`,`stroke-width`,`color`]))}});export{i as t}; \ No newline at end of file diff --git a/dist/assets/IconHeart-Be5RRWq4.js b/dist/assets/IconHeart-Be5RRWq4.js deleted file mode 100644 index 3fea32a..0000000 --- a/dist/assets/IconHeart-Be5RRWq4.js +++ /dev/null @@ -1 +0,0 @@ -import{E as e,J as t,Jt as n,L as r,P as i}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";import{t as a}from"./IconBookmark-DQEBziz0.js";var o=i({__name:`IconHeart`,props:{size:{default:18},color:{default:`#9AA3AF`},filled:{type:Boolean,default:!1}},setup(i){let o=i;return(i,s)=>(t(),e(a,n(r(o)),null,16))}});export{o as t}; \ No newline at end of file diff --git a/dist/assets/IconHeart-CvzbNH_T.js b/dist/assets/IconHeart-CvzbNH_T.js new file mode 100644 index 0000000..0ae37b7 --- /dev/null +++ b/dist/assets/IconHeart-CvzbNH_T.js @@ -0,0 +1 @@ +import{M as e,Mt as t,u as n,v as r,x as i}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{t as a}from"./IconBookmark-CQq-TOS-.js";var o=r({__name:`IconHeart`,props:{size:{default:18},color:{default:`#9AA3AF`},filled:{type:Boolean,default:!1}},setup(r){let o=r;return(r,s)=>(e(),n(a,t(i(o)),null,16))}});export{o as t}; \ No newline at end of file diff --git a/dist/assets/IconLayoutGrid-DTCDTb_O.js b/dist/assets/IconLayoutGrid-CTmPrZXE.js similarity index 52% rename from dist/assets/IconLayoutGrid-DTCDTb_O.js rename to dist/assets/IconLayoutGrid-CTmPrZXE.js index c86a8df..dec3281 100644 --- a/dist/assets/IconLayoutGrid-DTCDTb_O.js +++ b/dist/assets/IconLayoutGrid-CTmPrZXE.js @@ -1 +1 @@ -import{E as e,J as t,P as n}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";import{t as r}from"./BasicIcon-BXxbbWA_.js";var i=n({__name:`IconLayoutGrid`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(n){return(i,a)=>(t(),e(r,{icon:`vuesax-linear:element-3`,size:n.size,"stroke-width":n.strokeWidth,color:n.color},null,8,[`size`,`stroke-width`,`color`]))}});export{i as t}; \ No newline at end of file +import{M as e,u as t,v as n}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{t as r}from"./BasicIcon-Bzeb0Iwd.js";var i=n({__name:`IconLayoutGrid`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(n){return(i,a)=>(e(),t(r,{icon:`vuesax-linear:element-3`,size:n.size,"stroke-width":n.strokeWidth,color:n.color},null,8,[`size`,`stroke-width`,`color`]))}});export{i as t}; \ No newline at end of file diff --git a/dist/assets/IconMoreVertical-zeD1VV0e.js b/dist/assets/IconMoreVertical-DxvtLM6t.js similarity index 51% rename from dist/assets/IconMoreVertical-zeD1VV0e.js rename to dist/assets/IconMoreVertical-DxvtLM6t.js index 0efc99b..d418dd6 100644 --- a/dist/assets/IconMoreVertical-zeD1VV0e.js +++ b/dist/assets/IconMoreVertical-DxvtLM6t.js @@ -1 +1 @@ -import{E as e,J as t,P as n}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";import{t as r}from"./BasicIcon-BXxbbWA_.js";var i=n({__name:`IconMoreVertical`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(n){return(i,a)=>(t(),e(r,{icon:`vuesax-linear:more`,size:n.size,"stroke-width":n.strokeWidth,color:n.color},null,8,[`size`,`stroke-width`,`color`]))}});export{i as t}; \ No newline at end of file +import{M as e,u as t,v as n}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{t as r}from"./BasicIcon-Bzeb0Iwd.js";var i=n({__name:`IconMoreVertical`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(n){return(i,a)=>(e(),t(r,{icon:`vuesax-linear:more`,size:n.size,"stroke-width":n.strokeWidth,color:n.color},null,8,[`size`,`stroke-width`,`color`]))}});export{i as t}; \ No newline at end of file diff --git a/dist/assets/IconPhone-ZmPXu1y3.js b/dist/assets/IconPhone-DymoL1t0.js similarity index 51% rename from dist/assets/IconPhone-ZmPXu1y3.js rename to dist/assets/IconPhone-DymoL1t0.js index 8afdc68..70afd45 100644 --- a/dist/assets/IconPhone-ZmPXu1y3.js +++ b/dist/assets/IconPhone-DymoL1t0.js @@ -1 +1 @@ -import{E as e,J as t,P as n}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";import{t as r}from"./BasicIcon-BXxbbWA_.js";var i=n({__name:`IconPhone`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(n){return(i,a)=>(t(),e(r,{icon:`vuesax-linear:call`,size:n.size,"stroke-width":n.strokeWidth,color:n.color},null,8,[`size`,`stroke-width`,`color`]))}});export{i as t}; \ No newline at end of file +import{M as e,u as t,v as n}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{t as r}from"./BasicIcon-Bzeb0Iwd.js";var i=n({__name:`IconPhone`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(n){return(i,a)=>(e(),t(r,{icon:`vuesax-linear:call`,size:n.size,"stroke-width":n.strokeWidth,color:n.color},null,8,[`size`,`stroke-width`,`color`]))}});export{i as t}; \ No newline at end of file diff --git a/dist/assets/IconProgressClock-CpMlnCU2.js b/dist/assets/IconProgressClock-C2Emr6X3.js similarity index 52% rename from dist/assets/IconProgressClock-CpMlnCU2.js rename to dist/assets/IconProgressClock-C2Emr6X3.js index 67d3d9a..e0943f8 100644 --- a/dist/assets/IconProgressClock-CpMlnCU2.js +++ b/dist/assets/IconProgressClock-C2Emr6X3.js @@ -1 +1 @@ -import{E as e,J as t,P as n}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";import{t as r}from"./BasicIcon-BXxbbWA_.js";var i=n({__name:`IconProgressClock`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(n){return(i,a)=>(t(),e(r,{icon:`vuesax-linear:clock`,size:n.size,"stroke-width":n.strokeWidth,color:n.color},null,8,[`size`,`stroke-width`,`color`]))}});export{i as t}; \ No newline at end of file +import{M as e,u as t,v as n}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{t as r}from"./BasicIcon-Bzeb0Iwd.js";var i=n({__name:`IconProgressClock`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(n){return(i,a)=>(e(),t(r,{icon:`vuesax-linear:clock`,size:n.size,"stroke-width":n.strokeWidth,color:n.color},null,8,[`size`,`stroke-width`,`color`]))}});export{i as t}; \ No newline at end of file diff --git a/dist/assets/IconSearch-BUr8iOwb.js b/dist/assets/IconSearch-CUp0Xr9R.js similarity index 52% rename from dist/assets/IconSearch-BUr8iOwb.js rename to dist/assets/IconSearch-CUp0Xr9R.js index 255e5f6..f8a67b1 100644 --- a/dist/assets/IconSearch-BUr8iOwb.js +++ b/dist/assets/IconSearch-CUp0Xr9R.js @@ -1 +1 @@ -import{E as e,J as t,P as n}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";import{t as r}from"./BasicIcon-BXxbbWA_.js";var i=n({__name:`IconSearch`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(n){return(i,a)=>(t(),e(r,{icon:`vuesax-linear:search-normal`,size:n.size,"stroke-width":n.strokeWidth,color:n.color},null,8,[`size`,`stroke-width`,`color`]))}});export{i as t}; \ No newline at end of file +import{M as e,u as t,v as n}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{t as r}from"./BasicIcon-Bzeb0Iwd.js";var i=n({__name:`IconSearch`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(n){return(i,a)=>(e(),t(r,{icon:`vuesax-linear:search-normal`,size:n.size,"stroke-width":n.strokeWidth,color:n.color},null,8,[`size`,`stroke-width`,`color`]))}});export{i as t}; \ No newline at end of file diff --git a/dist/assets/IconShoppingBag-BeSLUxcB.js b/dist/assets/IconShoppingBag-BHoZiOex.js similarity index 52% rename from dist/assets/IconShoppingBag-BeSLUxcB.js rename to dist/assets/IconShoppingBag-BHoZiOex.js index 762fd3d..9e6297f 100644 --- a/dist/assets/IconShoppingBag-BeSLUxcB.js +++ b/dist/assets/IconShoppingBag-BHoZiOex.js @@ -1 +1 @@ -import{E as e,J as t,P as n}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";import{t as r}from"./BasicIcon-BXxbbWA_.js";var i=n({__name:`IconShoppingBag`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(n){return(i,a)=>(t(),e(r,{icon:`vuesax-linear:shopping-bag`,size:n.size,"stroke-width":n.strokeWidth,color:n.color},null,8,[`size`,`stroke-width`,`color`]))}});export{i as t}; \ No newline at end of file +import{M as e,u as t,v as n}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{t as r}from"./BasicIcon-Bzeb0Iwd.js";var i=n({__name:`IconShoppingBag`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(n){return(i,a)=>(e(),t(r,{icon:`vuesax-linear:shopping-bag`,size:n.size,"stroke-width":n.strokeWidth,color:n.color},null,8,[`size`,`stroke-width`,`color`]))}});export{i as t}; \ No newline at end of file diff --git a/dist/assets/LatestCatalogRequestStatusView-CKVcuf7K.js b/dist/assets/LatestCatalogRequestStatusView-CKVcuf7K.js new file mode 100644 index 0000000..8f10bbd --- /dev/null +++ b/dist/assets/LatestCatalogRequestStatusView-CKVcuf7K.js @@ -0,0 +1 @@ +import{M as e,Pt as t,_ as n,c as r,f as i,i as a,k as o,l as s,nt as c,t as l,u,ut as d,v as f}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{i as p,o as m}from"./format-C72AoJ2H.js";import{M as h}from"./index-BrjLizie.js";import{t as g}from"./PageHeader-BSsCNguu.js";import{t as _}from"./PageSkeleton-DYdjm4l9.js";import{t as v}from"./catalogRequests-Bfg-Nm09.js";import{t as y}from"./SimpleStatusTimeline-BYp_nmbJ.js";var b=[{id:`registered`,label:`درخواست کالیته ثبت شد`},{id:`ready_to_ship`,label:`آماده ارسال`},{id:`shipped`,label:`ارسال شد`},{id:`returned`,label:`تحویل گرفته شد`}],x={new:0,approved:0,ready_to_ship:1,delivered:2,returned:3,cancelled:0};function S(e){return e.serverStatus?e.serverStatus:{submitted:`new`,reviewing:`approved`,preparing:`ready_to_ship`,shipped:`delivered`,delivered:`returned`,new:`new`,approved:`approved`,ready_to_ship:`ready_to_ship`,returned:`returned`,cancelled:`cancelled`}[e.status]??`new`}function C(e){return x[S(e)]??0}function w(e){let t=S(e),n=p(e.createdAt),r=e.updatedAt?p(e.updatedAt):null;return{registered:n,ready_to_ship:[`ready_to_ship`,`delivered`,`returned`].includes(t)?r:null,shipped:[`delivered`,`returned`].includes(t)?r:null,returned:t===`returned`?r:null}}var T={class:`page latest-status-page`},E={class:`page__scroll page__scroll--with-nav body`},D={class:`summary-card`},O={class:`summary-card__value`},k={class:`summary-card__meta`},A=l(f({__name:`LatestCatalogRequestStatusView`,setup(l){let f=h(),p=v(),x=c(!0),S=r(()=>p.sorted.length?p.sorted[0]:null),A=r(()=>S.value?C(S.value):0),j=r(()=>S.value?w(S.value):{});o(async()=>{x.value=!0,await p.hydrate(),x.value=!1});function M(){f.push(`/categories`)}return(r,o)=>(e(),i(`div`,T,[n(g,{class:`mobile-only`,title:`آخرین درخواست کالیته`,"show-back":``,centered:``,onBack:o[0]||=e=>d(f).push(`/`)}),o[3]||=s(`header`,{class:`desktop-page__head desktop-only`},[s(`div`,null,[s(`h1`,{class:`desktop-page__title`},`آخرین درخواست کالیته`),s(`p`,{class:`desktop-page__subtitle`},`پیگیری مراحل آخرین درخواست کالیته`)])],-1),s(`div`,E,[x.value?(e(),u(_,{key:0})):S.value?(e(),i(a,{key:1},[s(`article`,D,[o[2]||=s(`p`,{class:`summary-card__label`},`درخواست`,-1),s(`strong`,O,t(S.value.id.slice(-8)),1),s(`p`,k,t(d(m)(S.value.items.length))+` قلم کالیته `,1)]),n(y,{steps:d(b),"current-index":A.value,timestamps:j.value},null,8,[`steps`,`current-index`,`timestamps`]),s(`button`,{type:`button`,class:`detail-link`,onClick:o[1]||=e=>d(f).push(`/catalog-requests`)},` مشاهده همه درخواست‌ها `)],64)):(e(),i(`button`,{key:2,type:`button`,class:`empty-cta`,onClick:M},` شما هیچ کالیته ای درخواست نکرده اید، جهت درخواست کالیته و مشاهده فیزیکی پارچه ها کلیک کنید `))])]))}}),[[`__scopeId`,`data-v-e09a36c6`]]);export{A as default}; \ No newline at end of file diff --git a/dist/assets/LatestCatalogRequestStatusView-CQQrt43S.js b/dist/assets/LatestCatalogRequestStatusView-CQQrt43S.js deleted file mode 100644 index 6a8fffd..0000000 --- a/dist/assets/LatestCatalogRequestStatusView-CQQrt43S.js +++ /dev/null @@ -1 +0,0 @@ -import{E as e,Et as t,G as n,J as r,N as i,O as a,P as o,T as s,Xt as c,b as l,g as u,t as d,vt as f,w as p}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";import{i as m,o as h}from"./format-C72AoJ2H.js";import{t as g}from"./PageHeader-DTO8lja2.js";import{t as _}from"./PageSkeleton-DHtB6RUa.js";import{t as v}from"./catalogRequests-DB19-0hk.js";import{t as y}from"./SimpleStatusTimeline-wcI2qobj.js";var b=[{id:`registered`,label:`درخواست کالیته ثبت شد`},{id:`ready_to_ship`,label:`آماده ارسال`},{id:`shipped`,label:`ارسال شد`},{id:`returned`,label:`تحویل گرفته شد`}],x={new:0,approved:0,ready_to_ship:1,delivered:2,returned:3,cancelled:0};function S(e){return e.serverStatus?e.serverStatus:{submitted:`new`,reviewing:`approved`,preparing:`ready_to_ship`,shipped:`delivered`,delivered:`returned`,new:`new`,approved:`approved`,ready_to_ship:`ready_to_ship`,returned:`returned`,cancelled:`cancelled`}[e.status]??`new`}function C(e){return x[S(e)]??0}function w(e){let t=S(e),n=m(e.createdAt),r=e.updatedAt?m(e.updatedAt):null;return{registered:n,ready_to_ship:[`ready_to_ship`,`delivered`,`returned`].includes(t)?r:null,shipped:[`delivered`,`returned`].includes(t)?r:null,returned:t===`returned`?r:null}}var T={class:`page latest-status-page`},E={class:`page__scroll page__scroll--with-nav body`},D={class:`summary-card`},O={class:`summary-card__value`},k={class:`summary-card__meta`},A=d(o({__name:`LatestCatalogRequestStatusView`,setup(o){let d=u(),m=v(),x=f(!0),S=p(()=>m.sorted.length?m.sorted[0]:null),A=p(()=>S.value?C(S.value):0),j=p(()=>S.value?w(S.value):{});n(async()=>{x.value=!0,await m.hydrate(),x.value=!1});function M(){d.push(`/categories`)}return(n,o)=>(r(),a(`div`,T,[i(g,{class:`mobile-only`,title:`آخرین درخواست کالیته`,"show-back":``,centered:``,onBack:o[0]||=e=>t(d).push(`/`)}),o[3]||=s(`header`,{class:`desktop-page__head desktop-only`},[s(`div`,null,[s(`h1`,{class:`desktop-page__title`},`آخرین درخواست کالیته`),s(`p`,{class:`desktop-page__subtitle`},`پیگیری مراحل آخرین درخواست کالیته`)])],-1),s(`div`,E,[x.value?(r(),e(_,{key:0})):S.value?(r(),a(l,{key:1},[s(`article`,D,[o[2]||=s(`p`,{class:`summary-card__label`},`درخواست`,-1),s(`strong`,O,c(S.value.id.slice(-8)),1),s(`p`,k,c(t(h)(S.value.items.length))+` قلم کالیته `,1)]),i(y,{steps:t(b),"current-index":A.value,timestamps:j.value},null,8,[`steps`,`current-index`,`timestamps`]),s(`button`,{type:`button`,class:`detail-link`,onClick:o[1]||=e=>t(d).push(`/catalog-requests`)},` مشاهده همه درخواست‌ها `)],64)):(r(),a(`button`,{key:2,type:`button`,class:`empty-cta`,onClick:M},` شما هیچ کالیته ای درخواست نکرده اید، جهت درخواست کالیته و مشاهده فیزیکی پارچه ها کلیک کنید `))])]))}}),[[`__scopeId`,`data-v-e09a36c6`]]);export{A as default}; \ No newline at end of file diff --git a/dist/assets/LatestOrderStatusView-xE-ByuMy.js b/dist/assets/LatestOrderStatusView-Cmvk1IZX.js similarity index 61% rename from dist/assets/LatestOrderStatusView-xE-ByuMy.js rename to dist/assets/LatestOrderStatusView-Cmvk1IZX.js index a9ffea8..851a814 100644 --- a/dist/assets/LatestOrderStatusView-xE-ByuMy.js +++ b/dist/assets/LatestOrderStatusView-Cmvk1IZX.js @@ -1 +1 @@ -import{D as e,E as t,Et as n,G as r,J as i,N as a,O as o,P as s,T as c,Xt as l,b as u,g as d,t as f,vt as p,w as m}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";import{i as h,n as g}from"./format-C72AoJ2H.js";import{c as _,d as v}from"./index-BAQfYU-Q.js";import{t as y}from"./PageHeader-DTO8lja2.js";import{t as b}from"./PageSkeleton-DHtB6RUa.js";import{t as x}from"./SimpleStatusTimeline-wcI2qobj.js";var S=[{id:`registered`,label:`سفارش ثبت شد`},{id:`priced`,label:`قیمت گذاری انجام شد`},{id:`proforma_sent`,label:`پیش فاکتور ارسال شد`},{id:`proforma_confirmed`,label:`پیش فاکتور تایید شد`},{id:`invoice_sent`,label:`فاکتور ارسال شد`},{id:`shipped`,label:`بار ارسال شد`},{id:`delivered`,label:`بار توسط شما تحویل گرفته شد`}],C={submitted:0,awaiting_review:1,pricing:1,needs_correction:1,awaiting_settlement:2,awaiting_settlement_fix:2,cash_in_progress:2,cash_invoice_issued:2,awaiting_cash_payment:2,cash_payment_submitted:2,check_in_progress:2,awaiting_cash_confirmation:3,awaiting_check_review:3,check_needs_fix:3,check_rejected:3,checks_approved:3,cash_confirmed:3,final_approved:4,preparing:4,ready_to_ship:4,shipped:5,delivered:6,expired:2,cancelled:0,rejected:1},w={registered:[`submitted`],priced:[`pricing`,`awaiting_review`,`needs_correction`],proforma_sent:[`awaiting_settlement`,`awaiting_settlement_fix`,`cash_in_progress`,`cash_invoice_issued`,`awaiting_cash_payment`,`cash_payment_submitted`,`check_in_progress`],proforma_confirmed:[`awaiting_cash_confirmation`,`awaiting_check_review`,`check_needs_fix`,`check_rejected`,`checks_approved`,`cash_confirmed`],invoice_sent:[`final_approved`,`preparing`,`ready_to_ship`],shipped:[`shipped`],delivered:[`delivered`]};function T(e){return C[e]??0}function E(e){let t={};for(let n of S){if(n.id===`registered`){t[n.id]=h(e.createdAt);continue}let r=w[n.id]??[],i=[...e.statusHistory].reverse().find(e=>r.includes(e.toStatus));t[n.id]=i?h(i.changedAt):null}return t}var D={class:`page latest-status-page`},O={class:`page__scroll page__scroll--with-nav body`},k={class:`summary-card`},A={class:`summary-card__value`},j={key:0,class:`summary-card__meta`},M=f(s({__name:`LatestOrderStatusView`,setup(s){let f=d(),h=v(),C=_(),w=p(!0),M=m(()=>{let e=h.userOrders(C.user?.id??``);return e.length?e[0]:null}),N=m(()=>M.value?T(M.value.status):0),P=m(()=>M.value?E(M.value):{});r(async()=>{w.value=!0,await h.hydrate(),w.value=!1});function F(){f.push(`/categories`)}return(r,s)=>(i(),o(`div`,D,[a(y,{class:`mobile-only`,title:`آخرین وضعیت سفارش`,"show-back":``,centered:``,onBack:s[0]||=e=>n(f).push(`/`)}),s[3]||=c(`header`,{class:`desktop-page__head desktop-only`},[c(`div`,null,[c(`h1`,{class:`desktop-page__title`},`آخرین وضعیت سفارش`),c(`p`,{class:`desktop-page__subtitle`},`پیگیری مراحل آخرین سفارش ثبت‌شده`)])],-1),c(`div`,O,[w.value?(i(),t(b,{key:0})):M.value?(i(),o(u,{key:1},[c(`article`,k,[s[2]||=c(`p`,{class:`summary-card__label`},`سفارش شماره`,-1),c(`strong`,A,l(M.value.orderNumber),1),M.value.finalAmount?(i(),o(`p`,j,l(n(g)(M.value.finalAmount)),1)):e(``,!0)]),a(x,{steps:n(S),"current-index":N.value,timestamps:P.value},null,8,[`steps`,`current-index`,`timestamps`]),c(`button`,{type:`button`,class:`detail-link`,onClick:s[1]||=e=>n(f).push(`/orders/${M.value.id}`)},` مشاهده جزئیات سفارش `)],64)):(i(),o(`button`,{key:2,type:`button`,class:`empty-cta`,onClick:F},` سفارشی ثبت نکرده اید. لطفا جهت مشاهده محصولات کلیک کنید `))])]))}}),[[`__scopeId`,`data-v-030bc575`]]);export{M as default}; \ No newline at end of file +import{M as e,Pt as t,_ as n,c as r,d as i,f as a,i as o,k as s,l as c,nt as l,t as u,u as d,ut as f,v as p}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{i as m,n as h}from"./format-C72AoJ2H.js";import{M as g,c as _,d as v}from"./index-BrjLizie.js";import{t as y}from"./PageHeader-BSsCNguu.js";import{t as b}from"./PageSkeleton-DYdjm4l9.js";import{t as x}from"./SimpleStatusTimeline-BYp_nmbJ.js";var S=[{id:`registered`,label:`سفارش ثبت شد`},{id:`priced`,label:`قیمت گذاری انجام شد`},{id:`proforma_sent`,label:`پیش فاکتور ارسال شد`},{id:`proforma_confirmed`,label:`پیش فاکتور تایید شد`},{id:`invoice_sent`,label:`فاکتور ارسال شد`},{id:`shipped`,label:`بار ارسال شد`},{id:`delivered`,label:`بار توسط شما تحویل گرفته شد`}],C={submitted:0,awaiting_review:1,pricing:1,needs_correction:1,awaiting_settlement:2,awaiting_settlement_fix:2,cash_in_progress:2,cash_invoice_issued:2,awaiting_cash_payment:2,cash_payment_submitted:2,check_in_progress:2,awaiting_cash_confirmation:3,awaiting_check_review:3,check_needs_fix:3,check_rejected:3,checks_approved:3,cash_confirmed:3,final_approved:4,preparing:4,ready_to_ship:4,shipped:5,delivered:6,expired:2,cancelled:0,rejected:1},w={registered:[`submitted`],priced:[`pricing`,`awaiting_review`,`needs_correction`],proforma_sent:[`awaiting_settlement`,`awaiting_settlement_fix`,`cash_in_progress`,`cash_invoice_issued`,`awaiting_cash_payment`,`cash_payment_submitted`,`check_in_progress`],proforma_confirmed:[`awaiting_cash_confirmation`,`awaiting_check_review`,`check_needs_fix`,`check_rejected`,`checks_approved`,`cash_confirmed`],invoice_sent:[`final_approved`,`preparing`,`ready_to_ship`],shipped:[`shipped`],delivered:[`delivered`]};function T(e){return C[e]??0}function E(e){let t={};for(let n of S){if(n.id===`registered`){t[n.id]=m(e.createdAt);continue}let r=w[n.id]??[],i=[...e.statusHistory].reverse().find(e=>r.includes(e.toStatus));t[n.id]=i?m(i.changedAt):null}return t}var D={class:`page latest-status-page`},O={class:`page__scroll page__scroll--with-nav body`},k={class:`summary-card`},A={class:`summary-card__value`},j={key:0,class:`summary-card__meta`},M=u(p({__name:`LatestOrderStatusView`,setup(u){let p=g(),m=v(),C=_(),w=l(!0),M=r(()=>{let e=m.userOrders(C.user?.id??``);return e.length?e[0]:null}),N=r(()=>M.value?T(M.value.status):0),P=r(()=>M.value?E(M.value):{});s(async()=>{w.value=!0,await m.hydrate(),w.value=!1});function F(){p.push(`/categories`)}return(r,s)=>(e(),a(`div`,D,[n(y,{class:`mobile-only`,title:`آخرین وضعیت سفارش`,"show-back":``,centered:``,onBack:s[0]||=e=>f(p).push(`/`)}),s[3]||=c(`header`,{class:`desktop-page__head desktop-only`},[c(`div`,null,[c(`h1`,{class:`desktop-page__title`},`آخرین وضعیت سفارش`),c(`p`,{class:`desktop-page__subtitle`},`پیگیری مراحل آخرین سفارش ثبت‌شده`)])],-1),c(`div`,O,[w.value?(e(),d(b,{key:0})):M.value?(e(),a(o,{key:1},[c(`article`,k,[s[2]||=c(`p`,{class:`summary-card__label`},`سفارش شماره`,-1),c(`strong`,A,t(M.value.orderNumber),1),M.value.finalAmount?(e(),a(`p`,j,t(f(h)(M.value.finalAmount)),1)):i(``,!0)]),n(x,{steps:f(S),"current-index":N.value,timestamps:P.value},null,8,[`steps`,`current-index`,`timestamps`]),c(`button`,{type:`button`,class:`detail-link`,onClick:s[1]||=e=>f(p).push(`/orders/${M.value.id}`)},` مشاهده جزئیات سفارش `)],64)):(e(),a(`button`,{key:2,type:`button`,class:`empty-cta`,onClick:F},` سفارشی ثبت نکرده اید. لطفا جهت مشاهده محصولات کلیک کنید `))])]))}}),[[`__scopeId`,`data-v-030bc575`]]);export{M as default}; \ No newline at end of file diff --git a/dist/assets/LoginView-BHpJH2ha.js b/dist/assets/LoginView-BHpJH2ha.js new file mode 100644 index 0000000..b7988da --- /dev/null +++ b/dist/assets/LoginView-BHpJH2ha.js @@ -0,0 +1 @@ +import{At as e,G as t,L as n,M as r,Pt as i,_ as a,c as o,d as s,f as c,g as l,h as u,k as d,l as f,nt as p,t as m,ut as h,v as g}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{u as _}from"./BasicIcon-Bzeb0Iwd.js";import{d as v,l as y}from"./format-C72AoJ2H.js";import{a as b}from"./validation-Duyyve7l.js";import{M as ee,_ as te,b as x,c as S,o as C,v as w,y as T}from"./index-BrjLizie.js";import{t as E}from"./FormErrorBanner-Ud1D04xf.js";import{t as D}from"./IconPhone-DymoL1t0.js";import{n as O,r as k,t as A}from"./formErrors-DglFjYkZ.js";import{t as j}from"./login-fabric-CzrIXTnD.js";var M={class:`page login-page`},N=[`src`],P={class:`login-page__scroll`},F={class:`login-page__stage`},I={class:`login-brand`},ne=[`value`,`aria-invalid`],L={key:0,class:`phone-field__error`},R=[`disabled`],z={key:0,class:`login-submit__spinner`,"aria-hidden":`true`},B={class:`login-submit__chevron`,"aria-hidden":`true`},V={class:`login-register`},H={class:`login-help`},U=[`href`,`aria-disabled`],W={class:`login-help__icon`},G=[`href`,`aria-disabled`],K={class:`login-help__icon`},q=m(g({__name:`LoginView`,setup(m){let g=ee(),q=S(),J=p(null),Y=o(()=>x(J.value)),X=p(``),Z=p({}),Q=p(``),re=o(()=>X.value?v(X.value):``);function $(e){return e?b(e)?``:`شماره موبایل معتبر نیست. (مثال: ۰۹۱۲۱۲۳۴۵۶۷)`:`شماره موبایل را وارد کنید.`}function ie(){Z.value=O(Z.value,`phone`),k(Z.value)||(Q.value=``)}function ae(e){X.value=y(e),ie()}function oe(){if(!X.value)return;let e=$(X.value);e&&(Z.value={...Z.value,phone:e})}async function se(){Z.value={},Q.value=``;let e=y(X.value);X.value=e;let t=$(e);if(t){Z.value={phone:t},Q.value=A;return}let n=await q.requestOtp(e,{isRegister:!1});n.success?g.push({name:`otp`,query:{phone:e,mode:`login`}}):Q.value=n.message??`خطا در ارسال کد تأیید.`}return d(async()=>{try{let e=await T();J.value=e.supportPhone}catch{J.value=null}}),(o,d)=>{let p=n(`RouterLink`);return r(),c(`div`,M,[f(`img`,{class:`login-page__bg`,src:h(j),alt:``},null,8,N),f(`div`,P,[f(`div`,F,[d[14]||=f(`header`,{class:`login-top`},[f(`p`,{class:`login-top__welcome`},`به دنیای پارچه خوش آمدید`)],-1),f(`div`,I,[a(te,{size:78}),d[1]||=f(`h1`,{class:`login-brand__fa`},`نادمی تکس`,-1),d[2]||=f(`p`,{class:`login-brand__en`},`NADEMITEX`,-1),d[3]||=f(`p`,{class:`login-brand__tag`},`انتخاب حرفه‌ای‌ها`,-1)]),f(`form`,{class:`login-card`,onSubmit:_(se,[`prevent`])},[d[10]||=f(`h2`,{class:`login-card__title`},`ورود به حساب کاربری`,-1),d[11]||=f(`p`,{class:`login-card__lead`},`برای ادامه، شماره موبایل خود را وارد کنید.`,-1),a(E,{message:Q.value},null,8,[`message`]),f(`div`,{class:e([`phone-field`,{"is-invalid":!!Z.value.phone}]),dir:`ltr`},[d[4]||=u(``,1),f(`input`,{class:`phone-field__input`,value:re.value,type:`tel`,inputmode:`numeric`,autocomplete:`tel`,dir:`rtl`,maxlength:`11`,placeholder:`شماره موبایل`,"aria-invalid":!!Z.value.phone,"aria-label":`شماره موبایل`,onInput:d[0]||=e=>ae(e.target.value),onBlur:oe},null,40,ne)],2),Z.value.phone?(r(),c(`p`,L,i(Z.value.phone),1)):s(``,!0),f(`button`,{class:`login-submit`,type:`submit`,disabled:h(q).loading},[h(q).loading?(r(),c(`span`,z)):s(``,!0),f(`span`,B,[a(C,{size:18,color:`#F4EDE4`})]),d[5]||=f(`span`,null,`دریافت کد تأیید`,-1)],8,R),f(`p`,V,[d[7]||=l(` حساب کاربری ندارید؟ `,-1),a(p,{to:`/register`},{default:t(()=>[...d[6]||=[l(`ثبت‌نام کنید`,-1)]]),_:1})]),d[12]||=f(`div`,{class:`login-or`,role:`separator`},[f(`span`,null,`یا`)],-1),f(`div`,H,[f(`a`,{class:e([`login-help__item`,{"is-disabled":!Y.value}]),href:Y.value,"aria-disabled":!Y.value},[f(`span`,W,[a(w,{size:22,color:`#3A3936`})]),d[8]||=l(` پشتیبانی `,-1)],10,U),f(`a`,{class:e([`login-help__item`,{"is-disabled":!Y.value}]),href:Y.value,"aria-disabled":!Y.value},[f(`span`,K,[a(D,{size:22,color:`#3A3936`})]),d[9]||=l(` تماس با ما `,-1)],10,G)]),d[13]||=f(`p`,{class:`login-card__foot`},`پارچه، آغاز یک اعتماد ماندگار…`,-1)],32),d[15]||=f(`div`,{class:`login-spacer`,"aria-hidden":`true`},null,-1),d[16]||=f(`p`,{class:`login-watermark`},[l(`MORE`),f(`br`),l(`THAN`),f(`br`),l(`FABRIC`)],-1)])])])}}}),[[`__scopeId`,`data-v-ad43cb33`]]);export{q as default}; \ No newline at end of file diff --git a/dist/assets/LoginView-DkQyawlh.js b/dist/assets/LoginView-DkQyawlh.js deleted file mode 100644 index af63726..0000000 --- a/dist/assets/LoginView-DkQyawlh.js +++ /dev/null @@ -1 +0,0 @@ -import{$ as e,D as t,Et as n,G as r,J as i,Kt as a,M as o,N as s,O as c,P as l,T as u,Xt as d,g as f,j as p,st as m,t as h,vt as g,w as _}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";import{u as v}from"./BasicIcon-BXxbbWA_.js";import{d as y,l as b}from"./format-C72AoJ2H.js";import{a as ee}from"./validation-Duyyve7l.js";import{_ as te,b as x,c as S,o as C,v as w,y as T}from"./index-BAQfYU-Q.js";import{t as E}from"./FormErrorBanner-DI5hhxpk.js";import{t as D}from"./IconPhone-ZmPXu1y3.js";import{n as O,r as k,t as A}from"./formErrors-DglFjYkZ.js";import{t as j}from"./login-fabric-CzrIXTnD.js";var M={class:`page login-page`},N=[`src`],P={class:`login-page__scroll`},F={class:`login-page__stage`},I={class:`login-brand`},ne=[`value`,`aria-invalid`],L={key:0,class:`phone-field__error`},R=[`disabled`],z={key:0,class:`login-submit__spinner`,"aria-hidden":`true`},B={class:`login-submit__chevron`,"aria-hidden":`true`},V={class:`login-register`},H={class:`login-help`},U=[`href`,`aria-disabled`],W={class:`login-help__icon`},G=[`href`,`aria-disabled`],K={class:`login-help__icon`},q=h(l({__name:`LoginView`,setup(l){let h=f(),q=S(),J=g(null),Y=_(()=>x(J.value)),X=g(``),Z=g({}),Q=g(``),re=_(()=>X.value?y(X.value):``);function $(e){return e?ee(e)?``:`شماره موبایل معتبر نیست. (مثال: ۰۹۱۲۱۲۳۴۵۶۷)`:`شماره موبایل را وارد کنید.`}function ie(){Z.value=O(Z.value,`phone`),k(Z.value)||(Q.value=``)}function ae(e){X.value=b(e),ie()}function oe(){if(!X.value)return;let e=$(X.value);e&&(Z.value={...Z.value,phone:e})}async function se(){Z.value={},Q.value=``;let e=b(X.value);X.value=e;let t=$(e);if(t){Z.value={phone:t},Q.value=A;return}let n=await q.requestOtp(e,{isRegister:!1});n.success?h.push({name:`otp`,query:{phone:e,mode:`login`}}):Q.value=n.message??`خطا در ارسال کد تأیید.`}return r(async()=>{try{let e=await T();J.value=e.supportPhone}catch{J.value=null}}),(r,l)=>{let f=e(`RouterLink`);return i(),c(`div`,M,[u(`img`,{class:`login-page__bg`,src:n(j),alt:``},null,8,N),u(`div`,P,[u(`div`,F,[l[14]||=u(`header`,{class:`login-top`},[u(`p`,{class:`login-top__welcome`},`به دنیای پارچه خوش آمدید`)],-1),u(`div`,I,[s(te,{size:78}),l[1]||=u(`h1`,{class:`login-brand__fa`},`نادمی تکس`,-1),l[2]||=u(`p`,{class:`login-brand__en`},`NADEMITEX`,-1),l[3]||=u(`p`,{class:`login-brand__tag`},`انتخاب حرفه‌ای‌ها`,-1)]),u(`form`,{class:`login-card`,onSubmit:v(se,[`prevent`])},[l[10]||=u(`h2`,{class:`login-card__title`},`ورود به حساب کاربری`,-1),l[11]||=u(`p`,{class:`login-card__lead`},`برای ادامه، شماره موبایل خود را وارد کنید.`,-1),s(E,{message:Q.value},null,8,[`message`]),u(`div`,{class:a([`phone-field`,{"is-invalid":!!Z.value.phone}]),dir:`ltr`},[l[4]||=p(``,1),u(`input`,{class:`phone-field__input`,value:re.value,type:`tel`,inputmode:`numeric`,autocomplete:`tel`,dir:`rtl`,maxlength:`11`,placeholder:`شماره موبایل`,"aria-invalid":!!Z.value.phone,"aria-label":`شماره موبایل`,onInput:l[0]||=e=>ae(e.target.value),onBlur:oe},null,40,ne)],2),Z.value.phone?(i(),c(`p`,L,d(Z.value.phone),1)):t(``,!0),u(`button`,{class:`login-submit`,type:`submit`,disabled:n(q).loading},[n(q).loading?(i(),c(`span`,z)):t(``,!0),u(`span`,B,[s(C,{size:18,color:`#F4EDE4`})]),l[5]||=u(`span`,null,`دریافت کد تأیید`,-1)],8,R),u(`p`,V,[l[7]||=o(` حساب کاربری ندارید؟ `,-1),s(f,{to:`/register`},{default:m(()=>[...l[6]||=[o(`ثبت‌نام کنید`,-1)]]),_:1})]),l[12]||=u(`div`,{class:`login-or`,role:`separator`},[u(`span`,null,`یا`)],-1),u(`div`,H,[u(`a`,{class:a([`login-help__item`,{"is-disabled":!Y.value}]),href:Y.value,"aria-disabled":!Y.value},[u(`span`,W,[s(w,{size:22,color:`#3A3936`})]),l[8]||=o(` پشتیبانی `,-1)],10,U),u(`a`,{class:a([`login-help__item`,{"is-disabled":!Y.value}]),href:Y.value,"aria-disabled":!Y.value},[u(`span`,K,[s(D,{size:22,color:`#3A3936`})]),l[9]||=o(` تماس با ما `,-1)],10,G)]),l[13]||=u(`p`,{class:`login-card__foot`},`پارچه، آغاز یک اعتماد ماندگار…`,-1)],32),l[15]||=u(`div`,{class:`login-spacer`,"aria-hidden":`true`},null,-1),l[16]||=u(`p`,{class:`login-watermark`},[o(`MORE`),u(`br`),o(`THAN`),u(`br`),o(`FABRIC`)],-1)])])])}}}),[[`__scopeId`,`data-v-ad43cb33`]]);export{q as default}; \ No newline at end of file diff --git a/dist/assets/NotFoundView-DcuA7MTj.js b/dist/assets/NotFoundView-DcuA7MTj.js new file mode 100644 index 0000000..bf23ab8 --- /dev/null +++ b/dist/assets/NotFoundView-DcuA7MTj.js @@ -0,0 +1 @@ +import{G as e,L as t,M as n,_ as r,f as i,g as a,l as o,t as s}from"./_plugin-vue_export-helper-1xMDlcEE.js";var c={},l={class:`not-found`};function u(s,c){let u=t(`RouterLink`);return n(),i(`main`,l,[c[1]||=o(`p`,{class:`not-found__code`},`404`,-1),c[2]||=o(`h1`,null,`صفحه پیدا نشد`,-1),c[3]||=o(`p`,null,`آدرسی که وارد کرده‌اید وجود ندارد.`,-1),r(u,{to:`/`},{default:e(()=>[...c[0]||=[a(`بازگشت به صفحه اصلی`,-1)]]),_:1})])}var d=s(c,[[`render`,u],[`__scopeId`,`data-v-d3389be7`]]);export{d as default}; \ No newline at end of file diff --git a/dist/assets/NotFoundView-N95LQNdN.css b/dist/assets/NotFoundView-N95LQNdN.css new file mode 100644 index 0000000..51e4b98 --- /dev/null +++ b/dist/assets/NotFoundView-N95LQNdN.css @@ -0,0 +1 @@ +.not-found[data-v-d3389be7]{text-align:center;place-content:center;gap:12px;min-height:60vh;display:grid}.not-found__code[data-v-d3389be7]{color:var(--color-primary,#c89b3c);margin:0;font-size:72px;font-weight:800}h1[data-v-d3389be7],p[data-v-d3389be7]{margin:0}a[data-v-d3389be7]{color:var(--color-primary,#c89b3c);font-weight:700} diff --git a/dist/assets/OrderDetailView-BQgUhha9.js b/dist/assets/OrderDetailView-BQgUhha9.js new file mode 100644 index 0000000..6b586d9 --- /dev/null +++ b/dist/assets/OrderDetailView-BQgUhha9.js @@ -0,0 +1 @@ +import{At as e,F as t,G as n,K as r,M as i,Pt as a,U as o,_ as s,c,d as l,f as u,g as d,i as f,l as p,nt as m,o as ee,t as h,u as g,ut as _,v}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{c as te,o as ne,t as y,u as re}from"./BasicIcon-Bzeb0Iwd.js";import{n as ie}from"./dist-Bc4P4ngC.js";import{a as b,d as x,i as S,n as C,o as w,r as T,u as ae}from"./format-C72AoJ2H.js";import{n as oe,t as se}from"./validation-Duyyve7l.js";import{M as ce,d as le,j as ue,n as E,o as D,p as de}from"./index-BrjLizie.js";import{n as O}from"./constants-DXXK14Zz.js";import{t as k}from"./IconChevronBack-CDeN0Cbu.js";import{t as fe}from"./FormErrorBanner-Ud1D04xf.js";import{n as A,r as j,t as pe}from"./formErrors-DglFjYkZ.js";import{n as me,t as M}from"./orderInvoice-B0L1Aeuk.js";import{t as he}from"./BaseInput-CpE3bVJZ.js";import{t as ge}from"./CurrencyInput-Cu2dRPFo.js";import{t as _e}from"./PersianDateInput-DrDb_iFF.js";var N={submitted:0,awaiting_review:1,pricing:2,needs_correction:1,awaiting_settlement:3,awaiting_settlement_fix:3,cash_in_progress:4,cash_invoice_issued:4,awaiting_cash_payment:4,cash_payment_submitted:4,check_in_progress:4,awaiting_cash_confirmation:5,awaiting_check_review:5,check_needs_fix:5,check_rejected:5,checks_approved:6,cash_confirmed:6,final_approved:7,preparing:8,ready_to_ship:9,shipped:10,delivered:11,expired:3,cancelled:0,rejected:1},P={submitted:{variant:`waiting`,title:`پیش‌سفارش ثبت شد`,description:`سفارش شما برای بررسی و قیمت‌گذاری به مدیریت ارسال شد. پس از صدور فاکتور می‌توانید روش تسویه (نقد یا چک) را انتخاب کنید.`},awaiting_review:{variant:`waiting`,title:`در انتظار بررسی مدیریت`,description:`پیش‌سفارش شما در صف بررسی است. پس از قیمت‌گذاری و صدور فاکتور، از طریق همین صفحه برای انتخاب تسویه مطلع می‌شوید.`},pricing:{variant:`waiting`,title:`در حال قیمت‌گذاری`,description:`مدیریت در حال تعیین مبلغ نهایی فاکتور است. تا قبل از صدور فاکتور امکان ثبت چک یا پرداخت وجود ندارد.`},awaiting_settlement:{variant:`info`,title:`فاکتور آماده است`,description:`مبلغ فاکتور مشخص شده. لطفاً روش تسویه را انتخاب کنید و مسیر پرداخت را ادامه دهید.`},awaiting_settlement_fix:{variant:`info`,title:`نیاز به اصلاح تسویه`,description:`لطفاً روش تسویه یا اطلاعات پرداخت را اصلاح کنید.`},cash_invoice_issued:{variant:`info`,title:`فاکتور نقدی صادر شد`,description:`مبلغ را به حساب‌های اعلام‌شده واریز و رسید پرداخت را ثبت کنید.`},awaiting_cash_payment:{variant:`info`,title:`در انتظار پرداخت نقدی`,description:`لطفاً مبلغ فاکتور را واریز و رسید پرداخت را ثبت کنید.`},cash_payment_submitted:{variant:`waiting`,title:`رسید ثبت شد`,description:`رسید پرداخت شما دریافت شد و در صف بررسی مدیریت است.`},awaiting_cash_confirmation:{variant:`waiting`,title:`در انتظار تأیید پرداخت`,description:`رسید پرداخت در حال بررسی است. نتیجه به‌زودی اعلام می‌شود.`},awaiting_check_review:{variant:`waiting`,title:`در حال بررسی چک‌ها`,description:`چک‌های ثبت‌شده در حال بررسی هستند. نتیجه بررسی به‌زودی اعلام می‌شود.`},checks_approved:{variant:`success`,title:`چک‌ها تأیید شده`,description:`چک‌های شما تأیید شد. سفارش در انتظار تأیید نهایی مدیریت است و پس از آن وارد آماده‌سازی می‌شود.`},cash_confirmed:{variant:`success`,title:`پرداخت تأیید شد`,description:`رسید پرداخت شما تأیید شد و سفارش وارد مراحل بعدی می‌شود.`},final_approved:{variant:`success`,title:`تأیید نهایی`,description:`سفارش شما تأیید نهایی شد و آماده آماده‌سازی است.`},preparing:{variant:`info`,title:`در حال آماده‌سازی`,description:`سفارش شما در انبار در حال آماده‌سازی است.`},ready_to_ship:{variant:`info`,title:`آماده ارسال`,description:`سفارش آماده ارسال است و به‌زودی تحویل باربری می‌شود.`},shipped:{variant:`info`,title:`ارسال شده`,description:`سفارش ارسال شده است. جزئیات بارنامه را می‌توانید مشاهده کنید.`},delivered:{variant:`success`,title:`تحویل شده`,description:`سفارش با موفقیت تحویل داده شد.`},expired:{variant:`waiting`,title:`فاکتور منقضی شده`,description:`مهلت پرداخت این فاکتور به پایان رسیده است. برای ادامه با پشتیبانی یا مدیریت هماهنگ کنید.`}};function F(e){return e===`cash`?{payment:`ثبت رسید پرداخت`,review:`بررسی پرداخت نقدی`,approved:`پرداخت تأیید شده`}:e===`check`?{payment:`ثبت چک`,review:`در حال بررسی چک‌ها`,approved:`چک‌ها تأیید شده`}:{payment:`ثبت پرداخت / چک`,review:`بررسی پرداخت / چک`,approved:`تأیید پرداخت`}}function I(e){let t=F(e.settlementType);return O.map(e=>e.status===`check_in_progress`?{...e,label:t.payment}:e.status===`awaiting_check_review`?{...e,label:t.review}:e.status===`checks_approved`?{...e,label:t.approved}:e)}function L(e){return N[e]??0}function ve(e){return P[e]??null}var R={awaiting_settlement:[`awaiting_settlement`,`awaiting_settlement_fix`],check_in_progress:[`check_in_progress`,`cash_in_progress`,`cash_invoice_issued`,`awaiting_cash_payment`,`cash_payment_submitted`],awaiting_check_review:[`awaiting_check_review`,`awaiting_cash_confirmation`,`check_needs_fix`,`check_rejected`],checks_approved:[`checks_approved`,`cash_confirmed`],pricing:[`pricing`]};function z(e,t){if(t===`submitted`)return e.createdAt;let n=R[t]??[t];return[...e.statusHistory].reverse().find(e=>n.includes(e.toStatus))?.changedAt??null}function ye(e){return e===`shipped`?`مشاهده جزئیات و بارنامه`:[`checks_approved`,`cash_confirmed`,`delivered`,`final_approved`].includes(e)?`مشاهده جزئیات`:`مشاهده جزئیات سفارش`}var B={class:`tracking-timeline`},V={class:`tracking-timeline__marker-wrap`},H={class:`tracking-timeline__marker`},U={key:0,class:`tracking-timeline__check`},W={class:`tracking-timeline__label`},G={key:0,class:`tracking-timeline__time`},be=h(v({__name:`OrderTrackingTimeline`,props:{order:{}},setup(n){let r=n,o=c(()=>I(r.order)),s=c(()=>L(r.order.status));function d(e){return e(i(),u(`div`,B,[(i(!0),u(f,null,t(o.value,(t,n)=>(i(),u(`div`,{key:t.status,class:e([`tracking-timeline__item`,`tracking-timeline__item--${d(n)}`])},[p(`div`,V,[r[0]||=p(`div`,{class:`tracking-timeline__line`,"aria-hidden":`true`},null,-1),p(`div`,H,[d(n)===`done`?(i(),u(`span`,U,`✓`)):l(``,!0)])]),p(`div`,{class:e([`tracking-timeline__content`,{"tracking-timeline__content--current":d(n)===`current`}])},[p(`strong`,W,a(t.label),1),m(t.status)?(i(),u(`span`,G,a(m(t.status)),1)):l(``,!0)],2)],2))),128))]))}}),[[`__scopeId`,`data-v-603b6d66`]]),K={class:`status-hero__icon`,"aria-hidden":`true`},q={class:`status-hero__copy`},J={class:`status-hero__title`},xe={key:0,class:`status-hero__desc`},Se=h(v({__name:`OrderStatusHero`,props:{config:{}},setup(t){let n={waiting:`vuesax-linear:timer-1`,success:`vuesax-linear:tick-circle`,info:`vuesax-linear:info-circle`,none:`vuesax-linear:info-circle`};return(r,o)=>t.config.variant===`none`?l(``,!0):(i(),u(`div`,{key:0,class:e([`status-hero`,`status-hero--${t.config.variant}`])},[p(`div`,K,[s(y,{icon:n[t.config.variant],size:28,"stroke-width":1.5},null,8,[`icon`])]),p(`div`,q,[p(`h2`,J,a(t.config.title),1),t.config.description?(i(),u(`p`,xe,a(t.config.description),1)):l(``,!0)])],2))}}),[[`__scopeId`,`data-v-896684d9`]]),Ce={class:`tracking-summary`},Y={class:`tracking-summary__row`},X={class:`tracking-summary__row`},Z={class:`tracking-summary__row`},Q={class:`tracking-summary__row`},we={key:0,class:`tracking-summary__row`},Te={key:1,class:`tracking-summary__row`},Ee=h(v({__name:`OrderTrackingSummary`,props:{order:{}},setup(e){let t=e,n=c(()=>t.order.checks?.reduce((e,t)=>e+t.amount,0)??0);function r(e){return e?e===`cash`?`تسویه نقدی`:`تسویه چکی`:`در انتظار انتخاب مشتری`}return(t,o)=>(i(),u(`div`,Ce,[p(`div`,Y,[o[0]||=p(`span`,null,`مبلغ فاکتور`,-1),p(`strong`,null,a(e.order.finalAmount?_(w)(e.order.finalAmount):`در انتظار قیمت‌گذاری`),1)]),p(`div`,X,[o[1]||=p(`span`,null,`نوع تسویه`,-1),p(`strong`,null,a(r(e.order.settlementType)),1)]),e.order.settlementType===`check`&&e.order.checks?.length?(i(),u(f,{key:0},[p(`div`,Z,[o[2]||=p(`span`,null,`تعداد چک‌ها`,-1),p(`strong`,null,a(_(x)(String(e.order.checks.length)))+` فقره`,1)]),p(`div`,Q,[o[3]||=p(`span`,null,`مجموع مبلغ چک‌ها`,-1),p(`strong`,null,a(_(C)(n.value)),1)]),e.order.checkRassDays==null?l(``,!0):(i(),u(`div`,we,[o[4]||=p(`span`,null,`رأس چک (تقریبی)`,-1),p(`strong`,null,a(_(x)(String(e.order.checkRassDays)))+` روز`,1)]))],64)):l(``,!0),e.order.settlementType===`cash`&&e.order.cashReceipt?(i(),u(`div`,Te,[o[5]||=p(`span`,null,`مبلغ واریزی`,-1),p(`strong`,null,a(_(C)(e.order.cashReceipt.amount)),1)])):l(``,!0)]))}}),[[`__scopeId`,`data-v-b22cc5d6`]]),De={key:0,class:`order-detail-page`},Oe={class:`order-detail-page__nav mobile-only`},ke={class:`order-detail-page__nav-center`},Ae={class:`order-detail-page__title`},je={key:0,class:`order-detail-page__order-id`},Me={type:`button`,class:`nav-btn nav-btn--ghost`,"aria-hidden":`true`,tabindex:`-1`},Ne={class:`desktop-page__head desktop-only order-detail-page__desktop-head`},Pe={class:`desktop-page__subtitle`},Fe={class:`order-detail-page__body`},Ie={key:0,class:`order-info-card mobile-only`},Le={class:`order-info-card__head`},Re={class:`order-info-card__number`},ze={class:`order-info-card__row`},Be={class:`order-info-card__value order-info-card__value--accent`},Ve={class:`order-info-card__row`},He={class:`order-info-card__value order-info-card__value--accent`},Ue={class:`order-info-card__row`},We={class:`order-info-card__value order-info-card__value--accent`},Ge={class:`order-info-card__row order-info-card__row--last`},Ke={class:`order-info-card__amount`},qe={key:1,class:`order-next-action`},Je={key:2,class:`order-detail-page__tracking`},Ye={class:`order-detail-page__tracking-hero`},Xe={class:`tracking-card tracking-card--hero`},Ze={class:`order-detail-page__tracking-main`},Qe={key:0,class:`order-next-action`},$e={class:`tracking-card tracking-collapse`},et=[`aria-expanded`],tt={class:`tracking-collapse__body`},nt={class:`tracking-collapse__section tracking-collapse__section--flush`},rt={class:`tracking-card tracking-collapse`},it=[`aria-expanded`],at={class:`tracking-collapse__body`},ot={class:`tracking-collapse__section`},st={class:`item-row__meta`},ct={class:`item-row item-row--summary`},lt={key:0,class:`tracking-alert`},ut={class:`tracking-collapse__section`},dt={dir:`ltr`,class:`bank-row__meta`},ft={dir:`ltr`,class:`bank-row__meta`},pt={key:2,class:`tracking-collapse__section`},mt={class:`detail-row`},ht={class:`detail-row`},gt={class:`tracking-collapse__section`},_t={class:`rass-display`},vt={key:0,class:`rass-date`},yt={class:`detail-row`},bt={class:`detail-row`},xt=[`src`],St={key:0,class:`order-detail-page__footer mobile-only`},Ct={class:`receipt-modal card`,role:`dialog`,"aria-modal":`true`,"aria-labelledby":`receipt-modal-title`},wt={class:`receipt-modal__header`},Tt={class:`receipt-modal__body`},Et={class:`form-group`},Dt=[`value`],Ot={key:0,class:`input-error-text`},kt={class:`form-group`},At=[`src`],jt={key:1,class:`upload-box__placeholder`},Mt={key:0,class:`input-error-text`},Nt={key:1,class:`page empty-state`},$=h(v({__name:`OrderDetailView`,setup(h){let v=ue(),y=ce(),x=le(),O=ie(`(min-width: 768px)`),N=c(()=>v.params.id),P=c(()=>x.getOrderById(N.value)),F=m(v.query.track===`1`||v.query.receipt===`1`),I=m(!1),L=m(!0),R=m(v.query.receipt===`1`),z=m(``),B=m(``),V=m(``),H=m(``),U=m(``),W=m(``),G=m({}),K=m(``);o([P,()=>v.query.receipt],([e])=>{let t=v.query.receipt===`1`;if(t&&M(e)){I.value=!0,R.value=!0;return}if(t&&e&&!M(e)){I.value=!1;let{receipt:e,...t}=v.query;y.replace({query:{...t,track:`1`}})}},{immediate:!0}),o(O,e=>{e&&(F.value=!0,L.value=!0,R.value=!0,v.query.track!==`1`&&v.query.receipt!==`1`&&y.replace({query:{...v.query,track:`1`}}))},{immediate:!0}),o(z,()=>{G.value=A(G.value,`receiptAmount`),j(G.value)||(K.value=``)}),o(B,()=>{G.value=A(G.value,`receiptDate`),j(G.value)||(K.value=``)}),o(H,()=>{G.value=A(G.value,`trackingNumber`),j(G.value)||(K.value=``)}),o(U,()=>{G.value=A(G.value,`destinationAccountId`),j(G.value)||(K.value=``)});let q=m([]);o(()=>P.value?.id,async e=>{if(!e||!P.value){q.value=[];return}try{q.value=await x.getBankAccountsForOrder(P.value)}catch{q.value=[]}},{immediate:!0}),o(()=>N.value,async e=>{if(e&&!x.getOrderById(e))try{await x.fetchOrder(e)}catch{}},{immediate:!0});let J=c(()=>P.value?ve(P.value.status):null),xe=c(()=>P.value?ye(P.value.status):`مشاهده جزئیات سفارش`);function Ce(e){return e?e===`cash`?`تسویه نقدی`:`تسویه چکی`:`در انتظار انتخاب مشتری`}let Y=c(()=>{let e=P.value;if(!e)return null;let t=me(e);switch(e.status){case`awaiting_settlement`:case`awaiting_settlement_fix`:return t?{label:`انتخاب روش تسویه`,to:`/orders/${e.id}/settlement`}:null;case`check_in_progress`:return t?{label:`ثبت چک‌ها`,to:`/orders/${e.id}/check-mode`}:null;case`check_needs_fix`:case`check_rejected`:return t?{label:`اصلاح چک‌ها`,to:`/orders/${e.id}/check-list`}:null;case`awaiting_cash_payment`:case`cash_invoice_issued`:return t?{label:`ثبت رسید پرداخت`,receipt:!0}:null;default:return null}});function X(){if(!M(P.value)){K.value=`در وضعیت فعلی سفارش امکان ثبت رسید وجود ندارد`;return}F.value=!0,R.value=!0,I.value=!0}function Z(){let e=Y.value;if(e){if(e.receipt){X();return}e.to&&y.push(e.to)}}function Q(){F.value=!0,R.value=!1,y.replace({query:{track:`1`}})}function we(){R.value=!R.value}function Te(){L.value=!L.value}async function $(e){let t=e.target.files?.[0];if(!t)return;let n=oe(t);if(!n.valid){G.value={...G.value,receiptImage:n.message??`خطا`};return}G.value=A(G.value,`receiptImage`),W.value=await se(t)}async function Pt(){if(!P.value)return;if(G.value={},K.value=``,!M(P.value)){K.value=`در وضعیت فعلی سفارش امکان ثبت رسید وجود ندارد`;return}let e=ae(z.value),t={};if(e||(t.receiptAmount=`مبلغ واریزی الزامی است.`),B.value||(t.receiptDate=`تاریخ واریز الزامی است.`),H.value.trim()||(t.trackingNumber=`شماره پیگیری الزامی است.`),U.value||(t.destinationAccountId=`حساب مقصد را انتخاب کنید.`),j(t)){G.value=t,K.value=pe;return}try{await x.submitCashReceipt(P.value.id,{amount:e,transferDate:B.value,transferTime:V.value||`12:00`,trackingNumber:H.value,destinationAccountId:U.value,receiptImage:W.value||void 0}),I.value=!1,G.value={},K.value=``}catch(e){K.value=e instanceof Error?e.message:`ثبت رسید ناموفق بود.`}}return(o,c)=>P.value?(i(),u(`div`,De,[p(`header`,Oe,[p(`button`,{type:`button`,class:`nav-btn`,"aria-label":`بازگشت`,onClick:c[0]||=e=>_(y).push(`/orders`)},[s(k,{size:20})]),p(`div`,ke,[p(`h1`,Ae,a(F.value?`پیگیری سفارش`:`جزئیات سفارش`),1),F.value?(i(),u(`p`,je,a(P.value.orderNumber),1)):l(``,!0)]),p(`button`,Me,[s(k,{size:18,class:`nav-btn__flip`})])]),p(`header`,Ne,[p(`button`,{type:`button`,class:`order-detail-back`,onClick:c[1]||=e=>_(y).push(`/orders`)},[s(k,{size:18}),c[10]||=d(` بازگشت به سفارش‌ها `,-1)]),c[11]||=p(`h1`,{class:`desktop-page__title`},`پیگیری سفارش`,-1),p(`p`,Pe,a(P.value.orderNumber)+` · `+a(P.value.companyName),1)]),p(`div`,Fe,[F.value?l(``,!0):(i(),u(`div`,Ie,[p(`div`,Le,[c[12]||=p(`span`,{class:`order-info-card__label`},`شماره سفارش`,-1),p(`strong`,Re,a(P.value.orderNumber),1)]),p(`div`,ze,[c[13]||=p(`span`,{class:`order-info-card__key`},`تأمین‌کننده`,-1),p(`span`,Be,a(P.value.companyName),1)]),p(`div`,Ve,[c[14]||=p(`span`,{class:`order-info-card__key`},`تاریخ ثبت`,-1),p(`span`,He,a(_(S)(P.value.createdAt)),1)]),p(`div`,Ue,[c[15]||=p(`span`,{class:`order-info-card__key`},`نوع تسویه`,-1),p(`span`,We,a(Ce(P.value.settlementType)),1)]),p(`div`,Ge,[c[16]||=p(`span`,{class:`order-info-card__key`},`مبلغ فاکتور`,-1),p(`strong`,Ke,a(P.value.finalAmount?_(w)(P.value.finalAmount):`پس از قیمت‌گذاری مدیریت`),1)])])),Y.value&&!F.value?(i(),u(`div`,qe,[c[17]||=p(`span`,{class:`order-next-action__text`},`برای ادامه سفارش، این مرحله باقی مانده است.`,-1),s(E,{class:`order-next-action__btn`,onClick:Z},{default:n(()=>[d(a(Y.value.label),1)]),_:1})])):l(``,!0),F.value?(i(),u(`div`,Je,[p(`section`,Ye,[p(`div`,Xe,[J.value?(i(),g(Se,{key:0,config:J.value},null,8,[`config`])):l(``,!0),s(Ee,{order:P.value},null,8,[`order`])])]),p(`section`,Ze,[Y.value?(i(),u(`div`,Qe,[c[18]||=p(`span`,{class:`order-next-action__text`},`برای ادامه سفارش، این مرحله باقی مانده است.`,-1),s(E,{class:`order-next-action__btn`,onClick:Z},{default:n(()=>[d(a(Y.value.label),1)]),_:1})])):l(``,!0),p(`div`,$e,[p(`button`,{type:`button`,class:`tracking-collapse__trigger`,"aria-expanded":L.value,onClick:Te},[c[19]||=p(`span`,null,`پیگیری وضعیت`,-1),s(D,{size:18,class:e([`tracking-collapse__chevron`,{"tracking-collapse__chevron--open":L.value}]),"aria-hidden":`true`},null,8,[`class`])],8,et),r(p(`div`,tt,[p(`div`,nt,[s(be,{order:P.value},null,8,[`order`])])],512),[[te,L.value]])]),p(`div`,rt,[p(`button`,{type:`button`,class:`tracking-collapse__trigger`,"aria-expanded":R.value,onClick:we},[p(`span`,null,a(xe.value),1),s(D,{size:18,class:e([`tracking-collapse__chevron`,{"tracking-collapse__chevron--open":R.value}]),"aria-hidden":`true`},null,8,[`class`])],8,it),r(p(`div`,at,[p(`div`,ot,[c[21]||=p(`h3`,{class:`tracking-card__title`},`اقلام سفارش`,-1),(i(!0),u(f,null,t(P.value.items,e=>(i(),u(`div`,{key:e.id,class:`item-row`},[p(`div`,null,[p(`strong`,null,a(e.productName),1),p(`p`,st,`کالیته `+a(e.catalogCode)+` · `+a(e.color),1)]),p(`span`,null,a(_(b)(e.requestedMeterage)),1)]))),128)),p(`div`,ct,[c[20]||=p(`span`,null,`مجموع متراژ`,-1),p(`strong`,null,a(_(b)(P.value.totalMeterage)),1)])]),P.value.settlementType===`cash`?(i(),u(f,{key:0},[P.value.cashInvoiceExpiresAt?(i(),u(`div`,lt,` اعتبار فاکتور: `+a(_(S)(P.value.cashInvoiceExpiresAt)),1)):l(``,!0),p(`div`,ut,[c[22]||=p(`h3`,{class:`tracking-card__title`},`حساب‌های بانکی`,-1),(i(!0),u(f,null,t(q.value,e=>(i(),u(`div`,{key:e.id,class:`bank-row`},[p(`strong`,null,a(e.bankName),1),p(`p`,dt,a(e.cardNumber),1),p(`p`,ft,a(e.iban),1)]))),128))]),Y.value?.receipt?(i(),g(E,{key:1,block:``,onClick:X},{default:n(()=>[d(a(P.value.cashReceipt?`ثبت رسید جدید`:`ثبت رسید پرداخت`),1)]),_:1})):l(``,!0),P.value.cashReceipt?(i(),u(`div`,pt,[c[25]||=p(`h3`,{class:`tracking-card__title`},`رسید ثبت‌شده`,-1),p(`div`,mt,[c[23]||=p(`span`,null,`مبلغ`,-1),p(`span`,null,a(_(C)(P.value.cashReceipt.amount)),1)]),p(`div`,ht,[c[24]||=p(`span`,null,`شماره پیگیری`,-1),p(`span`,null,a(P.value.cashReceipt.trackingNumber),1)])])):l(``,!0)],64)):l(``,!0),P.value.settlementType===`check`&&P.value.checks?(i(),u(f,{key:1},[p(`div`,gt,[c[26]||=p(`h3`,{class:`tracking-card__title`},`رأس چک‌ها`,-1),p(`div`,_t,a(P.value.checkRassDays)+` روز`,1),P.value.checkRassDate?(i(),u(`p`,vt,` تاریخ رأس: `+a(_(T)(P.value.checkRassDate)),1)):l(``,!0)]),(i(!0),u(f,null,t(P.value.checks,(e,t)=>(i(),u(`div`,{key:e.id,class:`tracking-collapse__section`},[p(`strong`,null,`چک `+a(t+1),1),p(`div`,yt,[c[27]||=p(`span`,null,`مبلغ`,-1),p(`span`,null,a(_(C)(e.amount)),1)]),p(`div`,bt,[c[28]||=p(`span`,null,`سررسید`,-1),p(`span`,null,a(_(T)(e.dueDate))+` (`+a(_(de)(e.dueDate))+` روز)`,1)]),e.frontImage?(i(),u(`img`,{key:0,src:e.frontImage,class:`check-img`,alt:`چک`},null,8,xt)):l(``,!0)]))),128))],64)):l(``,!0)],512),[[te,R.value]])])])])):l(``,!0)]),F.value?l(``,!0):(i(),u(`div`,St,[s(E,{block:``,onClick:Q},{default:n(()=>[...c[29]||=[d(`مشاهده جزئیات و پیگیری`,-1)]]),_:1})])),(i(),g(ee,{to:`body`},[I.value?(i(),u(`div`,{key:0,class:`receipt-modal-overlay`,onClick:c[8]||=re(e=>I.value=!1,[`self`])},[p(`div`,Ct,[p(`header`,wt,[c[30]||=p(`h3`,{id:`receipt-modal-title`,class:`receipt-modal__title`},`ثبت رسید پرداخت`,-1),p(`button`,{type:`button`,class:`receipt-modal__close`,"aria-label":`بستن`,onClick:c[2]||=e=>I.value=!1},` × `)]),p(`div`,Tt,[s(fe,{message:K.value},null,8,[`message`]),s(ge,{modelValue:z.value,"onUpdate:modelValue":c[3]||=e=>z.value=e,label:`مبلغ واریزی`,error:G.value.receiptAmount},null,8,[`modelValue`,`error`]),s(_e,{modelValue:B.value,"onUpdate:modelValue":c[4]||=e=>B.value=e,label:`تاریخ واریز`,error:G.value.receiptDate},null,8,[`modelValue`,`error`]),s(he,{modelValue:V.value,"onUpdate:modelValue":c[5]||=e=>V.value=e,label:`ساعت واریز`,type:`time`},null,8,[`modelValue`]),s(he,{modelValue:H.value,"onUpdate:modelValue":c[6]||=e=>H.value=e,label:`شماره پیگیری`,inputmode:`numeric`,dir:`ltr`,error:G.value.trackingNumber},null,8,[`modelValue`,`error`]),p(`div`,Et,[c[32]||=p(`label`,{class:`form-label`},`حساب مقصد`,-1),r(p(`select`,{"onUpdate:modelValue":c[7]||=e=>U.value=e,class:e([`select-input`,{"select-input--error":G.value.destinationAccountId}])},[c[31]||=p(`option`,{value:``},`انتخاب کنید`,-1),(i(!0),u(f,null,t(q.value,e=>(i(),u(`option`,{key:e.id,value:e.id},a(e.bankName)+` - `+a(e.cardNumber),9,Dt))),128))],2),[[ne,U.value]]),G.value.destinationAccountId?(i(),u(`p`,Ot,a(G.value.destinationAccountId),1)):l(``,!0)]),p(`div`,kt,[c[33]||=p(`label`,{class:`form-label`},`تصویر رسید`,-1),p(`label`,{class:e([`upload-box`,{"upload-box--error":G.value.receiptImage}])},[p(`input`,{type:`file`,accept:`image/*`,class:`upload-box__input`,onChange:$},null,32),W.value?(i(),u(`img`,{key:0,src:W.value,class:`upload-box__preview`,alt:`تصویر رسید`},null,8,At)):(i(),u(`span`,jt,`انتخاب تصویر رسید`))],2),G.value.receiptImage?(i(),u(`p`,Mt,a(G.value.receiptImage),1)):l(``,!0)]),s(E,{block:``,class:`mt-4`,onClick:Pt},{default:n(()=>[...c[34]||=[d(`ثبت رسید`,-1)]]),_:1})])])])):l(``,!0)]))])):(i(),u(`div`,Nt,[c[36]||=p(`p`,null,`سفارش یافت نشد`,-1),s(E,{onClick:c[9]||=e=>_(y).push(`/orders`)},{default:n(()=>[...c[35]||=[d(`بازگشت`,-1)]]),_:1})]))}}),[[`__scopeId`,`data-v-87e17357`]]);export{$ as default}; \ No newline at end of file diff --git a/dist/assets/OrderDetailView-DPEL7-lF.js b/dist/assets/OrderDetailView-DPEL7-lF.js deleted file mode 100644 index fe9c1d8..0000000 --- a/dist/assets/OrderDetailView-DPEL7-lF.js +++ /dev/null @@ -1 +0,0 @@ -import{D as e,E as t,Et as n,J as r,Kt as i,M as a,N as o,O as s,P as c,S as l,T as u,Xt as d,Z as f,at as p,b as m,ct as h,g as ee,h as te,st as g,t as _,vt as v,w as y}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";import{c as b,o as ne,t as x,u as re}from"./BasicIcon-BXxbbWA_.js";import{n as ie}from"./dist-2yEcZq4e.js";import{a as ae,d as S,i as C,n as w,o as T,r as E,u as oe}from"./format-C72AoJ2H.js";import{n as se,t as ce}from"./validation-Duyyve7l.js";import{d as le,n as D,o as O,p as ue}from"./index-BAQfYU-Q.js";import{n as de}from"./constants-DXXK14Zz.js";import{t as k}from"./IconChevronBack-DfGoZJJk.js";import{t as fe}from"./FormErrorBanner-DI5hhxpk.js";import{n as A,r as j,t as pe}from"./formErrors-DglFjYkZ.js";import{n as me,t as M}from"./orderInvoice-B0L1Aeuk.js";import{t as he}from"./BaseInput-CVNdy37R.js";import{t as ge}from"./CurrencyInput-D6gR57Z3.js";import{t as _e}from"./PersianDateInput-CTe_lYug.js";var N={submitted:0,awaiting_review:1,pricing:2,needs_correction:1,awaiting_settlement:3,awaiting_settlement_fix:3,cash_in_progress:4,cash_invoice_issued:4,awaiting_cash_payment:4,cash_payment_submitted:4,check_in_progress:4,awaiting_cash_confirmation:5,awaiting_check_review:5,check_needs_fix:5,check_rejected:5,checks_approved:6,cash_confirmed:6,final_approved:7,preparing:8,ready_to_ship:9,shipped:10,delivered:11,expired:3,cancelled:0,rejected:1},P={submitted:{variant:`waiting`,title:`پیش‌سفارش ثبت شد`,description:`سفارش شما برای بررسی و قیمت‌گذاری به مدیریت ارسال شد. پس از صدور فاکتور می‌توانید روش تسویه (نقد یا چک) را انتخاب کنید.`},awaiting_review:{variant:`waiting`,title:`در انتظار بررسی مدیریت`,description:`پیش‌سفارش شما در صف بررسی است. پس از قیمت‌گذاری و صدور فاکتور، از طریق همین صفحه برای انتخاب تسویه مطلع می‌شوید.`},pricing:{variant:`waiting`,title:`در حال قیمت‌گذاری`,description:`مدیریت در حال تعیین مبلغ نهایی فاکتور است. تا قبل از صدور فاکتور امکان ثبت چک یا پرداخت وجود ندارد.`},awaiting_settlement:{variant:`info`,title:`فاکتور آماده است`,description:`مبلغ فاکتور مشخص شده. لطفاً روش تسویه را انتخاب کنید و مسیر پرداخت را ادامه دهید.`},awaiting_settlement_fix:{variant:`info`,title:`نیاز به اصلاح تسویه`,description:`لطفاً روش تسویه یا اطلاعات پرداخت را اصلاح کنید.`},cash_invoice_issued:{variant:`info`,title:`فاکتور نقدی صادر شد`,description:`مبلغ را به حساب‌های اعلام‌شده واریز و رسید پرداخت را ثبت کنید.`},awaiting_cash_payment:{variant:`info`,title:`در انتظار پرداخت نقدی`,description:`لطفاً مبلغ فاکتور را واریز و رسید پرداخت را ثبت کنید.`},cash_payment_submitted:{variant:`waiting`,title:`رسید ثبت شد`,description:`رسید پرداخت شما دریافت شد و در صف بررسی مدیریت است.`},awaiting_cash_confirmation:{variant:`waiting`,title:`در انتظار تأیید پرداخت`,description:`رسید پرداخت در حال بررسی است. نتیجه به‌زودی اعلام می‌شود.`},awaiting_check_review:{variant:`waiting`,title:`در حال بررسی چک‌ها`,description:`چک‌های ثبت‌شده در حال بررسی هستند. نتیجه بررسی به‌زودی اعلام می‌شود.`},checks_approved:{variant:`success`,title:`چک‌ها تأیید شده`,description:`چک‌های شما تأیید شد. سفارش در انتظار تأیید نهایی مدیریت است و پس از آن وارد آماده‌سازی می‌شود.`},cash_confirmed:{variant:`success`,title:`پرداخت تأیید شد`,description:`رسید پرداخت شما تأیید شد و سفارش وارد مراحل بعدی می‌شود.`},final_approved:{variant:`success`,title:`تأیید نهایی`,description:`سفارش شما تأیید نهایی شد و آماده آماده‌سازی است.`},preparing:{variant:`info`,title:`در حال آماده‌سازی`,description:`سفارش شما در انبار در حال آماده‌سازی است.`},ready_to_ship:{variant:`info`,title:`آماده ارسال`,description:`سفارش آماده ارسال است و به‌زودی تحویل باربری می‌شود.`},shipped:{variant:`info`,title:`ارسال شده`,description:`سفارش ارسال شده است. جزئیات بارنامه را می‌توانید مشاهده کنید.`},delivered:{variant:`success`,title:`تحویل شده`,description:`سفارش با موفقیت تحویل داده شد.`},expired:{variant:`waiting`,title:`فاکتور منقضی شده`,description:`مهلت پرداخت این فاکتور به پایان رسیده است. برای ادامه با پشتیبانی یا مدیریت هماهنگ کنید.`}};function F(e){return e===`cash`?{payment:`ثبت رسید پرداخت`,review:`بررسی پرداخت نقدی`,approved:`پرداخت تأیید شده`}:e===`check`?{payment:`ثبت چک`,review:`در حال بررسی چک‌ها`,approved:`چک‌ها تأیید شده`}:{payment:`ثبت پرداخت / چک`,review:`بررسی پرداخت / چک`,approved:`تأیید پرداخت`}}function I(e){let t=F(e.settlementType);return de.map(e=>e.status===`check_in_progress`?{...e,label:t.payment}:e.status===`awaiting_check_review`?{...e,label:t.review}:e.status===`checks_approved`?{...e,label:t.approved}:e)}function L(e){return N[e]??0}function ve(e){return P[e]??null}var R={awaiting_settlement:[`awaiting_settlement`,`awaiting_settlement_fix`],check_in_progress:[`check_in_progress`,`cash_in_progress`,`cash_invoice_issued`,`awaiting_cash_payment`,`cash_payment_submitted`],awaiting_check_review:[`awaiting_check_review`,`awaiting_cash_confirmation`,`check_needs_fix`,`check_rejected`],checks_approved:[`checks_approved`,`cash_confirmed`],pricing:[`pricing`]};function z(e,t){if(t===`submitted`)return e.createdAt;let n=R[t]??[t];return[...e.statusHistory].reverse().find(e=>n.includes(e.toStatus))?.changedAt??null}function ye(e){return e===`shipped`?`مشاهده جزئیات و بارنامه`:[`checks_approved`,`cash_confirmed`,`delivered`,`final_approved`].includes(e)?`مشاهده جزئیات`:`مشاهده جزئیات سفارش`}var B={class:`tracking-timeline`},V={class:`tracking-timeline__marker-wrap`},H={class:`tracking-timeline__marker`},U={key:0,class:`tracking-timeline__check`},W={class:`tracking-timeline__label`},G={key:0,class:`tracking-timeline__time`},be=_(c({__name:`OrderTrackingTimeline`,props:{order:{}},setup(t){let n=t,a=y(()=>I(n.order)),o=y(()=>L(n.order.status));function c(e){return e(r(),s(`div`,B,[(r(!0),s(m,null,f(a.value,(t,a)=>(r(),s(`div`,{key:t.status,class:i([`tracking-timeline__item`,`tracking-timeline__item--${c(a)}`])},[u(`div`,V,[n[0]||=u(`div`,{class:`tracking-timeline__line`,"aria-hidden":`true`},null,-1),u(`div`,H,[c(a)===`done`?(r(),s(`span`,U,`✓`)):e(``,!0)])]),u(`div`,{class:i([`tracking-timeline__content`,{"tracking-timeline__content--current":c(a)===`current`}])},[u(`strong`,W,d(t.label),1),l(t.status)?(r(),s(`span`,G,d(l(t.status)),1)):e(``,!0)],2)],2))),128))]))}}),[[`__scopeId`,`data-v-603b6d66`]]),K={class:`status-hero__icon`,"aria-hidden":`true`},q={class:`status-hero__copy`},J={class:`status-hero__title`},xe={key:0,class:`status-hero__desc`},Se=_(c({__name:`OrderStatusHero`,props:{config:{}},setup(t){let n={waiting:`vuesax-linear:timer-1`,success:`vuesax-linear:tick-circle`,info:`vuesax-linear:info-circle`,none:`vuesax-linear:info-circle`};return(a,c)=>t.config.variant===`none`?e(``,!0):(r(),s(`div`,{key:0,class:i([`status-hero`,`status-hero--${t.config.variant}`])},[u(`div`,K,[o(x,{icon:n[t.config.variant],size:28,"stroke-width":1.5},null,8,[`icon`])]),u(`div`,q,[u(`h2`,J,d(t.config.title),1),t.config.description?(r(),s(`p`,xe,d(t.config.description),1)):e(``,!0)])],2))}}),[[`__scopeId`,`data-v-896684d9`]]),Ce={class:`tracking-summary`},Y={class:`tracking-summary__row`},X={class:`tracking-summary__row`},Z={class:`tracking-summary__row`},Q={class:`tracking-summary__row`},we={key:0,class:`tracking-summary__row`},Te={key:1,class:`tracking-summary__row`},Ee=_(c({__name:`OrderTrackingSummary`,props:{order:{}},setup(t){let i=t,a=y(()=>i.order.checks?.reduce((e,t)=>e+t.amount,0)??0);function o(e){return e?e===`cash`?`تسویه نقدی`:`تسویه چکی`:`در انتظار انتخاب مشتری`}return(i,c)=>(r(),s(`div`,Ce,[u(`div`,Y,[c[0]||=u(`span`,null,`مبلغ فاکتور`,-1),u(`strong`,null,d(t.order.finalAmount?n(T)(t.order.finalAmount):`در انتظار قیمت‌گذاری`),1)]),u(`div`,X,[c[1]||=u(`span`,null,`نوع تسویه`,-1),u(`strong`,null,d(o(t.order.settlementType)),1)]),t.order.settlementType===`check`&&t.order.checks?.length?(r(),s(m,{key:0},[u(`div`,Z,[c[2]||=u(`span`,null,`تعداد چک‌ها`,-1),u(`strong`,null,d(n(S)(String(t.order.checks.length)))+` فقره`,1)]),u(`div`,Q,[c[3]||=u(`span`,null,`مجموع مبلغ چک‌ها`,-1),u(`strong`,null,d(n(w)(a.value)),1)]),t.order.checkRassDays==null?e(``,!0):(r(),s(`div`,we,[c[4]||=u(`span`,null,`رأس چک (تقریبی)`,-1),u(`strong`,null,d(n(S)(String(t.order.checkRassDays)))+` روز`,1)]))],64)):e(``,!0),t.order.settlementType===`cash`&&t.order.cashReceipt?(r(),s(`div`,Te,[c[5]||=u(`span`,null,`مبلغ واریزی`,-1),u(`strong`,null,d(n(w)(t.order.cashReceipt.amount)),1)])):e(``,!0)]))}}),[[`__scopeId`,`data-v-b22cc5d6`]]),De={key:0,class:`order-detail-page`},Oe={class:`order-detail-page__nav mobile-only`},ke={class:`order-detail-page__nav-center`},Ae={class:`order-detail-page__title`},je={key:0,class:`order-detail-page__order-id`},Me={type:`button`,class:`nav-btn nav-btn--ghost`,"aria-hidden":`true`,tabindex:`-1`},Ne={class:`desktop-page__head desktop-only order-detail-page__desktop-head`},Pe={class:`desktop-page__subtitle`},Fe={class:`order-detail-page__body`},Ie={key:0,class:`order-info-card mobile-only`},Le={class:`order-info-card__head`},Re={class:`order-info-card__number`},ze={class:`order-info-card__row`},Be={class:`order-info-card__value order-info-card__value--accent`},Ve={class:`order-info-card__row`},He={class:`order-info-card__value order-info-card__value--accent`},Ue={class:`order-info-card__row`},We={class:`order-info-card__value order-info-card__value--accent`},Ge={class:`order-info-card__row order-info-card__row--last`},Ke={class:`order-info-card__amount`},qe={key:1,class:`order-next-action`},Je={key:2,class:`order-detail-page__tracking`},Ye={class:`order-detail-page__tracking-hero`},Xe={class:`tracking-card tracking-card--hero`},Ze={class:`order-detail-page__tracking-main`},Qe={key:0,class:`order-next-action`},$e={class:`tracking-card tracking-collapse`},et=[`aria-expanded`],tt={class:`tracking-collapse__body`},nt={class:`tracking-collapse__section tracking-collapse__section--flush`},rt={class:`tracking-card tracking-collapse`},it=[`aria-expanded`],at={class:`tracking-collapse__body`},ot={class:`tracking-collapse__section`},st={class:`item-row__meta`},ct={class:`item-row item-row--summary`},lt={key:0,class:`tracking-alert`},ut={class:`tracking-collapse__section`},dt={dir:`ltr`,class:`bank-row__meta`},ft={dir:`ltr`,class:`bank-row__meta`},pt={key:2,class:`tracking-collapse__section`},mt={class:`detail-row`},ht={class:`detail-row`},gt={class:`tracking-collapse__section`},_t={class:`rass-display`},vt={key:0,class:`rass-date`},yt={class:`detail-row`},bt={class:`detail-row`},xt=[`src`],St={key:0,class:`order-detail-page__footer mobile-only`},Ct={class:`receipt-modal card`,role:`dialog`,"aria-modal":`true`,"aria-labelledby":`receipt-modal-title`},wt={class:`receipt-modal__header`},Tt={class:`receipt-modal__body`},Et={class:`form-group`},Dt=[`value`],Ot={key:0,class:`input-error-text`},kt={class:`form-group`},At=[`src`],jt={key:1,class:`upload-box__placeholder`},Mt={key:0,class:`input-error-text`},Nt={key:1,class:`page empty-state`},$=_(c({__name:`OrderDetailView`,setup(c){let _=te(),x=ee(),S=le(),de=ie(`(min-width: 768px)`),N=y(()=>_.params.id),P=y(()=>S.getOrderById(N.value)),F=v(_.query.track===`1`||_.query.receipt===`1`),I=v(!1),L=v(!0),R=v(_.query.receipt===`1`),z=v(``),B=v(``),V=v(``),H=v(``),U=v(``),W=v(``),G=v({}),K=v(``);p([P,()=>_.query.receipt],([e])=>{let t=_.query.receipt===`1`;if(t&&M(e)){I.value=!0,R.value=!0;return}if(t&&e&&!M(e)){I.value=!1;let{receipt:e,...t}=_.query;x.replace({query:{...t,track:`1`}})}},{immediate:!0}),p(de,e=>{e&&(F.value=!0,L.value=!0,R.value=!0,_.query.track!==`1`&&_.query.receipt!==`1`&&x.replace({query:{..._.query,track:`1`}}))},{immediate:!0}),p(z,()=>{G.value=A(G.value,`receiptAmount`),j(G.value)||(K.value=``)}),p(B,()=>{G.value=A(G.value,`receiptDate`),j(G.value)||(K.value=``)}),p(H,()=>{G.value=A(G.value,`trackingNumber`),j(G.value)||(K.value=``)}),p(U,()=>{G.value=A(G.value,`destinationAccountId`),j(G.value)||(K.value=``)});let q=v([]);p(()=>P.value?.id,async e=>{if(!e||!P.value){q.value=[];return}try{q.value=await S.getBankAccountsForOrder(P.value)}catch{q.value=[]}},{immediate:!0}),p(()=>N.value,async e=>{if(e&&!S.getOrderById(e))try{await S.fetchOrder(e)}catch{}},{immediate:!0});let J=y(()=>P.value?ve(P.value.status):null),xe=y(()=>P.value?ye(P.value.status):`مشاهده جزئیات سفارش`);function Ce(e){return e?e===`cash`?`تسویه نقدی`:`تسویه چکی`:`در انتظار انتخاب مشتری`}let Y=y(()=>{let e=P.value;if(!e)return null;let t=me(e);switch(e.status){case`awaiting_settlement`:case`awaiting_settlement_fix`:return t?{label:`انتخاب روش تسویه`,to:`/orders/${e.id}/settlement`}:null;case`check_in_progress`:return t?{label:`ثبت چک‌ها`,to:`/orders/${e.id}/check-mode`}:null;case`check_needs_fix`:case`check_rejected`:return t?{label:`اصلاح چک‌ها`,to:`/orders/${e.id}/check-list`}:null;case`awaiting_cash_payment`:case`cash_invoice_issued`:return t?{label:`ثبت رسید پرداخت`,receipt:!0}:null;default:return null}});function X(){if(!M(P.value)){K.value=`در وضعیت فعلی سفارش امکان ثبت رسید وجود ندارد`;return}F.value=!0,R.value=!0,I.value=!0}function Z(){let e=Y.value;if(e){if(e.receipt){X();return}e.to&&x.push(e.to)}}function Q(){F.value=!0,R.value=!1,x.replace({query:{track:`1`}})}function we(){R.value=!R.value}function Te(){L.value=!L.value}async function $(e){let t=e.target.files?.[0];if(!t)return;let n=se(t);if(!n.valid){G.value={...G.value,receiptImage:n.message??`خطا`};return}G.value=A(G.value,`receiptImage`),W.value=await ce(t)}async function Pt(){if(!P.value)return;if(G.value={},K.value=``,!M(P.value)){K.value=`در وضعیت فعلی سفارش امکان ثبت رسید وجود ندارد`;return}let e=oe(z.value),t={};if(e||(t.receiptAmount=`مبلغ واریزی الزامی است.`),B.value||(t.receiptDate=`تاریخ واریز الزامی است.`),H.value.trim()||(t.trackingNumber=`شماره پیگیری الزامی است.`),U.value||(t.destinationAccountId=`حساب مقصد را انتخاب کنید.`),j(t)){G.value=t,K.value=pe;return}try{await S.submitCashReceipt(P.value.id,{amount:e,transferDate:B.value,transferTime:V.value||`12:00`,trackingNumber:H.value,destinationAccountId:U.value,receiptImage:W.value||void 0}),I.value=!1,G.value={},K.value=``}catch(e){K.value=e instanceof Error?e.message:`ثبت رسید ناموفق بود.`}}return(c,p)=>P.value?(r(),s(`div`,De,[u(`header`,Oe,[u(`button`,{type:`button`,class:`nav-btn`,"aria-label":`بازگشت`,onClick:p[0]||=e=>n(x).push(`/orders`)},[o(k,{size:20})]),u(`div`,ke,[u(`h1`,Ae,d(F.value?`پیگیری سفارش`:`جزئیات سفارش`),1),F.value?(r(),s(`p`,je,d(P.value.orderNumber),1)):e(``,!0)]),u(`button`,Me,[o(k,{size:18,class:`nav-btn__flip`})])]),u(`header`,Ne,[u(`button`,{type:`button`,class:`order-detail-back`,onClick:p[1]||=e=>n(x).push(`/orders`)},[o(k,{size:18}),p[10]||=a(` بازگشت به سفارش‌ها `,-1)]),p[11]||=u(`h1`,{class:`desktop-page__title`},`پیگیری سفارش`,-1),u(`p`,Pe,d(P.value.orderNumber)+` · `+d(P.value.companyName),1)]),u(`div`,Fe,[F.value?e(``,!0):(r(),s(`div`,Ie,[u(`div`,Le,[p[12]||=u(`span`,{class:`order-info-card__label`},`شماره سفارش`,-1),u(`strong`,Re,d(P.value.orderNumber),1)]),u(`div`,ze,[p[13]||=u(`span`,{class:`order-info-card__key`},`تأمین‌کننده`,-1),u(`span`,Be,d(P.value.companyName),1)]),u(`div`,Ve,[p[14]||=u(`span`,{class:`order-info-card__key`},`تاریخ ثبت`,-1),u(`span`,He,d(n(C)(P.value.createdAt)),1)]),u(`div`,Ue,[p[15]||=u(`span`,{class:`order-info-card__key`},`نوع تسویه`,-1),u(`span`,We,d(Ce(P.value.settlementType)),1)]),u(`div`,Ge,[p[16]||=u(`span`,{class:`order-info-card__key`},`مبلغ فاکتور`,-1),u(`strong`,Ke,d(P.value.finalAmount?n(T)(P.value.finalAmount):`پس از قیمت‌گذاری مدیریت`),1)])])),Y.value&&!F.value?(r(),s(`div`,qe,[p[17]||=u(`span`,{class:`order-next-action__text`},`برای ادامه سفارش، این مرحله باقی مانده است.`,-1),o(D,{class:`order-next-action__btn`,onClick:Z},{default:g(()=>[a(d(Y.value.label),1)]),_:1})])):e(``,!0),F.value?(r(),s(`div`,Je,[u(`section`,Ye,[u(`div`,Xe,[J.value?(r(),t(Se,{key:0,config:J.value},null,8,[`config`])):e(``,!0),o(Ee,{order:P.value},null,8,[`order`])])]),u(`section`,Ze,[Y.value?(r(),s(`div`,Qe,[p[18]||=u(`span`,{class:`order-next-action__text`},`برای ادامه سفارش، این مرحله باقی مانده است.`,-1),o(D,{class:`order-next-action__btn`,onClick:Z},{default:g(()=>[a(d(Y.value.label),1)]),_:1})])):e(``,!0),u(`div`,$e,[u(`button`,{type:`button`,class:`tracking-collapse__trigger`,"aria-expanded":L.value,onClick:Te},[p[19]||=u(`span`,null,`پیگیری وضعیت`,-1),o(O,{size:18,class:i([`tracking-collapse__chevron`,{"tracking-collapse__chevron--open":L.value}]),"aria-hidden":`true`},null,8,[`class`])],8,et),h(u(`div`,tt,[u(`div`,nt,[o(be,{order:P.value},null,8,[`order`])])],512),[[b,L.value]])]),u(`div`,rt,[u(`button`,{type:`button`,class:`tracking-collapse__trigger`,"aria-expanded":R.value,onClick:we},[u(`span`,null,d(xe.value),1),o(O,{size:18,class:i([`tracking-collapse__chevron`,{"tracking-collapse__chevron--open":R.value}]),"aria-hidden":`true`},null,8,[`class`])],8,it),h(u(`div`,at,[u(`div`,ot,[p[21]||=u(`h3`,{class:`tracking-card__title`},`اقلام سفارش`,-1),(r(!0),s(m,null,f(P.value.items,e=>(r(),s(`div`,{key:e.id,class:`item-row`},[u(`div`,null,[u(`strong`,null,d(e.productName),1),u(`p`,st,`کالیته `+d(e.catalogCode)+` · `+d(e.color),1)]),u(`span`,null,d(n(ae)(e.requestedMeterage)),1)]))),128)),u(`div`,ct,[p[20]||=u(`span`,null,`مجموع متراژ`,-1),u(`strong`,null,d(n(ae)(P.value.totalMeterage)),1)])]),P.value.settlementType===`cash`?(r(),s(m,{key:0},[P.value.cashInvoiceExpiresAt?(r(),s(`div`,lt,` اعتبار فاکتور: `+d(n(C)(P.value.cashInvoiceExpiresAt)),1)):e(``,!0),u(`div`,ut,[p[22]||=u(`h3`,{class:`tracking-card__title`},`حساب‌های بانکی`,-1),(r(!0),s(m,null,f(q.value,e=>(r(),s(`div`,{key:e.id,class:`bank-row`},[u(`strong`,null,d(e.bankName),1),u(`p`,dt,d(e.cardNumber),1),u(`p`,ft,d(e.iban),1)]))),128))]),Y.value?.receipt?(r(),t(D,{key:1,block:``,onClick:X},{default:g(()=>[a(d(P.value.cashReceipt?`ثبت رسید جدید`:`ثبت رسید پرداخت`),1)]),_:1})):e(``,!0),P.value.cashReceipt?(r(),s(`div`,pt,[p[25]||=u(`h3`,{class:`tracking-card__title`},`رسید ثبت‌شده`,-1),u(`div`,mt,[p[23]||=u(`span`,null,`مبلغ`,-1),u(`span`,null,d(n(w)(P.value.cashReceipt.amount)),1)]),u(`div`,ht,[p[24]||=u(`span`,null,`شماره پیگیری`,-1),u(`span`,null,d(P.value.cashReceipt.trackingNumber),1)])])):e(``,!0)],64)):e(``,!0),P.value.settlementType===`check`&&P.value.checks?(r(),s(m,{key:1},[u(`div`,gt,[p[26]||=u(`h3`,{class:`tracking-card__title`},`رأس چک‌ها`,-1),u(`div`,_t,d(P.value.checkRassDays)+` روز`,1),P.value.checkRassDate?(r(),s(`p`,vt,` تاریخ رأس: `+d(n(E)(P.value.checkRassDate)),1)):e(``,!0)]),(r(!0),s(m,null,f(P.value.checks,(t,i)=>(r(),s(`div`,{key:t.id,class:`tracking-collapse__section`},[u(`strong`,null,`چک `+d(i+1),1),u(`div`,yt,[p[27]||=u(`span`,null,`مبلغ`,-1),u(`span`,null,d(n(w)(t.amount)),1)]),u(`div`,bt,[p[28]||=u(`span`,null,`سررسید`,-1),u(`span`,null,d(n(E)(t.dueDate))+` (`+d(n(ue)(t.dueDate))+` روز)`,1)]),t.frontImage?(r(),s(`img`,{key:0,src:t.frontImage,class:`check-img`,alt:`چک`},null,8,xt)):e(``,!0)]))),128))],64)):e(``,!0)],512),[[b,R.value]])])])])):e(``,!0)]),F.value?e(``,!0):(r(),s(`div`,St,[o(D,{block:``,onClick:Q},{default:g(()=>[...p[29]||=[a(`مشاهده جزئیات و پیگیری`,-1)]]),_:1})])),(r(),t(l,{to:`body`},[I.value?(r(),s(`div`,{key:0,class:`receipt-modal-overlay`,onClick:p[8]||=re(e=>I.value=!1,[`self`])},[u(`div`,Ct,[u(`header`,wt,[p[30]||=u(`h3`,{id:`receipt-modal-title`,class:`receipt-modal__title`},`ثبت رسید پرداخت`,-1),u(`button`,{type:`button`,class:`receipt-modal__close`,"aria-label":`بستن`,onClick:p[2]||=e=>I.value=!1},` × `)]),u(`div`,Tt,[o(fe,{message:K.value},null,8,[`message`]),o(ge,{modelValue:z.value,"onUpdate:modelValue":p[3]||=e=>z.value=e,label:`مبلغ واریزی`,error:G.value.receiptAmount},null,8,[`modelValue`,`error`]),o(_e,{modelValue:B.value,"onUpdate:modelValue":p[4]||=e=>B.value=e,label:`تاریخ واریز`,error:G.value.receiptDate},null,8,[`modelValue`,`error`]),o(he,{modelValue:V.value,"onUpdate:modelValue":p[5]||=e=>V.value=e,label:`ساعت واریز`,type:`time`},null,8,[`modelValue`]),o(he,{modelValue:H.value,"onUpdate:modelValue":p[6]||=e=>H.value=e,label:`شماره پیگیری`,inputmode:`numeric`,dir:`ltr`,error:G.value.trackingNumber},null,8,[`modelValue`,`error`]),u(`div`,Et,[p[32]||=u(`label`,{class:`form-label`},`حساب مقصد`,-1),h(u(`select`,{"onUpdate:modelValue":p[7]||=e=>U.value=e,class:i([`select-input`,{"select-input--error":G.value.destinationAccountId}])},[p[31]||=u(`option`,{value:``},`انتخاب کنید`,-1),(r(!0),s(m,null,f(q.value,e=>(r(),s(`option`,{key:e.id,value:e.id},d(e.bankName)+` - `+d(e.cardNumber),9,Dt))),128))],2),[[ne,U.value]]),G.value.destinationAccountId?(r(),s(`p`,Ot,d(G.value.destinationAccountId),1)):e(``,!0)]),u(`div`,kt,[p[33]||=u(`label`,{class:`form-label`},`تصویر رسید`,-1),u(`label`,{class:i([`upload-box`,{"upload-box--error":G.value.receiptImage}])},[u(`input`,{type:`file`,accept:`image/*`,class:`upload-box__input`,onChange:$},null,32),W.value?(r(),s(`img`,{key:0,src:W.value,class:`upload-box__preview`,alt:`تصویر رسید`},null,8,At)):(r(),s(`span`,jt,`انتخاب تصویر رسید`))],2),G.value.receiptImage?(r(),s(`p`,Mt,d(G.value.receiptImage),1)):e(``,!0)]),o(D,{block:``,class:`mt-4`,onClick:Pt},{default:g(()=>[...p[34]||=[a(`ثبت رسید`,-1)]]),_:1})])])])):e(``,!0)]))])):(r(),s(`div`,Nt,[p[36]||=u(`p`,null,`سفارش یافت نشد`,-1),o(D,{onClick:p[9]||=e=>n(x).push(`/orders`)},{default:g(()=>[...p[35]||=[a(`بازگشت`,-1)]]),_:1})]))}}),[[`__scopeId`,`data-v-87e17357`]]);export{$ as default}; \ No newline at end of file diff --git a/dist/assets/OrderSuccessView-BGnYjzbC.js b/dist/assets/OrderSuccessView-BGnYjzbC.js new file mode 100644 index 0000000..6d1f07c --- /dev/null +++ b/dist/assets/OrderSuccessView-BGnYjzbC.js @@ -0,0 +1 @@ +import{G as e,M as t,Pt as n,_ as r,c as i,d as a,f as o,g as s,l as c,t as l,ut as u,v as d}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{a as f}from"./format-C72AoJ2H.js";import{M as p,d as m,j as h,n as g}from"./index-BrjLizie.js";import{t as _}from"./PageHeader-BSsCNguu.js";import{t as v}from"./useGoBack-C1ocTT2D.js";var y={class:`page success-page`},b={class:`page__scroll success-page__scroll`},x={key:0,class:`card mb-4`},S={class:`info-row`},C={class:`info-row`},w={class:`info-row`},T=l(d({__name:`OrderSuccessView`,setup(l){let d=h(),T=p(),{goBack:E}=v(`/orders`),D=m(),O=i(()=>D.getOrderById(d.params.id));return(i,l)=>(t(),o(`div`,y,[r(_,{title:`ثبت موفق`,"show-back":``,centered:``,onBack:u(E)},null,8,[`onBack`]),c(`div`,b,[l[8]||=c(`div`,{class:`success-icon`},`✓`,-1),l[9]||=c(`h1`,{class:`page-title text-center`},`سفارش ثبت شد`,-1),l[10]||=c(`p`,{class:`text-center text-muted mb-4`},` سفارش شما با موفقیت ثبت شد. کارشناسان ما سفارش را بررسی و قیمت‌گذاری می‌کنند و به‌محض صدور فاکتور، از طریق پیامک و پنل کاربری به شما اطلاع می‌دهیم تا روش تسویه را انتخاب کنید. `,-1),O.value?(t(),o(`div`,x,[c(`div`,S,[l[2]||=c(`span`,null,`شماره سفارش:`,-1),c(`strong`,null,n(O.value.orderNumber),1)]),c(`div`,C,[l[3]||=c(`span`,null,`تأمین‌کننده:`,-1),c(`span`,null,n(O.value.companyName),1)]),c(`div`,w,[l[4]||=c(`span`,null,`متراژ:`,-1),c(`span`,null,n(u(f)(O.value.totalMeterage)),1)]),l[5]||=c(`div`,{class:`info-row`},[c(`span`,null,`وضعیت:`),c(`span`,null,`در انتظار قیمت‌گذاری`)],-1)])):a(``,!0),r(g,{block:``,onClick:l[0]||=e=>u(T).replace(`/orders/${O.value?.id}`)},{default:e(()=>[...l[6]||=[s(` مشاهده جزئیات سفارش `,-1)]]),_:1}),r(g,{block:``,variant:`outline`,class:`mt-2`,onClick:l[1]||=e=>u(T).replace(`/`)},{default:e(()=>[...l[7]||=[s(` بازگشت به خانه `,-1)]]),_:1})])]))}}),[[`__scopeId`,`data-v-bb2e861d`]]);export{T as default}; \ No newline at end of file diff --git a/dist/assets/OrderSuccessView-DbGNDiom.js b/dist/assets/OrderSuccessView-DbGNDiom.js deleted file mode 100644 index ac52553..0000000 --- a/dist/assets/OrderSuccessView-DbGNDiom.js +++ /dev/null @@ -1 +0,0 @@ -import{D as e,Et as t,J as n,M as r,N as i,O as a,P as o,T as s,Xt as c,g as l,h as u,st as d,t as f,w as p}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";import{a as m}from"./format-C72AoJ2H.js";import{d as h,n as g}from"./index-BAQfYU-Q.js";import{t as _}from"./PageHeader-DTO8lja2.js";import{t as v}from"./useGoBack-TJZZv7or.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=f(o({__name:`OrderSuccessView`,setup(o){let f=u(),T=l(),{goBack:E}=v(`/orders`),D=h(),O=p(()=>D.getOrderById(f.params.id));return(o,l)=>(n(),a(`div`,y,[i(_,{title:`ثبت موفق`,"show-back":``,centered:``,onBack:t(E)},null,8,[`onBack`]),s(`div`,b,[l[8]||=s(`div`,{class:`success-icon`},`✓`,-1),l[9]||=s(`h1`,{class:`page-title text-center`},`سفارش ثبت شد`,-1),l[10]||=s(`p`,{class:`text-center text-muted mb-4`},` سفارش شما با موفقیت ثبت شد. کارشناسان ما سفارش را بررسی و قیمت‌گذاری می‌کنند و به‌محض صدور فاکتور، از طریق پیامک و پنل کاربری به شما اطلاع می‌دهیم تا روش تسویه را انتخاب کنید. `,-1),O.value?(n(),a(`div`,x,[s(`div`,S,[l[2]||=s(`span`,null,`شماره سفارش:`,-1),s(`strong`,null,c(O.value.orderNumber),1)]),s(`div`,C,[l[3]||=s(`span`,null,`تأمین‌کننده:`,-1),s(`span`,null,c(O.value.companyName),1)]),s(`div`,w,[l[4]||=s(`span`,null,`متراژ:`,-1),s(`span`,null,c(t(m)(O.value.totalMeterage)),1)]),l[5]||=s(`div`,{class:`info-row`},[s(`span`,null,`وضعیت:`),s(`span`,null,`در انتظار قیمت‌گذاری`)],-1)])):e(``,!0),i(g,{block:``,onClick:l[0]||=e=>t(T).replace(`/orders/${O.value?.id}`)},{default:d(()=>[...l[6]||=[r(` مشاهده جزئیات سفارش `,-1)]]),_:1}),i(g,{block:``,variant:`outline`,class:`mt-2`,onClick:l[1]||=e=>t(T).replace(`/`)},{default:d(()=>[...l[7]||=[r(` بازگشت به خانه `,-1)]]),_:1})])]))}}),[[`__scopeId`,`data-v-bb2e861d`]]);export{T as default}; \ No newline at end of file diff --git a/dist/assets/OrdersView-BIlEM87V.js b/dist/assets/OrdersView-BIlEM87V.js deleted file mode 100644 index 9a9d8d5..0000000 --- a/dist/assets/OrdersView-BIlEM87V.js +++ /dev/null @@ -1 +0,0 @@ -import{D as e,E as t,Et as n,G as r,J as i,Kt as a,M as o,N as s,O as c,P as l,Q as u,T as d,Xt as f,Z as p,at as m,b as h,g,h as _,st as v,t as y,vt as b,w as x}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";import{t as S}from"./BasicIcon-BXxbbWA_.js";import{d as C,i as w,n as T,o as E}from"./format-C72AoJ2H.js";import{t as D}from"./catalog-CIw6in_a.js";import{D as O,c as k,d as A,i as j,n as M,o as N}from"./index-BAQfYU-Q.js";import{t as P}from"./EmptyState-D-8eFOUi.js";import{r as F,t as I}from"./constants-DXXK14Zz.js";import{t as L}from"./IconChevronBack-DfGoZJJk.js";import{t as R}from"./IconProgressClock-CpMlnCU2.js";import"./IconFilter-C0e5CP4I.js";import{t as z}from"./IconMoreVertical-zeD1VV0e.js";var B=[`awaiting_review`,`awaiting_check_review`],V=[`submitted`,`pricing`,`check_in_progress`,`awaiting_cash_confirmation`,`preparing`,`ready_to_ship`,`needs_correction`,`awaiting_settlement_fix`,`cash_in_progress`,`awaiting_cash_payment`,`cash_payment_submitted`,`check_needs_fix`,`awaiting_settlement`,`cash_invoice_issued`],H=[`shipped`],U=[`delivered`,`final_approved`,`checks_approved`,`cash_confirmed`],W=[`cancelled`,`rejected`,`expired`,`check_rejected`],ee=[...B,...V,...H];function te(e,t){switch(t){case`review`:return B.includes(e);case`in_progress`:return V.includes(e);case`shipped`:return H.includes(e);case`delivered`:return U.includes(e);case`cancelled`:return W.includes(e);default:return!0}}function G(e,t){return t===`active`?ee.includes(e):t===`done`?U.includes(e):t!==`cancelled`||W.includes(e)}var K=5,q=5;function J(){let e=g(),t=_(),n=A(),i=k(),a=D(),o=b(1),s=b(1),c=b(``);r(async()=>{await Promise.all([n.hydrate(),a.loadCompanies()])}),m(()=>t.query.submitted,n=>{let r=Number(n);if(!Number.isFinite(r)||r<1){c.value=``;return}c.value=r===1?`پیش‌سفارش با موفقیت ثبت شد.`:`${C(String(r))} پیش‌سفارش (برای شرکت‌های مختلف) ثبت شد.`;let{submitted:i,...a}=t.query;e.replace({query:a})},{immediate:!0});let l=x({get:()=>e.currentRoute.value.query.tab??`all`,set:t=>e.replace({query:{...e.currentRoute.value.query,tab:t}})}),u=x({get:()=>e.currentRoute.value.query.filter??`all`,set:t=>e.replace({query:{...e.currentRoute.value.query,filter:t===`all`?void 0:t}})}),d=x(()=>e.currentRoute.value.query.q??``),f=x(()=>i.user?n.userOrders(i.user.id):[]),p=x(()=>({total:f.value.length,review:f.value.filter(e=>B.includes(e.status)).length,inProgress:f.value.filter(e=>V.includes(e.status)).length,done:f.value.filter(e=>U.includes(e.status)).length}));function h(e,t){if(!t.trim())return!0;let n=t.trim().toLowerCase();return e.orderNumber.toLowerCase().includes(n)||e.companyName.toLowerCase().includes(n)}let v=x(()=>f.value.filter(e=>h(e,d.value)).filter(e=>G(e.status,l.value))),y=x(()=>f.value.filter(e=>h(e,d.value)).filter(e=>te(e.status,u.value))),S=x(()=>{let e=(o.value-1)*K;return y.value.slice(e,e+K)}),w=x(()=>Math.max(1,Math.ceil(y.value.length/K))),T=x(()=>y.value.length===0?{start:0,end:0}:{start:(o.value-1)*K+1,end:Math.min(o.value*K,y.value.length)}),E=x(()=>{let e=w.value,t=o.value;if(e<=7)return Array.from({length:e},(e,t)=>t+1);let n=[1];t>3&&n.push(`ellipsis`);let r=Math.max(2,t-1),i=Math.min(e-1,t+1);for(let e=r;e<=i;e+=1)n.push(e);return t1&&n.push(e),n}),O=x(()=>Math.max(1,Math.ceil(v.value.length/q))),j=x(()=>{let e=(s.value-1)*q;return v.value.slice(e,e+q)}),M=x(()=>v.value.length===0?{start:0,end:0}:{start:(s.value-1)*q+1,end:Math.min(s.value*q,v.value.length)}),N=x(()=>{let e=O.value,t=s.value;if(e<=5)return Array.from({length:e},(e,t)=>t+1);let n=[1];t>3&&n.push(`ellipsis`);let r=Math.max(2,t-1),i=Math.min(e-1,t+1);for(let e=r;e<=i;e+=1)n.push(e);return t1&&n.push(e),n});m([y,u,d],()=>{o.value=1}),m([v,l,d],()=>{s.value=1});function P(e){return a.getCompany(e.companyId)?.slug??`par`}function F(e){return U.includes(e.status)?`success`:P(e)===`fam-baft`?`fam-baft`:`par`}function I(t){e.push(`/orders/${t}`)}function L(e){e<1||e>w.value||(o.value=e)}function R(e){e<1||e>O.value||(s.value=e)}function z(e){u.value=u.value===e&&e!==`all`?`all`:e}function H(e){u.value=e}return{tab:l,desktopFilter:u,searchQuery:d,stats:p,filteredOrdersMobile:v,filteredOrdersDesktop:y,paginatedOrders:S,paginatedOrdersMobile:j,totalPages:w,mobileTotalPages:O,paginationRange:T,mobilePaginationRange:M,visiblePages:E,mobileVisiblePages:N,currentPage:o,mobilePage:s,companySlug:P,iconVariant:F,submitSuccessMessage:c,goToOrder:I,setPage:L,setMobilePage:R,setDesktopFilter:z,viewStatFilter:H}}var Y=[`aria-selected`,`onClick`],X=y(l({__name:`FilterTabs`,props:{modelValue:{},tabs:{},equal:{type:Boolean}},emits:[`update:modelValue`],setup(e){return(t,n)=>(i(),c(`div`,{class:a([`filter-tabs`,{"filter-tabs--equal":e.equal}]),role:`tablist`},[(i(!0),c(h,null,p(e.tabs,n=>(i(),c(`button`,{key:n.id,type:`button`,role:`tab`,class:a([`filter-tab`,{active:e.modelValue===n.id}]),"aria-selected":e.modelValue===n.id,onClick:e=>t.$emit(`update:modelValue`,n.id)},f(n.label),11,Y))),128))],2))}}),[[`__scopeId`,`data-v-4cd20e9b`]]),Z=y(l({__name:`BaseBadge`,props:{variant:{}},setup(e){return(t,n)=>(i(),c(`span`,{class:a([`badge`,`badge-${e.variant??`neutral`}`])},[u(t.$slots,`default`,{},void 0,!0)],2))}}),[[`__scopeId`,`data-v-5e1be8f4`]]),Q=l({__name:`StatusBadge`,props:{status:{}},setup(e){let n=e,r=x(()=>I[n.status]??n.status),a=x(()=>F[n.status]??`neutral`);return(e,n)=>(i(),t(Z,{variant:a.value},{default:v(()=>[o(f(r.value),1)]),_:1},8,[`variant`]))}}),ne=[`width`,`height`],re=y(l({__name:`IconParLogo`,props:{size:{default:72}},setup(e){return(t,n)=>(i(),c(`svg`,{class:`icon-logo`,width:e.size,height:e.size,viewBox:`0 0 72 72`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,"aria-hidden":`true`},[...n[0]||=[d(`text`,{x:`36`,y:`50`,"text-anchor":`middle`,"dominant-baseline":`middle`,fill:`currentColor`,style:{"font-family":`IRANSans, Tahoma, sans-serif`,"font-size":`48px`,"font-weight":`700`}},` پ `,-1)]],8,ne))}}),[[`__scopeId`,`data-v-beccd0f1`]]),ie=[`width`,`height`],ae=y(l({__name:`IconFamBaftLogo`,props:{size:{default:72}},setup(e){return(t,n)=>(i(),c(`svg`,{class:`icon-logo`,width:e.size,height:e.size,viewBox:`0 0 72 72`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,"aria-hidden":`true`},[...n[0]||=[d(`g`,{fill:`currentColor`},[d(`rect`,{x:`14`,y:`14`,width:`28`,height:`28`,rx:`4`,transform:`rotate(12 28 28)`}),d(`rect`,{x:`30`,y:`30`,width:`28`,height:`28`,rx:`4`,transform:`rotate(-12 44 44)`})],-1)]],8,ie))}}),[[`__scopeId`,`data-v-bbb3dcd8`]]),oe={class:`page orders-mobile-page`},se={class:`orders-mobile-page__nav`},ce={class:`page__scroll page__scroll--with-nav orders-mobile-page__scroll`},le={key:0,class:`orders-mobile-page__list`},ue=[`onClick`],de={class:`order-card__content`},fe={class:`order-card__number`},pe={class:`order-card__company`},me={key:0,class:`order-card__amount`},he={key:2,class:`orders-mobile-pagination`},ge={class:`orders-mobile-pagination__summary`},_e={class:`orders-mobile-pagination__controls`},ve=[`disabled`],ye={key:0,class:`orders-mobile-pagination__ellipsis`},be=[`onClick`],xe=[`disabled`],Se=y(l({__name:`MobileOrdersPage`,props:{tab:{},tabs:{},orders:{},totalCount:{},currentPage:{},totalPages:{},paginationRange:{},visiblePages:{},companySlug:{type:Function},iconVariant:{type:Function}},emits:[`update:tab`,`select`,`back`,`set-page`],setup(r,{emit:l}){let u=l;return(l,m)=>(i(),c(`div`,oe,[d(`header`,se,[d(`button`,{type:`button`,class:`nav-btn`,"aria-label":`بازگشت`,onClick:m[0]||=e=>u(`back`)},[s(L,{size:20})]),m[5]||=d(`h1`,{class:`orders-mobile-page__title`},`سفارش‌ها`,-1),s(j,{variant:`inline`})]),s(X,{"model-value":r.tab,tabs:r.tabs,equal:``,class:`orders-mobile-page__tabs`,"onUpdate:modelValue":m[1]||=e=>u(`update:tab`,e)},null,8,[`model-value`,`tabs`]),d(`div`,ce,[r.orders.length>0?(i(),c(`div`,le,[(i(!0),c(h,null,p(r.orders,o=>(i(),c(`button`,{key:o.id,type:`button`,class:`order-card`,onClick:e=>u(`select`,o.id)},[d(`div`,de,[m[6]||=d(`span`,{class:`order-card__label`},`سفارش شماره`,-1),d(`strong`,fe,f(o.orderNumber),1),d(`p`,pe,f(o.companyName),1),o.finalAmount?(i(),c(`p`,me,f(n(T)(o.finalAmount)),1)):e(``,!0),s(Q,{status:o.status,class:`order-card__badge`},null,8,[`status`])]),d(`span`,{class:a([`order-card__icon`,`order-card__icon--${r.iconVariant(o)}`])},[r.companySlug(o)===`fam-baft`?(i(),t(ae,{key:0,size:36})):(i(),t(re,{key:1,size:36}))],2)],8,ue))),128))])):(i(),t(P,{key:1,variant:`orders`,message:`هنوز سفارشی ثبت نکرده‌اید`},{default:v(()=>[s(M,{onClick:m[2]||=e=>u(`back`)},{default:v(()=>[...m[7]||=[o(`ثبت سفارش جدید`,-1)]]),_:1})]),_:1})),r.totalCount>0?(i(),c(`div`,he,[d(`p`,ge,f(n(C)(String(r.paginationRange.start)))+`– `+f(n(C)(String(r.paginationRange.end)))+` از `+f(n(E)(r.totalCount)),1),d(`div`,_e,[d(`button`,{type:`button`,class:`orders-mobile-pagination__arrow`,disabled:r.currentPage<=1,"aria-label":`صفحه قبل`,onClick:m[3]||=e=>u(`set-page`,r.currentPage-1)},[s(N,{size:16,class:`orders-mobile-pagination__arrow--prev`})],8,ve),(i(!0),c(h,null,p(r.visiblePages,(e,t)=>(i(),c(h,{key:`${e}-${t}`},[e===`ellipsis`?(i(),c(`span`,ye,`…`)):(i(),c(`button`,{key:1,type:`button`,class:a([`orders-mobile-pagination__page`,{"orders-mobile-pagination__page--active":e===r.currentPage}]),onClick:t=>u(`set-page`,e)},f(n(C)(String(e))),11,be))],64))),128)),d(`button`,{type:`button`,class:`orders-mobile-pagination__arrow`,disabled:r.currentPage>=r.totalPages,"aria-label":`صفحه بعد`,onClick:m[4]||=e=>u(`set-page`,r.currentPage+1)},[s(N,{size:16,class:`orders-mobile-pagination__arrow--next`})],8,xe)])])):e(``,!0)])]))}}),[[`__scopeId`,`data-v-de30513b`]]),Ce=l({__name:`IconHourglass`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(n,r)=>(i(),t(S,{icon:`vuesax-linear:timer-1`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),we=l({__name:`IconCheckCircleOutline`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(n,r)=>(i(),t(S,{icon:`vuesax-linear:tick-circle`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),Te={class:`desktop-page orders-desktop-page`},Ee={class:`orders-stats desktop-grid-4`},De={class:`orders-stat-card`},Oe={class:`orders-stat-card__head`},ke={class:`orders-stat-card__icon orders-stat-card__icon--total`,"aria-hidden":`true`},Ae={class:`orders-stat-card__value`},je={class:`orders-stat-card`},Me={class:`orders-stat-card__head`},Ne={class:`orders-stat-card__icon orders-stat-card__icon--review`,"aria-hidden":`true`},Pe={class:`orders-stat-card__value`},Fe={class:`orders-stat-card`},Ie={class:`orders-stat-card__head`},Le={class:`orders-stat-card__icon orders-stat-card__icon--active`,"aria-hidden":`true`},Re={class:`orders-stat-card__value`},ze={class:`orders-stat-card`},Be={class:`orders-stat-card__head`},Ve={class:`orders-stat-card__icon orders-stat-card__icon--done`,"aria-hidden":`true`},He={class:`orders-stat-card__value`},Ue={class:`desktop-toolbar`},We={class:`orders-toolbar__pills`,role:`tablist`,"aria-label":`فیلتر وضعیت`},Ge=[`aria-selected`,`onClick`],Ke={key:0,class:`desktop-table-wrap`},qe={class:`desktop-table-scroll`},Je={class:`desktop-table orders-table`},$={class:`orders-table__number`},Ye={class:`orders-table__amount`},Xe={class:`orders-table__date`},Ze={class:`orders-table__actions`},Qe=[`onClick`],$e={type:`button`,class:`orders-table__menu`,"aria-label":`گزینه‌های بیشتر`},et={class:`orders-pagination`},tt={class:`orders-pagination__summary`},nt={class:`orders-pagination__controls`},rt=[`disabled`],it={key:0,class:`orders-pagination__ellipsis`},at=[`onClick`],ot=[`disabled`],st=l({__name:`DesktopOrdersPage`,props:{stats:{},desktopFilter:{},desktopFilterTabs:{},filteredOrders:{},paginatedOrders:{},paginationRange:{},visiblePages:{},currentPage:{},totalPages:{}},emits:[`viewStatFilter`,`setDesktopFilter`,`select`,`setPage`,`newOrder`],setup(e,{emit:r}){let l=r;return(r,u)=>(i(),c(`div`,Te,[u[13]||=d(`header`,{class:`desktop-page__head`},[d(`h1`,{class:`desktop-page__title`},`سفارش‌ها`),d(`p`,{class:`desktop-page__subtitle`},`مدیریت و پیگیری سفارش‌های ثبت شده`)],-1),d(`div`,Ee,[d(`article`,De,[d(`div`,Oe,[u[7]||=d(`span`,{class:`orders-stat-card__label orders-stat-card__label--total`},`همه سفارش‌ها`,-1),d(`span`,ke,[s(O,{size:20})])]),d(`strong`,Ae,f(n(E)(e.stats.total)),1),d(`button`,{type:`button`,class:`orders-stat-card__link`,onClick:u[0]||=e=>l(`viewStatFilter`,`all`)},` مشاهده همه `)]),d(`article`,je,[d(`div`,Me,[u[8]||=d(`span`,{class:`orders-stat-card__label orders-stat-card__label--review`},`در انتظار بررسی`,-1),d(`span`,Ne,[s(Ce,{size:20})])]),d(`strong`,Pe,f(n(E)(e.stats.review)),1),d(`button`,{type:`button`,class:`orders-stat-card__link`,onClick:u[1]||=e=>l(`viewStatFilter`,`review`)},` مشاهده همه `)]),d(`article`,Fe,[d(`div`,Ie,[u[9]||=d(`span`,{class:`orders-stat-card__label orders-stat-card__label--active`},`در حال انجام`,-1),d(`span`,Le,[s(R,{size:20})])]),d(`strong`,Re,f(n(E)(e.stats.inProgress)),1),d(`button`,{type:`button`,class:`orders-stat-card__link`,onClick:u[2]||=e=>l(`viewStatFilter`,`in_progress`)},` مشاهده همه `)]),d(`article`,ze,[d(`div`,Be,[u[10]||=d(`span`,{class:`orders-stat-card__label orders-stat-card__label--done`},`تکمیل شده`,-1),d(`span`,Ve,[s(we,{size:20})])]),d(`strong`,He,f(n(E)(e.stats.done)),1),d(`button`,{type:`button`,class:`orders-stat-card__link`,onClick:u[3]||=e=>l(`viewStatFilter`,`delivered`)},` مشاهده همه `)])]),d(`div`,Ue,[d(`div`,We,[(i(!0),c(h,null,p(e.desktopFilterTabs,t=>(i(),c(`button`,{key:t.id,type:`button`,role:`tab`,class:a([`orders-filter-pill`,{"orders-filter-pill--active":e.desktopFilter===t.id}]),"aria-selected":e.desktopFilter===t.id,onClick:e=>l(`setDesktopFilter`,t.id)},f(t.label),11,Ge))),128))])]),e.filteredOrders.length>0?(i(),c(`div`,Ke,[d(`div`,qe,[d(`table`,Je,[u[11]||=d(`thead`,null,[d(`tr`,null,[d(`th`,{scope:`col`},`شماره سفارش`),d(`th`,{scope:`col`},`شرکت`),d(`th`,{scope:`col`},`مبلغ فاکتور (تومان)`),d(`th`,{scope:`col`},`وضعیت`),d(`th`,{scope:`col`},`تاریخ ثبت`),d(`th`,{scope:`col`},`عملیات`)])],-1),d(`tbody`,null,[(i(!0),c(h,null,p(e.paginatedOrders,e=>(i(),c(`tr`,{key:e.id},[d(`td`,$,f(e.orderNumber),1),d(`td`,null,f(e.companyName),1),d(`td`,Ye,f(e.finalAmount?n(E)(e.finalAmount):`—`),1),d(`td`,null,[s(Q,{status:e.status},null,8,[`status`])]),d(`td`,Xe,f(n(w)(e.createdAt)),1),d(`td`,null,[d(`div`,Ze,[d(`button`,{type:`button`,class:`orders-table__action`,onClick:t=>l(`select`,e.id)},` مشاهده `,8,Qe),d(`button`,$e,[s(z,{size:18})])])])]))),128))])])]),d(`div`,et,[d(`span`,tt,` نمایش `+f(n(E)(e.paginationRange.start))+` تا `+f(n(E)(e.paginationRange.end))+` از `+f(n(E)(e.filteredOrders.length))+` سفارش `,1),d(`div`,nt,[d(`button`,{type:`button`,class:`orders-pagination__arrow`,disabled:e.currentPage<=1,"aria-label":`صفحه قبل`,onClick:u[4]||=t=>l(`setPage`,e.currentPage-1)},[s(N,{size:16,class:`orders-pagination__arrow-icon--prev`})],8,rt),(i(!0),c(h,null,p(e.visiblePages,(t,r)=>(i(),c(h,{key:`${t}-${r}`},[t===`ellipsis`?(i(),c(`span`,it,`…`)):(i(),c(`button`,{key:1,type:`button`,class:a([`orders-pagination__page`,{"orders-pagination__page--active":t===e.currentPage}]),onClick:e=>l(`setPage`,t)},f(n(E)(t)),11,at))],64))),128)),d(`button`,{type:`button`,class:`orders-pagination__arrow`,disabled:e.currentPage>=e.totalPages,"aria-label":`صفحه بعد`,onClick:u[5]||=t=>l(`setPage`,e.currentPage+1)},[s(N,{size:16,class:`orders-pagination__arrow-icon--next`})],8,ot)])])])):(i(),t(P,{key:1,variant:`orders`,message:`هنوز سفارشی ثبت نکرده‌اید`},{default:v(()=>[s(M,{onClick:u[6]||=e=>l(`newOrder`)},{default:v(()=>[...u[12]||=[o(`ثبت سفارش جدید`,-1)]]),_:1})]),_:1}))]))}}),ct={class:`orders-view`},lt={key:0,class:`orders-view__success`,role:`status`},ut=y(l({__name:`OrdersView`,setup(t){let r=g(),{tab:a,desktopFilter:o,stats:l,filteredOrdersMobile:u,filteredOrdersDesktop:d,paginatedOrders:p,paginatedOrdersMobile:m,totalPages:h,mobileTotalPages:_,paginationRange:v,mobilePaginationRange:y,visiblePages:b,mobileVisiblePages:x,currentPage:S,mobilePage:C,companySlug:w,iconVariant:T,submitSuccessMessage:E,goToOrder:D,setPage:O,setMobilePage:k,setDesktopFilter:A,viewStatFilter:j}=J(),M=[{id:`all`,label:`همه`},{id:`active`,label:`در جریان`},{id:`done`,label:`تکمیل شده`},{id:`cancelled`,label:`لغو شده`}],N=[{id:`review`,label:`در انتظار بررسی`},{id:`in_progress`,label:`در حال انجام`},{id:`shipped`,label:`ارسال شده`},{id:`delivered`,label:`تحویل شده`},{id:`cancelled`,label:`لغو شده`}];return(t,g)=>(i(),c(`div`,ct,[n(E)?(i(),c(`p`,lt,f(n(E)),1)):e(``,!0),s(Se,{class:`mobile-only`,tab:n(a),tabs:M,orders:n(m),"total-count":n(u).length,"current-page":n(C),"total-pages":n(_),"pagination-range":n(y),"visible-pages":n(x),"company-slug":n(w),"icon-variant":n(T),"onUpdate:tab":g[0]||=e=>a.value=e,onSelect:n(D),onBack:g[1]||=e=>n(r).push(`/categories`),onSetPage:n(k)},null,8,[`tab`,`orders`,`total-count`,`current-page`,`total-pages`,`pagination-range`,`visible-pages`,`company-slug`,`icon-variant`,`onSelect`,`onSetPage`]),s(st,{class:`desktop-only`,stats:n(l),"desktop-filter":n(o),"desktop-filter-tabs":N,"filtered-orders":n(d),"paginated-orders":n(p),"pagination-range":n(v),"visible-pages":n(b),"current-page":n(S),"total-pages":n(h),onViewStatFilter:n(j),onSetDesktopFilter:n(A),onSelect:n(D),onSetPage:n(O),onNewOrder:g[2]||=e=>n(r).push(`/categories`)},null,8,[`stats`,`desktop-filter`,`filtered-orders`,`paginated-orders`,`pagination-range`,`visible-pages`,`current-page`,`total-pages`,`onViewStatFilter`,`onSetDesktopFilter`,`onSelect`,`onSetPage`])]))}}),[[`__scopeId`,`data-v-8db6efc9`]]);export{ut as default}; \ No newline at end of file diff --git a/dist/assets/OrdersView-BXe3x3fy.js b/dist/assets/OrdersView-BXe3x3fy.js new file mode 100644 index 0000000..e1f1cfe --- /dev/null +++ b/dist/assets/OrdersView-BXe3x3fy.js @@ -0,0 +1 @@ +import{At as e,F as t,G as n,I as r,M as i,Pt as a,U as o,_ as s,c,d as l,f as u,g as d,i as f,k as p,l as m,nt as h,t as g,u as _,ut as v,v as y}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{t as b}from"./BasicIcon-Bzeb0Iwd.js";import{d as x,i as S,n as C,o as w}from"./format-C72AoJ2H.js";import{t as T}from"./catalog-BHsy1JeE.js";import{D as E,M as D,c as O,d as k,i as A,j,n as M,o as N}from"./index-BrjLizie.js";import{t as P}from"./EmptyState-D72g65G-.js";import{r as F,t as I}from"./constants-DXXK14Zz.js";import{t as L}from"./IconChevronBack-CDeN0Cbu.js";import{t as R}from"./IconProgressClock-C2Emr6X3.js";import"./IconFilter-DgpHKrEL.js";import{t as z}from"./IconMoreVertical-DxvtLM6t.js";var B=[`awaiting_review`,`awaiting_check_review`],V=[`submitted`,`pricing`,`check_in_progress`,`awaiting_cash_confirmation`,`preparing`,`ready_to_ship`,`needs_correction`,`awaiting_settlement_fix`,`cash_in_progress`,`awaiting_cash_payment`,`cash_payment_submitted`,`check_needs_fix`,`awaiting_settlement`,`cash_invoice_issued`],H=[`shipped`],U=[`delivered`,`final_approved`,`checks_approved`,`cash_confirmed`],W=[`cancelled`,`rejected`,`expired`,`check_rejected`],ee=[...B,...V,...H];function te(e,t){switch(t){case`review`:return B.includes(e);case`in_progress`:return V.includes(e);case`shipped`:return H.includes(e);case`delivered`:return U.includes(e);case`cancelled`:return W.includes(e);default:return!0}}function G(e,t){return t===`active`?ee.includes(e):t===`done`?U.includes(e):t!==`cancelled`||W.includes(e)}var K=5,q=5;function J(){let e=D(),t=j(),n=k(),r=O(),i=T(),a=h(1),s=h(1),l=h(``);p(async()=>{await Promise.all([n.hydrate(),i.loadCompanies()])}),o(()=>t.query.submitted,n=>{let r=Number(n);if(!Number.isFinite(r)||r<1){l.value=``;return}l.value=r===1?`پیش‌سفارش با موفقیت ثبت شد.`:`${x(String(r))} پیش‌سفارش (برای شرکت‌های مختلف) ثبت شد.`;let{submitted:i,...a}=t.query;e.replace({query:a})},{immediate:!0});let u=c({get:()=>e.currentRoute.value.query.tab??`all`,set:t=>e.replace({query:{...e.currentRoute.value.query,tab:t}})}),d=c({get:()=>e.currentRoute.value.query.filter??`all`,set:t=>e.replace({query:{...e.currentRoute.value.query,filter:t===`all`?void 0:t}})}),f=c(()=>e.currentRoute.value.query.q??``),m=c(()=>r.user?n.userOrders(r.user.id):[]),g=c(()=>({total:m.value.length,review:m.value.filter(e=>B.includes(e.status)).length,inProgress:m.value.filter(e=>V.includes(e.status)).length,done:m.value.filter(e=>U.includes(e.status)).length}));function _(e,t){if(!t.trim())return!0;let n=t.trim().toLowerCase();return e.orderNumber.toLowerCase().includes(n)||e.companyName.toLowerCase().includes(n)}let v=c(()=>m.value.filter(e=>_(e,f.value)).filter(e=>G(e.status,u.value))),y=c(()=>m.value.filter(e=>_(e,f.value)).filter(e=>te(e.status,d.value))),b=c(()=>{let e=(a.value-1)*K;return y.value.slice(e,e+K)}),S=c(()=>Math.max(1,Math.ceil(y.value.length/K))),C=c(()=>y.value.length===0?{start:0,end:0}:{start:(a.value-1)*K+1,end:Math.min(a.value*K,y.value.length)}),w=c(()=>{let e=S.value,t=a.value;if(e<=7)return Array.from({length:e},(e,t)=>t+1);let n=[1];t>3&&n.push(`ellipsis`);let r=Math.max(2,t-1),i=Math.min(e-1,t+1);for(let e=r;e<=i;e+=1)n.push(e);return t1&&n.push(e),n}),E=c(()=>Math.max(1,Math.ceil(v.value.length/q))),A=c(()=>{let e=(s.value-1)*q;return v.value.slice(e,e+q)}),M=c(()=>v.value.length===0?{start:0,end:0}:{start:(s.value-1)*q+1,end:Math.min(s.value*q,v.value.length)}),N=c(()=>{let e=E.value,t=s.value;if(e<=5)return Array.from({length:e},(e,t)=>t+1);let n=[1];t>3&&n.push(`ellipsis`);let r=Math.max(2,t-1),i=Math.min(e-1,t+1);for(let e=r;e<=i;e+=1)n.push(e);return t1&&n.push(e),n});o([y,d,f],()=>{a.value=1}),o([v,u,f],()=>{s.value=1});function P(e){return i.getCompany(e.companyId)?.slug??`par`}function F(e){return U.includes(e.status)?`success`:P(e)===`fam-baft`?`fam-baft`:`par`}function I(t){e.push(`/orders/${t}`)}function L(e){e<1||e>S.value||(a.value=e)}function R(e){e<1||e>E.value||(s.value=e)}function z(e){d.value=d.value===e&&e!==`all`?`all`:e}function H(e){d.value=e}return{tab:u,desktopFilter:d,searchQuery:f,stats:g,filteredOrdersMobile:v,filteredOrdersDesktop:y,paginatedOrders:b,paginatedOrdersMobile:A,totalPages:S,mobileTotalPages:E,paginationRange:C,mobilePaginationRange:M,visiblePages:w,mobileVisiblePages:N,currentPage:a,mobilePage:s,companySlug:P,iconVariant:F,submitSuccessMessage:l,goToOrder:I,setPage:L,setMobilePage:R,setDesktopFilter:z,viewStatFilter:H}}var Y=[`aria-selected`,`onClick`],X=g(y({__name:`FilterTabs`,props:{modelValue:{},tabs:{},equal:{type:Boolean}},emits:[`update:modelValue`],setup(n){return(r,o)=>(i(),u(`div`,{class:e([`filter-tabs`,{"filter-tabs--equal":n.equal}]),role:`tablist`},[(i(!0),u(f,null,t(n.tabs,t=>(i(),u(`button`,{key:t.id,type:`button`,role:`tab`,class:e([`filter-tab`,{active:n.modelValue===t.id}]),"aria-selected":n.modelValue===t.id,onClick:e=>r.$emit(`update:modelValue`,t.id)},a(t.label),11,Y))),128))],2))}}),[[`__scopeId`,`data-v-4cd20e9b`]]),Z=g(y({__name:`BaseBadge`,props:{variant:{}},setup(t){return(n,a)=>(i(),u(`span`,{class:e([`badge`,`badge-${t.variant??`neutral`}`])},[r(n.$slots,`default`,{},void 0,!0)],2))}}),[[`__scopeId`,`data-v-5e1be8f4`]]),Q=y({__name:`StatusBadge`,props:{status:{}},setup(e){let t=e,r=c(()=>I[t.status]??t.status),o=c(()=>F[t.status]??`neutral`);return(e,t)=>(i(),_(Z,{variant:o.value},{default:n(()=>[d(a(r.value),1)]),_:1},8,[`variant`]))}}),ne=[`width`,`height`],re=g(y({__name:`IconParLogo`,props:{size:{default:72}},setup(e){return(t,n)=>(i(),u(`svg`,{class:`icon-logo`,width:e.size,height:e.size,viewBox:`0 0 72 72`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,"aria-hidden":`true`},[...n[0]||=[m(`text`,{x:`36`,y:`50`,"text-anchor":`middle`,"dominant-baseline":`middle`,fill:`currentColor`,style:{"font-family":`IRANSans, Tahoma, sans-serif`,"font-size":`48px`,"font-weight":`700`}},` پ `,-1)]],8,ne))}}),[[`__scopeId`,`data-v-beccd0f1`]]),ie=[`width`,`height`],ae=g(y({__name:`IconFamBaftLogo`,props:{size:{default:72}},setup(e){return(t,n)=>(i(),u(`svg`,{class:`icon-logo`,width:e.size,height:e.size,viewBox:`0 0 72 72`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,"aria-hidden":`true`},[...n[0]||=[m(`g`,{fill:`currentColor`},[m(`rect`,{x:`14`,y:`14`,width:`28`,height:`28`,rx:`4`,transform:`rotate(12 28 28)`}),m(`rect`,{x:`30`,y:`30`,width:`28`,height:`28`,rx:`4`,transform:`rotate(-12 44 44)`})],-1)]],8,ie))}}),[[`__scopeId`,`data-v-bbb3dcd8`]]),oe={class:`page orders-mobile-page`},se={class:`orders-mobile-page__nav`},ce={class:`page__scroll page__scroll--with-nav orders-mobile-page__scroll`},le={key:0,class:`orders-mobile-page__list`},ue=[`onClick`],de={class:`order-card__content`},fe={class:`order-card__number`},pe={class:`order-card__company`},me={key:0,class:`order-card__amount`},he={key:2,class:`orders-mobile-pagination`},ge={class:`orders-mobile-pagination__summary`},_e={class:`orders-mobile-pagination__controls`},ve=[`disabled`],ye={key:0,class:`orders-mobile-pagination__ellipsis`},be=[`onClick`],xe=[`disabled`],Se=g(y({__name:`MobileOrdersPage`,props:{tab:{},tabs:{},orders:{},totalCount:{},currentPage:{},totalPages:{},paginationRange:{},visiblePages:{},companySlug:{type:Function},iconVariant:{type:Function}},emits:[`update:tab`,`select`,`back`,`set-page`],setup(r,{emit:o}){let c=o;return(o,p)=>(i(),u(`div`,oe,[m(`header`,se,[m(`button`,{type:`button`,class:`nav-btn`,"aria-label":`بازگشت`,onClick:p[0]||=e=>c(`back`)},[s(L,{size:20})]),p[5]||=m(`h1`,{class:`orders-mobile-page__title`},`سفارش‌ها`,-1),s(A,{variant:`inline`})]),s(X,{"model-value":r.tab,tabs:r.tabs,equal:``,class:`orders-mobile-page__tabs`,"onUpdate:modelValue":p[1]||=e=>c(`update:tab`,e)},null,8,[`model-value`,`tabs`]),m(`div`,ce,[r.orders.length>0?(i(),u(`div`,le,[(i(!0),u(f,null,t(r.orders,t=>(i(),u(`button`,{key:t.id,type:`button`,class:`order-card`,onClick:e=>c(`select`,t.id)},[m(`div`,de,[p[6]||=m(`span`,{class:`order-card__label`},`سفارش شماره`,-1),m(`strong`,fe,a(t.orderNumber),1),m(`p`,pe,a(t.companyName),1),t.finalAmount?(i(),u(`p`,me,a(v(C)(t.finalAmount)),1)):l(``,!0),s(Q,{status:t.status,class:`order-card__badge`},null,8,[`status`])]),m(`span`,{class:e([`order-card__icon`,`order-card__icon--${r.iconVariant(t)}`])},[r.companySlug(t)===`fam-baft`?(i(),_(ae,{key:0,size:36})):(i(),_(re,{key:1,size:36}))],2)],8,ue))),128))])):(i(),_(P,{key:1,variant:`orders`,message:`هنوز سفارشی ثبت نکرده‌اید`},{default:n(()=>[s(M,{onClick:p[2]||=e=>c(`back`)},{default:n(()=>[...p[7]||=[d(`ثبت سفارش جدید`,-1)]]),_:1})]),_:1})),r.totalCount>0?(i(),u(`div`,he,[m(`p`,ge,a(v(x)(String(r.paginationRange.start)))+`– `+a(v(x)(String(r.paginationRange.end)))+` از `+a(v(w)(r.totalCount)),1),m(`div`,_e,[m(`button`,{type:`button`,class:`orders-mobile-pagination__arrow`,disabled:r.currentPage<=1,"aria-label":`صفحه قبل`,onClick:p[3]||=e=>c(`set-page`,r.currentPage-1)},[s(N,{size:16,class:`orders-mobile-pagination__arrow--prev`})],8,ve),(i(!0),u(f,null,t(r.visiblePages,(t,n)=>(i(),u(f,{key:`${t}-${n}`},[t===`ellipsis`?(i(),u(`span`,ye,`…`)):(i(),u(`button`,{key:1,type:`button`,class:e([`orders-mobile-pagination__page`,{"orders-mobile-pagination__page--active":t===r.currentPage}]),onClick:e=>c(`set-page`,t)},a(v(x)(String(t))),11,be))],64))),128)),m(`button`,{type:`button`,class:`orders-mobile-pagination__arrow`,disabled:r.currentPage>=r.totalPages,"aria-label":`صفحه بعد`,onClick:p[4]||=e=>c(`set-page`,r.currentPage+1)},[s(N,{size:16,class:`orders-mobile-pagination__arrow--next`})],8,xe)])])):l(``,!0)])]))}}),[[`__scopeId`,`data-v-de30513b`]]),Ce=y({__name:`IconHourglass`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(i(),_(b,{icon:`vuesax-linear:timer-1`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),we=y({__name:`IconCheckCircleOutline`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(i(),_(b,{icon:`vuesax-linear:tick-circle`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),Te={class:`desktop-page orders-desktop-page`},Ee={class:`orders-stats desktop-grid-4`},De={class:`orders-stat-card`},Oe={class:`orders-stat-card__head`},ke={class:`orders-stat-card__icon orders-stat-card__icon--total`,"aria-hidden":`true`},Ae={class:`orders-stat-card__value`},je={class:`orders-stat-card`},Me={class:`orders-stat-card__head`},Ne={class:`orders-stat-card__icon orders-stat-card__icon--review`,"aria-hidden":`true`},Pe={class:`orders-stat-card__value`},Fe={class:`orders-stat-card`},Ie={class:`orders-stat-card__head`},Le={class:`orders-stat-card__icon orders-stat-card__icon--active`,"aria-hidden":`true`},Re={class:`orders-stat-card__value`},ze={class:`orders-stat-card`},Be={class:`orders-stat-card__head`},Ve={class:`orders-stat-card__icon orders-stat-card__icon--done`,"aria-hidden":`true`},He={class:`orders-stat-card__value`},Ue={class:`desktop-toolbar`},We={class:`orders-toolbar__pills`,role:`tablist`,"aria-label":`فیلتر وضعیت`},Ge=[`aria-selected`,`onClick`],Ke={key:0,class:`desktop-table-wrap`},qe={class:`desktop-table-scroll`},Je={class:`desktop-table orders-table`},$={class:`orders-table__number`},Ye={class:`orders-table__amount`},Xe={class:`orders-table__date`},Ze={class:`orders-table__actions`},Qe=[`onClick`],$e={type:`button`,class:`orders-table__menu`,"aria-label":`گزینه‌های بیشتر`},et={class:`orders-pagination`},tt={class:`orders-pagination__summary`},nt={class:`orders-pagination__controls`},rt=[`disabled`],it={key:0,class:`orders-pagination__ellipsis`},at=[`onClick`],ot=[`disabled`],st=y({__name:`DesktopOrdersPage`,props:{stats:{},desktopFilter:{},desktopFilterTabs:{},filteredOrders:{},paginatedOrders:{},paginationRange:{},visiblePages:{},currentPage:{},totalPages:{}},emits:[`viewStatFilter`,`setDesktopFilter`,`select`,`setPage`,`newOrder`],setup(r,{emit:o}){let c=o;return(o,l)=>(i(),u(`div`,Te,[l[13]||=m(`header`,{class:`desktop-page__head`},[m(`h1`,{class:`desktop-page__title`},`سفارش‌ها`),m(`p`,{class:`desktop-page__subtitle`},`مدیریت و پیگیری سفارش‌های ثبت شده`)],-1),m(`div`,Ee,[m(`article`,De,[m(`div`,Oe,[l[7]||=m(`span`,{class:`orders-stat-card__label orders-stat-card__label--total`},`همه سفارش‌ها`,-1),m(`span`,ke,[s(E,{size:20})])]),m(`strong`,Ae,a(v(w)(r.stats.total)),1),m(`button`,{type:`button`,class:`orders-stat-card__link`,onClick:l[0]||=e=>c(`viewStatFilter`,`all`)},` مشاهده همه `)]),m(`article`,je,[m(`div`,Me,[l[8]||=m(`span`,{class:`orders-stat-card__label orders-stat-card__label--review`},`در انتظار بررسی`,-1),m(`span`,Ne,[s(Ce,{size:20})])]),m(`strong`,Pe,a(v(w)(r.stats.review)),1),m(`button`,{type:`button`,class:`orders-stat-card__link`,onClick:l[1]||=e=>c(`viewStatFilter`,`review`)},` مشاهده همه `)]),m(`article`,Fe,[m(`div`,Ie,[l[9]||=m(`span`,{class:`orders-stat-card__label orders-stat-card__label--active`},`در حال انجام`,-1),m(`span`,Le,[s(R,{size:20})])]),m(`strong`,Re,a(v(w)(r.stats.inProgress)),1),m(`button`,{type:`button`,class:`orders-stat-card__link`,onClick:l[2]||=e=>c(`viewStatFilter`,`in_progress`)},` مشاهده همه `)]),m(`article`,ze,[m(`div`,Be,[l[10]||=m(`span`,{class:`orders-stat-card__label orders-stat-card__label--done`},`تکمیل شده`,-1),m(`span`,Ve,[s(we,{size:20})])]),m(`strong`,He,a(v(w)(r.stats.done)),1),m(`button`,{type:`button`,class:`orders-stat-card__link`,onClick:l[3]||=e=>c(`viewStatFilter`,`delivered`)},` مشاهده همه `)])]),m(`div`,Ue,[m(`div`,We,[(i(!0),u(f,null,t(r.desktopFilterTabs,t=>(i(),u(`button`,{key:t.id,type:`button`,role:`tab`,class:e([`orders-filter-pill`,{"orders-filter-pill--active":r.desktopFilter===t.id}]),"aria-selected":r.desktopFilter===t.id,onClick:e=>c(`setDesktopFilter`,t.id)},a(t.label),11,Ge))),128))])]),r.filteredOrders.length>0?(i(),u(`div`,Ke,[m(`div`,qe,[m(`table`,Je,[l[11]||=m(`thead`,null,[m(`tr`,null,[m(`th`,{scope:`col`},`شماره سفارش`),m(`th`,{scope:`col`},`شرکت`),m(`th`,{scope:`col`},`مبلغ فاکتور (تومان)`),m(`th`,{scope:`col`},`وضعیت`),m(`th`,{scope:`col`},`تاریخ ثبت`),m(`th`,{scope:`col`},`عملیات`)])],-1),m(`tbody`,null,[(i(!0),u(f,null,t(r.paginatedOrders,e=>(i(),u(`tr`,{key:e.id},[m(`td`,$,a(e.orderNumber),1),m(`td`,null,a(e.companyName),1),m(`td`,Ye,a(e.finalAmount?v(w)(e.finalAmount):`—`),1),m(`td`,null,[s(Q,{status:e.status},null,8,[`status`])]),m(`td`,Xe,a(v(S)(e.createdAt)),1),m(`td`,null,[m(`div`,Ze,[m(`button`,{type:`button`,class:`orders-table__action`,onClick:t=>c(`select`,e.id)},` مشاهده `,8,Qe),m(`button`,$e,[s(z,{size:18})])])])]))),128))])])]),m(`div`,et,[m(`span`,tt,` نمایش `+a(v(w)(r.paginationRange.start))+` تا `+a(v(w)(r.paginationRange.end))+` از `+a(v(w)(r.filteredOrders.length))+` سفارش `,1),m(`div`,nt,[m(`button`,{type:`button`,class:`orders-pagination__arrow`,disabled:r.currentPage<=1,"aria-label":`صفحه قبل`,onClick:l[4]||=e=>c(`setPage`,r.currentPage-1)},[s(N,{size:16,class:`orders-pagination__arrow-icon--prev`})],8,rt),(i(!0),u(f,null,t(r.visiblePages,(t,n)=>(i(),u(f,{key:`${t}-${n}`},[t===`ellipsis`?(i(),u(`span`,it,`…`)):(i(),u(`button`,{key:1,type:`button`,class:e([`orders-pagination__page`,{"orders-pagination__page--active":t===r.currentPage}]),onClick:e=>c(`setPage`,t)},a(v(w)(t)),11,at))],64))),128)),m(`button`,{type:`button`,class:`orders-pagination__arrow`,disabled:r.currentPage>=r.totalPages,"aria-label":`صفحه بعد`,onClick:l[5]||=e=>c(`setPage`,r.currentPage+1)},[s(N,{size:16,class:`orders-pagination__arrow-icon--next`})],8,ot)])])])):(i(),_(P,{key:1,variant:`orders`,message:`هنوز سفارشی ثبت نکرده‌اید`},{default:n(()=>[s(M,{onClick:l[6]||=e=>c(`newOrder`)},{default:n(()=>[...l[12]||=[d(`ثبت سفارش جدید`,-1)]]),_:1})]),_:1}))]))}}),ct={class:`orders-view`},lt={key:0,class:`orders-view__success`,role:`status`},ut=g(y({__name:`OrdersView`,setup(e){let t=D(),{tab:n,desktopFilter:r,stats:o,filteredOrdersMobile:c,filteredOrdersDesktop:d,paginatedOrders:f,paginatedOrdersMobile:p,totalPages:m,mobileTotalPages:h,paginationRange:g,mobilePaginationRange:_,visiblePages:y,mobileVisiblePages:b,currentPage:x,mobilePage:S,companySlug:C,iconVariant:w,submitSuccessMessage:T,goToOrder:E,setPage:O,setMobilePage:k,setDesktopFilter:A,viewStatFilter:j}=J(),M=[{id:`all`,label:`همه`},{id:`active`,label:`در جریان`},{id:`done`,label:`تکمیل شده`},{id:`cancelled`,label:`لغو شده`}],N=[{id:`review`,label:`در انتظار بررسی`},{id:`in_progress`,label:`در حال انجام`},{id:`shipped`,label:`ارسال شده`},{id:`delivered`,label:`تحویل شده`},{id:`cancelled`,label:`لغو شده`}];return(e,D)=>(i(),u(`div`,ct,[v(T)?(i(),u(`p`,lt,a(v(T)),1)):l(``,!0),s(Se,{class:`mobile-only`,tab:v(n),tabs:M,orders:v(p),"total-count":v(c).length,"current-page":v(S),"total-pages":v(h),"pagination-range":v(_),"visible-pages":v(b),"company-slug":v(C),"icon-variant":v(w),"onUpdate:tab":D[0]||=e=>n.value=e,onSelect:v(E),onBack:D[1]||=e=>v(t).push(`/categories`),onSetPage:v(k)},null,8,[`tab`,`orders`,`total-count`,`current-page`,`total-pages`,`pagination-range`,`visible-pages`,`company-slug`,`icon-variant`,`onSelect`,`onSetPage`]),s(st,{class:`desktop-only`,stats:v(o),"desktop-filter":v(r),"desktop-filter-tabs":N,"filtered-orders":v(d),"paginated-orders":v(f),"pagination-range":v(g),"visible-pages":v(y),"current-page":v(x),"total-pages":v(m),onViewStatFilter:v(j),onSetDesktopFilter:v(A),onSelect:v(E),onSetPage:v(O),onNewOrder:D[2]||=e=>v(t).push(`/categories`)},null,8,[`stats`,`desktop-filter`,`filtered-orders`,`paginated-orders`,`pagination-range`,`visible-pages`,`current-page`,`total-pages`,`onViewStatFilter`,`onSetDesktopFilter`,`onSelect`,`onSetPage`])]))}}),[[`__scopeId`,`data-v-8db6efc9`]]);export{ut as default}; \ No newline at end of file diff --git a/dist/assets/OtpView-CsrAaJgf.js b/dist/assets/OtpView-CsrAaJgf.js deleted file mode 100644 index cd117bf..0000000 --- a/dist/assets/OtpView-CsrAaJgf.js +++ /dev/null @@ -1 +0,0 @@ -import{D as e,Et as t,G as n,H as r,J as i,Kt as a,M as o,N as s,O as c,P as l,T as u,Xt as d,Z as f,b as p,g as ee,h as te,t as m,vt as h,w as g}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";import{u as ne}from"./BasicIcon-BXxbbWA_.js";import{l as re}from"./dist-nK9ByyUG.js";import{d as _,l as ie,t as v}from"./format-C72AoJ2H.js";import{_ as ae,c as oe,h as se,o as ce}from"./index-BAQfYU-Q.js";import{t as le}from"./IconChevronBack-DfGoZJJk.js";import{t as ue}from"./FormErrorBanner-DI5hhxpk.js";import{n as de,r as y,t as fe}from"./formErrors-DglFjYkZ.js";import{t as b}from"./login-fabric-CzrIXTnD.js";import{t as pe}from"./IconEditPen-LGjdaNbi.js";var me={class:`page otp-page`},he=[`src`],ge={class:`otp-page__scroll`},x={class:`otp-page__stage`},S={class:`otp-top`},C={class:`otp-brand`},w={class:`otp-card__lead`},T={dir:`ltr`},E={class:`otp-row`,dir:`ltr`,role:`group`,"aria-label":`کد تأیید`},D=[`id`,`value`,`aria-label`,`onInput`,`onKeydown`,`onPaste`],O={key:0,class:`otp-card__error`},k=[`disabled`],A={key:0,class:`otp-submit__spinner`,"aria-hidden":`true`},j={class:`otp-submit__chevron`,"aria-hidden":`true`},M=[`disabled`],N={dir:`ltr`},P=4,F=60,I=m(l({__name:`OtpView`,setup(l){let m=te(),I=ee(),L=oe(),R=g(()=>{let e=m.query.phone,t=Array.isArray(e)?e[0]:e;return ie(typeof t==`string`?t:``)}),z=g(()=>m.query.mode===`register`),B=h(Array.from({length:P},()=>``)),V=h([]),H=h({}),U=h(``),W=h(F),G=g(()=>B.value.join(``)),K=g(()=>W.value<=0&&!L.loading),_e=g(()=>{let e=Math.floor(W.value/60),t=W.value%60,n=`${String(e).padStart(2,`0`)}:${String(t).padStart(2,`0`)}`;return _(n)}),{pause:ve,resume:ye}=re(()=>{if(W.value<=1){W.value=0,ve();return}--W.value},1e3,{immediate:!1});function q(){H.value=de(H.value,`code`),y(H.value)||(U.value=``)}function be(e,t){V.value[t]=e}function J(e){let t=Math.max(0,Math.min(3,e));r(()=>V.value[t]?.focus())}function Y(){W.value=F,ye()}function X(e,t=0){let n=v(e).slice(0,P-t);if(!n)return t;let r=[...B.value],i=t;for(let e of n){if(i>=P)break;r[i]=e,i+=1}return B.value=r,q(),Math.min(i,3)}function Z(){G.value.length===P&&!L.loading&&$()}function Q(e,t){let n=t.target,r=v(n.value);if(r.length>1){let t=X(r,e);n.value=B.value[e]??``,J(t),Z();return}let i=r.slice(-1);B.value[e]=i,n.value=i,q(),i&&e<3?J(e+1):i&&Z()}function xe(e,t){if(t.key===`Backspace`){if(B.value[e]){B.value[e]=``,q();return}e>0&&(B.value[e-1]=``,q(),J(e-1));return}if(t.key===`ArrowLeft`){t.preventDefault(),J(e-1);return}t.key===`ArrowRight`&&(t.preventDefault(),J(e+1))}function Se(e,t){t.preventDefault(),J(X(t.clipboardData?.getData(`text`)??``,e)),Z()}function Ce(e){return e?_(e):``}async function $(){if(L.loading)return;H.value={},U.value=``;let e={};if(G.value.length``),J(0))}async function we(){if(!K.value)return;U.value=``,H.value={};let e=z.value?se():null;if(z.value&&!e){U.value=`برای ارسال مجدد کد، نام و نام خانوادگی لازم است. لطفاً دوباره ثبت‌نام را شروع کنید.`;return}let t=await L.requestOtp(R.value,{isRegister:z.value,firstName:e?.firstName,lastName:e?.lastName});t.success?(B.value=Array.from({length:P},()=>``),Y(),J(0)):U.value=t.message??`خطا در ارسال مجدد کد.`}function Te(){I.replace({name:z.value?`register`:`login`})}return n(()=>{if(!R.value){I.replace({name:`login`});return}Y(),J(0)}),(n,r)=>(i(),c(`div`,me,[u(`img`,{class:`otp-page__bg`,src:t(b),alt:``},null,8,he),u(`div`,ge,[u(`div`,x,[u(`header`,S,[u(`button`,{type:`button`,class:`otp-top__back`,"aria-label":`بازگشت`,onClick:r[0]||=e=>t(I).push(z.value?`/register`:`/login`)},[s(le,{size:20})])]),u(`div`,C,[s(ae,{size:72}),r[1]||=u(`h1`,{class:`otp-brand__fa`},`نادمی تکس`,-1),r[2]||=u(`p`,{class:`otp-brand__en`},`NADEMITEX`,-1)]),u(`form`,{class:`otp-card`,onSubmit:ne($,[`prevent`])},[r[7]||=u(`h2`,{class:`otp-card__title`},`تأیید موبایل`,-1),u(`p`,w,[r[3]||=o(` کد ارسال‌شده به `,-1),u(`span`,T,d(t(_)(R.value)),1),r[4]||=o(` را وارد کنید. `,-1)]),s(ue,{message:U.value},null,8,[`message`]),u(`div`,E,[(i(!0),c(p,null,f(B.value,(e,n)=>(i(),c(`input`,{id:`otp-${n}`,key:n,ref_for:!0,ref:e=>be(e,n),class:a([`otp-box`,{"otp-box--error":H.value.code}]),type:`text`,inputmode:`numeric`,autocomplete:`one-time-code`,maxlength:`1`,value:Ce(e),"aria-label":`رقم ${t(_)(String(n+1))}`,onInput:e=>Q(n,e),onKeydown:e=>xe(n,e),onPaste:e=>Se(n,e)},null,42,D))),128))]),H.value.code?(i(),c(`p`,O,d(H.value.code),1)):e(``,!0),u(`button`,{class:`otp-submit`,type:`submit`,disabled:t(L).loading},[t(L).loading?(i(),c(`span`,A)):e(``,!0),u(`span`,j,[s(ce,{size:18,color:`#F4EDE4`})]),r[5]||=u(`span`,null,`تأیید و ورود`,-1)],8,k),u(`button`,{class:`otp-resend`,type:`button`,disabled:!K.value,onClick:we},[K.value?(i(),c(p,{key:0},[o(`ارسال مجدد کد`)],64)):(i(),c(p,{key:1},[o(`ارسال مجدد کد (`+d(_e.value)+`)`,1)],64))],8,M),u(`button`,{type:`button`,class:`otp-edit`,onClick:Te},[u(`span`,N,d(t(_)(R.value)),1),r[6]||=u(`span`,null,`ویرایش شماره`,-1),s(pe,{size:16,"stroke-width":1.5})])],32),r[8]||=u(`div`,{class:`otp-spacer`,"aria-hidden":`true`},null,-1),r[9]||=u(`p`,{class:`otp-watermark`},[o(`MORE`),u(`br`),o(`THAN`),u(`br`),o(`FABRIC`)],-1)])])]))}}),[[`__scopeId`,`data-v-db716981`]]);export{I as default}; \ No newline at end of file diff --git a/dist/assets/OtpView-DEZNJ86U.js b/dist/assets/OtpView-DEZNJ86U.js new file mode 100644 index 0000000..12bd8f2 --- /dev/null +++ b/dist/assets/OtpView-DEZNJ86U.js @@ -0,0 +1 @@ +import{At as e,E as t,F as n,M as r,Pt as i,_ as a,c as o,d as s,f as c,g as l,i as u,k as d,l as f,nt as p,t as ee,ut as m,v as h}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{u as g}from"./BasicIcon-Bzeb0Iwd.js";import{l as _}from"./dist-U-AqZ6hP.js";import{d as v,l as te,t as y}from"./format-C72AoJ2H.js";import{M as ne,_ as re,c as ie,h as ae,j as oe,o as se}from"./index-BrjLizie.js";import{t as ce}from"./IconChevronBack-CDeN0Cbu.js";import{t as le}from"./FormErrorBanner-Ud1D04xf.js";import{n as ue,r as b,t as de}from"./formErrors-DglFjYkZ.js";import{t as x}from"./login-fabric-CzrIXTnD.js";import{t as fe}from"./IconEditPen-DkMxper9.js";var pe={class:`page otp-page`},me=[`src`],he={class:`otp-page__scroll`},ge={class:`otp-page__stage`},S={class:`otp-top`},C={class:`otp-brand`},w={class:`otp-card__lead`},T={dir:`ltr`},E={class:`otp-row`,dir:`ltr`,role:`group`,"aria-label":`کد تأیید`},D=[`id`,`value`,`aria-label`,`onInput`,`onKeydown`,`onPaste`],O={key:0,class:`otp-card__error`},k=[`disabled`],A={key:0,class:`otp-submit__spinner`,"aria-hidden":`true`},j={class:`otp-submit__chevron`,"aria-hidden":`true`},M=[`disabled`],N={dir:`ltr`},P=4,F=60,I=ee(h({__name:`OtpView`,setup(ee){let h=oe(),I=ne(),L=ie(),R=o(()=>{let e=h.query.phone,t=Array.isArray(e)?e[0]:e;return te(typeof t==`string`?t:``)}),z=o(()=>h.query.mode===`register`),B=p(Array.from({length:P},()=>``)),V=p([]),H=p({}),U=p(``),W=p(F),G=o(()=>B.value.join(``)),K=o(()=>W.value<=0&&!L.loading),_e=o(()=>{let e=Math.floor(W.value/60),t=W.value%60,n=`${String(e).padStart(2,`0`)}:${String(t).padStart(2,`0`)}`;return v(n)}),{pause:ve,resume:ye}=_(()=>{if(W.value<=1){W.value=0,ve();return}--W.value},1e3,{immediate:!1});function q(){H.value=ue(H.value,`code`),b(H.value)||(U.value=``)}function be(e,t){V.value[t]=e}function J(e){let n=Math.max(0,Math.min(3,e));t(()=>V.value[n]?.focus())}function Y(){W.value=F,ye()}function X(e,t=0){let n=y(e).slice(0,P-t);if(!n)return t;let r=[...B.value],i=t;for(let e of n){if(i>=P)break;r[i]=e,i+=1}return B.value=r,q(),Math.min(i,3)}function Z(){G.value.length===P&&!L.loading&&$()}function Q(e,t){let n=t.target,r=y(n.value);if(r.length>1){let t=X(r,e);n.value=B.value[e]??``,J(t),Z();return}let i=r.slice(-1);B.value[e]=i,n.value=i,q(),i&&e<3?J(e+1):i&&Z()}function xe(e,t){if(t.key===`Backspace`){if(B.value[e]){B.value[e]=``,q();return}e>0&&(B.value[e-1]=``,q(),J(e-1));return}if(t.key===`ArrowLeft`){t.preventDefault(),J(e-1);return}t.key===`ArrowRight`&&(t.preventDefault(),J(e+1))}function Se(e,t){t.preventDefault(),J(X(t.clipboardData?.getData(`text`)??``,e)),Z()}function Ce(e){return e?v(e):``}async function $(){if(L.loading)return;H.value={},U.value=``;let e={};if(G.value.length``),J(0))}async function we(){if(!K.value)return;U.value=``,H.value={};let e=z.value?ae():null;if(z.value&&!e){U.value=`برای ارسال مجدد کد، نام و نام خانوادگی لازم است. لطفاً دوباره ثبت‌نام را شروع کنید.`;return}let t=await L.requestOtp(R.value,{isRegister:z.value,firstName:e?.firstName,lastName:e?.lastName});t.success?(B.value=Array.from({length:P},()=>``),Y(),J(0)):U.value=t.message??`خطا در ارسال مجدد کد.`}function Te(){I.replace({name:z.value?`register`:`login`})}return d(()=>{if(!R.value){I.replace({name:`login`});return}Y(),J(0)}),(t,o)=>(r(),c(`div`,pe,[f(`img`,{class:`otp-page__bg`,src:m(x),alt:``},null,8,me),f(`div`,he,[f(`div`,ge,[f(`header`,S,[f(`button`,{type:`button`,class:`otp-top__back`,"aria-label":`بازگشت`,onClick:o[0]||=e=>m(I).push(z.value?`/register`:`/login`)},[a(ce,{size:20})])]),f(`div`,C,[a(re,{size:72}),o[1]||=f(`h1`,{class:`otp-brand__fa`},`نادمی تکس`,-1),o[2]||=f(`p`,{class:`otp-brand__en`},`NADEMITEX`,-1)]),f(`form`,{class:`otp-card`,onSubmit:g($,[`prevent`])},[o[7]||=f(`h2`,{class:`otp-card__title`},`تأیید موبایل`,-1),f(`p`,w,[o[3]||=l(` کد ارسال‌شده به `,-1),f(`span`,T,i(m(v)(R.value)),1),o[4]||=l(` را وارد کنید. `,-1)]),a(le,{message:U.value},null,8,[`message`]),f(`div`,E,[(r(!0),c(u,null,n(B.value,(t,n)=>(r(),c(`input`,{id:`otp-${n}`,key:n,ref_for:!0,ref:e=>be(e,n),class:e([`otp-box`,{"otp-box--error":H.value.code}]),type:`text`,inputmode:`numeric`,autocomplete:`one-time-code`,maxlength:`1`,value:Ce(t),"aria-label":`رقم ${m(v)(String(n+1))}`,onInput:e=>Q(n,e),onKeydown:e=>xe(n,e),onPaste:e=>Se(n,e)},null,42,D))),128))]),H.value.code?(r(),c(`p`,O,i(H.value.code),1)):s(``,!0),f(`button`,{class:`otp-submit`,type:`submit`,disabled:m(L).loading},[m(L).loading?(r(),c(`span`,A)):s(``,!0),f(`span`,j,[a(se,{size:18,color:`#F4EDE4`})]),o[5]||=f(`span`,null,`تأیید و ورود`,-1)],8,k),f(`button`,{class:`otp-resend`,type:`button`,disabled:!K.value,onClick:we},[K.value?(r(),c(u,{key:0},[l(`ارسال مجدد کد`)],64)):(r(),c(u,{key:1},[l(`ارسال مجدد کد (`+i(_e.value)+`)`,1)],64))],8,M),f(`button`,{type:`button`,class:`otp-edit`,onClick:Te},[f(`span`,N,i(m(v)(R.value)),1),o[6]||=f(`span`,null,`ویرایش شماره`,-1),a(fe,{size:16,"stroke-width":1.5})])],32),o[8]||=f(`div`,{class:`otp-spacer`,"aria-hidden":`true`},null,-1),o[9]||=f(`p`,{class:`otp-watermark`},[l(`MORE`),f(`br`),l(`THAN`),f(`br`),l(`FABRIC`)],-1)])])]))}}),[[`__scopeId`,`data-v-db716981`]]);export{I as default}; \ No newline at end of file diff --git a/dist/assets/PageHeader-BSsCNguu.js b/dist/assets/PageHeader-BSsCNguu.js new file mode 100644 index 0000000..c5fe2b7 --- /dev/null +++ b/dist/assets/PageHeader-BSsCNguu.js @@ -0,0 +1 @@ +import{I as e,M as t,Pt as n,T as r,_ as i,d as a,f as o,i as s,l as c,t as l,v as u}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{i as d}from"./index-BrjLizie.js";import{t as f}from"./IconChevronBack-CDeN0Cbu.js";var p={key:1,class:`nav-btn`},m={class:`page-nav__title`},h={class:`page-nav__trailing`},g={key:0,class:`page-nav__subtitle`},_={class:`header-text`},v={class:`page-title`},y={key:0,class:`page-subtitle`},b={class:`page-header__trailing`},x=l(u({inheritAttrs:!1,__name:`PageHeader`,props:{title:{},subtitle:{},showBack:{type:Boolean},centered:{type:Boolean}},emits:[`back`],setup(l){return(u,x)=>l.centered?(t(),o(s,{key:0},[c(`header`,r({class:`page-nav`},u.$attrs),[l.showBack?(t(),o(`button`,{key:0,type:`button`,class:`nav-btn`,"aria-label":`بازگشت`,onClick:x[0]||=e=>u.$emit(`back`)},[i(f,{size:20})])):(t(),o(`span`,p)),c(`h1`,m,n(l.title),1),c(`div`,h,[e(u.$slots,`trailing`,{},void 0,!0),i(d,{variant:`inline`,class:`mobile-only`})])],16),l.subtitle?(t(),o(`p`,g,n(l.subtitle),1)):a(``,!0)],64)):(t(),o(`header`,r({key:1,class:`page-header`},u.$attrs),[l.showBack?(t(),o(`button`,{key:0,type:`button`,class:`back-btn`,"aria-label":`بازگشت`,onClick:x[1]||=e=>u.$emit(`back`)},[i(f,{size:20})])):a(``,!0),c(`div`,_,[c(`h1`,v,n(l.title),1),l.subtitle?(t(),o(`p`,y,n(l.subtitle),1)):a(``,!0)]),c(`div`,b,[e(u.$slots,`trailing`,{},void 0,!0),i(d,{variant:`inline`,class:`mobile-only`})])],16))}}),[[`__scopeId`,`data-v-c4a68159`]]);export{x as t}; \ No newline at end of file diff --git a/dist/assets/PageHeader-DTO8lja2.js b/dist/assets/PageHeader-DTO8lja2.js deleted file mode 100644 index 686e50b..0000000 --- a/dist/assets/PageHeader-DTO8lja2.js +++ /dev/null @@ -1 +0,0 @@ -import{D as e,J as t,N as n,O as r,P as i,Q as a,T as o,V as s,Xt as c,b as l,t as u}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";import{i as d}from"./index-BAQfYU-Q.js";import{t as f}from"./IconChevronBack-DfGoZJJk.js";var p={key:1,class:`nav-btn`},m={class:`page-nav__title`},h={class:`page-nav__trailing`},g={key:0,class:`page-nav__subtitle`},_={class:`header-text`},v={class:`page-title`},y={key:0,class:`page-subtitle`},b={class:`page-header__trailing`},x=u(i({inheritAttrs:!1,__name:`PageHeader`,props:{title:{},subtitle:{},showBack:{type:Boolean},centered:{type:Boolean}},emits:[`back`],setup(i){return(u,x)=>i.centered?(t(),r(l,{key:0},[o(`header`,s({class:`page-nav`},u.$attrs),[i.showBack?(t(),r(`button`,{key:0,type:`button`,class:`nav-btn`,"aria-label":`بازگشت`,onClick:x[0]||=e=>u.$emit(`back`)},[n(f,{size:20})])):(t(),r(`span`,p)),o(`h1`,m,c(i.title),1),o(`div`,h,[a(u.$slots,`trailing`,{},void 0,!0),n(d,{variant:`inline`,class:`mobile-only`})])],16),i.subtitle?(t(),r(`p`,g,c(i.subtitle),1)):e(``,!0)],64)):(t(),r(`header`,s({key:1,class:`page-header`},u.$attrs),[i.showBack?(t(),r(`button`,{key:0,type:`button`,class:`back-btn`,"aria-label":`بازگشت`,onClick:x[1]||=e=>u.$emit(`back`)},[n(f,{size:20})])):e(``,!0),o(`div`,_,[o(`h1`,v,c(i.title),1),i.subtitle?(t(),r(`p`,y,c(i.subtitle),1)):e(``,!0)]),o(`div`,b,[a(u.$slots,`trailing`,{},void 0,!0),n(d,{variant:`inline`,class:`mobile-only`})])],16))}}),[[`__scopeId`,`data-v-c4a68159`]]);export{x as t}; \ No newline at end of file diff --git a/dist/assets/PageSkeleton-DHtB6RUa.js b/dist/assets/PageSkeleton-DHtB6RUa.js deleted file mode 100644 index 2ce49b5..0000000 --- a/dist/assets/PageSkeleton-DHtB6RUa.js +++ /dev/null @@ -1 +0,0 @@ -import{J as e,Kt as t,N as n,O as r,P as i,T as a,Yt as o,Z as s,b as c,t as l}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";var u=l(i({__name:`SkeletonBlock`,props:{width:{default:`100%`},height:{default:`14px`},radius:{default:`8px`},circle:{type:Boolean,default:!1}},setup(n){return(i,a)=>(e(),r(`span`,{class:t([`sk`,{"sk--circle":n.circle}]),style:o({width:n.width,height:n.height,borderRadius:n.circle?`50%`:n.radius}),"aria-hidden":`true`},null,6))}}),[[`__scopeId`,`data-v-eee3758f`]]),d={class:`page-skeleton__hero`},f={class:`page-skeleton__quick`},p={class:`page-skeleton__level`},m={class:`page-skeleton__level-top`},h={class:`page-skeleton__level-text`},g={class:`page-skeleton__products`},_={class:`page-skeleton__section-head`},v={class:`page-skeleton__grid page-skeleton__product-grid`},y={class:`page-skeleton__profile-hero`},b={class:`page-skeleton__panel`},x={class:`page-skeleton__list`},S={class:`page-skeleton__row-text`},C={class:`page-skeleton__detail-body`},w={class:`page-skeleton__chips`},T={class:`page-skeleton__grid`},E={key:4,class:`page-skeleton__form`},D={key:5,class:`page-skeleton__list`},O={class:`page-skeleton__row-text`},k=l(i({__name:`PageSkeleton`,props:{variant:{default:`list`},rows:{default:4}},setup(i){return(o,l)=>(e(),r(`div`,{class:t([`page-skeleton`,{"page-skeleton--home":i.variant===`home`}]),role:`status`,"aria-live":`polite`,"aria-busy":`true`,"aria-label":`در حال بارگذاری`},[i.variant===`home`?(e(),r(c,{key:0},[a(`div`,d,[n(u,{class:`page-skeleton__hero-block`,height:`148px`,radius:`16px`})]),a(`div`,f,[(e(),r(c,null,s(4,e=>a(`div`,{key:`q-${e}`,class:`page-skeleton__quick-item`},[n(u,{circle:``,width:`48px`,height:`48px`}),n(u,{width:`72%`,height:`10px`})])),64))]),a(`div`,p,[a(`div`,m,[n(u,{circle:``,width:`48px`,height:`48px`}),a(`div`,h,[n(u,{width:`56px`,height:`10px`}),n(u,{width:`88px`,height:`16px`}),n(u,{width:`104px`,height:`10px`})])]),n(u,{height:`8px`,radius:`999px`}),n(u,{width:`62%`,height:`10px`})]),a(`div`,g,[a(`div`,_,[n(u,{width:`132px`,height:`16px`}),n(u,{width:`72px`,height:`12px`})]),a(`div`,v,[(e(),r(c,null,s(6,e=>a(`div`,{key:`g-${e}`,class:`page-skeleton__card`},[n(u,{class:`page-skeleton__product-image`,height:`110px`,radius:`12px`}),n(u,{width:`82%`,height:`12px`}),n(u,{width:`54%`,height:`10px`})])),64))])])],64)):i.variant===`profile`?(e(),r(c,{key:1},[a(`div`,y,[n(u,{circle:``,width:`72px`,height:`72px`}),n(u,{width:`45%`,height:`18px`}),n(u,{width:`30%`,height:`12px`})]),a(`div`,b,[(e(),r(c,null,s(4,e=>a(`div`,{key:`s-${e}`,class:`page-skeleton__stat`},[n(u,{width:`50%`,height:`10px`}),n(u,{width:`70%`,height:`18px`})])),64))]),a(`div`,x,[(e(),r(c,null,s(5,e=>a(`div`,{key:`m-${e}`,class:`page-skeleton__row`},[n(u,{circle:``,width:`36px`,height:`36px`}),a(`div`,S,[n(u,{width:`55%`,height:`12px`}),n(u,{width:`35%`,height:`10px`})])])),64))])],64)):i.variant===`detail`?(e(),r(c,{key:2},[n(u,{height:`220px`,radius:`0`}),a(`div`,C,[n(u,{width:`70%`,height:`20px`}),n(u,{width:`40%`,height:`12px`}),n(u,{height:`72px`,radius:`12px`}),n(u,{width:`100%`,height:`12px`}),n(u,{width:`92%`,height:`12px`}),n(u,{width:`85%`,height:`12px`}),n(u,{height:`48px`,radius:`12px`})])],64)):i.variant===`grid`||i.variant===`cards`?(e(),r(c,{key:3},[n(u,{width:`55%`,height:`16px`}),a(`div`,w,[(e(),r(c,null,s(4,e=>n(u,{key:`c-${e}`,width:`72px`,height:`32px`,radius:`999px`})),64))]),a(`div`,T,[(e(!0),r(c,null,s(i.rows,t=>(e(),r(`div`,{key:`card-${t}`,class:`page-skeleton__card`},[n(u,{height:`120px`,radius:`12px`}),n(u,{width:`85%`,height:`12px`}),n(u,{width:`55%`,height:`10px`})]))),128))])],64)):i.variant===`form`?(e(),r(`div`,E,[(e(!0),r(c,null,s(i.rows,t=>(e(),r(`div`,{key:`f-${t}`,class:`page-skeleton__field`},[n(u,{width:`30%`,height:`10px`}),n(u,{height:`44px`,radius:`10px`})]))),128)),n(u,{height:`48px`,radius:`12px`})])):(e(),r(`div`,D,[(e(!0),r(c,null,s(i.rows,t=>(e(),r(`div`,{key:`r-${t}`,class:`page-skeleton__row page-skeleton__row--card`},[n(u,{circle:``,width:`40px`,height:`40px`}),a(`div`,O,[n(u,{width:`62%`,height:`13px`}),n(u,{width:`42%`,height:`10px`}),n(u,{width:`28%`,height:`10px`})])]))),128))]))],2))}}),[[`__scopeId`,`data-v-d3e1c988`]]);export{k as t}; \ No newline at end of file diff --git a/dist/assets/PageSkeleton-DYdjm4l9.js b/dist/assets/PageSkeleton-DYdjm4l9.js new file mode 100644 index 0000000..17fc643 --- /dev/null +++ b/dist/assets/PageSkeleton-DYdjm4l9.js @@ -0,0 +1 @@ +import{At as e,F as t,M as n,Nt as r,_ as i,f as a,i as o,l as s,t as c,v as l}from"./_plugin-vue_export-helper-1xMDlcEE.js";var u=c(l({__name:`SkeletonBlock`,props:{width:{default:`100%`},height:{default:`14px`},radius:{default:`8px`},circle:{type:Boolean,default:!1}},setup(t){return(i,o)=>(n(),a(`span`,{class:e([`sk`,{"sk--circle":t.circle}]),style:r({width:t.width,height:t.height,borderRadius:t.circle?`50%`:t.radius}),"aria-hidden":`true`},null,6))}}),[[`__scopeId`,`data-v-eee3758f`]]),d={class:`page-skeleton__hero`},f={class:`page-skeleton__quick`},p={class:`page-skeleton__level`},m={class:`page-skeleton__level-top`},h={class:`page-skeleton__level-text`},g={class:`page-skeleton__products`},_={class:`page-skeleton__section-head`},v={class:`page-skeleton__grid page-skeleton__product-grid`},y={class:`page-skeleton__profile-hero`},b={class:`page-skeleton__panel`},x={class:`page-skeleton__list`},S={class:`page-skeleton__row-text`},C={class:`page-skeleton__detail-body`},w={class:`page-skeleton__chips`},T={class:`page-skeleton__grid`},E={key:4,class:`page-skeleton__form`},D={key:5,class:`page-skeleton__list`},O={class:`page-skeleton__row-text`},k=c(l({__name:`PageSkeleton`,props:{variant:{default:`list`},rows:{default:4}},setup(r){return(c,l)=>(n(),a(`div`,{class:e([`page-skeleton`,{"page-skeleton--home":r.variant===`home`}]),role:`status`,"aria-live":`polite`,"aria-busy":`true`,"aria-label":`در حال بارگذاری`},[r.variant===`home`?(n(),a(o,{key:0},[s(`div`,d,[i(u,{class:`page-skeleton__hero-block`,height:`148px`,radius:`16px`})]),s(`div`,f,[(n(),a(o,null,t(4,e=>s(`div`,{key:`q-${e}`,class:`page-skeleton__quick-item`},[i(u,{circle:``,width:`48px`,height:`48px`}),i(u,{width:`72%`,height:`10px`})])),64))]),s(`div`,p,[s(`div`,m,[i(u,{circle:``,width:`48px`,height:`48px`}),s(`div`,h,[i(u,{width:`56px`,height:`10px`}),i(u,{width:`88px`,height:`16px`}),i(u,{width:`104px`,height:`10px`})])]),i(u,{height:`8px`,radius:`999px`}),i(u,{width:`62%`,height:`10px`})]),s(`div`,g,[s(`div`,_,[i(u,{width:`132px`,height:`16px`}),i(u,{width:`72px`,height:`12px`})]),s(`div`,v,[(n(),a(o,null,t(6,e=>s(`div`,{key:`g-${e}`,class:`page-skeleton__card`},[i(u,{class:`page-skeleton__product-image`,height:`110px`,radius:`12px`}),i(u,{width:`82%`,height:`12px`}),i(u,{width:`54%`,height:`10px`})])),64))])])],64)):r.variant===`profile`?(n(),a(o,{key:1},[s(`div`,y,[i(u,{circle:``,width:`72px`,height:`72px`}),i(u,{width:`45%`,height:`18px`}),i(u,{width:`30%`,height:`12px`})]),s(`div`,b,[(n(),a(o,null,t(4,e=>s(`div`,{key:`s-${e}`,class:`page-skeleton__stat`},[i(u,{width:`50%`,height:`10px`}),i(u,{width:`70%`,height:`18px`})])),64))]),s(`div`,x,[(n(),a(o,null,t(5,e=>s(`div`,{key:`m-${e}`,class:`page-skeleton__row`},[i(u,{circle:``,width:`36px`,height:`36px`}),s(`div`,S,[i(u,{width:`55%`,height:`12px`}),i(u,{width:`35%`,height:`10px`})])])),64))])],64)):r.variant===`detail`?(n(),a(o,{key:2},[i(u,{height:`220px`,radius:`0`}),s(`div`,C,[i(u,{width:`70%`,height:`20px`}),i(u,{width:`40%`,height:`12px`}),i(u,{height:`72px`,radius:`12px`}),i(u,{width:`100%`,height:`12px`}),i(u,{width:`92%`,height:`12px`}),i(u,{width:`85%`,height:`12px`}),i(u,{height:`48px`,radius:`12px`})])],64)):r.variant===`grid`||r.variant===`cards`?(n(),a(o,{key:3},[i(u,{width:`55%`,height:`16px`}),s(`div`,w,[(n(),a(o,null,t(4,e=>i(u,{key:`c-${e}`,width:`72px`,height:`32px`,radius:`999px`})),64))]),s(`div`,T,[(n(!0),a(o,null,t(r.rows,e=>(n(),a(`div`,{key:`card-${e}`,class:`page-skeleton__card`},[i(u,{height:`120px`,radius:`12px`}),i(u,{width:`85%`,height:`12px`}),i(u,{width:`55%`,height:`10px`})]))),128))])],64)):r.variant===`form`?(n(),a(`div`,E,[(n(!0),a(o,null,t(r.rows,e=>(n(),a(`div`,{key:`f-${e}`,class:`page-skeleton__field`},[i(u,{width:`30%`,height:`10px`}),i(u,{height:`44px`,radius:`10px`})]))),128)),i(u,{height:`48px`,radius:`12px`})])):(n(),a(`div`,D,[(n(!0),a(o,null,t(r.rows,e=>(n(),a(`div`,{key:`r-${e}`,class:`page-skeleton__row page-skeleton__row--card`},[i(u,{circle:``,width:`40px`,height:`40px`}),s(`div`,O,[i(u,{width:`62%`,height:`13px`}),i(u,{width:`42%`,height:`10px`}),i(u,{width:`28%`,height:`10px`})])]))),128))]))],2))}}),[[`__scopeId`,`data-v-d3e1c988`]]);export{k as t}; \ No newline at end of file diff --git a/dist/assets/PersianDateInput-CTe_lYug.js b/dist/assets/PersianDateInput-CTe_lYug.js deleted file mode 100644 index 4b4f153..0000000 --- a/dist/assets/PersianDateInput-CTe_lYug.js +++ /dev/null @@ -1 +0,0 @@ -import{D as e,Et as t,G as n,J as r,Kt as i,O as a,P as o,T as s,U as c,Xt as l,Z as u,at as d,b as f,t as p,vt as m,w as h}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";import{u as g}from"./BasicIcon-BXxbbWA_.js";import{_,b as v,d as y,f as b,g as x,h as S,m as C,p as w}from"./format-C72AoJ2H.js";var T={key:0,class:`form-label`},E=[`disabled`],D={class:`persian-date-input__header`},O={class:`persian-date-input__month`},k={class:`persian-date-input__weekdays`},A={class:`persian-date-input__grid`},j={key:0,class:`persian-date-input__cell persian-date-input__cell--empty`},M=[`onClick`],N={key:2,class:`input-error-text`},P={key:3,class:`form-hint`},F=p(o({__name:`PersianDateInput`,props:{modelValue:{},label:{},placeholder:{},hint:{},error:{},disabled:{type:Boolean}},emits:[`update:modelValue`],setup(o,{emit:p}){let F=o,I=p,L=m(null),R=m(!1),z=m(v().jy),B=m(v().jm),V=h(()=>x(F.modelValue??``)),H=h(()=>{if(!V.value)return``;let{jy:e,jm:t,jd:n}=V.value;return S(e,t,n)}),U=h(()=>C(z.value,B.value)),W=h(()=>`${b[B.value-1]} ${y(String(z.value))}`);d(()=>F.modelValue,e=>{let t=x(e??``);t&&(z.value=t.jy,B.value=t.jm)},{immediate:!0});function G(){F.disabled||(R.value=!R.value)}function K(){R.value=!1}function q(e){I(`update:modelValue`,_(z.value,B.value,e)),K()}function J(e){let t=B.value+e,n=z.value;t>12?(t=1,n+=1):t<1&&(t=12,--n),B.value=t,z.value=n}function Y(){let e=v();z.value=e.jy,B.value=e.jm,I(`update:modelValue`,_(e.jy,e.jm,e.jd)),K()}function X(e){if(!V.value)return!1;let{jy:t,jm:n,jd:r}=V.value;return t===z.value&&n===B.value&&r===e}function Z(e){let t=v();return t.jy===z.value&&t.jm===B.value&&t.jd===e}function Q(e){L.value?.contains(e.target)||K()}return n(()=>{document.addEventListener(`click`,Q)}),c(()=>{document.removeEventListener(`click`,Q)}),(n,c)=>(r(),a(`div`,{ref_key:`rootRef`,ref:L,class:`form-group persian-date-input`},[o.label?(r(),a(`label`,T,l(o.label),1)):e(``,!0),s(`button`,{type:`button`,class:i([`input persian-date-input__trigger`,{"input-error":o.error,"is-open":R.value}]),disabled:o.disabled,onClick:g(G,[`stop`])},[s(`span`,{class:i({"persian-date-input__placeholder":!H.value})},l(H.value||o.placeholder||`انتخاب تاریخ`),3),c[3]||=s(`span`,{class:`persian-date-input__icon`,"aria-hidden":`true`},[s(`svg`,{width:`18`,height:`18`,viewBox:`0 0 24 24`,fill:`none`},[s(`rect`,{x:`3`,y:`5`,width:`18`,height:`16`,rx:`2`,stroke:`currentColor`,"stroke-width":`1.5`}),s(`path`,{d:`M8 3v4M16 3v4M3 10h18`,stroke:`currentColor`,"stroke-width":`1.5`,"stroke-linecap":`round`})])],-1)],10,E),R.value?(r(),a(`div`,{key:1,class:`persian-date-input__panel`,onClick:c[2]||=g(()=>{},[`stop`])},[s(`div`,D,[s(`button`,{type:`button`,class:`persian-date-input__nav`,onClick:c[0]||=e=>J(-1)},`‹`),s(`strong`,O,l(W.value),1),s(`button`,{type:`button`,class:`persian-date-input__nav`,onClick:c[1]||=e=>J(1)},`›`)]),s(`div`,k,[(r(!0),a(f,null,u(t(w),e=>(r(),a(`span`,{key:e},l(e),1))),128))]),s(`div`,A,[(r(!0),a(f,null,u(U.value,(e,n)=>(r(),a(f,{key:n},[e===null?(r(),a(`span`,j)):(r(),a(`button`,{key:1,type:`button`,class:i([`persian-date-input__cell`,{"persian-date-input__cell--selected":X(e),"persian-date-input__cell--today":Z(e)}]),onClick:t=>q(e)},l(t(y)(String(e))),11,M))],64))),128))]),s(`button`,{type:`button`,class:`persian-date-input__today`,onClick:Y},`امروز`)])):e(``,!0),o.error?(r(),a(`p`,N,l(o.error),1)):o.hint?(r(),a(`p`,P,l(o.hint),1)):e(``,!0)],512))}}),[[`__scopeId`,`data-v-f02e5adc`]]);export{F as t}; \ No newline at end of file diff --git a/dist/assets/PersianDateInput-DrDb_iFF.js b/dist/assets/PersianDateInput-DrDb_iFF.js new file mode 100644 index 0000000..d5d8b21 --- /dev/null +++ b/dist/assets/PersianDateInput-DrDb_iFF.js @@ -0,0 +1 @@ +import{At as e,D as t,F as n,M as r,Pt as i,U as a,c as o,d as s,f as c,i as l,k as u,l as d,nt as f,t as p,ut as m,v as h}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{u as g}from"./BasicIcon-Bzeb0Iwd.js";import{_,b as v,d as y,f as b,g as x,h as S,m as C,p as w}from"./format-C72AoJ2H.js";var T={key:0,class:`form-label`},E=[`disabled`],D={class:`persian-date-input__header`},O={class:`persian-date-input__month`},k={class:`persian-date-input__weekdays`},A={class:`persian-date-input__grid`},j={key:0,class:`persian-date-input__cell persian-date-input__cell--empty`},M=[`onClick`],N={key:2,class:`input-error-text`},P={key:3,class:`form-hint`},F=p(h({__name:`PersianDateInput`,props:{modelValue:{},label:{},placeholder:{},hint:{},error:{},disabled:{type:Boolean}},emits:[`update:modelValue`],setup(p,{emit:h}){let F=p,I=h,L=f(null),R=f(!1),z=f(v().jy),B=f(v().jm),V=o(()=>x(F.modelValue??``)),H=o(()=>{if(!V.value)return``;let{jy:e,jm:t,jd:n}=V.value;return S(e,t,n)}),U=o(()=>C(z.value,B.value)),W=o(()=>`${b[B.value-1]} ${y(String(z.value))}`);a(()=>F.modelValue,e=>{let t=x(e??``);t&&(z.value=t.jy,B.value=t.jm)},{immediate:!0});function G(){F.disabled||(R.value=!R.value)}function K(){R.value=!1}function q(e){I(`update:modelValue`,_(z.value,B.value,e)),K()}function J(e){let t=B.value+e,n=z.value;t>12?(t=1,n+=1):t<1&&(t=12,--n),B.value=t,z.value=n}function Y(){let e=v();z.value=e.jy,B.value=e.jm,I(`update:modelValue`,_(e.jy,e.jm,e.jd)),K()}function X(e){if(!V.value)return!1;let{jy:t,jm:n,jd:r}=V.value;return t===z.value&&n===B.value&&r===e}function Z(e){let t=v();return t.jy===z.value&&t.jm===B.value&&t.jd===e}function Q(e){L.value?.contains(e.target)||K()}return u(()=>{document.addEventListener(`click`,Q)}),t(()=>{document.removeEventListener(`click`,Q)}),(t,a)=>(r(),c(`div`,{ref_key:`rootRef`,ref:L,class:`form-group persian-date-input`},[p.label?(r(),c(`label`,T,i(p.label),1)):s(``,!0),d(`button`,{type:`button`,class:e([`input persian-date-input__trigger`,{"input-error":p.error,"is-open":R.value}]),disabled:p.disabled,onClick:g(G,[`stop`])},[d(`span`,{class:e({"persian-date-input__placeholder":!H.value})},i(H.value||p.placeholder||`انتخاب تاریخ`),3),a[3]||=d(`span`,{class:`persian-date-input__icon`,"aria-hidden":`true`},[d(`svg`,{width:`18`,height:`18`,viewBox:`0 0 24 24`,fill:`none`},[d(`rect`,{x:`3`,y:`5`,width:`18`,height:`16`,rx:`2`,stroke:`currentColor`,"stroke-width":`1.5`}),d(`path`,{d:`M8 3v4M16 3v4M3 10h18`,stroke:`currentColor`,"stroke-width":`1.5`,"stroke-linecap":`round`})])],-1)],10,E),R.value?(r(),c(`div`,{key:1,class:`persian-date-input__panel`,onClick:a[2]||=g(()=>{},[`stop`])},[d(`div`,D,[d(`button`,{type:`button`,class:`persian-date-input__nav`,onClick:a[0]||=e=>J(-1)},`‹`),d(`strong`,O,i(W.value),1),d(`button`,{type:`button`,class:`persian-date-input__nav`,onClick:a[1]||=e=>J(1)},`›`)]),d(`div`,k,[(r(!0),c(l,null,n(m(w),e=>(r(),c(`span`,{key:e},i(e),1))),128))]),d(`div`,A,[(r(!0),c(l,null,n(U.value,(t,n)=>(r(),c(l,{key:n},[t===null?(r(),c(`span`,j)):(r(),c(`button`,{key:1,type:`button`,class:e([`persian-date-input__cell`,{"persian-date-input__cell--selected":X(t),"persian-date-input__cell--today":Z(t)}]),onClick:e=>q(t)},i(m(y)(String(t))),11,M))],64))),128))]),d(`button`,{type:`button`,class:`persian-date-input__today`,onClick:Y},`امروز`)])):s(``,!0),p.error?(r(),c(`p`,N,i(p.error),1)):p.hint?(r(),c(`p`,P,i(p.hint),1)):s(``,!0)],512))}}),[[`__scopeId`,`data-v-f02e5adc`]]);export{F as t}; \ No newline at end of file diff --git a/dist/assets/ProductDetailView-BqszvyUB.js b/dist/assets/ProductDetailView-BqszvyUB.js new file mode 100644 index 0000000..9815df8 --- /dev/null +++ b/dist/assets/ProductDetailView-BqszvyUB.js @@ -0,0 +1 @@ +import{At as e,D as t,F as n,G as r,K as i,M as a,Nt as o,Pt as s,U as c,_ as l,c as u,d,f,g as p,h as m,i as h,k as g,l as _,nt as v,o as y,t as b,u as x,ut as S,v as C}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{s as w,u as T}from"./BasicIcon-Bzeb0Iwd.js";import{o as E}from"./format-C72AoJ2H.js";import{t as D}from"./catalog-BHsy1JeE.js";import{A as O,M as k,O as A,c as j,j as ee,l as te,n as M}from"./index-BrjLizie.js";import{t as ne}from"./IconChevronBack-CDeN0Cbu.js";import{t as re}from"./PageSkeleton-DYdjm4l9.js";import{a as ie,o as ae,t as oe}from"./crm-DoYzOa8A.js";import{t as N}from"./catalogRequests-Bfg-Nm09.js";import{t as se}from"./useGoBack-C1ocTT2D.js";import{t as ce}from"./IconShoppingBag-BHoZiOex.js";import{t as le}from"./quick-catalog-request-Di7-t6Ua.js";import{t as ue}from"./IconHeart-CvzbNH_T.js";import{n as P,t as de}from"./colorSwatch-BgOH1LE5.js";var F=[`width`,`height`],I=[`stroke`],L=[`stroke`],R=[`stroke`],fe=C({__name:`IconShare`,props:{size:{default:20},color:{default:`#9AA3AF`}},setup(e){return(t,n)=>(a(),f(`svg`,{width:e.size,height:e.size,viewBox:`0 0 24 24`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,"aria-hidden":`true`},[_(`path`,{d:`M12 3.5v11`,stroke:e.color,"stroke-width":`1.5`,"stroke-linecap":`round`},null,8,I),_(`path`,{d:`M8.25 7 12 3.25 15.75 7`,stroke:e.color,"stroke-width":`1.5`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null,8,L),_(`path`,{d:`M6.5 11.5v7.25c0 .97.78 1.75 1.75 1.75h7.5c.97 0 1.75-.78 1.75-1.75V11.5`,stroke:e.color,"stroke-width":`1.5`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null,8,R)],8,F))}}),z=[`width`,`height`,`stroke`],pe=C({__name:`IconRuler`,props:{size:{default:22},color:{default:`currentColor`}},setup(e){return(t,n)=>(a(),f(`svg`,{width:e.size,height:e.size,viewBox:`0 0 24 24`,fill:`none`,stroke:e.color,"stroke-width":`1.6`,"stroke-linecap":`round`,"stroke-linejoin":`round`,"aria-hidden":`true`},[...n[0]||=[m(``,5)]],8,z))}}),B=[`width`,`height`,`stroke`],me=C({__name:`IconWeave`,props:{size:{default:22},color:{default:`currentColor`}},setup(e){return(t,n)=>(a(),f(`svg`,{width:e.size,height:e.size,viewBox:`0 0 24 24`,fill:`none`,stroke:e.color,"stroke-width":`1.6`,"stroke-linecap":`round`,"aria-hidden":`true`},[...n[0]||=[m(``,7)]],8,B))}}),V=`درخواست دریافت فیزیکی کالیته برای شما ثبت شد و به زودی همکاران ما برای شما خواهند آورد`;function he(){let e=j(),t=N(),n=v(!1),r=v(``),i=v(!1),a=v(null),o=v(``);function s(){i.value=!1,a.value=null,o.value=``}async function c(e,n){let i=await t.create({items:[{productId:e.id,productName:e.name,productCode:e.code,quantity:1}],note:`آدرس: ${n}`});return i.success?(r.value=V,window.setTimeout(()=>{r.value=``},6e3),!0):(o.value=i.message,!1)}async function l(t){o.value=``;let r=e.user?.address?.trim();if(r){n.value=!0;try{await c(t,r)}finally{n.value=!1}return}a.value=t,i.value=!0}async function u(t){let r=t.trim();if(!r)return o.value=`آدرس الزامی است.`,!1;let i=a.value;if(!i)return!1;o.value=``,n.value=!0;try{if(!await e.updateProfile({address:r}))return o.value=`ذخیره آدرس ناموفق بود.`,!1;let t=await c(i,r);return t&&s(),t}finally{n.value=!1}}return{requesting:n,successMessage:r,addressModalOpen:i,addressError:o,requestCatalog:l,submitAddressAndRequest:u,closeAddressModal:s}}var H={class:`dialog card address-modal`},U={class:`address-modal__field`},ge={key:0,class:`address-modal__error`},_e={class:`dialog-actions address-modal__actions`},ve=b(C({__name:`AddressCompletionModal`,props:{open:{type:Boolean},loading:{type:Boolean},error:{}},emits:[`close`,`submit`],setup(e,{emit:n}){let o=e,u=n,m=v(``);c(()=>o.open,e=>{e&&(m.value=``)});function h(e){e.key===`Escape`&&o.open&&u(`close`)}c(()=>o.open,e=>{document.body.style.overflow=e?`hidden`:``,e?window.addEventListener(`keydown`,h):window.removeEventListener(`keydown`,h)},{immediate:!0}),t(()=>{document.body.style.overflow=``,window.removeEventListener(`keydown`,h)});function g(){u(`submit`,m.value)}return(t,n)=>(a(),x(y,{to:`body`},[e.open?(a(),f(`div`,{key:0,class:`dialog-overlay address-modal-overlay`,role:`dialog`,"aria-modal":`true`,"aria-labelledby":`address-modal-title`,onClick:n[2]||=T(e=>u(`close`),[`self`])},[_(`div`,H,[n[5]||=_(`h3`,{id:`address-modal-title`,class:`address-modal__title`},`تکمیل آدرس`,-1),n[6]||=_(`p`,{class:`address-modal__hint`},` برای ارسال کالیته فیزیکی، آدرس محل فعالیت خود را وارد کنید. این آدرس در اطلاعات کاربری شما ذخیره می‌شود. `,-1),_(`label`,U,[n[3]||=_(`span`,{class:`form-label`},`آدرس`,-1),i(_(`textarea`,{"onUpdate:modelValue":n[0]||=e=>m.value=e,class:`address-modal__textarea`,rows:`3`,maxlength:`500`,placeholder:`آدرس کامل محل فعالیت`},null,512),[[w,m.value]])]),e.error?(a(),f(`p`,ge,s(e.error),1)):d(``,!0),_(`div`,_e,[l(M,{variant:`outline`,disabled:e.loading,onClick:n[1]||=e=>u(`close`)},{default:r(()=>[...n[4]||=[p(` انصراف `,-1)]]),_:1},8,[`disabled`]),l(M,{disabled:e.loading,onClick:g},{default:r(()=>[p(s(e.loading?`در حال ثبت...`:`ثبت درخواست`),1)]),_:1},8,[`disabled`])])])])):d(``,!0)]))}}),[[`__scopeId`,`data-v-0a7c2418`]]),ye={class:`dialog card product-order-modal`},be={class:`product-order-modal__head`},xe={class:`product-order-modal__rows`},W={class:`product-order-row__color`},G=[`title`],K={key:0,class:`product-order-row__label`},q={class:`product-order-row__stepper`},J=[`disabled`,`onClick`],Y={class:`product-order-row__qty`},Se=[`disabled`,`onClick`],Ce={key:0,class:`product-order-modal__error`},we={class:`product-order-modal__footer`},X={class:`product-order-modal__price`},Te={key:0},Ee={key:1},Z={key:2},Q={key:0,class:`product-order-modal__hint`},De=b(C({__name:`ProductOrderModal`,props:{open:{type:Boolean},product:{},rollMeters:{},minRolls:{},basePrice:{},loading:{type:Boolean},error:{}},emits:[`close`,`submit`],setup(e,{emit:i}){let m=e,g=i,b=v([]);c(()=>[m.open,m.product?.colors.length],([e])=>{!e||!m.product||(b.value=m.product.colors.map(()=>0))});let C=u(()=>b.value.reduce((e,t)=>e+(t>0?t:0),0)),w=u(()=>C.value*m.rollMeters),D=u(()=>!m.basePrice||w.value<=0?null:m.basePrice*w.value);function O(e){e.key===`Escape`&&m.open&&g(`close`)}c(()=>m.open,e=>{document.body.style.overflow=e?`hidden`:``,e?window.addEventListener(`keydown`,O):window.removeEventListener(`keydown`,O)},{immediate:!0}),t(()=>{document.body.style.overflow=``,window.removeEventListener(`keydown`,O)});function k(e,t){let n=[...b.value];n[e]=Math.max(0,(n[e]??0)+t),b.value=n}function A(){g(`submit`,[...b.value])}return(t,i)=>(a(),x(y,{to:`body`},[e.open&&e.product?(a(),f(`div`,{key:0,class:`dialog-overlay product-order-overlay`,role:`dialog`,"aria-modal":`true`,"aria-labelledby":`product-order-title`,onClick:i[1]||=T(e=>g(`close`),[`self`])},[_(`div`,ye,[_(`header`,be,[i[2]||=_(`h3`,{id:`product-order-title`,class:`product-order-modal__title`},`ثبت سفارش`,-1),_(`button`,{type:`button`,class:`product-order-modal__close`,"aria-label":`بستن`,onClick:i[0]||=e=>g(`close`)},` × `)]),i[4]||=_(`div`,{class:`product-order-modal__table-head`,"aria-hidden":`true`},[_(`span`,null,`رنگ`),_(`span`,null,`تعداد`)],-1),_(`ul`,xe,[(a(!0),f(h,null,n(e.product.colors,(t,n)=>(a(),f(`li`,{key:n,class:`product-order-row`},[_(`div`,W,[_(`span`,{class:`product-order-row__swatch`,style:o(S(P)(t,e.product.colorImages?.[n]||e.product.imageUrls?.[n])),title:t},null,12,G),t?(a(),f(`span`,K,s(t),1)):d(``,!0)]),_(`div`,q,[_(`button`,{type:`button`,class:`product-order-row__btn`,"aria-label":`کاهش`,disabled:e.loading||(b.value[n]??0)<=0,onClick:e=>k(n,-1)},` − `,8,J),_(`span`,Y,s(S(E)(b.value[n]??0)),1),_(`button`,{type:`button`,class:`product-order-row__btn`,"aria-label":`افزایش`,disabled:e.loading,onClick:e=>k(n,1)},` + `,8,Se)])]))),128))]),e.error?(a(),f(`p`,Ce,s(e.error),1)):d(``,!0),_(`footer`,we,[_(`div`,X,[i[3]||=_(`span`,null,`قیمت`,-1),D.value==null?C.value>0?(a(),f(`strong`,Ee,s(S(E)(w.value))+` متر `,1)):(a(),f(`strong`,Z,`—`)):(a(),f(`strong`,Te,s(S(E)(D.value))+` تومان `,1))]),e.minRolls>0?(a(),f(`p`,Q,` حداقل سفارش: `+s(S(E)(e.minRolls))+` طاقه `,1)):d(``,!0),l(M,{class:`product-order-modal__submit`,disabled:e.loading,onClick:A},{default:r(()=>[p(s(e.loading?`در حال ثبت...`:`ثبت`),1)]),_:1},8,[`disabled`])])])])):d(``,!0)]))}}),[[`__scopeId`,`data-v-9e750bcd`]]),Oe={key:0,class:`page product-detail product-page`},ke={key:0,class:`catalog-success-banner`,role:`status`},Ae={class:`pd-header mobile-only`},je={class:`pd-header__actions`},Me=[`aria-label`,`aria-pressed`],Ne={class:`desktop-page__head desktop-only pd-desk-head`},Pe={class:`desktop-page__title`},Fe={class:`desktop-page__subtitle`},Ie={class:`pd-desk-head__actions`},Le=[`aria-label`,`aria-pressed`],Re={class:`page__scroll pd-scroll product-page__scroll`},ze={class:`product-page__layout`},Be={class:`product-page__main`},Ve={class:`gallery`},He={class:`gallery__stage`},Ue={key:0,class:`gallery__dots`,role:`tablist`,"aria-label":`تصاویر محصول`},We=[`aria-label`,`aria-selected`,`onClick`],Ge={class:`gallery__thumbs`},Ke=[`onClick`],qe={class:`pd-body`},Je={class:`title-row`},Ye={key:0,class:`new-badge`},Xe={class:`code`},Ze={class:`specs`},Qe={class:`spec-cell`},$e={class:`spec-icon`,"aria-hidden":`true`},et={class:`spec-cell`},tt={class:`spec-cell`},nt={class:`spec-icon`,"aria-hidden":`true`},rt={class:`spec-cell`},it={class:`spec-icon`,"aria-hidden":`true`},at={key:0,class:`specs-extra`},ot={class:`pd-section pd-section--boxed`},st={class:`section-head`},ct={class:`colors`},lt=[`onClick`],ut={class:`pd-section`},dt={class:`tags`,role:`list`},ft=[`onClick`],pt={class:`pd-section`},mt={class:`roll-field`},ht={class:`product-page__sidebar desktop-only`},gt={class:`cart-summary-panel`},_t={class:`cart-summary-panel__row`},vt={class:`cart-summary-panel__row`},yt={class:`cart-summary-panel__btn`},bt=[`disabled`],xt=[`src`],St={class:`pd-footer mobile-only sticky-footer`},Ct={class:`pd-footer__primary`},wt={class:`min-note`},Tt=[`disabled`],Et=[`src`],Dt={key:1,class:`page empty`},Ot={key:2,class:`page empty`},kt=b(C({__name:`ProductDetailView`,setup(t){let r={suit:`پارچه کت‌شلواری`,trousers:`پارچه شلواری`,shirt:`پارچه پیراهنی`},i={summer:`پارچه تابستانه`,winter:`پارچه زمستانه`,all_season:`پارچه چهارفصل`},m=ee(),y=k(),{goBack:b}=se(`/products`),x=oe(),C=te(),w=O(),T=D(),j=u(()=>String(m.query.id??``)),M=v(null),N=v(!0),F=v(null),I=v(0),L=v(1),R=v(!1),z=v(!1),B=v(!1),V=v(``),{requesting:H,successMessage:U,addressModalOpen:ge,addressError:_e,requestCatalog:ye,submitAddressAndRequest:be,closeAddressModal:xe}=he(),W=u(()=>M.value?.rollMeters??50),G=u(()=>{let e=M.value;return e?de(e.colors,e.colorImages,e.imageUrls,I.value,e.imageUrl):``}),K=u(()=>M.value?.colors[I.value]??``),q=u(()=>L.value*W.value),J=u(()=>{let e=M.value?.minMeterage;return e&&e>0?e:W.value}),Y=u(()=>Math.max(1,Math.ceil(J.value/W.value))),Se=u(()=>r[M.value?.categoryId??``]||`—`),Ce=u(()=>i[M.value?.season??``]||`—`),we=u(()=>{let e=M.value;if(!e)return[];let t=[],n=ae.some(t=>t.id===e.categoryId)?e.categoryId:``,a=n?r[n]:``;a&&t.push({key:`usage-${n}`,label:a,to:{path:`/products`,query:{categoryId:n}}});let o=ie.some(t=>t.id===e.season)?e.season:``,s=o?i[o]:``;s&&t.push({key:`season-${o}`,label:s,to:{path:`/products`,query:{season:o}}});let c=new Set(t.flatMap(e=>[e.label,e.label.replace(/^پارچه\s*/,``)]));for(let n of e.tags){let e=n.replace(/^پارچه‌?های?\s*/,``).trim();if(!e||c.has(e)||t.some(t=>t.label.includes(e)))continue;let r=n.startsWith(`پارچه`)?n:`پارچه ${e}`;c.add(e),t.push({key:`tag-${n}`,label:r})}return t});async function X(){if(!j.value){M.value=null,N.value=!1;return}N.value=!0,F.value=null;try{await Promise.all([C.hydrate(),T.loadCompanies()]),M.value=await x.loadProductById(j.value),I.value=0,L.value=Y.value}catch(e){M.value=null,F.value=e instanceof Error?e.message:`محصول یافت نشد.`}finally{N.value=!1}}g(X),c(j,X);function Te(e,t=I.value){let n=e.rollMeters||50,r=e.orderMultiplier&&e.orderMultiplier>0?e.orderMultiplier:n,i=e.minMeterage&&e.minMeterage>0?e.minMeterage:n;return{id:e.id,companyId:e.companyId||``,catalogId:e.catalogId||``,name:e.name,code:e.code,color:e.color||e.colors[t]||`—`,minMeterage:i,orderMultiplier:r,basePrice:e.basePrice,isActive:!0}}function Ee(e,t,n){let r=t>0?t:1,i=Math.ceil(e/r)*r,a=Math.ceil(n/r)*r;return Math.max(i,a)}function Z(){M.value&&(V.value=``,B.value=!0)}function Q(){B.value=!1,V.value=``}async function kt(e){let t=M.value;if(!t)return;let n=t.colors.map((t,n)=>({color:t,idx:n,rolls:e[n]??0})).filter(e=>e.rolls>0);if(!n.length){V.value=`حداقل یک رنگ با تعداد انتخاب کنید.`;return}let r=n.reduce((e,t)=>e+t.rolls,0)*W.value;if(r`${e.color||`رنگ ${e.idx+1}`}: ${E(e.rolls)} طاقه`).join(`، `);R.value=!0,V.value=``;try{let e=await w.addItem(a,t.catalogCode||t.code,o,s,!0);if(!e.success){V.value=e.message??`افزودن به سفارش ناموفق بود.`;return}Q()}finally{R.value=!1}}function At(){M.value&&C.toggle(M.value.id)}function jt(){let e=window.location.href;if(navigator.share){navigator.share({title:M.value?.name,url:e}).catch(()=>void 0);return}navigator.clipboard?.writeText(e)}function $(){!M.value||H.value||ye(M.value)}function Mt(e){be(e)}return(t,r)=>M.value?(a(),f(`div`,Oe,[S(U)?(a(),f(`p`,ke,s(S(U)),1)):d(``,!0),_(`header`,Ae,[_(`button`,{type:`button`,class:`icon-btn`,"aria-label":`بازگشت`,onClick:r[0]||=(...e)=>S(b)&&S(b)(...e)},[l(ne,{size:20})]),_(`div`,je,[_(`button`,{type:`button`,class:`icon-btn`,"aria-label":S(C).isFavorite(M.value.id)?`حذف از علاقه‌مندی‌ها`:`افزودن به علاقه‌مندی‌ها`,"aria-pressed":S(C).isFavorite(M.value.id),onClick:At},[l(ue,{size:20,filled:S(C).isFavorite(M.value.id),color:S(C).isFavorite(M.value.id)?`#0a353c`:void 0},null,8,[`filled`,`color`])],8,Me),_(`button`,{type:`button`,class:`icon-btn`,"aria-label":`اشتراک‌گذاری`,onClick:jt},[l(fe,{size:20})])])]),_(`header`,Ne,[_(`div`,null,[_(`h1`,Pe,s(M.value.name),1),_(`p`,Fe,`کد محصول: `+s(M.value.code),1)]),_(`div`,Ie,[_(`button`,{type:`button`,class:`icon-btn`,"aria-label":S(C).isFavorite(M.value.id)?`حذف از علاقه‌مندی‌ها`:`افزودن به علاقه‌مندی‌ها`,"aria-pressed":S(C).isFavorite(M.value.id),onClick:At},[l(ue,{size:20,filled:S(C).isFavorite(M.value.id),color:S(C).isFavorite(M.value.id)?`#0a353c`:void 0},null,8,[`filled`,`color`])],8,Le),_(`button`,{type:`button`,class:`icon-btn`,"aria-label":`اشتراک‌گذاری`,onClick:jt},[l(fe,{size:20})])])]),_(`div`,Re,[_(`div`,ze,[_(`div`,Be,[_(`div`,Ve,[_(`div`,He,[_(`div`,{class:`gallery__main`,style:o(G.value?{backgroundImage:`url(${G.value})`,backgroundSize:`cover`,backgroundPosition:`center`}:S(P)(K.value))},null,4),M.value.colors.length>1?(a(),f(`div`,Ue,[(a(!0),f(h,null,n(M.value.colors,(t,n)=>(a(),f(`button`,{key:n,type:`button`,class:e([`gallery__dot`,{"gallery__dot--active":I.value===n}]),"aria-label":t||`تصویر ${n+1}`,"aria-selected":I.value===n,onClick:e=>I.value=n},null,10,We))),128))])):d(``,!0)]),_(`div`,Ge,[(a(!0),f(h,null,n(M.value.colors,(t,n)=>(a(),f(`button`,{key:n,type:`button`,class:e([`thumb`,{"thumb--active":I.value===n}]),onClick:e=>I.value=n},[_(`span`,{class:`thumb__swatch`,style:o(S(P)(t,M.value.colorImages?.[n]||M.value.imageUrls?.[n]))},null,4)],10,Ke))),128))])]),_(`div`,qe,[_(`div`,Je,[_(`h1`,null,s(M.value.name),1),M.value.isNew?(a(),f(`span`,Ye,`جدید`)):d(``,!0)]),_(`p`,Xe,`کد محصول: `+s(M.value.code),1),_(`div`,Ze,[_(`div`,Qe,[_(`span`,$e,[l(pe,{color:`#98a2ad`})]),r[3]||=_(`span`,null,`عرض`,-1),_(`strong`,null,s(S(E)(M.value.widthCm))+` سانتی‌متر`,1)]),_(`div`,et,[r[4]||=_(`span`,{class:`spec-icon`,"aria-hidden":`true`},[_(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.6`},[_(`path`,{d:`M12 3.5 20 8v8l-8 4.5L4 16V8l8-4.5Z`})])],-1),r[5]||=_(`span`,null,`جنس`,-1),_(`strong`,null,s(M.value.composition||`—`),1)]),_(`div`,tt,[_(`span`,nt,[l(ce,{size:22,color:`#98a2ad`})]),r[6]||=_(`span`,null,`وزن`,-1),_(`strong`,null,s(M.value.weightGrams?`${S(E)(M.value.weightGrams)} گرم`:`—`),1)]),_(`div`,rt,[_(`span`,it,[l(me,{color:`#98a2ad`})]),r[7]||=_(`span`,null,`نوع بافت`,-1),_(`strong`,null,s(M.value.weaveType||`—`),1)])]),_(`button`,{type:`button`,class:`specs-more`,onClick:r[1]||=e=>z.value=!z.value},[p(s(z.value?`بستن مشخصات`:`مشاهده همه مشخصات`)+` `,1),(a(),f(`svg`,{class:e([`specs-more__chevron`,{"is-open":z.value}]),viewBox:`0 0 12 12`,"aria-hidden":`true`},[...r[8]||=[_(`path`,{d:`M3 4.5 6 8l3-3.5`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.4`,"stroke-linecap":`round`},null,-1)]],2))]),z.value?(a(),f(`div`,at,[_(`p`,null,`فصل: `+s(Ce.value),1),_(`p`,null,`دسته: `+s(Se.value),1),_(`p`,null,`جمع سفارش: `+s(S(E)(q.value))+` متر`,1)])):d(``,!0),_(`section`,ot,[_(`div`,st,[r[9]||=_(`h2`,null,`رنگ‌بندی`,-1),_(`span`,null,`(`+s(S(E)(M.value.colors.length))+` رنگ موجود)`,1)]),_(`div`,ct,[(a(!0),f(h,null,n(M.value.colors,(t,n)=>(a(),f(`button`,{key:n,type:`button`,class:e([`color-dot`,{"color-dot--active":I.value===n}]),style:o(S(P)(t,M.value.colorImages?.[n]||M.value.imageUrls?.[n])),onClick:e=>I.value=n},null,14,lt))),128))])]),_(`section`,ut,[r[10]||=_(`h2`,{class:`section-title`},`دسته‌بندی`,-1),_(`div`,dt,[(a(!0),f(h,null,n(we.value,t=>(a(),f(`button`,{key:t.key,type:`button`,class:e([`tag`,{"tag--link":!!t.to}]),role:`listitem`,onClick:e=>t.to&&S(y).push(t.to)},s(t.label),11,ft))),128))])]),_(`section`,pt,[r[11]||=_(`h2`,{class:`section-title`},`متراژ هر طاقه`,-1),_(`div`,mt,s(S(E)(M.value.rollMeters))+` متر`,1)])])]),_(`aside`,ht,[_(`div`,gt,[r[15]||=_(`h2`,{class:`cart-summary-panel__title`},`ثبت سفارش`,-1),_(`div`,_t,[r[12]||=_(`span`,null,`متراژ سفارش`,-1),_(`strong`,null,s(S(E)(q.value))+` متر`,1)]),_(`div`,vt,[r[13]||=_(`span`,null,`حداقل سفارش`,-1),_(`strong`,null,s(S(E)(Y.value))+` طاقه`,1)]),_(`div`,yt,[_(`button`,{type:`button`,class:`btn-primary`,onClick:Z},[l(A,{size:18,color:`#ffffff`}),r[14]||=p(` افزودن به سفارش `,-1)])]),_(`button`,{type:`button`,class:`btn-secondary pd-desk-catalog-btn`,disabled:S(H),onClick:$},[_(`img`,{class:`btn-secondary__icon`,src:S(le),alt:``,"aria-hidden":`true`},null,8,xt),p(` `+s(S(H)?`در حال ثبت...`:`درخواست کالیته`),1)],8,bt)])])])]),_(`footer`,St,[_(`div`,Ct,[_(`button`,{type:`button`,class:`btn-primary`,onClick:Z},[l(A,{size:18,color:`#ffffff`}),r[16]||=p(` افزودن به سفارش `,-1)]),_(`p`,wt,`حداقل سفارش: `+s(S(E)(Y.value))+` طاقه`,1)]),_(`button`,{type:`button`,class:`btn-secondary`,disabled:S(H),onClick:$},[_(`img`,{class:`btn-secondary__icon`,src:S(le),alt:``,"aria-hidden":`true`},null,8,Et),p(` `+s(S(H)?`در حال ثبت...`:`درخواست کالیته`),1)],8,Tt)]),l(ve,{open:S(ge),loading:S(H),error:S(_e),onClose:S(xe),onSubmit:Mt},null,8,[`open`,`loading`,`error`,`onClose`]),l(De,{open:B.value,product:M.value,"roll-meters":W.value,"min-rolls":Y.value,"base-price":M.value.basePrice,loading:R.value,error:V.value,onClose:Q,onSubmit:kt},null,8,[`open`,`product`,`roll-meters`,`min-rolls`,`base-price`,`loading`,`error`])])):N.value?(a(),f(`div`,Dt,[l(re,{variant:`detail`})])):(a(),f(`div`,Ot,[_(`p`,null,s(F.value||`محصول یافت نشد.`),1),_(`button`,{type:`button`,onClick:r[2]||=e=>S(y).push(`/products`)},`بازگشت به لیست`)]))}}),[[`__scopeId`,`data-v-dbc81cbc`]]);export{kt as default}; \ No newline at end of file diff --git a/dist/assets/ProductDetailView-BxbbLfCJ.js b/dist/assets/ProductDetailView-BxbbLfCJ.js deleted file mode 100644 index 4c7fb98..0000000 --- a/dist/assets/ProductDetailView-BxbbLfCJ.js +++ /dev/null @@ -1 +0,0 @@ -import{D as e,E as t,Et as n,G as r,J as i,Kt as a,M as o,N as s,O as c,P as l,S as u,T as d,U as f,Xt as p,Yt as m,Z as h,at as g,b as _,ct as v,g as y,h as b,j as x,st as S,t as C,vt as w,w as T}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";import{s as E,u as D}from"./BasicIcon-BXxbbWA_.js";import{o as O}from"./format-C72AoJ2H.js";import{t as k}from"./catalog-CIw6in_a.js";import{A,O as ee,c as j,l as te,n as M}from"./index-BAQfYU-Q.js";import{t as ne}from"./IconChevronBack-DfGoZJJk.js";import{t as re}from"./PageSkeleton-DHtB6RUa.js";import{a as ie,o as ae,t as oe}from"./crm-CooNUbmr.js";import{t as N}from"./catalogRequests-DB19-0hk.js";import{t as se}from"./useGoBack-TJZZv7or.js";import{t as ce}from"./IconShoppingBag-BeSLUxcB.js";import{t as le}from"./quick-catalog-request-Di7-t6Ua.js";import{t as ue}from"./IconHeart-Be5RRWq4.js";import{n as P,t as de}from"./colorSwatch-BgOH1LE5.js";var F=[`width`,`height`],I=[`stroke`],L=[`stroke`],R=[`stroke`],fe=l({__name:`IconShare`,props:{size:{default:20},color:{default:`#9AA3AF`}},setup(e){return(t,n)=>(i(),c(`svg`,{width:e.size,height:e.size,viewBox:`0 0 24 24`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,"aria-hidden":`true`},[d(`path`,{d:`M12 3.5v11`,stroke:e.color,"stroke-width":`1.5`,"stroke-linecap":`round`},null,8,I),d(`path`,{d:`M8.25 7 12 3.25 15.75 7`,stroke:e.color,"stroke-width":`1.5`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null,8,L),d(`path`,{d:`M6.5 11.5v7.25c0 .97.78 1.75 1.75 1.75h7.5c.97 0 1.75-.78 1.75-1.75V11.5`,stroke:e.color,"stroke-width":`1.5`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null,8,R)],8,F))}}),z=[`width`,`height`,`stroke`],pe=l({__name:`IconRuler`,props:{size:{default:22},color:{default:`currentColor`}},setup(e){return(t,n)=>(i(),c(`svg`,{width:e.size,height:e.size,viewBox:`0 0 24 24`,fill:`none`,stroke:e.color,"stroke-width":`1.6`,"stroke-linecap":`round`,"stroke-linejoin":`round`,"aria-hidden":`true`},[...n[0]||=[x(``,5)]],8,z))}}),B=[`width`,`height`,`stroke`],me=l({__name:`IconWeave`,props:{size:{default:22},color:{default:`currentColor`}},setup(e){return(t,n)=>(i(),c(`svg`,{width:e.size,height:e.size,viewBox:`0 0 24 24`,fill:`none`,stroke:e.color,"stroke-width":`1.6`,"stroke-linecap":`round`,"aria-hidden":`true`},[...n[0]||=[x(``,7)]],8,B))}}),V=`درخواست دریافت فیزیکی کالیته برای شما ثبت شد و به زودی همکاران ما برای شما خواهند آورد`;function he(){let e=j(),t=N(),n=w(!1),r=w(``),i=w(!1),a=w(null),o=w(``);function s(){i.value=!1,a.value=null,o.value=``}async function c(e,n){let i=await t.create({items:[{productId:e.id,productName:e.name,productCode:e.code,quantity:1}],note:`آدرس: ${n}`});return i.success?(r.value=V,window.setTimeout(()=>{r.value=``},6e3),!0):(o.value=i.message,!1)}async function l(t){o.value=``;let r=e.user?.address?.trim();if(r){n.value=!0;try{await c(t,r)}finally{n.value=!1}return}a.value=t,i.value=!0}async function u(t){let r=t.trim();if(!r)return o.value=`آدرس الزامی است.`,!1;let i=a.value;if(!i)return!1;o.value=``,n.value=!0;try{if(!await e.updateProfile({address:r}))return o.value=`ذخیره آدرس ناموفق بود.`,!1;let t=await c(i,r);return t&&s(),t}finally{n.value=!1}}return{requesting:n,successMessage:r,addressModalOpen:i,addressError:o,requestCatalog:l,submitAddressAndRequest:u,closeAddressModal:s}}var H={class:`dialog card address-modal`},U={class:`address-modal__field`},ge={key:0,class:`address-modal__error`},_e={class:`dialog-actions address-modal__actions`},ve=C(l({__name:`AddressCompletionModal`,props:{open:{type:Boolean},loading:{type:Boolean},error:{}},emits:[`close`,`submit`],setup(n,{emit:r}){let a=n,l=r,m=w(``);g(()=>a.open,e=>{e&&(m.value=``)});function h(e){e.key===`Escape`&&a.open&&l(`close`)}g(()=>a.open,e=>{document.body.style.overflow=e?`hidden`:``,e?window.addEventListener(`keydown`,h):window.removeEventListener(`keydown`,h)},{immediate:!0}),f(()=>{document.body.style.overflow=``,window.removeEventListener(`keydown`,h)});function _(){l(`submit`,m.value)}return(r,a)=>(i(),t(u,{to:`body`},[n.open?(i(),c(`div`,{key:0,class:`dialog-overlay address-modal-overlay`,role:`dialog`,"aria-modal":`true`,"aria-labelledby":`address-modal-title`,onClick:a[2]||=D(e=>l(`close`),[`self`])},[d(`div`,H,[a[5]||=d(`h3`,{id:`address-modal-title`,class:`address-modal__title`},`تکمیل آدرس`,-1),a[6]||=d(`p`,{class:`address-modal__hint`},` برای ارسال کالیته فیزیکی، آدرس محل فعالیت خود را وارد کنید. این آدرس در اطلاعات کاربری شما ذخیره می‌شود. `,-1),d(`label`,U,[a[3]||=d(`span`,{class:`form-label`},`آدرس`,-1),v(d(`textarea`,{"onUpdate:modelValue":a[0]||=e=>m.value=e,class:`address-modal__textarea`,rows:`3`,maxlength:`500`,placeholder:`آدرس کامل محل فعالیت`},null,512),[[E,m.value]])]),n.error?(i(),c(`p`,ge,p(n.error),1)):e(``,!0),d(`div`,_e,[s(M,{variant:`outline`,disabled:n.loading,onClick:a[1]||=e=>l(`close`)},{default:S(()=>[...a[4]||=[o(` انصراف `,-1)]]),_:1},8,[`disabled`]),s(M,{disabled:n.loading,onClick:_},{default:S(()=>[o(p(n.loading?`در حال ثبت...`:`ثبت درخواست`),1)]),_:1},8,[`disabled`])])])])):e(``,!0)]))}}),[[`__scopeId`,`data-v-0a7c2418`]]),ye={class:`dialog card product-order-modal`},be={class:`product-order-modal__head`},xe={class:`product-order-modal__rows`},W={class:`product-order-row__color`},G=[`title`],K={key:0,class:`product-order-row__label`},q={class:`product-order-row__stepper`},J=[`disabled`,`onClick`],Y={class:`product-order-row__qty`},Se=[`disabled`,`onClick`],Ce={key:0,class:`product-order-modal__error`},we={class:`product-order-modal__footer`},X={class:`product-order-modal__price`},Te={key:0},Ee={key:1},Z={key:2},Q={key:0,class:`product-order-modal__hint`},De=C(l({__name:`ProductOrderModal`,props:{open:{type:Boolean},product:{},rollMeters:{},minRolls:{},basePrice:{},loading:{type:Boolean},error:{}},emits:[`close`,`submit`],setup(r,{emit:a}){let l=r,v=a,y=w([]);g(()=>[l.open,l.product?.colors.length],([e])=>{!e||!l.product||(y.value=l.product.colors.map(()=>0))});let b=T(()=>y.value.reduce((e,t)=>e+(t>0?t:0),0)),x=T(()=>b.value*l.rollMeters),C=T(()=>!l.basePrice||x.value<=0?null:l.basePrice*x.value);function E(e){e.key===`Escape`&&l.open&&v(`close`)}g(()=>l.open,e=>{document.body.style.overflow=e?`hidden`:``,e?window.addEventListener(`keydown`,E):window.removeEventListener(`keydown`,E)},{immediate:!0}),f(()=>{document.body.style.overflow=``,window.removeEventListener(`keydown`,E)});function k(e,t){let n=[...y.value];n[e]=Math.max(0,(n[e]??0)+t),y.value=n}function A(){v(`submit`,[...y.value])}return(a,l)=>(i(),t(u,{to:`body`},[r.open&&r.product?(i(),c(`div`,{key:0,class:`dialog-overlay product-order-overlay`,role:`dialog`,"aria-modal":`true`,"aria-labelledby":`product-order-title`,onClick:l[1]||=D(e=>v(`close`),[`self`])},[d(`div`,ye,[d(`header`,be,[l[2]||=d(`h3`,{id:`product-order-title`,class:`product-order-modal__title`},`ثبت سفارش`,-1),d(`button`,{type:`button`,class:`product-order-modal__close`,"aria-label":`بستن`,onClick:l[0]||=e=>v(`close`)},` × `)]),l[4]||=d(`div`,{class:`product-order-modal__table-head`,"aria-hidden":`true`},[d(`span`,null,`رنگ`),d(`span`,null,`تعداد`)],-1),d(`ul`,xe,[(i(!0),c(_,null,h(r.product.colors,(t,a)=>(i(),c(`li`,{key:a,class:`product-order-row`},[d(`div`,W,[d(`span`,{class:`product-order-row__swatch`,style:m(n(P)(t,r.product.colorImages?.[a]||r.product.imageUrls?.[a])),title:t},null,12,G),t?(i(),c(`span`,K,p(t),1)):e(``,!0)]),d(`div`,q,[d(`button`,{type:`button`,class:`product-order-row__btn`,"aria-label":`کاهش`,disabled:r.loading||(y.value[a]??0)<=0,onClick:e=>k(a,-1)},` − `,8,J),d(`span`,Y,p(n(O)(y.value[a]??0)),1),d(`button`,{type:`button`,class:`product-order-row__btn`,"aria-label":`افزایش`,disabled:r.loading,onClick:e=>k(a,1)},` + `,8,Se)])]))),128))]),r.error?(i(),c(`p`,Ce,p(r.error),1)):e(``,!0),d(`footer`,we,[d(`div`,X,[l[3]||=d(`span`,null,`قیمت`,-1),C.value==null?b.value>0?(i(),c(`strong`,Ee,p(n(O)(x.value))+` متر `,1)):(i(),c(`strong`,Z,`—`)):(i(),c(`strong`,Te,p(n(O)(C.value))+` تومان `,1))]),r.minRolls>0?(i(),c(`p`,Q,` حداقل سفارش: `+p(n(O)(r.minRolls))+` طاقه `,1)):e(``,!0),s(M,{class:`product-order-modal__submit`,disabled:r.loading,onClick:A},{default:S(()=>[o(p(r.loading?`در حال ثبت...`:`ثبت`),1)]),_:1},8,[`disabled`])])])])):e(``,!0)]))}}),[[`__scopeId`,`data-v-9e750bcd`]]),Oe={key:0,class:`page product-detail product-page`},ke={key:0,class:`catalog-success-banner`,role:`status`},Ae={class:`pd-header mobile-only`},je={class:`pd-header__actions`},Me=[`aria-label`,`aria-pressed`],Ne={class:`desktop-page__head desktop-only pd-desk-head`},Pe={class:`desktop-page__title`},Fe={class:`desktop-page__subtitle`},Ie={class:`pd-desk-head__actions`},Le=[`aria-label`,`aria-pressed`],Re={class:`page__scroll pd-scroll product-page__scroll`},ze={class:`product-page__layout`},Be={class:`product-page__main`},Ve={class:`gallery`},He={class:`gallery__stage`},Ue={key:0,class:`gallery__dots`,role:`tablist`,"aria-label":`تصاویر محصول`},We=[`aria-label`,`aria-selected`,`onClick`],Ge={class:`gallery__thumbs`},Ke=[`onClick`],qe={class:`pd-body`},Je={class:`title-row`},Ye={key:0,class:`new-badge`},Xe={class:`code`},Ze={class:`specs`},Qe={class:`spec-cell`},$e={class:`spec-icon`,"aria-hidden":`true`},et={class:`spec-cell`},tt={class:`spec-cell`},nt={class:`spec-icon`,"aria-hidden":`true`},rt={class:`spec-cell`},it={class:`spec-icon`,"aria-hidden":`true`},at={key:0,class:`specs-extra`},ot={class:`pd-section pd-section--boxed`},st={class:`section-head`},ct={class:`colors`},lt=[`onClick`],ut={class:`pd-section`},dt={class:`tags`,role:`list`},ft=[`onClick`],pt={class:`pd-section`},mt={class:`roll-field`},ht={class:`product-page__sidebar desktop-only`},gt={class:`cart-summary-panel`},_t={class:`cart-summary-panel__row`},vt={class:`cart-summary-panel__row`},yt={class:`cart-summary-panel__btn`},bt=[`disabled`],xt=[`src`],St={class:`pd-footer mobile-only sticky-footer`},Ct={class:`pd-footer__primary`},wt={class:`min-note`},Tt=[`disabled`],Et=[`src`],Dt={key:1,class:`page empty`},Ot={key:2,class:`page empty`},kt=C(l({__name:`ProductDetailView`,setup(t){let l={suit:`پارچه کت‌شلواری`,trousers:`پارچه شلواری`,shirt:`پارچه پیراهنی`},u={summer:`پارچه تابستانه`,winter:`پارچه زمستانه`,all_season:`پارچه چهارفصل`},f=b(),v=y(),{goBack:x}=se(`/products`),S=oe(),C=te(),E=A(),D=k(),j=T(()=>String(f.query.id??``)),M=w(null),N=w(!0),F=w(null),I=w(0),L=w(1),R=w(!1),z=w(!1),B=w(!1),V=w(``),{requesting:H,successMessage:U,addressModalOpen:ge,addressError:_e,requestCatalog:ye,submitAddressAndRequest:be,closeAddressModal:xe}=he(),W=T(()=>M.value?.rollMeters??50),G=T(()=>{let e=M.value;return e?de(e.colors,e.colorImages,e.imageUrls,I.value,e.imageUrl):``}),K=T(()=>M.value?.colors[I.value]??``),q=T(()=>L.value*W.value),J=T(()=>{let e=M.value?.minMeterage;return e&&e>0?e:W.value}),Y=T(()=>Math.max(1,Math.ceil(J.value/W.value))),Se=T(()=>l[M.value?.categoryId??``]||`—`),Ce=T(()=>u[M.value?.season??``]||`—`),we=T(()=>{let e=M.value;if(!e)return[];let t=[],n=ae.some(t=>t.id===e.categoryId)?e.categoryId:``,r=n?l[n]:``;r&&t.push({key:`usage-${n}`,label:r,to:{path:`/products`,query:{categoryId:n}}});let i=ie.some(t=>t.id===e.season)?e.season:``,a=i?u[i]:``;a&&t.push({key:`season-${i}`,label:a,to:{path:`/products`,query:{season:i}}});let o=new Set(t.flatMap(e=>[e.label,e.label.replace(/^پارچه\s*/,``)]));for(let n of e.tags){let e=n.replace(/^پارچه‌?های?\s*/,``).trim();if(!e||o.has(e)||t.some(t=>t.label.includes(e)))continue;let r=n.startsWith(`پارچه`)?n:`پارچه ${e}`;o.add(e),t.push({key:`tag-${n}`,label:r})}return t});async function X(){if(!j.value){M.value=null,N.value=!1;return}N.value=!0,F.value=null;try{await Promise.all([C.hydrate(),D.loadCompanies()]),M.value=await S.loadProductById(j.value),I.value=0,L.value=Y.value}catch(e){M.value=null,F.value=e instanceof Error?e.message:`محصول یافت نشد.`}finally{N.value=!1}}r(X),g(j,X);function Te(e,t=I.value){let n=e.rollMeters||50,r=e.orderMultiplier&&e.orderMultiplier>0?e.orderMultiplier:n,i=e.minMeterage&&e.minMeterage>0?e.minMeterage:n;return{id:e.id,companyId:e.companyId||``,catalogId:e.catalogId||``,name:e.name,code:e.code,color:e.color||e.colors[t]||`—`,minMeterage:i,orderMultiplier:r,basePrice:e.basePrice,isActive:!0}}function Ee(e,t,n){let r=t>0?t:1,i=Math.ceil(e/r)*r,a=Math.ceil(n/r)*r;return Math.max(i,a)}function Z(){M.value&&(V.value=``,B.value=!0)}function Q(){B.value=!1,V.value=``}async function kt(e){let t=M.value;if(!t)return;let n=t.colors.map((t,n)=>({color:t,idx:n,rolls:e[n]??0})).filter(e=>e.rolls>0);if(!n.length){V.value=`حداقل یک رنگ با تعداد انتخاب کنید.`;return}let r=n.reduce((e,t)=>e+t.rolls,0)*W.value;if(r`${e.color||`رنگ ${e.idx+1}`}: ${O(e.rolls)} طاقه`).join(`، `);R.value=!0,V.value=``;try{let e=await E.addItem(a,t.catalogCode||t.code,o,s,!0);if(!e.success){V.value=e.message??`افزودن به سفارش ناموفق بود.`;return}Q()}finally{R.value=!1}}function At(){M.value&&C.toggle(M.value.id)}function jt(){let e=window.location.href;if(navigator.share){navigator.share({title:M.value?.name,url:e}).catch(()=>void 0);return}navigator.clipboard?.writeText(e)}function $(){!M.value||H.value||ye(M.value)}function Mt(e){be(e)}return(t,r)=>M.value?(i(),c(`div`,Oe,[n(U)?(i(),c(`p`,ke,p(n(U)),1)):e(``,!0),d(`header`,Ae,[d(`button`,{type:`button`,class:`icon-btn`,"aria-label":`بازگشت`,onClick:r[0]||=(...e)=>n(x)&&n(x)(...e)},[s(ne,{size:20})]),d(`div`,je,[d(`button`,{type:`button`,class:`icon-btn`,"aria-label":n(C).isFavorite(M.value.id)?`حذف از علاقه‌مندی‌ها`:`افزودن به علاقه‌مندی‌ها`,"aria-pressed":n(C).isFavorite(M.value.id),onClick:At},[s(ue,{size:20,filled:n(C).isFavorite(M.value.id),color:n(C).isFavorite(M.value.id)?`#0a353c`:void 0},null,8,[`filled`,`color`])],8,Me),d(`button`,{type:`button`,class:`icon-btn`,"aria-label":`اشتراک‌گذاری`,onClick:jt},[s(fe,{size:20})])])]),d(`header`,Ne,[d(`div`,null,[d(`h1`,Pe,p(M.value.name),1),d(`p`,Fe,`کد محصول: `+p(M.value.code),1)]),d(`div`,Ie,[d(`button`,{type:`button`,class:`icon-btn`,"aria-label":n(C).isFavorite(M.value.id)?`حذف از علاقه‌مندی‌ها`:`افزودن به علاقه‌مندی‌ها`,"aria-pressed":n(C).isFavorite(M.value.id),onClick:At},[s(ue,{size:20,filled:n(C).isFavorite(M.value.id),color:n(C).isFavorite(M.value.id)?`#0a353c`:void 0},null,8,[`filled`,`color`])],8,Le),d(`button`,{type:`button`,class:`icon-btn`,"aria-label":`اشتراک‌گذاری`,onClick:jt},[s(fe,{size:20})])])]),d(`div`,Re,[d(`div`,ze,[d(`div`,Be,[d(`div`,Ve,[d(`div`,He,[d(`div`,{class:`gallery__main`,style:m(G.value?{backgroundImage:`url(${G.value})`,backgroundSize:`cover`,backgroundPosition:`center`}:n(P)(K.value))},null,4),M.value.colors.length>1?(i(),c(`div`,Ue,[(i(!0),c(_,null,h(M.value.colors,(e,t)=>(i(),c(`button`,{key:t,type:`button`,class:a([`gallery__dot`,{"gallery__dot--active":I.value===t}]),"aria-label":e||`تصویر ${t+1}`,"aria-selected":I.value===t,onClick:e=>I.value=t},null,10,We))),128))])):e(``,!0)]),d(`div`,Ge,[(i(!0),c(_,null,h(M.value.colors,(e,t)=>(i(),c(`button`,{key:t,type:`button`,class:a([`thumb`,{"thumb--active":I.value===t}]),onClick:e=>I.value=t},[d(`span`,{class:`thumb__swatch`,style:m(n(P)(e,M.value.colorImages?.[t]||M.value.imageUrls?.[t]))},null,4)],10,Ke))),128))])]),d(`div`,qe,[d(`div`,Je,[d(`h1`,null,p(M.value.name),1),M.value.isNew?(i(),c(`span`,Ye,`جدید`)):e(``,!0)]),d(`p`,Xe,`کد محصول: `+p(M.value.code),1),d(`div`,Ze,[d(`div`,Qe,[d(`span`,$e,[s(pe,{color:`#98a2ad`})]),r[3]||=d(`span`,null,`عرض`,-1),d(`strong`,null,p(n(O)(M.value.widthCm))+` سانتی‌متر`,1)]),d(`div`,et,[r[4]||=d(`span`,{class:`spec-icon`,"aria-hidden":`true`},[d(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.6`},[d(`path`,{d:`M12 3.5 20 8v8l-8 4.5L4 16V8l8-4.5Z`})])],-1),r[5]||=d(`span`,null,`جنس`,-1),d(`strong`,null,p(M.value.composition||`—`),1)]),d(`div`,tt,[d(`span`,nt,[s(ce,{size:22,color:`#98a2ad`})]),r[6]||=d(`span`,null,`وزن`,-1),d(`strong`,null,p(M.value.weightGrams?`${n(O)(M.value.weightGrams)} گرم`:`—`),1)]),d(`div`,rt,[d(`span`,it,[s(me,{color:`#98a2ad`})]),r[7]||=d(`span`,null,`نوع بافت`,-1),d(`strong`,null,p(M.value.weaveType||`—`),1)])]),d(`button`,{type:`button`,class:`specs-more`,onClick:r[1]||=e=>z.value=!z.value},[o(p(z.value?`بستن مشخصات`:`مشاهده همه مشخصات`)+` `,1),(i(),c(`svg`,{class:a([`specs-more__chevron`,{"is-open":z.value}]),viewBox:`0 0 12 12`,"aria-hidden":`true`},[...r[8]||=[d(`path`,{d:`M3 4.5 6 8l3-3.5`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.4`,"stroke-linecap":`round`},null,-1)]],2))]),z.value?(i(),c(`div`,at,[d(`p`,null,`فصل: `+p(Ce.value),1),d(`p`,null,`دسته: `+p(Se.value),1),d(`p`,null,`جمع سفارش: `+p(n(O)(q.value))+` متر`,1)])):e(``,!0),d(`section`,ot,[d(`div`,st,[r[9]||=d(`h2`,null,`رنگ‌بندی`,-1),d(`span`,null,`(`+p(n(O)(M.value.colors.length))+` رنگ موجود)`,1)]),d(`div`,ct,[(i(!0),c(_,null,h(M.value.colors,(e,t)=>(i(),c(`button`,{key:t,type:`button`,class:a([`color-dot`,{"color-dot--active":I.value===t}]),style:m(n(P)(e,M.value.colorImages?.[t]||M.value.imageUrls?.[t])),onClick:e=>I.value=t},null,14,lt))),128))])]),d(`section`,ut,[r[10]||=d(`h2`,{class:`section-title`},`دسته‌بندی`,-1),d(`div`,dt,[(i(!0),c(_,null,h(we.value,e=>(i(),c(`button`,{key:e.key,type:`button`,class:a([`tag`,{"tag--link":!!e.to}]),role:`listitem`,onClick:t=>e.to&&n(v).push(e.to)},p(e.label),11,ft))),128))])]),d(`section`,pt,[r[11]||=d(`h2`,{class:`section-title`},`متراژ هر طاقه`,-1),d(`div`,mt,p(n(O)(M.value.rollMeters))+` متر`,1)])])]),d(`aside`,ht,[d(`div`,gt,[r[15]||=d(`h2`,{class:`cart-summary-panel__title`},`ثبت سفارش`,-1),d(`div`,_t,[r[12]||=d(`span`,null,`متراژ سفارش`,-1),d(`strong`,null,p(n(O)(q.value))+` متر`,1)]),d(`div`,vt,[r[13]||=d(`span`,null,`حداقل سفارش`,-1),d(`strong`,null,p(n(O)(Y.value))+` طاقه`,1)]),d(`div`,yt,[d(`button`,{type:`button`,class:`btn-primary`,onClick:Z},[s(ee,{size:18,color:`#ffffff`}),r[14]||=o(` افزودن به سفارش `,-1)])]),d(`button`,{type:`button`,class:`btn-secondary pd-desk-catalog-btn`,disabled:n(H),onClick:$},[d(`img`,{class:`btn-secondary__icon`,src:n(le),alt:``,"aria-hidden":`true`},null,8,xt),o(` `+p(n(H)?`در حال ثبت...`:`درخواست کالیته`),1)],8,bt)])])])]),d(`footer`,St,[d(`div`,Ct,[d(`button`,{type:`button`,class:`btn-primary`,onClick:Z},[s(ee,{size:18,color:`#ffffff`}),r[16]||=o(` افزودن به سفارش `,-1)]),d(`p`,wt,`حداقل سفارش: `+p(n(O)(Y.value))+` طاقه`,1)]),d(`button`,{type:`button`,class:`btn-secondary`,disabled:n(H),onClick:$},[d(`img`,{class:`btn-secondary__icon`,src:n(le),alt:``,"aria-hidden":`true`},null,8,Et),o(` `+p(n(H)?`در حال ثبت...`:`درخواست کالیته`),1)],8,Tt)]),s(ve,{open:n(ge),loading:n(H),error:n(_e),onClose:n(xe),onSubmit:Mt},null,8,[`open`,`loading`,`error`,`onClose`]),s(De,{open:B.value,product:M.value,"roll-meters":W.value,"min-rolls":Y.value,"base-price":M.value.basePrice,loading:R.value,error:V.value,onClose:Q,onSubmit:kt},null,8,[`open`,`product`,`roll-meters`,`min-rolls`,`base-price`,`loading`,`error`])])):N.value?(i(),c(`div`,Dt,[s(re,{variant:`detail`})])):(i(),c(`div`,Ot,[d(`p`,null,p(F.value||`محصول یافت نشد.`),1),d(`button`,{type:`button`,onClick:r[2]||=e=>n(v).push(`/products`)},`بازگشت به لیست`)]))}}),[[`__scopeId`,`data-v-dbc81cbc`]]);export{kt as default}; \ No newline at end of file diff --git a/dist/assets/ProductsView-Da45qLqI.js b/dist/assets/ProductsView-Da45qLqI.js new file mode 100644 index 0000000..c5beab0 --- /dev/null +++ b/dist/assets/ProductsView-Da45qLqI.js @@ -0,0 +1 @@ +import{A as e,At as t,F as n,G as r,M as i,Nt as a,Pt as o,R as ee,U as s,_ as c,c as l,d as u,f as d,g as f,h as te,i as p,k as ne,l as m,nt as h,o as re,t as ie,u as g,ut as _,v}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{n as ae,u as y}from"./BasicIcon-Bzeb0Iwd.js";import{t as b}from"./dist-Bc4P4ngC.js";import{M as oe,T as se,j as ce,l as le,n as ue,o as de}from"./index-BrjLizie.js";import{t as fe}from"./IconFilter-DgpHKrEL.js";import{t as pe}from"./IconDiamond-bOGfMf7j.js";import{t as me}from"./PageHeader-BSsCNguu.js";import"./SearchField-dVDn9y5S.js";import{t as he}from"./PageSkeleton-DYdjm4l9.js";import{t as ge}from"./crm-DoYzOa8A.js";import{n as _e,t as x}from"./categoryIcons-DNHSoriy.js";import{t as ve}from"./IconHeart-CvzbNH_T.js";import{n as ye}from"./colorSwatch-BgOH1LE5.js";var be={class:`page products-page`},xe=[`aria-expanded`],Se={class:`desktop-page__head desktop-only products-desk-head`},Ce={class:`products-desk-head__copy`},we={class:`desktop-page__title`},Te={class:`desktop-page__subtitle`},Ee={key:0,class:`products-filter-desk desktop-only`},De={class:`products-filter-sheet products-filter-sheet--desk`},Oe={class:`products-filter-section`},ke=[`aria-expanded`],Ae={key:0,class:`field-select__menu`,role:`listbox`,"aria-label":`دسته کاربرد`},je=[`onClick`],Me={class:`products-filter-section`},Ne=[`aria-expanded`],Pe={key:0,class:`field-select__menu`,role:`listbox`,"aria-label":`فصل`},Fe=[`onClick`],Ie={class:`products-filter-actions products-filter-actions--desk`},Le={class:`products-filter-section`},Re=[`aria-expanded`],ze={key:0,class:`field-select__menu`,role:`listbox`,"aria-label":`دسته کاربرد`},Be=[`aria-selected`],Ve=[`aria-selected`,`onClick`],He={class:`products-filter-section`},Ue=[`aria-expanded`],We={key:0,class:`field-select__menu`,role:`listbox`,"aria-label":`فصل`},Ge=[`aria-selected`],Ke=[`aria-selected`,`onClick`],qe={class:`products-filter-actions`},Je={class:`page__scroll page__scroll--with-nav products-scroll`},Ye={key:0},Xe={class:`cat-banner__content`},Ze={key:0,class:`cat-banner__lead`},Qe={key:1,class:`cat-banner__title-row`},$e={key:0,class:`cat-banner__icon-ring`,"aria-hidden":`true`},et={key:1,class:`cat-banner__title`},tt={key:2,class:`cat-banner__title`},nt={key:3,class:`cat-banner__tagline`},rt={key:0,class:`cat-banner__icon-ring cat-banner__icon-ring--aside`,"aria-hidden":`true`},it={key:0,class:`chips-row scroll-x`},at=[`aria-label`],ot=[`onClick`],st=[`onClick`],ct={class:`list-meta`},lt=[`aria-label`],ut={class:`products-list`},dt=[`onClick`],ft={class:`product-item__body`},pt={class:`product-item__head`},mt={class:`product-item__title`},ht={key:0,class:`new-tag`},gt=[`aria-label`,`aria-pressed`,`onClick`],_t={class:`product-item__specs`},vt={class:`swatches`},yt=[`onClick`],bt={key:1,class:`empty-list`},S=ie(v({__name:`ProductsView`,setup(ie){let v=ce(),S=oe(),C=ge(),w=le(),T=l(()=>String(v.query.categoryId??``)),E=l(()=>String(v.query.catalogId??``)),D=l(()=>String(v.query.companyId??``)),O=l(()=>String(v.query.season??``)),xt=l(()=>String(v.query.filterAxis??``)),k=l(()=>String(v.query.q??``)),St=h(String(v.query.q??``)),A=h([]),j=h(``),M=h(!0),N=h(null),P=h(`newest`),F=h(!1),I=h(``),L=h(``),R=h(!1),z=h(!1),B=h(null),Ct=h(null),V=h(null),H=h(null),U=l(()=>!E.value),W=l(()=>!!T.value||!!O.value),wt=l(()=>I.value?C.usageCategories.find(e=>e.id===I.value)?.title??`همه دسته‌ها`:`همه دسته‌ها`),Tt=l(()=>L.value?C.seasonCategories.find(e=>e.id===L.value)?.title??`همه فصول`:`همه فصول`),G=l(()=>E.value&&j.value?j.value:T.value?C.usageCategories.find(e=>e.id===T.value)?.title??`محصولات`:O.value?C.seasonCategories.find(e=>e.id===O.value)?.title??`محصولات`:k.value?`جستجو: ${k.value}`:`محصولات`);function Et(e){let t=e.trim();return t.startsWith(`پارچه‌های `)?{lead:`پارچه‌های`,headline:t.slice(10)}:{lead:void 0,headline:t}}function Dt(e){return e.icon||(e.id===`summer`?`bolt`:e.id===`winter`?`feather`:`diamond`)}let K=l(()=>{if(T.value){let e=C.usageCategories.find(e=>e.id===T.value),t=Et(e?.title??G.value);return{lead:e?.showTitle===!1?void 0:t.lead,headline:e?.showTitle===!1?void 0:t.headline,tagline:e?.showSubtitle===!1?void 0:e?.subtitle,showIcon:e?.showIcon!==!1}}if(O.value){let e=C.seasonCategories.find(e=>e.id===O.value);return{lead:void 0,headline:e?.showTitle===!1?void 0:e?.title??G.value,tagline:e?.showDescription===!1?void 0:e?.description||void 0,showIcon:e?.showIcon!==!1}}return E.value?{lead:`کالیته`,headline:j.value||G.value,tagline:`انتخاب محصول از کالیته`,showIcon:!0}:{lead:void 0,headline:G.value,tagline:k.value?`نتایج جستجو`:`مشاهده و ثبت سفارش`,showIcon:!1}}),q=l(()=>{if(K.value.showIcon===!1)return null;if(T.value){let e=C.usageCategories.find(e=>e.id===T.value);if(e)return x(_e(e),se)}if(O.value){let e=C.seasonCategories.find(e=>e.id===O.value);if(e)return x(Dt(e),pe)}return null}),J=l(()=>{if(T.value){let e=C.usageCategories.find(e=>e.id===T.value);if(e?.imageUrl)return e.imageUrl}if(O.value){let e=C.seasonCategories.find(e=>e.id===O.value);if(e?.imageUrl)return e.imageUrl}if(E.value)return A.value.find(e=>e.imageUrl)?.imageUrl}),Ot=l(()=>J.value?{backgroundImage:`url(${J.value})`}:void 0);l(()=>!T.value&&!E.value);let kt=l(()=>xt.value===`usage`||T.value?`season`:xt.value===`season`||O.value?`usage`:`season`),At=l(()=>kt.value===`season`?`فصل`:`دسته کاربرد`),Y=l(()=>{let e=k.value.trim().toLowerCase(),t=[...A.value];return e&&(t=t.filter(t=>t.name.toLowerCase().includes(e)||t.code.toLowerCase().includes(e)||(t.composition||``).toLowerCase().includes(e))),P.value===`name`?t.sort((e,t)=>e.name.localeCompare(t.name,`fa`)):t.sort((e,t)=>Number(t.isNew)-Number(e.isNew)||e.name.localeCompare(t.name,`fa`))});function jt(){P.value=P.value===`newest`?`name`:`newest`}let Mt=l(()=>P.value===`newest`?`مرتب‌سازی: جدیدترین`:`مرتب‌سازی: نام`);async function Nt(){M.value=!0,N.value=null;try{await C.loadCategories(),A.value=await C.loadBrowseProducts({categoryId:T.value||void 0,season:O.value||void 0,catalogId:E.value||void 0,companyId:D.value||void 0});let e=A.value[0];j.value=e?.catalogName||e?.catalogCode||``}catch(e){N.value=e instanceof Error?e.message:`بارگذاری محصولات ناموفق بود.`,A.value=[]}finally{M.value=!1}}ne(async()=>{await w.hydrate(),await Nt()}),s([T,O,E,D],Nt),s(k,e=>{St.value=e});function Pt(e){let t=T.value,n=t?`usage`:e?`season`:void 0;S.replace({path:`/products`,query:{...t?{categoryId:t}:{},...E.value?{catalogId:E.value}:{},...D.value?{companyId:D.value}:{},...e?{season:e}:{},...n?{filterAxis:n}:{},...k.value?{q:k.value}:{}}})}function Ft(e){let t=O.value,n=t?`season`:e?`usage`:void 0;S.replace({path:`/products`,query:{...e?{categoryId:e}:{},...E.value?{catalogId:E.value}:{},...D.value?{companyId:D.value}:{},...t?{season:t}:{},...n?{filterAxis:n}:{},...k.value?{q:k.value}:{}}})}function X(e){S.push({path:`/product`,query:{id:e}})}function It(e){return C.seasonCategories.find(t=>t.id===e)?.title??e}function Lt(e){w.toggle(e)}function Rt(){I.value=T.value,L.value=O.value,R.value=!1,z.value=!1,F.value=!0}function Z(){F.value=!1,R.value=!1,z.value=!1}function zt(){z.value=!1,R.value=!R.value}function Bt(){R.value=!1,z.value=!z.value}function Q(e){I.value=e,R.value=!1}function $(e){L.value=e,z.value=!1}b(B,()=>{R.value=!1}),b(Ct,()=>{z.value=!1}),b(V,()=>{R.value=!1}),b(H,()=>{z.value=!1});function Vt(e,t){if(e)return`usage`;if(t)return`season`}function Ht(e,t){let n=Vt(e,t);return{...e?{categoryId:e}:{},...t?{season:t}:{},...n?{filterAxis:n}:{},...D.value?{companyId:D.value}:{},...k.value?{q:k.value}:{}}}function Ut(){S.replace({path:`/products`,query:Ht(I.value,L.value)}),Z()}function Wt(){I.value=``,L.value=``,S.replace({path:`/products`,query:Ht(``,``)}),Z()}return s(F,e=>{typeof window<`u`&&window.matchMedia(`(min-width: 768px)`).matches||(document.body.style.overflow=e?`hidden`:``)}),e(()=>{document.body.style.overflow=``}),(e,s)=>(i(),d(`div`,be,[c(me,{class:`mobile-only`,title:G.value,"show-back":``,centered:``,onBack:s[0]||=e=>_(S).back()},{trailing:r(()=>[U.value?(i(),d(`button`,{key:0,type:`button`,class:t([`nav-filter`,{"nav-filter--active":W.value}]),"aria-label":`فیلتر محصولات`,"aria-expanded":F.value,onClick:Rt},[c(fe,{size:18})],10,xe)):u(``,!0)]),_:1},8,[`title`]),m(`header`,Se,[m(`div`,Ce,[m(`h1`,we,o(G.value),1),m(`p`,Te,o(K.value.tagline||(k.value?`نتایج جستجو`:`مشاهده و ثبت سفارش`)),1)])]),U.value?(i(),d(`div`,Ee,[m(`div`,De,[s[14]||=m(`header`,{class:`products-filter-sheet__head`},[m(`h2`,null,`فیلتر محصولات`)],-1),m(`label`,Oe,[s[10]||=m(`span`,{class:`products-filter-section__title`},`دسته کاربرد`,-1),m(`div`,{ref_key:`categoryRootDesk`,ref:V,class:`field-select`},[m(`button`,{type:`button`,class:t([`field-select__trigger`,{"is-open":R.value}]),"aria-haspopup":`listbox`,"aria-expanded":R.value,onClick:zt},[m(`span`,{class:t({"is-placeholder":!I.value})},o(wt.value),3),s[9]||=m(`svg`,{class:`field-select__chevron`,viewBox:`0 0 12 12`,"aria-hidden":`true`},[m(`path`,{d:`M2.5 4.5 6 8l3.5-3.5`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.4`,"stroke-linecap":`round`})],-1)],10,ke),R.value?(i(),d(`ul`,Ae,[m(`li`,null,[m(`button`,{type:`button`,role:`option`,class:t([`field-select__option`,{"is-active":!I.value}]),onClick:s[1]||=e=>Q(``)},` همه دسته‌ها `,2)]),(i(!0),d(p,null,n(_(C).usageCategories,e=>(i(),d(`li`,{key:e.id},[m(`button`,{type:`button`,role:`option`,class:t([`field-select__option`,{"is-active":I.value===e.id}]),onClick:t=>Q(e.id)},o(e.title),11,je)]))),128))])):u(``,!0)],512)]),m(`label`,Me,[s[12]||=m(`span`,{class:`products-filter-section__title`},`فصل`,-1),m(`div`,{ref_key:`seasonRootDesk`,ref:H,class:`field-select`},[m(`button`,{type:`button`,class:t([`field-select__trigger`,{"is-open":z.value}]),"aria-haspopup":`listbox`,"aria-expanded":z.value,onClick:Bt},[m(`span`,{class:t({"is-placeholder":!L.value})},o(Tt.value),3),s[11]||=m(`svg`,{class:`field-select__chevron`,viewBox:`0 0 12 12`,"aria-hidden":`true`},[m(`path`,{d:`M2.5 4.5 6 8l3.5-3.5`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.4`,"stroke-linecap":`round`})],-1)],10,Ne),z.value?(i(),d(`ul`,Pe,[m(`li`,null,[m(`button`,{type:`button`,role:`option`,class:t([`field-select__option`,{"is-active":!L.value}]),onClick:s[2]||=e=>$(``)},` همه فصول `,2)]),(i(!0),d(p,null,n(_(C).seasonCategories,e=>(i(),d(`li`,{key:e.id},[m(`button`,{type:`button`,role:`option`,class:t([`field-select__option`,{"is-active":L.value===e.id}]),onClick:t=>$(e.id)},o(e.title),11,Fe)]))),128))])):u(``,!0)],512)]),m(`div`,Ie,[c(ue,{onClick:Ut},{default:r(()=>[...s[13]||=[f(`اعمال فیلتر`,-1)]]),_:1}),W.value?(i(),d(`button`,{key:0,type:`button`,class:`products-filter-clear`,onClick:Wt},` پاک کردن فیلترها `)):u(``,!0)])])])):u(``,!0),(i(),g(re,{to:`body`},[c(ae,{name:`products-filter-sheet`},{default:r(()=>[F.value&&U.value?(i(),d(`div`,{key:0,class:`products-filter-panel mobile-only`,role:`dialog`,"aria-modal":`true`,"aria-labelledby":`products-filter-title`,onClick:y(Z,[`self`])},[m(`div`,{class:`products-filter-sheet`,onClick:s[6]||=y(()=>{},[`stop`])},[s[21]||=m(`div`,{class:`products-filter-sheet__handle`,"aria-hidden":`true`},null,-1),m(`header`,{class:`products-filter-sheet__head`},[s[15]||=m(`h2`,{id:`products-filter-title`},`فیلتر محصولات`,-1),m(`button`,{type:`button`,class:`products-filter-sheet__close`,"aria-label":`بستن`,onClick:Z},` × `)]),m(`label`,Le,[s[17]||=m(`span`,{class:`products-filter-section__title`},`دسته کاربرد`,-1),m(`div`,{ref_key:`categoryRoot`,ref:B,class:`field-select`},[m(`button`,{type:`button`,class:t([`field-select__trigger`,{"is-open":R.value}]),"aria-haspopup":`listbox`,"aria-expanded":R.value,onClick:zt},[m(`span`,{class:t({"is-placeholder":!I.value})},o(wt.value),3),s[16]||=m(`svg`,{class:`field-select__chevron`,viewBox:`0 0 12 12`,"aria-hidden":`true`},[m(`path`,{d:`M2.5 4.5 6 8l3.5-3.5`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.4`,"stroke-linecap":`round`})],-1)],10,Re),R.value?(i(),d(`ul`,ze,[m(`li`,null,[m(`button`,{type:`button`,role:`option`,class:t([`field-select__option`,{"is-active":!I.value}]),"aria-selected":!I.value,onClick:s[3]||=e=>Q(``)},` همه دسته‌ها `,10,Be)]),(i(!0),d(p,null,n(_(C).usageCategories,e=>(i(),d(`li`,{key:e.id},[m(`button`,{type:`button`,role:`option`,class:t([`field-select__option`,{"is-active":I.value===e.id}]),"aria-selected":I.value===e.id,onClick:t=>Q(e.id)},o(e.title),11,Ve)]))),128))])):u(``,!0)],512)]),m(`label`,He,[s[19]||=m(`span`,{class:`products-filter-section__title`},`فصل`,-1),m(`div`,{ref_key:`seasonRoot`,ref:Ct,class:`field-select`},[m(`button`,{type:`button`,class:t([`field-select__trigger`,{"is-open":z.value}]),"aria-haspopup":`listbox`,"aria-expanded":z.value,onClick:Bt},[m(`span`,{class:t({"is-placeholder":!L.value})},o(Tt.value),3),s[18]||=m(`svg`,{class:`field-select__chevron`,viewBox:`0 0 12 12`,"aria-hidden":`true`},[m(`path`,{d:`M2.5 4.5 6 8l3.5-3.5`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.4`,"stroke-linecap":`round`})],-1)],10,Ue),z.value?(i(),d(`ul`,We,[m(`li`,null,[m(`button`,{type:`button`,role:`option`,class:t([`field-select__option`,{"is-active":!L.value}]),"aria-selected":!L.value,onClick:s[4]||=e=>$(``)},` همه فصول `,10,Ge)]),(i(!0),d(p,null,n(_(C).seasonCategories,e=>(i(),d(`li`,{key:e.id},[m(`button`,{type:`button`,role:`option`,class:t([`field-select__option`,{"is-active":L.value===e.id}]),"aria-selected":L.value===e.id,onClick:t=>$(e.id)},o(e.title),11,Ke)]))),128))])):u(``,!0)],512)]),m(`div`,qe,[c(ue,{block:``,onClick:Ut},{default:r(()=>[...s[20]||=[f(`اعمال فیلتر`,-1)]]),_:1}),W.value?(i(),d(`button`,{key:0,type:`button`,class:`products-filter-clear`,onClick:Wt},` پاک کردن فیلترها `)):u(``,!0),m(`button`,{type:`button`,class:`products-filter-link`,onClick:s[5]||=e=>{_(S).push(`/categories`),Z()}},` مشاهده همه دسته‌بندی‌ها `)])])])):u(``,!0)]),_:1})])),m(`div`,Je,[N.value?(i(),d(`p`,Ye,o(N.value),1)):M.value?(i(),g(he,{key:1,variant:`grid`})):(i(),d(p,{key:2},[m(`section`,{class:t([`cat-banner`,{"cat-banner--photo":!!J.value}]),style:a(Ot.value)},[m(`div`,Xe,[K.value.lead?(i(),d(`p`,Ze,o(K.value.lead),1)):u(``,!0),K.value.headline||q.value&&J.value?(i(),d(`div`,Qe,[q.value&&J.value?(i(),d(`span`,$e,[(i(),g(ee(q.value),{size:22,color:`#ffffff`}))])):u(``,!0),K.value.headline?(i(),d(`h2`,et,o(K.value.headline),1)):u(``,!0)])):K.value.headline?(i(),d(`h2`,tt,o(K.value.headline),1)):u(``,!0),K.value.tagline?(i(),d(`p`,nt,o(K.value.tagline),1)):u(``,!0)]),q.value&&!J.value?(i(),d(`span`,rt,[(i(),g(ee(q.value),{size:26,color:`#ffffff`}))])):u(``,!0)],6),U.value?(i(),d(`div`,it,[m(`div`,{class:`chips`,role:`tablist`,"aria-label":At.value},[kt.value===`season`?(i(),d(p,{key:0},[m(`button`,{type:`button`,class:t([`chip`,{"chip--active":!O.value}]),onClick:s[7]||=e=>Pt(``)},` همه `,2),(i(!0),d(p,null,n(_(C).seasonCategories,e=>(i(),d(`button`,{key:e.id,type:`button`,class:t([`chip`,{"chip--active":O.value===e.id}]),onClick:t=>Pt(e.id)},o(e.title),11,ot))),128))],64)):(i(),d(p,{key:1},[m(`button`,{type:`button`,class:t([`chip`,{"chip--active":!T.value}]),onClick:s[8]||=e=>Ft(``)},` همه `,2),(i(!0),d(p,null,n(_(C).usageCategories,e=>(i(),d(`button`,{key:e.id,type:`button`,class:t([`chip`,{"chip--active":T.value===e.id}]),onClick:t=>Ft(e.id)},o(e.title),11,st))),128))],64))],8,at)])):u(``,!0),m(`div`,ct,[m(`span`,null,`تعداد محصولات: `+o(Y.value.length.toLocaleString(`fa-IR`)),1),m(`button`,{type:`button`,class:`list-meta__sort`,"aria-label":Mt.value,onClick:jt},[...s[22]||=[te(`۱مرتب‌سازی`,3)]],8,lt)]),m(`div`,ut,[(i(!0),d(p,null,n(Y.value,e=>(i(),d(`article`,{key:e.id,class:`product-item`,onClick:t=>X(e.id)},[m(`div`,{class:`product-item__image`,style:a(e.imageUrl?{backgroundImage:`url(${e.imageUrl})`}:void 0)},null,4),m(`div`,ft,[m(`div`,pt,[m(`div`,mt,[m(`strong`,null,o(e.name),1),e.isNew?(i(),d(`span`,ht,`جدید`)):u(``,!0)]),m(`button`,{type:`button`,class:`bookmark`,"aria-label":_(w).isFavorite(e.id)?`حذف از علاقه‌مندی‌ها`:`افزودن به علاقه‌مندی‌ها`,"aria-pressed":_(w).isFavorite(e.id),onClick:y(t=>Lt(e.id),[`stop`])},[c(ve,{size:18,filled:_(w).isFavorite(e.id),color:_(w).isFavorite(e.id)?`#0a353c`:`#9ca3af`},null,8,[`filled`,`color`])],8,gt)]),m(`ul`,_t,[m(`li`,null,`عرض: `+o(e.widthCm.toLocaleString(`fa-IR`))+` سانتی‌متر`,1),m(`li`,null,`ترکیب: `+o(e.composition||`—`),1),m(`li`,null,`مناسب: `+o(It(e.season)),1)]),m(`div`,vt,[(i(!0),d(p,null,n(e.colors.slice(0,6),(t,n)=>(i(),d(`span`,{key:n,class:`swatch`,style:a(_(ye)(t,e.colorImages?.[n]||e.imageUrls?.[n]))},null,4))),128))]),m(`button`,{type:`button`,class:`details-link`,onClick:y(t=>X(e.id),[`stop`])},[s[23]||=f(` مشاهده جزئیات `,-1),c(de,{size:14})],8,yt)])],8,dt))),128))]),Y.value.length?u(``,!0):(i(),d(`p`,bt,`محصولی در این دسته یافت نشد.`))],64))])]))}}),[[`__scopeId`,`data-v-393a2834`]]);export{S as default}; \ No newline at end of file diff --git a/dist/assets/ProductsView-DtAZBhWt.js b/dist/assets/ProductsView-DtAZBhWt.js deleted file mode 100644 index 05948f8..0000000 --- a/dist/assets/ProductsView-DtAZBhWt.js +++ /dev/null @@ -1 +0,0 @@ -import{D as e,E as t,Et as n,G as r,J as i,K as a,Kt as o,M as s,N as c,O as l,P as ee,S as te,T as u,Xt as d,Yt as f,Z as p,at as m,b as h,et as ne,g as re,h as ie,j as ae,st as g,t as _,vt as v,w as y}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";import{n as oe,u as b}from"./BasicIcon-BXxbbWA_.js";import{t as x}from"./dist-2yEcZq4e.js";import{T as se,l as ce,n as le,o as ue}from"./index-BAQfYU-Q.js";import{t as de}from"./IconFilter-C0e5CP4I.js";import{t as fe}from"./IconDiamond-R4uguqMC.js";import{t as pe}from"./PageHeader-DTO8lja2.js";import"./SearchField-BMLbKLPW.js";import{t as me}from"./PageSkeleton-DHtB6RUa.js";import{t as he}from"./crm-CooNUbmr.js";import{n as ge,t as _e}from"./categoryIcons-xvNXaT6R.js";import{t as ve}from"./IconHeart-Be5RRWq4.js";import{n as ye}from"./colorSwatch-BgOH1LE5.js";var be={class:`page products-page`},xe=[`aria-expanded`],Se={class:`desktop-page__head desktop-only products-desk-head`},Ce={class:`products-desk-head__copy`},we={class:`desktop-page__title`},Te={class:`desktop-page__subtitle`},Ee={key:0,class:`products-filter-desk desktop-only`},De={class:`products-filter-sheet products-filter-sheet--desk`},Oe={class:`products-filter-section`},ke=[`aria-expanded`],Ae={key:0,class:`field-select__menu`,role:`listbox`,"aria-label":`دسته کاربرد`},je=[`onClick`],Me={class:`products-filter-section`},Ne=[`aria-expanded`],Pe={key:0,class:`field-select__menu`,role:`listbox`,"aria-label":`فصل`},Fe=[`onClick`],Ie={class:`products-filter-actions products-filter-actions--desk`},Le={class:`products-filter-section`},Re=[`aria-expanded`],ze={key:0,class:`field-select__menu`,role:`listbox`,"aria-label":`دسته کاربرد`},Be=[`aria-selected`],Ve=[`aria-selected`,`onClick`],He={class:`products-filter-section`},Ue=[`aria-expanded`],We={key:0,class:`field-select__menu`,role:`listbox`,"aria-label":`فصل`},Ge=[`aria-selected`],Ke=[`aria-selected`,`onClick`],qe={class:`products-filter-actions`},Je={class:`page__scroll page__scroll--with-nav products-scroll`},Ye={key:0},Xe={class:`cat-banner__content`},Ze={key:0,class:`cat-banner__lead`},Qe={key:1,class:`cat-banner__title-row`},$e={key:0,class:`cat-banner__icon-ring`,"aria-hidden":`true`},et={key:1,class:`cat-banner__title`},tt={key:2,class:`cat-banner__title`},nt={key:3,class:`cat-banner__tagline`},rt={key:0,class:`cat-banner__icon-ring cat-banner__icon-ring--aside`,"aria-hidden":`true`},it={key:0,class:`chips-row scroll-x`},at=[`aria-label`],ot=[`onClick`],st=[`onClick`],ct={class:`list-meta`},lt=[`aria-label`],ut={class:`products-list`},dt=[`onClick`],ft={class:`product-item__body`},pt={class:`product-item__head`},mt={class:`product-item__title`},ht={key:0,class:`new-tag`},gt=[`aria-label`,`aria-pressed`,`onClick`],_t={class:`product-item__specs`},vt={class:`swatches`},yt=[`onClick`],bt={key:1,class:`empty-list`},S=_(ee({__name:`ProductsView`,setup(ee){let _=ie(),S=re(),C=he(),w=ce(),T=y(()=>String(_.query.categoryId??``)),E=y(()=>String(_.query.catalogId??``)),D=y(()=>String(_.query.companyId??``)),O=y(()=>String(_.query.season??``)),xt=y(()=>String(_.query.filterAxis??``)),k=y(()=>String(_.query.q??``)),St=v(String(_.query.q??``)),A=v([]),j=v(``),M=v(!0),N=v(null),P=v(`newest`),F=v(!1),I=v(``),L=v(``),R=v(!1),z=v(!1),Ct=v(null),wt=v(null),B=v(null),V=v(null),H=y(()=>!E.value),U=y(()=>!!T.value||!!O.value),W=y(()=>I.value?C.usageCategories.find(e=>e.id===I.value)?.title??`همه دسته‌ها`:`همه دسته‌ها`),G=y(()=>L.value?C.seasonCategories.find(e=>e.id===L.value)?.title??`همه فصول`:`همه فصول`),K=y(()=>E.value&&j.value?j.value:T.value?C.usageCategories.find(e=>e.id===T.value)?.title??`محصولات`:O.value?C.seasonCategories.find(e=>e.id===O.value)?.title??`محصولات`:k.value?`جستجو: ${k.value}`:`محصولات`);function Tt(e){let t=e.trim();return t.startsWith(`پارچه‌های `)?{lead:`پارچه‌های`,headline:t.slice(10)}:{lead:void 0,headline:t}}function Et(e){return e.icon||(e.id===`summer`?`bolt`:e.id===`winter`?`feather`:`diamond`)}let q=y(()=>{if(T.value){let e=C.usageCategories.find(e=>e.id===T.value),t=Tt(e?.title??K.value);return{lead:e?.showTitle===!1?void 0:t.lead,headline:e?.showTitle===!1?void 0:t.headline,tagline:e?.showSubtitle===!1?void 0:e?.subtitle,showIcon:e?.showIcon!==!1}}if(O.value){let e=C.seasonCategories.find(e=>e.id===O.value);return{lead:void 0,headline:e?.showTitle===!1?void 0:e?.title??K.value,tagline:e?.showDescription===!1?void 0:e?.description||void 0,showIcon:e?.showIcon!==!1}}return E.value?{lead:`کالیته`,headline:j.value||K.value,tagline:`انتخاب محصول از کالیته`,showIcon:!0}:{lead:void 0,headline:K.value,tagline:k.value?`نتایج جستجو`:`مشاهده و ثبت سفارش`,showIcon:!1}}),J=y(()=>{if(q.value.showIcon===!1)return null;if(T.value){let e=C.usageCategories.find(e=>e.id===T.value);if(e)return _e(ge(e),se)}if(O.value){let e=C.seasonCategories.find(e=>e.id===O.value);if(e)return _e(Et(e),fe)}return null}),Y=y(()=>{if(T.value){let e=C.usageCategories.find(e=>e.id===T.value);if(e?.imageUrl)return e.imageUrl}if(O.value){let e=C.seasonCategories.find(e=>e.id===O.value);if(e?.imageUrl)return e.imageUrl}if(E.value)return A.value.find(e=>e.imageUrl)?.imageUrl}),Dt=y(()=>Y.value?{backgroundImage:`url(${Y.value})`}:void 0);y(()=>!T.value&&!E.value);let Ot=y(()=>xt.value===`usage`||T.value?`season`:xt.value===`season`||O.value?`usage`:`season`),kt=y(()=>Ot.value===`season`?`فصل`:`دسته کاربرد`),X=y(()=>{let e=k.value.trim().toLowerCase(),t=[...A.value];return e&&(t=t.filter(t=>t.name.toLowerCase().includes(e)||t.code.toLowerCase().includes(e)||(t.composition||``).toLowerCase().includes(e))),P.value===`name`?t.sort((e,t)=>e.name.localeCompare(t.name,`fa`)):t.sort((e,t)=>Number(t.isNew)-Number(e.isNew)||e.name.localeCompare(t.name,`fa`))});function At(){P.value=P.value===`newest`?`name`:`newest`}let jt=y(()=>P.value===`newest`?`مرتب‌سازی: جدیدترین`:`مرتب‌سازی: نام`);async function Mt(){M.value=!0,N.value=null;try{await C.loadCategories(),A.value=await C.loadBrowseProducts({categoryId:T.value||void 0,season:O.value||void 0,catalogId:E.value||void 0,companyId:D.value||void 0});let e=A.value[0];j.value=e?.catalogName||e?.catalogCode||``}catch(e){N.value=e instanceof Error?e.message:`بارگذاری محصولات ناموفق بود.`,A.value=[]}finally{M.value=!1}}r(async()=>{await w.hydrate(),await Mt()}),m([T,O,E,D],Mt),m(k,e=>{St.value=e});function Nt(e){let t=T.value,n=t?`usage`:e?`season`:void 0;S.replace({path:`/products`,query:{...t?{categoryId:t}:{},...E.value?{catalogId:E.value}:{},...D.value?{companyId:D.value}:{},...e?{season:e}:{},...n?{filterAxis:n}:{},...k.value?{q:k.value}:{}}})}function Pt(e){let t=O.value,n=t?`season`:e?`usage`:void 0;S.replace({path:`/products`,query:{...e?{categoryId:e}:{},...E.value?{catalogId:E.value}:{},...D.value?{companyId:D.value}:{},...t?{season:t}:{},...n?{filterAxis:n}:{},...k.value?{q:k.value}:{}}})}function Ft(e){S.push({path:`/product`,query:{id:e}})}function It(e){return C.seasonCategories.find(t=>t.id===e)?.title??e}function Lt(e){w.toggle(e)}function Rt(){I.value=T.value,L.value=O.value,R.value=!1,z.value=!1,F.value=!0}function Z(){F.value=!1,R.value=!1,z.value=!1}function zt(){z.value=!1,R.value=!R.value}function Bt(){R.value=!1,z.value=!z.value}function Q(e){I.value=e,R.value=!1}function $(e){L.value=e,z.value=!1}x(Ct,()=>{R.value=!1}),x(wt,()=>{z.value=!1}),x(B,()=>{R.value=!1}),x(V,()=>{z.value=!1});function Vt(e,t){if(e)return`usage`;if(t)return`season`}function Ht(e,t){let n=Vt(e,t);return{...e?{categoryId:e}:{},...t?{season:t}:{},...n?{filterAxis:n}:{},...D.value?{companyId:D.value}:{},...k.value?{q:k.value}:{}}}function Ut(){S.replace({path:`/products`,query:Ht(I.value,L.value)}),Z()}function Wt(){I.value=``,L.value=``,S.replace({path:`/products`,query:Ht(``,``)}),Z()}return m(F,e=>{typeof window<`u`&&window.matchMedia(`(min-width: 768px)`).matches||(document.body.style.overflow=e?`hidden`:``)}),a(()=>{document.body.style.overflow=``}),(r,a)=>(i(),l(`div`,be,[c(pe,{class:`mobile-only`,title:K.value,"show-back":``,centered:``,onBack:a[0]||=e=>n(S).back()},{trailing:g(()=>[H.value?(i(),l(`button`,{key:0,type:`button`,class:o([`nav-filter`,{"nav-filter--active":U.value}]),"aria-label":`فیلتر محصولات`,"aria-expanded":F.value,onClick:Rt},[c(de,{size:18})],10,xe)):e(``,!0)]),_:1},8,[`title`]),u(`header`,Se,[u(`div`,Ce,[u(`h1`,we,d(K.value),1),u(`p`,Te,d(q.value.tagline||(k.value?`نتایج جستجو`:`مشاهده و ثبت سفارش`)),1)])]),H.value?(i(),l(`div`,Ee,[u(`div`,De,[a[14]||=u(`header`,{class:`products-filter-sheet__head`},[u(`h2`,null,`فیلتر محصولات`)],-1),u(`label`,Oe,[a[10]||=u(`span`,{class:`products-filter-section__title`},`دسته کاربرد`,-1),u(`div`,{ref_key:`categoryRootDesk`,ref:B,class:`field-select`},[u(`button`,{type:`button`,class:o([`field-select__trigger`,{"is-open":R.value}]),"aria-haspopup":`listbox`,"aria-expanded":R.value,onClick:zt},[u(`span`,{class:o({"is-placeholder":!I.value})},d(W.value),3),a[9]||=u(`svg`,{class:`field-select__chevron`,viewBox:`0 0 12 12`,"aria-hidden":`true`},[u(`path`,{d:`M2.5 4.5 6 8l3.5-3.5`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.4`,"stroke-linecap":`round`})],-1)],10,ke),R.value?(i(),l(`ul`,Ae,[u(`li`,null,[u(`button`,{type:`button`,role:`option`,class:o([`field-select__option`,{"is-active":!I.value}]),onClick:a[1]||=e=>Q(``)},` همه دسته‌ها `,2)]),(i(!0),l(h,null,p(n(C).usageCategories,e=>(i(),l(`li`,{key:e.id},[u(`button`,{type:`button`,role:`option`,class:o([`field-select__option`,{"is-active":I.value===e.id}]),onClick:t=>Q(e.id)},d(e.title),11,je)]))),128))])):e(``,!0)],512)]),u(`label`,Me,[a[12]||=u(`span`,{class:`products-filter-section__title`},`فصل`,-1),u(`div`,{ref_key:`seasonRootDesk`,ref:V,class:`field-select`},[u(`button`,{type:`button`,class:o([`field-select__trigger`,{"is-open":z.value}]),"aria-haspopup":`listbox`,"aria-expanded":z.value,onClick:Bt},[u(`span`,{class:o({"is-placeholder":!L.value})},d(G.value),3),a[11]||=u(`svg`,{class:`field-select__chevron`,viewBox:`0 0 12 12`,"aria-hidden":`true`},[u(`path`,{d:`M2.5 4.5 6 8l3.5-3.5`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.4`,"stroke-linecap":`round`})],-1)],10,Ne),z.value?(i(),l(`ul`,Pe,[u(`li`,null,[u(`button`,{type:`button`,role:`option`,class:o([`field-select__option`,{"is-active":!L.value}]),onClick:a[2]||=e=>$(``)},` همه فصول `,2)]),(i(!0),l(h,null,p(n(C).seasonCategories,e=>(i(),l(`li`,{key:e.id},[u(`button`,{type:`button`,role:`option`,class:o([`field-select__option`,{"is-active":L.value===e.id}]),onClick:t=>$(e.id)},d(e.title),11,Fe)]))),128))])):e(``,!0)],512)]),u(`div`,Ie,[c(le,{onClick:Ut},{default:g(()=>[...a[13]||=[s(`اعمال فیلتر`,-1)]]),_:1}),U.value?(i(),l(`button`,{key:0,type:`button`,class:`products-filter-clear`,onClick:Wt},` پاک کردن فیلترها `)):e(``,!0)])])])):e(``,!0),(i(),t(te,{to:`body`},[c(oe,{name:`products-filter-sheet`},{default:g(()=>[F.value&&H.value?(i(),l(`div`,{key:0,class:`products-filter-panel mobile-only`,role:`dialog`,"aria-modal":`true`,"aria-labelledby":`products-filter-title`,onClick:b(Z,[`self`])},[u(`div`,{class:`products-filter-sheet`,onClick:a[6]||=b(()=>{},[`stop`])},[a[21]||=u(`div`,{class:`products-filter-sheet__handle`,"aria-hidden":`true`},null,-1),u(`header`,{class:`products-filter-sheet__head`},[a[15]||=u(`h2`,{id:`products-filter-title`},`فیلتر محصولات`,-1),u(`button`,{type:`button`,class:`products-filter-sheet__close`,"aria-label":`بستن`,onClick:Z},` × `)]),u(`label`,Le,[a[17]||=u(`span`,{class:`products-filter-section__title`},`دسته کاربرد`,-1),u(`div`,{ref_key:`categoryRoot`,ref:Ct,class:`field-select`},[u(`button`,{type:`button`,class:o([`field-select__trigger`,{"is-open":R.value}]),"aria-haspopup":`listbox`,"aria-expanded":R.value,onClick:zt},[u(`span`,{class:o({"is-placeholder":!I.value})},d(W.value),3),a[16]||=u(`svg`,{class:`field-select__chevron`,viewBox:`0 0 12 12`,"aria-hidden":`true`},[u(`path`,{d:`M2.5 4.5 6 8l3.5-3.5`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.4`,"stroke-linecap":`round`})],-1)],10,Re),R.value?(i(),l(`ul`,ze,[u(`li`,null,[u(`button`,{type:`button`,role:`option`,class:o([`field-select__option`,{"is-active":!I.value}]),"aria-selected":!I.value,onClick:a[3]||=e=>Q(``)},` همه دسته‌ها `,10,Be)]),(i(!0),l(h,null,p(n(C).usageCategories,e=>(i(),l(`li`,{key:e.id},[u(`button`,{type:`button`,role:`option`,class:o([`field-select__option`,{"is-active":I.value===e.id}]),"aria-selected":I.value===e.id,onClick:t=>Q(e.id)},d(e.title),11,Ve)]))),128))])):e(``,!0)],512)]),u(`label`,He,[a[19]||=u(`span`,{class:`products-filter-section__title`},`فصل`,-1),u(`div`,{ref_key:`seasonRoot`,ref:wt,class:`field-select`},[u(`button`,{type:`button`,class:o([`field-select__trigger`,{"is-open":z.value}]),"aria-haspopup":`listbox`,"aria-expanded":z.value,onClick:Bt},[u(`span`,{class:o({"is-placeholder":!L.value})},d(G.value),3),a[18]||=u(`svg`,{class:`field-select__chevron`,viewBox:`0 0 12 12`,"aria-hidden":`true`},[u(`path`,{d:`M2.5 4.5 6 8l3.5-3.5`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.4`,"stroke-linecap":`round`})],-1)],10,Ue),z.value?(i(),l(`ul`,We,[u(`li`,null,[u(`button`,{type:`button`,role:`option`,class:o([`field-select__option`,{"is-active":!L.value}]),"aria-selected":!L.value,onClick:a[4]||=e=>$(``)},` همه فصول `,10,Ge)]),(i(!0),l(h,null,p(n(C).seasonCategories,e=>(i(),l(`li`,{key:e.id},[u(`button`,{type:`button`,role:`option`,class:o([`field-select__option`,{"is-active":L.value===e.id}]),"aria-selected":L.value===e.id,onClick:t=>$(e.id)},d(e.title),11,Ke)]))),128))])):e(``,!0)],512)]),u(`div`,qe,[c(le,{block:``,onClick:Ut},{default:g(()=>[...a[20]||=[s(`اعمال فیلتر`,-1)]]),_:1}),U.value?(i(),l(`button`,{key:0,type:`button`,class:`products-filter-clear`,onClick:Wt},` پاک کردن فیلترها `)):e(``,!0),u(`button`,{type:`button`,class:`products-filter-link`,onClick:a[5]||=e=>{n(S).push(`/categories`),Z()}},` مشاهده همه دسته‌بندی‌ها `)])])])):e(``,!0)]),_:1})])),u(`div`,Je,[N.value?(i(),l(`p`,Ye,d(N.value),1)):M.value?(i(),t(me,{key:1,variant:`grid`})):(i(),l(h,{key:2},[u(`section`,{class:o([`cat-banner`,{"cat-banner--photo":!!Y.value}]),style:f(Dt.value)},[u(`div`,Xe,[q.value.lead?(i(),l(`p`,Ze,d(q.value.lead),1)):e(``,!0),q.value.headline||J.value&&Y.value?(i(),l(`div`,Qe,[J.value&&Y.value?(i(),l(`span`,$e,[(i(),t(ne(J.value),{size:22,color:`#ffffff`}))])):e(``,!0),q.value.headline?(i(),l(`h2`,et,d(q.value.headline),1)):e(``,!0)])):q.value.headline?(i(),l(`h2`,tt,d(q.value.headline),1)):e(``,!0),q.value.tagline?(i(),l(`p`,nt,d(q.value.tagline),1)):e(``,!0)]),J.value&&!Y.value?(i(),l(`span`,rt,[(i(),t(ne(J.value),{size:26,color:`#ffffff`}))])):e(``,!0)],6),H.value?(i(),l(`div`,it,[u(`div`,{class:`chips`,role:`tablist`,"aria-label":kt.value},[Ot.value===`season`?(i(),l(h,{key:0},[u(`button`,{type:`button`,class:o([`chip`,{"chip--active":!O.value}]),onClick:a[7]||=e=>Nt(``)},` همه `,2),(i(!0),l(h,null,p(n(C).seasonCategories,e=>(i(),l(`button`,{key:e.id,type:`button`,class:o([`chip`,{"chip--active":O.value===e.id}]),onClick:t=>Nt(e.id)},d(e.title),11,ot))),128))],64)):(i(),l(h,{key:1},[u(`button`,{type:`button`,class:o([`chip`,{"chip--active":!T.value}]),onClick:a[8]||=e=>Pt(``)},` همه `,2),(i(!0),l(h,null,p(n(C).usageCategories,e=>(i(),l(`button`,{key:e.id,type:`button`,class:o([`chip`,{"chip--active":T.value===e.id}]),onClick:t=>Pt(e.id)},d(e.title),11,st))),128))],64))],8,at)])):e(``,!0),u(`div`,ct,[u(`span`,null,`تعداد محصولات: `+d(X.value.length.toLocaleString(`fa-IR`)),1),u(`button`,{type:`button`,class:`list-meta__sort`,"aria-label":jt.value,onClick:At},[...a[22]||=[ae(`۱مرتب‌سازی`,3)]],8,lt)]),u(`div`,ut,[(i(!0),l(h,null,p(X.value,t=>(i(),l(`article`,{key:t.id,class:`product-item`,onClick:e=>Ft(t.id)},[u(`div`,{class:`product-item__image`,style:f(t.imageUrl?{backgroundImage:`url(${t.imageUrl})`}:void 0)},null,4),u(`div`,ft,[u(`div`,pt,[u(`div`,mt,[u(`strong`,null,d(t.name),1),t.isNew?(i(),l(`span`,ht,`جدید`)):e(``,!0)]),u(`button`,{type:`button`,class:`bookmark`,"aria-label":n(w).isFavorite(t.id)?`حذف از علاقه‌مندی‌ها`:`افزودن به علاقه‌مندی‌ها`,"aria-pressed":n(w).isFavorite(t.id),onClick:b(e=>Lt(t.id),[`stop`])},[c(ve,{size:18,filled:n(w).isFavorite(t.id),color:n(w).isFavorite(t.id)?`#0a353c`:`#9ca3af`},null,8,[`filled`,`color`])],8,gt)]),u(`ul`,_t,[u(`li`,null,`عرض: `+d(t.widthCm.toLocaleString(`fa-IR`))+` سانتی‌متر`,1),u(`li`,null,`ترکیب: `+d(t.composition||`—`),1),u(`li`,null,`مناسب: `+d(It(t.season)),1)]),u(`div`,vt,[(i(!0),l(h,null,p(t.colors.slice(0,6),(e,r)=>(i(),l(`span`,{key:r,class:`swatch`,style:f(n(ye)(e,t.colorImages?.[r]||t.imageUrls?.[r]))},null,4))),128))]),u(`button`,{type:`button`,class:`details-link`,onClick:b(e=>Ft(t.id),[`stop`])},[a[23]||=s(` مشاهده جزئیات `,-1),c(ue,{size:14})],8,yt)])],8,dt))),128))]),X.value.length?e(``,!0):(i(),l(`p`,bt,`محصولی در این دسته یافت نشد.`))],64))])]))}}),[[`__scopeId`,`data-v-393a2834`]]);export{S as default}; \ No newline at end of file diff --git a/dist/assets/ProfileChecksView-CZ9czIQ3.js b/dist/assets/ProfileChecksView-CZ9czIQ3.js deleted file mode 100644 index dbb3a29..0000000 --- a/dist/assets/ProfileChecksView-CZ9czIQ3.js +++ /dev/null @@ -1 +0,0 @@ -import{t as e}from"./CheckListView-BhenoTXJ.js";import{E as t,J as n,P as r}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";var i=r({__name:`ProfileChecksView`,setup(r){return(r,i)=>(n(),t(e))}});export{i as default}; \ No newline at end of file diff --git a/dist/assets/ProfileChecksView-CspNmMYH.js b/dist/assets/ProfileChecksView-CspNmMYH.js new file mode 100644 index 0000000..16d7003 --- /dev/null +++ b/dist/assets/ProfileChecksView-CspNmMYH.js @@ -0,0 +1 @@ +import{t as e}from"./CheckListView-CjmQVBmc.js";import{M as t,u as n,v as r}from"./_plugin-vue_export-helper-1xMDlcEE.js";var i=r({__name:`ProfileChecksView`,setup(r){return(r,i)=>(t(),n(e))}});export{i as default}; \ No newline at end of file diff --git a/dist/assets/ProfileDisplayView-D1_O0poX.js b/dist/assets/ProfileDisplayView-D1_O0poX.js new file mode 100644 index 0000000..52abc2f --- /dev/null +++ b/dist/assets/ProfileDisplayView-D1_O0poX.js @@ -0,0 +1 @@ +import{At as e,F as t,G as n,M as r,Pt as i,_ as a,c as o,d as s,f as c,g as l,i as u,l as d,nt as f,t as p,u as m,ut as h,v as g}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{t as _}from"./BasicIcon-Bzeb0Iwd.js";import{u as v}from"./dist-U-AqZ6hP.js";import{M as y,a as b,c as x,d as S,n as C}from"./index-BrjLizie.js";import{t as w}from"./ProfileSubpageLayout-Ce-Qt1do.js";var T={class:`settings-page`},E={class:`settings-links`,"aria-label":`حساب کاربری`},D={class:`settings-link__icon`,"aria-hidden":`true`},O={class:`settings-link__icon`,"aria-hidden":`true`},k={class:`settings-link__label`},A={key:0},j={class:`display-fieldset`},M={class:`display-grid`,role:`radiogroup`,"aria-label":`حالت نمایش`},N=[`aria-checked`,`onClick`],P={class:`theme-card__icon`,"aria-hidden":`true`},F={class:`theme-card__body`},I={class:`theme-card__label`},L={class:`theme-card__desc`},R={class:`theme-card__check`,"aria-hidden":`true`},z={key:0,class:`display-saved`},B=p(g({__name:`ProfileDisplayView`,setup(p){let g=y(),B=x(),V=S(),H=b(),U=f(!1),{start:W}=v(()=>{U.value=!1},2e3),G=[{value:`light`,label:`روشن`,description:`پس‌زمینه روشن و کنتراست بالا`,icon:`vuesax-linear:sun-1`},{value:`dark`,label:`تاریک`,description:`مناسب استفاده در شب`,icon:`vuesax-linear:moon`},{value:`system`,label:`سیستم`,description:`هم‌تراز با تنظیمات دستگاه`,icon:`vuesax-linear:mobile`}],K=o(()=>V.draftChecks.length);function q(){U.value=!0,W()}function J(){B.logout(),g.replace(`/welcome`)}return(o,f)=>(r(),m(w,{title:`تنظیمات`,subtitle:`نمایش، حساب کاربری و خروج`},{default:n(()=>[d(`div`,T,[d(`nav`,E,[d(`button`,{type:`button`,class:`settings-link`,onClick:f[0]||=e=>h(g).push(`/profile/edit`)},[d(`span`,D,[a(_,{icon:`vuesax-linear:profile-circle`,size:20,"stroke-width":1.5})]),f[2]||=d(`span`,{class:`settings-link__label`},`اطلاعات کاربری`,-1),a(_,{class:`settings-link__chevron`,icon:`vuesax-linear:arrow-left-1`,size:16,"stroke-width":1.5})]),d(`button`,{type:`button`,class:`settings-link`,onClick:f[1]||=e=>h(g).push(`/profile/checks`)},[d(`span`,O,[a(_,{icon:`vuesax-linear:card`,size:20,"stroke-width":1.5})]),d(`span`,k,[f[3]||=l(` لیست چک‌ها `,-1),K.value?(r(),c(`em`,A,`(`+i(K.value)+`)`,1)):s(``,!0)]),a(_,{class:`settings-link__chevron`,icon:`vuesax-linear:arrow-left-1`,size:16,"stroke-width":1.5})])]),d(`fieldset`,j,[f[4]||=d(`legend`,{class:`display-fieldset__legend`},`حالت نمایش`,-1),d(`div`,M,[(r(),c(u,null,t(G,t=>d(`button`,{key:t.value,type:`button`,class:e([`theme-card`,{"theme-card--active":h(H).preference===t.value}]),role:`radio`,"aria-checked":h(H).preference===t.value,onClick:e=>h(H).preference=t.value},[d(`span`,P,[a(_,{icon:t.icon,size:26,"stroke-width":1.5},null,8,[`icon`])]),d(`span`,F,[d(`strong`,I,i(t.label),1),d(`span`,L,i(t.description),1)]),d(`span`,R,[h(H).preference===t.value?(r(),m(_,{key:0,icon:`vuesax-linear:tick-circle`,size:20,"stroke-width":1.75})):s(``,!0)])],10,N)),64))])]),a(C,{block:``,onClick:q},{default:n(()=>[...f[5]||=[l(`ذخیره تنظیمات`,-1)]]),_:1}),U.value?(r(),c(`p`,z,`تنظیمات نمایش ذخیره شد ✓`)):s(``,!0),d(`button`,{type:`button`,class:`settings-logout`,onClick:J},`خروج`)])]),_:1}))}}),[[`__scopeId`,`data-v-f16dc950`]]);export{B as default}; \ No newline at end of file diff --git a/dist/assets/ProfileDisplayView-lgTZCjkL.js b/dist/assets/ProfileDisplayView-lgTZCjkL.js deleted file mode 100644 index 3752aaf..0000000 --- a/dist/assets/ProfileDisplayView-lgTZCjkL.js +++ /dev/null @@ -1 +0,0 @@ -import{D as e,E as t,Et as n,J as r,Kt as i,M as a,N as o,O as s,P as c,T as l,Xt as u,Z as d,b as f,g as p,st as m,t as h,vt as g,w as _}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";import{t as v}from"./BasicIcon-BXxbbWA_.js";import{u as y}from"./dist-nK9ByyUG.js";import{a as b,c as x,d as S,n as C}from"./index-BAQfYU-Q.js";import{t as w}from"./ProfileSubpageLayout-C-s-O95S.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=h(c({__name:`ProfileDisplayView`,setup(c){let h=p(),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=_(()=>V.draftChecks.length);function q(){U.value=!0,W()}function J(){B.logout(),h.replace(`/welcome`)}return(c,p)=>(r(),t(w,{title:`تنظیمات`,subtitle:`نمایش، حساب کاربری و خروج`},{default:m(()=>[l(`div`,T,[l(`nav`,E,[l(`button`,{type:`button`,class:`settings-link`,onClick:p[0]||=e=>n(h).push(`/profile/edit`)},[l(`span`,D,[o(v,{icon:`vuesax-linear:profile-circle`,size:20,"stroke-width":1.5})]),p[2]||=l(`span`,{class:`settings-link__label`},`اطلاعات کاربری`,-1),o(v,{class:`settings-link__chevron`,icon:`vuesax-linear:arrow-left-1`,size:16,"stroke-width":1.5})]),l(`button`,{type:`button`,class:`settings-link`,onClick:p[1]||=e=>n(h).push(`/profile/checks`)},[l(`span`,O,[o(v,{icon:`vuesax-linear:card`,size:20,"stroke-width":1.5})]),l(`span`,k,[p[3]||=a(` لیست چک‌ها `,-1),K.value?(r(),s(`em`,A,`(`+u(K.value)+`)`,1)):e(``,!0)]),o(v,{class:`settings-link__chevron`,icon:`vuesax-linear:arrow-left-1`,size:16,"stroke-width":1.5})])]),l(`fieldset`,j,[p[4]||=l(`legend`,{class:`display-fieldset__legend`},`حالت نمایش`,-1),l(`div`,M,[(r(),s(f,null,d(G,a=>l(`button`,{key:a.value,type:`button`,class:i([`theme-card`,{"theme-card--active":n(H).preference===a.value}]),role:`radio`,"aria-checked":n(H).preference===a.value,onClick:e=>n(H).preference=a.value},[l(`span`,P,[o(v,{icon:a.icon,size:26,"stroke-width":1.5},null,8,[`icon`])]),l(`span`,F,[l(`strong`,I,u(a.label),1),l(`span`,L,u(a.description),1)]),l(`span`,R,[n(H).preference===a.value?(r(),t(v,{key:0,icon:`vuesax-linear:tick-circle`,size:20,"stroke-width":1.75})):e(``,!0)])],10,N)),64))])]),o(C,{block:``,onClick:q},{default:m(()=>[...p[5]||=[a(`ذخیره تنظیمات`,-1)]]),_:1}),U.value?(r(),s(`p`,z,`تنظیمات نمایش ذخیره شد ✓`)):e(``,!0),l(`button`,{type:`button`,class:`settings-logout`,onClick:J},`خروج`)])]),_:1}))}}),[[`__scopeId`,`data-v-f16dc950`]]);export{B as default}; \ No newline at end of file diff --git a/dist/assets/ProfileEditView-D1Tcro0s.js b/dist/assets/ProfileEditView-D1Tcro0s.js new file mode 100644 index 0000000..e49003d --- /dev/null +++ b/dist/assets/ProfileEditView-D1Tcro0s.js @@ -0,0 +1 @@ +import{G as e,K as t,M as n,Pt as r,_ as i,c as a,d as o,f as s,g as c,l,nt as u,t as d,u as f,ut as p,v as m}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{s as h,t as g}from"./BasicIcon-Bzeb0Iwd.js";import{c as _,n as v,r as y}from"./index-BrjLizie.js";import{t as b}from"./FormErrorBanner-Ud1D04xf.js";import{n as x,r as S,t as C}from"./formErrors-DglFjYkZ.js";import{t as w}from"./BaseInput-CpE3bVJZ.js";import{t as T}from"./ProfileSubpageLayout-Ce-Qt1do.js";var E=512,D=.82;async function O(e){if(!e.type.startsWith(`image/`))throw Error(`فقط فایل تصویری مجاز است.`);if(e.size>8388608)throw Error(`حجم تصویر نباید بیشتر از ۸ مگابایت باشد.`);return A(await k(e))}function k(e){return new Promise((t,n)=>{let r=new FileReader;r.onload=()=>t(String(r.result??``)),r.onerror=()=>n(Error(`خواندن تصویر ناموفق بود.`)),r.readAsDataURL(e)})}function A(e){return new Promise((t,n)=>{let r=new Image;r.onload=()=>{let e=Math.min(1,E/Math.max(r.width,r.height)),i=Math.max(1,Math.round(r.width*e)),a=Math.max(1,Math.round(r.height*e)),o=document.createElement(`canvas`);o.width=i,o.height=a;let s=o.getContext(`2d`);if(!s){n(Error(`پردازش تصویر ناموفق بود.`));return}s.drawImage(r,0,0,i,a),t(o.toDataURL(`image/jpeg`,D))},r.onerror=()=>n(Error(`تصویر نامعتبر است.`)),r.src=e})}var j={class:`profile-edit`},M={class:`avatar-editor`},N={class:`avatar-editor__actions`},P={class:`avatar-editor__btns`},F=[`disabled`],I=[`disabled`],L={class:`profile-edit__intro`},R={class:`profile-edit__intro-icon`,"aria-hidden":`true`},z={class:`profile-edit__grid`},B={key:0,class:`form-group profile-edit__full`},V={key:0,class:`input-error-text`},H={class:`profile-edit__actions`},U={key:0,class:`profile-edit__saved`},W=d(m({__name:`ProfileEditView`,setup(d){let m=_(),E=u(m.user?.firstName??``),D=u(m.user?.lastName??``),k=u(m.user?.nationalId??``),A=u(m.user?.address??``),W=u(m.user?.avatarUrl??null),G=u(null),K=u({}),q=u(``),J=u(!1),Y=u(!1),X=a(()=>`${E.value.trim().charAt(0)}${D.value.trim().charAt(0)}`||`؟`);function Z(e){K.value=x(K.value,e),S(K.value)||(q.value=``)}function Q(){G.value?.click()}async function $(e){Y.value=!0,q.value=``;try{let t=await m.updateProfile({avatarUrl:e??``});t?W.value=t.avatarUrl??null:W.value=e}catch(e){q.value=e instanceof Error?e.message:`ذخیره تصویر ناموفق بود.`}finally{Y.value=!1}}async function ee(e){let t=e.target,n=t.files?.[0];if(t.value=``,n){Y.value=!0,q.value=``;try{let e=await O(n);W.value=e,await $(e)}catch(e){q.value=e instanceof Error?e.message:`بارگذاری تصویر ناموفق بود.`,Y.value=!1}}}async function te(){W.value=null,await $(null)}async function ne(){K.value={},q.value=``,J.value=!1;let e={};if(E.value.trim()||(e.firstName=`نام الزامی است.`),D.value.trim()||(e.lastName=`نام خانوادگی الزامی است.`),k.value&&k.value.length!==10&&(e.nationalId=`کد ملی باید ۱۰ رقم باشد.`),S(e)){K.value=e,q.value=C;return}let t={firstName:E.value.trim(),lastName:D.value.trim(),nationalId:k.value||void 0,avatarUrl:W.value??``};if(m.isAgent&&(t.address=A.value.trim()),!await m.updateProfile(t)){q.value=`ذخیره پروفایل ناموفق بود.`;return}J.value=!0,setTimeout(()=>{J.value=!1},2e3)}return(a,u)=>(n(),f(T,{title:`اطلاعات کاربری`,subtitle:`ویرایش تصویر، نام و کد ملی حساب کاربری`},{default:e(()=>[i(b,{message:q.value},null,8,[`message`]),l(`div`,j,[l(`div`,M,[i(y,{src:W.value,initials:X.value,size:96,class:`avatar-editor__photo`},null,8,[`src`,`initials`]),l(`div`,N,[u[8]||=l(`p`,{class:`avatar-editor__title`},`تصویر پروفایل`,-1),u[9]||=l(`p`,{class:`avatar-editor__hint`},`افزودن، تغییر یا حذف عکس نمایش‌داده‌شده در پروفایل`,-1),l(`div`,P,[l(`button`,{type:`button`,class:`avatar-btn`,disabled:Y.value,onClick:Q},r(W.value?`تغییر تصویر`:`افزودن تصویر`),9,F),W.value?(n(),s(`button`,{key:0,type:`button`,class:`avatar-btn avatar-btn--danger`,disabled:Y.value,onClick:te},` حذف تصویر `,8,I)):o(``,!0)])]),l(`input`,{ref_key:`fileInput`,ref:G,type:`file`,accept:`image/*`,class:`avatar-editor__file`,onChange:ee},null,544)]),l(`div`,L,[l(`span`,R,[i(g,{icon:`vuesax-linear:profile-circle`,size:22,"stroke-width":1.5})]),u[10]||=l(`div`,{class:`profile-edit__intro-text`},[l(`strong`,null,`مشخصات فردی`),l(`p`,null,`این اطلاعات روی سفارش‌ها و چک‌های ثبت‌شده نمایش داده می‌شود.`)],-1)]),l(`div`,z,[i(w,{modelValue:E.value,"onUpdate:modelValue":[u[0]||=e=>E.value=e,u[1]||=e=>Z(`firstName`)],label:`نام`,error:K.value.firstName},null,8,[`modelValue`,`error`]),i(w,{modelValue:D.value,"onUpdate:modelValue":[u[2]||=e=>D.value=e,u[3]||=e=>Z(`lastName`)],label:`نام خانوادگی`,error:K.value.lastName},null,8,[`modelValue`,`error`]),i(w,{modelValue:k.value,"onUpdate:modelValue":[u[4]||=e=>k.value=e,u[5]||=e=>Z(`nationalId`)],class:`profile-edit__full`,label:`کد ملی`,maxlength:`10`,inputmode:`numeric`,dir:`ltr`,hint:`برای ثبت چک الزامی است`,error:K.value.nationalId},null,8,[`modelValue`,`error`]),p(m).isAgent?(n(),s(`div`,B,[u[11]||=l(`label`,{class:`form-label`,for:`profile-address`},`آدرس`,-1),t(l(`textarea`,{id:`profile-address`,"onUpdate:modelValue":u[6]||=e=>A.value=e,class:`profile-edit__textarea`,rows:`3`,maxlength:`500`,placeholder:`آدرس کامل محل فعالیت`,onInput:u[7]||=e=>Z(`address`)},null,544),[[h,A.value]]),K.value.address?(n(),s(`p`,V,r(K.value.address),1)):o(``,!0)])):o(``,!0)]),l(`div`,H,[i(v,{class:`profile-edit__save`,onClick:ne},{default:e(()=>[...u[12]||=[c(`ذخیره تغییرات`,-1)]]),_:1}),J.value?(n(),s(`p`,U,`ذخیره شد ✓`)):o(``,!0)])])]),_:1}))}}),[[`__scopeId`,`data-v-f92697c9`]]);export{W as default}; \ No newline at end of file diff --git a/dist/assets/ProfileEditView-DKPvUiwL.js b/dist/assets/ProfileEditView-DKPvUiwL.js deleted file mode 100644 index ffda692..0000000 --- a/dist/assets/ProfileEditView-DKPvUiwL.js +++ /dev/null @@ -1 +0,0 @@ -import{D as e,E as t,Et as n,J as r,M as i,N as a,O as o,P as s,T as c,Xt as l,ct as u,st as d,t as f,vt as p,w as m}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";import{s as h,t as g}from"./BasicIcon-BXxbbWA_.js";import{c as _,n as v,r as y}from"./index-BAQfYU-Q.js";import{t as b}from"./FormErrorBanner-DI5hhxpk.js";import{n as x,r as S,t as C}from"./formErrors-DglFjYkZ.js";import{t as w}from"./BaseInput-CVNdy37R.js";import{t as T}from"./ProfileSubpageLayout-C-s-O95S.js";var E=512,D=.82;async function O(e){if(!e.type.startsWith(`image/`))throw Error(`فقط فایل تصویری مجاز است.`);if(e.size>8388608)throw Error(`حجم تصویر نباید بیشتر از ۸ مگابایت باشد.`);return A(await k(e))}function k(e){return new Promise((t,n)=>{let r=new FileReader;r.onload=()=>t(String(r.result??``)),r.onerror=()=>n(Error(`خواندن تصویر ناموفق بود.`)),r.readAsDataURL(e)})}function A(e){return new Promise((t,n)=>{let r=new Image;r.onload=()=>{let e=Math.min(1,E/Math.max(r.width,r.height)),i=Math.max(1,Math.round(r.width*e)),a=Math.max(1,Math.round(r.height*e)),o=document.createElement(`canvas`);o.width=i,o.height=a;let s=o.getContext(`2d`);if(!s){n(Error(`پردازش تصویر ناموفق بود.`));return}s.drawImage(r,0,0,i,a),t(o.toDataURL(`image/jpeg`,D))},r.onerror=()=>n(Error(`تصویر نامعتبر است.`)),r.src=e})}var j={class:`profile-edit`},M={class:`avatar-editor`},N={class:`avatar-editor__actions`},P={class:`avatar-editor__btns`},F=[`disabled`],I=[`disabled`],L={class:`profile-edit__intro`},R={class:`profile-edit__intro-icon`,"aria-hidden":`true`},z={class:`profile-edit__grid`},B={key:0,class:`form-group profile-edit__full`},V={key:0,class:`input-error-text`},H={class:`profile-edit__actions`},U={key:0,class:`profile-edit__saved`},W=f(s({__name:`ProfileEditView`,setup(s){let f=_(),E=p(f.user?.firstName??``),D=p(f.user?.lastName??``),k=p(f.user?.nationalId??``),A=p(f.user?.address??``),W=p(f.user?.avatarUrl??null),G=p(null),K=p({}),q=p(``),J=p(!1),Y=p(!1),X=m(()=>`${E.value.trim().charAt(0)}${D.value.trim().charAt(0)}`||`؟`);function Z(e){K.value=x(K.value,e),S(K.value)||(q.value=``)}function Q(){G.value?.click()}async function $(e){Y.value=!0,q.value=``;try{let t=await f.updateProfile({avatarUrl:e??``});t?W.value=t.avatarUrl??null:W.value=e}catch(e){q.value=e instanceof Error?e.message:`ذخیره تصویر ناموفق بود.`}finally{Y.value=!1}}async function ee(e){let t=e.target,n=t.files?.[0];if(t.value=``,n){Y.value=!0,q.value=``;try{let e=await O(n);W.value=e,await $(e)}catch(e){q.value=e instanceof Error?e.message:`بارگذاری تصویر ناموفق بود.`,Y.value=!1}}}async function te(){W.value=null,await $(null)}async function ne(){K.value={},q.value=``,J.value=!1;let e={};if(E.value.trim()||(e.firstName=`نام الزامی است.`),D.value.trim()||(e.lastName=`نام خانوادگی الزامی است.`),k.value&&k.value.length!==10&&(e.nationalId=`کد ملی باید ۱۰ رقم باشد.`),S(e)){K.value=e,q.value=C;return}let t={firstName:E.value.trim(),lastName:D.value.trim(),nationalId:k.value||void 0,avatarUrl:W.value??``};if(f.isAgent&&(t.address=A.value.trim()),!await f.updateProfile(t)){q.value=`ذخیره پروفایل ناموفق بود.`;return}J.value=!0,setTimeout(()=>{J.value=!1},2e3)}return(s,p)=>(r(),t(T,{title:`اطلاعات کاربری`,subtitle:`ویرایش تصویر، نام و کد ملی حساب کاربری`},{default:d(()=>[a(b,{message:q.value},null,8,[`message`]),c(`div`,j,[c(`div`,M,[a(y,{src:W.value,initials:X.value,size:96,class:`avatar-editor__photo`},null,8,[`src`,`initials`]),c(`div`,N,[p[8]||=c(`p`,{class:`avatar-editor__title`},`تصویر پروفایل`,-1),p[9]||=c(`p`,{class:`avatar-editor__hint`},`افزودن، تغییر یا حذف عکس نمایش‌داده‌شده در پروفایل`,-1),c(`div`,P,[c(`button`,{type:`button`,class:`avatar-btn`,disabled:Y.value,onClick:Q},l(W.value?`تغییر تصویر`:`افزودن تصویر`),9,F),W.value?(r(),o(`button`,{key:0,type:`button`,class:`avatar-btn avatar-btn--danger`,disabled:Y.value,onClick:te},` حذف تصویر `,8,I)):e(``,!0)])]),c(`input`,{ref_key:`fileInput`,ref:G,type:`file`,accept:`image/*`,class:`avatar-editor__file`,onChange:ee},null,544)]),c(`div`,L,[c(`span`,R,[a(g,{icon:`vuesax-linear:profile-circle`,size:22,"stroke-width":1.5})]),p[10]||=c(`div`,{class:`profile-edit__intro-text`},[c(`strong`,null,`مشخصات فردی`),c(`p`,null,`این اطلاعات روی سفارش‌ها و چک‌های ثبت‌شده نمایش داده می‌شود.`)],-1)]),c(`div`,z,[a(w,{modelValue:E.value,"onUpdate:modelValue":[p[0]||=e=>E.value=e,p[1]||=e=>Z(`firstName`)],label:`نام`,error:K.value.firstName},null,8,[`modelValue`,`error`]),a(w,{modelValue:D.value,"onUpdate:modelValue":[p[2]||=e=>D.value=e,p[3]||=e=>Z(`lastName`)],label:`نام خانوادگی`,error:K.value.lastName},null,8,[`modelValue`,`error`]),a(w,{modelValue:k.value,"onUpdate:modelValue":[p[4]||=e=>k.value=e,p[5]||=e=>Z(`nationalId`)],class:`profile-edit__full`,label:`کد ملی`,maxlength:`10`,inputmode:`numeric`,dir:`ltr`,hint:`برای ثبت چک الزامی است`,error:K.value.nationalId},null,8,[`modelValue`,`error`]),n(f).isAgent?(r(),o(`div`,B,[p[11]||=c(`label`,{class:`form-label`,for:`profile-address`},`آدرس`,-1),u(c(`textarea`,{id:`profile-address`,"onUpdate:modelValue":p[6]||=e=>A.value=e,class:`profile-edit__textarea`,rows:`3`,maxlength:`500`,placeholder:`آدرس کامل محل فعالیت`,onInput:p[7]||=e=>Z(`address`)},null,544),[[h,A.value]]),K.value.address?(r(),o(`p`,V,l(K.value.address),1)):e(``,!0)])):e(``,!0)]),c(`div`,H,[a(v,{class:`profile-edit__save`,onClick:ne},{default:d(()=>[...p[12]||=[i(`ذخیره تغییرات`,-1)]]),_:1}),J.value?(r(),o(`p`,U,`ذخیره شد ✓`)):e(``,!0)])])]),_:1}))}}),[[`__scopeId`,`data-v-f92697c9`]]);export{W as default}; \ No newline at end of file diff --git a/dist/assets/ProfileNotificationsView-CRUkrfu7.js b/dist/assets/ProfileNotificationsView-CRUkrfu7.js deleted file mode 100644 index 0ee0040..0000000 --- a/dist/assets/ProfileNotificationsView-CRUkrfu7.js +++ /dev/null @@ -1 +0,0 @@ -import{D as e,E as t,Et as n,G as r,J as i,Kt as a,M as o,N as s,O as c,P as l,T as u,Xt as d,Z as f,b as p,g as m,st as h,t as g,w as _}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";import{t as v}from"./BasicIcon-BXxbbWA_.js";import{i as y}from"./format-C72AoJ2H.js";import{n as b,u as x}from"./index-BAQfYU-Q.js";import{t as S}from"./EmptyState-D-8eFOUi.js";import{t as C}from"./ProfileSubpageLayout-C-s-O95S.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=g(l({__name:`ProfileNotificationsView`,setup(l){let g=m(),F=x(),I=_(()=>F.items),L=_(()=>F.hasUnread),R={info:`vuesax-linear:information`,success:`vuesax-linear:tick-circle`,warning:`vuesax-linear:timer`,danger:`vuesax-linear:close-circle`};r(()=>{F.hydrate()});async function z(e){await F.markRead(e.id),e.link&&g.push(e.link)}return(r,l)=>(i(),t(C,{title:`اعلان‌ها`,subtitle:`سفارش‌ها، پیشنهاد محصول و سایر اعلان‌ها`},{default:h(()=>[I.value.length?(i(),c(`div`,w,[u(`div`,T,[u(`span`,E,d(L.value?`${n(F).unreadCount} اعلان خوانده‌نشده`:`همه خوانده شده`),1),L.value?(i(),t(b,{key:0,variant:`outline`,class:`notif-box__mark`,onClick:l[0]||=e=>n(F).markAllRead()},{default:h(()=>[...l[2]||=[o(` خواندن همه `,-1)]]),_:1})):e(``,!0)]),(i(!0),c(p,null,f(I.value,t=>(i(),c(`button`,{key:t.id,type:`button`,class:a([`notif-row`,[`notif-row--${t.tone}`,{"notif-row--unread":!t.isRead}]]),onClick:e=>z(t)},[u(`span`,O,[s(v,{icon:R[t.tone],size:22,"stroke-width":1.5},null,8,[`icon`])]),u(`span`,k,[u(`span`,A,[u(`strong`,j,d(t.title),1),t.isRead?e(``,!0):(i(),c(`span`,M))]),u(`span`,N,d(t.body),1),u(`span`,P,d(n(y)(t.sentAt)),1)])],10,D))),128))])):(i(),t(S,{key:1,icon:`vuesax-linear:notification-bing`,title:`اعلانی ندارید`,message:`وقتی فاکتور سفارشتان صادر شود، پیشنهاد محصولی برایتان ثبت شود یا وضعیت پرداخت تغییر کند، همین‌جا خبردار می‌شوید.`},{default:h(()=>[s(b,{variant:`outline`,onClick:l[1]||=e=>n(g).push(`/orders`)},{default:h(()=>[...l[3]||=[o(`سفارش‌های من`,-1)]]),_:1})]),_:1}))]),_:1}))}}),[[`__scopeId`,`data-v-7e884b50`]]);export{F as default}; \ No newline at end of file diff --git a/dist/assets/ProfileNotificationsView-HWhGI6LP.js b/dist/assets/ProfileNotificationsView-HWhGI6LP.js new file mode 100644 index 0000000..1f2dfce --- /dev/null +++ b/dist/assets/ProfileNotificationsView-HWhGI6LP.js @@ -0,0 +1 @@ +import{At as e,F as t,G as n,M as r,Pt as i,_ as a,c as o,d as s,f as c,g as l,i as u,k as d,l as f,t as p,u as m,ut as h,v as g}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{t as _}from"./BasicIcon-Bzeb0Iwd.js";import{i as v}from"./format-C72AoJ2H.js";import{M as y,n as b,u as x}from"./index-BrjLizie.js";import{t as S}from"./EmptyState-D72g65G-.js";import{t as C}from"./ProfileSubpageLayout-Ce-Qt1do.js";var w={key:0,class:`notif-box`},T={class:`notif-box__head`},E={class:`notif-box__count`},D=[`onClick`],O={class:`notif-row__icon`,"aria-hidden":`true`},k={class:`notif-row__body`},A={class:`notif-row__title-row`},j={class:`notif-row__title`},M={key:0,class:`notif-row__dot`,"aria-label":`خوانده‌نشده`},N={class:`notif-row__text`},P={class:`notif-row__time`},F=p(g({__name:`ProfileNotificationsView`,setup(p){let g=y(),F=x(),I=o(()=>F.items),L=o(()=>F.hasUnread),R={info:`vuesax-linear:information`,success:`vuesax-linear:tick-circle`,warning:`vuesax-linear:timer`,danger:`vuesax-linear:close-circle`};d(()=>{F.hydrate()});async function z(e){await F.markRead(e.id),e.link&&g.push(e.link)}return(o,d)=>(r(),m(C,{title:`اعلان‌ها`,subtitle:`سفارش‌ها، پیشنهاد محصول و سایر اعلان‌ها`},{default:n(()=>[I.value.length?(r(),c(`div`,w,[f(`div`,T,[f(`span`,E,i(L.value?`${h(F).unreadCount} اعلان خوانده‌نشده`:`همه خوانده شده`),1),L.value?(r(),m(b,{key:0,variant:`outline`,class:`notif-box__mark`,onClick:d[0]||=e=>h(F).markAllRead()},{default:n(()=>[...d[2]||=[l(` خواندن همه `,-1)]]),_:1})):s(``,!0)]),(r(!0),c(u,null,t(I.value,t=>(r(),c(`button`,{key:t.id,type:`button`,class:e([`notif-row`,[`notif-row--${t.tone}`,{"notif-row--unread":!t.isRead}]]),onClick:e=>z(t)},[f(`span`,O,[a(_,{icon:R[t.tone],size:22,"stroke-width":1.5},null,8,[`icon`])]),f(`span`,k,[f(`span`,A,[f(`strong`,j,i(t.title),1),t.isRead?s(``,!0):(r(),c(`span`,M))]),f(`span`,N,i(t.body),1),f(`span`,P,i(h(v)(t.sentAt)),1)])],10,D))),128))])):(r(),m(S,{key:1,icon:`vuesax-linear:notification-bing`,title:`اعلانی ندارید`,message:`وقتی فاکتور سفارشتان صادر شود، پیشنهاد محصولی برایتان ثبت شود یا وضعیت پرداخت تغییر کند، همین‌جا خبردار می‌شوید.`},{default:n(()=>[a(b,{variant:`outline`,onClick:d[1]||=e=>h(g).push(`/orders`)},{default:n(()=>[...d[3]||=[l(`سفارش‌های من`,-1)]]),_:1})]),_:1}))]),_:1}))}}),[[`__scopeId`,`data-v-7e884b50`]]);export{F as default}; \ No newline at end of file diff --git a/dist/assets/ProfileSecurityView-CtNJOjnr.js b/dist/assets/ProfileSecurityView-CtNJOjnr.js new file mode 100644 index 0000000..1d43c08 --- /dev/null +++ b/dist/assets/ProfileSecurityView-CtNJOjnr.js @@ -0,0 +1 @@ +import{G as e,M as t,_ as n,d as r,f as i,g as a,l as o,nt as s,t as c,u as l,v as u}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{n as d}from"./index-BrjLizie.js";import{t as f}from"./FormErrorBanner-Ud1D04xf.js";import{n as p,r as m,t as h}from"./formErrors-DglFjYkZ.js";import{t as g}from"./BaseInput-CpE3bVJZ.js";import{t as _}from"./ProfileSubpageLayout-Ce-Qt1do.js";var v={class:`settings-form`},y={key:0,class:`settings-form__saved`},b=c(u({__name:`ProfileSecurityView`,setup(c){let u=s(``),b=s(``),x=s(``),S=s({}),C=s(``),w=s(!1);function T(e){S.value=p(S.value,e),m(S.value)||(C.value=``)}function E(){S.value={},C.value=``,w.value=!1;let e={};if(u.value||(e.currentPassword=`رمز فعلی الزامی است.`),b.value.length<6&&(e.newPassword=`رمز جدید باید حداقل ۶ کاراکتر باشد.`),x.value!==b.value&&(e.confirmPassword=`تکرار رمز با رمز جدید یکسان نیست.`),m(e)){S.value=e,C.value=h;return}u.value=``,b.value=``,x.value=``,w.value=!0,setTimeout(()=>{w.value=!1},2e3)}return(s,c)=>(t(),l(_,{title:`امنیت حساب`,subtitle:`تغییر رمز عبور و تنظیمات ورود`},{default:e(()=>[n(f,{message:C.value},null,8,[`message`]),o(`div`,v,[n(g,{modelValue:u.value,"onUpdate:modelValue":[c[0]||=e=>u.value=e,c[1]||=e=>T(`currentPassword`)],type:`password`,label:`رمز عبور فعلی`,error:S.value.currentPassword},null,8,[`modelValue`,`error`]),n(g,{modelValue:b.value,"onUpdate:modelValue":[c[2]||=e=>b.value=e,c[3]||=e=>T(`newPassword`)],type:`password`,label:`رمز عبور جدید`,error:S.value.newPassword},null,8,[`modelValue`,`error`]),n(g,{modelValue:x.value,"onUpdate:modelValue":[c[4]||=e=>x.value=e,c[5]||=e=>T(`confirmPassword`)],type:`password`,label:`تکرار رمز عبور جدید`,error:S.value.confirmPassword},null,8,[`modelValue`,`error`]),n(d,{block:``,onClick:E},{default:e(()=>[...c[6]||=[a(`ذخیره رمز جدید`,-1)]]),_:1}),w.value?(t(),i(`p`,y,`رمز عبور با موفقیت تغییر کرد ✓`)):r(``,!0)])]),_:1}))}}),[[`__scopeId`,`data-v-074827a2`]]);export{b as default}; \ No newline at end of file diff --git a/dist/assets/ProfileSecurityView-Kv1i6EIE.js b/dist/assets/ProfileSecurityView-Kv1i6EIE.js deleted file mode 100644 index 911c245..0000000 --- a/dist/assets/ProfileSecurityView-Kv1i6EIE.js +++ /dev/null @@ -1 +0,0 @@ -import{D as e,E as t,J as n,M as r,N as i,O as a,P as o,T as s,st as c,t as l,vt as u}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";import{n as d}from"./index-BAQfYU-Q.js";import{t as f}from"./FormErrorBanner-DI5hhxpk.js";import{n as p,r as m,t as h}from"./formErrors-DglFjYkZ.js";import{t as g}from"./BaseInput-CVNdy37R.js";import{t as _}from"./ProfileSubpageLayout-C-s-O95S.js";var v={class:`settings-form`},y={key:0,class:`settings-form__saved`},b=l(o({__name:`ProfileSecurityView`,setup(o){let l=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(l.value||(e.currentPassword=`رمز فعلی الزامی است.`),b.value.length<6&&(e.newPassword=`رمز جدید باید حداقل ۶ کاراکتر باشد.`),x.value!==b.value&&(e.confirmPassword=`تکرار رمز با رمز جدید یکسان نیست.`),m(e)){S.value=e,C.value=h;return}l.value=``,b.value=``,x.value=``,w.value=!0,setTimeout(()=>{w.value=!1},2e3)}return(o,u)=>(n(),t(_,{title:`امنیت حساب`,subtitle:`تغییر رمز عبور و تنظیمات ورود`},{default:c(()=>[i(f,{message:C.value},null,8,[`message`]),s(`div`,v,[i(g,{modelValue:l.value,"onUpdate:modelValue":[u[0]||=e=>l.value=e,u[1]||=e=>T(`currentPassword`)],type:`password`,label:`رمز عبور فعلی`,error:S.value.currentPassword},null,8,[`modelValue`,`error`]),i(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`]),i(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`]),i(d,{block:``,onClick:E},{default:c(()=>[...u[6]||=[r(`ذخیره رمز جدید`,-1)]]),_:1}),w.value?(n(),a(`p`,y,`رمز عبور با موفقیت تغییر کرد ✓`)):e(``,!0)])]),_:1}))}}),[[`__scopeId`,`data-v-074827a2`]]);export{b as default}; \ No newline at end of file diff --git a/dist/assets/ProfileSubpageLayout-C-s-O95S.js b/dist/assets/ProfileSubpageLayout-C-s-O95S.js deleted file mode 100644 index d1db9f8..0000000 --- a/dist/assets/ProfileSubpageLayout-C-s-O95S.js +++ /dev/null @@ -1 +0,0 @@ -import{D as e,J as t,N as n,O as r,P as i,Q as a,T as o,Xt as s,b as c,g as l,t as u}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";import{t as d}from"./IconChevronBack-DfGoZJJk.js";var f={class:`page profile-subpage mobile-only`},p={class:`page__scroll page__scroll--with-nav`},m={class:`profile-subpage__card card`},h={class:`profile-subpage__nav`},g={class:`profile-subpage__title`},_={type:`button`,class:`nav-btn nav-btn--ghost`,"aria-hidden":`true`,tabindex:`-1`},v={class:`desktop-page profile-subpage-desktop desktop-only`},y={class:`desktop-page__head profile-subpage-desktop__head`},b={class:`desktop-page__title`},x={key:0,class:`desktop-page__subtitle`},S={class:`profile-subpage-desktop__panel card`},C=u(i({__name:`ProfileSubpageLayout`,props:{title:{},subtitle:{}},setup(i){let u=l();function C(){u.push(`/profile`)}return(l,u)=>(t(),r(c,null,[o(`div`,f,[o(`div`,p,[o(`div`,m,[o(`header`,h,[o(`button`,{type:`button`,class:`nav-btn`,"aria-label":`بازگشت`,onClick:C},[n(d,{size:20})]),o(`h1`,g,s(i.title),1),o(`button`,_,[n(d,{size:18,class:`nav-btn__flip`})])]),a(l.$slots,`default`,{},void 0,!0)])])]),o(`div`,v,[o(`header`,y,[o(`h1`,b,s(i.title),1),i.subtitle?(t(),r(`p`,x,s(i.subtitle),1)):e(``,!0)]),o(`section`,S,[a(l.$slots,`default`,{},void 0,!0)])])],64))}}),[[`__scopeId`,`data-v-e7684fde`]]);export{C as t}; \ No newline at end of file diff --git a/dist/assets/ProfileSubpageLayout-Ce-Qt1do.js b/dist/assets/ProfileSubpageLayout-Ce-Qt1do.js new file mode 100644 index 0000000..9baecfc --- /dev/null +++ b/dist/assets/ProfileSubpageLayout-Ce-Qt1do.js @@ -0,0 +1 @@ +import{I as e,M as t,Pt as n,_ as r,d as i,f as a,i as o,l as s,t as c,v as l}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{M as u}from"./index-BrjLizie.js";import{t as d}from"./IconChevronBack-CDeN0Cbu.js";var f={class:`page profile-subpage mobile-only`},p={class:`page__scroll page__scroll--with-nav`},m={class:`profile-subpage__card card`},h={class:`profile-subpage__nav`},g={class:`profile-subpage__title`},_={type:`button`,class:`nav-btn nav-btn--ghost`,"aria-hidden":`true`,tabindex:`-1`},v={class:`desktop-page profile-subpage-desktop desktop-only`},y={class:`desktop-page__head profile-subpage-desktop__head`},b={class:`desktop-page__title`},x={key:0,class:`desktop-page__subtitle`},S={class:`profile-subpage-desktop__panel card`},C=c(l({__name:`ProfileSubpageLayout`,props:{title:{},subtitle:{}},setup(c){let l=u();function C(){l.push(`/profile`)}return(l,u)=>(t(),a(o,null,[s(`div`,f,[s(`div`,p,[s(`div`,m,[s(`header`,h,[s(`button`,{type:`button`,class:`nav-btn`,"aria-label":`بازگشت`,onClick:C},[r(d,{size:20})]),s(`h1`,g,n(c.title),1),s(`button`,_,[r(d,{size:18,class:`nav-btn__flip`})])]),e(l.$slots,`default`,{},void 0,!0)])])]),s(`div`,v,[s(`header`,y,[s(`h1`,b,n(c.title),1),c.subtitle?(t(),a(`p`,x,n(c.subtitle),1)):i(``,!0)]),s(`section`,S,[e(l.$slots,`default`,{},void 0,!0)])])],64))}}),[[`__scopeId`,`data-v-e7684fde`]]);export{C as t}; \ No newline at end of file diff --git a/dist/assets/ProfileView-DOOsdorU.js b/dist/assets/ProfileView-DOOsdorU.js new file mode 100644 index 0000000..6a57547 --- /dev/null +++ b/dist/assets/ProfileView-DOOsdorU.js @@ -0,0 +1 @@ +import{At as e,F as t,M as n,Nt as r,Pt as i,_ as a,c as o,d as s,f as c,g as l,h as ee,i as u,k as d,l as f,nt as p,t as te,u as m,ut as h,v as g}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{l as ne,t as _}from"./BasicIcon-Bzeb0Iwd.js";import{o as v,r as re}from"./format-C72AoJ2H.js";import{M as ie,O as ae,S as oe,c as se,d as ce,o as le,r as ue,s as y,u as b}from"./index-BrjLizie.js";import{r as x,t as S}from"./constants-DXXK14Zz.js";import{t as C}from"./PageSkeleton-DYdjm4l9.js";import{n as w,t as T}from"./crm-DoYzOa8A.js";import{t as E}from"./IconHeart-CvzbNH_T.js";var D={class:`page profile-page`},O={class:`page__scroll page__scroll--with-nav profile-scroll`},k={class:`hero`},A={class:`hero__pin`},j={class:`hero__top mobile-only`},M=[`aria-label`],N={class:`hero__meta`},P={key:0},F={key:1,class:`level-pill`},I={class:`hero__desk-actions desktop-only-flex`},L={class:`profile-sheet`},R={key:0,class:`panel`},z={class:`panel__head`},B={class:`panel__period`},V={class:`stats`},H={class:`stat-card`},U={class:`stat-card__text`},de={class:`stat-card__value`},fe={class:`stat-card__icon stat-card__icon--orders`},pe={class:`stat-card`},me={class:`stat-card__text`},he={class:`stat-card__value`},ge={class:`stat-card__icon stat-card__icon--customers`},_e={class:`stat-card`},ve={class:`stat-card__text`},ye={class:`stat-card__value`},be={class:`stat-card__icon stat-card__icon--profit`},xe={class:`stat-card`},Se={class:`stat-card__text`},Ce={class:`stat-card__value`},we={class:`stat-card__icon stat-card__icon--sales`},Te={key:1,class:`loyalty`},Ee={class:`loyalty__row`},De={class:`loyalty__text`},Oe={class:`loyalty__text-next`},ke={class:`loyalty__bar`},Ae={class:`quick-section`},je={class:`quick-grid`},Me=[`onClick`],Ne={class:`quick-item__icon`},Pe={class:`orders-box`},Fe={class:`section-head`},Ie=[`onClick`,`onKeydown`],Le={class:`order-row__meta`},Re={class:`order-row__date`},ze={class:`order-row__title`},Be={key:0,class:`order-row__customer`},Ve={class:`price-section`},He={class:`price-card`},Ue={class:`price-card__body`},We={class:`price-card__info`},W=te(g({__name:`MobileProfilePage`,setup(te){let g={id:`sample-base-price`,name:`پارچه فاستونی ایتالیایی`,code:`DF-1204`,categoryId:``,season:`all_season`,widthCm:160,composition:``,colors:[`1`,`2`,`3`,`4`,`5`,`6`],tags:[],isNew:!1,rollMeters:0,basePrice:38e4},W=ie(),G=se(),K=ce(),Ge=T(),q=b(),J=p(null),Y=p(g),X=p(!1),Ke=[{id:`add-customer`,label:`ثبت مشتری جدید`,to:`/customers`,icon:`vuesax-linear:add`},{id:`orders`,label:`سفارش‌ها`,to:`/orders`,icon:`vuesax-linear:document-text`},{id:`customers`,label:`مشتریان من`,to:`/customers`,icon:`vuesax-linear:people`},{id:`reports`,label:`گزارش‌ها`,to:`/reminders`,icon:`vuesax-linear:chart-2`},{id:`catalog`,label:`درخواست کالیته`,to:`/categories`,icon:`vuesax-linear:box-1`},{id:`pricing`,label:`قیمت‌گذاری`,to:`/categories`,icon:`vuesax-linear:money-4`}],qe=[{id:`orders`,label:`سفارش‌ها`,to:`/orders`,icon:`vuesax-linear:document-text`},{id:`categories`,label:`دسته‌بندی`,to:`/categories`,icon:`vuesax-linear:element-3`},{id:`products`,label:`محصولات`,to:`/products`,icon:`vuesax-linear:box-search`},{id:`favorites`,label:`علاقه‌مندی‌ها`,to:`/favorites`,useHeart:!0},{id:`order-status`,label:`وضعیت سفارش`,to:`/orders/latest-status`,icon:`vuesax-linear:timer-1`},{id:`catalog`,label:`درخواست کالیته`,to:`/categories`,icon:`vuesax-linear:box-1`}],Je=o(()=>G.isAgent?Ke:qe),Ye=o(()=>[...K.orders].sort((e,t)=>String(t.createdAt).localeCompare(String(e.createdAt))).slice(0,3).map(e=>{let t=x[e.status]??`info`,n=t===`danger`||t===`neutral`?`danger`:t===`success`?`success`:t===`warning`?`warning`:`info`;return{id:e.id,title:`سفارش #${e.orderNumber}`,date:e.createdAt?re(e.createdAt):``,customer:e.companyName||``,statusLabel:S[e.status]||e.status,statusTone:n}})),Z=o(()=>G.fullName||`کاربر`),Q=o(()=>J.value?.code||G.user?.agentCode||`—`),Xe=o(()=>G.isAgent?`کد واسطه`:`کد مشتری`),$=o(()=>J.value?.levelLabel||G.user?.levelLabel||`برنزی`),Ze=o(()=>J.value?.nextLevelLabel||G.user?.nextLevelLabel||`نقره‌ای`),Qe=o(()=>J.value?.pointsToNext??G.user?.pointsToNext??0),$e=o(()=>J.value?.periodLabel||`۳۰ روز اخیر`),et=o(()=>J.value?.customersCount??0),tt=o(()=>J.value?.ordersCount??K.orders.length),nt=o(()=>J.value?.salesVolumeToman??0),rt=o(()=>J.value?.profitToman??0),it=o(()=>J.value?.levelProgress??G.user?.levelProgress??0),at=o(()=>q.unreadCount>9?`9+`:String(q.unreadCount)),ot=o(()=>Y.value.basePrice??g.basePrice??0);return d(async()=>{X.value=!0;try{if(q.hydrate(),G.isAgent)try{J.value=await w()}catch{J.value=null}try{let e=(await Ge.loadBrowseProducts())[0];Y.value=e?{...g,...e,basePrice:e.basePrice??g.basePrice}:g}catch{Y.value=g}K.orders.length||await K.hydrate()}finally{X.value=!1}}),(o,d)=>(n(),c(`div`,D,[f(`div`,O,[f(`header`,k,[f(`div`,A,[f(`div`,j,[f(`button`,{type:`button`,class:`icon-btn`,"aria-label":`تنظیمات`,onClick:d[0]||=e=>h(W).push(`/profile/display`)},[a(oe,{size:20,color:`#ffffff`})]),d[5]||=f(`h1`,null,`پروفایل من`,-1),f(`button`,{type:`button`,class:`icon-btn`,"aria-label":`اعلان‌ها`,onClick:d[1]||=e=>h(W).push(`/profile/notifications`)},[a(y,{size:20,color:`#ffffff`}),h(q).hasUnread?(n(),c(`span`,{key:0,class:`icon-btn__badge`,"aria-label":`${h(q).unreadCount} اعلان خوانده‌نشده`},i(at.value),9,M)):s(``,!0)])]),a(ue,{class:`hero__avatar`,src:h(G).user?.avatarUrl,initials:Z.value.charAt(0),size:84},null,8,[`src`,`initials`])]),f(`div`,N,[f(`h2`,null,i(Z.value),1),h(G).isAgent?(n(),c(`p`,P,i(Xe.value)+`: `+i(Q.value),1)):s(``,!0),h(G).isAgent?(n(),c(`span`,F,[d[6]||=f(`svg`,{class:`level-pill__crown`,viewBox:`0 0 24 24`,"aria-hidden":`true`},[f(`path`,{fill:`currentColor`,d:`M3.5 17.5h17l-1.2-8.2a1 1 0 0 0-1.5-.7L14 11l-2.5-5.2a1 1 0 0 0-1.8 0L7.2 11 4.2 8.6a1 1 0 0 0-1.5.7L3.5 17.5Zm1.7 1.5h13.6v1.2H5.2V19Z`})],-1),l(` سطح: `+i($.value),1)])):s(``,!0)]),f(`div`,I,[f(`button`,{type:`button`,class:`hero__desk-btn`,onClick:d[2]||=e=>h(W).push(`/profile/edit`)},` ویرایش اطلاعات `)])]),f(`div`,L,[X.value?(n(),m(C,{key:0,variant:`profile`})):(n(),c(u,{key:1},[h(G).isAgent?(n(),c(`section`,R,[f(`div`,z,[d[7]||=f(`h3`,null,`خلاصه عملکرد`,-1),f(`span`,B,[l(i($e.value)+` `,1),a(_,{icon:`vuesax-linear:arrow-down`,size:14,"stroke-width":1.5})])]),f(`div`,V,[f(`div`,H,[f(`div`,U,[d[8]||=f(`span`,{class:`stat-card__label`},`سفارش‌ها`,-1),f(`strong`,de,i(h(v)(tt.value)),1),d[9]||=f(`em`,{class:`stat-card__hint`},`سفارش`,-1)]),f(`span`,fe,[a(ae,{size:18})])]),f(`div`,pe,[f(`div`,me,[d[10]||=f(`span`,{class:`stat-card__label`},`مشتریان من`,-1),f(`strong`,he,i(h(v)(et.value)),1),d[11]||=f(`em`,{class:`stat-card__hint`},`مشتری فعال`,-1)]),f(`span`,ge,[a(_,{icon:`vuesax-linear:people`,size:18,"stroke-width":1.5})])]),f(`div`,_e,[f(`div`,ve,[d[12]||=f(`span`,{class:`stat-card__label`},`سود شما (ریال)`,-1),f(`strong`,ye,i(h(v)(rt.value)),1),d[13]||=f(`em`,{class:`stat-card__hint`},`تومان`,-1)]),f(`span`,be,[a(_,{icon:`vuesax-linear:chart-2`,size:18,"stroke-width":1.5})])]),f(`div`,xe,[f(`div`,Se,[d[14]||=f(`span`,{class:`stat-card__label`},`حجم فروش (ریال)`,-1),f(`strong`,Ce,i(h(v)(nt.value)),1),d[15]||=f(`em`,{class:`stat-card__hint`},`تومان`,-1)]),f(`span`,we,[a(_,{icon:`vuesax-linear:wallet`,size:18,"stroke-width":1.5})])])])])):s(``,!0),h(G).isAgent?(n(),c(`section`,Te,[f(`div`,Ee,[d[16]||=ee(``,1),f(`p`,De,[f(`span`,null,`شما در سطح `+i($.value)+` قرار دارید.`,1),f(`span`,Oe,` تا سطح `+i(Ze.value)+` فقط `+i(h(v)(Qe.value))+` تومان فروش دیگر نیاز دارید. `,1)])]),f(`div`,ke,[f(`span`,{style:r({width:`${Math.min(100,Math.max(0,it.value))}%`})},null,4)])])):s(``,!0),f(`section`,Ae,[d[17]||=f(`h3`,{class:`section-title`},`دسترسی سریع`,-1),f(`div`,je,[(n(!0),c(u,null,t(Je.value,e=>(n(),c(`button`,{key:e.id,type:`button`,class:`quick-item`,onClick:t=>h(W).push(e.to)},[f(`span`,Ne,[e.useHeart?(n(),m(E,{key:0,size:22,color:`var(--color-primary)`})):e.icon?(n(),m(_,{key:1,icon:e.icon,size:22,"stroke-width":1.5},null,8,[`icon`])):s(``,!0)]),l(` `+i(e.label),1)],8,Me))),128))])]),f(`section`,Pe,[f(`div`,Fe,[d[18]||=f(`h3`,null,`آخرین سفارش‌ها`,-1),f(`button`,{type:`button`,class:`link`,onClick:d[3]||=e=>h(W).push(`/orders`)},`مشاهده همه`)]),(n(!0),c(u,null,t(Ye.value,t=>(n(),c(`article`,{key:t.id,class:`order-row`,role:`button`,tabindex:`0`,onClick:e=>h(W).push({path:`/order`,query:{id:t.id}}),onKeydown:ne(e=>h(W).push({path:`/order`,query:{id:t.id}}),[`enter`])},[f(`div`,Le,[f(`span`,Re,i(t.date),1),f(`strong`,ze,i(t.title),1),t.customer?(n(),c(`p`,Be,`مشتری: `+i(t.customer),1)):s(``,!0)]),f(`span`,{class:e([`tone`,`tone--${t.statusTone}`])},i(t.statusLabel),3),a(le,{size:16,class:`order-row__chevron`})],40,Ie))),128)),f(`button`,{type:`button`,class:`orders-all`,onClick:d[4]||=e=>h(W).push(`/orders`)},` مشاهده همه سفارش‌ها `)]),f(`section`,Ve,[d[19]||=f(`h3`,{class:`section-title`},`قیمت‌های پایه (نمونه)`,-1),f(`div`,He,[f(`div`,Ue,[f(`div`,We,[f(`strong`,null,i(Y.value.name),1),f(`p`,null,`کد: `+i(Y.value.code),1),f(`p`,null,`عرض: `+i(h(v)(Y.value.widthCm))+` سانتی‌متر`,1),f(`p`,null,`رنگ‌ها: `+i(h(v)(Y.value.colors.length))+` رنگ`,1)]),f(`div`,{class:`price-card__image`,style:r(Y.value.imageUrl?{backgroundImage:`url(${Y.value.imageUrl})`}:void 0)},null,4)]),f(`footer`,null,`قیمت پایه به شما: `+i(h(v)(ot.value))+` تومان / متر`,1)])])],64))])])]))}}),[[`__scopeId`,`data-v-ea7c4592`]]),G=g({__name:`ProfileView`,setup(e){return(e,t)=>(n(),m(W))}});export{G as default}; \ No newline at end of file diff --git a/dist/assets/ProfileView-Du0bsfdh.js b/dist/assets/ProfileView-Du0bsfdh.js deleted file mode 100644 index 48a68fd..0000000 --- a/dist/assets/ProfileView-Du0bsfdh.js +++ /dev/null @@ -1 +0,0 @@ -import{D as e,E as t,Et as n,G as r,J as i,Kt as ee,M as a,N as o,O as s,P as c,T as l,Xt as u,Yt as d,Z as f,b as p,g as te,j as ne,t as m,vt as h,w as g}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";import{l as re,t as _}from"./BasicIcon-BXxbbWA_.js";import{o as v,r as ie}from"./format-C72AoJ2H.js";import{O as ae,S as oe,c as se,d as ce,o as le,r as ue,s as y,u as b}from"./index-BAQfYU-Q.js";import{r as x,t as S}from"./constants-DXXK14Zz.js";import{t as C}from"./PageSkeleton-DHtB6RUa.js";import{n as w,t as T}from"./crm-CooNUbmr.js";import{t as E}from"./IconHeart-Be5RRWq4.js";var D={class:`page profile-page`},O={class:`page__scroll page__scroll--with-nav profile-scroll`},k={class:`hero`},A={class:`hero__pin`},j={class:`hero__top mobile-only`},M=[`aria-label`],N={class:`hero__meta`},P={key:0},F={key:1,class:`level-pill`},I={class:`hero__desk-actions desktop-only-flex`},L={class:`profile-sheet`},R={key:0,class:`panel`},z={class:`panel__head`},B={class:`panel__period`},V={class:`stats`},H={class:`stat-card`},U={class:`stat-card__text`},de={class:`stat-card__value`},fe={class:`stat-card__icon stat-card__icon--orders`},pe={class:`stat-card`},me={class:`stat-card__text`},he={class:`stat-card__value`},ge={class:`stat-card__icon stat-card__icon--customers`},_e={class:`stat-card`},ve={class:`stat-card__text`},ye={class:`stat-card__value`},be={class:`stat-card__icon stat-card__icon--profit`},xe={class:`stat-card`},Se={class:`stat-card__text`},Ce={class:`stat-card__value`},we={class:`stat-card__icon stat-card__icon--sales`},Te={key:1,class:`loyalty`},Ee={class:`loyalty__row`},De={class:`loyalty__text`},Oe={class:`loyalty__text-next`},ke={class:`loyalty__bar`},Ae={class:`quick-section`},je={class:`quick-grid`},Me=[`onClick`],Ne={class:`quick-item__icon`},Pe={class:`orders-box`},Fe={class:`section-head`},Ie=[`onClick`,`onKeydown`],Le={class:`order-row__meta`},Re={class:`order-row__date`},ze={class:`order-row__title`},Be={key:0,class:`order-row__customer`},Ve={class:`price-section`},He={class:`price-card`},Ue={class:`price-card__body`},We={class:`price-card__info`},W=m(c({__name:`MobileProfilePage`,setup(c){let m={id:`sample-base-price`,name:`پارچه فاستونی ایتالیایی`,code:`DF-1204`,categoryId:``,season:`all_season`,widthCm:160,composition:``,colors:[`1`,`2`,`3`,`4`,`5`,`6`],tags:[],isNew:!1,rollMeters:0,basePrice:38e4},W=te(),G=se(),K=ce(),Ge=T(),q=b(),J=h(null),Y=h(m),X=h(!1),Ke=[{id:`add-customer`,label:`ثبت مشتری جدید`,to:`/customers`,icon:`vuesax-linear:add`},{id:`orders`,label:`سفارش‌ها`,to:`/orders`,icon:`vuesax-linear:document-text`},{id:`customers`,label:`مشتریان من`,to:`/customers`,icon:`vuesax-linear:people`},{id:`reports`,label:`گزارش‌ها`,to:`/reminders`,icon:`vuesax-linear:chart-2`},{id:`catalog`,label:`درخواست کالیته`,to:`/categories`,icon:`vuesax-linear:box-1`},{id:`pricing`,label:`قیمت‌گذاری`,to:`/categories`,icon:`vuesax-linear:money-4`}],qe=[{id:`orders`,label:`سفارش‌ها`,to:`/orders`,icon:`vuesax-linear:document-text`},{id:`categories`,label:`دسته‌بندی`,to:`/categories`,icon:`vuesax-linear:element-3`},{id:`products`,label:`محصولات`,to:`/products`,icon:`vuesax-linear:box-search`},{id:`favorites`,label:`علاقه‌مندی‌ها`,to:`/favorites`,useHeart:!0},{id:`order-status`,label:`وضعیت سفارش`,to:`/orders/latest-status`,icon:`vuesax-linear:timer-1`},{id:`catalog`,label:`درخواست کالیته`,to:`/categories`,icon:`vuesax-linear:box-1`}],Je=g(()=>G.isAgent?Ke:qe),Ye=g(()=>[...K.orders].sort((e,t)=>String(t.createdAt).localeCompare(String(e.createdAt))).slice(0,3).map(e=>{let t=x[e.status]??`info`,n=t===`danger`||t===`neutral`?`danger`:t===`success`?`success`:t===`warning`?`warning`:`info`;return{id:e.id,title:`سفارش #${e.orderNumber}`,date:e.createdAt?ie(e.createdAt):``,customer:e.companyName||``,statusLabel:S[e.status]||e.status,statusTone:n}})),Z=g(()=>G.fullName||`کاربر`),Q=g(()=>J.value?.code||G.user?.agentCode||`—`),Xe=g(()=>G.isAgent?`کد واسطه`:`کد مشتری`),$=g(()=>J.value?.levelLabel||G.user?.levelLabel||`برنزی`),Ze=g(()=>J.value?.nextLevelLabel||G.user?.nextLevelLabel||`نقره‌ای`),Qe=g(()=>J.value?.pointsToNext??G.user?.pointsToNext??0),$e=g(()=>J.value?.periodLabel||`۳۰ روز اخیر`),et=g(()=>J.value?.customersCount??0),tt=g(()=>J.value?.ordersCount??K.orders.length),nt=g(()=>J.value?.salesVolumeToman??0),rt=g(()=>J.value?.profitToman??0),it=g(()=>J.value?.levelProgress??G.user?.levelProgress??0),at=g(()=>q.unreadCount>9?`9+`:String(q.unreadCount)),ot=g(()=>Y.value.basePrice??m.basePrice??0);return r(async()=>{X.value=!0;try{if(q.hydrate(),G.isAgent)try{J.value=await w()}catch{J.value=null}try{let e=(await Ge.loadBrowseProducts())[0];Y.value=e?{...m,...e,basePrice:e.basePrice??m.basePrice}:m}catch{Y.value=m}K.orders.length||await K.hydrate()}finally{X.value=!1}}),(r,c)=>(i(),s(`div`,D,[l(`div`,O,[l(`header`,k,[l(`div`,A,[l(`div`,j,[l(`button`,{type:`button`,class:`icon-btn`,"aria-label":`تنظیمات`,onClick:c[0]||=e=>n(W).push(`/profile/display`)},[o(oe,{size:20,color:`#ffffff`})]),c[5]||=l(`h1`,null,`پروفایل من`,-1),l(`button`,{type:`button`,class:`icon-btn`,"aria-label":`اعلان‌ها`,onClick:c[1]||=e=>n(W).push(`/profile/notifications`)},[o(y,{size:20,color:`#ffffff`}),n(q).hasUnread?(i(),s(`span`,{key:0,class:`icon-btn__badge`,"aria-label":`${n(q).unreadCount} اعلان خوانده‌نشده`},u(at.value),9,M)):e(``,!0)])]),o(ue,{class:`hero__avatar`,src:n(G).user?.avatarUrl,initials:Z.value.charAt(0),size:84},null,8,[`src`,`initials`])]),l(`div`,N,[l(`h2`,null,u(Z.value),1),n(G).isAgent?(i(),s(`p`,P,u(Xe.value)+`: `+u(Q.value),1)):e(``,!0),n(G).isAgent?(i(),s(`span`,F,[c[6]||=l(`svg`,{class:`level-pill__crown`,viewBox:`0 0 24 24`,"aria-hidden":`true`},[l(`path`,{fill:`currentColor`,d:`M3.5 17.5h17l-1.2-8.2a1 1 0 0 0-1.5-.7L14 11l-2.5-5.2a1 1 0 0 0-1.8 0L7.2 11 4.2 8.6a1 1 0 0 0-1.5.7L3.5 17.5Zm1.7 1.5h13.6v1.2H5.2V19Z`})],-1),a(` سطح: `+u($.value),1)])):e(``,!0)]),l(`div`,I,[l(`button`,{type:`button`,class:`hero__desk-btn`,onClick:c[2]||=e=>n(W).push(`/profile/edit`)},` ویرایش اطلاعات `)])]),l(`div`,L,[X.value?(i(),t(C,{key:0,variant:`profile`})):(i(),s(p,{key:1},[n(G).isAgent?(i(),s(`section`,R,[l(`div`,z,[c[7]||=l(`h3`,null,`خلاصه عملکرد`,-1),l(`span`,B,[a(u($e.value)+` `,1),o(_,{icon:`vuesax-linear:arrow-down`,size:14,"stroke-width":1.5})])]),l(`div`,V,[l(`div`,H,[l(`div`,U,[c[8]||=l(`span`,{class:`stat-card__label`},`سفارش‌ها`,-1),l(`strong`,de,u(n(v)(tt.value)),1),c[9]||=l(`em`,{class:`stat-card__hint`},`سفارش`,-1)]),l(`span`,fe,[o(ae,{size:18})])]),l(`div`,pe,[l(`div`,me,[c[10]||=l(`span`,{class:`stat-card__label`},`مشتریان من`,-1),l(`strong`,he,u(n(v)(et.value)),1),c[11]||=l(`em`,{class:`stat-card__hint`},`مشتری فعال`,-1)]),l(`span`,ge,[o(_,{icon:`vuesax-linear:people`,size:18,"stroke-width":1.5})])]),l(`div`,_e,[l(`div`,ve,[c[12]||=l(`span`,{class:`stat-card__label`},`سود شما (ریال)`,-1),l(`strong`,ye,u(n(v)(rt.value)),1),c[13]||=l(`em`,{class:`stat-card__hint`},`تومان`,-1)]),l(`span`,be,[o(_,{icon:`vuesax-linear:chart-2`,size:18,"stroke-width":1.5})])]),l(`div`,xe,[l(`div`,Se,[c[14]||=l(`span`,{class:`stat-card__label`},`حجم فروش (ریال)`,-1),l(`strong`,Ce,u(n(v)(nt.value)),1),c[15]||=l(`em`,{class:`stat-card__hint`},`تومان`,-1)]),l(`span`,we,[o(_,{icon:`vuesax-linear:wallet`,size:18,"stroke-width":1.5})])])])])):e(``,!0),n(G).isAgent?(i(),s(`section`,Te,[l(`div`,Ee,[c[16]||=ne(``,1),l(`p`,De,[l(`span`,null,`شما در سطح `+u($.value)+` قرار دارید.`,1),l(`span`,Oe,` تا سطح `+u(Ze.value)+` فقط `+u(n(v)(Qe.value))+` تومان فروش دیگر نیاز دارید. `,1)])]),l(`div`,ke,[l(`span`,{style:d({width:`${Math.min(100,Math.max(0,it.value))}%`})},null,4)])])):e(``,!0),l(`section`,Ae,[c[17]||=l(`h3`,{class:`section-title`},`دسترسی سریع`,-1),l(`div`,je,[(i(!0),s(p,null,f(Je.value,r=>(i(),s(`button`,{key:r.id,type:`button`,class:`quick-item`,onClick:e=>n(W).push(r.to)},[l(`span`,Ne,[r.useHeart?(i(),t(E,{key:0,size:22,color:`var(--color-primary)`})):r.icon?(i(),t(_,{key:1,icon:r.icon,size:22,"stroke-width":1.5},null,8,[`icon`])):e(``,!0)]),a(` `+u(r.label),1)],8,Me))),128))])]),l(`section`,Pe,[l(`div`,Fe,[c[18]||=l(`h3`,null,`آخرین سفارش‌ها`,-1),l(`button`,{type:`button`,class:`link`,onClick:c[3]||=e=>n(W).push(`/orders`)},`مشاهده همه`)]),(i(!0),s(p,null,f(Ye.value,t=>(i(),s(`article`,{key:t.id,class:`order-row`,role:`button`,tabindex:`0`,onClick:e=>n(W).push({path:`/order`,query:{id:t.id}}),onKeydown:re(e=>n(W).push({path:`/order`,query:{id:t.id}}),[`enter`])},[l(`div`,Le,[l(`span`,Re,u(t.date),1),l(`strong`,ze,u(t.title),1),t.customer?(i(),s(`p`,Be,`مشتری: `+u(t.customer),1)):e(``,!0)]),l(`span`,{class:ee([`tone`,`tone--${t.statusTone}`])},u(t.statusLabel),3),o(le,{size:16,class:`order-row__chevron`})],40,Ie))),128)),l(`button`,{type:`button`,class:`orders-all`,onClick:c[4]||=e=>n(W).push(`/orders`)},` مشاهده همه سفارش‌ها `)]),l(`section`,Ve,[c[19]||=l(`h3`,{class:`section-title`},`قیمت‌های پایه (نمونه)`,-1),l(`div`,He,[l(`div`,Ue,[l(`div`,We,[l(`strong`,null,u(Y.value.name),1),l(`p`,null,`کد: `+u(Y.value.code),1),l(`p`,null,`عرض: `+u(n(v)(Y.value.widthCm))+` سانتی‌متر`,1),l(`p`,null,`رنگ‌ها: `+u(n(v)(Y.value.colors.length))+` رنگ`,1)]),l(`div`,{class:`price-card__image`,style:d(Y.value.imageUrl?{backgroundImage:`url(${Y.value.imageUrl})`}:void 0)},null,4)]),l(`footer`,null,`قیمت پایه به شما: `+u(n(v)(ot.value))+` تومان / متر`,1)])])],64))])])]))}}),[[`__scopeId`,`data-v-ea7c4592`]]),G=c({__name:`ProfileView`,setup(e){return(e,n)=>(i(),t(W))}});export{G as default}; \ No newline at end of file diff --git a/dist/assets/RegisterView-B12mniS_.js b/dist/assets/RegisterView-B12mniS_.js new file mode 100644 index 0000000..e8874f1 --- /dev/null +++ b/dist/assets/RegisterView-B12mniS_.js @@ -0,0 +1 @@ +import{At as e,F as t,K as n,M as r,Pt as i,_ as a,c as o,d as s,f as c,g as l,h as ee,i as te,l as u,nt as d,t as f,u as p,ut as m,v as h}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{a as g,s as _,t as v,u as ne}from"./BasicIcon-Bzeb0Iwd.js";import{t as re}from"./dist-Bc4P4ngC.js";import{d as ie,l as y}from"./format-C72AoJ2H.js";import{a as ae}from"./validation-Duyyve7l.js";import{E as b,M as oe,c as se,g as ce,m as x,o as S}from"./index-BrjLizie.js";import{t as le}from"./FormErrorBanner-Ud1D04xf.js";import{t as ue}from"./IconPhone-DymoL1t0.js";import{n as C,r as w,t as T}from"./formErrors-DglFjYkZ.js";import{t as E}from"./IconDiamond-bOGfMf7j.js";var D=h({__name:`IconVerified`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(r(),p(v,{icon:`vuesax-linear:verify`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),O=`/assets/register-card-D_GOfNUU.jpg`,k={class:`page register-page`},A={class:`register-page__scroll`},j={class:`register-page__stage`},M={class:`register-top`},N={key:0,class:`reg-field__error`},P={key:1,class:`reg-field__error`},F={class:`reg-field__phone`,dir:`ltr`},I=[`value`],L={key:2,class:`reg-field__error`},R=[`aria-expanded`],z={class:`reg-field__meta`},B={key:0,class:`job-menu`,role:`listbox`},V=[`aria-selected`,`onClick`],H={key:1,class:`reg-field__error`},U=[`disabled`],de={key:0,class:`register-submit__spinner`,"aria-hidden":`true`},fe={class:`register-submit__chevron`,"aria-hidden":`true`},pe={class:`register-terms`},me={key:0,viewBox:`0 0 12 12`,fill:`none`},he={key:3,class:`reg-field__error`},ge={class:`register-perks`,"aria-label":`مزایا`},_e={class:`register-perk`},ve={class:`register-perk`},ye={class:`register-perk`},be={class:`register-foot`},xe=[`src`],W=f(h({__name:`RegisterView`,setup(f){let p=oe(),h=se(),W=d(``),G=d(``),K=d(``),q=d(``),J=d(!0),Y=d(!1),X=d(null),Z=d({}),Q=d(``),Se=o(()=>K.value?ie(K.value):``),Ce=o(()=>x.find(e=>e.id===q.value)?.label??`دسته‌بندی شغلی`);re(X,()=>{Y.value=!1});function we(e){q.value=e,Y.value=!1,$(`jobCategory`)}function $(e){Z.value=C(Z.value,e),w(Z.value)||(Q.value=``)}function Te(e){K.value=y(e),$(`phone`)}async function Ee(){Z.value={},Q.value=``;let e=y(K.value),t={};if(W.value.trim()||(t.firstName=`نام الزامی است.`),G.value.trim()||(t.lastName=`نام خانوادگی الزامی است.`),ae(e)||(t.phone=`شماره موبایل معتبر نیست.`),q.value||(t.jobCategory=`دسته‌بندی شغلی الزامی است.`),J.value||(t.terms=`پذیرش قوانین برای ثبت‌نام لازم است.`),w(t)){Z.value=t,Q.value=T;return}let n={firstName:W.value.trim(),lastName:G.value.trim(),jobCategory:q.value};ce(n);let r=await h.requestOtp(e,{isRegister:!0,firstName:n.firstName,lastName:n.lastName});r.success?p.push({name:`otp`,query:{phone:e,mode:`register`}}):Q.value=r.message??`خطا در ارسال کد تأیید.`}return(o,d)=>(r(),c(`div`,k,[u(`div`,A,[u(`div`,j,[u(`header`,M,[d[8]||=u(`p`,{class:`register-top__welcome`},`همراه ما باشید`,-1),u(`button`,{type:`button`,class:`register-top__back`,"aria-label":`بازگشت`,onClick:d[0]||=e=>m(p).push(`/login`)},[a(S,{size:20,color:`#2A2622`})])]),d[18]||=u(`h1`,{class:`register-title`},`ثبت‌نام در نادمی تکس`,-1),d[19]||=u(`p`,{class:`register-lead`},`با چند مرحله ساده، عضوی از خانواده ما شوید.`,-1),u(`form`,{class:`register-form`,onSubmit:ne(Ee,[`prevent`])},[a(le,{message:Q.value},null,8,[`message`]),u(`label`,{class:e([`reg-field`,{"is-invalid":!!Z.value.firstName}])},[a(b,{size:18,color:`#8A847C`}),n(u(`input`,{"onUpdate:modelValue":d[1]||=e=>W.value=e,class:`reg-field__input`,type:`text`,autocomplete:`given-name`,onInput:d[2]||=e=>$(`firstName`),placeholder:`نام`},null,544),[[_,W.value]])],2),Z.value.firstName?(r(),c(`p`,N,i(Z.value.firstName),1)):s(``,!0),u(`label`,{class:e([`reg-field`,{"is-invalid":!!Z.value.lastName}])},[a(b,{size:18,color:`#8A847C`}),n(u(`input`,{"onUpdate:modelValue":d[3]||=e=>G.value=e,class:`reg-field__input`,type:`text`,dir:`rtl`,autocomplete:`family-name`,onInput:d[4]||=e=>$(`lastName`),placeholder:`نام خانوادگی`},null,544),[[_,G.value]])],2),Z.value.lastName?(r(),c(`p`,P,i(Z.value.lastName),1)):s(``,!0),u(`label`,{class:e([`reg-field`,{"is-invalid":!!Z.value.phone}])},[a(ue,{size:18,color:`#8A847C`}),u(`span`,F,[d[9]||=ee(``,1),u(`input`,{class:`reg-field__input reg-field__input--phone`,value:Se.value,type:`tel`,inputmode:`numeric`,autocomplete:`tel`,dir:`rtl`,maxlength:`11`,placeholder:`شماره موبایل`,onInput:d[5]||=e=>Te(e.target.value)},null,40,I)])],2),Z.value.phone?(r(),c(`p`,L,i(Z.value.phone),1)):s(``,!0),u(`div`,{ref_key:`jobRoot`,ref:X,class:`job-wrap`},[u(`button`,{type:`button`,class:e([`reg-field job-trigger`,{"is-open":Y.value,"is-invalid":!!Z.value.jobCategory}]),"aria-haspopup":`listbox`,"aria-expanded":Y.value,onClick:d[6]||=e=>Y.value=!Y.value},[u(`span`,z,[a(v,{icon:`vuesax-linear:category`,size:18,color:`#8A847C`}),u(`span`,{class:e({"is-placeholder":!q.value})},i(Ce.value),3)]),d[10]||=u(`svg`,{class:`job-chevron`,viewBox:`0 0 12 12`,"aria-hidden":`true`},[u(`path`,{d:`M2.5 4.5 6 8l3.5-3.5`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.4`,"stroke-linecap":`round`})],-1)],10,R),Y.value?(r(),c(`ul`,B,[(r(!0),c(te,null,t(m(x),t=>(r(),c(`li`,{key:t.id},[u(`button`,{type:`button`,role:`option`,class:e([`job-option`,{"is-active":q.value===t.id}]),"aria-selected":q.value===t.id,onClick:e=>we(t.id)},i(t.label),11,V)]))),128))])):s(``,!0),Z.value.jobCategory?(r(),c(`p`,H,i(Z.value.jobCategory),1)):s(``,!0)],512),u(`button`,{class:`register-submit`,type:`submit`,disabled:m(h).loading},[m(h).loading?(r(),c(`span`,de)):s(``,!0),u(`span`,fe,[a(S,{size:18,color:`#F4EDE4`})]),d[11]||=u(`span`,null,`دریافت کد تأیید`,-1)],8,U),u(`label`,pe,[n(u(`input`,{"onUpdate:modelValue":d[7]||=e=>J.value=e,class:`register-terms__native`,type:`checkbox`},null,512),[[g,J.value]]),u(`span`,{class:e([`register-terms__box`,{"is-on":J.value}]),"aria-hidden":`true`},[J.value?(r(),c(`svg`,me,[...d[12]||=[u(`path`,{d:`M2.2 6.2 4.7 8.7 9.8 3.4`,stroke:`#fff`,"stroke-width":`1.6`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null,-1)]])):s(``,!0)],2),d[13]||=u(`span`,null,[l(` با ثبت‌نام، `),u(`strong`,null,`قوانین و شرایط`),l(` استفاده از سرویس را می‌پذیرم. `)],-1)]),Z.value.terms?(r(),c(`p`,he,i(Z.value.terms),1)):s(``,!0)],32),u(`section`,ge,[u(`article`,_e,[a(D,{size:22,color:`#6F6B66`}),d[14]||=u(`strong`,null,`اطمینان از اصالت محصولات`,-1)]),u(`article`,ve,[a(v,{icon:`vuesax-linear:truck-time`,size:22,color:`#6F6B66`}),d[15]||=u(`strong`,null,`دسترسی سریع به کالیته‌های جدید`,-1)]),u(`article`,ye,[a(E,{size:22,color:`#6F6B66`}),d[16]||=u(`strong`,null,`تجربه خرید ویژه مشتریان`,-1)])]),u(`div`,be,[u(`img`,{class:`register-foot__bg`,src:m(O),alt:``},null,8,xe),d[17]||=u(`p`,{class:`register-foot__copy`},[l(`همراه حرفه‌ای`),u(`br`),l(`کسب‌وکار شما`)],-1)])])])]))}}),[[`__scopeId`,`data-v-dd0b86d6`]]);export{W as default}; \ No newline at end of file diff --git a/dist/assets/RegisterView-B5N97yVt.js b/dist/assets/RegisterView-B5N97yVt.js deleted file mode 100644 index 4c7acda..0000000 --- a/dist/assets/RegisterView-B5N97yVt.js +++ /dev/null @@ -1 +0,0 @@ -import{D as e,E as t,Et as n,J as r,Kt as i,M as a,N as o,O as s,P as c,T as l,Xt as u,Z as ee,b as te,ct as d,g as f,j as p,t as m,vt as h,w as g}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";import{a as _,s as v,t as y,u as ne}from"./BasicIcon-BXxbbWA_.js";import{t as re}from"./dist-2yEcZq4e.js";import{d as ie,l as b}from"./format-C72AoJ2H.js";import{a as ae}from"./validation-Duyyve7l.js";import{E as x,c as oe,g as se,m as S,o as C}from"./index-BAQfYU-Q.js";import{t as ce}from"./FormErrorBanner-DI5hhxpk.js";import{t as le}from"./IconPhone-ZmPXu1y3.js";import{n as w,r as T,t as E}from"./formErrors-DglFjYkZ.js";import{t as D}from"./IconDiamond-R4uguqMC.js";var O=c({__name:`IconVerified`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(n,i)=>(r(),t(y,{icon:`vuesax-linear:verify`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),k=`/assets/register-card-D_GOfNUU.jpg`,A={class:`page register-page`},j={class:`register-page__scroll`},M={class:`register-page__stage`},N={class:`register-top`},P={key:0,class:`reg-field__error`},F={key:1,class:`reg-field__error`},I={class:`reg-field__phone`,dir:`ltr`},L=[`value`],R={key:2,class:`reg-field__error`},z=[`aria-expanded`],B={class:`reg-field__meta`},V={key:0,class:`job-menu`,role:`listbox`},H=[`aria-selected`,`onClick`],U={key:1,class:`reg-field__error`},ue=[`disabled`],de={key:0,class:`register-submit__spinner`,"aria-hidden":`true`},fe={class:`register-submit__chevron`,"aria-hidden":`true`},pe={class:`register-terms`},me={key:0,viewBox:`0 0 12 12`,fill:`none`},he={key:3,class:`reg-field__error`},ge={class:`register-perks`,"aria-label":`مزایا`},_e={class:`register-perk`},ve={class:`register-perk`},ye={class:`register-perk`},be={class:`register-foot`},xe=[`src`],W=m(c({__name:`RegisterView`,setup(t){let c=f(),m=oe(),W=h(``),G=h(``),K=h(``),q=h(``),J=h(!0),Y=h(!1),X=h(null),Z=h({}),Q=h(``),Se=g(()=>K.value?ie(K.value):``),Ce=g(()=>S.find(e=>e.id===q.value)?.label??`دسته‌بندی شغلی`);re(X,()=>{Y.value=!1});function we(e){q.value=e,Y.value=!1,$(`jobCategory`)}function $(e){Z.value=w(Z.value,e),T(Z.value)||(Q.value=``)}function Te(e){K.value=b(e),$(`phone`)}async function Ee(){Z.value={},Q.value=``;let e=b(K.value),t={};if(W.value.trim()||(t.firstName=`نام الزامی است.`),G.value.trim()||(t.lastName=`نام خانوادگی الزامی است.`),ae(e)||(t.phone=`شماره موبایل معتبر نیست.`),q.value||(t.jobCategory=`دسته‌بندی شغلی الزامی است.`),J.value||(t.terms=`پذیرش قوانین برای ثبت‌نام لازم است.`),T(t)){Z.value=t,Q.value=E;return}let n={firstName:W.value.trim(),lastName:G.value.trim(),jobCategory:q.value};se(n);let r=await m.requestOtp(e,{isRegister:!0,firstName:n.firstName,lastName:n.lastName});r.success?c.push({name:`otp`,query:{phone:e,mode:`register`}}):Q.value=r.message??`خطا در ارسال کد تأیید.`}return(t,f)=>(r(),s(`div`,A,[l(`div`,j,[l(`div`,M,[l(`header`,N,[f[8]||=l(`p`,{class:`register-top__welcome`},`همراه ما باشید`,-1),l(`button`,{type:`button`,class:`register-top__back`,"aria-label":`بازگشت`,onClick:f[0]||=e=>n(c).push(`/login`)},[o(C,{size:20,color:`#2A2622`})])]),f[18]||=l(`h1`,{class:`register-title`},`ثبت‌نام در نادمی تکس`,-1),f[19]||=l(`p`,{class:`register-lead`},`با چند مرحله ساده، عضوی از خانواده ما شوید.`,-1),l(`form`,{class:`register-form`,onSubmit:ne(Ee,[`prevent`])},[o(ce,{message:Q.value},null,8,[`message`]),l(`label`,{class:i([`reg-field`,{"is-invalid":!!Z.value.firstName}])},[o(x,{size:18,color:`#8A847C`}),d(l(`input`,{"onUpdate:modelValue":f[1]||=e=>W.value=e,class:`reg-field__input`,type:`text`,autocomplete:`given-name`,onInput:f[2]||=e=>$(`firstName`),placeholder:`نام`},null,544),[[v,W.value]])],2),Z.value.firstName?(r(),s(`p`,P,u(Z.value.firstName),1)):e(``,!0),l(`label`,{class:i([`reg-field`,{"is-invalid":!!Z.value.lastName}])},[o(x,{size:18,color:`#8A847C`}),d(l(`input`,{"onUpdate:modelValue":f[3]||=e=>G.value=e,class:`reg-field__input`,type:`text`,dir:`rtl`,autocomplete:`family-name`,onInput:f[4]||=e=>$(`lastName`),placeholder:`نام خانوادگی`},null,544),[[v,G.value]])],2),Z.value.lastName?(r(),s(`p`,F,u(Z.value.lastName),1)):e(``,!0),l(`label`,{class:i([`reg-field`,{"is-invalid":!!Z.value.phone}])},[o(le,{size:18,color:`#8A847C`}),l(`span`,I,[f[9]||=p(``,1),l(`input`,{class:`reg-field__input reg-field__input--phone`,value:Se.value,type:`tel`,inputmode:`numeric`,autocomplete:`tel`,dir:`rtl`,maxlength:`11`,placeholder:`شماره موبایل`,onInput:f[5]||=e=>Te(e.target.value)},null,40,L)])],2),Z.value.phone?(r(),s(`p`,R,u(Z.value.phone),1)):e(``,!0),l(`div`,{ref_key:`jobRoot`,ref:X,class:`job-wrap`},[l(`button`,{type:`button`,class:i([`reg-field job-trigger`,{"is-open":Y.value,"is-invalid":!!Z.value.jobCategory}]),"aria-haspopup":`listbox`,"aria-expanded":Y.value,onClick:f[6]||=e=>Y.value=!Y.value},[l(`span`,B,[o(y,{icon:`vuesax-linear:category`,size:18,color:`#8A847C`}),l(`span`,{class:i({"is-placeholder":!q.value})},u(Ce.value),3)]),f[10]||=l(`svg`,{class:`job-chevron`,viewBox:`0 0 12 12`,"aria-hidden":`true`},[l(`path`,{d:`M2.5 4.5 6 8l3.5-3.5`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.4`,"stroke-linecap":`round`})],-1)],10,z),Y.value?(r(),s(`ul`,V,[(r(!0),s(te,null,ee(n(S),e=>(r(),s(`li`,{key:e.id},[l(`button`,{type:`button`,role:`option`,class:i([`job-option`,{"is-active":q.value===e.id}]),"aria-selected":q.value===e.id,onClick:t=>we(e.id)},u(e.label),11,H)]))),128))])):e(``,!0),Z.value.jobCategory?(r(),s(`p`,U,u(Z.value.jobCategory),1)):e(``,!0)],512),l(`button`,{class:`register-submit`,type:`submit`,disabled:n(m).loading},[n(m).loading?(r(),s(`span`,de)):e(``,!0),l(`span`,fe,[o(C,{size:18,color:`#F4EDE4`})]),f[11]||=l(`span`,null,`دریافت کد تأیید`,-1)],8,ue),l(`label`,pe,[d(l(`input`,{"onUpdate:modelValue":f[7]||=e=>J.value=e,class:`register-terms__native`,type:`checkbox`},null,512),[[_,J.value]]),l(`span`,{class:i([`register-terms__box`,{"is-on":J.value}]),"aria-hidden":`true`},[J.value?(r(),s(`svg`,me,[...f[12]||=[l(`path`,{d:`M2.2 6.2 4.7 8.7 9.8 3.4`,stroke:`#fff`,"stroke-width":`1.6`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null,-1)]])):e(``,!0)],2),f[13]||=l(`span`,null,[a(` با ثبت‌نام، `),l(`strong`,null,`قوانین و شرایط`),a(` استفاده از سرویس را می‌پذیرم. `)],-1)]),Z.value.terms?(r(),s(`p`,he,u(Z.value.terms),1)):e(``,!0)],32),l(`section`,ge,[l(`article`,_e,[o(O,{size:22,color:`#6F6B66`}),f[14]||=l(`strong`,null,`اطمینان از اصالت محصولات`,-1)]),l(`article`,ve,[o(y,{icon:`vuesax-linear:truck-time`,size:22,color:`#6F6B66`}),f[15]||=l(`strong`,null,`دسترسی سریع به کالیته‌های جدید`,-1)]),l(`article`,ye,[o(D,{size:22,color:`#6F6B66`}),f[16]||=l(`strong`,null,`تجربه خرید ویژه مشتریان`,-1)])]),l(`div`,be,[l(`img`,{class:`register-foot__bg`,src:n(k),alt:``},null,8,xe),f[17]||=l(`p`,{class:`register-foot__copy`},[a(`همراه حرفه‌ای`),l(`br`),a(`کسب‌وکار شما`)],-1)])])])]))}}),[[`__scopeId`,`data-v-dd0b86d6`]]);export{W as default}; \ No newline at end of file diff --git a/dist/assets/ReminderDetailView-CB182Fxn.js b/dist/assets/ReminderDetailView-CB182Fxn.js new file mode 100644 index 0000000..e992a80 --- /dev/null +++ b/dist/assets/ReminderDetailView-CB182Fxn.js @@ -0,0 +1 @@ +import{F as e,M as t,Nt as n,Pt as r,U as i,_ as a,c as o,d as s,f as c,i as l,k as u,l as d,nt as f,t as p,ut as m,v as h}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{M as g,c as _,j as v}from"./index-BrjLizie.js";import{t as y}from"./PageHeader-BSsCNguu.js";import{t as b}from"./PageSkeleton-DYdjm4l9.js";import{t as x}from"./crm-DoYzOa8A.js";var S={key:0,class:`page reminder-detail`},C={class:`page__scroll detail-scroll`},ee={key:0,class:`form-error`},w={class:`layout`},T={class:`panel`},E={class:`field`},D={class:`field`},O={class:`customer-line`},k={class:`field`},A={class:`field`},j={class:`field`},M={class:`actions`},N=[`disabled`],P={class:`panel`},F={class:`panel chart-panel`},I={class:`bars`},L={class:`stats-grid`},R={key:1,class:`page empty`},z={key:2,class:`page empty`},B=p(h({__name:`ReminderDetailView`,setup(p){let h=v(),B=g(),V=x(),H=_(),U=o(()=>String(h.query.id??``)),W=f(null),G=f(null),K=f([]),q=f(!0),J=f(!1),Y=f(null);async function X(){if(!U.value){W.value=null,q.value=!1;return}q.value=!0,Y.value=null;try{let e=await V.loadReminderDetail(U.value);W.value=e.reminder,G.value=e.customer,K.value=e.history}catch(e){W.value=null,Y.value=e instanceof Error?e.message:`یادآور یافت نشد.`}finally{q.value=!1}}u(X),i(U,X);function Z(e){return e===`in_person`?`ملاقات حضوری`:e===`call`?`تماس تلفنی`:e===`message`?`پیام`:`یادداشت`}async function Q(){if(!(!W.value||W.value.completed)){J.value=!0,Y.value=null;try{await V.markReminderComplete(W.value.id),W.value={...W.value,completed:!0},B.push(`/reminders?filter=today`)}catch(e){Y.value=e instanceof Error?e.message:`تکمیل یادآور ناموفق بود.`}finally{J.value=!1}}}let te=o(()=>H.fullName||`واسطه`),$=o(()=>{let e=K.value;return{total:e.length,inPerson:e.filter(e=>e.type===`in_person`).length,call:e.filter(e=>e.type===`call`).length,other:e.filter(e=>e.type===`message`||e.type===`note`).length}}),ne=o(()=>{let e=Array.from({length:6},()=>({a:0,b:0,c:0}));K.value.forEach((t,n)=>{let r=e[n%6];r&&(t.type===`in_person`?r.a+=1:t.type===`call`?r.b+=1:r.c+=1)});let t=Math.max(1,...e.map(e=>e.a+e.b+e.c));return e.map(e=>({a:`${e.a/t*100}%`,b:`${e.b/t*100}%`,c:`${e.c/t*100}%`}))});return(i,o)=>W.value&&G.value?(t(),c(`div`,S,[a(y,{title:`جزئیات یادآور`,"show-back":``,centered:``,onBack:o[0]||=e=>m(B).back()}),d(`div`,C,[Y.value?(t(),c(`p`,ee,r(Y.value),1)):s(``,!0),d(`div`,w,[d(`section`,T,[o[8]||=d(`h2`,null,`جزئیات یادآور`,-1),d(`div`,E,[o[3]||=d(`span`,null,`عنوان`,-1),d(`strong`,null,r(W.value.title)+` — `+r(W.value.description),1)]),d(`div`,D,[o[4]||=d(`span`,null,`مشتری`,-1),d(`div`,O,[d(`div`,{class:`avatar`,style:n({background:G.value.avatarColor})},r(G.value.avatarLetter),5),d(`div`,null,[d(`strong`,null,r(G.value.name),1),d(`p`,null,r(G.value.contactName),1)])])]),d(`div`,k,[o[5]||=d(`span`,null,`فروشنده حامل حضوری`,-1),d(`strong`,null,r(te.value),1)]),d(`div`,A,[o[6]||=d(`span`,null,`تاریخ و زمان`,-1),d(`strong`,null,r(W.value.date)+` — `+r(W.value.time),1)]),d(`div`,j,[o[7]||=d(`span`,null,`یادداشت`,-1),d(`strong`,null,r(W.value.note||`—`),1)]),d(`div`,M,[d(`button`,{type:`button`,class:`btn-outline`,onClick:o[1]||=e=>m(B).back()},`ویرایش`),d(`button`,{type:`button`,class:`btn-primary`,disabled:J.value||W.value.completed,onClick:Q},r(W.value.completed?`تکمیل‌شده`:J.value?`...`:`تکمیل شد`),9,N)])]),d(`section`,P,[o[9]||=d(`h2`,null,`تاریخچه تعاملات`,-1),(t(!0),c(l,null,e(K.value,e=>(t(),c(`article`,{key:e.id,class:`history-row`},[d(`div`,null,[d(`strong`,null,r(Z(e.type)),1),d(`p`,null,r(e.description),1)]),d(`span`,null,r(e.date),1)]))),128)),d(`button`,{type:`button`,class:`see-all`,onClick:o[2]||=e=>m(B).push({path:`/customer`,query:{id:G.value.id,tab:`reports`}})},` مشاهده همه `)]),d(`section`,F,[o[14]||=d(`div`,{class:`chart-panel__head`},[d(`h2`,null,`نمودار فعالیت`),d(`span`,null,`تعاملات ثبت‌شده`)],-1),d(`div`,I,[(t(!0),c(l,null,e(ne.value,(e,r)=>(t(),c(`div`,{key:r,class:`bar`},[e.c===`0%`?s(``,!0):(t(),c(`span`,{key:0,class:`seg seg--c`,style:n({height:e.c})},null,4)),e.b===`0%`?s(``,!0):(t(),c(`span`,{key:1,class:`seg seg--b`,style:n({height:e.b})},null,4)),e.a===`0%`?s(``,!0):(t(),c(`span`,{key:2,class:`seg seg--a`,style:n({height:e.a})},null,4))]))),128))]),d(`div`,L,[d(`div`,null,[o[10]||=d(`span`,null,`کل تعاملات`,-1),d(`strong`,null,r($.value.total.toLocaleString(`fa-IR`))+` مورد`,1)]),d(`div`,null,[o[11]||=d(`span`,null,`ملاقات حضوری`,-1),d(`strong`,null,r($.value.inPerson.toLocaleString(`fa-IR`))+` مورد`,1)]),d(`div`,null,[o[12]||=d(`span`,null,`تماس تلفنی`,-1),d(`strong`,null,r($.value.call.toLocaleString(`fa-IR`))+` مورد`,1)]),d(`div`,null,[o[13]||=d(`span`,null,`یادداشت و پیام`,-1),d(`strong`,null,r($.value.other.toLocaleString(`fa-IR`))+` مورد`,1)])])])])])])):q.value?(t(),c(`div`,R,[a(b,{variant:`detail`})])):(t(),c(`div`,z,[d(`p`,null,r(Y.value||`یادآور یافت نشد.`),1)]))}}),[[`__scopeId`,`data-v-59c58cf4`]]);export{B as default}; \ No newline at end of file diff --git a/dist/assets/ReminderDetailView-Dr0qYekB.js b/dist/assets/ReminderDetailView-Dr0qYekB.js deleted file mode 100644 index a2138c3..0000000 --- a/dist/assets/ReminderDetailView-Dr0qYekB.js +++ /dev/null @@ -1 +0,0 @@ -import{D as e,Et as t,G as n,J as r,N as i,O as a,P as o,T as s,Xt as c,Yt as l,Z as u,at as d,b as f,g as p,h as m,t as h,vt as g,w as _}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";import{c as v}from"./index-BAQfYU-Q.js";import{t as y}from"./PageHeader-DTO8lja2.js";import{t as b}from"./PageSkeleton-DHtB6RUa.js";import{t as x}from"./crm-CooNUbmr.js";var S={key:0,class:`page reminder-detail`},C={class:`page__scroll detail-scroll`},w={key:0,class:`form-error`},T={class:`layout`},E={class:`panel`},ee={class:`field`},D={class:`field`},O={class:`customer-line`},k={class:`field`},A={class:`field`},j={class:`field`},M={class:`actions`},N=[`disabled`],P={class:`panel`},F={class:`panel chart-panel`},I={class:`bars`},L={class:`stats-grid`},R={key:1,class:`page empty`},z={key:2,class:`page empty`},B=h(o({__name:`ReminderDetailView`,setup(o){let h=m(),B=p(),V=x(),H=v(),U=_(()=>String(h.query.id??``)),W=g(null),G=g(null),K=g([]),q=g(!0),J=g(!1),Y=g(null);async function X(){if(!U.value){W.value=null,q.value=!1;return}q.value=!0,Y.value=null;try{let e=await V.loadReminderDetail(U.value);W.value=e.reminder,G.value=e.customer,K.value=e.history}catch(e){W.value=null,Y.value=e instanceof Error?e.message:`یادآور یافت نشد.`}finally{q.value=!1}}n(X),d(U,X);function Z(e){return e===`in_person`?`ملاقات حضوری`:e===`call`?`تماس تلفنی`:e===`message`?`پیام`:`یادداشت`}async function Q(){if(!(!W.value||W.value.completed)){J.value=!0,Y.value=null;try{await V.markReminderComplete(W.value.id),W.value={...W.value,completed:!0},B.push(`/reminders?filter=today`)}catch(e){Y.value=e instanceof Error?e.message:`تکمیل یادآور ناموفق بود.`}finally{J.value=!1}}}let te=_(()=>H.fullName||`واسطه`),$=_(()=>{let e=K.value;return{total:e.length,inPerson:e.filter(e=>e.type===`in_person`).length,call:e.filter(e=>e.type===`call`).length,other:e.filter(e=>e.type===`message`||e.type===`note`).length}}),ne=_(()=>{let e=Array.from({length:6},()=>({a:0,b:0,c:0}));K.value.forEach((t,n)=>{let r=e[n%6];r&&(t.type===`in_person`?r.a+=1:t.type===`call`?r.b+=1:r.c+=1)});let t=Math.max(1,...e.map(e=>e.a+e.b+e.c));return e.map(e=>({a:`${e.a/t*100}%`,b:`${e.b/t*100}%`,c:`${e.c/t*100}%`}))});return(n,o)=>W.value&&G.value?(r(),a(`div`,S,[i(y,{title:`جزئیات یادآور`,"show-back":``,centered:``,onBack:o[0]||=e=>t(B).back()}),s(`div`,C,[Y.value?(r(),a(`p`,w,c(Y.value),1)):e(``,!0),s(`div`,T,[s(`section`,E,[o[8]||=s(`h2`,null,`جزئیات یادآور`,-1),s(`div`,ee,[o[3]||=s(`span`,null,`عنوان`,-1),s(`strong`,null,c(W.value.title)+` — `+c(W.value.description),1)]),s(`div`,D,[o[4]||=s(`span`,null,`مشتری`,-1),s(`div`,O,[s(`div`,{class:`avatar`,style:l({background:G.value.avatarColor})},c(G.value.avatarLetter),5),s(`div`,null,[s(`strong`,null,c(G.value.name),1),s(`p`,null,c(G.value.contactName),1)])])]),s(`div`,k,[o[5]||=s(`span`,null,`فروشنده حامل حضوری`,-1),s(`strong`,null,c(te.value),1)]),s(`div`,A,[o[6]||=s(`span`,null,`تاریخ و زمان`,-1),s(`strong`,null,c(W.value.date)+` — `+c(W.value.time),1)]),s(`div`,j,[o[7]||=s(`span`,null,`یادداشت`,-1),s(`strong`,null,c(W.value.note||`—`),1)]),s(`div`,M,[s(`button`,{type:`button`,class:`btn-outline`,onClick:o[1]||=e=>t(B).back()},`ویرایش`),s(`button`,{type:`button`,class:`btn-primary`,disabled:J.value||W.value.completed,onClick:Q},c(W.value.completed?`تکمیل‌شده`:J.value?`...`:`تکمیل شد`),9,N)])]),s(`section`,P,[o[9]||=s(`h2`,null,`تاریخچه تعاملات`,-1),(r(!0),a(f,null,u(K.value,e=>(r(),a(`article`,{key:e.id,class:`history-row`},[s(`div`,null,[s(`strong`,null,c(Z(e.type)),1),s(`p`,null,c(e.description),1)]),s(`span`,null,c(e.date),1)]))),128)),s(`button`,{type:`button`,class:`see-all`,onClick:o[2]||=e=>t(B).push({path:`/customer`,query:{id:G.value.id,tab:`reports`}})},` مشاهده همه `)]),s(`section`,F,[o[14]||=s(`div`,{class:`chart-panel__head`},[s(`h2`,null,`نمودار فعالیت`),s(`span`,null,`تعاملات ثبت‌شده`)],-1),s(`div`,I,[(r(!0),a(f,null,u(ne.value,(t,n)=>(r(),a(`div`,{key:n,class:`bar`},[t.c===`0%`?e(``,!0):(r(),a(`span`,{key:0,class:`seg seg--c`,style:l({height:t.c})},null,4)),t.b===`0%`?e(``,!0):(r(),a(`span`,{key:1,class:`seg seg--b`,style:l({height:t.b})},null,4)),t.a===`0%`?e(``,!0):(r(),a(`span`,{key:2,class:`seg seg--a`,style:l({height:t.a})},null,4))]))),128))]),s(`div`,L,[s(`div`,null,[o[10]||=s(`span`,null,`کل تعاملات`,-1),s(`strong`,null,c($.value.total.toLocaleString(`fa-IR`))+` مورد`,1)]),s(`div`,null,[o[11]||=s(`span`,null,`ملاقات حضوری`,-1),s(`strong`,null,c($.value.inPerson.toLocaleString(`fa-IR`))+` مورد`,1)]),s(`div`,null,[o[12]||=s(`span`,null,`تماس تلفنی`,-1),s(`strong`,null,c($.value.call.toLocaleString(`fa-IR`))+` مورد`,1)]),s(`div`,null,[o[13]||=s(`span`,null,`یادداشت و پیام`,-1),s(`strong`,null,c($.value.other.toLocaleString(`fa-IR`))+` مورد`,1)])])])])])])):q.value?(r(),a(`div`,R,[i(b,{variant:`detail`})])):(r(),a(`div`,z,[s(`p`,null,c(Y.value||`یادآور یافت نشد.`),1)]))}}),[[`__scopeId`,`data-v-59c58cf4`]]);export{B as default}; \ No newline at end of file diff --git a/dist/assets/RemindersView-CP53npYK.js b/dist/assets/RemindersView-CP53npYK.js deleted file mode 100644 index 1f7324e..0000000 --- a/dist/assets/RemindersView-CP53npYK.js +++ /dev/null @@ -1 +0,0 @@ -import{D as e,E as t,Et as n,G as ee,J as r,Kt as i,M as a,N as o,O as s,P as c,T as l,Xt as u,Yt as d,Z as f,at as te,b as p,ct as m,g as ne,h as re,t as h,vt as g,w as _}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";import{s as v,u as ie}from"./BasicIcon-BXxbbWA_.js";import{t as ae}from"./dist-2yEcZq4e.js";import{o as y}from"./format-C72AoJ2H.js";import{s as b,w as x}from"./index-BAQfYU-Q.js";import{t as oe}from"./IconChevronBack-DfGoZJJk.js";import{t as S}from"./IconMoreVertical-zeD1VV0e.js";import{t as se}from"./PageSkeleton-DHtB6RUa.js";import{i as ce,t as le}from"./crm-CooNUbmr.js";import{t as ue}from"./useGoBack-TJZZv7or.js";import{t as de}from"./PersianDateInput-CTe_lYug.js";var fe={class:`page reminders-page`},pe={class:`top mobile-only`},me={class:`desktop-page__head desktop-only reminders-desk-head`},he={class:`reminders-desk-head__actions`},ge={class:`page__scroll page__scroll--with-nav reminders-scroll`},_e={class:`tabs`,role:`tablist`,"aria-label":`فیلتر یادآورها`},ve=[`aria-selected`,`onClick`],ye={class:`tab__text`},be={key:0,class:`tab__badge`},xe={key:1,class:`error-text`},Se={key:2,class:`create-panel`},Ce={key:0,class:`create-error`},C=[`aria-expanded`],w={key:0,class:`field-select__menu`,role:`listbox`},T=[`aria-selected`,`onClick`],E={class:`create-row`},D={class:`create-actions`},O=[`disabled`],k={class:`summary`},A={class:`summary__top`},we={class:`summary__label`},Te={class:`summary__calendar`,"aria-hidden":`true`},Ee={class:`summary__count`},De={key:0,class:`empty-state`},Oe=[`onClick`],ke=[`onClick`],Ae={class:`reminder-card__header`},je={class:`reminder-card__time`},Me={class:`reminder-card__title-row`},Ne={class:`reminder-card__body`},Pe={class:`reminder-card__customer`},Fe={class:`reminder-card__customer-text`},Ie={class:`reminder-card__name`},Le={class:`reminder-card__contact`},Re={key:0,class:`reminder-card__desc`},ze={class:`completed-section`},Be={class:`completed-bar__count`},Ve={key:0,class:`completed-list`},He=[`onClick`],Ue={class:`reminder-card__header`},We={class:`reminder-card__time`},Ge={class:`reminder-card__title-row`},Ke={class:`reminder-card__body`},qe={class:`reminder-card__customer`},j={class:`reminder-card__customer-text`},Je={class:`reminder-card__name`},Ye={class:`reminder-card__contact`},Xe={key:0,class:`reminder-card__desc`},Ze={key:0,class:`completed-empty`},M=h(c({__name:`RemindersView`,setup(c){let h=re(),M=ne(),{goBack:N}=ue(`/`),P=le(),F=_(()=>String(h.query.filter??`today`)),I=g([]),L=g([]),R=g(!0),z=g(null),B=g(!1),V=g(!1),H=g(0),U=g(!1),W=g({customerId:``,title:``,date:``,time:`10:00`,note:``}),G=g(!1),K=g(null),Qe=_(()=>{if(!W.value.customerId)return`انتخاب مشتری`;let e=L.value.find(e=>e.id===W.value.customerId);return e?.name||e?.contactName||`انتخاب مشتری`});ae(K,()=>{G.value=!1});function $e(e){W.value.customerId=e,G.value=!1}let et=[{id:`all`,label:`همه`},{id:`today`,label:`امروز`},{id:`week`,label:`هفته آینده`},{id:`past`,label:`گذشته`}],q=_(()=>I.value.filter(e=>!e.completed)),J=_(()=>{let e=new Date().toISOString().slice(0,10);return I.value.filter(t=>t.completed&&t.date===e)}),tt=_(()=>q.value.length),nt=_(()=>F.value===`today`?`پیگیری‌های امروز`:F.value===`week`?`پیگیری‌های هفته آینده`:F.value===`past`?`پیگیری‌های گذشته`:`پیگیری‌های باز`),rt=_(()=>new Date().getDate().toLocaleString(`fa-IR`));async function Y(){try{let e=await ce(`past`);H.value=e.length}catch{H.value=0}}async function X(){R.value=!0,z.value=null;try{I.value=await P.loadReminders(F.value)}catch(e){z.value=e instanceof Error?e.message:`بارگذاری یادآورها ناموفق بود.`,I.value=[]}finally{R.value=!1}}ee(async()=>{await Promise.all([X(),Y()])}),te(F,X);function it(e){M.replace({path:`/reminders`,query:{filter:e}})}async function at(e){try{await P.markReminderComplete(e),await X(),await Y()}catch(e){z.value=e instanceof Error?e.message:`تکمیل یادآور ناموفق بود.`}}function Z(e){return e===`in_person`?`ملاقات حضوری`:e===`call`?`تماس تلفنی`:e===`message`?`پیام`:`یادداشت`}function Q(e){return e===`in_person`?`tag--green`:e===`call`?`tag--blue`:`tag--purple`}async function $(){B.value=!0,U.value=!1,G.value=!1,z.value=null;try{if(L.value=await P.loadCustomers(),!W.value.customerId&&L.value[0]&&(W.value.customerId=L.value[0].id),!W.value.date){let e=new Date;W.value.date=`${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,`0`)}-${String(e.getDate()).padStart(2,`0`)}`}}catch(e){z.value=e instanceof Error?e.message:`بارگذاری مشتریان ناموفق بود.`}}async function ot(){if(!W.value.customerId||!W.value.title.trim()||!W.value.date||!W.value.time){z.value=`مشتری، عنوان، تاریخ و ساعت الزامی است.`;return}V.value=!0,z.value=null;try{await P.createReminder({customerId:W.value.customerId,title:W.value.title.trim(),date:W.value.date,time:W.value.time,note:W.value.note.trim()||void 0,description:W.value.note.trim()||void 0}),B.value=!1,W.value.title=``,W.value.note=``,await X(),await Y()}catch(e){z.value=e instanceof Error?e.message:`ثبت یادآور ناموفق بود.`}finally{V.value=!1}}function st(){U.value=!U.value}return(ee,c)=>(r(),s(`div`,fe,[l(`header`,pe,[l(`button`,{type:`button`,class:`icon-btn`,"aria-label":`بازگشت`,onClick:c[0]||=(...e)=>n(N)&&n(N)(...e)},[o(oe,{size:20})]),c[9]||=l(`h1`,null,`یادآورها`,-1),l(`button`,{type:`button`,class:`icon-btn`,"aria-label":`اعلان‌ها`,onClick:c[1]||=e=>n(M).push(`/profile/notifications`)},[o(b,{size:20})])]),l(`header`,me,[c[11]||=l(`div`,null,[l(`h1`,{class:`desktop-page__title`},`یادآورها`),l(`p`,{class:`desktop-page__subtitle`},`پیگیری و مدیریت یادآورهای مشتریان`)],-1),l(`div`,he,[l(`button`,{type:`button`,class:`desk-icon-btn`,"aria-label":`اعلان‌ها`,onClick:c[2]||=e=>n(M).push(`/profile/notifications`)},[o(b,{size:20})]),l(`button`,{type:`button`,class:`desk-new-btn`,onClick:$},[o(x,{size:18,color:`#fff`}),c[10]||=a(` یادآور جدید `,-1)])])]),l(`div`,ge,[l(`div`,_e,[(r(),s(p,null,f(et,t=>l(`button`,{key:t.id,type:`button`,role:`tab`,class:i([`tab`,{"tab--active":F.value===t.id}]),"aria-selected":F.value===t.id,onClick:e=>it(t.id)},[l(`span`,ye,[a(u(t.label)+` `,1),t.id===`past`&&H.value?(r(),s(`span`,be,u(H.value.toLocaleString(`fa-IR`)),1)):e(``,!0)])],10,ve)),64))]),R.value?(r(),t(se,{key:0,variant:`list`})):z.value&&!B.value?(r(),s(`p`,xe,u(z.value),1)):e(``,!0),B.value?(r(),s(`section`,Se,[c[17]||=l(`h3`,null,`یادآور جدید`,-1),z.value?(r(),s(`p`,Ce,u(z.value),1)):e(``,!0),l(`label`,null,[c[13]||=a(` مشتری `,-1),l(`div`,{ref_key:`customerRoot`,ref:K,class:`field-select`},[l(`button`,{type:`button`,class:i([`field-select__trigger`,{"is-open":G.value}]),"aria-haspopup":`listbox`,"aria-expanded":G.value,onClick:c[3]||=e=>G.value=!G.value},[l(`span`,{class:i({"is-placeholder":!W.value.customerId})},u(Qe.value),3),c[12]||=l(`svg`,{class:`field-select__chevron`,viewBox:`0 0 12 12`,"aria-hidden":`true`},[l(`path`,{d:`M2.5 4.5 6 8l3.5-3.5`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.4`,"stroke-linecap":`round`})],-1)],10,C),G.value?(r(),s(`ul`,w,[(r(!0),s(p,null,f(L.value,e=>(r(),s(`li`,{key:e.id},[l(`button`,{type:`button`,role:`option`,class:i([`field-select__option`,{"is-active":W.value.customerId===e.id}]),"aria-selected":W.value.customerId===e.id,onClick:t=>$e(e.id)},u(e.name||e.contactName),11,T)]))),128))])):e(``,!0)],512)]),l(`label`,null,[c[14]||=a(` عنوان `,-1),m(l(`input`,{"onUpdate:modelValue":c[4]||=e=>W.value.title=e,type:`text`,placeholder:`مثلاً پیگیری نمونه`},null,512),[[v,W.value.title]])]),l(`div`,E,[o(de,{modelValue:W.value.date,"onUpdate:modelValue":c[5]||=e=>W.value.date=e,label:`تاریخ`,class:`create-date`},null,8,[`modelValue`]),l(`label`,null,[c[15]||=a(` ساعت `,-1),m(l(`input`,{"onUpdate:modelValue":c[6]||=e=>W.value.time=e,type:`time`},null,512),[[v,W.value.time]])])]),l(`label`,null,[c[16]||=a(` یادداشت `,-1),m(l(`textarea`,{"onUpdate:modelValue":c[7]||=e=>W.value.note=e,rows:`2`,placeholder:`اختیاری`},null,512),[[v,W.value.note]])]),l(`div`,D,[l(`button`,{type:`button`,class:`btn-cancel`,onClick:c[8]||=e=>B.value=!1},`انصراف`),l(`button`,{type:`button`,class:`btn-save`,disabled:V.value,onClick:ot},u(V.value?`در حال ثبت...`:`ثبت یادآور`),9,O)])])):!R.value&&!z.value?(r(),s(p,{key:3},[l(`section`,k,[l(`div`,A,[l(`span`,we,u(nt.value),1),l(`div`,Te,[c[18]||=l(`svg`,{viewBox:`0 0 24 24`,fill:`none`},[l(`path`,{d:`M8 2.5V5.5M16 2.5V5.5M4.5 9.5H19.5M19 8.5V17.5C19 20 17.5 21.5 14.5 21.5H9.5C6.5 21.5 5 20 5 17.5V8.5C5 6 6.5 4.5 9.5 4.5H14.5C17.5 4.5 19 6 19 8.5Z`,stroke:`currentColor`,"stroke-width":`1.5`,"stroke-linecap":`round`,"stroke-linejoin":`round`})],-1),l(`span`,null,u(rt.value),1)])]),l(`div`,Ee,[l(`strong`,null,u(n(y)(tt.value)),1),c[19]||=l(`span`,null,`مورد`,-1)]),c[20]||=l(`p`,{class:`summary__sub`},`یادآورهای شما برای پیگیری مشتریان`,-1)]),q.value.length?e(``,!0):(r(),s(`div`,De,`یادآوری برای این بازه ثبت نشده است.`)),(r(!0),s(p,null,f(q.value,t=>(r(),s(`div`,{key:t.id,class:`reminder-row`},[l(`button`,{type:`button`,class:`reminder-row__check`,"aria-label":`تکمیل یادآور`,onClick:ie(e=>at(t.id),[`stop`])},null,8,Oe),l(`article`,{class:`reminder-card`,onClick:e=>n(M).push({path:`/reminder`,query:{id:t.id}})},[l(`div`,Ae,[l(`span`,je,u(t.time),1),l(`div`,Me,[l(`strong`,null,u(t.title),1),o(S,{size:18,class:`reminder-card__menu`})])]),l(`div`,Ne,[l(`span`,{class:i([`tag`,Q(t.interactionType)])},u(Z(t.interactionType)),3),l(`div`,Pe,[l(`div`,Fe,[l(`p`,Ie,u(t.customerName),1),l(`p`,Le,u(t.contactName),1)]),l(`div`,{class:`reminder-card__avatar`,style:d({background:t.avatarColor})},u(t.avatarLetter),5)])]),t.description?(r(),s(`p`,Re,u(t.description),1)):e(``,!0)],8,ke)]))),128)),l(`section`,ze,[l(`button`,{type:`button`,class:`completed-bar`,onClick:st},[(r(),s(`svg`,{class:i([`completed-bar__chevron`,{"is-open":U.value}]),viewBox:`0 0 12 12`,"aria-hidden":`true`},[...c[21]||=[l(`path`,{d:`M2.5 4.5 6 8l3.5-3.5`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.4`,"stroke-linecap":`round`},null,-1)]],2)),c[22]||=l(`span`,{class:`completed-bar__label`},`یادآورهای تکمیل شده امروز`,-1),l(`span`,Be,u(n(y)(J.value.length)),1)]),U.value?(r(),s(`div`,Ve,[(r(!0),s(p,null,f(J.value,t=>(r(),s(`div`,{key:t.id,class:`reminder-row reminder-row--done`},[c[23]||=l(`span`,{class:`reminder-row__check reminder-row__check--done`,"aria-hidden":`true`},null,-1),l(`article`,{class:`reminder-card reminder-card--done`,onClick:e=>n(M).push({path:`/reminder`,query:{id:t.id}})},[l(`div`,Ue,[l(`span`,We,u(t.time),1),l(`div`,Ge,[l(`strong`,null,u(t.title),1),o(S,{size:18,class:`reminder-card__menu`})])]),l(`div`,Ke,[l(`span`,{class:i([`tag`,Q(t.interactionType)])},u(Z(t.interactionType)),3),l(`div`,qe,[l(`div`,j,[l(`p`,Je,u(t.customerName),1),l(`p`,Ye,u(t.contactName),1)]),l(`div`,{class:`reminder-card__avatar`,style:d({background:t.avatarColor})},u(t.avatarLetter),5)])]),t.description?(r(),s(`p`,Xe,u(t.description),1)):e(``,!0)],8,He)]))),128)),J.value.length?e(``,!0):(r(),s(`p`,Ze,`یادآور تکمیل‌شده‌ای برای امروز نیست.`))])):e(``,!0)])],64)):e(``,!0),l(`button`,{type:`button`,class:`new-btn mobile-only`,onClick:$},[o(x,{size:20,color:`#fff`}),c[24]||=a(` یادآور جدید `,-1)])])]))}}),[[`__scopeId`,`data-v-5b2cf3dd`]]);export{M as default}; \ No newline at end of file diff --git a/dist/assets/RemindersView-DQScMISF.js b/dist/assets/RemindersView-DQScMISF.js new file mode 100644 index 0000000..da3c07d --- /dev/null +++ b/dist/assets/RemindersView-DQScMISF.js @@ -0,0 +1 @@ +import{At as e,F as t,K as n,M as r,Nt as i,Pt as a,U as ee,_ as o,c as s,d as c,f as l,g as u,i as d,k as te,l as f,nt as p,t as ne,u as re,ut as m,v as h}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{s as g,u as ie}from"./BasicIcon-Bzeb0Iwd.js";import{t as ae}from"./dist-Bc4P4ngC.js";import{o as _}from"./format-C72AoJ2H.js";import{M as oe,j as se,s as v,w as y}from"./index-BrjLizie.js";import{t as ce}from"./IconChevronBack-CDeN0Cbu.js";import{t as b}from"./IconMoreVertical-DxvtLM6t.js";import{t as le}from"./PageSkeleton-DYdjm4l9.js";import{i as ue,t as de}from"./crm-DoYzOa8A.js";import{t as fe}from"./useGoBack-C1ocTT2D.js";import{t as pe}from"./PersianDateInput-DrDb_iFF.js";var me={class:`page reminders-page`},he={class:`top mobile-only`},ge={class:`desktop-page__head desktop-only reminders-desk-head`},_e={class:`reminders-desk-head__actions`},ve={class:`page__scroll page__scroll--with-nav reminders-scroll`},ye={class:`tabs`,role:`tablist`,"aria-label":`فیلتر یادآورها`},be=[`aria-selected`,`onClick`],xe={class:`tab__text`},Se={key:0,class:`tab__badge`},Ce={key:1,class:`error-text`},x={key:2,class:`create-panel`},S={key:0,class:`create-error`},C=[`aria-expanded`],w={key:0,class:`field-select__menu`,role:`listbox`},T=[`aria-selected`,`onClick`],E={class:`create-row`},D={class:`create-actions`},O=[`disabled`],k={class:`summary`},A={class:`summary__top`},we={class:`summary__label`},Te={class:`summary__calendar`,"aria-hidden":`true`},Ee={class:`summary__count`},De={key:0,class:`empty-state`},Oe=[`onClick`],ke=[`onClick`],Ae={class:`reminder-card__header`},je={class:`reminder-card__time`},Me={class:`reminder-card__title-row`},Ne={class:`reminder-card__body`},Pe={class:`reminder-card__customer`},Fe={class:`reminder-card__customer-text`},Ie={class:`reminder-card__name`},Le={class:`reminder-card__contact`},Re={key:0,class:`reminder-card__desc`},ze={class:`completed-section`},Be={class:`completed-bar__count`},Ve={key:0,class:`completed-list`},He=[`onClick`],Ue={class:`reminder-card__header`},We={class:`reminder-card__time`},Ge={class:`reminder-card__title-row`},j={class:`reminder-card__body`},Ke={class:`reminder-card__customer`},qe={class:`reminder-card__customer-text`},Je={class:`reminder-card__name`},Ye={class:`reminder-card__contact`},Xe={key:0,class:`reminder-card__desc`},Ze={key:0,class:`completed-empty`},M=ne(h({__name:`RemindersView`,setup(ne){let h=se(),M=oe(),{goBack:N}=fe(`/`),P=de(),F=s(()=>String(h.query.filter??`today`)),I=p([]),L=p([]),R=p(!0),z=p(null),B=p(!1),V=p(!1),H=p(0),U=p(!1),W=p({customerId:``,title:``,date:``,time:`10:00`,note:``}),G=p(!1),K=p(null),Qe=s(()=>{if(!W.value.customerId)return`انتخاب مشتری`;let e=L.value.find(e=>e.id===W.value.customerId);return e?.name||e?.contactName||`انتخاب مشتری`});ae(K,()=>{G.value=!1});function $e(e){W.value.customerId=e,G.value=!1}let et=[{id:`all`,label:`همه`},{id:`today`,label:`امروز`},{id:`week`,label:`هفته آینده`},{id:`past`,label:`گذشته`}],q=s(()=>I.value.filter(e=>!e.completed)),J=s(()=>{let e=new Date().toISOString().slice(0,10);return I.value.filter(t=>t.completed&&t.date===e)}),tt=s(()=>q.value.length),nt=s(()=>F.value===`today`?`پیگیری‌های امروز`:F.value===`week`?`پیگیری‌های هفته آینده`:F.value===`past`?`پیگیری‌های گذشته`:`پیگیری‌های باز`),rt=s(()=>new Date().getDate().toLocaleString(`fa-IR`));async function Y(){try{let e=await ue(`past`);H.value=e.length}catch{H.value=0}}async function X(){R.value=!0,z.value=null;try{I.value=await P.loadReminders(F.value)}catch(e){z.value=e instanceof Error?e.message:`بارگذاری یادآورها ناموفق بود.`,I.value=[]}finally{R.value=!1}}te(async()=>{await Promise.all([X(),Y()])}),ee(F,X);function it(e){M.replace({path:`/reminders`,query:{filter:e}})}async function at(e){try{await P.markReminderComplete(e),await X(),await Y()}catch(e){z.value=e instanceof Error?e.message:`تکمیل یادآور ناموفق بود.`}}function Z(e){return e===`in_person`?`ملاقات حضوری`:e===`call`?`تماس تلفنی`:e===`message`?`پیام`:`یادداشت`}function Q(e){return e===`in_person`?`tag--green`:e===`call`?`tag--blue`:`tag--purple`}async function $(){B.value=!0,U.value=!1,G.value=!1,z.value=null;try{if(L.value=await P.loadCustomers(),!W.value.customerId&&L.value[0]&&(W.value.customerId=L.value[0].id),!W.value.date){let e=new Date;W.value.date=`${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,`0`)}-${String(e.getDate()).padStart(2,`0`)}`}}catch(e){z.value=e instanceof Error?e.message:`بارگذاری مشتریان ناموفق بود.`}}async function ot(){if(!W.value.customerId||!W.value.title.trim()||!W.value.date||!W.value.time){z.value=`مشتری، عنوان، تاریخ و ساعت الزامی است.`;return}V.value=!0,z.value=null;try{await P.createReminder({customerId:W.value.customerId,title:W.value.title.trim(),date:W.value.date,time:W.value.time,note:W.value.note.trim()||void 0,description:W.value.note.trim()||void 0}),B.value=!1,W.value.title=``,W.value.note=``,await X(),await Y()}catch(e){z.value=e instanceof Error?e.message:`ثبت یادآور ناموفق بود.`}finally{V.value=!1}}function st(){U.value=!U.value}return(ee,s)=>(r(),l(`div`,me,[f(`header`,he,[f(`button`,{type:`button`,class:`icon-btn`,"aria-label":`بازگشت`,onClick:s[0]||=(...e)=>m(N)&&m(N)(...e)},[o(ce,{size:20})]),s[9]||=f(`h1`,null,`یادآورها`,-1),f(`button`,{type:`button`,class:`icon-btn`,"aria-label":`اعلان‌ها`,onClick:s[1]||=e=>m(M).push(`/profile/notifications`)},[o(v,{size:20})])]),f(`header`,ge,[s[11]||=f(`div`,null,[f(`h1`,{class:`desktop-page__title`},`یادآورها`),f(`p`,{class:`desktop-page__subtitle`},`پیگیری و مدیریت یادآورهای مشتریان`)],-1),f(`div`,_e,[f(`button`,{type:`button`,class:`desk-icon-btn`,"aria-label":`اعلان‌ها`,onClick:s[2]||=e=>m(M).push(`/profile/notifications`)},[o(v,{size:20})]),f(`button`,{type:`button`,class:`desk-new-btn`,onClick:$},[o(y,{size:18,color:`#fff`}),s[10]||=u(` یادآور جدید `,-1)])])]),f(`div`,ve,[f(`div`,ye,[(r(),l(d,null,t(et,t=>f(`button`,{key:t.id,type:`button`,role:`tab`,class:e([`tab`,{"tab--active":F.value===t.id}]),"aria-selected":F.value===t.id,onClick:e=>it(t.id)},[f(`span`,xe,[u(a(t.label)+` `,1),t.id===`past`&&H.value?(r(),l(`span`,Se,a(H.value.toLocaleString(`fa-IR`)),1)):c(``,!0)])],10,be)),64))]),R.value?(r(),re(le,{key:0,variant:`list`})):z.value&&!B.value?(r(),l(`p`,Ce,a(z.value),1)):c(``,!0),B.value?(r(),l(`section`,x,[s[17]||=f(`h3`,null,`یادآور جدید`,-1),z.value?(r(),l(`p`,S,a(z.value),1)):c(``,!0),f(`label`,null,[s[13]||=u(` مشتری `,-1),f(`div`,{ref_key:`customerRoot`,ref:K,class:`field-select`},[f(`button`,{type:`button`,class:e([`field-select__trigger`,{"is-open":G.value}]),"aria-haspopup":`listbox`,"aria-expanded":G.value,onClick:s[3]||=e=>G.value=!G.value},[f(`span`,{class:e({"is-placeholder":!W.value.customerId})},a(Qe.value),3),s[12]||=f(`svg`,{class:`field-select__chevron`,viewBox:`0 0 12 12`,"aria-hidden":`true`},[f(`path`,{d:`M2.5 4.5 6 8l3.5-3.5`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.4`,"stroke-linecap":`round`})],-1)],10,C),G.value?(r(),l(`ul`,w,[(r(!0),l(d,null,t(L.value,t=>(r(),l(`li`,{key:t.id},[f(`button`,{type:`button`,role:`option`,class:e([`field-select__option`,{"is-active":W.value.customerId===t.id}]),"aria-selected":W.value.customerId===t.id,onClick:e=>$e(t.id)},a(t.name||t.contactName),11,T)]))),128))])):c(``,!0)],512)]),f(`label`,null,[s[14]||=u(` عنوان `,-1),n(f(`input`,{"onUpdate:modelValue":s[4]||=e=>W.value.title=e,type:`text`,placeholder:`مثلاً پیگیری نمونه`},null,512),[[g,W.value.title]])]),f(`div`,E,[o(pe,{modelValue:W.value.date,"onUpdate:modelValue":s[5]||=e=>W.value.date=e,label:`تاریخ`,class:`create-date`},null,8,[`modelValue`]),f(`label`,null,[s[15]||=u(` ساعت `,-1),n(f(`input`,{"onUpdate:modelValue":s[6]||=e=>W.value.time=e,type:`time`},null,512),[[g,W.value.time]])])]),f(`label`,null,[s[16]||=u(` یادداشت `,-1),n(f(`textarea`,{"onUpdate:modelValue":s[7]||=e=>W.value.note=e,rows:`2`,placeholder:`اختیاری`},null,512),[[g,W.value.note]])]),f(`div`,D,[f(`button`,{type:`button`,class:`btn-cancel`,onClick:s[8]||=e=>B.value=!1},`انصراف`),f(`button`,{type:`button`,class:`btn-save`,disabled:V.value,onClick:ot},a(V.value?`در حال ثبت...`:`ثبت یادآور`),9,O)])])):!R.value&&!z.value?(r(),l(d,{key:3},[f(`section`,k,[f(`div`,A,[f(`span`,we,a(nt.value),1),f(`div`,Te,[s[18]||=f(`svg`,{viewBox:`0 0 24 24`,fill:`none`},[f(`path`,{d:`M8 2.5V5.5M16 2.5V5.5M4.5 9.5H19.5M19 8.5V17.5C19 20 17.5 21.5 14.5 21.5H9.5C6.5 21.5 5 20 5 17.5V8.5C5 6 6.5 4.5 9.5 4.5H14.5C17.5 4.5 19 6 19 8.5Z`,stroke:`currentColor`,"stroke-width":`1.5`,"stroke-linecap":`round`,"stroke-linejoin":`round`})],-1),f(`span`,null,a(rt.value),1)])]),f(`div`,Ee,[f(`strong`,null,a(m(_)(tt.value)),1),s[19]||=f(`span`,null,`مورد`,-1)]),s[20]||=f(`p`,{class:`summary__sub`},`یادآورهای شما برای پیگیری مشتریان`,-1)]),q.value.length?c(``,!0):(r(),l(`div`,De,`یادآوری برای این بازه ثبت نشده است.`)),(r(!0),l(d,null,t(q.value,t=>(r(),l(`div`,{key:t.id,class:`reminder-row`},[f(`button`,{type:`button`,class:`reminder-row__check`,"aria-label":`تکمیل یادآور`,onClick:ie(e=>at(t.id),[`stop`])},null,8,Oe),f(`article`,{class:`reminder-card`,onClick:e=>m(M).push({path:`/reminder`,query:{id:t.id}})},[f(`div`,Ae,[f(`span`,je,a(t.time),1),f(`div`,Me,[f(`strong`,null,a(t.title),1),o(b,{size:18,class:`reminder-card__menu`})])]),f(`div`,Ne,[f(`span`,{class:e([`tag`,Q(t.interactionType)])},a(Z(t.interactionType)),3),f(`div`,Pe,[f(`div`,Fe,[f(`p`,Ie,a(t.customerName),1),f(`p`,Le,a(t.contactName),1)]),f(`div`,{class:`reminder-card__avatar`,style:i({background:t.avatarColor})},a(t.avatarLetter),5)])]),t.description?(r(),l(`p`,Re,a(t.description),1)):c(``,!0)],8,ke)]))),128)),f(`section`,ze,[f(`button`,{type:`button`,class:`completed-bar`,onClick:st},[(r(),l(`svg`,{class:e([`completed-bar__chevron`,{"is-open":U.value}]),viewBox:`0 0 12 12`,"aria-hidden":`true`},[...s[21]||=[f(`path`,{d:`M2.5 4.5 6 8l3.5-3.5`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.4`,"stroke-linecap":`round`},null,-1)]],2)),s[22]||=f(`span`,{class:`completed-bar__label`},`یادآورهای تکمیل شده امروز`,-1),f(`span`,Be,a(m(_)(J.value.length)),1)]),U.value?(r(),l(`div`,Ve,[(r(!0),l(d,null,t(J.value,t=>(r(),l(`div`,{key:t.id,class:`reminder-row reminder-row--done`},[s[23]||=f(`span`,{class:`reminder-row__check reminder-row__check--done`,"aria-hidden":`true`},null,-1),f(`article`,{class:`reminder-card reminder-card--done`,onClick:e=>m(M).push({path:`/reminder`,query:{id:t.id}})},[f(`div`,Ue,[f(`span`,We,a(t.time),1),f(`div`,Ge,[f(`strong`,null,a(t.title),1),o(b,{size:18,class:`reminder-card__menu`})])]),f(`div`,j,[f(`span`,{class:e([`tag`,Q(t.interactionType)])},a(Z(t.interactionType)),3),f(`div`,Ke,[f(`div`,qe,[f(`p`,Je,a(t.customerName),1),f(`p`,Ye,a(t.contactName),1)]),f(`div`,{class:`reminder-card__avatar`,style:i({background:t.avatarColor})},a(t.avatarLetter),5)])]),t.description?(r(),l(`p`,Xe,a(t.description),1)):c(``,!0)],8,He)]))),128)),J.value.length?c(``,!0):(r(),l(`p`,Ze,`یادآور تکمیل‌شده‌ای برای امروز نیست.`))])):c(``,!0)])],64)):c(``,!0),f(`button`,{type:`button`,class:`new-btn mobile-only`,onClick:$},[o(y,{size:20,color:`#fff`}),s[24]||=u(` یادآور جدید `,-1)])])]))}}),[[`__scopeId`,`data-v-5b2cf3dd`]]);export{M as default}; \ No newline at end of file diff --git a/dist/assets/SearchField-BMLbKLPW.js b/dist/assets/SearchField-BMLbKLPW.js deleted file mode 100644 index 47d7327..0000000 --- a/dist/assets/SearchField-BMLbKLPW.js +++ /dev/null @@ -1 +0,0 @@ -import{J as e,O as t,P as n,T as r,t as i,vt as a}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";var o={class:`search-field`},s=[`value`,`placeholder`],c=i(n({__name:`SearchField`,props:{modelValue:{},placeholder:{}},emits:[`update:modelValue`],setup(n,{expose:i}){let c=a(null);function l(){c.value?.focus()}return i({focus:l}),(i,a)=>(e(),t(`div`,o,[r(`input`,{ref_key:`inputRef`,ref:c,class:`search-field__input`,type:`search`,enterkeyhint:`search`,value:n.modelValue,placeholder:n.placeholder,onInput:a[0]||=e=>i.$emit(`update:modelValue`,e.target.value)},null,40,s)]))}}),[[`__scopeId`,`data-v-c37974a4`]]);export{c as t}; \ No newline at end of file diff --git a/dist/assets/SearchField-dVDn9y5S.js b/dist/assets/SearchField-dVDn9y5S.js new file mode 100644 index 0000000..91a1379 --- /dev/null +++ b/dist/assets/SearchField-dVDn9y5S.js @@ -0,0 +1 @@ +import{M as e,f as t,l as n,nt as r,t as i,v as a}from"./_plugin-vue_export-helper-1xMDlcEE.js";var o={class:`search-field`},s=[`value`,`placeholder`],c=i(a({__name:`SearchField`,props:{modelValue:{},placeholder:{}},emits:[`update:modelValue`],setup(i,{expose:a}){let c=r(null);function l(){c.value?.focus()}return a({focus:l}),(r,a)=>(e(),t(`div`,o,[n(`input`,{ref_key:`inputRef`,ref:c,class:`search-field__input`,type:`search`,enterkeyhint:`search`,value:i.modelValue,placeholder:i.placeholder,onInput:a[0]||=e=>r.$emit(`update:modelValue`,e.target.value)},null,40,s)]))}}),[[`__scopeId`,`data-v-c37974a4`]]);export{c as t}; \ No newline at end of file diff --git a/dist/assets/SettlementTypeView-B79MwpEm.js b/dist/assets/SettlementTypeView-B79MwpEm.js new file mode 100644 index 0000000..fef932d --- /dev/null +++ b/dist/assets/SettlementTypeView-B79MwpEm.js @@ -0,0 +1 @@ +import{G as e,M as t,Pt as n,U as r,_ as i,c as a,d as o,f as s,g as c,i as l,l as u,nt as d,t as f,u as p,ut as m,v as h}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{t as g}from"./BasicIcon-Bzeb0Iwd.js";import{n as _}from"./format-C72AoJ2H.js";import{C as v,M as y,d as b,n as x}from"./index-BrjLizie.js";import{t as S}from"./FormErrorBanner-Ud1D04xf.js";import{t as C}from"./CheckoutStepper-DptjKnv0.js";import{t as w}from"./PageHeader-BSsCNguu.js";import{n as T}from"./orderInvoice-B0L1Aeuk.js";import{t as E}from"./useRequirePricedOrder-CmTdgjZX.js";var D=h({__name:`IconCashSettlement`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(n,r)=>(t(),p(g,{icon:`vuesax-linear:card`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),O={class:`page settlement-mobile-page mobile-only`},k={class:`page__scroll`},A={key:0,class:`settlement-waiting`},j={class:`settlement-invoice`},M={class:`settlement-invoice__value`},N={key:0,class:`settlement-invoice__meta`},P={class:`settlement-mobile-options`},F=[`disabled`],I={class:`settlement-card__icon settlement-card__icon--cash`},L=[`disabled`],R={class:`settlement-card__icon settlement-card__icon--check`},z={class:`desktop-checkout-shell desktop-only`},B={class:`desktop-page__head`},V={class:`desktop-page__subtitle`},H={key:0,class:`settlement-waiting settlement-waiting--desktop`},U={key:1,class:`desktop-settlement-grid`},W=[`disabled`],G={class:`settlement-card__icon settlement-card__icon--cash`},K=[`disabled`],q={class:`settlement-card__icon settlement-card__icon--check`},J=f(h({__name:`SettlementTypeView`,setup(f){let p=y(),h=b(),{orderId:g,order:J,invoiceReady:Y}=E(),X=d(!1),Z=d(``);r(g,async e=>{e&&!h.getOrderById(e)&&await h.fetchOrder(e)},{immediate:!0});let Q=a(()=>J.value?.finalAmount?_(J.value.finalAmount):`—`);async function $(e){if(X.value||!T(J.value)){Z.value=`تا قبل از قیمت‌گذاری مدیریت، امکان انتخاب روش تسویه وجود ندارد.`;return}X.value=!0,Z.value=``;try{await h.chooseSettlement(g.value,e),e===`cash`?p.replace(`/orders/${g.value}/cash`):(h.startCheckDraft(g.value),p.replace(`/orders/${g.value}/check-mode`))}catch(e){Z.value=e instanceof Error?e.message:`ثبت روش تسویه ناموفق بود.`}finally{X.value=!1}}return(r,a)=>(t(),s(l,null,[u(`div`,O,[i(w,{title:`انتخاب نوع تسویه`,subtitle:`پس از صدور فاکتور، نوع تسویه را انتخاب کنید`,"show-back":``,centered:``,onBack:a[0]||=e=>m(p).push(`/orders/${m(g)}`)}),u(`div`,k,[i(S,{message:Z.value},null,8,[`message`]),m(Y)?(t(),s(l,{key:1},[u(`div`,j,[a[10]||=u(`span`,{class:`settlement-invoice__label`},`مبلغ فاکتور`,-1),u(`strong`,M,n(Q.value),1),m(J)?(t(),s(`span`,N,`سفارش `+n(m(J).orderNumber),1)):o(``,!0)]),u(`div`,P,[u(`button`,{type:`button`,class:`settlement-card`,disabled:X.value,onClick:a[2]||=e=>$(`cash`)},[u(`span`,I,[i(D,{size:36})]),a[11]||=u(`h3`,null,`تسویه نقدی`,-1),a[12]||=u(`p`,null,`پرداخت از طریق واریز به حساب شرکت`,-1)],8,F),u(`button`,{type:`button`,class:`settlement-card`,disabled:X.value,onClick:a[3]||=e=>$(`check`)},[u(`span`,R,[i(v,{size:36})]),a[13]||=u(`h3`,null,`تسویه چکی`,-1),a[14]||=u(`p`,null,`پرداخت بر اساس مبلغ فاکتور با ثبت چک`,-1)],8,L)])],64)):(t(),s(`div`,A,[a[8]||=u(`h3`,{class:`settlement-waiting__title`},`در انتظار قیمت‌گذاری`,-1),a[9]||=u(`p`,{class:`settlement-waiting__text`},` پیش‌سفارش ثبت شده است. پس از تعیین قیمت توسط مدیریت و صدور فاکتور، از این صفحه روش تسویه (نقد یا چک) را انتخاب کنید. `,-1),i(x,{block:``,variant:`outline`,onClick:a[1]||=e=>m(p).push(`/orders/${m(g)}`)},{default:e(()=>[...a[7]||=[c(` بازگشت به جزئیات سفارش `,-1)]]),_:1})]))])]),u(`div`,z,[i(C,{"current-step":4}),u(`header`,B,[a[15]||=u(`h1`,{class:`desktop-page__title`},`انتخاب نوع تسویه`,-1),u(`p`,V,[m(Y)?(t(),s(l,{key:0},[c(` مبلغ فاکتور `+n(Q.value)+n(m(J)?` · سفارش ${m(J).orderNumber}`:``),1)],64)):(t(),s(l,{key:1},[c(`پس از قیمت‌گذاری مدیریت فعال می‌شود`)],64))])]),i(S,{message:Z.value},null,8,[`message`]),m(Y)?(t(),s(`div`,U,[u(`button`,{type:`button`,class:`settlement-card settlement-card--desktop`,disabled:X.value,onClick:a[5]||=e=>$(`cash`)},[u(`span`,G,[i(D,{size:40})]),a[19]||=u(`h3`,null,`تسویه نقدی`,-1),a[20]||=u(`p`,null,`پرداخت از طریق واریز به حساب شرکت`,-1)],8,W),u(`button`,{type:`button`,class:`settlement-card settlement-card--desktop`,disabled:X.value,onClick:a[6]||=e=>$(`check`)},[u(`span`,q,[i(v,{size:40})]),a[21]||=u(`h3`,null,`تسویه چکی`,-1),a[22]||=u(`p`,null,`پرداخت بر اساس مبلغ فاکتور با ثبت چک`,-1)],8,K)])):(t(),s(`div`,H,[a[17]||=u(`h3`,{class:`settlement-waiting__title`},`در انتظار قیمت‌گذاری`,-1),a[18]||=u(`p`,{class:`settlement-waiting__text`},` پیش‌سفارش ثبت شده است. پس از صدور فاکتور می‌توانید روش تسویه را انتخاب کنید. `,-1),i(x,{variant:`outline`,onClick:a[4]||=e=>m(p).push(`/orders/${m(g)}`)},{default:e(()=>[...a[16]||=[c(` بازگشت به جزئیات سفارش `,-1)]]),_:1})]))])],64))}}),[[`__scopeId`,`data-v-6b697aeb`]]);export{J as default}; \ No newline at end of file diff --git a/dist/assets/SettlementTypeView-BAS_xsRw.js b/dist/assets/SettlementTypeView-BAS_xsRw.js deleted file mode 100644 index 3536e73..0000000 --- a/dist/assets/SettlementTypeView-BAS_xsRw.js +++ /dev/null @@ -1 +0,0 @@ -import{D as e,E as t,Et as n,J as r,M as i,N as a,O as o,P as s,T as c,Xt as l,at as u,b as d,g as f,st as p,t as m,vt as h,w as g}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";import{t as _}from"./BasicIcon-BXxbbWA_.js";import{n as v}from"./format-C72AoJ2H.js";import{C as y,d as b,n as x}from"./index-BAQfYU-Q.js";import{t as S}from"./FormErrorBanner-DI5hhxpk.js";import{t as C}from"./CheckoutStepper-Dw7-dJI5.js";import{t as w}from"./PageHeader-DTO8lja2.js";import{n as T}from"./orderInvoice-B0L1Aeuk.js";import{t as E}from"./useRequirePricedOrder-DWh7nbsh.js";var D=s({__name:`IconCashSettlement`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(n,i)=>(r(),t(_,{icon:`vuesax-linear:card`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),O={class:`page settlement-mobile-page mobile-only`},k={class:`page__scroll`},A={key:0,class:`settlement-waiting`},j={class:`settlement-invoice`},M={class:`settlement-invoice__value`},N={key:0,class:`settlement-invoice__meta`},P={class:`settlement-mobile-options`},F=[`disabled`],I={class:`settlement-card__icon settlement-card__icon--cash`},L=[`disabled`],R={class:`settlement-card__icon settlement-card__icon--check`},z={class:`desktop-checkout-shell desktop-only`},B={class:`desktop-page__head`},V={class:`desktop-page__subtitle`},H={key:0,class:`settlement-waiting settlement-waiting--desktop`},U={key:1,class:`desktop-settlement-grid`},W=[`disabled`],G={class:`settlement-card__icon settlement-card__icon--cash`},K=[`disabled`],q={class:`settlement-card__icon settlement-card__icon--check`},J=m(s({__name:`SettlementTypeView`,setup(t){let s=f(),m=b(),{orderId:_,order:J,invoiceReady:Y}=E(),X=h(!1),Z=h(``);u(_,async e=>{e&&!m.getOrderById(e)&&await m.fetchOrder(e)},{immediate:!0});let Q=g(()=>J.value?.finalAmount?v(J.value.finalAmount):`—`);async function $(e){if(X.value||!T(J.value)){Z.value=`تا قبل از قیمت‌گذاری مدیریت، امکان انتخاب روش تسویه وجود ندارد.`;return}X.value=!0,Z.value=``;try{await m.chooseSettlement(_.value,e),e===`cash`?s.replace(`/orders/${_.value}/cash`):(m.startCheckDraft(_.value),s.replace(`/orders/${_.value}/check-mode`))}catch(e){Z.value=e instanceof Error?e.message:`ثبت روش تسویه ناموفق بود.`}finally{X.value=!1}}return(t,u)=>(r(),o(d,null,[c(`div`,O,[a(w,{title:`انتخاب نوع تسویه`,subtitle:`پس از صدور فاکتور، نوع تسویه را انتخاب کنید`,"show-back":``,centered:``,onBack:u[0]||=e=>n(s).push(`/orders/${n(_)}`)}),c(`div`,k,[a(S,{message:Z.value},null,8,[`message`]),n(Y)?(r(),o(d,{key:1},[c(`div`,j,[u[10]||=c(`span`,{class:`settlement-invoice__label`},`مبلغ فاکتور`,-1),c(`strong`,M,l(Q.value),1),n(J)?(r(),o(`span`,N,`سفارش `+l(n(J).orderNumber),1)):e(``,!0)]),c(`div`,P,[c(`button`,{type:`button`,class:`settlement-card`,disabled:X.value,onClick:u[2]||=e=>$(`cash`)},[c(`span`,I,[a(D,{size:36})]),u[11]||=c(`h3`,null,`تسویه نقدی`,-1),u[12]||=c(`p`,null,`پرداخت از طریق واریز به حساب شرکت`,-1)],8,F),c(`button`,{type:`button`,class:`settlement-card`,disabled:X.value,onClick:u[3]||=e=>$(`check`)},[c(`span`,R,[a(y,{size:36})]),u[13]||=c(`h3`,null,`تسویه چکی`,-1),u[14]||=c(`p`,null,`پرداخت بر اساس مبلغ فاکتور با ثبت چک`,-1)],8,L)])],64)):(r(),o(`div`,A,[u[8]||=c(`h3`,{class:`settlement-waiting__title`},`در انتظار قیمت‌گذاری`,-1),u[9]||=c(`p`,{class:`settlement-waiting__text`},` پیش‌سفارش ثبت شده است. پس از تعیین قیمت توسط مدیریت و صدور فاکتور، از این صفحه روش تسویه (نقد یا چک) را انتخاب کنید. `,-1),a(x,{block:``,variant:`outline`,onClick:u[1]||=e=>n(s).push(`/orders/${n(_)}`)},{default:p(()=>[...u[7]||=[i(` بازگشت به جزئیات سفارش `,-1)]]),_:1})]))])]),c(`div`,z,[a(C,{"current-step":4}),c(`header`,B,[u[15]||=c(`h1`,{class:`desktop-page__title`},`انتخاب نوع تسویه`,-1),c(`p`,V,[n(Y)?(r(),o(d,{key:0},[i(` مبلغ فاکتور `+l(Q.value)+l(n(J)?` · سفارش ${n(J).orderNumber}`:``),1)],64)):(r(),o(d,{key:1},[i(`پس از قیمت‌گذاری مدیریت فعال می‌شود`)],64))])]),a(S,{message:Z.value},null,8,[`message`]),n(Y)?(r(),o(`div`,U,[c(`button`,{type:`button`,class:`settlement-card settlement-card--desktop`,disabled:X.value,onClick:u[5]||=e=>$(`cash`)},[c(`span`,G,[a(D,{size:40})]),u[19]||=c(`h3`,null,`تسویه نقدی`,-1),u[20]||=c(`p`,null,`پرداخت از طریق واریز به حساب شرکت`,-1)],8,W),c(`button`,{type:`button`,class:`settlement-card settlement-card--desktop`,disabled:X.value,onClick:u[6]||=e=>$(`check`)},[c(`span`,q,[a(y,{size:40})]),u[21]||=c(`h3`,null,`تسویه چکی`,-1),u[22]||=c(`p`,null,`پرداخت بر اساس مبلغ فاکتور با ثبت چک`,-1)],8,K)])):(r(),o(`div`,H,[u[17]||=c(`h3`,{class:`settlement-waiting__title`},`در انتظار قیمت‌گذاری`,-1),u[18]||=c(`p`,{class:`settlement-waiting__text`},` پیش‌سفارش ثبت شده است. پس از صدور فاکتور می‌توانید روش تسویه را انتخاب کنید. `,-1),a(x,{variant:`outline`,onClick:u[4]||=e=>n(s).push(`/orders/${n(_)}`)},{default:p(()=>[...u[16]||=[i(` بازگشت به جزئیات سفارش `,-1)]]),_:1})]))])],64))}}),[[`__scopeId`,`data-v-6b697aeb`]]);export{J as default}; \ No newline at end of file diff --git a/dist/assets/SimpleStatusTimeline-BYp_nmbJ.js b/dist/assets/SimpleStatusTimeline-BYp_nmbJ.js new file mode 100644 index 0000000..56b0367 --- /dev/null +++ b/dist/assets/SimpleStatusTimeline-BYp_nmbJ.js @@ -0,0 +1 @@ +import{At as e,F as t,M as n,Pt as r,d as i,f as a,i as o,l as s,t as c,v as l}from"./_plugin-vue_export-helper-1xMDlcEE.js";var u={class:`tracking-timeline`},d={class:`tracking-timeline__marker-wrap`},f={class:`tracking-timeline__marker`},p={key:0,class:`tracking-timeline__check`},m={class:`tracking-timeline__label`},h={key:0,class:`tracking-timeline__time`},g=c(l({__name:`SimpleStatusTimeline`,props:{steps:{},currentIndex:{},timestamps:{}},setup(c){let l=c;function g(e){return e(n(),a(`div`,u,[(n(!0),a(o,null,t(c.steps,(t,o)=>(n(),a(`div`,{key:t.id,class:e([`tracking-timeline__item`,`tracking-timeline__item--${g(o)}`])},[s(`div`,d,[v[0]||=s(`div`,{class:`tracking-timeline__line`,"aria-hidden":`true`},null,-1),s(`div`,f,[g(o)===`done`?(n(),a(`span`,p,`✓`)):i(``,!0)])]),s(`div`,{class:e([`tracking-timeline__content`,{"tracking-timeline__content--current":g(o)===`current`}])},[s(`strong`,m,r(t.label),1),_(t.id)?(n(),a(`span`,h,r(_(t.id)),1)):i(``,!0)],2)],2))),128))]))}}),[[`__scopeId`,`data-v-bc64a734`]]);export{g as t}; \ No newline at end of file diff --git a/dist/assets/SimpleStatusTimeline-wcI2qobj.js b/dist/assets/SimpleStatusTimeline-wcI2qobj.js deleted file mode 100644 index f67f9a8..0000000 --- a/dist/assets/SimpleStatusTimeline-wcI2qobj.js +++ /dev/null @@ -1 +0,0 @@ -import{D as e,J as t,Kt as n,O as r,P as i,T as a,Xt as o,Z as s,b as c,t as l}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";var u={class:`tracking-timeline`},d={class:`tracking-timeline__marker-wrap`},f={class:`tracking-timeline__marker`},p={key:0,class:`tracking-timeline__check`},m={class:`tracking-timeline__label`},h={key:0,class:`tracking-timeline__time`},g=l(i({__name:`SimpleStatusTimeline`,props:{steps:{},currentIndex:{},timestamps:{}},setup(i){let l=i;function g(e){return e(t(),r(`div`,u,[(t(!0),r(c,null,s(i.steps,(i,s)=>(t(),r(`div`,{key:i.id,class:n([`tracking-timeline__item`,`tracking-timeline__item--${g(s)}`])},[a(`div`,d,[v[0]||=a(`div`,{class:`tracking-timeline__line`,"aria-hidden":`true`},null,-1),a(`div`,f,[g(s)===`done`?(t(),r(`span`,p,`✓`)):e(``,!0)])]),a(`div`,{class:n([`tracking-timeline__content`,{"tracking-timeline__content--current":g(s)===`current`}])},[a(`strong`,m,o(i.label),1),_(i.id)?(t(),r(`span`,h,o(_(i.id)),1)):e(``,!0)],2)],2))),128))]))}}),[[`__scopeId`,`data-v-bc64a734`]]);export{g as t}; \ No newline at end of file diff --git a/dist/assets/WelcomeView-CY8sq5mY.js b/dist/assets/WelcomeView-B9nyWLIh.js similarity index 69% rename from dist/assets/WelcomeView-CY8sq5mY.js rename to dist/assets/WelcomeView-B9nyWLIh.js index ad8dde1..873d9c1 100644 --- a/dist/assets/WelcomeView-CY8sq5mY.js +++ b/dist/assets/WelcomeView-B9nyWLIh.js @@ -1 +1 @@ -import{E as e,Et as t,J as n,N as r,O as i,P as a,T as o,Xt as s,Z as c,b as l,g as u,t as d}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";import{t as f}from"./BasicIcon-BXxbbWA_.js";import{_ as p,o as m}from"./index-BAQfYU-Q.js";import{t as h}from"./login-fabric-CzrIXTnD.js";var g={class:`page welcome-page`},_=[`src`],v={class:`welcome-page__scroll`},y={class:`welcome-page__stage`},b={class:`welcome-brand`},x={class:`welcome-features`},S={class:`welcome-feature__icon`,"aria-hidden":`true`},C={key:0,class:`welcome-feature__star`,viewBox:`0 0 24 24`,fill:`none`},w={class:`welcome-cta__chevron`,"aria-hidden":`true`},T=d(a({__name:`WelcomeView`,setup(a){let d=u(),T=[{icon:`star`,title:`همراه همیشگی کسب‌وکارتان`,subtitle:`با خدمات ویژه مشتریان`},{icon:`vuesax-linear:truck-time`,title:`سفارش عمده`,subtitle:`مستقیم از تولیدکننده`},{icon:`vuesax-linear:element-3`,title:`تنوع بی‌نظیر محصولات`,subtitle:`از کلاسیک تا مدرن`}];function E(){let e=typeof d.currentRoute.value.query.redirect==`string`?d.currentRoute.value.query.redirect:void 0;d.push({name:`login`,query:e?{redirect:e}:void 0})}return(a,u)=>(n(),i(`div`,g,[o(`img`,{class:`welcome-page__bg`,src:t(h),alt:``},null,8,_),u[7]||=o(`div`,{class:`welcome-page__veil`,"aria-hidden":`true`},null,-1),o(`div`,v,[o(`div`,y,[o(`header`,{class:`welcome-top`},[o(`button`,{type:`button`,class:`welcome-skip`,onClick:E},`رد شدن`)]),o(`div`,b,[r(p,{size:88}),u[0]||=o(`h1`,{class:`welcome-brand__fa`},`نادمی تکس`,-1),u[1]||=o(`p`,{class:`welcome-brand__tag`},`انتخاب حرفه‌ای، شروع یک همکاری ماندگار`,-1),u[2]||=o(`span`,{class:`welcome-brand__rule`,"aria-hidden":`true`},null,-1)]),o(`ul`,x,[(n(),i(l,null,c(T,t=>o(`li`,{key:t.title,class:`welcome-feature`},[o(`span`,S,[t.icon===`star`?(n(),i(`svg`,C,[...u[3]||=[o(`path`,{d:`M11.525 2.295a.53.53 0 0 1 .95 0l2.31 4.679a2.123 2.123 0 0 0 1.595 1.16l5.166.756a.53.53 0 0 1 .294.904l-3.736 3.638a2.123 2.123 0 0 0-.611 1.878l.882 5.14a.53.53 0 0 1-.771.56l-4.618-2.428a2.122 2.122 0 0 0-1.973 0L6.396 21.01a.53.53 0 0 1-.77-.56l.881-5.139a2.122 2.122 0 0 0-.611-1.879L2.16 9.795a.53.53 0 0 1 .294-.906l5.165-.755a2.122 2.122 0 0 0 1.597-1.16z`,stroke:`#fff`,"stroke-width":`1.5`,"stroke-linejoin":`round`},null,-1)]])):(n(),e(f,{key:1,icon:t.icon,size:22,color:`#ffffff`},null,8,[`icon`]))]),o(`strong`,null,s(t.title),1),o(`span`,null,s(t.subtitle),1)])),64))]),u[5]||=o(`div`,{class:`welcome-spacer`,"aria-hidden":`true`},null,-1),u[6]||=o(`div`,{class:`welcome-dots`,"aria-hidden":`true`},[o(`i`,{class:`is-on`}),o(`i`),o(`i`),o(`i`)],-1),o(`button`,{type:`button`,class:`welcome-cta`,onClick:E},[u[4]||=o(`span`,null,`ورود / ثبت‌نام`,-1),o(`span`,w,[r(m,{size:18,color:`#ffffff`})])])])])]))}}),[[`__scopeId`,`data-v-66f13882`]]);export{T as default}; \ No newline at end of file +import{F as e,M as t,Pt as n,_ as r,f as i,i as a,l as o,t as s,u as c,ut as l,v as u}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{t as d}from"./BasicIcon-Bzeb0Iwd.js";import{M as f,_ as p,o as m}from"./index-BrjLizie.js";import{t as h}from"./login-fabric-CzrIXTnD.js";var g={class:`page welcome-page`},_=[`src`],v={class:`welcome-page__scroll`},y={class:`welcome-page__stage`},b={class:`welcome-brand`},x={class:`welcome-features`},S={class:`welcome-feature__icon`,"aria-hidden":`true`},C={key:0,class:`welcome-feature__star`,viewBox:`0 0 24 24`,fill:`none`},w={class:`welcome-cta__chevron`,"aria-hidden":`true`},T=s(u({__name:`WelcomeView`,setup(s){let u=f(),T=[{icon:`star`,title:`همراه همیشگی کسب‌وکارتان`,subtitle:`با خدمات ویژه مشتریان`},{icon:`vuesax-linear:truck-time`,title:`سفارش عمده`,subtitle:`مستقیم از تولیدکننده`},{icon:`vuesax-linear:element-3`,title:`تنوع بی‌نظیر محصولات`,subtitle:`از کلاسیک تا مدرن`}];function E(){let e=typeof u.currentRoute.value.query.redirect==`string`?u.currentRoute.value.query.redirect:void 0;u.push({name:`login`,query:e?{redirect:e}:void 0})}return(s,u)=>(t(),i(`div`,g,[o(`img`,{class:`welcome-page__bg`,src:l(h),alt:``},null,8,_),u[7]||=o(`div`,{class:`welcome-page__veil`,"aria-hidden":`true`},null,-1),o(`div`,v,[o(`div`,y,[o(`header`,{class:`welcome-top`},[o(`button`,{type:`button`,class:`welcome-skip`,onClick:E},`رد شدن`)]),o(`div`,b,[r(p,{size:88}),u[0]||=o(`h1`,{class:`welcome-brand__fa`},`نادمی تکس`,-1),u[1]||=o(`p`,{class:`welcome-brand__tag`},`انتخاب حرفه‌ای، شروع یک همکاری ماندگار`,-1),u[2]||=o(`span`,{class:`welcome-brand__rule`,"aria-hidden":`true`},null,-1)]),o(`ul`,x,[(t(),i(a,null,e(T,e=>o(`li`,{key:e.title,class:`welcome-feature`},[o(`span`,S,[e.icon===`star`?(t(),i(`svg`,C,[...u[3]||=[o(`path`,{d:`M11.525 2.295a.53.53 0 0 1 .95 0l2.31 4.679a2.123 2.123 0 0 0 1.595 1.16l5.166.756a.53.53 0 0 1 .294.904l-3.736 3.638a2.123 2.123 0 0 0-.611 1.878l.882 5.14a.53.53 0 0 1-.771.56l-4.618-2.428a2.122 2.122 0 0 0-1.973 0L6.396 21.01a.53.53 0 0 1-.77-.56l.881-5.139a2.122 2.122 0 0 0-.611-1.879L2.16 9.795a.53.53 0 0 1 .294-.906l5.165-.755a2.122 2.122 0 0 0 1.597-1.16z`,stroke:`#fff`,"stroke-width":`1.5`,"stroke-linejoin":`round`},null,-1)]])):(t(),c(d,{key:1,icon:e.icon,size:22,color:`#ffffff`},null,8,[`icon`]))]),o(`strong`,null,n(e.title),1),o(`span`,null,n(e.subtitle),1)])),64))]),u[5]||=o(`div`,{class:`welcome-spacer`,"aria-hidden":`true`},null,-1),u[6]||=o(`div`,{class:`welcome-dots`,"aria-hidden":`true`},[o(`i`,{class:`is-on`}),o(`i`),o(`i`),o(`i`)],-1),o(`button`,{type:`button`,class:`welcome-cta`,onClick:E},[u[4]||=o(`span`,null,`ورود / ثبت‌نام`,-1),o(`span`,w,[r(m,{size:18,color:`#ffffff`})])])])])]))}}),[[`__scopeId`,`data-v-66f13882`]]);export{T as default}; \ No newline at end of file diff --git a/dist/assets/_plugin-vue_export-helper-Bo3WtfwJ.js b/dist/assets/_plugin-vue_export-helper-1xMDlcEE.js similarity index 97% rename from dist/assets/_plugin-vue_export-helper-Bo3WtfwJ.js rename to dist/assets/_plugin-vue_export-helper-1xMDlcEE.js index 431fb8c..f2fd1cb 100644 --- a/dist/assets/_plugin-vue_export-helper-Bo3WtfwJ.js +++ b/dist/assets/_plugin-vue_export-helper-1xMDlcEE.js @@ -1 +1 @@ -function e(e){let t=Object.create(null);for(let n of e.split(`,`))t[n]=1;return e=>e in t}var t={},n=[],r=()=>{},i=()=>!1,a=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),o=e=>e.startsWith(`onUpdate:`),s=Object.assign,c=(e,t)=>{let n=e.indexOf(t);n>-1&&e.splice(n,1)},l=Object.prototype.hasOwnProperty,u=(e,t)=>l.call(e,t),d=Array.isArray,f=e=>x(e)===`[object Map]`,p=e=>x(e)===`[object Set]`,m=e=>x(e)===`[object Date]`,h=e=>typeof e==`function`,g=e=>typeof e==`string`,_=e=>typeof e==`symbol`,v=e=>typeof e==`object`&&!!e,y=e=>(v(e)||h(e))&&h(e.then)&&h(e.catch),b=Object.prototype.toString,x=e=>b.call(e),S=e=>x(e).slice(8,-1),C=e=>x(e)===`[object Object]`,w=e=>g(e)&&e!==`NaN`&&e[0]!==`-`&&``+parseInt(e,10)===e,T=e(`,key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted`),ee=e=>{let t=Object.create(null);return(n=>t[n]||(t[n]=e(n)))},te=/-\w/g,E=ee(e=>e.replace(te,e=>e.slice(1).toUpperCase())),ne=/\B([A-Z])/g,D=ee(e=>e.replace(ne,`-$1`).toLowerCase()),re=ee(e=>e.charAt(0).toUpperCase()+e.slice(1)),ie=ee(e=>e?`on${re(e)}`:``),O=(e,t)=>!Object.is(e,t),ae=(e,...t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:r,value:n})},oe=e=>{let t=parseFloat(e);return isNaN(t)?e:t},se=e=>{let t=g(e)?Number(e):NaN;return isNaN(t)?e:t},ce,le=()=>ce||=typeof globalThis<`u`?globalThis:typeof self<`u`?self:typeof window<`u`?window:typeof global<`u`?global:{};function ue(e){if(d(e)){let t={};for(let n=0;n{if(e){let n=e.split(fe);n.length>1&&(t[n[0].trim()]=n[1].trim())}}),t}function he(e){let t=``;if(g(e))t=e;else if(d(e))for(let n=0;nxe(e,t))}var Ce=e=>!!(e&&e.__v_isRef===!0),we=e=>g(e)?e:e==null?``:d(e)||v(e)&&(e.toString===b||!h(e.toString))?Ce(e)?we(e.value):JSON.stringify(e,Te,2):String(e),Te=(e,t)=>Ce(t)?Te(e,t.value):f(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((e,[t,n],r)=>(e[Ee(t,r)+` =>`]=n,e),{})}:p(t)?{[`Set(${t.size})`]:[...t.values()].map(e=>Ee(e))}:_(t)?Ee(t):v(t)&&!d(t)&&!C(t)?String(t):t,Ee=(e,t=``)=>_(e)?`Symbol(${e.description??t})`:e;function De(e){return e==null?`initial`:typeof e==`string`?e===``?` `:e:String(e)}var A,Oe=class{constructor(e=!1){this.detached=e,this._active=!0,this._on=0,this.effects=[],this.cleanups=[],this._isPaused=!1,this._warnOnRun=!0,this.__v_skip=!0,!e&&A&&(A.active?(this.parent=A,this.index=(A.scopes||(A.scopes=[])).push(this)-1):(this._active=!1,this._warnOnRun=!1))}get active(){return this._active}pause(){if(this._active){this._isPaused=!0;let e,t;if(this.scopes){let n=this.scopes.slice();for(e=0,t=n.length;e0&&--this._on===0){if(A===this)A=this.prevScope;else{let e=A;for(;e;){if(e.prevScope===this){e.prevScope=this.prevScope;break}e=e.prevScope}}this.prevScope=void 0}}stop(e){if(this._active){this._active=!1;let t,n;for(t=0,n=this.effects.length;t0)return;if(Ie){let e=Ie;for(Ie=void 0;e;){let t=e.next;e.next=void 0,e.flags&=-9,e=t}}let e;for(;Fe;){let t=Fe;for(Fe=void 0;t;){let n=t.next;if(t.next=void 0,t.flags&=-9,t.flags&1)try{t.trigger()}catch(t){e||=t}t=n}}if(e)throw e}function Be(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function Ve(e){let t,n=e.depsTail,r=n;for(;r;){let e=r.prevDep;r.version===-1?(r===n&&(n=e),We(r),Ge(r)):t=r,r.dep.activeLink=r.prevActiveLink,r.prevActiveLink=void 0,r=e}e.deps=t,e.depsTail=n}function He(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(Ue(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function Ue(e){if(e.flags&4&&!(e.flags&16)||(e.flags&=-17,e.globalVersion===Xe)||(e.globalVersion=Xe,!e.isSSR&&e.flags&128&&(!e.deps&&!e._dirty||!He(e))))return;e.flags|=2;let t=e.dep,n=j,r=M;j=e,M=!0;try{Be(e);let n=e.fn(e._value);(t.version===0||O(n,e._value))&&(e.flags|=128,e._value=n,t.version++)}catch(e){throw t.version++,e}finally{j=n,M=r,Ve(e),e.flags&=-3}}function We(e,t=!1){let{dep:n,prevSub:r,nextSub:i}=e;if(r&&(r.nextSub=i,e.prevSub=void 0),i&&(i.prevSub=r,e.nextSub=void 0),n.subs===e&&(n.subs=r,!r&&n.computed)){n.computed.flags&=-5;for(let e=n.computed.deps;e;e=e.nextDep)We(e,!0)}!t&&!--n.sc&&n.map&&n.map.delete(n.key)}function Ge(e){let{prevDep:t,nextDep:n}=e;t&&(t.nextDep=n,e.prevDep=void 0),n&&(n.prevDep=t,e.nextDep=void 0)}var M=!0,Ke=[];function qe(){Ke.push(M),M=!1}function Je(){let e=Ke.pop();M=e===void 0||e}function Ye(e){let{cleanup:t}=e;if(e.cleanup=void 0,t){let e=j;j=void 0;try{t()}finally{j=e}}}var Xe=0,Ze=class{constructor(e,t){this.sub=e,this.dep=t,this.version=t.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}},Qe=class{constructor(e){this.computed=e,this.version=0,this.activeLink=void 0,this.subs=void 0,this.map=void 0,this.key=void 0,this.sc=0,this.__v_skip=!0}track(e){if(!j||!M||j===this.computed)return;let t=this.activeLink;if(t===void 0||t.sub!==j)t=this.activeLink=new Ze(j,this),j.deps?(t.prevDep=j.depsTail,j.depsTail.nextDep=t,j.depsTail=t):j.deps=j.depsTail=t,$e(t);else if(t.version===-1&&(t.version=this.version,t.nextDep)){let e=t.nextDep;e.prevDep=t.prevDep,t.prevDep&&(t.prevDep.nextDep=e),t.prevDep=j.depsTail,t.nextDep=void 0,j.depsTail.nextDep=t,j.depsTail=t,j.deps===t&&(j.deps=e)}return t}trigger(e){this.version++,Xe++,this.notify(e)}notify(e){Re();try{for(let e=this.subs;e;e=e.prevSub)e.sub.notify()&&e.sub.dep.notify()}finally{ze()}}};function $e(e){if(e.dep.sc++,e.sub.flags&4){let t=e.dep.computed;if(t&&!e.dep.subs){t.flags|=20;for(let e=t.deps;e;e=e.nextDep)$e(e)}let n=e.dep.subs;n!==e&&(e.prevSub=n,n&&(n.nextSub=e)),e.dep.subs=e}}var et=new WeakMap,tt=Symbol(``),nt=Symbol(``),rt=Symbol(``);function N(e,t,n){if(M&&j){let t=et.get(e);t||et.set(e,t=new Map);let r=t.get(n);r||(t.set(n,r=new Qe),r.map=t,r.key=n),r.track()}}function it(e,t,n,r,i,a){let o=et.get(e);if(!o){Xe++;return}let s=e=>{e&&e.trigger()};if(Re(),t===`clear`)o.forEach(s);else{let i=d(e),a=i&&w(n);if(i&&n===`length`){let e=Number(r);o.forEach((t,n)=>{(n===`length`||n===rt||!_(n)&&n>=e)&&s(t)})}else switch((n!==void 0||o.has(void 0))&&s(o.get(n)),a&&s(o.get(rt)),t){case`add`:i?a&&s(o.get(`length`)):(s(o.get(tt)),f(e)&&s(o.get(nt)));break;case`delete`:i||(s(o.get(tt)),f(e)&&s(o.get(nt)));break;case`set`:f(e)&&s(o.get(tt))}}ze()}function at(e,t){let n=et.get(e);return n&&n.get(t)}function ot(e){let t=I(e);return t===e?t:(N(t,`iterate`,rt),F(e)?t:t.map(L))}function st(e){return N(e=I(e),`iterate`,rt),e}function P(e,t){return Kt(e)?Yt(Gt(e)?L(t):t):L(t)}var ct={__proto__:null,[Symbol.iterator](){return lt(this,Symbol.iterator,e=>P(this,e))},concat(...e){return ot(this).concat(...e.map(e=>d(e)?ot(e):e))},entries(){return lt(this,`entries`,e=>(e[1]=P(this,e[1]),e))},every(e,t){return dt(this,`every`,e,t,void 0,arguments)},filter(e,t){return dt(this,`filter`,e,t,e=>e.map(e=>P(this,e)),arguments)},find(e,t){return dt(this,`find`,e,t,e=>P(this,e),arguments)},findIndex(e,t){return dt(this,`findIndex`,e,t,void 0,arguments)},findLast(e,t){return dt(this,`findLast`,e,t,e=>P(this,e),arguments)},findLastIndex(e,t){return dt(this,`findLastIndex`,e,t,void 0,arguments)},forEach(e,t){return dt(this,`forEach`,e,t,void 0,arguments)},includes(...e){return pt(this,`includes`,e)},indexOf(...e){return pt(this,`indexOf`,e)},join(e){return ot(this).join(e)},lastIndexOf(...e){return pt(this,`lastIndexOf`,e)},map(e,t){return dt(this,`map`,e,t,void 0,arguments)},pop(){return mt(this,`pop`)},push(...e){return mt(this,`push`,e)},reduce(e,...t){return ft(this,`reduce`,e,t)},reduceRight(e,...t){return ft(this,`reduceRight`,e,t)},shift(){return mt(this,`shift`)},some(e,t){return dt(this,`some`,e,t,void 0,arguments)},splice(...e){return mt(this,`splice`,e)},toReversed(){return ot(this).toReversed()},toSorted(e){return ot(this).toSorted(e)},toSpliced(...e){return ot(this).toSpliced(...e)},unshift(...e){return mt(this,`unshift`,e)},values(){return lt(this,`values`,e=>P(this,e))}};function lt(e,t,n){let r=st(e),i=r[t]();return r!==e&&!F(e)&&(i._next=i.next,i.next=()=>{let e=i._next();return e.done||(e.value=n(e.value)),e}),i}var ut=Array.prototype;function dt(e,t,n,r,i,a){let o=st(e),s=o!==e&&!F(e),c=o[t];if(c!==ut[t]){let t=c.apply(e,a);return s?L(t):t}let l=n;o!==e&&(s?l=function(t,r){return n.call(this,P(e,t),r,e)}:n.length>2&&(l=function(t,r){return n.call(this,t,r,e)}));let u=c.call(o,l,r);return s&&i?i(u):u}function ft(e,t,n,r){let i=st(e),a=i!==e&&!F(e),o=n,s=!1;i!==e&&(a?(s=r.length===0,o=function(t,r,i){return s&&(s=!1,t=P(e,t)),n.call(this,t,P(e,r),i,e)}):n.length>3&&(o=function(t,r,i){return n.call(this,t,r,i,e)}));let c=i[t](o,...r);return s?P(e,c):c}function pt(e,t,n){let r=I(e);N(r,`iterate`,rt);let i=r[t](...n);return(i===-1||i===!1)&&qt(n[0])?(n[0]=I(n[0]),r[t](...n)):i}function mt(e,t,n=[]){qe(),Re();let r=I(e)[t].apply(e,n);return ze(),Je(),r}var ht=e(`__proto__,__v_isRef,__isVue`),gt=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!==`arguments`&&e!==`caller`).map(e=>Symbol[e]).filter(_));function _t(e){_(e)||(e=String(e));let t=I(this);return N(t,`has`,e),t.hasOwnProperty(e)}var vt=class{constructor(e=!1,t=!1){this._isReadonly=e,this._isShallow=t}get(e,t,n){if(t===`__v_skip`)return e.__v_skip;let r=this._isReadonly,i=this._isShallow;if(t===`__v_isReactive`)return!r;if(t===`__v_isReadonly`)return r;if(t===`__v_isShallow`)return i;if(t===`__v_raw`)return n===(r?i?Rt:Lt:i?It:Ft).get(e)||Object.getPrototypeOf(e)===Object.getPrototypeOf(n)?e:void 0;let a=d(e);if(!r){let e;if(a&&(e=ct[t]))return e;if(t===`hasOwnProperty`)return _t}let o=Reflect.get(e,t,R(e)?e:n);if((_(t)?gt.has(t):ht(t))||(r||N(e,`get`,t),i))return o;if(R(o)){let e=a&&w(t)?o:o.value;return r&&v(e)?Ht(e):e}return v(o)?r?Ht(o):Bt(o):o}},yt=class extends vt{constructor(e=!1){super(!1,e)}set(e,t,n,r){let i=e[t],a=d(e)&&w(t);if(!this._isShallow){let e=Kt(i);if(!F(n)&&!Kt(n)&&(i=I(i),n=I(n)),!a&&R(i)&&!R(n))return e||(i.value=n),!0}let o=a?Number(t)e,Et=e=>Reflect.getPrototypeOf(e);function Dt(e,t,n){return function(...r){let i=this.__v_raw,a=I(i),o=f(a),c=e===`entries`||e===Symbol.iterator&&o,l=e===`keys`&&o,u=i[e](...r),d=n?Tt:t?Yt:L;return!t&&N(a,`iterate`,l?nt:tt),s(Object.create(u),{next(){let{value:e,done:t}=u.next();return t?{value:e,done:t}:{value:c?[d(e[0]),d(e[1])]:d(e),done:t}}})}}function Ot(e){return function(...t){return e===`delete`?!1:e===`clear`?void 0:this}}function kt(e,t){let n={get(n){let r=this.__v_raw,i=I(r),a=I(n);e||(O(n,a)&&N(i,`get`,n),N(i,`get`,a));let{has:o}=Et(i),s=t?Tt:e?Yt:L;if(o.call(i,n))return s(r.get(n));if(o.call(i,a))return s(r.get(a));r!==i&&r.get(n)},get size(){let t=this.__v_raw;return!e&&N(I(t),`iterate`,tt),t.size},has(t){let n=this.__v_raw,r=I(n),i=I(t);return e||(O(t,i)&&N(r,`has`,t),N(r,`has`,i)),t===i?n.has(t):n.has(t)||n.has(i)},forEach(n,r){let i=this,a=i.__v_raw,o=I(a),s=t?Tt:e?Yt:L;return!e&&N(o,`iterate`,tt),a.forEach((e,t)=>n.call(r,s(e),s(t),i))}};return s(n,e?{add:Ot(`add`),set:Ot(`set`),delete:Ot(`delete`),clear:Ot(`clear`)}:{add(e){let n=I(this),r=Et(n),i=I(e),a=!t&&!F(e)&&!Kt(e)?i:e;return r.has.call(n,a)||O(e,a)&&r.has.call(n,e)||O(i,a)&&r.has.call(n,i)||(n.add(a),it(n,`add`,a,a)),this},set(e,n){!t&&!F(n)&&!Kt(n)&&(n=I(n));let r=I(this),{has:i,get:a}=Et(r),o=i.call(r,e);o||=(e=I(e),i.call(r,e));let s=a.call(r,e);return r.set(e,n),o?O(n,s)&&it(r,`set`,e,n,s):it(r,`add`,e,n),this},delete(e){let t=I(this),{has:n,get:r}=Et(t),i=n.call(t,e);i||=(e=I(e),n.call(t,e));let a=r?r.call(t,e):void 0,o=t.delete(e);return i&&it(t,`delete`,e,void 0,a),o},clear(){let e=I(this),t=e.size!==0,n=e.clear();return t&&it(e,`clear`,void 0,void 0,void 0),n}}),[`keys`,`values`,`entries`,Symbol.iterator].forEach(r=>{n[r]=Dt(r,e,t)}),n}function At(e,t){let n=kt(e,t);return(t,r,i)=>r===`__v_isReactive`?!e:r===`__v_isReadonly`?e:r===`__v_raw`?t:Reflect.get(u(n,r)&&r in t?n:t,r,i)}var jt={get:At(!1,!1)},Mt={get:At(!1,!0)},Nt={get:At(!0,!1)},Pt={get:At(!0,!0)},Ft=new WeakMap,It=new WeakMap,Lt=new WeakMap,Rt=new WeakMap;function zt(e){switch(e){case`Object`:case`Array`:return 1;case`Map`:case`Set`:case`WeakMap`:case`WeakSet`:return 2;default:return 0}}function Bt(e){return Kt(e)?e:Wt(e,!1,xt,jt,Ft)}function Vt(e){return Wt(e,!1,Ct,Mt,It)}function Ht(e){return Wt(e,!0,St,Nt,Lt)}function Ut(e){return Wt(e,!0,wt,Pt,Rt)}function Wt(e,t,n,r,i){if(!v(e)||e.__v_raw&&!(t&&e.__v_isReactive)||e.__v_skip||!Object.isExtensible(e))return e;let a=i.get(e);if(a)return a;let o=zt(S(e));if(o===0)return e;let s=new Proxy(e,o===2?r:n);return i.set(e,s),s}function Gt(e){return Kt(e)?Gt(e.__v_raw):!!(e&&e.__v_isReactive)}function Kt(e){return!!(e&&e.__v_isReadonly)}function F(e){return!!(e&&e.__v_isShallow)}function qt(e){return e?!!e.__v_raw:!1}function I(e){let t=e&&e.__v_raw;return t?I(t):e}function Jt(e){return!u(e,`__v_skip`)&&Object.isExtensible(e)&&k(e,`__v_skip`,!0),e}var L=e=>v(e)?Bt(e):e,Yt=e=>v(e)?Ht(e):e;function R(e){return e?e.__v_isRef===!0:!1}function Xt(e){return Qt(e,!1)}function Zt(e){return Qt(e,!0)}function Qt(e,t){return R(e)?e:new $t(e,t)}var $t=class{constructor(e,t){this.dep=new Qe,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=t?e:I(e),this._value=t?e:L(e),this.__v_isShallow=t}get value(){return this.dep.track(),this._value}set value(e){let t=this._rawValue,n=this.__v_isShallow||F(e)||Kt(e);e=n?e:I(e),O(e,t)&&(this._rawValue=e,this._value=n?e:L(e),this.dep.trigger())}};function en(e){return R(e)?e.value:e}function tn(e){return h(e)?e():en(e)}var nn={get:(e,t,n)=>t===`__v_raw`?e:en(Reflect.get(e,t,n)),set:(e,t,n,r)=>{let i=e[t];return R(i)&&!R(n)?(i.value=n,!0):Reflect.set(e,t,n,r)}};function rn(e){return Gt(e)?e:new Proxy(e,nn)}var an=class{constructor(e){this.__v_isRef=!0,this._value=void 0;let t=this.dep=new Qe,{get:n,set:r}=e(t.track.bind(t),t.trigger.bind(t));this._get=n,this._set=r}get value(){return this._value=this._get()}set value(e){this._set(e)}};function on(e){return new an(e)}function sn(e){let t=d(e)?Array(e.length):{};for(let n in e)t[n]=dn(e,n);return t}var cn=class{constructor(e,t,n){this._object=e,this._defaultValue=n,this.__v_isRef=!0,this._value=void 0,this._key=_(t)?t:String(t),this._raw=I(e);let r=!0,i=e;if(!d(e)||_(this._key)||!w(this._key))do r=!qt(i)||F(i);while(r&&(i=i.__v_raw));this._shallow=r}get value(){let e=this._object[this._key];return this._shallow&&(e=en(e)),this._value=e===void 0?this._defaultValue:e}set value(e){if(this._shallow&&R(this._raw[this._key])){let t=this._object[this._key];if(R(t)){t.value=e;return}}this._object[this._key]=e}get dep(){return at(this._raw,this._key)}},ln=class{constructor(e){this._getter=e,this.__v_isRef=!0,this.__v_isReadonly=!0,this._value=void 0}get value(){return this._value=this._getter()}};function un(e,t,n){return R(e)?e:h(e)?new ln(e):v(e)&&arguments.length>1?dn(e,t,n):Xt(e)}function dn(e,t,n){return new cn(e,t,n)}var fn=class{constructor(e,t,n){this.fn=e,this.setter=t,this._value=void 0,this.dep=new Qe(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=Xe-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!t,this.isSSR=n}notify(){if(this.flags|=16,!(this.flags&8)&&j!==this)return Le(this,!0),!0}get value(){let e=this.dep.track();return Ue(this),e&&(e.version=this.dep.version),this._value}set value(e){this.setter&&this.setter(e)}};function pn(e,t,n=!1){let r,i;return h(e)?r=e:(r=e.get,i=e.set),new fn(r,i,n)}var mn={},hn=new WeakMap,gn=void 0;function _n(e,t=!1,n=gn){if(n){let t=hn.get(n);t||hn.set(n,t=[]),t.push(e)}}function vn(e,n,i=t){let{immediate:a,deep:o,once:s,scheduler:l,augmentJob:u,call:f}=i,p=e=>o?e:F(e)||o===!1||o===0?yn(e,1):yn(e),m,g,_,v,y=!1,b=!1;if(R(e)?(g=()=>e.value,y=F(e)):Gt(e)?(g=()=>p(e),y=!0):d(e)?(b=!0,y=e.some(e=>Gt(e)||F(e)),g=()=>e.map(e=>{if(R(e))return e.value;if(Gt(e))return p(e);if(h(e))return f?f(e,2):e()})):g=h(e)?n?f?()=>f(e,2):e:()=>{if(_){qe();try{_()}finally{Je()}}let t=gn;gn=m;try{return f?f(e,3,[v]):e(v)}finally{gn=t}}:r,n&&o){let e=g,t=o===!0?1/0:o;g=()=>yn(e(),t)}let x=Ae(),S=()=>{m.stop(),x&&x.active&&c(x.effects,m)};if(s&&n){let e=n;n=(...t)=>{let n=e(...t);return S(),n}}let C=b?Array(e.length).fill(mn):mn,w=e=>{if(!(!(m.flags&1)||!m.dirty&&!e))if(n){let t=m.run();if(e||o||y||(b?t.some((e,t)=>O(e,C[t])):O(t,C))){_&&_();let e=gn;gn=m;try{let e=[t,C===mn?void 0:b&&C[0]===mn?[]:C,v];C=t,f?f(n,3,e):n(...e)}finally{gn=e}}}else m.run()};return u&&u(w),m=new Ne(g),m.scheduler=l?()=>l(w,!1):w,v=e=>_n(e,!1,m),_=m.onStop=()=>{let e=hn.get(m);if(e){if(f)f(e,4);else for(let t of e)t();hn.delete(m)}},n?a?w(!0):C=m.run():l?l(w.bind(null,!0),!0):m.run(),S.pause=m.pause.bind(m),S.resume=m.resume.bind(m),S.stop=S,S}function yn(e,t=1/0,n){if(t<=0||!v(e)||e.__v_skip||(n||=new Map,(n.get(e)||0)>=t))return e;if(n.set(e,t),t--,R(e))yn(e.value,t,n);else if(d(e))for(let r=0;r{yn(e,t,n)});else if(C(e)){for(let r in e)yn(e[r],t,n);for(let r of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,r)&&yn(e[r],t,n)}return e}function bn(e,t,n,r){try{return r?e(...r):e()}catch(e){xn(e,t,n)}}function z(e,t,n,r){if(h(e)){let i=bn(e,t,n,r);return i&&y(i)&&i.catch(e=>{xn(e,t,n)}),i}if(d(e)){let i=[];for(let a=0;a>>1,i=B[r],a=Fn(i);a=Fn(n)?B.push(e):B.splice(kn(t),0,e),e.flags|=1,jn()}}function jn(){Dn||=En.then(In)}function Mn(e){d(e)?Cn.push(...e):wn&&e.id===-1?wn.splice(Tn+1,0,e):e.flags&1||(Cn.push(e),e.flags|=1),jn()}function Nn(e,t,n=V+1){for(;nFn(e)-Fn(t));if(Cn.length=0,wn){wn.push(...e);return}for(wn=e,Tn=0;Tne.id==null?e.flags&2?-1:1/0:e.id;function In(e){try{for(V=0;V{r._d&&wa(-1);let i=Rn(t),a=ba.length,o;try{o=e(...n)}finally{for(let e=ba.length;e>a;e--)Sa();Rn(i),r._d&&wa(1)}return o};return r._n=!0,r._c=!0,r._d=!0,r}function Bn(e,n){if(H===null)return e;let r=oo(H),i=e.dirs||=[];for(let e=0;e1)return n&&h(t)?t.call(r&&r.proxy):t}}function Wn(){return!!(Ga()||ki)}var Gn=Symbol.for(`v-scx`),Kn=()=>Un(Gn);function qn(e,t){return Yn(e,null,t)}function Jn(e,t,n){return Yn(e,t,n)}function Yn(e,n,i=t){let{immediate:a,deep:o,flush:c,once:l}=i,u=s({},i),d=n&&a||!n&&c!==`post`,f;if(Za){if(c===`sync`){let e=Kn();f=e.__watcherHandles||=[]}else if(!d){let e=()=>{};return e.stop=r,e.resume=r,e.pause=r,e}}let p=$;u.call=(e,t,n)=>z(e,p,t,n);let m=!1;c===`post`?u.scheduler=e=>{K(e,p&&p.suspense)}:c!==`sync`&&(m=!0,u.scheduler=(e,t)=>{t?e():An(e)}),u.augmentJob=e=>{n&&(e.flags|=4),m&&(e.flags|=2,p&&(e.id=p.uid,e.i=p))};let h=vn(e,n,u);return Za&&(f?f.push(h):d&&h()),h}function Xn(e,t,n){let r=this.proxy,i=g(e)?e.includes(`.`)?Zn(r,e):()=>r[e]:e.bind(r,r),a;h(t)?a=t:(a=t.handler,n=t);let o=Ja(this),s=Yn(i,a.bind(r),n);return o(),s}function Zn(e,t){let n=t.split(`.`);return()=>{let t=e;for(let e=0;ee.__isTeleport,tr=e=>e&&(e.disabled||e.disabled===``),nr=e=>e&&(e.defer||e.defer===``),rr=e=>typeof SVGElement<`u`&&e instanceof SVGElement,ir=e=>typeof MathMLElement==`function`&&e instanceof MathMLElement,ar=(e,t)=>{let n=e&&e.to;return g(n)?t?t(n):null:n},or={name:`Teleport`,__isTeleport:!0,process(e,t,n,r,i,a,o,s,c,l){let{mc:u,pc:d,pbc:f,o:{insert:p,querySelector:m,createText:h,createComment:g,parentNode:_}}=l,v=tr(t.props),{dynamicChildren:y}=t,b=(e,t,n)=>{e.shapeFlag&16&&u(e.children,t,n,i,a,o,s,c)},x=(e=t)=>{let n=tr(e.props),r=e.target=ar(e.props,m),a=dr(r,e,h,p);r&&(o!==`svg`&&rr(r)?o=`svg`:o!==`mathml`&&ir(r)&&(o=`mathml`),i&&i.isCE&&(i.ce._teleportTargets||(i.ce._teleportTargets=new Set)).add(r),n||(b(e,r,a),ur(e,!1)))},S=e=>{let t=()=>{if(Qn.get(e)===t){if(Qn.delete(e),tr(e.props)){let t=_(e.el)||n;b(e,t,e.anchor),ur(e,!0)}x(e)}};Qn.set(e,t),K(t,a)};if(e==null){let e=t.el=h(``),i=t.anchor=h(``);if(p(e,n,r),p(i,n,r),nr(t.props)||a&&a.pendingBranch){S(t);return}v&&(b(t,n,i),ur(t,!0)),x()}else{t.el=e.el;let r=t.anchor=e.anchor,u=Qn.get(e);if(u){u.flags|=8,Qn.delete(e),S(t);return}t.targetStart=e.targetStart;let p=t.target=e.target,h=t.targetAnchor=e.targetAnchor,g=tr(e.props),_=g?n:p,b=g?r:h;if(o===`svg`||rr(p)?o=`svg`:(o===`mathml`||ir(p))&&(o=`mathml`),y?(f(e.dynamicChildren,y,_,i,a,o,s),da(e,t,!0)):c||d(e,t,_,b,i,a,o,s,!1),v)g?t.props&&e.props&&t.props.to!==e.props.to&&(t.props.to=e.props.to):sr(t,n,r,l,1);else if((t.props&&t.props.to)!==(e.props&&e.props.to)){let e=ar(t.props,m);e&&(t.target=e,sr(t,e,null,l,0))}else g&&sr(t,p,h,l,1);ur(t,v)}},remove(e,t,n,{um:r,o:{remove:i}},a){let{shapeFlag:o,children:s,anchor:c,targetStart:l,targetAnchor:u,target:d,props:f}=e,p=tr(f),m=a||!p,h=Qn.get(e);if(h&&(h.flags|=8,Qn.delete(e)),d&&(i(l),i(u)),a&&i(c),!h&&(p||d)&&o&16)for(let e=0;e{e.isMounted=!0}),Ur(()=>{e.isUnmounting=!0}),e}var W=[Function,Array],mr={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:W,onEnter:W,onAfterEnter:W,onEnterCancelled:W,onBeforeLeave:W,onLeave:W,onAfterLeave:W,onLeaveCancelled:W,onBeforeAppear:W,onAppear:W,onAfterAppear:W,onAppearCancelled:W},hr=e=>{let t=e.subTree;return t.component?hr(t.component):t},gr={name:`BaseTransition`,props:mr,setup(e,{slots:t}){let n=Ga(),r=pr();return()=>{let i=t.default&&wr(t.default(),!0),a=i&&i.length?_r(i):n.subTree?Ra():void 0;if(!a)return;let o=I(e),{mode:s}=o;if(r.isLeaving)return xr(a);let c=Sr(a);if(!c)return xr(a);let l=br(c,o,r,n,e=>l=e);c.type!==J&&Cr(c,l);let u=n.subTree&&Sr(n.subTree);if(u&&u.type!==J&&!ka(u,c)&&hr(n).type!==J){let e=br(u,o,r,n);if(Cr(u,e),s===`out-in`&&c.type!==J)return r.isLeaving=!0,e.afterLeave=()=>{r.isLeaving=!1,n.job.flags&8||n.update(),delete e.afterLeave,u=void 0},xr(a);s===`in-out`&&c.type!==J?e.delayLeave=(e,t,n)=>{let i=yr(r,u);i[String(u.key)]=u,e[U]=()=>{t(),e[U]=void 0,delete l.delayedLeave,u=void 0},l.delayedLeave=()=>{n(),delete l.delayedLeave,u=void 0}}:u=void 0}else u&&=void 0;return a}}};function _r(e){let t=e[0];if(e.length>1){for(let n of e)if(n.type!==J){t=n;break}}return t}var vr=gr;function yr(e,t){let{leavingVNodes:n}=e,r=n.get(t.type);return r||(r=Object.create(null),n.set(t.type,r)),r}function br(e,t,n,r,i){let{appear:a,mode:o,persisted:s=!1,onBeforeEnter:c,onEnter:l,onAfterEnter:u,onEnterCancelled:f,onBeforeLeave:p,onLeave:m,onAfterLeave:h,onLeaveCancelled:g,onBeforeAppear:_,onAppear:v,onAfterAppear:y,onAppearCancelled:b}=t,x=String(e.key),S=yr(n,e),C=(e,t)=>{e&&z(e,r,9,t)},w=(e,t)=>{let n=t[1];C(e,t),d(e)?e.every(e=>e.length<=1)&&n():e.length<=1&&n()},T={mode:o,persisted:s,beforeEnter(t){let r=c;if(!n.isMounted)if(a)r=_||c;else return;t[U]&&t[U](!0);let i=S[x];i&&ka(e,i)&&i.el[U]&&i.el[U](),C(r,[t])},enter(t){if(S[x]===e)return;let r=l,i=u,o=f;if(!n.isMounted)if(a)r=v||l,i=y||u,o=b||f;else return;let s=!1;t[fr]=e=>{s||(s=!0,C(e?o:i,[t]),T.delayedLeave&&T.delayedLeave(),t[fr]=void 0)};let c=t[fr].bind(null,!1);r?w(r,[t,c]):c()},leave(t,r){let i=String(e.key);if(t[fr]&&t[fr](!0),n.isUnmounting)return r();C(p,[t]);let a=!1;t[U]=n=>{a||(a=!0,r(),C(n?g:h,[t]),t[U]=void 0,S[i]===e&&delete S[i])};let o=t[U].bind(null,!1);S[i]=e,m?w(m,[t,o]):o()},clone(e){let a=br(e,t,n,r,i);return i&&i(a),a}};return T}function xr(e){if(Mr(e))return e=Fa(e),e.children=null,e}function Sr(e){if(!Mr(e))return er(e.type)&&e.children?_r(e.children):e;if(e.component)return e.component.subTree;let{shapeFlag:t,children:n}=e;if(n){if(t&16)return n[0];if(t&32&&h(n.default))return n.default()}}function Cr(e,t){e.shapeFlag&6&&e.component?(e.transition=t,Cr(e.component.subTree,t)):e.shapeFlag&128?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function wr(e,t=!1,n){let r=[],i=0;for(let a=0;a1)for(let e=0;ekr(e,n&&(d(n)?n[t]:n),r,a,o));return}if(jr(a)&&!o){a.shapeFlag&512&&a.type.__asyncResolved&&a.component.subTree.component&&kr(e,n,r,a.component.subTree);return}let s=a.shapeFlag&4?oo(a.component):a.el,l=o?null:s,{i:f,r:p}=e,m=n&&n.r,_=f.refs===t?f.refs={}:f.refs,v=f.setupState,y=I(v),b=v===t?i:e=>!Dr(_,e)&&u(y,e),x=(e,t)=>!(t&&Dr(_,t));if(m!=null&&m!==p){if(Ar(n),g(m))_[m]=null,b(m)&&(v[m]=null);else if(R(m)){let e=n;x(m,e.k)&&(m.value=null),e.k&&(_[e.k]=null)}}if(h(p))bn(p,f,12,[l,_]);else{let t=g(p),n=R(p);if(t||n){let i=()=>{if(e.f){let n=t?b(p)?v[p]:_[p]:x(p)||!e.k?p.value:_[e.k];if(o)d(n)&&c(n,s);else if(d(n))n.includes(s)||n.push(s);else if(t)_[p]=[s],b(p)&&(v[p]=_[p]);else{let t=[s];x(p,e.k)&&(p.value=t),e.k&&(_[e.k]=t)}}else t?(_[p]=l,b(p)&&(v[p]=l)):n&&(x(p,e.k)&&(p.value=l),e.k&&(_[e.k]=l))};if(l){let t=()=>{i(),Or.delete(e)};t.id=-1,Or.set(e,t),K(t,r)}else Ar(e),i()}}}function Ar(e){let t=Or.get(e);t&&(t.flags|=8,Or.delete(e))}le().requestIdleCallback,le().cancelIdleCallback;var jr=e=>!!e.type.__asyncLoader,Mr=e=>e.type.__isKeepAlive;function Nr(e,t){Fr(e,`a`,t)}function Pr(e,t){Fr(e,`da`,t)}function Fr(e,t,n=$){let r=e.__wdc||=()=>{let t=n;for(;t;){if(t.isDeactivated)return;t=t.parent}return e()};if(Lr(t,r,n),n){let e=n.parent;for(;e&&e.parent;)Mr(e.parent.vnode)&&Ir(r,t,n,e),e=e.parent}}function Ir(e,t,n,r){let i=Lr(t,e,r,!0);Wr(()=>{c(r[t],i)},n)}function Lr(e,t,n=$,r=!1){if(n){let i=n[e]||(n[e]=[]),a=t.__weh||=(...r)=>{qe();let i=Ja(n),a=z(t,n,e,r);return i(),Je(),a};return r?i.unshift(a):i.push(a),a}}var Rr=e=>(t,n=$)=>{(!Za||e===`sp`)&&Lr(e,(...e)=>t(...e),n)},zr=Rr(`bm`),Br=Rr(`m`),Vr=Rr(`bu`),Hr=Rr(`u`),Ur=Rr(`bum`),Wr=Rr(`um`),Gr=Rr(`sp`),Kr=Rr(`rtg`),qr=Rr(`rtc`);function Jr(e,t=$){Lr(`ec`,e,t)}var Yr=`components`;function Xr(e,t){return $r(Yr,e,!0,t)||e}var Zr=Symbol.for(`v-ndc`);function Qr(e){return g(e)?$r(Yr,e,!1)||e:e||Zr}function $r(e,t,n=!0,r=!1){let i=H||$;if(i){let n=i.type;if(e===Yr){let e=so(n,!1);if(e&&(e===t||e===E(t)||e===re(E(t))))return n}let a=ei(i[e]||n[e],t)||ei(i.appContext[e],t);return!a&&r?n:a}}function ei(e,t){return e&&(e[t]||e[E(t)]||e[re(E(t))])}function ti(e,t,n,r){let i,a=n&&n[r],o=d(e);if(o||g(e)){let n=o&&Gt(e),r=!1,s=!1;n&&(r=!F(e),s=Kt(e),e=st(e)),i=Array(e.length);for(let n=0,o=e.length;nt(e,n,void 0,a&&a[n]));else{let n=Object.keys(e);i=Array(n.length);for(let r=0,o=n.length;r{let t=r.fn(...e);return t&&(t.key=r.key),t}:r.fn)}return e}function ri(e,t,n={},r,i,a){if(H.ce||H.parent&&jr(H.parent)&&H.parent.ce){let e=a!=null&&n.key==null?s({},n,{key:a}):n,i=Object.keys(e).length>0;return t!=="default"&&(e.name=t),xa(),Da(q,null,[X(`slot`,e,r&&r())],i?-2:64)}let o=e[t];o&&o._c&&(o._d=!1);let c=ba.length;xa();let l;try{let i=o&&ii(o(n)),s=n.key||a||i&&i.key;l=Da(q,{key:(s&&!_(s)?s:`_${t}`)+(!i&&r?`_fb`:``)},i||(r?r():[]),i&&e._===1?64:-2)}catch(e){for(let e=ba.length;e>c;e--)Sa();throw e}finally{o&&o._c&&(o._d=!0)}return!i&&l.scopeId&&(l.slotScopeIds=[l.scopeId+`-s`]),l}function ii(e){return e.some(e=>!Oa(e)||!(e.type===J||e.type===q&&!ii(e.children)))?e:null}var ai=e=>e?Xa(e)?oo(e):ai(e.parent):null,oi=s(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>e.props,$attrs:e=>e.attrs,$slots:e=>e.slots,$refs:e=>e.refs,$parent:e=>ai(e.parent),$root:e=>ai(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>_i(e),$forceUpdate:e=>e.f||=()=>{An(e.update)},$nextTick:e=>e.n||=On.bind(e.proxy),$watch:e=>Xn.bind(e)}),si=(e,n)=>e!==t&&!e.__isScriptSetup&&u(e,n),ci={get({_:e},n){if(n===`__v_skip`)return!0;let{ctx:r,setupState:i,data:a,props:o,accessCache:s,type:c,appContext:l}=e;if(n[0]!==`$`){let e=s[n];if(e!==void 0)switch(e){case 1:return i[n];case 2:return a[n];case 4:return r[n];case 3:return o[n]}else if(si(i,n))return s[n]=1,i[n];else if(a!==t&&u(a,n))return s[n]=2,a[n];else if(u(o,n))return s[n]=3,o[n];else if(r!==t&&u(r,n))return s[n]=4,r[n];else fi&&(s[n]=0)}let d=oi[n],f,p;if(d)return n===`$attrs`&&N(e.attrs,`get`,``),d(e);if((f=c.__cssModules)&&(f=f[n]))return f;if(r!==t&&u(r,n))return s[n]=4,r[n];if(p=l.config.globalProperties,u(p,n))return p[n]},set({_:e},n,r){let{data:i,setupState:a,ctx:o}=e;return si(a,n)?(a[n]=r,!0):i!==t&&u(i,n)?(i[n]=r,!0):u(e.props,n)||n[0]===`$`&&n.slice(1)in e?!1:(o[n]=r,!0)},has({_:{data:e,setupState:n,accessCache:r,ctx:i,appContext:a,props:o,type:s}},c){let l;return!!(r[c]||e!==t&&c[0]!==`$`&&u(e,c)||si(n,c)||u(o,c)||u(i,c)||u(oi,c)||u(a.config.globalProperties,c)||(l=s.__cssModules)&&l[c])},defineProperty(e,t,n){return n.get==null?u(n,`value`)&&this.set(e,t,n.value,null):e._.accessCache[t]=0,Reflect.defineProperty(e,t,n)}};function li(){return ui(`useAttrs`).attrs}function ui(e){let t=Ga();return t.setupContext||=ao(t)}function di(e){return d(e)?e.reduce((e,t)=>(e[t]=null,e),{}):e}var fi=!0;function pi(e){let t=_i(e),n=e.proxy,i=e.ctx;fi=!1,t.beforeCreate&&hi(t.beforeCreate,e,`bc`);let{data:a,computed:o,methods:s,watch:c,provide:l,inject:u,created:f,beforeMount:p,mounted:m,beforeUpdate:g,updated:_,activated:y,deactivated:b,beforeDestroy:x,beforeUnmount:S,destroyed:C,unmounted:w,render:T,renderTracked:ee,renderTriggered:te,errorCaptured:E,serverPrefetch:ne,expose:D,inheritAttrs:re,components:ie,directives:O,filters:ae}=t;if(u&&mi(u,i,null),s)for(let e in s){let t=s[e];h(t)&&(i[e]=t.bind(n))}if(a){let t=a.call(n,n);v(t)&&(e.data=Bt(t))}if(fi=!0,o)for(let e in o){let t=o[e],a=lo({get:h(t)?t.bind(n,n):h(t.get)?t.get.bind(n,n):r,set:!h(t)&&h(t.set)?t.set.bind(n):r});Object.defineProperty(i,e,{enumerable:!0,configurable:!0,get:()=>a.value,set:e=>a.value=e})}if(c)for(let e in c)gi(c[e],i,n,e);if(l){let e=h(l)?l.call(n):l;Reflect.ownKeys(e).forEach(t=>{Hn(t,e[t])})}f&&hi(f,e,`c`);function k(e,t){d(t)?t.forEach(t=>e(t.bind(n))):t&&e(t.bind(n))}if(k(zr,p),k(Br,m),k(Vr,g),k(Hr,_),k(Nr,y),k(Pr,b),k(Jr,E),k(qr,ee),k(Kr,te),k(Ur,S),k(Wr,w),k(Gr,ne),d(D))if(D.length){let t=e.exposed||={};D.forEach(e=>{Object.defineProperty(t,e,{get:()=>n[e],set:t=>n[e]=t,enumerable:!0})})}else e.exposed||={};T&&e.render===r&&(e.render=T),re!=null&&(e.inheritAttrs=re),ie&&(e.components=ie),O&&(e.directives=O),ne&&Er(e)}function mi(e,t,n=r){d(e)&&(e=Si(e));for(let n in e){let r=e[n],i;i=v(r)?`default`in r?Un(r.from||n,r.default,!0):Un(r.from||n):Un(r),R(i)?Object.defineProperty(t,n,{enumerable:!0,configurable:!0,get:()=>i.value,set:e=>i.value=e}):t[n]=i}}function hi(e,t,n){z(d(e)?e.map(e=>e.bind(t.proxy)):e.bind(t.proxy),t,n)}function gi(e,t,n,r){let i=r.includes(`.`)?Zn(n,r):()=>n[r];if(g(e)){let n=t[e];h(n)&&Jn(i,n)}else if(h(e))Jn(i,e.bind(n));else if(v(e))if(d(e))e.forEach(e=>gi(e,t,n,r));else{let r=h(e.handler)?e.handler.bind(n):t[e.handler];h(r)&&Jn(i,r,e)}}function _i(e){let t=e.type,{mixins:n,extends:r}=t,{mixins:i,optionsCache:a,config:{optionMergeStrategies:o}}=e.appContext,s=a.get(t),c;return s?c=s:!i.length&&!n&&!r?c=t:(c={},i.length&&i.forEach(e=>vi(c,e,o,!0)),vi(c,t,o)),v(t)&&a.set(t,c),c}function vi(e,t,n,r=!1){let{mixins:i,extends:a}=t;a&&vi(e,a,n,!0),i&&i.forEach(t=>vi(e,t,n,!0));for(let i in t)if(!(r&&i===`expose`)){let r=yi[i]||n&&n[i];e[i]=r?r(e[i],t[i]):t[i]}return e}var yi={data:bi,props:wi,emits:wi,methods:Ci,computed:Ci,beforeCreate:G,created:G,beforeMount:G,mounted:G,beforeUpdate:G,updated:G,beforeDestroy:G,beforeUnmount:G,destroyed:G,unmounted:G,activated:G,deactivated:G,errorCaptured:G,serverPrefetch:G,components:Ci,directives:Ci,watch:Ti,provide:bi,inject:xi};function bi(e,t){return t?e?function(){return s(h(e)?e.call(this,this):e,h(t)?t.call(this,this):t)}:t:e}function xi(e,t){return Ci(Si(e),Si(t))}function Si(e){if(d(e)){let t={};for(let n=0;nt===`modelValue`||t===`model-value`?e.modelModifiers:e[`${t}Modifiers`]||e[`${E(t)}Modifiers`]||e[`${D(t)}Modifiers`];function ji(e,n,...r){if(e.isUnmounted)return;let i=e.vnode.props||t,a=r,o=n.startsWith(`update:`),s=o&&Ai(i,n.slice(7));s&&(s.trim&&(a=r.map(e=>g(e)?e.trim():e)),s.number&&(a=r.map(oe)));let c,l=i[c=ie(n)]||i[c=ie(E(n))];!l&&o&&(l=i[c=ie(D(n))]),l&&z(l,e,6,a);let u=i[c+`Once`];if(u){if(!e.emitted)e.emitted={};else if(e.emitted[c])return;e.emitted[c]=!0,z(u,e,6,a)}}var Mi=new WeakMap;function Ni(e,t,n=!1){let r=n?Mi:t.emitsCache,i=r.get(e);if(i!==void 0)return i;let a=e.emits,o={},c=!1;if(!h(e)){let r=e=>{let n=Ni(e,t,!0);n&&(c=!0,s(o,n))};!n&&t.mixins.length&&t.mixins.forEach(r),e.extends&&r(e.extends),e.mixins&&e.mixins.forEach(r)}return!a&&!c?(v(e)&&r.set(e,null),null):(d(a)?a.forEach(e=>o[e]=null):s(o,a),v(e)&&r.set(e,o),o)}function Pi(e,t){return!e||!a(t)?!1:(t=t.slice(2),t=t===`Once`?t:t.replace(/Once$/,``),u(e,t[0].toLowerCase()+t.slice(1))||u(e,D(t))||u(e,t))}function Fi(e){let{type:t,vnode:n,proxy:r,withProxy:i,propsOptions:[a],slots:s,attrs:c,emit:l,render:u,renderCache:d,props:f,data:p,setupState:m,ctx:h,inheritAttrs:g}=e,_=Rn(e),v,y;try{if(n.shapeFlag&4){let e=i||r,t=e;v=Z(u.call(t,e,d,f,m,p,h)),y=c}else{let e=t;v=Z(e.length>1?e(f,{attrs:c,slots:s,emit:l}):e(f,null)),y=t.props?c:Ii(c)}}catch(t){ba.length=0,xn(t,e,1),v=X(J)}let b=v;if(y&&g!==!1){let e=Object.keys(y),{shapeFlag:t}=b;e.length&&t&7&&(a&&e.some(o)&&(y=Li(y,a)),b=Fa(b,y,!1,!0))}return n.dirs&&(b=Fa(b,null,!1,!0),b.dirs=b.dirs?b.dirs.concat(n.dirs):n.dirs),n.transition&&Cr(b,n.transition),v=b,Rn(_),v}var Ii=e=>{let t;for(let n in e)(n===`class`||n===`style`||a(n))&&((t||={})[n]=e[n]);return t},Li=(e,t)=>{let n={};for(let r in e)(!o(r)||!(r.slice(9)in t))&&(n[r]=e[r]);return n};function Ri(e,t,n){let{props:r,children:i,component:a}=e,{props:o,children:s,patchFlag:c}=t,l=a.emitsOptions;if(t.dirs||t.transition)return!0;if(n&&c>=0){if(c&1024)return!0;if(c&16)return r?zi(r,o,l):!!o;if(c&8){let e=t.dynamicProps;for(let t=0;tObject.create(Hi),Wi=e=>Object.getPrototypeOf(e)===Hi;function Gi(e,t,n,r=!1){let i={},a=Ui();e.propsDefaults=Object.create(null),qi(e,t,i,a);for(let t in e.propsOptions[0])t in i||(i[t]=void 0);e.props=n?r?i:Vt(i):e.type.props?i:a,e.attrs=a}function Ki(e,t,n,r){let{props:i,attrs:a,vnode:{patchFlag:o}}=e,s=I(i),[c]=e.propsOptions,l=!1;if((r||o>0)&&!(o&16)){if(o&8){let n=e.vnode.dynamicProps;for(let r=0;r{p=!0;let[t,n]=Xi(e,r,!0);s(l,t),n&&f.push(...n)};!i&&r.mixins.length&&r.mixins.forEach(t),e.extends&&t(e.extends),e.mixins&&e.mixins.forEach(t)}if(!c&&!p)return v(e)&&a.set(e,n),n;if(d(c))for(let e=0;ee===`_`||e===`_ctx`||e===`$stable`,$i=e=>d(e)?e.map(Z):[Z(e)],ea=(e,t,n)=>{if(t._n)return t;let r=zn((...e)=>$i(t(...e)),n);return r._c=!1,r},ta=(e,t,n)=>{let r=e._ctx;for(let n in e){if(Qi(n))continue;let i=e[n];if(h(i))t[n]=ea(n,i,r);else if(i!=null){let e=$i(i);t[n]=()=>e}}},na=(e,t)=>{let n=$i(t);e.slots.default=()=>n},ra=(e,t,n)=>{for(let r in t)(n||!Qi(r))&&(e[r]=t[r])},ia=(e,t,n)=>{let r=e.slots=Ui();if(e.vnode.shapeFlag&32){let e=t._;e?(ra(r,t,n),n&&k(r,`_`,e,!0)):ta(t,r)}else t&&na(e,t)},aa=(e,n,r)=>{let{vnode:i,slots:a}=e,o=!0,s=t;if(i.shapeFlag&32){let e=n._;e?r&&e===1?o=!1:ra(a,n,r):(o=!n.$stable,ta(n,a)),s=n}else n&&(na(e,n),s={default:1});if(o)for(let e in a)!Qi(e)&&s[e]==null&&delete a[e]},K=_a;function oa(e){return sa(e)}function sa(e,i){let a=le();a.__VUE__=!0;let{insert:o,remove:s,patchProp:c,createElement:l,createText:u,createComment:d,setText:f,setElementText:p,parentNode:m,nextSibling:h,setScopeId:g=r,insertStaticContent:_}=e,v=(e,t,n,r=null,i=null,a=null,o=void 0,s=null,c=!!t.dynamicChildren)=>{if(e===t)return;e&&!ka(e,t)&&(r=ye(e),me(e,i,a,!0),e=null),t.patchFlag===-2&&(c=!1,t.dynamicChildren=null);let{type:l,ref:u,shapeFlag:d}=t;switch(l){case va:y(e,t,n,r);break;case J:b(e,t,n,r);break;case ya:e??x(t,n,r,o);break;case q:ie(e,t,n,r,i,a,o,s,c);break;default:d&1?w(e,t,n,r,i,a,o,s,c):d&6?O(e,t,n,r,i,a,o,s,c):(d&64||d&128)&&l.process(e,t,n,r,i,a,o,s,c,Se)}u!=null&&i?kr(u,e&&e.ref,a,t||e,!t):u==null&&e&&e.ref!=null&&kr(e.ref,null,a,e,!0)},y=(e,t,n,r)=>{if(e==null)o(t.el=u(t.children),n,r);else{let n=t.el=e.el;t.children!==e.children&&f(n,t.children)}},b=(e,t,n,r)=>{e==null?o(t.el=d(t.children||``),n,r):t.el=e.el},x=(e,t,n,r)=>{[e.el,e.anchor]=_(e.children,t,n,r,e.el,e.anchor)},S=({el:e,anchor:t},n,r)=>{let i;for(;e&&e!==t;)i=h(e),o(e,n,r),e=i;o(t,n,r)},C=({el:e,anchor:t})=>{let n;for(;e&&e!==t;)n=h(e),s(e),e=n;s(t)},w=(e,t,n,r,i,a,o,s,c)=>{if(t.type===`svg`?o=`svg`:t.type===`math`&&(o=`mathml`),e==null)ee(t,n,r,i,a,o,s,c);else{let n=e.el&&e.el._isVueCE?e.el:null;try{n&&n._beginPatch(),ne(e,t,i,a,o,s,c)}finally{n&&n._endPatch()}}},ee=(e,t,n,r,i,a,s,u)=>{let d,f,{props:m,shapeFlag:h,transition:g,dirs:_}=e;if(d=e.el=l(e.type,a,m&&m.is,m),h&8?p(d,e.children):h&16&&E(e.children,d,null,r,i,ca(e,a),s,u),_&&Vn(e,null,r,`created`),te(d,e,e.scopeId,s,r),m){for(let e in m)e!==`value`&&!T(e)&&c(d,e,null,m[e],a,r);`value`in m&&c(d,`value`,null,m.value,a),(f=m.onVnodeBeforeMount)&&Q(f,r,e)}_&&Vn(e,null,r,`beforeMount`);let v=ua(i,g);v&&g.beforeEnter(d),o(d,t,n),((f=m&&m.onVnodeMounted)||v||_)&&K(()=>{try{f&&Q(f,r,e),v&&g.enter(d),_&&Vn(e,null,r,`mounted`)}finally{}},i)},te=(e,t,n,r,i)=>{if(n&&g(e,n),r)for(let t=0;t{for(let l=c;l{let l=n.el=e.el,{patchFlag:u,dynamicChildren:d,dirs:f}=n;u|=e.patchFlag&16;let m=e.props||t,h=n.props||t,g;if(r&&la(r,!1),(g=h.onVnodeBeforeUpdate)&&Q(g,r,n,e),f&&Vn(n,e,r,`beforeUpdate`),r&&la(r,!0),d&&(!e.dynamicChildren||e.dynamicChildren.length!==d.length)&&(u=0,s=!1,d=null),(m.innerHTML&&h.innerHTML==null||m.textContent&&h.textContent==null)&&p(l,``),d?D(e.dynamicChildren,d,l,r,i,ca(n,a),o):s||ue(e,n,l,null,r,i,ca(n,a),o,!1),u>0){if(u&16)re(l,m,h,r,a);else if(u&2&&m.class!==h.class&&c(l,`class`,null,h.class,a),u&4&&c(l,`style`,m.style,h.style,a),u&8){let e=n.dynamicProps;for(let t=0;t{g&&Q(g,r,n,e),f&&Vn(n,e,r,`updated`)},i)},D=(e,t,n,r,i,a,o)=>{for(let s=0;s{if(n!==r){if(n!==t)for(let t in n)!T(t)&&!(t in r)&&c(e,t,n[t],null,a,i);for(let t in r){if(T(t))continue;let o=r[t],s=n[t];o!==s&&t!==`value`&&c(e,t,s,o,a,i)}`value`in r&&c(e,`value`,n.value,r.value,a)}},ie=(e,t,n,r,i,a,s,c,l)=>{let d=t.el=e?e.el:u(``),f=t.anchor=e?e.anchor:u(``),{patchFlag:p,dynamicChildren:m,slotScopeIds:h}=t;h&&(c=c?c.concat(h):h),e==null?(o(d,n,r),o(f,n,r),E(t.children||[],n,f,i,a,s,c,l)):p>0&&p&64&&m&&e.dynamicChildren&&e.dynamicChildren.length===m.length?(D(e.dynamicChildren,m,n,i,a,s,c),(t.key!=null||i&&t===i.subTree)&&da(e,t,!0)):ue(e,t,n,f,i,a,s,c,l)},O=(e,t,n,r,i,a,o,s,c)=>{t.slotScopeIds=s,e==null?t.shapeFlag&512?i.ctx.activate(t,n,r,o,c):k(t,n,r,i,a,o,c):oe(e,t,c)},k=(e,t,n,r,i,a,o)=>{let s=e.component=Wa(e,r,i);if(Mr(e)&&(s.ctx.renderer=Se),Qa(s,!1,o),s.asyncDep){if(i&&i.registerDep(s,se,o),!e.el){let r=s.subTree=X(J);b(null,r,t,n),e.placeholder=r.el}}else se(s,e,t,n,i,a,o)},oe=(e,t,n)=>{let r=t.component=e.component;if(Ri(e,t,n))if(r.asyncDep&&!r.asyncResolved){ce(r,t,n);return}else r.next=t,r.update();else t.el=e.el,r.vnode=t},se=(e,t,n,r,i,a,o)=>{let s=()=>{if(e.isMounted){let{next:t,bu:n,u:r,parent:s,vnode:c}=e;{let n=pa(e);if(n){t&&(t.el=c.el,ce(e,t,o)),n.asyncDep.then(()=>{K(()=>{e.isUnmounted||l()},i)});return}}let u=t,d;la(e,!1),t?(t.el=c.el,ce(e,t,o)):t=c,n&&ae(n),(d=t.props&&t.props.onVnodeBeforeUpdate)&&Q(d,s,t,c),la(e,!0);let f=Fi(e),p=e.subTree;e.subTree=f,v(p,f,m(p.el),ye(p),e,i,a),t.el=f.el,u===null&&Vi(e,f.el),r&&K(r,i),(d=t.props&&t.props.onVnodeUpdated)&&K(()=>Q(d,s,t,c),i)}else{let o,{el:s,props:c}=t,{bm:l,m:u,parent:d,root:f,type:p}=e,m=jr(t);if(la(e,!1),l&&ae(l),!m&&(o=c&&c.onVnodeBeforeMount)&&Q(o,d,t),la(e,!0),s&&we){let t=()=>{e.subTree=Fi(e),we(s,e.subTree,e,i,null)};m&&p.__asyncHydrate?p.__asyncHydrate(s,e,t):t()}else{f.ce&&f.ce._hasShadowRoot()&&f.ce._injectChildStyle(p,e.parent?e.parent.type:void 0);let o=e.subTree=Fi(e);v(null,o,n,r,e,i,a),t.el=o.el}if(u&&K(u,i),!m&&(o=c&&c.onVnodeMounted)){let e=t;K(()=>Q(o,d,e),i)}(t.shapeFlag&256||d&&jr(d.vnode)&&d.vnode.shapeFlag&256)&&e.a&&K(e.a,i),e.isMounted=!0,t=n=r=null}};e.scope.on();let c=e.effect=new Ne(s);e.scope.off();let l=e.update=c.run.bind(c),u=e.job=c.runIfDirty.bind(c);u.i=e,u.id=e.uid,c.scheduler=()=>An(u),la(e,!0),l()},ce=(e,t,n)=>{t.component=e;let r=e.vnode.props;e.vnode=t,e.next=null,Ki(e,t.props,r,n),aa(e,t.children,n),qe(),Nn(e),Je()},ue=(e,t,n,r,i,a,o,s,c=!1)=>{let l=e&&e.children,u=e?e.shapeFlag:0,d=t.children,{patchFlag:f,shapeFlag:m}=t;if(f>0){if(f&128){fe(l,d,n,r,i,a,o,s,c);return}if(f&256){de(l,d,n,r,i,a,o,s,c);return}}m&8?(u&16&&ve(l,i,a),d!==l&&p(n,d)):u&16?m&16?fe(l,d,n,r,i,a,o,s,c):ve(l,i,a,!0):(u&8&&p(n,``),m&16&&E(d,n,r,i,a,o,s,c))},de=(e,t,r,i,a,o,s,c,l)=>{e||=n,t||=n;let u=e.length,d=t.length,f=Math.min(u,d),p;for(p=0;pd?ve(e,a,o,!0,!1,f):E(t,r,i,a,o,s,c,l,f)},fe=(e,t,r,i,a,o,s,c,l)=>{let u=0,d=t.length,f=e.length-1,p=d-1;for(;u<=f&&u<=p;){let n=e[u],i=t[u]=l?za(t[u]):Z(t[u]);if(ka(n,i))v(n,i,r,null,a,o,s,c,l);else break;u++}for(;u<=f&&u<=p;){let n=e[f],i=t[p]=l?za(t[p]):Z(t[p]);if(ka(n,i))v(n,i,r,null,a,o,s,c,l);else break;f--,p--}if(u>f){if(u<=p){let e=p+1,n=ep)for(;u<=f;)me(e[u],a,o,!0),u++;else{let m=u,h=u,g=new Map;for(u=h;u<=p;u++){let e=t[u]=l?za(t[u]):Z(t[u]);e.key!=null&&g.set(e.key,u)}let _,y=0,b=p-h+1,x=!1,S=0,C=Array(b);for(u=0;u=b){me(n,a,o,!0);continue}let i;if(n.key!=null)i=g.get(n.key);else for(_=h;_<=p;_++)if(C[_-h]===0&&ka(n,t[_])){i=_;break}i===void 0?me(n,a,o,!0):(C[i-h]=u+1,i>=S?S=i:x=!0,v(n,t[i],r,null,a,o,s,c,l),y++)}let w=x?fa(C):n;for(_=w.length-1,u=b-1;u>=0;u--){let e=h+u,n=t[e],f=t[e+1],p=e+1{let{el:a,type:c,transition:l,children:u,shapeFlag:d}=e;if(d&6){pe(e.component.subTree,t,n,r);return}if(d&128){e.suspense.move(t,n,r);return}if(d&64){c.move(e,t,n,Se);return}if(c===q){o(a,t,n);for(let e=0;el.enter(a),i));else{let{leave:r,delayLeave:i,afterLeave:c}=l,u=()=>{e.ctx.isUnmounted?s(a):o(a,t,n)},d=()=>{let e=a._isLeaving||!!a[U];a._isLeaving&&a[U](!0),l.persisted&&!e?u():r(a,()=>{u(),c&&c()})};i?i(a,u,d):d()}else o(a,t,n)},me=(e,t,n,r=!1,i=!1)=>{let{type:a,props:o,ref:s,children:c,dynamicChildren:l,shapeFlag:u,patchFlag:d,dirs:f,cacheIndex:p,memo:m}=e;if(d===-2&&(i=!1),s!=null&&(qe(),kr(s,null,n,e,!0),Je()),p!=null&&(t.renderCache[p]=void 0),u&256){t.ctx.deactivate(e);return}let h=u&1&&f,g=!jr(e),_;if(g&&(_=o&&o.onVnodeBeforeUnmount)&&Q(_,t,e),u&6)_e(e.component,n,r);else{if(u&128){e.suspense.unmount(n,r);return}h&&Vn(e,null,t,`beforeUnmount`),u&64?e.type.remove(e,t,n,Se,r):l&&!l.hasOnce&&(a!==q||d>0&&d&64)?ve(l,t,n,!1,!0):(a===q&&d&384||!i&&u&16)&&ve(c,t,n),r&&he(e)}let v=m!=null&&p==null;(g&&(_=o&&o.onVnodeUnmounted)||h||v)&&K(()=>{_&&Q(_,t,e),h&&Vn(e,null,t,`unmounted`),v&&(e.el=null)},n)},he=e=>{let{type:t,el:n,anchor:r,transition:i}=e;if(t===q){ge(n,r);return}if(t===ya){C(e);return}let a=()=>{s(n),i&&!i.persisted&&i.afterLeave&&i.afterLeave()};if(e.shapeFlag&1&&i&&!i.persisted){let{leave:t,delayLeave:r}=i,o=()=>t(n,a);r?r(e.el,a,o):o()}else a()},ge=(e,t)=>{let n;for(;e!==t;)n=h(e),s(e),e=n;s(t)},_e=(e,t,n)=>{let{bum:r,scope:i,job:a,subTree:o,um:s,m:c,a:l}=e;ma(c),ma(l),r&&ae(r),i.stop(),a&&(a.flags|=8,me(o,e,t,n)),s&&K(s,t),K(()=>{e.isUnmounted=!0},t)},ve=(e,t,n,r=!1,i=!1,a=0)=>{for(let o=a;o{if(e.shapeFlag&6)return ye(e.component.subTree);if(e.shapeFlag&128)return e.suspense.next();let t=h(e.anchor||e.el),n=t&&t[$n];return n?h(n):t},be=!1,xe=(e,t,n)=>{let r;e==null?t._vnode&&(me(t._vnode,null,null,!0),r=t._vnode.component):v(t._vnode||null,e,t,null,null,null,n),t._vnode=e,be||=(be=!0,Nn(r),Pn(),!1)},Se={p:v,um:me,m:pe,r:he,mt:k,mc:E,pc:ue,pbc:D,n:ye,o:e},Ce,we;return i&&([Ce,we]=i(Se)),{render:xe,hydrate:Ce,createApp:Oi(xe,Ce)}}function ca({type:e,props:t},n){return n===`svg`&&e===`foreignObject`||n===`mathml`&&e===`annotation-xml`&&t&&t.encoding&&t.encoding.includes(`html`)?void 0:n}function la({effect:e,job:t},n){n?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5)}function ua(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function da(e,t,n=!1){let r=e.children,i=t.children;if(d(r)&&d(i))for(let e=0;e>1,e[n[s]]0&&(t[r]=n[a-1]),n[a]=r)}}for(a=n.length,o=n[a-1];a-->0;)n[a]=o,o=t[o];return n}function pa(e){let t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:pa(t)}function ma(e){if(e)for(let t=0;te.__isSuspense;function _a(e,t){t&&t.pendingBranch?d(e)?t.effects.push(...e):t.effects.push(e):Mn(e)}var q=Symbol.for(`v-fgt`),va=Symbol.for(`v-txt`),J=Symbol.for(`v-cmt`),ya=Symbol.for(`v-stc`),ba=[],Y=null;function xa(e=!1){ba.push(Y=e?null:[])}function Sa(){ba.pop(),Y=ba[ba.length-1]||null}var Ca=1;function wa(e,t=!1){Ca+=e,e<0&&Y&&t&&(Y.hasOnce=!0)}function Ta(e){return e.dynamicChildren=Ca>0?Y||n:null,Sa(),Ca>0&&Y&&Y.push(e),e}function Ea(e,t,n,r,i,a){return Ta(Ma(e,t,n,r,i,a,!0))}function Da(e,t,n,r,i){return Ta(X(e,t,n,r,i,!0))}function Oa(e){return e?e.__v_isVNode===!0:!1}function ka(e,t){return e.type===t.type&&e.key===t.key}var Aa=({key:e})=>e??null,ja=({ref:e,ref_key:t,ref_for:n})=>(typeof e==`number`&&(e=``+e),e==null?null:g(e)||R(e)||h(e)?{i:H,r:e,k:t,f:!!n}:e);function Ma(e,t=null,n=null,r=0,i=null,a=e===q?0:1,o=!1,s=!1){let c={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&Aa(t),ref:t&&ja(t),scopeId:Ln,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetStart:null,targetAnchor:null,staticCount:0,shapeFlag:a,patchFlag:r,dynamicProps:i,dynamicChildren:null,appContext:null,ctx:H};return s?(Ba(c,n),a&128&&e.normalize(c)):n&&(c.shapeFlag|=g(n)?8:16),Ca>0&&!o&&Y&&(c.patchFlag>0||a&6)&&c.patchFlag!==32&&Y.push(c),c}var X=Na;function Na(e,t=null,n=null,r=0,i=null,a=!1){if((!e||e===Zr)&&(e=J),Oa(e)){let r=Fa(e,t,!0);return n&&Ba(r,n),Ca>0&&!a&&Y&&(r.shapeFlag&6?Y[Y.indexOf(e)]=r:Y.push(r)),r.patchFlag=-2,r}if(co(e)&&(e=e.__vccOpts),t){t=Pa(t);let{class:e,style:n}=t;e&&!g(e)&&(t.class=he(e)),v(n)&&(qt(n)&&!d(n)&&(n=s({},n)),t.style=ue(n))}let o=g(e)?1:ga(e)?128:er(e)?64:v(e)?4:h(e)?2:0;return Ma(e,t,n,r,i,o,a,!0)}function Pa(e){return e?qt(e)||Wi(e)?s({},e):e:null}function Fa(e,t,n=!1,r=!1){let{props:i,ref:a,patchFlag:o,children:s,transition:c}=e,l=t?Va(i||{},t):i,u={__v_isVNode:!0,__v_skip:!0,type:e.type,props:l,key:l&&Aa(l),ref:t&&t.ref?n&&a?d(a)?a.concat(ja(t)):[a,ja(t)]:ja(t):a,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:s,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==q?o===-1?16:o|16:o,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:c,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&Fa(e.ssContent),ssFallback:e.ssFallback&&Fa(e.ssFallback),placeholder:e.placeholder,el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return c&&r&&Cr(u,c.clone(u)),u}function Ia(e=` `,t=0){return X(va,null,e,t)}function La(e,t){let n=X(ya,null,e);return n.staticCount=t,n}function Ra(e=``,t=!1){return t?(xa(),Da(J,null,e)):X(J,null,e)}function Z(e){return e==null||typeof e==`boolean`?X(J):d(e)?X(q,null,e.slice()):Oa(e)?za(e):X(va,null,String(e))}function za(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:Fa(e)}function Ba(e,t){let n=0,{shapeFlag:r}=e;if(t==null)t=null;else if(d(t))n=16;else if(typeof t==`object`)if(r&65){let n=t.default;n&&(n._c&&(n._d=!1),Ba(e,n()),n._c&&(n._d=!0));return}else{n=32;let r=t._;!r&&!Wi(t)?t._ctx=H:r===3&&H&&(H.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else if(h(t)){if(r&65){Ba(e,{default:t});return}t={default:t,_ctx:H},n=32}else t=String(t),r&64?(n=16,t=[Ia(t)]):n=8;e.children=t,e.shapeFlag|=n}function Va(...e){let t={};for(let n=0;n$||H,Ka,qa;{let e=le(),t=(t,n)=>{let r;return(r=e[t])||(r=e[t]=[]),r.push(n),e=>{r.length>1?r.forEach(t=>t(e)):r[0](e)}};Ka=t(`__VUE_INSTANCE_SETTERS__`,e=>$=e),qa=t(`__VUE_SSR_SETTERS__`,e=>Za=e)}var Ja=e=>{let t=$;return Ka(e),e.scope.on(),()=>{e.scope.off(),Ka(t)}},Ya=()=>{$&&$.scope.off(),Ka(null)};function Xa(e){return e.vnode.shapeFlag&4}var Za=!1;function Qa(e,t=!1,n=!1){t&&qa(t);let{props:r,children:i}=e.vnode,a=Xa(e);Gi(e,r,a,t),ia(e,i,n||t);let o=a?$a(e,t):void 0;return t&&qa(!1),o}function $a(e,t){let n=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,ci);let{setup:r}=n;if(r){qe();let n=e.setupContext=r.length>1?ao(e):null,i=Ja(e),a=bn(r,e,0,[e.props,n]),o=y(a);if(Je(),i(),(o||e.sp)&&!jr(e)&&Er(e),o){if(a.then(Ya,Ya),t)return a.then(n=>{eo(e,n,t)}).catch(t=>{xn(t,e,0)});e.asyncDep=a}else eo(e,a,t)}else ro(e,t)}function eo(e,t,n){h(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:v(t)&&(e.setupState=rn(t)),ro(e,n)}var to,no;function ro(e,t,n){let i=e.type;if(!e.render){if(!t&&to&&!i.render){let t=i.template||_i(e).template;if(t){let{isCustomElement:n,compilerOptions:r}=e.appContext.config,{delimiters:a,compilerOptions:o}=i;i.render=to(t,s(s({isCustomElement:n,delimiters:a},r),o))}}e.render=i.render||r,no&&no(e)}{let t=Ja(e);qe();try{pi(e)}finally{Je(),t()}}}var io={get(e,t){return N(e,`get`,``),e[t]}};function ao(e){return{attrs:new Proxy(e.attrs,io),slots:e.slots,emit:e.emit,expose:t=>{e.exposed=t||{}}}}function oo(e){return e.exposed?e.exposeProxy||=new Proxy(rn(Jt(e.exposed)),{get(t,n){if(n in t)return t[n];if(n in oi)return oi[n](e)},has(e,t){return t in e||t in oi}}):e.proxy}function so(e,t=!0){return h(e)?e.displayName||e.name:e.name||t&&e.__name}function co(e){return h(e)&&`__vccOpts`in e}var lo=(e,t)=>pn(e,t,Za);function uo(e,t,n){try{wa(-1);let r=arguments.length;return r===2?v(t)&&!d(t)?Oa(t)?X(e,null,[t]):X(e,t):X(e,null,t):(r>3?n=Array.prototype.slice.call(arguments,2):r===3&&Oa(n)&&(n=[n]),X(e,t,n))}finally{wa(1)}}var fo=`3.5.40`;function po(e){return typeof e==`object`||`displayName`in e||`props`in e||`__vccOpts`in e}function mo(e){return e.__esModule||e[Symbol.toStringTag]===`Module`||e.default&&po(e.default)}var ho=Object.assign;function go(e,t){let n={};for(let r in t){let i=t[r];n[r]=vo(i)?i.map(e):e(i)}return n}var _o=()=>{},vo=Array.isArray;function yo(e,t){let n={};for(let r in e)n[r]=r in t?t[r]:e[r];return n}var bo=Symbol(``);function xo(e,t){return ho(Error(),{type:e,[bo]:!0},t)}function So(e,t){return e instanceof Error&&bo in e&&(t==null||!!(e.type&t))}var Co=Symbol(``),wo=Symbol(``),To=Symbol(``),Eo=Symbol(``),Do=Symbol(``);function Oo(){return Un(To)}function ko(e){return Un(Eo)}var Ao=(e,t)=>{let n=e.__vccOpts||e;for(let[e,r]of t)n[e]=r;return n};export{Xr as $,ni as A,s as At,Un as B,ve as Bt,z as C,un as Ct,Ra as D,r as Dt,Da as E,en as Et,Ga as F,h as Ft,Br as G,oe as Gt,On as H,_ as Ht,wr as I,o as It,xa as J,ge as Jt,Wr as K,he as Kt,Pa as L,v as Lt,Ia as M,ye as Mt,X as N,ae as Nt,Ea as O,E as Ot,Tr as P,d as Pt,ri as Q,uo as R,a as Rt,lr as S,I as St,Ma as T,tn as Tt,Ur as U,xe as Ut,Va as V,g as Vt,Vr as W,Se as Wt,Mn as X,we as Xt,Hn as Y,ue as Yt,ti as Z,se as Zt,wo as _,Ht as _t,vo as a,Jn as at,q as b,Ut as bt,po as c,Bn as ct,_o as d,Ae as dt,Qr as et,Eo as f,Gt as ft,Oo as g,Bt as gt,ko as h,je as ht,xo as i,pr as it,La as j,D as jt,oa as k,re as kt,Co as l,on as lt,Do as m,Jt as mt,go as n,Cr as nt,mo as o,qn as ot,To as p,R as pt,Hr as q,De as qt,ho as r,li as rt,So as s,zn as st,Ao as t,br as tt,yo as u,ke as ut,vr as v,Xt as vt,lo as w,sn as wt,ya as x,Zt as xt,mr as y,Vt as yt,Wn as z,p as zt}; \ No newline at end of file +function e(e){let t=Object.create(null);for(let n of e.split(`,`))t[n]=1;return e=>e in t}var t={},n=[],r=()=>{},i=()=>!1,a=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),o=e=>e.startsWith(`onUpdate:`),s=Object.assign,c=(e,t)=>{let n=e.indexOf(t);n>-1&&e.splice(n,1)},l=Object.prototype.hasOwnProperty,u=(e,t)=>l.call(e,t),d=Array.isArray,f=e=>x(e)===`[object Map]`,p=e=>x(e)===`[object Set]`,m=e=>x(e)===`[object Date]`,h=e=>typeof e==`function`,g=e=>typeof e==`string`,_=e=>typeof e==`symbol`,v=e=>typeof e==`object`&&!!e,y=e=>(v(e)||h(e))&&h(e.then)&&h(e.catch),b=Object.prototype.toString,x=e=>b.call(e),S=e=>x(e).slice(8,-1),C=e=>x(e)===`[object Object]`,w=e=>g(e)&&e!==`NaN`&&e[0]!==`-`&&``+parseInt(e,10)===e,T=e(`,key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted`),ee=e=>{let t=Object.create(null);return(n=>t[n]||(t[n]=e(n)))},te=/-\w/g,E=ee(e=>e.replace(te,e=>e.slice(1).toUpperCase())),ne=/\B([A-Z])/g,D=ee(e=>e.replace(ne,`-$1`).toLowerCase()),re=ee(e=>e.charAt(0).toUpperCase()+e.slice(1)),ie=ee(e=>e?`on${re(e)}`:``),O=(e,t)=>!Object.is(e,t),ae=(e,...t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:r,value:n})},oe=e=>{let t=parseFloat(e);return isNaN(t)?e:t},se=e=>{let t=g(e)?Number(e):NaN;return isNaN(t)?e:t},ce,le=()=>ce||=typeof globalThis<`u`?globalThis:typeof self<`u`?self:typeof window<`u`?window:typeof global<`u`?global:{};function ue(e){if(d(e)){let t={};for(let n=0;n{if(e){let n=e.split(fe);n.length>1&&(t[n[0].trim()]=n[1].trim())}}),t}function he(e){let t=``;if(g(e))t=e;else if(d(e))for(let n=0;nxe(e,t))}var Ce=e=>!!(e&&e.__v_isRef===!0),we=e=>g(e)?e:e==null?``:d(e)||v(e)&&(e.toString===b||!h(e.toString))?Ce(e)?we(e.value):JSON.stringify(e,Te,2):String(e),Te=(e,t)=>Ce(t)?Te(e,t.value):f(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((e,[t,n],r)=>(e[Ee(t,r)+` =>`]=n,e),{})}:p(t)?{[`Set(${t.size})`]:[...t.values()].map(e=>Ee(e))}:_(t)?Ee(t):v(t)&&!d(t)&&!C(t)?String(t):t,Ee=(e,t=``)=>_(e)?`Symbol(${e.description??t})`:e;function De(e){return e==null?`initial`:typeof e==`string`?e===``?` `:e:String(e)}var A,Oe=class{constructor(e=!1){this.detached=e,this._active=!0,this._on=0,this.effects=[],this.cleanups=[],this._isPaused=!1,this._warnOnRun=!0,this.__v_skip=!0,!e&&A&&(A.active?(this.parent=A,this.index=(A.scopes||(A.scopes=[])).push(this)-1):(this._active=!1,this._warnOnRun=!1))}get active(){return this._active}pause(){if(this._active){this._isPaused=!0;let e,t;if(this.scopes){let n=this.scopes.slice();for(e=0,t=n.length;e0&&--this._on===0){if(A===this)A=this.prevScope;else{let e=A;for(;e;){if(e.prevScope===this){e.prevScope=this.prevScope;break}e=e.prevScope}}this.prevScope=void 0}}stop(e){if(this._active){this._active=!1;let t,n;for(t=0,n=this.effects.length;t0)return;if(Ie){let e=Ie;for(Ie=void 0;e;){let t=e.next;e.next=void 0,e.flags&=-9,e=t}}let e;for(;Fe;){let t=Fe;for(Fe=void 0;t;){let n=t.next;if(t.next=void 0,t.flags&=-9,t.flags&1)try{t.trigger()}catch(t){e||=t}t=n}}if(e)throw e}function Be(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function Ve(e){let t,n=e.depsTail,r=n;for(;r;){let e=r.prevDep;r.version===-1?(r===n&&(n=e),We(r),Ge(r)):t=r,r.dep.activeLink=r.prevActiveLink,r.prevActiveLink=void 0,r=e}e.deps=t,e.depsTail=n}function He(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(Ue(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function Ue(e){if(e.flags&4&&!(e.flags&16)||(e.flags&=-17,e.globalVersion===Xe)||(e.globalVersion=Xe,!e.isSSR&&e.flags&128&&(!e.deps&&!e._dirty||!He(e))))return;e.flags|=2;let t=e.dep,n=j,r=M;j=e,M=!0;try{Be(e);let n=e.fn(e._value);(t.version===0||O(n,e._value))&&(e.flags|=128,e._value=n,t.version++)}catch(e){throw t.version++,e}finally{j=n,M=r,Ve(e),e.flags&=-3}}function We(e,t=!1){let{dep:n,prevSub:r,nextSub:i}=e;if(r&&(r.nextSub=i,e.prevSub=void 0),i&&(i.prevSub=r,e.nextSub=void 0),n.subs===e&&(n.subs=r,!r&&n.computed)){n.computed.flags&=-5;for(let e=n.computed.deps;e;e=e.nextDep)We(e,!0)}!t&&!--n.sc&&n.map&&n.map.delete(n.key)}function Ge(e){let{prevDep:t,nextDep:n}=e;t&&(t.nextDep=n,e.prevDep=void 0),n&&(n.prevDep=t,e.nextDep=void 0)}var M=!0,Ke=[];function qe(){Ke.push(M),M=!1}function Je(){let e=Ke.pop();M=e===void 0||e}function Ye(e){let{cleanup:t}=e;if(e.cleanup=void 0,t){let e=j;j=void 0;try{t()}finally{j=e}}}var Xe=0,Ze=class{constructor(e,t){this.sub=e,this.dep=t,this.version=t.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}},Qe=class{constructor(e){this.computed=e,this.version=0,this.activeLink=void 0,this.subs=void 0,this.map=void 0,this.key=void 0,this.sc=0,this.__v_skip=!0}track(e){if(!j||!M||j===this.computed)return;let t=this.activeLink;if(t===void 0||t.sub!==j)t=this.activeLink=new Ze(j,this),j.deps?(t.prevDep=j.depsTail,j.depsTail.nextDep=t,j.depsTail=t):j.deps=j.depsTail=t,$e(t);else if(t.version===-1&&(t.version=this.version,t.nextDep)){let e=t.nextDep;e.prevDep=t.prevDep,t.prevDep&&(t.prevDep.nextDep=e),t.prevDep=j.depsTail,t.nextDep=void 0,j.depsTail.nextDep=t,j.depsTail=t,j.deps===t&&(j.deps=e)}return t}trigger(e){this.version++,Xe++,this.notify(e)}notify(e){Re();try{for(let e=this.subs;e;e=e.prevSub)e.sub.notify()&&e.sub.dep.notify()}finally{ze()}}};function $e(e){if(e.dep.sc++,e.sub.flags&4){let t=e.dep.computed;if(t&&!e.dep.subs){t.flags|=20;for(let e=t.deps;e;e=e.nextDep)$e(e)}let n=e.dep.subs;n!==e&&(e.prevSub=n,n&&(n.nextSub=e)),e.dep.subs=e}}var et=new WeakMap,tt=Symbol(``),nt=Symbol(``),rt=Symbol(``);function N(e,t,n){if(M&&j){let t=et.get(e);t||et.set(e,t=new Map);let r=t.get(n);r||(t.set(n,r=new Qe),r.map=t,r.key=n),r.track()}}function it(e,t,n,r,i,a){let o=et.get(e);if(!o){Xe++;return}let s=e=>{e&&e.trigger()};if(Re(),t===`clear`)o.forEach(s);else{let i=d(e),a=i&&w(n);if(i&&n===`length`){let e=Number(r);o.forEach((t,n)=>{(n===`length`||n===rt||!_(n)&&n>=e)&&s(t)})}else switch((n!==void 0||o.has(void 0))&&s(o.get(n)),a&&s(o.get(rt)),t){case`add`:i?a&&s(o.get(`length`)):(s(o.get(tt)),f(e)&&s(o.get(nt)));break;case`delete`:i||(s(o.get(tt)),f(e)&&s(o.get(nt)));break;case`set`:f(e)&&s(o.get(tt))}}ze()}function at(e,t){let n=et.get(e);return n&&n.get(t)}function ot(e){let t=I(e);return t===e?t:(N(t,`iterate`,rt),F(e)?t:t.map(L))}function st(e){return N(e=I(e),`iterate`,rt),e}function P(e,t){return Kt(e)?Yt(Gt(e)?L(t):t):L(t)}var ct={__proto__:null,[Symbol.iterator](){return lt(this,Symbol.iterator,e=>P(this,e))},concat(...e){return ot(this).concat(...e.map(e=>d(e)?ot(e):e))},entries(){return lt(this,`entries`,e=>(e[1]=P(this,e[1]),e))},every(e,t){return dt(this,`every`,e,t,void 0,arguments)},filter(e,t){return dt(this,`filter`,e,t,e=>e.map(e=>P(this,e)),arguments)},find(e,t){return dt(this,`find`,e,t,e=>P(this,e),arguments)},findIndex(e,t){return dt(this,`findIndex`,e,t,void 0,arguments)},findLast(e,t){return dt(this,`findLast`,e,t,e=>P(this,e),arguments)},findLastIndex(e,t){return dt(this,`findLastIndex`,e,t,void 0,arguments)},forEach(e,t){return dt(this,`forEach`,e,t,void 0,arguments)},includes(...e){return pt(this,`includes`,e)},indexOf(...e){return pt(this,`indexOf`,e)},join(e){return ot(this).join(e)},lastIndexOf(...e){return pt(this,`lastIndexOf`,e)},map(e,t){return dt(this,`map`,e,t,void 0,arguments)},pop(){return mt(this,`pop`)},push(...e){return mt(this,`push`,e)},reduce(e,...t){return ft(this,`reduce`,e,t)},reduceRight(e,...t){return ft(this,`reduceRight`,e,t)},shift(){return mt(this,`shift`)},some(e,t){return dt(this,`some`,e,t,void 0,arguments)},splice(...e){return mt(this,`splice`,e)},toReversed(){return ot(this).toReversed()},toSorted(e){return ot(this).toSorted(e)},toSpliced(...e){return ot(this).toSpliced(...e)},unshift(...e){return mt(this,`unshift`,e)},values(){return lt(this,`values`,e=>P(this,e))}};function lt(e,t,n){let r=st(e),i=r[t]();return r!==e&&!F(e)&&(i._next=i.next,i.next=()=>{let e=i._next();return e.done||(e.value=n(e.value)),e}),i}var ut=Array.prototype;function dt(e,t,n,r,i,a){let o=st(e),s=o!==e&&!F(e),c=o[t];if(c!==ut[t]){let t=c.apply(e,a);return s?L(t):t}let l=n;o!==e&&(s?l=function(t,r){return n.call(this,P(e,t),r,e)}:n.length>2&&(l=function(t,r){return n.call(this,t,r,e)}));let u=c.call(o,l,r);return s&&i?i(u):u}function ft(e,t,n,r){let i=st(e),a=i!==e&&!F(e),o=n,s=!1;i!==e&&(a?(s=r.length===0,o=function(t,r,i){return s&&(s=!1,t=P(e,t)),n.call(this,t,P(e,r),i,e)}):n.length>3&&(o=function(t,r,i){return n.call(this,t,r,i,e)}));let c=i[t](o,...r);return s?P(e,c):c}function pt(e,t,n){let r=I(e);N(r,`iterate`,rt);let i=r[t](...n);return(i===-1||i===!1)&&qt(n[0])?(n[0]=I(n[0]),r[t](...n)):i}function mt(e,t,n=[]){qe(),Re();let r=I(e)[t].apply(e,n);return ze(),Je(),r}var ht=e(`__proto__,__v_isRef,__isVue`),gt=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!==`arguments`&&e!==`caller`).map(e=>Symbol[e]).filter(_));function _t(e){_(e)||(e=String(e));let t=I(this);return N(t,`has`,e),t.hasOwnProperty(e)}var vt=class{constructor(e=!1,t=!1){this._isReadonly=e,this._isShallow=t}get(e,t,n){if(t===`__v_skip`)return e.__v_skip;let r=this._isReadonly,i=this._isShallow;if(t===`__v_isReactive`)return!r;if(t===`__v_isReadonly`)return r;if(t===`__v_isShallow`)return i;if(t===`__v_raw`)return n===(r?i?Rt:Lt:i?It:Ft).get(e)||Object.getPrototypeOf(e)===Object.getPrototypeOf(n)?e:void 0;let a=d(e);if(!r){let e;if(a&&(e=ct[t]))return e;if(t===`hasOwnProperty`)return _t}let o=Reflect.get(e,t,R(e)?e:n);if((_(t)?gt.has(t):ht(t))||(r||N(e,`get`,t),i))return o;if(R(o)){let e=a&&w(t)?o:o.value;return r&&v(e)?Ht(e):e}return v(o)?r?Ht(o):Bt(o):o}},yt=class extends vt{constructor(e=!1){super(!1,e)}set(e,t,n,r){let i=e[t],a=d(e)&&w(t);if(!this._isShallow){let e=Kt(i);if(!F(n)&&!Kt(n)&&(i=I(i),n=I(n)),!a&&R(i)&&!R(n))return e||(i.value=n),!0}let o=a?Number(t)e,Et=e=>Reflect.getPrototypeOf(e);function Dt(e,t,n){return function(...r){let i=this.__v_raw,a=I(i),o=f(a),c=e===`entries`||e===Symbol.iterator&&o,l=e===`keys`&&o,u=i[e](...r),d=n?Tt:t?Yt:L;return!t&&N(a,`iterate`,l?nt:tt),s(Object.create(u),{next(){let{value:e,done:t}=u.next();return t?{value:e,done:t}:{value:c?[d(e[0]),d(e[1])]:d(e),done:t}}})}}function Ot(e){return function(...t){return e===`delete`?!1:e===`clear`?void 0:this}}function kt(e,t){let n={get(n){let r=this.__v_raw,i=I(r),a=I(n);e||(O(n,a)&&N(i,`get`,n),N(i,`get`,a));let{has:o}=Et(i),s=t?Tt:e?Yt:L;if(o.call(i,n))return s(r.get(n));if(o.call(i,a))return s(r.get(a));r!==i&&r.get(n)},get size(){let t=this.__v_raw;return!e&&N(I(t),`iterate`,tt),t.size},has(t){let n=this.__v_raw,r=I(n),i=I(t);return e||(O(t,i)&&N(r,`has`,t),N(r,`has`,i)),t===i?n.has(t):n.has(t)||n.has(i)},forEach(n,r){let i=this,a=i.__v_raw,o=I(a),s=t?Tt:e?Yt:L;return!e&&N(o,`iterate`,tt),a.forEach((e,t)=>n.call(r,s(e),s(t),i))}};return s(n,e?{add:Ot(`add`),set:Ot(`set`),delete:Ot(`delete`),clear:Ot(`clear`)}:{add(e){let n=I(this),r=Et(n),i=I(e),a=!t&&!F(e)&&!Kt(e)?i:e;return r.has.call(n,a)||O(e,a)&&r.has.call(n,e)||O(i,a)&&r.has.call(n,i)||(n.add(a),it(n,`add`,a,a)),this},set(e,n){!t&&!F(n)&&!Kt(n)&&(n=I(n));let r=I(this),{has:i,get:a}=Et(r),o=i.call(r,e);o||=(e=I(e),i.call(r,e));let s=a.call(r,e);return r.set(e,n),o?O(n,s)&&it(r,`set`,e,n,s):it(r,`add`,e,n),this},delete(e){let t=I(this),{has:n,get:r}=Et(t),i=n.call(t,e);i||=(e=I(e),n.call(t,e));let a=r?r.call(t,e):void 0,o=t.delete(e);return i&&it(t,`delete`,e,void 0,a),o},clear(){let e=I(this),t=e.size!==0,n=e.clear();return t&&it(e,`clear`,void 0,void 0,void 0),n}}),[`keys`,`values`,`entries`,Symbol.iterator].forEach(r=>{n[r]=Dt(r,e,t)}),n}function At(e,t){let n=kt(e,t);return(t,r,i)=>r===`__v_isReactive`?!e:r===`__v_isReadonly`?e:r===`__v_raw`?t:Reflect.get(u(n,r)&&r in t?n:t,r,i)}var jt={get:At(!1,!1)},Mt={get:At(!1,!0)},Nt={get:At(!0,!1)},Pt={get:At(!0,!0)},Ft=new WeakMap,It=new WeakMap,Lt=new WeakMap,Rt=new WeakMap;function zt(e){switch(e){case`Object`:case`Array`:return 1;case`Map`:case`Set`:case`WeakMap`:case`WeakSet`:return 2;default:return 0}}function Bt(e){return Kt(e)?e:Wt(e,!1,xt,jt,Ft)}function Vt(e){return Wt(e,!1,Ct,Mt,It)}function Ht(e){return Wt(e,!0,St,Nt,Lt)}function Ut(e){return Wt(e,!0,wt,Pt,Rt)}function Wt(e,t,n,r,i){if(!v(e)||e.__v_raw&&!(t&&e.__v_isReactive)||e.__v_skip||!Object.isExtensible(e))return e;let a=i.get(e);if(a)return a;let o=zt(S(e));if(o===0)return e;let s=new Proxy(e,o===2?r:n);return i.set(e,s),s}function Gt(e){return Kt(e)?Gt(e.__v_raw):!!(e&&e.__v_isReactive)}function Kt(e){return!!(e&&e.__v_isReadonly)}function F(e){return!!(e&&e.__v_isShallow)}function qt(e){return e?!!e.__v_raw:!1}function I(e){let t=e&&e.__v_raw;return t?I(t):e}function Jt(e){return!u(e,`__v_skip`)&&Object.isExtensible(e)&&k(e,`__v_skip`,!0),e}var L=e=>v(e)?Bt(e):e,Yt=e=>v(e)?Ht(e):e;function R(e){return e?e.__v_isRef===!0:!1}function Xt(e){return Qt(e,!1)}function Zt(e){return Qt(e,!0)}function Qt(e,t){return R(e)?e:new $t(e,t)}var $t=class{constructor(e,t){this.dep=new Qe,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=t?e:I(e),this._value=t?e:L(e),this.__v_isShallow=t}get value(){return this.dep.track(),this._value}set value(e){let t=this._rawValue,n=this.__v_isShallow||F(e)||Kt(e);e=n?e:I(e),O(e,t)&&(this._rawValue=e,this._value=n?e:L(e),this.dep.trigger())}};function en(e){return R(e)?e.value:e}function tn(e){return h(e)?e():en(e)}var nn={get:(e,t,n)=>t===`__v_raw`?e:en(Reflect.get(e,t,n)),set:(e,t,n,r)=>{let i=e[t];return R(i)&&!R(n)?(i.value=n,!0):Reflect.set(e,t,n,r)}};function rn(e){return Gt(e)?e:new Proxy(e,nn)}var an=class{constructor(e){this.__v_isRef=!0,this._value=void 0;let t=this.dep=new Qe,{get:n,set:r}=e(t.track.bind(t),t.trigger.bind(t));this._get=n,this._set=r}get value(){return this._value=this._get()}set value(e){this._set(e)}};function on(e){return new an(e)}function sn(e){let t=d(e)?Array(e.length):{};for(let n in e)t[n]=dn(e,n);return t}var cn=class{constructor(e,t,n){this._object=e,this._defaultValue=n,this.__v_isRef=!0,this._value=void 0,this._key=_(t)?t:String(t),this._raw=I(e);let r=!0,i=e;if(!d(e)||_(this._key)||!w(this._key))do r=!qt(i)||F(i);while(r&&(i=i.__v_raw));this._shallow=r}get value(){let e=this._object[this._key];return this._shallow&&(e=en(e)),this._value=e===void 0?this._defaultValue:e}set value(e){if(this._shallow&&R(this._raw[this._key])){let t=this._object[this._key];if(R(t)){t.value=e;return}}this._object[this._key]=e}get dep(){return at(this._raw,this._key)}},ln=class{constructor(e){this._getter=e,this.__v_isRef=!0,this.__v_isReadonly=!0,this._value=void 0}get value(){return this._value=this._getter()}};function un(e,t,n){return R(e)?e:h(e)?new ln(e):v(e)&&arguments.length>1?dn(e,t,n):Xt(e)}function dn(e,t,n){return new cn(e,t,n)}var fn=class{constructor(e,t,n){this.fn=e,this.setter=t,this._value=void 0,this.dep=new Qe(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=Xe-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!t,this.isSSR=n}notify(){if(this.flags|=16,!(this.flags&8)&&j!==this)return Le(this,!0),!0}get value(){let e=this.dep.track();return Ue(this),e&&(e.version=this.dep.version),this._value}set value(e){this.setter&&this.setter(e)}};function pn(e,t,n=!1){let r,i;return h(e)?r=e:(r=e.get,i=e.set),new fn(r,i,n)}var mn={},hn=new WeakMap,gn=void 0;function _n(e,t=!1,n=gn){if(n){let t=hn.get(n);t||hn.set(n,t=[]),t.push(e)}}function vn(e,n,i=t){let{immediate:a,deep:o,once:s,scheduler:l,augmentJob:u,call:f}=i,p=e=>o?e:F(e)||o===!1||o===0?yn(e,1):yn(e),m,g,_,v,y=!1,b=!1;if(R(e)?(g=()=>e.value,y=F(e)):Gt(e)?(g=()=>p(e),y=!0):d(e)?(b=!0,y=e.some(e=>Gt(e)||F(e)),g=()=>e.map(e=>{if(R(e))return e.value;if(Gt(e))return p(e);if(h(e))return f?f(e,2):e()})):g=h(e)?n?f?()=>f(e,2):e:()=>{if(_){qe();try{_()}finally{Je()}}let t=gn;gn=m;try{return f?f(e,3,[v]):e(v)}finally{gn=t}}:r,n&&o){let e=g,t=o===!0?1/0:o;g=()=>yn(e(),t)}let x=Ae(),S=()=>{m.stop(),x&&x.active&&c(x.effects,m)};if(s&&n){let e=n;n=(...t)=>{let n=e(...t);return S(),n}}let C=b?Array(e.length).fill(mn):mn,w=e=>{if(!(!(m.flags&1)||!m.dirty&&!e))if(n){let t=m.run();if(e||o||y||(b?t.some((e,t)=>O(e,C[t])):O(t,C))){_&&_();let e=gn;gn=m;try{let e=[t,C===mn?void 0:b&&C[0]===mn?[]:C,v];C=t,f?f(n,3,e):n(...e)}finally{gn=e}}}else m.run()};return u&&u(w),m=new Ne(g),m.scheduler=l?()=>l(w,!1):w,v=e=>_n(e,!1,m),_=m.onStop=()=>{let e=hn.get(m);if(e){if(f)f(e,4);else for(let t of e)t();hn.delete(m)}},n?a?w(!0):C=m.run():l?l(w.bind(null,!0),!0):m.run(),S.pause=m.pause.bind(m),S.resume=m.resume.bind(m),S.stop=S,S}function yn(e,t=1/0,n){if(t<=0||!v(e)||e.__v_skip||(n||=new Map,(n.get(e)||0)>=t))return e;if(n.set(e,t),t--,R(e))yn(e.value,t,n);else if(d(e))for(let r=0;r{yn(e,t,n)});else if(C(e)){for(let r in e)yn(e[r],t,n);for(let r of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,r)&&yn(e[r],t,n)}return e}function bn(e,t,n,r){try{return r?e(...r):e()}catch(e){xn(e,t,n)}}function z(e,t,n,r){if(h(e)){let i=bn(e,t,n,r);return i&&y(i)&&i.catch(e=>{xn(e,t,n)}),i}if(d(e)){let i=[];for(let a=0;a>>1,i=B[r],a=Fn(i);a=Fn(n)?B.push(e):B.splice(kn(t),0,e),e.flags|=1,jn()}}function jn(){Dn||=En.then(In)}function Mn(e){d(e)?Cn.push(...e):wn&&e.id===-1?wn.splice(Tn+1,0,e):e.flags&1||(Cn.push(e),e.flags|=1),jn()}function Nn(e,t,n=V+1){for(;nFn(e)-Fn(t));if(Cn.length=0,wn){wn.push(...e);return}for(wn=e,Tn=0;Tne.id==null?e.flags&2?-1:1/0:e.id;function In(e){try{for(V=0;V{r._d&&wa(-1);let i=Rn(t),a=ba.length,o;try{o=e(...n)}finally{for(let e=ba.length;e>a;e--)Sa();Rn(i),r._d&&wa(1)}return o};return r._n=!0,r._c=!0,r._d=!0,r}function Bn(e,n){if(H===null)return e;let r=oo(H),i=e.dirs||=[];for(let e=0;e1)return n&&h(t)?t.call(r&&r.proxy):t}}function Wn(){return!!(Ga()||ki)}var Gn=Symbol.for(`v-scx`),Kn=()=>Un(Gn);function qn(e,t){return Yn(e,null,t)}function Jn(e,t,n){return Yn(e,t,n)}function Yn(e,n,i=t){let{immediate:a,deep:o,flush:c,once:l}=i,u=s({},i),d=n&&a||!n&&c!==`post`,f;if(Za){if(c===`sync`){let e=Kn();f=e.__watcherHandles||=[]}else if(!d){let e=()=>{};return e.stop=r,e.resume=r,e.pause=r,e}}let p=$;u.call=(e,t,n)=>z(e,p,t,n);let m=!1;c===`post`?u.scheduler=e=>{K(e,p&&p.suspense)}:c!==`sync`&&(m=!0,u.scheduler=(e,t)=>{t?e():An(e)}),u.augmentJob=e=>{n&&(e.flags|=4),m&&(e.flags|=2,p&&(e.id=p.uid,e.i=p))};let h=vn(e,n,u);return Za&&(f?f.push(h):d&&h()),h}function Xn(e,t,n){let r=this.proxy,i=g(e)?e.includes(`.`)?Zn(r,e):()=>r[e]:e.bind(r,r),a;h(t)?a=t:(a=t.handler,n=t);let o=Ja(this),s=Yn(i,a.bind(r),n);return o(),s}function Zn(e,t){let n=t.split(`.`);return()=>{let t=e;for(let e=0;ee.__isTeleport,tr=e=>e&&(e.disabled||e.disabled===``),nr=e=>e&&(e.defer||e.defer===``),rr=e=>typeof SVGElement<`u`&&e instanceof SVGElement,ir=e=>typeof MathMLElement==`function`&&e instanceof MathMLElement,ar=(e,t)=>{let n=e&&e.to;return g(n)?t?t(n):null:n},or={name:`Teleport`,__isTeleport:!0,process(e,t,n,r,i,a,o,s,c,l){let{mc:u,pc:d,pbc:f,o:{insert:p,querySelector:m,createText:h,createComment:g,parentNode:_}}=l,v=tr(t.props),{dynamicChildren:y}=t,b=(e,t,n)=>{e.shapeFlag&16&&u(e.children,t,n,i,a,o,s,c)},x=(e=t)=>{let n=tr(e.props),r=e.target=ar(e.props,m),a=dr(r,e,h,p);r&&(o!==`svg`&&rr(r)?o=`svg`:o!==`mathml`&&ir(r)&&(o=`mathml`),i&&i.isCE&&(i.ce._teleportTargets||(i.ce._teleportTargets=new Set)).add(r),n||(b(e,r,a),ur(e,!1)))},S=e=>{let t=()=>{if(Qn.get(e)===t){if(Qn.delete(e),tr(e.props)){let t=_(e.el)||n;b(e,t,e.anchor),ur(e,!0)}x(e)}};Qn.set(e,t),K(t,a)};if(e==null){let e=t.el=h(``),i=t.anchor=h(``);if(p(e,n,r),p(i,n,r),nr(t.props)||a&&a.pendingBranch){S(t);return}v&&(b(t,n,i),ur(t,!0)),x()}else{t.el=e.el;let r=t.anchor=e.anchor,u=Qn.get(e);if(u){u.flags|=8,Qn.delete(e),S(t);return}t.targetStart=e.targetStart;let p=t.target=e.target,h=t.targetAnchor=e.targetAnchor,g=tr(e.props),_=g?n:p,b=g?r:h;if(o===`svg`||rr(p)?o=`svg`:(o===`mathml`||ir(p))&&(o=`mathml`),y?(f(e.dynamicChildren,y,_,i,a,o,s),da(e,t,!0)):c||d(e,t,_,b,i,a,o,s,!1),v)g?t.props&&e.props&&t.props.to!==e.props.to&&(t.props.to=e.props.to):sr(t,n,r,l,1);else if((t.props&&t.props.to)!==(e.props&&e.props.to)){let e=ar(t.props,m);e&&(t.target=e,sr(t,e,null,l,0))}else g&&sr(t,p,h,l,1);ur(t,v)}},remove(e,t,n,{um:r,o:{remove:i}},a){let{shapeFlag:o,children:s,anchor:c,targetStart:l,targetAnchor:u,target:d,props:f}=e,p=tr(f),m=a||!p,h=Qn.get(e);if(h&&(h.flags|=8,Qn.delete(e)),d&&(i(l),i(u)),a&&i(c),!h&&(p||d)&&o&16)for(let e=0;e{e.isMounted=!0}),Ur(()=>{e.isUnmounting=!0}),e}var W=[Function,Array],mr={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:W,onEnter:W,onAfterEnter:W,onEnterCancelled:W,onBeforeLeave:W,onLeave:W,onAfterLeave:W,onLeaveCancelled:W,onBeforeAppear:W,onAppear:W,onAfterAppear:W,onAppearCancelled:W},hr=e=>{let t=e.subTree;return t.component?hr(t.component):t},gr={name:`BaseTransition`,props:mr,setup(e,{slots:t}){let n=Ga(),r=pr();return()=>{let i=t.default&&wr(t.default(),!0),a=i&&i.length?_r(i):n.subTree?Ra():void 0;if(!a)return;let o=I(e),{mode:s}=o;if(r.isLeaving)return xr(a);let c=Sr(a);if(!c)return xr(a);let l=br(c,o,r,n,e=>l=e);c.type!==J&&Cr(c,l);let u=n.subTree&&Sr(n.subTree);if(u&&u.type!==J&&!ka(u,c)&&hr(n).type!==J){let e=br(u,o,r,n);if(Cr(u,e),s===`out-in`&&c.type!==J)return r.isLeaving=!0,e.afterLeave=()=>{r.isLeaving=!1,n.job.flags&8||n.update(),delete e.afterLeave,u=void 0},xr(a);s===`in-out`&&c.type!==J?e.delayLeave=(e,t,n)=>{let i=yr(r,u);i[String(u.key)]=u,e[U]=()=>{t(),e[U]=void 0,delete l.delayedLeave,u=void 0},l.delayedLeave=()=>{n(),delete l.delayedLeave,u=void 0}}:u=void 0}else u&&=void 0;return a}}};function _r(e){let t=e[0];if(e.length>1){for(let n of e)if(n.type!==J){t=n;break}}return t}var vr=gr;function yr(e,t){let{leavingVNodes:n}=e,r=n.get(t.type);return r||(r=Object.create(null),n.set(t.type,r)),r}function br(e,t,n,r,i){let{appear:a,mode:o,persisted:s=!1,onBeforeEnter:c,onEnter:l,onAfterEnter:u,onEnterCancelled:f,onBeforeLeave:p,onLeave:m,onAfterLeave:h,onLeaveCancelled:g,onBeforeAppear:_,onAppear:v,onAfterAppear:y,onAppearCancelled:b}=t,x=String(e.key),S=yr(n,e),C=(e,t)=>{e&&z(e,r,9,t)},w=(e,t)=>{let n=t[1];C(e,t),d(e)?e.every(e=>e.length<=1)&&n():e.length<=1&&n()},T={mode:o,persisted:s,beforeEnter(t){let r=c;if(!n.isMounted)if(a)r=_||c;else return;t[U]&&t[U](!0);let i=S[x];i&&ka(e,i)&&i.el[U]&&i.el[U](),C(r,[t])},enter(t){if(S[x]===e)return;let r=l,i=u,o=f;if(!n.isMounted)if(a)r=v||l,i=y||u,o=b||f;else return;let s=!1;t[fr]=e=>{s||(s=!0,C(e?o:i,[t]),T.delayedLeave&&T.delayedLeave(),t[fr]=void 0)};let c=t[fr].bind(null,!1);r?w(r,[t,c]):c()},leave(t,r){let i=String(e.key);if(t[fr]&&t[fr](!0),n.isUnmounting)return r();C(p,[t]);let a=!1;t[U]=n=>{a||(a=!0,r(),C(n?g:h,[t]),t[U]=void 0,S[i]===e&&delete S[i])};let o=t[U].bind(null,!1);S[i]=e,m?w(m,[t,o]):o()},clone(e){let a=br(e,t,n,r,i);return i&&i(a),a}};return T}function xr(e){if(Mr(e))return e=Fa(e),e.children=null,e}function Sr(e){if(!Mr(e))return er(e.type)&&e.children?_r(e.children):e;if(e.component)return e.component.subTree;let{shapeFlag:t,children:n}=e;if(n){if(t&16)return n[0];if(t&32&&h(n.default))return n.default()}}function Cr(e,t){e.shapeFlag&6&&e.component?(e.transition=t,Cr(e.component.subTree,t)):e.shapeFlag&128?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function wr(e,t=!1,n){let r=[],i=0;for(let a=0;a1)for(let e=0;ekr(e,n&&(d(n)?n[t]:n),r,a,o));return}if(jr(a)&&!o){a.shapeFlag&512&&a.type.__asyncResolved&&a.component.subTree.component&&kr(e,n,r,a.component.subTree);return}let s=a.shapeFlag&4?oo(a.component):a.el,l=o?null:s,{i:f,r:p}=e,m=n&&n.r,_=f.refs===t?f.refs={}:f.refs,v=f.setupState,y=I(v),b=v===t?i:e=>!Dr(_,e)&&u(y,e),x=(e,t)=>!(t&&Dr(_,t));if(m!=null&&m!==p){if(Ar(n),g(m))_[m]=null,b(m)&&(v[m]=null);else if(R(m)){let e=n;x(m,e.k)&&(m.value=null),e.k&&(_[e.k]=null)}}if(h(p))bn(p,f,12,[l,_]);else{let t=g(p),n=R(p);if(t||n){let i=()=>{if(e.f){let n=t?b(p)?v[p]:_[p]:x(p)||!e.k?p.value:_[e.k];if(o)d(n)&&c(n,s);else if(d(n))n.includes(s)||n.push(s);else if(t)_[p]=[s],b(p)&&(v[p]=_[p]);else{let t=[s];x(p,e.k)&&(p.value=t),e.k&&(_[e.k]=t)}}else t?(_[p]=l,b(p)&&(v[p]=l)):n&&(x(p,e.k)&&(p.value=l),e.k&&(_[e.k]=l))};if(l){let t=()=>{i(),Or.delete(e)};t.id=-1,Or.set(e,t),K(t,r)}else Ar(e),i()}}}function Ar(e){let t=Or.get(e);t&&(t.flags|=8,Or.delete(e))}le().requestIdleCallback,le().cancelIdleCallback;var jr=e=>!!e.type.__asyncLoader,Mr=e=>e.type.__isKeepAlive;function Nr(e,t){Fr(e,`a`,t)}function Pr(e,t){Fr(e,`da`,t)}function Fr(e,t,n=$){let r=e.__wdc||=()=>{let t=n;for(;t;){if(t.isDeactivated)return;t=t.parent}return e()};if(Lr(t,r,n),n){let e=n.parent;for(;e&&e.parent;)Mr(e.parent.vnode)&&Ir(r,t,n,e),e=e.parent}}function Ir(e,t,n,r){let i=Lr(t,e,r,!0);Wr(()=>{c(r[t],i)},n)}function Lr(e,t,n=$,r=!1){if(n){let i=n[e]||(n[e]=[]),a=t.__weh||=(...r)=>{qe();let i=Ja(n),a=z(t,n,e,r);return i(),Je(),a};return r?i.unshift(a):i.push(a),a}}var Rr=e=>(t,n=$)=>{(!Za||e===`sp`)&&Lr(e,(...e)=>t(...e),n)},zr=Rr(`bm`),Br=Rr(`m`),Vr=Rr(`bu`),Hr=Rr(`u`),Ur=Rr(`bum`),Wr=Rr(`um`),Gr=Rr(`sp`),Kr=Rr(`rtg`),qr=Rr(`rtc`);function Jr(e,t=$){Lr(`ec`,e,t)}var Yr=`components`;function Xr(e,t){return $r(Yr,e,!0,t)||e}var Zr=Symbol.for(`v-ndc`);function Qr(e){return g(e)?$r(Yr,e,!1)||e:e||Zr}function $r(e,t,n=!0,r=!1){let i=H||$;if(i){let n=i.type;if(e===Yr){let e=so(n,!1);if(e&&(e===t||e===E(t)||e===re(E(t))))return n}let a=ei(i[e]||n[e],t)||ei(i.appContext[e],t);return!a&&r?n:a}}function ei(e,t){return e&&(e[t]||e[E(t)]||e[re(E(t))])}function ti(e,t,n,r){let i,a=n&&n[r],o=d(e);if(o||g(e)){let n=o&&Gt(e),r=!1,s=!1;n&&(r=!F(e),s=Kt(e),e=st(e)),i=Array(e.length);for(let n=0,o=e.length;nt(e,n,void 0,a&&a[n]));else{let n=Object.keys(e);i=Array(n.length);for(let r=0,o=n.length;r{let t=r.fn(...e);return t&&(t.key=r.key),t}:r.fn)}return e}function ri(e,t,n={},r,i,a){if(H.ce||H.parent&&jr(H.parent)&&H.parent.ce){let e=a!=null&&n.key==null?s({},n,{key:a}):n,i=Object.keys(e).length>0;return t!=="default"&&(e.name=t),xa(),Da(q,null,[X(`slot`,e,r&&r())],i?-2:64)}let o=e[t];o&&o._c&&(o._d=!1);let c=ba.length;xa();let l;try{let i=o&&ii(o(n)),s=n.key||a||i&&i.key;l=Da(q,{key:(s&&!_(s)?s:`_${t}`)+(!i&&r?`_fb`:``)},i||(r?r():[]),i&&e._===1?64:-2)}catch(e){for(let e=ba.length;e>c;e--)Sa();throw e}finally{o&&o._c&&(o._d=!0)}return!i&&l.scopeId&&(l.slotScopeIds=[l.scopeId+`-s`]),l}function ii(e){return e.some(e=>!Oa(e)||!(e.type===J||e.type===q&&!ii(e.children)))?e:null}var ai=e=>e?Xa(e)?oo(e):ai(e.parent):null,oi=s(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>e.props,$attrs:e=>e.attrs,$slots:e=>e.slots,$refs:e=>e.refs,$parent:e=>ai(e.parent),$root:e=>ai(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>_i(e),$forceUpdate:e=>e.f||=()=>{An(e.update)},$nextTick:e=>e.n||=On.bind(e.proxy),$watch:e=>Xn.bind(e)}),si=(e,n)=>e!==t&&!e.__isScriptSetup&&u(e,n),ci={get({_:e},n){if(n===`__v_skip`)return!0;let{ctx:r,setupState:i,data:a,props:o,accessCache:s,type:c,appContext:l}=e;if(n[0]!==`$`){let e=s[n];if(e!==void 0)switch(e){case 1:return i[n];case 2:return a[n];case 4:return r[n];case 3:return o[n]}else if(si(i,n))return s[n]=1,i[n];else if(a!==t&&u(a,n))return s[n]=2,a[n];else if(u(o,n))return s[n]=3,o[n];else if(r!==t&&u(r,n))return s[n]=4,r[n];else fi&&(s[n]=0)}let d=oi[n],f,p;if(d)return n===`$attrs`&&N(e.attrs,`get`,``),d(e);if((f=c.__cssModules)&&(f=f[n]))return f;if(r!==t&&u(r,n))return s[n]=4,r[n];if(p=l.config.globalProperties,u(p,n))return p[n]},set({_:e},n,r){let{data:i,setupState:a,ctx:o}=e;return si(a,n)?(a[n]=r,!0):i!==t&&u(i,n)?(i[n]=r,!0):u(e.props,n)||n[0]===`$`&&n.slice(1)in e?!1:(o[n]=r,!0)},has({_:{data:e,setupState:n,accessCache:r,ctx:i,appContext:a,props:o,type:s}},c){let l;return!!(r[c]||e!==t&&c[0]!==`$`&&u(e,c)||si(n,c)||u(o,c)||u(i,c)||u(oi,c)||u(a.config.globalProperties,c)||(l=s.__cssModules)&&l[c])},defineProperty(e,t,n){return n.get==null?u(n,`value`)&&this.set(e,t,n.value,null):e._.accessCache[t]=0,Reflect.defineProperty(e,t,n)}};function li(){return ui(`useAttrs`).attrs}function ui(e){let t=Ga();return t.setupContext||=ao(t)}function di(e){return d(e)?e.reduce((e,t)=>(e[t]=null,e),{}):e}var fi=!0;function pi(e){let t=_i(e),n=e.proxy,i=e.ctx;fi=!1,t.beforeCreate&&hi(t.beforeCreate,e,`bc`);let{data:a,computed:o,methods:s,watch:c,provide:l,inject:u,created:f,beforeMount:p,mounted:m,beforeUpdate:g,updated:_,activated:y,deactivated:b,beforeDestroy:x,beforeUnmount:S,destroyed:C,unmounted:w,render:T,renderTracked:ee,renderTriggered:te,errorCaptured:E,serverPrefetch:ne,expose:D,inheritAttrs:re,components:ie,directives:O,filters:ae}=t;if(u&&mi(u,i,null),s)for(let e in s){let t=s[e];h(t)&&(i[e]=t.bind(n))}if(a){let t=a.call(n,n);v(t)&&(e.data=Bt(t))}if(fi=!0,o)for(let e in o){let t=o[e],a=lo({get:h(t)?t.bind(n,n):h(t.get)?t.get.bind(n,n):r,set:!h(t)&&h(t.set)?t.set.bind(n):r});Object.defineProperty(i,e,{enumerable:!0,configurable:!0,get:()=>a.value,set:e=>a.value=e})}if(c)for(let e in c)gi(c[e],i,n,e);if(l){let e=h(l)?l.call(n):l;Reflect.ownKeys(e).forEach(t=>{Hn(t,e[t])})}f&&hi(f,e,`c`);function k(e,t){d(t)?t.forEach(t=>e(t.bind(n))):t&&e(t.bind(n))}if(k(zr,p),k(Br,m),k(Vr,g),k(Hr,_),k(Nr,y),k(Pr,b),k(Jr,E),k(qr,ee),k(Kr,te),k(Ur,S),k(Wr,w),k(Gr,ne),d(D))if(D.length){let t=e.exposed||={};D.forEach(e=>{Object.defineProperty(t,e,{get:()=>n[e],set:t=>n[e]=t,enumerable:!0})})}else e.exposed||={};T&&e.render===r&&(e.render=T),re!=null&&(e.inheritAttrs=re),ie&&(e.components=ie),O&&(e.directives=O),ne&&Er(e)}function mi(e,t,n=r){d(e)&&(e=Si(e));for(let n in e){let r=e[n],i;i=v(r)?`default`in r?Un(r.from||n,r.default,!0):Un(r.from||n):Un(r),R(i)?Object.defineProperty(t,n,{enumerable:!0,configurable:!0,get:()=>i.value,set:e=>i.value=e}):t[n]=i}}function hi(e,t,n){z(d(e)?e.map(e=>e.bind(t.proxy)):e.bind(t.proxy),t,n)}function gi(e,t,n,r){let i=r.includes(`.`)?Zn(n,r):()=>n[r];if(g(e)){let n=t[e];h(n)&&Jn(i,n)}else if(h(e))Jn(i,e.bind(n));else if(v(e))if(d(e))e.forEach(e=>gi(e,t,n,r));else{let r=h(e.handler)?e.handler.bind(n):t[e.handler];h(r)&&Jn(i,r,e)}}function _i(e){let t=e.type,{mixins:n,extends:r}=t,{mixins:i,optionsCache:a,config:{optionMergeStrategies:o}}=e.appContext,s=a.get(t),c;return s?c=s:!i.length&&!n&&!r?c=t:(c={},i.length&&i.forEach(e=>vi(c,e,o,!0)),vi(c,t,o)),v(t)&&a.set(t,c),c}function vi(e,t,n,r=!1){let{mixins:i,extends:a}=t;a&&vi(e,a,n,!0),i&&i.forEach(t=>vi(e,t,n,!0));for(let i in t)if(!(r&&i===`expose`)){let r=yi[i]||n&&n[i];e[i]=r?r(e[i],t[i]):t[i]}return e}var yi={data:bi,props:wi,emits:wi,methods:Ci,computed:Ci,beforeCreate:G,created:G,beforeMount:G,mounted:G,beforeUpdate:G,updated:G,beforeDestroy:G,beforeUnmount:G,destroyed:G,unmounted:G,activated:G,deactivated:G,errorCaptured:G,serverPrefetch:G,components:Ci,directives:Ci,watch:Ti,provide:bi,inject:xi};function bi(e,t){return t?e?function(){return s(h(e)?e.call(this,this):e,h(t)?t.call(this,this):t)}:t:e}function xi(e,t){return Ci(Si(e),Si(t))}function Si(e){if(d(e)){let t={};for(let n=0;nt===`modelValue`||t===`model-value`?e.modelModifiers:e[`${t}Modifiers`]||e[`${E(t)}Modifiers`]||e[`${D(t)}Modifiers`];function ji(e,n,...r){if(e.isUnmounted)return;let i=e.vnode.props||t,a=r,o=n.startsWith(`update:`),s=o&&Ai(i,n.slice(7));s&&(s.trim&&(a=r.map(e=>g(e)?e.trim():e)),s.number&&(a=r.map(oe)));let c,l=i[c=ie(n)]||i[c=ie(E(n))];!l&&o&&(l=i[c=ie(D(n))]),l&&z(l,e,6,a);let u=i[c+`Once`];if(u){if(!e.emitted)e.emitted={};else if(e.emitted[c])return;e.emitted[c]=!0,z(u,e,6,a)}}var Mi=new WeakMap;function Ni(e,t,n=!1){let r=n?Mi:t.emitsCache,i=r.get(e);if(i!==void 0)return i;let a=e.emits,o={},c=!1;if(!h(e)){let r=e=>{let n=Ni(e,t,!0);n&&(c=!0,s(o,n))};!n&&t.mixins.length&&t.mixins.forEach(r),e.extends&&r(e.extends),e.mixins&&e.mixins.forEach(r)}return!a&&!c?(v(e)&&r.set(e,null),null):(d(a)?a.forEach(e=>o[e]=null):s(o,a),v(e)&&r.set(e,o),o)}function Pi(e,t){return!e||!a(t)?!1:(t=t.slice(2),t=t===`Once`?t:t.replace(/Once$/,``),u(e,t[0].toLowerCase()+t.slice(1))||u(e,D(t))||u(e,t))}function Fi(e){let{type:t,vnode:n,proxy:r,withProxy:i,propsOptions:[a],slots:s,attrs:c,emit:l,render:u,renderCache:d,props:f,data:p,setupState:m,ctx:h,inheritAttrs:g}=e,_=Rn(e),v,y;try{if(n.shapeFlag&4){let e=i||r,t=e;v=Z(u.call(t,e,d,f,m,p,h)),y=c}else{let e=t;v=Z(e.length>1?e(f,{attrs:c,slots:s,emit:l}):e(f,null)),y=t.props?c:Ii(c)}}catch(t){ba.length=0,xn(t,e,1),v=X(J)}let b=v;if(y&&g!==!1){let e=Object.keys(y),{shapeFlag:t}=b;e.length&&t&7&&(a&&e.some(o)&&(y=Li(y,a)),b=Fa(b,y,!1,!0))}return n.dirs&&(b=Fa(b,null,!1,!0),b.dirs=b.dirs?b.dirs.concat(n.dirs):n.dirs),n.transition&&Cr(b,n.transition),v=b,Rn(_),v}var Ii=e=>{let t;for(let n in e)(n===`class`||n===`style`||a(n))&&((t||={})[n]=e[n]);return t},Li=(e,t)=>{let n={};for(let r in e)(!o(r)||!(r.slice(9)in t))&&(n[r]=e[r]);return n};function Ri(e,t,n){let{props:r,children:i,component:a}=e,{props:o,children:s,patchFlag:c}=t,l=a.emitsOptions;if(t.dirs||t.transition)return!0;if(n&&c>=0){if(c&1024)return!0;if(c&16)return r?zi(r,o,l):!!o;if(c&8){let e=t.dynamicProps;for(let t=0;tObject.create(Hi),Wi=e=>Object.getPrototypeOf(e)===Hi;function Gi(e,t,n,r=!1){let i={},a=Ui();e.propsDefaults=Object.create(null),qi(e,t,i,a);for(let t in e.propsOptions[0])t in i||(i[t]=void 0);e.props=n?r?i:Vt(i):e.type.props?i:a,e.attrs=a}function Ki(e,t,n,r){let{props:i,attrs:a,vnode:{patchFlag:o}}=e,s=I(i),[c]=e.propsOptions,l=!1;if((r||o>0)&&!(o&16)){if(o&8){let n=e.vnode.dynamicProps;for(let r=0;r{p=!0;let[t,n]=Xi(e,r,!0);s(l,t),n&&f.push(...n)};!i&&r.mixins.length&&r.mixins.forEach(t),e.extends&&t(e.extends),e.mixins&&e.mixins.forEach(t)}if(!c&&!p)return v(e)&&a.set(e,n),n;if(d(c))for(let e=0;ee===`_`||e===`_ctx`||e===`$stable`,$i=e=>d(e)?e.map(Z):[Z(e)],ea=(e,t,n)=>{if(t._n)return t;let r=zn((...e)=>$i(t(...e)),n);return r._c=!1,r},ta=(e,t,n)=>{let r=e._ctx;for(let n in e){if(Qi(n))continue;let i=e[n];if(h(i))t[n]=ea(n,i,r);else if(i!=null){let e=$i(i);t[n]=()=>e}}},na=(e,t)=>{let n=$i(t);e.slots.default=()=>n},ra=(e,t,n)=>{for(let r in t)(n||!Qi(r))&&(e[r]=t[r])},ia=(e,t,n)=>{let r=e.slots=Ui();if(e.vnode.shapeFlag&32){let e=t._;e?(ra(r,t,n),n&&k(r,`_`,e,!0)):ta(t,r)}else t&&na(e,t)},aa=(e,n,r)=>{let{vnode:i,slots:a}=e,o=!0,s=t;if(i.shapeFlag&32){let e=n._;e?r&&e===1?o=!1:ra(a,n,r):(o=!n.$stable,ta(n,a)),s=n}else n&&(na(e,n),s={default:1});if(o)for(let e in a)!Qi(e)&&s[e]==null&&delete a[e]},K=_a;function oa(e){return sa(e)}function sa(e,i){let a=le();a.__VUE__=!0;let{insert:o,remove:s,patchProp:c,createElement:l,createText:u,createComment:d,setText:f,setElementText:p,parentNode:m,nextSibling:h,setScopeId:g=r,insertStaticContent:_}=e,v=(e,t,n,r=null,i=null,a=null,o=void 0,s=null,c=!!t.dynamicChildren)=>{if(e===t)return;e&&!ka(e,t)&&(r=ye(e),me(e,i,a,!0),e=null),t.patchFlag===-2&&(c=!1,t.dynamicChildren=null);let{type:l,ref:u,shapeFlag:d}=t;switch(l){case va:y(e,t,n,r);break;case J:b(e,t,n,r);break;case ya:e??x(t,n,r,o);break;case q:ie(e,t,n,r,i,a,o,s,c);break;default:d&1?w(e,t,n,r,i,a,o,s,c):d&6?O(e,t,n,r,i,a,o,s,c):(d&64||d&128)&&l.process(e,t,n,r,i,a,o,s,c,Se)}u!=null&&i?kr(u,e&&e.ref,a,t||e,!t):u==null&&e&&e.ref!=null&&kr(e.ref,null,a,e,!0)},y=(e,t,n,r)=>{if(e==null)o(t.el=u(t.children),n,r);else{let n=t.el=e.el;t.children!==e.children&&f(n,t.children)}},b=(e,t,n,r)=>{e==null?o(t.el=d(t.children||``),n,r):t.el=e.el},x=(e,t,n,r)=>{[e.el,e.anchor]=_(e.children,t,n,r,e.el,e.anchor)},S=({el:e,anchor:t},n,r)=>{let i;for(;e&&e!==t;)i=h(e),o(e,n,r),e=i;o(t,n,r)},C=({el:e,anchor:t})=>{let n;for(;e&&e!==t;)n=h(e),s(e),e=n;s(t)},w=(e,t,n,r,i,a,o,s,c)=>{if(t.type===`svg`?o=`svg`:t.type===`math`&&(o=`mathml`),e==null)ee(t,n,r,i,a,o,s,c);else{let n=e.el&&e.el._isVueCE?e.el:null;try{n&&n._beginPatch(),ne(e,t,i,a,o,s,c)}finally{n&&n._endPatch()}}},ee=(e,t,n,r,i,a,s,u)=>{let d,f,{props:m,shapeFlag:h,transition:g,dirs:_}=e;if(d=e.el=l(e.type,a,m&&m.is,m),h&8?p(d,e.children):h&16&&E(e.children,d,null,r,i,ca(e,a),s,u),_&&Vn(e,null,r,`created`),te(d,e,e.scopeId,s,r),m){for(let e in m)e!==`value`&&!T(e)&&c(d,e,null,m[e],a,r);`value`in m&&c(d,`value`,null,m.value,a),(f=m.onVnodeBeforeMount)&&Q(f,r,e)}_&&Vn(e,null,r,`beforeMount`);let v=ua(i,g);v&&g.beforeEnter(d),o(d,t,n),((f=m&&m.onVnodeMounted)||v||_)&&K(()=>{try{f&&Q(f,r,e),v&&g.enter(d),_&&Vn(e,null,r,`mounted`)}finally{}},i)},te=(e,t,n,r,i)=>{if(n&&g(e,n),r)for(let t=0;t{for(let l=c;l{let l=n.el=e.el,{patchFlag:u,dynamicChildren:d,dirs:f}=n;u|=e.patchFlag&16;let m=e.props||t,h=n.props||t,g;if(r&&la(r,!1),(g=h.onVnodeBeforeUpdate)&&Q(g,r,n,e),f&&Vn(n,e,r,`beforeUpdate`),r&&la(r,!0),d&&(!e.dynamicChildren||e.dynamicChildren.length!==d.length)&&(u=0,s=!1,d=null),(m.innerHTML&&h.innerHTML==null||m.textContent&&h.textContent==null)&&p(l,``),d?D(e.dynamicChildren,d,l,r,i,ca(n,a),o):s||ue(e,n,l,null,r,i,ca(n,a),o,!1),u>0){if(u&16)re(l,m,h,r,a);else if(u&2&&m.class!==h.class&&c(l,`class`,null,h.class,a),u&4&&c(l,`style`,m.style,h.style,a),u&8){let e=n.dynamicProps;for(let t=0;t{g&&Q(g,r,n,e),f&&Vn(n,e,r,`updated`)},i)},D=(e,t,n,r,i,a,o)=>{for(let s=0;s{if(n!==r){if(n!==t)for(let t in n)!T(t)&&!(t in r)&&c(e,t,n[t],null,a,i);for(let t in r){if(T(t))continue;let o=r[t],s=n[t];o!==s&&t!==`value`&&c(e,t,s,o,a,i)}`value`in r&&c(e,`value`,n.value,r.value,a)}},ie=(e,t,n,r,i,a,s,c,l)=>{let d=t.el=e?e.el:u(``),f=t.anchor=e?e.anchor:u(``),{patchFlag:p,dynamicChildren:m,slotScopeIds:h}=t;h&&(c=c?c.concat(h):h),e==null?(o(d,n,r),o(f,n,r),E(t.children||[],n,f,i,a,s,c,l)):p>0&&p&64&&m&&e.dynamicChildren&&e.dynamicChildren.length===m.length?(D(e.dynamicChildren,m,n,i,a,s,c),(t.key!=null||i&&t===i.subTree)&&da(e,t,!0)):ue(e,t,n,f,i,a,s,c,l)},O=(e,t,n,r,i,a,o,s,c)=>{t.slotScopeIds=s,e==null?t.shapeFlag&512?i.ctx.activate(t,n,r,o,c):k(t,n,r,i,a,o,c):oe(e,t,c)},k=(e,t,n,r,i,a,o)=>{let s=e.component=Wa(e,r,i);if(Mr(e)&&(s.ctx.renderer=Se),Qa(s,!1,o),s.asyncDep){if(i&&i.registerDep(s,se,o),!e.el){let r=s.subTree=X(J);b(null,r,t,n),e.placeholder=r.el}}else se(s,e,t,n,i,a,o)},oe=(e,t,n)=>{let r=t.component=e.component;if(Ri(e,t,n))if(r.asyncDep&&!r.asyncResolved){ce(r,t,n);return}else r.next=t,r.update();else t.el=e.el,r.vnode=t},se=(e,t,n,r,i,a,o)=>{let s=()=>{if(e.isMounted){let{next:t,bu:n,u:r,parent:s,vnode:c}=e;{let n=pa(e);if(n){t&&(t.el=c.el,ce(e,t,o)),n.asyncDep.then(()=>{K(()=>{e.isUnmounted||l()},i)});return}}let u=t,d;la(e,!1),t?(t.el=c.el,ce(e,t,o)):t=c,n&&ae(n),(d=t.props&&t.props.onVnodeBeforeUpdate)&&Q(d,s,t,c),la(e,!0);let f=Fi(e),p=e.subTree;e.subTree=f,v(p,f,m(p.el),ye(p),e,i,a),t.el=f.el,u===null&&Vi(e,f.el),r&&K(r,i),(d=t.props&&t.props.onVnodeUpdated)&&K(()=>Q(d,s,t,c),i)}else{let o,{el:s,props:c}=t,{bm:l,m:u,parent:d,root:f,type:p}=e,m=jr(t);if(la(e,!1),l&&ae(l),!m&&(o=c&&c.onVnodeBeforeMount)&&Q(o,d,t),la(e,!0),s&&we){let t=()=>{e.subTree=Fi(e),we(s,e.subTree,e,i,null)};m&&p.__asyncHydrate?p.__asyncHydrate(s,e,t):t()}else{f.ce&&f.ce._hasShadowRoot()&&f.ce._injectChildStyle(p,e.parent?e.parent.type:void 0);let o=e.subTree=Fi(e);v(null,o,n,r,e,i,a),t.el=o.el}if(u&&K(u,i),!m&&(o=c&&c.onVnodeMounted)){let e=t;K(()=>Q(o,d,e),i)}(t.shapeFlag&256||d&&jr(d.vnode)&&d.vnode.shapeFlag&256)&&e.a&&K(e.a,i),e.isMounted=!0,t=n=r=null}};e.scope.on();let c=e.effect=new Ne(s);e.scope.off();let l=e.update=c.run.bind(c),u=e.job=c.runIfDirty.bind(c);u.i=e,u.id=e.uid,c.scheduler=()=>An(u),la(e,!0),l()},ce=(e,t,n)=>{t.component=e;let r=e.vnode.props;e.vnode=t,e.next=null,Ki(e,t.props,r,n),aa(e,t.children,n),qe(),Nn(e),Je()},ue=(e,t,n,r,i,a,o,s,c=!1)=>{let l=e&&e.children,u=e?e.shapeFlag:0,d=t.children,{patchFlag:f,shapeFlag:m}=t;if(f>0){if(f&128){fe(l,d,n,r,i,a,o,s,c);return}if(f&256){de(l,d,n,r,i,a,o,s,c);return}}m&8?(u&16&&ve(l,i,a),d!==l&&p(n,d)):u&16?m&16?fe(l,d,n,r,i,a,o,s,c):ve(l,i,a,!0):(u&8&&p(n,``),m&16&&E(d,n,r,i,a,o,s,c))},de=(e,t,r,i,a,o,s,c,l)=>{e||=n,t||=n;let u=e.length,d=t.length,f=Math.min(u,d),p;for(p=0;pd?ve(e,a,o,!0,!1,f):E(t,r,i,a,o,s,c,l,f)},fe=(e,t,r,i,a,o,s,c,l)=>{let u=0,d=t.length,f=e.length-1,p=d-1;for(;u<=f&&u<=p;){let n=e[u],i=t[u]=l?za(t[u]):Z(t[u]);if(ka(n,i))v(n,i,r,null,a,o,s,c,l);else break;u++}for(;u<=f&&u<=p;){let n=e[f],i=t[p]=l?za(t[p]):Z(t[p]);if(ka(n,i))v(n,i,r,null,a,o,s,c,l);else break;f--,p--}if(u>f){if(u<=p){let e=p+1,n=ep)for(;u<=f;)me(e[u],a,o,!0),u++;else{let m=u,h=u,g=new Map;for(u=h;u<=p;u++){let e=t[u]=l?za(t[u]):Z(t[u]);e.key!=null&&g.set(e.key,u)}let _,y=0,b=p-h+1,x=!1,S=0,C=Array(b);for(u=0;u=b){me(n,a,o,!0);continue}let i;if(n.key!=null)i=g.get(n.key);else for(_=h;_<=p;_++)if(C[_-h]===0&&ka(n,t[_])){i=_;break}i===void 0?me(n,a,o,!0):(C[i-h]=u+1,i>=S?S=i:x=!0,v(n,t[i],r,null,a,o,s,c,l),y++)}let w=x?fa(C):n;for(_=w.length-1,u=b-1;u>=0;u--){let e=h+u,n=t[e],f=t[e+1],p=e+1{let{el:a,type:c,transition:l,children:u,shapeFlag:d}=e;if(d&6){pe(e.component.subTree,t,n,r);return}if(d&128){e.suspense.move(t,n,r);return}if(d&64){c.move(e,t,n,Se);return}if(c===q){o(a,t,n);for(let e=0;el.enter(a),i));else{let{leave:r,delayLeave:i,afterLeave:c}=l,u=()=>{e.ctx.isUnmounted?s(a):o(a,t,n)},d=()=>{let e=a._isLeaving||!!a[U];a._isLeaving&&a[U](!0),l.persisted&&!e?u():r(a,()=>{u(),c&&c()})};i?i(a,u,d):d()}else o(a,t,n)},me=(e,t,n,r=!1,i=!1)=>{let{type:a,props:o,ref:s,children:c,dynamicChildren:l,shapeFlag:u,patchFlag:d,dirs:f,cacheIndex:p,memo:m}=e;if(d===-2&&(i=!1),s!=null&&(qe(),kr(s,null,n,e,!0),Je()),p!=null&&(t.renderCache[p]=void 0),u&256){t.ctx.deactivate(e);return}let h=u&1&&f,g=!jr(e),_;if(g&&(_=o&&o.onVnodeBeforeUnmount)&&Q(_,t,e),u&6)_e(e.component,n,r);else{if(u&128){e.suspense.unmount(n,r);return}h&&Vn(e,null,t,`beforeUnmount`),u&64?e.type.remove(e,t,n,Se,r):l&&!l.hasOnce&&(a!==q||d>0&&d&64)?ve(l,t,n,!1,!0):(a===q&&d&384||!i&&u&16)&&ve(c,t,n),r&&he(e)}let v=m!=null&&p==null;(g&&(_=o&&o.onVnodeUnmounted)||h||v)&&K(()=>{_&&Q(_,t,e),h&&Vn(e,null,t,`unmounted`),v&&(e.el=null)},n)},he=e=>{let{type:t,el:n,anchor:r,transition:i}=e;if(t===q){ge(n,r);return}if(t===ya){C(e);return}let a=()=>{s(n),i&&!i.persisted&&i.afterLeave&&i.afterLeave()};if(e.shapeFlag&1&&i&&!i.persisted){let{leave:t,delayLeave:r}=i,o=()=>t(n,a);r?r(e.el,a,o):o()}else a()},ge=(e,t)=>{let n;for(;e!==t;)n=h(e),s(e),e=n;s(t)},_e=(e,t,n)=>{let{bum:r,scope:i,job:a,subTree:o,um:s,m:c,a:l}=e;ma(c),ma(l),r&&ae(r),i.stop(),a&&(a.flags|=8,me(o,e,t,n)),s&&K(s,t),K(()=>{e.isUnmounted=!0},t)},ve=(e,t,n,r=!1,i=!1,a=0)=>{for(let o=a;o{if(e.shapeFlag&6)return ye(e.component.subTree);if(e.shapeFlag&128)return e.suspense.next();let t=h(e.anchor||e.el),n=t&&t[$n];return n?h(n):t},be=!1,xe=(e,t,n)=>{let r;e==null?t._vnode&&(me(t._vnode,null,null,!0),r=t._vnode.component):v(t._vnode||null,e,t,null,null,null,n),t._vnode=e,be||=(be=!0,Nn(r),Pn(),!1)},Se={p:v,um:me,m:pe,r:he,mt:k,mc:E,pc:ue,pbc:D,n:ye,o:e},Ce,we;return i&&([Ce,we]=i(Se)),{render:xe,hydrate:Ce,createApp:Oi(xe,Ce)}}function ca({type:e,props:t},n){return n===`svg`&&e===`foreignObject`||n===`mathml`&&e===`annotation-xml`&&t&&t.encoding&&t.encoding.includes(`html`)?void 0:n}function la({effect:e,job:t},n){n?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5)}function ua(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function da(e,t,n=!1){let r=e.children,i=t.children;if(d(r)&&d(i))for(let e=0;e>1,e[n[s]]0&&(t[r]=n[a-1]),n[a]=r)}}for(a=n.length,o=n[a-1];a-->0;)n[a]=o,o=t[o];return n}function pa(e){let t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:pa(t)}function ma(e){if(e)for(let t=0;te.__isSuspense;function _a(e,t){t&&t.pendingBranch?d(e)?t.effects.push(...e):t.effects.push(e):Mn(e)}var q=Symbol.for(`v-fgt`),va=Symbol.for(`v-txt`),J=Symbol.for(`v-cmt`),ya=Symbol.for(`v-stc`),ba=[],Y=null;function xa(e=!1){ba.push(Y=e?null:[])}function Sa(){ba.pop(),Y=ba[ba.length-1]||null}var Ca=1;function wa(e,t=!1){Ca+=e,e<0&&Y&&t&&(Y.hasOnce=!0)}function Ta(e){return e.dynamicChildren=Ca>0?Y||n:null,Sa(),Ca>0&&Y&&Y.push(e),e}function Ea(e,t,n,r,i,a){return Ta(Ma(e,t,n,r,i,a,!0))}function Da(e,t,n,r,i){return Ta(X(e,t,n,r,i,!0))}function Oa(e){return e?e.__v_isVNode===!0:!1}function ka(e,t){return e.type===t.type&&e.key===t.key}var Aa=({key:e})=>e??null,ja=({ref:e,ref_key:t,ref_for:n})=>(typeof e==`number`&&(e=``+e),e==null?null:g(e)||R(e)||h(e)?{i:H,r:e,k:t,f:!!n}:e);function Ma(e,t=null,n=null,r=0,i=null,a=e===q?0:1,o=!1,s=!1){let c={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&Aa(t),ref:t&&ja(t),scopeId:Ln,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetStart:null,targetAnchor:null,staticCount:0,shapeFlag:a,patchFlag:r,dynamicProps:i,dynamicChildren:null,appContext:null,ctx:H};return s?(Ba(c,n),a&128&&e.normalize(c)):n&&(c.shapeFlag|=g(n)?8:16),Ca>0&&!o&&Y&&(c.patchFlag>0||a&6)&&c.patchFlag!==32&&Y.push(c),c}var X=Na;function Na(e,t=null,n=null,r=0,i=null,a=!1){if((!e||e===Zr)&&(e=J),Oa(e)){let r=Fa(e,t,!0);return n&&Ba(r,n),Ca>0&&!a&&Y&&(r.shapeFlag&6?Y[Y.indexOf(e)]=r:Y.push(r)),r.patchFlag=-2,r}if(co(e)&&(e=e.__vccOpts),t){t=Pa(t);let{class:e,style:n}=t;e&&!g(e)&&(t.class=he(e)),v(n)&&(qt(n)&&!d(n)&&(n=s({},n)),t.style=ue(n))}let o=g(e)?1:ga(e)?128:er(e)?64:v(e)?4:h(e)?2:0;return Ma(e,t,n,r,i,o,a,!0)}function Pa(e){return e?qt(e)||Wi(e)?s({},e):e:null}function Fa(e,t,n=!1,r=!1){let{props:i,ref:a,patchFlag:o,children:s,transition:c}=e,l=t?Va(i||{},t):i,u={__v_isVNode:!0,__v_skip:!0,type:e.type,props:l,key:l&&Aa(l),ref:t&&t.ref?n&&a?d(a)?a.concat(ja(t)):[a,ja(t)]:ja(t):a,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:s,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==q?o===-1?16:o|16:o,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:c,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&Fa(e.ssContent),ssFallback:e.ssFallback&&Fa(e.ssFallback),placeholder:e.placeholder,el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return c&&r&&Cr(u,c.clone(u)),u}function Ia(e=` `,t=0){return X(va,null,e,t)}function La(e,t){let n=X(ya,null,e);return n.staticCount=t,n}function Ra(e=``,t=!1){return t?(xa(),Da(J,null,e)):X(J,null,e)}function Z(e){return e==null||typeof e==`boolean`?X(J):d(e)?X(q,null,e.slice()):Oa(e)?za(e):X(va,null,String(e))}function za(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:Fa(e)}function Ba(e,t){let n=0,{shapeFlag:r}=e;if(t==null)t=null;else if(d(t))n=16;else if(typeof t==`object`)if(r&65){let n=t.default;n&&(n._c&&(n._d=!1),Ba(e,n()),n._c&&(n._d=!0));return}else{n=32;let r=t._;!r&&!Wi(t)?t._ctx=H:r===3&&H&&(H.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else if(h(t)){if(r&65){Ba(e,{default:t});return}t={default:t,_ctx:H},n=32}else t=String(t),r&64?(n=16,t=[Ia(t)]):n=8;e.children=t,e.shapeFlag|=n}function Va(...e){let t={};for(let n=0;n$||H,Ka,qa;{let e=le(),t=(t,n)=>{let r;return(r=e[t])||(r=e[t]=[]),r.push(n),e=>{r.length>1?r.forEach(t=>t(e)):r[0](e)}};Ka=t(`__VUE_INSTANCE_SETTERS__`,e=>$=e),qa=t(`__VUE_SSR_SETTERS__`,e=>Za=e)}var Ja=e=>{let t=$;return Ka(e),e.scope.on(),()=>{e.scope.off(),Ka(t)}},Ya=()=>{$&&$.scope.off(),Ka(null)};function Xa(e){return e.vnode.shapeFlag&4}var Za=!1;function Qa(e,t=!1,n=!1){t&&qa(t);let{props:r,children:i}=e.vnode,a=Xa(e);Gi(e,r,a,t),ia(e,i,n||t);let o=a?$a(e,t):void 0;return t&&qa(!1),o}function $a(e,t){let n=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,ci);let{setup:r}=n;if(r){qe();let n=e.setupContext=r.length>1?ao(e):null,i=Ja(e),a=bn(r,e,0,[e.props,n]),o=y(a);if(Je(),i(),(o||e.sp)&&!jr(e)&&Er(e),o){if(a.then(Ya,Ya),t)return a.then(n=>{eo(e,n,t)}).catch(t=>{xn(t,e,0)});e.asyncDep=a}else eo(e,a,t)}else ro(e,t)}function eo(e,t,n){h(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:v(t)&&(e.setupState=rn(t)),ro(e,n)}var to,no;function ro(e,t,n){let i=e.type;if(!e.render){if(!t&&to&&!i.render){let t=i.template||_i(e).template;if(t){let{isCustomElement:n,compilerOptions:r}=e.appContext.config,{delimiters:a,compilerOptions:o}=i;i.render=to(t,s(s({isCustomElement:n,delimiters:a},r),o))}}e.render=i.render||r,no&&no(e)}{let t=Ja(e);qe();try{pi(e)}finally{Je(),t()}}}var io={get(e,t){return N(e,`get`,``),e[t]}};function ao(e){return{attrs:new Proxy(e.attrs,io),slots:e.slots,emit:e.emit,expose:t=>{e.exposed=t||{}}}}function oo(e){return e.exposed?e.exposeProxy||=new Proxy(rn(Jt(e.exposed)),{get(t,n){if(n in t)return t[n];if(n in oi)return oi[n](e)},has(e,t){return t in e||t in oi}}):e.proxy}function so(e,t=!0){return h(e)?e.displayName||e.name:e.name||t&&e.__name}function co(e){return h(e)&&`__vccOpts`in e}var lo=(e,t)=>pn(e,t,Za);function uo(e,t,n){try{wa(-1);let r=arguments.length;return r===2?v(t)&&!d(t)?Oa(t)?X(e,null,[t]):X(e,t):X(e,null,t):(r>3?n=Array.prototype.slice.call(arguments,2):r===3&&Oa(n)&&(n=[n]),X(e,t,n))}finally{wa(1)}}var fo=`3.5.40`,po=(e,t)=>{let n=e.__vccOpts||e;for(let[e,r]of t)n[e]=r;return n};export{je as $,Wr as A,he as At,Cr as B,Wn as C,p as Ct,Ur as D,xe as Dt,On as E,_ as Et,ti as F,se as Ft,zn as G,pr as H,ri as I,ke as J,Bn as K,Xr as L,xa as M,ge as Mt,Hn as N,ue as Nt,Vr as O,Se as Ot,Mn as P,we as Pt,Jt as Q,Qr as R,uo as S,a as St,Va as T,g as Tt,Jn as U,li as V,qn as W,Gt as X,Ae as Y,R as Z,X as _,ae as _t,ya as a,Zt as at,wr as b,o as bt,lo as c,sn as ct,Ra as d,r as dt,Bt as et,Ea as f,E as ft,Ia as g,ye as gt,La as h,D as ht,q as i,Ut as it,Hr as j,De as jt,Br as k,oe as kt,Ma as l,tn as lt,ni as m,s as mt,vr as n,Xt as nt,lr as o,I as ot,oa as p,re as pt,on as q,mr as r,Vt as rt,z as s,un as st,po as t,Ht as tt,Da as u,en as ut,Tr as v,d as vt,Un as w,ve as wt,Pa as x,v as xt,Ga as y,h as yt,br as z}; \ No newline at end of file diff --git a/dist/assets/catalog-CIw6in_a.js b/dist/assets/catalog-BHsy1JeE.js similarity index 93% rename from dist/assets/catalog-CIw6in_a.js rename to dist/assets/catalog-BHsy1JeE.js index 60b1836..bbd3f85 100644 --- a/dist/assets/catalog-CIw6in_a.js +++ b/dist/assets/catalog-BHsy1JeE.js @@ -1 +1 @@ -import{vt as e}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";import{n as t,o as n}from"./http-CeONvUNq.js";var r=n(`catalog`,()=>{let n=e([]),r=e([]),i=e([]),a=e([]),o=e(``),s=e(!1),c=e(!1);async function l(e=!1){if(c.value&&!e)return n.value;s.value=!0;try{let e=await t(`/companies`,{query:{activeOnly:!0}});n.value=e.filter(e=>e.isActive).sort((e,t)=>e.displayOrder-t.displayOrder),c.value=!0}finally{s.value=!1}return n.value}function u(){return[...n.value].sort((e,t)=>e.displayOrder-t.displayOrder)}function d(e){return n.value.find(t=>t.id===e)}async function f(e){let n=await t(`/catalogs`,{query:{companyId:e,activeOnly:!0}});return r.value=[...r.value.filter(t=>t.companyId!==e),...n],n}async function p(e,n){let r=await t(`/products`,{query:{catalogId:e,color:n&&n!==`all`?n:void 0,activeOnly:!0}}),a=i.value.filter(t=>t.catalogId!==e);return i.value=[...a,...r],r}async function m(e){let n=await t(`/companies/${e}/bank-accounts`);return a.value=[...a.value.filter(t=>t.companyId!==e),...n.filter(e=>e.isActive)],a.value.filter(t=>t.companyId===e)}function h(e,t=``){let n=r.value.filter(t=>t.companyId===e&&t.isActive);if(t.trim()){let e=t.trim();n=n.filter(t=>t.code.includes(e)||t.name.includes(e))}return[...n].sort((e,t)=>e.displayOrder-t.displayOrder)}function g(e,t){let n=i.value.filter(t=>t.catalogId===e&&t.isActive);return t&&t!==`all`&&(n=n.filter(e=>e.color.includes(t))),n}function _(e){return r.value.find(t=>t.id===e)}function v(e){return i.value.find(t=>t.id===e)}function y(e){return[...new Set(g(e).map(e=>e.color))]}function b(e){return a.value.filter(t=>t.companyId===e&&t.isActive).sort((e,t)=>e.displayOrder-t.displayOrder)}return{companies:n,catalogs:r,products:i,bankAccounts:a,searchQuery:o,loading:s,loaded:c,loadCompanies:l,loadCatalogs:f,loadProducts:p,loadBankAccounts:m,getActiveCompanies:u,getCompany:d,fetchCatalogs:h,fetchProducts:g,getCatalog:_,getProduct:v,getUniqueColors:y,getBankAccountsByCompany:b}});export{r as t}; \ No newline at end of file +import{nt as e}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{n as t,o as n}from"./http-Cmeatq0_.js";var r=n(`catalog`,()=>{let n=e([]),r=e([]),i=e([]),a=e([]),o=e(``),s=e(!1),c=e(!1);async function l(e=!1){if(c.value&&!e)return n.value;s.value=!0;try{let e=await t(`/companies`,{query:{activeOnly:!0}});n.value=e.filter(e=>e.isActive).sort((e,t)=>e.displayOrder-t.displayOrder),c.value=!0}finally{s.value=!1}return n.value}function u(){return[...n.value].sort((e,t)=>e.displayOrder-t.displayOrder)}function d(e){return n.value.find(t=>t.id===e)}async function f(e){let n=await t(`/catalogs`,{query:{companyId:e,activeOnly:!0}});return r.value=[...r.value.filter(t=>t.companyId!==e),...n],n}async function p(e,n){let r=await t(`/products`,{query:{catalogId:e,color:n&&n!==`all`?n:void 0,activeOnly:!0}}),a=i.value.filter(t=>t.catalogId!==e);return i.value=[...a,...r],r}async function m(e){let n=await t(`/companies/${e}/bank-accounts`);return a.value=[...a.value.filter(t=>t.companyId!==e),...n.filter(e=>e.isActive)],a.value.filter(t=>t.companyId===e)}function h(e,t=``){let n=r.value.filter(t=>t.companyId===e&&t.isActive);if(t.trim()){let e=t.trim();n=n.filter(t=>t.code.includes(e)||t.name.includes(e))}return[...n].sort((e,t)=>e.displayOrder-t.displayOrder)}function g(e,t){let n=i.value.filter(t=>t.catalogId===e&&t.isActive);return t&&t!==`all`&&(n=n.filter(e=>e.color.includes(t))),n}function _(e){return r.value.find(t=>t.id===e)}function v(e){return i.value.find(t=>t.id===e)}function y(e){return[...new Set(g(e).map(e=>e.color))]}function b(e){return a.value.filter(t=>t.companyId===e&&t.isActive).sort((e,t)=>e.displayOrder-t.displayOrder)}return{companies:n,catalogs:r,products:i,bankAccounts:a,searchQuery:o,loading:s,loaded:c,loadCompanies:l,loadCatalogs:f,loadProducts:p,loadBankAccounts:m,getActiveCompanies:u,getCompany:d,fetchCatalogs:h,fetchProducts:g,getCatalog:_,getProduct:v,getUniqueColors:y,getBankAccountsByCompany:b}});export{r as t}; \ No newline at end of file diff --git a/dist/assets/catalogNavigation-BKzzgMwI.js b/dist/assets/catalogNavigation-CNQR36ce.js similarity index 98% rename from dist/assets/catalogNavigation-BKzzgMwI.js rename to dist/assets/catalogNavigation-CNQR36ce.js index 7b6fa3f..e0e1022 100644 --- a/dist/assets/catalogNavigation-BKzzgMwI.js +++ b/dist/assets/catalogNavigation-CNQR36ce.js @@ -1 +1 @@ -import{c as e}from"./format-C72AoJ2H.js";import{t}from"./catalog-CIw6in_a.js";import{t as n}from"./crm-CooNUbmr.js";var r=[{id:`demo-milano`,companyId:``,name:`میلانو`,title:`کالیته میلانو`,latinName:`Milano`,subtitle:`پارچه‌های کت‌وشلواری`,imageUrl:`/assets/milano-DWfm45LN.jpg`,patternCount:16,badge:`new`,season:`all_season`,isNew:!0,isPopular:!1},{id:`demo-najran`,companyId:``,name:`نجران`,title:`کالیته نجران`,latinName:`Najran`,subtitle:`پارچه‌های پیراهنی`,imageUrl:`/assets/najran-BcpOdgRK.jpg`,patternCount:14,season:`all_season`,isNew:!1,isPopular:!1},{id:`demo-payizeh`,companyId:``,name:`پاییزه`,title:`کالیته پاییزه`,latinName:`Payizeh`,subtitle:`پارچه‌های شلواری`,imageUrl:`/assets/payizeh-CeElyeeF.jpg`,patternCount:18,season:`all_season`,isNew:!1,isPopular:!1},{id:`demo-classic`,companyId:``,name:`کلاسیک`,title:`کالیته کلاسیک`,latinName:`Classic`,subtitle:`پارچه‌های کت‌وشلواری`,imageUrl:`/assets/classic-DiIciTEG.jpg`,patternCount:16,season:`all_season`,isNew:!1,isPopular:!1},{id:`demo-tarhdar`,companyId:``,name:`طرح‌دار`,title:`کالیته طرح‌دار`,latinName:`Tarhdar`,subtitle:`پارچه‌های مجلسی`,imageUrl:`/assets/tarhdar-ryfL3rgV.jpg`,patternCount:20,badge:`popular`,season:`winter`,isNew:!1,isPopular:!0},{id:`demo-fastoni`,companyId:``,name:`فاستونی`,title:`کالیته فاستونی`,latinName:`Fastoni`,subtitle:`پارچه‌های مناسب چهار فصل`,imageUrl:`/assets/fastoni-BdaZFVHx.jpg`,patternCount:20,season:`all_season`,isNew:!1,isPopular:!1}];function i(e){return r.find(t=>t.id===e)}function a(e){let t=[`${e.name} ۱۰۱`,`${e.name} ۱۰۲`,`${e.name} ۱۰۳`,`${e.name} ۱۰۴`],n=[`plain`,`melange`,`patterned`,`plain`];return t.map((t,r)=>({id:`${e.id}-${r+1}`,name:t,code:`${e.latinName||e.name}-${101+r}`,categoryId:e.subtitle.includes(`پیراهن`)?`shirt`:e.subtitle.includes(`شلوار`)?`trousers`:`suit`,season:e.season,widthCm:150,composition:`پشم و پلی‌استر`,weaveType:n[r]===`plain`?`ساده`:n[r]===`melange`?`ملانژ`:`طرح‌دار`,colors:[`#111827`,`#6b7280`,`#d6d3d1`,`#1e3a5f`].slice(0,3+r%2),tags:[n[r]===`patterned`?`طرح‌دار`:n[r]===`melange`?`ملانژ`:`ساده`],isNew:r===0,imageUrl:e.imageUrl,subtitle:e.subtitle,rollMeters:50}))}var o={suit:`پارچه‌های کت‌وشلواری`,trousers:`پارچه‌های شلواری`,shirt:`پارچه‌های پیراهنی`};function s(e){let t=e.trim();return t.includes(`کالیته`)?t:`کالیته ${t}`}function c(t){return e(t).replace(/\u064A/g,`ی`).replace(/\u0643/g,`ک`).trim().toLowerCase()}function l(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 u(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 d(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 f(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()].flatMap(([,e])=>{let t=e[0];if(!t)return[];let n=[...new Set(e.flatMap(e=>e.colors.length?e.colors:e.color?[e.color]:[]))],r=n.map(t=>{for(let n of e){let e=n.colors.indexOf(t);if(e>=0&&n.colorImages?.[e])return n.colorImages[e]??void 0}});return{id:t.id,name:t.name,imageUrl:r.find(Boolean)||e.find(e=>e.imageUrl)?.imageUrl,colorCount:Math.max(n.length,e.length),colors:n.slice(0,5),colorImages:r.slice(0,5),kind:d(t),items:e}})}function p(e,t){let n=new Map;for(let e of t){if(!e.catalogId)continue;let t=n.get(e.catalogId)??[];t.push(e),n.set(e.catalogId,t)}let r=e.map(e=>n.get(e.id)?.length??e.productCount??0),i=Math.max(4,[...r].sort((e,t)=>t-e)[Math.floor(e.length/3)]??4);return e.map(e=>{let t=n.get(e.id)??[],r=f(t).length||t.length||e.productCount||0,a=u(t.map(e=>e.categoryId),`suit`),c=u(t.map(e=>e.season),`all_season`),d=t.some(e=>e.isNew),p=r>=i;return{id:e.id,companyId:e.companyId,name:e.name,title:s(e.name),latinName:l(e),subtitle:e.description?.trim()||o[a]||`پارچه‌های منتخب`,code:e.code,imageUrl:e.imageUrl||t.find(e=>e.imageUrl)?.imageUrl,patternCount:r,badge:d?`new`:p?`popular`:void 0,season:c,isNew:d,isPopular:p}})}function m(e,t,n){let r=c(n),i=e.filter(e=>!r||c([e.title,e.name,e.latinName,e.subtitle,e.code??``].join(` `)).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}function h(e){return e.length?(f(e)[0]?.items[0]??e[0])?.id??null:null}async function g(e,r){let o=r?.filter(t=>t.catalogId===e)??[];if(o.length)return h(o);let s=t(),c=n(),l=s.getCatalog(e);if(!l){let t=await s.loadCompanies();await Promise.all(t.map(e=>s.loadCatalogs(e.id))),l=s.getCatalog(e)}if(l){let e=h(await c.loadBrowseProducts({catalogId:l.id,companyId:l.companyId}));if(e)return e}let u=i(e);return u?h(a(u)):null}async function _(e,t,n){let r=await g(t,n);if(r){await e.replace({path:`/product`,query:{id:r}});return}await e.replace({name:`catalogs`})}export{r as i,p as n,m as r,_ as t}; \ No newline at end of file +import{c as e}from"./format-C72AoJ2H.js";import{t}from"./catalog-BHsy1JeE.js";import{t as n}from"./crm-DoYzOa8A.js";var r=[{id:`demo-milano`,companyId:``,name:`میلانو`,title:`کالیته میلانو`,latinName:`Milano`,subtitle:`پارچه‌های کت‌وشلواری`,imageUrl:`/assets/milano-DWfm45LN.jpg`,patternCount:16,badge:`new`,season:`all_season`,isNew:!0,isPopular:!1},{id:`demo-najran`,companyId:``,name:`نجران`,title:`کالیته نجران`,latinName:`Najran`,subtitle:`پارچه‌های پیراهنی`,imageUrl:`/assets/najran-BcpOdgRK.jpg`,patternCount:14,season:`all_season`,isNew:!1,isPopular:!1},{id:`demo-payizeh`,companyId:``,name:`پاییزه`,title:`کالیته پاییزه`,latinName:`Payizeh`,subtitle:`پارچه‌های شلواری`,imageUrl:`/assets/payizeh-CeElyeeF.jpg`,patternCount:18,season:`all_season`,isNew:!1,isPopular:!1},{id:`demo-classic`,companyId:``,name:`کلاسیک`,title:`کالیته کلاسیک`,latinName:`Classic`,subtitle:`پارچه‌های کت‌وشلواری`,imageUrl:`/assets/classic-DiIciTEG.jpg`,patternCount:16,season:`all_season`,isNew:!1,isPopular:!1},{id:`demo-tarhdar`,companyId:``,name:`طرح‌دار`,title:`کالیته طرح‌دار`,latinName:`Tarhdar`,subtitle:`پارچه‌های مجلسی`,imageUrl:`/assets/tarhdar-ryfL3rgV.jpg`,patternCount:20,badge:`popular`,season:`winter`,isNew:!1,isPopular:!0},{id:`demo-fastoni`,companyId:``,name:`فاستونی`,title:`کالیته فاستونی`,latinName:`Fastoni`,subtitle:`پارچه‌های مناسب چهار فصل`,imageUrl:`/assets/fastoni-BdaZFVHx.jpg`,patternCount:20,season:`all_season`,isNew:!1,isPopular:!1}];function i(e){return r.find(t=>t.id===e)}function a(e){let t=[`${e.name} ۱۰۱`,`${e.name} ۱۰۲`,`${e.name} ۱۰۳`,`${e.name} ۱۰۴`],n=[`plain`,`melange`,`patterned`,`plain`];return t.map((t,r)=>({id:`${e.id}-${r+1}`,name:t,code:`${e.latinName||e.name}-${101+r}`,categoryId:e.subtitle.includes(`پیراهن`)?`shirt`:e.subtitle.includes(`شلوار`)?`trousers`:`suit`,season:e.season,widthCm:150,composition:`پشم و پلی‌استر`,weaveType:n[r]===`plain`?`ساده`:n[r]===`melange`?`ملانژ`:`طرح‌دار`,colors:[`#111827`,`#6b7280`,`#d6d3d1`,`#1e3a5f`].slice(0,3+r%2),tags:[n[r]===`patterned`?`طرح‌دار`:n[r]===`melange`?`ملانژ`:`ساده`],isNew:r===0,imageUrl:e.imageUrl,subtitle:e.subtitle,rollMeters:50}))}var o={suit:`پارچه‌های کت‌وشلواری`,trousers:`پارچه‌های شلواری`,shirt:`پارچه‌های پیراهنی`};function s(e){let t=e.trim();return t.includes(`کالیته`)?t:`کالیته ${t}`}function c(t){return e(t).replace(/\u064A/g,`ی`).replace(/\u0643/g,`ک`).trim().toLowerCase()}function l(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 u(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 d(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 f(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()].flatMap(([,e])=>{let t=e[0];if(!t)return[];let n=[...new Set(e.flatMap(e=>e.colors.length?e.colors:e.color?[e.color]:[]))],r=n.map(t=>{for(let n of e){let e=n.colors.indexOf(t);if(e>=0&&n.colorImages?.[e])return n.colorImages[e]??void 0}});return{id:t.id,name:t.name,imageUrl:r.find(Boolean)||e.find(e=>e.imageUrl)?.imageUrl,colorCount:Math.max(n.length,e.length),colors:n.slice(0,5),colorImages:r.slice(0,5),kind:d(t),items:e}})}function p(e,t){let n=new Map;for(let e of t){if(!e.catalogId)continue;let t=n.get(e.catalogId)??[];t.push(e),n.set(e.catalogId,t)}let r=e.map(e=>n.get(e.id)?.length??e.productCount??0),i=Math.max(4,[...r].sort((e,t)=>t-e)[Math.floor(e.length/3)]??4);return e.map(e=>{let t=n.get(e.id)??[],r=f(t).length||t.length||e.productCount||0,a=u(t.map(e=>e.categoryId),`suit`),c=u(t.map(e=>e.season),`all_season`),d=t.some(e=>e.isNew),p=r>=i;return{id:e.id,companyId:e.companyId,name:e.name,title:s(e.name),latinName:l(e),subtitle:e.description?.trim()||o[a]||`پارچه‌های منتخب`,code:e.code,imageUrl:e.imageUrl||t.find(e=>e.imageUrl)?.imageUrl,patternCount:r,badge:d?`new`:p?`popular`:void 0,season:c,isNew:d,isPopular:p}})}function m(e,t,n){let r=c(n),i=e.filter(e=>!r||c([e.title,e.name,e.latinName,e.subtitle,e.code??``].join(` `)).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}function h(e){return e.length?(f(e)[0]?.items[0]??e[0])?.id??null:null}async function g(e,r){let o=r?.filter(t=>t.catalogId===e)??[];if(o.length)return h(o);let s=t(),c=n(),l=s.getCatalog(e);if(!l){let t=await s.loadCompanies();await Promise.all(t.map(e=>s.loadCatalogs(e.id))),l=s.getCatalog(e)}if(l){let e=h(await c.loadBrowseProducts({catalogId:l.id,companyId:l.companyId}));if(e)return e}let u=i(e);return u?h(a(u)):null}async function _(e,t,n){let r=await g(t,n);if(r){await e.replace({path:`/product`,query:{id:r}});return}await e.replace({name:`catalogs`})}export{r as i,p as n,m as r,_ as t}; \ No newline at end of file diff --git a/dist/assets/catalogRequests-DB19-0hk.js b/dist/assets/catalogRequests-Bfg-Nm09.js similarity index 88% rename from dist/assets/catalogRequests-DB19-0hk.js rename to dist/assets/catalogRequests-Bfg-Nm09.js index 5b75262..756daba 100644 --- a/dist/assets/catalogRequests-DB19-0hk.js +++ b/dist/assets/catalogRequests-Bfg-Nm09.js @@ -1 +1 @@ -import{vt as e,w as t}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";import{n,o as r}from"./http-CeONvUNq.js";var i=`ft_catalog_requests`,a={new:`submitted`,approved:`reviewing`,ready_to_ship:`preparing`,delivered:`delivered`,returned:`delivered`,cancelled:`submitted`};function o(){try{let e=localStorage.getItem(i);if(!e)return[];let t=JSON.parse(e);return Array.isArray(t)?t:[]}catch{return[]}}function s(e){localStorage.setItem(i,JSON.stringify(e))}var c={submitted:`ثبت‌شده`,reviewing:`در حال بررسی`,preparing:`آماده‌سازی`,shipped:`ارسال‌شده`,delivered:`تحویل‌شده`,new:`درخواست جدید`,approved:`تأیید شده`,ready_to_ship:`آماده ارسال`,returned:`بازگردانده شده`,cancelled:`لغو شده`};function l(e){return{id:e.id,createdAt:e.createdAt,updatedAt:e.updatedAt,status:a[e.status]??e.status,serverStatus:e.status,note:e.note,items:e.items.map(e=>({productId:e.productId,productName:e.productName,productCode:e.productCode,quantity:e.quantity}))}}var u=r(`catalogRequests`,()=>{let r=e(o()),i=e(!0),a=t(()=>[...r.value].sort((e,t)=>t.createdAt.localeCompare(e.createdAt)));function u(e){return c[e]??e}async function d(){if(!i.value){r.value=o();return}try{let e=await n(`/catalog-requests`);r.value=e.map(l),s(r.value)}catch{i.value=!1,r.value=o()}}async function f(e){let t=e.items.filter(e=>e.productId&&e.quantity>0).map(e=>({...e,quantity:Math.max(1,Math.floor(e.quantity))}));if(!t.length)return{success:!1,message:`حداقل یک قلم با تعداد معتبر لازم است.`};if(i.value)try{let i=l(await n(`/catalog-requests`,{method:`POST`,body:{note:e.note?.trim()||void 0,items:t.map(e=>({productId:e.productId,quantity:e.quantity}))}}));return r.value=[i,...r.value.filter(e=>e.id!==i.id)],s(r.value),{success:!0,request:i}}catch{i.value=!1}let a={id:`cr-${Date.now()}`,createdAt:new Date().toISOString(),status:`submitted`,note:e.note?.trim()||void 0,items:t};return r.value=[a,...r.value],s(r.value),{success:!0,request:a}}function p(e){return r.value.find(t=>t.id===e)??null}return{requests:r,sorted:a,statusLabel:u,create:f,getById:p,hydrate:d}});export{u as t}; \ No newline at end of file +import{c as e,nt as t}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{n,o as r}from"./http-Cmeatq0_.js";var i=`ft_catalog_requests`,a={new:`submitted`,approved:`reviewing`,ready_to_ship:`preparing`,delivered:`delivered`,returned:`delivered`,cancelled:`submitted`};function o(){try{let e=localStorage.getItem(i);if(!e)return[];let t=JSON.parse(e);return Array.isArray(t)?t:[]}catch{return[]}}function s(e){localStorage.setItem(i,JSON.stringify(e))}var c={submitted:`ثبت‌شده`,reviewing:`در حال بررسی`,preparing:`آماده‌سازی`,shipped:`ارسال‌شده`,delivered:`تحویل‌شده`,new:`درخواست جدید`,approved:`تأیید شده`,ready_to_ship:`آماده ارسال`,returned:`بازگردانده شده`,cancelled:`لغو شده`};function l(e){return{id:e.id,createdAt:e.createdAt,updatedAt:e.updatedAt,status:a[e.status]??e.status,serverStatus:e.status,note:e.note,items:e.items.map(e=>({productId:e.productId,productName:e.productName,productCode:e.productCode,quantity:e.quantity}))}}var u=r(`catalogRequests`,()=>{let r=t(o()),i=t(!0),a=e(()=>[...r.value].sort((e,t)=>t.createdAt.localeCompare(e.createdAt)));function u(e){return c[e]??e}async function d(){if(!i.value){r.value=o();return}try{let e=await n(`/catalog-requests`);r.value=e.map(l),s(r.value)}catch{i.value=!1,r.value=o()}}async function f(e){let t=e.items.filter(e=>e.productId&&e.quantity>0).map(e=>({...e,quantity:Math.max(1,Math.floor(e.quantity))}));if(!t.length)return{success:!1,message:`حداقل یک قلم با تعداد معتبر لازم است.`};if(i.value)try{let i=l(await n(`/catalog-requests`,{method:`POST`,body:{note:e.note?.trim()||void 0,items:t.map(e=>({productId:e.productId,quantity:e.quantity}))}}));return r.value=[i,...r.value.filter(e=>e.id!==i.id)],s(r.value),{success:!0,request:i}}catch{i.value=!1}let a={id:`cr-${Date.now()}`,createdAt:new Date().toISOString(),status:`submitted`,note:e.note?.trim()||void 0,items:t};return r.value=[a,...r.value],s(r.value),{success:!0,request:a}}function p(e){return r.value.find(t=>t.id===e)??null}return{requests:r,sorted:a,statusLabel:u,create:f,getById:p,hydrate:d}});export{u as t}; \ No newline at end of file diff --git a/dist/assets/categoryIcons-DNHSoriy.js b/dist/assets/categoryIcons-DNHSoriy.js new file mode 100644 index 0000000..7597467 --- /dev/null +++ b/dist/assets/categoryIcons-DNHSoriy.js @@ -0,0 +1 @@ +import{M as e,f as t,l as n,u as r,v as i}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{t as a}from"./BasicIcon-Bzeb0Iwd.js";import{T as o,k as s,v as c}from"./index-BrjLizie.js";import{t as l}from"./IconDiamond-bOGfMf7j.js";import{t as u}from"./IconLayoutGrid-CTmPrZXE.js";import{t as d}from"./IconShoppingBag-BHoZiOex.js";var f=i({__name:`IconBolt`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(t){return(n,i)=>(e(),r(a,{icon:`vuesax-linear:flash`,size:t.size,"stroke-width":t.strokeWidth,color:t.color},null,8,[`size`,`stroke-width`,`color`]))}}),p=i({__name:`IconFeather`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(t){return(n,i)=>(e(),r(a,{icon:`vuesax-linear:pen-add`,size:t.size,"stroke-width":t.strokeWidth,color:t.color},null,8,[`size`,`stroke-width`,`color`]))}}),m=i({__name:`IconIdCard`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(t){return(n,i)=>(e(),r(a,{icon:`vuesax-linear:personalcard`,size:t.size,"stroke-width":t.strokeWidth,color:t.color},null,8,[`size`,`stroke-width`,`color`]))}}),h=[`width`,`height`],g=[`stroke`,`stroke-width`],_=[`stroke`,`stroke-width`],v=i({__name:`IconShirt`,props:{size:{default:24},color:{default:`currentColor`},strokeWidth:{default:1.5}},setup(r){return(i,a)=>(e(),t(`svg`,{width:r.size,height:r.size,viewBox:`0 0 24 24`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,"aria-hidden":`true`},[n(`path`,{d:`M8.25 5.25 12 7.75l3.75-2.5 2.25 2.75L16 9.5V18.5a1 1 0 0 1-1 1H9a1 1 0 0 1-1-1V9.5L6 8l2.25-2.75Z`,stroke:r.color,"stroke-width":r.strokeWidth,"stroke-linecap":`round`,"stroke-linejoin":`round`},null,8,g),n(`path`,{d:`M12 7.75V18.5`,stroke:r.color,"stroke-width":r.strokeWidth,"stroke-linecap":`round`},null,8,_)],8,h))}}),y=[`width`,`height`],b=[`stroke`,`stroke-width`],x=[`stroke`,`stroke-width`],S=[`stroke`,`stroke-width`],C=[`stroke`,`stroke-width`],w=i({__name:`IconSuit`,props:{size:{default:24},color:{default:`currentColor`},strokeWidth:{default:1.5}},setup(r){return(i,a)=>(e(),t(`svg`,{width:r.size,height:r.size,viewBox:`0 0 24 24`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,"aria-hidden":`true`},[n(`path`,{d:`M7.5 5.5h9l2 3v10.5a1 1 0 0 1-1 1h-11a1 1 0 0 1-1-1V8.5l2-3Z`,stroke:r.color,"stroke-width":r.strokeWidth,"stroke-linecap":`round`,"stroke-linejoin":`round`},null,8,b),n(`path`,{d:`M12 5.5v13`,stroke:r.color,"stroke-width":r.strokeWidth,"stroke-linecap":`round`},null,8,x),n(`path`,{d:`M7.5 9 12 11.75 16.5 9`,stroke:r.color,"stroke-width":r.strokeWidth,"stroke-linecap":`round`,"stroke-linejoin":`round`},null,8,S),n(`path`,{d:`M10.25 5.5V4a1.75 1.75 0 0 1 3.5 0v1.5`,stroke:r.color,"stroke-width":r.strokeWidth,"stroke-linecap":`round`},null,8,C)],8,y))}}),T=[`width`,`height`],E=[`stroke`,`stroke-width`],D=[`stroke`,`stroke-width`],O=[`stroke`,`stroke-width`],k={bolt:f,feather:p,diamond:l,grid:u,bag:d,"id-card":m,catalog:o,headset:c,home:s,shirt:v,suit:w,trousers:i({__name:`IconTrousers`,props:{size:{default:24},color:{default:`currentColor`},strokeWidth:{default:1.5}},setup(r){return(i,a)=>(e(),t(`svg`,{width:r.size,height:r.size,viewBox:`0 0 24 24`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,"aria-hidden":`true`},[n(`path`,{d:`M8 4.5h8v4.25l-1.75 11H13l-1-9.5-1 9.5H7.75L6 8.75V4.5Z`,stroke:r.color,"stroke-width":r.strokeWidth,"stroke-linecap":`round`,"stroke-linejoin":`round`},null,8,E),n(`path`,{d:`M12 8.75v11`,stroke:r.color,"stroke-width":r.strokeWidth,"stroke-linecap":`round`},null,8,D),n(`path`,{d:`M8 7.25h8`,stroke:r.color,"stroke-width":r.strokeWidth,"stroke-linecap":`round`},null,8,O)],8,T))}})},A={shirt:`shirt`,suit:`suit`,trousers:`trousers`};function j(e){return A[e.id]?A[e.id]:e.icon&&k[e.icon]?e.icon:e.icon??`grid`}function M(e,t=l){return e&&k[e]||t}export{j as n,M as t}; \ No newline at end of file diff --git a/dist/assets/categoryIcons-xvNXaT6R.js b/dist/assets/categoryIcons-xvNXaT6R.js deleted file mode 100644 index 8b4dde0..0000000 --- a/dist/assets/categoryIcons-xvNXaT6R.js +++ /dev/null @@ -1 +0,0 @@ -import{E as e,J as t,O as n,P as r,T as i}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";import{t as a}from"./BasicIcon-BXxbbWA_.js";import{T as o,k as s,v as c}from"./index-BAQfYU-Q.js";import{t as l}from"./IconDiamond-R4uguqMC.js";import{t as u}from"./IconLayoutGrid-DTCDTb_O.js";import{t as d}from"./IconShoppingBag-BeSLUxcB.js";var f=r({__name:`IconBolt`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(n){return(r,i)=>(t(),e(a,{icon:`vuesax-linear:flash`,size:n.size,"stroke-width":n.strokeWidth,color:n.color},null,8,[`size`,`stroke-width`,`color`]))}}),p=r({__name:`IconFeather`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(n){return(r,i)=>(t(),e(a,{icon:`vuesax-linear:pen-add`,size:n.size,"stroke-width":n.strokeWidth,color:n.color},null,8,[`size`,`stroke-width`,`color`]))}}),m=r({__name:`IconIdCard`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(n){return(r,i)=>(t(),e(a,{icon:`vuesax-linear:personalcard`,size:n.size,"stroke-width":n.strokeWidth,color:n.color},null,8,[`size`,`stroke-width`,`color`]))}}),h=[`width`,`height`],g=[`stroke`,`stroke-width`],_=[`stroke`,`stroke-width`],v=r({__name:`IconShirt`,props:{size:{default:24},color:{default:`currentColor`},strokeWidth:{default:1.5}},setup(e){return(r,a)=>(t(),n(`svg`,{width:e.size,height:e.size,viewBox:`0 0 24 24`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,"aria-hidden":`true`},[i(`path`,{d:`M8.25 5.25 12 7.75l3.75-2.5 2.25 2.75L16 9.5V18.5a1 1 0 0 1-1 1H9a1 1 0 0 1-1-1V9.5L6 8l2.25-2.75Z`,stroke:e.color,"stroke-width":e.strokeWidth,"stroke-linecap":`round`,"stroke-linejoin":`round`},null,8,g),i(`path`,{d:`M12 7.75V18.5`,stroke:e.color,"stroke-width":e.strokeWidth,"stroke-linecap":`round`},null,8,_)],8,h))}}),y=[`width`,`height`],b=[`stroke`,`stroke-width`],x=[`stroke`,`stroke-width`],S=[`stroke`,`stroke-width`],C=[`stroke`,`stroke-width`],w=r({__name:`IconSuit`,props:{size:{default:24},color:{default:`currentColor`},strokeWidth:{default:1.5}},setup(e){return(r,a)=>(t(),n(`svg`,{width:e.size,height:e.size,viewBox:`0 0 24 24`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,"aria-hidden":`true`},[i(`path`,{d:`M7.5 5.5h9l2 3v10.5a1 1 0 0 1-1 1h-11a1 1 0 0 1-1-1V8.5l2-3Z`,stroke:e.color,"stroke-width":e.strokeWidth,"stroke-linecap":`round`,"stroke-linejoin":`round`},null,8,b),i(`path`,{d:`M12 5.5v13`,stroke:e.color,"stroke-width":e.strokeWidth,"stroke-linecap":`round`},null,8,x),i(`path`,{d:`M7.5 9 12 11.75 16.5 9`,stroke:e.color,"stroke-width":e.strokeWidth,"stroke-linecap":`round`,"stroke-linejoin":`round`},null,8,S),i(`path`,{d:`M10.25 5.5V4a1.75 1.75 0 0 1 3.5 0v1.5`,stroke:e.color,"stroke-width":e.strokeWidth,"stroke-linecap":`round`},null,8,C)],8,y))}}),T=[`width`,`height`],E=[`stroke`,`stroke-width`],D=[`stroke`,`stroke-width`],O=[`stroke`,`stroke-width`],k={bolt:f,feather:p,diamond:l,grid:u,bag:d,"id-card":m,catalog:o,headset:c,home:s,shirt:v,suit:w,trousers:r({__name:`IconTrousers`,props:{size:{default:24},color:{default:`currentColor`},strokeWidth:{default:1.5}},setup(e){return(r,a)=>(t(),n(`svg`,{width:e.size,height:e.size,viewBox:`0 0 24 24`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,"aria-hidden":`true`},[i(`path`,{d:`M8 4.5h8v4.25l-1.75 11H13l-1-9.5-1 9.5H7.75L6 8.75V4.5Z`,stroke:e.color,"stroke-width":e.strokeWidth,"stroke-linecap":`round`,"stroke-linejoin":`round`},null,8,E),i(`path`,{d:`M12 8.75v11`,stroke:e.color,"stroke-width":e.strokeWidth,"stroke-linecap":`round`},null,8,D),i(`path`,{d:`M8 7.25h8`,stroke:e.color,"stroke-width":e.strokeWidth,"stroke-linecap":`round`},null,8,O)],8,T))}})},A={shirt:`shirt`,suit:`suit`,trousers:`trousers`};function j(e){return A[e.id]?A[e.id]:e.icon&&k[e.icon]?e.icon:e.icon??`grid`}function M(e,t=l){return e&&k[e]||t}export{j as n,M as t}; \ No newline at end of file diff --git a/dist/assets/crm-CooNUbmr.js b/dist/assets/crm-DoYzOa8A.js similarity index 96% rename from dist/assets/crm-CooNUbmr.js rename to dist/assets/crm-DoYzOa8A.js index 1781254..b4720ea 100644 --- a/dist/assets/crm-CooNUbmr.js +++ b/dist/assets/crm-DoYzOa8A.js @@ -1 +1 @@ -import{vt as e}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";import{n as t,o as n,t as r}from"./http-CeONvUNq.js";var i=[{id:`trousers`,title:`پارچه‌های شلواری`,subtitle:`مشاهده محصولات`},{id:`suit`,title:`پارچه‌های کت‌شلواری`,subtitle:`مشاهده محصولات`},{id:`shirt`,title:`پارچه‌های پیراهنی`,subtitle:`مشاهده محصولات`}],a=[{id:`summer`,title:`تابستانه`,description:`سبک، خنک و مناسب فصل گرم`},{id:`winter`,title:`زمستانه`,description:`گرم و مناسب فصل سرد`},{id:`all_season`,title:`چهارفصل`,description:`مناسب استفاده در بیشتر فصل‌های سال`}];function o(){return{usage:i,seasons:a}}var s=`سرویس واسطه روی سرور فعال نیست. پس از migrate و deploy سرور دوباره تلاش کنید.`;async function c(e,n){try{return await t(e,n)}catch(e){throw e instanceof r&&(e.status===404||e.status===501)?new r(e.status,s):e}}async function l(){try{return await t(`/catalog/categories`)}catch{try{return await t(`/products/meta/categories`)}catch{return o()}}}async function u(e){return t(`/products`,{query:{activeOnly:!0,categoryId:e?.categoryId,season:e?.season,catalogId:e?.catalogId,companyId:e?.companyId}})}async function d(e){return t(`/banners`,{query:{slot:e}})}async function f(){return c(`/agent/profile`)}async function p(e){return c(`/agent/customers`,{query:e})}async function m(e){return c(`/agent/customers`,{method:`POST`,body:e})}async function h(e,t){return c(`/agent/customers/${e}`,{method:`PATCH`,body:t})}async function g(e){return c(`/agent/customers/${e}`)}async function _(e){return c(`/agent/meetings`,{method:`POST`,body:e})}async function v(e){return c(`/agent/reminders`,{query:{filter:e}})}async function y(e){return c(`/agent/reminders/${e}`)}async function b(e,t=!0){return c(`/agent/reminders/${e}/complete`,{method:`PATCH`,body:{completed:t}})}async function x(e){return c(`/agent/reminders`,{method:`POST`,body:e})}function S(e){return{id:e.id,name:e.name,code:e.code,categoryId:e.categoryId||e.usageCategory||`other`,season:e.season||`all_season`,widthCm:e.widthCm??150,composition:e.composition??``,weightGrams:e.weightGrams,weaveType:e.weaveType,colors:e.colors?.length?e.colors:[`#6b7280`],colorImages:e.colorImages,tags:e.tags??[],isNew:!!e.isNew,imageUrl:e.imageUrl||e.colorImages?.find(Boolean)||e.imageUrls?.[0],imageUrls:e.imageUrls,subtitle:e.subtitle,rollMeters:e.rollMeters??50,companyId:e.companyId,catalogId:e.catalogId,catalogCode:e.catalogCode,catalogName:e.catalogName,color:e.color,minMeterage:e.minMeterage??30,orderMultiplier:e.orderMultiplier??10,basePrice:e.basePrice??void 0}}var C=n(`crm`,()=>{let n=e(!1),r=e(null),i=e(null),a=e([]),o=e([]),s=e([]),c=e([]),d=e([]);async function C(){let e=await l();return s.value=e.usage,c.value=e.seasons,e}async function w(e){let t=await u(e);return d.value=t.map(S),d.value}async function T(e){return S(await t(`/products/${e}`))}async function E(){return i.value=await f(),i.value}async function D(e){return a.value=await p(e),a.value}async function O(e){return await g(e)}async function k(e){return _(e)}async function A(e){return m(e)}async function j(e,t){return h(e,t)}async function M(e){return o.value=await v(e),o.value}async function N(e){return y(e)}async function P(e){return b(e,!0)}async function F(e){return x(e)}return{loading:n,error:r,agentProfile:i,customers:a,reminders:o,usageCategories:s,seasonCategories:c,browseProducts:d,loadCategories:C,loadBrowseProducts:w,loadProductById:T,loadAgentProfile:E,loadCustomers:D,loadCustomerDetail:O,submitMeeting:k,registerCustomer:A,updateCustomer:j,loadReminders:M,loadReminderDetail:N,markReminderComplete:P,createReminder:F}});export{a,v as i,f as n,i as o,d as r,C as t}; \ No newline at end of file +import{nt as e}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{n as t,o as n,t as r}from"./http-Cmeatq0_.js";var i=[{id:`trousers`,title:`پارچه‌های شلواری`,subtitle:`مشاهده محصولات`},{id:`suit`,title:`پارچه‌های کت‌شلواری`,subtitle:`مشاهده محصولات`},{id:`shirt`,title:`پارچه‌های پیراهنی`,subtitle:`مشاهده محصولات`}],a=[{id:`summer`,title:`تابستانه`,description:`سبک، خنک و مناسب فصل گرم`},{id:`winter`,title:`زمستانه`,description:`گرم و مناسب فصل سرد`},{id:`all_season`,title:`چهارفصل`,description:`مناسب استفاده در بیشتر فصل‌های سال`}];function o(){return{usage:i,seasons:a}}var s=`سرویس واسطه روی سرور فعال نیست. پس از migrate و deploy سرور دوباره تلاش کنید.`;async function c(e,n){try{return await t(e,n)}catch(e){throw e instanceof r&&(e.status===404||e.status===501)?new r(e.status,s):e}}async function l(){try{return await t(`/catalog/categories`)}catch{try{return await t(`/products/meta/categories`)}catch{return o()}}}async function u(e){return t(`/products`,{query:{activeOnly:!0,categoryId:e?.categoryId,season:e?.season,catalogId:e?.catalogId,companyId:e?.companyId}})}async function d(e){return t(`/banners`,{query:{slot:e}})}async function f(){return c(`/agent/profile`)}async function p(e){return c(`/agent/customers`,{query:e})}async function m(e){return c(`/agent/customers`,{method:`POST`,body:e})}async function h(e,t){return c(`/agent/customers/${e}`,{method:`PATCH`,body:t})}async function g(e){return c(`/agent/customers/${e}`)}async function _(e){return c(`/agent/meetings`,{method:`POST`,body:e})}async function v(e){return c(`/agent/reminders`,{query:{filter:e}})}async function y(e){return c(`/agent/reminders/${e}`)}async function b(e,t=!0){return c(`/agent/reminders/${e}/complete`,{method:`PATCH`,body:{completed:t}})}async function x(e){return c(`/agent/reminders`,{method:`POST`,body:e})}function S(e){return{id:e.id,name:e.name,code:e.code,categoryId:e.categoryId||e.usageCategory||`other`,season:e.season||`all_season`,widthCm:e.widthCm??150,composition:e.composition??``,weightGrams:e.weightGrams,weaveType:e.weaveType,colors:e.colors?.length?e.colors:[`#6b7280`],colorImages:e.colorImages,tags:e.tags??[],isNew:!!e.isNew,imageUrl:e.imageUrl||e.colorImages?.find(Boolean)||e.imageUrls?.[0],imageUrls:e.imageUrls,subtitle:e.subtitle,rollMeters:e.rollMeters??50,companyId:e.companyId,catalogId:e.catalogId,catalogCode:e.catalogCode,catalogName:e.catalogName,color:e.color,minMeterage:e.minMeterage??30,orderMultiplier:e.orderMultiplier??10,basePrice:e.basePrice??void 0}}var C=n(`crm`,()=>{let n=e(!1),r=e(null),i=e(null),a=e([]),o=e([]),s=e([]),c=e([]),d=e([]);async function C(){let e=await l();return s.value=e.usage,c.value=e.seasons,e}async function w(e){let t=await u(e);return d.value=t.map(S),d.value}async function T(e){return S(await t(`/products/${e}`))}async function E(){return i.value=await f(),i.value}async function D(e){return a.value=await p(e),a.value}async function O(e){return await g(e)}async function k(e){return _(e)}async function A(e){return m(e)}async function j(e,t){return h(e,t)}async function M(e){return o.value=await v(e),o.value}async function N(e){return y(e)}async function P(e){return b(e,!0)}async function F(e){return x(e)}return{loading:n,error:r,agentProfile:i,customers:a,reminders:o,usageCategories:s,seasonCategories:c,browseProducts:d,loadCategories:C,loadBrowseProducts:w,loadProductById:T,loadAgentProfile:E,loadCustomers:D,loadCustomerDetail:O,submitMeeting:k,registerCustomer:A,updateCustomer:j,loadReminders:M,loadReminderDetail:N,markReminderComplete:P,createReminder:F}});export{a,v as i,f as n,i as o,d as r,C as t}; \ No newline at end of file diff --git a/dist/assets/dist-2yEcZq4e.js b/dist/assets/dist-2yEcZq4e.js deleted file mode 100644 index 6154321..0000000 --- a/dist/assets/dist-2yEcZq4e.js +++ /dev/null @@ -1 +0,0 @@ -import{Et as e,F as t,G as n,H as r,Tt as i,at as a,ot as o,vt as s,w as c,xt as l,z as u}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";import{a as d,c as f,d as p,f as m,i as h,n as g,o as _,r as v,s as y,t as b}from"./dist-nK9ByyUG.js";var x=g?window:void 0;g&&window.document,g&&window.navigator,g&&window.location;function S(e){let t=i(e);return t?.$el??t}function C(...t){let n=(e,t,n,r)=>(e.addEventListener(t,n,r),()=>e.removeEventListener(t,n,r)),r=c(()=>{let e=y(i(t[0])).filter(e=>e!=null);return e.every(e=>typeof e!=`string`)?e:void 0});return p(()=>[r.value?.map(e=>S(e))??[x].filter(e=>e!=null),y(i(r.value?t[1]:t[0])),y(e(r.value?t[2]:t[1])),i(r.value?t[3]:t[2])],([e,t,r,i],a,o)=>{if(!e?.length||!t?.length||!r?.length)return;let s=h(i)?{...i}:i,c=e.flatMap(e=>t.flatMap(t=>r.map(r=>n(e,t,r,s))));o(()=>{c.forEach(e=>e())})},{flush:`post`})}var w=!1;function T(e,t,n={}){let{window:r=x,ignore:a=[],capture:o=!0,detectIframe:s=!1,controls:c=!1}=n;if(!r)return c?{stop:d,cancel:d,trigger:d}:d;if(v&&!w){w=!0;let e={passive:!0};Array.from(r.document.body.children).forEach(t=>t.addEventListener(`click`,d,e)),r.document.documentElement.addEventListener(`click`,d,e)}let l=!0,u=e=>i(a).some(t=>{if(typeof t==`string`)return Array.from(r.document.querySelectorAll(t)).some(t=>t===e.target||e.composedPath().includes(t));{let n=S(t);return n&&(e.target===n||e.composedPath().includes(n))}});function f(e){let t=i(e);return t&&t.$.subTree.shapeFlag===16}function p(e,t){let n=i(e),r=n.$.subTree&&n.$.subTree.children;return r==null||!Array.isArray(r)?!1:r.some(e=>e.el===t.target||t.composedPath().includes(e.el))}let m=n=>{let r=S(e);if(n.target!=null&&!(!(r instanceof Element)&&f(e)&&p(e,n))&&!(!r||r===n.target||n.composedPath().includes(r))){if(`detail`in n&&n.detail===0&&(l=!u(n)),!l){l=!0;return}t(n)}},h=!1,g=[C(r,`click`,e=>{h||(h=!0,setTimeout(()=>{h=!1},0),m(e))},{passive:!0,capture:o}),C(r,`pointerdown`,t=>{let n=S(e);l=!u(t)&&!!(n&&!t.composedPath().includes(n))},{passive:!0}),s&&C(r,`blur`,n=>{setTimeout(()=>{let i=S(e),a=r.document.activeElement;for(;a?.shadowRoot;)a=a.shadowRoot.activeElement;a?.tagName===`IFRAME`&&!i?.contains(r.document.activeElement)&&t(n)},0)},{passive:!0})].filter(Boolean),_=()=>g.forEach(e=>e());return c?{stop:_,cancel:()=>{l=!1},trigger:e=>{l=!0,m(e),l=!1}}:_}function E(){let e=l(!1),r=t();return r&&n(()=>{e.value=!0},r),e}function D(e){let t=E();return c(()=>(t.value,!!e()))}var O=Symbol(`vueuse-ssr-width`);function k(){let e=u()?b(O,null):null;return typeof e==`number`?e:void 0}function A(e,t={}){let{window:n=x,ssrWidth:r=k()}=t,a=D(()=>n&&`matchMedia`in n&&typeof n.matchMedia==`function`),s=l(typeof r==`number`),u=l(),d=l(!1);return o(()=>{if(s.value){s.value=!a.value;let t=i(e).split(`,`);d.value=t.some(e=>{let t=e.includes(`not all`),n=e.match(/\(\s*min-width:\s*(-?\d+(?:\.\d*)?[a-z]+\s*)\)/),i=e.match(/\(\s*max-width:\s*(-?\d+(?:\.\d*)?[a-z]+\s*)\)/),a=!!(n||i);return n&&a&&(a=r>=_(n[1])),i&&a&&(a=r<=_(i[1])),t?!a:a});return}a.value&&(u.value=n.matchMedia(i(e)),d.value=u.value.matches)}),C(u,`change`,e=>{d.value=e.matches},{passive:!0}),c(()=>d.value)}var j=typeof globalThis<`u`?globalThis:typeof window<`u`?window:typeof global<`u`?global:typeof self<`u`?self:{},M=`__vueuse_ssr_handlers__`,N=P();function P(){return M in j||(j[M]=j[M]||{}),j[M]}function F(e,t){return N[e]||t}function I(e){return A(`(prefers-color-scheme: dark)`,e)}function L(e){return e==null?`any`:e instanceof Set?`set`:e instanceof Map?`map`:e instanceof Date?`date`:typeof e==`boolean`?`boolean`:typeof e==`string`?`string`:typeof e==`object`?`object`:Number.isNaN(e)?`any`:`number`}var R={boolean:{read:e=>e===`true`,write:e=>String(e)},object:{read:e=>JSON.parse(e),write:e=>JSON.stringify(e)},number:{read:e=>Number.parseFloat(e),write:e=>String(e)},any:{read:e=>e,write:e=>String(e)},string:{read:e=>e,write:e=>String(e)},map:{read:e=>new Map(JSON.parse(e)),write:e=>JSON.stringify(Array.from(e.entries()))},set:{read:e=>new Set(JSON.parse(e)),write:e=>JSON.stringify(Array.from(e))},date:{read:e=>new Date(e),write:e=>e.toISOString()}},z=`vueuse-storage`;function B(e,t,n,o={}){let{flush:u=`pre`,deep:d=!0,listenToStorageChanges:p=!0,writeDefaults:h=!0,mergeDefaults:g=!1,shallow:_,window:v=x,eventFilter:y,onError:b=e=>{console.error(e)},initOnMounted:S}=o,w=(_?l:s)(typeof t==`function`?t():t),T=c(()=>i(e));if(!n)try{n=F(`getDefaultStorage`,()=>x?.localStorage)()}catch(e){b(e)}if(!n)return w;let E=i(t),D=L(E),O=o.serializer??R[D],{pause:k,resume:A}=m(w,e=>N(e),{flush:u,deep:d,eventFilter:y});a(T,()=>I(),{flush:u});let j=!1;v&&p&&(n instanceof Storage?C(v,`storage`,e=>{S&&!j||I(e)},{passive:!0}):C(v,z,e=>{S&&!j||B(e)})),S?f(()=>{j=!0,I()}):I();function M(e,t){if(v){let r={key:T.value,oldValue:e,newValue:t,storageArea:n};v.dispatchEvent(n instanceof Storage?new StorageEvent(`storage`,r):new CustomEvent(z,{detail:r}))}}function N(e){try{let t=n.getItem(T.value);if(e==null)M(t,null),n.removeItem(T.value);else{let r=O.write(e);t!==r&&(n.setItem(T.value,r),M(t,r))}}catch(e){b(e)}}function P(e){let t=e?e.newValue:n.getItem(T.value);if(t==null)return h&&E!=null&&n.setItem(T.value,O.write(E)),E;if(!e&&g){let e=O.read(t);return typeof g==`function`?g(e,E):D===`object`&&!Array.isArray(e)?{...E,...e}:e}return typeof t==`string`?O.read(t):t}function I(e){if(!(e&&e.storageArea!==n)){if(e&&e.key==null){w.value=E;return}if(!(e&&e.key!==T.value)){k();try{let t=O.write(w.value);(e===void 0||e?.newValue!==t)&&(w.value=P(e))}catch(e){b(e)}finally{e?r(A):A()}}}}function B(e){I(e.detail)}return w}export{B as i,A as n,I as r,T as t}; \ No newline at end of file diff --git a/dist/assets/dist-Bc4P4ngC.js b/dist/assets/dist-Bc4P4ngC.js new file mode 100644 index 0000000..d9ff860 --- /dev/null +++ b/dist/assets/dist-Bc4P4ngC.js @@ -0,0 +1 @@ +import{C as e,E as t,U as n,W as r,at as i,c as a,k as o,lt as s,nt as c,ut as l,y as u}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{a as d,c as f,d as p,f as m,i as h,n as g,o as _,r as v,s as y,t as b}from"./dist-U-AqZ6hP.js";var x=g?window:void 0;g&&window.document,g&&window.navigator,g&&window.location;function S(e){let t=s(e);return t?.$el??t}function C(...e){let t=(e,t,n,r)=>(e.addEventListener(t,n,r),()=>e.removeEventListener(t,n,r)),n=a(()=>{let t=y(s(e[0])).filter(e=>e!=null);return t.every(e=>typeof e!=`string`)?t:void 0});return p(()=>[n.value?.map(e=>S(e))??[x].filter(e=>e!=null),y(s(n.value?e[1]:e[0])),y(l(n.value?e[2]:e[1])),s(n.value?e[3]:e[2])],([e,n,r,i],a,o)=>{if(!e?.length||!n?.length||!r?.length)return;let s=h(i)?{...i}:i,c=e.flatMap(e=>n.flatMap(n=>r.map(r=>t(e,n,r,s))));o(()=>{c.forEach(e=>e())})},{flush:`post`})}var w=!1;function T(e,t,n={}){let{window:r=x,ignore:i=[],capture:a=!0,detectIframe:o=!1,controls:c=!1}=n;if(!r)return c?{stop:d,cancel:d,trigger:d}:d;if(v&&!w){w=!0;let e={passive:!0};Array.from(r.document.body.children).forEach(t=>t.addEventListener(`click`,d,e)),r.document.documentElement.addEventListener(`click`,d,e)}let l=!0,u=e=>s(i).some(t=>{if(typeof t==`string`)return Array.from(r.document.querySelectorAll(t)).some(t=>t===e.target||e.composedPath().includes(t));{let n=S(t);return n&&(e.target===n||e.composedPath().includes(n))}});function f(e){let t=s(e);return t&&t.$.subTree.shapeFlag===16}function p(e,t){let n=s(e),r=n.$.subTree&&n.$.subTree.children;return r==null||!Array.isArray(r)?!1:r.some(e=>e.el===t.target||t.composedPath().includes(e.el))}let m=n=>{let r=S(e);if(n.target!=null&&!(!(r instanceof Element)&&f(e)&&p(e,n))&&!(!r||r===n.target||n.composedPath().includes(r))){if(`detail`in n&&n.detail===0&&(l=!u(n)),!l){l=!0;return}t(n)}},h=!1,g=[C(r,`click`,e=>{h||(h=!0,setTimeout(()=>{h=!1},0),m(e))},{passive:!0,capture:a}),C(r,`pointerdown`,t=>{let n=S(e);l=!u(t)&&!!(n&&!t.composedPath().includes(n))},{passive:!0}),o&&C(r,`blur`,n=>{setTimeout(()=>{let i=S(e),a=r.document.activeElement;for(;a?.shadowRoot;)a=a.shadowRoot.activeElement;a?.tagName===`IFRAME`&&!i?.contains(r.document.activeElement)&&t(n)},0)},{passive:!0})].filter(Boolean),_=()=>g.forEach(e=>e());return c?{stop:_,cancel:()=>{l=!1},trigger:e=>{l=!0,m(e),l=!1}}:_}function E(){let e=i(!1),t=u();return t&&o(()=>{e.value=!0},t),e}function D(e){let t=E();return a(()=>(t.value,!!e()))}var O=Symbol(`vueuse-ssr-width`);function k(){let t=e()?b(O,null):null;return typeof t==`number`?t:void 0}function A(e,t={}){let{window:n=x,ssrWidth:o=k()}=t,c=D(()=>n&&`matchMedia`in n&&typeof n.matchMedia==`function`),l=i(typeof o==`number`),u=i(),d=i(!1);return r(()=>{if(l.value){l.value=!c.value;let t=s(e).split(`,`);d.value=t.some(e=>{let t=e.includes(`not all`),n=e.match(/\(\s*min-width:\s*(-?\d+(?:\.\d*)?[a-z]+\s*)\)/),r=e.match(/\(\s*max-width:\s*(-?\d+(?:\.\d*)?[a-z]+\s*)\)/),i=!!(n||r);return n&&i&&(i=o>=_(n[1])),r&&i&&(i=o<=_(r[1])),t?!i:i});return}c.value&&(u.value=n.matchMedia(s(e)),d.value=u.value.matches)}),C(u,`change`,e=>{d.value=e.matches},{passive:!0}),a(()=>d.value)}var j=typeof globalThis<`u`?globalThis:typeof window<`u`?window:typeof global<`u`?global:typeof self<`u`?self:{},M=`__vueuse_ssr_handlers__`,N=P();function P(){return M in j||(j[M]=j[M]||{}),j[M]}function F(e,t){return N[e]||t}function I(e){return A(`(prefers-color-scheme: dark)`,e)}function L(e){return e==null?`any`:e instanceof Set?`set`:e instanceof Map?`map`:e instanceof Date?`date`:typeof e==`boolean`?`boolean`:typeof e==`string`?`string`:typeof e==`object`?`object`:Number.isNaN(e)?`any`:`number`}var R={boolean:{read:e=>e===`true`,write:e=>String(e)},object:{read:e=>JSON.parse(e),write:e=>JSON.stringify(e)},number:{read:e=>Number.parseFloat(e),write:e=>String(e)},any:{read:e=>e,write:e=>String(e)},string:{read:e=>e,write:e=>String(e)},map:{read:e=>new Map(JSON.parse(e)),write:e=>JSON.stringify(Array.from(e.entries()))},set:{read:e=>new Set(JSON.parse(e)),write:e=>JSON.stringify(Array.from(e))},date:{read:e=>new Date(e),write:e=>e.toISOString()}},z=`vueuse-storage`;function B(e,r,o,l={}){let{flush:u=`pre`,deep:d=!0,listenToStorageChanges:p=!0,writeDefaults:h=!0,mergeDefaults:g=!1,shallow:_,window:v=x,eventFilter:y,onError:b=e=>{console.error(e)},initOnMounted:S}=l,w=(_?i:c)(typeof r==`function`?r():r),T=a(()=>s(e));if(!o)try{o=F(`getDefaultStorage`,()=>x?.localStorage)()}catch(e){b(e)}if(!o)return w;let E=s(r),D=L(E),O=l.serializer??R[D],{pause:k,resume:A}=m(w,e=>N(e),{flush:u,deep:d,eventFilter:y});n(T,()=>I(),{flush:u});let j=!1;v&&p&&(o instanceof Storage?C(v,`storage`,e=>{S&&!j||I(e)},{passive:!0}):C(v,z,e=>{S&&!j||B(e)})),S?f(()=>{j=!0,I()}):I();function M(e,t){if(v){let n={key:T.value,oldValue:e,newValue:t,storageArea:o};v.dispatchEvent(o instanceof Storage?new StorageEvent(`storage`,n):new CustomEvent(z,{detail:n}))}}function N(e){try{let t=o.getItem(T.value);if(e==null)M(t,null),o.removeItem(T.value);else{let n=O.write(e);t!==n&&(o.setItem(T.value,n),M(t,n))}}catch(e){b(e)}}function P(e){let t=e?e.newValue:o.getItem(T.value);if(t==null)return h&&E!=null&&o.setItem(T.value,O.write(E)),E;if(!e&&g){let e=O.read(t);return typeof g==`function`?g(e,E):D===`object`&&!Array.isArray(e)?{...E,...e}:e}return typeof t==`string`?O.read(t):t}function I(e){if(!(e&&e.storageArea!==o)){if(e&&e.key==null){w.value=E;return}if(!(e&&e.key!==T.value)){k();try{let t=O.write(w.value);(e===void 0||e?.newValue!==t)&&(w.value=P(e))}catch(e){b(e)}finally{e?t(A):A()}}}}function B(e){I(e.detail)}return w}export{B as i,A as n,I as r,T as t}; \ No newline at end of file diff --git a/dist/assets/dist-U-AqZ6hP.js b/dist/assets/dist-U-AqZ6hP.js new file mode 100644 index 0000000..fb44cf5 --- /dev/null +++ b/dist/assets/dist-U-AqZ6hP.js @@ -0,0 +1 @@ +import{$ as e,C as t,E as n,U as r,Y as i,Z as a,at as o,it as s,k as c,lt as l,nt as u,q as d,st as f,tt as p,w as m,y as h}from"./_plugin-vue_export-helper-1xMDlcEE.js";function g(t,n){return i()?(e(t,n),!0):!1}var _=new WeakMap,v=(...e)=>{let n=e[0],r=h()?.proxy??i();if(r==null&&!t())throw Error(`injectLocal must be called in setup`);return r&&_.has(r)&&n in _.get(r)?_.get(r)[n]:m(...e)},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 f(...e);let t=e[0];return typeof t==`function`?p(d(()=>({get:t,set:S}))):u(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:s(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:i=D,...a}=n;return r(e,E(i,t),a)}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,t=!0,r){j(r)?c(e,r):t?e():n(e)}function F(e,t=1e3,n={}){let{immediate:i=!0,immediateCallback:c=!1}=n,u=null,d=o(!1);function f(){u&&=(clearInterval(u),null)}function p(){d.value=!1,f()}function m(){let n=l(t);n<=0||(d.value=!0,c&&e(),f(),d.value&&(u=setInterval(e,n)))}return i&&y&&m(),(a(t)||typeof t==`function`)&&g(r(t,()=>{d.value&&y&&m()})),g(p),{isActive:s(d),pause:p,resume:m}}function I(e,t,n={}){let{immediate:r=!0,immediateCallback:i=!1}=n,a=o(!1),c;function u(){c&&=(clearTimeout(c),void 0)}function d(){a.value=!1,u()}function f(...n){i&&e(),u(),a.value=!0,c=setTimeout(()=>{a.value=!1,c=void 0,e(...n)},l(t))}return r&&(a.value=!0,y&&f()),g(d),{isPending:s(a),start:f,stop:d}}function L(e,t,n){return r(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}; \ No newline at end of file diff --git a/dist/assets/dist-nK9ByyUG.js b/dist/assets/dist-nK9ByyUG.js deleted file mode 100644 index 48c34fa..0000000 --- a/dist/assets/dist-nK9ByyUG.js +++ /dev/null @@ -1 +0,0 @@ -import{B as e,Ct as t,F as n,G as r,H as i,Tt as a,_t as o,at as s,bt as c,dt as l,ht as u,lt as d,pt as f,vt as p,xt as m,z as h}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";function g(e,t){return l()?(u(e,t),!0):!1}var _=new WeakMap,v=(...t)=>{let r=t[0],i=n()?.proxy??l();if(i==null&&!h())throw Error(`injectLocal must be called in setup`);return i&&_.has(i)&&r in _.get(i)?_.get(i)[r]:e(...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 t(...e);let n=e[0];return typeof n==`function`?o(d(()=>({get:n,set:S}))):p(n)}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:c(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||n()}function M(e,t,n={}){let{eventFilter:r=D,...i}=n;return s(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,t=!0,n){j(n)?r(e,n):t?e():i(e)}function F(e,t=1e3,n={}){let{immediate:r=!0,immediateCallback:i=!1}=n,o=null,l=m(!1);function u(){o&&=(clearInterval(o),null)}function d(){l.value=!1,u()}function p(){let n=a(t);n<=0||(l.value=!0,i&&e(),u(),l.value&&(o=setInterval(e,n)))}return r&&y&&p(),(f(t)||typeof t==`function`)&&g(s(t,()=>{l.value&&y&&p()})),g(d),{isActive:c(l),pause:d,resume:p}}function I(e,t,n={}){let{immediate:r=!0,immediateCallback:i=!1}=n,o=m(!1),s;function l(){s&&=(clearTimeout(s),void 0)}function u(){o.value=!1,l()}function d(...n){i&&e(),l(),o.value=!0,s=setTimeout(()=>{o.value=!1,s=void 0,e(...n)},a(t))}return r&&(o.value=!0,y&&d()),g(u),{isPending:c(o),start:d,stop:u}}function L(e,t,n){return s(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}; \ No newline at end of file diff --git a/dist/assets/http-CeONvUNq.js b/dist/assets/http-CeONvUNq.js deleted file mode 100644 index 8e1fc15..0000000 --- a/dist/assets/http-CeONvUNq.js +++ /dev/null @@ -1 +0,0 @@ -import{B as e,Ct as t,H as n,St as r,at as i,dt as a,ft as o,gt as s,ht as c,mt as l,pt as u,ut as d,vt as f,w as p,wt as m,z as h}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";var g=typeof window<`u`,_,v=e=>_=e,y=Symbol();function b(e){return e&&typeof e==`object`&&Object.prototype.toString.call(e)===`[object Object]`&&typeof e.toJSON!=`function`}var x=typeof window==`object`&&window.window===window?window:typeof self==`object`&&self.self===self?self:typeof global==`object`&&global.global===global?global:typeof globalThis==`object`?globalThis:{HTMLElement:null};function S(e,{autoBom:t=!1}={}){return t&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(e.type)?new Blob([``,e],{type:e.type}):e}function C(e,t,n){let r=new XMLHttpRequest;r.open(`GET`,e),r.responseType=`blob`,r.onload=function(){O(r.response,t,n)},r.onerror=function(){console.error(`could not download file`)},r.send()}function w(e){let t=new XMLHttpRequest;t.open(`HEAD`,e,!1);try{t.send()}catch{}return t.status>=200&&t.status<=299}function T(e){try{e.dispatchEvent(new MouseEvent(`click`))}catch{let t=new MouseEvent(`click`,{bubbles:!0,cancelable:!0,view:window,detail:0,screenX:80,screenY:20,clientX:80,clientY:20,ctrlKey:!1,altKey:!1,shiftKey:!1,metaKey:!1,button:0,relatedTarget:null});e.dispatchEvent(t)}}var E=typeof navigator==`object`?navigator:{userAgent:``},D=/Macintosh/.test(E.userAgent)&&/AppleWebKit/.test(E.userAgent)&&!/Safari/.test(E.userAgent),O=g?typeof HTMLAnchorElement<`u`&&`download`in HTMLAnchorElement.prototype&&!D?k:`msSaveOrOpenBlob`in E?A:j:()=>{};function k(e,t=`download`,n){let r=document.createElement(`a`);r.download=t,r.rel=`noopener`,typeof e==`string`?(r.href=e,r.origin===location.origin?T(r):w(r.href)?C(e,t,n):(r.target=`_blank`,T(r))):(r.href=URL.createObjectURL(e),setTimeout(function(){URL.revokeObjectURL(r.href)},4e4),setTimeout(function(){T(r)},0))}function A(e,t=`download`,n){if(typeof e==`string`)if(w(e))C(e,t,n);else{let t=document.createElement(`a`);t.href=e,t.target=`_blank`,setTimeout(function(){T(t)})}else navigator.msSaveOrOpenBlob(S(e,n),t)}function j(e,t,n,r){if(r||=open(``,`_blank`),r&&(r.document.title=r.document.body.innerText=`downloading...`),typeof e==`string`)return C(e,t,n);let i=e.type===`application/octet-stream`,a=/constructor/i.test(String(x.HTMLElement))||`safari`in x,o=/CriOS\/[\d]+/.test(navigator.userAgent);if((o||i&&a||D)&&typeof FileReader<`u`){let t=new FileReader;t.onloadend=function(){let e=t.result;if(typeof e!=`string`)throw r=null,Error(`Wrong reader.result type`);e=o?e:e.replace(/^data:[^;]*;/,`data:attachment/file;`),r?r.location.href=e:location.assign(e),r=null},t.readAsDataURL(e)}else{let t=URL.createObjectURL(e);r?r.location.assign(t):location.href=t,r=null,setTimeout(function(){URL.revokeObjectURL(t)},4e4)}}var{assign:ee}=Object;function M(){let e=d(!0),t=e.run(()=>f({})),n=[],r=[],i=l({install(e){v(i),i._a=e,e.provide(y,i),e.config.globalProperties.$pinia=i,r.forEach(e=>n.push(e)),r=[]},use(e){return this._a?n.push(e):r.push(e),this},_p:n,_a:null,_e:e,_s:new Map,state:t});return i}var N=()=>{};function P(e,t,n,r=N){e.add(t);let i=()=>{e.delete(t)&&r()};return!n&&a()&&c(i),i}function F(e,...t){e.forEach(e=>{e(...t)})}var I=e=>e(),L=Symbol(),R=Symbol();function z(e,t){e instanceof Map&&t instanceof Map?t.forEach((t,n)=>e.set(n,t)):e instanceof Set&&t instanceof Set&&t.forEach(e.add,e);for(let n in t){if(!Object.hasOwn(t,n))continue;let r=t[n],i=e[n];e[n]=b(i)&&b(r)&&Object.hasOwn(e,n)&&!u(r)&&!o(r)?z(i,r):r}return e}var B=Symbol();function V(e){return!e||typeof e!=`object`||!Object.hasOwn(e,B)}var{assign:H}=Object;function U(e){return!!(u(e)&&e.effect)}function W(e,t,n,r){let{state:i,actions:a,getters:o}=t,s=n.state.value[e],c;function u(){return s||(n.state.value[e]=i?i():{}),H(m(n.state.value[e]),a,Object.keys(o||{}).reduce((t,r)=>(t[r]=l(p(()=>{v(n);let t=n._s.get(e);return o[r].call(t,t)})),t),{}))}return c=G(e,u,t,n,r,!0),c}function G(e,t,a={},c,l,f){let p,m=H({actions:{}},a),h={deep:!0},g,_,y=new Set,b=new Set,x,S=c.state.value[e];!f&&!S&&(c.state.value[e]={});let C;function w(t){let r;g=_=!1,typeof t==`function`?(t(c.state.value[e]),r={type:`patch function`,storeId:e,events:x}):(z(c.state.value[e],t),r={type:`patch object`,payload:t,storeId:e,events:x});let i=C=Symbol();n().then(()=>{C===i&&(g=!0)}),_=!0,F(y,r,c.state.value[e])}let T=f?function(){let{state:e}=a,t=e?e():{};this.$patch(e=>{H(e,t)})}:N;function E(){p.stop(),y.clear(),b.clear(),c._s.delete(e)}let D=(t,n=``)=>{if(L in t)return t[R]=n,t;let r=function(){v(c);let n=Array.from(arguments),i=new Set,a=new Set;function o(e){i.add(e)}function s(e){a.add(e)}F(b,{args:n,name:r[R],store:k,after:o,onError:s});let l;try{l=t.apply(this&&this.$id===e?this:k,n)}catch(e){throw F(a,e),e}return l instanceof Promise?l.then(e=>(F(i,e),e)).catch(e=>(F(a,e),Promise.reject(e))):(F(i,l),l)};return r[L]=!0,r[R]=n,r},O={_p:c,$id:e,$onAction:P.bind(null,b),$patch:w,$reset:T,$subscribe(t,n={}){if(y.has(t))return N;let r=P(y,t,n.detached,()=>a()),a=p.run(()=>i(()=>c.state.value[e],r=>{(n.flush===`sync`?_:g)&&t({storeId:e,type:`direct`,events:x},r)},H({},h,n)));return r},$dispose:E},k=s(O);c._s.set(e,k);let A=(c._a&&c._a.runWithContext||I)(()=>c._e.run(()=>(p=d()).run(()=>t({action:D}))));for(let t in A){let n=A[t];u(n)&&!U(n)||o(n)?f||(S&&V(n)&&(u(n)?n.value=S[t]:z(n,S[t])),c.state.value[e][t]=n):typeof n==`function`&&(A[t]=D(n,t),m.actions[t]=n)}return H(k,A),H(r(k),A),Object.defineProperty(k,"$state",{get:()=>c.state.value[e],set:e=>{w(t=>{H(t,e)})}}),c._p.forEach(e=>{let t=p.run(()=>e({store:k,app:c._a,pinia:c,options:m}));H(k,t)}),S&&f&&a.hydrate&&a.hydrate(k.$state,S),g=!0,_=!0,k}function K(t,n,r){let i,a=typeof n==`function`;i=a?r:n;function o(r,o){let s=h();return r||=s?e(y,null):null,r&&v(r),r=_,r._s.has(t)||(a?G(t,n,i,r):W(t,i,r)),r._s.get(t)}return o.$id=t,o}function q(e){let n=r(e),i={};for(let r in n){let a=n[r];a?.effect?i[r]=p({get:()=>e[r],set(t){e[r]=t}}):(u(a)||o(a))&&(i[r]=t(e,r))}return i}var J=`ft_access_token`;function Y(){return`https://nademitex.montest.ir/server/api`.replace(/\/$/,``)||`https://nademitex.montest.ir/server/api`}function X(){return localStorage.getItem(J)}function Z(e){e?localStorage.setItem(J,e):localStorage.removeItem(J)}var Q=class extends Error{status;constructor(e,t){super(t),this.status=e}};function $(e,t){let n=Y(),r=e.startsWith(`http`)?e:`${n.replace(/\/$/,``)}/${e.replace(/^\//,``)}`,i=r.startsWith(`http`)?new URL(r):new URL(r,typeof window<`u`?window.location.origin:`http://127.0.0.1`);if(t)for(let[e,n]of Object.entries(t))n!=null&&n!==``&&i.searchParams.set(e,String(n));return i.toString()}function te(e,t){if(typeof e==`object`&&e){if(`message`in e){let t=e.message;if(Array.isArray(t))return t.join(`، `);if(t!=null&&String(t).trim())return String(t)}if(`error`in e){let n=e.error;if(typeof n==`string`&&n.trim())return`${n} (${t})`}}if(typeof e==`string`){if(/upstream error/i.test(e))return`سرور API در دسترس نیست. کمی بعد دوباره تلاش کنید.`;if(e.trim()&&!e.trimStart().startsWith(`<`))return e.trim().slice(0,200)}return t===400?`درخواست نامعتبر است. اطلاعات سفارش را بررسی کنید.`:t===401?`نشست شما منقضی شده است. دوباره وارد شوید.`:`خطای سرور (${t})`}async function ne(e,t={}){let n={Accept:`application/json`};if(t.body!==void 0&&(n[`Content-Type`]=`application/json`),t.auth!==!1){let e=X();e&&(n.Authorization=`Bearer ${e}`)}let r;try{r=await fetch($(e,t.query),{method:t.method??(t.body===void 0?`GET`:`POST`),headers:n,body:t.body===void 0?void 0:JSON.stringify(t.body),signal:AbortSignal.timeout(2e4)})}catch(e){throw new Q(0,e instanceof DOMException&&e.name===`TimeoutError`||e instanceof Error&&e.name===`TimeoutError`?`پاسخ سرور طول کشید. دوباره تلاش کنید.`:`اتصال به سرور برقرار نشد. اینترنت یا آدرس API را بررسی کنید.`)}let i=await r.text(),a=null;if(i)try{a=JSON.parse(i)}catch{a=i}if(!r.ok){if(r.status===401&&t.auth!==!1){Z(null);try{localStorage.removeItem(`ft_user`)}catch{}let e=`/login`;if(typeof window<`u`&&!window.location.pathname.startsWith(e)){let t=encodeURIComponent(`${window.location.pathname}${window.location.search}`);window.location.assign(`${e}?redirect=${t}`)}}throw new Q(r.status,te(a,r.status))}return a}export{M as a,Z as i,ne as n,K as o,X as r,q as s,Q as t}; \ No newline at end of file diff --git a/dist/assets/http-Cmeatq0_.js b/dist/assets/http-Cmeatq0_.js new file mode 100644 index 0000000..655beb7 --- /dev/null +++ b/dist/assets/http-Cmeatq0_.js @@ -0,0 +1 @@ +import{$ as e,C as t,E as n,J as r,Q as i,U as a,X as o,Y as s,Z as c,c as l,ct as u,et as d,nt as f,ot as p,st as m,w as h}from"./_plugin-vue_export-helper-1xMDlcEE.js";var g=typeof window<`u`,_,v=e=>_=e,y=Symbol();function b(e){return e&&typeof e==`object`&&Object.prototype.toString.call(e)===`[object Object]`&&typeof e.toJSON!=`function`}var x=typeof window==`object`&&window.window===window?window:typeof self==`object`&&self.self===self?self:typeof global==`object`&&global.global===global?global:typeof globalThis==`object`?globalThis:{HTMLElement:null};function S(e,{autoBom:t=!1}={}){return t&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(e.type)?new Blob([``,e],{type:e.type}):e}function C(e,t,n){let r=new XMLHttpRequest;r.open(`GET`,e),r.responseType=`blob`,r.onload=function(){O(r.response,t,n)},r.onerror=function(){console.error(`could not download file`)},r.send()}function w(e){let t=new XMLHttpRequest;t.open(`HEAD`,e,!1);try{t.send()}catch{}return t.status>=200&&t.status<=299}function T(e){try{e.dispatchEvent(new MouseEvent(`click`))}catch{let t=new MouseEvent(`click`,{bubbles:!0,cancelable:!0,view:window,detail:0,screenX:80,screenY:20,clientX:80,clientY:20,ctrlKey:!1,altKey:!1,shiftKey:!1,metaKey:!1,button:0,relatedTarget:null});e.dispatchEvent(t)}}var E=typeof navigator==`object`?navigator:{userAgent:``},D=/Macintosh/.test(E.userAgent)&&/AppleWebKit/.test(E.userAgent)&&!/Safari/.test(E.userAgent),O=g?typeof HTMLAnchorElement<`u`&&`download`in HTMLAnchorElement.prototype&&!D?k:`msSaveOrOpenBlob`in E?A:j:()=>{};function k(e,t=`download`,n){let r=document.createElement(`a`);r.download=t,r.rel=`noopener`,typeof e==`string`?(r.href=e,r.origin===location.origin?T(r):w(r.href)?C(e,t,n):(r.target=`_blank`,T(r))):(r.href=URL.createObjectURL(e),setTimeout(function(){URL.revokeObjectURL(r.href)},4e4),setTimeout(function(){T(r)},0))}function A(e,t=`download`,n){if(typeof e==`string`)if(w(e))C(e,t,n);else{let t=document.createElement(`a`);t.href=e,t.target=`_blank`,setTimeout(function(){T(t)})}else navigator.msSaveOrOpenBlob(S(e,n),t)}function j(e,t,n,r){if(r||=open(``,`_blank`),r&&(r.document.title=r.document.body.innerText=`downloading...`),typeof e==`string`)return C(e,t,n);let i=e.type===`application/octet-stream`,a=/constructor/i.test(String(x.HTMLElement))||`safari`in x,o=/CriOS\/[\d]+/.test(navigator.userAgent);if((o||i&&a||D)&&typeof FileReader<`u`){let t=new FileReader;t.onloadend=function(){let e=t.result;if(typeof e!=`string`)throw r=null,Error(`Wrong reader.result type`);e=o?e:e.replace(/^data:[^;]*;/,`data:attachment/file;`),r?r.location.href=e:location.assign(e),r=null},t.readAsDataURL(e)}else{let t=URL.createObjectURL(e);r?r.location.assign(t):location.href=t,r=null,setTimeout(function(){URL.revokeObjectURL(t)},4e4)}}var{assign:ee}=Object;function M(){let e=r(!0),t=e.run(()=>f({})),n=[],a=[],o=i({install(e){v(o),o._a=e,e.provide(y,o),e.config.globalProperties.$pinia=o,a.forEach(e=>n.push(e)),a=[]},use(e){return this._a?n.push(e):a.push(e),this},_p:n,_a:null,_e:e,_s:new Map,state:t});return o}var N=()=>{};function P(t,n,r,i=N){t.add(n);let a=()=>{t.delete(n)&&i()};return!r&&s()&&e(a),a}function F(e,...t){e.forEach(e=>{e(...t)})}var I=e=>e(),L=Symbol(),R=Symbol();function z(e,t){e instanceof Map&&t instanceof Map?t.forEach((t,n)=>e.set(n,t)):e instanceof Set&&t instanceof Set&&t.forEach(e.add,e);for(let n in t){if(!Object.hasOwn(t,n))continue;let r=t[n],i=e[n];e[n]=b(i)&&b(r)&&Object.hasOwn(e,n)&&!c(r)&&!o(r)?z(i,r):r}return e}var B=Symbol();function V(e){return!e||typeof e!=`object`||!Object.hasOwn(e,B)}var{assign:H}=Object;function U(e){return!!(c(e)&&e.effect)}function W(e,t,n,r){let{state:a,actions:o,getters:s}=t,c=n.state.value[e],d;function f(){return c||(n.state.value[e]=a?a():{}),H(u(n.state.value[e]),o,Object.keys(s||{}).reduce((t,r)=>(t[r]=i(l(()=>{v(n);let t=n._s.get(e);return s[r].call(t,t)})),t),{}))}return d=G(e,f,t,n,r,!0),d}function G(e,t,i={},s,l,u){let f,m=H({actions:{}},i),h={deep:!0},g,_,y=new Set,b=new Set,x,S=s.state.value[e];!u&&!S&&(s.state.value[e]={});let C;function w(t){let r;g=_=!1,typeof t==`function`?(t(s.state.value[e]),r={type:`patch function`,storeId:e,events:x}):(z(s.state.value[e],t),r={type:`patch object`,payload:t,storeId:e,events:x});let i=C=Symbol();n().then(()=>{C===i&&(g=!0)}),_=!0,F(y,r,s.state.value[e])}let T=u?function(){let{state:e}=i,t=e?e():{};this.$patch(e=>{H(e,t)})}:N;function E(){f.stop(),y.clear(),b.clear(),s._s.delete(e)}let D=(t,n=``)=>{if(L in t)return t[R]=n,t;let r=function(){v(s);let n=Array.from(arguments),i=new Set,a=new Set;function o(e){i.add(e)}function c(e){a.add(e)}F(b,{args:n,name:r[R],store:k,after:o,onError:c});let l;try{l=t.apply(this&&this.$id===e?this:k,n)}catch(e){throw F(a,e),e}return l instanceof Promise?l.then(e=>(F(i,e),e)).catch(e=>(F(a,e),Promise.reject(e))):(F(i,l),l)};return r[L]=!0,r[R]=n,r},O={_p:s,$id:e,$onAction:P.bind(null,b),$patch:w,$reset:T,$subscribe(t,n={}){if(y.has(t))return N;let r=P(y,t,n.detached,()=>i()),i=f.run(()=>a(()=>s.state.value[e],r=>{(n.flush===`sync`?_:g)&&t({storeId:e,type:`direct`,events:x},r)},H({},h,n)));return r},$dispose:E},k=d(O);s._s.set(e,k);let A=(s._a&&s._a.runWithContext||I)(()=>s._e.run(()=>(f=r()).run(()=>t({action:D}))));for(let t in A){let n=A[t];c(n)&&!U(n)||o(n)?u||(S&&V(n)&&(c(n)?n.value=S[t]:z(n,S[t])),s.state.value[e][t]=n):typeof n==`function`&&(A[t]=D(n,t),m.actions[t]=n)}return H(k,A),H(p(k),A),Object.defineProperty(k,"$state",{get:()=>s.state.value[e],set:e=>{w(t=>{H(t,e)})}}),s._p.forEach(e=>{let t=f.run(()=>e({store:k,app:s._a,pinia:s,options:m}));H(k,t)}),S&&u&&i.hydrate&&i.hydrate(k.$state,S),g=!0,_=!0,k}function K(e,n,r){let i,a=typeof n==`function`;i=a?r:n;function o(r,o){let s=t();return r||=s?h(y,null):null,r&&v(r),r=_,r._s.has(e)||(a?G(e,n,i,r):W(e,i,r)),r._s.get(e)}return o.$id=e,o}function q(e){let t=p(e),n={};for(let r in t){let i=t[r];i?.effect?n[r]=l({get:()=>e[r],set(t){e[r]=t}}):(c(i)||o(i))&&(n[r]=m(e,r))}return n}var J=`ft_access_token`;function Y(){return`https://nademitex.montest.ir/server/api`.replace(/\/$/,``)||`https://nademitex.montest.ir/server/api`}function X(){return localStorage.getItem(J)}function Z(e){e?localStorage.setItem(J,e):localStorage.removeItem(J)}var Q=class extends Error{status;constructor(e,t){super(t),this.status=e}};function $(e,t){let n=Y(),r=e.startsWith(`http`)?e:`${n.replace(/\/$/,``)}/${e.replace(/^\//,``)}`,i=r.startsWith(`http`)?new URL(r):new URL(r,typeof window<`u`?window.location.origin:`http://127.0.0.1`);if(t)for(let[e,n]of Object.entries(t))n!=null&&n!==``&&i.searchParams.set(e,String(n));return i.toString()}function te(e,t){if(typeof e==`object`&&e){if(`message`in e){let t=e.message;if(Array.isArray(t))return t.join(`، `);if(t!=null&&String(t).trim())return String(t)}if(`error`in e){let n=e.error;if(typeof n==`string`&&n.trim())return`${n} (${t})`}}if(typeof e==`string`){if(/upstream error/i.test(e))return`سرور API در دسترس نیست. کمی بعد دوباره تلاش کنید.`;if(e.trim()&&!e.trimStart().startsWith(`<`))return e.trim().slice(0,200)}return t===400?`درخواست نامعتبر است. اطلاعات سفارش را بررسی کنید.`:t===401?`نشست شما منقضی شده است. دوباره وارد شوید.`:`خطای سرور (${t})`}async function ne(e,t={}){let n={Accept:`application/json`};if(t.body!==void 0&&(n[`Content-Type`]=`application/json`),t.auth!==!1){let e=X();e&&(n.Authorization=`Bearer ${e}`)}let r;try{r=await fetch($(e,t.query),{method:t.method??(t.body===void 0?`GET`:`POST`),headers:n,body:t.body===void 0?void 0:JSON.stringify(t.body),signal:AbortSignal.timeout(2e4)})}catch(e){throw new Q(0,e instanceof DOMException&&e.name===`TimeoutError`||e instanceof Error&&e.name===`TimeoutError`?`پاسخ سرور طول کشید. دوباره تلاش کنید.`:`اتصال به سرور برقرار نشد. اینترنت یا آدرس API را بررسی کنید.`)}let i=await r.text(),a=null;if(i)try{a=JSON.parse(i)}catch{a=i}if(!r.ok){if(r.status===401&&t.auth!==!1){Z(null);try{localStorage.removeItem(`ft_user`)}catch{}let e=`/login`;if(typeof window<`u`&&!window.location.pathname.startsWith(e)){let t=encodeURIComponent(`${window.location.pathname}${window.location.search}`);window.location.assign(`${e}?redirect=${t}`)}}throw new Q(r.status,te(a,r.status))}return a}export{M as a,Z as i,ne as n,K as o,X as r,q as s,Q as t}; \ No newline at end of file diff --git a/dist/assets/index-BAQfYU-Q.js b/dist/assets/index-BAQfYU-Q.js deleted file mode 100644 index fbcc43a..0000000 --- a/dist/assets/index-BAQfYU-Q.js +++ /dev/null @@ -1,2 +0,0 @@ -const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/WelcomeView-CY8sq5mY.js","assets/_plugin-vue_export-helper-Bo3WtfwJ.js","assets/BasicIcon-BXxbbWA_.js","assets/BasicIcon-QF_b9Svq.css","assets/login-fabric-CzrIXTnD.js","assets/WelcomeView-Bue6hk9x.css","assets/LoginView-DkQyawlh.js","assets/format-C72AoJ2H.js","assets/validation-Duyyve7l.js","assets/FormErrorBanner-DI5hhxpk.js","assets/FormErrorBanner-Hje8L-00.css","assets/IconPhone-ZmPXu1y3.js","assets/formErrors-DglFjYkZ.js","assets/LoginView-DzSYxjJ8.css","assets/RegisterView-B5N97yVt.js","assets/dist-2yEcZq4e.js","assets/dist-nK9ByyUG.js","assets/IconDiamond-R4uguqMC.js","assets/RegisterView-DGOdJpXQ.css","assets/OtpView-CsrAaJgf.js","assets/IconChevronBack-DfGoZJJk.js","assets/IconEditPen-LGjdaNbi.js","assets/OtpView-w9hAwgso.css","assets/HomeView-Bqa7R1Mj.js","assets/http-CeONvUNq.js","assets/PageSkeleton-DHtB6RUa.js","assets/PageSkeleton-CaQ4bDKV.css","assets/crm-CooNUbmr.js","assets/useGoBack-TJZZv7or.js","assets/quick-catalog-request-Di7-t6Ua.js","assets/IconHeart-Be5RRWq4.js","assets/IconBookmark-DQEBziz0.js","assets/HomeView-DYKXegvY.css","assets/CategoriesView-DT-MUnmH.js","assets/IconSearch-BUr8iOwb.js","assets/categoryIcons-xvNXaT6R.js","assets/IconLayoutGrid-DTCDTb_O.js","assets/IconShoppingBag-BeSLUxcB.js","assets/CategoriesView-CyqqIlyd.css","assets/ProductsView-DtAZBhWt.js","assets/IconFilter-C0e5CP4I.js","assets/PageHeader-DTO8lja2.js","assets/PageHeader-C69aO5cY.css","assets/SearchField-BMLbKLPW.js","assets/SearchField-QJMYJEg3.css","assets/colorSwatch-BgOH1LE5.js","assets/ProductsView-8JHsBxFC.css","assets/ProductDetailView-BxbbLfCJ.js","assets/catalog-CIw6in_a.js","assets/catalogRequests-DB19-0hk.js","assets/ProductDetailView-ebUQtFn7.css","assets/CatalogsHubView-CAAnf2JN.js","assets/catalogNavigation-BKzzgMwI.js","assets/CatalogsHubView-C58IZDvz.css","assets/CatalogProductRedirectView-GITIU3xk.js","assets/CatalogRequestsView-B_32f4tA.js","assets/CatalogRequestsView-BPWS27x8.css","assets/LatestCatalogRequestStatusView-CQQrt43S.js","assets/SimpleStatusTimeline-wcI2qobj.js","assets/SimpleStatusTimeline-CVRESTGF.css","assets/LatestCatalogRequestStatusView-DIeeilMn.css","assets/FavoritesView-y720DF4m.js","assets/FavoritesView-Cyn80nII.css","assets/CustomersView-CNLgp8Je.js","assets/CustomerCreateOverlay-BlatCdeJ.js","assets/BaseInput-CVNdy37R.js","assets/BaseInput-BKq5OFkZ.css","assets/CustomerCreateOverlay-DpQkF2Gz.css","assets/CustomersView-ZfDgnskm.css","assets/CustomerDetailView-Cvk2MqwU.js","assets/constants-DXXK14Zz.js","assets/IconProgressClock-CpMlnCU2.js","assets/IconClipboardEmpty-BdL7YkiR.js","assets/PersianDateInput-CTe_lYug.js","assets/PersianDateInput-CQDjJN3F.css","assets/CustomerDetailView-D35VhooF.css","assets/RemindersView-CP53npYK.js","assets/IconMoreVertical-zeD1VV0e.js","assets/RemindersView-4scV8gnB.css","assets/ReminderDetailView-Dr0qYekB.js","assets/ReminderDetailView-Bgb1iArR.css","assets/CatalogListView-kLwRIxQN.js","assets/EmptyState-D-8eFOUi.js","assets/EmptyState-D6A5GmrP.css","assets/CatalogListView-DvvVUQtY.css","assets/CartView-BFjbSmpZ.js","assets/CheckoutStepper-Dw7-dJI5.js","assets/CheckoutStepper-hqk-kVCz.css","assets/CartView-C652iQUF.css","assets/OrdersView-BIlEM87V.js","assets/OrdersView-C_CUEMfe.css","assets/LatestOrderStatusView-xE-ByuMy.js","assets/LatestOrderStatusView-Dt4fuopS.css","assets/OrderDetailView-DPEL7-lF.js","assets/orderInvoice-B0L1Aeuk.js","assets/CurrencyInput-D6gR57Z3.js","assets/CurrencyInput-ByU-DLUz.css","assets/OrderDetailView-5Zi-DKNv.css","assets/OrderSuccessView-DbGNDiom.js","assets/OrderSuccessView-BI6XPtrV.css","assets/SettlementTypeView-BAS_xsRw.js","assets/useRequirePricedOrder-DWh7nbsh.js","assets/SettlementTypeView-C3wqclvS.css","assets/CashSettlementView-BxW5Z-lD.js","assets/CashSettlementView-C8IRazOR.css","assets/CheckModeSelectView-BZfruEWx.js","assets/CheckModeSelectView-BZlKzxFL.css","assets/CheckFormView-C6JGTT8G.js","assets/CheckFormView-Cgp6kUZ2.css","assets/CheckListView-BhenoTXJ.js","assets/CheckListView-B_ogsKeK.css","assets/ProfileView-Du0bsfdh.js","assets/ProfileView-D30gaY9q.css","assets/ProfileEditView-DKPvUiwL.js","assets/ProfileSubpageLayout-C-s-O95S.js","assets/ProfileSubpageLayout-DCtwNGmO.css","assets/ProfileEditView-DdWsicsc.css","assets/ProfileSecurityView-Kv1i6EIE.js","assets/ProfileSecurityView-BjbybMSz.css","assets/ProfileNotificationsView-CRUkrfu7.js","assets/ProfileNotificationsView-BqMkB4wX.css","assets/ProfileDisplayView-lgTZCjkL.js","assets/ProfileDisplayView-CDaE5E6F.css","assets/ProfileChecksView-CZ9czIQ3.js"])))=>i.map(i=>d[i]); -import{B as e,D as t,E as n,Et as r,G as i,H as a,J as o,Kt as s,M as c,N as l,O as u,P as d,Q as f,R as p,T as m,Xt as h,Y as g,Yt as _,Z as v,_ as y,a as b,at as x,b as S,c as C,d as w,et as T,f as ee,g as E,gt as D,h as te,i as O,l as ne,m as re,n as ie,o as ae,ot as oe,p as se,r as k,s as A,st as j,t as M,u as ce,vt as N,w as P,xt as le,yt as ue}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";import{i as de,n as fe,t as F,u as pe}from"./BasicIcon-BXxbbWA_.js";import{a as me,i as he,n as I,o as L,r as R,s as z,t as B}from"./http-CeONvUNq.js";import{l as ge}from"./dist-nK9ByyUG.js";import{i as _e,r as ve}from"./dist-2yEcZq4e.js";import{d as ye,l as be,s as xe,t as Se,v as Ce,y as we}from"./format-C72AoJ2H.js";import{r as Te}from"./validation-Duyyve7l.js";import{t as V}from"./catalog-CIw6in_a.js";(function(){let e=document.createElement(`link`).relList;if(e&&e.supports&&e.supports(`modulepreload`))return;for(let e of document.querySelectorAll(`link[rel="modulepreload"]`))n(e);new MutationObserver(e=>{for(let t of e)if(t.type===`childList`)for(let e of t.addedNodes)e.tagName===`LINK`&&e.rel===`modulepreload`&&n(e)}).observe(document,{childList:!0,subtree:!0});function t(e){let t={};return e.integrity&&(t.integrity=e.integrity),e.referrerPolicy&&(t.referrerPolicy=e.referrerPolicy),t.credentials=e.crossOrigin===`use-credentials`?`include`:e.crossOrigin===`anonymous`?`omit`:`same-origin`,t}function n(e){if(e.ep)return;e.ep=!0;let n=t(e);fetch(e.href,n)}})();var H=typeof document<`u`,Ee=/#/g,De=/&/g,Oe=/\//g,ke=/=/g,Ae=/\?/g,je=/\+/g,Me=/%5B/g,Ne=/%5D/g,Pe=/%5E/g,Fe=/%60/g,Ie=/%7B/g,Le=/%7C/g,Re=/%7D/g,ze=/%20/g;function Be(e){return e==null?``:encodeURI(``+e).replace(Le,`|`).replace(Me,`[`).replace(Ne,`]`)}function Ve(e){return Be(e).replace(Ie,`{`).replace(Re,`}`).replace(Pe,`^`)}function He(e){return Be(e).replace(je,`%2B`).replace(ze,`+`).replace(Ee,`%23`).replace(De,`%26`).replace(Fe,"`").replace(Ie,`{`).replace(Re,`}`).replace(Pe,`^`)}function Ue(e){return He(e).replace(ke,`%3D`)}function We(e){return Be(e).replace(Ee,`%23`).replace(Ae,`%3F`)}function Ge(e){return We(e).replace(Oe,`%2F`)}function Ke(e){if(e==null)return null;try{return decodeURIComponent(``+e)}catch{}return``+e}var qe=/\/$/,Je=e=>e.replace(qe,``);function Ye(e,t,n=`/`){let r,i={},a=``,o=``,s=t.indexOf(`#`),c=t.indexOf(`?`);return c=s>=0&&c>s?-1:c,c>=0&&(r=t.slice(0,c),a=t.slice(c,s>0?s:t.length),i=e(a.slice(1))),s>=0&&(r||=t.slice(0,s),o=t.slice(s,t.length)),r=nt(r??t,n),{fullPath:r+a+o,path:r,query:i,hash:Ke(o)}}function Xe(e,t){let n=t.query?e(t.query):``;return t.path+(n&&`?`)+n+(t.hash||``)}function Ze(e,t){return!t||!e.toLowerCase().startsWith(t.toLowerCase())?e:e.slice(t.length)||`/`}function Qe(e,t,n){let r=t.matched.length-1,i=n.matched.length-1;return r>-1&&r===i&&U(t.matched[r],n.matched[i])&&$e(t.params,n.params)&&e(t.query)===e(n.query)&&t.hash===n.hash}function U(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function $e(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(var n in e)if(!et(e[n],t[n]))return!1;return!0}function et(e,t){return b(e)?tt(e,t):b(t)?tt(t,e):(e&&e.valueOf())===(t&&t.valueOf())}function tt(e,t){return b(t)?e.length===t.length&&e.every((e,n)=>e===t[n]):e.length===1&&e[0]===t}function nt(e,t){if(e.startsWith(`/`))return e;if(!e)return t;let n=t.split(`/`),r=e.split(`/`),i=r[r.length-1];(i===`..`||i===`.`)&&r.push(``);let a=n.length-1,o,s;for(o=0;o1&&a--;else break;return n.slice(0,a).join(`/`)+`/`+r.slice(o).join(`/`)}var W={path:`/`,name:void 0,params:{},query:{},hash:``,fullPath:`/`,matched:[],meta:{},redirectedFrom:void 0};function rt(e){if(!e)if(H){let t=document.querySelector(`base`);e=t&&t.getAttribute(`href`)||`/`,e=e.replace(/^\w+:\/\/[^/]+/,``)}else e=`/`;return e[0]!==`/`&&e[0]!==`#`&&(e=`/`+e),Je(e)}var it=/^[^#]+#/;function at(e,t){return e.replace(it,`#`)+t}function ot(e,t){let n=document.documentElement.getBoundingClientRect(),r=e.getBoundingClientRect();return{behavior:t.behavior,left:r.left-n.left-(t.left||0),top:r.top-n.top-(t.top||0)}}var st=()=>({left:window.scrollX,top:window.scrollY});function ct(e){let t;if(`el`in e){let n=e.el,r=typeof n==`string`&&n.startsWith(`#`),i=typeof n==`string`?r?document.getElementById(n.slice(1)):document.querySelector(n):n;if(!i)return;t=ot(i,e)}else t=e;`scrollBehavior`in document.documentElement.style?window.scrollTo(t):window.scrollTo(t.left==null?window.scrollX:t.left,t.top==null?window.scrollY:t.top)}function lt(e,t){return(history.state?history.state.position-t:-1)+e}var ut=new Map;function dt(e,t){ut.set(e,t)}function ft(e){let t=ut.get(e);return ut.delete(e),t}function pt(e){return typeof e==`string`||e&&typeof e==`object`}function mt(e){return typeof e==`string`||typeof e==`symbol`}function ht(e){let t={};if(e===``||e===`?`)return t;let n=(e[0]===`?`?e.slice(1):e).split(`&`);for(let e=0;ee&&He(e)):[r&&He(r)]).forEach(e=>{e!==void 0&&(t+=(t.length?`&`:``)+n,e!=null&&(t+=`=`+e))})}return t}function _t(e){let t={};for(let n in e){let r=e[n];r!==void 0&&(t[n]=b(r)?r.map(e=>e==null?null:``+e):r==null?r:``+r)}return t}function G(){let e=[];function t(t){return e.push(t),()=>{let n=e.indexOf(t);n>-1&&e.splice(n,1)}}function n(){e=[]}return{add:t,list:()=>e.slice(),reset:n}}function K(e,t,n,r,i,a=e=>e()){let o=r&&(r.enterCallbacks[i]=r.enterCallbacks[i]||[]);return()=>new Promise((s,c)=>{let l=e=>{e===!1?c(O(4,{from:n,to:t})):e instanceof Error?c(e):pt(e)?c(O(2,{from:t,to:e})):(o&&r.enterCallbacks[i]===o&&typeof e==`function`&&o.push(e),s())},u=a(()=>e.call(r&&r.instances[i],t,n,l)),d=Promise.resolve(u);e.length<3&&(d=d.then(l)),d.catch(e=>c(e))})}function vt(e,t,n,r,i=e=>e()){let a=[];for(let o of e)for(let e in o.components){let s=o.components[e];if(!(t!==`beforeRouteEnter`&&!o.instances[e]))if(C(s)){let c=(s.__vccOpts||s)[t];c&&a.push(K(c,n,r,o,e,i))}else{let c=s();a.push(()=>c.then(a=>{if(!a)throw Error(`Couldn't resolve component "${e}" at "${o.path}"`);let s=ae(a)?a.default:a;o.mods[e]=a,o.components[e]=s;let c=(s.__vccOpts||s)[t];return c&&K(c,n,r,o,e,i)()}))}}return a}function yt(e,t){let n=[],r=[],i=[],a=Math.max(t.matched.length,e.matched.length);for(let o=0;oU(e,a))?r.push(a):n.push(a));let s=e.matched[o];s&&(t.matched.find(e=>U(e,s))||i.push(s))}return[n,r,i]}var bt=()=>location.protocol+`//`+location.host;function xt(e,t){let{pathname:n,search:r,hash:i}=t,a=e.indexOf(`#`);if(a>-1){let t=i.includes(e.slice(a))?e.slice(a).length:1,n=i.slice(t);return n[0]!==`/`&&(n=`/`+n),Ze(n,``)}return Ze(n,e)+r+i}function St(e,t,n,r){let i=[],a=[],o=null,s=({state:a})=>{let s=xt(e,location),c=n.value,l=t.value,u=0;if(a){if(n.value=s,t.value=a,o&&o===c){o=null;return}u=l?a.position-l.position:0}else r(s);i.forEach(e=>{e(n.value,c,{delta:u,type:`pop`,direction:u?u>0?`forward`:`back`:``})})};function c(){o=n.value}function l(e){i.push(e);let t=()=>{let t=i.indexOf(e);t>-1&&i.splice(t,1)};return a.push(t),t}function u(){if(document.visibilityState===`hidden`){let{history:e}=window;if(!e.state)return;e.replaceState(k({},e.state,{scroll:st()}),``)}}function d(){for(let e of a)e();a=[],window.removeEventListener(`popstate`,s),window.removeEventListener(`pagehide`,u),document.removeEventListener(`visibilitychange`,u)}return window.addEventListener(`popstate`,s),window.addEventListener(`pagehide`,u),document.addEventListener(`visibilitychange`,u),{pauseListeners:c,listen:l,destroy:d}}function Ct(e,t,n,r=!1,i=!1){return{back:e,current:t,forward:n,replaced:r,position:window.history.length,scroll:i?st():null}}function wt(e){let{history:t,location:n}=window,r={value:xt(e,n)},i={value:t.state};i.value||a(r.value,{back:null,current:r.value,forward:null,position:t.length-1,replaced:!0,scroll:null},!0);function a(r,a,o){let s=e.indexOf(`#`),c=s>-1?(n.host&&document.querySelector(`base`)?e:e.slice(s))+r:bt()+e+r;try{t[o?`replaceState`:`pushState`](a,``,c),i.value=a}catch(e){console.error(e),n[o?`replace`:`assign`](c)}}function o(e,n){a(e,k({},t.state,Ct(i.value.back,e,i.value.forward,!0),n,{position:i.value.position}),!0),r.value=e}function s(e,n){let o=k({},i.value,t.state,{forward:e,scroll:st()});a(o.current,o,!0),a(e,k({},Ct(r.value,e,null),{position:o.position+1},n),!1),r.value=e}return{location:r,state:i,push:s,replace:o}}function Tt(e){e=rt(e);let t=wt(e),n=St(e,t.state,t.location,t.replace);function r(e,t=!0){t||n.pauseListeners(),history.go(e)}let i=k({location:``,base:e,go:r,createHref:at.bind(null,e)},t,n);return Object.defineProperty(i,"location",{enumerable:!0,get:()=>t.location.value}),Object.defineProperty(i,"state",{enumerable:!0,get:()=>t.state.value}),i}var Et={type:0,value:``},Dt=/[a-zA-Z0-9_]/;function Ot(e){if(!e)return[[]];if(e===`/`)return[[Et]];if(!e.startsWith(`/`))throw Error(`Invalid path "${e}"`);function t(e){throw Error(`ERR (${n})/"${l}": ${e}`)}let n=0,r=n,i=[],a;function o(){a&&i.push(a),a=[]}let s=0,c,l=``,u=``;function d(){l&&=(n===0?a.push({type:0,value:l}):n===1||n===2||n===3?(a.length>1&&(c===`*`||c===`+`)&&t(`A repeatable param (${l}) must be alone in its segment. eg: '/:ids+.`),a.push({type:1,value:l,regexp:u,repeatable:c===`*`||c===`+`,optional:c===`*`||c===`?`})):t(`Invalid state to consume buffer`),``)}function f(){l+=c}for(;st.length?t.length===1&&t[0]===80?1:-1:0}function Pt(e,t){let n=0,r=e.score,i=t.score;for(;n0&&t[t.length-1]<0}var It={strict:!1,end:!0,sensitive:!1};function Lt(e,t,n){let r=Mt(Ot(e.path),n),i=k(r,{record:e,parent:t,children:[],alias:[]});return t&&!i.record.aliasOf==!t.record.aliasOf&&t.children.push(i),i}function Rt(e,t){let n=[],r=new Map;t=ce(It,t);function i(e){return r.get(e)}function a(e,n,r){let i=!r,s=Bt(e);s.aliasOf=r&&r.record;let l=ce(t,e),u=[s];if(`alias`in e){let t=typeof e.alias==`string`?[e.alias]:e.alias;for(let e of t)u.push(Bt(k({},s,{components:r?r.record.components:s.components,path:e,aliasOf:r?r.record:s})))}let d,f;for(let t of u){let{path:u}=t;if(n&&u[0]!==`/`){let e=n.record.path,r=e[e.length-1]===`/`?``:`/`;t.path=n.record.path+(u&&r+u)}if(d=Lt(t,n,l),r?r.alias.push(d):(f||=d,f!==d&&f.alias.push(d),i&&e.name&&!Ht(d)&&o(e.name)),Kt(d)&&c(d),s.children){let e=s.children;for(let t=0;t{o(f)}:w}function o(e){if(mt(e)){let t=r.get(e);t&&(r.delete(e),n.splice(n.indexOf(t),1),t.children.forEach(o),t.alias.forEach(o))}else{let t=n.indexOf(e);t>-1&&(n.splice(t,1),e.record.name&&r.delete(e.record.name),e.children.forEach(o),e.alias.forEach(o))}}function s(){return n}function c(e){let t=Wt(e,n);n.splice(t,0,e),e.record.name&&!Ht(e)&&r.set(e.record.name,e)}function l(e,t){let i,a={},o,s;if(`name`in e&&e.name){if(i=r.get(e.name),!i)throw O(1,{location:e});s=i.record.name,a=k(zt(t.params,i.keys.filter(e=>!e.optional).concat(i.parent?i.parent.keys.filter(e=>e.optional):[]).map(e=>e.name)),e.params&&zt(e.params,i.keys.map(e=>e.name))),o=i.stringify(a)}else if(e.path!=null)o=e.path,i=n.find(e=>e.re.test(o)),i&&(a=i.parse(o),s=i.record.name,i.keys.forEach(e=>{e.optional&&!a[e.name]&&delete a[e.name]}));else{if(i=t.name?r.get(t.name):n.find(e=>e.re.test(t.path)),!i)throw O(1,{location:e,currentLocation:t});s=i.record.name,a=k({},t.params,e.params),o=i.stringify(a)}let c=[],l=i;for(;l;)c.unshift(l.record),l=l.parent;return{name:s,path:o,params:a,matched:c,meta:Ut(c)}}e.forEach(e=>a(e));function u(){n.length=0,r.clear()}return{addRoute:a,resolve:l,removeRoute:o,clearRoutes:u,getRoutes:s,getRecordMatcher:i}}function zt(e,t){let n={};for(let r of t)r in e&&(n[r]=e[r]);return n}function Bt(e){let t={path:e.path,redirect:e.redirect,name:e.name,meta:e.meta||{},aliasOf:e.aliasOf,beforeEnter:e.beforeEnter,props:Vt(e),children:e.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:`components`in e?e.components||null:e.component&&{default:e.component}};return Object.defineProperty(t,"mods",{value:{}}),t}function Vt(e){let t={},n=e.props||!1;if(`component`in e)t.default=n;else for(let r in e.components)t[r]=typeof n==`object`?n[r]:n;return t}function Ht(e){for(;e;){if(e.record.aliasOf)return!0;e=e.parent}return!1}function Ut(e){return e.reduce((e,t)=>k(e,t.meta),{})}function Wt(e,t){let n=0,r=t.length;for(;n!==r;){let i=n+r>>1;Pt(e,t[i])<0?r=i:n=i+1}let i=Gt(e);return i&&(r=t.lastIndexOf(i,r-1)),r}function Gt(e){let t=e;for(;t=t.parent;)if(Kt(t)&&Pt(e,t)===0)return t}function Kt({record:e}){return!!(e.name||e.components&&Object.keys(e.components).length||e.redirect)}function qt(t){let n=e(se),i=e(ee),a=P(()=>{let e=r(t.to);return n.resolve(e)}),o=P(()=>{let{matched:e}=a.value,{length:t}=e,n=e[t-1],r=i.matched;if(!n||!r.length)return-1;let o=r.findIndex(U.bind(null,n));if(o>-1)return o;let s=Qt(e[t-2]);return t>1&&Qt(n)===s&&r[r.length-1].path!==s?r.findIndex(U.bind(null,e[t-2])):o}),s=P(()=>o.value>-1&&Zt(i.params,a.value.params)),c=P(()=>o.value>-1&&o.value===i.matched.length-1&&$e(i.params,a.value.params));function l(e={}){if(Xt(e)){let e=n[r(t.replace)?`replace`:`push`](r(t.to)).catch(w);return t.viewTransition&&typeof document<`u`&&`startViewTransition`in document&&document.startViewTransition(()=>e),e}return Promise.resolve()}return{route:a,href:P(()=>a.value.href),isActive:s,isExactActive:c,navigate:l}}function Jt(e){return e.length===1?e[0]:e}var Yt=d({name:`RouterLink`,compatConfig:{MODE:3},props:{to:{type:[String,Object],required:!0},replace:Boolean,activeClass:String,exactActiveClass:String,custom:Boolean,ariaCurrentValue:{type:String,default:`page`},viewTransition:Boolean},useLink:qt,setup(t,{slots:n}){let r=D(qt(t)),{options:i}=e(se),a=P(()=>({[$t(t.activeClass,i.linkActiveClass,`router-link-active`)]:r.isActive,[$t(t.exactActiveClass,i.linkExactActiveClass,`router-link-exact-active`)]:r.isExactActive}));return()=>{let e=n.default&&Jt(n.default(r));return t.custom?e:p(`a`,{"aria-current":r.isExactActive?t.ariaCurrentValue:null,href:r.href,onClick:r.navigate,class:a.value},e)}}});function Xt(e){if(!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)&&!e.defaultPrevented&&(e.button===void 0||e.button===0)){if(e.currentTarget&&e.currentTarget.getAttribute){let t=e.currentTarget.getAttribute(`target`);if(/\b_blank\b/i.test(t))return}return e.preventDefault&&e.preventDefault(),!0}}function Zt(e,t){for(let n in t){let r=t[n],i=e[n];if(typeof r==`string`){if(r!==i)return!1}else if(!b(i)||i.length!==r.length||r.some((e,t)=>e.valueOf()!==i[t].valueOf()))return!1}return!0}function Qt(e){return e?e.aliasOf?e.aliasOf.path:e.path:``}var $t=(e,t,n)=>e??t??n,en=d({name:`RouterView`,inheritAttrs:!1,props:{name:{type:String,default:`default`},route:Object},compatConfig:{MODE:3},setup(t,{attrs:n,slots:i}){let a=e(re),o=P(()=>t.route||a.value),s=e(y,0),c=P(()=>{let e=r(s),{matched:t}=o.value,n;for(;(n=t[e])&&!n.components;)e++;return e}),l=P(()=>o.value.matched[c.value]);g(y,P(()=>c.value+1)),g(ne,l),g(re,o);let u=N();return x(()=>[u.value,l.value,t.name],([e,t,n],[r,i,a])=>{t&&(t.instances[n]=e,i&&i!==t&&e&&e===r&&(t.leaveGuards.size||(t.leaveGuards=i.leaveGuards),t.updateGuards.size||(t.updateGuards=i.updateGuards))),e&&t&&(!i||!U(t,i)||!r)&&(t.enterCallbacks[n]||[]).forEach(t=>t(e))},{flush:`post`}),()=>{let e=o.value,r=t.name,a=l.value,s=a&&a.components[r];if(!s)return tn(i.default,{Component:s,route:e});let c=a.props[r],d=c?c===!0?e.params:typeof c==`function`?c(e):c:null,f=p(s,k({},d,n,{onVnodeUnmounted:e=>{e.component.isUnmounted&&(a.instances[r]=null)},ref:u}));return tn(i.default,{Component:f,route:e})||f}}});function tn(e,t){if(!e)return null;let n=e(t);return n.length===1?n[0]:n}var nn=en;function rn(e){let t=Rt(e.routes,e),n=e.parseQuery||ht,i=e.stringifyQuery||gt,o=e.history,s=G(),c=G(),l=G(),u=le(W),d=W;H&&e.scrollBehavior&&`scrollRestoration`in history&&(history.scrollRestoration=`manual`);let f=ie.bind(null,e=>``+e),p=ie.bind(null,Ge),m=ie.bind(null,Ke);function h(e,n){let r,i;return mt(e)?(r=t.getRecordMatcher(e),i=n):i=e,t.addRoute(i,r)}function g(e){let n=t.getRecordMatcher(e);n&&t.removeRoute(n)}function _(){return t.getRoutes().map(e=>e.record)}function v(e){return!!t.getRecordMatcher(e)}function y(e,r){if(r=k({},r||u.value),typeof e==`string`){let i=Ye(n,e,r.path),a=t.resolve({path:i.path},r),s=o.createHref(i.fullPath);return k(i,a,{params:m(a.params),redirectedFrom:void 0,href:s})}let a;if(e.path!=null)a=k({},e,{path:Ye(n,e.path,r.path).path});else{let t=k({},e.params);for(let e in t)t[e]??delete t[e];a=k({},e,{params:p(t)}),r.params=p(r.params)}let s=t.resolve(a,r),c=e.hash||``;s.params=f(m(s.params));let l=Xe(i,k({},e,{hash:Ve(c),path:s.path})),d=o.createHref(l);return k({fullPath:l,hash:c,query:i===gt?_t(e.query):e.query||{}},s,{redirectedFrom:void 0,href:d})}function x(e){return typeof e==`string`?Ye(n,e,u.value.path):k({},e)}function S(e,t){if(d!==e)return O(8,{from:t,to:e})}function C(e){return D(e)}function T(e){return C(k(x(e),{replace:!0}))}function E(e,t){let n=e.matched[e.matched.length-1];if(n&&n.redirect){let{redirect:r}=n,i=typeof r==`function`?r(e,t):r;return typeof i==`string`&&(i=i.includes(`?`)||i.includes(`#`)?i=x(i):{path:i},i.params={}),k({query:e.query,hash:e.hash,params:i.path==null?e.params:{}},i)}}function D(e,t){let n=d=y(e),r=u.value,a=e.state,o=e.force,s=e.replace===!0,c=E(n,r);if(c)return D(k(x(c),{state:typeof c==`object`?k({},a,c.state):a,force:o,replace:s}),t||n);let l=n;l.redirectedFrom=t;let f;return!o&&Qe(i,r,n)&&(f=O(16,{to:l,from:r}),me(r,r,!0,!1)),(f?Promise.resolve(f):ae(l,r)).catch(e=>A(e)?A(e,2)?e:pe(e):fe(e,l,r)).then(e=>{if(e){if(A(e,2))return D(k({replace:s},x(e.to),{state:typeof e.to==`object`?k({},a,e.to.state):a,force:o}),t||l)}else e=j(l,r,!0,s,a);return oe(l,r,e),e})}function te(e,t){let n=S(e,t);return n?Promise.reject(n):Promise.resolve()}function ne(e){let t=L.values().next().value;return t&&typeof t.runWithContext==`function`?t.runWithContext(e):e()}function ae(e,t){let n,[r,i,a]=yt(e,t);n=vt(r.reverse(),`beforeRouteLeave`,e,t);for(let i of r)i.leaveGuards.forEach(r=>{n.push(K(r,e,t))});let o=te.bind(null,e,t);return n.push(o),z(n).then(()=>{n=[];for(let r of s.list())n.push(K(r,e,t));return n.push(o),z(n)}).then(()=>{n=vt(i,`beforeRouteUpdate`,e,t);for(let r of i)r.updateGuards.forEach(r=>{n.push(K(r,e,t))});return n.push(o),z(n)}).then(()=>{n=[];for(let r of a)if(r.beforeEnter)if(b(r.beforeEnter))for(let i of r.beforeEnter)n.push(K(i,e,t));else n.push(K(r.beforeEnter,e,t));return n.push(o),z(n)}).then(()=>(e.matched.forEach(e=>e.enterCallbacks={}),n=vt(a,`beforeRouteEnter`,e,t,ne),n.push(o),z(n))).then(()=>{n=[];for(let r of c.list())n.push(K(r,e,t));return n.push(o),z(n)}).catch(e=>A(e,8)?e:Promise.reject(e))}function oe(e,t,n){l.list().forEach(r=>ne(()=>r(e,t,n)))}function j(e,t,n,r,i){let a=S(e,t);if(a)return a;let s=t===W,c=H?history.state:{};n&&(r||s?o.replace(e.fullPath,k({scroll:s&&c&&c.scroll},i)):o.push(e.fullPath,i)),u.value=e,me(e,t,n,s),pe()}let M;function ce(){M||=o.listen((e,t,n)=>{if(!R.listening)return;let r=y(e),i=E(r,R.currentRoute.value);if(i){D(k(i,{replace:!0,force:!0}),r).catch(w);return}d=r;let a=u.value;H&&dt(lt(a.fullPath,n.delta),st()),ae(r,a).catch(e=>A(e,12)?e:A(e,2)?(D(k(x(e.to),{force:!0}),r).then(e=>{A(e,20)&&!n.delta&&n.type===`pop`&&o.go(-1,!1)}).catch(w),Promise.reject()):(n.delta&&o.go(-n.delta,!1),fe(e,r,a))).then(e=>{e||=j(r,a,!1),e&&(n.delta&&!A(e,8)?o.go(-n.delta,!1):n.type===`pop`&&A(e,20)&&o.go(-1,!1)),oe(r,a,e)}).catch(w)})}let N=G(),P=G(),de;function fe(e,t,n){pe(e);let r=P.list();return r.length?r.forEach(r=>r(e,t,n)):console.error(e),Promise.reject(e)}function F(){return de&&u.value!==W?Promise.resolve():new Promise((e,t)=>{N.add([e,t])})}function pe(e){return de||(de=!e,ce(),N.list().forEach(([t,n])=>e?n(e):t()),N.reset()),e}function me(t,n,r,i){let{scrollBehavior:o}=e;if(!H||!o)return Promise.resolve();let s=!r&&ft(lt(t.fullPath,0))||(i||!r)&&history.state&&history.state.scroll||null;return a().then(()=>o(t,n,s)).then(e=>t===u.value&&e&&ct(e)).catch(e=>t===u.value&&fe(e,t,n))}let he=e=>o.go(e),I,L=new Set,R={currentRoute:u,listening:!0,addRoute:h,removeRoute:g,clearRoutes:t.clearRoutes,hasRoute:v,getRoutes:_,resolve:y,options:e,push:C,replace:T,go:he,back:()=>he(-1),forward:()=>he(1),beforeEach:s.add,beforeResolve:c.add,afterEach:l.add,onError:P.add,isReady:F,install(e){e.component(`RouterLink`,Yt),e.component(`RouterView`,nn),e.config.globalProperties.$router=R,Object.defineProperty(e.config.globalProperties,"$route",{enumerable:!0,get:()=>r(u)}),H&&!I&&u.value===W&&(I=!0,C(o.location).catch(e=>{}));let t={};for(let e in W)Object.defineProperty(t,e,{get:()=>u.value[e],enumerable:!0});e.provide(se,R),e.provide(ee,ue(t)),e.provide(re,u);let n=e.unmount;L.add(e),e.unmount=function(){L.delete(e),L.size<1&&(d=W,M&&M(),M=null,u.value=W,I=!1,de=!1),n()}}};function z(e){return e.reduce((e,t)=>e.then(()=>ne(t)),Promise.resolve())}return R}var an=typeof global==`object`&&global&&global.Object===Object&&global,on=typeof self==`object`&&self&&self.Object===Object&&self,sn=(an||on||Function(`return this`)()).Symbol,cn=Object.prototype,ln=cn.hasOwnProperty,un=cn.toString,q=sn?sn.toStringTag:void 0;function dn(e){var t=ln.call(e,q),n=e[q];try{e[q]=void 0;var r=!0}catch{}var i=un.call(e);return r&&(t?e[q]=n:delete e[q]),i}var fn=Object.prototype.toString;function pn(e){return fn.call(e)}var mn=`[object Null]`,hn=`[object Undefined]`,gn=sn?sn.toStringTag:void 0;function _n(e){return e==null?e===void 0?hn:mn:gn&&gn in Object(e)?dn(e):pn(e)}function vn(e){return typeof e==`object`&&!!e}var yn=`[object Symbol]`;function bn(e){return typeof e==`symbol`||vn(e)&&_n(e)==yn}var xn=/\s/;function Sn(e){for(var t=e.length;t--&&xn.test(e.charAt(t)););return t}var Cn=/^\s+/;function wn(e){return e&&e.slice(0,Sn(e)+1).replace(Cn,``)}function Tn(e){var t=typeof e;return e!=null&&(t==`object`||t==`function`)}var En=NaN,Dn=/^[-+]0x[0-9a-f]+$/i,On=/^0b[01]+$/i,kn=/^0o[0-7]+$/i,An=parseInt;function jn(e){if(typeof e==`number`)return e;if(bn(e))return En;if(Tn(e)){var t=typeof e.valueOf==`function`?e.valueOf():e;e=Tn(t)?t+``:t}if(typeof e!=`string`)return e===0?e:+e;e=wn(e);var n=On.test(e);return n||kn.test(e)?An(e.slice(2),n?2:8):Dn.test(e)?En:+e}function Mn(e,t,n){return e===e&&(n!==void 0&&(e=e<=n?e:n),t!==void 0&&(e=e>=t?e:t)),e}function Nn(e,t,n){return n===void 0&&(n=t,t=void 0),n!==void 0&&(n=jn(n),n=n===n?n:0),t!==void 0&&(t=jn(t),t=t===t?t:0),Mn(jn(e),t,n)}var Pn=5e3;function J(){return{id:`local`,companyId:``,companyName:``,items:[]}}function Y(){return!1}function Fn(e){return[...new Set(e.map(e=>e.companyName).filter(Boolean))].join(`، `)}function In(e,t){return e.items.filter(e=>e.companyId===t).reduce((e,t)=>e+t.meterage,0)}var X=L(`cart`,()=>{let e=N([J()]),t=N(`local`),n=N(null),r=N(!1),i=P(()=>e.value.find(e=>e.id===t.value)??e.value[0]??null),a=P(()=>i.value?.items.reduce((e,t)=>e+t.meterage,0)??0),o=P(()=>i.value?.items.length??0),s=V(),c=P(()=>i.value?.items.length?Fn(i.value.items):``),l=P(()=>{let e=i.value;if(!e?.items.length)return[];let t=new Map;for(let n of e.items){let e=t.get(n.companyId);e?e.meterage+=n.meterage:t.set(n.companyId,{companyName:n.companyName||`شرکت`,meterage:n.meterage})}return[...t.entries()].map(([e,t])=>{let n=s.getCompany(e)?.maxMeteragePerInvoice??Pn;return{companyId:e,companyName:t.companyName,meterage:t.meterage,maxMeterage:n,remaining:Math.max(0,n-t.meterage)}})}),u=P(()=>l.value.length?l.value.reduce((e,t)=>e+t.maxMeterage,0):(n.value?s.getCompany(n.value):null)?.maxMeteragePerInvoice??Pn),d=P(()=>l.value.length?l.value.reduce((e,t)=>e+t.remaining,0):Math.max(0,u.value-a.value)),f=P(()=>l.value.some(e=>e.meterage>=e.maxMeterage));function p(r){let i={id:r.id,companyId:r.companyId||``,companyName:r.companyName||Fn(r.items),items:r.items??[],notes:r.notes};e.value=[i],t.value=i.id,i.companyId&&(n.value=i.companyId)}function m(n){e.value=[{...n,items:n.items.map(e=>({...e}))}],t.value=e.value[0].id}async function h(){if(!R()){g();return}if(Y()){r.value=!1;return}r.value=!0;try{p(await I(`/carts`))}catch{g()}finally{r.value=!1}}function g(){e.value=[J()],t.value=e.value[0].id,n.value=null}function _(e){n.value=e.id,i.value&&!i.value.items.length&&(i.value.companyId=e.id,i.value.companyName=e.name)}function v(e){return _(e),i.value??J()}function y(e){return e&&_(e),i.value??J()}async function b(){if(Y())return g(),i.value;try{return p(await I(`/carts`,{method:`DELETE`})),i.value}catch(e){return console.error(e),null}}function x(e,t,r,i,a,o=!1){let s=y(i),c=s.items.find(t=>t.productId===e.id),l=[...s.items];if(c){let t=l.findIndex(e=>e.id===c.id),n=a?[c.notes,a].filter(Boolean).join(` | `):c.notes,i=o?c.meterage+r:r;l[t]={...c,meterage:i,color:e.color||c.color,notes:n||void 0}}else{let n={id:`local-item-${e.id}-${Date.now()}`,productId:e.id,catalogCode:t,productName:e.name,productCode:e.code,color:e.color,meterage:r,notes:a||void 0,companyId:i.id,companyName:i.name};l.push(n)}return m({id:s.id||`local`,companyId:l[0]?.companyId||i.id,companyName:Fn(l)||i.name,items:l,notes:s.notes}),n.value=i.id,{success:!0}}async function S(e,t,r,a,o=!1){s.companies.length||await s.loadCompanies();let c=s.getCompany(e.companyId),l=i.value??J(),u=c?.maxMeteragePerInvoice??Pn,d=e.companyId?In(l,e.companyId):0,f=l.items.find(t=>t.productId===e.id),m=f?.meterage??0,h=f&&o?m+r:r,g=Te(h,e,d,u,m);if(!g.valid)return{success:!1,message:g.message};if(Y())return c?x(e,t,r,c,a,o):{success:!1,message:`شرکت محصول یافت نشد.`};try{let t,r=a?[f?.notes,a].filter(Boolean).join(` | `):f?.notes;return t=f?await I(`/carts/items/${f.id}`,{method:`PATCH`,body:{meterage:h,notes:r||void 0}}):await I(`/carts/items`,{method:`POST`,body:{productId:e.id,meterage:h,notes:a||void 0}}),p(t),n.value=c?.id||e.companyId||n.value,{success:!0}}catch(e){return{success:!1,message:e instanceof B?e.message:`افزودن به سبد ناموفق بود.`}}}async function C(e,t,n){if(!i.value)return{success:!1,message:`سبد خرید یافت نشد.`};let r=i.value.items.find(t=>t.id===e);if(!r)return{success:!1,message:`آیتم یافت نشد.`};let a=s.getCompany(r.companyId||n.companyId)?.maxMeteragePerInvoice??Pn,o=In(i.value,r.companyId),c=Te(t,n,o,a,r.meterage);if(!c.valid)return{success:!1,message:c.message};if(Y()){let n=i.value.items.map(n=>n.id===e?{...n,meterage:t}:n);return m({...i.value,items:n}),{success:!0}}try{return p(await I(`/carts/items/${e}`,{method:`PATCH`,body:{meterage:t}})),{success:!0}}catch(e){return{success:!1,message:e instanceof B?e.message:`به‌روزرسانی متراژ ناموفق بود.`}}}async function w(e){if(Y()){if(!i.value)return;let t=i.value.items.filter(t=>t.id!==e);m({...i.value,items:t});return}try{p(await I(`/carts/items/${e}`,{method:`DELETE`}))}catch(e){console.error(e)}}async function T(e){if(Y()){if(!i.value)return;m({...i.value,notes:e});return}try{p(await I(`/carts/notes`,{method:`PATCH`,body:{notes:e}}))}catch(e){console.error(e)}}async function ee(){if(Y()){g();return}try{p(await I(`/carts`,{method:`DELETE`}))}catch{g()}}function E(){}return{carts:e,activeCartId:t,selectedCompanyId:n,syncing:r,activeCart:i,totalMeterage:a,itemCount:o,companyNamesLabel:c,companySummaries:l,maxMeterage:u,remainingCapacity:d,isFull:f,initCartForCompany:v,selectCompany:_,createNewCartForSameCompany:b,addItem:S,updateItemMeterage:C,removeItem:w,setNotes:T,clearActiveCart:ee,ensureActiveCartForCartPage:E,hydrate:h,resetLocal:g}}),Ln=d({__name:`IconHome`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,r)=>(o(),n(F,{icon:`vuesax-linear:home`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),Rn=d({__name:`IconCart`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,r)=>(o(),n(F,{icon:`vuesax-linear:bag-2`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),zn=d({__name:`IconOrders`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,r)=>(o(),n(F,{icon:`vuesax-linear:document-text`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),Bn=d({__name:`IconProfile`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,r)=>(o(),n(F,{icon:`vuesax-linear:profile-circle`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),Vn=d({__name:`IconCatalog`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,r)=>(o(),n(F,{icon:`vuesax-linear:category`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),Hn=d({__name:`IconPlus`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,r)=>(o(),n(F,{icon:`vuesax-linear:add`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),Un=d({__name:`IconCheckBook`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,r)=>(o(),n(F,{icon:`vuesax-linear:card-receive`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),Wn=d({__name:`IconSettings`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,r)=>(o(),n(F,{icon:`vuesax-linear:setting-2`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),Gn=[{name:`home`,path:`/`,label:`خانه`,icon:Ln},{name:`products`,path:`/products`,label:`محصولات`,icon:Vn},{name:`order-fab`,path:`/cart`,label:`ثبت سفارش`,icon:Hn},{name:`orders`,path:`/orders`,label:`سفارش‌ها`,icon:zn},{name:`profile`,path:`/profile`,label:`پروفایل`,icon:Bn}],Kn=[{name:`home`,path:`/`,label:`خانه`,icon:Ln},{name:`products`,path:`/products`,label:`محصولات`,icon:Vn},{name:`cart`,path:`/cart`,label:`ثبت سفارش`,icon:Rn},{name:`orders`,path:`/orders`,label:`سفارش‌ها`,icon:zn},{name:`checks`,path:`/profile/checks`,label:`لیست چک‌ها`,icon:Un},{name:`settings`,path:`/profile/display`,label:`تنظیمات`,icon:Wn},{name:`profile`,path:`/profile`,label:`پروفایل`,icon:Bn}],qn=`/categories`,Jn=[`/categories`,`/products`,`/product`,`/favorites`],Yn=[`/profile/display`,`/profile/edit`,`/profile/security`],Xn=[`/profile/checks`,...Yn];function Zn(e,t){return t.some(t=>e===t||e.startsWith(`${t}/`))}function Qn(e,t,n){return e===`home`?n===`/`:e===`products`?Zn(n,Jn):e===`order-fab`||e===`cart`?n===`/cart`||n.startsWith(`/cart/`):e===`checks`?Zn(n,[`/profile/checks`]):e===`settings`?Zn(n,Yn):e===`profile`?n===`/profile`?!0:n.startsWith(`/profile/`)?!Zn(n,Xn):!1:t===`/`?n===`/`:n.startsWith(t)}function $n(e,t){return e.path}function er(e){return e===0?qn:`/cart`}var tr={class:`bottom-nav`,"aria-label":`ناوبری اصلی`},nr=[`aria-current`,`aria-label`,`onClick`],rr={key:0,class:`nav-badge`},ir={key:0,class:`nav-label`},ar={key:1,class:`nav-label nav-label--fab`},or=M(d({__name:`BottomNav`,setup(e){let i=te(),a=E(),c=X(),l=P(()=>c.itemCount);function d(e,t){let n=t.currentTarget;if(n instanceof HTMLElement&&n.blur(),e===`/cart`){a.push(er(c.itemCount));return}a.push(e)}return(e,a)=>(o(),u(`nav`,tr,[(o(!0),u(S,null,v(r(Gn),e=>(o(),u(`button`,{key:e.name,type:`button`,class:s([`nav-item`,{active:r(Qn)(e.name,e.path,r(i).path),"nav-item--fab":e.name===`order-fab`}]),"aria-current":r(Qn)(e.name,e.path,r(i).path)?`page`:void 0,"aria-label":e.label,onClick:t=>d(e.path,t)},[m(`span`,{class:s([`nav-icon`,{"nav-icon--fab":e.name===`order-fab`}])},[(o(),n(T(e.icon),{size:e.name===`order-fab`?26:22,"stroke-width":e.name===`order-fab`?1.8:1.5,color:e.name===`order-fab`?`#ffffff`:void 0},null,8,[`size`,`stroke-width`,`color`])),e.name===`order-fab`&&l.value>0?(o(),u(`span`,rr,h(l.value),1)):t(``,!0)],2),e.name===`order-fab`?(o(),u(`span`,ar,h(e.label),1)):(o(),u(`span`,ir,h(e.label),1))],10,nr))),128))]))}}),[[`__scopeId`,`data-v-759f4bb7`]]);function sr(e){if(!e)return;let t=e.replace(/[^\d+]/g,``);return t?`tel:${t}`:void 0}function cr(){return I(`/settings/public`,{auth:!1})}var Z=N(null),lr=null;function ur(){return Z.value?Promise.resolve():(lr||=cr().then(e=>{Z.value=e}).catch(()=>{Z.value={supportPhone:null,supportEmail:null}}),lr)}function dr(){let e=P(()=>Z.value?.supportPhone??null),t=P(()=>Z.value?.supportEmail??null),n=P(()=>sr(e.value));function r(){return ur()}return{load:r,supportPhone:e,supportEmail:t,supportHref:n}}var fr=d({__name:`IconHeadset`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,r)=>(o(),n(F,{icon:`vuesax-linear:headphone`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),pr=`/assets/nademitex-logo-BJLexNm4.png`,mr=[`src`],hr=M(d({__name:`IconQemashMark`,props:{size:{default:72}},setup(e){return(t,n)=>(o(),u(`img`,{class:`brand-logo`,src:r(pr),alt:``,style:_({height:`${e.size}px`}),draggable:`false`},null,12,mr))}}),[[`__scopeId`,`data-v-b211450b`]]),gr={class:`desktop-sidebar`,"aria-label":`ناوبری اصلی`},_r={class:`desktop-sidebar__brand`},vr={class:`desktop-sidebar__nav`},yr=[`aria-current`,`aria-label`,`title`,`onClick`],br={class:`desktop-sidebar__icon`},xr={class:`desktop-sidebar__label`},Sr={key:0,class:`desktop-sidebar__badge`},Cr={class:`desktop-sidebar__support`},wr={class:`desktop-sidebar__support-icon`,"aria-hidden":`true`},Tr=[`href`,`aria-disabled`],Er={key:0,class:`desktop-sidebar__support-phone`,dir:`ltr`},Dr=M(d({__name:`DesktopSidebar`,setup(e){let a=te(),c=E(),d=X(),{load:f,supportPhone:p,supportHref:g}=dr();i(()=>{f()});let _=P(()=>d.itemCount),y=P(()=>d.selectedCompanyId||d.activeCart?.companyId||null);function b(e){if(e.name===`cart`){c.push(er(d.itemCount));return}c.push($n(e,y.value))}return(e,i)=>(o(),u(`aside`,gr,[m(`div`,_r,[l(hr,{size:36}),i[1]||=m(`strong`,{class:`desktop-sidebar__title`},`نادمی تکس`,-1)]),m(`nav`,vr,[(o(!0),u(S,null,v(r(Kn),e=>(o(),u(`button`,{key:e.name,type:`button`,class:s([`desktop-sidebar__item`,{active:r(Qn)(e.name,e.path,r(a).path)}]),"aria-current":r(Qn)(e.name,e.path,r(a).path)?`page`:void 0,"aria-label":e.label,title:e.label,onClick:t=>b(e)},[m(`span`,br,[(o(),n(T(e.icon),{size:20}))]),m(`span`,xr,h(e.label),1),e.name===`cart`&&_.value>0?(o(),u(`span`,Sr,h(_.value),1)):t(``,!0)],10,yr))),128))]),m(`div`,Cr,[m(`span`,wr,[l(fr,{size:22})]),i[2]||=m(`strong`,{class:`desktop-sidebar__support-title`},`پشتیبانی و راهنما`,-1),i[3]||=m(`p`,{class:`desktop-sidebar__support-text`},` در صورت نیاز به راهنمایی یا گزارش مشکل با تیم پشتیبانی تماس بگیرید. `,-1),m(`a`,{href:r(g)??`#`,class:s([`desktop-sidebar__support-btn`,{"desktop-sidebar__support-btn--disabled":!r(g)}]),"aria-disabled":!r(g),onClick:i[0]||=e=>!r(g)&&e.preventDefault()},` تماس با پشتیبانی `,10,Tr),r(p)?(o(),u(`p`,Er,h(r(p)),1)):t(``,!0)])]))}}),[[`__scopeId`,`data-v-69fbaed9`]]),Or=`ft_user`,kr=`ft_pending_otp`;function Q(e){e?localStorage.setItem(Or,JSON.stringify(e)):localStorage.removeItem(Or)}function Ar(){try{let e=localStorage.getItem(Or);return e?JSON.parse(e):null}catch{return null}}function jr(){return R()?Ar():null}function Mr(){return!!R()}function Nr(e){try{e?sessionStorage.setItem(kr,JSON.stringify(e)):sessionStorage.removeItem(kr)}catch{}}async function Pr(e,t){let n=be(e);if(!/^09\d{9}$/.test(n))return{success:!1,message:`شماره موبایل معتبر نیست.`};if(t.isRegister&&(!t.firstName?.trim()||!t.lastName?.trim()))return{success:!1,message:`نام و نام خانوادگی الزامی است.`};try{Nr({phone:n,isRegister:t.isRegister,firstName:t.firstName,lastName:t.lastName});let e=await I(`/auth/otp/request`,{method:`POST`,auth:!1,body:{phone:n,firstName:t.firstName,lastName:t.lastName,isRegister:t.isRegister}}),r=e.debugCode?` (کد: ${e.debugCode})`:``;return{success:!0,message:`${e.message}${r}`}}catch(e){return{success:!1,message:e instanceof B?e.message:`ارسال کد ناموفق بود.`}}}async function Fr(e,t){let n=be(e);try{let e=await I(`/auth/otp/verify`,{method:`POST`,auth:!1,body:{phone:n,code:Se(t)}});return he(e.accessToken),Q(e.user),Nr(null),{success:!0,message:`ورود موفق.`,user:e.user}}catch(e){return{success:!1,message:e instanceof B?e.message:`تأیید کد ناموفق بود.`}}}function Ir(){he(null),Q(null),Nr(null)}async function Lr(){if(!R())return Q(null),null;try{let e=await I(`/auth/me`);return Q(e),e}catch{return Q(null),null}}async function Rr(e){try{let t=await I(`/auth/profile`,{method:`PATCH`,body:e});return Q(t),t}catch(t){let n=e.avatarUrl!==void 0&&e.firstName===void 0&&e.lastName===void 0&&e.nationalId===void 0&&e.address===void 0,r=Ar();if(!n||!r)throw t;let i={...r};return e.avatarUrl?i.avatarUrl=e.avatarUrl:delete i.avatarUrl,Q(i),i}}var zr=`ft_pending_register`,Br=[{id:`garment_producer`,label:`تولیدکننده پوشاک عمده`},{id:`atelier`,label:`مزون`},{id:`fabric_wholesaler`,label:`عمده‌فروش پارچه`}];function Vr(){try{let e=sessionStorage.getItem(zr);if(!e)return null;let t=JSON.parse(e);return!t?.firstName?.trim()||!t?.lastName?.trim()?null:{firstName:t.firstName.trim(),lastName:t.lastName.trim(),jobCategory:t.jobCategory}}catch{return null}}function Hr(e){if(e?.firstName?.trim()&&e?.lastName?.trim()){sessionStorage.setItem(zr,JSON.stringify({firstName:e.firstName.trim(),lastName:e.lastName.trim(),jobCategory:e.jobCategory}));return}sessionStorage.removeItem(zr)}function Ur(){return{checkCount:0,totalAmount:0,nearestDueDate:null,farthestDueDate:null,rassDays:0,rassDate:null}}function Wr(e,t=new Date){if(e.length===0)return Ur();let n=new Date(t);n.setHours(0,0,0,0);let r=0,i=0,a=[];for(let t of e){if(!t.dueDate){r+=t.amount;continue}let e=Ce(t.dueDate);if(Number.isNaN(e.getTime())){r+=t.amount;continue}e.setHours(0,0,0,0),a.push(e);let o=e.getTime()-n.getTime(),s=Math.max(0,Math.round(o/864e5));r+=t.amount,i+=t.amount*s}let o=r>0?Math.round(i/r):0,s=new Date(n);return s.setDate(s.getDate()+o),a.sort((e,t)=>e.getTime()-t.getTime()),{checkCount:e.length,totalAmount:r,nearestDueDate:a[0]?we(a[0]):null,farthestDueDate:a.length?we(a[a.length-1]):null,rassDays:o,rassDate:we(s)}}function Gr(e){let t=new Date;t.setHours(0,0,0,0);let n=Ce(e);return Number.isNaN(n.getTime())?0:(n.setHours(0,0,0,0),Math.max(0,Math.round((n.getTime()-t.getTime())/864e5)))}var Kr=L(`order`,()=>{let e=N([]),t=N([]),n=N(null),r=N(null),i=N(null),a=N(!1),o=P(()=>t=>[...e.value].sort((e,t)=>new Date(t.createdAt).getTime()-new Date(e.createdAt).getTime()));function s(t){return e.value.find(e=>e.id===t)}function c(e,a){i.value=e,n.value=`check`,t.value=[],r.value=a??null}function l(e){i.value=e.id,n.value=`check`,r.value=e.checkMode??`full`,t.value=(e.checks??[]).map(e=>({...e}))}function u(){i.value=null,t.value=[],r.value=null,n.value=null}function d(e){r.value=e}function f(e){t.value.push({...e,id:xe()})}function p(e,n){let r=t.value.findIndex(t=>t.id===e);r>=0&&(t.value[r]={...t.value[r],...n})}function m(e){t.value=t.value.filter(t=>t.id!==e)}function h(e){return Wr(t.value,e??new Date)}async function g(){if(!R()){e.value=[];return}a.value=!0;try{e.value=await I(`/orders`)}catch{e.value=[]}finally{a.value=!1}}function _(){e.value=[],u()}function v(t){let n=e.value.findIndex(e=>e.id===t.id);n>=0?e.value[n]=t:e.value.unshift(t)}async function y(e){try{let t=await I(`/orders/${e}`);return v(t),t}catch{return null}}async function b(t){if(!t.items.length)throw Error(`سبد خرید خالی است.`);if(t.id===`local`||t.items.some(e=>e.id.startsWith(`local-item-`)))throw Error(`سبد خرید با سرور همگام نیست. لطفاً دوباره محصولات را به سبد اضافه کنید.`);let n=[...new Set(t.items.map(e=>e.companyId).filter(Boolean))];if(!n.length)throw Error(`شرکت سبد مشخص نیست. سبد را خالی کنید و دوباره اضافه کنید.`);try{let r=await I(`/orders`,{method:`POST`,body:{companyId:n[0],notes:t.notes,items:t.items.map(e=>({productId:e.productId,meterage:Number(e.meterage),notes:e.notes}))}});return e.value.unshift(r),u(),r}catch(e){throw Error(e instanceof B?e.message:`ثبت سفارش ناموفق بود.`)}}async function x(e,t,n){try{let r=await I(`/orders/${e}/settlement`,{method:`POST`,body:{settlementType:t,checkMode:t===`check`?n??`full`:void 0}});return v(r),r}catch(e){throw Error(e instanceof B?e.message:`ثبت روش تسویه ناموفق بود.`)}}async function S(e,t){try{await I(`/orders/${e}/cash-receipt`,{method:`POST`,body:{amount:t.amount,transferDate:t.transferDate,transferTime:t.transferTime,trackingNumber:t.trackingNumber,destinationAccountId:t.destinationAccountId,receiptImage:t.receiptImage,notes:t.notes}});let n=await y(e);if(!n)throw Error(`رسید ثبت شد ولی دریافت سفارش ناموفق بود.`);return n}catch(e){throw Error(e instanceof B?e.message:`ثبت رسید ناموفق بود.`)}}async function C(e,t,n){try{let r=await I(`/orders/${e}/checks`,{method:`PATCH`,body:{checkMode:n,checks:t.map(e=>({amount:e.amount,dueDate:e.dueDate,sayadId:e.sayadId,checkNumber:e.checkNumber,ownerNationalId:e.ownerNationalId,ownerFirstName:e.ownerFirstName,ownerLastName:e.ownerLastName,bankName:e.bankName,branchName:e.branchName,frontImage:e.frontImage,backImage:e.backImage,notes:e.notes,mode:e.mode}))}});return v(r),u(),r}catch(e){throw Error(e instanceof B?e.message:`ثبت چک‌ها ناموفق بود.`)}}async function w(e){let t=[...new Set([e.companyId,...e.items.map(e=>e.companyId).filter(Boolean)].filter(Boolean))],n=V(),r=await Promise.all(t.map(e=>n.loadBankAccounts(e))),i=new Map;for(let e of r)for(let t of e)i.set(t.id,t);return[...i.values()]}async function T(e){return V().loadBankAccounts(e)}return{orders:e,draftChecks:t,draftSettlementType:n,draftCheckMode:r,draftOrderId:i,loading:a,userOrders:o,getOrderById:s,startCheckDraft:c,loadChecksIntoDraft:l,clearCheckDraft:u,setCheckMode:d,addDraftCheck:f,updateDraftCheck:p,removeDraftCheck:m,getDraftRass:h,submitOrder:b,chooseSettlement:x,submitCashReceipt:S,updateOrderChecks:C,hydrate:g,resetLocal:_,fetchOrder:y,getBankAccountsForOrder:w,getBankAccountsForCompany:T}}),qr=L(`notification`,()=>{let e=N([]),t=N(0),n=N(!1),r=P(()=>t.value>0);async function i(){if(!R()){e.value=[],t.value=0;return}n.value=!0;try{e.value=await I(`/notifications`),t.value=e.value.filter(e=>!e.isRead).length}catch{e.value=[],t.value=0}finally{n.value=!1}}async function a(){if(!R()){t.value=0;return}try{let e=await I(`/notifications/unread-count`);t.value=e.count}catch{}}async function o(n){let r=e.value.find(e=>e.id===n);if(!(!r||r.isRead)){r.isRead=!0,t.value=Math.max(0,t.value-1);try{await I(`/notifications/${n}/read`,{method:`PATCH`})}catch{await i()}}}async function s(){if(t.value){e.value=e.value.map(e=>({...e,isRead:!0})),t.value=0;try{await I(`/notifications/read-all`,{method:`PATCH`})}catch{await i()}}}function c(){e.value=[],t.value=0}return{items:e,unreadCount:t,loading:n,hasUnread:r,hydrate:i,refreshUnreadCount:a,markRead:o,markAllRead:s,resetLocal:c}}),Jr=`ft_favorites`;function Yr(){try{let e=localStorage.getItem(Jr);if(!e)return[];let t=JSON.parse(e);return Array.isArray(t)?t.filter(e=>typeof e==`string`):[]}catch{return[]}}function Xr(e){localStorage.setItem(Jr,JSON.stringify(e))}var Zr=L(`favorites`,()=>{let e=N(Yr()),t=N(!1),n=N({}),r=P(()=>new Set(e.value));function i(e){return r.value.has(e)}async function a(){try{let t=await I(`/products/favorites/ids`);e.value=t,Xr(t)}catch{e.value=Yr()}finally{t.value=!0}}async function o(t){if(!t||n.value[t])return;n.value={...n.value,[t]:!0};let r=i(t);e.value=r?e.value.filter(e=>e!==t):[...e.value,t],Xr(e.value);try{let n=await I(`/products/${t}/favorite`,{method:`POST`});e.value=n.favorited?[...new Set([...e.value.filter(e=>e!==t),t])]:e.value.filter(e=>e!==t),Xr(e.value)}catch(n){if(!(n instanceof B&&n.status===404))throw e.value=r?[...new Set([...e.value,t])]:e.value.filter(e=>e!==t),Xr(e.value),n}finally{let e={...n.value};delete e[t],n.value=e}}function s(){e.value=[],Xr([]),t.value=!1}return{ids:e,loaded:t,pending:n,isFavorite:i,hydrate:a,toggle:o,resetLocal:s}}),Qr=L(`auth`,()=>{let e=N(jr()),t=N(!1),n=N(null),r=N(Vr()),i=P(()=>!!e.value),a=P(()=>e.value?`${e.value.firstName} ${e.value.lastName}`:``),o=P(()=>e.value?.appRole===`agent`),s=P(()=>!!e.value&&e.value.appRole!==`agent`);function c(){n.value=null}function l(){r.value=null,Hr(null)}async function u(e,i){t.value=!0,n.value=null;try{let t=Vr();r.value=t;let a=i.firstName?.trim()||t?.firstName,o=i.lastName?.trim()||t?.lastName;i.isRegister&&a&&o&&(r.value={firstName:a,lastName:o},Hr(r.value));let s=await Pr(e,{isRegister:i.isRegister,firstName:a,lastName:o});return s.success||(n.value=s.message),s}finally{t.value=!1}}async function d(r,i){t.value=!0,n.value=null;let a=await Fr(r,i);return t.value=!1,a.success&&a.user?(e.value=a.user,l(),await Promise.all([V().loadCompanies(),X().hydrate(),Kr().hydrate(),qr().hydrate(),Zr().hydrate()])):n.value=a.message,a}function f(){Ir(),e.value=null,l(),X().resetLocal(),Kr().resetLocal(),qr().resetLocal(),Zr().resetLocal()}async function p(t){if(!e.value)return null;let n=await Rr(t);return n&&(e.value=n),n}async function m(){if(e.value=jr(),!e.value)return;let t=await Lr();e.value=t}return{user:e,loading:t,error:n,isAuthenticated:i,fullName:a,isAgent:o,isCustomerOnly:s,clearError:c,requestOtp:u,confirmOtp:d,logout:f,updateProfile:p,hydrate:m}}),$r=d({__name:`IconBell`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,r)=>(o(),n(F,{icon:`vuesax-linear:notification`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),ei=d({__name:`IconChevronLeft`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,r)=>(o(),n(F,{icon:`vuesax-linear:arrow-left-1`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),ti=L(`theme`,()=>{let e=_e(`ft_theme`,`system`),t=ve(),n=P(()=>e.value===`system`?t.value?`dark`:`light`:e.value),r=P(()=>n.value===`dark`);oe(()=>{let e=document.documentElement;e.classList.toggle(`dark`,r.value),e.style.colorScheme=n.value});function i(t){e.value=t}function a(){let t=[`light`,`dark`,`system`],n=t.indexOf(e.value);e.value=t[(n+1)%t.length]}function o(){e.value=r.value?`light`:`dark`}return{preference:e,resolved:n,isDark:r,setPreference:i,cyclePreference:a,toggleLightDark:o}}),ni=[`aria-label`,`title`],ri=M(d({__name:`AuthThemeToggle`,props:{variant:{default:`floating`}},setup(e){let t=ti(),{isDark:n}=z(t),i=P(()=>n.value?`vuesax-linear:sun-1`:`vuesax-linear:moon`),a=P(()=>n.value?`تغییر به تم روشن`:`تغییر به تم تاریک`);return(n,c)=>(o(),u(`button`,{type:`button`,class:s([`auth-theme-toggle`,e.variant===`inline`?`auth-theme-toggle--inline`:`auth-theme-toggle--floating`]),"aria-label":a.value,title:a.value,onClick:c[0]||=e=>r(t).toggleLightDark()},[l(F,{icon:i.value,size:18,"stroke-width":1.5},null,8,[`icon`])],10,ni))}}),[[`__scopeId`,`data-v-3a58cb84`]]),ii=[`src`],ai={key:1},oi=M(d({__name:`UserAvatar`,props:{src:{},initials:{},size:{default:72}},setup(e){return(t,n)=>(o(),u(`span`,{class:`user-avatar`,style:_({width:`${e.size}px`,height:`${e.size}px`,fontSize:`${Math.round(e.size*.38)}px`})},[e.src?(o(),u(`img`,{key:0,class:`user-avatar__img`,src:e.src,alt:``},null,8,ii)):(o(),u(`span`,ai,h(e.initials),1))],4))}}),[[`__scopeId`,`data-v-5c562bf0`]]),si={class:`desktop-header`},ci={class:`desktop-header__actions`},li={key:0,class:`desktop-header__company`},ui=[`aria-label`],di={class:`desktop-header__user-wrap`},fi=[`aria-expanded`],pi={class:`desktop-header__user-name`},mi={key:0,class:`desktop-header__menu`},hi=M(d({__name:`DesktopHeader`,setup(e){let n=E(),i=Qr(),a=X(),s=qr(),c=N(!1),d=P(()=>ye(s.unreadCount>9?`9+`:String(s.unreadCount))),f=P(()=>`${i.user?.firstName?.[0]??``}${i.user?.lastName?.[0]??``}`||`؟`),p=P(()=>a.companyNamesLabel||a.activeCart?.companyName||``);function g(){c.value=!c.value}function _(){c.value=!1,n.push(`/profile`)}function v(){c.value=!1,i.logout(),n.replace(`/welcome`)}return(e,a)=>(o(),u(`header`,si,[a[1]||=m(`div`,{class:`desktop-header__spacer`,"aria-hidden":`true`},null,-1),m(`div`,ci,[p.value?(o(),u(`span`,li,h(p.value),1)):t(``,!0),l(ri,{variant:`inline`}),m(`button`,{type:`button`,class:`desktop-header__icon-btn`,"aria-label":`اعلان‌ها`,onClick:a[0]||=e=>r(n).push(`/profile/notifications`)},[l($r,{size:20}),r(s).hasUnread?(o(),u(`span`,{key:0,class:`desktop-header__notif-badge`,"aria-label":`${r(s).unreadCount} اعلان خوانده‌نشده`},h(d.value),9,ui)):t(``,!0)]),m(`div`,di,[m(`button`,{type:`button`,class:`desktop-header__user`,"aria-expanded":c.value,onClick:g},[l(oi,{class:`desktop-header__avatar`,src:r(i).user?.avatarUrl,initials:f.value,size:32},null,8,[`src`,`initials`]),m(`span`,pi,h(r(i).fullName),1),l(ei,{size:16,class:`desktop-header__chevron`})],8,fi),c.value?(o(),u(`div`,mi,[m(`button`,{type:`button`,onClick:_},`پروفایل`),m(`button`,{type:`button`,class:`desktop-header__menu-logout`,onClick:v},`خروج`)])):t(``,!0)])])]))}}),[[`__scopeId`,`data-v-5f322d95`]]),gi={class:`app-layout`},_i={class:`app-frame`},vi={class:`app-main`},yi={class:`app-main__content`},bi={class:`app-content`},xi=d({__name:`DefaultLayout`,setup(e){let r=te(),i=P(()=>![`welcome`,`login`,`register`,`otp`,`settlement`,`check-mode`,`check-form`,`check-list`,`cash-settlement`,`order-success`].includes(r.name)&&!r.meta.hideNav),a=P(()=>[`settlement`,`check-mode`,`check-form`,`check-list`,`cash-settlement`].includes(r.name)),c=P(()=>r.name===`welcome`||r.name===`login`||r.name===`register`||r.name===`otp`);return(e,r)=>(o(),u(`div`,{class:s([`app-shell`,{"app-shell--no-nav":!i.value,"app-shell--wide":a.value,"app-shell--with-nav":i.value,"app-shell--immersive":c.value}])},[m(`div`,gi,[i.value?(o(),n(Dr,{key:0})):t(``,!0),m(`div`,_i,[i.value?(o(),n(hi,{key:0})):t(``,!0),m(`main`,vi,[m(`div`,yi,[m(`div`,bi,[f(e.$slots,`default`)])])]),i.value?(o(),n(or,{key:1})):t(``,!0)])])],2))}}),Si=[`type`,`disabled`],Ci={key:0,class:`btn-spinner`},wi=M(d({__name:`BaseButton`,props:{variant:{},size:{},block:{type:Boolean},disabled:{type:Boolean},loading:{type:Boolean},type:{}},setup(e){return(n,r)=>(o(),u(`button`,{type:e.type??`button`,class:s([`btn`,[`btn-${e.variant??`primary`}`,`btn-${e.size??`md`}`,{"btn-block":e.block}]]),disabled:e.disabled||e.loading},[e.loading?(o(),u(`span`,Ci)):t(``,!0),f(n.$slots,`default`,{},void 0,!0)],10,Si))}}),[[`__scopeId`,`data-v-3628a8bb`]]),Ti=D({open:!1,title:``,message:``,confirmLabel:`حذف`,cancelLabel:`انصراف`,tone:`danger`,resolve:null});function Ei(){return Ti}function Di(e){return new Promise(t=>{Object.assign(Ti,{open:!0,title:e.title,message:e.message,confirmLabel:e.confirmLabel??`حذف`,cancelLabel:e.cancelLabel??`انصراف`,tone:e.tone??`danger`,resolve:t})})}function Oi(e){Ti.resolve?.(e),Ti.open=!1,Ti.resolve=null}var ki={class:`dialog card confirm-dialog`},Ai={id:`confirm-dialog-title`,class:`confirm-dialog__title`},ji={class:`confirm-dialog__message`},Mi={class:`dialog-actions confirm-dialog__actions`},Ni=M(d({__name:`ConfirmDialog`,setup(e){let n=Ei();function i(){Oi(!1)}function a(){Oi(!0)}return(e,s)=>r(n).open?(o(),u(`div`,{key:0,class:`dialog-overlay confirm-dialog-overlay`,role:`dialog`,"aria-modal":`true`,"aria-labelledby":`confirm-dialog-title`,onClick:pe(i,[`self`])},[m(`div`,ki,[m(`h3`,Ai,h(r(n).title),1),m(`p`,ji,h(r(n).message),1),m(`div`,Mi,[l(wi,{variant:`outline`,onClick:i},{default:j(()=>[c(h(r(n).cancelLabel),1)]),_:1}),l(wi,{variant:r(n).tone===`danger`?`danger`:`primary`,onClick:a},{default:j(()=>[c(h(r(n).confirmLabel),1)]),_:1},8,[`variant`])])])])):t(``,!0)}}),[[`__scopeId`,`data-v-2e50e2a7`]]),Pi=d({__name:`App`,setup(e){let t=Qr(),a=X(),s=Kr(),c=V(),d=qr(),f=E(),p=N(`page-fade`);function m(e){return e.split(`/`).filter(Boolean).length}return f.beforeEach((e,t)=>{if(!t.name){p.value=`page-fade`;return}let n=Nn(m(e.path)-m(t.path),-1,1);n>0?p.value=`page-forward`:n<0?p.value=`page-back`:p.value=`page-fade`}),i(async()=>{await t.hydrate(),t.isAuthenticated&&await Promise.all([c.loadCompanies(),a.hydrate(),s.hydrate(),d.hydrate()])}),ge(()=>{t.isAuthenticated&&d.refreshUnreadCount()},6e4,{immediate:!1}),(e,t)=>(o(),u(S,null,[l(xi,null,{default:j(()=>[l(r(nn),null,{default:j(({Component:e,route:t})=>[l(fe,{name:p.value,mode:`out-in`},{default:j(()=>[(o(),u(`div`,{key:t.path,class:`page-transition page-shell`},[(o(),n(T(e)))]))]),_:2},1032,[`name`])]),_:1})]),_:1}),l(Ni)],64))}}),Fi=`modulepreload`,Ii=function(e){return`/`+e},Li={},$=function(e,t,n){let r=Promise.resolve();if(t&&t.length>0){let e=document.getElementsByTagName(`link`),i=document.querySelector(`meta[property=csp-nonce]`),a=i?.nonce||i?.getAttribute(`nonce`);function o(e){return Promise.all(e.map(e=>Promise.resolve(e).then(e=>({status:`fulfilled`,value:e}),e=>({status:`rejected`,reason:e}))))}function s(e){return import.meta.resolve?import.meta.resolve(e):new URL(e,import.meta.url).href}r=o(t.map(t=>{if(t=Ii(t,n),t=s(t),t in Li)return;Li[t]=!0;let r=t.endsWith(`.css`);for(let n=e.length-1;n>=0;n--){let i=e[n];if(i.href===t&&(!r||i.rel===`stylesheet`))return}let i=document.createElement(`link`);if(i.rel=r?`stylesheet`:Fi,r||(i.as=`script`),i.crossOrigin=``,i.href=t,a&&i.setAttribute(`nonce`,a),document.head.appendChild(i),r)return new Promise((e,n)=>{i.addEventListener(`load`,e),i.addEventListener(`error`,()=>n(Error(`Unable to preload CSS for ${t}`)))})}))}function i(e){let t=new Event(`vite:preloadError`,{cancelable:!0});if(t.payload=e,window.dispatchEvent(t),!t.defaultPrevented)throw e}return r.then(t=>{for(let e of t||[])e.status===`rejected`&&i(e.reason);return e().catch(i)})},Ri=rn({history:Tt(`/`),routes:[{path:`/welcome`,name:`welcome`,component:()=>$(()=>import(`./WelcomeView-CY8sq5mY.js`),__vite__mapDeps([0,1,2,3,4,5])),meta:{guest:!0,hideNav:!0}},{path:`/login`,name:`login`,component:()=>$(()=>import(`./LoginView-DkQyawlh.js`),__vite__mapDeps([6,1,2,3,7,8,9,10,11,12,4,13])),meta:{guest:!0,hideNav:!0}},{path:`/register`,name:`register`,component:()=>$(()=>import(`./RegisterView-B5N97yVt.js`),__vite__mapDeps([14,1,2,3,15,16,7,8,9,10,11,12,17,18])),meta:{guest:!0,hideNav:!0}},{path:`/otp`,name:`otp`,component:()=>$(()=>import(`./OtpView-CsrAaJgf.js`),__vite__mapDeps([19,1,2,3,16,7,20,9,10,12,4,21,22])),meta:{guest:!0,hideNav:!0}},{path:`/`,name:`home`,component:()=>$(()=>import(`./HomeView-Bqa7R1Mj.js`),__vite__mapDeps([23,1,2,3,24,7,20,25,26,27,28,29,30,31,32])),meta:{requiresAuth:!0}},{path:`/companies`,redirect:`/categories`},{path:`/categories`,name:`categories`,component:()=>$(()=>import(`./CategoriesView-DT-MUnmH.js`),__vite__mapDeps([33,1,2,3,20,17,25,26,27,24,34,28,35,36,37,38])),meta:{requiresAuth:!0}},{path:`/products`,name:`products`,component:()=>$(()=>import(`./ProductsView-DtAZBhWt.js`),__vite__mapDeps([39,1,2,3,15,16,40,17,41,20,42,43,44,25,26,27,24,35,36,37,30,31,45,46])),meta:{requiresAuth:!0}},{path:`/product`,name:`product`,component:()=>$(()=>import(`./ProductDetailView-BxbbLfCJ.js`),__vite__mapDeps([47,1,2,3,7,48,24,20,25,26,27,49,28,37,29,30,31,45,50])),meta:{requiresAuth:!0}},{path:`/catalogs`,name:`catalogs`,component:()=>$(()=>import(`./CatalogsHubView-CAAnf2JN.js`),__vite__mapDeps([51,1,7,48,24,20,2,3,43,44,25,26,52,27,34,28,53])),meta:{requiresAuth:!0}},{path:`/catalogs/:catalogId`,name:`catalog-detail`,component:()=>$(()=>import(`./CatalogProductRedirectView-GITIU3xk.js`),__vite__mapDeps([54,1,25,26,52,7,48,24,27])),meta:{requiresAuth:!0}},{path:`/catalog-requests`,name:`catalog-requests`,component:()=>$(()=>import(`./CatalogRequestsView-B_32f4tA.js`),__vite__mapDeps([55,1,7,41,20,2,3,42,49,24,56])),meta:{requiresAuth:!0}},{path:`/catalog-requests/latest-status`,name:`catalog-request-latest-status`,component:()=>$(()=>import(`./LatestCatalogRequestStatusView-CQQrt43S.js`),__vite__mapDeps([57,1,7,41,20,2,3,42,25,26,49,24,58,59,60])),meta:{requiresAuth:!0}},{path:`/favorites`,name:`favorites`,component:()=>$(()=>import(`./FavoritesView-y720DF4m.js`),__vite__mapDeps([61,1,2,3,7,41,20,42,25,26,27,24,31,45,62])),meta:{requiresAuth:!0}},{path:`/customers`,name:`customers`,component:()=>$(()=>import(`./CustomersView-CNLgp8Je.js`),__vite__mapDeps([63,1,7,40,2,3,41,20,42,43,44,25,26,27,24,64,8,9,10,12,65,66,67,68])),meta:{requiresAuth:!0,agentOnly:!0}},{path:`/customers/new`,redirect:e=>({path:`/customers`,query:{...e.query,create:`1`}})},{path:`/customer`,name:`customer`,component:()=>$(()=>import(`./CustomerDetailView-Cvk2MqwU.js`),__vite__mapDeps([69,1,2,3,7,70,71,11,21,72,41,20,42,25,26,27,24,73,74,64,8,9,10,12,65,66,67,75])),meta:{requiresAuth:!0,agentOnly:!0}},{path:`/meeting-report`,redirect:e=>({path:`/customer`,query:{id:String(e.query.customerId??``),tab:`reports`,meetingReport:`1`}})},{path:`/reminders`,name:`reminders`,component:()=>$(()=>import(`./RemindersView-CP53npYK.js`),__vite__mapDeps([76,1,2,3,15,16,7,20,77,25,26,27,24,28,73,74,78])),meta:{requiresAuth:!0,agentOnly:!0}},{path:`/reminder`,name:`reminder`,component:()=>$(()=>import(`./ReminderDetailView-Dr0qYekB.js`),__vite__mapDeps([79,1,41,20,2,3,42,25,26,27,24,80])),meta:{requiresAuth:!0,agentOnly:!0,hideNav:!0}},{path:`/companies/:companyId/catalogs`,name:`company-catalogs`,component:()=>$(()=>import(`./CatalogListView-kLwRIxQN.js`),__vite__mapDeps([81,1,48,24,82,2,3,83,41,20,42,43,44,25,26,52,7,27,84])),meta:{requiresAuth:!0}},{path:`/companies/:companyId/catalogs/:catalogId/products`,name:`company-products`,redirect:e=>({path:`/products`,query:{catalogId:String(e.params.catalogId??``),companyId:String(e.params.companyId??``)}})},{path:`/cart`,name:`cart`,component:()=>$(()=>import(`./CartView-BFjbSmpZ.js`),__vite__mapDeps([85,1,2,3,7,82,83,20,9,10,17,86,87,72,36,88])),meta:{requiresAuth:!0}},{path:`/orders`,name:`orders`,component:()=>$(()=>import(`./OrdersView-BIlEM87V.js`),__vite__mapDeps([89,1,2,3,7,48,24,82,83,70,20,71,40,77,90])),meta:{requiresAuth:!0}},{path:`/orders/latest-status`,name:`order-latest-status`,component:()=>$(()=>import(`./LatestOrderStatusView-xE-ByuMy.js`),__vite__mapDeps([91,1,7,41,20,2,3,42,25,26,58,59,92])),meta:{requiresAuth:!0}},{path:`/order`,name:`order-query`,redirect:e=>{let t=String(e.query.id??``);return t?{path:`/orders/${t}`}:{name:`orders`}}},{path:`/orders/:id`,name:`order-detail`,component:()=>$(()=>import(`./OrderDetailView-DPEL7-lF.js`),__vite__mapDeps([93,1,2,3,15,16,7,8,70,20,9,10,12,94,65,66,95,96,73,74,97])),meta:{requiresAuth:!0}},{path:`/orders/:id/success`,name:`order-success`,component:()=>$(()=>import(`./OrderSuccessView-DbGNDiom.js`),__vite__mapDeps([98,1,7,41,20,2,3,42,28,99])),meta:{requiresAuth:!0,hideNav:!0}},{path:`/orders/:id/settlement`,name:`settlement`,component:()=>$(()=>import(`./SettlementTypeView-BAS_xsRw.js`),__vite__mapDeps([100,1,2,3,7,9,10,86,87,41,20,42,94,101,102])),meta:{requiresAuth:!0,hideNav:!0}},{path:`/orders/:id/cash`,name:`cash-settlement`,component:()=>$(()=>import(`./CashSettlementView-BxW5Z-lD.js`),__vite__mapDeps([103,1,2,3,7,48,24,41,20,42,101,94,104])),meta:{requiresAuth:!0,hideNav:!0}},{path:`/orders/:id/check-mode`,name:`check-mode`,component:()=>$(()=>import(`./CheckModeSelectView-BZfruEWx.js`),__vite__mapDeps([105,1,7,21,2,3,41,20,42,101,94,106])),meta:{requiresAuth:!0,hideNav:!0}},{path:`/orders/:id/check-form`,name:`check-form`,component:()=>$(()=>import(`./CheckFormView-C6JGTT8G.js`),__vite__mapDeps([107,1,2,3,7,8,9,10,12,41,20,42,101,94,65,66,95,96,73,74,108])),meta:{requiresAuth:!0,hideNav:!0}},{path:`/orders/:id/check-list`,name:`check-list`,component:()=>$(()=>import(`./CheckListView-BhenoTXJ.js`).then(e=>e.n),__vite__mapDeps([109,1,7,82,2,3,83,20,9,10,101,94,110])),meta:{requiresAuth:!0,hideNav:!0}},{path:`/profile`,name:`profile`,component:()=>$(()=>import(`./ProfileView-Du0bsfdh.js`),__vite__mapDeps([111,1,2,3,7,70,25,26,27,24,30,31,112])),meta:{requiresAuth:!0}},{path:`/profile/edit`,name:`profile-edit`,component:()=>$(()=>import(`./ProfileEditView-DKPvUiwL.js`),__vite__mapDeps([113,1,2,3,9,10,12,65,66,114,20,115,116])),meta:{requiresAuth:!0}},{path:`/profile/security`,name:`profile-security`,component:()=>$(()=>import(`./ProfileSecurityView-Kv1i6EIE.js`),__vite__mapDeps([117,1,9,10,12,65,66,114,20,2,3,115,118])),meta:{requiresAuth:!0}},{path:`/profile/notifications`,name:`profile-notifications`,component:()=>$(()=>import(`./ProfileNotificationsView-CRUkrfu7.js`),__vite__mapDeps([119,1,2,3,7,82,83,114,20,115,120])),meta:{requiresAuth:!0}},{path:`/profile/display`,name:`profile-display`,component:()=>$(()=>import(`./ProfileDisplayView-lgTZCjkL.js`),__vite__mapDeps([121,1,2,3,16,114,20,115,122])),meta:{requiresAuth:!0}},{path:`/profile/checks`,name:`profile-checks`,component:()=>$(()=>import(`./ProfileChecksView-CZ9czIQ3.js`),__vite__mapDeps([123,109,1,7,82,2,3,83,20,9,10,101,94,110])),meta:{requiresAuth:!0}}],scrollBehavior(){return{top:0}}});Ri.beforeEach(async e=>{await Qr().hydrate();let t=Mr();return e.meta.requiresAuth&&!t?{name:`login`,query:{redirect:e.fullPath}}:e.meta.guest&&t||e.meta.agentOnly&&Ar()?.appRole!==`agent`?{name:`home`}:!0});var zi=de(Pi),Bi=me();zi.use(Bi),zi.use(Ri),ti(Bi),zi.mount(`#app`);export{X as A,Un as C,zn as D,Bn as E,Rn as O,Wn as S,Vn as T,hr as _,ti as a,sr as b,Qr as c,Kr as d,Wr as f,Hr as g,Vr as h,ri as i,Ln as k,Zr as l,Br as m,wi as n,ei as o,Gr as p,oi as r,$r as s,Di as t,qr as u,fr as v,Hn as w,qn as x,cr as y}; \ No newline at end of file diff --git a/dist/assets/index-BrjLizie.js b/dist/assets/index-BrjLizie.js new file mode 100644 index 0000000..12f75f3 --- /dev/null +++ b/dist/assets/index-BrjLizie.js @@ -0,0 +1,2 @@ +const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/WelcomeView-B9nyWLIh.js","assets/_plugin-vue_export-helper-1xMDlcEE.js","assets/BasicIcon-Bzeb0Iwd.js","assets/BasicIcon-QF_b9Svq.css","assets/login-fabric-CzrIXTnD.js","assets/WelcomeView-Bue6hk9x.css","assets/LoginView-BHpJH2ha.js","assets/format-C72AoJ2H.js","assets/validation-Duyyve7l.js","assets/FormErrorBanner-Ud1D04xf.js","assets/FormErrorBanner-Hje8L-00.css","assets/IconPhone-DymoL1t0.js","assets/formErrors-DglFjYkZ.js","assets/LoginView-DzSYxjJ8.css","assets/RegisterView-B12mniS_.js","assets/dist-Bc4P4ngC.js","assets/dist-U-AqZ6hP.js","assets/IconDiamond-bOGfMf7j.js","assets/RegisterView-DGOdJpXQ.css","assets/OtpView-DEZNJ86U.js","assets/IconChevronBack-CDeN0Cbu.js","assets/IconEditPen-DkMxper9.js","assets/OtpView-w9hAwgso.css","assets/HomeView-CvirsHZC.js","assets/http-Cmeatq0_.js","assets/PageSkeleton-DYdjm4l9.js","assets/PageSkeleton-CaQ4bDKV.css","assets/crm-DoYzOa8A.js","assets/useGoBack-C1ocTT2D.js","assets/quick-catalog-request-Di7-t6Ua.js","assets/IconHeart-CvzbNH_T.js","assets/IconBookmark-CQq-TOS-.js","assets/HomeView-DYKXegvY.css","assets/CategoriesView-fGgvG-m4.js","assets/IconSearch-CUp0Xr9R.js","assets/categoryIcons-DNHSoriy.js","assets/IconLayoutGrid-CTmPrZXE.js","assets/IconShoppingBag-BHoZiOex.js","assets/CategoriesView-CyqqIlyd.css","assets/ProductsView-Da45qLqI.js","assets/IconFilter-DgpHKrEL.js","assets/PageHeader-BSsCNguu.js","assets/PageHeader-C69aO5cY.css","assets/SearchField-dVDn9y5S.js","assets/SearchField-QJMYJEg3.css","assets/colorSwatch-BgOH1LE5.js","assets/ProductsView-8JHsBxFC.css","assets/ProductDetailView-BqszvyUB.js","assets/catalog-BHsy1JeE.js","assets/catalogRequests-Bfg-Nm09.js","assets/ProductDetailView-ebUQtFn7.css","assets/CatalogsHubView-BnSYeqwJ.js","assets/catalogNavigation-CNQR36ce.js","assets/CatalogsHubView-C58IZDvz.css","assets/CatalogProductRedirectView-Bzfk8EFi.js","assets/CatalogRequestsView-DavJD797.js","assets/CatalogRequestsView-BPWS27x8.css","assets/LatestCatalogRequestStatusView-CKVcuf7K.js","assets/SimpleStatusTimeline-BYp_nmbJ.js","assets/SimpleStatusTimeline-CVRESTGF.css","assets/LatestCatalogRequestStatusView-DIeeilMn.css","assets/FavoritesView-RlUx7_H2.js","assets/FavoritesView-Cyn80nII.css","assets/CustomersView-oFAB_RWo.js","assets/CustomerCreateOverlay-iQAyp2AI.js","assets/BaseInput-CpE3bVJZ.js","assets/BaseInput-BKq5OFkZ.css","assets/CustomerCreateOverlay-DpQkF2Gz.css","assets/CustomersView-ZfDgnskm.css","assets/CustomerDetailView-D06mrc2B.js","assets/constants-DXXK14Zz.js","assets/IconProgressClock-C2Emr6X3.js","assets/IconClipboardEmpty-D-FEqLzR.js","assets/PersianDateInput-DrDb_iFF.js","assets/PersianDateInput-CQDjJN3F.css","assets/CustomerDetailView-D35VhooF.css","assets/RemindersView-DQScMISF.js","assets/IconMoreVertical-DxvtLM6t.js","assets/RemindersView-4scV8gnB.css","assets/ReminderDetailView-CB182Fxn.js","assets/ReminderDetailView-Bgb1iArR.css","assets/CatalogListView-JUCOpCr_.js","assets/EmptyState-D72g65G-.js","assets/EmptyState-D6A5GmrP.css","assets/CatalogListView-DvvVUQtY.css","assets/CartView-Bke6TXBV.js","assets/CheckoutStepper-DptjKnv0.js","assets/CheckoutStepper-hqk-kVCz.css","assets/CartView-C652iQUF.css","assets/OrdersView-BXe3x3fy.js","assets/OrdersView-C_CUEMfe.css","assets/LatestOrderStatusView-Cmvk1IZX.js","assets/LatestOrderStatusView-Dt4fuopS.css","assets/OrderDetailView-BQgUhha9.js","assets/orderInvoice-B0L1Aeuk.js","assets/CurrencyInput-Cu2dRPFo.js","assets/CurrencyInput-ByU-DLUz.css","assets/OrderDetailView-5Zi-DKNv.css","assets/OrderSuccessView-BGnYjzbC.js","assets/OrderSuccessView-BI6XPtrV.css","assets/SettlementTypeView-B79MwpEm.js","assets/useRequirePricedOrder-CmTdgjZX.js","assets/SettlementTypeView-C3wqclvS.css","assets/CashSettlementView-BbwaRcwg.js","assets/CashSettlementView-C8IRazOR.css","assets/CheckModeSelectView-DXLWag4X.js","assets/CheckModeSelectView-BZlKzxFL.css","assets/CheckFormView-BZacVTAv.js","assets/CheckFormView-Cgp6kUZ2.css","assets/CheckListView-CjmQVBmc.js","assets/CheckListView-B_ogsKeK.css","assets/ProfileView-DOOsdorU.js","assets/ProfileView-D30gaY9q.css","assets/ProfileEditView-D1Tcro0s.js","assets/ProfileSubpageLayout-Ce-Qt1do.js","assets/ProfileSubpageLayout-DCtwNGmO.css","assets/ProfileEditView-DdWsicsc.css","assets/ProfileSecurityView-CtNJOjnr.js","assets/ProfileSecurityView-BjbybMSz.css","assets/ProfileNotificationsView-HWhGI6LP.js","assets/ProfileNotificationsView-BqMkB4wX.css","assets/ProfileDisplayView-D1_O0poX.js","assets/ProfileDisplayView-CDaE5E6F.css","assets/ProfileChecksView-CspNmMYH.js","assets/NotFoundView-DcuA7MTj.js","assets/NotFoundView-N95LQNdN.css"])))=>i.map(i=>d[i]); +import{At as e,E as t,F as n,G as r,I as i,M as a,N as o,Nt as s,Pt as c,R as l,S as u,U as d,W as f,_ as p,at as m,c as h,d as g,et as _,f as v,g as y,i as b,k as x,l as S,nt as C,rt as ee,t as w,u as T,ut as E,v as D,w as O}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{i as te,n as ne,t as k,u as re}from"./BasicIcon-Bzeb0Iwd.js";import{a as ie,i as ae,n as A,o as j,r as M,s as oe,t as N}from"./http-Cmeatq0_.js";import{l as se}from"./dist-U-AqZ6hP.js";import{i as ce,r as le}from"./dist-Bc4P4ngC.js";import{d as P,l as F,s as I,t as ue,v as de,y as fe}from"./format-C72AoJ2H.js";import{r as pe}from"./validation-Duyyve7l.js";import{t as L}from"./catalog-BHsy1JeE.js";(function(){let e=document.createElement(`link`).relList;if(e&&e.supports&&e.supports(`modulepreload`))return;for(let e of document.querySelectorAll(`link[rel="modulepreload"]`))n(e);new MutationObserver(e=>{for(let t of e)if(t.type===`childList`)for(let e of t.addedNodes)e.tagName===`LINK`&&e.rel===`modulepreload`&&n(e)}).observe(document,{childList:!0,subtree:!0});function t(e){let t={};return e.integrity&&(t.integrity=e.integrity),e.referrerPolicy&&(t.referrerPolicy=e.referrerPolicy),t.credentials=e.crossOrigin===`use-credentials`?`include`:e.crossOrigin===`anonymous`?`omit`:`same-origin`,t}function n(e){if(e.ep)return;e.ep=!0;let n=t(e);fetch(e.href,n)}})();function me(e){return typeof e==`object`||`displayName`in e||`props`in e||`__vccOpts`in e}function he(e){return e.__esModule||e[Symbol.toStringTag]===`Module`||e.default&&me(e.default)}var R=Object.assign;function ge(e,t){let n={};for(let r in t){let i=t[r];n[r]=B(i)?i.map(e):e(i)}return n}var z=()=>{},B=Array.isArray;function _e(e,t){let n={};for(let r in e)n[r]=r in t?t[r]:e[r];return n}var ve=Symbol(``);function V(e,t){return R(Error(),{type:e,[ve]:!0},t)}function H(e,t){return e instanceof Error&&ve in e&&(t==null||!!(e.type&t))}var ye=Symbol(``),be=Symbol(``),xe=Symbol(``),Se=Symbol(``),Ce=Symbol(``);function we(){return O(xe)}function Te(e){return O(Se)}var U=typeof document<`u`,Ee=/#/g,De=/&/g,Oe=/\//g,ke=/=/g,Ae=/\?/g,je=/\+/g,Me=/%5B/g,Ne=/%5D/g,Pe=/%5E/g,Fe=/%60/g,Ie=/%7B/g,Le=/%7C/g,Re=/%7D/g,ze=/%20/g;function Be(e){return e==null?``:encodeURI(``+e).replace(Le,`|`).replace(Me,`[`).replace(Ne,`]`)}function Ve(e){return Be(e).replace(Ie,`{`).replace(Re,`}`).replace(Pe,`^`)}function He(e){return Be(e).replace(je,`%2B`).replace(ze,`+`).replace(Ee,`%23`).replace(De,`%26`).replace(Fe,"`").replace(Ie,`{`).replace(Re,`}`).replace(Pe,`^`)}function Ue(e){return He(e).replace(ke,`%3D`)}function We(e){return Be(e).replace(Ee,`%23`).replace(Ae,`%3F`)}function Ge(e){return We(e).replace(Oe,`%2F`)}function Ke(e){if(e==null)return null;try{return decodeURIComponent(``+e)}catch{}return``+e}var qe=/\/$/,Je=e=>e.replace(qe,``);function Ye(e,t,n=`/`){let r,i={},a=``,o=``,s=t.indexOf(`#`),c=t.indexOf(`?`);return c=s>=0&&c>s?-1:c,c>=0&&(r=t.slice(0,c),a=t.slice(c,s>0?s:t.length),i=e(a.slice(1))),s>=0&&(r||=t.slice(0,s),o=t.slice(s,t.length)),r=nt(r??t,n),{fullPath:r+a+o,path:r,query:i,hash:Ke(o)}}function Xe(e,t){let n=t.query?e(t.query):``;return t.path+(n&&`?`)+n+(t.hash||``)}function Ze(e,t){return!t||!e.toLowerCase().startsWith(t.toLowerCase())?e:e.slice(t.length)||`/`}function Qe(e,t,n){let r=t.matched.length-1,i=n.matched.length-1;return r>-1&&r===i&&W(t.matched[r],n.matched[i])&&$e(t.params,n.params)&&e(t.query)===e(n.query)&&t.hash===n.hash}function W(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function $e(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(var n in e)if(!et(e[n],t[n]))return!1;return!0}function et(e,t){return B(e)?tt(e,t):B(t)?tt(t,e):(e&&e.valueOf())===(t&&t.valueOf())}function tt(e,t){return B(t)?e.length===t.length&&e.every((e,n)=>e===t[n]):e.length===1&&e[0]===t}function nt(e,t){if(e.startsWith(`/`))return e;if(!e)return t;let n=t.split(`/`),r=e.split(`/`),i=r[r.length-1];(i===`..`||i===`.`)&&r.push(``);let a=n.length-1,o,s;for(o=0;o1&&a--;else break;return n.slice(0,a).join(`/`)+`/`+r.slice(o).join(`/`)}var G={path:`/`,name:void 0,params:{},query:{},hash:``,fullPath:`/`,matched:[],meta:{},redirectedFrom:void 0};function rt(e){if(!e)if(U){let t=document.querySelector(`base`);e=t&&t.getAttribute(`href`)||`/`,e=e.replace(/^\w+:\/\/[^/]+/,``)}else e=`/`;return e[0]!==`/`&&e[0]!==`#`&&(e=`/`+e),Je(e)}var it=/^[^#]+#/;function at(e,t){return e.replace(it,`#`)+t}function ot(e,t){let n=document.documentElement.getBoundingClientRect(),r=e.getBoundingClientRect();return{behavior:t.behavior,left:r.left-n.left-(t.left||0),top:r.top-n.top-(t.top||0)}}var st=()=>({left:window.scrollX,top:window.scrollY});function ct(e){let t;if(`el`in e){let n=e.el,r=typeof n==`string`&&n.startsWith(`#`),i=typeof n==`string`?r?document.getElementById(n.slice(1)):document.querySelector(n):n;if(!i)return;t=ot(i,e)}else t=e;`scrollBehavior`in document.documentElement.style?window.scrollTo(t):window.scrollTo(t.left==null?window.scrollX:t.left,t.top==null?window.scrollY:t.top)}function lt(e,t){return(history.state?history.state.position-t:-1)+e}var ut=new Map;function dt(e,t){ut.set(e,t)}function ft(e){let t=ut.get(e);return ut.delete(e),t}function pt(e){return typeof e==`string`||e&&typeof e==`object`}function mt(e){return typeof e==`string`||typeof e==`symbol`}function ht(e){let t={};if(e===``||e===`?`)return t;let n=(e[0]===`?`?e.slice(1):e).split(`&`);for(let e=0;ee&&He(e)):[r&&He(r)]).forEach(e=>{e!==void 0&&(t+=(t.length?`&`:``)+n,e!=null&&(t+=`=`+e))})}return t}function _t(e){let t={};for(let n in e){let r=e[n];r!==void 0&&(t[n]=B(r)?r.map(e=>e==null?null:``+e):r==null?r:``+r)}return t}function K(){let e=[];function t(t){return e.push(t),()=>{let n=e.indexOf(t);n>-1&&e.splice(n,1)}}function n(){e=[]}return{add:t,list:()=>e.slice(),reset:n}}function q(e,t,n,r,i,a=e=>e()){let o=r&&(r.enterCallbacks[i]=r.enterCallbacks[i]||[]);return()=>new Promise((s,c)=>{let l=e=>{e===!1?c(V(4,{from:n,to:t})):e instanceof Error?c(e):pt(e)?c(V(2,{from:t,to:e})):(o&&r.enterCallbacks[i]===o&&typeof e==`function`&&o.push(e),s())},u=a(()=>e.call(r&&r.instances[i],t,n,l)),d=Promise.resolve(u);e.length<3&&(d=d.then(l)),d.catch(e=>c(e))})}function vt(e,t,n,r,i=e=>e()){let a=[];for(let o of e)for(let e in o.components){let s=o.components[e];if(!(t!==`beforeRouteEnter`&&!o.instances[e]))if(me(s)){let c=(s.__vccOpts||s)[t];c&&a.push(q(c,n,r,o,e,i))}else{let c=s();a.push(()=>c.then(a=>{if(!a)throw Error(`Couldn't resolve component "${e}" at "${o.path}"`);let s=he(a)?a.default:a;o.mods[e]=a,o.components[e]=s;let c=(s.__vccOpts||s)[t];return c&&q(c,n,r,o,e,i)()}))}}return a}function yt(e,t){let n=[],r=[],i=[],a=Math.max(t.matched.length,e.matched.length);for(let o=0;oW(e,a))?r.push(a):n.push(a));let s=e.matched[o];s&&(t.matched.find(e=>W(e,s))||i.push(s))}return[n,r,i]}var bt=()=>location.protocol+`//`+location.host;function xt(e,t){let{pathname:n,search:r,hash:i}=t,a=e.indexOf(`#`);if(a>-1){let t=i.includes(e.slice(a))?e.slice(a).length:1,n=i.slice(t);return n[0]!==`/`&&(n=`/`+n),Ze(n,``)}return Ze(n,e)+r+i}function St(e,t,n,r){let i=[],a=[],o=null,s=({state:a})=>{let s=xt(e,location),c=n.value,l=t.value,u=0;if(a){if(n.value=s,t.value=a,o&&o===c){o=null;return}u=l?a.position-l.position:0}else r(s);i.forEach(e=>{e(n.value,c,{delta:u,type:`pop`,direction:u?u>0?`forward`:`back`:``})})};function c(){o=n.value}function l(e){i.push(e);let t=()=>{let t=i.indexOf(e);t>-1&&i.splice(t,1)};return a.push(t),t}function u(){if(document.visibilityState===`hidden`){let{history:e}=window;if(!e.state)return;e.replaceState(R({},e.state,{scroll:st()}),``)}}function d(){for(let e of a)e();a=[],window.removeEventListener(`popstate`,s),window.removeEventListener(`pagehide`,u),document.removeEventListener(`visibilitychange`,u)}return window.addEventListener(`popstate`,s),window.addEventListener(`pagehide`,u),document.addEventListener(`visibilitychange`,u),{pauseListeners:c,listen:l,destroy:d}}function Ct(e,t,n,r=!1,i=!1){return{back:e,current:t,forward:n,replaced:r,position:window.history.length,scroll:i?st():null}}function wt(e){let{history:t,location:n}=window,r={value:xt(e,n)},i={value:t.state};i.value||a(r.value,{back:null,current:r.value,forward:null,position:t.length-1,replaced:!0,scroll:null},!0);function a(r,a,o){let s=e.indexOf(`#`),c=s>-1?(n.host&&document.querySelector(`base`)?e:e.slice(s))+r:bt()+e+r;try{t[o?`replaceState`:`pushState`](a,``,c),i.value=a}catch(e){console.error(e),n[o?`replace`:`assign`](c)}}function o(e,n){a(e,R({},t.state,Ct(i.value.back,e,i.value.forward,!0),n,{position:i.value.position}),!0),r.value=e}function s(e,n){let o=R({},i.value,t.state,{forward:e,scroll:st()});a(o.current,o,!0),a(e,R({},Ct(r.value,e,null),{position:o.position+1},n),!1),r.value=e}return{location:r,state:i,push:s,replace:o}}function Tt(e){e=rt(e);let t=wt(e),n=St(e,t.state,t.location,t.replace);function r(e,t=!0){t||n.pauseListeners(),history.go(e)}let i=R({location:``,base:e,go:r,createHref:at.bind(null,e)},t,n);return Object.defineProperty(i,"location",{enumerable:!0,get:()=>t.location.value}),Object.defineProperty(i,"state",{enumerable:!0,get:()=>t.state.value}),i}var Et={type:0,value:``},Dt=/[a-zA-Z0-9_]/;function Ot(e){if(!e)return[[]];if(e===`/`)return[[Et]];if(!e.startsWith(`/`))throw Error(`Invalid path "${e}"`);function t(e){throw Error(`ERR (${n})/"${l}": ${e}`)}let n=0,r=n,i=[],a;function o(){a&&i.push(a),a=[]}let s=0,c,l=``,u=``;function d(){l&&=(n===0?a.push({type:0,value:l}):n===1||n===2||n===3?(a.length>1&&(c===`*`||c===`+`)&&t(`A repeatable param (${l}) must be alone in its segment. eg: '/:ids+.`),a.push({type:1,value:l,regexp:u,repeatable:c===`*`||c===`+`,optional:c===`*`||c===`?`})):t(`Invalid state to consume buffer`),``)}function f(){l+=c}for(;st.length?t.length===1&&t[0]===80?1:-1:0}function Pt(e,t){let n=0,r=e.score,i=t.score;for(;n0&&t[t.length-1]<0}var It={strict:!1,end:!0,sensitive:!1};function Lt(e,t,n){let r=R(Mt(Ot(e.path),n),{record:e,parent:t,children:[],alias:[]});return t&&!r.record.aliasOf==!t.record.aliasOf&&t.children.push(r),r}function Rt(e,t){let n=[],r=new Map;t=_e(It,t);function i(e){return r.get(e)}function a(e,n,r){let i=!r,s=Bt(e);s.aliasOf=r&&r.record;let l=_e(t,e),u=[s];if(`alias`in e){let t=typeof e.alias==`string`?[e.alias]:e.alias;for(let e of t)u.push(Bt(R({},s,{components:r?r.record.components:s.components,path:e,aliasOf:r?r.record:s})))}let d,f;for(let t of u){let{path:u}=t;if(n&&u[0]!==`/`){let e=n.record.path,r=e[e.length-1]===`/`?``:`/`;t.path=n.record.path+(u&&r+u)}if(d=Lt(t,n,l),r?r.alias.push(d):(f||=d,f!==d&&f.alias.push(d),i&&e.name&&!Ht(d)&&o(e.name)),Kt(d)&&c(d),s.children){let e=s.children;for(let t=0;t{o(f)}:z}function o(e){if(mt(e)){let t=r.get(e);t&&(r.delete(e),n.splice(n.indexOf(t),1),t.children.forEach(o),t.alias.forEach(o))}else{let t=n.indexOf(e);t>-1&&(n.splice(t,1),e.record.name&&r.delete(e.record.name),e.children.forEach(o),e.alias.forEach(o))}}function s(){return n}function c(e){let t=Wt(e,n);n.splice(t,0,e),e.record.name&&!Ht(e)&&r.set(e.record.name,e)}function l(e,t){let i,a={},o,s;if(`name`in e&&e.name){if(i=r.get(e.name),!i)throw V(1,{location:e});s=i.record.name,a=R(zt(t.params,i.keys.filter(e=>!e.optional).concat(i.parent?i.parent.keys.filter(e=>e.optional):[]).map(e=>e.name)),e.params&&zt(e.params,i.keys.map(e=>e.name))),o=i.stringify(a)}else if(e.path!=null)o=e.path,i=n.find(e=>e.re.test(o)),i&&(a=i.parse(o),s=i.record.name,i.keys.forEach(e=>{e.optional&&!a[e.name]&&delete a[e.name]}));else{if(i=t.name?r.get(t.name):n.find(e=>e.re.test(t.path)),!i)throw V(1,{location:e,currentLocation:t});s=i.record.name,a=R({},t.params,e.params),o=i.stringify(a)}let c=[],l=i;for(;l;)c.unshift(l.record),l=l.parent;return{name:s,path:o,params:a,matched:c,meta:Ut(c)}}e.forEach(e=>a(e));function u(){n.length=0,r.clear()}return{addRoute:a,resolve:l,removeRoute:o,clearRoutes:u,getRoutes:s,getRecordMatcher:i}}function zt(e,t){let n={};for(let r of t)r in e&&(n[r]=e[r]);return n}function Bt(e){let t={path:e.path,redirect:e.redirect,name:e.name,meta:e.meta||{},aliasOf:e.aliasOf,beforeEnter:e.beforeEnter,props:Vt(e),children:e.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:`components`in e?e.components||null:e.component&&{default:e.component}};return Object.defineProperty(t,"mods",{value:{}}),t}function Vt(e){let t={},n=e.props||!1;if(`component`in e)t.default=n;else for(let r in e.components)t[r]=typeof n==`object`?n[r]:n;return t}function Ht(e){for(;e;){if(e.record.aliasOf)return!0;e=e.parent}return!1}function Ut(e){return e.reduce((e,t)=>R(e,t.meta),{})}function Wt(e,t){let n=0,r=t.length;for(;n!==r;){let i=n+r>>1;Pt(e,t[i])<0?r=i:n=i+1}let i=Gt(e);return i&&(r=t.lastIndexOf(i,r-1)),r}function Gt(e){let t=e;for(;t=t.parent;)if(Kt(t)&&Pt(e,t)===0)return t}function Kt({record:e}){return!!(e.name||e.components&&Object.keys(e.components).length||e.redirect)}function qt(e){let t=O(xe),n=O(Se),r=h(()=>{let n=E(e.to);return t.resolve(n)}),i=h(()=>{let{matched:e}=r.value,{length:t}=e,i=e[t-1],a=n.matched;if(!i||!a.length)return-1;let o=a.findIndex(W.bind(null,i));if(o>-1)return o;let s=Qt(e[t-2]);return t>1&&Qt(i)===s&&a[a.length-1].path!==s?a.findIndex(W.bind(null,e[t-2])):o}),a=h(()=>i.value>-1&&Zt(n.params,r.value.params)),o=h(()=>i.value>-1&&i.value===n.matched.length-1&&$e(n.params,r.value.params));function s(n={}){if(Xt(n)){let n=t[E(e.replace)?`replace`:`push`](E(e.to)).catch(z);return e.viewTransition&&typeof document<`u`&&`startViewTransition`in document&&document.startViewTransition(()=>n),n}return Promise.resolve()}return{route:r,href:h(()=>r.value.href),isActive:a,isExactActive:o,navigate:s}}function Jt(e){return e.length===1?e[0]:e}var Yt=D({name:`RouterLink`,compatConfig:{MODE:3},props:{to:{type:[String,Object],required:!0},replace:Boolean,activeClass:String,exactActiveClass:String,custom:Boolean,ariaCurrentValue:{type:String,default:`page`},viewTransition:Boolean},useLink:qt,setup(e,{slots:t}){let n=_(qt(e)),{options:r}=O(xe),i=h(()=>({[$t(e.activeClass,r.linkActiveClass,`router-link-active`)]:n.isActive,[$t(e.exactActiveClass,r.linkExactActiveClass,`router-link-exact-active`)]:n.isExactActive}));return()=>{let r=t.default&&Jt(t.default(n));return e.custom?r:u(`a`,{"aria-current":n.isExactActive?e.ariaCurrentValue:null,href:n.href,onClick:n.navigate,class:i.value},r)}}});function Xt(e){if(!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)&&!e.defaultPrevented&&(e.button===void 0||e.button===0)){if(e.currentTarget&&e.currentTarget.getAttribute){let t=e.currentTarget.getAttribute(`target`);if(/\b_blank\b/i.test(t))return}return e.preventDefault&&e.preventDefault(),!0}}function Zt(e,t){for(let n in t){let r=t[n],i=e[n];if(typeof r==`string`){if(r!==i)return!1}else if(!B(i)||i.length!==r.length||r.some((e,t)=>e.valueOf()!==i[t].valueOf()))return!1}return!0}function Qt(e){return e?e.aliasOf?e.aliasOf.path:e.path:``}var $t=(e,t,n)=>e??t??n,en=D({name:`RouterView`,inheritAttrs:!1,props:{name:{type:String,default:`default`},route:Object},compatConfig:{MODE:3},setup(e,{attrs:t,slots:n}){let r=O(Ce),i=h(()=>e.route||r.value),a=O(be,0),s=h(()=>{let e=E(a),{matched:t}=i.value,n;for(;(n=t[e])&&!n.components;)e++;return e}),c=h(()=>i.value.matched[s.value]);o(be,h(()=>s.value+1)),o(ye,c),o(Ce,i);let l=C();return d(()=>[l.value,c.value,e.name],([e,t,n],[r,i,a])=>{t&&(t.instances[n]=e,i&&i!==t&&e&&e===r&&(t.leaveGuards.size||(t.leaveGuards=i.leaveGuards),t.updateGuards.size||(t.updateGuards=i.updateGuards))),e&&t&&(!i||!W(t,i)||!r)&&(t.enterCallbacks[n]||[]).forEach(t=>t(e))},{flush:`post`}),()=>{let r=i.value,a=e.name,o=c.value,s=o&&o.components[a];if(!s)return tn(n.default,{Component:s,route:r});let d=o.props[a],f=d?d===!0?r.params:typeof d==`function`?d(r):d:null,p=u(s,R({},f,t,{onVnodeUnmounted:e=>{e.component.isUnmounted&&(o.instances[a]=null)},ref:l}));return tn(n.default,{Component:p,route:r})||p}}});function tn(e,t){if(!e)return null;let n=e(t);return n.length===1?n[0]:n}var nn=en;function rn(e){let n=Rt(e.routes,e),r=e.parseQuery||ht,i=e.stringifyQuery||gt,a=e.history,o=K(),s=K(),c=K(),l=m(G),u=G;U&&e.scrollBehavior&&`scrollRestoration`in history&&(history.scrollRestoration=`manual`);let d=ge.bind(null,e=>``+e),f=ge.bind(null,Ge),p=ge.bind(null,Ke);function h(e,t){let r,i;return mt(e)?(r=n.getRecordMatcher(e),i=t):i=e,n.addRoute(i,r)}function g(e){let t=n.getRecordMatcher(e);t&&n.removeRoute(t)}function _(){return n.getRoutes().map(e=>e.record)}function v(e){return!!n.getRecordMatcher(e)}function y(e,t){if(t=R({},t||l.value),typeof e==`string`){let i=Ye(r,e,t.path),o=n.resolve({path:i.path},t),s=a.createHref(i.fullPath);return R(i,o,{params:p(o.params),redirectedFrom:void 0,href:s})}let o;if(e.path!=null)o=R({},e,{path:Ye(r,e.path,t.path).path});else{let n=R({},e.params);for(let e in n)n[e]??delete n[e];o=R({},e,{params:f(n)}),t.params=f(t.params)}let s=n.resolve(o,t),c=e.hash||``;s.params=d(p(s.params));let u=Xe(i,R({},e,{hash:Ve(c),path:s.path})),m=a.createHref(u);return R({fullPath:u,hash:c,query:i===gt?_t(e.query):e.query||{}},s,{redirectedFrom:void 0,href:m})}function b(e){return typeof e==`string`?Ye(r,e,l.value.path):R({},e)}function x(e,t){if(u!==e)return V(8,{from:t,to:e})}function S(e){return T(e)}function C(e){return S(R(b(e),{replace:!0}))}function w(e,t){let n=e.matched[e.matched.length-1];if(n&&n.redirect){let{redirect:r}=n,i=typeof r==`function`?r(e,t):r;return typeof i==`string`&&(i=i.includes(`?`)||i.includes(`#`)?i=b(i):{path:i},i.params={}),R({query:e.query,hash:e.hash,params:i.path==null?e.params:{}},i)}}function T(e,t){let n=u=y(e),r=l.value,a=e.state,o=e.force,s=e.replace===!0,c=w(n,r);if(c)return T(R(b(c),{state:typeof c==`object`?R({},a,c.state):a,force:o,replace:s}),t||n);let d=n;d.redirectedFrom=t;let f;return!o&&Qe(i,r,n)&&(f=V(16,{to:d,from:r}),se(r,r,!0,!1)),(f?Promise.resolve(f):te(d,r)).catch(e=>H(e)?H(e,2)?e:N(e):M(e,d,r)).then(e=>{if(e){if(H(e,2))return T(R({replace:s},b(e.to),{state:typeof e.to==`object`?R({},a,e.to.state):a,force:o}),t||d)}else e=k(d,r,!0,s,a);return ne(d,r,e),e})}function D(e,t){let n=x(e,t);return n?Promise.reject(n):Promise.resolve()}function O(e){let t=P.values().next().value;return t&&typeof t.runWithContext==`function`?t.runWithContext(e):e()}function te(e,t){let n,[r,i,a]=yt(e,t);n=vt(r.reverse(),`beforeRouteLeave`,e,t);for(let i of r)i.leaveGuards.forEach(r=>{n.push(q(r,e,t))});let c=D.bind(null,e,t);return n.push(c),I(n).then(()=>{n=[];for(let r of o.list())n.push(q(r,e,t));return n.push(c),I(n)}).then(()=>{n=vt(i,`beforeRouteUpdate`,e,t);for(let r of i)r.updateGuards.forEach(r=>{n.push(q(r,e,t))});return n.push(c),I(n)}).then(()=>{n=[];for(let r of a)if(r.beforeEnter)if(B(r.beforeEnter))for(let i of r.beforeEnter)n.push(q(i,e,t));else n.push(q(r.beforeEnter,e,t));return n.push(c),I(n)}).then(()=>(e.matched.forEach(e=>e.enterCallbacks={}),n=vt(a,`beforeRouteEnter`,e,t,O),n.push(c),I(n))).then(()=>{n=[];for(let r of s.list())n.push(q(r,e,t));return n.push(c),I(n)}).catch(e=>H(e,8)?e:Promise.reject(e))}function ne(e,t,n){c.list().forEach(r=>O(()=>r(e,t,n)))}function k(e,t,n,r,i){let o=x(e,t);if(o)return o;let s=t===G,c=U?history.state:{};n&&(r||s?a.replace(e.fullPath,R({scroll:s&&c&&c.scroll},i)):a.push(e.fullPath,i)),l.value=e,se(e,t,n,s),N()}let re;function ie(){re||=a.listen((e,t,n)=>{if(!F.listening)return;let r=y(e),i=w(r,F.currentRoute.value);if(i){T(R(i,{replace:!0,force:!0}),r).catch(z);return}u=r;let o=l.value;U&&dt(lt(o.fullPath,n.delta),st()),te(r,o).catch(e=>H(e,12)?e:H(e,2)?(T(R(b(e.to),{force:!0}),r).then(e=>{H(e,20)&&!n.delta&&n.type===`pop`&&a.go(-1,!1)}).catch(z),Promise.reject()):(n.delta&&a.go(-n.delta,!1),M(e,r,o))).then(e=>{e||=k(r,o,!1),e&&(n.delta&&!H(e,8)?a.go(-n.delta,!1):n.type===`pop`&&H(e,20)&&a.go(-1,!1)),ne(r,o,e)}).catch(z)})}let ae=K(),A=K(),j;function M(e,t,n){N(e);let r=A.list();return r.length?r.forEach(r=>r(e,t,n)):console.error(e),Promise.reject(e)}function oe(){return j&&l.value!==G?Promise.resolve():new Promise((e,t)=>{ae.add([e,t])})}function N(e){return j||(j=!e,ie(),ae.list().forEach(([t,n])=>e?n(e):t()),ae.reset()),e}function se(n,r,i,a){let{scrollBehavior:o}=e;if(!U||!o)return Promise.resolve();let s=!i&&ft(lt(n.fullPath,0))||(a||!i)&&history.state&&history.state.scroll||null;return t().then(()=>o(n,r,s)).then(e=>n===l.value&&e&&ct(e)).catch(e=>n===l.value&&M(e,n,r))}let ce=e=>a.go(e),le,P=new Set,F={currentRoute:l,listening:!0,addRoute:h,removeRoute:g,clearRoutes:n.clearRoutes,hasRoute:v,getRoutes:_,resolve:y,options:e,push:S,replace:C,go:ce,back:()=>ce(-1),forward:()=>ce(1),beforeEach:o.add,beforeResolve:s.add,afterEach:c.add,onError:A.add,isReady:oe,install(e){e.component(`RouterLink`,Yt),e.component(`RouterView`,nn),e.config.globalProperties.$router=F,Object.defineProperty(e.config.globalProperties,"$route",{enumerable:!0,get:()=>E(l)}),U&&!le&&l.value===G&&(le=!0,S(a.location).catch(e=>{}));let t={};for(let e in G)Object.defineProperty(t,e,{get:()=>l.value[e],enumerable:!0});e.provide(xe,F),e.provide(Se,ee(t)),e.provide(Ce,l);let n=e.unmount;P.add(e),e.unmount=function(){P.delete(e),P.size<1&&(u=G,re&&re(),re=null,l.value=G,le=!1,j=!1),n()}}};function I(e){return e.reduce((e,t)=>e.then(()=>O(t)),Promise.resolve())}return F}var an=typeof global==`object`&&global&&global.Object===Object&&global,on=typeof self==`object`&&self&&self.Object===Object&&self,sn=(an||on||Function(`return this`)()).Symbol,cn=Object.prototype,ln=cn.hasOwnProperty,un=cn.toString,J=sn?sn.toStringTag:void 0;function dn(e){var t=ln.call(e,J),n=e[J];try{e[J]=void 0;var r=!0}catch{}var i=un.call(e);return r&&(t?e[J]=n:delete e[J]),i}var fn=Object.prototype.toString;function pn(e){return fn.call(e)}var mn=`[object Null]`,hn=`[object Undefined]`,gn=sn?sn.toStringTag:void 0;function _n(e){return e==null?e===void 0?hn:mn:gn&&gn in Object(e)?dn(e):pn(e)}function vn(e){return typeof e==`object`&&!!e}var yn=`[object Symbol]`;function bn(e){return typeof e==`symbol`||vn(e)&&_n(e)==yn}var xn=/\s/;function Sn(e){for(var t=e.length;t--&&xn.test(e.charAt(t)););return t}var Cn=/^\s+/;function wn(e){return e&&e.slice(0,Sn(e)+1).replace(Cn,``)}function Tn(e){var t=typeof e;return e!=null&&(t==`object`||t==`function`)}var En=NaN,Dn=/^[-+]0x[0-9a-f]+$/i,On=/^0b[01]+$/i,kn=/^0o[0-7]+$/i,An=parseInt;function jn(e){if(typeof e==`number`)return e;if(bn(e))return En;if(Tn(e)){var t=typeof e.valueOf==`function`?e.valueOf():e;e=Tn(t)?t+``:t}if(typeof e!=`string`)return e===0?e:+e;e=wn(e);var n=On.test(e);return n||kn.test(e)?An(e.slice(2),n?2:8):Dn.test(e)?En:+e}function Mn(e,t,n){return e===e&&(n!==void 0&&(e=e<=n?e:n),t!==void 0&&(e=e>=t?e:t)),e}function Nn(e,t,n){return n===void 0&&(n=t,t=void 0),n!==void 0&&(n=jn(n),n=n===n?n:0),t!==void 0&&(t=jn(t),t=t===t?t:0),Mn(jn(e),t,n)}var Pn=5e3;function Y(){return{id:`local`,companyId:``,companyName:``,items:[]}}function X(){return!1}function Fn(e){return[...new Set(e.map(e=>e.companyName).filter(Boolean))].join(`، `)}function In(e,t){return e.items.filter(e=>e.companyId===t).reduce((e,t)=>e+t.meterage,0)}var Z=j(`cart`,()=>{let e=C([Y()]),t=C(`local`),n=C(null),r=C(!1),i=h(()=>e.value.find(e=>e.id===t.value)??e.value[0]??null),a=h(()=>i.value?.items.reduce((e,t)=>e+t.meterage,0)??0),o=h(()=>i.value?.items.length??0),s=L(),c=h(()=>i.value?.items.length?Fn(i.value.items):``),l=h(()=>{let e=i.value;if(!e?.items.length)return[];let t=new Map;for(let n of e.items){let e=t.get(n.companyId);e?e.meterage+=n.meterage:t.set(n.companyId,{companyName:n.companyName||`شرکت`,meterage:n.meterage})}return[...t.entries()].map(([e,t])=>{let n=s.getCompany(e)?.maxMeteragePerInvoice??Pn;return{companyId:e,companyName:t.companyName,meterage:t.meterage,maxMeterage:n,remaining:Math.max(0,n-t.meterage)}})}),u=h(()=>l.value.length?l.value.reduce((e,t)=>e+t.maxMeterage,0):(n.value?s.getCompany(n.value):null)?.maxMeteragePerInvoice??Pn),d=h(()=>l.value.length?l.value.reduce((e,t)=>e+t.remaining,0):Math.max(0,u.value-a.value)),f=h(()=>l.value.some(e=>e.meterage>=e.maxMeterage));function p(r){let i={id:r.id,companyId:r.companyId||``,companyName:r.companyName||Fn(r.items),items:r.items??[],notes:r.notes};e.value=[i],t.value=i.id,i.companyId&&(n.value=i.companyId)}function m(n){e.value=[{...n,items:n.items.map(e=>({...e}))}],t.value=e.value[0].id}async function g(){if(!M()){_();return}if(X()){r.value=!1;return}r.value=!0;try{p(await A(`/carts`))}catch{_()}finally{r.value=!1}}function _(){e.value=[Y()],t.value=e.value[0].id,n.value=null}function v(e){n.value=e.id,i.value&&!i.value.items.length&&(i.value.companyId=e.id,i.value.companyName=e.name)}function y(e){return v(e),i.value??Y()}function b(e){return e&&v(e),i.value??Y()}async function x(){if(X())return _(),i.value;try{return p(await A(`/carts`,{method:`DELETE`})),i.value}catch(e){return console.error(e),null}}function S(e,t,r,i,a,o=!1){let s=b(i),c=s.items.find(t=>t.productId===e.id),l=[...s.items];if(c){let t=l.findIndex(e=>e.id===c.id),n=a?[c.notes,a].filter(Boolean).join(` | `):c.notes,i=o?c.meterage+r:r;l[t]={...c,meterage:i,color:e.color||c.color,notes:n||void 0}}else{let n={id:`local-item-${e.id}-${Date.now()}`,productId:e.id,catalogCode:t,productName:e.name,productCode:e.code,color:e.color,meterage:r,notes:a||void 0,companyId:i.id,companyName:i.name};l.push(n)}return m({id:s.id||`local`,companyId:l[0]?.companyId||i.id,companyName:Fn(l)||i.name,items:l,notes:s.notes}),n.value=i.id,{success:!0}}async function ee(e,t,r,a,o=!1){s.companies.length||await s.loadCompanies();let c=s.getCompany(e.companyId),l=i.value??Y(),u=c?.maxMeteragePerInvoice??Pn,d=e.companyId?In(l,e.companyId):0,f=l.items.find(t=>t.productId===e.id),m=f?.meterage??0,h=f&&o?m+r:r,g=pe(h,e,d,u,m);if(!g.valid)return{success:!1,message:g.message};if(X())return c?S(e,t,r,c,a,o):{success:!1,message:`شرکت محصول یافت نشد.`};try{let t,r=a?[f?.notes,a].filter(Boolean).join(` | `):f?.notes;return t=f?await A(`/carts/items/${f.id}`,{method:`PATCH`,body:{meterage:h,notes:r||void 0}}):await A(`/carts/items`,{method:`POST`,body:{productId:e.id,meterage:h,notes:a||void 0}}),p(t),n.value=c?.id||e.companyId||n.value,{success:!0}}catch(e){return{success:!1,message:e instanceof N?e.message:`افزودن به سبد ناموفق بود.`}}}async function w(e,t,n){if(!i.value)return{success:!1,message:`سبد خرید یافت نشد.`};let r=i.value.items.find(t=>t.id===e);if(!r)return{success:!1,message:`آیتم یافت نشد.`};let a=s.getCompany(r.companyId||n.companyId)?.maxMeteragePerInvoice??Pn,o=In(i.value,r.companyId),c=pe(t,n,o,a,r.meterage);if(!c.valid)return{success:!1,message:c.message};if(X()){let n=i.value.items.map(n=>n.id===e?{...n,meterage:t}:n);return m({...i.value,items:n}),{success:!0}}try{return p(await A(`/carts/items/${e}`,{method:`PATCH`,body:{meterage:t}})),{success:!0}}catch(e){return{success:!1,message:e instanceof N?e.message:`به‌روزرسانی متراژ ناموفق بود.`}}}async function T(e){if(X()){if(!i.value)return;let t=i.value.items.filter(t=>t.id!==e);m({...i.value,items:t});return}try{p(await A(`/carts/items/${e}`,{method:`DELETE`}))}catch(e){console.error(e)}}async function E(e){if(X()){if(!i.value)return;m({...i.value,notes:e});return}try{p(await A(`/carts/notes`,{method:`PATCH`,body:{notes:e}}))}catch(e){console.error(e)}}async function D(){if(X()){_();return}try{p(await A(`/carts`,{method:`DELETE`}))}catch{_()}}function O(){}return{carts:e,activeCartId:t,selectedCompanyId:n,syncing:r,activeCart:i,totalMeterage:a,itemCount:o,companyNamesLabel:c,companySummaries:l,maxMeterage:u,remainingCapacity:d,isFull:f,initCartForCompany:y,selectCompany:v,createNewCartForSameCompany:x,addItem:ee,updateItemMeterage:w,removeItem:T,setNotes:E,clearActiveCart:D,ensureActiveCartForCartPage:O,hydrate:g,resetLocal:_}}),Ln=D({__name:`IconHome`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(a(),T(k,{icon:`vuesax-linear:home`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),Rn=D({__name:`IconCart`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(a(),T(k,{icon:`vuesax-linear:bag-2`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),zn=D({__name:`IconOrders`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(a(),T(k,{icon:`vuesax-linear:document-text`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),Bn=D({__name:`IconProfile`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(a(),T(k,{icon:`vuesax-linear:profile-circle`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),Vn=D({__name:`IconCatalog`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(a(),T(k,{icon:`vuesax-linear:category`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),Hn=D({__name:`IconPlus`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(a(),T(k,{icon:`vuesax-linear:add`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),Un=D({__name:`IconCheckBook`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(a(),T(k,{icon:`vuesax-linear:card-receive`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),Wn=D({__name:`IconSettings`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(a(),T(k,{icon:`vuesax-linear:setting-2`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),Gn=[{name:`home`,path:`/`,label:`خانه`,icon:Ln},{name:`products`,path:`/products`,label:`محصولات`,icon:Vn},{name:`order-fab`,path:`/cart`,label:`ثبت سفارش`,icon:Hn},{name:`orders`,path:`/orders`,label:`سفارش‌ها`,icon:zn},{name:`profile`,path:`/profile`,label:`پروفایل`,icon:Bn}],Kn=[{name:`home`,path:`/`,label:`خانه`,icon:Ln},{name:`products`,path:`/products`,label:`محصولات`,icon:Vn},{name:`cart`,path:`/cart`,label:`ثبت سفارش`,icon:Rn},{name:`orders`,path:`/orders`,label:`سفارش‌ها`,icon:zn},{name:`checks`,path:`/profile/checks`,label:`لیست چک‌ها`,icon:Un},{name:`settings`,path:`/profile/display`,label:`تنظیمات`,icon:Wn},{name:`profile`,path:`/profile`,label:`پروفایل`,icon:Bn}],qn=`/categories`,Jn=[`/categories`,`/products`,`/product`,`/favorites`],Yn=[`/profile/display`,`/profile/edit`,`/profile/security`],Xn=[`/profile/checks`,...Yn];function Zn(e,t){return t.some(t=>e===t||e.startsWith(`${t}/`))}function Qn(e,t,n){return e===`home`?n===`/`:e===`products`?Zn(n,Jn):e===`order-fab`||e===`cart`?n===`/cart`||n.startsWith(`/cart/`):e===`checks`?Zn(n,[`/profile/checks`]):e===`settings`?Zn(n,Yn):e===`profile`?n===`/profile`?!0:n.startsWith(`/profile/`)?!Zn(n,Xn):!1:t===`/`?n===`/`:n.startsWith(t)}function $n(e,t){return e.path}function er(e){return e===0?qn:`/cart`}var tr={class:`bottom-nav`,"aria-label":`ناوبری اصلی`},nr=[`aria-current`,`aria-label`,`onClick`],rr={key:0,class:`nav-badge`},ir={key:0,class:`nav-label`},ar={key:1,class:`nav-label nav-label--fab`},or=w(D({__name:`BottomNav`,setup(t){let r=Te(),i=we(),o=Z(),s=h(()=>o.itemCount);function u(e,t){let n=t.currentTarget;if(n instanceof HTMLElement&&n.blur(),e===`/cart`){i.push(er(o.itemCount));return}i.push(e)}return(t,i)=>(a(),v(`nav`,tr,[(a(!0),v(b,null,n(E(Gn),t=>(a(),v(`button`,{key:t.name,type:`button`,class:e([`nav-item`,{active:E(Qn)(t.name,t.path,E(r).path),"nav-item--fab":t.name===`order-fab`}]),"aria-current":E(Qn)(t.name,t.path,E(r).path)?`page`:void 0,"aria-label":t.label,onClick:e=>u(t.path,e)},[S(`span`,{class:e([`nav-icon`,{"nav-icon--fab":t.name===`order-fab`}])},[(a(),T(l(t.icon),{size:t.name===`order-fab`?26:22,"stroke-width":t.name===`order-fab`?1.8:1.5,color:t.name===`order-fab`?`#ffffff`:void 0},null,8,[`size`,`stroke-width`,`color`])),t.name===`order-fab`&&s.value>0?(a(),v(`span`,rr,c(s.value),1)):g(``,!0)],2),t.name===`order-fab`?(a(),v(`span`,ar,c(t.label),1)):(a(),v(`span`,ir,c(t.label),1))],10,nr))),128))]))}}),[[`__scopeId`,`data-v-759f4bb7`]]);function sr(e){if(!e)return;let t=e.replace(/[^\d+]/g,``);return t?`tel:${t}`:void 0}function cr(){return A(`/settings/public`,{auth:!1})}var lr=C(null),ur=null;function dr(){return lr.value?Promise.resolve():(ur||=cr().then(e=>{lr.value=e}).catch(()=>{lr.value={supportPhone:null,supportEmail:null}}),ur)}function fr(){let e=h(()=>lr.value?.supportPhone??null),t=h(()=>lr.value?.supportEmail??null),n=h(()=>sr(e.value));function r(){return dr()}return{load:r,supportPhone:e,supportEmail:t,supportHref:n}}var pr=D({__name:`IconHeadset`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(a(),T(k,{icon:`vuesax-linear:headphone`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),mr=`/assets/nademitex-logo-BJLexNm4.png`,hr=[`src`],gr=w(D({__name:`IconQemashMark`,props:{size:{default:72}},setup(e){return(t,n)=>(a(),v(`img`,{class:`brand-logo`,src:E(mr),alt:``,style:s({height:`${e.size}px`}),draggable:`false`},null,12,hr))}}),[[`__scopeId`,`data-v-b211450b`]]),_r={class:`desktop-sidebar`,"aria-label":`ناوبری اصلی`},vr={class:`desktop-sidebar__brand`},yr={class:`desktop-sidebar__nav`},br=[`aria-current`,`aria-label`,`title`,`onClick`],xr={class:`desktop-sidebar__icon`},Sr={class:`desktop-sidebar__label`},Cr={key:0,class:`desktop-sidebar__badge`},wr={class:`desktop-sidebar__support`},Tr={class:`desktop-sidebar__support-icon`,"aria-hidden":`true`},Er=[`href`,`aria-disabled`],Dr={key:0,class:`desktop-sidebar__support-phone`,dir:`ltr`},Or=w(D({__name:`DesktopSidebar`,setup(t){let r=Te(),i=we(),o=Z(),{load:s,supportPhone:u,supportHref:d}=fr();x(()=>{s()});let f=h(()=>o.itemCount),m=h(()=>o.selectedCompanyId||o.activeCart?.companyId||null);function _(e){if(e.name===`cart`){i.push(er(o.itemCount));return}i.push($n(e,m.value))}return(t,i)=>(a(),v(`aside`,_r,[S(`div`,vr,[p(gr,{size:36}),i[1]||=S(`strong`,{class:`desktop-sidebar__title`},`نادمی تکس`,-1)]),S(`nav`,yr,[(a(!0),v(b,null,n(E(Kn),t=>(a(),v(`button`,{key:t.name,type:`button`,class:e([`desktop-sidebar__item`,{active:E(Qn)(t.name,t.path,E(r).path)}]),"aria-current":E(Qn)(t.name,t.path,E(r).path)?`page`:void 0,"aria-label":t.label,title:t.label,onClick:e=>_(t)},[S(`span`,xr,[(a(),T(l(t.icon),{size:20}))]),S(`span`,Sr,c(t.label),1),t.name===`cart`&&f.value>0?(a(),v(`span`,Cr,c(f.value),1)):g(``,!0)],10,br))),128))]),S(`div`,wr,[S(`span`,Tr,[p(pr,{size:22})]),i[2]||=S(`strong`,{class:`desktop-sidebar__support-title`},`پشتیبانی و راهنما`,-1),i[3]||=S(`p`,{class:`desktop-sidebar__support-text`},` در صورت نیاز به راهنمایی یا گزارش مشکل با تیم پشتیبانی تماس بگیرید. `,-1),S(`a`,{href:E(d)??`#`,class:e([`desktop-sidebar__support-btn`,{"desktop-sidebar__support-btn--disabled":!E(d)}]),"aria-disabled":!E(d),onClick:i[0]||=e=>!E(d)&&e.preventDefault()},` تماس با پشتیبانی `,10,Er),E(u)?(a(),v(`p`,Dr,c(E(u)),1)):g(``,!0)])]))}}),[[`__scopeId`,`data-v-69fbaed9`]]),kr=`ft_user`,Ar=`ft_pending_otp`;function Q(e){e?localStorage.setItem(kr,JSON.stringify(e)):localStorage.removeItem(kr)}function jr(){try{let e=localStorage.getItem(kr);return e?JSON.parse(e):null}catch{return null}}function Mr(){return M()?jr():null}function Nr(){return!!M()}function Pr(e){try{e?sessionStorage.setItem(Ar,JSON.stringify(e)):sessionStorage.removeItem(Ar)}catch{}}async function Fr(e,t){let n=F(e);if(!/^09\d{9}$/.test(n))return{success:!1,message:`شماره موبایل معتبر نیست.`};if(t.isRegister&&(!t.firstName?.trim()||!t.lastName?.trim()))return{success:!1,message:`نام و نام خانوادگی الزامی است.`};try{Pr({phone:n,isRegister:t.isRegister,firstName:t.firstName,lastName:t.lastName});let e=await A(`/auth/otp/request`,{method:`POST`,auth:!1,body:{phone:n,firstName:t.firstName,lastName:t.lastName,isRegister:t.isRegister}}),r=e.debugCode?` (کد: ${e.debugCode})`:``;return{success:!0,message:`${e.message}${r}`}}catch(e){return{success:!1,message:e instanceof N?e.message:`ارسال کد ناموفق بود.`}}}async function Ir(e,t){let n=F(e);try{let e=await A(`/auth/otp/verify`,{method:`POST`,auth:!1,body:{phone:n,code:ue(t)}});return ae(e.accessToken),Q(e.user),Pr(null),{success:!0,message:`ورود موفق.`,user:e.user}}catch(e){return{success:!1,message:e instanceof N?e.message:`تأیید کد ناموفق بود.`}}}function Lr(){ae(null),Q(null),Pr(null)}async function Rr(){if(!M())return Q(null),null;try{let e=await A(`/auth/me`);return Q(e),e}catch{return Q(null),null}}async function zr(e){try{let t=await A(`/auth/profile`,{method:`PATCH`,body:e});return Q(t),t}catch(t){let n=e.avatarUrl!==void 0&&e.firstName===void 0&&e.lastName===void 0&&e.nationalId===void 0&&e.address===void 0,r=jr();if(!n||!r)throw t;let i={...r};return e.avatarUrl?i.avatarUrl=e.avatarUrl:delete i.avatarUrl,Q(i),i}}var Br=`ft_pending_register`,Vr=[{id:`garment_producer`,label:`تولیدکننده پوشاک عمده`},{id:`atelier`,label:`مزون`},{id:`fabric_wholesaler`,label:`عمده‌فروش پارچه`}];function Hr(){try{let e=sessionStorage.getItem(Br);if(!e)return null;let t=JSON.parse(e);return!t?.firstName?.trim()||!t?.lastName?.trim()?null:{firstName:t.firstName.trim(),lastName:t.lastName.trim(),jobCategory:t.jobCategory}}catch{return null}}function Ur(e){if(e?.firstName?.trim()&&e?.lastName?.trim()){sessionStorage.setItem(Br,JSON.stringify({firstName:e.firstName.trim(),lastName:e.lastName.trim(),jobCategory:e.jobCategory}));return}sessionStorage.removeItem(Br)}function Wr(){return{checkCount:0,totalAmount:0,nearestDueDate:null,farthestDueDate:null,rassDays:0,rassDate:null}}function Gr(e,t=new Date){if(e.length===0)return Wr();let n=new Date(t);n.setHours(0,0,0,0);let r=0,i=0,a=[];for(let t of e){if(!t.dueDate){r+=t.amount;continue}let e=de(t.dueDate);if(Number.isNaN(e.getTime())){r+=t.amount;continue}e.setHours(0,0,0,0),a.push(e);let o=e.getTime()-n.getTime(),s=Math.max(0,Math.round(o/864e5));r+=t.amount,i+=t.amount*s}let o=r>0?Math.round(i/r):0,s=new Date(n);return s.setDate(s.getDate()+o),a.sort((e,t)=>e.getTime()-t.getTime()),{checkCount:e.length,totalAmount:r,nearestDueDate:a[0]?fe(a[0]):null,farthestDueDate:a.length?fe(a[a.length-1]):null,rassDays:o,rassDate:fe(s)}}function Kr(e){let t=new Date;t.setHours(0,0,0,0);let n=de(e);return Number.isNaN(n.getTime())?0:(n.setHours(0,0,0,0),Math.max(0,Math.round((n.getTime()-t.getTime())/864e5)))}var qr=j(`order`,()=>{let e=C([]),t=C([]),n=C(null),r=C(null),i=C(null),a=C(!1),o=h(()=>t=>[...e.value].sort((e,t)=>new Date(t.createdAt).getTime()-new Date(e.createdAt).getTime()));function s(t){return e.value.find(e=>e.id===t)}function c(e,a){i.value=e,n.value=`check`,t.value=[],r.value=a??null}function l(e){i.value=e.id,n.value=`check`,r.value=e.checkMode??`full`,t.value=(e.checks??[]).map(e=>({...e}))}function u(){i.value=null,t.value=[],r.value=null,n.value=null}function d(e){r.value=e}function f(e){t.value.push({...e,id:I()})}function p(e,n){let r=t.value.findIndex(t=>t.id===e);r>=0&&(t.value[r]={...t.value[r],...n})}function m(e){t.value=t.value.filter(t=>t.id!==e)}function g(e){return Gr(t.value,e??new Date)}async function _(){if(!M()){e.value=[];return}a.value=!0;try{e.value=await A(`/orders`)}catch{e.value=[]}finally{a.value=!1}}function v(){e.value=[],u()}function y(t){let n=e.value.findIndex(e=>e.id===t.id);n>=0?e.value[n]=t:e.value.unshift(t)}async function b(e){try{let t=await A(`/orders/${e}`);return y(t),t}catch{return null}}async function x(t){if(!t.items.length)throw Error(`سبد خرید خالی است.`);if(t.id===`local`||t.items.some(e=>e.id.startsWith(`local-item-`)))throw Error(`سبد خرید با سرور همگام نیست. لطفاً دوباره محصولات را به سبد اضافه کنید.`);let n=[...new Set(t.items.map(e=>e.companyId).filter(Boolean))];if(!n.length)throw Error(`شرکت سبد مشخص نیست. سبد را خالی کنید و دوباره اضافه کنید.`);try{let r=await A(`/orders`,{method:`POST`,body:{companyId:n[0],notes:t.notes,items:t.items.map(e=>({productId:e.productId,meterage:Number(e.meterage),notes:e.notes}))}});return e.value.unshift(r),u(),r}catch(e){throw Error(e instanceof N?e.message:`ثبت سفارش ناموفق بود.`)}}async function S(e,t,n){try{let r=await A(`/orders/${e}/settlement`,{method:`POST`,body:{settlementType:t,checkMode:t===`check`?n??`full`:void 0}});return y(r),r}catch(e){throw Error(e instanceof N?e.message:`ثبت روش تسویه ناموفق بود.`)}}async function ee(e,t){try{await A(`/orders/${e}/cash-receipt`,{method:`POST`,body:{amount:t.amount,transferDate:t.transferDate,transferTime:t.transferTime,trackingNumber:t.trackingNumber,destinationAccountId:t.destinationAccountId,receiptImage:t.receiptImage,notes:t.notes}});let n=await b(e);if(!n)throw Error(`رسید ثبت شد ولی دریافت سفارش ناموفق بود.`);return n}catch(e){throw Error(e instanceof N?e.message:`ثبت رسید ناموفق بود.`)}}async function w(e,t,n){try{let r=await A(`/orders/${e}/checks`,{method:`PATCH`,body:{checkMode:n,checks:t.map(e=>({amount:e.amount,dueDate:e.dueDate,sayadId:e.sayadId,checkNumber:e.checkNumber,ownerNationalId:e.ownerNationalId,ownerFirstName:e.ownerFirstName,ownerLastName:e.ownerLastName,bankName:e.bankName,branchName:e.branchName,frontImage:e.frontImage,backImage:e.backImage,notes:e.notes,mode:e.mode}))}});return y(r),u(),r}catch(e){throw Error(e instanceof N?e.message:`ثبت چک‌ها ناموفق بود.`)}}async function T(e){let t=[...new Set([e.companyId,...e.items.map(e=>e.companyId).filter(Boolean)].filter(Boolean))],n=L(),r=await Promise.all(t.map(e=>n.loadBankAccounts(e))),i=new Map;for(let e of r)for(let t of e)i.set(t.id,t);return[...i.values()]}async function E(e){return L().loadBankAccounts(e)}return{orders:e,draftChecks:t,draftSettlementType:n,draftCheckMode:r,draftOrderId:i,loading:a,userOrders:o,getOrderById:s,startCheckDraft:c,loadChecksIntoDraft:l,clearCheckDraft:u,setCheckMode:d,addDraftCheck:f,updateDraftCheck:p,removeDraftCheck:m,getDraftRass:g,submitOrder:x,chooseSettlement:S,submitCashReceipt:ee,updateOrderChecks:w,hydrate:_,resetLocal:v,fetchOrder:b,getBankAccountsForOrder:T,getBankAccountsForCompany:E}}),Jr=j(`notification`,()=>{let e=C([]),t=C(0),n=C(!1),r=h(()=>t.value>0);async function i(){if(!M()){e.value=[],t.value=0;return}n.value=!0;try{e.value=await A(`/notifications`),t.value=e.value.filter(e=>!e.isRead).length}catch{e.value=[],t.value=0}finally{n.value=!1}}async function a(){if(!M()){t.value=0;return}try{let e=await A(`/notifications/unread-count`);t.value=e.count}catch{}}async function o(n){let r=e.value.find(e=>e.id===n);if(!(!r||r.isRead)){r.isRead=!0,t.value=Math.max(0,t.value-1);try{await A(`/notifications/${n}/read`,{method:`PATCH`})}catch{await i()}}}async function s(){if(t.value){e.value=e.value.map(e=>({...e,isRead:!0})),t.value=0;try{await A(`/notifications/read-all`,{method:`PATCH`})}catch{await i()}}}function c(){e.value=[],t.value=0}return{items:e,unreadCount:t,loading:n,hasUnread:r,hydrate:i,refreshUnreadCount:a,markRead:o,markAllRead:s,resetLocal:c}}),Yr=`ft_favorites`;function Xr(){try{let e=localStorage.getItem(Yr);if(!e)return[];let t=JSON.parse(e);return Array.isArray(t)?t.filter(e=>typeof e==`string`):[]}catch{return[]}}function Zr(e){localStorage.setItem(Yr,JSON.stringify(e))}var Qr=j(`favorites`,()=>{let e=C(Xr()),t=C(!1),n=C({}),r=h(()=>new Set(e.value));function i(e){return r.value.has(e)}async function a(){try{let t=await A(`/products/favorites/ids`);e.value=t,Zr(t)}catch{e.value=Xr()}finally{t.value=!0}}async function o(t){if(!t||n.value[t])return;n.value={...n.value,[t]:!0};let r=i(t);e.value=r?e.value.filter(e=>e!==t):[...e.value,t],Zr(e.value);try{let n=await A(`/products/${t}/favorite`,{method:`POST`});e.value=n.favorited?[...new Set([...e.value.filter(e=>e!==t),t])]:e.value.filter(e=>e!==t),Zr(e.value)}catch(n){if(!(n instanceof N&&n.status===404))throw e.value=r?[...new Set([...e.value,t])]:e.value.filter(e=>e!==t),Zr(e.value),n}finally{let e={...n.value};delete e[t],n.value=e}}function s(){e.value=[],Zr([]),t.value=!1}return{ids:e,loaded:t,pending:n,isFavorite:i,hydrate:a,toggle:o,resetLocal:s}}),$r=j(`auth`,()=>{let e=C(Mr()),t=C(!1),n=C(null),r=C(Hr()),i=h(()=>!!e.value),a=h(()=>e.value?`${e.value.firstName} ${e.value.lastName}`:``),o=h(()=>e.value?.appRole===`agent`),s=h(()=>!!e.value&&e.value.appRole!==`agent`);function c(){n.value=null}function l(){r.value=null,Ur(null)}async function u(e,i){t.value=!0,n.value=null;try{let t=Hr();r.value=t;let a=i.firstName?.trim()||t?.firstName,o=i.lastName?.trim()||t?.lastName;i.isRegister&&a&&o&&(r.value={firstName:a,lastName:o},Ur(r.value));let s=await Fr(e,{isRegister:i.isRegister,firstName:a,lastName:o});return s.success||(n.value=s.message),s}finally{t.value=!1}}async function d(r,i){t.value=!0,n.value=null;let a=await Ir(r,i);return t.value=!1,a.success&&a.user?(e.value=a.user,l(),await Promise.all([L().loadCompanies(),Z().hydrate(),qr().hydrate(),Jr().hydrate(),Qr().hydrate()])):n.value=a.message,a}function f(){Lr(),e.value=null,l(),Z().resetLocal(),qr().resetLocal(),Jr().resetLocal(),Qr().resetLocal()}async function p(t){if(!e.value)return null;let n=await zr(t);return n&&(e.value=n),n}async function m(){if(e.value=Mr(),!e.value)return;let t=await Rr();e.value=t}return{user:e,loading:t,error:n,isAuthenticated:i,fullName:a,isAgent:o,isCustomerOnly:s,clearError:c,requestOtp:u,confirmOtp:d,logout:f,updateProfile:p,hydrate:m}}),ei=D({__name:`IconBell`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(a(),T(k,{icon:`vuesax-linear:notification`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),ti=D({__name:`IconChevronLeft`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(a(),T(k,{icon:`vuesax-linear:arrow-left-1`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),ni=j(`theme`,()=>{let e=ce(`ft_theme`,`system`),t=le(),n=h(()=>e.value===`system`?t.value?`dark`:`light`:e.value),r=h(()=>n.value===`dark`);f(()=>{let e=document.documentElement;e.classList.toggle(`dark`,r.value),e.style.colorScheme=n.value});function i(t){e.value=t}function a(){let t=[`light`,`dark`,`system`],n=t.indexOf(e.value);e.value=t[(n+1)%t.length]}function o(){e.value=r.value?`light`:`dark`}return{preference:e,resolved:n,isDark:r,setPreference:i,cyclePreference:a,toggleLightDark:o}}),ri=[`aria-label`,`title`],ii=w(D({__name:`AuthThemeToggle`,props:{variant:{default:`floating`}},setup(t){let n=ni(),{isDark:r}=oe(n),i=h(()=>r.value?`vuesax-linear:sun-1`:`vuesax-linear:moon`),o=h(()=>r.value?`تغییر به تم روشن`:`تغییر به تم تاریک`);return(r,s)=>(a(),v(`button`,{type:`button`,class:e([`auth-theme-toggle`,t.variant===`inline`?`auth-theme-toggle--inline`:`auth-theme-toggle--floating`]),"aria-label":o.value,title:o.value,onClick:s[0]||=e=>E(n).toggleLightDark()},[p(k,{icon:i.value,size:18,"stroke-width":1.5},null,8,[`icon`])],10,ri))}}),[[`__scopeId`,`data-v-3a58cb84`]]),ai=[`src`],oi={key:1},si=w(D({__name:`UserAvatar`,props:{src:{},initials:{},size:{default:72}},setup(e){return(t,n)=>(a(),v(`span`,{class:`user-avatar`,style:s({width:`${e.size}px`,height:`${e.size}px`,fontSize:`${Math.round(e.size*.38)}px`})},[e.src?(a(),v(`img`,{key:0,class:`user-avatar__img`,src:e.src,alt:``},null,8,ai)):(a(),v(`span`,oi,c(e.initials),1))],4))}}),[[`__scopeId`,`data-v-5c562bf0`]]),ci={class:`desktop-header`},li={class:`desktop-header__actions`},ui={key:0,class:`desktop-header__company`},di=[`aria-label`],fi={class:`desktop-header__user-wrap`},pi=[`aria-expanded`],mi={class:`desktop-header__user-name`},hi={key:0,class:`desktop-header__menu`},gi=w(D({__name:`DesktopHeader`,setup(e){let t=we(),n=$r(),r=Z(),i=Jr(),o=C(!1),s=h(()=>P(i.unreadCount>9?`9+`:String(i.unreadCount))),l=h(()=>`${n.user?.firstName?.[0]??``}${n.user?.lastName?.[0]??``}`||`؟`),u=h(()=>r.companyNamesLabel||r.activeCart?.companyName||``);function d(){o.value=!o.value}function f(){o.value=!1,t.push(`/profile`)}function m(){o.value=!1,n.logout(),t.replace(`/welcome`)}return(e,r)=>(a(),v(`header`,ci,[r[1]||=S(`div`,{class:`desktop-header__spacer`,"aria-hidden":`true`},null,-1),S(`div`,li,[u.value?(a(),v(`span`,ui,c(u.value),1)):g(``,!0),p(ii,{variant:`inline`}),S(`button`,{type:`button`,class:`desktop-header__icon-btn`,"aria-label":`اعلان‌ها`,onClick:r[0]||=e=>E(t).push(`/profile/notifications`)},[p(ei,{size:20}),E(i).hasUnread?(a(),v(`span`,{key:0,class:`desktop-header__notif-badge`,"aria-label":`${E(i).unreadCount} اعلان خوانده‌نشده`},c(s.value),9,di)):g(``,!0)]),S(`div`,fi,[S(`button`,{type:`button`,class:`desktop-header__user`,"aria-expanded":o.value,onClick:d},[p(si,{class:`desktop-header__avatar`,src:E(n).user?.avatarUrl,initials:l.value,size:32},null,8,[`src`,`initials`]),S(`span`,mi,c(E(n).fullName),1),p(ti,{size:16,class:`desktop-header__chevron`})],8,pi),o.value?(a(),v(`div`,hi,[S(`button`,{type:`button`,onClick:f},`پروفایل`),S(`button`,{type:`button`,class:`desktop-header__menu-logout`,onClick:m},`خروج`)])):g(``,!0)])])]))}}),[[`__scopeId`,`data-v-5f322d95`]]),_i={class:`app-layout`},vi={class:`app-frame`},yi={class:`app-main`},bi={class:`app-main__content`},xi={class:`app-content`},Si=D({__name:`DefaultLayout`,setup(t){let n=Te(),r=h(()=>![`welcome`,`login`,`register`,`otp`,`settlement`,`check-mode`,`check-form`,`check-list`,`cash-settlement`,`order-success`].includes(n.name)&&!n.meta.hideNav),o=h(()=>[`settlement`,`check-mode`,`check-form`,`check-list`,`cash-settlement`].includes(n.name)),s=h(()=>n.name===`welcome`||n.name===`login`||n.name===`register`||n.name===`otp`);return(t,n)=>(a(),v(`div`,{class:e([`app-shell`,{"app-shell--no-nav":!r.value,"app-shell--wide":o.value,"app-shell--with-nav":r.value,"app-shell--immersive":s.value}])},[S(`div`,_i,[r.value?(a(),T(Or,{key:0})):g(``,!0),S(`div`,vi,[r.value?(a(),T(gi,{key:0})):g(``,!0),S(`main`,yi,[S(`div`,bi,[S(`div`,xi,[i(t.$slots,`default`)])])]),r.value?(a(),T(or,{key:1})):g(``,!0)])])],2))}}),Ci=[`type`,`disabled`],wi={key:0,class:`btn-spinner`},Ti=w(D({__name:`BaseButton`,props:{variant:{},size:{},block:{type:Boolean},disabled:{type:Boolean},loading:{type:Boolean},type:{}},setup(t){return(n,r)=>(a(),v(`button`,{type:t.type??`button`,class:e([`btn`,[`btn-${t.variant??`primary`}`,`btn-${t.size??`md`}`,{"btn-block":t.block}]]),disabled:t.disabled||t.loading},[t.loading?(a(),v(`span`,wi)):g(``,!0),i(n.$slots,`default`,{},void 0,!0)],10,Ci))}}),[[`__scopeId`,`data-v-3628a8bb`]]),Ei=_({open:!1,title:``,message:``,confirmLabel:`حذف`,cancelLabel:`انصراف`,tone:`danger`,resolve:null});function Di(){return Ei}function Oi(e){return new Promise(t=>{Object.assign(Ei,{open:!0,title:e.title,message:e.message,confirmLabel:e.confirmLabel??`حذف`,cancelLabel:e.cancelLabel??`انصراف`,tone:e.tone??`danger`,resolve:t})})}function ki(e){Ei.resolve?.(e),Ei.open=!1,Ei.resolve=null}var Ai={class:`dialog card confirm-dialog`},ji={id:`confirm-dialog-title`,class:`confirm-dialog__title`},Mi={class:`confirm-dialog__message`},Ni={class:`dialog-actions confirm-dialog__actions`},Pi=w(D({__name:`ConfirmDialog`,setup(e){let t=Di();function n(){ki(!1)}function i(){ki(!0)}return(e,o)=>E(t).open?(a(),v(`div`,{key:0,class:`dialog-overlay confirm-dialog-overlay`,role:`dialog`,"aria-modal":`true`,"aria-labelledby":`confirm-dialog-title`,onClick:re(n,[`self`])},[S(`div`,Ai,[S(`h3`,ji,c(E(t).title),1),S(`p`,Mi,c(E(t).message),1),S(`div`,Ni,[p(Ti,{variant:`outline`,onClick:n},{default:r(()=>[y(c(E(t).cancelLabel),1)]),_:1}),p(Ti,{variant:E(t).tone===`danger`?`danger`:`primary`,onClick:i},{default:r(()=>[y(c(E(t).confirmLabel),1)]),_:1},8,[`variant`])])])])):g(``,!0)}}),[[`__scopeId`,`data-v-2e50e2a7`]]),Fi=D({__name:`App`,setup(e){let t=$r(),n=Z(),i=qr(),o=L(),s=Jr(),c=we(),u=C(`page-fade`);function d(e){return e.split(`/`).filter(Boolean).length}return c.beforeEach((e,t)=>{if(!t.name){u.value=`page-fade`;return}let n=Nn(d(e.path)-d(t.path),-1,1);n>0?u.value=`page-forward`:n<0?u.value=`page-back`:u.value=`page-fade`}),x(async()=>{await t.hydrate(),t.isAuthenticated&&await Promise.all([o.loadCompanies(),n.hydrate(),i.hydrate(),s.hydrate()])}),se(()=>{t.isAuthenticated&&s.refreshUnreadCount()},6e4,{immediate:!1}),(e,t)=>(a(),v(b,null,[p(Si,null,{default:r(()=>[p(E(nn),null,{default:r(({Component:e,route:t})=>[p(ne,{name:u.value,mode:`out-in`},{default:r(()=>[(a(),v(`div`,{key:t.path,class:`page-transition page-shell`},[(a(),T(l(e)))]))]),_:2},1032,[`name`])]),_:1})]),_:1}),p(Pi)],64))}}),Ii=`modulepreload`,Li=function(e){return`/`+e},Ri={},$=function(e,t,n){let r=Promise.resolve();if(t&&t.length>0){let e=document.getElementsByTagName(`link`),i=document.querySelector(`meta[property=csp-nonce]`),a=i?.nonce||i?.getAttribute(`nonce`);function o(e){return Promise.all(e.map(e=>Promise.resolve(e).then(e=>({status:`fulfilled`,value:e}),e=>({status:`rejected`,reason:e}))))}function s(e){return import.meta.resolve?import.meta.resolve(e):new URL(e,import.meta.url).href}r=o(t.map(t=>{if(t=Li(t,n),t=s(t),t in Ri)return;Ri[t]=!0;let r=t.endsWith(`.css`);for(let n=e.length-1;n>=0;n--){let i=e[n];if(i.href===t&&(!r||i.rel===`stylesheet`))return}let i=document.createElement(`link`);if(i.rel=r?`stylesheet`:Ii,r||(i.as=`script`),i.crossOrigin=``,i.href=t,a&&i.setAttribute(`nonce`,a),document.head.appendChild(i),r)return new Promise((e,n)=>{i.addEventListener(`load`,e),i.addEventListener(`error`,()=>n(Error(`Unable to preload CSS for ${t}`)))})}))}function i(e){let t=new Event(`vite:preloadError`,{cancelable:!0});if(t.payload=e,window.dispatchEvent(t),!t.defaultPrevented)throw e}return r.then(t=>{for(let e of t||[])e.status===`rejected`&&i(e.reason);return e().catch(i)})},zi=rn({history:Tt(`/`),routes:[{path:`/welcome`,name:`welcome`,component:()=>$(()=>import(`./WelcomeView-B9nyWLIh.js`),__vite__mapDeps([0,1,2,3,4,5])),meta:{guest:!0,hideNav:!0}},{path:`/login`,name:`login`,component:()=>$(()=>import(`./LoginView-BHpJH2ha.js`),__vite__mapDeps([6,1,2,3,7,8,9,10,11,12,4,13])),meta:{guest:!0,hideNav:!0}},{path:`/register`,name:`register`,component:()=>$(()=>import(`./RegisterView-B12mniS_.js`),__vite__mapDeps([14,1,2,3,15,16,7,8,9,10,11,12,17,18])),meta:{guest:!0,hideNav:!0}},{path:`/otp`,name:`otp`,component:()=>$(()=>import(`./OtpView-DEZNJ86U.js`),__vite__mapDeps([19,1,2,3,16,7,20,9,10,12,4,21,22])),meta:{guest:!0,hideNav:!0}},{path:`/`,name:`home`,component:()=>$(()=>import(`./HomeView-CvirsHZC.js`),__vite__mapDeps([23,1,2,3,24,7,20,25,26,27,28,29,30,31,32])),meta:{requiresAuth:!0}},{path:`/companies`,redirect:`/categories`},{path:`/categories`,name:`categories`,component:()=>$(()=>import(`./CategoriesView-fGgvG-m4.js`),__vite__mapDeps([33,1,2,3,20,17,25,26,27,24,34,28,35,36,37,38])),meta:{requiresAuth:!0}},{path:`/products`,name:`products`,component:()=>$(()=>import(`./ProductsView-Da45qLqI.js`),__vite__mapDeps([39,1,2,3,15,16,40,17,41,20,42,43,44,25,26,27,24,35,36,37,30,31,45,46])),meta:{requiresAuth:!0}},{path:`/product`,name:`product`,component:()=>$(()=>import(`./ProductDetailView-BqszvyUB.js`),__vite__mapDeps([47,1,2,3,7,48,24,20,25,26,27,49,28,37,29,30,31,45,50])),meta:{requiresAuth:!0}},{path:`/catalogs`,name:`catalogs`,component:()=>$(()=>import(`./CatalogsHubView-BnSYeqwJ.js`),__vite__mapDeps([51,1,7,48,24,20,2,3,43,44,25,26,52,27,34,28,53])),meta:{requiresAuth:!0}},{path:`/catalogs/:catalogId`,name:`catalog-detail`,component:()=>$(()=>import(`./CatalogProductRedirectView-Bzfk8EFi.js`),__vite__mapDeps([54,1,25,26,52,7,48,24,27])),meta:{requiresAuth:!0}},{path:`/catalog-requests`,name:`catalog-requests`,component:()=>$(()=>import(`./CatalogRequestsView-DavJD797.js`),__vite__mapDeps([55,1,7,41,20,2,3,42,49,24,56])),meta:{requiresAuth:!0}},{path:`/catalog-requests/latest-status`,name:`catalog-request-latest-status`,component:()=>$(()=>import(`./LatestCatalogRequestStatusView-CKVcuf7K.js`),__vite__mapDeps([57,1,7,41,20,2,3,42,25,26,49,24,58,59,60])),meta:{requiresAuth:!0}},{path:`/favorites`,name:`favorites`,component:()=>$(()=>import(`./FavoritesView-RlUx7_H2.js`),__vite__mapDeps([61,1,2,3,7,41,20,42,25,26,27,24,31,45,62])),meta:{requiresAuth:!0}},{path:`/customers`,name:`customers`,component:()=>$(()=>import(`./CustomersView-oFAB_RWo.js`),__vite__mapDeps([63,1,7,40,2,3,41,20,42,43,44,25,26,27,24,64,8,9,10,12,65,66,67,68])),meta:{requiresAuth:!0,agentOnly:!0}},{path:`/customers/new`,redirect:e=>({path:`/customers`,query:{...e.query,create:`1`}})},{path:`/customer`,name:`customer`,component:()=>$(()=>import(`./CustomerDetailView-D06mrc2B.js`),__vite__mapDeps([69,1,2,3,7,70,71,11,21,72,41,20,42,25,26,27,24,73,74,64,8,9,10,12,65,66,67,75])),meta:{requiresAuth:!0,agentOnly:!0}},{path:`/meeting-report`,redirect:e=>({path:`/customer`,query:{id:String(e.query.customerId??``),tab:`reports`,meetingReport:`1`}})},{path:`/reminders`,name:`reminders`,component:()=>$(()=>import(`./RemindersView-DQScMISF.js`),__vite__mapDeps([76,1,2,3,15,16,7,20,77,25,26,27,24,28,73,74,78])),meta:{requiresAuth:!0,agentOnly:!0}},{path:`/reminder`,name:`reminder`,component:()=>$(()=>import(`./ReminderDetailView-CB182Fxn.js`),__vite__mapDeps([79,1,41,20,2,3,42,25,26,27,24,80])),meta:{requiresAuth:!0,agentOnly:!0,hideNav:!0}},{path:`/companies/:companyId/catalogs`,name:`company-catalogs`,component:()=>$(()=>import(`./CatalogListView-JUCOpCr_.js`),__vite__mapDeps([81,1,48,24,82,2,3,83,41,20,42,43,44,25,26,52,7,27,84])),meta:{requiresAuth:!0}},{path:`/companies/:companyId/catalogs/:catalogId/products`,name:`company-products`,redirect:e=>({path:`/products`,query:{catalogId:String(e.params.catalogId??``),companyId:String(e.params.companyId??``)}})},{path:`/cart`,name:`cart`,component:()=>$(()=>import(`./CartView-Bke6TXBV.js`),__vite__mapDeps([85,1,2,3,7,82,83,20,9,10,17,86,87,72,36,88])),meta:{requiresAuth:!0}},{path:`/orders`,name:`orders`,component:()=>$(()=>import(`./OrdersView-BXe3x3fy.js`),__vite__mapDeps([89,1,2,3,7,48,24,82,83,70,20,71,40,77,90])),meta:{requiresAuth:!0}},{path:`/orders/latest-status`,name:`order-latest-status`,component:()=>$(()=>import(`./LatestOrderStatusView-Cmvk1IZX.js`),__vite__mapDeps([91,1,7,41,20,2,3,42,25,26,58,59,92])),meta:{requiresAuth:!0}},{path:`/order`,name:`order-query`,redirect:e=>{let t=String(e.query.id??``);return t?{path:`/orders/${t}`}:{name:`orders`}}},{path:`/orders/:id`,name:`order-detail`,component:()=>$(()=>import(`./OrderDetailView-BQgUhha9.js`),__vite__mapDeps([93,1,2,3,15,16,7,8,70,20,9,10,12,94,65,66,95,96,73,74,97])),meta:{requiresAuth:!0}},{path:`/orders/:id/success`,name:`order-success`,component:()=>$(()=>import(`./OrderSuccessView-BGnYjzbC.js`),__vite__mapDeps([98,1,7,41,20,2,3,42,28,99])),meta:{requiresAuth:!0,hideNav:!0}},{path:`/orders/:id/settlement`,name:`settlement`,component:()=>$(()=>import(`./SettlementTypeView-B79MwpEm.js`),__vite__mapDeps([100,1,2,3,7,9,10,86,87,41,20,42,94,101,102])),meta:{requiresAuth:!0,hideNav:!0}},{path:`/orders/:id/cash`,name:`cash-settlement`,component:()=>$(()=>import(`./CashSettlementView-BbwaRcwg.js`),__vite__mapDeps([103,1,2,3,7,48,24,41,20,42,101,94,104])),meta:{requiresAuth:!0,hideNav:!0}},{path:`/orders/:id/check-mode`,name:`check-mode`,component:()=>$(()=>import(`./CheckModeSelectView-DXLWag4X.js`),__vite__mapDeps([105,1,7,21,2,3,41,20,42,101,94,106])),meta:{requiresAuth:!0,hideNav:!0}},{path:`/orders/:id/check-form`,name:`check-form`,component:()=>$(()=>import(`./CheckFormView-BZacVTAv.js`),__vite__mapDeps([107,1,2,3,7,8,9,10,12,41,20,42,101,94,65,66,95,96,73,74,108])),meta:{requiresAuth:!0,hideNav:!0}},{path:`/orders/:id/check-list`,name:`check-list`,component:()=>$(()=>import(`./CheckListView-CjmQVBmc.js`).then(e=>e.n),__vite__mapDeps([109,1,7,82,2,3,83,20,9,10,101,94,110])),meta:{requiresAuth:!0,hideNav:!0}},{path:`/profile`,name:`profile`,component:()=>$(()=>import(`./ProfileView-DOOsdorU.js`),__vite__mapDeps([111,1,2,3,7,70,25,26,27,24,30,31,112])),meta:{requiresAuth:!0}},{path:`/profile/edit`,name:`profile-edit`,component:()=>$(()=>import(`./ProfileEditView-D1Tcro0s.js`),__vite__mapDeps([113,1,2,3,9,10,12,65,66,114,20,115,116])),meta:{requiresAuth:!0}},{path:`/profile/security`,name:`profile-security`,component:()=>$(()=>import(`./ProfileSecurityView-CtNJOjnr.js`),__vite__mapDeps([117,1,9,10,12,65,66,114,20,2,3,115,118])),meta:{requiresAuth:!0}},{path:`/profile/notifications`,name:`profile-notifications`,component:()=>$(()=>import(`./ProfileNotificationsView-HWhGI6LP.js`),__vite__mapDeps([119,1,2,3,7,82,83,114,20,115,120])),meta:{requiresAuth:!0}},{path:`/profile/display`,name:`profile-display`,component:()=>$(()=>import(`./ProfileDisplayView-D1_O0poX.js`),__vite__mapDeps([121,1,2,3,16,114,20,115,122])),meta:{requiresAuth:!0}},{path:`/profile/checks`,name:`profile-checks`,component:()=>$(()=>import(`./ProfileChecksView-CspNmMYH.js`),__vite__mapDeps([123,109,1,7,82,2,3,83,20,9,10,101,94,110])),meta:{requiresAuth:!0}},{path:`/:pathMatch(.*)*`,name:`not-found`,component:()=>$(()=>import(`./NotFoundView-DcuA7MTj.js`),__vite__mapDeps([124,1,125]))}],scrollBehavior(){return{top:0}}});zi.beforeEach(async e=>{await $r().hydrate();let t=Nr();return e.meta.requiresAuth&&!t?{name:`login`,query:{redirect:e.fullPath}}:e.meta.guest&&t||e.meta.agentOnly&&jr()?.appRole!==`agent`?{name:`home`}:!0});var Bi=te(Fi),Vi=ie();Bi.use(Vi),Bi.use(zi),ni(Vi),Bi.mount(`#app`);export{Z as A,Un as C,zn as D,Bn as E,we as M,Rn as O,Wn as S,Vn as T,gr as _,ni as a,sr as b,$r as c,qr as d,Gr as f,Ur as g,Hr as h,ii as i,Te as j,Ln as k,Qr as l,Vr as m,Ti as n,ti as o,Kr as p,si as r,ei as s,Oi as t,Jr as u,pr as v,Hn as w,qn as x,cr as y}; \ No newline at end of file diff --git a/dist/assets/useGoBack-C1ocTT2D.js b/dist/assets/useGoBack-C1ocTT2D.js new file mode 100644 index 0000000..482bf84 --- /dev/null +++ b/dist/assets/useGoBack-C1ocTT2D.js @@ -0,0 +1 @@ +import{M as e}from"./index-BrjLizie.js";function t(t=`/`){let n=e();function r(){if(window.history.length>1){n.back();return}n.push(t)}return{goBack:r}}export{t}; \ No newline at end of file diff --git a/dist/assets/useGoBack-TJZZv7or.js b/dist/assets/useGoBack-TJZZv7or.js deleted file mode 100644 index be25c0b..0000000 --- a/dist/assets/useGoBack-TJZZv7or.js +++ /dev/null @@ -1 +0,0 @@ -import{g as e}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";function t(t=`/`){let n=e();function r(){if(window.history.length>1){n.back();return}n.push(t)}return{goBack:r}}export{t}; \ No newline at end of file diff --git a/dist/assets/useRequirePricedOrder-CmTdgjZX.js b/dist/assets/useRequirePricedOrder-CmTdgjZX.js new file mode 100644 index 0000000..897c232 --- /dev/null +++ b/dist/assets/useRequirePricedOrder-CmTdgjZX.js @@ -0,0 +1 @@ +import{U as e,c as t}from"./_plugin-vue_export-helper-1xMDlcEE.js";import{M as n,d as r,j as i}from"./index-BrjLizie.js";import{n as a}from"./orderInvoice-B0L1Aeuk.js";function o(){let o=i(),s=n(),c=r(),l=t(()=>o.params.id),u=t(()=>c.getOrderById(l.value)),d=t(()=>a(u.value));function f(e){e&&(a(e)||s.replace(`/orders/${e.id}`))}return e(l,async e=>{e&&f(c.getOrderById(e)??await c.fetchOrder(e))},{immediate:!0}),e(u,e=>{f(e)}),{orderId:l,order:u,invoiceReady:d}}export{o as t}; \ No newline at end of file diff --git a/dist/assets/useRequirePricedOrder-DWh7nbsh.js b/dist/assets/useRequirePricedOrder-DWh7nbsh.js deleted file mode 100644 index 6442ff6..0000000 --- a/dist/assets/useRequirePricedOrder-DWh7nbsh.js +++ /dev/null @@ -1 +0,0 @@ -import{at as e,g as t,h as n,w as r}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";import{d as i}from"./index-BAQfYU-Q.js";import{n as a}from"./orderInvoice-B0L1Aeuk.js";function o(){let o=n(),s=t(),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 e(l,async e=>{e&&f(c.getOrderById(e)??await c.fetchOrder(e))},{immediate:!0}),e(u,e=>{f(e)}),{orderId:l,order:u,invoiceReady:d}}export{o as t}; \ No newline at end of file diff --git a/dist/index.html b/dist/index.html index 91751f3..a1100bd 100644 --- a/dist/index.html +++ b/dist/index.html @@ -6,15 +6,15 @@ سامانه سفارش عمده پارچه - - - - - - + + + + + + - +