From 663d0a36aac5911994e108479c664da1f0bb2aa3 Mon Sep 17 00:00:00 2001 From: safavimohadeseh78 Date: Wed, 16 Sep 2026 20:03:03 +0330 Subject: [PATCH] Align desktop UI with mobile shop flows and polish navigation --- dist/assets/BaseInput-BFVjehfb.js | 1 + dist/assets/BaseInput-C6eO_Qjy.js | 1 - ...Icon-C6boaehV.js => BasicIcon-Bnxm-DKk.js} | 4 +- dist/assets/CartView-7hxFuJin.css | 1 - dist/assets/CartView-C652iQUF.css | 1 + dist/assets/CartView-DRuvPkVq.js | 1 - dist/assets/CartView-DcIrdqu4.js | 1 + dist/assets/CashSettlementView-CT_ObFX-.js | 1 - dist/assets/CashSettlementView-DmaDYQvf.js | 1 + dist/assets/CatalogDetailView-D9HeT7Iq.js | 1 + dist/assets/CatalogDetailView-Dp5X6av6.js | 1 - dist/assets/CatalogListView-1JVmwn4V.css | 1 + dist/assets/CatalogListView-B7OmS9fn.js | 1 - dist/assets/CatalogListView-BKPppl-b.js | 1 + dist/assets/CatalogListView-ClQNdMb8.css | 1 - dist/assets/CatalogRequestView--XiSD0Pv.css | 1 + dist/assets/CatalogRequestView-BQv6HkdJ.js | 1 - dist/assets/CatalogRequestView-CYRKO3rB.css | 1 - dist/assets/CatalogRequestView-CbekVMOP.js | 1 + dist/assets/CatalogRequestsView--TWbJobZ.js | 1 + dist/assets/CatalogRequestsView-BMwSCi02.js | 1 - dist/assets/CatalogRequestsView-DSkjUp3f.css | 1 + dist/assets/CatalogRequestsView-DUzaL-Pf.css | 1 - dist/assets/CatalogsHubView-CHO1oP_S.js | 1 + dist/assets/CatalogsHubView-Cnl22g6I.css | 1 - dist/assets/CatalogsHubView-CoPTnv3-.css | 1 + dist/assets/CatalogsHubView-wDSJNJeF.js | 1 - dist/assets/CategoriesView-BNMtfoIp.js | 1 + dist/assets/CategoriesView-BRz9akNh.css | 1 - dist/assets/CategoriesView-BtU4FhNT.css | 1 + dist/assets/CategoriesView-Da1Yz01j.js | 1 - dist/assets/CheckFormView-Cpz48Srr.js | 1 - dist/assets/CheckFormView-DApWVLTM.js | 1 + dist/assets/CheckListView-BM6vq5YZ.js | 1 - dist/assets/CheckListView-C2RmOScu.js | 1 + dist/assets/CheckModeSelectView-Df1a9jxd.js | 1 - dist/assets/CheckModeSelectView-pdkEZrIl.js | 1 + dist/assets/CheckoutStepper-CqUviuW7.js | 1 - dist/assets/CheckoutStepper-DOrSsyu1.js | 1 + dist/assets/CompanySelectView-DXNHvGNP.js | 1 - dist/assets/CompanySelectView-wH7uHLvB.css | 1 - dist/assets/CurrencyInput-DQq9PyBn.js | 1 + dist/assets/CurrencyInput-Dl1ITOQ-.js | 1 - dist/assets/CustomerCreateOverlay-CStx-5j-.js | 1 + .../assets/CustomerCreateOverlay-DpQkF2Gz.css | 1 + dist/assets/CustomerDetailView-Czbonf-B.js | 1 + ...g2.css => CustomerDetailView-D35VhooF.css} | 2 +- dist/assets/CustomerDetailView-DC-nbBZ9.js | 1 - dist/assets/CustomersView--0EpADIk.css | 1 - dist/assets/CustomersView-Khlai4Rw.js | 1 + dist/assets/CustomersView-ZfDgnskm.css | 1 + dist/assets/CustomersView-_yD0xFZV.js | 1 - ...ate-C_QQeA_h.js => EmptyState-CsuH56HV.js} | 2 +- dist/assets/FavoritesView-BFwf0qCn.js | 1 - dist/assets/FavoritesView-C_rd5Wxy.css | 1 - dist/assets/FavoritesView-DDiGZjUW.css | 1 + dist/assets/FavoritesView-HolTmpnM.js | 1 + ...jdBfIQT.js => FormErrorBanner-BahrrGfv.js} | 2 +- ...eView-hY7x8Ola.js => HomeView-sRBpjtF9.js} | 2 +- dist/assets/IconCheckBook-DwIUojJc.js | 1 - ...ORV2H0q.js => IconChevronBack-DguSlPDK.js} | 2 +- ...Gh0W.js => IconClipboardEmpty-dbxs07_C.js} | 2 +- ...nd-Bgv1zgqc.js => IconDiamond-CGMEs3wg.js} | 2 +- ...en-DLV3_yq2.js => IconEditPen-BwxVBWii.js} | 2 +- dist/assets/IconFamBaftLogo-BaDEschB.css | 1 - dist/assets/IconFamBaftLogo-BaP40Dff.js | 1 - ...ter-D9NdLZ7w.js => IconFilter-DHL8PKX0.js} | 2 +- ...eart-CZMe29Nz.js => IconHeart-CiwVmqRC.js} | 2 +- ...E-Q8Z5rF.js => IconLayoutGrid-BfGINevf.js} | 2 +- ...kOm_2U.js => IconMoreVertical-C07CFI4h.js} | 2 +- ...hone-C0bnM4fV.js => IconPhone-Dp7Txh8V.js} | 2 +- ...Gvv7_.js => IconProgressClock-D-v2U-1t.js} | 2 +- ...rch-DOnq8ybc.js => IconSearch-D5bVmUdX.js} | 2 +- ...hare-1kao-fAR.js => IconShare-DtutVVj1.js} | 2 +- ...q21_Txe.js => IconShoppingBag-kdnOLLiZ.js} | 2 +- dist/assets/LoginView-CGhkw0FP.js | 1 - dist/assets/LoginView-DCgkTu-r.js | 1 + ...WMJF8.css => OrderDetailView-5Zi-DKNv.css} | 2 +- ...Abo40bP.js => OrderDetailView-F8UnKRJu.js} | 2 +- dist/assets/OrderSuccessView-BI6XPtrV.css | 1 + dist/assets/OrderSuccessView-BpOXWOi1.js | 1 + dist/assets/OrderSuccessView-D_odiYNR.css | 1 - dist/assets/OrderSuccessView-DpNlCco5.js | 1 - dist/assets/OrdersView-BqL6_Kme.js | 1 - dist/assets/OrdersView-C_CUEMfe.css | 1 + dist/assets/OrdersView-Te_tCICZ.css | 1 - dist/assets/OrdersView-ZqpETR7Y.js | 1 + dist/assets/OtpView-BS4oUATh.js | 1 - dist/assets/OtpView-iifaPe_r.js | 1 + dist/assets/PageHeader-BxTTQB_F.js | 1 + ...r-CDhs0XKF.css => PageHeader-C69aO5cY.css} | 2 +- dist/assets/PageHeader-Cd04Z6F_.js | 1 - dist/assets/PageSkeleton-CpZ7eT1v.js | 1 + dist/assets/PageSkeleton-sKuEY4NI.js | 1 - dist/assets/PersianDateInput-2Yt1srLL.js | 1 - dist/assets/PersianDateInput-BiSVL1bi.js | 1 + dist/assets/ProductDetailView-7kd_faet.js | 1 + dist/assets/ProductDetailView-BUGwmJWw.js | 1 - dist/assets/ProductDetailView-BlsIoIkr.css | 1 - dist/assets/ProductDetailView-DhezkUBD.css | 1 + dist/assets/ProductsView-CQle6SsP.css | 1 - dist/assets/ProductsView-DRFfnXs-.css | 1 + dist/assets/ProductsView-Dhc6PK3T.js | 1 - dist/assets/ProductsView-xMKufARc.js | 1 + dist/assets/ProfileChecksView-CeWWUlq-.js | 1 - dist/assets/ProfileChecksView-Tp62gSX1.js | 1 + dist/assets/ProfileDisplayView-BeAOZ6_e.js | 1 - dist/assets/ProfileDisplayView-DnuPC4UZ.js | 1 + ...MYT8anS.js => ProfileEditView-wzEZQKJ2.js} | 2 +- .../ProfileNotificationsView-D_wDB5-Q.js | 1 + .../ProfileNotificationsView-qTfW9-vz.js | 1 - dist/assets/ProfileSecurityView-K8rOJGfa.js | 1 - dist/assets/ProfileSecurityView-oki8MoKN.js | 1 + dist/assets/ProfileSubpageLayout-DCtwNGmO.css | 1 + dist/assets/ProfileSubpageLayout-M9w6UPVb.js | 1 + dist/assets/ProfileSubpageLayout-PN2YWH-s.js | 1 - dist/assets/ProfileSubpageLayout-W3vfIprY.css | 1 - dist/assets/ProfileView-BnfYcxhD.js | 1 - dist/assets/ProfileView-DSZdSgjW.css | 1 - dist/assets/ProfileView-DeYflX6z.css | 1 + dist/assets/ProfileView-DnQpKT74.js | 1 + dist/assets/RegisterView-EXVxZpxx.js | 1 + dist/assets/RegisterView-P-RrLS2U.js | 1 - dist/assets/ReminderDetailView-DHzMhSyb.js | 1 + dist/assets/ReminderDetailView-DeVZIytU.js | 1 - dist/assets/RemindersView-4scV8gnB.css | 1 + dist/assets/RemindersView-7lF3bXsi.js | 1 + dist/assets/RemindersView-BsYkMSSC.css | 1 - dist/assets/RemindersView-xi9w9NYU.js | 1 - dist/assets/SearchField-CGW0jRdh.js | 1 + dist/assets/SearchField-CRmbblW7.js | 1 - ...-BSod6Xak.css => SearchField-QJMYJEg3.css} | 2 +- dist/assets/SettlementTypeView-Bo02Lk5z.js | 1 - dist/assets/SettlementTypeView-Ci4oR-Ca.js | 1 + ...ew-CMxZax1Y.js => WelcomeView-DCG7Drw-.js} | 2 +- dist/assets/caliteCollections-CooWZH--.js | 1 + ...atalog-s7nVUdlj.js => catalog-B2Z_WZGF.js} | 2 +- dist/assets/catalogGallery-Khy0nWqc.js | 1 - ...1kBtGqL.js => catalogRequests-CHkUMFJx.js} | 2 +- ...-eyHye9W7.js => categoryIcons-XvfZlu8n.js} | 2 +- dist/assets/crm-CZ7XH3z9.js | 1 + dist/assets/crm-DmqasSZ_.js | 1 - dist/assets/dist-CGdWzQ9K.js | 1 + dist/assets/dist-CUUvbY4x.js | 1 - .../{dist-B7sUlTMM.js => dist-CeuESLw-.js} | 2 +- ...{format-BHJptHdF.js => format-C72AoJ2H.js} | 2 +- .../{http-BC1hNfZ4.js => http-Bnj5Ml97.js} | 2 +- dist/assets/index-B_D_P_q1.css | 1 + dist/assets/index-DB4cQnln.js | 2 + dist/assets/index-fdhs4HNc.js | 2 - dist/assets/index-qUmhMDxH.css | 1 - ...Back-CgNp0uP9.js => useGoBack-Ds4z3swU.js} | 2 +- ...K.js => useRequirePricedOrder-CUckkgqU.js} | 2 +- ...ion-BD7oi-2I.js => validation-Duyyve7l.js} | 2 +- dist/index.html | 18 +- src/assets/styles/main.css | 8 +- .../customers/CustomerCreateForm.vue | 60 +- .../customers/CustomerCreateOverlay.vue | 19 +- src/components/layout/BottomNav.vue | 2 +- src/components/layout/DesktopSidebar.vue | 34 +- src/components/layout/PageHeader.vue | 8 +- src/components/ui/SearchField.vue | 12 + src/composables/usePublicContact.ts | 41 + src/router/index.ts | 4 +- src/services/agentApi.ts | 16 + src/stores/crm.ts | 9 + src/types/crm.ts | 3 + src/utils/catalogGallery.ts | 21 +- src/utils/navigation.ts | 43 +- src/views/OrdersView.vue | 4 +- src/views/cart/CartView.vue | 5 +- src/views/cart/components/DesktopCartPage.vue | 20 +- src/views/cart/components/MobileCartPage.vue | 9 +- src/views/catalogs/CatalogListView.vue | 2 +- src/views/catalogs/CatalogRequestView.vue | 148 ++- src/views/catalogs/CatalogRequestsView.vue | 71 +- src/views/catalogs/CatalogsHubView.vue | 76 +- src/views/categories/CategoriesView.vue | 77 +- src/views/customers/CustomerDetailView.vue | 136 ++- src/views/customers/CustomersView.vue | 93 +- src/views/orders/OrderDetailView.vue | 2 +- src/views/orders/OrderSuccessView.vue | 2 +- .../orders/components/DesktopOrdersPage.vue | 6 - src/views/products/FavoritesView.vue | 48 +- src/views/products/ProductDetailView.vue | 148 ++- src/views/products/ProductsView.vue | 961 ++++++++++++++++-- .../profile/components/MobileProfilePage.vue | 6 - .../components/ProfileSubpageLayout.vue | 28 +- src/views/reminders/RemindersView.vue | 93 +- 189 files changed, 2039 insertions(+), 385 deletions(-) create mode 100644 dist/assets/BaseInput-BFVjehfb.js delete mode 100644 dist/assets/BaseInput-C6eO_Qjy.js rename dist/assets/{BasicIcon-C6boaehV.js => BasicIcon-Bnxm-DKk.js} (79%) delete mode 100644 dist/assets/CartView-7hxFuJin.css create mode 100644 dist/assets/CartView-C652iQUF.css delete mode 100644 dist/assets/CartView-DRuvPkVq.js create mode 100644 dist/assets/CartView-DcIrdqu4.js delete mode 100644 dist/assets/CashSettlementView-CT_ObFX-.js create mode 100644 dist/assets/CashSettlementView-DmaDYQvf.js create mode 100644 dist/assets/CatalogDetailView-D9HeT7Iq.js delete mode 100644 dist/assets/CatalogDetailView-Dp5X6av6.js create mode 100644 dist/assets/CatalogListView-1JVmwn4V.css delete mode 100644 dist/assets/CatalogListView-B7OmS9fn.js create mode 100644 dist/assets/CatalogListView-BKPppl-b.js delete mode 100644 dist/assets/CatalogListView-ClQNdMb8.css create mode 100644 dist/assets/CatalogRequestView--XiSD0Pv.css delete mode 100644 dist/assets/CatalogRequestView-BQv6HkdJ.js delete mode 100644 dist/assets/CatalogRequestView-CYRKO3rB.css create mode 100644 dist/assets/CatalogRequestView-CbekVMOP.js create mode 100644 dist/assets/CatalogRequestsView--TWbJobZ.js delete mode 100644 dist/assets/CatalogRequestsView-BMwSCi02.js create mode 100644 dist/assets/CatalogRequestsView-DSkjUp3f.css delete mode 100644 dist/assets/CatalogRequestsView-DUzaL-Pf.css create mode 100644 dist/assets/CatalogsHubView-CHO1oP_S.js delete mode 100644 dist/assets/CatalogsHubView-Cnl22g6I.css create mode 100644 dist/assets/CatalogsHubView-CoPTnv3-.css delete mode 100644 dist/assets/CatalogsHubView-wDSJNJeF.js create mode 100644 dist/assets/CategoriesView-BNMtfoIp.js delete mode 100644 dist/assets/CategoriesView-BRz9akNh.css create mode 100644 dist/assets/CategoriesView-BtU4FhNT.css delete mode 100644 dist/assets/CategoriesView-Da1Yz01j.js delete mode 100644 dist/assets/CheckFormView-Cpz48Srr.js create mode 100644 dist/assets/CheckFormView-DApWVLTM.js delete mode 100644 dist/assets/CheckListView-BM6vq5YZ.js create mode 100644 dist/assets/CheckListView-C2RmOScu.js delete mode 100644 dist/assets/CheckModeSelectView-Df1a9jxd.js create mode 100644 dist/assets/CheckModeSelectView-pdkEZrIl.js delete mode 100644 dist/assets/CheckoutStepper-CqUviuW7.js create mode 100644 dist/assets/CheckoutStepper-DOrSsyu1.js delete mode 100644 dist/assets/CompanySelectView-DXNHvGNP.js delete mode 100644 dist/assets/CompanySelectView-wH7uHLvB.css create mode 100644 dist/assets/CurrencyInput-DQq9PyBn.js delete mode 100644 dist/assets/CurrencyInput-Dl1ITOQ-.js create mode 100644 dist/assets/CustomerCreateOverlay-CStx-5j-.js create mode 100644 dist/assets/CustomerCreateOverlay-DpQkF2Gz.css create mode 100644 dist/assets/CustomerDetailView-Czbonf-B.js rename dist/assets/{CustomerDetailView-U6N_pEg2.css => CustomerDetailView-D35VhooF.css} (64%) delete mode 100644 dist/assets/CustomerDetailView-DC-nbBZ9.js delete mode 100644 dist/assets/CustomersView--0EpADIk.css create mode 100644 dist/assets/CustomersView-Khlai4Rw.js create mode 100644 dist/assets/CustomersView-ZfDgnskm.css delete mode 100644 dist/assets/CustomersView-_yD0xFZV.js rename dist/assets/{EmptyState-C_QQeA_h.js => EmptyState-CsuH56HV.js} (56%) delete mode 100644 dist/assets/FavoritesView-BFwf0qCn.js delete mode 100644 dist/assets/FavoritesView-C_rd5Wxy.css create mode 100644 dist/assets/FavoritesView-DDiGZjUW.css create mode 100644 dist/assets/FavoritesView-HolTmpnM.js rename dist/assets/{FormErrorBanner-CjdBfIQT.js => FormErrorBanner-BahrrGfv.js} (58%) rename dist/assets/{HomeView-hY7x8Ola.js => HomeView-sRBpjtF9.js} (57%) delete mode 100644 dist/assets/IconCheckBook-DwIUojJc.js rename dist/assets/{IconChevronBack-DORV2H0q.js => IconChevronBack-DguSlPDK.js} (81%) rename dist/assets/{IconClipboardEmpty-5Av_Gh0W.js => IconClipboardEmpty-dbxs07_C.js} (82%) rename dist/assets/{IconDiamond-Bgv1zgqc.js => IconDiamond-CGMEs3wg.js} (81%) rename dist/assets/{IconEditPen-DLV3_yq2.js => IconEditPen-BwxVBWii.js} (81%) delete mode 100644 dist/assets/IconFamBaftLogo-BaDEschB.css delete mode 100644 dist/assets/IconFamBaftLogo-BaP40Dff.js rename dist/assets/{IconFilter-D9NdLZ7w.js => IconFilter-DHL8PKX0.js} (81%) rename dist/assets/{IconHeart-CZMe29Nz.js => IconHeart-CiwVmqRC.js} (58%) rename dist/assets/{IconLayoutGrid-E-Q8Z5rF.js => IconLayoutGrid-BfGINevf.js} (81%) rename dist/assets/{IconMoreVertical-BPkOm_2U.js => IconMoreVertical-C07CFI4h.js} (81%) rename dist/assets/{IconPhone-C0bnM4fV.js => IconPhone-Dp7Txh8V.js} (81%) rename dist/assets/{IconProgressClock-ChlGvv7_.js => IconProgressClock-D-v2U-1t.js} (81%) rename dist/assets/{IconSearch-DOnq8ybc.js => IconSearch-D5bVmUdX.js} (81%) rename dist/assets/{IconShare-1kao-fAR.js => IconShare-DtutVVj1.js} (92%) rename dist/assets/{IconShoppingBag-Bq21_Txe.js => IconShoppingBag-kdnOLLiZ.js} (81%) delete mode 100644 dist/assets/LoginView-CGhkw0FP.js create mode 100644 dist/assets/LoginView-DCgkTu-r.js rename dist/assets/{OrderDetailView-DfQWMJF8.css => OrderDetailView-5Zi-DKNv.css} (57%) rename dist/assets/{OrderDetailView-BAbo40bP.js => OrderDetailView-F8UnKRJu.js} (50%) create mode 100644 dist/assets/OrderSuccessView-BI6XPtrV.css create mode 100644 dist/assets/OrderSuccessView-BpOXWOi1.js delete mode 100644 dist/assets/OrderSuccessView-D_odiYNR.css delete mode 100644 dist/assets/OrderSuccessView-DpNlCco5.js delete mode 100644 dist/assets/OrdersView-BqL6_Kme.js create mode 100644 dist/assets/OrdersView-C_CUEMfe.css delete mode 100644 dist/assets/OrdersView-Te_tCICZ.css create mode 100644 dist/assets/OrdersView-ZqpETR7Y.js delete mode 100644 dist/assets/OtpView-BS4oUATh.js create mode 100644 dist/assets/OtpView-iifaPe_r.js create mode 100644 dist/assets/PageHeader-BxTTQB_F.js rename dist/assets/{PageHeader-CDhs0XKF.css => PageHeader-C69aO5cY.css} (55%) delete mode 100644 dist/assets/PageHeader-Cd04Z6F_.js create mode 100644 dist/assets/PageSkeleton-CpZ7eT1v.js delete mode 100644 dist/assets/PageSkeleton-sKuEY4NI.js delete mode 100644 dist/assets/PersianDateInput-2Yt1srLL.js create mode 100644 dist/assets/PersianDateInput-BiSVL1bi.js create mode 100644 dist/assets/ProductDetailView-7kd_faet.js delete mode 100644 dist/assets/ProductDetailView-BUGwmJWw.js delete mode 100644 dist/assets/ProductDetailView-BlsIoIkr.css create mode 100644 dist/assets/ProductDetailView-DhezkUBD.css delete mode 100644 dist/assets/ProductsView-CQle6SsP.css create mode 100644 dist/assets/ProductsView-DRFfnXs-.css delete mode 100644 dist/assets/ProductsView-Dhc6PK3T.js create mode 100644 dist/assets/ProductsView-xMKufARc.js delete mode 100644 dist/assets/ProfileChecksView-CeWWUlq-.js create mode 100644 dist/assets/ProfileChecksView-Tp62gSX1.js delete mode 100644 dist/assets/ProfileDisplayView-BeAOZ6_e.js create mode 100644 dist/assets/ProfileDisplayView-DnuPC4UZ.js rename dist/assets/{ProfileEditView-BMYT8anS.js => ProfileEditView-wzEZQKJ2.js} (63%) create mode 100644 dist/assets/ProfileNotificationsView-D_wDB5-Q.js delete mode 100644 dist/assets/ProfileNotificationsView-qTfW9-vz.js delete mode 100644 dist/assets/ProfileSecurityView-K8rOJGfa.js create mode 100644 dist/assets/ProfileSecurityView-oki8MoKN.js create mode 100644 dist/assets/ProfileSubpageLayout-DCtwNGmO.css create mode 100644 dist/assets/ProfileSubpageLayout-M9w6UPVb.js delete mode 100644 dist/assets/ProfileSubpageLayout-PN2YWH-s.js delete mode 100644 dist/assets/ProfileSubpageLayout-W3vfIprY.css delete mode 100644 dist/assets/ProfileView-BnfYcxhD.js delete mode 100644 dist/assets/ProfileView-DSZdSgjW.css create mode 100644 dist/assets/ProfileView-DeYflX6z.css create mode 100644 dist/assets/ProfileView-DnQpKT74.js create mode 100644 dist/assets/RegisterView-EXVxZpxx.js delete mode 100644 dist/assets/RegisterView-P-RrLS2U.js create mode 100644 dist/assets/ReminderDetailView-DHzMhSyb.js delete mode 100644 dist/assets/ReminderDetailView-DeVZIytU.js create mode 100644 dist/assets/RemindersView-4scV8gnB.css create mode 100644 dist/assets/RemindersView-7lF3bXsi.js delete mode 100644 dist/assets/RemindersView-BsYkMSSC.css delete mode 100644 dist/assets/RemindersView-xi9w9NYU.js create mode 100644 dist/assets/SearchField-CGW0jRdh.js delete mode 100644 dist/assets/SearchField-CRmbblW7.js rename dist/assets/{SearchField-BSod6Xak.css => SearchField-QJMYJEg3.css} (54%) delete mode 100644 dist/assets/SettlementTypeView-Bo02Lk5z.js create mode 100644 dist/assets/SettlementTypeView-Ci4oR-Ca.js rename dist/assets/{WelcomeView-CMxZax1Y.js => WelcomeView-DCG7Drw-.js} (75%) create mode 100644 dist/assets/caliteCollections-CooWZH--.js rename dist/assets/{catalog-s7nVUdlj.js => catalog-B2Z_WZGF.js} (93%) delete mode 100644 dist/assets/catalogGallery-Khy0nWqc.js rename dist/assets/{catalogRequests-D1kBtGqL.js => catalogRequests-CHkUMFJx.js} (93%) rename dist/assets/{categoryIcons-eyHye9W7.js => categoryIcons-XvfZlu8n.js} (88%) create mode 100644 dist/assets/crm-CZ7XH3z9.js delete mode 100644 dist/assets/crm-DmqasSZ_.js create mode 100644 dist/assets/dist-CGdWzQ9K.js delete mode 100644 dist/assets/dist-CUUvbY4x.js rename dist/assets/{dist-B7sUlTMM.js => dist-CeuESLw-.js} (58%) rename dist/assets/{format-BHJptHdF.js => format-C72AoJ2H.js} (96%) rename dist/assets/{http-BC1hNfZ4.js => http-Bnj5Ml97.js} (80%) create mode 100644 dist/assets/index-B_D_P_q1.css create mode 100644 dist/assets/index-DB4cQnln.js delete mode 100644 dist/assets/index-fdhs4HNc.js delete mode 100644 dist/assets/index-qUmhMDxH.css rename dist/assets/{useGoBack-CgNp0uP9.js => useGoBack-Ds4z3swU.js} (61%) rename dist/assets/{useRequirePricedOrder-BV4a0r6K.js => useRequirePricedOrder-CUckkgqU.js} (72%) rename dist/assets/{validation-BD7oi-2I.js => validation-Duyyve7l.js} (95%) create mode 100644 src/composables/usePublicContact.ts diff --git a/dist/assets/BaseInput-BFVjehfb.js b/dist/assets/BaseInput-BFVjehfb.js new file mode 100644 index 0000000..703571d --- /dev/null +++ b/dist/assets/BaseInput-BFVjehfb.js @@ -0,0 +1 @@ +import{A as e,Dt as t,N as n,P as r,X as i,j as a,n as o,wt as s,z as c}from"./BasicIcon-Bnxm-DKk.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=o(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(o){let c=o,m=e(()=>{let e=c.type??`text`;return e===`number`||e===`tel`||c.inputmode===`numeric`||c.inputmode===`decimal`||c.inputmode===`tel`||c.dir===`ltr`}),h=e(()=>c.align??(m.value?`end`:`start`));return(e,c)=>(i(),r(`div`,l,[o.label?(i(),r(`label`,u,t(o.label),1)):n(``,!0),a(`input`,{class:s([`input`,[`input--align-${h.value}`,{"input-error":o.error}]]),type:o.type??`text`,value:o.modelValue,placeholder:o.placeholder,disabled:o.disabled,min:o.min,max:o.max,step:o.step,maxlength:o.maxlength,inputmode:o.inputmode,autocomplete:o.autocomplete,dir:o.dir,onInput:c[0]||=t=>e.$emit(`update:modelValue`,t.target.value),onBlur:c[1]||=t=>e.$emit(`blur`,t)},null,42,d),o.error?(i(),r(`p`,f,t(o.error),1)):o.hint?(i(),r(`p`,p,t(o.hint),1)):n(``,!0)]))}}),[[`__scopeId`,`data-v-42608cc9`]]);export{m as t}; \ No newline at end of file diff --git a/dist/assets/BaseInput-C6eO_Qjy.js b/dist/assets/BaseInput-C6eO_Qjy.js deleted file mode 100644 index f4e1033..0000000 --- a/dist/assets/BaseInput-C6eO_Qjy.js +++ /dev/null @@ -1 +0,0 @@ -import{A as e,Ct as t,Et as n,N as r,P as i,Y as a,j as o,n as s,z as c}from"./BasicIcon-C6boaehV.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=e(()=>{let e=c.type??`text`;return e===`number`||e===`tel`||c.inputmode===`numeric`||c.inputmode===`decimal`||c.inputmode===`tel`||c.dir===`ltr`}),h=e(()=>c.align??(m.value?`end`:`start`));return(e,c)=>(a(),i(`div`,l,[s.label?(a(),i(`label`,u,n(s.label),1)):r(``,!0),o(`input`,{class:t([`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]||=t=>e.$emit(`update:modelValue`,t.target.value),onBlur:c[1]||=t=>e.$emit(`blur`,t)},null,42,d),s.error?(a(),i(`p`,f,n(s.error),1)):s.hint?(a(),i(`p`,p,n(s.hint),1)):r(``,!0)]))}}),[[`__scopeId`,`data-v-42608cc9`]]);export{m as t}; \ No newline at end of file diff --git a/dist/assets/BasicIcon-C6boaehV.js b/dist/assets/BasicIcon-Bnxm-DKk.js similarity index 79% rename from dist/assets/BasicIcon-C6boaehV.js rename to dist/assets/BasicIcon-Bnxm-DKk.js index a3a99ba..fc754cd 100644 --- a/dist/assets/BasicIcon-C6boaehV.js +++ b/dist/assets/BasicIcon-Bnxm-DKk.js @@ -1,4 +1,4 @@ -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=void 0,mo=typeof window<`u`&&window.trustedTypes;if(mo)try{po=mo.createPolicy(`vue`,{createHTML:e=>e})}catch{}var ho=po?e=>po.createHTML(e):e=>e,go=`http://www.w3.org/2000/svg`,_o=`http://www.w3.org/1998/Math/MathML`,vo=typeof document<`u`?document:null,yo=vo&&vo.createElement(`template`),bo={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`?vo.createElementNS(go,e):t===`mathml`?vo.createElementNS(_o,e):n?vo.createElement(e,{is:n}):vo.createElement(e);return e===`select`&&r&&r.multiple!=null&&i.setAttribute(`multiple`,r.multiple),i},createText:e=>vo.createTextNode(e),createComment:e=>vo.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>vo.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{yo.innerHTML=ho(r===`svg`?`${e}`:r===`mathml`?`${e}`:e);let i=yo.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]}},xo=`transition`,So=`animation`,Co=Symbol(`_vtc`),wo={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},To=s({},mr,wo),Eo=(e=>(e.displayName=`Transition`,e.props=To,e))((e,{slots:t})=>uo(vr,ko(e),t)),Do=(e,t=[])=>{d(e)?e.forEach(e=>e(...t)):e&&e(...t)},Oo=e=>e?d(e)?e.some(e=>e.length>1):e.length>1:!1;function ko(e){let t={};for(let n in e)n in wo||(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:c=`${n}-enter-to`,appearFromClass:l=a,appearActiveClass:u=o,appearToClass:d=c,leaveFromClass:f=`${n}-leave-from`,leaveActiveClass:p=`${n}-leave-active`,leaveToClass:m=`${n}-leave-to`}=e,h=Ao(i),g=h&&h[0],_=h&&h[1],{onBeforeEnter:v,onEnter:y,onEnterCancelled:b,onLeave:x,onLeaveCancelled:S,onBeforeAppear:C=v,onAppear:w=y,onAppearCancelled:T=b}=t,ee=(e,t,n,r)=>{e._enterCancelled=r,No(e,t?d:c),No(e,t?u:o),n&&n()},te=(e,t)=>{e._isLeaving=!1,No(e,f),No(e,m),No(e,p),t&&t()},E=e=>(t,n)=>{let i=e?w:y,o=()=>ee(t,e,n);Do(i,[t,o]),Po(()=>{No(t,e?l:a),Mo(t,e?d:c),Oo(i)||Io(t,r,g,o)})};return s(t,{onBeforeEnter(e){Do(v,[e]),Mo(e,a),Mo(e,o)},onBeforeAppear(e){Do(C,[e]),Mo(e,l),Mo(e,u)},onEnter:E(!1),onAppear:E(!0),onLeave(e,t){e._isLeaving=!0;let n=()=>te(e,t);Mo(e,f),e._enterCancelled?(Mo(e,p),Bo(e)):(Bo(e),Mo(e,p)),Po(()=>{e._isLeaving&&(No(e,f),Mo(e,m),Oo(x)||Io(e,r,_,n))}),Do(x,[e,n])},onEnterCancelled(e){ee(e,!1,void 0,!0),Do(b,[e])},onAppearCancelled(e){ee(e,!0,void 0,!0),Do(T,[e])},onLeaveCancelled(e){te(e),Do(S,[e])}})}function Ao(e){if(e==null)return null;if(v(e))return[jo(e.enter),jo(e.leave)];{let t=jo(e);return[t,t]}}function jo(e){return se(e)}function Mo(e,t){t.split(/\s+/).forEach(t=>t&&e.classList.add(t)),(e[Co]||(e[Co]=new Set)).add(t)}function No(e,t){t.split(/\s+/).forEach(t=>t&&e.classList.remove(t));let n=e[Co];n&&(n.delete(t),n.size||(e[Co]=void 0))}function Po(e){requestAnimationFrame(()=>{requestAnimationFrame(e)})}var Fo=0;function Io(e,t,n,r){let i=e._endId=++Fo,a=()=>{i===e._endId&&r()};if(n!=null)return setTimeout(a,n);let{type:o,timeout:s,propCount:c}=Lo(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(`${xo}Delay`),a=r(`${xo}Duration`),o=Ro(i,a),s=r(`${So}Delay`),c=r(`${So}Duration`),l=Ro(s,c),u=null,d=0,f=0;t===xo?o>0&&(u=xo,d=o,f=a.length):t===So?l>0&&(u=So,d=l,f=c.length):(d=Math.max(o,l),u=d>0?o>l?xo:So:null,f=u?u===xo?a.length:c.length:0);let p=u===xo&&/\b(?:transform|all)(?:,|$)/.test(r(`${xo}Property`).toString());return{type:u,timeout:d,propCount:f,hasTransform:p}}function Ro(e,t){for(;e.lengthzo(t)+zo(e[n])))}function zo(e){return e===`auto`?0:Number(e.slice(0,-1).replace(`,`,`.`))*1e3}function Bo(e){return(e?e.ownerDocument:document).body.offsetHeight}function Vo(e,t,n){let r=e[Co];r&&(t=(t?[t,...r]:[...r]).join(` `)),t==null?e.removeAttribute(`class`):n?e.setAttribute(`class`,t):e.className=t}var Ho=Symbol(`_vod`),Uo=Symbol(`_vsh`),Wo={name:`show`,beforeMount(e,{value:t},{transition:n}){e[Ho]=e.style.display===`none`?``:e.style.display,n&&t?n.beforeEnter(e):Go(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),Go(e,!0),r.enter(e)):r.leave(e,()=>{Go(e,!1)}):Go(e,t))},beforeUnmount(e,{value:t}){Go(e,t)}};function Go(e,t){e.style.display=t?e[Ho]:`none`,e[Uo]=!t}var Ko=Symbol(``);function qo(e){let t=Ga();if(!t)return;let n=t.ut=(n=e(t.proxy))=>{Array.from(document.querySelectorAll(`[data-v-owner="${t.uid}"]`)).forEach(e=>Yo(e,n))},i=()=>{let r=e(t.proxy);t.ce?Yo(t.ce,r):Jo(t.subTree,r),n(r)};Vr(()=>{Mn(i)}),Br(()=>{Jn(i,r,{flush:`post`});let e=new MutationObserver(i);e.observe(t.subTree.el.parentNode,{childList:!0}),Wr(()=>e.disconnect())})}function Jo(e,t){if(e.shapeFlag&128){let n=e.suspense;e=n.activeBranch,n.pendingBranch&&!n.isHydrating&&n.effects.push(()=>{Jo(n.activeBranch,t)})}for(;e.component;)e=e.component.subTree;if(e.shapeFlag&1&&e.el)Yo(e.el,t);else if(e.type===q)e.children.forEach(e=>Jo(e,t));else if(e.type===ya){let{el:n,anchor:r}=e;for(;n&&(Yo(n,t),n!==r);)n=n.nextSibling}}function Yo(e,t){if(e.nodeType===1){let n=e.style,r=``;for(let e in t){let i=De(t[e]);n.setProperty(`--${e}`,i),r+=`--${e}: ${i};`}n[Ko]=r}}var Xo=/(?:^|;)\s*display\s*:/;function Zo(e,t,n){let r=e.style,i=g(n),a=!1;if(n&&!i){if(t)if(g(t))for(let e of t.split(`;`)){let t=e.slice(0,e.indexOf(`:`)).trim();n[t]??$o(r,t,``)}else for(let e in t)n[e]??$o(r,e,``);for(let i in n){i===`display`&&(a=!0);let o=n[i];o==null?$o(r,i,``):rs(e,i,!g(t)&&t?t[i]:void 0,o)||$o(r,i,o)}}else if(i){if(t!==n){let e=r[Ko];e&&(n+=`;`+e),r.cssText=n,a=Xo.test(n)}}else t&&e.removeAttribute(`style`);Ho in e&&(e[Ho]=a?r.display:``,e[Uo]&&(r.display=`none`))}var Qo=/\s*!important$/;function $o(e,t,n){if(d(n))n.forEach(n=>$o(e,t,n));else if(n??=``,t.startsWith(`--`))e.setProperty(t,n);else{let r=ns(e,t);Qo.test(n)?e.setProperty(D(r),n.replace(Qo,``),`important`):e[r]=n}}var es=[`Webkit`,`Moz`,`ms`],ts={};function ns(e,t){let n=ts[t];if(n)return n;let r=E(t);if(r!==`filter`&&r in e)return ts[t]=r;r=re(r);for(let n=0;nms||=(hs.then(()=>ms=0),Date.now());function _s(e,t){let n=e=>{if(!e._vts)e._vts=Date.now();else if(e._vts<=n.attached)return;let r=n.value;if(d(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,ys=(e,t,n,r,i,s)=>{let c=i===`svg`;t===`class`?Vo(e,r,c):t===`style`?Zo(e,n,r):a(t)?o(t)||us(e,t,n,r,s):(t[0]===`.`?(t=t.slice(1),!0):t[0]===`^`?(t=t.slice(1),!1):bs(e,t,r,c))?(os(e,t,r),!e.tagName.includes(`-`)&&(t===`value`||t===`checked`||t===`selected`)&&as(e,t,r,c,s,t!==`value`)):e._isVueCE&&(xs(e,t)||e._def.__asyncLoader&&(/[A-Z]/.test(t)||!g(r)))?os(e,E(t),r,s,t):(t===`true-value`?e._trueValue=r:t===`false-value`&&(e._falseValue=r),as(e,t,r,c))};function bs(e,t,n,r){if(r)return!!(t===`innerHTML`||t===`textContent`||t in e&&vs(t)&&h(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 vs(t)&&g(n)?!1:t in e}function xs(e,t){let n=e._def.props;if(!n)return!1;let r=E(t);return Array.isArray(n)?n.some(e=>E(e)===r):Object.keys(n).some(e=>E(e)===r)}var Ss=new WeakMap,Cs=new WeakMap,ws=Symbol(`_moveCb`),Ts=Symbol(`_enterCb`),Es=(e=>(delete e.props.mode,e))({name:`TransitionGroup`,props:s({},To,{tag:String,moveClass:String}),setup(e,{slots:t}){let n=Ga(),r=pr(),i,a;return Hr(()=>{if(!i.length)return;let t=e.moveClass||`${e.name||`v`}-move`;if(!js(i[0].el,n.vnode.el,t)){i=[];return}i.forEach(Ds),i.forEach(Os);let r=i.filter(ks);Bo(n.vnode.el),r.forEach(e=>{let n=e.el,r=n.style;Mo(n,t),r.transform=r.webkitTransform=r.transitionDuration=``;let i=n[ws]=e=>{e&&e.target!==n||(!e||e.propertyName.endsWith(`transform`))&&(n.removeEventListener(`transitionend`,i),n[ws]=null,No(n,t))};n.addEventListener(`transitionend`,i)}),i=[]}),()=>{let o=I(e),s=ko(o),c=o.tag||q;if(i=[],a)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}=Lo(r);return a.removeChild(r),o}var Ms=e=>{let t=e.props[`onUpdate:modelValue`]||!1;return d(t)?e=>ae(t,e):t};function Ns(e){e.target.composing=!0}function Ps(e){let t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event(`input`)))}var Fs=Symbol(`_assign`);function Is(e,t,n){return t&&(e=e.trim()),n&&(e=oe(e)),e}var Ls={created(e,{modifiers:{lazy:t,trim:n,number:r}},i){e[Fs]=Ms(i);let a=r||i.props&&i.props.type===`number`;ss(e,t?`change`:`input`,t=>{t.target.composing||e[Fs](Is(e.value,n,a))}),(n||a)&&ss(e,`change`,()=>{e.value=Is(e.value,n,a)}),t||(ss(e,`compositionstart`,Ns),ss(e,`compositionend`,Ps),ss(e,`change`,Ps))},mounted(e,{value:t}){e.value=t??``},beforeUpdate(e,{value:t,oldValue:n,modifiers:{lazy:r,trim:i,number:a}},o){if(e[Fs]=Ms(o),e.composing)return;let s=(a||e.type===`number`)&&!/^0\d/.test(e.value)?oe(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)}},Rs={deep:!0,created(e,t,n){e[Fs]=Ms(n),ss(e,`change`,()=>{let t=e._modelValue,n=Hs(e),r=e.checked,i=e[Fs];if(d(t)){let e=Se(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(p(t)){let e=new Set(t);r?e.add(n):e.delete(n),i(e)}else i(Us(e,r))})},mounted:zs,beforeUpdate(e,t,n){e[Fs]=Ms(n),zs(e,t,n)}};function zs(e,{value:t,oldValue:n},r){e._modelValue=t;let i;if(d(t))i=Se(t,r.props.value)>-1;else if(p(t))i=t.has(r.props.value);else{if(t===n)return;i=xe(t,Us(e,!0))}e.checked!==i&&(e.checked=i)}var Bs={deep:!0,created(e,{value:t,modifiers:{number:n}},r){e._modelValue=t,ss(e,`change`,()=>{let t=Array.prototype.filter.call(e.options,e=>e.selected).map(e=>n?oe(Hs(e)):Hs(e));e[Fs](e.multiple?p(e._modelValue)?new Set(t):t:t[0]),e._assigning=!0,On(()=>{e._assigning=!1})}),e[Fs]=Ms(r)},mounted(e,{value:t}){Vs(e,t)},beforeUpdate(e,{value:t},n){e._modelValue=t,e[Fs]=Ms(n)},updated(e,{value:t}){e._assigning||Vs(e,t)}};function Vs(e,t){let n=e.multiple,r=d(t);if(!(n&&!r&&!p(t))){for(let i=0,a=e.options.length;iString(e)===String(o)):Se(t,o)>-1}else a.selected=t.has(o);else if(xe(Hs(a),t)){e.selectedIndex!==i&&(e.selectedIndex=i);return}}!n&&e.selectedIndex!==-1&&(e.selectedIndex=-1)}}function Hs(e){return`_value`in e?e._value:e.value}function Us(e,t){let n=t?`_trueValue`:`_falseValue`;return n in e?e[n]:t}var Ws=[`ctrl`,`shift`,`alt`,`meta`],Gs={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)=>Ws.some(n=>e[`${n}Key`]&&!t.includes(n))},Ks=(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=D(n.key);if(t.some(e=>e===r||qs[e]===r))return e(n)}))},Ys=s({patchProp:ys},bo),Xs;function Zs(){return Xs||=oa(Ys)}var Qs=((...e)=>{let t=Zs().createApp(...e),{mount:n}=t;return t.mount=e=>{let r=ec(e);if(!r)return;let i=t._component;!h(i)&&!i.render&&!i.template&&(i.template=r.innerHTML),r.nodeType===1&&(r.textContent=``);let a=n(r,!1,$s(r));return r instanceof Element&&(r.removeAttribute(`v-cloak`),r.setAttribute(`data-v-app`,``)),a},t});function $s(e){if(e instanceof SVGElement)return`svg`;if(typeof MathMLElement==`function`&&e instanceof MathMLElement)return`mathml`}function ec(e){return g(e)?document.querySelector(e):e}function tc(e){return typeof e==`object`||`displayName`in e||`props`in e||`__vccOpts`in e}function nc(e){return e.__esModule||e[Symbol.toStringTag]===`Module`||e.default&&tc(e.default)}var rc=Object.assign;function ic(e,t){let n={};for(let r in t){let i=t[r];n[r]=oc(i)?i.map(e):e(i)}return n}var ac=()=>{},oc=Array.isArray;function sc(e,t){let n={};for(let r in e)n[r]=r in t?t[r]:e[r];return n}var cc=Symbol(``);function lc(e,t){return rc(Error(),{type:e,[cc]:!0},t)}function uc(e,t){return e instanceof Error&&cc in e&&(t==null||!!(e.type&t))}var dc=Symbol(``),fc=Symbol(``),pc=Symbol(``),mc=Symbol(``),hc=Symbol(``);function gc(){return Un(pc)}function _c(e){return Un(mc)}var vc={"vuesax-linear:add":` +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=so(H),i=e.dirs||=[];for(let e=0;e1)return n&&h(t)?t.call(r&&r.proxy):t}}function Wn(){return!!(Ka()||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(Qa){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=Q;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 Qa&&(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=Ya(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=Ka(),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?so(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=Q){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=Q,r=!1){if(n){let i=n[e]||(n[e]=[]),a=t.__weh||=(...r)=>{qe();let i=Ya(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=Q)=>{(!Qa||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=Q){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||Q;if(i){let n=i.type;if(e===Yr){let e=co(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?Za(e)?so(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=Ka();return t.setupContext||=oo(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=uo({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)&&Ha(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&&Ha(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)&&Ha(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&&Ha(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=Ga(e,r,i);if(Mr(e)&&(s.ctx.renderer=Se),$a(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)&&Ha(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(()=>Ha(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)&&Ha(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(()=>Ha(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)&&Ha(_,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(()=>{_&&Ha(_,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(lo(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;nQ||H,qa,Ja;{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)}};qa=t(`__VUE_INSTANCE_SETTERS__`,e=>Q=e),Ja=t(`__VUE_SSR_SETTERS__`,e=>Qa=e)}var Ya=e=>{let t=Q;return qa(e),e.scope.on(),()=>{e.scope.off(),qa(t)}},Xa=()=>{Q&&Q.scope.off(),qa(null)};function Za(e){return e.vnode.shapeFlag&4}var Qa=!1;function $a(e,t=!1,n=!1){t&&Ja(t);let{props:r,children:i}=e.vnode,a=Za(e);Gi(e,r,a,t),ia(e,i,n||t);let o=a?eo(e,t):void 0;return t&&Ja(!1),o}function eo(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?oo(e):null,i=Ya(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(Xa,Xa),t)return a.then(n=>{to(e,n,t)}).catch(t=>{xn(t,e,0)});e.asyncDep=a}else to(e,a,t)}else io(e,t)}function to(e,t,n){h(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:v(t)&&(e.setupState=rn(t)),io(e,n)}var no,ro;function io(e,t,n){let i=e.type;if(!e.render){if(!t&&no&&!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=no(t,s(s({isCustomElement:n,delimiters:a},r),o))}}e.render=i.render||r,ro&&ro(e)}{let t=Ya(e);qe();try{pi(e)}finally{Je(),t()}}}var ao={get(e,t){return N(e,`get`,``),e[t]}};function oo(e){return{attrs:new Proxy(e.attrs,ao),slots:e.slots,emit:e.emit,expose:t=>{e.exposed=t||{}}}}function so(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 co(e,t=!0){return h(e)?e.displayName||e.name:e.name||t&&e.__name}function lo(e){return h(e)&&`__vccOpts`in e}var uo=(e,t)=>pn(e,t,Qa);function fo(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 po=`3.5.40`,mo=void 0,ho=typeof window<`u`&&window.trustedTypes;if(ho)try{mo=ho.createPolicy(`vue`,{createHTML:e=>e})}catch{}var go=mo?e=>mo.createHTML(e):e=>e,_o=`http://www.w3.org/2000/svg`,vo=`http://www.w3.org/1998/Math/MathML`,yo=typeof document<`u`?document:null,bo=yo&&yo.createElement(`template`),xo={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`?yo.createElementNS(_o,e):t===`mathml`?yo.createElementNS(vo,e):n?yo.createElement(e,{is:n}):yo.createElement(e);return e===`select`&&r&&r.multiple!=null&&i.setAttribute(`multiple`,r.multiple),i},createText:e=>yo.createTextNode(e),createComment:e=>yo.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>yo.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{bo.innerHTML=go(r===`svg`?`${e}`:r===`mathml`?`${e}`:e);let i=bo.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]}},So=`transition`,Co=`animation`,wo=Symbol(`_vtc`),To={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},Eo=s({},mr,To),Do=(e=>(e.displayName=`Transition`,e.props=Eo,e))((e,{slots:t})=>fo(vr,Ao(e),t)),Oo=(e,t=[])=>{d(e)?e.forEach(e=>e(...t)):e&&e(...t)},ko=e=>e?d(e)?e.some(e=>e.length>1):e.length>1:!1;function Ao(e){let t={};for(let n in e)n in To||(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:c=`${n}-enter-to`,appearFromClass:l=a,appearActiveClass:u=o,appearToClass:d=c,leaveFromClass:f=`${n}-leave-from`,leaveActiveClass:p=`${n}-leave-active`,leaveToClass:m=`${n}-leave-to`}=e,h=jo(i),g=h&&h[0],_=h&&h[1],{onBeforeEnter:v,onEnter:y,onEnterCancelled:b,onLeave:x,onLeaveCancelled:S,onBeforeAppear:C=v,onAppear:w=y,onAppearCancelled:T=b}=t,ee=(e,t,n,r)=>{e._enterCancelled=r,No(e,t?d:c),No(e,t?u:o),n&&n()},te=(e,t)=>{e._isLeaving=!1,No(e,f),No(e,m),No(e,p),t&&t()},E=e=>(t,n)=>{let i=e?w:y,o=()=>ee(t,e,n);Oo(i,[t,o]),Po(()=>{No(t,e?l:a),$(t,e?d:c),ko(i)||Io(t,r,g,o)})};return s(t,{onBeforeEnter(e){Oo(v,[e]),$(e,a),$(e,o)},onBeforeAppear(e){Oo(C,[e]),$(e,l),$(e,u)},onEnter:E(!1),onAppear:E(!0),onLeave(e,t){e._isLeaving=!0;let n=()=>te(e,t);$(e,f),e._enterCancelled?($(e,p),Bo(e)):(Bo(e),$(e,p)),Po(()=>{e._isLeaving&&(No(e,f),$(e,m),ko(x)||Io(e,r,_,n))}),Oo(x,[e,n])},onEnterCancelled(e){ee(e,!1,void 0,!0),Oo(b,[e])},onAppearCancelled(e){ee(e,!0,void 0,!0),Oo(T,[e])},onLeaveCancelled(e){te(e),Oo(S,[e])}})}function jo(e){if(e==null)return null;if(v(e))return[Mo(e.enter),Mo(e.leave)];{let t=Mo(e);return[t,t]}}function Mo(e){return se(e)}function $(e,t){t.split(/\s+/).forEach(t=>t&&e.classList.add(t)),(e[wo]||(e[wo]=new Set)).add(t)}function No(e,t){t.split(/\s+/).forEach(t=>t&&e.classList.remove(t));let n=e[wo];n&&(n.delete(t),n.size||(e[wo]=void 0))}function Po(e){requestAnimationFrame(()=>{requestAnimationFrame(e)})}var Fo=0;function Io(e,t,n,r){let i=e._endId=++Fo,a=()=>{i===e._endId&&r()};if(n!=null)return setTimeout(a,n);let{type:o,timeout:s,propCount:c}=Lo(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(`${So}Delay`),a=r(`${So}Duration`),o=Ro(i,a),s=r(`${Co}Delay`),c=r(`${Co}Duration`),l=Ro(s,c),u=null,d=0,f=0;t===So?o>0&&(u=So,d=o,f=a.length):t===Co?l>0&&(u=Co,d=l,f=c.length):(d=Math.max(o,l),u=d>0?o>l?So:Co:null,f=u?u===So?a.length:c.length:0);let p=u===So&&/\b(?:transform|all)(?:,|$)/.test(r(`${So}Property`).toString());return{type:u,timeout:d,propCount:f,hasTransform:p}}function Ro(e,t){for(;e.lengthzo(t)+zo(e[n])))}function zo(e){return e===`auto`?0:Number(e.slice(0,-1).replace(`,`,`.`))*1e3}function Bo(e){return(e?e.ownerDocument:document).body.offsetHeight}function Vo(e,t,n){let r=e[wo];r&&(t=(t?[t,...r]:[...r]).join(` `)),t==null?e.removeAttribute(`class`):n?e.setAttribute(`class`,t):e.className=t}var Ho=Symbol(`_vod`),Uo=Symbol(`_vsh`),Wo={name:`show`,beforeMount(e,{value:t},{transition:n}){e[Ho]=e.style.display===`none`?``:e.style.display,n&&t?n.beforeEnter(e):Go(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),Go(e,!0),r.enter(e)):r.leave(e,()=>{Go(e,!1)}):Go(e,t))},beforeUnmount(e,{value:t}){Go(e,t)}};function Go(e,t){e.style.display=t?e[Ho]:`none`,e[Uo]=!t}var Ko=Symbol(``);function qo(e){let t=Ka();if(!t)return;let n=t.ut=(n=e(t.proxy))=>{Array.from(document.querySelectorAll(`[data-v-owner="${t.uid}"]`)).forEach(e=>Yo(e,n))},i=()=>{let r=e(t.proxy);t.ce?Yo(t.ce,r):Jo(t.subTree,r),n(r)};Vr(()=>{Mn(i)}),Br(()=>{Jn(i,r,{flush:`post`});let e=new MutationObserver(i);e.observe(t.subTree.el.parentNode,{childList:!0}),Wr(()=>e.disconnect())})}function Jo(e,t){if(e.shapeFlag&128){let n=e.suspense;e=n.activeBranch,n.pendingBranch&&!n.isHydrating&&n.effects.push(()=>{Jo(n.activeBranch,t)})}for(;e.component;)e=e.component.subTree;if(e.shapeFlag&1&&e.el)Yo(e.el,t);else if(e.type===q)e.children.forEach(e=>Jo(e,t));else if(e.type===ya){let{el:n,anchor:r}=e;for(;n&&(Yo(n,t),n!==r);)n=n.nextSibling}}function Yo(e,t){if(e.nodeType===1){let n=e.style,r=``;for(let e in t){let i=De(t[e]);n.setProperty(`--${e}`,i),r+=`--${e}: ${i};`}n[Ko]=r}}var Xo=/(?:^|;)\s*display\s*:/;function Zo(e,t,n){let r=e.style,i=g(n),a=!1;if(n&&!i){if(t)if(g(t))for(let e of t.split(`;`)){let t=e.slice(0,e.indexOf(`:`)).trim();n[t]??$o(r,t,``)}else for(let e in t)n[e]??$o(r,e,``);for(let i in n){i===`display`&&(a=!0);let o=n[i];o==null?$o(r,i,``):rs(e,i,!g(t)&&t?t[i]:void 0,o)||$o(r,i,o)}}else if(i){if(t!==n){let e=r[Ko];e&&(n+=`;`+e),r.cssText=n,a=Xo.test(n)}}else t&&e.removeAttribute(`style`);Ho in e&&(e[Ho]=a?r.display:``,e[Uo]&&(r.display=`none`))}var Qo=/\s*!important$/;function $o(e,t,n){if(d(n))n.forEach(n=>$o(e,t,n));else if(n??=``,t.startsWith(`--`))e.setProperty(t,n);else{let r=ns(e,t);Qo.test(n)?e.setProperty(D(r),n.replace(Qo,``),`important`):e[r]=n}}var es=[`Webkit`,`Moz`,`ms`],ts={};function ns(e,t){let n=ts[t];if(n)return n;let r=E(t);if(r!==`filter`&&r in e)return ts[t]=r;r=re(r);for(let n=0;nms||=(hs.then(()=>ms=0),Date.now());function _s(e,t){let n=e=>{if(!e._vts)e._vts=Date.now();else if(e._vts<=n.attached)return;let r=n.value;if(d(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,ys=(e,t,n,r,i,s)=>{let c=i===`svg`;t===`class`?Vo(e,r,c):t===`style`?Zo(e,n,r):a(t)?o(t)||us(e,t,n,r,s):(t[0]===`.`?(t=t.slice(1),!0):t[0]===`^`?(t=t.slice(1),!1):bs(e,t,r,c))?(os(e,t,r),!e.tagName.includes(`-`)&&(t===`value`||t===`checked`||t===`selected`)&&as(e,t,r,c,s,t!==`value`)):e._isVueCE&&(xs(e,t)||e._def.__asyncLoader&&(/[A-Z]/.test(t)||!g(r)))?os(e,E(t),r,s,t):(t===`true-value`?e._trueValue=r:t===`false-value`&&(e._falseValue=r),as(e,t,r,c))};function bs(e,t,n,r){if(r)return!!(t===`innerHTML`||t===`textContent`||t in e&&vs(t)&&h(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 vs(t)&&g(n)?!1:t in e}function xs(e,t){let n=e._def.props;if(!n)return!1;let r=E(t);return Array.isArray(n)?n.some(e=>E(e)===r):Object.keys(n).some(e=>E(e)===r)}var Ss=new WeakMap,Cs=new WeakMap,ws=Symbol(`_moveCb`),Ts=Symbol(`_enterCb`),Es=(e=>(delete e.props.mode,e))({name:`TransitionGroup`,props:s({},Eo,{tag:String,moveClass:String}),setup(e,{slots:t}){let n=Ka(),r=pr(),i,a;return Hr(()=>{if(!i.length)return;let t=e.moveClass||`${e.name||`v`}-move`;if(!js(i[0].el,n.vnode.el,t)){i=[];return}i.forEach(Ds),i.forEach(Os);let r=i.filter(ks);Bo(n.vnode.el),r.forEach(e=>{let n=e.el,r=n.style;$(n,t),r.transform=r.webkitTransform=r.transitionDuration=``;let i=n[ws]=e=>{e&&e.target!==n||(!e||e.propertyName.endsWith(`transform`))&&(n.removeEventListener(`transitionend`,i),n[ws]=null,No(n,t))};n.addEventListener(`transitionend`,i)}),i=[]}),()=>{let o=I(e),s=Ao(o),c=o.tag||q;if(i=[],a)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}=Lo(r);return a.removeChild(r),o}var Ms=e=>{let t=e.props[`onUpdate:modelValue`]||!1;return d(t)?e=>ae(t,e):t};function Ns(e){e.target.composing=!0}function Ps(e){let t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event(`input`)))}var Fs=Symbol(`_assign`);function Is(e,t,n){return t&&(e=e.trim()),n&&(e=oe(e)),e}var Ls={created(e,{modifiers:{lazy:t,trim:n,number:r}},i){e[Fs]=Ms(i);let a=r||i.props&&i.props.type===`number`;ss(e,t?`change`:`input`,t=>{t.target.composing||e[Fs](Is(e.value,n,a))}),(n||a)&&ss(e,`change`,()=>{e.value=Is(e.value,n,a)}),t||(ss(e,`compositionstart`,Ns),ss(e,`compositionend`,Ps),ss(e,`change`,Ps))},mounted(e,{value:t}){e.value=t??``},beforeUpdate(e,{value:t,oldValue:n,modifiers:{lazy:r,trim:i,number:a}},o){if(e[Fs]=Ms(o),e.composing)return;let s=(a||e.type===`number`)&&!/^0\d/.test(e.value)?oe(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)}},Rs={deep:!0,created(e,t,n){e[Fs]=Ms(n),ss(e,`change`,()=>{let t=e._modelValue,n=Hs(e),r=e.checked,i=e[Fs];if(d(t)){let e=Se(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(p(t)){let e=new Set(t);r?e.add(n):e.delete(n),i(e)}else i(Us(e,r))})},mounted:zs,beforeUpdate(e,t,n){e[Fs]=Ms(n),zs(e,t,n)}};function zs(e,{value:t,oldValue:n},r){e._modelValue=t;let i;if(d(t))i=Se(t,r.props.value)>-1;else if(p(t))i=t.has(r.props.value);else{if(t===n)return;i=xe(t,Us(e,!0))}e.checked!==i&&(e.checked=i)}var Bs={deep:!0,created(e,{value:t,modifiers:{number:n}},r){e._modelValue=t,ss(e,`change`,()=>{let t=Array.prototype.filter.call(e.options,e=>e.selected).map(e=>n?oe(Hs(e)):Hs(e));e[Fs](e.multiple?p(e._modelValue)?new Set(t):t:t[0]),e._assigning=!0,On(()=>{e._assigning=!1})}),e[Fs]=Ms(r)},mounted(e,{value:t}){Vs(e,t)},beforeUpdate(e,{value:t},n){e._modelValue=t,e[Fs]=Ms(n)},updated(e,{value:t}){e._assigning||Vs(e,t)}};function Vs(e,t){let n=e.multiple,r=d(t);if(!(n&&!r&&!p(t))){for(let i=0,a=e.options.length;iString(e)===String(o)):Se(t,o)>-1}else a.selected=t.has(o);else if(xe(Hs(a),t)){e.selectedIndex!==i&&(e.selectedIndex=i);return}}!n&&e.selectedIndex!==-1&&(e.selectedIndex=-1)}}function Hs(e){return`_value`in e?e._value:e.value}function Us(e,t){let n=t?`_trueValue`:`_falseValue`;return n in e?e[n]:t}var Ws=[`ctrl`,`shift`,`alt`,`meta`],Gs={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)=>Ws.some(n=>e[`${n}Key`]&&!t.includes(n))},Ks=(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=D(n.key);if(t.some(e=>e===r||qs[e]===r))return e(n)}))},Ys=s({patchProp:ys},xo),Xs;function Zs(){return Xs||=oa(Ys)}var Qs=((...e)=>{let t=Zs().createApp(...e),{mount:n}=t;return t.mount=e=>{let r=ec(e);if(!r)return;let i=t._component;!h(i)&&!i.render&&!i.template&&(i.template=r.innerHTML),r.nodeType===1&&(r.textContent=``);let a=n(r,!1,$s(r));return r instanceof Element&&(r.removeAttribute(`v-cloak`),r.setAttribute(`data-v-app`,``)),a},t});function $s(e){if(e instanceof SVGElement)return`svg`;if(typeof MathMLElement==`function`&&e instanceof MathMLElement)return`mathml`}function ec(e){return g(e)?document.querySelector(e):e}function tc(e){return typeof e==`object`||`displayName`in e||`props`in e||`__vccOpts`in e}function nc(e){return e.__esModule||e[Symbol.toStringTag]===`Module`||e.default&&tc(e.default)}var rc=Object.assign;function ic(e,t){let n={};for(let r in t){let i=t[r];n[r]=oc(i)?i.map(e):e(i)}return n}var ac=()=>{},oc=Array.isArray;function sc(e,t){let n={};for(let r in e)n[r]=r in t?t[r]:e[r];return n}var cc=Symbol(``);function lc(e,t){return rc(Error(),{type:e,[cc]:!0},t)}function uc(e,t){return e instanceof Error&&cc in e&&(t==null||!!(e.type&t))}var dc=Symbol(``),fc=Symbol(``),pc=Symbol(``),mc=Symbol(``),hc=Symbol(``);function gc(){return Un(pc)}function _c(e){return Un(mc)}var vc={"vuesax-linear:add":` @@ -378,4 +378,4 @@ function e(e){let t=Object.create(null);for(let n of e.split(`,`))t[n]=1;return -`},yc=[`aria-hidden`,`innerHTML`],bc=Tr({inheritAttrs:!1,__name:`BasicIcon`,props:{icon:{},color:{default:null},size:{default:24},strokeWidth:{default:1.5}},setup(e){qo(e=>({v14b957da:String(t.strokeWidth)}));let t=e,n=li(),r=lo(()=>{let e=vc[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=lo(()=>({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=lo(()=>n[`aria-hidden`]??!0);return(e,t)=>(xa(),Ea(`span`,Va({class:`basic-icon`},en(n),{style:i.value,"aria-hidden":a.value,innerHTML:r.value}),null,16,yc))}}),xc=(e,t)=>{let n=e.__vccOpts||e;for(let[e,r]of t)n[e]=r;return n},Sc=xc(bc,[[`__scopeId`,`data-v-94187925`]]);export{Xr as $,lo as A,Ga as B,Bs as C,he as Ct,Ks as D,Js as E,we as Et,ni as F,On as G,uo as H,La as I,Wr as J,Ur as K,Ia as L,Da as M,Ra as N,q as O,Ea as P,ri as Q,X as R,Rs as S,en as St,Wo as T,ue as Tt,Wn as U,Pa as V,Un as W,Hn as X,xa as Y,ti as Z,gc as _,Zt as _t,lc as a,on as at,Es as b,sn as bt,uc as c,Gt as ct,sc as d,je as dt,Qr as et,ac as f,Bt as ft,_c as g,Ut as gt,hc as h,Vt as ht,rc as i,Bn as it,Ma as j,lr as k,tc as l,R as lt,pc as m,Xt as mt,xc as n,qn as nt,oc as o,ke as ot,mc as p,Ht as pt,Br as q,ic as r,zn as rt,nc as s,Ae as st,Sc as t,Jn as tt,dc as u,Jt as ut,fc as v,I as vt,Ls as w,ge as wt,Qs as x,tn as xt,Eo as y,un as yt,Tr as z}; \ No newline at end of file +`},yc=[`aria-hidden`,`innerHTML`],bc=Tr({inheritAttrs:!1,__name:`BasicIcon`,props:{icon:{},color:{default:null},size:{default:24},strokeWidth:{default:1.5}},setup(e){qo(e=>({v14b957da:String(t.strokeWidth)}));let t=e,n=li(),r=uo(()=>{let e=vc[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=uo(()=>({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=uo(()=>n[`aria-hidden`]??!0);return(e,t)=>(xa(),Ea(`span`,Va({class:`basic-icon`},en(n),{style:i.value,"aria-hidden":a.value,innerHTML:r.value}),null,16,yc))}}),xc=(e,t)=>{let n=e.__vccOpts||e;for(let[e,r]of t)n[e]=r;return n},Sc=xc(bc,[[`__scopeId`,`data-v-94187925`]]);export{ri as $,uo as A,Ka as B,Bs as C,en as Ct,Ks as D,we as Dt,Js as E,ue as Et,ni as F,Va as G,fo as H,La as I,Br as J,On as K,Ia as L,Da as M,Ra as N,q as O,Ea as P,ti as Q,X as R,Rs as S,tn as St,Wo as T,ge as Tt,Wn as U,Pa as V,Un as W,xa as X,Wr as Y,Hn as Z,gc as _,Ut as _t,lc as a,Bn as at,Es as b,un as bt,uc as c,Ae as ct,sc as d,Jt as dt,Xr as et,ac as f,je as ft,_c as g,Vt as gt,hc as h,Xt as ht,rc as i,zn as it,Ma as j,lr as k,tc as l,Gt as lt,pc as m,Ht as mt,xc as n,Jn as nt,oc as o,on as ot,mc as p,Bt as pt,Ur as q,ic as r,qn as rt,nc as s,ke as st,Sc as t,Qr as tt,dc as u,R as ut,fc as v,Zt as vt,Ls as w,he as wt,Qs as x,sn as xt,Do as y,I as yt,Tr as z}; \ No newline at end of file diff --git a/dist/assets/CartView-7hxFuJin.css b/dist/assets/CartView-7hxFuJin.css deleted file mode 100644 index 4cc1faa..0000000 --- a/dist/assets/CartView-7hxFuJin.css +++ /dev/null @@ -1 +0,0 @@ -.cart-mobile-page[data-v-6370ec52]{background:var(--color-bg);width:100%;min-height:0;color:var(--color-text);flex-direction:column;flex:1;padding:12px 0 0;display:flex;overflow:hidden}.cart-mobile-page__nav[data-v-6370ec52]{grid-template-columns:40px 1fr 40px;align-items:center;margin-bottom:12px;display:grid}.cart-mobile-page__hint[data-v-6370ec52]{color:var(--color-text-muted);margin:0 0 10px;font-size:.75rem;line-height:1.6}.cart-mobile-page__title[data-v-6370ec52]{text-align:center;color:var(--color-text);margin:0;font-size:1.0625rem;font-weight:700}.nav-btn[data-v-6370ec52]{width:40px;height:40px;color:var(--color-text);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;display:flex}.nav-btn--ghost[data-v-6370ec52]{visibility:hidden}.nav-btn__flip[data-v-6370ec52]{transform:scaleX(-1)}.cart-mobile-page__body[data-v-6370ec52]{flex-direction:column;flex:1;min-height:0;display:flex}.cart-mobile-page__company[data-v-6370ec52]{color:var(--color-text-muted);margin:0 0 16px;font-size:.875rem}.cart-mobile-page__scroll[data-v-6370ec52]{flex:1;min-height:0;overflow-y:auto}.cart-mobile-table[data-v-6370ec52]{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-elevated);overflow:hidden}.cart-mobile-table__head[data-v-6370ec52],.cart-mobile-table__row[data-v-6370ec52]{grid-template-columns:1fr 88px 52px;align-items:center;gap:8px;padding:10px 12px;display:grid}.cart-mobile-table__head[data-v-6370ec52]{background:var(--color-summary-bg);color:var(--color-text-muted);font-size:.75rem;font-weight:600}.cart-mobile-table__row[data-v-6370ec52]{border-top:1px solid var(--color-border);color:var(--color-text)}.col-product strong[data-v-6370ec52]{font-size:.875rem;display:block}.col-product span[data-v-6370ec52]{color:var(--color-text-muted);font-size:.75rem;display:block}.col-product__company[data-v-6370ec52]{margin-top:2px;font-weight:600;color:var(--color-primary)!important}.col-meterage[data-v-6370ec52]{text-align:center;font-weight:700}.col-delete[data-v-6370ec52]{justify-content:center;display:flex}.col-delete button[data-v-6370ec52]{cursor:pointer;color:var(--color-text-muted);background:0 0;border:none}.cart-mobile-page__footer[data-v-6370ec52]{padding:12px 0 calc(12px + env(safe-area-inset-bottom,0));border-top:1px solid var(--color-border);background:var(--color-bg);flex-shrink:0;margin:0}.cart-mobile-summary[data-v-6370ec52]{background:var(--color-elevated);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);box-shadow:var(--shadow-sm);margin-bottom:12px;padding:14px 16px}.cart-mobile-summary__row[data-v-6370ec52]{justify-content:space-between;align-items:center;gap:12px;padding:8px 0;font-size:.875rem;display:flex}.cart-mobile-summary__row--sub[data-v-6370ec52]{color:var(--color-text-muted);font-size:.8125rem}.cart-mobile-summary__cap[data-v-6370ec52]{color:var(--color-text-muted);font-weight:500}.cart-mobile-summary__row[data-v-6370ec52]:not(:last-child){border-bottom:1px solid var(--color-border)}.cart-desktop-page[data-v-faff3d7e]{width:100%;padding-bottom:24px}.cart-desktop-page__head[data-v-faff3d7e]{margin-bottom:20px}.cart-desktop-page__title[data-v-faff3d7e]{color:var(--color-text);margin:0 0 6px;font-size:1.375rem;font-weight:700}.cart-desktop-page__subtitle[data-v-faff3d7e]{color:var(--color-text-muted);margin:0;font-size:.875rem}.cart-desktop-page__layout[data-v-faff3d7e]{direction:ltr;grid-template-columns:minmax(0,1fr);align-items:start;gap:20px;margin-bottom:24px;display:grid}@media (width>=1100px){.cart-desktop-page__layout[data-v-faff3d7e]{grid-template-columns:minmax(0,1fr) 300px}}.cart-desktop-page__main[data-v-faff3d7e],.cart-desktop-page__sidebar[data-v-faff3d7e]{direction:rtl}.cart-desktop-page__sidebar[data-v-faff3d7e]{flex-direction:column;gap:16px;display:flex}.cart-empty-card[data-v-faff3d7e],.cart-items-card[data-v-faff3d7e]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card)}.cart-empty-card[data-v-faff3d7e]{text-align:center;flex-direction:column;align-items:center;min-height:360px;padding:48px 32px 40px;display:flex}.cart-empty-card__visual[data-v-faff3d7e]{width:140px;height:100px;margin-bottom:24px;position:relative}.cart-empty-card__circle[data-v-faff3d7e]{background:var(--color-primary-soft);color:var(--color-primary);border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;inset:12px 24px}.cart-empty-card__spark[data-v-faff3d7e]{color:#93c5fd;font-size:1.125rem;font-weight:700;line-height:1;position:absolute}.cart-empty-card__spark--1[data-v-faff3d7e]{top:8px;right:18px}.cart-empty-card__spark--2[data-v-faff3d7e]{font-size:1.5rem;top:28px;left:8px}.cart-empty-card__spark--3[data-v-faff3d7e]{font-size:1.25rem;bottom:16px;right:10px}.cart-empty-card__heading[data-v-faff3d7e]{color:var(--color-text);margin:0 0 10px;font-size:1.0625rem;font-weight:700}.cart-empty-card__text[data-v-faff3d7e]{max-width:380px;color:var(--color-text-muted);margin:0 0 28px;font-size:.8125rem;line-height:1.7}.cart-empty-card__actions[data-v-faff3d7e]{flex-direction:column;align-items:center;gap:12px;display:flex}.cart-btn[data-v-faff3d7e]{border-radius:var(--radius-md);cursor:pointer;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:0 22px;font-family:inherit;font-size:.875rem;font-weight:600;transition:opacity .15s,background .15s;display:inline-flex}.cart-btn--primary[data-v-faff3d7e]{background:var(--color-primary);color:var(--color-surface);border:none}.cart-btn--primary[data-v-faff3d7e]:hover{background:var(--color-primary-dark)}.cart-btn--outline[data-v-faff3d7e]{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-primary)}.cart-btn--outline[data-v-faff3d7e]:hover{background:var(--color-primary-soft)}.cart-items-card__scroll[data-v-faff3d7e]{overflow-x:auto}.cart-items-table[data-v-faff3d7e]{border-collapse:collapse;width:100%;min-width:520px;font-size:.875rem}.cart-items-table th[data-v-faff3d7e]{text-align:start;color:var(--color-text-muted);background:var(--color-bg);border-bottom:1px solid var(--color-border);padding:14px 18px;font-size:.8125rem;font-weight:600}.cart-items-table td[data-v-faff3d7e]{border-bottom:1px solid var(--color-border);color:var(--color-text);vertical-align:middle;padding:16px 18px}.cart-items-table tr:last-child td[data-v-faff3d7e]{border-bottom:none}.cart-items-table__name[data-v-faff3d7e]{font-weight:600}.cart-items-table__delete[data-v-faff3d7e]{cursor:pointer;color:var(--color-text-muted);background:0 0;border:none;padding:4px;display:inline-flex}.cart-items-table__delete[data-v-faff3d7e]:hover{color:var(--color-danger)}.cart-summary-card[data-v-faff3d7e],.cart-guide-card[data-v-faff3d7e]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:18px}.cart-summary-card__title[data-v-faff3d7e],.cart-guide-card__title[data-v-faff3d7e]{color:var(--color-text);align-items:center;gap:8px;margin:0 0 14px;font-size:.9375rem;font-weight:700;display:flex}.cart-summary-card__title-icon[data-v-faff3d7e],.cart-guide-card__title-icon[data-v-faff3d7e]{color:var(--color-primary);justify-content:center;align-items:center;display:flex}.cart-summary-card__rows[data-v-faff3d7e]{flex-direction:column;gap:4px;margin-bottom:16px;display:flex}.cart-summary-card__row[data-v-faff3d7e]{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:12px;padding:10px 0;font-size:.8125rem;display:flex}.cart-summary-card__row--sub[data-v-faff3d7e]{color:var(--color-text-muted);padding-block:6px;font-size:.8125rem}.cart-summary-card__cap[data-v-faff3d7e]{color:var(--color-text-muted);font-weight:500}.cart-summary-card__row[data-v-faff3d7e]:last-child{border-bottom:none}.cart-summary-card__row-label[data-v-faff3d7e]{color:var(--color-text-muted);align-items:center;gap:8px;display:inline-flex}.cart-summary-card__row strong[data-v-faff3d7e]{font-variant-numeric:tabular-nums;color:var(--color-text)}.cart-summary-card__hint-value[data-v-faff3d7e]{color:var(--color-text-muted);font-size:.75rem}.cart-summary-card__note[data-v-faff3d7e]{color:var(--color-text-muted);margin:10px 0 0;font-size:.75rem;line-height:1.6}.cart-summary-card__cta[data-v-faff3d7e]{border-radius:var(--radius-md);background:var(--color-primary);width:100%;min-height:44px;color:var(--color-surface);cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;font-family:inherit;font-size:.875rem;font-weight:600;transition:background .15s,color .15s,border-color .15s;display:flex}.cart-summary-card__cta[data-v-faff3d7e]:hover:not(:disabled){background:var(--color-primary-dark)}.cart-summary-card__cta[data-v-faff3d7e]:disabled{background:var(--color-elevated);border-color:var(--color-border);color:var(--color-text-muted);cursor:not-allowed}.cart-guide-card__text[data-v-faff3d7e]{color:var(--color-text-muted);margin:0;font-size:.75rem;line-height:1.75}.cart-quick-nav[data-v-faff3d7e]{direction:ltr;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:20px;display:grid}.cart-quick-nav__item[data-v-faff3d7e]{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-card);cursor:pointer;text-align:right;direction:rtl;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:16px 18px;font-family:inherit;transition:border-color .15s,box-shadow .15s;display:grid}.cart-quick-nav__item[data-v-faff3d7e]:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md)}.cart-quick-nav__icon[data-v-faff3d7e]{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;display:flex}.cart-quick-nav__icon--blue[data-v-faff3d7e]{background:var(--color-primary-soft);color:var(--color-primary)}.cart-quick-nav__icon--green[data-v-faff3d7e]{background:var(--color-success-soft);color:var(--color-success)}.cart-quick-nav__body[data-v-faff3d7e]{flex-direction:column;gap:4px;min-width:0;display:flex}.cart-quick-nav__title[data-v-faff3d7e]{color:var(--color-text);font-size:.875rem;font-weight:700}.cart-quick-nav__desc[data-v-faff3d7e]{color:var(--color-text-muted);font-size:.6875rem;line-height:1.4}.cart-quick-nav__chevron[data-v-faff3d7e]{color:var(--color-text-muted);flex-shrink:0}.cart-desktop-page__footer[data-v-faff3d7e]{text-align:center;color:var(--color-text-muted);margin:0;font-size:.75rem}.cart-view[data-v-da82aef3]{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.cart-view__error[data-v-da82aef3]{margin:0 var(--page-padding)}.dialog h3[data-v-da82aef3]{margin:0 0 12px}@media (width>=768px){.cart-view[data-v-da82aef3]{flex:1 0 auto;min-height:auto;overflow:visible}.dialog-actions[data-v-da82aef3]{flex-direction:row;justify-content:flex-end}} diff --git a/dist/assets/CartView-C652iQUF.css b/dist/assets/CartView-C652iQUF.css new file mode 100644 index 0000000..e75dd46 --- /dev/null +++ b/dist/assets/CartView-C652iQUF.css @@ -0,0 +1 @@ +.cart-mobile-page[data-v-346cdc9a]{background:var(--color-bg);width:100%;min-height:0;color:var(--color-text);flex-direction:column;flex:1;padding:12px 0 0;display:flex;overflow:hidden}.cart-mobile-page__nav[data-v-346cdc9a]{grid-template-columns:40px 1fr 40px;align-items:center;margin-bottom:12px;display:grid}.cart-mobile-page__hint[data-v-346cdc9a]{color:var(--color-text-muted);margin:0 0 10px;font-size:.75rem;line-height:1.6}.cart-mobile-page__title[data-v-346cdc9a]{text-align:center;color:var(--color-text);margin:0;font-size:1.0625rem;font-weight:700}.nav-btn[data-v-346cdc9a]{width:40px;height:40px;color:var(--color-text);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;display:flex}.nav-btn--ghost[data-v-346cdc9a]{visibility:hidden}.nav-btn__flip[data-v-346cdc9a]{transform:scaleX(-1)}.cart-mobile-page__body[data-v-346cdc9a]{flex-direction:column;flex:1;min-height:0;display:flex}.cart-mobile-page__meta[data-v-346cdc9a]{color:var(--color-text-muted);margin:0 0 16px;font-size:.875rem}.cart-mobile-page__scroll[data-v-346cdc9a]{flex:1;min-height:0;overflow-y:auto}.cart-mobile-table[data-v-346cdc9a]{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-elevated);overflow:hidden}.cart-mobile-table__head[data-v-346cdc9a],.cart-mobile-table__row[data-v-346cdc9a]{grid-template-columns:1fr 88px 52px;align-items:center;gap:8px;padding:10px 12px;display:grid}.cart-mobile-table__head[data-v-346cdc9a]{background:var(--color-summary-bg);color:var(--color-text-muted);font-size:.75rem;font-weight:600}.cart-mobile-table__row[data-v-346cdc9a]{border-top:1px solid var(--color-border);color:var(--color-text)}.col-product strong[data-v-346cdc9a]{font-size:.875rem;display:block}.col-product span[data-v-346cdc9a]{color:var(--color-text-muted);font-size:.75rem;display:block}.col-product__company[data-v-346cdc9a]{margin-top:2px;font-weight:600;color:var(--color-primary)!important}.col-meterage[data-v-346cdc9a]{text-align:center;font-weight:700}.col-delete[data-v-346cdc9a]{justify-content:center;display:flex}.col-delete button[data-v-346cdc9a]{cursor:pointer;color:var(--color-text-muted);background:0 0;border:none}.cart-mobile-page__footer[data-v-346cdc9a]{padding:12px 0 calc(12px + env(safe-area-inset-bottom,0));border-top:1px solid var(--color-border);background:var(--color-bg);flex-shrink:0;margin:0}.cart-mobile-summary[data-v-346cdc9a]{background:var(--color-elevated);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);box-shadow:var(--shadow-sm);margin-bottom:12px;padding:14px 16px}.cart-mobile-summary__row[data-v-346cdc9a]{justify-content:space-between;align-items:center;gap:12px;padding:8px 0;font-size:.875rem;display:flex}.cart-mobile-summary__row--sub[data-v-346cdc9a]{color:var(--color-text-muted);font-size:.8125rem}.cart-mobile-summary__cap[data-v-346cdc9a]{color:var(--color-text-muted);font-weight:500}.cart-mobile-summary__row[data-v-346cdc9a]:not(:last-child){border-bottom:1px solid var(--color-border)}.cart-desktop-page[data-v-e944f7f3]{width:100%;padding-bottom:24px}.cart-desktop-page__head[data-v-e944f7f3]{margin-bottom:20px}.cart-desktop-page__title[data-v-e944f7f3]{color:var(--color-text);margin:0 0 6px;font-size:1.375rem;font-weight:700}.cart-desktop-page__subtitle[data-v-e944f7f3]{color:var(--color-text-muted);margin:0;font-size:.875rem}.cart-desktop-page__layout[data-v-e944f7f3]{direction:ltr;grid-template-columns:minmax(0,1fr);align-items:start;gap:20px;margin-bottom:24px;display:grid}@media (width>=1100px){.cart-desktop-page__layout[data-v-e944f7f3]{grid-template-columns:minmax(0,1fr) 300px}}.cart-desktop-page__main[data-v-e944f7f3],.cart-desktop-page__sidebar[data-v-e944f7f3]{direction:rtl}.cart-desktop-page__sidebar[data-v-e944f7f3]{flex-direction:column;gap:16px;display:flex}.cart-empty-card[data-v-e944f7f3],.cart-items-card[data-v-e944f7f3]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card)}.cart-empty-card[data-v-e944f7f3]{text-align:center;flex-direction:column;align-items:center;min-height:360px;padding:48px 32px 40px;display:flex}.cart-empty-card__visual[data-v-e944f7f3]{width:140px;height:100px;margin-bottom:24px;position:relative}.cart-empty-card__circle[data-v-e944f7f3]{background:var(--color-primary-soft);color:var(--color-primary);border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;inset:12px 24px}.cart-empty-card__spark[data-v-e944f7f3]{color:#93c5fd;font-size:1.125rem;font-weight:700;line-height:1;position:absolute}.cart-empty-card__spark--1[data-v-e944f7f3]{top:8px;right:18px}.cart-empty-card__spark--2[data-v-e944f7f3]{font-size:1.5rem;top:28px;left:8px}.cart-empty-card__spark--3[data-v-e944f7f3]{font-size:1.25rem;bottom:16px;right:10px}.cart-empty-card__heading[data-v-e944f7f3]{color:var(--color-text);margin:0 0 10px;font-size:1.0625rem;font-weight:700}.cart-empty-card__text[data-v-e944f7f3]{max-width:380px;color:var(--color-text-muted);margin:0 0 28px;font-size:.8125rem;line-height:1.7}.cart-empty-card__actions[data-v-e944f7f3]{flex-direction:column;align-items:center;gap:12px;display:flex}.cart-btn[data-v-e944f7f3]{border-radius:var(--radius-md);cursor:pointer;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:0 22px;font-family:inherit;font-size:.875rem;font-weight:600;transition:opacity .15s,background .15s;display:inline-flex}.cart-btn--primary[data-v-e944f7f3]{background:var(--color-primary);color:var(--color-surface);border:none}.cart-btn--primary[data-v-e944f7f3]:hover{background:var(--color-primary-dark)}.cart-btn--outline[data-v-e944f7f3]{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-primary)}.cart-btn--outline[data-v-e944f7f3]:hover{background:var(--color-primary-soft)}.cart-items-card__scroll[data-v-e944f7f3]{overflow-x:auto}.cart-items-table[data-v-e944f7f3]{border-collapse:collapse;width:100%;min-width:520px;font-size:.875rem}.cart-items-table th[data-v-e944f7f3]{text-align:start;color:var(--color-text-muted);background:var(--color-bg);border-bottom:1px solid var(--color-border);padding:14px 18px;font-size:.8125rem;font-weight:600}.cart-items-table td[data-v-e944f7f3]{border-bottom:1px solid var(--color-border);color:var(--color-text);vertical-align:middle;padding:16px 18px}.cart-items-table tr:last-child td[data-v-e944f7f3]{border-bottom:none}.cart-items-table__name[data-v-e944f7f3]{font-weight:600}.cart-items-table__delete[data-v-e944f7f3]{cursor:pointer;color:var(--color-text-muted);background:0 0;border:none;padding:4px;display:inline-flex}.cart-items-table__delete[data-v-e944f7f3]:hover{color:var(--color-danger)}.cart-summary-card[data-v-e944f7f3],.cart-guide-card[data-v-e944f7f3]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:18px}.cart-summary-card__title[data-v-e944f7f3],.cart-guide-card__title[data-v-e944f7f3]{color:var(--color-text);align-items:center;gap:8px;margin:0 0 14px;font-size:.9375rem;font-weight:700;display:flex}.cart-summary-card__title-icon[data-v-e944f7f3],.cart-guide-card__title-icon[data-v-e944f7f3]{color:var(--color-primary);justify-content:center;align-items:center;display:flex}.cart-summary-card__rows[data-v-e944f7f3]{flex-direction:column;gap:4px;margin-bottom:16px;display:flex}.cart-summary-card__row[data-v-e944f7f3]{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:12px;padding:10px 0;font-size:.8125rem;display:flex}.cart-summary-card__row--sub[data-v-e944f7f3]{color:var(--color-text-muted);padding-block:6px;font-size:.8125rem}.cart-summary-card__cap[data-v-e944f7f3]{color:var(--color-text-muted);font-weight:500}.cart-summary-card__row[data-v-e944f7f3]:last-child{border-bottom:none}.cart-summary-card__row-label[data-v-e944f7f3]{color:var(--color-text-muted);align-items:center;gap:8px;display:inline-flex}.cart-summary-card__row strong[data-v-e944f7f3]{font-variant-numeric:tabular-nums;color:var(--color-text)}.cart-summary-card__hint-value[data-v-e944f7f3]{color:var(--color-text-muted);font-size:.75rem}.cart-summary-card__note[data-v-e944f7f3]{color:var(--color-text-muted);margin:10px 0 0;font-size:.75rem;line-height:1.6}.cart-summary-card__cta[data-v-e944f7f3]{border-radius:var(--radius-md);background:var(--color-primary);width:100%;min-height:44px;color:var(--color-surface);cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;font-family:inherit;font-size:.875rem;font-weight:600;transition:background .15s,color .15s,border-color .15s;display:flex}.cart-summary-card__cta[data-v-e944f7f3]:hover:not(:disabled){background:var(--color-primary-dark)}.cart-summary-card__cta[data-v-e944f7f3]:disabled{background:var(--color-elevated);border-color:var(--color-border);color:var(--color-text-muted);cursor:not-allowed}.cart-guide-card__text[data-v-e944f7f3]{color:var(--color-text-muted);margin:0;font-size:.75rem;line-height:1.75}.cart-quick-nav[data-v-e944f7f3]{direction:ltr;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:20px;display:grid}.cart-quick-nav__item[data-v-e944f7f3]{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-card);cursor:pointer;text-align:right;direction:rtl;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:16px 18px;font-family:inherit;transition:border-color .15s,box-shadow .15s;display:grid}.cart-quick-nav__item[data-v-e944f7f3]:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md)}.cart-quick-nav__icon[data-v-e944f7f3]{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;display:flex}.cart-quick-nav__icon--blue[data-v-e944f7f3]{background:var(--color-primary-soft);color:var(--color-primary)}.cart-quick-nav__icon--green[data-v-e944f7f3]{background:var(--color-success-soft);color:var(--color-success)}.cart-quick-nav__body[data-v-e944f7f3]{flex-direction:column;gap:4px;min-width:0;display:flex}.cart-quick-nav__title[data-v-e944f7f3]{color:var(--color-text);font-size:.875rem;font-weight:700}.cart-quick-nav__desc[data-v-e944f7f3]{color:var(--color-text-muted);font-size:.6875rem;line-height:1.4}.cart-quick-nav__chevron[data-v-e944f7f3]{color:var(--color-text-muted);flex-shrink:0}.cart-desktop-page__footer[data-v-e944f7f3]{text-align:center;color:var(--color-text-muted);margin:0;font-size:.75rem}.cart-view[data-v-2f81af33]{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.cart-view__error[data-v-2f81af33]{margin:0 var(--page-padding)}.dialog h3[data-v-2f81af33]{margin:0 0 12px}@media (width>=768px){.cart-view[data-v-2f81af33]{flex:1 0 auto;min-height:auto;overflow:visible}.dialog-actions[data-v-2f81af33]{flex-direction:row;justify-content:flex-end}} diff --git a/dist/assets/CartView-DRuvPkVq.js b/dist/assets/CartView-DRuvPkVq.js deleted file mode 100644 index b3e30c9..0000000 --- a/dist/assets/CartView-DRuvPkVq.js +++ /dev/null @@ -1 +0,0 @@ -import{A as e,Ct as t,D as n,Et as r,L as i,M as a,N as o,O as s,P as c,R as l,St as u,Y as d,Z as f,_ as p,et as m,j as h,mt as g,n as _,q as v,rt as y,t as b,z as x}from"./BasicIcon-C6boaehV.js";import{a as S,o as C}from"./format-BHJptHdF.js";import{C as w,S as T,T as ee,d as E,n as D,o as O,t as k}from"./index-fdhs4HNc.js";import{t as A}from"./EmptyState-C_QQeA_h.js";import{t as j}from"./IconChevronBack-DORV2H0q.js";import{t as te}from"./FormErrorBanner-CjdBfIQT.js";import{t as M}from"./IconDiamond-Bgv1zgqc.js";import{t as N}from"./CheckoutStepper-CqUviuW7.js";import{t as P}from"./IconClipboardEmpty-5Av_Gh0W.js";import{t as F}from"./IconLayoutGrid-E-Q8Z5rF.js";function I(){let t=p(),n=ee(),r=E(),i=g(!1),a=g(!1),o=g(``),s=e(()=>n.activeCart?.items??[]),c=e(()=>s.value.length===0),l=e(()=>n.companyNamesLabel||n.activeCart?.companyName||``),u=e(()=>n.companySummaries);async function d(e){let t=s.value.find(t=>t.id===e);await k({title:`حذف از سبد`,message:t?`آیا از حذف «${t.productName}» از سبد خرید مطمئن هستید؟`:`آیا از حذف این آیتم از سبد خرید مطمئن هستید؟`,confirmLabel:`حذف`,cancelLabel:`انصراف`,tone:`danger`})&&n.removeItem(e)}async function f(){if(!(!n.activeCart||s.value.length===0||a.value)){a.value=!0,o.value=``;try{if(await n.hydrate(),!n.activeCart?.items.length){o.value=`سبد خرید خالی است یا با سرور همگام نشد.`;return}let e=await r.submitOrder(n.activeCart);await n.hydrate(),t.replace(`/orders/${e.id}/success`)}catch(e){o.value=e instanceof Error?e.message:`ثبت سفارش ناموفق بود.`,await n.hydrate()}finally{a.value=!1}}}function m(){if(s.value.length!==0){if(n.isFull){i.value=!0;return}f()}}function h(){i.value=!1,f()}async function _(){await n.createNewCartForSameCompany(),i.value=!1,t.push(`/categories`)}return v(()=>{n.ensureActiveCartForCartPage()}),{cartStore:n,items:s,isEmpty:c,companyName:l,companySummaries:u,showFullDialog:i,submitting:a,submitError:o,removeItem:d,proceedToCheckout:m,proceedAnyway:h,createNewInvoice:_}}var L=x({__name:`IconTrash`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(d(),a(b,{icon:`vuesax-linear:trash`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),R={class:`cart-mobile-page`},z={class:`cart-mobile-page__nav`},B={type:`button`,class:`nav-btn nav-btn--ghost`,"aria-hidden":`true`,tabindex:`-1`},V={key:0,class:`cart-mobile-page__body`},H={class:`cart-mobile-page__company`},U={class:`cart-mobile-page__scroll`},W={class:`cart-mobile-table`},G={class:`col-product`},K={key:0,class:`col-product__company`},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=_(x({__name:`MobileCartPage`,props:{items:{},companyName:{},companySummaries:{},totalMeterage:{},maxMeterage:{},remainingCapacity:{},isEmpty:{type:Boolean},submitting:{type:Boolean}},emits:[`back`,`remove`,`checkout`,`selectCompany`],setup(e,{emit:t}){let n=t;return(t,p)=>(d(),c(`div`,R,[h(`header`,z,[h(`button`,{type:`button`,class:`nav-btn`,"aria-label":`بازگشت`,onClick:p[0]||=e=>n(`back`)},[l(j,{size:20})]),p[3]||=h(`h1`,{class:`cart-mobile-page__title`},`سبد خرید`,-1),h(`button`,B,[l(j,{size:18,class:`nav-btn__flip`})])]),e.isEmpty?(d(),a(A,{key:1,variant:`cart`,message:`از دسته‌بندی یا کالیته محصول را انتخاب کنید`},{default:y(()=>[l(D,{onClick:p[2]||=e=>n(`selectCompany`)},{default:y(()=>[...p[10]||=[i(`مشاهده محصولات`,-1)]]),_:1})]),_:1})):(d(),c(`div`,V,[h(`p`,H,r(e.companyName?`شرکت‌ها: ${e.companyName}`:`سبد خرید مشترک`),1),h(`div`,U,[h(`div`,W,[p[4]||=h(`div`,{class:`cart-mobile-table__head`},[h(`span`,null,`محصول`),h(`span`,null,`متراژ (متر)`),h(`span`,null,`حذف`)],-1),(d(!0),c(s,null,f(e.items,e=>(d(),c(`div`,{key:e.id,class:`cart-mobile-table__row`},[h(`div`,G,[h(`strong`,null,r(e.productName),1),h(`span`,null,`کد: `+r(e.productCode),1),e.companyName?(d(),c(`span`,K,r(e.companyName),1)):o(``,!0)]),h(`div`,q,r(u(C)(e.meterage)),1),h(`div`,J,[h(`button`,{type:`button`,"aria-label":`حذف`,onClick:t=>n(`remove`,e.id)},[l(L,{size:20})],8,Y)])]))),128))])]),h(`div`,X,[h(`div`,Z,[h(`div`,Q,[p[5]||=h(`span`,null,`جمع متراژ کل`,-1),h(`strong`,null,r(u(S)(e.totalMeterage)),1)]),e.companySummaries?.length?(d(!0),c(s,{key:0},f(e.companySummaries,e=>(d(),c(`div`,{key:e.companyId,class:`cart-mobile-summary__row cart-mobile-summary__row--sub`},[h(`span`,null,r(e.companyName),1),h(`strong`,null,[i(r(u(S)(e.meterage))+` `,1),h(`span`,ne,`/ `+r(u(S)(e.maxMeterage)),1)])]))),128)):(d(),c(`div`,re,[p[6]||=h(`span`,null,`حداکثر مجاز`,-1),h(`strong`,null,r(u(S)(e.maxMeterage)),1)])),h(`div`,ie,[p[7]||=h(`span`,null,`باقی مانده`,-1),h(`strong`,null,r(u(S)(e.remainingCapacity)),1)])]),p[9]||=h(`p`,{class:`cart-mobile-page__hint`},` پس از ثبت، همه اقلام در یک پیش‌سفارش واحد قرار می‌گیرند و مدیریت قیمت‌گذاری می‌کند. `,-1),l(D,{block:``,loading:e.submitting,onClick:p[1]||=e=>n(`checkout`)},{default:y(()=>[...p[8]||=[i(`ثبت پیش‌سفارش`,-1)]]),_:1},8,[`loading`])])]))]))}}),[[`__scopeId`,`data-v-6370ec52`]]),oe=x({__name:`IconLightbulb`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(d(),a(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={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=_(x({__name:`DesktopCartPage`,props:{items:{},companyName:{},companySummaries:{},totalMeterage:{},maxMeterage:{},remainingCapacity:{},isEmpty:{type:Boolean},submitting:{type:Boolean}},emits:[`remove`,`checkout`,`selectCompany`,`back`],setup(e,{emit:n}){let g=n,_=p(),v=[{title:`کالیته‌ها`,desc:`مرور کالیته و طرح‌ها`,icon:F,tone:`blue`,action:()=>_.push(`/catalogs`)},{title:`دسته‌بندی`,desc:`مشاهده محصولات بر اساس کاربرد`,icon:M,tone:`green`,action:()=>_.push(`/categories`)},{title:`سفارش‌های من`,desc:`پیگیری وضعیت سفارش‌ها`,icon:T,tone:`blue`,action:()=>_.push(`/orders`)}];return(n,p)=>(d(),c(`div`,se,[l(N,{"current-step":1}),h(`header`,ce,[p[3]||=h(`h1`,{class:`cart-desktop-page__title`},`سبد خرید`,-1),h(`p`,le,r(e.companyName?`شرکت‌ها: ${e.companyName}`:`سبد خرید مشترک`),1)]),h(`div`,ue,[h(`section`,de,[e.isEmpty?(d(),c(`div`,fe,[h(`div`,pe,[p[4]||=h(`span`,{class:`cart-empty-card__spark cart-empty-card__spark--1`},`+`,-1),p[5]||=h(`span`,{class:`cart-empty-card__spark cart-empty-card__spark--2`},`·`,-1),h(`span`,me,[l(w,{size:40})]),p[6]||=h(`span`,{class:`cart-empty-card__spark cart-empty-card__spark--3`},`·`,-1)]),p[9]||=h(`h2`,{class:`cart-empty-card__heading`},`سبد خرید شما خالی است`,-1),p[10]||=h(`p`,{class:`cart-empty-card__text`},` از دسته‌بندی یا کالیته محصول را انتخاب کنید، جزئیات را ببینید و به سبد اضافه کنید. `,-1),h(`div`,he,[h(`button`,{type:`button`,class:`cart-btn cart-btn--primary`,onClick:p[0]||=e=>g(`selectCompany`)},[l(F,{size:18}),p[7]||=i(` مشاهده کالیته‌ها `,-1)]),h(`button`,{type:`button`,class:`cart-btn cart-btn--outline`,onClick:p[1]||=e=>u(_).push(`/categories`)},[l(M,{size:16}),p[8]||=i(` دسته‌بندی محصولات `,-1)])])])):(d(),c(`div`,ge,[h(`div`,_e,[h(`table`,ve,[p[11]||=h(`thead`,null,[h(`tr`,null,[h(`th`,{scope:`col`},`محصول`),h(`th`,{scope:`col`},`شرکت`),h(`th`,{scope:`col`},`کد`),h(`th`,{scope:`col`},`متراژ (متر)`),h(`th`,{scope:`col`},`حذف`)])],-1),h(`tbody`,null,[(d(!0),c(s,null,f(e.items,e=>(d(),c(`tr`,{key:e.id},[h(`td`,null,[h(`strong`,ye,r(e.productName),1)]),h(`td`,null,r(e.companyName||`—`),1),h(`td`,null,r(e.productCode),1),h(`td`,null,r(u(C)(e.meterage)),1),h(`td`,null,[h(`button`,{type:`button`,class:`cart-items-table__delete`,"aria-label":`حذف`,onClick:t=>g(`remove`,e.id)},[l(L,{size:18})],8,be)])]))),128))])])])]))]),h(`aside`,xe,[h(`div`,Se,[h(`h2`,Ce,[h(`span`,we,[l(P,{size:22})]),p[12]||=i(` خلاصه سفارش `,-1)]),h(`div`,Te,[h(`div`,Ee,[h(`span`,De,[l(F,{size:16}),p[13]||=i(` تعداد آیتم‌ها `,-1)]),h(`strong`,null,r(u(C)(e.items.length)),1)]),h(`div`,Oe,[h(`span`,ke,[l(M,{size:16}),p[14]||=i(` متراژ کل `,-1)]),h(`strong`,null,r(u(S)(e.totalMeterage)),1)]),(d(!0),c(s,null,f(e.companySummaries??[],e=>(d(),c(`div`,{key:e.companyId,class:`cart-summary-card__row cart-summary-card__row--sub`},[h(`span`,Ae,r(e.companyName),1),h(`strong`,null,[i(r(u(S)(e.meterage))+` `,1),h(`span`,je,`/ `+r(u(S)(e.maxMeterage)),1)])]))),128)),h(`div`,Me,[h(`span`,Ne,[l(T,{size:16}),p[15]||=i(` مبلغ فاکتور `,-1)]),p[16]||=h(`span`,{class:`cart-summary-card__hint-value`},` پس از قیمت‌گذاری مدیریت `,-1)])]),h(`button`,{type:`button`,class:`cart-summary-card__cta`,disabled:e.isEmpty||e.submitting,onClick:p[2]||=e=>g(`checkout`)},[l(O,{size:16}),i(` `+r(e.submitting?`در حال ثبت…`:`ثبت پیش‌سفارش`),1)],8,Pe),p[17]||=h(`p`,{class:`cart-summary-card__note`},` اقلام همه شرکت‌ها در یک سبد و یک فاکتور ثبت می‌شوند؛ پس از قیمت‌گذاری، یک‌بار تسویه می‌کنید. `,-1)]),h(`div`,$,[h(`h3`,Fe,[h(`span`,Ie,[l(oe,{size:18})]),p[18]||=i(` راهنمای گام بعدی `,-1)]),h(`p`,Le,[p[19]||=i(` پس از انتخاب شرکت و افزودن محصولات، متراژ کل و سقف مجاز فاکتور را بررسی کنید. `,-1),e.isEmpty?o(``,!0):(d(),c(s,{key:0},[i(` سقف مجاز: `+r(u(S)(e.maxMeterage))+` — باقی‌مانده: `+r(u(S)(e.remainingCapacity))+`. `,1)],64)),p[20]||=i(` سپس برای تکمیل سفارش، گزینه «ادامه و انتخاب تسویه» را بزنید. `,-1)])])])]),h(`nav`,Re,[(d(),c(s,null,f(v,e=>h(`button`,{key:e.title,type:`button`,class:`cart-quick-nav__item`,onClick:t=>e.action()},[h(`span`,{class:t([`cart-quick-nav__icon`,`cart-quick-nav__icon--${e.tone}`])},[(d(),a(m(e.icon),{size:20}))],2),h(`span`,Be,[h(`strong`,Ve,r(e.title),1),h(`span`,He,r(e.desc),1)]),l(O,{size:16,class:`cart-quick-nav__chevron`,"aria-hidden":`true`})],8,ze)),64))]),p[21]||=h(`p`,{class:`cart-desktop-page__footer`},`پارس بافت — سامانه سفارش‌گذاری پارچه`,-1)]))}}),[[`__scopeId`,`data-v-faff3d7e`]]),We={class:`cart-view`},Ge={class:`dialog card`},Ke={class:`dialog-actions`},qe=_(x({__name:`CartView`,setup(e){let t=p(),{cartStore:r,items:s,isEmpty:f,companyName:m,companySummaries:g,showFullDialog:_,submitting:v,submitError:b,removeItem:x,proceedToCheckout:S,proceedAnyway:C,createNewInvoice:w}=I();function T(){t.push(`/catalogs`)}return(e,p)=>(d(),c(`div`,We,[u(b)?(d(),a(te,{key:0,message:u(b),class:`cart-view__error`},null,8,[`message`])):o(``,!0),l(ae,{class:`mobile-only`,items:u(s),"company-name":u(m),"company-summaries":u(g),"total-meterage":u(r).totalMeterage,"max-meterage":u(r).maxMeterage,"remaining-capacity":u(r).remainingCapacity,"is-empty":u(f),submitting:u(v),onBack:p[0]||=e=>u(t).push(`/`),onRemove:u(x),onCheckout:u(S),onSelectCompany:p[1]||=e=>T()},null,8,[`items`,`company-name`,`company-summaries`,`total-meterage`,`max-meterage`,`remaining-capacity`,`is-empty`,`submitting`,`onRemove`,`onCheckout`]),l(Ue,{class:`desktop-only`,items:u(s),"company-name":u(m),"company-summaries":u(g),"total-meterage":u(r).totalMeterage,"max-meterage":u(r).maxMeterage,"remaining-capacity":u(r).remainingCapacity,"is-empty":u(f),submitting:u(v),onRemove:u(x),onCheckout:u(S),onSelectCompany:p[2]||=e=>T(),onBack:T},null,8,[`items`,`company-name`,`company-summaries`,`total-meterage`,`max-meterage`,`remaining-capacity`,`is-empty`,`submitting`,`onRemove`,`onCheckout`]),u(_)?(d(),c(`div`,{key:1,class:`dialog-overlay`,onClick:p[3]||=n(e=>_.value=!1,[`self`])},[h(`div`,Ge,[p[6]||=h(`h3`,null,`سقف متراژ تکمیل شد`,-1),p[7]||=h(`p`,{class:`text-sm`},` سقف متراژ حداقل یک شرکت در سبد پر شده است. می‌توانید همین پیش‌سفارش‌ها را ثبت کنید یا سبد را خالی کرده و فاکتور جدید بسازید. `,-1),h(`div`,Ke,[l(D,{variant:`outline`,loading:u(v),onClick:u(C)},{default:y(()=>[...p[4]||=[i(` ثبت همین فاکتور `,-1)]]),_:1},8,[`loading`,`onClick`]),l(D,{onClick:u(w)},{default:y(()=>[...p[5]||=[i(`فاکتور جدید`,-1)]]),_:1},8,[`onClick`])])])])):o(``,!0)]))}}),[[`__scopeId`,`data-v-da82aef3`]]);export{qe as default}; \ No newline at end of file diff --git a/dist/assets/CartView-DcIrdqu4.js b/dist/assets/CartView-DcIrdqu4.js new file mode 100644 index 0000000..abbdddd --- /dev/null +++ b/dist/assets/CartView-DcIrdqu4.js @@ -0,0 +1 @@ +import{A as e,Ct as t,D as n,Dt as r,J as i,L as a,M as o,N as s,O as c,P as l,Q as u,R as d,X as f,_ as p,ht as m,it as h,j as g,n as _,t as v,tt as y,wt as b,z as x}from"./BasicIcon-Bnxm-DKk.js";import{a as S,o as C}from"./format-C72AoJ2H.js";import{A as w,D as T,O as ee,d as E,n as D,o as O,t as k,x as A}from"./index-DB4cQnln.js";import{t as te}from"./EmptyState-CsuH56HV.js";import{t as j}from"./IconChevronBack-DguSlPDK.js";import{t as M}from"./FormErrorBanner-BahrrGfv.js";import{t as N}from"./IconDiamond-CGMEs3wg.js";import{t as P}from"./CheckoutStepper-DOrSsyu1.js";import{t as F}from"./IconClipboardEmpty-dbxs07_C.js";import{t as I}from"./IconLayoutGrid-BfGINevf.js";function L(){let t=p(),n=w(),r=E(),a=m(!1),o=m(!1),s=m(``),c=e(()=>n.activeCart?.items??[]),l=e(()=>c.value.length===0),u=e(()=>n.companyNamesLabel||n.activeCart?.companyName||``),d=e(()=>n.companySummaries);async function f(e){let t=c.value.find(t=>t.id===e);await k({title:`حذف از سبد`,message:t?`آیا از حذف «${t.productName}» از سبد خرید مطمئن هستید؟`:`آیا از حذف این آیتم از سبد خرید مطمئن هستید؟`,confirmLabel:`حذف`,cancelLabel:`انصراف`,tone:`danger`})&&n.removeItem(e)}async function h(){if(!(!n.activeCart||c.value.length===0||o.value)){o.value=!0,s.value=``;try{if(await n.hydrate(),!n.activeCart?.items.length){s.value=`سبد خرید خالی است یا با سرور همگام نشد.`;return}let e=await r.submitOrder(n.activeCart);await n.hydrate(),t.replace(`/orders/${e.id}/success`)}catch(e){s.value=e instanceof Error?e.message:`ثبت سفارش ناموفق بود.`,await n.hydrate()}finally{o.value=!1}}}function g(){if(c.value.length!==0){if(n.isFull){a.value=!0;return}h()}}function _(){a.value=!1,h()}async function v(){await n.createNewCartForSameCompany(),a.value=!1,t.push(`/categories`)}return i(()=>{n.ensureActiveCartForCartPage()}),{cartStore:n,items:c,isEmpty:l,companyName:u,companySummaries:d,showFullDialog:a,submitting:o,submitError:s,removeItem:f,proceedToCheckout:g,proceedAnyway:_,createNewInvoice:v}}var R=x({__name:`IconTrash`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(f(),o(v,{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=_(x({__name:`MobileCartPage`,props:{items:{},companyName:{},companySummaries:{},totalMeterage:{},maxMeterage:{},remainingCapacity:{},isEmpty:{type:Boolean},submitting:{type:Boolean}},emits:[`back`,`remove`,`checkout`,`selectCompany`],setup(e,{emit:n}){let i=n;return(n,p)=>(f(),l(`div`,z,[g(`header`,B,[g(`button`,{type:`button`,class:`nav-btn`,"aria-label":`بازگشت`,onClick:p[0]||=e=>i(`back`)},[d(j,{size:20})]),p[3]||=g(`h1`,{class:`cart-mobile-page__title`},`سبد خرید`,-1),g(`button`,V,[d(j,{size:18,class:`nav-btn__flip`})])]),e.isEmpty?(f(),o(te,{key:1,variant:`cart`,message:`از دسته‌بندی یا کالیته محصول را انتخاب کنید`},{default:h(()=>[d(D,{onClick:p[2]||=e=>i(`selectCompany`)},{default:h(()=>[...p[10]||=[a(`مشاهده محصولات`,-1)]]),_:1})]),_:1})):(f(),l(`div`,H,[e.companyName?(f(),l(`p`,U,` تأمین‌کننده: `+r(e.companyName),1)):s(``,!0),g(`div`,W,[g(`div`,G,[p[4]||=g(`div`,{class:`cart-mobile-table__head`},[g(`span`,null,`محصول`),g(`span`,null,`متراژ (متر)`),g(`span`,null,`حذف`)],-1),(f(!0),l(c,null,u(e.items,e=>(f(),l(`div`,{key:e.id,class:`cart-mobile-table__row`},[g(`div`,K,[g(`strong`,null,r(e.productName),1),g(`span`,null,`کد: `+r(e.productCode),1)]),g(`div`,q,r(t(C)(e.meterage)),1),g(`div`,J,[g(`button`,{type:`button`,"aria-label":`حذف`,onClick:t=>i(`remove`,e.id)},[d(R,{size:20})],8,Y)])]))),128))])]),g(`div`,X,[g(`div`,Z,[g(`div`,Q,[p[5]||=g(`span`,null,`جمع متراژ کل`,-1),g(`strong`,null,r(t(S)(e.totalMeterage)),1)]),e.companySummaries?.length?(f(!0),l(c,{key:0},u(e.companySummaries,e=>(f(),l(`div`,{key:e.companyId,class:`cart-mobile-summary__row cart-mobile-summary__row--sub`},[g(`span`,null,r(e.companyName),1),g(`strong`,null,[a(r(t(S)(e.meterage))+` `,1),g(`span`,ne,`/ `+r(t(S)(e.maxMeterage)),1)])]))),128)):(f(),l(`div`,re,[p[6]||=g(`span`,null,`حداکثر مجاز`,-1),g(`strong`,null,r(t(S)(e.maxMeterage)),1)])),g(`div`,ie,[p[7]||=g(`span`,null,`باقی مانده`,-1),g(`strong`,null,r(t(S)(e.remainingCapacity)),1)])]),p[9]||=g(`p`,{class:`cart-mobile-page__hint`},` پس از ثبت سفارش، کارشناسان قیمت‌گذاری می‌کنند و فاکتور برای شما صادر می‌شود. `,-1),d(D,{block:``,loading:e.submitting,onClick:p[1]||=e=>i(`checkout`)},{default:h(()=>[...p[8]||=[a(`ثبت پیش‌سفارش`,-1)]]),_:1},8,[`loading`])])]))]))}}),[[`__scopeId`,`data-v-346cdc9a`]]),oe=x({__name:`IconLightbulb`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(f(),o(v,{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=_(x({__name:`DesktopCartPage`,props:{items:{},companyName:{},companySummaries:{},totalMeterage:{},maxMeterage:{},remainingCapacity:{},isEmpty:{type:Boolean},submitting:{type:Boolean}},emits:[`remove`,`checkout`,`selectCompany`,`back`],setup(e,{emit:n}){let i=n,m=p(),h=[{title:`کالیته‌ها`,desc:`مرور کالیته و طرح‌ها`,icon:I,tone:`blue`,action:()=>m.push(`/catalogs`)},{title:`دسته‌بندی`,desc:`مشاهده محصولات بر اساس کاربرد`,icon:N,tone:`green`,action:()=>m.push(`/categories`)},{title:`سفارش‌های من`,desc:`پیگیری وضعیت سفارش‌ها`,icon:T,tone:`blue`,action:()=>m.push(`/orders`)}];return(n,p)=>(f(),l(`div`,se,[d(P,{"current-step":1}),g(`header`,ce,[p[3]||=g(`h1`,{class:`cart-desktop-page__title`},`سبد خرید`,-1),e.companyName?(f(),l(`p`,le,` تأمین‌کننده: `+r(e.companyName),1)):s(``,!0)]),g(`div`,ue,[g(`section`,de,[e.isEmpty?(f(),l(`div`,fe,[g(`div`,pe,[p[4]||=g(`span`,{class:`cart-empty-card__spark cart-empty-card__spark--1`},`+`,-1),p[5]||=g(`span`,{class:`cart-empty-card__spark cart-empty-card__spark--2`},`·`,-1),g(`span`,me,[d(ee,{size:40})]),p[6]||=g(`span`,{class:`cart-empty-card__spark cart-empty-card__spark--3`},`·`,-1)]),p[9]||=g(`h2`,{class:`cart-empty-card__heading`},`سبد خرید شما خالی است`,-1),p[10]||=g(`p`,{class:`cart-empty-card__text`},` از دسته‌بندی یا کالیته محصول را انتخاب کنید، جزئیات را ببینید و به سبد اضافه کنید. `,-1),g(`div`,he,[g(`button`,{type:`button`,class:`cart-btn cart-btn--primary`,onClick:p[0]||=e=>i(`selectCompany`)},[d(N,{size:16}),p[7]||=a(` دسته‌بندی محصولات `,-1)]),g(`button`,{type:`button`,class:`cart-btn cart-btn--outline`,onClick:p[1]||=e=>t(m).push(`/catalogs`)},[d(I,{size:18}),p[8]||=a(` مشاهده کالیته‌ها `,-1)])])])):(f(),l(`div`,ge,[g(`div`,_e,[g(`table`,ve,[p[11]||=g(`thead`,null,[g(`tr`,null,[g(`th`,{scope:`col`},`محصول`),g(`th`,{scope:`col`},`کد`),g(`th`,{scope:`col`},`متراژ (متر)`),g(`th`,{scope:`col`},`حذف`)])],-1),g(`tbody`,null,[(f(!0),l(c,null,u(e.items,e=>(f(),l(`tr`,{key:e.id},[g(`td`,null,[g(`strong`,ye,r(e.productName),1)]),g(`td`,null,r(e.productCode),1),g(`td`,null,r(t(C)(e.meterage)),1),g(`td`,null,[g(`button`,{type:`button`,class:`cart-items-table__delete`,"aria-label":`حذف`,onClick:t=>i(`remove`,e.id)},[d(R,{size:18})],8,be)])]))),128))])])])]))]),g(`aside`,xe,[g(`div`,Se,[g(`h2`,Ce,[g(`span`,we,[d(F,{size:22})]),p[12]||=a(` خلاصه سفارش `,-1)]),g(`div`,Te,[g(`div`,Ee,[g(`span`,De,[d(I,{size:16}),p[13]||=a(` تعداد آیتم‌ها `,-1)]),g(`strong`,null,r(t(C)(e.items.length)),1)]),g(`div`,Oe,[g(`span`,ke,[d(N,{size:16}),p[14]||=a(` متراژ کل `,-1)]),g(`strong`,null,r(t(S)(e.totalMeterage)),1)]),(f(!0),l(c,null,u(e.companySummaries??[],e=>(f(),l(`div`,{key:e.companyId,class:`cart-summary-card__row cart-summary-card__row--sub`},[g(`span`,Ae,r(e.companyName),1),g(`strong`,null,[a(r(t(S)(e.meterage))+` `,1),g(`span`,je,`/ `+r(t(S)(e.maxMeterage)),1)])]))),128)),g(`div`,Me,[g(`span`,Ne,[d(T,{size:16}),p[15]||=a(` مبلغ فاکتور `,-1)]),p[16]||=g(`span`,{class:`cart-summary-card__hint-value`},` پس از قیمت‌گذاری مدیریت `,-1)])]),g(`button`,{type:`button`,class:`cart-summary-card__cta`,disabled:e.isEmpty||e.submitting,onClick:p[2]||=e=>i(`checkout`)},[d(O,{size:16}),a(` `+r(e.submitting?`در حال ثبت…`:`ثبت پیش‌سفارش`),1)],8,Pe),p[17]||=g(`p`,{class:`cart-summary-card__note`},` پس از ثبت سفارش، مدیریت قیمت‌گذاری می‌کند و فاکتور صادر می‌شود؛ سپس روش تسویه را انتخاب می‌کنید. `,-1)]),g(`div`,$,[g(`h3`,Fe,[g(`span`,Ie,[d(oe,{size:18})]),p[18]||=a(` راهنمای گام بعدی `,-1)]),g(`p`,Le,[p[19]||=a(` محصولات موردنظر را به سبد اضافه کنید، متراژ کل را بررسی کنید و «ثبت پیش‌سفارش» را بزنید. `,-1),e.isEmpty?s(``,!0):(f(),l(c,{key:0},[a(` سقف مجاز: `+r(t(S)(e.maxMeterage))+` — باقی‌مانده: `+r(t(S)(e.remainingCapacity))+`. `,1)],64)),p[20]||=a(` پس از قیمت‌گذاری، از صفحه سفارش روش تسویه را انتخاب می‌کنید. `,-1)])])])]),g(`nav`,Re,[(f(),l(c,null,u(h,e=>g(`button`,{key:e.title,type:`button`,class:`cart-quick-nav__item`,onClick:t=>e.action()},[g(`span`,{class:b([`cart-quick-nav__icon`,`cart-quick-nav__icon--${e.tone}`])},[(f(),o(y(e.icon),{size:20}))],2),g(`span`,Be,[g(`strong`,Ve,r(e.title),1),g(`span`,He,r(e.desc),1)]),d(O,{size:16,class:`cart-quick-nav__chevron`,"aria-hidden":`true`})],8,ze)),64))]),p[21]||=g(`p`,{class:`cart-desktop-page__footer`},`پارس بافت — سامانه سفارش‌گذاری پارچه`,-1)]))}}),[[`__scopeId`,`data-v-e944f7f3`]]),We={class:`cart-view`},Ge={class:`dialog card`},Ke={class:`dialog-actions`},qe=_(x({__name:`CartView`,setup(e){let r=p(),{cartStore:i,items:c,isEmpty:u,companyName:m,companySummaries:_,showFullDialog:v,submitting:y,submitError:b,removeItem:x,proceedToCheckout:S,proceedAnyway:C,createNewInvoice:w}=L();function T(){r.push(A)}return(e,p)=>(f(),l(`div`,We,[t(b)?(f(),o(M,{key:0,message:t(b),class:`cart-view__error`},null,8,[`message`])):s(``,!0),d(ae,{class:`mobile-only`,items:t(c),"company-name":t(m),"company-summaries":t(_),"total-meterage":t(i).totalMeterage,"max-meterage":t(i).maxMeterage,"remaining-capacity":t(i).remainingCapacity,"is-empty":t(u),submitting:t(y),onBack:p[0]||=e=>t(r).push(`/`),onRemove:t(x),onCheckout:t(S),onSelectCompany:p[1]||=e=>T()},null,8,[`items`,`company-name`,`company-summaries`,`total-meterage`,`max-meterage`,`remaining-capacity`,`is-empty`,`submitting`,`onRemove`,`onCheckout`]),d(Ue,{class:`desktop-only`,items:t(c),"company-name":t(m),"company-summaries":t(_),"total-meterage":t(i).totalMeterage,"max-meterage":t(i).maxMeterage,"remaining-capacity":t(i).remainingCapacity,"is-empty":t(u),submitting:t(y),onRemove:t(x),onCheckout:t(S),onSelectCompany:p[2]||=e=>T(),onBack:T},null,8,[`items`,`company-name`,`company-summaries`,`total-meterage`,`max-meterage`,`remaining-capacity`,`is-empty`,`submitting`,`onRemove`,`onCheckout`]),t(v)?(f(),l(`div`,{key:1,class:`dialog-overlay`,onClick:p[3]||=n(e=>v.value=!1,[`self`])},[g(`div`,Ge,[p[6]||=g(`h3`,null,`سقف متراژ تکمیل شد`,-1),p[7]||=g(`p`,{class:`text-sm`},` سقف متراژ مجاز این سفارش پر شده است. می‌توانید همین پیش‌سفارش را ثبت کنید یا سبد را خالی کرده و سفارش جدید بسازید. `,-1),g(`div`,Ke,[d(D,{variant:`outline`,loading:t(y),onClick:t(C)},{default:h(()=>[...p[4]||=[a(` ثبت همین فاکتور `,-1)]]),_:1},8,[`loading`,`onClick`]),d(D,{onClick:t(w)},{default:h(()=>[...p[5]||=[a(`فاکتور جدید`,-1)]]),_:1},8,[`onClick`])])])])):s(``,!0)]))}}),[[`__scopeId`,`data-v-2f81af33`]]);export{qe as default}; \ No newline at end of file diff --git a/dist/assets/CashSettlementView-CT_ObFX-.js b/dist/assets/CashSettlementView-CT_ObFX-.js deleted file mode 100644 index 6f96eae..0000000 --- a/dist/assets/CashSettlementView-CT_ObFX-.js +++ /dev/null @@ -1 +0,0 @@ -import{A as e,Et as t,L as n,M as r,O as i,P as a,R as o,St as s,Y as c,Z as l,_ as ee,j as u,mt as te,n as d,rt as f,t as p,tt as m,z as h}from"./BasicIcon-C6boaehV.js";import{i as ne,n as re}from"./format-BHJptHdF.js";import{t as ie}from"./catalog-s7nVUdlj.js";import{d as ae,n as g}from"./index-fdhs4HNc.js";import{t as oe}from"./PageHeader-Cd04Z6F_.js";import{t as se}from"./useRequirePricedOrder-BV4a0r6K.js";var _=h({__name:`IconSuccessCircle`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(c(),r(p,{icon:`vuesax-linear:tick-circle`,size:e.size,"stroke-width":e.strokeWidth,color:e.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=d(h({__name:`CashSettlementView`,setup(r){let d=ee(),p=ae(),h=ie(),U=te([]),{orderId:W,order:G}=se(),K=e(()=>G.value?.companyName??``);m(W,async e=>{e&&!p.getOrderById(e)&&await p.fetchOrder(e)},{immediate:!0}),m(()=>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=e(()=>G.value?.finalAmount?re(G.value.finalAmount):`—`),J=e(()=>{let e=G.value?.cashInvoiceExpiresAt;return e?`مهلت پرداخت این فاکتور تا ${ne(e)} است.`:`مبلغ فاکتور را به یکی از حساب‌های زیر واریز و رسید را ثبت کنید.`}),Y=e(()=>{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(e,r)=>(c(),a(i,null,[u(`div`,ce,[o(oe,{title:`تسویه نقدی`,"show-back":``,centered:``,onBack:r[0]||=e=>s(d).push(`/orders/${s(W)}`)}),u(`div`,le,[u(`div`,ue,[o(_,{size:56}),u(`p`,v,`مبلغ قابل پرداخت `+t(q.value),1),u(`p`,y,t(J.value),1)]),u(`section`,b,[u(`h2`,x,t(Y.value),1),(c(!0),a(i,null,l(U.value,e=>(c(),a(`article`,{key:e.id,class:`bank-card`},[u(`div`,S,[u(`span`,C,t(e.bankName),1),u(`span`,w,t(e.bankName.charAt(0)),1)]),u(`div`,T,[r[1]||=u(`span`,{class:`bank-card__label`},`شماره کارت`,-1),u(`strong`,E,t(X(e.cardNumber)),1)]),u(`div`,D,[r[2]||=u(`span`,{class:`bank-card__label`},`شماره شبا`,-1),u(`strong`,O,t(Z(e.iban)),1)])]))),128))])]),u(`div`,k,[o(g,{variant:`outline`,block:``,onClick:Q},{default:f(()=>[...r[3]||=[n(`مشاهده سفارش`,-1)]]),_:1}),o(g,{block:``,class:`cash-page__submit`,onClick:$},{default:f(()=>[...r[4]||=[n(` ثبت رسید پرداخت `,-1)]]),_:1})])]),u(`div`,A,[u(`header`,j,[r[5]||=u(`h1`,{class:`desktop-page__title`},`تسویه نقدی`,-1),u(`p`,M,t(J.value),1)]),u(`div`,N,[o(_,{size:56}),u(`p`,de,`مبلغ قابل پرداخت `+t(q.value),1)]),u(`section`,P,[u(`h2`,F,t(Y.value),1),u(`div`,I,[(c(!0),a(i,null,l(U.value,e=>(c(),a(`article`,{key:e.id,class:`bank-card`},[u(`div`,L,[u(`span`,R,t(e.bankName),1),u(`span`,z,t(e.bankName.charAt(0)),1)]),u(`div`,B,[r[6]||=u(`span`,{class:`bank-card__label`},`شماره کارت`,-1),u(`strong`,V,t(X(e.cardNumber)),1)]),u(`div`,H,[r[7]||=u(`span`,{class:`bank-card__label`},`شماره شبا`,-1),u(`strong`,fe,t(Z(e.iban)),1)])]))),128))])]),u(`div`,pe,[o(g,{variant:`outline`,class:`desktop-btn-compact`,onClick:Q},{default:f(()=>[...r[8]||=[n(` مشاهده سفارش `,-1)]]),_:1}),o(g,{class:`desktop-btn-compact`,onClick:$},{default:f(()=>[...r[9]||=[n(` ثبت رسید پرداخت `,-1)]]),_:1})])])],64))}}),[[`__scopeId`,`data-v-c299caf6`]]);export{U as default}; \ No newline at end of file diff --git a/dist/assets/CashSettlementView-DmaDYQvf.js b/dist/assets/CashSettlementView-DmaDYQvf.js new file mode 100644 index 0000000..1ba8406 --- /dev/null +++ b/dist/assets/CashSettlementView-DmaDYQvf.js @@ -0,0 +1 @@ +import{A as e,Ct as t,Dt as n,L as r,M as i,O as a,P as o,Q as s,R as c,X as l,_ as ee,ht as te,it as u,j as d,n as f,nt as p,t as m,z as h}from"./BasicIcon-Bnxm-DKk.js";import{i as ne,n as re}from"./format-C72AoJ2H.js";import{t as ie}from"./catalog-B2Z_WZGF.js";import{d as ae,n as g}from"./index-DB4cQnln.js";import{t as oe}from"./PageHeader-BxTTQB_F.js";import{t as se}from"./useRequirePricedOrder-CUckkgqU.js";var _=h({__name:`IconSuccessCircle`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(l(),i(m,{icon:`vuesax-linear:tick-circle`,size:e.size,"stroke-width":e.strokeWidth,color:e.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=f(h({__name:`CashSettlementView`,setup(i){let f=ee(),m=ae(),h=ie(),U=te([]),{orderId:W,order:G}=se(),K=e(()=>G.value?.companyName??``);p(W,async e=>{e&&!m.getOrderById(e)&&await m.fetchOrder(e)},{immediate:!0}),p(()=>G.value?.id,async e=>{if(!e||!G.value){U.value=[];return}h.companies.length||await h.loadCompanies(),U.value=await m.getBankAccountsForOrder(G.value)},{immediate:!0});let q=e(()=>G.value?.finalAmount?re(G.value.finalAmount):`—`),J=e(()=>{let e=G.value?.cashInvoiceExpiresAt;return e?`مهلت پرداخت این فاکتور تا ${ne(e)} است.`:`مبلغ فاکتور را به یکی از حساب‌های زیر واریز و رسید را ثبت کنید.`}),Y=e(()=>{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(){f.replace(`/orders/${W.value}?track=1`)}function $(){f.replace(`/orders/${W.value}?track=1&receipt=1`)}return(e,i)=>(l(),o(a,null,[d(`div`,ce,[c(oe,{title:`تسویه نقدی`,"show-back":``,centered:``,onBack:i[0]||=e=>t(f).push(`/orders/${t(W)}`)}),d(`div`,le,[d(`div`,ue,[c(_,{size:56}),d(`p`,v,`مبلغ قابل پرداخت `+n(q.value),1),d(`p`,y,n(J.value),1)]),d(`section`,b,[d(`h2`,x,n(Y.value),1),(l(!0),o(a,null,s(U.value,e=>(l(),o(`article`,{key:e.id,class:`bank-card`},[d(`div`,S,[d(`span`,C,n(e.bankName),1),d(`span`,w,n(e.bankName.charAt(0)),1)]),d(`div`,T,[i[1]||=d(`span`,{class:`bank-card__label`},`شماره کارت`,-1),d(`strong`,E,n(X(e.cardNumber)),1)]),d(`div`,D,[i[2]||=d(`span`,{class:`bank-card__label`},`شماره شبا`,-1),d(`strong`,O,n(Z(e.iban)),1)])]))),128))])]),d(`div`,k,[c(g,{variant:`outline`,block:``,onClick:Q},{default:u(()=>[...i[3]||=[r(`مشاهده سفارش`,-1)]]),_:1}),c(g,{block:``,class:`cash-page__submit`,onClick:$},{default:u(()=>[...i[4]||=[r(` ثبت رسید پرداخت `,-1)]]),_:1})])]),d(`div`,A,[d(`header`,j,[i[5]||=d(`h1`,{class:`desktop-page__title`},`تسویه نقدی`,-1),d(`p`,M,n(J.value),1)]),d(`div`,N,[c(_,{size:56}),d(`p`,de,`مبلغ قابل پرداخت `+n(q.value),1)]),d(`section`,P,[d(`h2`,F,n(Y.value),1),d(`div`,I,[(l(!0),o(a,null,s(U.value,e=>(l(),o(`article`,{key:e.id,class:`bank-card`},[d(`div`,L,[d(`span`,R,n(e.bankName),1),d(`span`,z,n(e.bankName.charAt(0)),1)]),d(`div`,B,[i[6]||=d(`span`,{class:`bank-card__label`},`شماره کارت`,-1),d(`strong`,V,n(X(e.cardNumber)),1)]),d(`div`,H,[i[7]||=d(`span`,{class:`bank-card__label`},`شماره شبا`,-1),d(`strong`,fe,n(Z(e.iban)),1)])]))),128))])]),d(`div`,pe,[c(g,{variant:`outline`,class:`desktop-btn-compact`,onClick:Q},{default:u(()=>[...i[8]||=[r(` مشاهده سفارش `,-1)]]),_:1}),c(g,{class:`desktop-btn-compact`,onClick:$},{default:u(()=>[...i[9]||=[r(` ثبت رسید پرداخت `,-1)]]),_:1})])])],64))}}),[[`__scopeId`,`data-v-c299caf6`]]);export{U as default}; \ No newline at end of file diff --git a/dist/assets/CatalogDetailView-D9HeT7Iq.js b/dist/assets/CatalogDetailView-D9HeT7Iq.js new file mode 100644 index 0000000..d670a4a --- /dev/null +++ b/dist/assets/CatalogDetailView-D9HeT7Iq.js @@ -0,0 +1 @@ +import{A as e,Ct as t,D as n,Dt as r,Et as i,I as ee,J as a,L as o,M as te,N as s,O as c,P as l,Q as u,R as d,X as f,_ as ne,g as re,ht as p,j as m,n as ie,nt as ae,t as oe,wt as se,z as h}from"./BasicIcon-Bnxm-DKk.js";import{o as g}from"./format-C72AoJ2H.js";import{t as ce}from"./catalog-B2Z_WZGF.js";import{A as le,l as ue,o as de}from"./index-DB4cQnln.js";import{t as fe}from"./IconChevronBack-DguSlPDK.js";import{t as pe}from"./PageSkeleton-CpZ7eT1v.js";import{t as me}from"./IconShare-DtutVVj1.js";import{t as he}from"./crm-CZ7XH3z9.js";import{t as ge}from"./useGoBack-Ds4z3swU.js";import{i as _,l as _e,n as v,o as ve,r as y,s as ye}from"./caliteCollections-CooWZH--.js";import{n as b}from"./colorSwatch-BgOH1LE5.js";var x={class:`page calite-detail`},S={class:`page__scroll page__scroll--with-nav calite-detail__scroll`},C={class:`calite-hero`},w={class:`calite-hero__nav`},T={key:0,class:`calite-hero__copy`},E={class:`calite-hero__usage`},D={key:0,class:`calite-hero__latin`},O={class:`calite-hero__tagline`},k={class:`calite-detail__body`},A={key:1,class:`calite-detail__error`},j={class:`attr-row`},M={class:`attr`},N={class:`attr`},P={class:`physical-cta__icon`,"aria-hidden":`true`},be={class:`physical-cta__chevron`,"aria-hidden":`true`},xe={class:`pattern-tabs`,role:`tablist`,"aria-label":`نوع طرح`},Se=[`onClick`],Ce={class:`pattern-grid`},we=[`onClick`],Te=[`aria-pressed`,`aria-label`,`onClick`],Ee={viewBox:`0 0 24 24`,width:`16`,height:`16`,fill:`none`,"aria-hidden":`true`},De=[`fill`],Oe={class:`pattern-card__meta`},ke={class:`pattern-card__colors`},F={class:`swatches`},Ae={key:0,class:`calite-detail__error`},je={key:0,class:`sticky-footer calite-detail__footer`},Me=[`disabled`],Ne={key:1,class:`toast`},I=ie(h({__name:`CatalogDetailView`,setup(ie){let h=re(),I=ne(),{goBack:L}=ge(`/catalogs`),R=ce(),Pe=he(),Fe=le(),z=ue(),B=e(()=>String(h.params.catalogId??``)),V=p(null),H=p([]),U=p(!0),W=p(null),G=p(!1),K=p(``),q=p(`all`),J=e(()=>ve(V.value?.name||`کالیته`)),Y=e(()=>V.value?.imageUrl||(V.value?y(V.value.id)?.imageUrl:void 0)||H.value.find(e=>e.imageUrl)?.imageUrl),X=e(()=>{let e=V.value?y(V.value.id):void 0;return e?.latinName?e.latinName:V.value?ye(V.value):``}),Ie=e(()=>{let e=V.value?y(V.value.id):void 0;if(e?.subtitle)return e.subtitle;let t=H.value[0]?.categoryId;return t===`trousers`?`پارچه‌های شلواری`:t===`shirt`?`پارچه‌های پیراهنی`:`پارچه‌های کت‌وشلواری`}),Z=e(()=>_e(H.value)),Q=e(()=>q.value===`all`?Z.value:Z.value.filter(e=>e.kind===q.value)),Le=e(()=>{let e=V.value?y(V.value.id):void 0;if(e)return _[e.season];let t={};for(let e of H.value)t[e.season]=(t[e.season]??0)+1;let n=Object.entries(t).sort((e,t)=>t[1]-e[1])[0]?.[0];return n?_[n]:_.all_season}),Re=e(()=>[{id:`all`,label:`همه طرح‌ها`,count:Z.value.length},{id:`plain`,label:`ساده`,count:Z.value.filter(e=>e.kind===`plain`).length},{id:`melange`,label:`ملانژ`,count:Z.value.filter(e=>e.kind===`melange`).length},{id:`patterned`,label:`طرح‌دار`,count:Z.value.filter(e=>e.kind===`patterned`).length}]);async function $(){U.value=!0,W.value=null,V.value=null,H.value=[],q.value=`all`;try{let e=await R.loadCompanies();R.getCatalog(B.value)||await Promise.all(e.map(e=>R.loadCatalogs(e.id))),V.value=R.getCatalog(B.value)??null;let t=y(B.value);if(!V.value&&t){V.value={id:t.id,companyId:``,name:t.name,code:t.latinName||t.name,description:`ترکیبی از اصالت، کیفیت و استایل مدرن`,displayOrder:0,isActive:!0},H.value=v(t);return}if(!V.value){W.value=`کالیته مورد نظر یافت نشد.`;return}H.value=await Pe.loadBrowseProducts({catalogId:V.value.id,companyId:V.value.companyId}),!H.value.length&&t&&(H.value=v(t))}catch(e){W.value=e instanceof Error?e.message:`بارگذاری کالیته ناموفق بود.`}finally{U.value=!1}}a(async()=>{await z.hydrate(),await $()}),ae(B,$);function ze(e){e.startsWith(`demo-`)||I.push({path:`/product`,query:{id:e}})}function Be(e){z.toggle(e)}function Ve(){I.push({path:`/catalog-request`,query:{catalogId:B.value}})}function He(){let e=window.location.href;if(navigator.share){navigator.share({title:J.value,url:e}).catch(()=>void 0);return}navigator.clipboard?.writeText(e)}function Ue(e){return{id:e.id,companyId:e.companyId||V.value?.companyId||``,catalogId:e.catalogId||B.value,name:e.name,code:e.code,color:e.color||e.colors[0]||`—`,minMeterage:e.minMeterage??30,orderMultiplier:e.orderMultiplier??10,basePrice:e.basePrice,isActive:!0}}async function We(){if(!H.value.length||G.value)return;G.value=!0,K.value=``;let e=0,t=``;try{for(let n of H.value){let r=Ue(n),i=await Fe.addItem(r,V.value?.code||n.catalogCode||n.code,r.minMeterage);i.success?e+=1:t=i.message||t}K.value=e?`${g(e)} طرح به سبد استعلام اضافه شد.`:t||`افزودن به سبد ناموفق بود.`,e&&window.setTimeout(()=>I.push(`/cart`),650)}finally{G.value=!1}}return(e,a)=>(f(),l(`div`,x,[m(`div`,S,[m(`section`,C,[m(`div`,{class:`calite-hero__photo`,style:i(Y.value?{backgroundImage:`url(${Y.value})`}:void 0)},null,4),m(`header`,w,[m(`button`,{type:`button`,class:`icon-btn`,"aria-label":`بازگشت`,onClick:a[0]||=(...e)=>t(L)&&t(L)(...e)},[d(fe,{size:22,color:`#ffffff`})]),m(`h1`,null,r(U.value?`کالیته`:J.value),1),m(`button`,{type:`button`,class:`icon-btn`,"aria-label":`اشتراک‌گذاری`,onClick:He},[d(me,{size:20,color:`#ffffff`})])]),!U.value&&!W.value?(f(),l(`div`,T,[m(`h2`,null,r(J.value),1),m(`p`,E,r(Ie.value),1),X.value?(f(),l(`strong`,D,r(X.value),1)):s(``,!0),m(`span`,O,r(V.value?.description||`ترکیبی از اصالت، کیفیت و استایل مدرن`),1)])):s(``,!0)]),m(`div`,k,[U.value?(f(),te(pe,{key:0,variant:`cards`,rows:5})):W.value?(f(),l(`p`,A,r(W.value),1)):(f(),l(c,{key:2},[m(`div`,j,[m(`span`,M,[a[1]||=m(`svg`,{class:`attr__icon`,viewBox:`0 0 24 24`,fill:`none`,"aria-hidden":`true`},[m(`path`,{d:`M12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83Z`,stroke:`currentColor`,"stroke-width":`1.5`,"stroke-linecap":`round`,"stroke-linejoin":`round`}),m(`path`,{d:`M2 12a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 12`,stroke:`currentColor`,"stroke-width":`1.5`,"stroke-linecap":`round`,"stroke-linejoin":`round`}),m(`path`,{d:`M2 17a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 17`,stroke:`currentColor`,"stroke-width":`1.5`,"stroke-linecap":`round`,"stroke-linejoin":`round`})],-1),o(` `+r(t(g)(Z.value.length))+` طرح `,1)]),m(`span`,N,[a[2]||=m(`svg`,{class:`attr__icon`,viewBox:`0 0 24 24`,fill:`none`,"aria-hidden":`true`},[m(`circle`,{cx:`12`,cy:`12`,r:`4`,stroke:`currentColor`,"stroke-width":`1.5`}),m(`path`,{d:`M12 2v2M12 20v2M4.93 4.93l1.41 1.41M17.66 17.66l1.41 1.41M2 12h2M20 12h2M6.34 17.66l-1.41 1.41M19.07 4.93l-1.41 1.41`,stroke:`currentColor`,"stroke-width":`1.5`,"stroke-linecap":`round`})],-1),o(` `+r(Le.value),1)]),a[3]||=ee(` پرطرفدار کیفیت ممتاز `,2)]),m(`button`,{type:`button`,class:`physical-cta`,onClick:Ve},[m(`span`,P,[d(oe,{icon:`vuesax-linear:truck-time`,size:20,color:`#ffffff`})]),a[4]||=o(` درخواست دریافت فیزیکی کالیته `,-1),m(`span`,be,[d(de,{size:18,color:`#ffffff`})])]),m(`div`,xe,[(f(!0),l(c,null,u(Re.value,e=>(f(),l(`button`,{key:e.id,type:`button`,class:se([`pattern-tab`,{"is-on":q.value===e.id}]),onClick:t=>q.value=e.id},[o(r(e.label),1),e.id===`all`?(f(),l(c,{key:0},[o(` (`+r(t(g)(e.count))+`)`,1)],64)):s(``,!0)],10,Se))),128))]),m(`div`,Ce,[(f(!0),l(c,null,u(Q.value,e=>(f(),l(`article`,{key:e.id,class:`pattern-card`,onClick:t=>ze(e.id)},[m(`div`,{class:`pattern-card__photo`,style:i(e.imageUrl?{backgroundImage:`url(${e.imageUrl})`}:void 0)},[m(`button`,{type:`button`,class:`pattern-card__fav`,"aria-pressed":t(z).isFavorite(e.id),"aria-label":t(z).isFavorite(e.id)?`حذف از علاقه‌مندی‌ها`:`افزودن به علاقه‌مندی‌ها`,onClick:n(t=>Be(e.id),[`stop`])},[(f(),l(`svg`,Ee,[m(`path`,{d:`M12.1 20.3s-6.6-4.1-8.4-8.1c-1.4-3.1.1-6.7 3.4-7.5 1.9-.5 3.7.3 4.9 1.8 1.2-1.5 3-2.3 4.9-1.8 3.3.8 4.8 4.4 3.4 7.5-1.8 4-8.2 8.1-8.2 8.1Z`,fill:t(z).isFavorite(e.id)?`var(--color-primary)`:`none`,stroke:`var(--color-primary)`,"stroke-width":`1.5`,"stroke-linejoin":`round`},null,8,De)]))],8,Te)],4),m(`div`,Oe,[m(`strong`,null,r(e.name),1),m(`div`,ke,[m(`span`,null,r(t(g)(e.colorCount))+` رنگ`,1),m(`div`,F,[(f(!0),l(c,null,u(e.colors,(n,r)=>(f(),l(`i`,{key:r,style:i(t(b)(n,e.colorImages[r]))},null,4))),128))])])])],8,we))),128))]),Q.value.length?s(``,!0):(f(),l(`p`,Ae,`طرحی در این دسته نیست.`))],64))])]),!U.value&&H.value.length?(f(),l(`div`,je,[m(`button`,{type:`button`,class:`inquiry-bar`,disabled:G.value,onClick:We},[o(r(G.value?`در حال افزودن...`:`افزودن همه به سبد استعلام`)+` `,1),m(`small`,null,r(t(g)(Z.value.length))+` طرح انتخاب می‌شود`,1)],8,Me)])):s(``,!0),K.value?(f(),l(`p`,Ne,r(K.value),1)):s(``,!0)]))}}),[[`__scopeId`,`data-v-335c617e`]]);export{I as default}; \ No newline at end of file diff --git a/dist/assets/CatalogDetailView-Dp5X6av6.js b/dist/assets/CatalogDetailView-Dp5X6av6.js deleted file mode 100644 index b36a979..0000000 --- a/dist/assets/CatalogDetailView-Dp5X6av6.js +++ /dev/null @@ -1 +0,0 @@ -import{A as e,Ct as t,D as n,Et as r,I as i,L as a,M as ee,N as o,O as s,P as c,R as l,St as u,Tt as d,Y as f,Z as p,_ as m,g as te,j as h,mt as g,n as ne,q as re,t as ie,tt as ae,z as _}from"./BasicIcon-C6boaehV.js";import{o as v}from"./format-BHJptHdF.js";import{t as oe}from"./catalog-s7nVUdlj.js";import{T as se,l as ce,o as le}from"./index-fdhs4HNc.js";import{t as ue}from"./IconChevronBack-DORV2H0q.js";import{t as de}from"./PageSkeleton-sKuEY4NI.js";import{t as fe}from"./IconShare-1kao-fAR.js";import{t as pe}from"./crm-DmqasSZ_.js";import{t as me}from"./useGoBack-CgNp0uP9.js";import{i as he,o as ge,r as _e,t as y}from"./catalogGallery-Khy0nWqc.js";import{n as ve}from"./colorSwatch-BgOH1LE5.js";var b=[{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 x(e){return b.find(t=>t.id===e)}function S(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 C={class:`page calite-detail`},w={class:`page__scroll page__scroll--with-nav calite-detail__scroll`},T={class:`calite-hero`},E={class:`calite-hero__nav`},D={key:0,class:`calite-hero__copy`},O={class:`calite-hero__usage`},k={key:0,class:`calite-hero__latin`},A={class:`calite-hero__tagline`},j={class:`calite-detail__body`},M={key:1,class:`calite-detail__error`},N={class:`attr-row`},P={class:`attr`},F={class:`attr`},ye={class:`physical-cta__icon`,"aria-hidden":`true`},be={class:`physical-cta__chevron`,"aria-hidden":`true`},xe={class:`pattern-tabs`,role:`tablist`,"aria-label":`نوع طرح`},Se=[`onClick`],Ce={class:`pattern-grid`},we=[`onClick`],Te=[`aria-pressed`,`aria-label`,`onClick`],Ee={viewBox:`0 0 24 24`,width:`16`,height:`16`,fill:`none`,"aria-hidden":`true`},De=[`fill`],Oe={class:`pattern-card__meta`},I={class:`pattern-card__colors`},ke={class:`swatches`},Ae={key:0,class:`calite-detail__error`},je={key:0,class:`sticky-footer calite-detail__footer`},Me=[`disabled`],Ne={key:1,class:`toast`},L=ne(_({__name:`CatalogDetailView`,setup(ne){let _=te(),b=m(),{goBack:L}=me(`/catalogs`),R=oe(),Pe=pe(),Fe=se(),z=ce(),B=e(()=>String(_.params.catalogId??``)),V=g(null),H=g([]),U=g(!0),W=g(null),G=g(!1),K=g(``),q=g(`all`),J=e(()=>_e(V.value?.name||`کالیته`)),Y=e(()=>V.value?.imageUrl||(V.value?x(V.value.id)?.imageUrl:void 0)||H.value.find(e=>e.imageUrl)?.imageUrl),X=e(()=>{let e=V.value?x(V.value.id):void 0;return e?.latinName?e.latinName:V.value?he(V.value):``}),Ie=e(()=>{let e=V.value?x(V.value.id):void 0;if(e?.subtitle)return e.subtitle;let t=H.value[0]?.categoryId;return t===`trousers`?`پارچه‌های شلواری`:t===`shirt`?`پارچه‌های پیراهنی`:`پارچه‌های کت‌وشلواری`}),Z=e(()=>ge(H.value)),Q=e(()=>q.value===`all`?Z.value:Z.value.filter(e=>e.kind===q.value)),Le=e(()=>{let e=V.value?x(V.value.id):void 0;if(e)return y[e.season];let t={};for(let e of H.value)t[e.season]=(t[e.season]??0)+1;let n=Object.entries(t).sort((e,t)=>t[1]-e[1])[0]?.[0];return n?y[n]:y.all_season}),Re=e(()=>[{id:`all`,label:`همه طرح‌ها`,count:Z.value.length},{id:`plain`,label:`ساده`,count:Z.value.filter(e=>e.kind===`plain`).length},{id:`melange`,label:`ملانژ`,count:Z.value.filter(e=>e.kind===`melange`).length},{id:`patterned`,label:`طرح‌دار`,count:Z.value.filter(e=>e.kind===`patterned`).length}]);async function $(){U.value=!0,W.value=null,V.value=null,H.value=[],q.value=`all`;try{let e=await R.loadCompanies();R.getCatalog(B.value)||await Promise.all(e.map(e=>R.loadCatalogs(e.id))),V.value=R.getCatalog(B.value)??null;let t=x(B.value);if(!V.value&&t){V.value={id:t.id,companyId:``,name:t.name,code:t.latinName||t.name,description:`ترکیبی از اصالت، کیفیت و استایل مدرن`,displayOrder:0,isActive:!0},H.value=S(t);return}if(!V.value){W.value=`کالیته مورد نظر یافت نشد.`;return}H.value=await Pe.loadBrowseProducts({catalogId:V.value.id,companyId:V.value.companyId}),!H.value.length&&t&&(H.value=S(t))}catch(e){W.value=e instanceof Error?e.message:`بارگذاری کالیته ناموفق بود.`}finally{U.value=!1}}re(async()=>{await z.hydrate(),await $()}),ae(B,$);function ze(e){e.startsWith(`demo-`)||b.push({path:`/product`,query:{id:e}})}function Be(e){z.toggle(e)}function Ve(){b.push({path:`/catalog-request`,query:{catalogId:B.value}})}function He(){let e=window.location.href;if(navigator.share){navigator.share({title:J.value,url:e}).catch(()=>void 0);return}navigator.clipboard?.writeText(e)}function Ue(e){return{id:e.id,companyId:e.companyId||V.value?.companyId||``,catalogId:e.catalogId||B.value,name:e.name,code:e.code,color:e.color||e.colors[0]||`—`,minMeterage:e.minMeterage??30,orderMultiplier:e.orderMultiplier??10,basePrice:e.basePrice,isActive:!0}}async function We(){if(!H.value.length||G.value)return;G.value=!0,K.value=``;let e=0,t=``;try{for(let n of H.value){let r=Ue(n),i=await Fe.addItem(r,V.value?.code||n.catalogCode||n.code,r.minMeterage);i.success?e+=1:t=i.message||t}K.value=e?`${v(e)} طرح به سبد استعلام اضافه شد.`:t||`افزودن به سبد ناموفق بود.`,e&&window.setTimeout(()=>b.push(`/cart`),650)}finally{G.value=!1}}return(e,m)=>(f(),c(`div`,C,[h(`div`,w,[h(`section`,T,[h(`div`,{class:`calite-hero__photo`,style:d(Y.value?{backgroundImage:`url(${Y.value})`}:void 0)},null,4),h(`header`,E,[h(`button`,{type:`button`,class:`icon-btn`,"aria-label":`بازگشت`,onClick:m[0]||=(...e)=>u(L)&&u(L)(...e)},[l(ue,{size:22,color:`#ffffff`})]),h(`h1`,null,r(U.value?`کالیته`:J.value),1),h(`button`,{type:`button`,class:`icon-btn`,"aria-label":`اشتراک‌گذاری`,onClick:He},[l(fe,{size:20,color:`#ffffff`})])]),!U.value&&!W.value?(f(),c(`div`,D,[h(`h2`,null,r(J.value),1),h(`p`,O,r(Ie.value),1),X.value?(f(),c(`strong`,k,r(X.value),1)):o(``,!0),h(`span`,A,r(V.value?.description||`ترکیبی از اصالت، کیفیت و استایل مدرن`),1)])):o(``,!0)]),h(`div`,j,[U.value?(f(),ee(de,{key:0,variant:`cards`,rows:5})):W.value?(f(),c(`p`,M,r(W.value),1)):(f(),c(s,{key:2},[h(`div`,N,[h(`span`,P,[m[1]||=h(`svg`,{class:`attr__icon`,viewBox:`0 0 24 24`,fill:`none`,"aria-hidden":`true`},[h(`path`,{d:`M12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83Z`,stroke:`currentColor`,"stroke-width":`1.5`,"stroke-linecap":`round`,"stroke-linejoin":`round`}),h(`path`,{d:`M2 12a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 12`,stroke:`currentColor`,"stroke-width":`1.5`,"stroke-linecap":`round`,"stroke-linejoin":`round`}),h(`path`,{d:`M2 17a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 17`,stroke:`currentColor`,"stroke-width":`1.5`,"stroke-linecap":`round`,"stroke-linejoin":`round`})],-1),a(` `+r(u(v)(Z.value.length))+` طرح `,1)]),h(`span`,F,[m[2]||=h(`svg`,{class:`attr__icon`,viewBox:`0 0 24 24`,fill:`none`,"aria-hidden":`true`},[h(`circle`,{cx:`12`,cy:`12`,r:`4`,stroke:`currentColor`,"stroke-width":`1.5`}),h(`path`,{d:`M12 2v2M12 20v2M4.93 4.93l1.41 1.41M17.66 17.66l1.41 1.41M2 12h2M20 12h2M6.34 17.66l-1.41 1.41M19.07 4.93l-1.41 1.41`,stroke:`currentColor`,"stroke-width":`1.5`,"stroke-linecap":`round`})],-1),a(` `+r(Le.value),1)]),m[3]||=i(` پرطرفدار کیفیت ممتاز `,2)]),h(`button`,{type:`button`,class:`physical-cta`,onClick:Ve},[h(`span`,ye,[l(ie,{icon:`vuesax-linear:truck-time`,size:20,color:`#ffffff`})]),m[4]||=a(` درخواست دریافت فیزیکی کالیته `,-1),h(`span`,be,[l(le,{size:18,color:`#ffffff`})])]),h(`div`,xe,[(f(!0),c(s,null,p(Re.value,e=>(f(),c(`button`,{key:e.id,type:`button`,class:t([`pattern-tab`,{"is-on":q.value===e.id}]),onClick:t=>q.value=e.id},[a(r(e.label),1),e.id===`all`?(f(),c(s,{key:0},[a(` (`+r(u(v)(e.count))+`)`,1)],64)):o(``,!0)],10,Se))),128))]),h(`div`,Ce,[(f(!0),c(s,null,p(Q.value,e=>(f(),c(`article`,{key:e.id,class:`pattern-card`,onClick:t=>ze(e.id)},[h(`div`,{class:`pattern-card__photo`,style:d(e.imageUrl?{backgroundImage:`url(${e.imageUrl})`}:void 0)},[h(`button`,{type:`button`,class:`pattern-card__fav`,"aria-pressed":u(z).isFavorite(e.id),"aria-label":u(z).isFavorite(e.id)?`حذف از علاقه‌مندی‌ها`:`افزودن به علاقه‌مندی‌ها`,onClick:n(t=>Be(e.id),[`stop`])},[(f(),c(`svg`,Ee,[h(`path`,{d:`M12.1 20.3s-6.6-4.1-8.4-8.1c-1.4-3.1.1-6.7 3.4-7.5 1.9-.5 3.7.3 4.9 1.8 1.2-1.5 3-2.3 4.9-1.8 3.3.8 4.8 4.4 3.4 7.5-1.8 4-8.2 8.1-8.2 8.1Z`,fill:u(z).isFavorite(e.id)?`var(--color-primary)`:`none`,stroke:`var(--color-primary)`,"stroke-width":`1.5`,"stroke-linejoin":`round`},null,8,De)]))],8,Te)],4),h(`div`,Oe,[h(`strong`,null,r(e.name),1),h(`div`,I,[h(`span`,null,r(u(v)(e.colorCount))+` رنگ`,1),h(`div`,ke,[(f(!0),c(s,null,p(e.colors,(t,n)=>(f(),c(`i`,{key:n,style:d(u(ve)(t,e.colorImages[n]))},null,4))),128))])])])],8,we))),128))]),Q.value.length?o(``,!0):(f(),c(`p`,Ae,`طرحی در این دسته نیست.`))],64))])]),!U.value&&H.value.length?(f(),c(`div`,je,[h(`button`,{type:`button`,class:`inquiry-bar`,disabled:G.value,onClick:We},[a(r(G.value?`در حال افزودن...`:`افزودن همه به سبد استعلام`)+` `,1),h(`small`,null,r(u(v)(Z.value.length))+` طرح انتخاب می‌شود`,1)],8,Me)])):o(``,!0),K.value?(f(),c(`p`,Ne,r(K.value),1)):o(``,!0)]))}}),[[`__scopeId`,`data-v-335c617e`]]);export{L as default}; \ No newline at end of file diff --git a/dist/assets/CatalogListView-1JVmwn4V.css b/dist/assets/CatalogListView-1JVmwn4V.css new file mode 100644 index 0000000..2a671b9 --- /dev/null +++ b/dist/assets/CatalogListView-1JVmwn4V.css @@ -0,0 +1 @@ +.catalog-list-page[data-v-8ff0b61d]{background:var(--color-bg);color:var(--color-text);padding:12px 0 0}.catalog-list-page__desk-head[data-v-8ff0b61d]{margin-bottom:16px}.catalog-list-page__desk-head h1[data-v-8ff0b61d]{margin:0 0 6px;font-size:1.375rem;font-weight:700}.catalog-list-page__desk-head p[data-v-8ff0b61d]{color:var(--color-text-muted);margin:0;font-size:.875rem}.catalog-list-page__search[data-v-8ff0b61d]{margin-bottom:16px}.catalog-list-page__scroll[data-v-8ff0b61d]{flex-direction:column;flex:1;min-height:0;display:flex}.catalog-list[data-v-8ff0b61d]{flex-direction:column;gap:12px;display:flex}.catalog-card[data-v-8ff0b61d]{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-elevated);width:100%;box-shadow:var(--shadow-sm);color:var(--color-text);text-align:right;cursor:pointer;align-items:center;gap:12px;padding:14px 16px;font-family:inherit;display:flex}.catalog-card[data-v-8ff0b61d]:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md)}.catalog-card__icon[data-v-8ff0b61d]{background:var(--color-primary-light);border-radius:var(--radius-sm);width:40px;height:40px;color:var(--color-primary);flex-shrink:0;justify-content:center;align-items:center;display:flex}.catalog-card__info[data-v-8ff0b61d]{flex:1;min-width:0}.catalog-card__info h3[data-v-8ff0b61d]{color:var(--color-text);margin:0 0 4px;font-size:.9375rem}.catalog-card__info p[data-v-8ff0b61d]{color:var(--color-text-muted);margin:0;font-size:.8125rem}.catalog-card__count[data-v-8ff0b61d]{color:var(--color-primary);flex-shrink:0;font-size:.8125rem;font-weight:600}@media (width>=768px){.catalog-list-page[data-v-8ff0b61d]{background:0 0;padding:8px 0 28px}.catalog-list-page__scroll[data-v-8ff0b61d]{overflow:visible}.catalog-list[data-v-8ff0b61d]{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.catalog-card[data-v-8ff0b61d]{flex-direction:column;align-items:flex-start;min-height:148px;padding:20px}} diff --git a/dist/assets/CatalogListView-B7OmS9fn.js b/dist/assets/CatalogListView-B7OmS9fn.js deleted file mode 100644 index f1fe6f4..0000000 --- a/dist/assets/CatalogListView-B7OmS9fn.js +++ /dev/null @@ -1 +0,0 @@ -import{A as e,Et as t,M as n,O as r,P as i,R as a,St as o,Y as s,Z as c,_ as l,g as u,j as d,mt as f,n as p,q as m,tt as h,z as g}from"./BasicIcon-C6boaehV.js";import{t as _}from"./catalog-s7nVUdlj.js";import{b as v}from"./index-fdhs4HNc.js";import{t as y}from"./EmptyState-C_QQeA_h.js";import{t as b}from"./PageSkeleton-sKuEY4NI.js";import{t as x}from"./PageHeader-Cd04Z6F_.js";import{t as S}from"./SearchField-CRmbblW7.js";var C={class:`page catalog-list-page`},w={class:`catalog-list-page__desk-head desktop-only`},T={class:`page__scroll page__scroll--with-nav catalog-list-page__scroll`},E={key:1,class:`catalog-list`},D=[`onClick`],O={class:`catalog-card__icon`},k={class:`catalog-card__info`},A={class:`catalog-card__count`},j=p(g({__name:`CatalogListView`,setup(p){let g=u(),j=l(),M=_(),N=f(!0),P=e(()=>g.params.companyId),F=e(()=>M.getCompany(P.value)),I=f(``),L=e(()=>M.fetchCatalogs(P.value,I.value));async function R(){N.value=!0,M.getCompany(P.value)||await M.loadCompanies(),await M.loadCatalogs(P.value),N.value=!1}m(R),h(P,R);function z(e){j.push({name:`catalog-detail`,params:{catalogId:e}})}function B(e){let t=M.getCatalog(e);return t?.productCount==null?M.fetchProducts(e).length:t.productCount}return(e,l)=>(s(),i(`div`,C,[a(x,{class:`mobile-only`,title:F.value?.name??`کالیته‌ها`,subtitle:`کالیته مورد نظر را انتخاب کنید`,"show-back":``,centered:``,onBack:l[0]||=e=>o(j).push(`/companies`)},null,8,[`title`]),d(`header`,w,[d(`h1`,null,t(F.value?.name??`کالیته‌ها`),1),l[2]||=d(`p`,null,`کالیته مورد نظر را انتخاب کنید`,-1)]),a(S,{modelValue:I.value,"onUpdate:modelValue":l[1]||=e=>I.value=e,placeholder:`جستجو بر اساس کد یا نام کالیته...`,class:`catalog-list-page__search`},null,8,[`modelValue`]),d(`div`,T,[N.value?(s(),n(b,{key:0,variant:`cards`,rows:5})):L.value.length>0?(s(),i(`div`,E,[(s(!0),i(r,null,c(L.value,e=>(s(),i(`button`,{key:e.id,type:`button`,class:`catalog-card`,onClick:t=>z(e.id)},[d(`span`,O,[a(v,{size:22})]),d(`div`,k,[d(`h3`,null,`کالیته کد `+t(e.code),1),d(`p`,null,t(e.name),1)]),d(`span`,A,t(B(e.id))+` محصول`,1)],8,D))),128))])):(s(),n(y,{key:2,variant:I.value?`search`:`catalogs`,message:I.value?`با این جستجو کالیته‌ای پیدا نشد`:`برای این شرکت هنوز کالیته‌ای ثبت نشده است`},null,8,[`variant`,`message`]))])]))}}),[[`__scopeId`,`data-v-53c183e1`]]);export{j as default}; \ No newline at end of file diff --git a/dist/assets/CatalogListView-BKPppl-b.js b/dist/assets/CatalogListView-BKPppl-b.js new file mode 100644 index 0000000..44593d4 --- /dev/null +++ b/dist/assets/CatalogListView-BKPppl-b.js @@ -0,0 +1 @@ +import{A as e,Ct as t,Dt as n,J as r,M as i,O as a,P as o,Q as s,R as c,X as l,_ as u,g as d,ht as f,j as p,n as m,nt as h,z as g}from"./BasicIcon-Bnxm-DKk.js";import{t as _}from"./catalog-B2Z_WZGF.js";import{T as v}from"./index-DB4cQnln.js";import{t as y}from"./EmptyState-CsuH56HV.js";import{t as b}from"./PageSkeleton-CpZ7eT1v.js";import{t as x}from"./PageHeader-BxTTQB_F.js";import{t as S}from"./SearchField-CGW0jRdh.js";var C={class:`page catalog-list-page`},w={class:`catalog-list-page__desk-head desktop-only`},T={class:`page__scroll page__scroll--with-nav catalog-list-page__scroll`},E={key:1,class:`catalog-list`},D=[`onClick`],O={class:`catalog-card__icon`},k={class:`catalog-card__info`},A={class:`catalog-card__count`},j=m(g({__name:`CatalogListView`,setup(m){let g=d(),j=u(),M=_(),N=f(!0),P=e(()=>g.params.companyId),F=e(()=>M.getCompany(P.value)),I=f(``),L=e(()=>M.fetchCatalogs(P.value,I.value));async function R(){N.value=!0,M.getCompany(P.value)||await M.loadCompanies(),await M.loadCatalogs(P.value),N.value=!1}r(R),h(P,R);function z(e){j.push({name:`catalog-detail`,params:{catalogId:e}})}function B(e){let t=M.getCatalog(e);return t?.productCount==null?M.fetchProducts(e).length:t.productCount}return(e,r)=>(l(),o(`div`,C,[c(x,{class:`mobile-only`,title:F.value?.name??`کالیته‌ها`,subtitle:`کالیته مورد نظر را انتخاب کنید`,"show-back":``,centered:``,onBack:r[0]||=e=>t(j).push(`/catalogs`)},null,8,[`title`]),p(`header`,w,[p(`h1`,null,n(F.value?.name??`کالیته‌ها`),1),r[2]||=p(`p`,null,`کالیته مورد نظر را انتخاب کنید`,-1)]),c(S,{modelValue:I.value,"onUpdate:modelValue":r[1]||=e=>I.value=e,placeholder:`جستجو بر اساس کد یا نام کالیته...`,class:`catalog-list-page__search`},null,8,[`modelValue`]),p(`div`,T,[N.value?(l(),i(b,{key:0,variant:`cards`,rows:5})):L.value.length>0?(l(),o(`div`,E,[(l(!0),o(a,null,s(L.value,e=>(l(),o(`button`,{key:e.id,type:`button`,class:`catalog-card`,onClick:t=>z(e.id)},[p(`span`,O,[c(v,{size:22})]),p(`div`,k,[p(`h3`,null,`کالیته کد `+n(e.code),1),p(`p`,null,n(e.name),1)]),p(`span`,A,n(B(e.id))+` محصول`,1)],8,D))),128))])):(l(),i(y,{key:2,variant:I.value?`search`:`catalogs`,message:I.value?`با این جستجو کالیته‌ای پیدا نشد`:`برای این شرکت هنوز کالیته‌ای ثبت نشده است`},null,8,[`variant`,`message`]))])]))}}),[[`__scopeId`,`data-v-8ff0b61d`]]);export{j as default}; \ No newline at end of file diff --git a/dist/assets/CatalogListView-ClQNdMb8.css b/dist/assets/CatalogListView-ClQNdMb8.css deleted file mode 100644 index 7621349..0000000 --- a/dist/assets/CatalogListView-ClQNdMb8.css +++ /dev/null @@ -1 +0,0 @@ -.catalog-list-page[data-v-53c183e1]{background:var(--color-bg);color:var(--color-text);padding:12px 0 0}.catalog-list-page__desk-head[data-v-53c183e1]{margin-bottom:16px}.catalog-list-page__desk-head h1[data-v-53c183e1]{margin:0 0 6px;font-size:1.375rem;font-weight:700}.catalog-list-page__desk-head p[data-v-53c183e1]{color:var(--color-text-muted);margin:0;font-size:.875rem}.catalog-list-page__search[data-v-53c183e1]{margin-bottom:16px}.catalog-list-page__scroll[data-v-53c183e1]{flex-direction:column;flex:1;min-height:0;display:flex}.catalog-list[data-v-53c183e1]{flex-direction:column;gap:12px;display:flex}.catalog-card[data-v-53c183e1]{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-elevated);width:100%;box-shadow:var(--shadow-sm);color:var(--color-text);text-align:right;cursor:pointer;align-items:center;gap:12px;padding:14px 16px;font-family:inherit;display:flex}.catalog-card[data-v-53c183e1]:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md)}.catalog-card__icon[data-v-53c183e1]{background:var(--color-primary-light);border-radius:var(--radius-sm);width:40px;height:40px;color:var(--color-primary);flex-shrink:0;justify-content:center;align-items:center;display:flex}.catalog-card__info[data-v-53c183e1]{flex:1;min-width:0}.catalog-card__info h3[data-v-53c183e1]{color:var(--color-text);margin:0 0 4px;font-size:.9375rem}.catalog-card__info p[data-v-53c183e1]{color:var(--color-text-muted);margin:0;font-size:.8125rem}.catalog-card__count[data-v-53c183e1]{color:var(--color-primary);flex-shrink:0;font-size:.8125rem;font-weight:600}@media (width>=768px){.catalog-list-page[data-v-53c183e1]{background:0 0;padding:8px 0 28px}.catalog-list-page__scroll[data-v-53c183e1]{overflow:visible}.catalog-list[data-v-53c183e1]{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.catalog-card[data-v-53c183e1]{flex-direction:column;align-items:flex-start;min-height:148px;padding:20px}} diff --git a/dist/assets/CatalogRequestView--XiSD0Pv.css b/dist/assets/CatalogRequestView--XiSD0Pv.css new file mode 100644 index 0000000..c9442f4 --- /dev/null +++ b/dist/assets/CatalogRequestView--XiSD0Pv.css @@ -0,0 +1 @@ +.body[data-v-66b25432]{padding:12px var(--page-padding) 24px;flex-direction:column;gap:10px;display:flex}.hint[data-v-66b25432]{color:var(--color-text-muted);margin:0;font-size:.85rem}.error[data-v-66b25432]{color:#b42318}.row[data-v-66b25432]{background:var(--color-surface);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex}.row--selected[data-v-66b25432]{outline:2px solid var(--color-primary)}.row strong[data-v-66b25432]{font-size:.9rem;display:block}.row span[data-v-66b25432]{color:var(--color-text-muted);font-size:.78rem}.qty[data-v-66b25432]{border:1px solid var(--color-border);text-align:center;width:64px;height:40px;font:inherit;color:var(--color-text);border-radius:10px}.note[data-v-66b25432]{color:var(--color-text-muted);flex-direction:column;gap:6px;font-size:.85rem;display:flex}.note textarea[data-v-66b25432]{border:1px solid var(--color-border);font:inherit;resize:vertical;color:var(--color-text);border-radius:12px;padding:10px 12px}.summary[data-v-66b25432]{color:var(--color-text-muted);margin:4px 0 0;font-size:.85rem}.submit[data-v-66b25432]{background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:12px;min-height:48px;font-weight:700}.submit[data-v-66b25432]:disabled{opacity:.7}.linkish[data-v-66b25432]{color:var(--color-primary);cursor:pointer;background:0 0;border:none;padding:8px;font-weight:700}.request-layout[data-v-66b25432]{flex-direction:column;gap:10px;display:flex}.request-sidebar[data-v-66b25432]{display:none}.request-mobile-footer[data-v-66b25432]{flex-direction:column;gap:10px;display:flex}@media (width>=768px){.catalog-request-page[data-v-66b25432]{max-width:var(--content-max-width);padding:20px var(--page-padding) 28px;box-sizing:border-box;margin-inline:auto}.body[data-v-66b25432]{padding:0}.request-layout[data-v-66b25432]{grid-template-columns:minmax(0,1fr) minmax(280px,340px);align-items:start;gap:20px;display:grid}.request-sidebar[data-v-66b25432]{flex-direction:column;gap:12px;display:flex;position:sticky;top:16px}.request-sidebar .submit[data-v-66b25432]{margin-top:4px}.request-mobile-footer[data-v-66b25432]{display:none}.row[data-v-66b25432]{box-shadow:var(--shadow-card);border:1px solid var(--color-border)}} diff --git a/dist/assets/CatalogRequestView-BQv6HkdJ.js b/dist/assets/CatalogRequestView-BQv6HkdJ.js deleted file mode 100644 index bb192ae..0000000 --- a/dist/assets/CatalogRequestView-BQv6HkdJ.js +++ /dev/null @@ -1 +0,0 @@ -import{A as e,Ct as t,Et as n,L as r,M as i,O as a,P as o,R as s,St as c,Y as l,Z as u,_ as d,g as f,it as p,j as m,mt as h,n as g,q as _,w as v,z as y}from"./BasicIcon-C6boaehV.js";import{o as b}from"./format-BHJptHdF.js";import{t as x}from"./PageSkeleton-sKuEY4NI.js";import{t as S}from"./crm-DmqasSZ_.js";import{t as C}from"./PageHeader-Cd04Z6F_.js";import{t as w}from"./catalogRequests-D1kBtGqL.js";var T={class:`page`},E={class:`page__scroll page__scroll--with-nav body`},D={class:`hint`},O={key:1,class:`error`},k=[`value`,`onInput`],A={class:`note`},j={class:`summary`},M=[`disabled`],N=g(y({__name:`CatalogRequestView`,setup(g){let y=f(),N=d(),P=S(),F=w(),I=h(!0),L=h(!1),R=h(null),z=h(``),B=h([]),V=h({}),H=e(()=>String(y.query.productId??``)),U=e(()=>String(y.query.catalogId??``)),W=e(()=>B.value.filter(e=>(V.value[e.id]??0)>0).map(e=>({productId:e.id,productName:e.name,productCode:e.code,quantity:V.value[e.id]??0})));_(async()=>{I.value=!0,R.value=null;try{let e=await P.loadBrowseProducts(U.value?{catalogId:U.value}:void 0),t=H.value;B.value=t?[...e].sort((e,n)=>Number(n.id===t)-Number(e.id===t)):e,t&&(V.value={...V.value,[t]:1})}catch(e){R.value=e instanceof Error?e.message:`بارگذاری محصولات ناموفق بود.`}finally{I.value=!1}});function G(e,t){V.value={...V.value,[e]:Math.max(0,Math.floor(t)||0)}}async function K(){L.value=!0,R.value=null;try{let e=await F.create({items:W.value,note:z.value});if(!e.success){R.value=e.message;return}N.push(`/catalog-requests`)}finally{L.value=!1}}return(e,d)=>(l(),o(`div`,T,[s(C,{title:`درخواست کالیته`,"show-back":``,centered:``,onBack:d[0]||=e=>c(N).back()}),m(`div`,E,[m(`p`,D,n(H.value?`این محصول برای درخواست کالیته انتخاب شده است. در صورت نیاز اقلام دیگر را هم اضافه کنید.`:`محصولات و تعداد اقلام موردنظر را مشخص کنید.`),1),I.value?(l(),i(x,{key:0,variant:`form`})):R.value?(l(),o(`p`,O,n(R.value),1)):(l(),o(a,{key:2},[(l(!0),o(a,null,u(B.value,e=>(l(),o(`article`,{key:e.id,class:t([`row`,{"row--selected":H.value===e.id}])},[m(`div`,null,[m(`strong`,null,n(e.name),1),m(`span`,null,`کد `+n(e.code),1)]),m(`input`,{class:`qty`,type:`number`,min:`0`,value:V.value[e.id]??0,onInput:t=>G(e.id,Number(t.target.value))},null,40,k)],2))),128)),m(`label`,A,[d[3]||=r(` توضیحات `,-1),p(m(`textarea`,{"onUpdate:modelValue":d[1]||=e=>z.value=e,rows:`3`,placeholder:`آدرس یا توضیحات اختیاری`},null,512),[[v,z.value]])]),m(`p`,j,`اقلام انتخاب‌شده: `+n(c(b)(W.value.length)),1),m(`button`,{type:`button`,class:`submit`,disabled:L.value,onClick:K},n(L.value?`در حال ثبت...`:`ثبت درخواست کالیته`),9,M),m(`button`,{type:`button`,class:`linkish`,onClick:d[2]||=e=>c(N).push(`/catalog-requests`)},` وضعیت درخواست‌های قبلی `)],64))])]))}}),[[`__scopeId`,`data-v-389e0022`]]);export{N as default}; \ No newline at end of file diff --git a/dist/assets/CatalogRequestView-CYRKO3rB.css b/dist/assets/CatalogRequestView-CYRKO3rB.css deleted file mode 100644 index ba68609..0000000 --- a/dist/assets/CatalogRequestView-CYRKO3rB.css +++ /dev/null @@ -1 +0,0 @@ -.body[data-v-389e0022]{padding:12px var(--page-padding) 24px;flex-direction:column;gap:10px;display:flex}.hint[data-v-389e0022]{color:var(--color-text-muted);margin:0;font-size:.85rem}.error[data-v-389e0022]{color:#b42318}.row[data-v-389e0022]{background:var(--color-surface);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex}.row--selected[data-v-389e0022]{outline:2px solid var(--color-primary)}.row strong[data-v-389e0022]{font-size:.9rem;display:block}.row span[data-v-389e0022]{color:var(--color-text-muted);font-size:.78rem}.qty[data-v-389e0022]{border:1px solid var(--color-border);text-align:center;width:64px;height:40px;font:inherit;color:var(--color-text);border-radius:10px}.note[data-v-389e0022]{color:var(--color-text-muted);flex-direction:column;gap:6px;font-size:.85rem;display:flex}.note textarea[data-v-389e0022]{border:1px solid var(--color-border);font:inherit;resize:vertical;color:var(--color-text);border-radius:12px;padding:10px 12px}.summary[data-v-389e0022]{color:var(--color-text-muted);margin:4px 0 0;font-size:.85rem}.submit[data-v-389e0022]{background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:12px;min-height:48px;font-weight:700}.submit[data-v-389e0022]:disabled{opacity:.7}.linkish[data-v-389e0022]{color:var(--color-primary);cursor:pointer;background:0 0;border:none;padding:8px;font-weight:700} diff --git a/dist/assets/CatalogRequestView-CbekVMOP.js b/dist/assets/CatalogRequestView-CbekVMOP.js new file mode 100644 index 0000000..ba45f25 --- /dev/null +++ b/dist/assets/CatalogRequestView-CbekVMOP.js @@ -0,0 +1 @@ +import{A as e,Ct as t,Dt as n,J as r,L as i,M as a,O as o,P as s,Q as c,R as l,X as u,_ as d,at as f,g as p,ht as m,j as h,n as g,w as _,wt as v,z as y}from"./BasicIcon-Bnxm-DKk.js";import{o as b}from"./format-C72AoJ2H.js";import{t as x}from"./PageSkeleton-CpZ7eT1v.js";import{t as S}from"./crm-CZ7XH3z9.js";import{t as C}from"./PageHeader-BxTTQB_F.js";import{t as w}from"./catalogRequests-CHkUMFJx.js";var T={class:`page catalog-request-page`},E={class:`page__scroll page__scroll--with-nav body`},D={class:`hint`},O={key:1,class:`error`},k={class:`request-layout`},A={class:`request-products`},j=[`value`,`onInput`],M={class:`request-sidebar desktop-summary-panel`},N={class:`desktop-summary-panel__row`},P={class:`note`},F=[`disabled`],I={class:`request-mobile-footer mobile-only`},L={class:`note`},R={class:`summary`},z=[`disabled`],B=g(y({__name:`CatalogRequestView`,setup(g){let y=p(),B=d(),V=S(),H=w(),U=m(!0),W=m(!1),G=m(null),K=m(``),q=m([]),J=m({}),Y=e(()=>String(y.query.productId??``)),X=e(()=>String(y.query.catalogId??``)),Z=e(()=>q.value.filter(e=>(J.value[e.id]??0)>0).map(e=>({productId:e.id,productName:e.name,productCode:e.code,quantity:J.value[e.id]??0})));r(async()=>{U.value=!0,G.value=null;try{let e=await V.loadBrowseProducts(X.value?{catalogId:X.value}:void 0),t=Y.value;q.value=t?[...e].sort((e,n)=>Number(n.id===t)-Number(e.id===t)):e,t&&(J.value={...J.value,[t]:1})}catch(e){G.value=e instanceof Error?e.message:`بارگذاری محصولات ناموفق بود.`}finally{U.value=!1}});function Q(e,t){J.value={...J.value,[e]:Math.max(0,Math.floor(t)||0)}}async function $(){W.value=!0,G.value=null;try{let e=await H.create({items:Z.value,note:K.value});if(!e.success){G.value=e.message;return}B.push(`/catalog-requests`)}finally{W.value=!1}}return(e,r)=>(u(),s(`div`,T,[l(C,{class:`mobile-only`,title:`درخواست کالیته`,"show-back":``,centered:``,onBack:r[0]||=e=>t(B).back()}),r[9]||=h(`header`,{class:`desktop-page__head desktop-only`},[h(`h1`,{class:`desktop-page__title`},`درخواست کالیته`),h(`p`,{class:`desktop-page__subtitle`},`محصولات و تعداد اقلام موردنظر را مشخص کنید`)],-1),h(`div`,E,[h(`p`,D,n(Y.value?`این محصول برای درخواست کالیته انتخاب شده است. در صورت نیاز اقلام دیگر را هم اضافه کنید.`:`محصولات و تعداد اقلام موردنظر را مشخص کنید.`),1),U.value?(u(),a(x,{key:0,variant:`form`})):G.value?(u(),s(`p`,O,n(G.value),1)):(u(),s(o,{key:2},[h(`div`,k,[h(`div`,A,[(u(!0),s(o,null,c(q.value,e=>(u(),s(`article`,{key:e.id,class:v([`row`,{"row--selected":Y.value===e.id}])},[h(`div`,null,[h(`strong`,null,n(e.name),1),h(`span`,null,`کد `+n(e.code),1)]),h(`input`,{class:`qty`,type:`number`,min:`0`,value:J.value[e.id]??0,onInput:t=>Q(e.id,Number(t.target.value))},null,40,j)],2))),128))]),h(`aside`,M,[r[7]||=h(`h2`,{class:`desktop-summary-panel__title`},`خلاصه درخواست`,-1),h(`div`,N,[r[5]||=h(`span`,null,`اقلام انتخاب‌شده`,-1),h(`strong`,null,n(t(b)(Z.value.length)),1)]),h(`label`,P,[r[6]||=i(` توضیحات `,-1),f(h(`textarea`,{"onUpdate:modelValue":r[1]||=e=>K.value=e,rows:`3`,placeholder:`آدرس یا توضیحات اختیاری`},null,512),[[_,K.value]])]),h(`button`,{type:`button`,class:`submit`,disabled:W.value,onClick:$},n(W.value?`در حال ثبت...`:`ثبت درخواست کالیته`),9,F),h(`button`,{type:`button`,class:`linkish`,onClick:r[2]||=e=>t(B).push(`/catalog-requests`)},` وضعیت درخواست‌های قبلی `)])]),h(`div`,I,[h(`label`,L,[r[8]||=i(` توضیحات `,-1),f(h(`textarea`,{"onUpdate:modelValue":r[3]||=e=>K.value=e,rows:`3`,placeholder:`آدرس یا توضیحات اختیاری`},null,512),[[_,K.value]])]),h(`p`,R,`اقلام انتخاب‌شده: `+n(t(b)(Z.value.length)),1),h(`button`,{type:`button`,class:`submit`,disabled:W.value,onClick:$},n(W.value?`در حال ثبت...`:`ثبت درخواست کالیته`),9,z),h(`button`,{type:`button`,class:`linkish`,onClick:r[4]||=e=>t(B).push(`/catalog-requests`)},` وضعیت درخواست‌های قبلی `)])],64))])]))}}),[[`__scopeId`,`data-v-66b25432`]]);export{B as default}; \ No newline at end of file diff --git a/dist/assets/CatalogRequestsView--TWbJobZ.js b/dist/assets/CatalogRequestsView--TWbJobZ.js new file mode 100644 index 0000000..8738697 --- /dev/null +++ b/dist/assets/CatalogRequestsView--TWbJobZ.js @@ -0,0 +1 @@ +import{Ct as e,Dt as t,J as n,N as r,O as i,P as a,Q as o,R as s,X as c,_ as l,j as u,n as d,z as f}from"./BasicIcon-Bnxm-DKk.js";import{o as p}from"./format-C72AoJ2H.js";import{t as m}from"./PageHeader-BxTTQB_F.js";import{t as h}from"./catalogRequests-CHkUMFJx.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=d(f({__name:`CatalogRequestsView`,setup(d){let f=l(),C=h();return n(()=>C.hydrate()),(n,l)=>(c(),a(`div`,g,[s(m,{class:`mobile-only`,title:`وضعیت کالیته‌ها`,"show-back":``,centered:``,onBack:l[0]||=t=>e(f).push(`/catalogs`)}),u(`header`,_,[l[4]||=u(`div`,null,[u(`h1`,{class:`desktop-page__title`},`وضعیت کالیته‌ها`),u(`p`,{class:`desktop-page__subtitle`},`پیگیری درخواست‌های کالیته ثبت‌شده`)],-1),u(`button`,{type:`button`,class:`desk-new-btn`,onClick:l[1]||=t=>e(f).push(`/catalog-request`)},` درخواست کالیته جدید `)]),u(`div`,v,[u(`button`,{type:`button`,class:`new-btn mobile-only`,onClick:l[2]||=t=>e(f).push(`/catalog-request`)},` درخواست کالیته جدید `),u(`button`,{type:`button`,class:`new-btn`,onClick:l[3]||=t=>e(f).push(`/catalog-request`)},` درخواست کالیته جدید `),e(C).sorted.length?r(``,!0):(c(),a(`p`,y,`هنوز درخواستی ثبت نکرده‌اید.`)),(c(!0),a(i,null,o(e(C).sorted,n=>(c(),a(`article`,{key:n.id,class:`card`},[u(`div`,b,[u(`strong`,null,`درخواست `+t(n.id.slice(-6)),1),u(`span`,x,t(e(C).statusLabel(n.status)),1)]),u(`p`,null,t(n.createdAt.slice(0,10)),1),u(`p`,null,t(e(p)(n.items.length))+` قلم`,1),u(`ul`,null,[(c(!0),a(i,null,o(n.items,n=>(c(),a(`li`,{key:n.productId},t(n.productName)+` × `+t(e(p)(n.quantity)),1))),128))]),n.note?(c(),a(`p`,S,t(n.note),1)):r(``,!0)]))),128))])]))}}),[[`__scopeId`,`data-v-d65eb24a`]]);export{C as default}; \ No newline at end of file diff --git a/dist/assets/CatalogRequestsView-BMwSCi02.js b/dist/assets/CatalogRequestsView-BMwSCi02.js deleted file mode 100644 index bc2d12d..0000000 --- a/dist/assets/CatalogRequestsView-BMwSCi02.js +++ /dev/null @@ -1 +0,0 @@ -import{Et as e,N as t,O as n,P as r,R as i,St as a,Y as o,Z as s,_ as c,j as l,n as u,q as d,z as f}from"./BasicIcon-C6boaehV.js";import{o as p}from"./format-BHJptHdF.js";import{t as m}from"./PageHeader-Cd04Z6F_.js";import{t as h}from"./catalogRequests-D1kBtGqL.js";var g={class:`page`},_={class:`page__scroll page__scroll--with-nav body`},v={key:0,class:`empty`},y={class:`card__top`},b={class:`badge`},x={key:0,class:`note`},S=u(f({__name:`CatalogRequestsView`,setup(u){let f=c(),S=h();return d(()=>S.hydrate()),(c,u)=>(o(),r(`div`,g,[i(m,{title:`وضعیت کالیته‌ها`,"show-back":``,centered:``,onBack:u[0]||=e=>a(f).push(`/catalogs`)}),l(`div`,_,[l(`button`,{type:`button`,class:`new-btn`,onClick:u[1]||=e=>a(f).push(`/catalog-request`)},` درخواست کالیته جدید `),a(S).sorted.length?t(``,!0):(o(),r(`p`,v,`هنوز درخواستی ثبت نکرده‌اید.`)),(o(!0),r(n,null,s(a(S).sorted,i=>(o(),r(`article`,{key:i.id,class:`card`},[l(`div`,y,[l(`strong`,null,`درخواست `+e(i.id.slice(-6)),1),l(`span`,b,e(a(S).statusLabel(i.status)),1)]),l(`p`,null,e(i.createdAt.slice(0,10)),1),l(`p`,null,e(a(p)(i.items.length))+` قلم`,1),l(`ul`,null,[(o(!0),r(n,null,s(i.items,t=>(o(),r(`li`,{key:t.productId},e(t.productName)+` × `+e(a(p)(t.quantity)),1))),128))]),i.note?(o(),r(`p`,x,e(i.note),1)):t(``,!0)]))),128))])]))}}),[[`__scopeId`,`data-v-fc04181d`]]);export{S as default}; \ No newline at end of file diff --git a/dist/assets/CatalogRequestsView-DSkjUp3f.css b/dist/assets/CatalogRequestsView-DSkjUp3f.css new file mode 100644 index 0000000..f8f8044 --- /dev/null +++ b/dist/assets/CatalogRequestsView-DSkjUp3f.css @@ -0,0 +1 @@ +.body[data-v-d65eb24a]{padding:12px var(--page-padding) 24px;flex-direction:column;gap:10px;display:flex}.new-btn[data-v-d65eb24a]{background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:12px;min-height:48px;font-weight:700}.empty[data-v-d65eb24a]{text-align:center;color:var(--color-text-muted)}.card[data-v-d65eb24a]{background:var(--color-surface);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:14px}.card__top[data-v-d65eb24a]{justify-content:space-between;align-items:center;gap:8px;display:flex}.badge[data-v-d65eb24a]{background:var(--color-primary-soft);color:var(--color-primary);border-radius:999px;padding:4px 10px;font-size:.72rem;font-weight:700}.card p[data-v-d65eb24a]{color:var(--color-text-muted);margin:6px 0 0;font-size:.82rem}.card ul[data-v-d65eb24a]{margin:8px 0 0;padding-inline-start:18px;font-size:.85rem}.note[data-v-d65eb24a]{color:var(--color-text)!important}.catalog-requests-desk-head[data-v-d65eb24a]{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.desk-new-btn[data-v-d65eb24a]{background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:12px;flex-shrink:0;padding:10px 16px;font-family:inherit;font-size:.875rem;font-weight:700}@media (width>=768px){.catalog-requests-page[data-v-d65eb24a]{max-width:var(--content-max-width);padding:20px var(--page-padding) 28px;box-sizing:border-box;margin-inline:auto}.body[data-v-d65eb24a]{grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:12px;padding:0;display:grid}.empty[data-v-d65eb24a]{grid-column:1/-1;padding:48px 0}.card[data-v-d65eb24a]{box-shadow:var(--shadow-card);border:1px solid var(--color-border)}}@media (width>=1200px){.body[data-v-d65eb24a]{grid-template-columns:repeat(3,minmax(0,1fr))}} diff --git a/dist/assets/CatalogRequestsView-DUzaL-Pf.css b/dist/assets/CatalogRequestsView-DUzaL-Pf.css deleted file mode 100644 index aa3e17f..0000000 --- a/dist/assets/CatalogRequestsView-DUzaL-Pf.css +++ /dev/null @@ -1 +0,0 @@ -.body[data-v-fc04181d]{padding:12px var(--page-padding) 24px;flex-direction:column;gap:10px;display:flex}.new-btn[data-v-fc04181d]{background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:12px;min-height:48px;font-weight:700}.empty[data-v-fc04181d]{text-align:center;color:var(--color-text-muted)}.card[data-v-fc04181d]{background:var(--color-surface);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:14px}.card__top[data-v-fc04181d]{justify-content:space-between;align-items:center;gap:8px;display:flex}.badge[data-v-fc04181d]{background:var(--color-primary-soft);color:var(--color-primary);border-radius:999px;padding:4px 10px;font-size:.72rem;font-weight:700}.card p[data-v-fc04181d]{color:var(--color-text-muted);margin:6px 0 0;font-size:.82rem}.card ul[data-v-fc04181d]{margin:8px 0 0;padding-inline-start:18px;font-size:.85rem}.note[data-v-fc04181d]{color:var(--color-text)!important} diff --git a/dist/assets/CatalogsHubView-CHO1oP_S.js b/dist/assets/CatalogsHubView-CHO1oP_S.js new file mode 100644 index 0000000..1d423dd --- /dev/null +++ b/dist/assets/CatalogsHubView-CHO1oP_S.js @@ -0,0 +1 @@ +import{A as e,Ct as t,Dt as n,Et as r,J as i,M as a,N as o,O as s,P as c,Q as l,R as u,X as d,_ as f,g as p,ht as m,j as h,n as g,wt as _,z as v}from"./BasicIcon-Bnxm-DKk.js";import{o as y}from"./format-C72AoJ2H.js";import{t as b}from"./catalog-B2Z_WZGF.js";import{i as x}from"./index-DB4cQnln.js";import{t as ee}from"./IconChevronBack-DguSlPDK.js";import{t as te}from"./PageSkeleton-CpZ7eT1v.js";import{t as S}from"./crm-CZ7XH3z9.js";import{t as C}from"./useGoBack-Ds4z3swU.js";import{a as w,c as T,t as E}from"./caliteCollections-CooWZH--.js";import{t as D}from"./SearchField-CGW0jRdh.js";import{t as O}from"./IconSearch-D5bVmUdX.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`],ne={key:0,class:`calite-card__badge`},R={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=g(v({__name:`CatalogsHubView`,setup(g){let v=p(),U=f(),{goBack:W}=C(`/`),G=b(),K=S(),q=m([]),J=m([]),Y=m(!0),X=m(``),Z=m(null),Q=m(`all`),re=[{id:`all`,label:`همه`},{id:`newest`,label:`جدیدترین`},{id:`popular`,label:`محبوب‌ترین`},{id:`season`,label:`بر اساس فصل`}],ie=e(()=>{let e=w(q.value,J.value);return e.length?e:E}),$=e(()=>T(ie.value,Q.value,X.value));i(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(v.query.id??``);r&&q.value.some(e=>e.id===r)&&U.replace({name:`catalog-detail`,params:{catalogId:r}})}catch{q.value=[]}finally{Y.value=!1}});function ae(e){U.push({name:`catalog-detail`,params:{catalogId:e}})}function oe(){Z.value?.focus()}function se(e){let t=e.season===`winter`?`مناسب زمستان`:e.season===`summer`?`مناسب تابستان`:`مناسب چهار فصل`;return`${y(e.patternCount)} طرح • ${t}`}return(e,i)=>(d(),c(`div`,k,[h(`header`,A,[h(`button`,{type:`button`,class:`icon-btn mobile-only`,"aria-label":`بازگشت`,onClick:i[0]||=(...e)=>t(W)&&t(W)(...e)},[u(ee,{size:20})]),i[2]||=h(`h1`,null,`کالیته‌ها`,-1),h(`div`,j,[u(x,{variant:`inline`,class:`mobile-only`}),h(`button`,{type:`button`,class:`icon-btn mobile-only`,"aria-label":`جستجو`,onClick:oe},[u(O,{size:20})])])]),h(`div`,M,[i[4]||=h(`p`,{class:`calite-hub__lead`},`مجموعه‌ای از بهترین پارچه‌ها، در یک نگاه`,-1),u(D,{ref_key:`searchFieldRef`,ref:Z,modelValue:X.value,"onUpdate:modelValue":i[1]||=e=>X.value=e,class:`calite-hub__search`,placeholder:`جستجوی نام کالیته...`},null,8,[`modelValue`]),h(`div`,N,[(d(),c(s,null,l(re,e=>h(`button`,{key:e.id,type:`button`,class:_([`calite-chip`,{"is-on":Q.value===e.id}]),onClick:t=>Q.value=e.id},n(e.label),11,P)),64))]),Y.value?(d(),a(te,{key:0,variant:`cards`,rows:4})):$.value.length?(d(),c(`div`,I,[(d(!0),c(s,null,l($.value,e=>(d(),c(`button`,{key:e.id,type:`button`,class:`calite-card`,dir:`ltr`,onClick:t=>ae(e.id)},[h(`span`,{class:`calite-card__photo`,style:r(e.imageUrl?{backgroundImage:`url(${e.imageUrl})`}:void 0)},null,4),e.badge?(d(),c(`span`,ne,n(e.badge===`new`?`جدید`:`پرفروش`),1)):o(``,!0),h(`div`,R,[i[3]||=h(`svg`,{class:`calite-card__arrow`,width:`12`,height:`16`,viewBox:`0 0 8 12`,fill:`none`,"aria-hidden":`true`},[h(`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),h(`div`,z,[h(`div`,B,n(e.title),1),h(`div`,V,n(e.subtitle),1),h(`div`,H,n(se(e)),1)])])],8,L))),128))])):(d(),c(`p`,F,`کالیته‌ای یافت نشد.`))])]))}}),[[`__scopeId`,`data-v-3dc7aa4f`]]);export{U as default}; \ No newline at end of file diff --git a/dist/assets/CatalogsHubView-Cnl22g6I.css b/dist/assets/CatalogsHubView-Cnl22g6I.css deleted file mode 100644 index fb89894..0000000 --- a/dist/assets/CatalogsHubView-Cnl22g6I.css +++ /dev/null @@ -1 +0,0 @@ -.calite-hub[data-v-a6e04708]{color:#2a2622;background:#f4f0ed}.calite-hub__nav[data-v-a6e04708]{background:#f4f0ed;grid-template-columns:40px 1fr auto;align-items:center;padding:6px 12px 0;display:grid}.calite-hub__nav-end[data-v-a6e04708]{align-items:center;display:flex}.calite-hub__nav h1[data-v-a6e04708]{text-align:center;margin:0;font-size:1.125rem;font-weight:700}.calite-hub__scroll[data-v-a6e04708]{flex-direction:column;gap:12px;padding:2px 16px 28px;display:flex}.calite-hub__lead[data-v-a6e04708]{text-align:center;color:#8a847c;margin:0;font-size:.78rem;line-height:1.7}.icon-btn[data-v-a6e04708]{width:40px;height:40px;color:inherit;cursor:pointer;background:0 0;border:none;place-items:center;display:grid}.calite-hub__chips[data-v-a6e04708]{scrollbar-width:none;gap:8px;padding:2px 0 4px;display:flex}.calite-hub__chips[data-v-a6e04708]::-webkit-scrollbar{display:none}.calite-chip[data-v-a6e04708]{color:#615f5c;height:36px;font:inherit;cursor:pointer;background:#eae6e2;border:1px solid #eae6e2;border-radius:999px;flex-shrink:0;padding:0 16px;font-size:.78rem;font-weight:600}.calite-chip.is-on[data-v-a6e04708]{border-color:var(--color-primary);background:var(--color-primary);color:#fff}.calite-hub__list[data-v-a6e04708]{flex-direction:column;gap:12px;display:flex}.calite-card[data-v-a6e04708]{cursor:pointer;text-align:start;color:#2c2824;background:#e7ddd4;border:none;border-radius:22px;width:100%;min-height:132px;padding:0;display:block;position:relative;overflow:hidden}.calite-card__photo[data-v-a6e04708]{z-index:0;background:linear-gradient(160deg,#c4b7a8,#8a7b6c) 50%/cover;position:absolute;inset:0}.calite-card__photo[data-v-a6e04708]:after{content:"";background:linear-gradient(90deg,#0000 28%,#e7ddd46b 58%,#e7ddd4e0 100%);position:absolute;inset:0}.calite-card__badge[data-v-a6e04708]{z-index:2;color:#000;background:#e7ddd4;border-radius:999px;padding:5px 12px;font-size:1rem;font-weight:500;line-height:1.2;position:absolute;top:12px;left:12px}.calite-card__copy[data-v-a6e04708]{z-index:1;align-items:center;gap:4px;min-height:132px;padding:16px 16px 16px 42%;display:flex;position:relative}.calite-card__copy strong[data-v-a6e04708]{color:#2c2824;font-size:1.0625rem;font-weight:700;line-height:1.4}.calite-card__sub[data-v-a6e04708]{color:#5c5752;justify-content:flex-start;align-items:center;gap:2px;display:flex}.calite-card__arrow[data-v-a6e04708]{flex-shrink:0;display:block}.calite-card__copy em[data-v-a6e04708]{color:#5c5752;font-size:.75rem;font-style:normal;font-weight:500;line-height:1.45}.calite-card__copy small[data-v-a6e04708]{color:#7a746c;font-size:.6875rem;font-weight:500;line-height:1.45}.calite-hub__empty[data-v-a6e04708]{text-align:center;color:#8a847c;margin:16px 0 0}html.dark .calite-hub[data-v-a6e04708],html.dark .calite-hub__nav[data-v-a6e04708]{color:#eef2f8;background:#0b0f14}html.dark .calite-hub__lead[data-v-a6e04708],html.dark .calite-hub__empty[data-v-a6e04708]{color:#9aa8bc}html.dark .calite-chip[data-v-a6e04708]{color:#c5d0de;background:#1a2230;border-color:#2a3444}html.dark .calite-chip.is-on[data-v-a6e04708]{color:#121821;background:#e8e4df;border-color:#e8e4df}html.dark .calite-card[data-v-a6e04708]{color:#eef2f8;background:#1a2230}html.dark .calite-card__photo[data-v-a6e04708]{background:linear-gradient(160deg,#3a4454,#151b24)}html.dark .calite-card__photo[data-v-a6e04708]:after{background:linear-gradient(90deg,#0000 22%,#0b0f146b 55%,#0b0f14e0 100%)}html.dark .calite-card__badge[data-v-a6e04708]{color:#121821;background:#e8e4df}html.dark .calite-card__copy strong[data-v-a6e04708],html.dark .calite-card__sub[data-v-a6e04708],html.dark .calite-card__copy em[data-v-a6e04708],html.dark .calite-card__copy small[data-v-a6e04708]{color:#eef2f8}html.dark .calite-card__copy small[data-v-a6e04708]{color:#c5d0de}@media (width>=768px){.calite-hub[data-v-a6e04708]{background:#f4f0ed;max-width:none;min-height:auto;margin:0;padding:0;overflow:visible}.calite-hub__scroll[data-v-a6e04708]{gap:16px;width:100%;max-width:1120px;margin-inline:auto;padding:8px 28px 40px}.calite-hub__nav[data-v-a6e04708]{grid-template-columns:1fr auto;width:100%;max-width:1120px;margin-inline:auto;padding:28px 28px 0}.calite-hub__nav h1[data-v-a6e04708]{text-align:start;font-size:1.5rem}.calite-hub__lead[data-v-a6e04708]{text-align:start;font-size:.9375rem}.calite-hub__chips[data-v-a6e04708]{flex-wrap:wrap}.calite-chip[data-v-a6e04708]{height:40px;padding:0 18px;font-size:.8125rem}.calite-hub__list[data-v-a6e04708]{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.calite-card[data-v-a6e04708],.calite-card__copy[data-v-a6e04708]{min-height:176px}.calite-card__copy[data-v-a6e04708]{padding:20px 20px 20px 38%}}@media (width>=1200px){.calite-hub__nav[data-v-a6e04708],.calite-hub__scroll[data-v-a6e04708]{padding-inline:40px}.calite-hub__scroll[data-v-a6e04708]{padding-bottom:48px}.calite-hub__list[data-v-a6e04708]{gap:20px}.calite-card[data-v-a6e04708],.calite-card__copy[data-v-a6e04708]{min-height:200px}} diff --git a/dist/assets/CatalogsHubView-CoPTnv3-.css b/dist/assets/CatalogsHubView-CoPTnv3-.css new file mode 100644 index 0000000..4eb6976 --- /dev/null +++ b/dist/assets/CatalogsHubView-CoPTnv3-.css @@ -0,0 +1 @@ +.calite-hub[data-v-3dc7aa4f]{background:var(--color-bg);color:var(--color-text)}.calite-hub__nav[data-v-3dc7aa4f]{background:var(--color-bg);grid-template-columns:40px 1fr auto;align-items:center;padding:6px 12px 0;display:grid}.calite-hub__nav-end[data-v-3dc7aa4f]{align-items:center;display:flex}.calite-hub__nav h1[data-v-3dc7aa4f]{text-align:center;margin:0;font-size:1.125rem;font-weight:700}.calite-hub__scroll[data-v-3dc7aa4f]{flex-direction:column;gap:12px;padding:2px 16px 28px;display:flex}.calite-hub__lead[data-v-3dc7aa4f]{text-align:center;color:var(--color-text-muted);margin:0;font-size:.78rem;line-height:1.7}.calite-hub__search[data-v-3dc7aa4f]{width:100%}.icon-btn[data-v-3dc7aa4f]{width:40px;height:40px;color:inherit;cursor:pointer;background:0 0;border:none;place-items:center;display:grid}.calite-hub__chips[data-v-3dc7aa4f]{scrollbar-width:none;gap:8px;padding:2px 0 4px;display:flex}.calite-hub__chips[data-v-3dc7aa4f]::-webkit-scrollbar{display:none}.calite-chip[data-v-3dc7aa4f]{border:1px solid var(--color-border);background:var(--color-surface);height:36px;color:var(--color-text-muted);font:inherit;cursor:pointer;border-radius:999px;flex-shrink:0;padding:0 16px;font-size:.78rem;font-weight:600}.calite-chip.is-on[data-v-3dc7aa4f]{border-color:var(--color-primary);background:var(--color-primary);color:#fff}.calite-hub__list[data-v-3dc7aa4f]{flex-direction:column;gap:12px;display:flex}.calite-card[data-v-3dc7aa4f]{cursor:pointer;text-align:start;color:#2c2824;background:#e7ddd4;border:none;border-radius:22px;width:100%;min-height:132px;padding:0;display:block;position:relative;overflow:hidden}.calite-card__photo[data-v-3dc7aa4f]{z-index:0;background:linear-gradient(160deg,#c4b7a8,#8a7b6c) 50%/cover;position:absolute;inset:0}.calite-card__photo[data-v-3dc7aa4f]:after{content:"";background:linear-gradient(90deg,#0000 28%,#e7ddd46b 58%,#e7ddd4e0 100%);position:absolute;inset:0}.calite-card__badge[data-v-3dc7aa4f]{z-index:2;color:#000;background:#e7ddd4;border-radius:999px;padding:5px 12px;font-size:1rem;font-weight:500;line-height:1.2;position:absolute;top:12px;left:12px}.calite-card__copy[data-v-3dc7aa4f]{z-index:1;align-items:center;gap:4px;min-height:132px;padding:16px 16px 16px 42%;display:flex;position:relative}.calite-card__copy strong[data-v-3dc7aa4f]{color:#2c2824;font-size:1.0625rem;font-weight:700;line-height:1.4}.calite-card__sub[data-v-3dc7aa4f]{color:#5c5752;justify-content:flex-start;align-items:center;gap:2px;display:flex}.calite-card__arrow[data-v-3dc7aa4f]{flex-shrink:0;display:block}.calite-card__copy em[data-v-3dc7aa4f]{color:#5c5752;font-size:.75rem;font-style:normal;font-weight:500;line-height:1.45}.calite-card__copy small[data-v-3dc7aa4f]{color:#7a746c;font-size:.6875rem;font-weight:500;line-height:1.45}.calite-hub__empty[data-v-3dc7aa4f]{text-align:center;color:var(--color-text-muted);margin:16px 0 0}html.dark .calite-card[data-v-3dc7aa4f]{color:#eef2f8;background:#1a2230}html.dark .calite-card__photo[data-v-3dc7aa4f]{background:linear-gradient(160deg,#3a4454,#151b24)}html.dark .calite-card__photo[data-v-3dc7aa4f]:after{background:linear-gradient(90deg,#0000 22%,#0b0f146b 55%,#0b0f14e0 100%)}html.dark .calite-card__badge[data-v-3dc7aa4f]{color:#121821;background:#e8e4df}html.dark .calite-card__copy strong[data-v-3dc7aa4f],html.dark .calite-card__sub[data-v-3dc7aa4f],html.dark .calite-card__copy em[data-v-3dc7aa4f],html.dark .calite-card__copy small[data-v-3dc7aa4f]{color:#eef2f8}html.dark .calite-card__copy small[data-v-3dc7aa4f]{color:#c5d0de}@media (width>=768px){.calite-hub[data-v-3dc7aa4f]{background:0 0;max-width:none;min-height:auto;margin:0;padding:0;overflow:visible}.calite-hub__nav[data-v-3dc7aa4f]{background:0 0}.calite-hub__scroll[data-v-3dc7aa4f]{gap:16px;width:100%;max-width:1120px;margin-inline:auto;padding:8px 28px 40px}.calite-hub__nav[data-v-3dc7aa4f]{grid-template-columns:1fr auto;width:100%;max-width:1120px;margin-inline:auto;padding:28px 28px 0}.calite-hub__nav h1[data-v-3dc7aa4f]{text-align:start;font-size:1.5rem}.calite-hub__lead[data-v-3dc7aa4f]{text-align:start;font-size:.9375rem}.calite-hub__chips[data-v-3dc7aa4f]{flex-wrap:wrap}.calite-chip[data-v-3dc7aa4f]{height:40px;padding:0 18px;font-size:.8125rem}.calite-hub__list[data-v-3dc7aa4f]{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.calite-card[data-v-3dc7aa4f],.calite-card__copy[data-v-3dc7aa4f]{min-height:176px}.calite-card__copy[data-v-3dc7aa4f]{padding:20px 20px 20px 38%}}@media (width>=1200px){.calite-hub__nav[data-v-3dc7aa4f],.calite-hub__scroll[data-v-3dc7aa4f]{padding-inline:40px}.calite-hub__scroll[data-v-3dc7aa4f]{padding-bottom:48px}.calite-hub__list[data-v-3dc7aa4f]{gap:20px}.calite-card[data-v-3dc7aa4f],.calite-card__copy[data-v-3dc7aa4f]{min-height:200px}} diff --git a/dist/assets/CatalogsHubView-wDSJNJeF.js b/dist/assets/CatalogsHubView-wDSJNJeF.js deleted file mode 100644 index cc0b850..0000000 --- a/dist/assets/CatalogsHubView-wDSJNJeF.js +++ /dev/null @@ -1 +0,0 @@ -import{A as e,Ct as t,Et as n,M as r,N as i,O as a,P as o,R as s,St as c,Tt as l,Y as u,Z as d,_ as f,g as p,j as m,mt as h,n as g,q as _,z as v}from"./BasicIcon-C6boaehV.js";import{o as y}from"./format-BHJptHdF.js";import{t as b}from"./catalog-s7nVUdlj.js";import{i as x}from"./index-fdhs4HNc.js";import{t as S}from"./IconChevronBack-DORV2H0q.js";import{t as C}from"./PageSkeleton-sKuEY4NI.js";import{t as ee}from"./crm-DmqasSZ_.js";import{t as te}from"./useGoBack-CgNp0uP9.js";import{a as w,n as T}from"./catalogGallery-Khy0nWqc.js";import{t as E}from"./SearchField-CRmbblW7.js";import{t as D}from"./IconSearch-DOnq8ybc.js";var O={class:`page calite-hub`},k={class:`calite-hub__nav`},A={class:`calite-hub__nav-end`},j=[`aria-label`,`aria-pressed`],M={class:`page__scroll page__scroll--with-nav calite-hub__scroll`},N={class:`calite-hub__chips`,role:`tablist`,"aria-label":`مرتب‌سازی کالیته‌ها`},P=[`onClick`],F={key:2,class:`calite-hub__empty`},I={key:3,class:`calite-hub__list`},L=[`onClick`],R={key:0,class:`calite-card__badge`},z={class:`calite-card__copy`,dir:`rtl`},ne={class:`mr-4 text-white`},B={class:`text-lg font-bold`},V={class:`text-md`},H={class:`text-xs mt-4`},U=g(v({__name:`CatalogsHubView`,setup(g){let v=p(),U=f(),{goBack:W}=te(`/`),G=b(),K=ee(),q=h([]),J=h([]),Y=h(!0),X=h(!1),Z=h(``),Q=h(`all`),re=[{id:`all`,label:`همه`},{id:`newest`,label:`جدیدترین`},{id:`popular`,label:`محبوب‌ترین`},{id:`season`,label:`بر اساس فصل`}],ie=e(()=>T(q.value,J.value)),$=e(()=>w(ie.value,Q.value,Z.value));_(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(v.query.id??``);r&&q.value.some(e=>e.id===r)&&U.replace({name:`catalog-detail`,params:{catalogId:r}})}catch{q.value=[]}finally{Y.value=!1}});function ae(e){U.push({name:`catalog-detail`,params:{catalogId:e}})}function oe(){X.value=!X.value,X.value||(Z.value=``)}function se(e){let t=e.season===`winter`?`مناسب زمستان`:e.season===`summer`?`مناسب تابستان`:`مناسب چهار فصل`;return`${y(e.patternCount)} طرح • ${t}`}return(e,f)=>(u(),o(`div`,O,[m(`header`,k,[m(`button`,{type:`button`,class:`icon-btn mobile-only`,"aria-label":`بازگشت`,onClick:f[0]||=(...e)=>c(W)&&c(W)(...e)},[s(S,{size:20})]),f[2]||=m(`h1`,null,`کالیته‌ها`,-1),m(`div`,A,[s(x,{variant:`inline`,class:`mobile-only`}),m(`button`,{type:`button`,class:`icon-btn`,"aria-label":X.value?`بستن جستجو`:`جستجو`,"aria-pressed":X.value,onClick:oe},[s(D,{size:20})],8,j)])]),m(`div`,M,[f[4]||=m(`p`,{class:`calite-hub__lead`},`مجموعه‌ای از بهترین پارچه‌ها، در یک نگاه`,-1),X.value?(u(),r(E,{key:0,"model-value":Z.value,placeholder:`جستجوی نام کالیته...`,"onUpdate:modelValue":f[1]||=e=>Z.value=e},null,8,[`model-value`])):i(``,!0),m(`div`,N,[(u(),o(a,null,d(re,e=>m(`button`,{key:e.id,type:`button`,class:t([`calite-chip`,{"is-on":Q.value===e.id}]),onClick:t=>Q.value=e.id},n(e.label),11,P)),64))]),Y.value?(u(),r(C,{key:1,variant:`cards`,rows:4})):$.value.length?(u(),o(`div`,I,[(u(!0),o(a,null,d($.value,e=>(u(),o(`button`,{key:e.id,type:`button`,class:`calite-card`,dir:`ltr`,onClick:t=>ae(e.id)},[m(`span`,{class:`calite-card__photo`,style:l(e.imageUrl?{backgroundImage:`url(${e.imageUrl})`}:void 0)},null,4),e.badge?(u(),o(`span`,R,n(e.badge===`new`?`جدید`:`پرفروش`),1)):i(``,!0),m(`div`,z,[f[3]||=m(`svg`,{class:`calite-card__arrow`,width:`12`,height:`16`,viewBox:`0 0 8 12`,fill:`none`,"aria-hidden":`true`},[m(`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),m(`div`,ne,[m(`div`,B,n(e.title),1),m(`div`,V,n(e.subtitle),1),m(`div`,H,n(se(e)),1)])])],8,L))),128))])):(u(),o(`p`,F,`کالیته‌ای یافت نشد.`))])]))}}),[[`__scopeId`,`data-v-a6e04708`]]);export{U as default}; \ No newline at end of file diff --git a/dist/assets/CategoriesView-BNMtfoIp.js b/dist/assets/CategoriesView-BNMtfoIp.js new file mode 100644 index 0000000..ccabf1e --- /dev/null +++ b/dist/assets/CategoriesView-BNMtfoIp.js @@ -0,0 +1 @@ +import{Ct as e,Dt as t,E as n,Et as r,J as ee,L as i,M as a,N as o,O as s,P as c,Q as l,R as u,X as d,_ as f,ht as p,j as m,n as h,tt as g,wt as _,z as v}from"./BasicIcon-Bnxm-DKk.js";import{T as y,i as te,o as b,s as x,v as ne}from"./index-DB4cQnln.js";import{t as re}from"./IconChevronBack-DguSlPDK.js";import{t as S}from"./IconDiamond-CGMEs3wg.js";import{t as ie}from"./PageSkeleton-CpZ7eT1v.js";import{t as C}from"./crm-CZ7XH3z9.js";import{t as w}from"./useGoBack-Ds4z3swU.js";import{t as T}from"./IconSearch-D5bVmUdX.js";import{n as E,t as D}from"./categoryIcons-XvfZlu8n.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=h(v({__name:`CategoriesView`,setup(h){let v=f(),{goBack:Y}=w(`/`),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`)}ee(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){v.push({path:`/products`,query:{categoryId:e}})}function fe(e){v.push({path:`/products`,query:{season:e}})}return(ee,f)=>(d(),c(`div`,O,[m(`header`,k,[m(`button`,{type:`button`,class:`icon-btn`,"aria-label":`بازگشت`,onClick:f[0]||=(...t)=>e(Y)&&e(Y)(...t)},[u(re,{size:20})]),f[5]||=m(`h1`,{class:`cat-top__title`},`دسته‌بندی‌ها`,-1),m(`div`,A,[u(te,{variant:`inline`}),m(`button`,{type:`button`,class:`icon-btn`,"aria-label":`جستجو`,onClick:f[1]||=t=>e(v).push({path:`/products`,query:{q:``}})},[u(T,{size:20})]),m(`button`,{type:`button`,class:`icon-btn`,"aria-label":`اعلان‌ها`,onClick:f[2]||=t=>e(v).push(`/profile/notifications`)},[u(x,{size:20})])])]),f[13]||=m(`header`,{class:`desktop-page__head desktop-only`},[m(`h1`,{class:`desktop-page__title`},`دسته‌بندی‌ها`),m(`p`,{class:`desktop-page__subtitle`},`دسته موردنظر خود را انتخاب کنید و محصولات را ببینید`)],-1),m(`div`,j,[$.value?(d(),c(`p`,M,t($.value),1)):Q.value?(d(),a(ie,{key:1,variant:`grid`})):(d(),c(s,{key:2},[m(`section`,null,[f[6]||=m(`h2`,{class:`block-title`},`انتخاب بر اساس کاربرد`,-1),f[7]||=m(`p`,{class:`block-sub`},`دسته موردنظر خود را انتخاب کنید`,-1),m(`div`,N,[(d(!0),c(s,null,l(X.value,n=>(d(),c(`button`,{key:n.id,type:`button`,class:`usage-card`,onClick:e=>de(n.id)},[m(`div`,{class:_([`usage-card__image`,`usage-card__image--${n.id}`]),style:r(n.imageUrl?{backgroundImage:`url(${n.imageUrl})`}:void 0)},[n.showIcon===!1?o(``,!0):(d(),c(`span`,F,[(d(),a(g(e(D)(e(E)(n),y)),{size:18}))]))],6),m(`div`,I,[n.showTitle===!1?o(``,!0):(d(),c(`strong`,L,t(n.title),1)),n.showSubtitle===!1?o(``,!0):(d(),c(`span`,R,[i(t(n.subtitle||`مشاهده محصولات`)+` `,1),u(b,{size:14})]))])],8,P))),128))])]),m(`section`,null,[f[8]||=m(`h2`,{class:`block-title`},`انتخاب بر اساس فصل`,-1),f[9]||=m(`p`,{class:`block-sub`},`بر اساس فصل مناسب، پارچه دلخواه را پیدا کنید`,-1),m(`div`,ae,[(d(!0),c(s,null,l(Z.value,n=>(d(),c(`button`,{key:n.id,type:`button`,class:_([`season-card`,[`season-card--${n.id}`,{"season-card--banner":!!n.imageUrl}]]),style:r(n.imageUrl?{backgroundImage:`url(${n.imageUrl})`}:void 0),onClick:e=>fe(n.id)},[m(`div`,B,[n.showTitle!==!1||n.showIcon!==!1?(d(),c(`div`,V,[n.showIcon===!1?o(``,!0):(d(),c(`span`,H,[(d(),a(g(e(D)(ue(n),S)),{size:16}))])),n.showTitle===!1?o(``,!0):(d(),c(`strong`,U,t(n.title),1))])):o(``,!0),n.showDescription===!1?o(``,!0):(d(),c(`p`,W,t(n.description),1)),n.showCta===!1?o(``,!0):(d(),c(`span`,G,[i(t(n.ctaLabel||`مشاهده محصولات`)+` `,1),u(b,{size:14})]))])],14,z))),128))])]),m(`section`,K,[m(`div`,q,[m(`span`,J,[u(ne,{size:22})]),f[10]||=m(`div`,{class:`feature-card__text`},[m(`strong`,null,`پشتیبانی اختصاصی`),m(`span`,null,`در کنار شما هستیم`)],-1)]),m(`div`,oe,[m(`span`,se,[u(S,{size:22})]),f[11]||=m(`div`,{class:`feature-card__text`},[m(`strong`,null,`مزایای مشتریان ویژه`),m(`span`,null,`بر اساس سطح شما`)],-1)]),m(`div`,{class:`feature-card feature-card--link`,role:`button`,tabindex:`0`,onClick:f[3]||=t=>e(v).push(`/catalog-request`),onKeydown:f[4]||=n(t=>e(v).push(`/catalog-request`),[`enter`])},[m(`span`,ce,[u(y,{size:22})]),f[12]||=m(`div`,{class:`feature-card__text`},[m(`strong`,null,`درخواست کالیته فیزیکی`),m(`span`,null,`کالیته را دریافت کنید`)],-1)],32)])],64))])]))}}),[[`__scopeId`,`data-v-c94c3c08`]]);export{Y as default}; \ No newline at end of file diff --git a/dist/assets/CategoriesView-BRz9akNh.css b/dist/assets/CategoriesView-BRz9akNh.css deleted file mode 100644 index cbbdfc6..0000000 --- a/dist/assets/CategoriesView-BRz9akNh.css +++ /dev/null @@ -1 +0,0 @@ -.categories-page[data-v-df02ce6e]{background:var(--color-bg)}.cat-top[data-v-df02ce6e]{padding:10px var(--page-padding);background:var(--color-surface);color:var(--color-text);grid-template-columns:40px 1fr auto;align-items:center;gap:4px;display:grid}.cat-top__title[data-v-df02ce6e]{text-align:center;margin:0;font-size:1rem}.cat-top__actions[data-v-df02ce6e]{color:inherit;align-items:center;gap:0;display:flex}.icon-btn[data-v-df02ce6e]{cursor:pointer;width:40px;height:40px;color:var(--color-text);background:0 0;border:none;border-radius:12px;place-items:center;display:grid}.cat-scroll[data-v-df02ce6e]{padding:16px var(--page-padding) 24px;flex-direction:column;gap:22px;display:flex}.block-title[data-v-df02ce6e]{margin:0;font-size:1.05rem}.block-sub[data-v-df02ce6e]{color:var(--color-text-muted);margin:4px 0 12px;font-size:.8rem}.usage-grid[data-v-df02ce6e]{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.usage-card[data-v-df02ce6e]{appearance:none;background:var(--color-surface);border-radius:var(--radius-md);text-align:start;cursor:pointer;width:100%;height:100%;box-shadow:none;border:none;border:1px solid var(--color-border);flex-direction:column;align-items:stretch;margin:0;padding:0;font-family:inherit;line-height:normal;display:flex;overflow:hidden}.usage-card__image[data-v-df02ce6e]{aspect-ratio:4/3;background-color:#e8eceb;background-image:linear-gradient(140deg,#6b7280,#1f2937);background-position:50%;background-repeat:no-repeat;background-size:cover;flex:none;width:100%;height:auto;margin:0;position:relative}.usage-card__image--suit[data-v-df02ce6e]{background-image:linear-gradient(150deg,#2c3038,#111318)}.usage-card__image--shirt[data-v-df02ce6e]{background-image:linear-gradient(150deg,#e8eef3,#9aa8b5)}.usage-card__image--trousers[data-v-df02ce6e]{background-image:linear-gradient(150deg,#1a1d24,#0b0d12)}.usage-card__icon[data-v-df02ce6e]{background:var(--color-primary-soft);width:28px;height:28px;color:var(--color-primary);box-shadow:none;border:1px solid var(--color-border);border-radius:999px;place-items:center;display:grid;position:absolute;bottom:-12px;left:50%;transform:translate(-50%)}.usage-card__body[data-v-df02ce6e]{flex-direction:column;flex:auto;gap:6px;padding:18px 8px 12px;display:flex}.usage-card__body strong[data-v-df02ce6e]{font-size:.72rem;line-height:1.5}.usage-card__link[data-v-df02ce6e]{color:var(--color-text-muted);align-items:center;gap:2px;font-size:.65rem;display:inline-flex}.season-stack[data-v-df02ce6e]{flex-direction:column;gap:10px;display:flex}.season-card[data-v-df02ce6e]{isolation:isolate;appearance:none;border-radius:var(--radius-lg);text-align:start;cursor:pointer;width:100%;min-height:148px;box-shadow:none;border:none;border:1px solid var(--color-border);background-color:#d6c3a8;background-image:linear-gradient(160deg,#d6c3a8,#8b7355);background-position:top;background-repeat:no-repeat;background-size:cover;justify-content:flex-start;align-items:flex-end;margin:0;padding:14px 16px;font-family:inherit;display:flex;position:relative;overflow:hidden}.season-card--banner[data-v-df02ce6e]{aspect-ratio:2.35;background-position:top;background-size:cover;justify-content:flex-start;align-items:stretch;min-height:156px;padding:0}.season-card--summer[data-v-df02ce6e]{background-image:linear-gradient(160deg,#f3e6c8,#c4a574)}.season-card--winter[data-v-df02ce6e]{background-image:linear-gradient(160deg,#cfd6de,#7d8b99)}.season-card--all_season[data-v-df02ce6e]{background-image:linear-gradient(160deg,#efe6d6,#b9a48a)}.season-card__content[data-v-df02ce6e]{z-index:1;max-width:58%;padding:14px 16px;position:relative}.season-card--banner .season-card__content[data-v-df02ce6e]{flex-direction:column;justify-content:flex-end;align-self:stretch;width:100%;max-width:none;min-height:100%;margin-top:auto;padding:14px 16px;display:flex}.season-card__content strong[data-v-df02ce6e]{color:var(--color-text);font-size:1.05rem;font-weight:700;display:block}.season-card__title-row[data-v-df02ce6e]{align-items:center;gap:8px;margin-bottom:6px;display:flex}.season-card__icon[data-v-df02ce6e]{background:color-mix(in srgb, var(--color-surface) 80%, transparent);width:28px;height:28px;color:var(--color-primary);border-radius:999px;flex-shrink:0;place-items:center;display:grid}.season-card--banner .season-card__content strong[data-v-df02ce6e],.season-card--banner .season-card__content p[data-v-df02ce6e],.season-card--banner .season-card__link[data-v-df02ce6e]{color:#fff;text-shadow:0 1px 2px #0000008c,0 2px 12px #00000059}.season-card--banner .season-card__icon[data-v-df02ce6e]{background:#ffffffeb}.season-card__content p[data-v-df02ce6e]{color:var(--color-text-muted);margin:0 0 10px;font-size:.75rem;line-height:1.7}.season-card__link[data-v-df02ce6e]{color:var(--color-text-muted);align-items:center;gap:2px;font-size:.72rem;font-weight:600;display:inline-flex}.feature-row[data-v-df02ce6e]{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.feature-card[data-v-df02ce6e]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;flex-direction:row;align-items:center;gap:8px;min-width:0;padding:10px 8px;display:flex}.feature-card--link[data-v-df02ce6e]{cursor:pointer}.feature-card__icon[data-v-df02ce6e]{width:22px;height:22px;color:var(--color-text);flex-shrink:0;place-items:center;display:grid}.feature-card__text[data-v-df02ce6e]{text-align:start;flex-direction:column;gap:2px;min-width:0;display:flex}.feature-card__text strong[data-v-df02ce6e]{color:var(--color-text);font-size:.6875rem;font-weight:700;line-height:1.35}.feature-card__text span[data-v-df02ce6e]{color:var(--color-text-muted);font-size:.625rem;line-height:1.35} diff --git a/dist/assets/CategoriesView-BtU4FhNT.css b/dist/assets/CategoriesView-BtU4FhNT.css new file mode 100644 index 0000000..0bbcc00 --- /dev/null +++ b/dist/assets/CategoriesView-BtU4FhNT.css @@ -0,0 +1 @@ +.categories-page[data-v-c94c3c08]{background:var(--color-bg)}.cat-top[data-v-c94c3c08]{padding:10px var(--page-padding);background:var(--color-surface);color:var(--color-text);grid-template-columns:40px 1fr auto;align-items:center;gap:4px;display:grid}.cat-top__title[data-v-c94c3c08]{text-align:center;margin:0;font-size:1rem}.cat-top__actions[data-v-c94c3c08]{color:inherit;align-items:center;gap:0;display:flex}.icon-btn[data-v-c94c3c08]{cursor:pointer;width:40px;height:40px;color:var(--color-text);background:0 0;border:none;border-radius:12px;place-items:center;display:grid}.cat-scroll[data-v-c94c3c08]{padding:16px var(--page-padding) 24px;flex-direction:column;gap:22px;display:flex}.block-title[data-v-c94c3c08]{margin:0;font-size:1.05rem}.block-sub[data-v-c94c3c08]{color:var(--color-text-muted);margin:4px 0 12px;font-size:.8rem}.usage-grid[data-v-c94c3c08]{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.usage-card[data-v-c94c3c08]{appearance:none;background:var(--color-surface);border-radius:var(--radius-md);text-align:start;cursor:pointer;width:100%;height:100%;box-shadow:none;border:none;border:1px solid var(--color-border);flex-direction:column;align-items:stretch;margin:0;padding:0;font-family:inherit;line-height:normal;display:flex;overflow:hidden}.usage-card__image[data-v-c94c3c08]{aspect-ratio:4/3;background-color:#e8eceb;background-image:linear-gradient(140deg,#6b7280,#1f2937);background-position:50%;background-repeat:no-repeat;background-size:cover;flex:none;width:100%;height:auto;margin:0;position:relative}.usage-card__image--suit[data-v-c94c3c08]{background-image:linear-gradient(150deg,#2c3038,#111318)}.usage-card__image--shirt[data-v-c94c3c08]{background-image:linear-gradient(150deg,#e8eef3,#9aa8b5)}.usage-card__image--trousers[data-v-c94c3c08]{background-image:linear-gradient(150deg,#1a1d24,#0b0d12)}.usage-card__icon[data-v-c94c3c08]{background:var(--color-primary-soft);width:28px;height:28px;color:var(--color-primary);box-shadow:none;border:1px solid var(--color-border);border-radius:999px;place-items:center;display:grid;position:absolute;bottom:-12px;left:50%;transform:translate(-50%)}.usage-card__body[data-v-c94c3c08]{flex-direction:column;flex:auto;gap:6px;padding:18px 8px 12px;display:flex}.usage-card__body strong[data-v-c94c3c08]{font-size:.72rem;line-height:1.5}.usage-card__link[data-v-c94c3c08]{color:var(--color-text-muted);align-items:center;gap:2px;font-size:.65rem;display:inline-flex}.season-stack[data-v-c94c3c08]{flex-direction:column;gap:10px;display:flex}.season-card[data-v-c94c3c08]{isolation:isolate;appearance:none;border-radius:var(--radius-lg);text-align:start;cursor:pointer;width:100%;min-height:148px;box-shadow:none;border:none;border:1px solid var(--color-border);background-color:#d6c3a8;background-image:linear-gradient(160deg,#d6c3a8,#8b7355);background-position:top;background-repeat:no-repeat;background-size:cover;justify-content:flex-start;align-items:flex-end;margin:0;padding:14px 16px;font-family:inherit;display:flex;position:relative;overflow:hidden}.season-card--banner[data-v-c94c3c08]{aspect-ratio:2.35;background-position:top;background-size:cover;justify-content:flex-start;align-items:stretch;min-height:156px;padding:0}.season-card--summer[data-v-c94c3c08]{background-image:linear-gradient(160deg,#f3e6c8,#c4a574)}.season-card--winter[data-v-c94c3c08]{background-image:linear-gradient(160deg,#cfd6de,#7d8b99)}.season-card--all_season[data-v-c94c3c08]{background-image:linear-gradient(160deg,#efe6d6,#b9a48a)}.season-card__content[data-v-c94c3c08]{z-index:1;max-width:58%;padding:14px 16px;position:relative}.season-card--banner .season-card__content[data-v-c94c3c08]{flex-direction:column;justify-content:flex-end;align-self:stretch;width:100%;max-width:none;min-height:100%;margin-top:auto;padding:14px 16px;display:flex}.season-card__content strong[data-v-c94c3c08]{color:var(--color-text);font-size:1.05rem;font-weight:700;display:block}.season-card__title-row[data-v-c94c3c08]{align-items:center;gap:8px;margin-bottom:6px;display:flex}.season-card__icon[data-v-c94c3c08]{background:color-mix(in srgb, var(--color-surface) 80%, transparent);width:28px;height:28px;color:var(--color-primary);border-radius:999px;flex-shrink:0;place-items:center;display:grid}.season-card--banner .season-card__content strong[data-v-c94c3c08],.season-card--banner .season-card__content p[data-v-c94c3c08],.season-card--banner .season-card__link[data-v-c94c3c08]{color:#fff;text-shadow:0 1px 2px #0000008c,0 2px 12px #00000059}.season-card--banner .season-card__icon[data-v-c94c3c08]{background:#ffffffeb}.season-card__content p[data-v-c94c3c08]{color:var(--color-text-muted);margin:0 0 10px;font-size:.75rem;line-height:1.7}.season-card__link[data-v-c94c3c08]{color:var(--color-text-muted);align-items:center;gap:2px;font-size:.72rem;font-weight:600;display:inline-flex}.feature-row[data-v-c94c3c08]{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.feature-card[data-v-c94c3c08]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;flex-direction:row;align-items:center;gap:8px;min-width:0;padding:10px 8px;display:flex}.feature-card--link[data-v-c94c3c08]{cursor:pointer}.feature-card__icon[data-v-c94c3c08]{width:22px;height:22px;color:var(--color-text);flex-shrink:0;place-items:center;display:grid}.feature-card__text[data-v-c94c3c08]{text-align:start;flex-direction:column;gap:2px;min-width:0;display:flex}.feature-card__text strong[data-v-c94c3c08]{color:var(--color-text);font-size:.6875rem;font-weight:700;line-height:1.35}.feature-card__text span[data-v-c94c3c08]{color:var(--color-text-muted);font-size:.625rem;line-height:1.35}@media (width>=768px){.categories-page[data-v-c94c3c08]{max-width:var(--content-max-width);width:100%;padding:8px var(--page-padding) 0;box-sizing:border-box;margin-inline:auto}.cat-scroll[data-v-c94c3c08]{gap:28px;padding:8px 0 28px}.block-title[data-v-c94c3c08]{font-size:1.125rem}.block-sub[data-v-c94c3c08]{margin-bottom:14px;font-size:.875rem}.usage-grid[data-v-c94c3c08]{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.usage-card__body strong[data-v-c94c3c08]{font-size:.8125rem}.usage-card__link[data-v-c94c3c08]{font-size:.75rem}.season-stack[data-v-c94c3c08]{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.season-card[data-v-c94c3c08]{min-height:156px}.feature-row[data-v-c94c3c08]{gap:14px}.feature-card[data-v-c94c3c08]{border-radius:14px;padding:14px 12px}.feature-card__text strong[data-v-c94c3c08]{font-size:.8125rem}.feature-card__text span[data-v-c94c3c08]{font-size:.75rem}}@media (width>=1200px){.usage-grid[data-v-c94c3c08]{grid-template-columns:repeat(4,minmax(0,1fr))}} diff --git a/dist/assets/CategoriesView-Da1Yz01j.js b/dist/assets/CategoriesView-Da1Yz01j.js deleted file mode 100644 index 2dce24b..0000000 --- a/dist/assets/CategoriesView-Da1Yz01j.js +++ /dev/null @@ -1 +0,0 @@ -import{Ct as e,E as t,Et as n,L as r,M as i,N as a,O as o,P as s,R as c,St as l,Tt as u,Y as d,Z as f,_ as p,et as m,j as h,mt as g,n as _,q as v,z as y}from"./BasicIcon-C6boaehV.js";import{b,i as ee,o as x,s as te,v as ne}from"./index-fdhs4HNc.js";import{t as re}from"./IconChevronBack-DORV2H0q.js";import{t as S}from"./IconDiamond-Bgv1zgqc.js";import{t as ie}from"./PageSkeleton-sKuEY4NI.js";import{t as C}from"./crm-DmqasSZ_.js";import{t as w}from"./useGoBack-CgNp0uP9.js";import{t as T}from"./IconSearch-DOnq8ybc.js";import{n as E,t as D}from"./categoryIcons-eyHye9W7.js";var O={class:`page categories-page`},k={class:`cat-top`},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`],V={class:`season-card__content`},ae={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=_(y({__name:`CategoriesView`,setup(_){let y=p(),{goBack:Y}=w(`/`),le=C(),X=g([]),Z=g([]),Q=g(!0),$=g(null);function ue(e){return e.icon||(e.id===`summer`?`bolt`:e.id===`winter`?`feather`:`diamond`)}v(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){y.push({path:`/products`,query:{categoryId:e}})}function fe(e){y.push({path:`/products`,query:{season:e}})}return(p,g)=>(d(),s(`div`,O,[h(`header`,k,[h(`button`,{type:`button`,class:`icon-btn`,"aria-label":`بازگشت`,onClick:g[0]||=(...e)=>l(Y)&&l(Y)(...e)},[c(re,{size:20})]),g[5]||=h(`h1`,{class:`cat-top__title`},`دسته‌بندی‌ها`,-1),h(`div`,A,[c(ee,{variant:`inline`}),h(`button`,{type:`button`,class:`icon-btn`,"aria-label":`جستجو`,onClick:g[1]||=e=>l(y).push({path:`/products`,query:{q:``}})},[c(T,{size:20})]),h(`button`,{type:`button`,class:`icon-btn`,"aria-label":`اعلان‌ها`,onClick:g[2]||=e=>l(y).push(`/profile/notifications`)},[c(te,{size:20})])])]),h(`div`,j,[$.value?(d(),s(`p`,M,n($.value),1)):Q.value?(d(),i(ie,{key:1,variant:`grid`})):(d(),s(o,{key:2},[h(`section`,null,[g[6]||=h(`h2`,{class:`block-title`},`انتخاب بر اساس کاربرد`,-1),g[7]||=h(`p`,{class:`block-sub`},`دسته موردنظر خود را انتخاب کنید`,-1),h(`div`,N,[(d(!0),s(o,null,f(X.value,t=>(d(),s(`button`,{key:t.id,type:`button`,class:`usage-card`,onClick:e=>de(t.id)},[h(`div`,{class:e([`usage-card__image`,`usage-card__image--${t.id}`]),style:u(t.imageUrl?{backgroundImage:`url(${t.imageUrl})`}:void 0)},[t.showIcon===!1?a(``,!0):(d(),s(`span`,F,[(d(),i(m(l(D)(l(E)(t),b)),{size:18}))]))],6),h(`div`,I,[t.showTitle===!1?a(``,!0):(d(),s(`strong`,L,n(t.title),1)),t.showSubtitle===!1?a(``,!0):(d(),s(`span`,R,[r(n(t.subtitle||`مشاهده محصولات`)+` `,1),c(x,{size:14})]))])],8,P))),128))])]),h(`section`,null,[g[8]||=h(`h2`,{class:`block-title`},`انتخاب بر اساس فصل`,-1),g[9]||=h(`p`,{class:`block-sub`},`بر اساس فصل مناسب، پارچه دلخواه را پیدا کنید`,-1),h(`div`,z,[(d(!0),s(o,null,f(Z.value,t=>(d(),s(`button`,{key:t.id,type:`button`,class:e([`season-card`,[`season-card--${t.id}`,{"season-card--banner":!!t.imageUrl}]]),style:u(t.imageUrl?{backgroundImage:`url(${t.imageUrl})`}:void 0),onClick:e=>fe(t.id)},[h(`div`,V,[t.showTitle!==!1||t.showIcon!==!1?(d(),s(`div`,ae,[t.showIcon===!1?a(``,!0):(d(),s(`span`,H,[(d(),i(m(l(D)(ue(t),S)),{size:16}))])),t.showTitle===!1?a(``,!0):(d(),s(`strong`,U,n(t.title),1))])):a(``,!0),t.showDescription===!1?a(``,!0):(d(),s(`p`,W,n(t.description),1)),t.showCta===!1?a(``,!0):(d(),s(`span`,G,[r(n(t.ctaLabel||`مشاهده محصولات`)+` `,1),c(x,{size:14})]))])],14,B))),128))])]),h(`section`,K,[h(`div`,q,[h(`span`,J,[c(ne,{size:22})]),g[10]||=h(`div`,{class:`feature-card__text`},[h(`strong`,null,`پشتیبانی اختصاصی`),h(`span`,null,`در کنار شما هستیم`)],-1)]),h(`div`,oe,[h(`span`,se,[c(S,{size:22})]),g[11]||=h(`div`,{class:`feature-card__text`},[h(`strong`,null,`مزایای مشتریان ویژه`),h(`span`,null,`بر اساس سطح شما`)],-1)]),h(`div`,{class:`feature-card feature-card--link`,role:`button`,tabindex:`0`,onClick:g[3]||=e=>l(y).push(`/catalog-request`),onKeydown:g[4]||=t(e=>l(y).push(`/catalog-request`),[`enter`])},[h(`span`,ce,[c(b,{size:22})]),g[12]||=h(`div`,{class:`feature-card__text`},[h(`strong`,null,`درخواست کالیته فیزیکی`),h(`span`,null,`کالیته را دریافت کنید`)],-1)],32)])],64))])]))}}),[[`__scopeId`,`data-v-df02ce6e`]]);export{Y as default}; \ No newline at end of file diff --git a/dist/assets/CheckFormView-Cpz48Srr.js b/dist/assets/CheckFormView-Cpz48Srr.js deleted file mode 100644 index 40aa49b..0000000 --- a/dist/assets/CheckFormView-Cpz48Srr.js +++ /dev/null @@ -1 +0,0 @@ -import{A as e,Ct as t,Et as n,L as r,M as i,N as a,O as ee,P as o,R as s,St as c,Y as l,_ as te,j as u,mt as d,n as f,rt as ne,t as p,tt as m,z as h}from"./BasicIcon-C6boaehV.js";import{l as g,n as _,o as re}from"./format-BHJptHdF.js";import{i as ie,n as ae,o as v,t as oe}from"./validation-BD7oi-2I.js";import{d as se,n as ce}from"./index-fdhs4HNc.js";import{t as le}from"./FormErrorBanner-CjdBfIQT.js";import{n as y,r as b,t as ue}from"./formErrors-DglFjYkZ.js";import{t as de}from"./PageHeader-Cd04Z6F_.js";import{t as fe}from"./useRequirePricedOrder-BV4a0r6K.js";import{t as x}from"./BaseInput-C6eO_Qjy.js";import{t as pe}from"./CurrencyInput-Dl1ITOQ-.js";import{t as me}from"./PersianDateInput-2Yt1srLL.js";import{t as he}from"./IconCheckBook-DwIUojJc.js";var ge=h({__name:`IconCash`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(l(),i(p,{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(h({__name:`CheckFormView`,setup(i){let f=te(),p=se(),{orderId:h,order:A}=fe(),j=e(()=>p.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=e(()=>A.value?.finalAmount??0),J=e(()=>p.draftChecks.reduce((e,t)=>e+t.amount,0)),Y=e(()=>g(M.value)||0),X=e(()=>Math.max(0,q.value-J.value)),Ae=e(()=>Math.max(0,q.value-J.value-Y.value)),Z=e(()=>q.value>0&&J.value+Y.value>=q.value),Q=e(()=>q.value>0&&J.value+Y.value>q.value);m([q,X],()=>{K.value||M.value||X.value<=0||(M.value=String(X.value),K.value=!0)},{immediate:!0}),m(M,()=>{W.value=y(W.value,`amount`),b(W.value)||(G.value=``)}),m(N,()=>{W.value=y(W.value,`dueDate`),b(W.value)||(G.value=``)}),m(P,()=>{W.value=y(W.value,`sayadId`),b(W.value)||(G.value=``)}),m(I,()=>{W.value=y(W.value,`ownerNationalId`),b(W.value)||(G.value=``)}),m(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=ae(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=g(M.value);return(!t||t<=0)&&(e.amount=`مبلغ چک باید بزرگ‌تر از صفر باشد.`),N.value||(e.dueDate=`تاریخ سررسید الزامی است.`),V.value||(e.frontImage=`تصویر روی چک الزامی است.`),j.value&&(v(P.value)||(e.sayadId=`شناسه صیادی باید ۱۶ رقم باشد.`),ie(I.value)||(e.ownerNationalId=`کد ملی صاحب چک معتبر نیست.`),p.draftChecks.some(e=>e.sayadId===P.value.replace(/\s/g,``))&&(e.sayadId=`شناسه صیادی تکراری است.`)),W.value=e,!b(e)||(G.value=ue,!1)}function Ne(){Me()&&(p.addDraftCheck({amount:g(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:p.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(e,i)=>(l(),o(`div`,_e,[s(de,{title:j.value?`ثبت چک - حالت کامل`:`ثبت چک - حالت مختصر`,"show-back":``,onBack:i[0]||=e=>c(f).push(`/orders/${c(h)}/check-mode`)},null,8,[`title`]),u(`div`,ve,[s(le,{message:G.value},null,8,[`message`]),q.value>0?(l(),o(`div`,{key:0,class:t([`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,[s(ge,{size:22})]),i[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,[i[14]||=u(`span`,{class:`text-[var(--color-text-muted)]`},`مبلغ فاکتور`,-1),u(`strong`,Ce,n(c(_)(q.value)),1)]),u(`div`,we,[u(`span`,S,[s(he,{size:14}),i[15]||=r(` چک‌های ثبت‌شده `,-1),c(p).draftChecks.length?(l(),o(`span`,C,` (`+n(c(re)(c(p).draftChecks.length))+`) `,1)):a(``,!0)]),u(`strong`,w,n(c(_)(J.value)),1)]),u(`div`,T,[i[16]||=u(`span`,{class:`text-sm font-semibold text-[var(--color-text)]`},`باقی‌مانده`,-1),u(`strong`,{class:t([`font-tabular text-base`,Z.value&&!Q.value?`text-[var(--color-success)]`:Q.value?`text-[var(--color-danger)]`:`text-[var(--color-primary)]`])},n(Q.value?`${c(_)(J.value+Y.value-q.value)} بیش از فاکتور`:Z.value?`پوشش کامل شد`:c(_)(Ae.value)),3)])])],2)):a(``,!0),i[20]||=u(`div`,{class:`steps`},[u(`span`,{class:`step active`},`۱. اطلاعات چک`),u(`span`,{class:`step`},`۲. چک بعدی`),u(`span`,{class:`step`},`۳. خلاصه`)],-1),u(`div`,E,[s(pe,{modelValue:M.value,"onUpdate:modelValue":i[1]||=e=>M.value=e,label:`مبلغ چک (تومان)`,placeholder:`مبلغ`,error:W.value.amount},null,8,[`modelValue`,`error`]),X.value>0&&Y.value!==X.value?(l(),o(`button`,{key:0,type:`button`,class:`check-fill-remaining mb-3 text-sm font-medium text-[var(--color-primary)]`,onClick:je},` پر کردن با باقی‌مانده (`+n(c(_)(X.value))+`) `,1)):a(``,!0),s(me,{modelValue:N.value,"onUpdate:modelValue":i[2]||=e=>N.value=e,label:`تاریخ سررسید`,error:W.value.dueDate},null,8,[`modelValue`,`error`]),j.value?(l(),o(ee,{key:1},[s(x,{modelValue:P.value,"onUpdate:modelValue":i[3]||=e=>P.value=e,label:`شناسه صیادی`,placeholder:`۱۶ رقم`,maxlength:`16`,inputmode:`numeric`,dir:`ltr`,error:W.value.sayadId},null,8,[`modelValue`,`error`]),s(x,{modelValue:F.value,"onUpdate:modelValue":i[4]||=e=>F.value=e,label:`شماره چک`,inputmode:`numeric`,dir:`ltr`},null,8,[`modelValue`]),s(x,{modelValue:I.value,"onUpdate:modelValue":i[5]||=e=>I.value=e,label:`کد ملی صاحب چک`,maxlength:`10`,inputmode:`numeric`,dir:`ltr`,error:W.value.ownerNationalId},null,8,[`modelValue`,`error`]),s(x,{modelValue:L.value,"onUpdate:modelValue":i[6]||=e=>L.value=e,label:`نام صاحب چک`},null,8,[`modelValue`]),s(x,{modelValue:R.value,"onUpdate:modelValue":i[7]||=e=>R.value=e,label:`نام خانوادگی صاحب چک`},null,8,[`modelValue`]),s(x,{modelValue:z.value,"onUpdate:modelValue":i[8]||=e=>z.value=e,label:`نام بانک`},null,8,[`modelValue`]),s(x,{modelValue:B.value,"onUpdate:modelValue":i[9]||=e=>B.value=e,label:`نام شعبه`},null,8,[`modelValue`])],64)):a(``,!0),u(`div`,D,[i[17]||=u(`label`,{class:`form-label`},`تصویر روی چک *`,-1),u(`label`,{class:t([`upload-box`,{"upload-box--error":W.value.frontImage}])},[u(`input`,{type:`file`,accept:`image/*`,class:`upload-box__input`,onChange:i[10]||=e=>$(e,`front`)},null,32),V.value?(l(),o(`img`,{key:0,src:V.value,class:`upload-box__preview`,alt:`روی چک`},null,8,O)):(l(),o(`span`,k,`بارگذاری تصویر چک`))],2),W.value.frontImage?(l(),o(`p`,Te,n(W.value.frontImage),1)):a(``,!0)]),j.value?(l(),o(`div`,Ee,[i[18]||=u(`label`,{class:`form-label`},`تصویر پشت چک`,-1),u(`label`,De,[u(`input`,{type:`file`,accept:`image/*`,class:`upload-box__input`,onChange:i[11]||=e=>$(e,`back`)},null,32),H.value?(l(),o(`img`,{key:0,src:H.value,class:`upload-box__preview`,alt:`پشت چک`},null,8,Oe)):(l(),o(`span`,ke,`بارگذاری تصویر`))])])):a(``,!0),s(x,{modelValue:U.value,"onUpdate:modelValue":i[12]||=e=>U.value=e,label:`توضیحات`},null,8,[`modelValue`]),s(ce,{block:``,class:`mt-4`,onClick:Ne},{default:ne(()=>[...i[19]||=[r(`ذخیره چک`,-1)]]),_:1})])])]))}}),[[`__scopeId`,`data-v-5976552f`]]);export{A as default}; \ No newline at end of file diff --git a/dist/assets/CheckFormView-DApWVLTM.js b/dist/assets/CheckFormView-DApWVLTM.js new file mode 100644 index 0000000..561bad2 --- /dev/null +++ b/dist/assets/CheckFormView-DApWVLTM.js @@ -0,0 +1 @@ +import{A as e,Ct as t,Dt as n,L as r,M as i,N as a,O as ee,P as o,R as s,X as c,_ as te,ht as l,it as ne,j as u,n as d,nt as f,t as p,wt as m,z as h}from"./BasicIcon-Bnxm-DKk.js";import{n as g,o as re,u as _}from"./format-C72AoJ2H.js";import{i as ie,n as ae,o as v,t as oe}from"./validation-Duyyve7l.js";import{C as se,d as ce,n as le}from"./index-DB4cQnln.js";import{t as ue}from"./FormErrorBanner-BahrrGfv.js";import{n as y,r as b,t as de}from"./formErrors-DglFjYkZ.js";import{t as fe}from"./PageHeader-BxTTQB_F.js";import{t as pe}from"./useRequirePricedOrder-CUckkgqU.js";import{t as x}from"./BaseInput-BFVjehfb.js";import{t as me}from"./CurrencyInput-DQq9PyBn.js";import{t as he}from"./PersianDateInput-BiSVL1bi.js";var ge=h({__name:`IconCash`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(c(),i(p,{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=d(h({__name:`CheckFormView`,setup(i){let d=te(),p=ce(),{orderId:h,order:A}=pe(),j=e(()=>p.draftCheckMode===`full`),M=l(``),N=l(``),P=l(``),F=l(``),I=l(``),L=l(``),R=l(``),z=l(``),B=l(``),V=l(``),H=l(``),U=l(``),W=l({}),G=l(``),K=l(!1),q=e(()=>A.value?.finalAmount??0),J=e(()=>p.draftChecks.reduce((e,t)=>e+t.amount,0)),Y=e(()=>_(M.value)||0),X=e(()=>Math.max(0,q.value-J.value)),Ae=e(()=>Math.max(0,q.value-J.value-Y.value)),Z=e(()=>q.value>0&&J.value+Y.value>=q.value),Q=e(()=>q.value>0&&J.value+Y.value>q.value);f([q,X],()=>{K.value||M.value||X.value<=0||(M.value=String(X.value),K.value=!0)},{immediate:!0}),f(M,()=>{W.value=y(W.value,`amount`),b(W.value)||(G.value=``)}),f(N,()=>{W.value=y(W.value,`dueDate`),b(W.value)||(G.value=``)}),f(P,()=>{W.value=y(W.value,`sayadId`),b(W.value)||(G.value=``)}),f(I,()=>{W.value=y(W.value,`ownerNationalId`),b(W.value)||(G.value=``)}),f(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=ae(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&&(v(P.value)||(e.sayadId=`شناسه صیادی باید ۱۶ رقم باشد.`),ie(I.value)||(e.ownerNationalId=`کد ملی صاحب چک معتبر نیست.`),p.draftChecks.some(e=>e.sayadId===P.value.replace(/\s/g,``))&&(e.sayadId=`شناسه صیادی تکراری است.`)),W.value=e,!b(e)||(G.value=de,!1)}function Ne(){Me()&&(p.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:p.draftCheckMode??`brief`}),Pe(),d.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(e,i)=>(c(),o(`div`,_e,[s(fe,{title:j.value?`ثبت چک - حالت کامل`:`ثبت چک - حالت مختصر`,"show-back":``,onBack:i[0]||=e=>t(d).push(`/orders/${t(h)}/check-mode`)},null,8,[`title`]),u(`div`,ve,[s(ue,{message:G.value},null,8,[`message`]),q.value>0?(c(),o(`div`,{key:0,class:m([`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,[s(ge,{size:22})]),i[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,[i[14]||=u(`span`,{class:`text-[var(--color-text-muted)]`},`مبلغ فاکتور`,-1),u(`strong`,Ce,n(t(g)(q.value)),1)]),u(`div`,we,[u(`span`,S,[s(se,{size:14}),i[15]||=r(` چک‌های ثبت‌شده `,-1),t(p).draftChecks.length?(c(),o(`span`,C,` (`+n(t(re)(t(p).draftChecks.length))+`) `,1)):a(``,!0)]),u(`strong`,w,n(t(g)(J.value)),1)]),u(`div`,T,[i[16]||=u(`span`,{class:`text-sm font-semibold text-[var(--color-text)]`},`باقی‌مانده`,-1),u(`strong`,{class:m([`font-tabular text-base`,Z.value&&!Q.value?`text-[var(--color-success)]`:Q.value?`text-[var(--color-danger)]`:`text-[var(--color-primary)]`])},n(Q.value?`${t(g)(J.value+Y.value-q.value)} بیش از فاکتور`:Z.value?`پوشش کامل شد`:t(g)(Ae.value)),3)])])],2)):a(``,!0),i[20]||=u(`div`,{class:`steps`},[u(`span`,{class:`step active`},`۱. اطلاعات چک`),u(`span`,{class:`step`},`۲. چک بعدی`),u(`span`,{class:`step`},`۳. خلاصه`)],-1),u(`div`,E,[s(me,{modelValue:M.value,"onUpdate:modelValue":i[1]||=e=>M.value=e,label:`مبلغ چک (تومان)`,placeholder:`مبلغ`,error:W.value.amount},null,8,[`modelValue`,`error`]),X.value>0&&Y.value!==X.value?(c(),o(`button`,{key:0,type:`button`,class:`check-fill-remaining mb-3 text-sm font-medium text-[var(--color-primary)]`,onClick:je},` پر کردن با باقی‌مانده (`+n(t(g)(X.value))+`) `,1)):a(``,!0),s(he,{modelValue:N.value,"onUpdate:modelValue":i[2]||=e=>N.value=e,label:`تاریخ سررسید`,error:W.value.dueDate},null,8,[`modelValue`,`error`]),j.value?(c(),o(ee,{key:1},[s(x,{modelValue:P.value,"onUpdate:modelValue":i[3]||=e=>P.value=e,label:`شناسه صیادی`,placeholder:`۱۶ رقم`,maxlength:`16`,inputmode:`numeric`,dir:`ltr`,error:W.value.sayadId},null,8,[`modelValue`,`error`]),s(x,{modelValue:F.value,"onUpdate:modelValue":i[4]||=e=>F.value=e,label:`شماره چک`,inputmode:`numeric`,dir:`ltr`},null,8,[`modelValue`]),s(x,{modelValue:I.value,"onUpdate:modelValue":i[5]||=e=>I.value=e,label:`کد ملی صاحب چک`,maxlength:`10`,inputmode:`numeric`,dir:`ltr`,error:W.value.ownerNationalId},null,8,[`modelValue`,`error`]),s(x,{modelValue:L.value,"onUpdate:modelValue":i[6]||=e=>L.value=e,label:`نام صاحب چک`},null,8,[`modelValue`]),s(x,{modelValue:R.value,"onUpdate:modelValue":i[7]||=e=>R.value=e,label:`نام خانوادگی صاحب چک`},null,8,[`modelValue`]),s(x,{modelValue:z.value,"onUpdate:modelValue":i[8]||=e=>z.value=e,label:`نام بانک`},null,8,[`modelValue`]),s(x,{modelValue:B.value,"onUpdate:modelValue":i[9]||=e=>B.value=e,label:`نام شعبه`},null,8,[`modelValue`])],64)):a(``,!0),u(`div`,D,[i[17]||=u(`label`,{class:`form-label`},`تصویر روی چک *`,-1),u(`label`,{class:m([`upload-box`,{"upload-box--error":W.value.frontImage}])},[u(`input`,{type:`file`,accept:`image/*`,class:`upload-box__input`,onChange:i[10]||=e=>$(e,`front`)},null,32),V.value?(c(),o(`img`,{key:0,src:V.value,class:`upload-box__preview`,alt:`روی چک`},null,8,O)):(c(),o(`span`,k,`بارگذاری تصویر چک`))],2),W.value.frontImage?(c(),o(`p`,Te,n(W.value.frontImage),1)):a(``,!0)]),j.value?(c(),o(`div`,Ee,[i[18]||=u(`label`,{class:`form-label`},`تصویر پشت چک`,-1),u(`label`,De,[u(`input`,{type:`file`,accept:`image/*`,class:`upload-box__input`,onChange:i[11]||=e=>$(e,`back`)},null,32),H.value?(c(),o(`img`,{key:0,src:H.value,class:`upload-box__preview`,alt:`پشت چک`},null,8,Oe)):(c(),o(`span`,ke,`بارگذاری تصویر`))])])):a(``,!0),s(x,{modelValue:U.value,"onUpdate:modelValue":i[12]||=e=>U.value=e,label:`توضیحات`},null,8,[`modelValue`]),s(le,{block:``,class:`mt-4`,onClick:Ne},{default:ne(()=>[...i[19]||=[r(`ذخیره چک`,-1)]]),_:1})])])]))}}),[[`__scopeId`,`data-v-5976552f`]]);export{A as default}; \ No newline at end of file diff --git a/dist/assets/CheckListView-BM6vq5YZ.js b/dist/assets/CheckListView-BM6vq5YZ.js deleted file mode 100644 index cc5f86d..0000000 --- a/dist/assets/CheckListView-BM6vq5YZ.js +++ /dev/null @@ -1 +0,0 @@ -import{A as e,Ct as t,Et as n,L as r,M as i,N as a,O as o,P as s,R as c,St as l,Y as u,Z as d,_ as f,g as ee,j as p,mt as m,n as te,rt as h,tt as ne,z as g}from"./BasicIcon-C6boaehV.js";import{n as re,o as _,r as v,u as y}from"./format-BHJptHdF.js";import{c as ie,d as ae,f as oe,n as b,t as se}from"./index-fdhs4HNc.js";import{t as x}from"./EmptyState-C_QQeA_h.js";import{t as S}from"./IconChevronBack-DORV2H0q.js";import{t as ce}from"./FormErrorBanner-CjdBfIQT.js";import{t as le}from"./useRequirePricedOrder-BV4a0r6K.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`},ke={class:`desktop-two-col`},Ae={class:`desktop-two-col__main`},je={class:`desktop-table-wrap`},Me={class:`desktop-table-scroll`},Ne={class:`desktop-table check-list-desktop__table`},Pe={key:0,scope:`col`},Fe=[`src`],Ie={key:1},Le={class:`check-list-desktop__amount`},Re={key:0},ze=[`onClick`],Be={class:`desktop-summary-panel`},Ve={class:`desktop-summary-panel__row`},He={class:`desktop-summary-panel__row`},Ue={class:`desktop-summary-panel__row`},We={key:0,class:`desktop-summary-panel__action`},Ge={key:1,class:`desktop-checkout-shell desktop-only`},L=g({__name:`CheckListView`,setup(te){let g=ee(),C=f(),w=ae(),L=ie(),R=m(``),z=m(!1),B=e(()=>g.name===`check-list`),{orderId:V}=le(),H=e(()=>V.value?w.getOrderById(V.value):void 0);ne(V,async e=>{if(!e||!B.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 U=e(()=>w.draftChecks.length>0?w.draftChecks:B.value?H.value?.checks??[]:L.user?w.userOrders(L.user.id).filter(e=>e.settlementType===`check`&&e.checks?.length).flatMap(e=>e.checks??[]):[]),W=e(()=>w.draftChecks.length>0?w.getDraftRass():oe(U.value,new Date)),G=e(()=>H.value?.finalAmount??0),K=e(()=>Math.max(0,G.value-W.value.totalAmount)),q=e(()=>G.value>0&&W.value.totalAmount>=G.value),J=e(()=>G.value>0&&W.value.totalAmount>G.value),Y=e({get:()=>g.query.menu??``,set:e=>{C.replace({query:e?{menu:e}:{}})}});function X(){C.push(B.value?`/orders/${V.value}`:`/profile`)}function Z(){C.push(`/orders/${V.value}/check-form`)}async function Q(e){Y.value=``,await se({title:`حذف چک`,message:`آیا از حذف این چک مطمئن هستید؟`,confirmLabel:`حذف`,cancelLabel:`انصراف`,tone:`danger`})&&w.removeDraftCheck(e)}function Ke(e){Y.value=Y.value===e?``:e}async function $(){if(!(!V.value||w.draftChecks.length===0||z.value)){R.value=``,z.value=!0;try{await w.updateOrderChecks(V.value,[...w.draftChecks],w.draftCheckMode??`brief`),C.replace(`/orders/${V.value}?track=1`)}catch(e){R.value=e instanceof Error?e.message:`ثبت چک‌ها ناموفق بود.`}finally{z.value=!1}}}return(e,f)=>(u(),s(o,null,[p(`div`,ue,[p(`header`,de,[p(`button`,{type:`button`,class:`nav-btn`,"aria-label":`بازگشت`,onClick:X},[c(S,{size:20})]),f[1]||=p(`h1`,{class:`check-list-page__title`},`چک‌های ثبت شده`,-1),p(`button`,fe,[c(S,{size:18,class:`nav-btn__flip`})])]),U.value.length===0?(u(),s(`div`,pe,[c(x,{variant:`checks`,message:`برای ادامه، حداقل یک چک ثبت کنید`},{default:h(()=>[B.value?(u(),i(b,{key:0,onClick:Z},{default:h(()=>[...f[2]||=[r(`ثبت چک جدید`,-1)]]),_:1})):(u(),i(b,{key:1,variant:`outline`,onClick:f[0]||=e=>l(C).push(`/categories`)},{default:h(()=>[...f[3]||=[r(`ثبت سفارش جدید`,-1)]]),_:1}))]),_:1})])):(u(),s(o,{key:1},[p(`div`,me,[c(ce,{message:R.value},null,8,[`message`]),p(`div`,he,[p(`div`,ge,[f[4]||=p(`span`,{class:`summary-card__label`},`مجموع مبلغ چک‌ها`,-1),p(`strong`,_e,n(l(_)(W.value.totalAmount)),1),f[5]||=p(`span`,{class:`summary-card__unit`},`تومان`,-1)]),p(`div`,T,[f[7]||=p(`span`,{class:`summary-card__label`},`مبلغ فاکتور`,-1),p(`strong`,E,n(l(_)(G.value)),1),f[8]||=p(`span`,{class:`summary-card__unit`},`تومان`,-1),q.value&&!J.value?(u(),s(`p`,D,[...f[6]||=[p(`span`,{class:`summary-card__status-icon`},`✓`,-1),r(` مبلغ کامل است `,-1)]])):J.value?(u(),s(`p`,O,` بیش از مبلغ فاکتور `)):a(``,!0)]),p(`div`,{class:t([`summary-card summary-card--remain`,{"summary-card--remain-ok":q.value&&!J.value,"summary-card--remain-warn":J.value}])},[f[9]||=p(`span`,{class:`summary-card__label`},`باقی‌مانده`,-1),p(`strong`,k,n(J.value?l(_)(W.value.totalAmount-G.value):l(_)(K.value)),1),f[10]||=p(`span`,{class:`summary-card__unit`},`تومان`,-1),q.value?a(``,!0):(u(),s(`p`,A,` هنوز باید چک ثبت کنید `))],2)]),p(`div`,j,[(u(!0),s(o,null,d(U.value,(e,t)=>(u(),s(`article`,{key:e.id,class:`check-card`},[p(`div`,M,[B.value&&l(w).draftChecks.length>0?(u(),s(`button`,{key:0,type:`button`,class:`check-card__menu-btn`,"aria-label":`گزینه‌ها`,onClick:t=>Ke(e.id)},` ⋮ `,8,N)):a(``,!0),Y.value===e.id?(u(),s(`div`,P,[p(`button`,{type:`button`,onClick:t=>Q(e.id)},`حذف`,8,F)])):a(``,!0)]),p(`div`,I,[p(`h3`,ve,`چک `+n(l(y)(String(t+1))),1),p(`p`,ye,n(l(re)(e.amount)),1),p(`p`,be,`تاریخ: `+n(l(v)(e.dueDate)),1)]),p(`div`,xe,[e.frontImage?(u(),s(`img`,{key:0,src:e.frontImage,class:`check-card__thumb`,alt:`تصویر چک`},null,8,Se)):(u(),s(`div`,Ce,`چک`))])]))),128))]),p(`div`,we,[f[11]||=p(`h3`,{class:`rass-panel__title`},`رأس چک‌ها`,-1),p(`div`,Te,n(l(y)(String(W.value.rassDays)))+` روز`,1),W.value.rassDate?(u(),s(`p`,Ee,` تاریخ رأس تقریبی: `+n(l(v)(W.value.rassDate)),1)):a(``,!0)])]),B.value&&l(w).draftChecks.length>0?(u(),s(`div`,De,[c(b,{block:``,variant:`outline`,disabled:z.value,onClick:Z},{default:h(()=>[...f[12]||=[r(` افزودن چک جدید `,-1)]]),_:1},8,[`disabled`]),c(b,{block:``,disabled:U.value.length===0,loading:z.value,onClick:$},{default:h(()=>[...f[13]||=[r(` ارسال برای بررسی `,-1)]]),_:1},8,[`disabled`,`loading`])])):a(``,!0)],64))]),U.value.length>0?(u(),s(`div`,Oe,[f[26]||=p(`header`,{class:`desktop-page__head`},[p(`h1`,{class:`desktop-page__title`},`چک‌های ثبت شده`),p(`p`,{class:`desktop-page__subtitle`},`خلاصه و فهرست چک‌های ثبت‌شده`)],-1),p(`div`,ke,[p(`div`,Ae,[p(`div`,je,[p(`div`,Me,[p(`table`,Ne,[p(`thead`,null,[p(`tr`,null,[f[14]||=p(`th`,{scope:`col`},`تصویر`,-1),f[15]||=p(`th`,{scope:`col`},`مبلغ (تومان)`,-1),f[16]||=p(`th`,{scope:`col`},`تاریخ سررسید`,-1),f[17]||=p(`th`,{scope:`col`},`شناسه`,-1),B.value?(u(),s(`th`,Pe,`عملیات`)):a(``,!0)])]),p(`tbody`,null,[(u(!0),s(o,null,d(U.value,(e,t)=>(u(),s(`tr`,{key:e.id},[p(`td`,null,[e.frontImage?(u(),s(`img`,{key:0,src:e.frontImage,class:`check-list-desktop__thumb`,alt:`تصویر چک`},null,8,Fe)):(u(),s(`span`,Ie,`—`))]),p(`td`,Le,n(l(_)(e.amount)),1),p(`td`,null,n(l(v)(e.dueDate)),1),p(`td`,null,`چک `+n(l(y)(String(t+1))),1),B.value&&l(w).draftChecks.length>0?(u(),s(`td`,Re,[p(`button`,{type:`button`,class:`orders-table__action`,onClick:t=>Q(e.id)},` حذف `,8,ze)])):a(``,!0)]))),128))])])])]),B.value?(u(),i(b,{key:0,variant:`outline`,class:`desktop-btn-compact check-list-desktop__add`,onClick:Z},{default:h(()=>[...f[18]||=[r(` ثبت چک دیگر `,-1)]]),_:1})):a(``,!0)]),p(`aside`,Be,[f[25]||=p(`h2`,{class:`desktop-summary-panel__title`},`خلاصه مالی`,-1),p(`div`,Ve,[f[19]||=p(`span`,null,`مجموع چک‌ها`,-1),p(`strong`,null,n(l(_)(W.value.totalAmount))+` تومان`,1)]),p(`div`,He,[f[20]||=p(`span`,null,`مبلغ فاکتور`,-1),p(`strong`,null,n(l(_)(G.value))+` تومان`,1)]),p(`div`,{class:t([`desktop-summary-panel__row desktop-summary-panel__row--remain`,{"desktop-summary-panel__row--ok":q.value&&!J.value,"desktop-summary-panel__row--warn":J.value}])},[f[21]||=p(`span`,null,`باقی‌مانده`,-1),p(`strong`,null,n(J.value?`${l(_)(W.value.totalAmount-G.value)} بیش از فاکتور`:q.value?`پوشش کامل`:`${l(_)(K.value)} تومان`),1)],2),p(`div`,Ue,[f[22]||=p(`span`,null,`رأس چک‌ها`,-1),p(`strong`,null,n(l(y)(String(W.value.rassDays)))+` روز`,1)]),B.value&&l(w).draftChecks.length>0?(u(),s(`div`,We,[c(b,{block:``,variant:`outline`,disabled:z.value,onClick:Z},{default:h(()=>[...f[23]||=[r(` افزودن چک جدید `,-1)]]),_:1},8,[`disabled`]),c(b,{block:``,disabled:U.value.length===0,loading:z.value,onClick:$},{default:h(()=>[...f[24]||=[r(` ارسال برای بررسی `,-1)]]),_:1},8,[`disabled`,`loading`])])):a(``,!0)])])])):(u(),s(`div`,Ge,[c(x,{variant:`checks`,message:`برای ادامه، حداقل یک چک ثبت کنید`},{default:h(()=>[B.value?(u(),i(b,{key:0,onClick:Z},{default:h(()=>[...f[27]||=[r(`ثبت چک جدید`,-1)]]),_:1})):a(``,!0)]),_:1})]))],64))}}),R=w({default:()=>z}),z=te(L,[[`__scopeId`,`data-v-83f3f9a7`]]);export{R as n,z as t}; \ No newline at end of file diff --git a/dist/assets/CheckListView-C2RmOScu.js b/dist/assets/CheckListView-C2RmOScu.js new file mode 100644 index 0000000..842c8d5 --- /dev/null +++ b/dist/assets/CheckListView-C2RmOScu.js @@ -0,0 +1 @@ +import{A as e,Ct as t,Dt as n,L as r,M as i,N as a,O as o,P as s,Q as c,R as l,X as u,_ as d,g as ee,ht as f,it as p,j as m,n as te,nt as ne,wt as h,z as g}from"./BasicIcon-Bnxm-DKk.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-DB4cQnln.js";import{t as x}from"./EmptyState-CsuH56HV.js";import{t as S}from"./IconChevronBack-DguSlPDK.js";import{t as ce}from"./FormErrorBanner-BahrrGfv.js";import{t as le}from"./useRequirePricedOrder-CUckkgqU.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`},L={key:0,class:`desktop-checkout-shell check-list-desktop desktop-only`},Oe={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=g({__name:`CheckListView`,setup(te){let g=ee(),C=d(),w=ae(),R=ie(),z=f(``),B=f(!1),V=e(()=>g.name===`check-list`),{orderId:H}=le(),U=e(()=>H.value?w.getOrderById(H.value):void 0);ne(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=e(()=>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=e(()=>w.draftChecks.length>0?w.getDraftRass():oe(W.value,new Date)),K=e(()=>U.value?.finalAmount??0),q=e(()=>Math.max(0,K.value-G.value.totalAmount)),J=e(()=>K.value>0&&G.value.totalAmount>=K.value),Y=e(()=>K.value>0&&G.value.totalAmount>K.value),X=e({get:()=>g.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(e,d)=>(u(),s(o,null,[m(`div`,ue,[m(`header`,de,[m(`button`,{type:`button`,class:`nav-btn`,"aria-label":`بازگشت`,onClick:Ge},[l(S,{size:20})]),d[1]||=m(`h1`,{class:`check-list-page__title`},`چک‌های ثبت شده`,-1),m(`button`,fe,[l(S,{size:18,class:`nav-btn__flip`})])]),W.value.length===0?(u(),s(`div`,pe,[l(x,{variant:`checks`,message:`برای ادامه، حداقل یک چک ثبت کنید`},{default:p(()=>[V.value?(u(),i(b,{key:0,onClick:Z},{default:p(()=>[...d[2]||=[r(`ثبت چک جدید`,-1)]]),_:1})):(u(),i(b,{key:1,variant:`outline`,onClick:d[0]||=e=>t(C).push(`/categories`)},{default:p(()=>[...d[3]||=[r(`ثبت سفارش جدید`,-1)]]),_:1}))]),_:1})])):(u(),s(o,{key:1},[m(`div`,me,[l(ce,{message:z.value},null,8,[`message`]),m(`div`,he,[m(`div`,ge,[d[4]||=m(`span`,{class:`summary-card__label`},`مجموع مبلغ چک‌ها`,-1),m(`strong`,_e,n(t(v)(G.value.totalAmount)),1),d[5]||=m(`span`,{class:`summary-card__unit`},`تومان`,-1)]),m(`div`,T,[d[7]||=m(`span`,{class:`summary-card__label`},`مبلغ فاکتور`,-1),m(`strong`,E,n(t(v)(K.value)),1),d[8]||=m(`span`,{class:`summary-card__unit`},`تومان`,-1),J.value&&!Y.value?(u(),s(`p`,D,[...d[6]||=[m(`span`,{class:`summary-card__status-icon`},`✓`,-1),r(` مبلغ کامل است `,-1)]])):Y.value?(u(),s(`p`,O,` بیش از مبلغ فاکتور `)):a(``,!0)]),m(`div`,{class:h([`summary-card summary-card--remain`,{"summary-card--remain-ok":J.value&&!Y.value,"summary-card--remain-warn":Y.value}])},[d[9]||=m(`span`,{class:`summary-card__label`},`باقی‌مانده`,-1),m(`strong`,k,n(Y.value?t(v)(G.value.totalAmount-K.value):t(v)(q.value)),1),d[10]||=m(`span`,{class:`summary-card__unit`},`تومان`,-1),J.value?a(``,!0):(u(),s(`p`,A,` هنوز باید چک ثبت کنید `))],2)]),m(`div`,j,[(u(!0),s(o,null,c(W.value,(e,r)=>(u(),s(`article`,{key:e.id,class:`check-card`},[m(`div`,M,[V.value&&t(w).draftChecks.length>0?(u(),s(`button`,{key:0,type:`button`,class:`check-card__menu-btn`,"aria-label":`گزینه‌ها`,onClick:t=>Ke(e.id)},` ⋮ `,8,N)):a(``,!0),X.value===e.id?(u(),s(`div`,P,[m(`button`,{type:`button`,onClick:t=>Q(e.id)},`حذف`,8,F)])):a(``,!0)]),m(`div`,I,[m(`h3`,ve,`چک `+n(t(_)(String(r+1))),1),m(`p`,ye,n(t(re)(e.amount)),1),m(`p`,be,`تاریخ: `+n(t(y)(e.dueDate)),1)]),m(`div`,xe,[e.frontImage?(u(),s(`img`,{key:0,src:e.frontImage,class:`check-card__thumb`,alt:`تصویر چک`},null,8,Se)):(u(),s(`div`,Ce,`چک`))])]))),128))]),m(`div`,we,[d[11]||=m(`h3`,{class:`rass-panel__title`},`رأس چک‌ها`,-1),m(`div`,Te,n(t(_)(String(G.value.rassDays)))+` روز`,1),G.value.rassDate?(u(),s(`p`,Ee,` تاریخ رأس تقریبی: `+n(t(y)(G.value.rassDate)),1)):a(``,!0)])]),V.value&&t(w).draftChecks.length>0?(u(),s(`div`,De,[l(b,{block:``,variant:`outline`,disabled:B.value,onClick:Z},{default:p(()=>[...d[12]||=[r(` افزودن چک جدید `,-1)]]),_:1},8,[`disabled`]),l(b,{block:``,disabled:W.value.length===0,loading:B.value,onClick:$},{default:p(()=>[...d[13]||=[r(` ارسال برای بررسی `,-1)]]),_:1},8,[`disabled`,`loading`])])):a(``,!0)],64))]),W.value.length>0?(u(),s(`div`,L,[d[26]||=m(`header`,{class:`desktop-page__head`},[m(`h1`,{class:`desktop-page__title`},`چک‌های ثبت شده`),m(`p`,{class:`desktop-page__subtitle`},`خلاصه و فهرست چک‌های ثبت‌شده`)],-1),m(`div`,Oe,[m(`div`,ke,[m(`div`,Ae,[m(`div`,je,[m(`table`,Me,[m(`thead`,null,[m(`tr`,null,[d[14]||=m(`th`,{scope:`col`},`تصویر`,-1),d[15]||=m(`th`,{scope:`col`},`مبلغ (تومان)`,-1),d[16]||=m(`th`,{scope:`col`},`تاریخ سررسید`,-1),d[17]||=m(`th`,{scope:`col`},`شناسه`,-1),V.value?(u(),s(`th`,Ne,`عملیات`)):a(``,!0)])]),m(`tbody`,null,[(u(!0),s(o,null,c(W.value,(e,r)=>(u(),s(`tr`,{key:e.id},[m(`td`,null,[e.frontImage?(u(),s(`img`,{key:0,src:e.frontImage,class:`check-list-desktop__thumb`,alt:`تصویر چک`},null,8,Pe)):(u(),s(`span`,Fe,`—`))]),m(`td`,Ie,n(t(v)(e.amount)),1),m(`td`,null,n(t(y)(e.dueDate)),1),m(`td`,null,`چک `+n(t(_)(String(r+1))),1),V.value&&t(w).draftChecks.length>0?(u(),s(`td`,Le,[m(`button`,{type:`button`,class:`orders-table__action`,onClick:t=>Q(e.id)},` حذف `,8,Re)])):a(``,!0)]))),128))])])])]),V.value?(u(),i(b,{key:0,variant:`outline`,class:`desktop-btn-compact check-list-desktop__add`,onClick:Z},{default:p(()=>[...d[18]||=[r(` ثبت چک دیگر `,-1)]]),_:1})):a(``,!0)]),m(`aside`,ze,[d[25]||=m(`h2`,{class:`desktop-summary-panel__title`},`خلاصه مالی`,-1),m(`div`,Be,[d[19]||=m(`span`,null,`مجموع چک‌ها`,-1),m(`strong`,null,n(t(v)(G.value.totalAmount))+` تومان`,1)]),m(`div`,Ve,[d[20]||=m(`span`,null,`مبلغ فاکتور`,-1),m(`strong`,null,n(t(v)(K.value))+` تومان`,1)]),m(`div`,{class:h([`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]||=m(`span`,null,`باقی‌مانده`,-1),m(`strong`,null,n(Y.value?`${t(v)(G.value.totalAmount-K.value)} بیش از فاکتور`:J.value?`پوشش کامل`:`${t(v)(q.value)} تومان`),1)],2),m(`div`,He,[d[22]||=m(`span`,null,`رأس چک‌ها`,-1),m(`strong`,null,n(t(_)(String(G.value.rassDays)))+` روز`,1)]),V.value&&t(w).draftChecks.length>0?(u(),s(`div`,Ue,[l(b,{block:``,variant:`outline`,disabled:B.value,onClick:Z},{default:p(()=>[...d[23]||=[r(` افزودن چک جدید `,-1)]]),_:1},8,[`disabled`]),l(b,{block:``,disabled:W.value.length===0,loading:B.value,onClick:$},{default:p(()=>[...d[24]||=[r(` ارسال برای بررسی `,-1)]]),_:1},8,[`disabled`,`loading`])])):a(``,!0)])])])):(u(),s(`div`,We,[l(x,{variant:`checks`,message:`برای ادامه، حداقل یک چک ثبت کنید`},{default:p(()=>[V.value?(u(),i(b,{key:0,onClick:Z},{default:p(()=>[...d[27]||=[r(`ثبت چک جدید`,-1)]]),_:1})):a(``,!0)]),_:1})]))],64))}}),z=w({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-Df1a9jxd.js b/dist/assets/CheckModeSelectView-Df1a9jxd.js deleted file mode 100644 index 3f2a539..0000000 --- a/dist/assets/CheckModeSelectView-Df1a9jxd.js +++ /dev/null @@ -1 +0,0 @@ -import{A as e,Et as t,P as n,R as r,St as i,Y as a,_ as o,j as s,n as c,tt as l,z as u}from"./BasicIcon-C6boaehV.js";import{n as d}from"./format-BHJptHdF.js";import{d as f}from"./index-fdhs4HNc.js";import{t as p}from"./IconEditPen-DLV3_yq2.js";import{t as m}from"./PageHeader-Cd04Z6F_.js";import{t as h}from"./useRequirePricedOrder-BV4a0r6K.js";import{t as g}from"./IconCheckBook-DwIUojJc.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=c(u({__name:`CheckModeSelectView`,setup(c){let u=o(),w=f(),{orderId:T,order:E}=h(),D=e(()=>E.value?.finalAmount?d(E.value.finalAmount):`—`);l(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),u.push(`/orders/${T.value}/check-form`)}return(e,o)=>(a(),n(`div`,_,[r(m,{title:`تسویه چکی`,subtitle:`بر اساس مبلغ فاکتور، نحوه ثبت چک را انتخاب کنید`,"show-back":``,centered:``,onBack:o[0]||=e=>i(u).push(`/orders/${i(T)}`)}),s(`div`,v,[s(`div`,y,[o[3]||=s(`span`,{class:`check-mode-invoice__label`},`مبلغ فاکتور`,-1),s(`strong`,b,t(D.value),1)]),s(`div`,x,[s(`button`,{type:`button`,class:`mode-card`,onClick:o[1]||=e=>O(`full`)},[s(`span`,S,[r(g,{size:36})]),o[4]||=s(`h3`,{class:`mode-card__title`},`ثبت کامل (پیشنهادی)`,-1),o[5]||=s(`p`,{class:`mode-card__desc`},`وارد کردن همه اطلاعات چک`,-1)]),s(`button`,{type:`button`,class:`mode-card`,onClick:o[2]||=e=>O(`brief`)},[s(`span`,C,[r(p,{size:36})]),o[6]||=s(`h3`,{class:`mode-card__title`},`ثبت مختصر`,-1),o[7]||=s(`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-pdkEZrIl.js b/dist/assets/CheckModeSelectView-pdkEZrIl.js new file mode 100644 index 0000000..fbdbca7 --- /dev/null +++ b/dist/assets/CheckModeSelectView-pdkEZrIl.js @@ -0,0 +1 @@ +import{A as e,Ct as t,Dt as n,P as r,R as i,X as a,_ as o,j as s,n as c,nt as l,z as u}from"./BasicIcon-Bnxm-DKk.js";import{n as d}from"./format-C72AoJ2H.js";import{C as f,d as p}from"./index-DB4cQnln.js";import{t as m}from"./IconEditPen-BwxVBWii.js";import{t as h}from"./PageHeader-BxTTQB_F.js";import{t as g}from"./useRequirePricedOrder-CUckkgqU.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=c(u({__name:`CheckModeSelectView`,setup(c){let u=o(),w=p(),{orderId:T,order:E}=g(),D=e(()=>E.value?.finalAmount?d(E.value.finalAmount):`—`);l(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),u.push(`/orders/${T.value}/check-form`)}return(e,o)=>(a(),r(`div`,_,[i(h,{title:`تسویه چکی`,subtitle:`بر اساس مبلغ فاکتور، نحوه ثبت چک را انتخاب کنید`,"show-back":``,centered:``,onBack:o[0]||=e=>t(u).push(`/orders/${t(T)}`)}),s(`div`,v,[s(`div`,y,[o[3]||=s(`span`,{class:`check-mode-invoice__label`},`مبلغ فاکتور`,-1),s(`strong`,b,n(D.value),1)]),s(`div`,x,[s(`button`,{type:`button`,class:`mode-card`,onClick:o[1]||=e=>O(`full`)},[s(`span`,S,[i(f,{size:36})]),o[4]||=s(`h3`,{class:`mode-card__title`},`ثبت کامل (پیشنهادی)`,-1),o[5]||=s(`p`,{class:`mode-card__desc`},`وارد کردن همه اطلاعات چک`,-1)]),s(`button`,{type:`button`,class:`mode-card`,onClick:o[2]||=e=>O(`brief`)},[s(`span`,C,[i(m,{size:36})]),o[6]||=s(`h3`,{class:`mode-card__title`},`ثبت مختصر`,-1),o[7]||=s(`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-CqUviuW7.js b/dist/assets/CheckoutStepper-CqUviuW7.js deleted file mode 100644 index 38887fe..0000000 --- a/dist/assets/CheckoutStepper-CqUviuW7.js +++ /dev/null @@ -1 +0,0 @@ -import{Ct as e,Et as t,L as n,N as r,O as i,P as a,Y as o,Z as s,j as c,n as l,z as u}from"./BasicIcon-C6boaehV.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,_)=>(o(),a(`nav`,d,[(o(),a(i,null,s(u,(s,d)=>(o(),a(i,{key:s.num},[c(`div`,{class:e([`checkout-stepper__item`,{"checkout-stepper__item--done":s.num(o(),i(`nav`,d,[(o(),i(r,null,a(u,(a,d)=>(o(),i(r,{key:a.num},[s(`div`,{class:l([`checkout-stepper__item`,{"checkout-stepper__item--done":a.num(l(),o(`div`,E,[p(`header`,D,[p(`div`,O,[p(`button`,{type:`button`,class:`nav-btn`,"aria-label":`بازگشت`,onClick:d[0]||=e=>c.$emit(`back`)},[s(x,{size:20})]),d[1]||=p(`h1`,{class:`company-select-page__title`},`انتخاب شرکت`,-1),d[2]||=p(`span`,{class:`nav-btn nav-btn--spacer`,"aria-hidden":`true`},null,-1)]),d[3]||=p(`p`,{class:`company-select-page__subtitle`},`شرکت مورد نظر خود را انتخاب کنید`,-1)]),d[5]||=p(`header`,{class:`company-select-page__desk-head desktop-only`},[p(`h1`,null,`انتخاب شرکت`),p(`p`,null,`شرکت موردنظر را انتخاب کنید تا کاتالوگ و سفارش‌گذاری شروع شود`)],-1),p(`div`,k,[(l(!0),o(a,null,u(e.companies,a=>(l(),o(`button`,{key:a.id,type:`button`,class:t([`company-brand-card`,`company-brand-card--${e.cardVariant(a.slug)}`]),onClick:e=>c.$emit(`select`,a.id)},[p(`span`,j,[(l(),i(f(e.companyLogo(a.slug)),{size:72}))]),p(`h2`,M,n(a.name),1),p(`p`,N,n(e.companyDescription(a)),1),p(`span`,P,[d[4]||=r(` ورود به کاتالوگ‌ها `,-1),s(b,{size:16})])],10,A))),128))])]))}}),[[`__scopeId`,`data-v-336d01ae`]]),I={key:0,class:`page page__scroll`},L=_({__name:`CompanySelectView`,setup(t){let n=d(),{goBack:r}=T(`/`),a=v(),u=y(),f=m(!0),p=e(()=>a.getActiveCompanies()),h={par:{description:`تولید و عرضه انواع پارچه`,logo:S},"fam-baft":{description:`تولید و عرضه انواع پارچه`,logo:C}};g(async()=>{await a.loadCompanies(),f.value=!1});function _(e){let t=a.getCompany(e);t&&(u.selectCompany(t),n.push(`/companies/${e}/catalogs`))}function b(e){return e===`par`?`par`:`fam-baft`}function x(e){return h[e.slug]?.description??e.description}function E(e){return h[e]?.logo??S}return(e,t)=>f.value?(l(),o(`div`,I,[s(w,{variant:`cards`})])):(l(),i(F,{key:1,companies:p.value,"card-variant":b,"company-description":x,"company-logo":E,onSelect:_,onBack:c(r)},null,8,[`companies`,`onBack`]))}});export{L as default}; \ No newline at end of file diff --git a/dist/assets/CompanySelectView-wH7uHLvB.css b/dist/assets/CompanySelectView-wH7uHLvB.css deleted file mode 100644 index 71304b8..0000000 --- a/dist/assets/CompanySelectView-wH7uHLvB.css +++ /dev/null @@ -1 +0,0 @@ -.company-select-page[data-v-336d01ae]{background:var(--color-bg);min-height:0;color:var(--color-text);flex-direction:column;flex:1;display:flex}.company-select-page__header[data-v-336d01ae]{padding:8px var(--page-padding) 12px;background:var(--color-surface)}.company-select-page__nav[data-v-336d01ae]{grid-template-columns:40px 1fr 40px;align-items:center;margin-bottom:8px;display:grid}.nav-btn[data-v-336d01ae]{cursor:pointer;width:40px;height:40px;color:var(--color-text);background:0 0;border:none;place-items:center;padding:0;display:grid}.nav-btn--spacer[data-v-336d01ae]{visibility:hidden;pointer-events:none}.company-select-page__title[data-v-336d01ae]{text-align:center;margin:0;font-size:1.0625rem;font-weight:700}.company-select-page__subtitle[data-v-336d01ae]{color:var(--color-text-muted);text-align:center;margin:0;font-size:.875rem}.company-select-page__desk-head[data-v-336d01ae]{margin-bottom:20px}.company-select-page__desk-head h1[data-v-336d01ae]{margin:0 0 6px;font-size:1.375rem;font-weight:700}.company-select-page__desk-head p[data-v-336d01ae]{color:var(--color-text-muted);margin:0;font-size:.875rem}.company-select-page__list[data-v-336d01ae]{padding:12px var(--page-padding) 24px;flex-direction:column;gap:14px;display:flex}.company-brand-card[data-v-336d01ae]{cursor:pointer;text-align:center;color:#fff;border:none;border-radius:20px;flex-direction:column;align-items:center;gap:8px;padding:28px 20px 24px;font-family:inherit;display:flex}.company-brand-card--par[data-v-336d01ae]{background:linear-gradient(145deg,#1a4a52 0%,#0a353c 70%)}.company-brand-card--fam-baft[data-v-336d01ae]{background:linear-gradient(145deg,#2a5f68 0%,#123f46 70%)}.company-brand-card__logo[data-v-336d01ae]{place-items:center;margin-bottom:4px;display:grid}.company-brand-card__name[data-v-336d01ae]{margin:0;font-size:1.125rem;font-weight:700}.company-brand-card__desc[data-v-336d01ae]{opacity:.88;margin:0;font-size:.8125rem}.company-brand-card__cta[data-v-336d01ae]{background:#ffffff24;border-radius:999px;align-items:center;gap:4px;margin-top:10px;padding:8px 14px;font-size:.8125rem;font-weight:600;display:inline-flex}@media (width>=768px){.company-select-page[data-v-336d01ae]{max-width:var(--content-max-width);background:0 0;width:100%;margin-inline:auto;padding:8px 0 28px}.company-select-page__list[data-v-336d01ae]{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;padding:0;display:grid}.company-brand-card[data-v-336d01ae]{min-height:260px;box-shadow:var(--shadow-sm);justify-content:center;transition:transform .15s,box-shadow .15s}.company-brand-card[data-v-336d01ae]:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}} diff --git a/dist/assets/CurrencyInput-DQq9PyBn.js b/dist/assets/CurrencyInput-DQq9PyBn.js new file mode 100644 index 0000000..2333fdd --- /dev/null +++ b/dist/assets/CurrencyInput-DQq9PyBn.js @@ -0,0 +1 @@ +import{Dt as e,N as t,P as n,X as r,ht as i,j as a,n as o,nt as s,wt as c,z as l}from"./BasicIcon-Bnxm-DKk.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`},_=o(l({__name:`CurrencyInput`,props:{modelValue:{},label:{},placeholder:{},hint:{},error:{},disabled:{type:Boolean}},emits:[`update:modelValue`],setup(o,{emit:l}){let _=o,v=l,y=i(``);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(i,s)=>(r(),n(`div`,f,[o.label?(r(),n(`label`,p,e(o.label),1)):t(``,!0),a(`input`,{class:c([`input`,{"input-error":o.error}]),type:`text`,inputmode:`numeric`,dir:`ltr`,value:y.value,placeholder:o.placeholder,disabled:o.disabled,onInput:b},null,42,m),o.error?(r(),n(`p`,h,e(o.error),1)):o.hint?(r(),n(`p`,g,e(o.hint),1)):t(``,!0)]))}}),[[`__scopeId`,`data-v-1becf1bc`]]);export{_ as t}; \ No newline at end of file diff --git a/dist/assets/CurrencyInput-Dl1ITOQ-.js b/dist/assets/CurrencyInput-Dl1ITOQ-.js deleted file mode 100644 index 0aaf028..0000000 --- a/dist/assets/CurrencyInput-Dl1ITOQ-.js +++ /dev/null @@ -1 +0,0 @@ -import{Ct as e,Et as t,N as n,P as r,Y as i,j as a,mt as o,n as s,tt as c,z as l}from"./BasicIcon-C6boaehV.js";import{o as u,t as d}from"./format-BHJptHdF.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`},_=s(l({__name:`CurrencyInput`,props:{modelValue:{},label:{},placeholder:{},hint:{},error:{},disabled:{type:Boolean}},emits:[`update:modelValue`],setup(s,{emit:l}){let _=s,v=l,y=o(``);c(()=>_.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(o,c)=>(i(),r(`div`,f,[s.label?(i(),r(`label`,p,t(s.label),1)):n(``,!0),a(`input`,{class:e([`input`,{"input-error":s.error}]),type:`text`,inputmode:`numeric`,dir:`ltr`,value:y.value,placeholder:s.placeholder,disabled:s.disabled,onInput:b},null,42,m),s.error?(i(),r(`p`,h,t(s.error),1)):s.hint?(i(),r(`p`,g,t(s.hint),1)):n(``,!0)]))}}),[[`__scopeId`,`data-v-1becf1bc`]]);export{_ as t}; \ No newline at end of file diff --git a/dist/assets/CustomerCreateOverlay-CStx-5j-.js b/dist/assets/CustomerCreateOverlay-CStx-5j-.js new file mode 100644 index 0000000..1b35012 --- /dev/null +++ b/dist/assets/CustomerCreateOverlay-CStx-5j-.js @@ -0,0 +1 @@ +import{A as e,D as t,Dt as n,L as r,M as i,N as a,P as o,R as s,X as c,ht as l,it as u,j as d,k as f,n as p,nt as m,q as h,y as g,z as _}from"./BasicIcon-Bnxm-DKk.js";import{t as v}from"./http-Bnj5Ml97.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-DB4cQnln.js";import{t as C}from"./FormErrorBanner-BahrrGfv.js";import{n as w,r as T,t as E}from"./formErrors-DglFjYkZ.js";import{t as D}from"./crm-CZ7XH3z9.js";import{t as O}from"./BaseInput-BFVjehfb.js";var k={class:`customer-create-form`},A={key:0,class:`customer-create-form__intro`},j={class:`customer-create-form__fields`},M=p(_({__name:`CustomerCreateForm`,props:{customerId:{},initial:{}},emits:[`success`],setup(e,{expose:t,emit:i}){let f=e,p=i,h=x(),g=D(),_=l(``),M=l(``),N=l(``),P=l(``),F=l({}),I=l(``),L=l(!1),R=()=>!!f.customerId;function z(e){_.value=e?.firstName??``,M.value=e?.lastName??``,N.value=e?.phone??``,P.value=e?.businessName??``,F.value={},I.value=``}m(()=>f.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()&&f.customerId){let e=await g.updateCustomer(f.customerId,n);p(`success`,e?.id??f.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 t({submit:V,saving:L}),(e,t)=>(c(),o(`div`,k,[R()?a(``,!0):(c(),o(`p`,A,` مشتری به لیست شما اضافه می‌شود و بعد از ورود با همین شماره، سفارش‌هایش به حساب شما وصل می‌ماند. `)),s(C,{message:I.value},null,8,[`message`]),d(`div`,j,[s(O,{modelValue:_.value,"onUpdate:modelValue":[t[0]||=e=>_.value=e,t[1]||=e=>B(`firstName`)],label:`نام`,placeholder:`نام مشتری`,error:F.value.firstName},null,8,[`modelValue`,`error`]),s(O,{modelValue:M.value,"onUpdate:modelValue":[t[2]||=e=>M.value=e,t[3]||=e=>B(`lastName`)],label:`نام خانوادگی`,placeholder:`نام خانوادگی`,error:F.value.lastName},null,8,[`modelValue`,`error`]),s(O,{modelValue:N.value,"onUpdate:modelValue":[t[4]||=e=>N.value=e,t[5]||=e=>B(`phone`)],label:`شماره موبایل`,type:`tel`,inputmode:`tel`,dir:`ltr`,placeholder:`۰۹۱۲۳۴۵۶۷۸۹`,error:F.value.phone},null,8,[`modelValue`,`error`]),s(O,{modelValue:P.value,"onUpdate:modelValue":t[6]||=e=>P.value=e,label:`نام فروشگاه یا برند (اختیاری)`,placeholder:`مثلاً بوتیک رز`},null,8,[`modelValue`])]),s(S,{block:``,loading:L.value,disabled:L.value,onClick:V},{default:u(()=>[r(n(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(_({__name:`CustomerCreateOverlay`,props:{open:{type:Boolean},customerId:{},initial:{},title:{}},emits:[`close`,`success`],setup(r,{emit:l}){let p=r,_=e(()=>p.title??(p.customerId?`ویرایش مشتری`:`افزودن مشتری`)),v=l;function y(){v(`close`)}function b(e){v(`success`,e)}function x(e){e.key===`Escape`&&p.open&&y()}return m(()=>p.open,e=>{document.body.style.overflow=e?`hidden`:``,e?window.addEventListener(`keydown`,x):window.removeEventListener(`keydown`,x)},{immediate:!0}),h(()=>{document.body.style.overflow=``,window.removeEventListener(`keydown`,x)}),(e,l)=>(c(),i(f,{to:`body`},[s(g,{name:`customer-create-sheet`},{default:u(()=>[r.open?(c(),o(`div`,{key:0,class:`customer-create-overlay`,role:`dialog`,"aria-modal":`true`,"aria-labelledby":`customer-create-title`,onClick:t(y,[`self`])},[d(`div`,N,[l[0]||=d(`div`,{class:`customer-create-sheet__handle`,"aria-hidden":`true`},null,-1),d(`header`,P,[d(`h2`,F,n(_.value),1),d(`button`,{type:`button`,class:`customer-create-sheet__close`,"aria-label":`بستن`,onClick:y},` × `)]),s(M,{"customer-id":r.customerId,initial:r.initial,onSuccess:b},null,8,[`customer-id`,`initial`])])])):a(``,!0)]),_:1})]))}}),[[`__scopeId`,`data-v-ac91feb8`]]);export{I as t}; \ No newline at end of file diff --git a/dist/assets/CustomerCreateOverlay-DpQkF2Gz.css b/dist/assets/CustomerCreateOverlay-DpQkF2Gz.css new file mode 100644 index 0000000..5fe3ddb --- /dev/null +++ b/dist/assets/CustomerCreateOverlay-DpQkF2Gz.css @@ -0,0 +1 @@ +.customer-create-form[data-v-4f911c6f]{flex-direction:column;gap:12px;display:flex}.customer-create-form__intro[data-v-4f911c6f]{color:var(--color-text-muted);margin:0;font-size:.875rem;line-height:1.7}.customer-create-form__fields[data-v-4f911c6f]{background:var(--color-surface);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);flex-direction:column;gap:12px;padding:16px;display:flex}.customer-create-overlay[data-v-ac91feb8]{z-index:200;background:#00000073;justify-content:center;align-items:flex-end;padding:0;display:flex;position:fixed;inset:0}.customer-create-sheet[data-v-ac91feb8]{background:var(--color-bg);width:100%;max-width:520px;max-height:min(92dvh,680px);color:var(--color-text);padding:10px 16px calc(16px + env(safe-area-inset-bottom,0px));box-shadow:var(--shadow-md);border-radius:20px 20px 0 0;flex-direction:column;gap:16px;display:flex;overflow-y:auto}.customer-create-sheet__handle[data-v-ac91feb8]{background:var(--color-border);border-radius:999px;width:40px;height:4px;margin:4px auto 0}.customer-create-sheet__head[data-v-ac91feb8]{justify-content:space-between;align-items:center;gap:12px;display:flex}.customer-create-sheet__head h2[data-v-ac91feb8]{margin:0;font-size:1.0625rem;font-weight:700}.customer-create-sheet__close[data-v-ac91feb8]{background:var(--color-surface);width:36px;height:36px;color:var(--color-text-muted);cursor:pointer;border:none;border-radius:999px;place-items:center;padding:0;font-size:1.5rem;line-height:1;display:grid}.customer-create-sheet-enter-active[data-v-ac91feb8],.customer-create-sheet-leave-active[data-v-ac91feb8]{transition:opacity .2s}.customer-create-sheet-enter-active .customer-create-sheet[data-v-ac91feb8],.customer-create-sheet-leave-active .customer-create-sheet[data-v-ac91feb8]{transition:transform .22s}.customer-create-sheet-enter-from[data-v-ac91feb8],.customer-create-sheet-leave-to[data-v-ac91feb8]{opacity:0}.customer-create-sheet-enter-from .customer-create-sheet[data-v-ac91feb8],.customer-create-sheet-leave-to .customer-create-sheet[data-v-ac91feb8]{transform:translateY(100%)}@media (width>=768px){.customer-create-overlay[data-v-ac91feb8]{align-items:center;padding:24px}.customer-create-sheet[data-v-ac91feb8]{background:var(--color-surface);border-radius:16px;max-width:440px;max-height:min(85dvh,620px);padding:20px 20px 24px}.customer-create-sheet__handle[data-v-ac91feb8]{display:none}.customer-create-sheet-enter-from .customer-create-sheet[data-v-ac91feb8],.customer-create-sheet-leave-to .customer-create-sheet[data-v-ac91feb8]{transform:translateY(16px)scale(.98)}} diff --git a/dist/assets/CustomerDetailView-Czbonf-B.js b/dist/assets/CustomerDetailView-Czbonf-B.js new file mode 100644 index 0000000..25569ec --- /dev/null +++ b/dist/assets/CustomerDetailView-Czbonf-B.js @@ -0,0 +1 @@ +import{A as e,Ct as t,D as n,Dt as r,E as i,Et as a,F as o,J as s,L as c,M as l,N as u,O as d,P as f,Q as p,R as m,X as h,_ as g,at as _,g as v,ht as y,it as b,j as x,k as S,n as C,nt as w,q as T,t as E,w as D,wt as O,y as k,z as A}from"./BasicIcon-Bnxm-DKk.js";import{d as j,o as M}from"./format-C72AoJ2H.js";import{O as N,c as P,o as F}from"./index-DB4cQnln.js";import{r as I,t as ee}from"./constants-DXXK14Zz.js";import{t as L}from"./IconProgressClock-D-v2U-1t.js";import{t as te}from"./IconPhone-Dp7Txh8V.js";import{t as ne}from"./IconEditPen-BwxVBWii.js";import{t as re}from"./IconClipboardEmpty-dbxs07_C.js";import{t as ie}from"./PageSkeleton-CpZ7eT1v.js";import{t as ae}from"./crm-CZ7XH3z9.js";import{t as oe}from"./PageHeader-BxTTQB_F.js";import{t as R}from"./PersianDateInput-BiSVL1bi.js";import{t as se}from"./CustomerCreateOverlay-CStx-5j-.js";var ce=A({__name:`IconMail`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(h(),l(E,{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(A({__name:`TimeInput`,props:{modelValue:{},label:{},placeholder:{},hint:{},error:{},disabled:{type:Boolean}},emits:[`update:modelValue`],setup(i,{emit:a}){let o=i,c=a,l=y(null),d=y(!1),p=y(10),g=y(0),_=[0,5,10,15,20,25,30,35,40,45,50,55],v=e(()=>C(o.modelValue??``)),b=e(()=>v.value?E(v.value.hour,v.value.minute):``);w(()=>o.modelValue,e=>{let t=C(e??``);t&&(p.value=t.hour,g.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 k(){if(!o.disabled){if(!d.value)if(v.value)p.value=v.value.hour,g.value=S(v.value.minute);else{let e=new Date;p.value=e.getHours(),g.value=S(e.getMinutes())}d.value=!d.value}}function A(){d.value=!1}function M(e){p.value=(p.value+e+24)%24}function N(e){let t=_.indexOf(g.value),n=((t<0?0:t)+e+_.length)%_.length;g.value=_[n]??0}function P(){c(`update:modelValue`,D(p.value,g.value)),A()}function F(){let e=new Date,t=e.getHours(),n=S(e.getMinutes());p.value=t,g.value=n,c(`update:modelValue`,D(t,n)),A()}function I(e){l.value?.contains(e.target)||A()}return s(()=>{document.addEventListener(`click`,I)}),T(()=>{document.removeEventListener(`click`,I)}),(e,a)=>(h(),f(`div`,{ref_key:`rootRef`,ref:l,class:`form-group time-input`},[i.label?(h(),f(`label`,z,r(i.label),1)):u(``,!0),x(`button`,{type:`button`,class:O([`input time-input__trigger`,{"input-error":i.error,"is-open":d.value}]),disabled:i.disabled,onClick:n(k,[`stop`])},[x(`span`,{class:O({"time-input__placeholder":!b.value})},r(b.value||i.placeholder||`انتخاب ساعت`),3),x(`span`,V,[m(L,{size:18})])],10,B),d.value?(h(),f(`div`,{key:1,class:`time-input__panel`,onClick:a[4]||=n(()=>{},[`stop`])},[x(`div`,le,[x(`div`,H,[a[7]||=x(`span`,{class:`time-input__spinner-label`},`ساعت`,-1),x(`button`,{type:`button`,class:`time-input__step`,"aria-label":`یک ساعت بعد`,onClick:a[0]||=e=>M(1)},[...a[5]||=[x(`svg`,{width:`14`,height:`14`,viewBox:`0 0 24 24`,"aria-hidden":`true`},[x(`path`,{d:`M6 14l6-6 6 6`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`})],-1)]]),x(`strong`,U,r(t(j)(String(p.value).padStart(2,`0`))),1),x(`button`,{type:`button`,class:`time-input__step`,"aria-label":`یک ساعت قبل`,onClick:a[1]||=e=>M(-1)},[...a[6]||=[x(`svg`,{width:`14`,height:`14`,viewBox:`0 0 24 24`,"aria-hidden":`true`},[x(`path`,{d:`M6 10l6 6 6-6`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`})],-1)]])]),a[11]||=x(`span`,{class:`time-input__colon`,"aria-hidden":`true`},`:`,-1),x(`div`,ue,[a[10]||=x(`span`,{class:`time-input__spinner-label`},`دقیقه`,-1),x(`button`,{type:`button`,class:`time-input__step`,"aria-label":`پنج دقیقه بعد`,onClick:a[2]||=e=>N(1)},[...a[8]||=[x(`svg`,{width:`14`,height:`14`,viewBox:`0 0 24 24`,"aria-hidden":`true`},[x(`path`,{d:`M6 14l6-6 6 6`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`})],-1)]]),x(`strong`,W,r(t(j)(String(g.value).padStart(2,`0`))),1),x(`button`,{type:`button`,class:`time-input__step`,"aria-label":`پنج دقیقه قبل`,onClick:a[3]||=e=>N(-1)},[...a[9]||=[x(`svg`,{width:`14`,height:`14`,viewBox:`0 0 24 24`,"aria-hidden":`true`},[x(`path`,{d:`M6 10l6 6 6-6`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`})],-1)]])])]),x(`div`,{class:`time-input__footer`},[x(`button`,{type:`button`,class:`time-input__now`,onClick:F},`اکنون`),x(`button`,{type:`button`,class:`time-input__confirm`,onClick:P},`تأیید`)])])):u(``,!0),i.error?(h(),f(`p`,de,r(i.error),1)):i.hint?(h(),f(`p`,G,r(i.hint),1)):u(``,!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(A({__name:`MeetingReportForm`,props:{customerId:{}},emits:[`success`],setup(e,{emit:t}){let n=e,i=t,o=ae(),c=y(null),g=y(!0),v=y(!1),b=y(null),S=y(`in_person`),C=y(``),T=y(``),E=y(``),k=y(``),A=y(!0),j=y(``),M=y(``),N=y(``),P=y(``),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(!n.customerId){g.value=!1,b.value=`مشتری مشخص نشده است.`,c.value=null;return}g.value=!0,b.value=null;try{let e=await o.loadCustomerDetail(n.customerId);c.value=e.customer}catch(e){c.value=null,b.value=e instanceof Error?e.message:`بارگذاری مشتری ناموفق بود.`}finally{g.value=!1}}s(I),w(()=>n.customerId,I);async function ee(){if(!n.customerId||!E.value.trim()||!C.value.trim()){b.value=`موضوع و تاریخ الزامی است.`;return}v.value=!0,b.value=null;try{await o.submitMeeting({customerId:n.customerId,type:S.value,title:E.value.trim(),subject:E.value.trim(),content:k.value.trim()||void 0,description:k.value.trim()||void 0,date:C.value.trim(),time:T.value.trim()||void 0,createReminder:A.value,reminderTitle:A.value?j.value.trim()||E.value.trim():void 0,reminderDate:A.value?M.value.trim()||C.value.trim():void 0,reminderTime:A.value?N.value.trim()||T.value.trim()||`10:00`:void 0,reminderNote:A.value&&P.value.trim()||void 0}),i(`success`)}catch(e){b.value=e instanceof Error?e.message:`ثبت گزارش ناموفق بود.`}finally{v.value=!1}}return(e,t)=>(h(),f(`div`,fe,[g.value?(h(),l(ie,{key:0,variant:`form`})):b.value?(h(),f(`p`,pe,r(b.value),1)):u(``,!0),c.value?(h(),f(d,{key:2},[x(`section`,me,[x(`div`,{class:`avatar`,style:a({background:c.value.avatarColor})},r(c.value.avatarLetter),5),x(`div`,null,[x(`strong`,null,r(c.value.name),1),x(`p`,null,r(c.value.contactName),1),x(`p`,q,r(c.value.phone),1)])]),x(`section`,null,[t[9]||=x(`h3`,null,`نوع تعامل`,-1),x(`div`,he,[(h(),f(d,null,p(F,e=>x(`button`,{key:e.id,type:`button`,class:O([`type-btn`,{"type-btn--active":S.value===e.id}]),onClick:t=>S.value=e.id},[e.icon===`clipboard`?(h(),l(re,{key:0,size:22})):e.icon===`phone`?(h(),l(te,{key:1,size:22})):e.icon===`mail`?(h(),l(ce,{key:2,size:22})):(h(),l(ne,{key:3,size:22})),x(`span`,null,r(e.label),1)],10,J)),64))])]),x(`section`,null,[t[10]||=x(`h3`,null,`تاریخ و زمان`,-1),x(`div`,ge,[m(R,{modelValue:C.value,"onUpdate:modelValue":t[0]||=e=>C.value=e,label:`تاریخ`,class:`meeting-date`},null,8,[`modelValue`]),m(K,{modelValue:T.value,"onUpdate:modelValue":t[1]||=e=>T.value=e,label:`ساعت`,placeholder:`مثلاً ۱۰:۳۰`,class:`meeting-time`},null,8,[`modelValue`])])]),x(`label`,Y,[t[11]||=x(`span`,null,`موضوع گزارش`,-1),_(x(`input`,{"onUpdate:modelValue":t[2]||=e=>E.value=e,type:`text`},null,512),[[D,E.value]])]),x(`label`,_e,[t[12]||=x(`span`,null,`محتوای گزارش`,-1),_(x(`textarea`,{"onUpdate:modelValue":t[3]||=e=>k.value=e,rows:`5`,maxlength:`1000`},null,512),[[D,k.value]]),x(`em`,null,r(k.value.length.toLocaleString(`fa-IR`))+`/۱۰۰۰`,1)]),t[17]||=x(`section`,null,[x(`h3`,null,`تصاویر و فایل‌ها`),x(`div`,{class:`files`},[x(`div`,{class:`file-thumb`}),x(`div`,{class:`file-thumb`}),x(`button`,{type:`button`,class:`file-add`,"aria-label":`افزودن فایل`},`+`)])],-1),x(`section`,X,[x(`div`,Z,[t[14]||=x(`h3`,null,`یادآور`,-1),x(`button`,{type:`button`,class:O([`toggle`,{"toggle--on":A.value}]),"aria-pressed":A.value,onClick:t[4]||=e=>A.value=!A.value},[...t[13]||=[x(`span`,null,null,-1)]],10,Q)]),A.value?(h(),f(d,{key:0},[x(`label`,$,[t[15]||=x(`span`,null,`عنوان یادآور`,-1),_(x(`input`,{"onUpdate:modelValue":t[5]||=e=>j.value=e,type:`text`},null,512),[[D,j.value]])]),x(`div`,ve,[m(R,{modelValue:M.value,"onUpdate:modelValue":t[6]||=e=>M.value=e,label:`تاریخ یادآور`,class:`meeting-date`},null,8,[`modelValue`]),m(K,{modelValue:N.value,"onUpdate:modelValue":t[7]||=e=>N.value=e,label:`ساعت یادآور`,placeholder:`مثلاً ۱۰:۳۰`,class:`meeting-time`},null,8,[`modelValue`])]),x(`label`,ye,[t[16]||=x(`span`,null,`یادداشت یادآور (اختیاری)`,-1),_(x(`input`,{"onUpdate:modelValue":t[8]||=e=>P.value=e,type:`text`},null,512),[[D,P.value]])])],64)):u(``,!0)]),x(`button`,{type:`button`,class:`submit`,disabled:v.value,onClick:ee},r(v.value?`در حال ثبت...`:`ثبت گزارش و یادآور`),9,be)],64)):u(``,!0)]))}}),[[`__scopeId`,`data-v-5d6dd8b7`]]),Se={class:`meeting-report-sheet`},Ce=C(A({__name:`MeetingReportOverlay`,props:{open:{type:Boolean},customerId:{}},emits:[`close`,`success`],setup(e,{emit:t}){let r=e,i=t;function a(){i(`close`)}function o(){i(`success`)}function s(e){e.key===`Escape`&&r.open&&a()}return w(()=>r.open,e=>{document.body.style.overflow=e?`hidden`:``,e?window.addEventListener(`keydown`,s):window.removeEventListener(`keydown`,s)},{immediate:!0}),T(()=>{document.body.style.overflow=``,window.removeEventListener(`keydown`,s)}),(t,r)=>(h(),l(S,{to:`body`},[m(k,{name:`meeting-report-sheet`},{default:b(()=>[e.open?(h(),f(`div`,{key:0,class:`meeting-report-overlay`,role:`dialog`,"aria-modal":`true`,"aria-labelledby":`meeting-report-title`,onClick:n(a,[`self`])},[x(`div`,Se,[r[1]||=x(`div`,{class:`meeting-report-sheet__handle`,"aria-hidden":`true`},null,-1),x(`header`,{class:`meeting-report-sheet__head`},[r[0]||=x(`h2`,{id:`meeting-report-title`},`ثبت گزارش ملاقات`,-1),x(`button`,{type:`button`,class:`meeting-report-sheet__close`,"aria-label":`بستن`,onClick:a},` × `)]),e.customerId?(h(),l(xe,{key:e.customerId,"customer-id":e.customerId,onSuccess:o},null,8,[`customer-id`])):u(``,!0)])])):u(``,!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(A({__name:`CustomerDetailView`,setup(n){let _=v(),S=g(),C=ae(),T=P(),E=e(()=>String(_.query.id??``)),D=e(()=>String(_.query.tab??`info`)),k=e(()=>_.query.meetingReport===`1`),A=e(()=>_.query.edit===`1`),j=y(null),L=y([]),R=y([]),z=y(`all`),B=y(!0),V=y(null),le=[{id:`info`,label:`اطلاعات`},{id:`orders`,label:`سفارش‌ها`},{id:`reports`,label:`گزارش‌ها و پیگیری‌ها`}];async function H(){if(!E.value){j.value=null,B.value=!1;return}B.value=!0,V.value=null;try{let e=await C.loadCustomerDetail(E.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}}s(H),w(E,H);function U(e){S.replace({path:`/customer`,query:{id:E.value,tab:e}})}function ue(){S.push({path:`/customer`,query:{id:E.value,tab:`reports`,meetingReport:`1`}})}function W(){S.replace({path:`/customer`,query:{id:E.value,tab:`reports`}})}async function de(){W(),await H()}function G(){S.push({path:`/customer`,query:{id:E.value,tab:D.value,edit:`1`}})}function K(){S.replace({path:`/customer`,query:{id:E.value,tab:D.value}})}async function fe(){K(),await H()}let pe=e(()=>{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=e(()=>j.value?.agentName||T.fullName||`واسطه`),he=e(()=>j.value?.agentCode||T.user?.agentCode||`—`),J=e(()=>q.value.charAt(0)),ge=[{id:`all`,label:`همه`},{id:`in_person`,label:`ملاقات حضوری`},{id:`call`,label:`تماس`},{id:`message`,label:`پیام`},{id:`note`,label:`یادداشت`}],Y=e(()=>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&&S.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 $=e(()=>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(e,n)=>(h(),f(d,null,[j.value?(h(),f(`div`,we,[m(oe,{class:`mobile-only`,title:D.value===`reports`?`پروفایل مشتری`:`جزئیات مشتری`,"show-back":``,centered:``,onBack:n[0]||=e=>t(S).push(`/customers`)},o({_:2},[D.value===`info`?{name:`trailing`,fn:b(()=>[x(`button`,{type:`button`,class:`edit-btn`,onClick:G},`ویرایش`)]),key:`0`}:void 0]),1032,[`title`]),x(`header`,Te,[x(`div`,null,[x(`h1`,Ee,r(j.value.name),1),x(`p`,De,r(j.value.phone),1)]),D.value===`info`?(h(),f(`button`,{key:0,type:`button`,class:`edit-btn edit-btn--desk`,onClick:G},` ویرایش `)):u(``,!0)]),x(`div`,Oe,[D.value===`reports`?(h(),f(`section`,Ne,[x(`div`,Pe,[x(`div`,{class:`profile-card__avatar profile-card__avatar--lg`,style:a({background:j.value.avatarColor})},r(j.value.avatarLetter),5),x(`div`,null,[x(`h2`,null,r(j.value.name),1),x(`p`,null,r(j.value.contactName),1),x(`p`,Fe,r(j.value.phone),1)]),n[4]||=x(`span`,{class:`status-badge status-badge--active status-badge--on-dark`},`فعال`,-1)]),x(`div`,Ie,[x(`div`,null,[n[5]||=x(`span`,null,`سطح مشتری`,-1),x(`strong`,null,r(j.value.levelLabel),1)]),x(`div`,null,[n[6]||=x(`span`,null,`تاریخ اولین خرید`,-1),x(`strong`,null,r(j.value.firstPurchaseDate),1)]),x(`div`,null,[n[7]||=x(`span`,null,`تعداد سفارش`,-1),x(`strong`,null,r(t(M)(j.value.orderCount))+` سفارش`,1)])])])):(h(),f(`section`,ke,[x(`div`,{class:`profile-card__avatar`,style:a({background:j.value.avatarColor})},r(j.value.avatarLetter),5),x(`div`,Ae,[x(`div`,je,[x(`h2`,null,r(j.value.name),1),x(`span`,{class:O([`status-badge`,ye(j.value.status)])},r(ve(j.value.status)),3)]),x(`p`,Me,r(j.value.phone),1)])])),x(`div`,Le,[(h(),f(d,null,p(le,e=>x(`button`,{key:e.id,type:`button`,role:`tab`,class:O([`tab`,{"tab--active":D.value===e.id}]),"aria-selected":D.value===e.id,onClick:t=>U(e.id)},[x(`span`,ze,r(e.label),1)],10,Re)),64))]),D.value===`info`?(h(),f(d,{key:2},[x(`section`,Be,[n[15]||=x(`h3`,{class:`section-title`},`اطلاعات خرید`,-1),x(`div`,Ve,[x(`div`,He,[n[8]||=x(`span`,{class:`purchase-stats__label`},`تعداد سفارش`,-1),x(`strong`,Ue,r(t(M)(j.value.orderCount)),1)]),n[13]||=x(`span`,{class:`purchase-stats__divider`,"aria-hidden":`true`},null,-1),x(`div`,We,[n[9]||=x(`span`,{class:`purchase-stats__label`},`مجموع خرید`,-1),x(`strong`,Ge,r(t(M)(j.value.totalPurchaseToman)),1),n[10]||=x(`em`,{class:`purchase-stats__unit`},`تومان`,-1)]),n[14]||=x(`span`,{class:`purchase-stats__divider`,"aria-hidden":`true`},null,-1),x(`div`,Ke,[n[11]||=x(`span`,{class:`purchase-stats__label`},`میانگین هر سفارش`,-1),x(`strong`,qe,r(t(M)(j.value.averageOrderToman)),1),n[12]||=x(`em`,{class:`purchase-stats__unit`},`تومان`,-1)])])]),x(`section`,Je,[x(`button`,{type:`button`,class:`agent-row`,onClick:n[1]||=e=>t(S).push(`/profile`)},[x(`div`,Ye,r(J.value),1),x(`div`,Xe,[x(`strong`,null,r(q.value),1),x(`p`,null,`کد واسطه: `+r(he.value),1)]),m(F,{size:18,class:`agent-row__chevron`,"aria-hidden":`true`})]),x(`div`,Ze,[x(`div`,Qe,[n[16]||=x(`h3`,{class:`section-title`},`آخرین سفارش‌ها`,-1),x(`button`,{type:`button`,class:`link-btn`,onClick:n[2]||=e=>U(`orders`)},`مشاهده همه`)]),(h(!0),f(d,null,p($.value,e=>(h(),f(`article`,{key:e.id,class:`order-row`,role:`button`,tabindex:`0`,onClick:t=>X(e.id),onKeydown:i(t=>X(e.id),[`enter`])},[x(`div`,et,[x(`strong`,null,r(e.title),1),m(F,{size:14,class:`order-row__chevron`,"aria-hidden":`true`})]),x(`span`,tt,r(t(M)(e.amountToman))+` تومان`,1),x(`span`,{class:O([`status-pill`,`status-pill--${Q(e)}`])},r(Z(e)),3)],40,$e))),128)),$.value.length?u(``,!0):(h(),f(`p`,nt,`سفارشی ثبت نشده است.`))])])],64)):D.value===`orders`?(h(),f(`section`,rt,[(h(!0),f(d,null,p(L.value,e=>(h(),f(`article`,{key:e.id,class:`order-row`,role:`button`,tabindex:`0`,onClick:t=>X(e.id),onKeydown:i(t=>X(e.id),[`enter`])},[x(`div`,at,[x(`strong`,null,r(e.title),1),m(F,{size:14,class:`order-row__chevron`,"aria-hidden":`true`})]),x(`span`,ot,r(t(M)(e.amountToman))+` تومان`,1),x(`span`,{class:O([`status-pill`,`status-pill--${Q(e)}`])},r(Z(e)),3)],40,it))),128)),L.value.length?u(``,!0):(h(),f(`p`,st,`سفارشی ثبت نشده است.`))])):(h(),f(`section`,ct,[n[17]||=x(`h3`,{class:`section-title`},`تعاملات و پیگیری‌ها`,-1),x(`button`,{type:`button`,class:`dashed-btn`,onClick:ue},` + ثبت گزارش ملاقات جدید `),x(`div`,lt,[(h(),f(d,null,p(ge,e=>x(`button`,{key:e.id,type:`button`,class:O([`meeting-filter`,{"meeting-filter--active":z.value===e.id}]),onClick:t=>z.value=e.id},r(e.label),11,ut)),64))]),(h(!0),f(d,null,p(Y.value,e=>(h(),f(`article`,{key:e.id,class:`meeting-row`},[x(`div`,{class:O([`meeting-row__icon`,_e(e.type)])},[e.type===`in_person`?(h(),l(re,{key:0,size:16})):e.type===`call`?(h(),l(te,{key:1,size:16})):e.type===`message`?(h(),l(ce,{key:2,size:16})):(h(),l(ne,{key:3,size:16}))],2),x(`div`,dt,[x(`strong`,null,r(me(e.type)),1),x(`p`,null,r(e.description||e.title),1)]),x(`span`,ft,r(e.date),1)]))),128)),Y.value.length?u(``,!0):(h(),f(`p`,pt,` گزارشی برای این فیلتر ثبت نشده است. `))]))]),D.value===`info`?(h(),f(`footer`,mt,[x(`button`,{type:`button`,class:`cta`,onClick:n[3]||=e=>t(S).push(`/categories`)},[m(N,{size:20,color:`#fff`}),n[18]||=c(` سفارش جدید برای این مشتری `,-1)])])):u(``,!0)])):B.value?(h(),f(`div`,ht,[m(ie,{variant:`detail`})])):(h(),f(`div`,gt,[x(`p`,null,r(V.value||`مشتری یافت نشد.`),1)])),m(Ce,{open:k.value,"customer-id":E.value,onClose:W,onSuccess:de},null,8,[`open`,`customer-id`]),m(se,{open:A.value,"customer-id":E.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-U6N_pEg2.css b/dist/assets/CustomerDetailView-D35VhooF.css similarity index 64% rename from dist/assets/CustomerDetailView-U6N_pEg2.css rename to dist/assets/CustomerDetailView-D35VhooF.css index f8b0bc7..c7ebbe9 100644 --- a/dist/assets/CustomerDetailView-U6N_pEg2.css +++ b/dist/assets/CustomerDetailView-D35VhooF.css @@ -1 +1 @@ -.time-input[data-v-fbdfb138]{position:relative}.input[data-v-fbdfb138]{width:100%;height:var(--btn-height);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);padding:0 14px;font-size:.9375rem;transition:border-color .15s}.time-input__trigger[data-v-fbdfb138]{cursor:pointer;text-align:right;justify-content:space-between;align-items:center;gap:8px;display:flex}.time-input__trigger[data-v-fbdfb138]:focus{border-color:var(--color-primary);outline:none}.time-input__trigger.is-open[data-v-fbdfb138],.time-input__trigger[data-v-fbdfb138]:focus-visible{border-color:var(--color-primary)}.time-input__trigger[data-v-fbdfb138]:disabled{opacity:.6;cursor:not-allowed}.time-input__placeholder[data-v-fbdfb138]{color:var(--color-text-muted)}.time-input__trigger>span[data-v-fbdfb138]:first-child{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.time-input__icon[data-v-fbdfb138]{color:var(--color-text-muted);flex-shrink:0;align-items:center;display:flex}.input-error[data-v-fbdfb138]{border-color:var(--color-danger)}.input-error-text[data-v-fbdfb138]{color:var(--color-danger);margin:4px 0 0;font-size:.8125rem}.time-input__panel[data-v-fbdfb138]{z-index:320;border:1px solid var(--color-border);background:var(--color-surface);border-radius:12px;padding:8px;position:absolute;top:calc(100% + 4px);left:0;right:0;box-shadow:0 8px 24px #0f172a1f}.time-input__picker[data-v-fbdfb138]{grid-template-columns:1fr auto 1fr;align-items:center;gap:6px;display:grid}.time-input__spinner[data-v-fbdfb138]{border:1px solid var(--color-border);background:0 0;border-radius:10px;flex-direction:column;align-items:center;gap:2px;padding:4px 6px 6px;display:flex}.time-input__spinner-label[data-v-fbdfb138]{color:var(--color-text-muted);font-size:.6875rem;line-height:1.2}.time-input__value[data-v-fbdfb138]{letter-spacing:.04em;min-height:24px;color:var(--color-text);justify-content:center;align-items:center;font-size:.9375rem;font-weight:700;display:flex}.time-input__step[data-v-fbdfb138]{width:28px;height:24px;color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;place-items:center;padding:0;display:grid}.time-input__step[data-v-fbdfb138]:hover{background:var(--color-primary-soft);color:var(--color-primary)}.time-input__colon[data-v-fbdfb138]{color:var(--color-text-muted);padding-top:12px;font-size:.9375rem;font-weight:700;line-height:1}.time-input__footer[data-v-fbdfb138]{border-top:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:8px;margin-top:8px;padding-top:8px;display:flex}.time-input__now[data-v-fbdfb138]{color:var(--color-primary);font:inherit;cursor:pointer;background:0 0;border:none;padding:4px 0;font-size:.75rem;font-weight:600}.time-input__confirm[data-v-fbdfb138]{background:var(--color-primary);color:#fff;min-height:32px;font:inherit;cursor:pointer;border:none;border-radius:8px;padding:0 14px;font-size:.75rem;font-weight:700}.meeting-report-form[data-v-5d6dd8b7]{flex-direction:column;gap:16px;display:flex}.form-error[data-v-5d6dd8b7]{color:var(--color-danger);margin:0;font-size:.875rem}.customer-card[data-v-5d6dd8b7]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);align-items:center;gap:12px;padding:12px;display:flex}.avatar[data-v-5d6dd8b7]{border-radius:999px;place-items:center;width:52px;height:52px;font-weight:700;display:grid}.customer-card p[data-v-5d6dd8b7]{color:var(--color-text-muted);margin:2px 0 0;font-size:.8rem}h3[data-v-5d6dd8b7]{margin:0 0 8px;font-size:.9rem}.type-grid[data-v-5d6dd8b7]{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.type-btn[data-v-5d6dd8b7]{border:1.5px solid var(--color-border);background:var(--color-surface);cursor:pointer;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:6px;min-height:72px;padding:8px 6px;font-size:.72rem;display:flex}.type-btn--active[data-v-5d6dd8b7]{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-soft);border-width:2px;font-weight:700}.two-cols[data-v-5d6dd8b7]{grid-template-columns:1fr 1fr;gap:8px;display:grid}.two-cols--date[data-v-5d6dd8b7]{align-items:end}.meeting-report-form[data-v-5d6dd8b7] .meeting-time.form-group,.meeting-report-form[data-v-5d6dd8b7] .meeting-date.form-group{margin-bottom:0}.meeting-report-form[data-v-5d6dd8b7] .meeting-time .form-label,.meeting-report-form[data-v-5d6dd8b7] .meeting-date .form-label{margin-bottom:6px;font-size:.85rem;font-weight:400}.meeting-report-form[data-v-5d6dd8b7] .meeting-date .persian-date-input__trigger{border-radius:12px;gap:6px;padding-inline:10px;font-size:.8125rem}.meeting-report-form[data-v-5d6dd8b7] .meeting-date .persian-date-input__trigger>span:first-child{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.meeting-report-form[data-v-5d6dd8b7] .meeting-date .persian-date-input__icon{flex-shrink:0}.meeting-report-form[data-v-5d6dd8b7] .meeting-date .persian-date-input__icon svg{width:16px;height:16px}.meeting-report-form[data-v-5d6dd8b7] .meeting-time .time-input__trigger{border-radius:12px;gap:6px;padding-inline:10px;font-size:.8125rem}.meeting-report-form[data-v-5d6dd8b7] .meeting-time .time-input__icon svg{width:16px;height:16px}.reminder-box[data-v-5d6dd8b7] .meeting-time .time-input__panel{top:auto;bottom:calc(100% + 6px)}.field[data-v-5d6dd8b7]{flex-direction:column;gap:6px;font-size:.85rem;display:flex}.field input[data-v-5d6dd8b7],.field textarea[data-v-5d6dd8b7]{border:1px solid var(--color-border);font:inherit;resize:vertical;border-radius:12px;padding:12px}.field em[data-v-5d6dd8b7]{color:var(--color-text-muted);align-self:flex-end;font-size:.75rem;font-style:normal}.files[data-v-5d6dd8b7]{gap:8px;display:flex}.file-thumb[data-v-5d6dd8b7],.file-add[data-v-5d6dd8b7]{border-radius:12px;width:64px;height:64px}.file-thumb[data-v-5d6dd8b7]{background:linear-gradient(145deg,#4b5563,#1f2937)}.file-add[data-v-5d6dd8b7]{border:1.5px dashed var(--color-border);color:var(--color-text-muted);cursor:pointer;background:0 0;font-size:1.4rem}.reminder-box[data-v-5d6dd8b7]{background:var(--color-surface);border-radius:var(--radius-md);flex-direction:column;gap:12px;padding:14px;display:flex}.reminder-box__head[data-v-5d6dd8b7]{justify-content:space-between;align-items:center;display:flex}.toggle[data-v-5d6dd8b7]{cursor:pointer;background:#d1d5db;border:none;border-radius:999px;width:46px;height:28px;padding:3px}.toggle span[data-v-5d6dd8b7]{background:var(--color-surface);border-radius:999px;width:22px;height:22px;transition:transform .15s;display:block}.toggle--on[data-v-5d6dd8b7]{background:var(--color-primary)}.toggle--on span[data-v-5d6dd8b7]{transform:translate(-18px)}.submit[data-v-5d6dd8b7]{background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:14px;width:100%;min-height:52px;font-weight:700}.submit[data-v-5d6dd8b7]:disabled{opacity:.6;cursor:not-allowed}.meeting-report-overlay[data-v-be25c066]{z-index:200;background:#00000073;justify-content:center;align-items:flex-end;padding:0;display:flex;position:fixed;inset:0}.meeting-report-sheet[data-v-be25c066]{background:var(--color-bg);width:100%;max-width:560px;max-height:min(94dvh,760px);color:var(--color-text);padding:10px 16px calc(16px + env(safe-area-inset-bottom,0px));box-shadow:var(--shadow-md);border-radius:20px 20px 0 0;flex-direction:column;gap:16px;display:flex;overflow-y:auto}.meeting-report-sheet__handle[data-v-be25c066]{background:var(--color-border);border-radius:999px;width:40px;height:4px;margin:4px auto 0}.meeting-report-sheet__head[data-v-be25c066]{justify-content:space-between;align-items:center;gap:12px;display:flex}.meeting-report-sheet__head h2[data-v-be25c066]{margin:0;font-size:1.0625rem;font-weight:700}.meeting-report-sheet__close[data-v-be25c066]{background:var(--color-surface);width:36px;height:36px;color:var(--color-text-muted);cursor:pointer;border:none;border-radius:999px;place-items:center;padding:0;font-size:1.5rem;line-height:1;display:grid}.meeting-report-sheet-enter-active[data-v-be25c066],.meeting-report-sheet-leave-active[data-v-be25c066]{transition:opacity .2s}.meeting-report-sheet-enter-active .meeting-report-sheet[data-v-be25c066],.meeting-report-sheet-leave-active .meeting-report-sheet[data-v-be25c066]{transition:transform .22s}.meeting-report-sheet-enter-from[data-v-be25c066],.meeting-report-sheet-leave-to[data-v-be25c066]{opacity:0}.meeting-report-sheet-enter-from .meeting-report-sheet[data-v-be25c066],.meeting-report-sheet-leave-to .meeting-report-sheet[data-v-be25c066]{transform:translateY(100%)}@media (width>=768px){.meeting-report-overlay[data-v-be25c066]{align-items:center;padding:24px}.meeting-report-sheet[data-v-be25c066]{background:var(--color-surface);border-radius:16px;max-width:520px;max-height:min(88dvh,720px);padding:20px 20px 24px}.meeting-report-sheet__handle[data-v-be25c066]{display:none}.meeting-report-sheet-enter-from .meeting-report-sheet[data-v-be25c066],.meeting-report-sheet-leave-to .meeting-report-sheet[data-v-be25c066]{transform:translateY(16px)scale(.98)}}.customer-page[data-v-6624b742]{background:var(--color-bg)}.customer-scroll[data-v-6624b742]{padding:0 var(--page-padding) 100px;flex-direction:column;gap:0;display:flex}.profile-card[data-v-6624b742],.purchase-card[data-v-6624b742],.panel-card[data-v-6624b742]{box-shadow:none;background:0 0;border-radius:0}.profile-card[data-v-6624b742]{border-bottom:1px solid var(--color-border);align-items:center;gap:14px;padding:12px 0 16px;display:flex}.profile-card__avatar[data-v-6624b742]{color:#111;border-radius:999px;flex-shrink:0;place-items:center;width:56px;height:56px;font-size:1.25rem;font-weight:700;display:grid}.profile-card__avatar--lg[data-v-6624b742]{width:56px;height:56px}.profile-card__info[data-v-6624b742]{flex:1;min-width:0}.profile-card__name-row[data-v-6624b742]{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.profile-card__name-row h2[data-v-6624b742],.profile-banner h2[data-v-6624b742]{margin:0;font-size:1.05rem;font-weight:700;line-height:1.35}.profile-card__phone[data-v-6624b742],.profile-banner p[data-v-6624b742]{color:var(--color-text-muted);margin:6px 0 0;font-size:.875rem;line-height:1.4}.status-badge[data-v-6624b742]{white-space:nowrap;border-radius:6px;align-items:center;height:24px;padding:0 10px;font-size:.75rem;font-weight:600;display:inline-flex}.status-badge--active[data-v-6624b742]{background:var(--color-success-light);color:var(--color-success)}.status-badge--inactive[data-v-6624b742]{color:#6b7280;background:#f3f4f6}.status-badge--new[data-v-6624b742]{color:#6d28d9;background:#ede9fe}.status-badge--on-dark[data-v-6624b742]{color:#fff;background:#fff3}.profile-banner[data-v-6624b742]{background:var(--color-primary);color:#fff;border-radius:var(--radius-lg);padding:16px;box-shadow:0 1px 2px #1018280a,0 6px 16px #1018280d}.profile-banner__top[data-v-6624b742]{grid-template-columns:56px 1fr auto;align-items:start;gap:10px;display:grid}.profile-banner__stats[data-v-6624b742]{border-top:1px solid #fff3;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:14px;padding-top:12px;display:grid}.profile-banner__stats span[data-v-6624b742]{opacity:.85;font-size:.7rem;display:block}.profile-banner__stats strong[data-v-6624b742]{margin-top:4px;font-size:.8rem;display:block}.tabs[data-v-6624b742]{border-bottom:1px solid var(--color-border);align-items:stretch;width:100%;display:flex}.tab[data-v-6624b742]{appearance:none;color:#9ca3af;cursor:pointer;background:0 0;border:0;flex:1;justify-content:center;align-items:flex-end;min-width:0;padding:10px 0 0;font-family:inherit;font-size:.875rem;font-weight:400;line-height:1.5;display:flex}.tab__text[data-v-6624b742]{white-space:nowrap;padding-bottom:11px;display:inline-block;position:relative}.tab--active[data-v-6624b742]{color:var(--color-text);font-weight:700}.tab--active .tab__text[data-v-6624b742]:after{content:"";inset-inline:0;background:var(--color-primary);border-radius:2px 2px 0 0;height:3px;position:absolute;bottom:-1px}.section-title[data-v-6624b742]{color:var(--color-text);margin:0;font-size:.95rem;font-weight:700}.purchase-card[data-v-6624b742]{border-bottom:1px solid var(--color-border);padding:16px 0}.purchase-stats[data-v-6624b742]{grid-template-columns:1fr 1px 1fr 1px 1fr;align-items:stretch;gap:0;margin-top:14px;display:grid}.purchase-stats__item[data-v-6624b742]{text-align:center;flex-direction:column;justify-content:flex-start;align-items:center;gap:4px;min-width:0;padding:0 6px;display:flex}.purchase-stats__divider[data-v-6624b742]{background:var(--color-border);align-self:stretch;width:1px}.purchase-stats__label[data-v-6624b742]{color:var(--color-text-muted);font-size:.72rem;line-height:1.4}.purchase-stats__value[data-v-6624b742]{color:var(--color-text);font-size:1rem;font-weight:700;line-height:1.25}.purchase-stats__unit[data-v-6624b742]{color:var(--color-text-muted);font-size:.72rem;font-style:normal;line-height:1.3}.panel-card[data-v-6624b742]{padding:0 0 8px;overflow:hidden}.panel-card--list[data-v-6624b742],.panel-card--reports[data-v-6624b742]{padding:16px 0}.agent-row[data-v-6624b742]{border:none;border-bottom:1px solid var(--color-border);text-align:start;cursor:pointer;background:0 0;align-items:center;gap:12px;width:100%;padding:16px 0;font-family:inherit;display:flex}.agent-row__avatar[data-v-6624b742]{width:44px;height:44px;color:var(--color-primary);background:#e8ecea;border-radius:999px;flex-shrink:0;place-items:center;font-weight:700;display:grid}.agent-row__info[data-v-6624b742]{flex:1;min-width:0}.agent-row__info strong[data-v-6624b742]{font-size:.9rem;font-weight:700;display:block}.agent-row__info p[data-v-6624b742]{color:var(--color-text-muted);margin:4px 0 0;font-size:.78rem}.agent-row__chevron[data-v-6624b742]{color:#9ca3af;flex-shrink:0}.orders-block[data-v-6624b742]{padding:14px 0 8px}.orders-block__head[data-v-6624b742]{justify-content:space-between;align-items:center;gap:12px;margin-bottom:4px;display:flex}.link-btn[data-v-6624b742]{color:#6b7280;cursor:pointer;background:0 0;border:none;padding:0;font-family:inherit;font-size:.8rem;font-weight:500}.order-row[data-v-6624b742]{border-bottom:1px solid var(--color-border);cursor:pointer;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:14px 0;font-family:inherit;display:grid}.panel-card--list .order-row[data-v-6624b742]:last-of-type,.orders-block .order-row[data-v-6624b742]:last-of-type{border-bottom:none}.order-row__title[data-v-6624b742]{align-items:center;gap:4px;min-width:0;display:inline-flex}.order-row__title strong[data-v-6624b742]{font-size:.875rem;font-weight:600;line-height:1.35}.order-row__chevron[data-v-6624b742]{color:#9ca3af;flex-shrink:0}.order-row__amount[data-v-6624b742]{color:var(--color-text);white-space:nowrap;font-size:.8125rem;font-weight:600}.status-pill[data-v-6624b742]{white-space:nowrap;border-radius:6px;justify-content:center;align-items:center;min-height:26px;padding:0 10px;font-size:.7rem;font-weight:600;display:inline-flex}.status-pill--warning[data-v-6624b742]{color:#c27803;background:#fff4e5}.status-pill--success[data-v-6624b742]{background:var(--color-success-light);color:var(--color-success)}.status-pill--info[data-v-6624b742]{background:var(--color-info-light);color:var(--color-info)}.empty-inline[data-v-6624b742]{text-align:center;color:var(--color-text-muted);margin:12px 0 4px;font-size:.85rem}.edit-btn[data-v-6624b742]{color:#3b82f6;cursor:pointer;white-space:nowrap;background:0 0;border:none;padding:0 4px;font-size:.875rem;font-weight:600}.meeting-filters[data-v-6624b742]{gap:8px;margin:12px 0 8px;padding-bottom:4px;display:flex;overflow-x:auto}.meeting-filter[data-v-6624b742]{border:1px solid var(--color-border);background:var(--color-bg);color:var(--color-text-muted);cursor:pointer;white-space:nowrap;border-radius:6px;padding:6px 12px;font-family:inherit;font-size:.72rem}.meeting-filter--active[data-v-6624b742]{border-color:var(--color-primary);background:var(--color-primary-soft);color:var(--color-primary);font-weight:700}.dashed-btn[data-v-6624b742]{border:1.5px dashed var(--color-primary);width:100%;color:var(--color-primary);border-radius:var(--radius-md);cursor:pointer;background:0 0;margin-top:12px;padding:14px;font-family:inherit;font-weight:700}.meeting-row[data-v-6624b742]{border-bottom:1px solid var(--color-border);align-items:center;gap:10px;padding:12px 0;display:flex}.meeting-row[data-v-6624b742]:last-of-type{border-bottom:none}.meeting-row__icon[data-v-6624b742]{border-radius:999px;flex-shrink:0;place-items:center;width:36px;height:36px;display:grid}.meeting-row__icon--green[data-v-6624b742]{background:var(--color-primary-soft);color:var(--color-primary)}.meeting-row__icon--blue[data-v-6624b742]{color:#0369a1;background:#e0f2fe}.meeting-row__icon--purple[data-v-6624b742]{color:#6d28d9;background:#ede9fe}.meeting-row__body[data-v-6624b742]{flex:1;min-width:0}.meeting-row__body strong[data-v-6624b742]{font-size:.875rem;display:block}.meeting-row__body p[data-v-6624b742]{color:var(--color-text-muted);margin:4px 0 0;font-size:.78rem;line-height:1.45}.meeting-row__date[data-v-6624b742]{color:var(--color-text-muted);flex-shrink:0;font-size:.75rem}.cta-bar[data-v-6624b742]{padding:12px var(--page-padding) calc(12px + env(safe-area-inset-bottom,0));background:linear-gradient(180deg, #eef1f000 0%, var(--color-bg) 32%);position:sticky;bottom:0}.cta[data-v-6624b742]{background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:14px;justify-content:center;align-items:center;gap:8px;width:100%;min-height:52px;font-family:inherit;font-size:.95rem;font-weight:700;display:flex}.empty[data-v-6624b742]{text-align:center;padding:40px} +.time-input[data-v-fbdfb138]{position:relative}.input[data-v-fbdfb138]{width:100%;height:var(--btn-height);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);padding:0 14px;font-size:.9375rem;transition:border-color .15s}.time-input__trigger[data-v-fbdfb138]{cursor:pointer;text-align:right;justify-content:space-between;align-items:center;gap:8px;display:flex}.time-input__trigger[data-v-fbdfb138]:focus{border-color:var(--color-primary);outline:none}.time-input__trigger.is-open[data-v-fbdfb138],.time-input__trigger[data-v-fbdfb138]:focus-visible{border-color:var(--color-primary)}.time-input__trigger[data-v-fbdfb138]:disabled{opacity:.6;cursor:not-allowed}.time-input__placeholder[data-v-fbdfb138]{color:var(--color-text-muted)}.time-input__trigger>span[data-v-fbdfb138]:first-child{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.time-input__icon[data-v-fbdfb138]{color:var(--color-text-muted);flex-shrink:0;align-items:center;display:flex}.input-error[data-v-fbdfb138]{border-color:var(--color-danger)}.input-error-text[data-v-fbdfb138]{color:var(--color-danger);margin:4px 0 0;font-size:.8125rem}.time-input__panel[data-v-fbdfb138]{z-index:320;border:1px solid var(--color-border);background:var(--color-surface);border-radius:12px;padding:8px;position:absolute;top:calc(100% + 4px);left:0;right:0;box-shadow:0 8px 24px #0f172a1f}.time-input__picker[data-v-fbdfb138]{grid-template-columns:1fr auto 1fr;align-items:center;gap:6px;display:grid}.time-input__spinner[data-v-fbdfb138]{border:1px solid var(--color-border);background:0 0;border-radius:10px;flex-direction:column;align-items:center;gap:2px;padding:4px 6px 6px;display:flex}.time-input__spinner-label[data-v-fbdfb138]{color:var(--color-text-muted);font-size:.6875rem;line-height:1.2}.time-input__value[data-v-fbdfb138]{letter-spacing:.04em;min-height:24px;color:var(--color-text);justify-content:center;align-items:center;font-size:.9375rem;font-weight:700;display:flex}.time-input__step[data-v-fbdfb138]{width:28px;height:24px;color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;place-items:center;padding:0;display:grid}.time-input__step[data-v-fbdfb138]:hover{background:var(--color-primary-soft);color:var(--color-primary)}.time-input__colon[data-v-fbdfb138]{color:var(--color-text-muted);padding-top:12px;font-size:.9375rem;font-weight:700;line-height:1}.time-input__footer[data-v-fbdfb138]{border-top:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:8px;margin-top:8px;padding-top:8px;display:flex}.time-input__now[data-v-fbdfb138]{color:var(--color-primary);font:inherit;cursor:pointer;background:0 0;border:none;padding:4px 0;font-size:.75rem;font-weight:600}.time-input__confirm[data-v-fbdfb138]{background:var(--color-primary);color:#fff;min-height:32px;font:inherit;cursor:pointer;border:none;border-radius:8px;padding:0 14px;font-size:.75rem;font-weight:700}.meeting-report-form[data-v-5d6dd8b7]{flex-direction:column;gap:16px;display:flex}.form-error[data-v-5d6dd8b7]{color:var(--color-danger);margin:0;font-size:.875rem}.customer-card[data-v-5d6dd8b7]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);align-items:center;gap:12px;padding:12px;display:flex}.avatar[data-v-5d6dd8b7]{border-radius:999px;place-items:center;width:52px;height:52px;font-weight:700;display:grid}.customer-card p[data-v-5d6dd8b7]{color:var(--color-text-muted);margin:2px 0 0;font-size:.8rem}h3[data-v-5d6dd8b7]{margin:0 0 8px;font-size:.9rem}.type-grid[data-v-5d6dd8b7]{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.type-btn[data-v-5d6dd8b7]{border:1.5px solid var(--color-border);background:var(--color-surface);cursor:pointer;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:6px;min-height:72px;padding:8px 6px;font-size:.72rem;display:flex}.type-btn--active[data-v-5d6dd8b7]{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-soft);border-width:2px;font-weight:700}.two-cols[data-v-5d6dd8b7]{grid-template-columns:1fr 1fr;gap:8px;display:grid}.two-cols--date[data-v-5d6dd8b7]{align-items:end}.meeting-report-form[data-v-5d6dd8b7] .meeting-time.form-group,.meeting-report-form[data-v-5d6dd8b7] .meeting-date.form-group{margin-bottom:0}.meeting-report-form[data-v-5d6dd8b7] .meeting-time .form-label,.meeting-report-form[data-v-5d6dd8b7] .meeting-date .form-label{margin-bottom:6px;font-size:.85rem;font-weight:400}.meeting-report-form[data-v-5d6dd8b7] .meeting-date .persian-date-input__trigger{border-radius:12px;gap:6px;padding-inline:10px;font-size:.8125rem}.meeting-report-form[data-v-5d6dd8b7] .meeting-date .persian-date-input__trigger>span:first-child{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.meeting-report-form[data-v-5d6dd8b7] .meeting-date .persian-date-input__icon{flex-shrink:0}.meeting-report-form[data-v-5d6dd8b7] .meeting-date .persian-date-input__icon svg{width:16px;height:16px}.meeting-report-form[data-v-5d6dd8b7] .meeting-time .time-input__trigger{border-radius:12px;gap:6px;padding-inline:10px;font-size:.8125rem}.meeting-report-form[data-v-5d6dd8b7] .meeting-time .time-input__icon svg{width:16px;height:16px}.reminder-box[data-v-5d6dd8b7] .meeting-time .time-input__panel{top:auto;bottom:calc(100% + 6px)}.field[data-v-5d6dd8b7]{flex-direction:column;gap:6px;font-size:.85rem;display:flex}.field input[data-v-5d6dd8b7],.field textarea[data-v-5d6dd8b7]{border:1px solid var(--color-border);font:inherit;resize:vertical;border-radius:12px;padding:12px}.field em[data-v-5d6dd8b7]{color:var(--color-text-muted);align-self:flex-end;font-size:.75rem;font-style:normal}.files[data-v-5d6dd8b7]{gap:8px;display:flex}.file-thumb[data-v-5d6dd8b7],.file-add[data-v-5d6dd8b7]{border-radius:12px;width:64px;height:64px}.file-thumb[data-v-5d6dd8b7]{background:linear-gradient(145deg,#4b5563,#1f2937)}.file-add[data-v-5d6dd8b7]{border:1.5px dashed var(--color-border);color:var(--color-text-muted);cursor:pointer;background:0 0;font-size:1.4rem}.reminder-box[data-v-5d6dd8b7]{background:var(--color-surface);border-radius:var(--radius-md);flex-direction:column;gap:12px;padding:14px;display:flex}.reminder-box__head[data-v-5d6dd8b7]{justify-content:space-between;align-items:center;display:flex}.toggle[data-v-5d6dd8b7]{cursor:pointer;background:#d1d5db;border:none;border-radius:999px;width:46px;height:28px;padding:3px}.toggle span[data-v-5d6dd8b7]{background:var(--color-surface);border-radius:999px;width:22px;height:22px;transition:transform .15s;display:block}.toggle--on[data-v-5d6dd8b7]{background:var(--color-primary)}.toggle--on span[data-v-5d6dd8b7]{transform:translate(-18px)}.submit[data-v-5d6dd8b7]{background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:14px;width:100%;min-height:52px;font-weight:700}.submit[data-v-5d6dd8b7]:disabled{opacity:.6;cursor:not-allowed}.meeting-report-overlay[data-v-be25c066]{z-index:200;background:#00000073;justify-content:center;align-items:flex-end;padding:0;display:flex;position:fixed;inset:0}.meeting-report-sheet[data-v-be25c066]{background:var(--color-bg);width:100%;max-width:560px;max-height:min(94dvh,760px);color:var(--color-text);padding:10px 16px calc(16px + env(safe-area-inset-bottom,0px));box-shadow:var(--shadow-md);border-radius:20px 20px 0 0;flex-direction:column;gap:16px;display:flex;overflow-y:auto}.meeting-report-sheet__handle[data-v-be25c066]{background:var(--color-border);border-radius:999px;width:40px;height:4px;margin:4px auto 0}.meeting-report-sheet__head[data-v-be25c066]{justify-content:space-between;align-items:center;gap:12px;display:flex}.meeting-report-sheet__head h2[data-v-be25c066]{margin:0;font-size:1.0625rem;font-weight:700}.meeting-report-sheet__close[data-v-be25c066]{background:var(--color-surface);width:36px;height:36px;color:var(--color-text-muted);cursor:pointer;border:none;border-radius:999px;place-items:center;padding:0;font-size:1.5rem;line-height:1;display:grid}.meeting-report-sheet-enter-active[data-v-be25c066],.meeting-report-sheet-leave-active[data-v-be25c066]{transition:opacity .2s}.meeting-report-sheet-enter-active .meeting-report-sheet[data-v-be25c066],.meeting-report-sheet-leave-active .meeting-report-sheet[data-v-be25c066]{transition:transform .22s}.meeting-report-sheet-enter-from[data-v-be25c066],.meeting-report-sheet-leave-to[data-v-be25c066]{opacity:0}.meeting-report-sheet-enter-from .meeting-report-sheet[data-v-be25c066],.meeting-report-sheet-leave-to .meeting-report-sheet[data-v-be25c066]{transform:translateY(100%)}@media (width>=768px){.meeting-report-overlay[data-v-be25c066]{align-items:center;padding:24px}.meeting-report-sheet[data-v-be25c066]{background:var(--color-surface);border-radius:16px;max-width:520px;max-height:min(88dvh,720px);padding:20px 20px 24px}.meeting-report-sheet__handle[data-v-be25c066]{display:none}.meeting-report-sheet-enter-from .meeting-report-sheet[data-v-be25c066],.meeting-report-sheet-leave-to .meeting-report-sheet[data-v-be25c066]{transform:translateY(16px)scale(.98)}}.customer-page[data-v-20a7b2ca]{background:var(--color-bg)}.customer-scroll[data-v-20a7b2ca]{padding:0 var(--page-padding) 100px;flex-direction:column;gap:0;display:flex}.profile-card[data-v-20a7b2ca],.purchase-card[data-v-20a7b2ca],.panel-card[data-v-20a7b2ca]{box-shadow:none;background:0 0;border-radius:0}.profile-card[data-v-20a7b2ca]{border-bottom:1px solid var(--color-border);align-items:center;gap:14px;padding:12px 0 16px;display:flex}.profile-card__avatar[data-v-20a7b2ca]{color:#111;border-radius:999px;flex-shrink:0;place-items:center;width:56px;height:56px;font-size:1.25rem;font-weight:700;display:grid}.profile-card__avatar--lg[data-v-20a7b2ca]{width:56px;height:56px}.profile-card__info[data-v-20a7b2ca]{flex:1;min-width:0}.profile-card__name-row[data-v-20a7b2ca]{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.profile-card__name-row h2[data-v-20a7b2ca],.profile-banner h2[data-v-20a7b2ca]{margin:0;font-size:1.05rem;font-weight:700;line-height:1.35}.profile-card__phone[data-v-20a7b2ca],.profile-banner p[data-v-20a7b2ca]{color:var(--color-text-muted);margin:6px 0 0;font-size:.875rem;line-height:1.4}.status-badge[data-v-20a7b2ca]{white-space:nowrap;border-radius:6px;align-items:center;height:24px;padding:0 10px;font-size:.75rem;font-weight:600;display:inline-flex}.status-badge--active[data-v-20a7b2ca]{background:var(--color-success-light);color:var(--color-success)}.status-badge--inactive[data-v-20a7b2ca]{color:#6b7280;background:#f3f4f6}.status-badge--new[data-v-20a7b2ca]{color:#6d28d9;background:#ede9fe}.status-badge--on-dark[data-v-20a7b2ca]{color:#fff;background:#fff3}.profile-banner[data-v-20a7b2ca]{background:var(--color-primary);color:#fff;border-radius:var(--radius-lg);padding:16px;box-shadow:0 1px 2px #1018280a,0 6px 16px #1018280d}.profile-banner__top[data-v-20a7b2ca]{grid-template-columns:56px 1fr auto;align-items:start;gap:10px;display:grid}.profile-banner__stats[data-v-20a7b2ca]{border-top:1px solid #fff3;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:14px;padding-top:12px;display:grid}.profile-banner__stats span[data-v-20a7b2ca]{opacity:.85;font-size:.7rem;display:block}.profile-banner__stats strong[data-v-20a7b2ca]{margin-top:4px;font-size:.8rem;display:block}.tabs[data-v-20a7b2ca]{border-bottom:1px solid var(--color-border);align-items:stretch;width:100%;display:flex}.tab[data-v-20a7b2ca]{appearance:none;color:#9ca3af;cursor:pointer;background:0 0;border:0;flex:1;justify-content:center;align-items:flex-end;min-width:0;padding:10px 0 0;font-family:inherit;font-size:.875rem;font-weight:400;line-height:1.5;display:flex}.tab__text[data-v-20a7b2ca]{white-space:nowrap;padding-bottom:11px;display:inline-block;position:relative}.tab--active[data-v-20a7b2ca]{color:var(--color-text);font-weight:700}.tab--active .tab__text[data-v-20a7b2ca]:after{content:"";inset-inline:0;background:var(--color-primary);border-radius:2px 2px 0 0;height:3px;position:absolute;bottom:-1px}.section-title[data-v-20a7b2ca]{color:var(--color-text);margin:0;font-size:.95rem;font-weight:700}.purchase-card[data-v-20a7b2ca]{border-bottom:1px solid var(--color-border);padding:16px 0}.purchase-stats[data-v-20a7b2ca]{grid-template-columns:1fr 1px 1fr 1px 1fr;align-items:stretch;gap:0;margin-top:14px;display:grid}.purchase-stats__item[data-v-20a7b2ca]{text-align:center;flex-direction:column;justify-content:flex-start;align-items:center;gap:4px;min-width:0;padding:0 6px;display:flex}.purchase-stats__divider[data-v-20a7b2ca]{background:var(--color-border);align-self:stretch;width:1px}.purchase-stats__label[data-v-20a7b2ca]{color:var(--color-text-muted);font-size:.72rem;line-height:1.4}.purchase-stats__value[data-v-20a7b2ca]{color:var(--color-text);font-size:1rem;font-weight:700;line-height:1.25}.purchase-stats__unit[data-v-20a7b2ca]{color:var(--color-text-muted);font-size:.72rem;font-style:normal;line-height:1.3}.panel-card[data-v-20a7b2ca]{padding:0 0 8px;overflow:hidden}.panel-card--list[data-v-20a7b2ca],.panel-card--reports[data-v-20a7b2ca]{padding:16px 0}.agent-row[data-v-20a7b2ca]{border:none;border-bottom:1px solid var(--color-border);text-align:start;cursor:pointer;background:0 0;align-items:center;gap:12px;width:100%;padding:16px 0;font-family:inherit;display:flex}.agent-row__avatar[data-v-20a7b2ca]{width:44px;height:44px;color:var(--color-primary);background:#e8ecea;border-radius:999px;flex-shrink:0;place-items:center;font-weight:700;display:grid}.agent-row__info[data-v-20a7b2ca]{flex:1;min-width:0}.agent-row__info strong[data-v-20a7b2ca]{font-size:.9rem;font-weight:700;display:block}.agent-row__info p[data-v-20a7b2ca]{color:var(--color-text-muted);margin:4px 0 0;font-size:.78rem}.agent-row__chevron[data-v-20a7b2ca]{color:#9ca3af;flex-shrink:0}.orders-block[data-v-20a7b2ca]{padding:14px 0 8px}.orders-block__head[data-v-20a7b2ca]{justify-content:space-between;align-items:center;gap:12px;margin-bottom:4px;display:flex}.link-btn[data-v-20a7b2ca]{color:#6b7280;cursor:pointer;background:0 0;border:none;padding:0;font-family:inherit;font-size:.8rem;font-weight:500}.order-row[data-v-20a7b2ca]{border-bottom:1px solid var(--color-border);cursor:pointer;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:14px 0;font-family:inherit;display:grid}.panel-card--list .order-row[data-v-20a7b2ca]:last-of-type,.orders-block .order-row[data-v-20a7b2ca]:last-of-type{border-bottom:none}.order-row__title[data-v-20a7b2ca]{align-items:center;gap:4px;min-width:0;display:inline-flex}.order-row__title strong[data-v-20a7b2ca]{font-size:.875rem;font-weight:600;line-height:1.35}.order-row__chevron[data-v-20a7b2ca]{color:#9ca3af;flex-shrink:0}.order-row__amount[data-v-20a7b2ca]{color:var(--color-text);white-space:nowrap;font-size:.8125rem;font-weight:600}.status-pill[data-v-20a7b2ca]{white-space:nowrap;border-radius:6px;justify-content:center;align-items:center;min-height:26px;padding:0 10px;font-size:.7rem;font-weight:600;display:inline-flex}.status-pill--warning[data-v-20a7b2ca]{color:#c27803;background:#fff4e5}.status-pill--success[data-v-20a7b2ca]{background:var(--color-success-light);color:var(--color-success)}.status-pill--info[data-v-20a7b2ca]{background:var(--color-info-light);color:var(--color-info)}.empty-inline[data-v-20a7b2ca]{text-align:center;color:var(--color-text-muted);margin:12px 0 4px;font-size:.85rem}.edit-btn[data-v-20a7b2ca]{color:#3b82f6;cursor:pointer;white-space:nowrap;background:0 0;border:none;padding:0 4px;font-size:.875rem;font-weight:600}.meeting-filters[data-v-20a7b2ca]{gap:8px;margin:12px 0 8px;padding-bottom:4px;display:flex;overflow-x:auto}.meeting-filter[data-v-20a7b2ca]{border:1px solid var(--color-border);background:var(--color-bg);color:var(--color-text-muted);cursor:pointer;white-space:nowrap;border-radius:6px;padding:6px 12px;font-family:inherit;font-size:.72rem}.meeting-filter--active[data-v-20a7b2ca]{border-color:var(--color-primary);background:var(--color-primary-soft);color:var(--color-primary);font-weight:700}.dashed-btn[data-v-20a7b2ca]{border:1.5px dashed var(--color-primary);width:100%;color:var(--color-primary);border-radius:var(--radius-md);cursor:pointer;background:0 0;margin-top:12px;padding:14px;font-family:inherit;font-weight:700}.meeting-row[data-v-20a7b2ca]{border-bottom:1px solid var(--color-border);align-items:center;gap:10px;padding:12px 0;display:flex}.meeting-row[data-v-20a7b2ca]:last-of-type{border-bottom:none}.meeting-row__icon[data-v-20a7b2ca]{border-radius:999px;flex-shrink:0;place-items:center;width:36px;height:36px;display:grid}.meeting-row__icon--green[data-v-20a7b2ca]{background:var(--color-primary-soft);color:var(--color-primary)}.meeting-row__icon--blue[data-v-20a7b2ca]{color:#0369a1;background:#e0f2fe}.meeting-row__icon--purple[data-v-20a7b2ca]{color:#6d28d9;background:#ede9fe}.meeting-row__body[data-v-20a7b2ca]{flex:1;min-width:0}.meeting-row__body strong[data-v-20a7b2ca]{font-size:.875rem;display:block}.meeting-row__body p[data-v-20a7b2ca]{color:var(--color-text-muted);margin:4px 0 0;font-size:.78rem;line-height:1.45}.meeting-row__date[data-v-20a7b2ca]{color:var(--color-text-muted);flex-shrink:0;font-size:.75rem}.cta-bar[data-v-20a7b2ca]{padding:12px var(--page-padding) calc(12px + env(safe-area-inset-bottom,0));background:linear-gradient(180deg, #eef1f000 0%, var(--color-bg) 32%);position:sticky;bottom:0}.cta[data-v-20a7b2ca]{background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:14px;justify-content:center;align-items:center;gap:8px;width:100%;min-height:52px;font-family:inherit;font-size:.95rem;font-weight:700;display:flex}.empty[data-v-20a7b2ca]{text-align:center;padding:40px}.customer-desk-head[data-v-20a7b2ca]{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.edit-btn--desk[data-v-20a7b2ca]{border-radius:12px;padding:10px 16px;font-size:.875rem}@media (width>=768px){.customer-page[data-v-20a7b2ca]{max-width:var(--content-max-width);padding:20px var(--page-padding) 28px;box-sizing:border-box;grid-template-columns:minmax(260px,300px) minmax(0,1fr);align-items:start;gap:20px;margin-inline:auto;display:grid}.customer-desk-head[data-v-20a7b2ca]{grid-column:1/-1}.customer-scroll[data-v-20a7b2ca]{padding:0;display:contents}.profile-card[data-v-20a7b2ca],.profile-banner[data-v-20a7b2ca]{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-card);border-bottom:none;grid-area:2/1/span 12;padding:20px;position:sticky;top:16px}.tabs[data-v-20a7b2ca]{grid-area:2/2;margin:0}.purchase-card[data-v-20a7b2ca],.panel-card[data-v-20a7b2ca]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);grid-column:2;padding:16px 20px}.cta-bar[data-v-20a7b2ca]{background:0 0;grid-column:2;padding:0;position:static}} diff --git a/dist/assets/CustomerDetailView-DC-nbBZ9.js b/dist/assets/CustomerDetailView-DC-nbBZ9.js deleted file mode 100644 index 0367e9c..0000000 --- a/dist/assets/CustomerDetailView-DC-nbBZ9.js +++ /dev/null @@ -1 +0,0 @@ -import{A as e,Ct as t,D as n,E as r,Et as i,F as a,K as o,L as s,M as c,N as l,O as u,P as d,R as f,St as p,Tt as m,Y as h,Z as g,_,g as v,it as y,j as b,k as x,mt as S,n as C,q as w,rt as T,t as E,tt as D,w as O,y as k,z as A}from"./BasicIcon-C6boaehV.js";import{o as j,u as M}from"./format-BHJptHdF.js";import{C as N,c as P,o as F}from"./index-fdhs4HNc.js";import{r as I,t as L}from"./constants-DXXK14Zz.js";import{t as R}from"./IconProgressClock-ChlGvv7_.js";import{t as ee}from"./IconPhone-C0bnM4fV.js";import{t as te}from"./IconEditPen-DLV3_yq2.js";import{t as ne}from"./IconClipboardEmpty-5Av_Gh0W.js";import{t as re}from"./PageSkeleton-sKuEY4NI.js";import{t as z}from"./crm-DmqasSZ_.js";import{t as ie}from"./PageHeader-Cd04Z6F_.js";import{t as B}from"./PersianDateInput-2Yt1srLL.js";var V=A({__name:`IconMail`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(h(),c(E,{icon:`vuesax-linear:sms`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),H={key:0,class:`form-label`},U=[`disabled`],ae={class:`time-input__icon`,"aria-hidden":`true`},W={class:`time-input__picker`,role:`group`,"aria-label":`انتخاب ساعت`},G={class:`time-input__spinner`},oe={class:`time-input__value`},K={class:`time-input__spinner`},se={class:`time-input__value`},ce={key:2,class:`input-error-text`},q={key:3,class:`form-hint`},J=C(A({__name:`TimeInput`,props:{modelValue:{},label:{},placeholder:{},hint:{},error:{},disabled:{type:Boolean}},emits:[`update:modelValue`],setup(r,{emit:a}){let s=r,c=a,u=S(null),m=S(!1),g=S(10),_=S(0),v=[0,5,10,15,20,25,30,35,40,45,50,55],y=e(()=>T(s.modelValue??``)),x=e(()=>y.value?E(y.value.hour,y.value.minute):``);D(()=>s.modelValue,e=>{let t=T(e??``);t&&(g.value=t.hour,_.value=C(t.minute))},{immediate:!0});function C(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 M(`${String(e).padStart(2,`0`)}:${String(t).padStart(2,`0`)}`)}function O(e,t){return`${String(e).padStart(2,`0`)}:${String(t).padStart(2,`0`)}`}function k(){if(!s.disabled){if(!m.value)if(y.value)g.value=y.value.hour,_.value=C(y.value.minute);else{let e=new Date;g.value=e.getHours(),_.value=C(e.getMinutes())}m.value=!m.value}}function A(){m.value=!1}function j(e){g.value=(g.value+e+24)%24}function N(e){let t=v.indexOf(_.value),n=((t<0?0:t)+e+v.length)%v.length;_.value=v[n]??0}function P(){c(`update:modelValue`,O(g.value,_.value)),A()}function F(){let e=new Date,t=e.getHours(),n=C(e.getMinutes());g.value=t,_.value=n,c(`update:modelValue`,O(t,n)),A()}function I(e){u.value?.contains(e.target)||A()}return w(()=>{document.addEventListener(`click`,I)}),o(()=>{document.removeEventListener(`click`,I)}),(e,a)=>(h(),d(`div`,{ref_key:`rootRef`,ref:u,class:`form-group time-input`},[r.label?(h(),d(`label`,H,i(r.label),1)):l(``,!0),b(`button`,{type:`button`,class:t([`input time-input__trigger`,{"input-error":r.error,"is-open":m.value}]),disabled:r.disabled,onClick:n(k,[`stop`])},[b(`span`,{class:t({"time-input__placeholder":!x.value})},i(x.value||r.placeholder||`انتخاب ساعت`),3),b(`span`,ae,[f(R,{size:18})])],10,U),m.value?(h(),d(`div`,{key:1,class:`time-input__panel`,onClick:a[4]||=n(()=>{},[`stop`])},[b(`div`,W,[b(`div`,G,[a[7]||=b(`span`,{class:`time-input__spinner-label`},`ساعت`,-1),b(`button`,{type:`button`,class:`time-input__step`,"aria-label":`یک ساعت بعد`,onClick:a[0]||=e=>j(1)},[...a[5]||=[b(`svg`,{width:`14`,height:`14`,viewBox:`0 0 24 24`,"aria-hidden":`true`},[b(`path`,{d:`M6 14l6-6 6 6`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`})],-1)]]),b(`strong`,oe,i(p(M)(String(g.value).padStart(2,`0`))),1),b(`button`,{type:`button`,class:`time-input__step`,"aria-label":`یک ساعت قبل`,onClick:a[1]||=e=>j(-1)},[...a[6]||=[b(`svg`,{width:`14`,height:`14`,viewBox:`0 0 24 24`,"aria-hidden":`true`},[b(`path`,{d:`M6 10l6 6 6-6`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`})],-1)]])]),a[11]||=b(`span`,{class:`time-input__colon`,"aria-hidden":`true`},`:`,-1),b(`div`,K,[a[10]||=b(`span`,{class:`time-input__spinner-label`},`دقیقه`,-1),b(`button`,{type:`button`,class:`time-input__step`,"aria-label":`پنج دقیقه بعد`,onClick:a[2]||=e=>N(1)},[...a[8]||=[b(`svg`,{width:`14`,height:`14`,viewBox:`0 0 24 24`,"aria-hidden":`true`},[b(`path`,{d:`M6 14l6-6 6 6`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`})],-1)]]),b(`strong`,se,i(p(M)(String(_.value).padStart(2,`0`))),1),b(`button`,{type:`button`,class:`time-input__step`,"aria-label":`پنج دقیقه قبل`,onClick:a[3]||=e=>N(-1)},[...a[9]||=[b(`svg`,{width:`14`,height:`14`,viewBox:`0 0 24 24`,"aria-hidden":`true`},[b(`path`,{d:`M6 10l6 6 6-6`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`})],-1)]])])]),b(`div`,{class:`time-input__footer`},[b(`button`,{type:`button`,class:`time-input__now`,onClick:F},`اکنون`),b(`button`,{type:`button`,class:`time-input__confirm`,onClick:P},`تأیید`)])])):l(``,!0),r.error?(h(),d(`p`,ce,i(r.error),1)):r.hint?(h(),d(`p`,q,i(r.hint),1)):l(``,!0)],512))}}),[[`__scopeId`,`data-v-fbdfb138`]]),le={class:`meeting-report-form`},ue={key:1,class:`form-error`},Y={class:`customer-card`},de={dir:`ltr`},X={class:`type-grid`},Z=[`onClick`],Q={class:`two-cols two-cols--date`},$={class:`field`},fe={class:`field`},pe={class:`reminder-box`},me={class:`reminder-box__head`},he=[`aria-pressed`],ge={class:`field`},_e={class:`two-cols two-cols--date`},ve={class:`field`},ye=[`disabled`],be=C(A({__name:`MeetingReportForm`,props:{customerId:{}},emits:[`success`],setup(e,{emit:n}){let r=e,a=n,o=z(),s=S(null),p=S(!0),_=S(!1),v=S(null),x=S(`in_person`),C=S(``),T=S(``),E=S(``),k=S(``),A=S(!0),j=S(``),M=S(``),N=S(``),P=S(``),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(!r.customerId){p.value=!1,v.value=`مشتری مشخص نشده است.`,s.value=null;return}p.value=!0,v.value=null;try{let e=await o.loadCustomerDetail(r.customerId);s.value=e.customer}catch(e){s.value=null,v.value=e instanceof Error?e.message:`بارگذاری مشتری ناموفق بود.`}finally{p.value=!1}}w(I),D(()=>r.customerId,I);async function L(){if(!r.customerId||!E.value.trim()||!C.value.trim()){v.value=`موضوع و تاریخ الزامی است.`;return}_.value=!0,v.value=null;try{await o.submitMeeting({customerId:r.customerId,type:x.value,title:E.value.trim(),subject:E.value.trim(),content:k.value.trim()||void 0,description:k.value.trim()||void 0,date:C.value.trim(),time:T.value.trim()||void 0,createReminder:A.value,reminderTitle:A.value?j.value.trim()||E.value.trim():void 0,reminderDate:A.value?M.value.trim()||C.value.trim():void 0,reminderTime:A.value?N.value.trim()||T.value.trim()||`10:00`:void 0,reminderNote:A.value&&P.value.trim()||void 0}),a(`success`)}catch(e){v.value=e instanceof Error?e.message:`ثبت گزارش ناموفق بود.`}finally{_.value=!1}}return(e,n)=>(h(),d(`div`,le,[p.value?(h(),c(re,{key:0,variant:`form`})):v.value?(h(),d(`p`,ue,i(v.value),1)):l(``,!0),s.value?(h(),d(u,{key:2},[b(`section`,Y,[b(`div`,{class:`avatar`,style:m({background:s.value.avatarColor})},i(s.value.avatarLetter),5),b(`div`,null,[b(`strong`,null,i(s.value.name),1),b(`p`,null,i(s.value.contactName),1),b(`p`,de,i(s.value.phone),1)])]),b(`section`,null,[n[9]||=b(`h3`,null,`نوع تعامل`,-1),b(`div`,X,[(h(),d(u,null,g(F,e=>b(`button`,{key:e.id,type:`button`,class:t([`type-btn`,{"type-btn--active":x.value===e.id}]),onClick:t=>x.value=e.id},[e.icon===`clipboard`?(h(),c(ne,{key:0,size:22})):e.icon===`phone`?(h(),c(ee,{key:1,size:22})):e.icon===`mail`?(h(),c(V,{key:2,size:22})):(h(),c(te,{key:3,size:22})),b(`span`,null,i(e.label),1)],10,Z)),64))])]),b(`section`,null,[n[10]||=b(`h3`,null,`تاریخ و زمان`,-1),b(`div`,Q,[f(B,{modelValue:C.value,"onUpdate:modelValue":n[0]||=e=>C.value=e,label:`تاریخ`,class:`meeting-date`},null,8,[`modelValue`]),f(J,{modelValue:T.value,"onUpdate:modelValue":n[1]||=e=>T.value=e,label:`ساعت`,placeholder:`مثلاً ۱۰:۳۰`,class:`meeting-time`},null,8,[`modelValue`])])]),b(`label`,$,[n[11]||=b(`span`,null,`موضوع گزارش`,-1),y(b(`input`,{"onUpdate:modelValue":n[2]||=e=>E.value=e,type:`text`},null,512),[[O,E.value]])]),b(`label`,fe,[n[12]||=b(`span`,null,`محتوای گزارش`,-1),y(b(`textarea`,{"onUpdate:modelValue":n[3]||=e=>k.value=e,rows:`5`,maxlength:`1000`},null,512),[[O,k.value]]),b(`em`,null,i(k.value.length.toLocaleString(`fa-IR`))+`/۱۰۰۰`,1)]),n[17]||=b(`section`,null,[b(`h3`,null,`تصاویر و فایل‌ها`),b(`div`,{class:`files`},[b(`div`,{class:`file-thumb`}),b(`div`,{class:`file-thumb`}),b(`button`,{type:`button`,class:`file-add`,"aria-label":`افزودن فایل`},`+`)])],-1),b(`section`,pe,[b(`div`,me,[n[14]||=b(`h3`,null,`یادآور`,-1),b(`button`,{type:`button`,class:t([`toggle`,{"toggle--on":A.value}]),"aria-pressed":A.value,onClick:n[4]||=e=>A.value=!A.value},[...n[13]||=[b(`span`,null,null,-1)]],10,he)]),A.value?(h(),d(u,{key:0},[b(`label`,ge,[n[15]||=b(`span`,null,`عنوان یادآور`,-1),y(b(`input`,{"onUpdate:modelValue":n[5]||=e=>j.value=e,type:`text`},null,512),[[O,j.value]])]),b(`div`,_e,[f(B,{modelValue:M.value,"onUpdate:modelValue":n[6]||=e=>M.value=e,label:`تاریخ یادآور`,class:`meeting-date`},null,8,[`modelValue`]),f(J,{modelValue:N.value,"onUpdate:modelValue":n[7]||=e=>N.value=e,label:`ساعت یادآور`,placeholder:`مثلاً ۱۰:۳۰`,class:`meeting-time`},null,8,[`modelValue`])]),b(`label`,ve,[n[16]||=b(`span`,null,`یادداشت یادآور (اختیاری)`,-1),y(b(`input`,{"onUpdate:modelValue":n[8]||=e=>P.value=e,type:`text`},null,512),[[O,P.value]])])],64)):l(``,!0)]),b(`button`,{type:`button`,class:`submit`,disabled:_.value,onClick:L},i(_.value?`در حال ثبت...`:`ثبت گزارش و یادآور`),9,ye)],64)):l(``,!0)]))}}),[[`__scopeId`,`data-v-5d6dd8b7`]]),xe={class:`meeting-report-sheet`},Se=C(A({__name:`MeetingReportOverlay`,props:{open:{type:Boolean},customerId:{}},emits:[`close`,`success`],setup(e,{emit:t}){let r=e,i=t;function a(){i(`close`)}function s(){i(`success`)}function u(e){e.key===`Escape`&&r.open&&a()}return D(()=>r.open,e=>{document.body.style.overflow=e?`hidden`:``,e?window.addEventListener(`keydown`,u):window.removeEventListener(`keydown`,u)},{immediate:!0}),o(()=>{document.body.style.overflow=``,window.removeEventListener(`keydown`,u)}),(t,r)=>(h(),c(x,{to:`body`},[f(k,{name:`meeting-report-sheet`},{default:T(()=>[e.open?(h(),d(`div`,{key:0,class:`meeting-report-overlay`,role:`dialog`,"aria-modal":`true`,"aria-labelledby":`meeting-report-title`,onClick:n(a,[`self`])},[b(`div`,xe,[r[1]||=b(`div`,{class:`meeting-report-sheet__handle`,"aria-hidden":`true`},null,-1),b(`header`,{class:`meeting-report-sheet__head`},[r[0]||=b(`h2`,{id:`meeting-report-title`},`ثبت گزارش ملاقات`,-1),b(`button`,{type:`button`,class:`meeting-report-sheet__close`,"aria-label":`بستن`,onClick:a},` × `)]),e.customerId?(h(),c(be,{key:e.customerId,"customer-id":e.customerId,onSuccess:s},null,8,[`customer-id`])):l(``,!0)])])):l(``,!0)]),_:1})]))}}),[[`__scopeId`,`data-v-be25c066`]]),Ce={key:0,class:`page customer-page`},we={class:`page__scroll page__scroll--with-nav customer-scroll`},Te={key:0,class:`profile-card`},Ee={class:`profile-card__info`},De={class:`profile-card__name-row`},Oe={class:`profile-card__phone`,dir:`ltr`},ke={key:1,class:`profile-banner`},Ae={class:`profile-banner__top`},je={dir:`ltr`},Me={class:`profile-banner__stats`},Ne={class:`tabs`,role:`tablist`},Pe=[`aria-selected`,`onClick`],Fe={class:`tab__text`},Ie={class:`purchase-card`},Le={class:`purchase-stats`},Re={class:`purchase-stats__item`},ze={class:`purchase-stats__value`},Be={class:`purchase-stats__item`},Ve={class:`purchase-stats__value`},He={class:`purchase-stats__item`},Ue={class:`purchase-stats__value`},We={class:`panel-card`},Ge={class:`agent-row__avatar`},Ke={class:`agent-row__info`},qe={class:`orders-block`},Je={class:`orders-block__head`},Ye=[`onClick`,`onKeydown`],Xe={class:`order-row__title`},Ze={class:`order-row__amount`},Qe={key:0,class:`empty-inline`},$e={key:3,class:`panel-card panel-card--list`},et=[`onClick`,`onKeydown`],tt={class:`order-row__title`},nt={class:`order-row__amount`},rt={key:0,class:`empty-inline`},it={key:4,class:`panel-card panel-card--reports`},at={class:`meeting-filters`},ot=[`onClick`],st={class:`meeting-row__body`},ct={class:`meeting-row__date`},lt={key:0,class:`empty-inline`},ut={key:0,class:`cta-bar`},dt={key:1,class:`page empty`},ft={key:2,class:`page empty`},pt=C(A({__name:`CustomerDetailView`,setup(n){let o=v(),y=_(),x=z(),C=P(),E=e(()=>String(o.query.id??``)),O=e(()=>String(o.query.tab??`info`)),k=e(()=>o.query.meetingReport===`1`),A=S(null),M=S([]),R=S([]),B=S(`all`),H=S(!0),U=S(null),ae=[{id:`info`,label:`اطلاعات`},{id:`orders`,label:`سفارش‌ها`},{id:`reports`,label:`گزارش‌ها و پیگیری‌ها`}];async function W(){if(!E.value){A.value=null,H.value=!1;return}H.value=!0,U.value=null;try{let e=await x.loadCustomerDetail(E.value);A.value=e.customer,M.value=e.orders,R.value=e.meetings}catch(e){A.value=null,U.value=e instanceof Error?e.message:`مشتری یافت نشد.`}finally{H.value=!1}}w(W),D(E,W);function G(e){y.replace({path:`/customer`,query:{id:E.value,tab:e}})}function oe(){y.push({path:`/customer`,query:{id:E.value,tab:`reports`,meetingReport:`1`}})}function K(){y.replace({path:`/customer`,query:{id:E.value,tab:`reports`}})}async function se(){K(),await W()}function ce(e){return e===`in_person`?`ملاقات حضوری`:e===`call`?`تماس`:e===`message`?`پیام`:`یادداشت`}let q=e(()=>A.value?.agentName||C.fullName||`واسطه`),J=e(()=>A.value?.agentCode||C.user?.agentCode||`—`),le=e(()=>q.value.charAt(0)),ue=[{id:`all`,label:`همه`},{id:`in_person`,label:`ملاقات حضوری`},{id:`call`,label:`تماس`},{id:`message`,label:`پیام`},{id:`note`,label:`یادداشت`}],Y=e(()=>B.value===`all`?R.value:R.value.filter(e=>e.type===B.value));function de(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 L[t]||e.statusLabel}function Q(e){let t=I[e.statusLabel];return t===`success`?`success`:t===`warning`||t===`danger`?`warning`:e.statusTone||`info`}let $=e(()=>M.value.slice(0,3));function fe(e){return e===`active`?`فعال`:e===`inactive`?`غیرفعال`:`جدید`}function pe(e){return e===`active`?`status-badge--active`:e===`inactive`?`status-badge--inactive`:`status-badge--new`}return(e,n)=>(h(),d(u,null,[A.value?(h(),d(`div`,Ce,[f(ie,{title:O.value===`reports`?`پروفایل مشتری`:`جزئیات مشتری`,"show-back":``,centered:``,onBack:n[1]||=e=>p(y).push(`/customers`)},a({_:2},[O.value===`info`?{name:`trailing`,fn:T(()=>[b(`button`,{type:`button`,class:`edit-btn`,onClick:n[0]||=e=>p(y).back()},`ویرایش`)]),key:`0`}:void 0]),1032,[`title`]),b(`div`,we,[O.value===`reports`?(h(),d(`section`,ke,[b(`div`,Ae,[b(`div`,{class:`profile-card__avatar profile-card__avatar--lg`,style:m({background:A.value.avatarColor})},i(A.value.avatarLetter),5),b(`div`,null,[b(`h2`,null,i(A.value.name),1),b(`p`,null,i(A.value.contactName),1),b(`p`,je,i(A.value.phone),1)]),n[5]||=b(`span`,{class:`status-badge status-badge--active status-badge--on-dark`},`فعال`,-1)]),b(`div`,Me,[b(`div`,null,[n[6]||=b(`span`,null,`سطح مشتری`,-1),b(`strong`,null,i(A.value.levelLabel),1)]),b(`div`,null,[n[7]||=b(`span`,null,`تاریخ اولین خرید`,-1),b(`strong`,null,i(A.value.firstPurchaseDate),1)]),b(`div`,null,[n[8]||=b(`span`,null,`تعداد سفارش`,-1),b(`strong`,null,i(p(j)(A.value.orderCount))+` سفارش`,1)])])])):(h(),d(`section`,Te,[b(`div`,{class:`profile-card__avatar`,style:m({background:A.value.avatarColor})},i(A.value.avatarLetter),5),b(`div`,Ee,[b(`div`,De,[b(`h2`,null,i(A.value.name),1),b(`span`,{class:t([`status-badge`,pe(A.value.status)])},i(fe(A.value.status)),3)]),b(`p`,Oe,i(A.value.phone),1)])])),b(`div`,Ne,[(h(),d(u,null,g(ae,e=>b(`button`,{key:e.id,type:`button`,role:`tab`,class:t([`tab`,{"tab--active":O.value===e.id}]),"aria-selected":O.value===e.id,onClick:t=>G(e.id)},[b(`span`,Fe,i(e.label),1)],10,Pe)),64))]),O.value===`info`?(h(),d(u,{key:2},[b(`section`,Ie,[n[16]||=b(`h3`,{class:`section-title`},`اطلاعات خرید`,-1),b(`div`,Le,[b(`div`,Re,[n[9]||=b(`span`,{class:`purchase-stats__label`},`تعداد سفارش`,-1),b(`strong`,ze,i(p(j)(A.value.orderCount)),1)]),n[14]||=b(`span`,{class:`purchase-stats__divider`,"aria-hidden":`true`},null,-1),b(`div`,Be,[n[10]||=b(`span`,{class:`purchase-stats__label`},`مجموع خرید`,-1),b(`strong`,Ve,i(p(j)(A.value.totalPurchaseToman)),1),n[11]||=b(`em`,{class:`purchase-stats__unit`},`تومان`,-1)]),n[15]||=b(`span`,{class:`purchase-stats__divider`,"aria-hidden":`true`},null,-1),b(`div`,He,[n[12]||=b(`span`,{class:`purchase-stats__label`},`میانگین هر سفارش`,-1),b(`strong`,Ue,i(p(j)(A.value.averageOrderToman)),1),n[13]||=b(`em`,{class:`purchase-stats__unit`},`تومان`,-1)])])]),b(`section`,We,[b(`button`,{type:`button`,class:`agent-row`,onClick:n[2]||=e=>p(y).push(`/profile`)},[b(`div`,Ge,i(le.value),1),b(`div`,Ke,[b(`strong`,null,i(q.value),1),b(`p`,null,`کد واسطه: `+i(J.value),1)]),f(F,{size:18,class:`agent-row__chevron`,"aria-hidden":`true`})]),b(`div`,qe,[b(`div`,Je,[n[17]||=b(`h3`,{class:`section-title`},`آخرین سفارش‌ها`,-1),b(`button`,{type:`button`,class:`link-btn`,onClick:n[3]||=e=>G(`orders`)},`مشاهده همه`)]),(h(!0),d(u,null,g($.value,e=>(h(),d(`article`,{key:e.id,class:`order-row`,role:`button`,tabindex:`0`,onClick:t=>X(e.id),onKeydown:r(t=>X(e.id),[`enter`])},[b(`div`,Xe,[b(`strong`,null,i(e.title),1),f(F,{size:14,class:`order-row__chevron`,"aria-hidden":`true`})]),b(`span`,Ze,i(p(j)(e.amountToman))+` تومان`,1),b(`span`,{class:t([`status-pill`,`status-pill--${Q(e)}`])},i(Z(e)),3)],40,Ye))),128)),$.value.length?l(``,!0):(h(),d(`p`,Qe,`سفارشی ثبت نشده است.`))])])],64)):O.value===`orders`?(h(),d(`section`,$e,[(h(!0),d(u,null,g(M.value,e=>(h(),d(`article`,{key:e.id,class:`order-row`,role:`button`,tabindex:`0`,onClick:t=>X(e.id),onKeydown:r(t=>X(e.id),[`enter`])},[b(`div`,tt,[b(`strong`,null,i(e.title),1),f(F,{size:14,class:`order-row__chevron`,"aria-hidden":`true`})]),b(`span`,nt,i(p(j)(e.amountToman))+` تومان`,1),b(`span`,{class:t([`status-pill`,`status-pill--${Q(e)}`])},i(Z(e)),3)],40,et))),128)),M.value.length?l(``,!0):(h(),d(`p`,rt,`سفارشی ثبت نشده است.`))])):(h(),d(`section`,it,[n[18]||=b(`h3`,{class:`section-title`},`تعاملات و پیگیری‌ها`,-1),b(`button`,{type:`button`,class:`dashed-btn`,onClick:oe},` + ثبت گزارش ملاقات جدید `),b(`div`,at,[(h(),d(u,null,g(ue,e=>b(`button`,{key:e.id,type:`button`,class:t([`meeting-filter`,{"meeting-filter--active":B.value===e.id}]),onClick:t=>B.value=e.id},i(e.label),11,ot)),64))]),(h(!0),d(u,null,g(Y.value,e=>(h(),d(`article`,{key:e.id,class:`meeting-row`},[b(`div`,{class:t([`meeting-row__icon`,de(e.type)])},[e.type===`in_person`?(h(),c(ne,{key:0,size:16})):e.type===`call`?(h(),c(ee,{key:1,size:16})):e.type===`message`?(h(),c(V,{key:2,size:16})):(h(),c(te,{key:3,size:16}))],2),b(`div`,st,[b(`strong`,null,i(ce(e.type)),1),b(`p`,null,i(e.description||e.title),1)]),b(`span`,ct,i(e.date),1)]))),128)),Y.value.length?l(``,!0):(h(),d(`p`,lt,` گزارشی برای این فیلتر ثبت نشده است. `))]))]),O.value===`info`?(h(),d(`footer`,ut,[b(`button`,{type:`button`,class:`cta`,onClick:n[4]||=e=>p(y).push(`/categories`)},[f(N,{size:20,color:`#fff`}),n[19]||=s(` سفارش جدید برای این مشتری `,-1)])])):l(``,!0)])):H.value?(h(),d(`div`,dt,[f(re,{variant:`detail`})])):(h(),d(`div`,ft,[b(`p`,null,i(U.value||`مشتری یافت نشد.`),1)])),f(Se,{open:k.value,"customer-id":E.value,onClose:K,onSuccess:se},null,8,[`open`,`customer-id`])],64))}}),[[`__scopeId`,`data-v-6624b742`]]);export{pt as default}; \ No newline at end of file diff --git a/dist/assets/CustomersView--0EpADIk.css b/dist/assets/CustomersView--0EpADIk.css deleted file mode 100644 index c4fd605..0000000 --- a/dist/assets/CustomersView--0EpADIk.css +++ /dev/null @@ -1 +0,0 @@ -.customer-create-form[data-v-a166152e]{flex-direction:column;gap:12px;display:flex}.customer-create-form__intro[data-v-a166152e]{color:var(--color-text-muted);margin:0;font-size:.875rem;line-height:1.7}.customer-create-form__fields[data-v-a166152e]{background:var(--color-surface);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);flex-direction:column;gap:12px;padding:16px;display:flex}.customer-create-overlay[data-v-82c86546]{z-index:200;background:#00000073;justify-content:center;align-items:flex-end;padding:0;display:flex;position:fixed;inset:0}.customer-create-sheet[data-v-82c86546]{background:var(--color-bg);width:100%;max-width:520px;max-height:min(92dvh,680px);color:var(--color-text);padding:10px 16px calc(16px + env(safe-area-inset-bottom,0px));box-shadow:var(--shadow-md);border-radius:20px 20px 0 0;flex-direction:column;gap:16px;display:flex;overflow-y:auto}.customer-create-sheet__handle[data-v-82c86546]{background:var(--color-border);border-radius:999px;width:40px;height:4px;margin:4px auto 0}.customer-create-sheet__head[data-v-82c86546]{justify-content:space-between;align-items:center;gap:12px;display:flex}.customer-create-sheet__head h2[data-v-82c86546]{margin:0;font-size:1.0625rem;font-weight:700}.customer-create-sheet__close[data-v-82c86546]{background:var(--color-surface);width:36px;height:36px;color:var(--color-text-muted);cursor:pointer;border:none;border-radius:999px;place-items:center;padding:0;font-size:1.5rem;line-height:1;display:grid}.customer-create-sheet-enter-active[data-v-82c86546],.customer-create-sheet-leave-active[data-v-82c86546]{transition:opacity .2s}.customer-create-sheet-enter-active .customer-create-sheet[data-v-82c86546],.customer-create-sheet-leave-active .customer-create-sheet[data-v-82c86546]{transition:transform .22s}.customer-create-sheet-enter-from[data-v-82c86546],.customer-create-sheet-leave-to[data-v-82c86546]{opacity:0}.customer-create-sheet-enter-from .customer-create-sheet[data-v-82c86546],.customer-create-sheet-leave-to .customer-create-sheet[data-v-82c86546]{transform:translateY(100%)}@media (width>=768px){.customer-create-overlay[data-v-82c86546]{align-items:center;padding:24px}.customer-create-sheet[data-v-82c86546]{background:var(--color-surface);border-radius:16px;max-width:440px;max-height:min(85dvh,620px);padding:20px 20px 24px}.customer-create-sheet__handle[data-v-82c86546]{display:none}.customer-create-sheet-enter-from .customer-create-sheet[data-v-82c86546],.customer-create-sheet-leave-to .customer-create-sheet[data-v-82c86546]{transform:translateY(16px)scale(.98)}}.customers-page[data-v-f25758ff]{background:var(--color-bg)}.customers-scroll[data-v-f25758ff]{padding:8px var(--page-padding) 24px;flex-direction:column;gap:12px;display:flex}.toolbar[data-v-f25758ff]{grid-template-columns:1fr 44px;align-items:center;gap:8px;display:grid}.filter-btn[data-v-f25758ff]{border:1px solid var(--color-border);background:var(--color-surface);cursor:pointer;border-radius:12px;place-items:center;width:44px;height:44px;display:grid}.summary-card[data-v-f25758ff]{background:var(--color-primary);color:#fff;border-radius:var(--radius-lg);align-items:center;gap:12px;padding:16px;display:flex}.nav-add-btn[data-v-f25758ff]{width:40px;height:40px;color:var(--color-text);cursor:pointer;background:0 0;border:none;place-items:center;padding:0;display:grid}.summary-card__icon[data-v-f25758ff]{background:#ffffff2e;border-radius:999px;flex-shrink:0;place-items:center;width:44px;height:44px;display:grid}.summary-card__cols[data-v-f25758ff]{flex:1;grid-template-columns:1fr auto 1fr;align-items:stretch;gap:12px;display:grid}.summary-card__divider[data-v-f25758ff]{background:#ffffff59;align-self:stretch;width:1px}.summary-card__cols span[data-v-f25758ff],.summary-card__cols em[data-v-f25758ff]{opacity:.85;font-size:.75rem;font-style:normal;display:block}.summary-card__cols>div[data-v-f25758ff]{text-align:center}.summary-card__cols strong[data-v-f25758ff]{margin-top:4px;font-size:1.05rem;display:block}.tabs[data-v-f25758ff]{border-bottom:1px solid var(--color-border);align-items:stretch;width:100%;display:flex}.tab[data-v-f25758ff]{appearance:none;color:#9ca3af;cursor:pointer;background:0 0;border:0;flex:1;justify-content:center;align-items:flex-end;min-width:0;padding:10px 0 0;font-family:inherit;font-size:.9375rem;font-weight:400;line-height:1.5;display:flex}.tab__text[data-v-f25758ff]{padding-bottom:11px;display:inline-block;position:relative}.tab--active[data-v-f25758ff]{color:var(--color-text);font-weight:700}.tab--active .tab__text[data-v-f25758ff]:after{content:"";background:var(--color-primary);border-radius:2px 2px 0 0;height:3px;position:absolute;bottom:-1px;left:0;right:0}.customer-card[data-v-f25758ff]{background:var(--color-surface);border-radius:var(--radius-md);text-align:start;cursor:pointer;box-shadow:var(--shadow-sm);border:none;grid-template-columns:48px 1fr auto 18px;align-items:center;gap:10px;padding:12px;font-family:inherit;display:grid}.customer-card__avatar[data-v-f25758ff]{color:#111;border-radius:999px;place-items:center;width:48px;height:48px;font-weight:700;display:grid}.customer-card__top[data-v-f25758ff]{justify-content:flex-start;align-items:center;gap:8px;display:flex}.customer-card__body p[data-v-f25758ff]{color:var(--color-text-muted);margin:2px 0 0;font-size:.78rem}.status[data-v-f25758ff]{white-space:nowrap;border-radius:999px;flex-shrink:0;padding:6px 12px;font-size:.75rem;font-weight:600;line-height:1}.status--ok[data-v-f25758ff]{color:#2e7d32;background:#e8f5e9}.status--off[data-v-f25758ff]{color:#757575;background:#f5f5f5}.status--new[data-v-f25758ff]{color:#1565c0;background:#e3f2fd}.chevron[data-v-f25758ff]{color:var(--color-text-muted);flex-shrink:0}.promo[data-v-f25758ff]{background:var(--color-primary-soft);border-radius:var(--radius-md);padding:14px}.promo strong[data-v-f25758ff]{margin-bottom:4px;display:block}.promo p[data-v-f25758ff]{color:var(--color-text-muted);margin:0;font-size:.8rem} diff --git a/dist/assets/CustomersView-Khlai4Rw.js b/dist/assets/CustomersView-Khlai4Rw.js new file mode 100644 index 0000000..f8afc7d --- /dev/null +++ b/dist/assets/CustomersView-Khlai4Rw.js @@ -0,0 +1 @@ +import{A as e,Ct as t,Dt as n,Et as ee,J as r,L as i,M as a,N as o,O as s,P as c,Q as l,R as u,X as d,_ as te,g as ne,ht as f,it as p,j as m,n as h,nt as g,wt as _,z as v}from"./BasicIcon-Bnxm-DKk.js";import{o as y}from"./format-C72AoJ2H.js";import{E as re,o as ie,w as b}from"./index-DB4cQnln.js";import{t as ae}from"./IconFilter-DHL8PKX0.js";import{t as x}from"./PageSkeleton-CpZ7eT1v.js";import{t as S}from"./crm-CZ7XH3z9.js";import{t as C}from"./PageHeader-BxTTQB_F.js";import{t as w}from"./SearchField-CGW0jRdh.js";import{t as T}from"./CustomerCreateOverlay-CStx-5j-.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`},z={class:`customer-card__top`},B=h(v({__name:`CustomersView`,setup(h){let v=ne(),B=te(),oe=S(),V=f(String(v.query.q??``)),H=e(()=>String(v.query.status??`all`)),U=f([]),W=f(!0),G=f(null),K=e(()=>U.value),q=e(()=>v.query.create===`1`),se=e(()=>U.value.filter(e=>e.status===`active`).length),ce=e(()=>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 oe.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),g([H,V],J);function Y(e){B.replace({path:`/customers`,query:{...e===`all`?{}:{status:e},...V.value?{q:V.value}:{}}})}function X(e){V.value=e,B.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(){B.push({path:`/customers`,query:{...Z(),create:`1`}})}function $(){B.replace({path:`/customers`,query:Z()})}async function de(e){if(e){await B.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(e,r)=>(d(),c(`div`,E,[u(C,{class:`mobile-only`,title:`مشتریان من`,"show-back":``,centered:``,onBack:r[0]||=e=>t(B).back()},{trailing:p(()=>[m(`button`,{type:`button`,class:`nav-add-btn`,"aria-label":`ثبت مشتری`,onClick:Q},[u(b,{size:22})])]),_:1}),m(`header`,D,[r[2]||=m(`div`,null,[m(`h1`,{class:`desktop-page__title`},`مشتریان من`),m(`p`,{class:`desktop-page__subtitle`},`مدیریت مشتریان و پیگیری خریدها`)],-1),m(`button`,{type:`button`,class:`desk-add-btn`,onClick:Q},[u(b,{size:18}),r[1]||=i(` ثبت مشتری `,-1)])]),m(`div`,O,[m(`div`,k,[u(w,{"model-value":V.value,placeholder:`جستجو بر اساس نام یا موبایل...`,"onUpdate:modelValue":X},null,8,[`model-value`]),m(`button`,{type:`button`,class:`filter-btn`,"aria-label":`فیلتر وضعیت`,onClick:fe},[u(ae,{size:18})])]),m(`section`,A,[m(`div`,j,[u(re,{size:22,color:`#fff`})]),m(`div`,M,[m(`div`,null,[r[3]||=m(`span`,null,`تعداد مشتری فعال`,-1),m(`strong`,null,n(t(y)(se.value)),1)]),r[6]||=m(`span`,{class:`summary-card__divider`,"aria-hidden":`true`},null,-1),m(`div`,null,[r[4]||=m(`span`,null,`مجموع خرید (ریال)`,-1),m(`strong`,null,n(t(y)(ce.value)),1),r[5]||=m(`em`,null,`تومان`,-1)])])]),m(`div`,N,[(d(),c(s,null,l(le,e=>m(`button`,{key:e.id,type:`button`,role:`tab`,class:_([`tab`,{"tab--active":H.value===e.id}]),"aria-selected":H.value===e.id,onClick:t=>Y(e.id)},[m(`span`,F,n(e.label),1)],10,P)),64))]),W.value?(d(),a(x,{key:0,variant:`list`})):G.value?(d(),c(`p`,I,n(G.value),1)):o(``,!0),(d(!0),c(s,null,l(K.value,e=>(d(),c(`button`,{key:e.id,type:`button`,class:`customer-card`,onClick:n=>t(B).push({path:`/customer`,query:{id:e.id}})},[m(`div`,{class:`customer-card__avatar`,style:ee({background:e.avatarColor})},n(e.avatarLetter),5),m(`div`,R,[m(`div`,z,[m(`strong`,null,n(e.name),1)]),m(`p`,null,n(e.phone),1),m(`p`,null,`مجموع خرید: `+n(t(y)(e.totalPurchaseToman))+` تومان`,1)]),m(`span`,{class:_([`status`,{"status--ok":e.status===`active`,"status--off":e.status===`inactive`,"status--new":e.status===`new`}])},n(ue(e.status)),3),u(ie,{size:18,class:`chevron`})],8,L))),128)),r[7]||=m(`section`,{class:`promo`},[m(`div`,null,[m(`strong`,null,`افزایش مشتریان = افزایش سطح شما`),m(`p`,null,`با جذب مشتریان بیشتر به سطح VIP برسید`)])],-1)]),u(T,{open:q.value,onClose:$,onSuccess:de},null,8,[`open`])]))}}),[[`__scopeId`,`data-v-a6283622`]]);export{B as default}; \ No newline at end of file diff --git a/dist/assets/CustomersView-ZfDgnskm.css b/dist/assets/CustomersView-ZfDgnskm.css new file mode 100644 index 0000000..453d58f --- /dev/null +++ b/dist/assets/CustomersView-ZfDgnskm.css @@ -0,0 +1 @@ +.customers-page[data-v-a6283622]{background:var(--color-bg)}.customers-scroll[data-v-a6283622]{padding:8px var(--page-padding) 24px;flex-direction:column;gap:12px;display:flex}.toolbar[data-v-a6283622]{grid-template-columns:1fr 44px;align-items:center;gap:8px;display:grid}.filter-btn[data-v-a6283622]{border:1px solid var(--color-border);background:var(--color-surface);cursor:pointer;border-radius:12px;place-items:center;width:44px;height:44px;display:grid}.summary-card[data-v-a6283622]{background:var(--color-primary);color:#fff;border-radius:var(--radius-lg);align-items:center;gap:12px;padding:16px;display:flex}.nav-add-btn[data-v-a6283622]{width:40px;height:40px;color:var(--color-text);cursor:pointer;background:0 0;border:none;place-items:center;padding:0;display:grid}.summary-card__icon[data-v-a6283622]{background:#ffffff2e;border-radius:999px;flex-shrink:0;place-items:center;width:44px;height:44px;display:grid}.summary-card__cols[data-v-a6283622]{flex:1;grid-template-columns:1fr auto 1fr;align-items:stretch;gap:12px;display:grid}.summary-card__divider[data-v-a6283622]{background:#ffffff59;align-self:stretch;width:1px}.summary-card__cols span[data-v-a6283622],.summary-card__cols em[data-v-a6283622]{opacity:.85;font-size:.75rem;font-style:normal;display:block}.summary-card__cols>div[data-v-a6283622]{text-align:center}.summary-card__cols strong[data-v-a6283622]{margin-top:4px;font-size:1.05rem;display:block}.tabs[data-v-a6283622]{border-bottom:1px solid var(--color-border);align-items:stretch;width:100%;display:flex}.tab[data-v-a6283622]{appearance:none;color:#9ca3af;cursor:pointer;background:0 0;border:0;flex:1;justify-content:center;align-items:flex-end;min-width:0;padding:10px 0 0;font-family:inherit;font-size:.9375rem;font-weight:400;line-height:1.5;display:flex}.tab__text[data-v-a6283622]{padding-bottom:11px;display:inline-block;position:relative}.tab--active[data-v-a6283622]{color:var(--color-text);font-weight:700}.tab--active .tab__text[data-v-a6283622]:after{content:"";background:var(--color-primary);border-radius:2px 2px 0 0;height:3px;position:absolute;bottom:-1px;left:0;right:0}.customer-card[data-v-a6283622]{background:var(--color-surface);border-radius:var(--radius-md);text-align:start;cursor:pointer;box-shadow:var(--shadow-sm);border:none;grid-template-columns:48px 1fr auto 18px;align-items:center;gap:10px;padding:12px;font-family:inherit;display:grid}.customer-card__avatar[data-v-a6283622]{color:#111;border-radius:999px;place-items:center;width:48px;height:48px;font-weight:700;display:grid}.customer-card__top[data-v-a6283622]{justify-content:flex-start;align-items:center;gap:8px;display:flex}.customer-card__body p[data-v-a6283622]{color:var(--color-text-muted);margin:2px 0 0;font-size:.78rem}.status[data-v-a6283622]{white-space:nowrap;border-radius:999px;flex-shrink:0;padding:6px 12px;font-size:.75rem;font-weight:600;line-height:1}.status--ok[data-v-a6283622]{color:#2e7d32;background:#e8f5e9}.status--off[data-v-a6283622]{color:#757575;background:#f5f5f5}.status--new[data-v-a6283622]{color:#1565c0;background:#e3f2fd}.chevron[data-v-a6283622]{color:var(--color-text-muted);flex-shrink:0}.promo[data-v-a6283622]{background:var(--color-primary-soft);border-radius:var(--radius-md);padding:14px}.promo strong[data-v-a6283622]{margin-bottom:4px;display:block}.promo p[data-v-a6283622]{color:var(--color-text-muted);margin:0;font-size:.8rem}.customers-desk-head[data-v-a6283622]{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.desk-add-btn[data-v-a6283622]{background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:12px;flex-shrink:0;align-items:center;gap:8px;padding:10px 16px;font-family:inherit;font-size:.875rem;font-weight:700;display:inline-flex}@media (width>=768px){.customers-page[data-v-a6283622]{max-width:var(--content-max-width);padding:20px var(--page-padding) 28px;box-sizing:border-box;margin-inline:auto}.customers-scroll[data-v-a6283622]{padding:0}.toolbar[data-v-a6283622]{grid-template-columns:minmax(280px,420px) auto;justify-content:start}.filter-btn[data-v-a6283622]{width:auto;color:var(--color-text-muted);padding:0 14px;font-size:.8125rem;font-weight:600}.customer-card[data-v-a6283622]{box-shadow:var(--shadow-card);border:1px solid var(--color-border)}.customer-card .chevron[data-v-a6283622]{display:none}.customers-scroll>.customer-card[data-v-a6283622]{display:grid}}@media (width>=1200px){.customers-scroll[data-v-a6283622]{grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:12px;display:grid}.toolbar[data-v-a6283622],.summary-card[data-v-a6283622],.tabs[data-v-a6283622],.promo[data-v-a6283622],.customers-scroll>p[data-v-a6283622],.customers-scroll[data-v-a6283622]>.page-skeleton{grid-column:1/-1}} diff --git a/dist/assets/CustomersView-_yD0xFZV.js b/dist/assets/CustomersView-_yD0xFZV.js deleted file mode 100644 index da0b641..0000000 --- a/dist/assets/CustomersView-_yD0xFZV.js +++ /dev/null @@ -1 +0,0 @@ -import{A as e,Ct as t,D as n,Et as r,K as i,L as a,M as o,N as s,O as c,P as l,R as u,St as d,Tt as f,Y as p,Z as m,_ as h,g,j as _,k as v,mt as y,n as b,q as x,rt as S,tt as C,y as w,z as T}from"./BasicIcon-C6boaehV.js";import{t as E}from"./http-BC1hNfZ4.js";import{c as D,o as O}from"./format-BHJptHdF.js";import{a as k}from"./validation-BD7oi-2I.js";import{c as A,n as j,o as M,x as N,y as P}from"./index-fdhs4HNc.js";import{t as F}from"./IconFilter-D9NdLZ7w.js";import{t as I}from"./FormErrorBanner-CjdBfIQT.js";import{n as L,r as R,t as z}from"./formErrors-DglFjYkZ.js";import{t as B}from"./PageSkeleton-sKuEY4NI.js";import{t as V}from"./crm-DmqasSZ_.js";import{t as H}from"./PageHeader-Cd04Z6F_.js";import{t as U}from"./SearchField-CRmbblW7.js";import{t as W}from"./BaseInput-C6eO_Qjy.js";var G={class:`customer-create-form`},K={class:`customer-create-form__fields`},q=b(T({__name:`CustomerCreateForm`,emits:[`success`],setup(e,{expose:t,emit:n}){let r=n,i=A(),o=V(),s=y(``),c=y(``),d=y(``),f=y(``),m=y({}),h=y(``),g=y(!1);function v(e){m.value=L(m.value,e),R(m.value)||(h.value=``)}async function b(){if(m.value={},h.value=``,!i.isAgent){h.value=`فقط واسطه می‌تواند مشتری به لیست خود اضافه کند.`;return}let e=D(d.value),t={};if(s.value.trim()||(t.firstName=`نام الزامی است.`),c.value.trim()||(t.lastName=`نام خانوادگی الزامی است.`),k(e)||(t.phone=`شماره موبایل معتبر نیست.`),R(t)){m.value=t,h.value=z;return}g.value=!0;try{let t=await o.registerCustomer({firstName:s.value.trim(),lastName:c.value.trim(),phone:e,businessName:f.value.trim()||void 0});r(`success`,t?.id)}catch(e){h.value=e instanceof E||e instanceof Error?e.message:`ثبت مشتری ناموفق بود.`}finally{g.value=!1}}return t({submit:b,saving:g}),(e,t)=>(p(),l(`div`,G,[t[8]||=_(`p`,{class:`customer-create-form__intro`},` مشتری به لیست شما اضافه می‌شود و بعد از ورود با همین شماره، سفارش‌هایش به حساب شما وصل می‌ماند. `,-1),u(I,{message:h.value},null,8,[`message`]),_(`div`,K,[u(W,{modelValue:s.value,"onUpdate:modelValue":[t[0]||=e=>s.value=e,t[1]||=e=>v(`firstName`)],label:`نام`,placeholder:`نام مشتری`,error:m.value.firstName},null,8,[`modelValue`,`error`]),u(W,{modelValue:c.value,"onUpdate:modelValue":[t[2]||=e=>c.value=e,t[3]||=e=>v(`lastName`)],label:`نام خانوادگی`,placeholder:`نام خانوادگی`,error:m.value.lastName},null,8,[`modelValue`,`error`]),u(W,{modelValue:d.value,"onUpdate:modelValue":[t[4]||=e=>d.value=e,t[5]||=e=>v(`phone`)],label:`شماره موبایل`,type:`tel`,inputmode:`tel`,dir:`ltr`,placeholder:`۰۹۱۲۳۴۵۶۷۸۹`,error:m.value.phone},null,8,[`modelValue`,`error`]),u(W,{modelValue:f.value,"onUpdate:modelValue":t[6]||=e=>f.value=e,label:`نام فروشگاه یا برند (اختیاری)`,placeholder:`مثلاً بوتیک رز`},null,8,[`modelValue`])]),u(j,{block:``,loading:g.value,disabled:g.value,onClick:b},{default:S(()=>[...t[7]||=[a(` ثبت مشتری `,-1)]]),_:1},8,[`loading`,`disabled`])]))}}),[[`__scopeId`,`data-v-a166152e`]]),J={class:`customer-create-sheet`},Y=b(T({__name:`CustomerCreateOverlay`,props:{open:{type:Boolean}},emits:[`close`,`success`],setup(e,{emit:t}){let r=e,a=t;function c(){a(`close`)}function d(e){a(`success`,e)}function f(e){e.key===`Escape`&&r.open&&c()}return C(()=>r.open,e=>{document.body.style.overflow=e?`hidden`:``,e?window.addEventListener(`keydown`,f):window.removeEventListener(`keydown`,f)},{immediate:!0}),i(()=>{document.body.style.overflow=``,window.removeEventListener(`keydown`,f)}),(t,r)=>(p(),o(v,{to:`body`},[u(w,{name:`customer-create-sheet`},{default:S(()=>[e.open?(p(),l(`div`,{key:0,class:`customer-create-overlay`,role:`dialog`,"aria-modal":`true`,"aria-labelledby":`customer-create-title`,onClick:n(c,[`self`])},[_(`div`,J,[r[1]||=_(`div`,{class:`customer-create-sheet__handle`,"aria-hidden":`true`},null,-1),_(`header`,{class:`customer-create-sheet__head`},[r[0]||=_(`h2`,{id:`customer-create-title`},`افزودن مشتری`,-1),_(`button`,{type:`button`,class:`customer-create-sheet__close`,"aria-label":`بستن`,onClick:c},` × `)]),u(q,{onSuccess:d})])])):s(``,!0)]),_:1})]))}}),[[`__scopeId`,`data-v-82c86546`]]),X={class:`page customers-page`},Z={class:`page__scroll page__scroll--with-nav customers-scroll`},Q={class:`toolbar`},ee={class:`summary-card`},te={class:`summary-card__icon`,"aria-hidden":`true`},ne={class:`summary-card__cols`},re={class:`tabs`,role:`tablist`},ie=[`aria-selected`,`onClick`],ae={class:`tab__text`},oe={key:1},se=[`onClick`],ce={class:`customer-card__body`},le={class:`customer-card__top`},$=b(T({__name:`CustomersView`,setup(n){let i=g(),a=h(),v=V(),b=y(String(i.query.q??``)),w=e(()=>String(i.query.status??`all`)),T=y([]),E=y(!0),D=y(null),k=e(()=>T.value),A=e(()=>i.query.create===`1`),j=e(()=>T.value.filter(e=>e.status===`active`).length),I=e(()=>T.value.reduce((e,t)=>e+t.totalPurchaseToman,0)),L=[{id:`all`,label:`همه`},{id:`active`,label:`فعال`},{id:`inactive`,label:`غیرفعال`},{id:`new`,label:`جدید`}];async function R(){E.value=!0,D.value=null;try{T.value=await v.loadCustomers({q:b.value||void 0,status:w.value===`all`?void 0:w.value})}catch(e){D.value=e instanceof Error?e.message:`بارگذاری مشتریان ناموفق بود.`,T.value=[]}finally{E.value=!1}}x(R),C([w,b],R);function z(e){a.replace({path:`/customers`,query:{...e===`all`?{}:{status:e},...b.value?{q:b.value}:{}}})}function W(e){b.value=e,a.replace({path:`/customers`,query:{...w.value===`all`?{}:{status:w.value},...e?{q:e}:{}}})}function G(e){return e===`active`?`فعال`:e===`inactive`?`غیرفعال`:`جدید`}function K(e={}){return{...w.value===`all`?{}:{status:w.value},...b.value?{q:b.value}:{},...e}}function q(){a.push({path:`/customers`,query:{...K(),create:`1`}})}function J(){a.replace({path:`/customers`,query:K()})}async function $(e){if(e){await a.replace({path:`/customer`,query:{id:e}});return}J(),await R()}function ue(){let e=[`all`,`active`,`inactive`,`new`],t=e.indexOf(w.value);z(e[(t<0?0:t+1)%e.length]??`all`)}return(e,n)=>(p(),l(`div`,X,[u(H,{title:`مشتریان من`,"show-back":``,centered:``,onBack:n[0]||=e=>d(a).back()},{trailing:S(()=>[_(`button`,{type:`button`,class:`nav-add-btn`,"aria-label":`ثبت مشتری`,onClick:q},[u(P,{size:22})])]),_:1}),_(`div`,Z,[_(`div`,Q,[u(U,{"model-value":b.value,placeholder:`جستجو بر اساس نام یا موبایل...`,"onUpdate:modelValue":W},null,8,[`model-value`]),_(`button`,{type:`button`,class:`filter-btn`,"aria-label":`فیلتر وضعیت`,onClick:ue},[u(F,{size:18})])]),_(`section`,ee,[_(`div`,te,[u(N,{size:22,color:`#fff`})]),_(`div`,ne,[_(`div`,null,[n[1]||=_(`span`,null,`تعداد مشتری فعال`,-1),_(`strong`,null,r(d(O)(j.value)),1)]),n[4]||=_(`span`,{class:`summary-card__divider`,"aria-hidden":`true`},null,-1),_(`div`,null,[n[2]||=_(`span`,null,`مجموع خرید (ریال)`,-1),_(`strong`,null,r(d(O)(I.value)),1),n[3]||=_(`em`,null,`تومان`,-1)])])]),_(`div`,re,[(p(),l(c,null,m(L,e=>_(`button`,{key:e.id,type:`button`,role:`tab`,class:t([`tab`,{"tab--active":w.value===e.id}]),"aria-selected":w.value===e.id,onClick:t=>z(e.id)},[_(`span`,ae,r(e.label),1)],10,ie)),64))]),E.value?(p(),o(B,{key:0,variant:`list`})):D.value?(p(),l(`p`,oe,r(D.value),1)):s(``,!0),(p(!0),l(c,null,m(k.value,e=>(p(),l(`button`,{key:e.id,type:`button`,class:`customer-card`,onClick:t=>d(a).push({path:`/customer`,query:{id:e.id}})},[_(`div`,{class:`customer-card__avatar`,style:f({background:e.avatarColor})},r(e.avatarLetter),5),_(`div`,ce,[_(`div`,le,[_(`strong`,null,r(e.name),1)]),_(`p`,null,r(e.phone),1),_(`p`,null,`مجموع خرید: `+r(d(O)(e.totalPurchaseToman))+` تومان`,1)]),_(`span`,{class:t([`status`,{"status--ok":e.status===`active`,"status--off":e.status===`inactive`,"status--new":e.status===`new`}])},r(G(e.status)),3),u(M,{size:18,class:`chevron`})],8,se))),128)),n[5]||=_(`section`,{class:`promo`},[_(`div`,null,[_(`strong`,null,`افزایش مشتریان = افزایش سطح شما`),_(`p`,null,`با جذب مشتریان بیشتر به سطح VIP برسید`)])],-1)]),u(Y,{open:A.value,onClose:J,onSuccess:$},null,8,[`open`])]))}}),[[`__scopeId`,`data-v-f25758ff`]]);export{$ as default}; \ No newline at end of file diff --git a/dist/assets/EmptyState-C_QQeA_h.js b/dist/assets/EmptyState-CsuH56HV.js similarity index 56% rename from dist/assets/EmptyState-C_QQeA_h.js rename to dist/assets/EmptyState-CsuH56HV.js index 78b6812..f1aa1ec 100644 --- a/dist/assets/EmptyState-C_QQeA_h.js +++ b/dist/assets/EmptyState-CsuH56HV.js @@ -1 +1 @@ -import{A as e,Et as t,L as n,N as r,P as i,Q as a,R as o,Y as s,j as c,n as l,t as u,z as d}from"./BasicIcon-C6boaehV.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(d({__name:`EmptyState`,props:{message:{default:void 0},title:{default:void 0},variant:{default:`default`},icon:{default:void 0},iconSize:{default:72}},setup(l){let d=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=e(()=>d.icon??_[d.variant]??`vuesax-linear:clipboard-close`),b=e(()=>d.title??v[d.variant]??``),x=e(()=>d.message??``);return(e,d)=>(s(),i(`div`,f,[c(`div`,p,[a(e.$slots,`icon`,{},()=>[o(u,{icon:y.value,size:l.iconSize,"stroke-width":1.25},null,8,[`icon`,`size`])],!0)]),b.value||e.$slots.title?(s(),i(`h2`,m,[a(e.$slots,`title`,{},()=>[n(t(b.value),1)],!0)])):r(``,!0),x.value||e.$slots.message?(s(),i(`p`,h,[a(e.$slots,`message`,{},()=>[n(t(x.value),1)],!0)])):r(``,!0),e.$slots.default?(s(),i(`div`,g,[a(e.$slots,`default`,{},void 0,!0)])):r(``,!0)]))}}),[[`__scopeId`,`data-v-243a4fc7`]]);export{_ as t}; \ No newline at end of file +import{$ as e,A as t,Dt as n,L as r,N as i,P as a,R as o,X as s,j as c,n as l,t as u,z as d}from"./BasicIcon-Bnxm-DKk.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(d({__name:`EmptyState`,props:{message:{default:void 0},title:{default:void 0},variant:{default:`default`},icon:{default:void 0},iconSize:{default:72}},setup(l){let d=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=t(()=>d.icon??_[d.variant]??`vuesax-linear:clipboard-close`),b=t(()=>d.title??v[d.variant]??``),x=t(()=>d.message??``);return(t,d)=>(s(),a(`div`,f,[c(`div`,p,[e(t.$slots,`icon`,{},()=>[o(u,{icon:y.value,size:l.iconSize,"stroke-width":1.25},null,8,[`icon`,`size`])],!0)]),b.value||t.$slots.title?(s(),a(`h2`,m,[e(t.$slots,`title`,{},()=>[r(n(b.value),1)],!0)])):i(``,!0),x.value||t.$slots.message?(s(),a(`p`,h,[e(t.$slots,`message`,{},()=>[r(n(x.value),1)],!0)])):i(``,!0),t.$slots.default?(s(),a(`div`,g,[e(t.$slots,`default`,{},void 0,!0)])):i(``,!0)]))}}),[[`__scopeId`,`data-v-243a4fc7`]]);export{_ as t}; \ No newline at end of file diff --git a/dist/assets/FavoritesView-BFwf0qCn.js b/dist/assets/FavoritesView-BFwf0qCn.js deleted file mode 100644 index 62ae95d..0000000 --- a/dist/assets/FavoritesView-BFwf0qCn.js +++ /dev/null @@ -1 +0,0 @@ -import{D as e,Et as t,M as n,N as r,O as i,P as a,R as o,St as s,Y as c,Z as l,_ as u,j as d,mt as f,n as p,q as m,z as h}from"./BasicIcon-C6boaehV.js";import{l as g,o as _}from"./index-fdhs4HNc.js";import{t as v}from"./PageSkeleton-sKuEY4NI.js";import{t as y}from"./crm-DmqasSZ_.js";import{t as b}from"./PageHeader-Cd04Z6F_.js";import{t as x}from"./IconHeart-CZMe29Nz.js";var S={class:`page`},C={class:`page__scroll page__scroll--with-nav body`},w={key:1},T={key:2,class:`empty`},E=[`onClick`],D={class:`row__body`},O=[`onClick`],k=p(h({__name:`FavoritesView`,setup(p){let h=u(),k=g(),A=y(),j=f([]),M=f(!0),N=f(null);m(async()=>{M.value=!0;try{await k.hydrate();let e=await A.loadBrowseProducts(),t=new Set(k.ids);j.value=e.filter(e=>t.has(e.id))}catch(e){N.value=e instanceof Error?e.message:`بارگذاری علاقه‌مندی‌ها ناموفق بود.`}finally{M.value=!1}});async function P(e){await k.toggle(e),j.value=j.value.filter(t=>t.id!==e)}return(u,f)=>(c(),a(`div`,S,[o(b,{title:`علاقه‌مندی‌ها`,"show-back":``,centered:``,onBack:f[0]||=e=>s(h).back()}),d(`div`,C,[M.value?(c(),n(v,{key:0,variant:`grid`})):N.value?(c(),a(`p`,w,t(N.value),1)):j.value.length?r(``,!0):(c(),a(`p`,T,`هنوز محصولی ذخیره نکرده‌اید.`)),(c(!0),a(i,null,l(j.value,n=>(c(),a(`article`,{key:n.id,class:`row`,onClick:e=>s(h).push({path:`/product`,query:{id:n.id}})},[d(`div`,D,[d(`strong`,null,t(n.name),1),d(`span`,null,`کد `+t(n.code),1)]),d(`button`,{type:`button`,class:`bookmark`,"aria-label":`حذف از نشان‌شده‌ها`,onClick:e(e=>P(n.id),[`stop`])},[o(x,{size:18,filled:``,color:`#0a353c`})],8,O),o(_,{size:16,color:`#9aa3a0`})],8,E))),128))])]))}}),[[`__scopeId`,`data-v-8e70f9c9`]]);export{k as default}; \ No newline at end of file diff --git a/dist/assets/FavoritesView-C_rd5Wxy.css b/dist/assets/FavoritesView-C_rd5Wxy.css deleted file mode 100644 index 02e0ea6..0000000 --- a/dist/assets/FavoritesView-C_rd5Wxy.css +++ /dev/null @@ -1 +0,0 @@ -.body[data-v-8e70f9c9]{padding:12px var(--page-padding) 24px;flex-direction:column;gap:10px;display:flex}.empty[data-v-8e70f9c9]{text-align:center;color:var(--color-text-muted)}.row[data-v-8e70f9c9]{background:var(--color-surface);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);cursor:pointer;align-items:center;gap:8px;padding:12px;display:flex}.row__body[data-v-8e70f9c9]{flex:1;min-width:0}.row__body strong[data-v-8e70f9c9]{display:block}.row__body span[data-v-8e70f9c9]{color:var(--color-text-muted);font-size:.8rem}.bookmark[data-v-8e70f9c9]{cursor:pointer;background:0 0;border:none;place-items:center;width:36px;height:36px;display:grid} diff --git a/dist/assets/FavoritesView-DDiGZjUW.css b/dist/assets/FavoritesView-DDiGZjUW.css new file mode 100644 index 0000000..b2fd21d --- /dev/null +++ b/dist/assets/FavoritesView-DDiGZjUW.css @@ -0,0 +1 @@ +.body[data-v-13ba67a6]{padding:12px var(--page-padding) 24px;flex-direction:column;gap:10px;display:flex}.empty[data-v-13ba67a6]{text-align:center;color:var(--color-text-muted)}.row[data-v-13ba67a6]{background:var(--color-surface);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);cursor:pointer;align-items:center;gap:8px;padding:12px;display:flex}.row__body[data-v-13ba67a6]{flex:1;min-width:0}.row__body strong[data-v-13ba67a6]{display:block}.row__body span[data-v-13ba67a6]{color:var(--color-text-muted);font-size:.8rem}.bookmark[data-v-13ba67a6]{cursor:pointer;background:0 0;border:none;place-items:center;width:36px;height:36px;display:grid}@media (width>=768px){.favorites-page[data-v-13ba67a6]{max-width:var(--content-max-width);padding:20px var(--page-padding) 28px;box-sizing:border-box;margin-inline:auto}.body[data-v-13ba67a6]{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:0;display:grid}.empty[data-v-13ba67a6]{grid-column:1/-1;padding:48px 0}.row[data-v-13ba67a6]{box-shadow:var(--shadow-card);border:1px solid var(--color-border)}.row__chevron[data-v-13ba67a6]{display:none}}@media (width>=1200px){.body[data-v-13ba67a6]{grid-template-columns:repeat(3,minmax(0,1fr))}} diff --git a/dist/assets/FavoritesView-HolTmpnM.js b/dist/assets/FavoritesView-HolTmpnM.js new file mode 100644 index 0000000..c77cfb3 --- /dev/null +++ b/dist/assets/FavoritesView-HolTmpnM.js @@ -0,0 +1 @@ +import{Ct as e,D as t,Dt as n,J as r,M as i,N as a,O as o,P as s,Q as c,R as l,X as u,_ as d,ht as f,j as p,n as m,z as h}from"./BasicIcon-Bnxm-DKk.js";import{l as g,o as _}from"./index-DB4cQnln.js";import{t as v}from"./PageSkeleton-CpZ7eT1v.js";import{t as y}from"./crm-CZ7XH3z9.js";import{t as b}from"./PageHeader-BxTTQB_F.js";import{t as x}from"./IconHeart-CiwVmqRC.js";var S={class:`page favorites-page`},C={class:`page__scroll page__scroll--with-nav body`},w={key:1},T={key:2,class:`empty`},E=[`onClick`],D={class:`row__body`},O=[`onClick`],k=m(h({__name:`FavoritesView`,setup(m){let h=d(),k=g(),A=y(),j=f([]),M=f(!0),N=f(null);r(async()=>{M.value=!0;try{await k.hydrate();let e=await A.loadBrowseProducts(),t=new Set(k.ids);j.value=e.filter(e=>t.has(e.id))}catch(e){N.value=e instanceof Error?e.message:`بارگذاری علاقه‌مندی‌ها ناموفق بود.`}finally{M.value=!1}});async function P(e){await k.toggle(e),j.value=j.value.filter(t=>t.id!==e)}return(r,d)=>(u(),s(`div`,S,[l(b,{class:`mobile-only`,title:`علاقه‌مندی‌ها`,"show-back":``,centered:``,onBack:d[0]||=t=>e(h).back()}),d[1]||=p(`header`,{class:`desktop-page__head desktop-only`},[p(`h1`,{class:`desktop-page__title`},`علاقه‌مندی‌ها`),p(`p`,{class:`desktop-page__subtitle`},`محصولات ذخیره‌شده برای دسترسی سریع`)],-1),p(`div`,C,[M.value?(u(),i(v,{key:0,variant:`grid`})):N.value?(u(),s(`p`,w,n(N.value),1)):j.value.length?a(``,!0):(u(),s(`p`,T,`هنوز محصولی ذخیره نکرده‌اید.`)),(u(!0),s(o,null,c(j.value,r=>(u(),s(`article`,{key:r.id,class:`row`,onClick:t=>e(h).push({path:`/product`,query:{id:r.id}})},[p(`div`,D,[p(`strong`,null,n(r.name),1),p(`span`,null,`کد `+n(r.code),1)]),p(`button`,{type:`button`,class:`bookmark`,"aria-label":`حذف از نشان‌شده‌ها`,onClick:t(e=>P(r.id),[`stop`])},[l(x,{size:18,filled:``,color:`#0a353c`})],8,O),l(_,{class:`row__chevron`,size:16,color:`#9aa3a0`})],8,E))),128))])]))}}),[[`__scopeId`,`data-v-13ba67a6`]]);export{k as default}; \ No newline at end of file diff --git a/dist/assets/FormErrorBanner-CjdBfIQT.js b/dist/assets/FormErrorBanner-BahrrGfv.js similarity index 58% rename from dist/assets/FormErrorBanner-CjdBfIQT.js rename to dist/assets/FormErrorBanner-BahrrGfv.js index d7650de..e5b9d5e 100644 --- a/dist/assets/FormErrorBanner-CjdBfIQT.js +++ b/dist/assets/FormErrorBanner-BahrrGfv.js @@ -1 +1 @@ -import{Et as e,N as t,P as n,Y as r,n as i,z as a}from"./BasicIcon-C6boaehV.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?(r(),n(`div`,o,e(i.message),1)):t(``,!0)}}),[[`__scopeId`,`data-v-ba22e021`]]);export{s as t}; \ No newline at end of file +import{Dt as e,N as t,P as n,X as r,n as i,z as a}from"./BasicIcon-Bnxm-DKk.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?(r(),n(`div`,o,e(i.message),1)):t(``,!0)}}),[[`__scopeId`,`data-v-ba22e021`]]);export{s as t}; \ No newline at end of file diff --git a/dist/assets/HomeView-hY7x8Ola.js b/dist/assets/HomeView-sRBpjtF9.js similarity index 57% rename from dist/assets/HomeView-hY7x8Ola.js rename to dist/assets/HomeView-sRBpjtF9.js index 1814e07..5badf97 100644 --- a/dist/assets/HomeView-hY7x8Ola.js +++ b/dist/assets/HomeView-sRBpjtF9.js @@ -1 +1 @@ -import{A as e,Ct as t,D as n,Et as r,J as i,L as a,M as o,N as s,O as c,P as l,R as u,St as d,Tt as f,Y as p,Z as m,_ as ee,b as te,et as ne,j as h,mt as g,n as re,q as ie,rt as ae,z as _}from"./BasicIcon-C6boaehV.js";import{o as oe}from"./format-BHJptHdF.js";import{c as se,i as ce,l as le,o as ue,r as de,s as fe}from"./index-fdhs4HNc.js";import{t as pe}from"./IconChevronBack-DORV2H0q.js";import{t as me}from"./PageSkeleton-sKuEY4NI.js";import{n as he,r as ge,t as _e}from"./crm-DmqasSZ_.js";import{t as ve}from"./useGoBack-CgNp0uP9.js";import{t as v}from"./quick-catalog-request-Di7-t6Ua.js";import{t as ye}from"./IconHeart-CZMe29Nz.js";var be=`/assets/level-medal-Avpe4Lqa.webp`,y=`/assets/quick-club-crown-C-NrSU3x.webp`,b=`/assets/quick-categories-grid-BcZY1Wu0.webp`,x=`/assets/quick-new-products-DBGxsuVa.webp`,xe={class:`page home-page`},Se={class:`home-header mobile-only`},S={class:`home-header__user`},C={class:`home-header__hello`},w={class:`home-header__actions`},T={class:`home-desk-head desktop-only`},E={class:`home-desk-head__sub`},D={class:`page__scroll page__scroll--with-nav home-scroll`},O={key:0,class:`home-error`},k=[`aria-label`],A={class:`hero-banner__content`},j={key:0,class:`hero-banner__title`},Ce={key:0},we={key:1,class:`hero-banner__title`},Te={key:0,class:`hero-banner__dots`,role:`tablist`,"aria-label":`بنرها`},Ee=[`aria-label`,`aria-selected`,`onClick`],De={class:`quick-grid`,"aria-label":`دسترسی سریع`},Oe=[`onClick`],ke={class:`quick-card__icon`,"aria-hidden":`true`},Ae=[`src`],je={class:`quick-card__label`},Me={class:`level-card`,"aria-label":`سطح عضویت`},Ne={class:`level-card__top`},Pe={class:`level-card__identity`},Fe=[`src`],Ie={class:`level-card__text`},Le={class:`level-card__name`},Re={class:`level-card__next`},ze={class:`level-card__progress`},Be=[`aria-valuenow`],Ve={class:`level-card__points`},He={class:`section`},M={class:`section__head`},Ue={class:`product-row`},We=[`onClick`],Ge={key:0,class:`product-card__badge`},Ke={class:`product-card__body`},qe={class:`product-card__name`},Je={class:`product-card__sub`},Ye=[`aria-label`,`aria-pressed`,`onClick`],N=re(_({__name:`HomeView`,setup(re){let _=ee(),{goBack:N}=ve(`/`),P=se(),Xe=_e(),F=le(),I=g(!0),L=g(null),R=g([]),z=g(null),B=g(null),Ze=[{id:`qa-club`,label:`باشگاه مشتریان`,to:`/profile`,image:y},{id:`qa-cat`,label:`دسته بندی`,to:`/categories`,image:b},{id:`qa-new`,label:`محصولات جدید`,to:`/products`,image:x},{id:`qa-swatch`,label:`درخواست کالیته`,to:`/catalog-request`,image:v}],Qe=[{id:`qa-customers`,label:`باشگاه مشتریان`,to:`/customers`,image:y},{id:`qa-new`,label:`محصولات جدید`,to:`/products`,image:x},{id:`qa-cat`,label:`دسته بندی`,to:`/categories`,image:b},{id:`qa-swatch`,label:`درخواست کالیته`,to:`/catalog-request`,image:v}],$e=e(()=>P.isAgent?Qe:Ze),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=e(()=>H.value[U.value]??V),et=e(()=>{let e=K.value;return e.showTitle!==!1&&e.title||e.showSubtitle!==!1&&e.subtitle||e.showCta!==!1&&e.ctaLabel});function tt(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 nt(e){q(e),J()}let X=e(()=>P.user?.firstName||`کاربر`),Z=e(()=>P.user?.lastName||``),Q=e(()=>{if(B.value)return B.value;let e=P.user;return{label:e?.levelLabel||`برنزی`,nextLabel:e?.nextLevelLabel||`نقره‌ای`,pointsRemaining:e?.pointsToNext??0,progressPercent:e?.levelProgress??0}});i(Y),ie(async()=>{I.value=!0,L.value=null;try{let[e,t]=await Promise.all([Xe.loadBrowseProducts(),ge(`home_hero`).catch(()=>[]),F.hydrate()]);if(t.length&&(H.value=t),J(),R.value=e.filter(e=>e.isNew).slice(0,6),R.value.length||(R.value=e.slice(0,6)),P.isAgent)try{let e=await he();B.value={label:e.levelLabel,nextLabel:e.nextLevelLabel,pointsRemaining:e.pointsToNext,progressPercent:e.levelProgress}}catch{}}catch(e){L.value=e instanceof Error?e.message:`بارگذاری خانه ناموفق بود.`}finally{I.value=!1}});function $(e){if(/^https?:\/\//i.test(e)){window.location.assign(e);return}_.push(e)}function rt(){$(K.value.ctaLink.trim()||`/categories`)}async function it(e){z.value=null;try{await F.toggle(e)}catch(e){z.value=e instanceof Error?e.message:`ذخیره علاقه‌مندی ناموفق بود.`}}return(e,i)=>(p(),l(`div`,xe,[h(`header`,Se,[h(`button`,{type:`button`,class:`icon-btn`,"aria-label":`بازگشت`,onClick:i[0]||=(...e)=>d(N)&&d(N)(...e)},[u(pe,{size:20})]),h(`div`,S,[u(de,{class:`home-header__avatar`,src:d(P).user?.avatarUrl,initials:X.value.charAt(0),size:44},null,8,[`src`,`initials`]),h(`div`,null,[h(`p`,C,` سلام، `+r(X.value)+` `+r(Z.value),1),i[4]||=h(`p`,{class:`home-header__welcome`},`خوش آمدید`,-1)])]),h(`div`,w,[u(ce,{variant:`inline`}),h(`button`,{type:`button`,class:`icon-btn`,"aria-label":`اعلان‌ها`,onClick:i[1]||=e=>$(`/profile/notifications`)},[u(fe,{size:20})])])]),h(`header`,T,[h(`div`,null,[i[5]||=h(`h1`,{class:`home-desk-head__title`},`خانه`,-1),h(`p`,E,` سلام `+r(X.value)+` `+r(Z.value)+` — خوش آمدید `,1)])]),h(`div`,D,[L.value?(p(),l(`p`,O,r(L.value),1)):I.value?(p(),o(me,{key:1,variant:`home`})):(p(),l(c,{key:2},[h(`section`,{class:`hero-banner`,"aria-label":K.value.title},[u(te,{name:W.value,tag:`div`,class:`hero-banner__stage`},{default:ae(()=>[(p(),l(`article`,{key:K.value.id,class:t([`hero-slide`,{"hero-slide--copy":et.value}]),style:f(tt(K.value))},[i[6]||=h(`div`,{class:`hero-slide__media`,"aria-hidden":`true`},null,-1),h(`div`,A,[K.value.showTitle===!1?K.value.showSubtitle!==!1&&K.value.subtitle?(p(),l(`p`,we,[h(`span`,null,r(K.value.subtitle),1)])):s(``,!0):(p(),l(`h2`,j,[a(r(K.value.title)+` `,1),K.value.showSubtitle!==!1&&K.value.subtitle?(p(),l(`span`,Ce,r(K.value.subtitle),1)):s(``,!0)])),K.value.showCta!==!1&&K.value.ctaLabel?(p(),l(`button`,{key:2,type:`button`,class:`hero-banner__cta`,onClick:rt},r(K.value.ctaLabel),1)):s(``,!0)])],6))]),_:1},8,[`name`]),H.value.length>1?(p(),l(`div`,Te,[(p(!0),l(c,null,m(H.value,(e,n)=>(p(),l(`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=>nt(n)},null,10,Ee))),128))])):s(``,!0)],8,k),h(`section`,De,[(p(!0),l(c,null,m($e.value,e=>(p(),l(`button`,{key:e.id,type:`button`,class:`quick-card`,onClick:t=>$(e.to)},[h(`span`,ke,[e.image?(p(),l(`img`,{key:0,class:`quick-card__image`,src:e.image,alt:``},null,8,Ae)):(p(),o(ne(e.icon),{key:1,size:20}))]),h(`span`,je,r(e.label),1)],8,Oe))),128))]),h(`section`,Me,[h(`div`,Ne,[h(`div`,Pe,[h(`img`,{class:`level-card__medal`,src:d(be),alt:``,width:`48`,height:`48`,"aria-hidden":`true`},null,8,Fe),h(`div`,Ie,[i[7]||=h(`span`,{class:`level-card__eyebrow`},`سطح شما`,-1),h(`strong`,Le,r(Q.value.label),1),h(`span`,Re,`تا سطح `+r(Q.value.nextLabel),1)])]),h(`button`,{type:`button`,class:`level-card__details`,onClick:i[2]||=e=>$(`/profile`)},` جزئیات سطح `)]),h(`div`,ze,[h(`div`,{class:`level-card__bar`,role:`progressbar`,"aria-valuenow":Q.value.progressPercent,"aria-valuemin":`0`,"aria-valuemax":`100`},[h(`span`,{class:`level-card__bar-fill`,style:f({width:`${Q.value.progressPercent}%`})},null,4)],8,Be),h(`span`,Ve,r(d(oe)(Q.value.pointsRemaining))+` امتیاز دیگر `,1)])]),h(`section`,He,[h(`div`,M,[i[9]||=h(`h3`,{class:`section__title`},`جدیدترین محصولات`,-1),h(`button`,{type:`button`,class:`section__link`,onClick:i[3]||=e=>$(`/products`)},[i[8]||=a(` مشاهده همه `,-1),u(ue,{size:14})])]),h(`div`,Ue,[(p(!0),l(c,null,m(R.value,(e,i)=>(p(),l(`article`,{key:e.id,class:`product-card`,onClick:t=>$(`/product?id=${e.id}`)},[h(`div`,{class:t([`product-card__image`,`product-card__image--${i%3}`]),style:f(e.imageUrl?{backgroundImage:`url(${e.imageUrl})`}:void 0)},[e.isNew?(p(),l(`span`,Ge,`جدید`)):s(``,!0)],6),h(`div`,Ke,[h(`strong`,qe,r(e.name),1),h(`span`,Je,r(e.subtitle),1),h(`button`,{type:`button`,class:t([`product-card__fav`,{"product-card__fav--on":d(F).isFavorite(e.id)}]),"aria-label":d(F).isFavorite(e.id)?`حذف از علاقه‌مندی‌ها`:`افزودن به علاقه‌مندی‌ها`,"aria-pressed":d(F).isFavorite(e.id),onClick:n(t=>it(e.id),[`stop`])},[u(ye,{size:16,filled:d(F).isFavorite(e.id),color:d(F).isFavorite(e.id)?`#0a353c`:`#b0b7c0`},null,8,[`filled`,`color`])],10,Ye)])],8,We))),128))])])],64))])]))}}),[[`__scopeId`,`data-v-f5554afd`]]);export{N as default}; \ No newline at end of file +import{A as e,Ct as t,D as n,Dt as r,Et as i,J as a,L as o,M as s,N as c,O as l,P as u,Q as d,R as f,X as p,Y as ee,_ as te,b as ne,ht as m,it as re,j as h,n as ie,tt as ae,wt as g,z as _}from"./BasicIcon-Bnxm-DKk.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-DB4cQnln.js";import{t as pe}from"./IconChevronBack-DguSlPDK.js";import{t as me}from"./PageSkeleton-CpZ7eT1v.js";import{n as he,r as ge,t as _e}from"./crm-CZ7XH3z9.js";import{t as ve}from"./useGoBack-Ds4z3swU.js";import{t as v}from"./quick-catalog-request-Di7-t6Ua.js";import{t as ye}from"./IconHeart-CiwVmqRC.js";var be=`/assets/level-medal-Avpe4Lqa.webp`,y=`/assets/quick-club-crown-C-NrSU3x.webp`,b=`/assets/quick-categories-grid-BcZY1Wu0.webp`,x=`/assets/quick-new-products-DBGxsuVa.webp`,xe={class:`page home-page`},Se={class:`home-header mobile-only`},S={class:`home-header__user`},C={class:`home-header__hello`},w={class:`home-header__actions`},T={class:`home-desk-head desktop-only`},E={class:`home-desk-head__sub`},D={class:`page__scroll page__scroll--with-nav home-scroll`},O={key:0,class:`home-error`},k=[`aria-label`],A={class:`hero-banner__content`},j={key:0,class:`hero-banner__title`},Ce={key:0},we={key:1,class:`hero-banner__title`},Te={key:0,class:`hero-banner__dots`,role:`tablist`,"aria-label":`بنرها`},Ee=[`aria-label`,`aria-selected`,`onClick`],De={class:`quick-grid`,"aria-label":`دسترسی سریع`},Oe=[`onClick`],ke={class:`quick-card__icon`,"aria-hidden":`true`},Ae=[`src`],je={class:`quick-card__label`},Me={class:`level-card`,"aria-label":`سطح عضویت`},Ne={class:`level-card__top`},Pe={class:`level-card__identity`},Fe=[`src`],Ie={class:`level-card__text`},Le={class:`level-card__name`},Re={class:`level-card__next`},ze={class:`level-card__progress`},Be=[`aria-valuenow`],Ve={class:`level-card__points`},He={class:`section`},M={class:`section__head`},Ue={class:`product-row`},We=[`onClick`],Ge={key:0,class:`product-card__badge`},Ke={class:`product-card__body`},qe={class:`product-card__name`},Je={class:`product-card__sub`},Ye=[`aria-label`,`aria-pressed`,`onClick`],N=ie(_({__name:`HomeView`,setup(ie){let _=te(),{goBack:N}=ve(`/`),P=se(),Xe=_e(),F=le(),I=m(!0),L=m(null),R=m([]),z=m(null),B=m(null),Ze=[{id:`qa-club`,label:`باشگاه مشتریان`,to:`/profile`,image:y},{id:`qa-cat`,label:`دسته بندی`,to:`/categories`,image:b},{id:`qa-new`,label:`محصولات جدید`,to:`/products`,image:x},{id:`qa-swatch`,label:`درخواست کالیته`,to:`/catalog-request`,image:v}],Qe=[{id:`qa-customers`,label:`باشگاه مشتریان`,to:`/customers`,image:y},{id:`qa-new`,label:`محصولات جدید`,to:`/products`,image:x},{id:`qa-cat`,label:`دسته بندی`,to:`/categories`,image:b},{id:`qa-swatch`,label:`درخواست کالیته`,to:`/catalog-request`,image:v}],$e=e(()=>P.isAgent?Qe:Ze),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=e(()=>H.value[U.value]??V),et=e(()=>{let e=K.value;return e.showTitle!==!1&&e.title||e.showSubtitle!==!1&&e.subtitle||e.showCta!==!1&&e.ctaLabel});function tt(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 nt(e){q(e),J()}let X=e(()=>P.user?.firstName||`کاربر`),Z=e(()=>P.user?.lastName||``),Q=e(()=>{if(B.value)return B.value;let e=P.user;return{label:e?.levelLabel||`برنزی`,nextLabel:e?.nextLevelLabel||`نقره‌ای`,pointsRemaining:e?.pointsToNext??0,progressPercent:e?.levelProgress??0}});ee(Y),a(async()=>{I.value=!0,L.value=null;try{let[e,t]=await Promise.all([Xe.loadBrowseProducts(),ge(`home_hero`).catch(()=>[]),F.hydrate()]);if(t.length&&(H.value=t),J(),R.value=e.filter(e=>e.isNew).slice(0,6),R.value.length||(R.value=e.slice(0,6)),P.isAgent)try{let e=await he();B.value={label:e.levelLabel,nextLabel:e.nextLevelLabel,pointsRemaining:e.pointsToNext,progressPercent:e.levelProgress}}catch{}}catch(e){L.value=e instanceof Error?e.message:`بارگذاری خانه ناموفق بود.`}finally{I.value=!1}});function $(e){if(/^https?:\/\//i.test(e)){window.location.assign(e);return}_.push(e)}function rt(){$(K.value.ctaLink.trim()||`/categories`)}async function it(e){z.value=null;try{await F.toggle(e)}catch(e){z.value=e instanceof Error?e.message:`ذخیره علاقه‌مندی ناموفق بود.`}}return(e,a)=>(p(),u(`div`,xe,[h(`header`,Se,[h(`button`,{type:`button`,class:`icon-btn`,"aria-label":`بازگشت`,onClick:a[0]||=(...e)=>t(N)&&t(N)(...e)},[f(pe,{size:20})]),h(`div`,S,[f(de,{class:`home-header__avatar`,src:t(P).user?.avatarUrl,initials:X.value.charAt(0),size:44},null,8,[`src`,`initials`]),h(`div`,null,[h(`p`,C,` سلام، `+r(X.value)+` `+r(Z.value),1),a[4]||=h(`p`,{class:`home-header__welcome`},`خوش آمدید`,-1)])]),h(`div`,w,[f(ce,{variant:`inline`}),h(`button`,{type:`button`,class:`icon-btn`,"aria-label":`اعلان‌ها`,onClick:a[1]||=e=>$(`/profile/notifications`)},[f(fe,{size:20})])])]),h(`header`,T,[h(`div`,null,[a[5]||=h(`h1`,{class:`home-desk-head__title`},`خانه`,-1),h(`p`,E,` سلام `+r(X.value)+` `+r(Z.value)+` — خوش آمدید `,1)])]),h(`div`,D,[L.value?(p(),u(`p`,O,r(L.value),1)):I.value?(p(),s(me,{key:1,variant:`home`})):(p(),u(l,{key:2},[h(`section`,{class:`hero-banner`,"aria-label":K.value.title},[f(ne,{name:W.value,tag:`div`,class:`hero-banner__stage`},{default:re(()=>[(p(),u(`article`,{key:K.value.id,class:g([`hero-slide`,{"hero-slide--copy":et.value}]),style:i(tt(K.value))},[a[6]||=h(`div`,{class:`hero-slide__media`,"aria-hidden":`true`},null,-1),h(`div`,A,[K.value.showTitle===!1?K.value.showSubtitle!==!1&&K.value.subtitle?(p(),u(`p`,we,[h(`span`,null,r(K.value.subtitle),1)])):c(``,!0):(p(),u(`h2`,j,[o(r(K.value.title)+` `,1),K.value.showSubtitle!==!1&&K.value.subtitle?(p(),u(`span`,Ce,r(K.value.subtitle),1)):c(``,!0)])),K.value.showCta!==!1&&K.value.ctaLabel?(p(),u(`button`,{key:2,type:`button`,class:`hero-banner__cta`,onClick:rt},r(K.value.ctaLabel),1)):c(``,!0)])],6))]),_:1},8,[`name`]),H.value.length>1?(p(),u(`div`,Te,[(p(!0),u(l,null,d(H.value,(e,t)=>(p(),u(`button`,{key:e.id,type:`button`,class:g([`dot`,{"dot--active":t===U.value}]),"aria-label":e.title,"aria-selected":t===U.value,onClick:e=>nt(t)},null,10,Ee))),128))])):c(``,!0)],8,k),h(`section`,De,[(p(!0),u(l,null,d($e.value,e=>(p(),u(`button`,{key:e.id,type:`button`,class:`quick-card`,onClick:t=>$(e.to)},[h(`span`,ke,[e.image?(p(),u(`img`,{key:0,class:`quick-card__image`,src:e.image,alt:``},null,8,Ae)):(p(),s(ae(e.icon),{key:1,size:20}))]),h(`span`,je,r(e.label),1)],8,Oe))),128))]),h(`section`,Me,[h(`div`,Ne,[h(`div`,Pe,[h(`img`,{class:`level-card__medal`,src:t(be),alt:``,width:`48`,height:`48`,"aria-hidden":`true`},null,8,Fe),h(`div`,Ie,[a[7]||=h(`span`,{class:`level-card__eyebrow`},`سطح شما`,-1),h(`strong`,Le,r(Q.value.label),1),h(`span`,Re,`تا سطح `+r(Q.value.nextLabel),1)])]),h(`button`,{type:`button`,class:`level-card__details`,onClick:a[2]||=e=>$(`/profile`)},` جزئیات سطح `)]),h(`div`,ze,[h(`div`,{class:`level-card__bar`,role:`progressbar`,"aria-valuenow":Q.value.progressPercent,"aria-valuemin":`0`,"aria-valuemax":`100`},[h(`span`,{class:`level-card__bar-fill`,style:i({width:`${Q.value.progressPercent}%`})},null,4)],8,Be),h(`span`,Ve,r(t(oe)(Q.value.pointsRemaining))+` امتیاز دیگر `,1)])]),h(`section`,He,[h(`div`,M,[a[9]||=h(`h3`,{class:`section__title`},`جدیدترین محصولات`,-1),h(`button`,{type:`button`,class:`section__link`,onClick:a[3]||=e=>$(`/products`)},[a[8]||=o(` مشاهده همه `,-1),f(ue,{size:14})])]),h(`div`,Ue,[(p(!0),u(l,null,d(R.value,(e,a)=>(p(),u(`article`,{key:e.id,class:`product-card`,onClick:t=>$(`/product?id=${e.id}`)},[h(`div`,{class:g([`product-card__image`,`product-card__image--${a%3}`]),style:i(e.imageUrl?{backgroundImage:`url(${e.imageUrl})`}:void 0)},[e.isNew?(p(),u(`span`,Ge,`جدید`)):c(``,!0)],6),h(`div`,Ke,[h(`strong`,qe,r(e.name),1),h(`span`,Je,r(e.subtitle),1),h(`button`,{type:`button`,class:g([`product-card__fav`,{"product-card__fav--on":t(F).isFavorite(e.id)}]),"aria-label":t(F).isFavorite(e.id)?`حذف از علاقه‌مندی‌ها`:`افزودن به علاقه‌مندی‌ها`,"aria-pressed":t(F).isFavorite(e.id),onClick:n(t=>it(e.id),[`stop`])},[f(ye,{size:16,filled:t(F).isFavorite(e.id),color:t(F).isFavorite(e.id)?`#0a353c`:`#b0b7c0`},null,8,[`filled`,`color`])],10,Ye)])],8,We))),128))])])],64))])]))}}),[[`__scopeId`,`data-v-f5554afd`]]);export{N as default}; \ No newline at end of file diff --git a/dist/assets/IconCheckBook-DwIUojJc.js b/dist/assets/IconCheckBook-DwIUojJc.js deleted file mode 100644 index fb14ac6..0000000 --- a/dist/assets/IconCheckBook-DwIUojJc.js +++ /dev/null @@ -1 +0,0 @@ -import{M as e,Y as t,t as n,z as r}from"./BasicIcon-C6boaehV.js";var i=r({__name:`IconCheckBook`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(r){return(i,a)=>(t(),e(n,{icon:`vuesax-linear:card-receive`,size:r.size,"stroke-width":r.strokeWidth,color:r.color},null,8,[`size`,`stroke-width`,`color`]))}});export{i as t}; \ No newline at end of file diff --git a/dist/assets/IconChevronBack-DORV2H0q.js b/dist/assets/IconChevronBack-DguSlPDK.js similarity index 81% rename from dist/assets/IconChevronBack-DORV2H0q.js rename to dist/assets/IconChevronBack-DguSlPDK.js index 397b711..b0ab05b 100644 --- a/dist/assets/IconChevronBack-DORV2H0q.js +++ b/dist/assets/IconChevronBack-DguSlPDK.js @@ -1 +1 @@ -import{M as e,Y as t,t as n,z as r}from"./BasicIcon-C6boaehV.js";var i=r({__name:`IconChevronBack`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(r){return(i,a)=>(t(),e(n,{icon:`vuesax-linear:arrow-right-1`,size:r.size,"stroke-width":r.strokeWidth,color:r.color},null,8,[`size`,`stroke-width`,`color`]))}});export{i as t}; \ No newline at end of file +import{M as e,X as t,t as n,z as r}from"./BasicIcon-Bnxm-DKk.js";var i=r({__name:`IconChevronBack`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(r){return(i,a)=>(t(),e(n,{icon:`vuesax-linear:arrow-right-1`,size:r.size,"stroke-width":r.strokeWidth,color:r.color},null,8,[`size`,`stroke-width`,`color`]))}});export{i as t}; \ No newline at end of file diff --git a/dist/assets/IconClipboardEmpty-5Av_Gh0W.js b/dist/assets/IconClipboardEmpty-dbxs07_C.js similarity index 82% rename from dist/assets/IconClipboardEmpty-5Av_Gh0W.js rename to dist/assets/IconClipboardEmpty-dbxs07_C.js index c3f014d..cb90897 100644 --- a/dist/assets/IconClipboardEmpty-5Av_Gh0W.js +++ b/dist/assets/IconClipboardEmpty-dbxs07_C.js @@ -1 +1 @@ -import{M as e,Y as t,t as n,z as r}from"./BasicIcon-C6boaehV.js";var i=r({__name:`IconClipboardEmpty`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(r){return(i,a)=>(t(),e(n,{icon:`vuesax-linear:clipboard-close`,size:r.size,"stroke-width":r.strokeWidth,color:r.color},null,8,[`size`,`stroke-width`,`color`]))}});export{i as t}; \ No newline at end of file +import{M as e,X as t,t as n,z as r}from"./BasicIcon-Bnxm-DKk.js";var i=r({__name:`IconClipboardEmpty`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(r){return(i,a)=>(t(),e(n,{icon:`vuesax-linear:clipboard-close`,size:r.size,"stroke-width":r.strokeWidth,color:r.color},null,8,[`size`,`stroke-width`,`color`]))}});export{i as t}; \ No newline at end of file diff --git a/dist/assets/IconDiamond-Bgv1zgqc.js b/dist/assets/IconDiamond-CGMEs3wg.js similarity index 81% rename from dist/assets/IconDiamond-Bgv1zgqc.js rename to dist/assets/IconDiamond-CGMEs3wg.js index 9bb031a..92acf7a 100644 --- a/dist/assets/IconDiamond-Bgv1zgqc.js +++ b/dist/assets/IconDiamond-CGMEs3wg.js @@ -1 +1 @@ -import{M as e,Y as t,t as n,z as r}from"./BasicIcon-C6boaehV.js";var i=r({__name:`IconDiamond`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(r){return(i,a)=>(t(),e(n,{icon:`vuesax-linear:diamonds`,size:r.size,"stroke-width":r.strokeWidth,color:r.color},null,8,[`size`,`stroke-width`,`color`]))}});export{i as t}; \ No newline at end of file +import{M as e,X as t,t as n,z as r}from"./BasicIcon-Bnxm-DKk.js";var i=r({__name:`IconDiamond`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(r){return(i,a)=>(t(),e(n,{icon:`vuesax-linear:diamonds`,size:r.size,"stroke-width":r.strokeWidth,color:r.color},null,8,[`size`,`stroke-width`,`color`]))}});export{i as t}; \ No newline at end of file diff --git a/dist/assets/IconEditPen-DLV3_yq2.js b/dist/assets/IconEditPen-BwxVBWii.js similarity index 81% rename from dist/assets/IconEditPen-DLV3_yq2.js rename to dist/assets/IconEditPen-BwxVBWii.js index 3cc79bb..2875fff 100644 --- a/dist/assets/IconEditPen-DLV3_yq2.js +++ b/dist/assets/IconEditPen-BwxVBWii.js @@ -1 +1 @@ -import{M as e,Y as t,t as n,z as r}from"./BasicIcon-C6boaehV.js";var i=r({__name:`IconEditPen`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(r){return(i,a)=>(t(),e(n,{icon:`vuesax-linear:edit-2`,size:r.size,"stroke-width":r.strokeWidth,color:r.color},null,8,[`size`,`stroke-width`,`color`]))}});export{i as t}; \ No newline at end of file +import{M as e,X as t,t as n,z as r}from"./BasicIcon-Bnxm-DKk.js";var i=r({__name:`IconEditPen`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(r){return(i,a)=>(t(),e(n,{icon:`vuesax-linear:edit-2`,size:r.size,"stroke-width":r.strokeWidth,color:r.color},null,8,[`size`,`stroke-width`,`color`]))}});export{i as t}; \ No newline at end of file diff --git a/dist/assets/IconFamBaftLogo-BaDEschB.css b/dist/assets/IconFamBaftLogo-BaDEschB.css deleted file mode 100644 index aa8b2ef..0000000 --- a/dist/assets/IconFamBaftLogo-BaDEschB.css +++ /dev/null @@ -1 +0,0 @@ -.icon-logo[data-v-beccd0f1],.icon-logo[data-v-bbb3dcd8]{flex-shrink:0;display:block;overflow:visible} diff --git a/dist/assets/IconFamBaftLogo-BaP40Dff.js b/dist/assets/IconFamBaftLogo-BaP40Dff.js deleted file mode 100644 index df82906..0000000 --- a/dist/assets/IconFamBaftLogo-BaP40Dff.js +++ /dev/null @@ -1 +0,0 @@ -import{P as e,Y as t,j as n,n as r,z as i}from"./BasicIcon-C6boaehV.js";var a=[`width`,`height`],o=r(i({__name:`IconParLogo`,props:{size:{default:72}},setup(r){return(i,o)=>(t(),e(`svg`,{class:`icon-logo`,width:r.size,height:r.size,viewBox:`0 0 72 72`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,"aria-hidden":`true`},[...o[0]||=[n(`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,a))}}),[[`__scopeId`,`data-v-beccd0f1`]]),s=[`width`,`height`],c=r(i({__name:`IconFamBaftLogo`,props:{size:{default:72}},setup(r){return(i,a)=>(t(),e(`svg`,{class:`icon-logo`,width:r.size,height:r.size,viewBox:`0 0 72 72`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,"aria-hidden":`true`},[...a[0]||=[n(`g`,{fill:`currentColor`},[n(`rect`,{x:`14`,y:`14`,width:`28`,height:`28`,rx:`4`,transform:`rotate(12 28 28)`}),n(`rect`,{x:`30`,y:`30`,width:`28`,height:`28`,rx:`4`,transform:`rotate(-12 44 44)`})],-1)]],8,s))}}),[[`__scopeId`,`data-v-bbb3dcd8`]]);export{o as n,c as t}; \ No newline at end of file diff --git a/dist/assets/IconFilter-D9NdLZ7w.js b/dist/assets/IconFilter-DHL8PKX0.js similarity index 81% rename from dist/assets/IconFilter-D9NdLZ7w.js rename to dist/assets/IconFilter-DHL8PKX0.js index 98c7d2a..f1e1106 100644 --- a/dist/assets/IconFilter-D9NdLZ7w.js +++ b/dist/assets/IconFilter-DHL8PKX0.js @@ -1 +1 @@ -import{M as e,Y as t,t as n,z as r}from"./BasicIcon-C6boaehV.js";var i=r({__name:`IconFilter`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(r){return(i,a)=>(t(),e(n,{icon:`vuesax-linear:filter`,size:r.size,"stroke-width":r.strokeWidth,color:r.color},null,8,[`size`,`stroke-width`,`color`]))}});export{i as t}; \ No newline at end of file +import{M as e,X as t,t as n,z as r}from"./BasicIcon-Bnxm-DKk.js";var i=r({__name:`IconFilter`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(r){return(i,a)=>(t(),e(n,{icon:`vuesax-linear:filter`,size:r.size,"stroke-width":r.strokeWidth,color:r.color},null,8,[`size`,`stroke-width`,`color`]))}});export{i as t}; \ No newline at end of file diff --git a/dist/assets/IconHeart-CZMe29Nz.js b/dist/assets/IconHeart-CiwVmqRC.js similarity index 58% rename from dist/assets/IconHeart-CZMe29Nz.js rename to dist/assets/IconHeart-CiwVmqRC.js index 5d7d184..7d3d594 100644 --- a/dist/assets/IconHeart-CZMe29Nz.js +++ b/dist/assets/IconHeart-CiwVmqRC.js @@ -1 +1 @@ -import{M as e,P as t,V as n,Y as r,j as i,wt as a,z as o}from"./BasicIcon-C6boaehV.js";var s=[`width`,`height`],c=[`stroke`,`fill`],l=o({__name:`IconBookmark`,props:{size:{default:18},color:{default:`#9AA3AF`},filled:{type:Boolean,default:!1}},setup(e){return(n,a)=>(r(),t(`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:`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:e.color,fill:e.filled?e.color:`none`,"stroke-width":`1.5`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null,8,c)],8,s))}}),u=o({__name:`IconHeart`,props:{size:{default:18},color:{default:`#9AA3AF`},filled:{type:Boolean,default:!1}},setup(t){let i=t;return(t,o)=>(r(),e(l,a(n(i)),null,16))}});export{u as t}; \ No newline at end of file +import{M as e,P as t,Tt as n,V as r,X as i,j as a,z as o}from"./BasicIcon-Bnxm-DKk.js";var s=[`width`,`height`],c=[`stroke`,`fill`],l=o({__name:`IconBookmark`,props:{size:{default:18},color:{default:`#9AA3AF`},filled:{type:Boolean,default:!1}},setup(e){return(n,r)=>(i(),t(`svg`,{width:e.size,height:e.size,viewBox:`0 0 24 24`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,"aria-hidden":`true`},[a(`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:e.color,fill:e.filled?e.color:`none`,"stroke-width":`1.5`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null,8,c)],8,s))}}),u=o({__name:`IconHeart`,props:{size:{default:18},color:{default:`#9AA3AF`},filled:{type:Boolean,default:!1}},setup(t){let a=t;return(t,o)=>(i(),e(l,n(r(a)),null,16))}});export{u as t}; \ No newline at end of file diff --git a/dist/assets/IconLayoutGrid-E-Q8Z5rF.js b/dist/assets/IconLayoutGrid-BfGINevf.js similarity index 81% rename from dist/assets/IconLayoutGrid-E-Q8Z5rF.js rename to dist/assets/IconLayoutGrid-BfGINevf.js index 0237073..78cfdfa 100644 --- a/dist/assets/IconLayoutGrid-E-Q8Z5rF.js +++ b/dist/assets/IconLayoutGrid-BfGINevf.js @@ -1 +1 @@ -import{M as e,Y as t,t as n,z as r}from"./BasicIcon-C6boaehV.js";var i=r({__name:`IconLayoutGrid`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(r){return(i,a)=>(t(),e(n,{icon:`vuesax-linear:element-3`,size:r.size,"stroke-width":r.strokeWidth,color:r.color},null,8,[`size`,`stroke-width`,`color`]))}});export{i as t}; \ No newline at end of file +import{M as e,X as t,t as n,z as r}from"./BasicIcon-Bnxm-DKk.js";var i=r({__name:`IconLayoutGrid`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(r){return(i,a)=>(t(),e(n,{icon:`vuesax-linear:element-3`,size:r.size,"stroke-width":r.strokeWidth,color:r.color},null,8,[`size`,`stroke-width`,`color`]))}});export{i as t}; \ No newline at end of file diff --git a/dist/assets/IconMoreVertical-BPkOm_2U.js b/dist/assets/IconMoreVertical-C07CFI4h.js similarity index 81% rename from dist/assets/IconMoreVertical-BPkOm_2U.js rename to dist/assets/IconMoreVertical-C07CFI4h.js index f60983d..dd47aa4 100644 --- a/dist/assets/IconMoreVertical-BPkOm_2U.js +++ b/dist/assets/IconMoreVertical-C07CFI4h.js @@ -1 +1 @@ -import{M as e,Y as t,t as n,z as r}from"./BasicIcon-C6boaehV.js";var i=r({__name:`IconMoreVertical`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(r){return(i,a)=>(t(),e(n,{icon:`vuesax-linear:more`,size:r.size,"stroke-width":r.strokeWidth,color:r.color},null,8,[`size`,`stroke-width`,`color`]))}});export{i as t}; \ No newline at end of file +import{M as e,X as t,t as n,z as r}from"./BasicIcon-Bnxm-DKk.js";var i=r({__name:`IconMoreVertical`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(r){return(i,a)=>(t(),e(n,{icon:`vuesax-linear:more`,size:r.size,"stroke-width":r.strokeWidth,color:r.color},null,8,[`size`,`stroke-width`,`color`]))}});export{i as t}; \ No newline at end of file diff --git a/dist/assets/IconPhone-C0bnM4fV.js b/dist/assets/IconPhone-Dp7Txh8V.js similarity index 81% rename from dist/assets/IconPhone-C0bnM4fV.js rename to dist/assets/IconPhone-Dp7Txh8V.js index 48d79a8..9ad4013 100644 --- a/dist/assets/IconPhone-C0bnM4fV.js +++ b/dist/assets/IconPhone-Dp7Txh8V.js @@ -1 +1 @@ -import{M as e,Y as t,t as n,z as r}from"./BasicIcon-C6boaehV.js";var i=r({__name:`IconPhone`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(r){return(i,a)=>(t(),e(n,{icon:`vuesax-linear:call`,size:r.size,"stroke-width":r.strokeWidth,color:r.color},null,8,[`size`,`stroke-width`,`color`]))}});export{i as t}; \ No newline at end of file +import{M as e,X as t,t as n,z as r}from"./BasicIcon-Bnxm-DKk.js";var i=r({__name:`IconPhone`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(r){return(i,a)=>(t(),e(n,{icon:`vuesax-linear:call`,size:r.size,"stroke-width":r.strokeWidth,color:r.color},null,8,[`size`,`stroke-width`,`color`]))}});export{i as t}; \ No newline at end of file diff --git a/dist/assets/IconProgressClock-ChlGvv7_.js b/dist/assets/IconProgressClock-D-v2U-1t.js similarity index 81% rename from dist/assets/IconProgressClock-ChlGvv7_.js rename to dist/assets/IconProgressClock-D-v2U-1t.js index 1ddfd3a..eefadec 100644 --- a/dist/assets/IconProgressClock-ChlGvv7_.js +++ b/dist/assets/IconProgressClock-D-v2U-1t.js @@ -1 +1 @@ -import{M as e,Y as t,t as n,z as r}from"./BasicIcon-C6boaehV.js";var i=r({__name:`IconProgressClock`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(r){return(i,a)=>(t(),e(n,{icon:`vuesax-linear:clock`,size:r.size,"stroke-width":r.strokeWidth,color:r.color},null,8,[`size`,`stroke-width`,`color`]))}});export{i as t}; \ No newline at end of file +import{M as e,X as t,t as n,z as r}from"./BasicIcon-Bnxm-DKk.js";var i=r({__name:`IconProgressClock`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(r){return(i,a)=>(t(),e(n,{icon:`vuesax-linear:clock`,size:r.size,"stroke-width":r.strokeWidth,color:r.color},null,8,[`size`,`stroke-width`,`color`]))}});export{i as t}; \ No newline at end of file diff --git a/dist/assets/IconSearch-DOnq8ybc.js b/dist/assets/IconSearch-D5bVmUdX.js similarity index 81% rename from dist/assets/IconSearch-DOnq8ybc.js rename to dist/assets/IconSearch-D5bVmUdX.js index 08974a1..a8d4120 100644 --- a/dist/assets/IconSearch-DOnq8ybc.js +++ b/dist/assets/IconSearch-D5bVmUdX.js @@ -1 +1 @@ -import{M as e,Y as t,t as n,z as r}from"./BasicIcon-C6boaehV.js";var i=r({__name:`IconSearch`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(r){return(i,a)=>(t(),e(n,{icon:`vuesax-linear:search-normal`,size:r.size,"stroke-width":r.strokeWidth,color:r.color},null,8,[`size`,`stroke-width`,`color`]))}});export{i as t}; \ No newline at end of file +import{M as e,X as t,t as n,z as r}from"./BasicIcon-Bnxm-DKk.js";var i=r({__name:`IconSearch`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(r){return(i,a)=>(t(),e(n,{icon:`vuesax-linear:search-normal`,size:r.size,"stroke-width":r.strokeWidth,color:r.color},null,8,[`size`,`stroke-width`,`color`]))}});export{i as t}; \ No newline at end of file diff --git a/dist/assets/IconShare-1kao-fAR.js b/dist/assets/IconShare-DtutVVj1.js similarity index 92% rename from dist/assets/IconShare-1kao-fAR.js rename to dist/assets/IconShare-DtutVVj1.js index f5ba13b..e6c1896 100644 --- a/dist/assets/IconShare-1kao-fAR.js +++ b/dist/assets/IconShare-DtutVVj1.js @@ -1 +1 @@ -import{P as e,Y as t,j as n,z as r}from"./BasicIcon-C6boaehV.js";var i=[`width`,`height`],a=[`stroke`],o=[`stroke`],s=[`stroke`],c=r({__name:`IconShare`,props:{size:{default:20},color:{default:`#9AA3AF`}},setup(r){return(c,l)=>(t(),e(`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:`M12 3.5v11`,stroke:r.color,"stroke-width":`1.5`,"stroke-linecap":`round`},null,8,a),n(`path`,{d:`M8.25 7 12 3.25 15.75 7`,stroke:r.color,"stroke-width":`1.5`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null,8,o),n(`path`,{d:`M6.5 11.5v7.25c0 .97.78 1.75 1.75 1.75h7.5c.97 0 1.75-.78 1.75-1.75V11.5`,stroke:r.color,"stroke-width":`1.5`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null,8,s)],8,i))}});export{c as t}; \ No newline at end of file +import{P as e,X as t,j as n,z as r}from"./BasicIcon-Bnxm-DKk.js";var i=[`width`,`height`],a=[`stroke`],o=[`stroke`],s=[`stroke`],c=r({__name:`IconShare`,props:{size:{default:20},color:{default:`#9AA3AF`}},setup(r){return(c,l)=>(t(),e(`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:`M12 3.5v11`,stroke:r.color,"stroke-width":`1.5`,"stroke-linecap":`round`},null,8,a),n(`path`,{d:`M8.25 7 12 3.25 15.75 7`,stroke:r.color,"stroke-width":`1.5`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null,8,o),n(`path`,{d:`M6.5 11.5v7.25c0 .97.78 1.75 1.75 1.75h7.5c.97 0 1.75-.78 1.75-1.75V11.5`,stroke:r.color,"stroke-width":`1.5`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null,8,s)],8,i))}});export{c as t}; \ No newline at end of file diff --git a/dist/assets/IconShoppingBag-Bq21_Txe.js b/dist/assets/IconShoppingBag-kdnOLLiZ.js similarity index 81% rename from dist/assets/IconShoppingBag-Bq21_Txe.js rename to dist/assets/IconShoppingBag-kdnOLLiZ.js index b8ff46b..0734d42 100644 --- a/dist/assets/IconShoppingBag-Bq21_Txe.js +++ b/dist/assets/IconShoppingBag-kdnOLLiZ.js @@ -1 +1 @@ -import{M as e,Y as t,t as n,z as r}from"./BasicIcon-C6boaehV.js";var i=r({__name:`IconShoppingBag`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(r){return(i,a)=>(t(),e(n,{icon:`vuesax-linear:shopping-bag`,size:r.size,"stroke-width":r.strokeWidth,color:r.color},null,8,[`size`,`stroke-width`,`color`]))}});export{i as t}; \ No newline at end of file +import{M as e,X as t,t as n,z as r}from"./BasicIcon-Bnxm-DKk.js";var i=r({__name:`IconShoppingBag`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(r){return(i,a)=>(t(),e(n,{icon:`vuesax-linear:shopping-bag`,size:r.size,"stroke-width":r.strokeWidth,color:r.color},null,8,[`size`,`stroke-width`,`color`]))}});export{i as t}; \ No newline at end of file diff --git a/dist/assets/LoginView-CGhkw0FP.js b/dist/assets/LoginView-CGhkw0FP.js deleted file mode 100644 index 2a841ec..0000000 --- a/dist/assets/LoginView-CGhkw0FP.js +++ /dev/null @@ -1 +0,0 @@ -import{$ as e,A as t,Ct as n,D as r,Et as i,I as ee,L as a,N as o,P as s,R as c,St as l,Y as u,_ as d,j as f,mt as p,n as m,q as h,rt as g,z as _}from"./BasicIcon-C6boaehV.js";import{n as v}from"./http-BC1hNfZ4.js";import{c as y,u as te}from"./format-BHJptHdF.js";import{a as b}from"./validation-BD7oi-2I.js";import{_ as x,c as S,o as C,v as w}from"./index-fdhs4HNc.js";import{t as T}from"./FormErrorBanner-CjdBfIQT.js";import{t as E}from"./IconPhone-C0bnM4fV.js";import{n as D,r as O,t as k}from"./formErrors-DglFjYkZ.js";import{t as A}from"./login-fabric-CzrIXTnD.js";function j(e){if(!e)return;let t=e.replace(/[^\d+]/g,``);return t?`tel:${t}`:void 0}function M(){return v(`/settings/public`,{auth:!1})}var N={class:`page login-page`},P=[`src`],F={class:`login-page__scroll`},I={class:`login-page__stage`},L={class:`login-brand`},R=[`value`,`aria-invalid`],z={key:0,class:`phone-field__error`},ne=[`disabled`],B={key:0,class:`login-submit__spinner`,"aria-hidden":`true`},V={class:`login-submit__chevron`,"aria-hidden":`true`},H={class:`login-register`},U={class:`login-help`},W=[`href`,`aria-disabled`],G={class:`login-help__icon`},K=[`href`,`aria-disabled`],q={class:`login-help__icon`},J=m(_({__name:`LoginView`,setup(m){let _=d(),v=S(),J=p(null),Y=t(()=>j(J.value)),X=p(``),Z=p({}),Q=p(``),re=t(()=>X.value?te(X.value):``);function $(e){return e?b(e)?``:`شماره موبایل معتبر نیست. (مثال: ۰۹۱۲۱۲۳۴۵۶۷)`:`شماره موبایل را وارد کنید.`}function ie(){Z.value=D(Z.value,`phone`),O(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=k;return}let n=await v.requestOtp(e,{isRegister:!1});n.success?_.push({name:`otp`,query:{phone:e,mode:`login`}}):Q.value=n.message??`خطا در ارسال کد تأیید.`}return h(async()=>{try{let e=await M();J.value=e.supportPhone}catch{J.value=null}}),(t,d)=>{let p=e(`RouterLink`);return u(),s(`div`,N,[f(`img`,{class:`login-page__bg`,src:l(A),alt:``},null,8,P),f(`div`,F,[f(`div`,I,[d[14]||=f(`header`,{class:`login-top`},[f(`p`,{class:`login-top__welcome`},`به دنیای پارچه خوش آمدید`)],-1),f(`div`,L,[c(x,{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:r(se,[`prevent`])},[d[10]||=f(`h2`,{class:`login-card__title`},`ورود به حساب کاربری`,-1),d[11]||=f(`p`,{class:`login-card__lead`},`برای ادامه، شماره موبایل خود را وارد کنید.`,-1),c(T,{message:Q.value},null,8,[`message`]),f(`div`,{class:n([`phone-field`,{"is-invalid":!!Z.value.phone}]),dir:`ltr`},[d[4]||=ee(``,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,R)],2),Z.value.phone?(u(),s(`p`,z,i(Z.value.phone),1)):o(``,!0),f(`button`,{class:`login-submit`,type:`submit`,disabled:l(v).loading},[l(v).loading?(u(),s(`span`,B)):o(``,!0),f(`span`,V,[c(C,{size:18,color:`#F4EDE4`})]),d[5]||=f(`span`,null,`دریافت کد تأیید`,-1)],8,ne),f(`p`,H,[d[7]||=a(` حساب کاربری ندارید؟ `,-1),c(p,{to:`/register`},{default:g(()=>[...d[6]||=[a(`ثبت‌نام کنید`,-1)]]),_:1})]),d[12]||=f(`div`,{class:`login-or`,role:`separator`},[f(`span`,null,`یا`)],-1),f(`div`,U,[f(`a`,{class:n([`login-help__item`,{"is-disabled":!Y.value}]),href:Y.value,"aria-disabled":!Y.value},[f(`span`,G,[c(w,{size:22,color:`#3A3936`})]),d[8]||=a(` پشتیبانی `,-1)],10,W),f(`a`,{class:n([`login-help__item`,{"is-disabled":!Y.value}]),href:Y.value,"aria-disabled":!Y.value},[f(`span`,q,[c(E,{size:22,color:`#3A3936`})]),d[9]||=a(` تماس با ما `,-1)],10,K)]),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`},[a(`MORE`),f(`br`),a(`THAN`),f(`br`),a(`FABRIC`)],-1)])])])}}}),[[`__scopeId`,`data-v-ad43cb33`]]);export{J as default}; \ No newline at end of file diff --git a/dist/assets/LoginView-DCgkTu-r.js b/dist/assets/LoginView-DCgkTu-r.js new file mode 100644 index 0000000..8f82319 --- /dev/null +++ b/dist/assets/LoginView-DCgkTu-r.js @@ -0,0 +1 @@ +import{A as e,Ct as t,D as n,Dt as r,I as i,J as a,L as o,N as s,P as c,R as l,X as u,_ as d,et as f,ht as p,it as m,j as h,n as g,wt as _,z as v}from"./BasicIcon-Bnxm-DKk.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-DB4cQnln.js";import{t as E}from"./FormErrorBanner-BahrrGfv.js";import{t as D}from"./IconPhone-Dp7Txh8V.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=g(v({__name:`LoginView`,setup(g){let v=d(),q=S(),J=p(null),Y=e(()=>x(J.value)),X=p(``),Z=p({}),Q=p(``),re=e(()=>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?v.push({name:`otp`,query:{phone:e,mode:`login`}}):Q.value=n.message??`خطا در ارسال کد تأیید.`}return a(async()=>{try{let e=await T();J.value=e.supportPhone}catch{J.value=null}}),(e,a)=>{let d=f(`RouterLink`);return u(),c(`div`,M,[h(`img`,{class:`login-page__bg`,src:t(j),alt:``},null,8,N),h(`div`,P,[h(`div`,F,[a[14]||=h(`header`,{class:`login-top`},[h(`p`,{class:`login-top__welcome`},`به دنیای پارچه خوش آمدید`)],-1),h(`div`,I,[l(te,{size:78}),a[1]||=h(`h1`,{class:`login-brand__fa`},`نادمی تکس`,-1),a[2]||=h(`p`,{class:`login-brand__en`},`NADEMITEX`,-1),a[3]||=h(`p`,{class:`login-brand__tag`},`انتخاب حرفه‌ای‌ها`,-1)]),h(`form`,{class:`login-card`,onSubmit:n(se,[`prevent`])},[a[10]||=h(`h2`,{class:`login-card__title`},`ورود به حساب کاربری`,-1),a[11]||=h(`p`,{class:`login-card__lead`},`برای ادامه، شماره موبایل خود را وارد کنید.`,-1),l(E,{message:Q.value},null,8,[`message`]),h(`div`,{class:_([`phone-field`,{"is-invalid":!!Z.value.phone}]),dir:`ltr`},[a[4]||=i(``,1),h(`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:a[0]||=e=>ae(e.target.value),onBlur:oe},null,40,ne)],2),Z.value.phone?(u(),c(`p`,L,r(Z.value.phone),1)):s(``,!0),h(`button`,{class:`login-submit`,type:`submit`,disabled:t(q).loading},[t(q).loading?(u(),c(`span`,z)):s(``,!0),h(`span`,B,[l(C,{size:18,color:`#F4EDE4`})]),a[5]||=h(`span`,null,`دریافت کد تأیید`,-1)],8,R),h(`p`,V,[a[7]||=o(` حساب کاربری ندارید؟ `,-1),l(d,{to:`/register`},{default:m(()=>[...a[6]||=[o(`ثبت‌نام کنید`,-1)]]),_:1})]),a[12]||=h(`div`,{class:`login-or`,role:`separator`},[h(`span`,null,`یا`)],-1),h(`div`,H,[h(`a`,{class:_([`login-help__item`,{"is-disabled":!Y.value}]),href:Y.value,"aria-disabled":!Y.value},[h(`span`,W,[l(w,{size:22,color:`#3A3936`})]),a[8]||=o(` پشتیبانی `,-1)],10,U),h(`a`,{class:_([`login-help__item`,{"is-disabled":!Y.value}]),href:Y.value,"aria-disabled":!Y.value},[h(`span`,K,[l(D,{size:22,color:`#3A3936`})]),a[9]||=o(` تماس با ما `,-1)],10,G)]),a[13]||=h(`p`,{class:`login-card__foot`},`پارچه، آغاز یک اعتماد ماندگار…`,-1)],32),a[15]||=h(`div`,{class:`login-spacer`,"aria-hidden":`true`},null,-1),a[16]||=h(`p`,{class:`login-watermark`},[o(`MORE`),h(`br`),o(`THAN`),h(`br`),o(`FABRIC`)],-1)])])])}}}),[[`__scopeId`,`data-v-ad43cb33`]]);export{q as default}; \ No newline at end of file diff --git a/dist/assets/OrderDetailView-DfQWMJF8.css b/dist/assets/OrderDetailView-5Zi-DKNv.css similarity index 57% rename from dist/assets/OrderDetailView-DfQWMJF8.css rename to dist/assets/OrderDetailView-5Zi-DKNv.css index 4c229d2..213c519 100644 --- a/dist/assets/OrderDetailView-DfQWMJF8.css +++ b/dist/assets/OrderDetailView-5Zi-DKNv.css @@ -1 +1 @@ -.tracking-timeline[data-v-603b6d66]{flex-direction:column;display:flex}.tracking-timeline__item[data-v-603b6d66]{grid-template-columns:28px minmax(0,1fr);align-items:start;column-gap:12px;min-height:44px;display:grid}.tracking-timeline__marker-wrap[data-v-603b6d66]{justify-content:center;align-self:stretch;width:28px;display:flex;position:relative}.tracking-timeline__line[data-v-603b6d66]{background:var(--color-border);z-index:0;width:2px;position:absolute;top:22px;bottom:0;left:50%;transform:translate(-50%)}.tracking-timeline__item:last-child .tracking-timeline__line[data-v-603b6d66]{display:none}.tracking-timeline__item--done .tracking-timeline__line[data-v-603b6d66]{background:var(--color-success)}.tracking-timeline__item--current .tracking-timeline__line[data-v-603b6d66]{background:color-mix(in srgb, var(--color-primary) 35%, var(--color-border))}.tracking-timeline__marker[data-v-603b6d66]{z-index:1;background:var(--color-border);border:2px solid var(--color-border);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;margin-top:2px;display:flex;position:relative}.tracking-timeline__item--done .tracking-timeline__marker[data-v-603b6d66]{background:var(--color-success);border-color:var(--color-success)}.tracking-timeline__item--current .tracking-timeline__marker[data-v-603b6d66]{background:var(--color-primary);border-color:var(--color-primary);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-primary) 28%, transparent)}.tracking-timeline__item--pending .tracking-timeline__marker[data-v-603b6d66]{background:var(--color-elevated);border-color:var(--color-border)}.tracking-timeline__check[data-v-603b6d66]{color:var(--color-surface);font-size:.75rem;font-weight:700;line-height:1}.tracking-timeline__content[data-v-603b6d66]{min-width:0;padding:2px 0 14px}.tracking-timeline__content--current[data-v-603b6d66]{background:var(--color-primary-soft);border:1px solid var(--color-border);border-radius:12px;padding:10px 14px 12px}.tracking-timeline__label[data-v-603b6d66]{color:var(--color-text-muted);margin-bottom:2px;font-size:.875rem;font-weight:600;line-height:1.45;display:block}.tracking-timeline__item--done .tracking-timeline__label[data-v-603b6d66],.tracking-timeline__item--current .tracking-timeline__label[data-v-603b6d66]{color:var(--color-text)}.tracking-timeline__time[data-v-603b6d66]{color:var(--color-text-muted);font-variant-numeric:tabular-nums;margin-top:4px;font-size:.75rem;display:block}.status-hero[data-v-896684d9]{text-align:center;flex-direction:column;align-items:center;gap:0;padding:8px 12px 20px;display:flex}.status-hero__icon[data-v-896684d9]{width:64px;height:64px;color:var(--color-primary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-bottom:14px;display:flex}.status-hero--waiting .status-hero__icon[data-v-896684d9]{background:var(--color-primary-soft);color:var(--color-primary)}.status-hero--success .status-hero__icon[data-v-896684d9]{background:var(--color-primary-soft);color:var(--color-success)}.status-hero--info .status-hero__icon[data-v-896684d9]{background:var(--color-primary-light);color:var(--color-primary)}.status-hero__copy[data-v-896684d9]{min-width:0}.status-hero__title[data-v-896684d9]{color:var(--color-text);margin:0 0 8px;font-size:1.0625rem;font-weight:700}.status-hero--success .status-hero__title[data-v-896684d9]{color:var(--color-success)}.status-hero__desc[data-v-896684d9]{max-width:320px;color:var(--color-text-muted);margin:0;font-size:.8125rem;line-height:1.7}@media (width>=768px){.status-hero[data-v-896684d9]{text-align:start;flex-direction:row;align-items:flex-start;gap:16px;padding:0}.status-hero__icon[data-v-896684d9]{width:52px;height:52px;margin-bottom:0}.status-hero__title[data-v-896684d9]{margin-bottom:6px}.status-hero__desc[data-v-896684d9]{max-width:none}}.tracking-summary[data-v-b22cc5d6]{background:var(--color-elevated);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);border-radius:16px;padding:16px}.tracking-summary__row[data-v-b22cc5d6]{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:12px;padding:10px 0;font-size:.875rem;display:flex}.tracking-summary__row[data-v-b22cc5d6]:last-child{border-bottom:none;padding-bottom:0}.tracking-summary__row span[data-v-b22cc5d6]{color:var(--color-text-muted)}.tracking-summary__row strong[data-v-b22cc5d6]{color:var(--color-text);text-align:left;font-weight:700}.order-detail-page[data-v-7d9d2f9d]{height:100%;min-height:0;padding:12px var(--page-padding) 0;background:var(--color-bg);color:var(--color-text);flex-direction:column;flex:1;display:flex;overflow:hidden}@media (width>=768px){.order-detail-page[data-v-7d9d2f9d]{padding:20px var(--page-padding) 28px;max-width:var(--content-max-width);box-sizing:border-box;background:0 0;width:100%;margin-inline:auto}}.order-detail-back[data-v-7d9d2f9d]{color:var(--color-primary);cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;margin-bottom:12px;padding:0;font-family:inherit;font-size:.875rem;font-weight:600;display:inline-flex}.order-detail-back[data-v-7d9d2f9d]:hover{color:var(--color-primary-hover)}.order-detail-page__nav[data-v-7d9d2f9d]{flex-shrink:0;grid-template-columns:40px 1fr 40px;align-items:center;gap:4px;margin-bottom:16px;display:grid}.order-detail-page__nav-center[data-v-7d9d2f9d]{flex-direction:column;align-items:center;gap:2px;min-width:0;display:flex}.order-detail-page__title[data-v-7d9d2f9d]{text-align:center;color:var(--color-text);margin:0;font-size:1.0625rem;font-weight:700;line-height:1.35}.order-detail-page__order-id[data-v-7d9d2f9d]{text-align:center;color:var(--color-text-muted);font-variant-numeric:tabular-nums;margin:0;font-size:.8125rem;font-weight:600;line-height:1.3}.nav-btn[data-v-7d9d2f9d]{width:40px;height:40px;color:var(--color-text);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:flex}.nav-btn--ghost[data-v-7d9d2f9d]{visibility:hidden;pointer-events:none}.nav-btn__flip[data-v-7d9d2f9d]{transform:scaleX(-1)}.order-detail-page__body[data-v-7d9d2f9d]{-webkit-overflow-scrolling:touch;flex:1;width:100%;min-height:0;padding-bottom:28px;overflow-y:auto}.order-info-card[data-v-7d9d2f9d]{background:var(--color-elevated);box-shadow:var(--shadow-sm);border-radius:20px;padding:20px 18px 8px}.order-info-card__head[data-v-7d9d2f9d]{border-bottom:1px solid var(--color-border);margin-bottom:4px;padding-bottom:16px}.order-info-card__label[data-v-7d9d2f9d]{color:var(--color-text-muted);margin-bottom:6px;font-size:.8125rem;display:block}.order-info-card__number[data-v-7d9d2f9d]{color:var(--color-text);font-size:1.125rem;font-weight:700;line-height:1.4;display:block}.order-info-card__row[data-v-7d9d2f9d]{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:12px;padding:14px 0;display:flex}.order-info-card__row--last[data-v-7d9d2f9d]{border-bottom:none;padding-bottom:10px}.order-info-card__key[data-v-7d9d2f9d]{color:var(--color-primary);flex-shrink:0;font-size:.875rem;font-weight:600}.order-info-card__value[data-v-7d9d2f9d]{text-align:left;font-size:.875rem}.order-info-card__value--accent[data-v-7d9d2f9d]{color:var(--color-primary);font-weight:500}.order-info-card__amount[data-v-7d9d2f9d]{color:var(--color-text);text-align:left;font-size:.9375rem;font-weight:700}.order-next-action[data-v-7d9d2f9d]{background:var(--color-primary-light);border:1px solid var(--color-primary);border-radius:16px;flex-direction:column;gap:10px;margin-top:12px;padding:16px;display:flex}.order-next-action__text[data-v-7d9d2f9d]{color:var(--color-primary);font-size:.8125rem;line-height:1.6}@media (width>=768px){.order-next-action[data-v-7d9d2f9d]{flex-direction:row;justify-content:space-between;align-items:center}.order-next-action__btn[data-v-7d9d2f9d]{flex-shrink:0;width:auto}}.order-detail-page__footer[data-v-7d9d2f9d]{background:var(--color-bg);border-top:1px solid var(--color-border);margin:0 calc(-1 * var(--page-padding));padding:12px 0;padding-left:var(--page-padding);padding-right:var(--page-padding);flex-shrink:0;box-shadow:0 -4px 16px #0f172a0f}.order-detail-page__footer[data-v-7d9d2f9d] .btn{border-radius:12px;font-size:.9375rem}.order-detail-page__tracking[data-v-7d9d2f9d]{flex-direction:column;gap:12px;width:100%;margin-top:8px;padding-bottom:12px;display:flex}.order-detail-page__tracking-hero[data-v-7d9d2f9d],.order-detail-page__tracking-main[data-v-7d9d2f9d]{flex-direction:column;gap:12px;width:100%;min-width:0;display:flex}.tracking-card[data-v-7d9d2f9d]{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-sm);padding:16px}.tracking-card--hero[data-v-7d9d2f9d]{flex-direction:column;gap:12px;display:flex}.order-detail-page__tracking[data-v-7d9d2f9d] .status-hero{padding:4px 0 8px}.order-detail-page__tracking[data-v-7d9d2f9d] .tracking-summary{border:none;border-top:1px solid var(--color-border);box-shadow:none;background:0 0;border-radius:0;margin:0;padding:12px 0 0}@media (width>=768px){.order-detail-page__tracking[data-v-7d9d2f9d] .status-hero{padding:0}.order-detail-page__tracking[data-v-7d9d2f9d] .status-hero__desc{max-width:42rem}}.tracking-card__title[data-v-7d9d2f9d]{margin:0 0 12px;font-size:.9375rem;font-weight:700}.tracking-collapse[data-v-7d9d2f9d]{padding:0;overflow:hidden}.tracking-collapse__trigger[data-v-7d9d2f9d]{width:100%;color:var(--color-text);text-align:start;cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;font-family:inherit;font-size:.9375rem;font-weight:700;transition:background .15s;display:flex}.tracking-collapse__trigger[data-v-7d9d2f9d]:hover{background:var(--color-bg)}.tracking-collapse__chevron[data-v-7d9d2f9d]{color:var(--color-text-muted);flex-shrink:0;transition:transform .2s;transform:rotate(-90deg)}.tracking-collapse__chevron--open[data-v-7d9d2f9d]{color:var(--color-primary);transform:rotate(90deg)}.tracking-collapse__body[data-v-7d9d2f9d]{border-top:1px solid var(--color-border);flex-direction:column;gap:12px;padding:0 16px 16px;display:flex}.tracking-collapse__section[data-v-7d9d2f9d]{padding-top:12px}.tracking-collapse__section--flush[data-v-7d9d2f9d]{padding-top:8px}@media (width>=768px){.order-detail-page__desktop-head[data-v-7d9d2f9d]{margin-bottom:8px}.order-detail-page__body[data-v-7d9d2f9d]{min-height:auto;padding-bottom:8px;overflow:visible}.order-detail-page__tracking[data-v-7d9d2f9d]{gap:16px;margin-top:8px}.order-detail-page__tracking-main[data-v-7d9d2f9d]{gap:14px}.tracking-card--hero[data-v-7d9d2f9d]{grid-template-columns:1fr;align-items:stretch;gap:16px;padding:22px 24px;display:grid}.order-detail-page__tracking[data-v-7d9d2f9d] .tracking-summary{border-inline-start:none;border-top:1px solid var(--color-border);padding-inline-start:0;padding-top:16px}.tracking-collapse[data-v-7d9d2f9d]{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-sm);overflow:hidden}.tracking-collapse__trigger[data-v-7d9d2f9d]{padding:16px 20px}.tracking-collapse__body[data-v-7d9d2f9d]{gap:16px;padding:0 20px 20px}.tracking-collapse__section--flush[data-v-7d9d2f9d]{max-width:520px}.tracking-collapse__section+.tracking-collapse__section[data-v-7d9d2f9d],.tracking-collapse__section+.tracking-alert[data-v-7d9d2f9d],.tracking-alert+.tracking-collapse__section[data-v-7d9d2f9d]{border-top:1px solid var(--color-border);padding-top:16px}.order-detail-page__footer[data-v-7d9d2f9d]{display:none}}@media (width>=1000px){.tracking-card--hero[data-v-7d9d2f9d]{grid-template-columns:minmax(0,1.4fr) minmax(220px,.75fr);gap:20px}.order-detail-page__tracking[data-v-7d9d2f9d] .tracking-summary{border-top:none;border-inline-start:1px solid var(--color-border);padding-top:0;padding-inline-start:20px}}@media (width>=1200px){.tracking-card--hero[data-v-7d9d2f9d]{grid-template-columns:minmax(0,1.5fr) minmax(260px,.7fr);gap:28px;padding:24px 28px}.tracking-collapse__section--flush[data-v-7d9d2f9d]{max-width:560px}}.tracking-alert[data-v-7d9d2f9d]{background:var(--color-info-light);color:var(--color-primary);border-radius:12px;padding:12px 14px;font-size:.875rem}.item-row[data-v-7d9d2f9d]{border-bottom:1px solid var(--color-border);justify-content:space-between;gap:12px;padding:10px 0;font-size:.875rem;display:flex}.item-row[data-v-7d9d2f9d]:last-child{border-bottom:none}.item-row__meta[data-v-7d9d2f9d]{color:var(--color-text-muted);margin:4px 0 0;font-size:.8125rem}.item-row--summary[data-v-7d9d2f9d]{border-bottom:none;margin-top:4px;padding-top:12px}.detail-row[data-v-7d9d2f9d]{justify-content:space-between;padding:6px 0;font-size:.875rem;display:flex}.bank-row[data-v-7d9d2f9d]{border-bottom:1px solid var(--color-border);padding:10px 0}.bank-row[data-v-7d9d2f9d]:last-child{border-bottom:none}.bank-row__meta[data-v-7d9d2f9d]{color:var(--color-text-muted);margin:4px 0 0;font-size:.8125rem}.rass-display[data-v-7d9d2f9d]{color:var(--color-purple);font-size:1.5rem;font-weight:700}.rass-date[data-v-7d9d2f9d]{color:var(--color-text-muted);margin:6px 0 0;font-size:.8125rem}.check-img[data-v-7d9d2f9d]{border-radius:var(--radius-sm);max-width:100%;max-height:100px;margin-top:8px}.dialog-overlay[data-v-7d9d2f9d]{z-index:200;background:#0f172a66;justify-content:center;align-items:flex-end;padding:16px;display:flex;position:fixed;inset:0}.dialog[data-v-7d9d2f9d]{width:100%;max-width:min(480px,100vw - 32px);max-height:90vh;overflow-y:auto}.receipt-modal-overlay[data-v-7d9d2f9d]{z-index:1100;-webkit-backdrop-filter:blur(8px);background:#0f172a85;justify-content:center;align-items:flex-end;padding:0;display:flex;position:fixed;inset:0}.receipt-modal[data-v-7d9d2f9d]{border-radius:var(--radius-lg) var(--radius-lg) 0 0;background:var(--color-surface);width:100%;max-height:92dvh;box-shadow:var(--shadow-md);flex-direction:column;display:flex;overflow:hidden}.receipt-modal__header[data-v-7d9d2f9d]{border-bottom:1px solid var(--color-border);flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.receipt-modal__title[data-v-7d9d2f9d]{color:var(--color-text);margin:0;font-size:1rem;font-weight:700}.receipt-modal__close[data-v-7d9d2f9d]{border-radius:var(--radius-sm);width:36px;height:36px;color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;font-size:1.5rem;line-height:1;display:flex}.receipt-modal__close[data-v-7d9d2f9d]:hover{background:var(--color-bg);color:var(--color-text)}.receipt-modal__body[data-v-7d9d2f9d]{min-height:0;padding:16px;padding-bottom:calc(16px + env(safe-area-inset-bottom,0px));flex:auto;overflow-y:auto}@media (width>=768px){.receipt-modal-overlay[data-v-7d9d2f9d]{align-items:center;padding:24px}.receipt-modal[data-v-7d9d2f9d]{border-radius:var(--radius-lg);width:min(100%,520px);max-height:min(90dvh,760px)}.receipt-modal__header[data-v-7d9d2f9d]{padding:16px 20px}.receipt-modal__body[data-v-7d9d2f9d]{padding:20px}}.select-input[data-v-7d9d2f9d]{border:1.5px solid var(--color-border);border-radius:var(--radius-sm);width:100%;padding:12px;font-family:inherit}.select-input--error[data-v-7d9d2f9d]{border-color:var(--color-danger)}.upload-box[data-v-7d9d2f9d]{border:1.5px dashed var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);cursor:pointer;justify-content:center;align-items:center;min-height:120px;display:flex;position:relative;overflow:hidden}.upload-box--error[data-v-7d9d2f9d]{border-color:var(--color-danger)}.upload-box__input[data-v-7d9d2f9d]{opacity:0;cursor:pointer;position:absolute;inset:0}.upload-box__placeholder[data-v-7d9d2f9d]{color:var(--color-text-muted);font-size:.875rem}.upload-box__preview[data-v-7d9d2f9d]{object-fit:contain;max-width:100%;max-height:140px}.input-error-text[data-v-7d9d2f9d]{color:var(--color-danger);margin:4px 0 0;font-size:.8125rem}.empty-state[data-v-7d9d2f9d]{flex-direction:column;justify-content:center;align-items:center;gap:16px;min-height:240px;display:flex} +.tracking-timeline[data-v-603b6d66]{flex-direction:column;display:flex}.tracking-timeline__item[data-v-603b6d66]{grid-template-columns:28px minmax(0,1fr);align-items:start;column-gap:12px;min-height:44px;display:grid}.tracking-timeline__marker-wrap[data-v-603b6d66]{justify-content:center;align-self:stretch;width:28px;display:flex;position:relative}.tracking-timeline__line[data-v-603b6d66]{background:var(--color-border);z-index:0;width:2px;position:absolute;top:22px;bottom:0;left:50%;transform:translate(-50%)}.tracking-timeline__item:last-child .tracking-timeline__line[data-v-603b6d66]{display:none}.tracking-timeline__item--done .tracking-timeline__line[data-v-603b6d66]{background:var(--color-success)}.tracking-timeline__item--current .tracking-timeline__line[data-v-603b6d66]{background:color-mix(in srgb, var(--color-primary) 35%, var(--color-border))}.tracking-timeline__marker[data-v-603b6d66]{z-index:1;background:var(--color-border);border:2px solid var(--color-border);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;margin-top:2px;display:flex;position:relative}.tracking-timeline__item--done .tracking-timeline__marker[data-v-603b6d66]{background:var(--color-success);border-color:var(--color-success)}.tracking-timeline__item--current .tracking-timeline__marker[data-v-603b6d66]{background:var(--color-primary);border-color:var(--color-primary);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-primary) 28%, transparent)}.tracking-timeline__item--pending .tracking-timeline__marker[data-v-603b6d66]{background:var(--color-elevated);border-color:var(--color-border)}.tracking-timeline__check[data-v-603b6d66]{color:var(--color-surface);font-size:.75rem;font-weight:700;line-height:1}.tracking-timeline__content[data-v-603b6d66]{min-width:0;padding:2px 0 14px}.tracking-timeline__content--current[data-v-603b6d66]{background:var(--color-primary-soft);border:1px solid var(--color-border);border-radius:12px;padding:10px 14px 12px}.tracking-timeline__label[data-v-603b6d66]{color:var(--color-text-muted);margin-bottom:2px;font-size:.875rem;font-weight:600;line-height:1.45;display:block}.tracking-timeline__item--done .tracking-timeline__label[data-v-603b6d66],.tracking-timeline__item--current .tracking-timeline__label[data-v-603b6d66]{color:var(--color-text)}.tracking-timeline__time[data-v-603b6d66]{color:var(--color-text-muted);font-variant-numeric:tabular-nums;margin-top:4px;font-size:.75rem;display:block}.status-hero[data-v-896684d9]{text-align:center;flex-direction:column;align-items:center;gap:0;padding:8px 12px 20px;display:flex}.status-hero__icon[data-v-896684d9]{width:64px;height:64px;color:var(--color-primary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-bottom:14px;display:flex}.status-hero--waiting .status-hero__icon[data-v-896684d9]{background:var(--color-primary-soft);color:var(--color-primary)}.status-hero--success .status-hero__icon[data-v-896684d9]{background:var(--color-primary-soft);color:var(--color-success)}.status-hero--info .status-hero__icon[data-v-896684d9]{background:var(--color-primary-light);color:var(--color-primary)}.status-hero__copy[data-v-896684d9]{min-width:0}.status-hero__title[data-v-896684d9]{color:var(--color-text);margin:0 0 8px;font-size:1.0625rem;font-weight:700}.status-hero--success .status-hero__title[data-v-896684d9]{color:var(--color-success)}.status-hero__desc[data-v-896684d9]{max-width:320px;color:var(--color-text-muted);margin:0;font-size:.8125rem;line-height:1.7}@media (width>=768px){.status-hero[data-v-896684d9]{text-align:start;flex-direction:row;align-items:flex-start;gap:16px;padding:0}.status-hero__icon[data-v-896684d9]{width:52px;height:52px;margin-bottom:0}.status-hero__title[data-v-896684d9]{margin-bottom:6px}.status-hero__desc[data-v-896684d9]{max-width:none}}.tracking-summary[data-v-b22cc5d6]{background:var(--color-elevated);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);border-radius:16px;padding:16px}.tracking-summary__row[data-v-b22cc5d6]{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:12px;padding:10px 0;font-size:.875rem;display:flex}.tracking-summary__row[data-v-b22cc5d6]:last-child{border-bottom:none;padding-bottom:0}.tracking-summary__row span[data-v-b22cc5d6]{color:var(--color-text-muted)}.tracking-summary__row strong[data-v-b22cc5d6]{color:var(--color-text);text-align:left;font-weight:700}.order-detail-page[data-v-87e17357]{height:100%;min-height:0;padding:12px var(--page-padding) 0;background:var(--color-bg);color:var(--color-text);flex-direction:column;flex:1;display:flex;overflow:hidden}@media (width>=768px){.order-detail-page[data-v-87e17357]{padding:20px var(--page-padding) 28px;max-width:var(--content-max-width);box-sizing:border-box;background:0 0;width:100%;margin-inline:auto}}.order-detail-back[data-v-87e17357]{color:var(--color-primary);cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;margin-bottom:12px;padding:0;font-family:inherit;font-size:.875rem;font-weight:600;display:inline-flex}.order-detail-back[data-v-87e17357]:hover{color:var(--color-primary-hover)}.order-detail-page__nav[data-v-87e17357]{flex-shrink:0;grid-template-columns:40px 1fr 40px;align-items:center;gap:4px;margin-bottom:16px;display:grid}.order-detail-page__nav-center[data-v-87e17357]{flex-direction:column;align-items:center;gap:2px;min-width:0;display:flex}.order-detail-page__title[data-v-87e17357]{text-align:center;color:var(--color-text);margin:0;font-size:1.0625rem;font-weight:700;line-height:1.35}.order-detail-page__order-id[data-v-87e17357]{text-align:center;color:var(--color-text-muted);font-variant-numeric:tabular-nums;margin:0;font-size:.8125rem;font-weight:600;line-height:1.3}.nav-btn[data-v-87e17357]{width:40px;height:40px;color:var(--color-text);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:flex}.nav-btn--ghost[data-v-87e17357]{visibility:hidden;pointer-events:none}.nav-btn__flip[data-v-87e17357]{transform:scaleX(-1)}.order-detail-page__body[data-v-87e17357]{-webkit-overflow-scrolling:touch;flex:1;width:100%;min-height:0;padding-bottom:28px;overflow-y:auto}.order-info-card[data-v-87e17357]{background:var(--color-elevated);box-shadow:var(--shadow-sm);border-radius:20px;padding:20px 18px 8px}.order-info-card__head[data-v-87e17357]{border-bottom:1px solid var(--color-border);margin-bottom:4px;padding-bottom:16px}.order-info-card__label[data-v-87e17357]{color:var(--color-text-muted);margin-bottom:6px;font-size:.8125rem;display:block}.order-info-card__number[data-v-87e17357]{color:var(--color-text);font-size:1.125rem;font-weight:700;line-height:1.4;display:block}.order-info-card__row[data-v-87e17357]{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:12px;padding:14px 0;display:flex}.order-info-card__row--last[data-v-87e17357]{border-bottom:none;padding-bottom:10px}.order-info-card__key[data-v-87e17357]{color:var(--color-primary);flex-shrink:0;font-size:.875rem;font-weight:600}.order-info-card__value[data-v-87e17357]{text-align:left;font-size:.875rem}.order-info-card__value--accent[data-v-87e17357]{color:var(--color-primary);font-weight:500}.order-info-card__amount[data-v-87e17357]{color:var(--color-text);text-align:left;font-size:.9375rem;font-weight:700}.order-next-action[data-v-87e17357]{background:var(--color-primary-light);border:1px solid var(--color-primary);border-radius:16px;flex-direction:column;gap:10px;margin-top:12px;padding:16px;display:flex}.order-next-action__text[data-v-87e17357]{color:var(--color-primary);font-size:.8125rem;line-height:1.6}@media (width>=768px){.order-next-action[data-v-87e17357]{flex-direction:row;justify-content:space-between;align-items:center}.order-next-action__btn[data-v-87e17357]{flex-shrink:0;width:auto}}.order-detail-page__footer[data-v-87e17357]{background:var(--color-bg);border-top:1px solid var(--color-border);margin:0 calc(-1 * var(--page-padding));padding:12px 0;padding-left:var(--page-padding);padding-right:var(--page-padding);flex-shrink:0;box-shadow:0 -4px 16px #0f172a0f}.order-detail-page__footer[data-v-87e17357] .btn{border-radius:12px;font-size:.9375rem}.order-detail-page__tracking[data-v-87e17357]{flex-direction:column;gap:12px;width:100%;margin-top:8px;padding-bottom:12px;display:flex}.order-detail-page__tracking-hero[data-v-87e17357],.order-detail-page__tracking-main[data-v-87e17357]{flex-direction:column;gap:12px;width:100%;min-width:0;display:flex}.tracking-card[data-v-87e17357]{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-sm);padding:16px}.tracking-card--hero[data-v-87e17357]{flex-direction:column;gap:12px;display:flex}.order-detail-page__tracking[data-v-87e17357] .status-hero{padding:4px 0 8px}.order-detail-page__tracking[data-v-87e17357] .tracking-summary{border:none;border-top:1px solid var(--color-border);box-shadow:none;background:0 0;border-radius:0;margin:0;padding:12px 0 0}@media (width>=768px){.order-detail-page__tracking[data-v-87e17357] .status-hero{padding:0}.order-detail-page__tracking[data-v-87e17357] .status-hero__desc{max-width:42rem}}.tracking-card__title[data-v-87e17357]{margin:0 0 12px;font-size:.9375rem;font-weight:700}.tracking-collapse[data-v-87e17357]{padding:0;overflow:hidden}.tracking-collapse__trigger[data-v-87e17357]{width:100%;color:var(--color-text);text-align:start;cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;font-family:inherit;font-size:.9375rem;font-weight:700;transition:background .15s;display:flex}.tracking-collapse__trigger[data-v-87e17357]:hover{background:var(--color-bg)}.tracking-collapse__chevron[data-v-87e17357]{color:var(--color-text-muted);flex-shrink:0;transition:transform .2s;transform:rotate(-90deg)}.tracking-collapse__chevron--open[data-v-87e17357]{color:var(--color-primary);transform:rotate(90deg)}.tracking-collapse__body[data-v-87e17357]{border-top:1px solid var(--color-border);flex-direction:column;gap:12px;padding:0 16px 16px;display:flex}.tracking-collapse__section[data-v-87e17357]{padding-top:12px}.tracking-collapse__section--flush[data-v-87e17357]{padding-top:8px}@media (width>=768px){.order-detail-page__desktop-head[data-v-87e17357]{margin-bottom:8px}.order-detail-page__body[data-v-87e17357]{min-height:auto;padding-bottom:8px;overflow:visible}.order-detail-page__tracking[data-v-87e17357]{gap:16px;margin-top:8px}.order-detail-page__tracking-main[data-v-87e17357]{gap:14px}.tracking-card--hero[data-v-87e17357]{grid-template-columns:1fr;align-items:stretch;gap:16px;padding:22px 24px;display:grid}.order-detail-page__tracking[data-v-87e17357] .tracking-summary{border-inline-start:none;border-top:1px solid var(--color-border);padding-inline-start:0;padding-top:16px}.tracking-collapse[data-v-87e17357]{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-sm);overflow:hidden}.tracking-collapse__trigger[data-v-87e17357]{padding:16px 20px}.tracking-collapse__body[data-v-87e17357]{gap:16px;padding:0 20px 20px}.tracking-collapse__section--flush[data-v-87e17357]{max-width:520px}.tracking-collapse__section+.tracking-collapse__section[data-v-87e17357],.tracking-collapse__section+.tracking-alert[data-v-87e17357],.tracking-alert+.tracking-collapse__section[data-v-87e17357]{border-top:1px solid var(--color-border);padding-top:16px}.order-detail-page__footer[data-v-87e17357]{display:none}}@media (width>=1000px){.tracking-card--hero[data-v-87e17357]{grid-template-columns:minmax(0,1.4fr) minmax(220px,.75fr);gap:20px}.order-detail-page__tracking[data-v-87e17357] .tracking-summary{border-top:none;border-inline-start:1px solid var(--color-border);padding-top:0;padding-inline-start:20px}}@media (width>=1200px){.tracking-card--hero[data-v-87e17357]{grid-template-columns:minmax(0,1.5fr) minmax(260px,.7fr);gap:28px;padding:24px 28px}.tracking-collapse__section--flush[data-v-87e17357]{max-width:560px}}.tracking-alert[data-v-87e17357]{background:var(--color-info-light);color:var(--color-primary);border-radius:12px;padding:12px 14px;font-size:.875rem}.item-row[data-v-87e17357]{border-bottom:1px solid var(--color-border);justify-content:space-between;gap:12px;padding:10px 0;font-size:.875rem;display:flex}.item-row[data-v-87e17357]:last-child{border-bottom:none}.item-row__meta[data-v-87e17357]{color:var(--color-text-muted);margin:4px 0 0;font-size:.8125rem}.item-row--summary[data-v-87e17357]{border-bottom:none;margin-top:4px;padding-top:12px}.detail-row[data-v-87e17357]{justify-content:space-between;padding:6px 0;font-size:.875rem;display:flex}.bank-row[data-v-87e17357]{border-bottom:1px solid var(--color-border);padding:10px 0}.bank-row[data-v-87e17357]:last-child{border-bottom:none}.bank-row__meta[data-v-87e17357]{color:var(--color-text-muted);margin:4px 0 0;font-size:.8125rem}.rass-display[data-v-87e17357]{color:var(--color-purple);font-size:1.5rem;font-weight:700}.rass-date[data-v-87e17357]{color:var(--color-text-muted);margin:6px 0 0;font-size:.8125rem}.check-img[data-v-87e17357]{border-radius:var(--radius-sm);max-width:100%;max-height:100px;margin-top:8px}.dialog-overlay[data-v-87e17357]{z-index:200;background:#0f172a66;justify-content:center;align-items:flex-end;padding:16px;display:flex;position:fixed;inset:0}.dialog[data-v-87e17357]{width:100%;max-width:min(480px,100vw - 32px);max-height:90vh;overflow-y:auto}.receipt-modal-overlay[data-v-87e17357]{z-index:1100;-webkit-backdrop-filter:blur(8px);background:#0f172a85;justify-content:center;align-items:flex-end;padding:0;display:flex;position:fixed;inset:0}.receipt-modal[data-v-87e17357]{border-radius:var(--radius-lg) var(--radius-lg) 0 0;background:var(--color-surface);width:100%;max-height:92dvh;box-shadow:var(--shadow-md);flex-direction:column;display:flex;overflow:hidden}.receipt-modal__header[data-v-87e17357]{border-bottom:1px solid var(--color-border);flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.receipt-modal__title[data-v-87e17357]{color:var(--color-text);margin:0;font-size:1rem;font-weight:700}.receipt-modal__close[data-v-87e17357]{border-radius:var(--radius-sm);width:36px;height:36px;color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;font-size:1.5rem;line-height:1;display:flex}.receipt-modal__close[data-v-87e17357]:hover{background:var(--color-bg);color:var(--color-text)}.receipt-modal__body[data-v-87e17357]{min-height:0;padding:16px;padding-bottom:calc(16px + env(safe-area-inset-bottom,0px));flex:auto;overflow-y:auto}@media (width>=768px){.receipt-modal-overlay[data-v-87e17357]{align-items:center;padding:24px}.receipt-modal[data-v-87e17357]{border-radius:var(--radius-lg);width:min(100%,520px);max-height:min(90dvh,760px)}.receipt-modal__header[data-v-87e17357]{padding:16px 20px}.receipt-modal__body[data-v-87e17357]{padding:20px}}.select-input[data-v-87e17357]{border:1.5px solid var(--color-border);border-radius:var(--radius-sm);width:100%;padding:12px;font-family:inherit}.select-input--error[data-v-87e17357]{border-color:var(--color-danger)}.upload-box[data-v-87e17357]{border:1.5px dashed var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);cursor:pointer;justify-content:center;align-items:center;min-height:120px;display:flex;position:relative;overflow:hidden}.upload-box--error[data-v-87e17357]{border-color:var(--color-danger)}.upload-box__input[data-v-87e17357]{opacity:0;cursor:pointer;position:absolute;inset:0}.upload-box__placeholder[data-v-87e17357]{color:var(--color-text-muted);font-size:.875rem}.upload-box__preview[data-v-87e17357]{object-fit:contain;max-width:100%;max-height:140px}.input-error-text[data-v-87e17357]{color:var(--color-danger);margin:4px 0 0;font-size:.8125rem}.empty-state[data-v-87e17357]{flex-direction:column;justify-content:center;align-items:center;gap:16px;min-height:240px;display:flex} diff --git a/dist/assets/OrderDetailView-BAbo40bP.js b/dist/assets/OrderDetailView-F8UnKRJu.js similarity index 50% rename from dist/assets/OrderDetailView-BAbo40bP.js rename to dist/assets/OrderDetailView-F8UnKRJu.js index 6711c5b..411c4ee 100644 --- a/dist/assets/OrderDetailView-BAbo40bP.js +++ b/dist/assets/OrderDetailView-F8UnKRJu.js @@ -1 +1 @@ -import{A as e,C as t,Ct as n,D as r,Et as i,L as a,M as o,N as s,O as c,P as l,R as u,St as d,T as ee,Y as f,Z as p,_ as m,g as te,it as h,j as g,k as ne,mt as _,n as v,rt as y,t as b,tt as x,z as S}from"./BasicIcon-C6boaehV.js";import{n as re}from"./dist-B7sUlTMM.js";import{a as ie,i as C,l as ae,n as w,o as oe,r as T,u as E}from"./format-BHJptHdF.js";import{n as se,t as ce}from"./validation-BD7oi-2I.js";import{d as le,n as D,o as O,p as ue}from"./index-fdhs4HNc.js";import{n as k}from"./constants-DXXK14Zz.js";import{t as A}from"./IconChevronBack-DORV2H0q.js";import{t as de}from"./FormErrorBanner-CjdBfIQT.js";import{n as j,r as M,t as fe}from"./formErrors-DglFjYkZ.js";import{n as pe,t as N}from"./orderInvoice-B0L1Aeuk.js";import{t as me}from"./BaseInput-C6eO_Qjy.js";import{t as he}from"./CurrencyInput-Dl1ITOQ-.js";import{t as ge}from"./PersianDateInput-2Yt1srLL.js";var P={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},F={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 I(e){return e===`cash`?{payment:`ثبت رسید پرداخت`,review:`بررسی پرداخت نقدی`,approved:`پرداخت تأیید شده`}:e===`check`?{payment:`ثبت چک`,review:`در حال بررسی چک‌ها`,approved:`چک‌ها تأیید شده`}:{payment:`ثبت پرداخت / چک`,review:`بررسی پرداخت / چک`,approved:`تأیید پرداخت`}}function L(e){let t=I(e.settlementType);return k.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 R(e){return P[e]??0}function _e(e){return F[e]??null}var z={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 B(e,t){if(t===`submitted`)return e.createdAt;let n=z[t]??[t];return[...e.statusHistory].reverse().find(e=>n.includes(e.toStatus))?.changedAt??null}function ve(e){return e===`shipped`?`مشاهده جزئیات و بارنامه`:[`checks_approved`,`cash_confirmed`,`delivered`,`final_approved`].includes(e)?`مشاهده جزئیات`:`مشاهده جزئیات سفارش`}var V={class:`tracking-timeline`},H={class:`tracking-timeline__marker-wrap`},U={class:`tracking-timeline__marker`},W={key:0,class:`tracking-timeline__check`},G={class:`tracking-timeline__label`},K={key:0,class:`tracking-timeline__time`},ye=v(S({__name:`OrderTrackingTimeline`,props:{order:{}},setup(t){let r=t,a=e(()=>L(r.order)),o=e(()=>R(r.order.status));function u(e){return e(f(),l(`div`,V,[(f(!0),l(c,null,p(a.value,(e,r)=>(f(),l(`div`,{key:e.status,class:n([`tracking-timeline__item`,`tracking-timeline__item--${u(r)}`])},[g(`div`,H,[t[0]||=g(`div`,{class:`tracking-timeline__line`,"aria-hidden":`true`},null,-1),g(`div`,U,[u(r)===`done`?(f(),l(`span`,W,`✓`)):s(``,!0)])]),g(`div`,{class:n([`tracking-timeline__content`,{"tracking-timeline__content--current":u(r)===`current`}])},[g(`strong`,G,i(e.label),1),d(e.status)?(f(),l(`span`,K,i(d(e.status)),1)):s(``,!0)],2)],2))),128))]))}}),[[`__scopeId`,`data-v-603b6d66`]]),q={class:`status-hero__icon`,"aria-hidden":`true`},J={class:`status-hero__copy`},Y={class:`status-hero__title`},be={key:0,class:`status-hero__desc`},xe=v(S({__name:`OrderStatusHero`,props:{config:{}},setup(e){let t={waiting:`vuesax-linear:timer-1`,success:`vuesax-linear:tick-circle`,info:`vuesax-linear:info-circle`,none:`vuesax-linear:info-circle`};return(r,a)=>e.config.variant===`none`?s(``,!0):(f(),l(`div`,{key:0,class:n([`status-hero`,`status-hero--${e.config.variant}`])},[g(`div`,q,[u(b,{icon:t[e.config.variant],size:28,"stroke-width":1.5},null,8,[`icon`])]),g(`div`,J,[g(`h2`,Y,i(e.config.title),1),e.config.description?(f(),l(`p`,be,i(e.config.description),1)):s(``,!0)])],2))}}),[[`__scopeId`,`data-v-896684d9`]]),Se={class:`tracking-summary`},X={class:`tracking-summary__row`},Z={class:`tracking-summary__row`},Q={class:`tracking-summary__row`},$={class:`tracking-summary__row`},Ce={key:0,class:`tracking-summary__row`},we={key:1,class:`tracking-summary__row`},Te=v(S({__name:`OrderTrackingSummary`,props:{order:{}},setup(t){let n=t,r=e(()=>n.order.checks?.reduce((e,t)=>e+t.amount,0)??0);function a(e){return e?e===`cash`?`تسویه نقدی`:`تسویه چکی`:`در انتظار انتخاب مشتری`}return(e,n)=>(f(),l(`div`,Se,[g(`div`,X,[n[0]||=g(`span`,null,`مبلغ فاکتور`,-1),g(`strong`,null,i(t.order.finalAmount?d(oe)(t.order.finalAmount):`در انتظار قیمت‌گذاری`),1)]),g(`div`,Z,[n[1]||=g(`span`,null,`نوع تسویه`,-1),g(`strong`,null,i(a(t.order.settlementType)),1)]),t.order.settlementType===`check`&&t.order.checks?.length?(f(),l(c,{key:0},[g(`div`,Q,[n[2]||=g(`span`,null,`تعداد چک‌ها`,-1),g(`strong`,null,i(d(E)(String(t.order.checks.length)))+` فقره`,1)]),g(`div`,$,[n[3]||=g(`span`,null,`مجموع مبلغ چک‌ها`,-1),g(`strong`,null,i(d(w)(r.value)),1)]),t.order.checkRassDays==null?s(``,!0):(f(),l(`div`,Ce,[n[4]||=g(`span`,null,`رأس چک (تقریبی)`,-1),g(`strong`,null,i(d(E)(String(t.order.checkRassDays)))+` روز`,1)]))],64)):s(``,!0),t.order.settlementType===`cash`&&t.order.cashReceipt?(f(),l(`div`,we,[n[5]||=g(`span`,null,`مبلغ واریزی`,-1),g(`strong`,null,i(d(w)(t.order.cashReceipt.amount)),1)])):s(``,!0)]))}}),[[`__scopeId`,`data-v-b22cc5d6`]]),Ee={key:0,class:`order-detail-page`},De={class:`order-detail-page__nav mobile-only`},Oe={class:`order-detail-page__nav-center`},ke={class:`order-detail-page__title`},Ae={key:0,class:`order-detail-page__order-id`},je={type:`button`,class:`nav-btn nav-btn--ghost`,"aria-hidden":`true`,tabindex:`-1`},Me={class:`desktop-page__head desktop-only order-detail-page__desktop-head`},Ne={class:`desktop-page__subtitle`},Pe={class:`order-detail-page__body`},Fe={key:0,class:`order-info-card mobile-only`},Ie={class:`order-info-card__head`},Le={class:`order-info-card__number`},Re={class:`order-info-card__row`},ze={class:`order-info-card__value order-info-card__value--accent`},Be={class:`order-info-card__row`},Ve={class:`order-info-card__value order-info-card__value--accent`},He={class:`order-info-card__row`},Ue={class:`order-info-card__value order-info-card__value--accent`},We={class:`order-info-card__row order-info-card__row--last`},Ge={class:`order-info-card__amount`},Ke={key:1,class:`order-next-action`},qe={key:2,class:`order-detail-page__tracking`},Je={class:`order-detail-page__tracking-hero`},Ye={class:`tracking-card tracking-card--hero`},Xe={class:`order-detail-page__tracking-main`},Ze={key:0,class:`order-next-action`},Qe={class:`tracking-card tracking-collapse`},$e=[`aria-expanded`],et={class:`tracking-collapse__body`},tt={class:`tracking-collapse__section tracking-collapse__section--flush`},nt={class:`tracking-card tracking-collapse`},rt=[`aria-expanded`],it={class:`tracking-collapse__body`},at={class:`tracking-collapse__section`},ot={class:`item-row__meta`},st={class:`item-row item-row--summary`},ct={key:0,class:`tracking-alert`},lt={class:`tracking-collapse__section`},ut={dir:`ltr`,class:`bank-row__meta`},dt={dir:`ltr`,class:`bank-row__meta`},ft={key:2,class:`tracking-collapse__section`},pt={class:`detail-row`},mt={class:`detail-row`},ht={class:`tracking-collapse__section`},gt={class:`rass-display`},_t={key:0,class:`rass-date`},vt={class:`detail-row`},yt={class:`detail-row`},bt=[`src`],xt={key:0,class:`order-detail-page__footer mobile-only`},St={class:`receipt-modal card`,role:`dialog`,"aria-modal":`true`,"aria-labelledby":`receipt-modal-title`},Ct={class:`receipt-modal__header`},wt={class:`receipt-modal__body`},Tt={class:`form-group`},Et=[`value`],Dt={key:0,class:`input-error-text`},Ot={class:`form-group`},kt=[`src`],At={key:1,class:`upload-box__placeholder`},jt={key:0,class:`input-error-text`},Mt={key:1,class:`page empty-state`},Nt=v(S({__name:`OrderDetailView`,setup(v){let b=te(),S=m(),E=le(),k=re(`(min-width: 768px)`),P=e(()=>b.params.id),F=e(()=>E.getOrderById(P.value)),I=_(b.query.track===`1`||b.query.receipt===`1`),L=_(!1),R=_(!0),z=_(b.query.receipt===`1`),B=_(``),V=_(``),H=_(``),U=_(``),W=_(``),G=_(``),K=_({}),q=_(``);x([F,()=>b.query.receipt],([e])=>{let t=b.query.receipt===`1`;if(t&&N(e)){L.value=!0,z.value=!0;return}if(t&&e&&!N(e)){L.value=!1;let{receipt:e,...t}=b.query;S.replace({query:{...t,track:`1`}})}},{immediate:!0}),x(k,e=>{e&&(I.value=!0,R.value=!0,z.value=!0,b.query.track!==`1`&&b.query.receipt!==`1`&&S.replace({query:{...b.query,track:`1`}}))},{immediate:!0}),x(B,()=>{K.value=j(K.value,`receiptAmount`),M(K.value)||(q.value=``)}),x(V,()=>{K.value=j(K.value,`receiptDate`),M(K.value)||(q.value=``)}),x(U,()=>{K.value=j(K.value,`trackingNumber`),M(K.value)||(q.value=``)}),x(W,()=>{K.value=j(K.value,`destinationAccountId`),M(K.value)||(q.value=``)});let J=_([]);x(()=>F.value?.id,async e=>{if(!e||!F.value){J.value=[];return}try{J.value=await E.getBankAccountsForOrder(F.value)}catch{J.value=[]}},{immediate:!0}),x(()=>P.value,async e=>{if(e&&!E.getOrderById(e))try{await E.fetchOrder(e)}catch{}},{immediate:!0});let Y=e(()=>F.value?_e(F.value.status):null),be=e(()=>F.value?ve(F.value.status):`مشاهده جزئیات سفارش`);function Se(e){return e?e===`cash`?`تسویه نقدی`:`تسویه چکی`:`در انتظار انتخاب مشتری`}let X=e(()=>{let e=F.value;if(!e)return null;let t=pe(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 Z(){if(!N(F.value)){q.value=`در وضعیت فعلی سفارش امکان ثبت رسید وجود ندارد`;return}I.value=!0,z.value=!0,L.value=!0}function Q(){let e=X.value;if(e){if(e.receipt){Z();return}e.to&&S.push(e.to)}}function $(){I.value=!0,z.value=!1,S.replace({query:{track:`1`}})}function Ce(){z.value=!z.value}function we(){R.value=!R.value}async function Nt(e){let t=e.target.files?.[0];if(!t)return;let n=se(t);if(!n.valid){K.value={...K.value,receiptImage:n.message??`خطا`};return}K.value=j(K.value,`receiptImage`),G.value=await ce(t)}async function Pt(){if(!F.value)return;if(K.value={},q.value=``,!N(F.value)){q.value=`در وضعیت فعلی سفارش امکان ثبت رسید وجود ندارد`;return}let e=ae(B.value),t={};if(e||(t.receiptAmount=`مبلغ واریزی الزامی است.`),V.value||(t.receiptDate=`تاریخ واریز الزامی است.`),U.value.trim()||(t.trackingNumber=`شماره پیگیری الزامی است.`),W.value||(t.destinationAccountId=`حساب مقصد را انتخاب کنید.`),M(t)){K.value=t,q.value=fe;return}try{await E.submitCashReceipt(F.value.id,{amount:e,transferDate:V.value,transferTime:H.value||`12:00`,trackingNumber:U.value,destinationAccountId:W.value,receiptImage:G.value||void 0}),L.value=!1,K.value={},q.value=``}catch(e){q.value=e instanceof Error?e.message:`ثبت رسید ناموفق بود.`}}return(e,m)=>F.value?(f(),l(`div`,Ee,[g(`header`,De,[g(`button`,{type:`button`,class:`nav-btn`,"aria-label":`بازگشت`,onClick:m[0]||=e=>d(S).push(`/orders`)},[u(A,{size:20})]),g(`div`,Oe,[g(`h1`,ke,i(I.value?`پیگیری سفارش`:`جزئیات سفارش`),1),I.value?(f(),l(`p`,Ae,i(F.value.orderNumber),1)):s(``,!0)]),g(`button`,je,[u(A,{size:18,class:`nav-btn__flip`})])]),g(`header`,Me,[g(`button`,{type:`button`,class:`order-detail-back`,onClick:m[1]||=e=>d(S).push(`/orders`)},[u(A,{size:18}),m[10]||=a(` بازگشت به سفارش‌ها `,-1)]),m[11]||=g(`h1`,{class:`desktop-page__title`},`پیگیری سفارش`,-1),g(`p`,Ne,i(F.value.orderNumber)+` · `+i(F.value.companyName),1)]),g(`div`,Pe,[I.value?s(``,!0):(f(),l(`div`,Fe,[g(`div`,Ie,[m[12]||=g(`span`,{class:`order-info-card__label`},`شماره سفارش`,-1),g(`strong`,Le,i(F.value.orderNumber),1)]),g(`div`,Re,[m[13]||=g(`span`,{class:`order-info-card__key`},`شرکت`,-1),g(`span`,ze,i(F.value.companyName),1)]),g(`div`,Be,[m[14]||=g(`span`,{class:`order-info-card__key`},`تاریخ ثبت`,-1),g(`span`,Ve,i(d(C)(F.value.createdAt)),1)]),g(`div`,He,[m[15]||=g(`span`,{class:`order-info-card__key`},`نوع تسویه`,-1),g(`span`,Ue,i(Se(F.value.settlementType)),1)]),g(`div`,We,[m[16]||=g(`span`,{class:`order-info-card__key`},`مبلغ فاکتور`,-1),g(`strong`,Ge,i(F.value.finalAmount?d(oe)(F.value.finalAmount):`پس از قیمت‌گذاری مدیریت`),1)])])),X.value&&!I.value?(f(),l(`div`,Ke,[m[17]||=g(`span`,{class:`order-next-action__text`},`برای ادامه سفارش، این مرحله باقی مانده است.`,-1),u(D,{class:`order-next-action__btn`,onClick:Q},{default:y(()=>[a(i(X.value.label),1)]),_:1})])):s(``,!0),I.value?(f(),l(`div`,qe,[g(`section`,Je,[g(`div`,Ye,[Y.value?(f(),o(xe,{key:0,config:Y.value},null,8,[`config`])):s(``,!0),u(Te,{order:F.value},null,8,[`order`])])]),g(`section`,Xe,[X.value?(f(),l(`div`,Ze,[m[18]||=g(`span`,{class:`order-next-action__text`},`برای ادامه سفارش، این مرحله باقی مانده است.`,-1),u(D,{class:`order-next-action__btn`,onClick:Q},{default:y(()=>[a(i(X.value.label),1)]),_:1})])):s(``,!0),g(`div`,Qe,[g(`button`,{type:`button`,class:`tracking-collapse__trigger`,"aria-expanded":R.value,onClick:we},[m[19]||=g(`span`,null,`پیگیری وضعیت`,-1),u(O,{size:18,class:n([`tracking-collapse__chevron`,{"tracking-collapse__chevron--open":R.value}]),"aria-hidden":`true`},null,8,[`class`])],8,$e),h(g(`div`,et,[g(`div`,tt,[u(ye,{order:F.value},null,8,[`order`])])],512),[[ee,R.value]])]),g(`div`,nt,[g(`button`,{type:`button`,class:`tracking-collapse__trigger`,"aria-expanded":z.value,onClick:Ce},[g(`span`,null,i(be.value),1),u(O,{size:18,class:n([`tracking-collapse__chevron`,{"tracking-collapse__chevron--open":z.value}]),"aria-hidden":`true`},null,8,[`class`])],8,rt),h(g(`div`,it,[g(`div`,at,[m[21]||=g(`h3`,{class:`tracking-card__title`},`اقلام سفارش`,-1),(f(!0),l(c,null,p(F.value.items,e=>(f(),l(`div`,{key:e.id,class:`item-row`},[g(`div`,null,[g(`strong`,null,i(e.productName),1),g(`p`,ot,`کالیته `+i(e.catalogCode)+` · `+i(e.color),1)]),g(`span`,null,i(d(ie)(e.requestedMeterage)),1)]))),128)),g(`div`,st,[m[20]||=g(`span`,null,`مجموع متراژ`,-1),g(`strong`,null,i(d(ie)(F.value.totalMeterage)),1)])]),F.value.settlementType===`cash`?(f(),l(c,{key:0},[F.value.cashInvoiceExpiresAt?(f(),l(`div`,ct,` اعتبار فاکتور: `+i(d(C)(F.value.cashInvoiceExpiresAt)),1)):s(``,!0),g(`div`,lt,[m[22]||=g(`h3`,{class:`tracking-card__title`},`حساب‌های بانکی`,-1),(f(!0),l(c,null,p(J.value,e=>(f(),l(`div`,{key:e.id,class:`bank-row`},[g(`strong`,null,i(e.bankName),1),g(`p`,ut,i(e.cardNumber),1),g(`p`,dt,i(e.iban),1)]))),128))]),X.value?.receipt?(f(),o(D,{key:1,block:``,onClick:Z},{default:y(()=>[a(i(F.value.cashReceipt?`ثبت رسید جدید`:`ثبت رسید پرداخت`),1)]),_:1})):s(``,!0),F.value.cashReceipt?(f(),l(`div`,ft,[m[25]||=g(`h3`,{class:`tracking-card__title`},`رسید ثبت‌شده`,-1),g(`div`,pt,[m[23]||=g(`span`,null,`مبلغ`,-1),g(`span`,null,i(d(w)(F.value.cashReceipt.amount)),1)]),g(`div`,mt,[m[24]||=g(`span`,null,`شماره پیگیری`,-1),g(`span`,null,i(F.value.cashReceipt.trackingNumber),1)])])):s(``,!0)],64)):s(``,!0),F.value.settlementType===`check`&&F.value.checks?(f(),l(c,{key:1},[g(`div`,ht,[m[26]||=g(`h3`,{class:`tracking-card__title`},`رأس چک‌ها`,-1),g(`div`,gt,i(F.value.checkRassDays)+` روز`,1),F.value.checkRassDate?(f(),l(`p`,_t,` تاریخ رأس: `+i(d(T)(F.value.checkRassDate)),1)):s(``,!0)]),(f(!0),l(c,null,p(F.value.checks,(e,t)=>(f(),l(`div`,{key:e.id,class:`tracking-collapse__section`},[g(`strong`,null,`چک `+i(t+1),1),g(`div`,vt,[m[27]||=g(`span`,null,`مبلغ`,-1),g(`span`,null,i(d(w)(e.amount)),1)]),g(`div`,yt,[m[28]||=g(`span`,null,`سررسید`,-1),g(`span`,null,i(d(T)(e.dueDate))+` (`+i(d(ue)(e.dueDate))+` روز)`,1)]),e.frontImage?(f(),l(`img`,{key:0,src:e.frontImage,class:`check-img`,alt:`چک`},null,8,bt)):s(``,!0)]))),128))],64)):s(``,!0)],512),[[ee,z.value]])])])])):s(``,!0)]),I.value?s(``,!0):(f(),l(`div`,xt,[u(D,{block:``,onClick:$},{default:y(()=>[...m[29]||=[a(`مشاهده جزئیات و پیگیری`,-1)]]),_:1})])),(f(),o(ne,{to:`body`},[L.value?(f(),l(`div`,{key:0,class:`receipt-modal-overlay`,onClick:m[8]||=r(e=>L.value=!1,[`self`])},[g(`div`,St,[g(`header`,Ct,[m[30]||=g(`h3`,{id:`receipt-modal-title`,class:`receipt-modal__title`},`ثبت رسید پرداخت`,-1),g(`button`,{type:`button`,class:`receipt-modal__close`,"aria-label":`بستن`,onClick:m[2]||=e=>L.value=!1},` × `)]),g(`div`,wt,[u(de,{message:q.value},null,8,[`message`]),u(he,{modelValue:B.value,"onUpdate:modelValue":m[3]||=e=>B.value=e,label:`مبلغ واریزی`,error:K.value.receiptAmount},null,8,[`modelValue`,`error`]),u(ge,{modelValue:V.value,"onUpdate:modelValue":m[4]||=e=>V.value=e,label:`تاریخ واریز`,error:K.value.receiptDate},null,8,[`modelValue`,`error`]),u(me,{modelValue:H.value,"onUpdate:modelValue":m[5]||=e=>H.value=e,label:`ساعت واریز`,type:`time`},null,8,[`modelValue`]),u(me,{modelValue:U.value,"onUpdate:modelValue":m[6]||=e=>U.value=e,label:`شماره پیگیری`,inputmode:`numeric`,dir:`ltr`,error:K.value.trackingNumber},null,8,[`modelValue`,`error`]),g(`div`,Tt,[m[32]||=g(`label`,{class:`form-label`},`حساب مقصد`,-1),h(g(`select`,{"onUpdate:modelValue":m[7]||=e=>W.value=e,class:n([`select-input`,{"select-input--error":K.value.destinationAccountId}])},[m[31]||=g(`option`,{value:``},`انتخاب کنید`,-1),(f(!0),l(c,null,p(J.value,e=>(f(),l(`option`,{key:e.id,value:e.id},i(e.bankName)+` - `+i(e.cardNumber),9,Et))),128))],2),[[t,W.value]]),K.value.destinationAccountId?(f(),l(`p`,Dt,i(K.value.destinationAccountId),1)):s(``,!0)]),g(`div`,Ot,[m[33]||=g(`label`,{class:`form-label`},`تصویر رسید`,-1),g(`label`,{class:n([`upload-box`,{"upload-box--error":K.value.receiptImage}])},[g(`input`,{type:`file`,accept:`image/*`,class:`upload-box__input`,onChange:Nt},null,32),G.value?(f(),l(`img`,{key:0,src:G.value,class:`upload-box__preview`,alt:`تصویر رسید`},null,8,kt)):(f(),l(`span`,At,`انتخاب تصویر رسید`))],2),K.value.receiptImage?(f(),l(`p`,jt,i(K.value.receiptImage),1)):s(``,!0)]),u(D,{block:``,class:`mt-4`,onClick:Pt},{default:y(()=>[...m[34]||=[a(`ثبت رسید`,-1)]]),_:1})])])])):s(``,!0)]))])):(f(),l(`div`,Mt,[m[36]||=g(`p`,null,`سفارش یافت نشد`,-1),u(D,{onClick:m[9]||=e=>d(S).push(`/orders`)},{default:y(()=>[...m[35]||=[a(`بازگشت`,-1)]]),_:1})]))}}),[[`__scopeId`,`data-v-7d9d2f9d`]]);export{Nt as default}; \ No newline at end of file +import{A as e,C as t,Ct as n,D as r,Dt as i,L as a,M as o,N as s,O as c,P as l,Q as u,R as d,T as ee,X as f,_ as p,at as m,g as te,ht as h,it as g,j as _,k as ne,n as v,nt as y,t as b,wt as x,z as S}from"./BasicIcon-Bnxm-DKk.js";import{n as re}from"./dist-CeuESLw-.js";import{a as ie,d as C,i as w,n as T,o as ae,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-DB4cQnln.js";import{n as k}from"./constants-DXXK14Zz.js";import{t as A}from"./IconChevronBack-DguSlPDK.js";import{t as de}from"./FormErrorBanner-BahrrGfv.js";import{n as j,r as M,t as fe}from"./formErrors-DglFjYkZ.js";import{n as pe,t as N}from"./orderInvoice-B0L1Aeuk.js";import{t as me}from"./BaseInput-BFVjehfb.js";import{t as he}from"./CurrencyInput-DQq9PyBn.js";import{t as ge}from"./PersianDateInput-BiSVL1bi.js";var P={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},F={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 I(e){return e===`cash`?{payment:`ثبت رسید پرداخت`,review:`بررسی پرداخت نقدی`,approved:`پرداخت تأیید شده`}:e===`check`?{payment:`ثبت چک`,review:`در حال بررسی چک‌ها`,approved:`چک‌ها تأیید شده`}:{payment:`ثبت پرداخت / چک`,review:`بررسی پرداخت / چک`,approved:`تأیید پرداخت`}}function L(e){let t=I(e.settlementType);return k.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 R(e){return P[e]??0}function _e(e){return F[e]??null}var z={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 B(e,t){if(t===`submitted`)return e.createdAt;let n=z[t]??[t];return[...e.statusHistory].reverse().find(e=>n.includes(e.toStatus))?.changedAt??null}function ve(e){return e===`shipped`?`مشاهده جزئیات و بارنامه`:[`checks_approved`,`cash_confirmed`,`delivered`,`final_approved`].includes(e)?`مشاهده جزئیات`:`مشاهده جزئیات سفارش`}var V={class:`tracking-timeline`},H={class:`tracking-timeline__marker-wrap`},U={class:`tracking-timeline__marker`},W={key:0,class:`tracking-timeline__check`},G={class:`tracking-timeline__label`},K={key:0,class:`tracking-timeline__time`},ye=v(S({__name:`OrderTrackingTimeline`,props:{order:{}},setup(t){let n=t,r=e(()=>L(n.order)),a=e(()=>R(n.order.status));function o(e){return e(f(),l(`div`,V,[(f(!0),l(c,null,u(r.value,(e,n)=>(f(),l(`div`,{key:e.status,class:x([`tracking-timeline__item`,`tracking-timeline__item--${o(n)}`])},[_(`div`,H,[t[0]||=_(`div`,{class:`tracking-timeline__line`,"aria-hidden":`true`},null,-1),_(`div`,U,[o(n)===`done`?(f(),l(`span`,W,`✓`)):s(``,!0)])]),_(`div`,{class:x([`tracking-timeline__content`,{"tracking-timeline__content--current":o(n)===`current`}])},[_(`strong`,G,i(e.label),1),d(e.status)?(f(),l(`span`,K,i(d(e.status)),1)):s(``,!0)],2)],2))),128))]))}}),[[`__scopeId`,`data-v-603b6d66`]]),q={class:`status-hero__icon`,"aria-hidden":`true`},J={class:`status-hero__copy`},Y={class:`status-hero__title`},be={key:0,class:`status-hero__desc`},xe=v(S({__name:`OrderStatusHero`,props:{config:{}},setup(e){let t={waiting:`vuesax-linear:timer-1`,success:`vuesax-linear:tick-circle`,info:`vuesax-linear:info-circle`,none:`vuesax-linear:info-circle`};return(n,r)=>e.config.variant===`none`?s(``,!0):(f(),l(`div`,{key:0,class:x([`status-hero`,`status-hero--${e.config.variant}`])},[_(`div`,q,[d(b,{icon:t[e.config.variant],size:28,"stroke-width":1.5},null,8,[`icon`])]),_(`div`,J,[_(`h2`,Y,i(e.config.title),1),e.config.description?(f(),l(`p`,be,i(e.config.description),1)):s(``,!0)])],2))}}),[[`__scopeId`,`data-v-896684d9`]]),Se={class:`tracking-summary`},X={class:`tracking-summary__row`},Z={class:`tracking-summary__row`},Q={class:`tracking-summary__row`},$={class:`tracking-summary__row`},Ce={key:0,class:`tracking-summary__row`},we={key:1,class:`tracking-summary__row`},Te=v(S({__name:`OrderTrackingSummary`,props:{order:{}},setup(t){let r=t,a=e(()=>r.order.checks?.reduce((e,t)=>e+t.amount,0)??0);function o(e){return e?e===`cash`?`تسویه نقدی`:`تسویه چکی`:`در انتظار انتخاب مشتری`}return(e,r)=>(f(),l(`div`,Se,[_(`div`,X,[r[0]||=_(`span`,null,`مبلغ فاکتور`,-1),_(`strong`,null,i(t.order.finalAmount?n(ae)(t.order.finalAmount):`در انتظار قیمت‌گذاری`),1)]),_(`div`,Z,[r[1]||=_(`span`,null,`نوع تسویه`,-1),_(`strong`,null,i(o(t.order.settlementType)),1)]),t.order.settlementType===`check`&&t.order.checks?.length?(f(),l(c,{key:0},[_(`div`,Q,[r[2]||=_(`span`,null,`تعداد چک‌ها`,-1),_(`strong`,null,i(n(C)(String(t.order.checks.length)))+` فقره`,1)]),_(`div`,$,[r[3]||=_(`span`,null,`مجموع مبلغ چک‌ها`,-1),_(`strong`,null,i(n(T)(a.value)),1)]),t.order.checkRassDays==null?s(``,!0):(f(),l(`div`,Ce,[r[4]||=_(`span`,null,`رأس چک (تقریبی)`,-1),_(`strong`,null,i(n(C)(String(t.order.checkRassDays)))+` روز`,1)]))],64)):s(``,!0),t.order.settlementType===`cash`&&t.order.cashReceipt?(f(),l(`div`,we,[r[5]||=_(`span`,null,`مبلغ واریزی`,-1),_(`strong`,null,i(n(T)(t.order.cashReceipt.amount)),1)])):s(``,!0)]))}}),[[`__scopeId`,`data-v-b22cc5d6`]]),Ee={key:0,class:`order-detail-page`},De={class:`order-detail-page__nav mobile-only`},Oe={class:`order-detail-page__nav-center`},ke={class:`order-detail-page__title`},Ae={key:0,class:`order-detail-page__order-id`},je={type:`button`,class:`nav-btn nav-btn--ghost`,"aria-hidden":`true`,tabindex:`-1`},Me={class:`desktop-page__head desktop-only order-detail-page__desktop-head`},Ne={class:`desktop-page__subtitle`},Pe={class:`order-detail-page__body`},Fe={key:0,class:`order-info-card mobile-only`},Ie={class:`order-info-card__head`},Le={class:`order-info-card__number`},Re={class:`order-info-card__row`},ze={class:`order-info-card__value order-info-card__value--accent`},Be={class:`order-info-card__row`},Ve={class:`order-info-card__value order-info-card__value--accent`},He={class:`order-info-card__row`},Ue={class:`order-info-card__value order-info-card__value--accent`},We={class:`order-info-card__row order-info-card__row--last`},Ge={class:`order-info-card__amount`},Ke={key:1,class:`order-next-action`},qe={key:2,class:`order-detail-page__tracking`},Je={class:`order-detail-page__tracking-hero`},Ye={class:`tracking-card tracking-card--hero`},Xe={class:`order-detail-page__tracking-main`},Ze={key:0,class:`order-next-action`},Qe={class:`tracking-card tracking-collapse`},$e=[`aria-expanded`],et={class:`tracking-collapse__body`},tt={class:`tracking-collapse__section tracking-collapse__section--flush`},nt={class:`tracking-card tracking-collapse`},rt=[`aria-expanded`],it={class:`tracking-collapse__body`},at={class:`tracking-collapse__section`},ot={class:`item-row__meta`},st={class:`item-row item-row--summary`},ct={key:0,class:`tracking-alert`},lt={class:`tracking-collapse__section`},ut={dir:`ltr`,class:`bank-row__meta`},dt={dir:`ltr`,class:`bank-row__meta`},ft={key:2,class:`tracking-collapse__section`},pt={class:`detail-row`},mt={class:`detail-row`},ht={class:`tracking-collapse__section`},gt={class:`rass-display`},_t={key:0,class:`rass-date`},vt={class:`detail-row`},yt={class:`detail-row`},bt=[`src`],xt={key:0,class:`order-detail-page__footer mobile-only`},St={class:`receipt-modal card`,role:`dialog`,"aria-modal":`true`,"aria-labelledby":`receipt-modal-title`},Ct={class:`receipt-modal__header`},wt={class:`receipt-modal__body`},Tt={class:`form-group`},Et=[`value`],Dt={key:0,class:`input-error-text`},Ot={class:`form-group`},kt=[`src`],At={key:1,class:`upload-box__placeholder`},jt={key:0,class:`input-error-text`},Mt={key:1,class:`page empty-state`},Nt=v(S({__name:`OrderDetailView`,setup(v){let b=te(),S=p(),C=le(),k=re(`(min-width: 768px)`),P=e(()=>b.params.id),F=e(()=>C.getOrderById(P.value)),I=h(b.query.track===`1`||b.query.receipt===`1`),L=h(!1),R=h(!0),z=h(b.query.receipt===`1`),B=h(``),V=h(``),H=h(``),U=h(``),W=h(``),G=h(``),K=h({}),q=h(``);y([F,()=>b.query.receipt],([e])=>{let t=b.query.receipt===`1`;if(t&&N(e)){L.value=!0,z.value=!0;return}if(t&&e&&!N(e)){L.value=!1;let{receipt:e,...t}=b.query;S.replace({query:{...t,track:`1`}})}},{immediate:!0}),y(k,e=>{e&&(I.value=!0,R.value=!0,z.value=!0,b.query.track!==`1`&&b.query.receipt!==`1`&&S.replace({query:{...b.query,track:`1`}}))},{immediate:!0}),y(B,()=>{K.value=j(K.value,`receiptAmount`),M(K.value)||(q.value=``)}),y(V,()=>{K.value=j(K.value,`receiptDate`),M(K.value)||(q.value=``)}),y(U,()=>{K.value=j(K.value,`trackingNumber`),M(K.value)||(q.value=``)}),y(W,()=>{K.value=j(K.value,`destinationAccountId`),M(K.value)||(q.value=``)});let J=h([]);y(()=>F.value?.id,async e=>{if(!e||!F.value){J.value=[];return}try{J.value=await C.getBankAccountsForOrder(F.value)}catch{J.value=[]}},{immediate:!0}),y(()=>P.value,async e=>{if(e&&!C.getOrderById(e))try{await C.fetchOrder(e)}catch{}},{immediate:!0});let Y=e(()=>F.value?_e(F.value.status):null),be=e(()=>F.value?ve(F.value.status):`مشاهده جزئیات سفارش`);function Se(e){return e?e===`cash`?`تسویه نقدی`:`تسویه چکی`:`در انتظار انتخاب مشتری`}let X=e(()=>{let e=F.value;if(!e)return null;let t=pe(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 Z(){if(!N(F.value)){q.value=`در وضعیت فعلی سفارش امکان ثبت رسید وجود ندارد`;return}I.value=!0,z.value=!0,L.value=!0}function Q(){let e=X.value;if(e){if(e.receipt){Z();return}e.to&&S.push(e.to)}}function $(){I.value=!0,z.value=!1,S.replace({query:{track:`1`}})}function Ce(){z.value=!z.value}function we(){R.value=!R.value}async function Nt(e){let t=e.target.files?.[0];if(!t)return;let n=se(t);if(!n.valid){K.value={...K.value,receiptImage:n.message??`خطا`};return}K.value=j(K.value,`receiptImage`),G.value=await ce(t)}async function Pt(){if(!F.value)return;if(K.value={},q.value=``,!N(F.value)){q.value=`در وضعیت فعلی سفارش امکان ثبت رسید وجود ندارد`;return}let e=oe(B.value),t={};if(e||(t.receiptAmount=`مبلغ واریزی الزامی است.`),V.value||(t.receiptDate=`تاریخ واریز الزامی است.`),U.value.trim()||(t.trackingNumber=`شماره پیگیری الزامی است.`),W.value||(t.destinationAccountId=`حساب مقصد را انتخاب کنید.`),M(t)){K.value=t,q.value=fe;return}try{await C.submitCashReceipt(F.value.id,{amount:e,transferDate:V.value,transferTime:H.value||`12:00`,trackingNumber:U.value,destinationAccountId:W.value,receiptImage:G.value||void 0}),L.value=!1,K.value={},q.value=``}catch(e){q.value=e instanceof Error?e.message:`ثبت رسید ناموفق بود.`}}return(e,p)=>F.value?(f(),l(`div`,Ee,[_(`header`,De,[_(`button`,{type:`button`,class:`nav-btn`,"aria-label":`بازگشت`,onClick:p[0]||=e=>n(S).push(`/orders`)},[d(A,{size:20})]),_(`div`,Oe,[_(`h1`,ke,i(I.value?`پیگیری سفارش`:`جزئیات سفارش`),1),I.value?(f(),l(`p`,Ae,i(F.value.orderNumber),1)):s(``,!0)]),_(`button`,je,[d(A,{size:18,class:`nav-btn__flip`})])]),_(`header`,Me,[_(`button`,{type:`button`,class:`order-detail-back`,onClick:p[1]||=e=>n(S).push(`/orders`)},[d(A,{size:18}),p[10]||=a(` بازگشت به سفارش‌ها `,-1)]),p[11]||=_(`h1`,{class:`desktop-page__title`},`پیگیری سفارش`,-1),_(`p`,Ne,i(F.value.orderNumber)+` · `+i(F.value.companyName),1)]),_(`div`,Pe,[I.value?s(``,!0):(f(),l(`div`,Fe,[_(`div`,Ie,[p[12]||=_(`span`,{class:`order-info-card__label`},`شماره سفارش`,-1),_(`strong`,Le,i(F.value.orderNumber),1)]),_(`div`,Re,[p[13]||=_(`span`,{class:`order-info-card__key`},`تأمین‌کننده`,-1),_(`span`,ze,i(F.value.companyName),1)]),_(`div`,Be,[p[14]||=_(`span`,{class:`order-info-card__key`},`تاریخ ثبت`,-1),_(`span`,Ve,i(n(w)(F.value.createdAt)),1)]),_(`div`,He,[p[15]||=_(`span`,{class:`order-info-card__key`},`نوع تسویه`,-1),_(`span`,Ue,i(Se(F.value.settlementType)),1)]),_(`div`,We,[p[16]||=_(`span`,{class:`order-info-card__key`},`مبلغ فاکتور`,-1),_(`strong`,Ge,i(F.value.finalAmount?n(ae)(F.value.finalAmount):`پس از قیمت‌گذاری مدیریت`),1)])])),X.value&&!I.value?(f(),l(`div`,Ke,[p[17]||=_(`span`,{class:`order-next-action__text`},`برای ادامه سفارش، این مرحله باقی مانده است.`,-1),d(D,{class:`order-next-action__btn`,onClick:Q},{default:g(()=>[a(i(X.value.label),1)]),_:1})])):s(``,!0),I.value?(f(),l(`div`,qe,[_(`section`,Je,[_(`div`,Ye,[Y.value?(f(),o(xe,{key:0,config:Y.value},null,8,[`config`])):s(``,!0),d(Te,{order:F.value},null,8,[`order`])])]),_(`section`,Xe,[X.value?(f(),l(`div`,Ze,[p[18]||=_(`span`,{class:`order-next-action__text`},`برای ادامه سفارش، این مرحله باقی مانده است.`,-1),d(D,{class:`order-next-action__btn`,onClick:Q},{default:g(()=>[a(i(X.value.label),1)]),_:1})])):s(``,!0),_(`div`,Qe,[_(`button`,{type:`button`,class:`tracking-collapse__trigger`,"aria-expanded":R.value,onClick:we},[p[19]||=_(`span`,null,`پیگیری وضعیت`,-1),d(O,{size:18,class:x([`tracking-collapse__chevron`,{"tracking-collapse__chevron--open":R.value}]),"aria-hidden":`true`},null,8,[`class`])],8,$e),m(_(`div`,et,[_(`div`,tt,[d(ye,{order:F.value},null,8,[`order`])])],512),[[ee,R.value]])]),_(`div`,nt,[_(`button`,{type:`button`,class:`tracking-collapse__trigger`,"aria-expanded":z.value,onClick:Ce},[_(`span`,null,i(be.value),1),d(O,{size:18,class:x([`tracking-collapse__chevron`,{"tracking-collapse__chevron--open":z.value}]),"aria-hidden":`true`},null,8,[`class`])],8,rt),m(_(`div`,it,[_(`div`,at,[p[21]||=_(`h3`,{class:`tracking-card__title`},`اقلام سفارش`,-1),(f(!0),l(c,null,u(F.value.items,e=>(f(),l(`div`,{key:e.id,class:`item-row`},[_(`div`,null,[_(`strong`,null,i(e.productName),1),_(`p`,ot,`کالیته `+i(e.catalogCode)+` · `+i(e.color),1)]),_(`span`,null,i(n(ie)(e.requestedMeterage)),1)]))),128)),_(`div`,st,[p[20]||=_(`span`,null,`مجموع متراژ`,-1),_(`strong`,null,i(n(ie)(F.value.totalMeterage)),1)])]),F.value.settlementType===`cash`?(f(),l(c,{key:0},[F.value.cashInvoiceExpiresAt?(f(),l(`div`,ct,` اعتبار فاکتور: `+i(n(w)(F.value.cashInvoiceExpiresAt)),1)):s(``,!0),_(`div`,lt,[p[22]||=_(`h3`,{class:`tracking-card__title`},`حساب‌های بانکی`,-1),(f(!0),l(c,null,u(J.value,e=>(f(),l(`div`,{key:e.id,class:`bank-row`},[_(`strong`,null,i(e.bankName),1),_(`p`,ut,i(e.cardNumber),1),_(`p`,dt,i(e.iban),1)]))),128))]),X.value?.receipt?(f(),o(D,{key:1,block:``,onClick:Z},{default:g(()=>[a(i(F.value.cashReceipt?`ثبت رسید جدید`:`ثبت رسید پرداخت`),1)]),_:1})):s(``,!0),F.value.cashReceipt?(f(),l(`div`,ft,[p[25]||=_(`h3`,{class:`tracking-card__title`},`رسید ثبت‌شده`,-1),_(`div`,pt,[p[23]||=_(`span`,null,`مبلغ`,-1),_(`span`,null,i(n(T)(F.value.cashReceipt.amount)),1)]),_(`div`,mt,[p[24]||=_(`span`,null,`شماره پیگیری`,-1),_(`span`,null,i(F.value.cashReceipt.trackingNumber),1)])])):s(``,!0)],64)):s(``,!0),F.value.settlementType===`check`&&F.value.checks?(f(),l(c,{key:1},[_(`div`,ht,[p[26]||=_(`h3`,{class:`tracking-card__title`},`رأس چک‌ها`,-1),_(`div`,gt,i(F.value.checkRassDays)+` روز`,1),F.value.checkRassDate?(f(),l(`p`,_t,` تاریخ رأس: `+i(n(E)(F.value.checkRassDate)),1)):s(``,!0)]),(f(!0),l(c,null,u(F.value.checks,(e,t)=>(f(),l(`div`,{key:e.id,class:`tracking-collapse__section`},[_(`strong`,null,`چک `+i(t+1),1),_(`div`,vt,[p[27]||=_(`span`,null,`مبلغ`,-1),_(`span`,null,i(n(T)(e.amount)),1)]),_(`div`,yt,[p[28]||=_(`span`,null,`سررسید`,-1),_(`span`,null,i(n(E)(e.dueDate))+` (`+i(n(ue)(e.dueDate))+` روز)`,1)]),e.frontImage?(f(),l(`img`,{key:0,src:e.frontImage,class:`check-img`,alt:`چک`},null,8,bt)):s(``,!0)]))),128))],64)):s(``,!0)],512),[[ee,z.value]])])])])):s(``,!0)]),I.value?s(``,!0):(f(),l(`div`,xt,[d(D,{block:``,onClick:$},{default:g(()=>[...p[29]||=[a(`مشاهده جزئیات و پیگیری`,-1)]]),_:1})])),(f(),o(ne,{to:`body`},[L.value?(f(),l(`div`,{key:0,class:`receipt-modal-overlay`,onClick:p[8]||=r(e=>L.value=!1,[`self`])},[_(`div`,St,[_(`header`,Ct,[p[30]||=_(`h3`,{id:`receipt-modal-title`,class:`receipt-modal__title`},`ثبت رسید پرداخت`,-1),_(`button`,{type:`button`,class:`receipt-modal__close`,"aria-label":`بستن`,onClick:p[2]||=e=>L.value=!1},` × `)]),_(`div`,wt,[d(de,{message:q.value},null,8,[`message`]),d(he,{modelValue:B.value,"onUpdate:modelValue":p[3]||=e=>B.value=e,label:`مبلغ واریزی`,error:K.value.receiptAmount},null,8,[`modelValue`,`error`]),d(ge,{modelValue:V.value,"onUpdate:modelValue":p[4]||=e=>V.value=e,label:`تاریخ واریز`,error:K.value.receiptDate},null,8,[`modelValue`,`error`]),d(me,{modelValue:H.value,"onUpdate:modelValue":p[5]||=e=>H.value=e,label:`ساعت واریز`,type:`time`},null,8,[`modelValue`]),d(me,{modelValue:U.value,"onUpdate:modelValue":p[6]||=e=>U.value=e,label:`شماره پیگیری`,inputmode:`numeric`,dir:`ltr`,error:K.value.trackingNumber},null,8,[`modelValue`,`error`]),_(`div`,Tt,[p[32]||=_(`label`,{class:`form-label`},`حساب مقصد`,-1),m(_(`select`,{"onUpdate:modelValue":p[7]||=e=>W.value=e,class:x([`select-input`,{"select-input--error":K.value.destinationAccountId}])},[p[31]||=_(`option`,{value:``},`انتخاب کنید`,-1),(f(!0),l(c,null,u(J.value,e=>(f(),l(`option`,{key:e.id,value:e.id},i(e.bankName)+` - `+i(e.cardNumber),9,Et))),128))],2),[[t,W.value]]),K.value.destinationAccountId?(f(),l(`p`,Dt,i(K.value.destinationAccountId),1)):s(``,!0)]),_(`div`,Ot,[p[33]||=_(`label`,{class:`form-label`},`تصویر رسید`,-1),_(`label`,{class:x([`upload-box`,{"upload-box--error":K.value.receiptImage}])},[_(`input`,{type:`file`,accept:`image/*`,class:`upload-box__input`,onChange:Nt},null,32),G.value?(f(),l(`img`,{key:0,src:G.value,class:`upload-box__preview`,alt:`تصویر رسید`},null,8,kt)):(f(),l(`span`,At,`انتخاب تصویر رسید`))],2),K.value.receiptImage?(f(),l(`p`,jt,i(K.value.receiptImage),1)):s(``,!0)]),d(D,{block:``,class:`mt-4`,onClick:Pt},{default:g(()=>[...p[34]||=[a(`ثبت رسید`,-1)]]),_:1})])])])):s(``,!0)]))])):(f(),l(`div`,Mt,[p[36]||=_(`p`,null,`سفارش یافت نشد`,-1),d(D,{onClick:p[9]||=e=>n(S).push(`/orders`)},{default:g(()=>[...p[35]||=[a(`بازگشت`,-1)]]),_:1})]))}}),[[`__scopeId`,`data-v-87e17357`]]);export{Nt as default}; \ No newline at end of file diff --git a/dist/assets/OrderSuccessView-BI6XPtrV.css b/dist/assets/OrderSuccessView-BI6XPtrV.css new file mode 100644 index 0000000..f5daaaf --- /dev/null +++ b/dist/assets/OrderSuccessView-BI6XPtrV.css @@ -0,0 +1 @@ +.success-page[data-v-bb2e861d]{text-align:center;overflow:hidden}.success-page__scroll[data-v-bb2e861d]{padding-top:48px;padding-bottom:24px}.success-icon[data-v-bb2e861d]{background:var(--color-success-light);width:80px;height:80px;color:var(--color-success);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 24px;font-size:2.5rem;display:flex}.info-row[data-v-bb2e861d]{justify-content:space-between;padding:8px 0;font-size:.9375rem;display:flex} diff --git a/dist/assets/OrderSuccessView-BpOXWOi1.js b/dist/assets/OrderSuccessView-BpOXWOi1.js new file mode 100644 index 0000000..b8965c9 --- /dev/null +++ b/dist/assets/OrderSuccessView-BpOXWOi1.js @@ -0,0 +1 @@ +import{A as e,Ct as t,Dt as n,L as r,N as i,P as a,R as o,X as s,_ as c,g as l,it as u,j as d,n as f,z as p}from"./BasicIcon-Bnxm-DKk.js";import{a as m}from"./format-C72AoJ2H.js";import{d as h,n as g}from"./index-DB4cQnln.js";import{t as _}from"./useGoBack-Ds4z3swU.js";import{t as v}from"./PageHeader-BxTTQB_F.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(p({__name:`OrderSuccessView`,setup(f){let p=l(),T=c(),{goBack:E}=_(`/orders`),D=h(),O=e(()=>D.getOrderById(p.params.id));return(e,c)=>(s(),a(`div`,y,[o(v,{title:`ثبت موفق`,"show-back":``,centered:``,onBack:t(E)},null,8,[`onBack`]),d(`div`,b,[c[8]||=d(`div`,{class:`success-icon`},`✓`,-1),c[9]||=d(`h1`,{class:`page-title text-center`},`سفارش ثبت شد`,-1),c[10]||=d(`p`,{class:`text-center text-muted mb-4`},` سفارش شما با موفقیت ثبت شد. کارشناسان ما سفارش را بررسی و قیمت‌گذاری می‌کنند و به‌محض صدور فاکتور، از طریق پیامک و پنل کاربری به شما اطلاع می‌دهیم تا روش تسویه را انتخاب کنید. `,-1),O.value?(s(),a(`div`,x,[d(`div`,S,[c[2]||=d(`span`,null,`شماره سفارش:`,-1),d(`strong`,null,n(O.value.orderNumber),1)]),d(`div`,C,[c[3]||=d(`span`,null,`تأمین‌کننده:`,-1),d(`span`,null,n(O.value.companyName),1)]),d(`div`,w,[c[4]||=d(`span`,null,`متراژ:`,-1),d(`span`,null,n(t(m)(O.value.totalMeterage)),1)]),c[5]||=d(`div`,{class:`info-row`},[d(`span`,null,`وضعیت:`),d(`span`,null,`در انتظار قیمت‌گذاری`)],-1)])):i(``,!0),o(g,{block:``,onClick:c[0]||=e=>t(T).replace(`/orders/${O.value?.id}`)},{default:u(()=>[...c[6]||=[r(` مشاهده جزئیات سفارش `,-1)]]),_:1}),o(g,{block:``,variant:`outline`,class:`mt-2`,onClick:c[1]||=e=>t(T).replace(`/`)},{default:u(()=>[...c[7]||=[r(` بازگشت به خانه `,-1)]]),_:1})])]))}}),[[`__scopeId`,`data-v-bb2e861d`]]);export{T as default}; \ No newline at end of file diff --git a/dist/assets/OrderSuccessView-D_odiYNR.css b/dist/assets/OrderSuccessView-D_odiYNR.css deleted file mode 100644 index bb8a00d..0000000 --- a/dist/assets/OrderSuccessView-D_odiYNR.css +++ /dev/null @@ -1 +0,0 @@ -.success-page[data-v-3d172af9]{text-align:center;overflow:hidden}.success-page__scroll[data-v-3d172af9]{padding-top:48px;padding-bottom:24px}.success-icon[data-v-3d172af9]{background:var(--color-success-light);width:80px;height:80px;color:var(--color-success);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 24px;font-size:2.5rem;display:flex}.info-row[data-v-3d172af9]{justify-content:space-between;padding:8px 0;font-size:.9375rem;display:flex} diff --git a/dist/assets/OrderSuccessView-DpNlCco5.js b/dist/assets/OrderSuccessView-DpNlCco5.js deleted file mode 100644 index 44f0e03..0000000 --- a/dist/assets/OrderSuccessView-DpNlCco5.js +++ /dev/null @@ -1 +0,0 @@ -import{A as e,Et as t,L as n,N as r,P as i,R as a,St as o,Y as s,_ as c,g as l,j as u,n as d,rt as f,z as p}from"./BasicIcon-C6boaehV.js";import{a as m}from"./format-BHJptHdF.js";import{d as h,n as g}from"./index-fdhs4HNc.js";import{t as _}from"./useGoBack-CgNp0uP9.js";import{t as v}from"./PageHeader-Cd04Z6F_.js";var y={class:`page success-page`},b={class:`page__scroll success-page__scroll`},x={key:0,class:`card mb-4`},S={class:`info-row`},C={class:`info-row`},w={class:`info-row`},T=d(p({__name:`OrderSuccessView`,setup(d){let p=l(),T=c(),{goBack:E}=_(`/orders`),D=h(),O=e(()=>D.getOrderById(p.params.id));return(e,c)=>(s(),i(`div`,y,[a(v,{title:`ثبت موفق`,"show-back":``,centered:``,onBack:o(E)},null,8,[`onBack`]),u(`div`,b,[c[8]||=u(`div`,{class:`success-icon`},`✓`,-1),c[9]||=u(`h1`,{class:`page-title text-center`},`سفارش ثبت شد`,-1),c[10]||=u(`p`,{class:`text-center text-muted mb-4`},` سفارش شما با موفقیت ثبت شد. کارشناسان ما سفارش را بررسی و قیمت‌گذاری می‌کنند و به‌محض صدور فاکتور، از طریق پیامک و پنل کاربری به شما اطلاع می‌دهیم تا روش تسویه را انتخاب کنید. `,-1),O.value?(s(),i(`div`,x,[u(`div`,S,[c[2]||=u(`span`,null,`شماره سفارش:`,-1),u(`strong`,null,t(O.value.orderNumber),1)]),u(`div`,C,[c[3]||=u(`span`,null,`شرکت:`,-1),u(`span`,null,t(O.value.companyName),1)]),u(`div`,w,[c[4]||=u(`span`,null,`متراژ:`,-1),u(`span`,null,t(o(m)(O.value.totalMeterage)),1)]),c[5]||=u(`div`,{class:`info-row`},[u(`span`,null,`وضعیت:`),u(`span`,null,`در انتظار قیمت‌گذاری`)],-1)])):r(``,!0),a(g,{block:``,onClick:c[0]||=e=>o(T).replace(`/orders/${O.value?.id}`)},{default:f(()=>[...c[6]||=[n(` مشاهده جزئیات سفارش `,-1)]]),_:1}),a(g,{block:``,variant:`outline`,class:`mt-2`,onClick:c[1]||=e=>o(T).replace(`/`)},{default:f(()=>[...c[7]||=[n(` بازگشت به خانه `,-1)]]),_:1})])]))}}),[[`__scopeId`,`data-v-3d172af9`]]);export{T as default}; \ No newline at end of file diff --git a/dist/assets/OrdersView-BqL6_Kme.js b/dist/assets/OrdersView-BqL6_Kme.js deleted file mode 100644 index d907a9e..0000000 --- a/dist/assets/OrdersView-BqL6_Kme.js +++ /dev/null @@ -1 +0,0 @@ -import{A as e,Ct as t,Et as n,L as r,M as i,N as a,O as o,P as s,Q as c,R as l,St as u,Y as d,Z as f,_ as p,g as m,j as h,mt as g,n as _,q as v,rt as y,t as b,tt as x,z as S}from"./BasicIcon-C6boaehV.js";import{i as C,n as w,o as T,u as E}from"./format-BHJptHdF.js";import{t as D}from"./catalog-s7nVUdlj.js";import{S as O,c as k,d as A,i as j,n as M,o as N}from"./index-fdhs4HNc.js";import{t as P}from"./EmptyState-C_QQeA_h.js";import{r as F,t as I}from"./constants-DXXK14Zz.js";import{t as L}from"./IconChevronBack-DORV2H0q.js";import{n as R,t as z}from"./IconFamBaftLogo-BaP40Dff.js";import{t as B}from"./IconProgressClock-ChlGvv7_.js";import{t as V}from"./IconFilter-D9NdLZ7w.js";import{t as H}from"./IconMoreVertical-BPkOm_2U.js";var U=[`awaiting_review`,`awaiting_check_review`],W=[`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`],G=[`shipped`],K=[`delivered`,`final_approved`,`checks_approved`,`cash_confirmed`],q=[`cancelled`,`rejected`,`expired`,`check_rejected`],ee=[...U,...W,...G];function te(e,t){switch(t){case`review`:return U.includes(e);case`in_progress`:return W.includes(e);case`shipped`:return G.includes(e);case`delivered`:return K.includes(e);case`cancelled`:return q.includes(e);default:return!0}}function ne(e,t){return t===`active`?ee.includes(e):t===`done`?K.includes(e):t!==`cancelled`||q.includes(e)}var J=5,Y=5;function X(){let t=p(),n=m(),r=A(),i=k(),a=D(),o=g(1),s=g(1),c=g(``);v(async()=>{await Promise.all([r.hydrate(),a.loadCompanies()])}),x(()=>n.query.submitted,e=>{let r=Number(e);if(!Number.isFinite(r)||r<1){c.value=``;return}c.value=r===1?`پیش‌سفارش با موفقیت ثبت شد.`:`${E(String(r))} پیش‌سفارش (برای شرکت‌های مختلف) ثبت شد.`;let{submitted:i,...a}=n.query;t.replace({query:a})},{immediate:!0});let l=e({get:()=>t.currentRoute.value.query.tab??`all`,set:e=>t.replace({query:{...t.currentRoute.value.query,tab:e}})}),u=e({get:()=>t.currentRoute.value.query.filter??`all`,set:e=>t.replace({query:{...t.currentRoute.value.query,filter:e===`all`?void 0:e}})}),d=e(()=>t.currentRoute.value.query.q??``),f=e(()=>i.user?r.userOrders(i.user.id):[]),h=e(()=>({total:f.value.length,review:f.value.filter(e=>U.includes(e.status)).length,inProgress:f.value.filter(e=>W.includes(e.status)).length,done:f.value.filter(e=>K.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 y=e(()=>f.value.filter(e=>_(e,d.value)).filter(e=>ne(e.status,l.value))),b=e(()=>f.value.filter(e=>_(e,d.value)).filter(e=>te(e.status,u.value))),S=e(()=>{let e=(o.value-1)*J;return b.value.slice(e,e+J)}),C=e(()=>Math.max(1,Math.ceil(b.value.length/J))),w=e(()=>b.value.length===0?{start:0,end:0}:{start:(o.value-1)*J+1,end:Math.min(o.value*J,b.value.length)}),T=e(()=>{let e=C.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=e(()=>Math.max(1,Math.ceil(y.value.length/Y))),j=e(()=>{let e=(s.value-1)*Y;return y.value.slice(e,e+Y)}),M=e(()=>y.value.length===0?{start:0,end:0}:{start:(s.value-1)*Y+1,end:Math.min(s.value*Y,y.value.length)}),N=e(()=>{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});x([b,u,d],()=>{o.value=1}),x([y,l,d],()=>{s.value=1});function P(e){return a.getCompany(e.companyId)?.slug??`par`}function F(e){return K.includes(e.status)?`success`:P(e)===`fam-baft`?`fam-baft`:`par`}function I(e){t.push(`/orders/${e}`)}function L(e){e<1||e>C.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 B(e){u.value=e}return{tab:l,desktopFilter:u,searchQuery:d,stats:h,filteredOrdersMobile:y,filteredOrdersDesktop:b,paginatedOrders:S,paginatedOrdersMobile:j,totalPages:C,mobileTotalPages:O,paginationRange:w,mobilePaginationRange:M,visiblePages:T,mobileVisiblePages:N,currentPage:o,mobilePage:s,companySlug:P,iconVariant:F,submitSuccessMessage:c,goToOrder:I,setPage:L,setMobilePage:R,setDesktopFilter:z,viewStatFilter:B}}var Z=[`aria-selected`,`onClick`],re=_(S({__name:`FilterTabs`,props:{modelValue:{},tabs:{},equal:{type:Boolean}},emits:[`update:modelValue`],setup(e){return(r,i)=>(d(),s(`div`,{class:t([`filter-tabs`,{"filter-tabs--equal":e.equal}]),role:`tablist`},[(d(!0),s(o,null,f(e.tabs,i=>(d(),s(`button`,{key:i.id,type:`button`,role:`tab`,class:t([`filter-tab`,{active:e.modelValue===i.id}]),"aria-selected":e.modelValue===i.id,onClick:e=>r.$emit(`update:modelValue`,i.id)},n(i.label),11,Z))),128))],2))}}),[[`__scopeId`,`data-v-4cd20e9b`]]),ie=_(S({__name:`BaseBadge`,props:{variant:{}},setup(e){return(n,r)=>(d(),s(`span`,{class:t([`badge`,`badge-${e.variant??`neutral`}`])},[c(n.$slots,`default`,{},void 0,!0)],2))}}),[[`__scopeId`,`data-v-5e1be8f4`]]),Q=S({__name:`StatusBadge`,props:{status:{}},setup(t){let a=t,o=e(()=>I[a.status]??a.status),s=e(()=>F[a.status]??`neutral`);return(e,t)=>(d(),i(ie,{variant:s.value},{default:y(()=>[r(n(o.value),1)]),_:1},8,[`variant`]))}}),ae={class:`page orders-mobile-page`},oe={class:`orders-mobile-page__nav`},se={class:`page__scroll page__scroll--with-nav orders-mobile-page__scroll`},ce={key:0,class:`orders-mobile-page__list`},le=[`onClick`],ue={class:`order-card__content`},de={class:`order-card__number`},fe={class:`order-card__company`},pe={key:0,class:`order-card__amount`},me={key:2,class:`orders-mobile-pagination`},he={class:`orders-mobile-pagination__summary`},ge={class:`orders-mobile-pagination__controls`},_e=[`disabled`],ve={key:0,class:`orders-mobile-pagination__ellipsis`},ye=[`onClick`],be=[`disabled`],xe=_(S({__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(e,{emit:c}){let p=c;return(c,m)=>(d(),s(`div`,ae,[h(`header`,oe,[h(`button`,{type:`button`,class:`nav-btn`,"aria-label":`بازگشت`,onClick:m[0]||=e=>p(`back`)},[l(L,{size:20})]),m[5]||=h(`h1`,{class:`orders-mobile-page__title`},`سفارش‌ها`,-1),l(j,{variant:`inline`})]),l(re,{"model-value":e.tab,tabs:e.tabs,equal:``,class:`orders-mobile-page__tabs`,"onUpdate:modelValue":m[1]||=e=>p(`update:tab`,e)},null,8,[`model-value`,`tabs`]),h(`div`,se,[e.orders.length>0?(d(),s(`div`,ce,[(d(!0),s(o,null,f(e.orders,r=>(d(),s(`button`,{key:r.id,type:`button`,class:`order-card`,onClick:e=>p(`select`,r.id)},[h(`div`,ue,[m[6]||=h(`span`,{class:`order-card__label`},`سفارش شماره`,-1),h(`strong`,de,n(r.orderNumber),1),h(`p`,fe,n(r.companyName),1),r.finalAmount?(d(),s(`p`,pe,n(u(w)(r.finalAmount)),1)):a(``,!0),l(Q,{status:r.status,class:`order-card__badge`},null,8,[`status`])]),h(`span`,{class:t([`order-card__icon`,`order-card__icon--${e.iconVariant(r)}`])},[e.companySlug(r)===`fam-baft`?(d(),i(z,{key:0,size:36})):(d(),i(R,{key:1,size:36}))],2)],8,le))),128))])):(d(),i(P,{key:1,variant:`orders`,message:`هنوز سفارشی ثبت نکرده‌اید`},{default:y(()=>[l(M,{onClick:m[2]||=e=>p(`back`)},{default:y(()=>[...m[7]||=[r(`ثبت سفارش جدید`,-1)]]),_:1})]),_:1})),e.totalCount>0?(d(),s(`div`,me,[h(`p`,he,n(u(E)(String(e.paginationRange.start)))+`– `+n(u(E)(String(e.paginationRange.end)))+` از `+n(u(T)(e.totalCount)),1),h(`div`,ge,[h(`button`,{type:`button`,class:`orders-mobile-pagination__arrow`,disabled:e.currentPage<=1,"aria-label":`صفحه قبل`,onClick:m[3]||=t=>p(`set-page`,e.currentPage-1)},[l(N,{size:16,class:`orders-mobile-pagination__arrow--prev`})],8,_e),(d(!0),s(o,null,f(e.visiblePages,(r,i)=>(d(),s(o,{key:`${r}-${i}`},[r===`ellipsis`?(d(),s(`span`,ve,`…`)):(d(),s(`button`,{key:1,type:`button`,class:t([`orders-mobile-pagination__page`,{"orders-mobile-pagination__page--active":r===e.currentPage}]),onClick:e=>p(`set-page`,r)},n(u(E)(String(r))),11,ye))],64))),128)),h(`button`,{type:`button`,class:`orders-mobile-pagination__arrow`,disabled:e.currentPage>=e.totalPages,"aria-label":`صفحه بعد`,onClick:m[4]||=t=>p(`set-page`,e.currentPage+1)},[l(N,{size:16,class:`orders-mobile-pagination__arrow--next`})],8,be)])])):a(``,!0)])]))}}),[[`__scopeId`,`data-v-de30513b`]]),Se=S({__name:`IconHourglass`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(d(),i(b,{icon:`vuesax-linear:timer-1`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),Ce=S({__name:`IconCheckCircleOutline`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(d(),i(b,{icon:`vuesax-linear:tick-circle`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),we={class:`desktop-page orders-desktop-page`},Te={class:`orders-stats desktop-grid-4`},Ee={class:`orders-stat-card`},De={class:`orders-stat-card__head`},Oe={class:`orders-stat-card__icon orders-stat-card__icon--total`,"aria-hidden":`true`},ke={class:`orders-stat-card__value`},Ae={class:`orders-stat-card`},je={class:`orders-stat-card__head`},Me={class:`orders-stat-card__icon orders-stat-card__icon--review`,"aria-hidden":`true`},Ne={class:`orders-stat-card__value`},Pe={class:`orders-stat-card`},Fe={class:`orders-stat-card__head`},Ie={class:`orders-stat-card__icon orders-stat-card__icon--active`,"aria-hidden":`true`},Le={class:`orders-stat-card__value`},Re={class:`orders-stat-card`},ze={class:`orders-stat-card__head`},Be={class:`orders-stat-card__icon orders-stat-card__icon--done`,"aria-hidden":`true`},Ve={class:`orders-stat-card__value`},He={class:`desktop-toolbar`},Ue={class:`desktop-toolbar__actions`},We={type:`button`,class:`orders-toolbar__filter-btn`},Ge={class:`orders-toolbar__pills`,role:`tablist`,"aria-label":`فیلتر وضعیت`},Ke=[`aria-selected`,`onClick`],qe={key:0,class:`desktop-table-wrap`},Je={class:`desktop-table-scroll`},Ye={class:`desktop-table orders-table`},Xe={class:`orders-table__number`},Ze={class:`orders-table__amount`},Qe={class:`orders-table__date`},$e={class:`orders-table__actions`},et=[`onClick`],tt={type:`button`,class:`orders-table__menu`,"aria-label":`گزینه‌های بیشتر`},$={class:`orders-pagination`},nt={class:`orders-pagination__summary`},rt={class:`orders-pagination__controls`},it=[`disabled`],at={key:0,class:`orders-pagination__ellipsis`},ot=[`onClick`],st=[`disabled`],ct=S({__name:`DesktopOrdersPage`,props:{stats:{},desktopFilter:{},desktopFilterTabs:{},filteredOrders:{},paginatedOrders:{},paginationRange:{},visiblePages:{},currentPage:{},totalPages:{}},emits:[`viewStatFilter`,`setDesktopFilter`,`select`,`setPage`,`newOrder`],setup(e,{emit:a}){let c=a;return(a,p)=>(d(),s(`div`,we,[p[14]||=h(`header`,{class:`desktop-page__head`},[h(`h1`,{class:`desktop-page__title`},`سفارش‌ها`),h(`p`,{class:`desktop-page__subtitle`},`مدیریت و پیگیری سفارش‌های ثبت شده`)],-1),h(`div`,Te,[h(`article`,Ee,[h(`div`,De,[p[7]||=h(`span`,{class:`orders-stat-card__label orders-stat-card__label--total`},`همه سفارش‌ها`,-1),h(`span`,Oe,[l(O,{size:20})])]),h(`strong`,ke,n(u(T)(e.stats.total)),1),h(`button`,{type:`button`,class:`orders-stat-card__link`,onClick:p[0]||=e=>c(`viewStatFilter`,`all`)},` مشاهده همه `)]),h(`article`,Ae,[h(`div`,je,[p[8]||=h(`span`,{class:`orders-stat-card__label orders-stat-card__label--review`},`در انتظار بررسی`,-1),h(`span`,Me,[l(Se,{size:20})])]),h(`strong`,Ne,n(u(T)(e.stats.review)),1),h(`button`,{type:`button`,class:`orders-stat-card__link`,onClick:p[1]||=e=>c(`viewStatFilter`,`review`)},` مشاهده همه `)]),h(`article`,Pe,[h(`div`,Fe,[p[9]||=h(`span`,{class:`orders-stat-card__label orders-stat-card__label--active`},`در حال انجام`,-1),h(`span`,Ie,[l(B,{size:20})])]),h(`strong`,Le,n(u(T)(e.stats.inProgress)),1),h(`button`,{type:`button`,class:`orders-stat-card__link`,onClick:p[2]||=e=>c(`viewStatFilter`,`in_progress`)},` مشاهده همه `)]),h(`article`,Re,[h(`div`,ze,[p[10]||=h(`span`,{class:`orders-stat-card__label orders-stat-card__label--done`},`تکمیل شده`,-1),h(`span`,Be,[l(Ce,{size:20})])]),h(`strong`,Ve,n(u(T)(e.stats.done)),1),h(`button`,{type:`button`,class:`orders-stat-card__link`,onClick:p[3]||=e=>c(`viewStatFilter`,`delivered`)},` مشاهده همه `)])]),h(`div`,He,[h(`div`,Ue,[h(`button`,We,[l(V,{size:18}),p[11]||=r(` فیلترها `,-1)])]),h(`div`,Ge,[(d(!0),s(o,null,f(e.desktopFilterTabs,r=>(d(),s(`button`,{key:r.id,type:`button`,role:`tab`,class:t([`orders-filter-pill`,{"orders-filter-pill--active":e.desktopFilter===r.id}]),"aria-selected":e.desktopFilter===r.id,onClick:e=>c(`setDesktopFilter`,r.id)},n(r.label),11,Ke))),128))])]),e.filteredOrders.length>0?(d(),s(`div`,qe,[h(`div`,Je,[h(`table`,Ye,[p[12]||=h(`thead`,null,[h(`tr`,null,[h(`th`,{scope:`col`},`شماره سفارش`),h(`th`,{scope:`col`},`شرکت`),h(`th`,{scope:`col`},`مبلغ فاکتور (تومان)`),h(`th`,{scope:`col`},`وضعیت`),h(`th`,{scope:`col`},`تاریخ ثبت`),h(`th`,{scope:`col`},`عملیات`)])],-1),h(`tbody`,null,[(d(!0),s(o,null,f(e.paginatedOrders,e=>(d(),s(`tr`,{key:e.id},[h(`td`,Xe,n(e.orderNumber),1),h(`td`,null,n(e.companyName),1),h(`td`,Ze,n(e.finalAmount?u(T)(e.finalAmount):`—`),1),h(`td`,null,[l(Q,{status:e.status},null,8,[`status`])]),h(`td`,Qe,n(u(C)(e.createdAt)),1),h(`td`,null,[h(`div`,$e,[h(`button`,{type:`button`,class:`orders-table__action`,onClick:t=>c(`select`,e.id)},` مشاهده `,8,et),h(`button`,tt,[l(H,{size:18})])])])]))),128))])])]),h(`div`,$,[h(`span`,nt,` نمایش `+n(u(T)(e.paginationRange.start))+` تا `+n(u(T)(e.paginationRange.end))+` از `+n(u(T)(e.filteredOrders.length))+` سفارش `,1),h(`div`,rt,[h(`button`,{type:`button`,class:`orders-pagination__arrow`,disabled:e.currentPage<=1,"aria-label":`صفحه قبل`,onClick:p[4]||=t=>c(`setPage`,e.currentPage-1)},[l(N,{size:16,class:`orders-pagination__arrow-icon--prev`})],8,it),(d(!0),s(o,null,f(e.visiblePages,(r,i)=>(d(),s(o,{key:`${r}-${i}`},[r===`ellipsis`?(d(),s(`span`,at,`…`)):(d(),s(`button`,{key:1,type:`button`,class:t([`orders-pagination__page`,{"orders-pagination__page--active":r===e.currentPage}]),onClick:e=>c(`setPage`,r)},n(u(T)(r)),11,ot))],64))),128)),h(`button`,{type:`button`,class:`orders-pagination__arrow`,disabled:e.currentPage>=e.totalPages,"aria-label":`صفحه بعد`,onClick:p[5]||=t=>c(`setPage`,e.currentPage+1)},[l(N,{size:16,class:`orders-pagination__arrow-icon--next`})],8,st)])])])):(d(),i(P,{key:1,variant:`orders`,message:`هنوز سفارشی ثبت نکرده‌اید`},{default:y(()=>[l(M,{onClick:p[6]||=e=>c(`newOrder`)},{default:y(()=>[...p[13]||=[r(`ثبت سفارش جدید`,-1)]]),_:1})]),_:1}))]))}}),lt={class:`orders-view`},ut={key:0,class:`orders-view__success`,role:`status`},dt=_(S({__name:`OrdersView`,setup(e){let t=p(),{tab:r,desktopFilter:i,stats:o,filteredOrdersMobile:c,filteredOrdersDesktop:f,paginatedOrders:m,paginatedOrdersMobile:h,totalPages:g,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}=X(),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,p)=>(d(),s(`div`,lt,[u(E)?(d(),s(`p`,ut,n(u(E)),1)):a(``,!0),l(xe,{class:`mobile-only`,tab:u(r),tabs:M,orders:u(h),"total-count":u(c).length,"current-page":u(C),"total-pages":u(_),"pagination-range":u(y),"visible-pages":u(x),"company-slug":u(w),"icon-variant":u(T),"onUpdate:tab":p[0]||=e=>r.value=e,onSelect:u(D),onBack:p[1]||=e=>u(t).push(`/`),onSetPage:u(k)},null,8,[`tab`,`orders`,`total-count`,`current-page`,`total-pages`,`pagination-range`,`visible-pages`,`company-slug`,`icon-variant`,`onSelect`,`onSetPage`]),l(ct,{class:`desktop-only`,stats:u(o),"desktop-filter":u(i),"desktop-filter-tabs":N,"filtered-orders":u(f),"paginated-orders":u(m),"pagination-range":u(v),"visible-pages":u(b),"current-page":u(S),"total-pages":u(g),onViewStatFilter:u(j),onSetDesktopFilter:u(A),onSelect:u(D),onSetPage:u(O),onNewOrder:p[2]||=e=>u(t).push(`/catalogs`)},null,8,[`stats`,`desktop-filter`,`filtered-orders`,`paginated-orders`,`pagination-range`,`visible-pages`,`current-page`,`total-pages`,`onViewStatFilter`,`onSetDesktopFilter`,`onSelect`,`onSetPage`])]))}}),[[`__scopeId`,`data-v-9dcaa78d`]]);export{dt as default}; \ No newline at end of file diff --git a/dist/assets/OrdersView-C_CUEMfe.css b/dist/assets/OrdersView-C_CUEMfe.css new file mode 100644 index 0000000..014c8c3 --- /dev/null +++ b/dist/assets/OrdersView-C_CUEMfe.css @@ -0,0 +1 @@ +.filter-tabs[data-v-4cd20e9b]{scrollbar-width:none;gap:8px;padding-bottom:2px;display:flex;overflow-x:auto}.filter-tabs--equal[data-v-4cd20e9b]{gap:6px;padding-bottom:0;overflow:visible}.filter-tabs[data-v-4cd20e9b]::-webkit-scrollbar{display:none}.filter-tab[data-v-4cd20e9b]{background:var(--color-tab-inactive-bg);height:36px;color:var(--color-tab-inactive-text);cursor:pointer;border:1px solid #0000;border-radius:999px;flex-shrink:0;padding:0 18px;font-family:inherit;font-size:.875rem;font-weight:500;line-height:1;transition:background .15s,color .15s,border-color .15s}.filter-tabs--equal .filter-tab[data-v-4cd20e9b]{border-radius:10px;flex:1;min-width:0;height:38px;padding:0 6px;font-size:.8125rem;font-weight:500}.filter-tab.active[data-v-4cd20e9b]{background:var(--color-primary);border-color:var(--color-primary);color:#fff;font-weight:600}.filter-tabs--equal .filter-tab.active[data-v-4cd20e9b]{font-weight:600}.filter-tab[data-v-4cd20e9b]:not(.active):hover{border-color:var(--color-border);color:var(--color-text)}.badge[data-v-5e1be8f4]{white-space:nowrap;border-radius:10px;padding:4px 10px;font-size:.75rem;font-weight:600;display:inline-block}.badge-warning[data-v-5e1be8f4]{background:var(--color-warning-light);color:var(--color-warning)}.badge-success[data-v-5e1be8f4]{background:var(--color-success-light);color:var(--color-success)}.badge-info[data-v-5e1be8f4]{background:var(--color-info-light);color:var(--color-info)}.badge-purple[data-v-5e1be8f4]{background:var(--color-purple-light);color:var(--color-purple)}.badge-danger[data-v-5e1be8f4]{background:var(--color-danger-light);color:var(--color-danger)}.badge-neutral[data-v-5e1be8f4]{background:var(--color-summary-bg);color:var(--color-text-muted)}.icon-logo[data-v-beccd0f1],.icon-logo[data-v-bbb3dcd8]{flex-shrink:0;display:block;overflow:visible}.orders-mobile-page[data-v-de30513b]{background:var(--color-bg);color:var(--color-text);height:100%;max-height:100%;padding:12px 0 0}.orders-mobile-page__nav[data-v-de30513b]{padding-inline:var(--page-padding);color:var(--color-text);flex-shrink:0;grid-template-columns:40px 1fr auto;align-items:center;margin-bottom:16px;display:grid}.orders-mobile-page__title[data-v-de30513b]{text-align:center;color:var(--color-text);margin:0;font-size:1.0625rem;font-weight:700}.nav-btn[data-v-de30513b]{width:40px;height:40px;color:inherit;cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:flex}.orders-mobile-page__tabs[data-v-de30513b]{padding-inline:var(--page-padding);flex-shrink:0;margin-bottom:12px}.orders-mobile-page__scroll[data-v-de30513b]{min-height:0;padding-inline:var(--page-padding);flex:1;padding-bottom:24px;overflow-y:auto}.orders-mobile-page__list[data-v-de30513b]{flex-direction:column;gap:12px;display:flex}.order-card[data-v-de30513b]{border:1px solid var(--color-border);background:var(--color-elevated);width:100%;box-shadow:var(--shadow-card);color:var(--color-text);text-align:right;cursor:pointer;border-radius:16px;padding:16px;display:flex}.order-card__content[data-v-de30513b]{flex-direction:column;flex:1;align-items:flex-start;display:flex}.order-card__label[data-v-de30513b]{color:var(--color-text-muted);font-size:.75rem}.order-card__number[data-v-de30513b]{color:var(--color-text);margin-bottom:6px;font-size:.9375rem;font-weight:700}.order-card__company[data-v-de30513b]{color:var(--color-text);margin:0 0 6px;font-size:.875rem;font-weight:600}.order-card__amount[data-v-de30513b]{color:var(--color-text);margin:0 0 10px;font-size:.875rem;font-weight:700}.order-card__badge[data-v-de30513b]{margin-top:auto}.order-card__icon[data-v-de30513b]{border-radius:50%;justify-content:center;align-self:center;align-items:center;width:56px;height:56px;margin-right:14px;display:flex}.order-card__icon--par[data-v-de30513b]{background:var(--color-primary-soft);color:var(--color-primary)}.order-card__icon--fam-baft[data-v-de30513b]{background:var(--color-brand-warm);color:var(--color-brand-warm-text)}.order-card__icon--success[data-v-de30513b]{background:var(--color-success-soft);color:var(--color-success)}.orders-mobile-pagination[data-v-de30513b]{flex-direction:column;align-items:center;gap:10px;margin:16px 0 0;padding:0;display:flex}.orders-mobile-pagination__summary[data-v-de30513b]{color:var(--color-text-muted);margin:0;font-size:.8125rem}.orders-mobile-pagination__controls[data-v-de30513b]{flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;display:flex}.orders-mobile-pagination__arrow[data-v-de30513b],.orders-mobile-pagination__page[data-v-de30513b]{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-elevated);width:36px;height:36px;color:var(--color-text);cursor:pointer;justify-content:center;align-items:center;padding:0;font-family:inherit;font-size:.8125rem;display:inline-flex}.orders-mobile-pagination__arrow[data-v-de30513b]:disabled{opacity:.4;cursor:not-allowed}.orders-mobile-pagination__arrow--prev[data-v-de30513b]{transform:scaleX(-1)}.orders-mobile-pagination__arrow--next[data-v-de30513b]{transform:none}.orders-mobile-pagination__page--active[data-v-de30513b]{background:var(--color-primary);border-color:var(--color-primary);color:#fff;font-weight:600}.orders-mobile-pagination__ellipsis[data-v-de30513b]{text-align:center;min-width:20px;color:var(--color-text-muted)}.orders-view[data-v-8db6efc9]{flex-direction:column;flex:1;height:100%;min-height:0;display:flex}.orders-view[data-v-8db6efc9] .orders-mobile-page{flex:1;min-height:0}.orders-view__success[data-v-8db6efc9]{margin:0 var(--page-padding) 12px;border-radius:var(--radius-sm);background:var(--color-success-soft);border:1px solid color-mix(in srgb, var(--color-success) 35%, transparent);color:var(--color-success);padding:12px 14px;font-size:.875rem;font-weight:500;line-height:1.5} diff --git a/dist/assets/OrdersView-Te_tCICZ.css b/dist/assets/OrdersView-Te_tCICZ.css deleted file mode 100644 index 19d0179..0000000 --- a/dist/assets/OrdersView-Te_tCICZ.css +++ /dev/null @@ -1 +0,0 @@ -.filter-tabs[data-v-4cd20e9b]{scrollbar-width:none;gap:8px;padding-bottom:2px;display:flex;overflow-x:auto}.filter-tabs--equal[data-v-4cd20e9b]{gap:6px;padding-bottom:0;overflow:visible}.filter-tabs[data-v-4cd20e9b]::-webkit-scrollbar{display:none}.filter-tab[data-v-4cd20e9b]{background:var(--color-tab-inactive-bg);height:36px;color:var(--color-tab-inactive-text);cursor:pointer;border:1px solid #0000;border-radius:999px;flex-shrink:0;padding:0 18px;font-family:inherit;font-size:.875rem;font-weight:500;line-height:1;transition:background .15s,color .15s,border-color .15s}.filter-tabs--equal .filter-tab[data-v-4cd20e9b]{border-radius:10px;flex:1;min-width:0;height:38px;padding:0 6px;font-size:.8125rem;font-weight:500}.filter-tab.active[data-v-4cd20e9b]{background:var(--color-primary);border-color:var(--color-primary);color:#fff;font-weight:600}.filter-tabs--equal .filter-tab.active[data-v-4cd20e9b]{font-weight:600}.filter-tab[data-v-4cd20e9b]:not(.active):hover{border-color:var(--color-border);color:var(--color-text)}.badge[data-v-5e1be8f4]{white-space:nowrap;border-radius:10px;padding:4px 10px;font-size:.75rem;font-weight:600;display:inline-block}.badge-warning[data-v-5e1be8f4]{background:var(--color-warning-light);color:var(--color-warning)}.badge-success[data-v-5e1be8f4]{background:var(--color-success-light);color:var(--color-success)}.badge-info[data-v-5e1be8f4]{background:var(--color-info-light);color:var(--color-info)}.badge-purple[data-v-5e1be8f4]{background:var(--color-purple-light);color:var(--color-purple)}.badge-danger[data-v-5e1be8f4]{background:var(--color-danger-light);color:var(--color-danger)}.badge-neutral[data-v-5e1be8f4]{background:var(--color-summary-bg);color:var(--color-text-muted)}.orders-mobile-page[data-v-de30513b]{background:var(--color-bg);color:var(--color-text);height:100%;max-height:100%;padding:12px 0 0}.orders-mobile-page__nav[data-v-de30513b]{padding-inline:var(--page-padding);color:var(--color-text);flex-shrink:0;grid-template-columns:40px 1fr auto;align-items:center;margin-bottom:16px;display:grid}.orders-mobile-page__title[data-v-de30513b]{text-align:center;color:var(--color-text);margin:0;font-size:1.0625rem;font-weight:700}.nav-btn[data-v-de30513b]{width:40px;height:40px;color:inherit;cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:flex}.orders-mobile-page__tabs[data-v-de30513b]{padding-inline:var(--page-padding);flex-shrink:0;margin-bottom:12px}.orders-mobile-page__scroll[data-v-de30513b]{min-height:0;padding-inline:var(--page-padding);flex:1;padding-bottom:24px;overflow-y:auto}.orders-mobile-page__list[data-v-de30513b]{flex-direction:column;gap:12px;display:flex}.order-card[data-v-de30513b]{border:1px solid var(--color-border);background:var(--color-elevated);width:100%;box-shadow:var(--shadow-card);color:var(--color-text);text-align:right;cursor:pointer;border-radius:16px;padding:16px;display:flex}.order-card__content[data-v-de30513b]{flex-direction:column;flex:1;align-items:flex-start;display:flex}.order-card__label[data-v-de30513b]{color:var(--color-text-muted);font-size:.75rem}.order-card__number[data-v-de30513b]{color:var(--color-text);margin-bottom:6px;font-size:.9375rem;font-weight:700}.order-card__company[data-v-de30513b]{color:var(--color-text);margin:0 0 6px;font-size:.875rem;font-weight:600}.order-card__amount[data-v-de30513b]{color:var(--color-text);margin:0 0 10px;font-size:.875rem;font-weight:700}.order-card__badge[data-v-de30513b]{margin-top:auto}.order-card__icon[data-v-de30513b]{border-radius:50%;justify-content:center;align-self:center;align-items:center;width:56px;height:56px;margin-right:14px;display:flex}.order-card__icon--par[data-v-de30513b]{background:var(--color-primary-soft);color:var(--color-primary)}.order-card__icon--fam-baft[data-v-de30513b]{background:var(--color-brand-warm);color:var(--color-brand-warm-text)}.order-card__icon--success[data-v-de30513b]{background:var(--color-success-soft);color:var(--color-success)}.orders-mobile-pagination[data-v-de30513b]{flex-direction:column;align-items:center;gap:10px;margin:16px 0 0;padding:0;display:flex}.orders-mobile-pagination__summary[data-v-de30513b]{color:var(--color-text-muted);margin:0;font-size:.8125rem}.orders-mobile-pagination__controls[data-v-de30513b]{flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;display:flex}.orders-mobile-pagination__arrow[data-v-de30513b],.orders-mobile-pagination__page[data-v-de30513b]{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-elevated);width:36px;height:36px;color:var(--color-text);cursor:pointer;justify-content:center;align-items:center;padding:0;font-family:inherit;font-size:.8125rem;display:inline-flex}.orders-mobile-pagination__arrow[data-v-de30513b]:disabled{opacity:.4;cursor:not-allowed}.orders-mobile-pagination__arrow--prev[data-v-de30513b]{transform:scaleX(-1)}.orders-mobile-pagination__arrow--next[data-v-de30513b]{transform:none}.orders-mobile-pagination__page--active[data-v-de30513b]{background:var(--color-primary);border-color:var(--color-primary);color:#fff;font-weight:600}.orders-mobile-pagination__ellipsis[data-v-de30513b]{text-align:center;min-width:20px;color:var(--color-text-muted)}.orders-view[data-v-9dcaa78d]{flex-direction:column;flex:1;height:100%;min-height:0;display:flex}.orders-view[data-v-9dcaa78d] .orders-mobile-page{flex:1;min-height:0}.orders-view__success[data-v-9dcaa78d]{margin:0 var(--page-padding) 12px;border-radius:var(--radius-sm);background:var(--color-success-soft);border:1px solid color-mix(in srgb, var(--color-success) 35%, transparent);color:var(--color-success);padding:12px 14px;font-size:.875rem;font-weight:500;line-height:1.5} diff --git a/dist/assets/OrdersView-ZqpETR7Y.js b/dist/assets/OrdersView-ZqpETR7Y.js new file mode 100644 index 0000000..b614eda --- /dev/null +++ b/dist/assets/OrdersView-ZqpETR7Y.js @@ -0,0 +1 @@ +import{$ as e,A as t,Ct as n,Dt as r,J as i,L as a,M as o,N as s,O as c,P as l,Q as u,R as d,X as f,_ as p,g as m,ht as h,it as g,j as _,n as v,nt as y,t as b,wt as x,z as S}from"./BasicIcon-Bnxm-DKk.js";import{d as C,i as w,n as T,o as E}from"./format-C72AoJ2H.js";import{t as D}from"./catalog-B2Z_WZGF.js";import{D as O,c as k,d as A,i as j,n as M,o as N}from"./index-DB4cQnln.js";import{t as P}from"./EmptyState-CsuH56HV.js";import{r as F,t as I}from"./constants-DXXK14Zz.js";import{t as L}from"./IconChevronBack-DguSlPDK.js";import{t as R}from"./IconProgressClock-D-v2U-1t.js";import"./IconFilter-DHL8PKX0.js";import{t as z}from"./IconMoreVertical-C07CFI4h.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=p(),n=m(),r=A(),a=k(),o=D(),s=h(1),c=h(1),l=h(``);i(async()=>{await Promise.all([r.hydrate(),o.loadCompanies()])}),y(()=>n.query.submitted,t=>{let r=Number(t);if(!Number.isFinite(r)||r<1){l.value=``;return}l.value=r===1?`پیش‌سفارش با موفقیت ثبت شد.`:`${C(String(r))} پیش‌سفارش (برای شرکت‌های مختلف) ثبت شد.`;let{submitted:i,...a}=n.query;e.replace({query:a})},{immediate:!0});let u=t({get:()=>e.currentRoute.value.query.tab??`all`,set:t=>e.replace({query:{...e.currentRoute.value.query,tab:t}})}),d=t({get:()=>e.currentRoute.value.query.filter??`all`,set:t=>e.replace({query:{...e.currentRoute.value.query,filter:t===`all`?void 0:t}})}),f=t(()=>e.currentRoute.value.query.q??``),g=t(()=>a.user?r.userOrders(a.user.id):[]),_=t(()=>({total:g.value.length,review:g.value.filter(e=>B.includes(e.status)).length,inProgress:g.value.filter(e=>V.includes(e.status)).length,done:g.value.filter(e=>U.includes(e.status)).length}));function v(e,t){if(!t.trim())return!0;let n=t.trim().toLowerCase();return e.orderNumber.toLowerCase().includes(n)||e.companyName.toLowerCase().includes(n)}let b=t(()=>g.value.filter(e=>v(e,f.value)).filter(e=>G(e.status,u.value))),x=t(()=>g.value.filter(e=>v(e,f.value)).filter(e=>te(e.status,d.value))),S=t(()=>{let e=(s.value-1)*K;return x.value.slice(e,e+K)}),w=t(()=>Math.max(1,Math.ceil(x.value.length/K))),T=t(()=>x.value.length===0?{start:0,end:0}:{start:(s.value-1)*K+1,end:Math.min(s.value*K,x.value.length)}),E=t(()=>{let e=w.value,t=s.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=t(()=>Math.max(1,Math.ceil(b.value.length/q))),j=t(()=>{let e=(c.value-1)*q;return b.value.slice(e,e+q)}),M=t(()=>b.value.length===0?{start:0,end:0}:{start:(c.value-1)*q+1,end:Math.min(c.value*q,b.value.length)}),N=t(()=>{let e=O.value,t=c.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});y([x,d,f],()=>{s.value=1}),y([b,u,f],()=>{c.value=1});function P(e){return o.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||(s.value=e)}function R(e){e<1||e>O.value||(c.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:_,filteredOrdersMobile:b,filteredOrdersDesktop:x,paginatedOrders:S,paginatedOrdersMobile:j,totalPages:w,mobileTotalPages:O,paginationRange:T,mobilePaginationRange:M,visiblePages:E,mobileVisiblePages:N,currentPage:s,mobilePage:c,companySlug:P,iconVariant:F,submitSuccessMessage:l,goToOrder:I,setPage:L,setMobilePage:R,setDesktopFilter:z,viewStatFilter:H}}var Y=[`aria-selected`,`onClick`],X=v(S({__name:`FilterTabs`,props:{modelValue:{},tabs:{},equal:{type:Boolean}},emits:[`update:modelValue`],setup(e){return(t,n)=>(f(),l(`div`,{class:x([`filter-tabs`,{"filter-tabs--equal":e.equal}]),role:`tablist`},[(f(!0),l(c,null,u(e.tabs,n=>(f(),l(`button`,{key:n.id,type:`button`,role:`tab`,class:x([`filter-tab`,{active:e.modelValue===n.id}]),"aria-selected":e.modelValue===n.id,onClick:e=>t.$emit(`update:modelValue`,n.id)},r(n.label),11,Y))),128))],2))}}),[[`__scopeId`,`data-v-4cd20e9b`]]),Z=v(S({__name:`BaseBadge`,props:{variant:{}},setup(t){return(n,r)=>(f(),l(`span`,{class:x([`badge`,`badge-${t.variant??`neutral`}`])},[e(n.$slots,`default`,{},void 0,!0)],2))}}),[[`__scopeId`,`data-v-5e1be8f4`]]),Q=S({__name:`StatusBadge`,props:{status:{}},setup(e){let n=e,i=t(()=>I[n.status]??n.status),s=t(()=>F[n.status]??`neutral`);return(e,t)=>(f(),o(Z,{variant:s.value},{default:g(()=>[a(r(i.value),1)]),_:1},8,[`variant`]))}}),ne=[`width`,`height`],re=v(S({__name:`IconParLogo`,props:{size:{default:72}},setup(e){return(t,n)=>(f(),l(`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]||=[_(`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=v(S({__name:`IconFamBaftLogo`,props:{size:{default:72}},setup(e){return(t,n)=>(f(),l(`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]||=[_(`g`,{fill:`currentColor`},[_(`rect`,{x:`14`,y:`14`,width:`28`,height:`28`,rx:`4`,transform:`rotate(12 28 28)`}),_(`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=v(S({__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(e,{emit:t}){let i=t;return(t,p)=>(f(),l(`div`,oe,[_(`header`,se,[_(`button`,{type:`button`,class:`nav-btn`,"aria-label":`بازگشت`,onClick:p[0]||=e=>i(`back`)},[d(L,{size:20})]),p[5]||=_(`h1`,{class:`orders-mobile-page__title`},`سفارش‌ها`,-1),d(j,{variant:`inline`})]),d(X,{"model-value":e.tab,tabs:e.tabs,equal:``,class:`orders-mobile-page__tabs`,"onUpdate:modelValue":p[1]||=e=>i(`update:tab`,e)},null,8,[`model-value`,`tabs`]),_(`div`,ce,[e.orders.length>0?(f(),l(`div`,le,[(f(!0),l(c,null,u(e.orders,t=>(f(),l(`button`,{key:t.id,type:`button`,class:`order-card`,onClick:e=>i(`select`,t.id)},[_(`div`,de,[p[6]||=_(`span`,{class:`order-card__label`},`سفارش شماره`,-1),_(`strong`,fe,r(t.orderNumber),1),_(`p`,pe,r(t.companyName),1),t.finalAmount?(f(),l(`p`,me,r(n(T)(t.finalAmount)),1)):s(``,!0),d(Q,{status:t.status,class:`order-card__badge`},null,8,[`status`])]),_(`span`,{class:x([`order-card__icon`,`order-card__icon--${e.iconVariant(t)}`])},[e.companySlug(t)===`fam-baft`?(f(),o(ae,{key:0,size:36})):(f(),o(re,{key:1,size:36}))],2)],8,ue))),128))])):(f(),o(P,{key:1,variant:`orders`,message:`هنوز سفارشی ثبت نکرده‌اید`},{default:g(()=>[d(M,{onClick:p[2]||=e=>i(`back`)},{default:g(()=>[...p[7]||=[a(`ثبت سفارش جدید`,-1)]]),_:1})]),_:1})),e.totalCount>0?(f(),l(`div`,he,[_(`p`,ge,r(n(C)(String(e.paginationRange.start)))+`– `+r(n(C)(String(e.paginationRange.end)))+` از `+r(n(E)(e.totalCount)),1),_(`div`,_e,[_(`button`,{type:`button`,class:`orders-mobile-pagination__arrow`,disabled:e.currentPage<=1,"aria-label":`صفحه قبل`,onClick:p[3]||=t=>i(`set-page`,e.currentPage-1)},[d(N,{size:16,class:`orders-mobile-pagination__arrow--prev`})],8,ve),(f(!0),l(c,null,u(e.visiblePages,(t,a)=>(f(),l(c,{key:`${t}-${a}`},[t===`ellipsis`?(f(),l(`span`,ye,`…`)):(f(),l(`button`,{key:1,type:`button`,class:x([`orders-mobile-pagination__page`,{"orders-mobile-pagination__page--active":t===e.currentPage}]),onClick:e=>i(`set-page`,t)},r(n(C)(String(t))),11,be))],64))),128)),_(`button`,{type:`button`,class:`orders-mobile-pagination__arrow`,disabled:e.currentPage>=e.totalPages,"aria-label":`صفحه بعد`,onClick:p[4]||=t=>i(`set-page`,e.currentPage+1)},[d(N,{size:16,class:`orders-mobile-pagination__arrow--next`})],8,xe)])])):s(``,!0)])]))}}),[[`__scopeId`,`data-v-de30513b`]]),Ce=S({__name:`IconHourglass`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(f(),o(b,{icon:`vuesax-linear:timer-1`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),we=S({__name:`IconCheckCircleOutline`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(f(),o(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=S({__name:`DesktopOrdersPage`,props:{stats:{},desktopFilter:{},desktopFilterTabs:{},filteredOrders:{},paginatedOrders:{},paginationRange:{},visiblePages:{},currentPage:{},totalPages:{}},emits:[`viewStatFilter`,`setDesktopFilter`,`select`,`setPage`,`newOrder`],setup(e,{emit:t}){let i=t;return(t,s)=>(f(),l(`div`,Te,[s[13]||=_(`header`,{class:`desktop-page__head`},[_(`h1`,{class:`desktop-page__title`},`سفارش‌ها`),_(`p`,{class:`desktop-page__subtitle`},`مدیریت و پیگیری سفارش‌های ثبت شده`)],-1),_(`div`,Ee,[_(`article`,De,[_(`div`,Oe,[s[7]||=_(`span`,{class:`orders-stat-card__label orders-stat-card__label--total`},`همه سفارش‌ها`,-1),_(`span`,ke,[d(O,{size:20})])]),_(`strong`,Ae,r(n(E)(e.stats.total)),1),_(`button`,{type:`button`,class:`orders-stat-card__link`,onClick:s[0]||=e=>i(`viewStatFilter`,`all`)},` مشاهده همه `)]),_(`article`,je,[_(`div`,Me,[s[8]||=_(`span`,{class:`orders-stat-card__label orders-stat-card__label--review`},`در انتظار بررسی`,-1),_(`span`,Ne,[d(Ce,{size:20})])]),_(`strong`,Pe,r(n(E)(e.stats.review)),1),_(`button`,{type:`button`,class:`orders-stat-card__link`,onClick:s[1]||=e=>i(`viewStatFilter`,`review`)},` مشاهده همه `)]),_(`article`,Fe,[_(`div`,Ie,[s[9]||=_(`span`,{class:`orders-stat-card__label orders-stat-card__label--active`},`در حال انجام`,-1),_(`span`,Le,[d(R,{size:20})])]),_(`strong`,Re,r(n(E)(e.stats.inProgress)),1),_(`button`,{type:`button`,class:`orders-stat-card__link`,onClick:s[2]||=e=>i(`viewStatFilter`,`in_progress`)},` مشاهده همه `)]),_(`article`,ze,[_(`div`,Be,[s[10]||=_(`span`,{class:`orders-stat-card__label orders-stat-card__label--done`},`تکمیل شده`,-1),_(`span`,Ve,[d(we,{size:20})])]),_(`strong`,He,r(n(E)(e.stats.done)),1),_(`button`,{type:`button`,class:`orders-stat-card__link`,onClick:s[3]||=e=>i(`viewStatFilter`,`delivered`)},` مشاهده همه `)])]),_(`div`,Ue,[_(`div`,We,[(f(!0),l(c,null,u(e.desktopFilterTabs,t=>(f(),l(`button`,{key:t.id,type:`button`,role:`tab`,class:x([`orders-filter-pill`,{"orders-filter-pill--active":e.desktopFilter===t.id}]),"aria-selected":e.desktopFilter===t.id,onClick:e=>i(`setDesktopFilter`,t.id)},r(t.label),11,Ge))),128))])]),e.filteredOrders.length>0?(f(),l(`div`,Ke,[_(`div`,qe,[_(`table`,Je,[s[11]||=_(`thead`,null,[_(`tr`,null,[_(`th`,{scope:`col`},`شماره سفارش`),_(`th`,{scope:`col`},`شرکت`),_(`th`,{scope:`col`},`مبلغ فاکتور (تومان)`),_(`th`,{scope:`col`},`وضعیت`),_(`th`,{scope:`col`},`تاریخ ثبت`),_(`th`,{scope:`col`},`عملیات`)])],-1),_(`tbody`,null,[(f(!0),l(c,null,u(e.paginatedOrders,e=>(f(),l(`tr`,{key:e.id},[_(`td`,$,r(e.orderNumber),1),_(`td`,null,r(e.companyName),1),_(`td`,Ye,r(e.finalAmount?n(E)(e.finalAmount):`—`),1),_(`td`,null,[d(Q,{status:e.status},null,8,[`status`])]),_(`td`,Xe,r(n(w)(e.createdAt)),1),_(`td`,null,[_(`div`,Ze,[_(`button`,{type:`button`,class:`orders-table__action`,onClick:t=>i(`select`,e.id)},` مشاهده `,8,Qe),_(`button`,$e,[d(z,{size:18})])])])]))),128))])])]),_(`div`,et,[_(`span`,tt,` نمایش `+r(n(E)(e.paginationRange.start))+` تا `+r(n(E)(e.paginationRange.end))+` از `+r(n(E)(e.filteredOrders.length))+` سفارش `,1),_(`div`,nt,[_(`button`,{type:`button`,class:`orders-pagination__arrow`,disabled:e.currentPage<=1,"aria-label":`صفحه قبل`,onClick:s[4]||=t=>i(`setPage`,e.currentPage-1)},[d(N,{size:16,class:`orders-pagination__arrow-icon--prev`})],8,rt),(f(!0),l(c,null,u(e.visiblePages,(t,a)=>(f(),l(c,{key:`${t}-${a}`},[t===`ellipsis`?(f(),l(`span`,it,`…`)):(f(),l(`button`,{key:1,type:`button`,class:x([`orders-pagination__page`,{"orders-pagination__page--active":t===e.currentPage}]),onClick:e=>i(`setPage`,t)},r(n(E)(t)),11,at))],64))),128)),_(`button`,{type:`button`,class:`orders-pagination__arrow`,disabled:e.currentPage>=e.totalPages,"aria-label":`صفحه بعد`,onClick:s[5]||=t=>i(`setPage`,e.currentPage+1)},[d(N,{size:16,class:`orders-pagination__arrow-icon--next`})],8,ot)])])])):(f(),o(P,{key:1,variant:`orders`,message:`هنوز سفارشی ثبت نکرده‌اید`},{default:g(()=>[d(M,{onClick:s[6]||=e=>i(`newOrder`)},{default:g(()=>[...s[12]||=[a(`ثبت سفارش جدید`,-1)]]),_:1})]),_:1}))]))}}),ct={class:`orders-view`},lt={key:0,class:`orders-view__success`,role:`status`},ut=v(S({__name:`OrdersView`,setup(e){let t=p(),{tab:i,desktopFilter:a,stats:o,filteredOrdersMobile:c,filteredOrdersDesktop:u,paginatedOrders:m,paginatedOrdersMobile:h,totalPages:g,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(e,p)=>(f(),l(`div`,ct,[n(E)?(f(),l(`p`,lt,r(n(E)),1)):s(``,!0),d(Se,{class:`mobile-only`,tab:n(i),tabs:M,orders:n(h),"total-count":n(c).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":p[0]||=e=>i.value=e,onSelect:n(D),onBack:p[1]||=e=>n(t).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`]),d(st,{class:`desktop-only`,stats:n(o),"desktop-filter":n(a),"desktop-filter-tabs":N,"filtered-orders":n(u),"paginated-orders":n(m),"pagination-range":n(v),"visible-pages":n(b),"current-page":n(S),"total-pages":n(g),onViewStatFilter:n(j),onSetDesktopFilter:n(A),onSelect:n(D),onSetPage:n(O),onNewOrder:p[2]||=e=>n(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-BS4oUATh.js b/dist/assets/OtpView-BS4oUATh.js deleted file mode 100644 index 64b3104..0000000 --- a/dist/assets/OtpView-BS4oUATh.js +++ /dev/null @@ -1 +0,0 @@ -import{A as e,Ct as t,D as n,Et as r,G as i,L as a,N as o,O as s,P as c,R as l,St as u,Y as d,Z as f,_ as ee,g as te,j as p,mt as m,n as h,q as g,z as _}from"./BasicIcon-C6boaehV.js";import{l as ne}from"./dist-CUUvbY4x.js";import{c as re,t as v,u as y}from"./format-BHJptHdF.js";import{_ as ie,c as ae,h as oe,o as se}from"./index-fdhs4HNc.js";import{t as ce}from"./IconChevronBack-DORV2H0q.js";import{t as le}from"./FormErrorBanner-CjdBfIQT.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-DLV3_yq2.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=h(_({__name:`OtpView`,setup(h){let _=te(),I=ee(),L=ae(),R=e(()=>{let e=_.query.phone,t=Array.isArray(e)?e[0]:e;return re(typeof t==`string`?t:``)}),z=e(()=>_.query.mode===`register`),B=m(Array.from({length:P},()=>``)),V=m([]),H=m({}),U=m(``),W=m(F),G=e(()=>B.value.join(``)),K=e(()=>W.value<=0&&!L.loading),_e=e(()=>{let e=Math.floor(W.value/60),t=W.value%60,n=`${String(e).padStart(2,`0`)}:${String(t).padStart(2,`0`)}`;return y(n)}),{pause:ve,resume:ye}=ne(()=>{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 t=Math.max(0,Math.min(3,e));i(()=>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?y(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?oe():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 g(()=>{if(!R.value){I.replace({name:`login`});return}Y(),J(0)}),(e,i)=>(d(),c(`div`,pe,[p(`img`,{class:`otp-page__bg`,src:u(x),alt:``},null,8,me),p(`div`,he,[p(`div`,ge,[p(`header`,S,[p(`button`,{type:`button`,class:`otp-top__back`,"aria-label":`بازگشت`,onClick:i[0]||=e=>u(I).push(z.value?`/register`:`/login`)},[l(ce,{size:20})])]),p(`div`,C,[l(ie,{size:72}),i[1]||=p(`h1`,{class:`otp-brand__fa`},`نادمی تکس`,-1),i[2]||=p(`p`,{class:`otp-brand__en`},`NADEMITEX`,-1)]),p(`form`,{class:`otp-card`,onSubmit:n($,[`prevent`])},[i[7]||=p(`h2`,{class:`otp-card__title`},`تأیید موبایل`,-1),p(`p`,w,[i[3]||=a(` کد ارسال‌شده به `,-1),p(`span`,T,r(u(y)(R.value)),1),i[4]||=a(` را وارد کنید. `,-1)]),l(le,{message:U.value},null,8,[`message`]),p(`div`,E,[(d(!0),c(s,null,f(B.value,(e,n)=>(d(),c(`input`,{id:`otp-${n}`,key:n,ref_for:!0,ref:e=>be(e,n),class:t([`otp-box`,{"otp-box--error":H.value.code}]),type:`text`,inputmode:`numeric`,autocomplete:`one-time-code`,maxlength:`1`,value:Ce(e),"aria-label":`رقم ${u(y)(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?(d(),c(`p`,O,r(H.value.code),1)):o(``,!0),p(`button`,{class:`otp-submit`,type:`submit`,disabled:u(L).loading},[u(L).loading?(d(),c(`span`,A)):o(``,!0),p(`span`,j,[l(se,{size:18,color:`#F4EDE4`})]),i[5]||=p(`span`,null,`تأیید و ورود`,-1)],8,k),p(`button`,{class:`otp-resend`,type:`button`,disabled:!K.value,onClick:we},[K.value?(d(),c(s,{key:0},[a(`ارسال مجدد کد`)],64)):(d(),c(s,{key:1},[a(`ارسال مجدد کد (`+r(_e.value)+`)`,1)],64))],8,M),p(`button`,{type:`button`,class:`otp-edit`,onClick:Te},[p(`span`,N,r(u(y)(R.value)),1),i[6]||=p(`span`,null,`ویرایش شماره`,-1),l(fe,{size:16,"stroke-width":1.5})])],32),i[8]||=p(`div`,{class:`otp-spacer`,"aria-hidden":`true`},null,-1),i[9]||=p(`p`,{class:`otp-watermark`},[a(`MORE`),p(`br`),a(`THAN`),p(`br`),a(`FABRIC`)],-1)])])]))}}),[[`__scopeId`,`data-v-db716981`]]);export{I as default}; \ No newline at end of file diff --git a/dist/assets/OtpView-iifaPe_r.js b/dist/assets/OtpView-iifaPe_r.js new file mode 100644 index 0000000..241325b --- /dev/null +++ b/dist/assets/OtpView-iifaPe_r.js @@ -0,0 +1 @@ +import{A as e,Ct as t,D as n,Dt as r,J as i,K as a,L as o,N as s,O as c,P as l,Q as u,R as d,X as f,_ as ee,g as te,ht as p,j as m,n as h,wt as ne,z as g}from"./BasicIcon-Bnxm-DKk.js";import{l as re}from"./dist-CGdWzQ9K.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-DB4cQnln.js";import{t as le}from"./IconChevronBack-DguSlPDK.js";import{t as ue}from"./FormErrorBanner-BahrrGfv.js";import{n as y,r as b,t as x}from"./formErrors-DglFjYkZ.js";import{t as de}from"./login-fabric-CzrIXTnD.js";import{t as fe}from"./IconEditPen-BwxVBWii.js";var pe={class:`page otp-page`},me=[`src`],he={class:`otp-page__scroll`},S={class:`otp-page__stage`},C={class:`otp-top`},w={class:`otp-brand`},T={class:`otp-card__lead`},E={dir:`ltr`},D={class:`otp-row`,dir:`ltr`,role:`group`,"aria-label":`کد تأیید`},O=[`id`,`value`,`aria-label`,`onInput`,`onKeydown`,`onPaste`],k={key:0,class:`otp-card__error`},A=[`disabled`],j={key:0,class:`otp-submit__spinner`,"aria-hidden":`true`},M={class:`otp-submit__chevron`,"aria-hidden":`true`},N=[`disabled`],P={dir:`ltr`},F=4,I=60,L=h(g({__name:`OtpView`,setup(h){let g=te(),L=ee(),R=oe(),z=e(()=>{let e=g.query.phone,t=Array.isArray(e)?e[0]:e;return ie(typeof t==`string`?t:``)}),B=e(()=>g.query.mode===`register`),V=p(Array.from({length:F},()=>``)),H=p([]),U=p({}),W=p(``),G=p(I),K=e(()=>V.value.join(``)),q=e(()=>G.value<=0&&!R.loading),ge=e(()=>{let e=Math.floor(G.value/60),t=G.value%60,n=`${String(e).padStart(2,`0`)}:${String(t).padStart(2,`0`)}`;return _(n)}),{pause:_e,resume:ve}=re(()=>{if(G.value<=1){G.value=0,_e();return}--G.value},1e3,{immediate:!1});function J(){U.value=y(U.value,`code`),b(U.value)||(W.value=``)}function ye(e,t){H.value[t]=e}function Y(e){let t=Math.max(0,Math.min(3,e));a(()=>H.value[t]?.focus())}function X(){G.value=I,ve()}function Z(e,t=0){let n=v(e).slice(0,F-t);if(!n)return t;let r=[...V.value],i=t;for(let e of n){if(i>=F)break;r[i]=e,i+=1}return V.value=r,J(),Math.min(i,3)}function Q(){K.value.length===F&&!R.loading&&$()}function be(e,t){let n=t.target,r=v(n.value);if(r.length>1){let t=Z(r,e);n.value=V.value[e]??``,Y(t),Q();return}let i=r.slice(-1);V.value[e]=i,n.value=i,J(),i&&e<3?Y(e+1):i&&Q()}function xe(e,t){if(t.key===`Backspace`){if(V.value[e]){V.value[e]=``,J();return}e>0&&(V.value[e-1]=``,J(),Y(e-1));return}if(t.key===`ArrowLeft`){t.preventDefault(),Y(e-1);return}t.key===`ArrowRight`&&(t.preventDefault(),Y(e+1))}function Se(e,t){t.preventDefault(),Y(Z(t.clipboardData?.getData(`text`)??``,e)),Q()}function Ce(e){return e?_(e):``}async function $(){if(R.loading)return;U.value={},W.value=``;let e={};if(K.value.length``),Y(0))}async function we(){if(!q.value)return;W.value=``,U.value={};let e=B.value?se():null;if(B.value&&!e){W.value=`برای ارسال مجدد کد، نام و نام خانوادگی لازم است. لطفاً دوباره ثبت‌نام را شروع کنید.`;return}let t=await R.requestOtp(z.value,{isRegister:B.value,firstName:e?.firstName,lastName:e?.lastName});t.success?(V.value=Array.from({length:F},()=>``),X(),Y(0)):W.value=t.message??`خطا در ارسال مجدد کد.`}function Te(){L.replace({name:B.value?`register`:`login`})}return i(()=>{if(!z.value){L.replace({name:`login`});return}X(),Y(0)}),(e,i)=>(f(),l(`div`,pe,[m(`img`,{class:`otp-page__bg`,src:t(de),alt:``},null,8,me),m(`div`,he,[m(`div`,S,[m(`header`,C,[m(`button`,{type:`button`,class:`otp-top__back`,"aria-label":`بازگشت`,onClick:i[0]||=e=>t(L).push(B.value?`/register`:`/login`)},[d(le,{size:20})])]),m(`div`,w,[d(ae,{size:72}),i[1]||=m(`h1`,{class:`otp-brand__fa`},`نادمی تکس`,-1),i[2]||=m(`p`,{class:`otp-brand__en`},`NADEMITEX`,-1)]),m(`form`,{class:`otp-card`,onSubmit:n($,[`prevent`])},[i[7]||=m(`h2`,{class:`otp-card__title`},`تأیید موبایل`,-1),m(`p`,T,[i[3]||=o(` کد ارسال‌شده به `,-1),m(`span`,E,r(t(_)(z.value)),1),i[4]||=o(` را وارد کنید. `,-1)]),d(ue,{message:W.value},null,8,[`message`]),m(`div`,D,[(f(!0),l(c,null,u(V.value,(e,n)=>(f(),l(`input`,{id:`otp-${n}`,key:n,ref_for:!0,ref:e=>ye(e,n),class:ne([`otp-box`,{"otp-box--error":U.value.code}]),type:`text`,inputmode:`numeric`,autocomplete:`one-time-code`,maxlength:`1`,value:Ce(e),"aria-label":`رقم ${t(_)(String(n+1))}`,onInput:e=>be(n,e),onKeydown:e=>xe(n,e),onPaste:e=>Se(n,e)},null,42,O))),128))]),U.value.code?(f(),l(`p`,k,r(U.value.code),1)):s(``,!0),m(`button`,{class:`otp-submit`,type:`submit`,disabled:t(R).loading},[t(R).loading?(f(),l(`span`,j)):s(``,!0),m(`span`,M,[d(ce,{size:18,color:`#F4EDE4`})]),i[5]||=m(`span`,null,`تأیید و ورود`,-1)],8,A),m(`button`,{class:`otp-resend`,type:`button`,disabled:!q.value,onClick:we},[q.value?(f(),l(c,{key:0},[o(`ارسال مجدد کد`)],64)):(f(),l(c,{key:1},[o(`ارسال مجدد کد (`+r(ge.value)+`)`,1)],64))],8,N),m(`button`,{type:`button`,class:`otp-edit`,onClick:Te},[m(`span`,P,r(t(_)(z.value)),1),i[6]||=m(`span`,null,`ویرایش شماره`,-1),d(fe,{size:16,"stroke-width":1.5})])],32),i[8]||=m(`div`,{class:`otp-spacer`,"aria-hidden":`true`},null,-1),i[9]||=m(`p`,{class:`otp-watermark`},[o(`MORE`),m(`br`),o(`THAN`),m(`br`),o(`FABRIC`)],-1)])])]))}}),[[`__scopeId`,`data-v-db716981`]]);export{L as default}; \ No newline at end of file diff --git a/dist/assets/PageHeader-BxTTQB_F.js b/dist/assets/PageHeader-BxTTQB_F.js new file mode 100644 index 0000000..c34114f --- /dev/null +++ b/dist/assets/PageHeader-BxTTQB_F.js @@ -0,0 +1 @@ +import{$ as e,Dt as t,G as n,N as r,O as i,P as a,R as o,X as s,j as c,n as l,z as u}from"./BasicIcon-Bnxm-DKk.js";import{i as d}from"./index-DB4cQnln.js";import{t as f}from"./IconChevronBack-DguSlPDK.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?(s(),a(i,{key:0},[c(`header`,n({class:`page-nav`},u.$attrs),[l.showBack?(s(),a(`button`,{key:0,type:`button`,class:`nav-btn`,"aria-label":`بازگشت`,onClick:x[0]||=e=>u.$emit(`back`)},[o(f,{size:20})])):(s(),a(`span`,p)),c(`h1`,m,t(l.title),1),c(`div`,h,[e(u.$slots,`trailing`,{},void 0,!0),o(d,{variant:`inline`,class:`mobile-only`})])],16),l.subtitle?(s(),a(`p`,g,t(l.subtitle),1)):r(``,!0)],64)):(s(),a(`header`,n({key:1,class:`page-header`},u.$attrs),[l.showBack?(s(),a(`button`,{key:0,type:`button`,class:`back-btn`,"aria-label":`بازگشت`,onClick:x[1]||=e=>u.$emit(`back`)},[o(f,{size:20})])):r(``,!0),c(`div`,_,[c(`h1`,v,t(l.title),1),l.subtitle?(s(),a(`p`,y,t(l.subtitle),1)):r(``,!0)]),c(`div`,b,[e(u.$slots,`trailing`,{},void 0,!0),o(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-CDhs0XKF.css b/dist/assets/PageHeader-C69aO5cY.css similarity index 55% rename from dist/assets/PageHeader-CDhs0XKF.css rename to dist/assets/PageHeader-C69aO5cY.css index 241ed2c..2c4a7cc 100644 --- a/dist/assets/PageHeader-CDhs0XKF.css +++ b/dist/assets/PageHeader-C69aO5cY.css @@ -1 +1 @@ -.page-nav[data-v-dd86426f]{padding-inline:var(--page-padding);background:var(--color-surface);color:var(--color-text);grid-template-columns:40px 1fr auto;align-items:center;margin-bottom:8px;padding-top:8px;display:grid}.page-nav__title[data-v-dd86426f]{text-align:center;color:var(--color-text);margin:0;font-size:1.0625rem;font-weight:700}.page-nav__subtitle[data-v-dd86426f]{color:var(--color-text-muted);text-align:center;margin:0 0 16px;font-size:.875rem;line-height:1.5}.page-nav__trailing[data-v-dd86426f]{justify-content:flex-end;align-items:center;gap:0;min-height:40px;display:flex}.nav-btn[data-v-dd86426f]{width:40px;height:40px;color:inherit;cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:flex}.page-header[data-v-dd86426f]{padding-inline:var(--page-padding);color:var(--color-text);align-items:flex-start;gap:12px;margin-bottom:16px;padding-top:8px;display:flex}.page-header__trailing[data-v-dd86426f]{color:inherit;align-items:center;gap:0;margin-inline-start:auto;display:flex}.back-btn[data-v-dd86426f]{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);cursor:pointer;width:40px;height:40px;color:var(--color-text);flex-shrink:0;justify-content:center;align-items:center;transition:border-color .15s,background .15s;display:flex}.back-btn[data-v-dd86426f]:hover{border-color:var(--color-border);background:var(--color-summary-bg)}.header-text[data-v-dd86426f]{flex:1;min-width:0;padding-top:2px}.page-title[data-v-dd86426f]{color:var(--color-text);margin:0;font-size:1.25rem;font-weight:700;line-height:1.35}.page-subtitle[data-v-dd86426f]{color:var(--color-text-muted);margin:4px 0 0;font-size:.875rem;line-height:1.5} +.page-nav[data-v-c4a68159]{padding-inline:var(--page-padding);background:var(--color-surface);color:var(--color-text);grid-template-columns:40px 1fr auto;align-items:center;margin-bottom:8px;padding-top:8px;display:grid}.page-nav__title[data-v-c4a68159]{text-align:center;color:var(--color-text);margin:0;font-size:1.0625rem;font-weight:700}.page-nav__subtitle[data-v-c4a68159]{color:var(--color-text-muted);text-align:center;margin:0 0 16px;font-size:.875rem;line-height:1.5}.page-nav__trailing[data-v-c4a68159]{justify-content:flex-end;align-items:center;gap:0;min-height:40px;display:flex}.nav-btn[data-v-c4a68159]{width:40px;height:40px;color:inherit;cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:flex}.page-header[data-v-c4a68159]{padding-inline:var(--page-padding);color:var(--color-text);align-items:flex-start;gap:12px;margin-bottom:16px;padding-top:8px;display:flex}.page-header__trailing[data-v-c4a68159]{color:inherit;align-items:center;gap:0;margin-inline-start:auto;display:flex}.back-btn[data-v-c4a68159]{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);cursor:pointer;width:40px;height:40px;color:var(--color-text);flex-shrink:0;justify-content:center;align-items:center;transition:border-color .15s,background .15s;display:flex}.back-btn[data-v-c4a68159]:hover{border-color:var(--color-border);background:var(--color-summary-bg)}.header-text[data-v-c4a68159]{flex:1;min-width:0;padding-top:2px}.page-title[data-v-c4a68159]{color:var(--color-text);margin:0;font-size:1.25rem;font-weight:700;line-height:1.35}.page-subtitle[data-v-c4a68159]{color:var(--color-text-muted);margin:4px 0 0;font-size:.875rem;line-height:1.5} diff --git a/dist/assets/PageHeader-Cd04Z6F_.js b/dist/assets/PageHeader-Cd04Z6F_.js deleted file mode 100644 index 3808d68..0000000 --- a/dist/assets/PageHeader-Cd04Z6F_.js +++ /dev/null @@ -1 +0,0 @@ -import{Et as e,N as t,O as n,P as r,Q as i,R as a,Y as o,j as s,n as c,z as l}from"./BasicIcon-C6boaehV.js";import{i as u}from"./index-fdhs4HNc.js";import{t as d}from"./IconChevronBack-DORV2H0q.js";var f={class:`page-nav`},p={key:1,class:`nav-btn`},m={class:`page-nav__title`},h={class:`page-nav__trailing`},g={key:0,class:`page-nav__subtitle`},_={key:1,class:`page-header`},v={class:`header-text`},y={class:`page-title`},b={key:0,class:`page-subtitle`},x={class:`page-header__trailing`},S=c(l({__name:`PageHeader`,props:{title:{},subtitle:{},showBack:{type:Boolean},centered:{type:Boolean}},emits:[`back`],setup(c){return(l,S)=>c.centered?(o(),r(n,{key:0},[s(`header`,f,[c.showBack?(o(),r(`button`,{key:0,type:`button`,class:`nav-btn`,"aria-label":`بازگشت`,onClick:S[0]||=e=>l.$emit(`back`)},[a(d,{size:20})])):(o(),r(`span`,p)),s(`h1`,m,e(c.title),1),s(`div`,h,[i(l.$slots,`trailing`,{},void 0,!0),a(u,{variant:`inline`,class:`mobile-only`})])]),c.subtitle?(o(),r(`p`,g,e(c.subtitle),1)):t(``,!0)],64)):(o(),r(`header`,_,[c.showBack?(o(),r(`button`,{key:0,type:`button`,class:`back-btn`,"aria-label":`بازگشت`,onClick:S[1]||=e=>l.$emit(`back`)},[a(d,{size:20})])):t(``,!0),s(`div`,v,[s(`h1`,y,e(c.title),1),c.subtitle?(o(),r(`p`,b,e(c.subtitle),1)):t(``,!0)]),s(`div`,x,[i(l.$slots,`trailing`,{},void 0,!0),a(u,{variant:`inline`,class:`mobile-only`})])]))}}),[[`__scopeId`,`data-v-dd86426f`]]);export{S as t}; \ No newline at end of file diff --git a/dist/assets/PageSkeleton-CpZ7eT1v.js b/dist/assets/PageSkeleton-CpZ7eT1v.js new file mode 100644 index 0000000..3aa0edd --- /dev/null +++ b/dist/assets/PageSkeleton-CpZ7eT1v.js @@ -0,0 +1 @@ +import{Et as e,O as t,P as n,Q as r,R as i,X as a,j as o,n as s,wt as c,z as l}from"./BasicIcon-Bnxm-DKk.js";var u=s(l({__name:`SkeletonBlock`,props:{width:{default:`100%`},height:{default:`14px`},radius:{default:`8px`},circle:{type:Boolean,default:!1}},setup(t){return(r,i)=>(a(),n(`span`,{class:c([`sk`,{"sk--circle":t.circle}]),style:e({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=s(l({__name:`PageSkeleton`,props:{variant:{default:`list`},rows:{default:4}},setup(e){return(s,l)=>(a(),n(`div`,{class:c([`page-skeleton`,{"page-skeleton--home":e.variant===`home`}]),role:`status`,"aria-live":`polite`,"aria-busy":`true`,"aria-label":`در حال بارگذاری`},[e.variant===`home`?(a(),n(t,{key:0},[o(`div`,d,[i(u,{class:`page-skeleton__hero-block`,height:`148px`,radius:`16px`})]),o(`div`,f,[(a(),n(t,null,r(4,e=>o(`div`,{key:`q-${e}`,class:`page-skeleton__quick-item`},[i(u,{circle:``,width:`48px`,height:`48px`}),i(u,{width:`72%`,height:`10px`})])),64))]),o(`div`,p,[o(`div`,m,[i(u,{circle:``,width:`48px`,height:`48px`}),o(`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`})]),o(`div`,g,[o(`div`,_,[i(u,{width:`132px`,height:`16px`}),i(u,{width:`72px`,height:`12px`})]),o(`div`,v,[(a(),n(t,null,r(6,e=>o(`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)):e.variant===`profile`?(a(),n(t,{key:1},[o(`div`,y,[i(u,{circle:``,width:`72px`,height:`72px`}),i(u,{width:`45%`,height:`18px`}),i(u,{width:`30%`,height:`12px`})]),o(`div`,b,[(a(),n(t,null,r(4,e=>o(`div`,{key:`s-${e}`,class:`page-skeleton__stat`},[i(u,{width:`50%`,height:`10px`}),i(u,{width:`70%`,height:`18px`})])),64))]),o(`div`,x,[(a(),n(t,null,r(5,e=>o(`div`,{key:`m-${e}`,class:`page-skeleton__row`},[i(u,{circle:``,width:`36px`,height:`36px`}),o(`div`,S,[i(u,{width:`55%`,height:`12px`}),i(u,{width:`35%`,height:`10px`})])])),64))])],64)):e.variant===`detail`?(a(),n(t,{key:2},[i(u,{height:`220px`,radius:`0`}),o(`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)):e.variant===`grid`||e.variant===`cards`?(a(),n(t,{key:3},[i(u,{width:`55%`,height:`16px`}),o(`div`,w,[(a(),n(t,null,r(4,e=>i(u,{key:`c-${e}`,width:`72px`,height:`32px`,radius:`999px`})),64))]),o(`div`,T,[(a(!0),n(t,null,r(e.rows,e=>(a(),n(`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)):e.variant===`form`?(a(),n(`div`,E,[(a(!0),n(t,null,r(e.rows,e=>(a(),n(`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`})])):(a(),n(`div`,D,[(a(!0),n(t,null,r(e.rows,e=>(a(),n(`div`,{key:`r-${e}`,class:`page-skeleton__row page-skeleton__row--card`},[i(u,{circle:``,width:`40px`,height:`40px`}),o(`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/PageSkeleton-sKuEY4NI.js b/dist/assets/PageSkeleton-sKuEY4NI.js deleted file mode 100644 index 85a768e..0000000 --- a/dist/assets/PageSkeleton-sKuEY4NI.js +++ /dev/null @@ -1 +0,0 @@ -import{Ct as e,O as t,P as n,R as r,Tt as i,Y as a,Z as o,j as s,n as c,z as l}from"./BasicIcon-C6boaehV.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(r,o)=>(a(),n(`span`,{class:e([`sk`,{"sk--circle":t.circle}]),style:i({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(i){return(c,l)=>(a(),n(`div`,{class:e([`page-skeleton`,{"page-skeleton--home":i.variant===`home`}]),role:`status`,"aria-live":`polite`,"aria-busy":`true`,"aria-label":`در حال بارگذاری`},[i.variant===`home`?(a(),n(t,{key:0},[s(`div`,d,[r(u,{class:`page-skeleton__hero-block`,height:`148px`,radius:`16px`})]),s(`div`,f,[(a(),n(t,null,o(4,e=>s(`div`,{key:`q-${e}`,class:`page-skeleton__quick-item`},[r(u,{circle:``,width:`48px`,height:`48px`}),r(u,{width:`72%`,height:`10px`})])),64))]),s(`div`,p,[s(`div`,m,[r(u,{circle:``,width:`48px`,height:`48px`}),s(`div`,h,[r(u,{width:`56px`,height:`10px`}),r(u,{width:`88px`,height:`16px`}),r(u,{width:`104px`,height:`10px`})])]),r(u,{height:`8px`,radius:`999px`}),r(u,{width:`62%`,height:`10px`})]),s(`div`,g,[s(`div`,_,[r(u,{width:`132px`,height:`16px`}),r(u,{width:`72px`,height:`12px`})]),s(`div`,v,[(a(),n(t,null,o(6,e=>s(`div`,{key:`g-${e}`,class:`page-skeleton__card`},[r(u,{class:`page-skeleton__product-image`,height:`110px`,radius:`12px`}),r(u,{width:`82%`,height:`12px`}),r(u,{width:`54%`,height:`10px`})])),64))])])],64)):i.variant===`profile`?(a(),n(t,{key:1},[s(`div`,y,[r(u,{circle:``,width:`72px`,height:`72px`}),r(u,{width:`45%`,height:`18px`}),r(u,{width:`30%`,height:`12px`})]),s(`div`,b,[(a(),n(t,null,o(4,e=>s(`div`,{key:`s-${e}`,class:`page-skeleton__stat`},[r(u,{width:`50%`,height:`10px`}),r(u,{width:`70%`,height:`18px`})])),64))]),s(`div`,x,[(a(),n(t,null,o(5,e=>s(`div`,{key:`m-${e}`,class:`page-skeleton__row`},[r(u,{circle:``,width:`36px`,height:`36px`}),s(`div`,S,[r(u,{width:`55%`,height:`12px`}),r(u,{width:`35%`,height:`10px`})])])),64))])],64)):i.variant===`detail`?(a(),n(t,{key:2},[r(u,{height:`220px`,radius:`0`}),s(`div`,C,[r(u,{width:`70%`,height:`20px`}),r(u,{width:`40%`,height:`12px`}),r(u,{height:`72px`,radius:`12px`}),r(u,{width:`100%`,height:`12px`}),r(u,{width:`92%`,height:`12px`}),r(u,{width:`85%`,height:`12px`}),r(u,{height:`48px`,radius:`12px`})])],64)):i.variant===`grid`||i.variant===`cards`?(a(),n(t,{key:3},[r(u,{width:`55%`,height:`16px`}),s(`div`,w,[(a(),n(t,null,o(4,e=>r(u,{key:`c-${e}`,width:`72px`,height:`32px`,radius:`999px`})),64))]),s(`div`,T,[(a(!0),n(t,null,o(i.rows,e=>(a(),n(`div`,{key:`card-${e}`,class:`page-skeleton__card`},[r(u,{height:`120px`,radius:`12px`}),r(u,{width:`85%`,height:`12px`}),r(u,{width:`55%`,height:`10px`})]))),128))])],64)):i.variant===`form`?(a(),n(`div`,E,[(a(!0),n(t,null,o(i.rows,e=>(a(),n(`div`,{key:`f-${e}`,class:`page-skeleton__field`},[r(u,{width:`30%`,height:`10px`}),r(u,{height:`44px`,radius:`10px`})]))),128)),r(u,{height:`48px`,radius:`12px`})])):(a(),n(`div`,D,[(a(!0),n(t,null,o(i.rows,e=>(a(),n(`div`,{key:`r-${e}`,class:`page-skeleton__row page-skeleton__row--card`},[r(u,{circle:``,width:`40px`,height:`40px`}),s(`div`,O,[r(u,{width:`62%`,height:`13px`}),r(u,{width:`42%`,height:`10px`}),r(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-2Yt1srLL.js b/dist/assets/PersianDateInput-2Yt1srLL.js deleted file mode 100644 index f56cbad..0000000 --- a/dist/assets/PersianDateInput-2Yt1srLL.js +++ /dev/null @@ -1 +0,0 @@ -import{A as e,Ct as t,D as n,Et as r,K as i,N as a,O as o,P as s,St as c,Y as l,Z as u,j as d,mt as f,n as p,q as m,tt as h,z as g}from"./BasicIcon-C6boaehV.js";import{d as _,f as v,g as y,h as b,m as x,p as S,u as C,y as w}from"./format-BHJptHdF.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(g({__name:`PersianDateInput`,props:{modelValue:{},label:{},placeholder:{},hint:{},error:{},disabled:{type:Boolean}},emits:[`update:modelValue`],setup(p,{emit:g}){let F=p,I=g,L=f(null),R=f(!1),z=f(w().jy),B=f(w().jm),V=e(()=>b(F.modelValue??``)),H=e(()=>{if(!V.value)return``;let{jy:e,jm:t,jd:n}=V.value;return x(e,t,n)}),U=e(()=>S(z.value,B.value)),W=e(()=>`${_[B.value-1]} ${C(String(z.value))}`);h(()=>F.modelValue,e=>{let t=b(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`,y(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=w();z.value=e.jy,B.value=e.jm,I(`update:modelValue`,y(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=w();return t.jy===z.value&&t.jm===B.value&&t.jd===e}function Q(e){L.value?.contains(e.target)||K()}return m(()=>{document.addEventListener(`click`,Q)}),i(()=>{document.removeEventListener(`click`,Q)}),(e,i)=>(l(),s(`div`,{ref_key:`rootRef`,ref:L,class:`form-group persian-date-input`},[p.label?(l(),s(`label`,T,r(p.label),1)):a(``,!0),d(`button`,{type:`button`,class:t([`input persian-date-input__trigger`,{"input-error":p.error,"is-open":R.value}]),disabled:p.disabled,onClick:n(G,[`stop`])},[d(`span`,{class:t({"persian-date-input__placeholder":!H.value})},r(H.value||p.placeholder||`انتخاب تاریخ`),3),i[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?(l(),s(`div`,{key:1,class:`persian-date-input__panel`,onClick:i[2]||=n(()=>{},[`stop`])},[d(`div`,D,[d(`button`,{type:`button`,class:`persian-date-input__nav`,onClick:i[0]||=e=>J(-1)},`‹`),d(`strong`,O,r(W.value),1),d(`button`,{type:`button`,class:`persian-date-input__nav`,onClick:i[1]||=e=>J(1)},`›`)]),d(`div`,k,[(l(!0),s(o,null,u(c(v),e=>(l(),s(`span`,{key:e},r(e),1))),128))]),d(`div`,A,[(l(!0),s(o,null,u(U.value,(e,n)=>(l(),s(o,{key:n},[e===null?(l(),s(`span`,j)):(l(),s(`button`,{key:1,type:`button`,class:t([`persian-date-input__cell`,{"persian-date-input__cell--selected":X(e),"persian-date-input__cell--today":Z(e)}]),onClick:t=>q(e)},r(c(C)(String(e))),11,M))],64))),128))]),d(`button`,{type:`button`,class:`persian-date-input__today`,onClick:Y},`امروز`)])):a(``,!0),p.error?(l(),s(`p`,N,r(p.error),1)):p.hint?(l(),s(`p`,P,r(p.hint),1)):a(``,!0)],512))}}),[[`__scopeId`,`data-v-f02e5adc`]]);export{F as t}; \ No newline at end of file diff --git a/dist/assets/PersianDateInput-BiSVL1bi.js b/dist/assets/PersianDateInput-BiSVL1bi.js new file mode 100644 index 0000000..e18bb59 --- /dev/null +++ b/dist/assets/PersianDateInput-BiSVL1bi.js @@ -0,0 +1 @@ +import{A as e,Ct as t,D as n,Dt as r,J as i,N as a,O as o,P as s,Q as c,X as l,ht as u,j as d,n as f,nt as p,q as m,wt as h,z as g}from"./BasicIcon-Bnxm-DKk.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=f(g({__name:`PersianDateInput`,props:{modelValue:{},label:{},placeholder:{},hint:{},error:{},disabled:{type:Boolean}},emits:[`update:modelValue`],setup(f,{emit:g}){let F=f,I=g,L=u(null),R=u(!1),z=u(v().jy),B=u(v().jm),V=e(()=>x(F.modelValue??``)),H=e(()=>{if(!V.value)return``;let{jy:e,jm:t,jd:n}=V.value;return S(e,t,n)}),U=e(()=>C(z.value,B.value)),W=e(()=>`${b[B.value-1]} ${y(String(z.value))}`);p(()=>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 i(()=>{document.addEventListener(`click`,Q)}),m(()=>{document.removeEventListener(`click`,Q)}),(e,i)=>(l(),s(`div`,{ref_key:`rootRef`,ref:L,class:`form-group persian-date-input`},[f.label?(l(),s(`label`,T,r(f.label),1)):a(``,!0),d(`button`,{type:`button`,class:h([`input persian-date-input__trigger`,{"input-error":f.error,"is-open":R.value}]),disabled:f.disabled,onClick:n(G,[`stop`])},[d(`span`,{class:h({"persian-date-input__placeholder":!H.value})},r(H.value||f.placeholder||`انتخاب تاریخ`),3),i[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?(l(),s(`div`,{key:1,class:`persian-date-input__panel`,onClick:i[2]||=n(()=>{},[`stop`])},[d(`div`,D,[d(`button`,{type:`button`,class:`persian-date-input__nav`,onClick:i[0]||=e=>J(-1)},`‹`),d(`strong`,O,r(W.value),1),d(`button`,{type:`button`,class:`persian-date-input__nav`,onClick:i[1]||=e=>J(1)},`›`)]),d(`div`,k,[(l(!0),s(o,null,c(t(w),e=>(l(),s(`span`,{key:e},r(e),1))),128))]),d(`div`,A,[(l(!0),s(o,null,c(U.value,(e,n)=>(l(),s(o,{key:n},[e===null?(l(),s(`span`,j)):(l(),s(`button`,{key:1,type:`button`,class:h([`persian-date-input__cell`,{"persian-date-input__cell--selected":X(e),"persian-date-input__cell--today":Z(e)}]),onClick:t=>q(e)},r(t(y)(String(e))),11,M))],64))),128))]),d(`button`,{type:`button`,class:`persian-date-input__today`,onClick:Y},`امروز`)])):a(``,!0),f.error?(l(),s(`p`,N,r(f.error),1)):f.hint?(l(),s(`p`,P,r(f.hint),1)):a(``,!0)],512))}}),[[`__scopeId`,`data-v-f02e5adc`]]);export{F as t}; \ No newline at end of file diff --git a/dist/assets/ProductDetailView-7kd_faet.js b/dist/assets/ProductDetailView-7kd_faet.js new file mode 100644 index 0000000..92e9342 --- /dev/null +++ b/dist/assets/ProductDetailView-7kd_faet.js @@ -0,0 +1 @@ +import{A as e,Ct as t,Dt as n,Et as r,J as i,L as a,N as o,O as s,P as c,Q as l,R as u,X as d,_ as ee,g as te,ht as f,j as p,n as ne,nt as re,wt as m,z as h}from"./BasicIcon-Bnxm-DKk.js";import{o as g}from"./format-C72AoJ2H.js";import{t as ie}from"./catalog-B2Z_WZGF.js";import{A as ae,O as _,l as oe}from"./index-DB4cQnln.js";import{t as se}from"./IconChevronBack-DguSlPDK.js";import{t as ce}from"./PageSkeleton-CpZ7eT1v.js";import{t as v}from"./IconShare-DtutVVj1.js";import{a as le,o as ue,t as de}from"./crm-CZ7XH3z9.js";import{t as fe}from"./useGoBack-Ds4z3swU.js";import{n as y,t as pe}from"./colorSwatch-BgOH1LE5.js";import{t as me}from"./IconShoppingBag-kdnOLLiZ.js";import{t as b}from"./quick-catalog-request-Di7-t6Ua.js";import{t as x}from"./IconHeart-CiwVmqRC.js";var he={key:0,class:`page product-detail product-page`},ge={class:`pd-header mobile-only`},_e={class:`pd-header__actions`},ve=[`aria-label`,`aria-pressed`],ye={class:`desktop-page__head desktop-only pd-desk-head`},be={class:`desktop-page__title`},xe={class:`desktop-page__subtitle`},S={class:`pd-desk-head__actions`},C=[`aria-label`,`aria-pressed`],w={class:`page__scroll pd-scroll product-page__scroll`},T={class:`product-page__layout`},E={class:`product-page__main`},D={class:`gallery`},O={class:`gallery__count`},k={class:`gallery__thumbs`},A=[`onClick`],j={class:`pd-body`},M={class:`title-row`},Se={key:0,class:`new-badge`},Ce={class:`code`},we={class:`specs`},Te={class:`spec-cell`},Ee={class:`spec-cell`},De={class:`spec-cell`},Oe={class:`spec-icon`,"aria-hidden":`true`},ke={class:`spec-cell`},Ae={key:0,class:`specs-extra`},je={class:`pd-section pd-section--boxed`},Me={class:`section-head`},Ne={class:`colors`},Pe=[`onClick`],Fe={class:`pd-section`},Ie={class:`tags`,role:`list`},Le=[`onClick`],Re={class:`pd-section`},ze={class:`roll-field`},Be={class:`product-page__sidebar desktop-only`},N={class:`cart-summary-panel`},Ve={class:`cart-summary-panel__row`},He={class:`cart-summary-panel__row`},Ue={class:`cart-summary-panel__btn`},We=[`disabled`],Ge=[`src`],Ke={class:`pd-footer mobile-only sticky-footer`},qe={class:`pd-footer__primary`},Je=[`disabled`],Ye={class:`min-note`},Xe=[`src`],Ze={key:1,class:`page empty`},Qe={key:2,class:`page empty`},P=ne(h({__name:`ProductDetailView`,setup(ne){let h={suit:`پارچه کت‌شلواری`,trousers:`پارچه شلواری`,shirt:`پارچه پیراهنی`},P={summer:`پارچه تابستانه`,winter:`پارچه زمستانه`,all_season:`پارچه چهارفصل`},$e=te(),F=ee(),{goBack:I}=fe(`/products`),et=de(),L=oe(),tt=ae(),nt=ie(),R=e(()=>String($e.query.id??``)),z=f(null),B=f(!0),V=f(null),H=f(0),U=f(1),W=f(!1),G=f(!1),K=e(()=>z.value?.rollMeters??50),q=e(()=>{let e=z.value;return e?pe(e.colors,e.colorImages,e.imageUrls,H.value,e.imageUrl):``}),rt=e(()=>z.value?.colors[H.value]??``),J=e(()=>U.value*K.value),it=e(()=>{let e=z.value?.minMeterage;return e&&e>0?e:K.value}),Y=e(()=>Math.max(1,Math.ceil(it.value/K.value))),at=e(()=>h[z.value?.categoryId??``]||`—`),ot=e(()=>P[z.value?.season??``]||`—`),st=e(()=>{let e=z.value;if(!e)return[];let t=[],n=ue.some(t=>t.id===e.categoryId)?e.categoryId:``,r=n?h[n]:``;r&&t.push({key:`usage-${n}`,label:r,to:{path:`/products`,query:{categoryId:n}}});let i=le.some(t=>t.id===e.season)?e.season:``,a=i?P[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(!R.value){z.value=null,B.value=!1;return}B.value=!0,V.value=null;try{await Promise.all([L.hydrate(),nt.loadCompanies()]),z.value=await et.loadProductById(R.value),H.value=0,U.value=Y.value}catch(e){z.value=null,V.value=e instanceof Error?e.message:`محصول یافت نشد.`}finally{B.value=!1}}i(X),re(R,X);function ct(e){let t=e.rollMeters||50,n=e.orderMultiplier&&e.orderMultiplier>0?e.orderMultiplier:t,r=e.minMeterage&&e.minMeterage>0?e.minMeterage:t;return{id:e.id,companyId:e.companyId||``,catalogId:e.catalogId||``,name:e.name,code:e.code,color:e.color||e.colors[H.value]||`—`,minMeterage:r,orderMultiplier:n,basePrice:e.basePrice,isActive:!0}}function lt(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)}async function Z(){if(!z.value)return;let e=ct(z.value);W.value=!0;try{let t=lt(J.value,e.orderMultiplier,e.minMeterage);await tt.addItem(e,z.value.catalogCode||z.value.code,t)}finally{W.value=!1}}function Q(){z.value&&L.toggle(z.value.id)}function $(){let e=window.location.href;if(navigator.share){navigator.share({title:z.value?.name,url:e}).catch(()=>void 0);return}navigator.clipboard?.writeText(e)}return(e,i)=>z.value?(d(),c(`div`,he,[p(`header`,ge,[p(`button`,{type:`button`,class:`icon-btn`,"aria-label":`بازگشت`,onClick:i[0]||=(...e)=>t(I)&&t(I)(...e)},[u(se,{size:20})]),p(`div`,_e,[p(`button`,{type:`button`,class:`icon-btn`,"aria-label":t(L).isFavorite(z.value.id)?`حذف از علاقه‌مندی‌ها`:`افزودن به علاقه‌مندی‌ها`,"aria-pressed":t(L).isFavorite(z.value.id),onClick:Q},[u(x,{size:20,filled:t(L).isFavorite(z.value.id),color:t(L).isFavorite(z.value.id)?`#0a353c`:void 0},null,8,[`filled`,`color`])],8,ve),p(`button`,{type:`button`,class:`icon-btn`,"aria-label":`اشتراک‌گذاری`,onClick:$},[u(v,{size:20})])])]),p(`header`,ye,[p(`div`,null,[p(`h1`,be,n(z.value.name),1),p(`p`,xe,`کد محصول: `+n(z.value.code),1)]),p(`div`,S,[p(`button`,{type:`button`,class:`icon-btn`,"aria-label":t(L).isFavorite(z.value.id)?`حذف از علاقه‌مندی‌ها`:`افزودن به علاقه‌مندی‌ها`,"aria-pressed":t(L).isFavorite(z.value.id),onClick:Q},[u(x,{size:20,filled:t(L).isFavorite(z.value.id),color:t(L).isFavorite(z.value.id)?`#0a353c`:void 0},null,8,[`filled`,`color`])],8,C),p(`button`,{type:`button`,class:`icon-btn`,"aria-label":`اشتراک‌گذاری`,onClick:$},[u(v,{size:20})])])]),p(`div`,w,[p(`div`,T,[p(`div`,E,[p(`div`,D,[p(`div`,{class:`gallery__main`,style:r(q.value?{backgroundImage:`url(${q.value})`,backgroundSize:`cover`,backgroundPosition:`center`}:t(y)(rt.value))},[p(`span`,O,n(t(g)(H.value+1))+`/`+n(t(g)(Math.max(z.value.colors.length,1))),1)],4),p(`div`,k,[(d(!0),c(s,null,l(z.value.colors,(e,n)=>(d(),c(`button`,{key:n,type:`button`,class:m([`thumb`,{"thumb--active":H.value===n}]),onClick:e=>H.value=n},[p(`span`,{class:`thumb__swatch`,style:r(t(y)(e,z.value.colorImages?.[n]||z.value.imageUrls?.[n]))},null,4)],10,A))),128))])]),p(`div`,j,[p(`div`,M,[p(`h1`,null,n(z.value.name),1),z.value.isNew?(d(),c(`span`,Se,`جدید`)):o(``,!0)]),p(`p`,Ce,`کد محصول: `+n(z.value.code),1),p(`div`,we,[p(`div`,Te,[i[5]||=p(`span`,{class:`spec-icon`,"aria-hidden":`true`},[p(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.6`},[p(`rect`,{x:`4`,y:`8`,width:`16`,height:`8`,rx:`2`})])],-1),i[6]||=p(`span`,null,`عرض`,-1),p(`strong`,null,n(t(g)(z.value.widthCm))+` سانتی‌متر`,1)]),p(`div`,Ee,[i[7]||=p(`span`,{class:`spec-icon`,"aria-hidden":`true`},[p(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.6`},[p(`path`,{d:`M12 3.5 20 8v8l-8 4.5L4 16V8l8-4.5Z`})])],-1),i[8]||=p(`span`,null,`جنس`,-1),p(`strong`,null,n(z.value.composition||`—`),1)]),p(`div`,De,[p(`span`,Oe,[u(me,{size:22,color:`#98a2ad`})]),i[9]||=p(`span`,null,`وزن`,-1),p(`strong`,null,n(z.value.weightGrams?`${t(g)(z.value.weightGrams)} گرم`:`—`),1)]),p(`div`,ke,[i[10]||=p(`span`,{class:`spec-icon`,"aria-hidden":`true`},[p(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.6`},[p(`circle`,{cx:`12`,cy:`12`,r:`8`}),p(`path`,{d:`M12 8a6 6 0 0 1 0 8`})])],-1),i[11]||=p(`span`,null,`نوع بافت`,-1),p(`strong`,null,n(z.value.weaveType||`—`),1)])]),p(`button`,{type:`button`,class:`specs-more`,onClick:i[1]||=e=>G.value=!G.value},[a(n(G.value?`بستن مشخصات`:`مشاهده همه مشخصات`)+` `,1),(d(),c(`svg`,{class:m([`specs-more__chevron`,{"is-open":G.value}]),viewBox:`0 0 12 12`,"aria-hidden":`true`},[...i[12]||=[p(`path`,{d:`M3 4.5 6 8l3-3.5`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.4`,"stroke-linecap":`round`},null,-1)]],2))]),G.value?(d(),c(`div`,Ae,[p(`p`,null,`فصل: `+n(ot.value),1),p(`p`,null,`دسته: `+n(at.value),1),p(`p`,null,`جمع سفارش: `+n(t(g)(J.value))+` متر`,1)])):o(``,!0),p(`section`,je,[p(`div`,Me,[i[13]||=p(`h2`,null,`رنگ‌بندی`,-1),p(`span`,null,`(`+n(t(g)(z.value.colors.length))+` رنگ موجود)`,1)]),p(`div`,Ne,[(d(!0),c(s,null,l(z.value.colors,(e,n)=>(d(),c(`button`,{key:n,type:`button`,class:m([`color-dot`,{"color-dot--active":H.value===n}]),style:r(t(y)(e,z.value.colorImages?.[n]||z.value.imageUrls?.[n])),onClick:e=>H.value=n},null,14,Pe))),128))])]),p(`section`,Fe,[i[14]||=p(`h2`,{class:`section-title`},`دسته‌بندی`,-1),p(`div`,Ie,[(d(!0),c(s,null,l(st.value,e=>(d(),c(`button`,{key:e.key,type:`button`,class:m([`tag`,{"tag--link":!!e.to}]),role:`listitem`,onClick:n=>e.to&&t(F).push(e.to)},n(e.label),11,Le))),128))])]),p(`section`,Re,[i[15]||=p(`h2`,{class:`section-title`},`متراژ هر ساقه (طاقه)`,-1),p(`div`,ze,n(t(g)(z.value.rollMeters))+` متر`,1)])])]),p(`aside`,Be,[p(`div`,N,[i[19]||=p(`h2`,{class:`cart-summary-panel__title`},`ثبت سفارش`,-1),p(`div`,Ve,[i[16]||=p(`span`,null,`متراژ سفارش`,-1),p(`strong`,null,n(t(g)(J.value))+` متر`,1)]),p(`div`,He,[i[17]||=p(`span`,null,`حداقل سفارش`,-1),p(`strong`,null,n(t(g)(Y.value))+` طاقه`,1)]),p(`div`,Ue,[p(`button`,{type:`button`,class:`btn-primary`,disabled:W.value,onClick:Z},[u(_,{size:18,color:`#ffffff`}),a(` `+n(W.value?`در حال افزودن...`:`افزودن به سفارش`),1)],8,We)]),p(`button`,{type:`button`,class:`btn-secondary pd-desk-catalog-btn`,onClick:i[2]||=e=>t(F).push({path:`/catalog-request`,query:{productId:z.value.id}})},[p(`img`,{class:`btn-secondary__icon`,src:t(b),alt:``,"aria-hidden":`true`},null,8,Ge),i[18]||=a(` درخواست کالیته `,-1)])])])])]),p(`footer`,Ke,[p(`div`,qe,[p(`button`,{type:`button`,class:`btn-primary`,disabled:W.value,onClick:Z},[u(_,{size:18,color:`#ffffff`}),a(` `+n(W.value?`در حال افزودن...`:`افزودن به سفارش`),1)],8,Je),p(`p`,Ye,`حداقل سفارش: `+n(t(g)(Y.value))+` طاقه`,1)]),p(`button`,{type:`button`,class:`btn-secondary`,onClick:i[3]||=e=>t(F).push({path:`/catalog-request`,query:{productId:z.value.id}})},[p(`img`,{class:`btn-secondary__icon`,src:t(b),alt:``,"aria-hidden":`true`},null,8,Xe),i[20]||=a(` درخواست کالیته `,-1)])])])):B.value?(d(),c(`div`,Ze,[u(ce,{variant:`detail`})])):(d(),c(`div`,Qe,[p(`p`,null,n(V.value||`محصول یافت نشد.`),1),p(`button`,{type:`button`,onClick:i[4]||=e=>t(F).push(`/products`)},`بازگشت به لیست`)]))}}),[[`__scopeId`,`data-v-2ab27b4c`]]);export{P as default}; \ No newline at end of file diff --git a/dist/assets/ProductDetailView-BUGwmJWw.js b/dist/assets/ProductDetailView-BUGwmJWw.js deleted file mode 100644 index 116533c..0000000 --- a/dist/assets/ProductDetailView-BUGwmJWw.js +++ /dev/null @@ -1 +0,0 @@ -import{A as e,Ct as t,Et as n,L as r,N as i,O as a,P as o,R as s,St as c,Tt as l,Y as u,Z as d,_ as f,g as ee,j as p,mt as m,n as te,q as ne,tt as re,z as h}from"./BasicIcon-C6boaehV.js";import{o as g}from"./format-BHJptHdF.js";import{t as ie}from"./catalog-s7nVUdlj.js";import{C as ae,T as oe,l as se}from"./index-fdhs4HNc.js";import{t as ce}from"./IconChevronBack-DORV2H0q.js";import{t as le}from"./PageSkeleton-sKuEY4NI.js";import{t as ue}from"./IconShare-1kao-fAR.js";import{a as de,o as fe,t as pe}from"./crm-DmqasSZ_.js";import{t as me}from"./useGoBack-CgNp0uP9.js";import{n as _,t as he}from"./colorSwatch-BgOH1LE5.js";import{t as ge}from"./IconShoppingBag-Bq21_Txe.js";import{t as _e}from"./quick-catalog-request-Di7-t6Ua.js";import{t as ve}from"./IconHeart-CZMe29Nz.js";var v={key:0,class:`page product-detail`},y={class:`pd-header`},b={class:`pd-header__actions`},x=[`aria-label`,`aria-pressed`],S={class:`page__scroll pd-scroll`},C={class:`gallery`},w={class:`gallery__count`},T={class:`gallery__thumbs`},E=[`onClick`],D={class:`pd-body`},O={class:`title-row`},k={key:0,class:`new-badge`},A={class:`code`},j={class:`specs`},M={class:`spec-cell`},N={class:`spec-cell`},P={class:`spec-cell`},F={class:`spec-icon`,"aria-hidden":`true`},ye={class:`spec-cell`},be={key:0,class:`specs-extra`},xe={class:`pd-section pd-section--boxed`},Se={class:`section-head`},Ce={class:`colors`},we=[`onClick`],Te={class:`pd-section`},Ee={class:`tags`,role:`list`},De=[`onClick`],Oe={class:`pd-section`},ke={class:`roll-field`},Ae={class:`pd-footer`},je={class:`pd-footer__primary`},Me=[`disabled`],Ne={class:`min-note`},Pe=[`src`],Fe={key:1,class:`page empty`},Ie={key:2,class:`page empty`},I=te(h({__name:`ProductDetailView`,setup(te){let h={suit:`پارچه کت‌شلواری`,trousers:`پارچه شلواری`,shirt:`پارچه پیراهنی`},I={summer:`پارچه تابستانه`,winter:`پارچه زمستانه`,all_season:`پارچه چهارفصل`},Le=ee(),L=f(),{goBack:R}=me(`/products`),Re=pe(),z=se(),ze=oe(),Be=ie(),B=e(()=>String(Le.query.id??``)),V=m(null),H=m(!0),U=m(null),W=m(0),G=m(1),K=m(!1),q=m(!1),J=e(()=>V.value?.rollMeters??50),Y=e(()=>{let e=V.value;return e?he(e.colors,e.colorImages,e.imageUrls,W.value,e.imageUrl):``}),Ve=e(()=>V.value?.colors[W.value]??``),X=e(()=>G.value*J.value),He=e(()=>{let e=V.value?.minMeterage;return e&&e>0?e:J.value}),Z=e(()=>Math.max(1,Math.ceil(He.value/J.value))),Q=e(()=>h[V.value?.categoryId??``]||`—`),Ue=e(()=>I[V.value?.season??``]||`—`),We=e(()=>{let e=V.value;if(!e)return[];let t=[],n=fe.some(t=>t.id===e.categoryId)?e.categoryId:``,r=n?h[n]:``;r&&t.push({key:`usage-${n}`,label:r,to:{path:`/products`,query:{categoryId:n}}});let i=de.some(t=>t.id===e.season)?e.season:``,a=i?I[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 $(){if(!B.value){V.value=null,H.value=!1;return}H.value=!0,U.value=null;try{await Promise.all([z.hydrate(),Be.loadCompanies()]),V.value=await Re.loadProductById(B.value),W.value=0,G.value=Z.value}catch(e){V.value=null,U.value=e instanceof Error?e.message:`محصول یافت نشد.`}finally{H.value=!1}}ne($),re(B,$);function Ge(e){let t=e.rollMeters||50,n=e.orderMultiplier&&e.orderMultiplier>0?e.orderMultiplier:t,r=e.minMeterage&&e.minMeterage>0?e.minMeterage:t;return{id:e.id,companyId:e.companyId||``,catalogId:e.catalogId||``,name:e.name,code:e.code,color:e.color||e.colors[W.value]||`—`,minMeterage:r,orderMultiplier:n,basePrice:e.basePrice,isActive:!0}}function Ke(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)}async function qe(){if(!V.value)return;let e=Ge(V.value);K.value=!0;try{let t=Ke(X.value,e.orderMultiplier,e.minMeterage);await ze.addItem(e,V.value.catalogCode||V.value.code,t)}finally{K.value=!1}}function Je(){V.value&&z.toggle(V.value.id)}function Ye(){let e=window.location.href;if(navigator.share){navigator.share({title:V.value?.name,url:e}).catch(()=>void 0);return}navigator.clipboard?.writeText(e)}return(e,f)=>V.value?(u(),o(`div`,v,[p(`header`,y,[p(`button`,{type:`button`,class:`icon-btn`,"aria-label":`بازگشت`,onClick:f[0]||=(...e)=>c(R)&&c(R)(...e)},[s(ce,{size:20})]),p(`div`,b,[p(`button`,{type:`button`,class:`icon-btn`,"aria-label":c(z).isFavorite(V.value.id)?`حذف از علاقه‌مندی‌ها`:`افزودن به علاقه‌مندی‌ها`,"aria-pressed":c(z).isFavorite(V.value.id),onClick:Je},[s(ve,{size:20,filled:c(z).isFavorite(V.value.id),color:c(z).isFavorite(V.value.id)?`#0a353c`:void 0},null,8,[`filled`,`color`])],8,x),p(`button`,{type:`button`,class:`icon-btn`,"aria-label":`اشتراک‌گذاری`,onClick:Ye},[s(ue,{size:20})])])]),p(`div`,S,[p(`div`,C,[p(`div`,{class:`gallery__main`,style:l(Y.value?{backgroundImage:`url(${Y.value})`,backgroundSize:`cover`,backgroundPosition:`center`}:c(_)(Ve.value))},[p(`span`,w,n(c(g)(W.value+1))+`/`+n(c(g)(Math.max(V.value.colors.length,1))),1)],4),p(`div`,T,[(u(!0),o(a,null,d(V.value.colors,(e,n)=>(u(),o(`button`,{key:n,type:`button`,class:t([`thumb`,{"thumb--active":W.value===n}]),onClick:e=>W.value=n},[p(`span`,{class:`thumb__swatch`,style:l(c(_)(e,V.value.colorImages?.[n]||V.value.imageUrls?.[n]))},null,4)],10,E))),128))])]),p(`div`,D,[p(`div`,O,[p(`h1`,null,n(V.value.name),1),V.value.isNew?(u(),o(`span`,k,`جدید`)):i(``,!0)]),p(`p`,A,`کد محصول: `+n(V.value.code),1),p(`div`,j,[p(`div`,M,[f[4]||=p(`span`,{class:`spec-icon`,"aria-hidden":`true`},[p(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.6`},[p(`rect`,{x:`4`,y:`8`,width:`16`,height:`8`,rx:`2`})])],-1),f[5]||=p(`span`,null,`عرض`,-1),p(`strong`,null,n(c(g)(V.value.widthCm))+` سانتی‌متر`,1)]),p(`div`,N,[f[6]||=p(`span`,{class:`spec-icon`,"aria-hidden":`true`},[p(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.6`},[p(`path`,{d:`M12 3.5 20 8v8l-8 4.5L4 16V8l8-4.5Z`})])],-1),f[7]||=p(`span`,null,`جنس`,-1),p(`strong`,null,n(V.value.composition||`—`),1)]),p(`div`,P,[p(`span`,F,[s(ge,{size:22,color:`#98a2ad`})]),f[8]||=p(`span`,null,`وزن`,-1),p(`strong`,null,n(V.value.weightGrams?`${c(g)(V.value.weightGrams)} گرم`:`—`),1)]),p(`div`,ye,[f[9]||=p(`span`,{class:`spec-icon`,"aria-hidden":`true`},[p(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.6`},[p(`circle`,{cx:`12`,cy:`12`,r:`8`}),p(`path`,{d:`M12 8a6 6 0 0 1 0 8`})])],-1),f[10]||=p(`span`,null,`نوع بافت`,-1),p(`strong`,null,n(V.value.weaveType||`—`),1)])]),p(`button`,{type:`button`,class:`specs-more`,onClick:f[1]||=e=>q.value=!q.value},[r(n(q.value?`بستن مشخصات`:`مشاهده همه مشخصات`)+` `,1),(u(),o(`svg`,{class:t([`specs-more__chevron`,{"is-open":q.value}]),viewBox:`0 0 12 12`,"aria-hidden":`true`},[...f[11]||=[p(`path`,{d:`M3 4.5 6 8l3-3.5`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.4`,"stroke-linecap":`round`},null,-1)]],2))]),q.value?(u(),o(`div`,be,[p(`p`,null,`فصل: `+n(Ue.value),1),p(`p`,null,`دسته: `+n(Q.value),1),p(`p`,null,`جمع سفارش: `+n(c(g)(X.value))+` متر`,1)])):i(``,!0),p(`section`,xe,[p(`div`,Se,[f[12]||=p(`h2`,null,`رنگ‌بندی`,-1),p(`span`,null,`(`+n(c(g)(V.value.colors.length))+` رنگ موجود)`,1)]),p(`div`,Ce,[(u(!0),o(a,null,d(V.value.colors,(e,n)=>(u(),o(`button`,{key:n,type:`button`,class:t([`color-dot`,{"color-dot--active":W.value===n}]),style:l(c(_)(e,V.value.colorImages?.[n]||V.value.imageUrls?.[n])),onClick:e=>W.value=n},null,14,we))),128))])]),p(`section`,Te,[f[13]||=p(`h2`,{class:`section-title`},`دسته‌بندی`,-1),p(`div`,Ee,[(u(!0),o(a,null,d(We.value,e=>(u(),o(`button`,{key:e.key,type:`button`,class:t([`tag`,{"tag--link":!!e.to}]),role:`listitem`,onClick:t=>e.to&&c(L).push(e.to)},n(e.label),11,De))),128))])]),p(`section`,Oe,[f[14]||=p(`h2`,{class:`section-title`},`متراژ هر ساقه (طاقه)`,-1),p(`div`,ke,n(c(g)(V.value.rollMeters))+` متر`,1)])])]),p(`footer`,Ae,[p(`div`,je,[p(`button`,{type:`button`,class:`btn-primary`,disabled:K.value,onClick:qe},[s(ae,{size:18,color:`#ffffff`}),r(` `+n(K.value?`در حال افزودن...`:`افزودن به سفارش`),1)],8,Me),p(`p`,Ne,`حداقل سفارش: `+n(c(g)(Z.value))+` طاقه`,1)]),p(`button`,{type:`button`,class:`btn-secondary`,onClick:f[2]||=e=>c(L).push({path:`/catalog-request`,query:{productId:V.value.id}})},[p(`img`,{class:`btn-secondary__icon`,src:c(_e),alt:``,"aria-hidden":`true`},null,8,Pe),f[15]||=r(` درخواست کالیته `,-1)])])])):H.value?(u(),o(`div`,Fe,[s(le,{variant:`detail`})])):(u(),o(`div`,Ie,[p(`p`,null,n(U.value||`محصول یافت نشد.`),1),p(`button`,{type:`button`,onClick:f[3]||=e=>c(L).push(`/products`)},`بازگشت به لیست`)]))}}),[[`__scopeId`,`data-v-54dc20a3`]]);export{I as default}; \ No newline at end of file diff --git a/dist/assets/ProductDetailView-BlsIoIkr.css b/dist/assets/ProductDetailView-BlsIoIkr.css deleted file mode 100644 index b7de48e..0000000 --- a/dist/assets/ProductDetailView-BlsIoIkr.css +++ /dev/null @@ -1 +0,0 @@ -.product-detail[data-v-54dc20a3]{--pd-card-border:1px solid #eeeef1;--pd-card-shadow:0 1px 2px #1018280a, 0 6px 16px #1018280d;--pd-card-radius:16px;background:var(--color-surface);flex-direction:column;min-height:100%;display:flex}.pd-header[data-v-54dc20a3]{padding:8px var(--page-padding);background:var(--color-surface);justify-content:space-between;align-items:center;display:flex}.pd-header__actions[data-v-54dc20a3]{gap:4px;display:flex}.icon-btn[data-v-54dc20a3]{cursor:pointer;background:0 0;border:none;place-items:center;width:40px;height:40px;display:grid}.pd-scroll[data-v-54dc20a3]{flex:1;padding-bottom:120px}.gallery__main[data-v-54dc20a3]{background:linear-gradient(160deg,#a8b5a0,#6f8570);height:260px;position:relative}.gallery__count[data-v-54dc20a3]{bottom:12px;color:#fff;background:#0000008c;border-radius:6px;padding:4px 10px;font-size:.75rem;position:absolute;inset-inline-start:12px}.gallery__thumbs[data-v-54dc20a3]{margin:12px var(--page-padding) 0;background:var(--color-surface);border:var(--pd-card-border);border-radius:var(--pd-card-radius);box-shadow:var(--pd-card-shadow);gap:10px;padding:10px;display:flex;overflow-x:auto}.thumb[data-v-54dc20a3]{appearance:none;border:var(--pd-card-border);background:var(--color-surface);width:52px;height:52px;box-shadow:var(--pd-card-shadow);cursor:pointer;box-sizing:border-box;border-radius:14px;flex-shrink:0;padding:0}.thumb__swatch[data-v-54dc20a3]{border-radius:12px;width:100%;height:100%;display:block}.thumb--active[data-v-54dc20a3]{border:2px solid #0a353c;padding:3px}.thumb--active .thumb__swatch[data-v-54dc20a3]{border-radius:9px}.pd-body[data-v-54dc20a3]{padding:16px var(--page-padding) 20px;background:var(--color-surface);flex-direction:column;gap:18px;display:flex}.title-row[data-v-54dc20a3]{justify-content:flex-start;align-items:center;gap:8px;display:flex}.title-row h1[data-v-54dc20a3]{margin:0;font-size:1.2rem;font-weight:700}.new-badge[data-v-54dc20a3]{color:#fff;background:#96b49c;border:none;border-radius:10px;justify-content:center;align-items:center;height:26px;padding:0 16px;font-size:.8125rem;font-weight:500;line-height:1;display:inline-flex}.code[data-v-54dc20a3]{color:var(--color-text-muted);margin:-10px 0 0;font-size:.82rem}.specs[data-v-54dc20a3]{background:var(--color-surface);border:var(--pd-card-border);border-radius:var(--pd-card-radius);box-shadow:var(--pd-card-shadow);grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;padding:14px 8px;display:grid}.spec-cell[data-v-54dc20a3]{text-align:center;flex-direction:column;align-items:center;gap:6px;min-width:0;display:flex}.spec-icon[data-v-54dc20a3]{color:#98a2ad;place-items:center;width:22px;height:22px;display:grid}.spec-icon svg[data-v-54dc20a3]{width:22px;height:22px}.spec-cell strong[data-v-54dc20a3]{color:var(--color-text);text-overflow:ellipsis;max-width:100%;font-size:.7rem;font-weight:600;line-height:1.4;overflow:hidden}.spec-cell span[data-v-54dc20a3]{color:#98a2ad;font-size:.7rem}.specs-more[data-v-54dc20a3]{color:#8b939c;cursor:pointer;background:0 0;border:none;align-self:center;align-items:center;gap:4px;padding:0;font-size:.8rem;font-weight:500;display:inline-flex}.specs-more__chevron[data-v-54dc20a3]{width:12px;height:12px}.specs-more__chevron.is-open[data-v-54dc20a3]{transform:rotate(180deg)}.specs-extra[data-v-54dc20a3]{color:var(--color-text-muted);background:#f6f7f8;border-radius:12px;padding:12px 14px;font-size:.82rem}.specs-extra p[data-v-54dc20a3]{margin:0 0 6px}.specs-extra p[data-v-54dc20a3]:last-child{margin:0}.pd-section[data-v-54dc20a3]{flex-direction:column;gap:10px;display:flex}.pd-section--boxed[data-v-54dc20a3]{background:var(--color-surface);border:var(--pd-card-border);border-radius:var(--pd-card-radius);box-shadow:var(--pd-card-shadow);padding:12px 14px}.section-head[data-v-54dc20a3]{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.section-head h2[data-v-54dc20a3],.section-title[data-v-54dc20a3]{margin:0;font-size:.95rem;font-weight:700}.section-head span[data-v-54dc20a3]{color:#8b939c;font-size:.78rem}.colors[data-v-54dc20a3]{padding:4px 2px;flex-wrap:nowrap;gap:14px;padding-inline-start:20px;display:flex;overflow-x:auto}.color-dot[data-v-54dc20a3]{appearance:none;width:22px;height:22px;box-shadow:none;cursor:pointer;box-sizing:border-box;background-position:50%;background-size:cover;border:1px solid #00000014;border-radius:999px;flex-shrink:0;padding:0}.color-dot--active[data-v-54dc20a3]{border-color:#0000;box-shadow:0 0 0 2px #fff,0 0 0 3.5px #0a353c}.tags[data-v-54dc20a3]{flex-wrap:wrap;justify-content:flex-start;gap:8px;display:flex}.tag[data-v-54dc20a3],button.tag[data-v-54dc20a3]{appearance:none;border:var(--pd-card-border);background:var(--color-surface);color:#6b7280;letter-spacing:0;white-space:nowrap;height:32px;min-height:32px;box-shadow:var(--pd-card-shadow);border-radius:6px;outline:none;justify-content:center;align-items:center;padding:0 16px;font-size:.8125rem;font-weight:400;line-height:1;display:inline-flex}button.tag[data-v-54dc20a3]{cursor:default;font-family:inherit}button.tag--link[data-v-54dc20a3]{cursor:pointer}button.tag--link[data-v-54dc20a3]:hover{background:var(--color-surface)}.roll-field[data-v-54dc20a3]{border:var(--pd-card-border);background:var(--color-surface);width:fit-content;max-width:100%;box-shadow:var(--pd-card-shadow);color:#6b7280;border-radius:6px;align-items:center;padding:0 16px;font-size:.9rem;display:inline-flex}.pd-footer[data-v-54dc20a3]{padding:12px var(--page-padding) calc(12px + env(safe-area-inset-bottom,0));background:var(--color-surface);border-top:1px solid var(--color-border);grid-template-columns:1.2fr 1fr;align-items:start;gap:8px;display:grid;position:sticky;bottom:0}.pd-footer__primary[data-v-54dc20a3]{flex-direction:column;display:flex}.btn-secondary[data-v-54dc20a3],.btn-primary[data-v-54dc20a3]{cursor:pointer;border-radius:12px;justify-content:center;align-items:center;gap:6px;width:100%;height:48px;min-height:48px;font-weight:700;display:inline-flex}.btn-secondary[data-v-54dc20a3]{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-primary)}.btn-secondary__icon[data-v-54dc20a3]{object-fit:contain;flex-shrink:0;width:18px;height:18px;display:block}.btn-primary[data-v-54dc20a3]{background:var(--color-accent-navy);color:#fff;border:none}.btn-primary[data-v-54dc20a3]:disabled{opacity:.7;cursor:wait}.min-note[data-v-54dc20a3]{text-align:center;color:var(--color-text-muted);margin:6px 0 0;font-size:.7rem}.empty[data-v-54dc20a3]{padding:40px var(--page-padding);text-align:center} diff --git a/dist/assets/ProductDetailView-DhezkUBD.css b/dist/assets/ProductDetailView-DhezkUBD.css new file mode 100644 index 0000000..7a0a9a7 --- /dev/null +++ b/dist/assets/ProductDetailView-DhezkUBD.css @@ -0,0 +1 @@ +.product-detail[data-v-2ab27b4c]{--pd-card-border:1px solid #eeeef1;--pd-card-shadow:0 1px 2px #1018280a, 0 6px 16px #1018280d;--pd-card-radius:16px;background:var(--color-surface);flex-direction:column;min-height:100%;display:flex}.pd-header[data-v-2ab27b4c]{padding:8px var(--page-padding);background:var(--color-surface);justify-content:space-between;align-items:center;display:flex}.pd-header__actions[data-v-2ab27b4c]{gap:4px;display:flex}.icon-btn[data-v-2ab27b4c]{cursor:pointer;background:0 0;border:none;place-items:center;width:40px;height:40px;display:grid}.pd-scroll[data-v-2ab27b4c]{flex:1;padding-bottom:120px}.gallery__main[data-v-2ab27b4c]{background:linear-gradient(160deg,#a8b5a0,#6f8570);height:260px;position:relative}.gallery__count[data-v-2ab27b4c]{bottom:12px;color:#fff;background:#0000008c;border-radius:6px;padding:4px 10px;font-size:.75rem;position:absolute;inset-inline-start:12px}.gallery__thumbs[data-v-2ab27b4c]{margin:12px var(--page-padding) 0;background:var(--color-surface);border:var(--pd-card-border);border-radius:var(--pd-card-radius);box-shadow:var(--pd-card-shadow);gap:10px;padding:10px;display:flex;overflow-x:auto}.thumb[data-v-2ab27b4c]{appearance:none;border:var(--pd-card-border);background:var(--color-surface);width:52px;height:52px;box-shadow:var(--pd-card-shadow);cursor:pointer;box-sizing:border-box;border-radius:14px;flex-shrink:0;padding:0}.thumb__swatch[data-v-2ab27b4c]{border-radius:12px;width:100%;height:100%;display:block}.thumb--active[data-v-2ab27b4c]{border:2px solid #0a353c;padding:3px}.thumb--active .thumb__swatch[data-v-2ab27b4c]{border-radius:9px}.pd-body[data-v-2ab27b4c]{padding:16px var(--page-padding) 20px;background:var(--color-surface);flex-direction:column;gap:18px;display:flex}.title-row[data-v-2ab27b4c]{justify-content:flex-start;align-items:center;gap:8px;display:flex}.title-row h1[data-v-2ab27b4c]{margin:0;font-size:1.2rem;font-weight:700}.new-badge[data-v-2ab27b4c]{color:#fff;background:#96b49c;border:none;border-radius:10px;justify-content:center;align-items:center;height:26px;padding:0 16px;font-size:.8125rem;font-weight:500;line-height:1;display:inline-flex}.code[data-v-2ab27b4c]{color:var(--color-text-muted);margin:-10px 0 0;font-size:.82rem}.specs[data-v-2ab27b4c]{background:var(--color-surface);border:var(--pd-card-border);border-radius:var(--pd-card-radius);box-shadow:var(--pd-card-shadow);grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;padding:14px 8px;display:grid}.spec-cell[data-v-2ab27b4c]{text-align:center;flex-direction:column;align-items:center;gap:6px;min-width:0;display:flex}.spec-icon[data-v-2ab27b4c]{color:#98a2ad;place-items:center;width:22px;height:22px;display:grid}.spec-icon svg[data-v-2ab27b4c]{width:22px;height:22px}.spec-cell strong[data-v-2ab27b4c]{color:var(--color-text);text-overflow:ellipsis;max-width:100%;font-size:.7rem;font-weight:600;line-height:1.4;overflow:hidden}.spec-cell span[data-v-2ab27b4c]{color:#98a2ad;font-size:.7rem}.specs-more[data-v-2ab27b4c]{color:#8b939c;cursor:pointer;background:0 0;border:none;align-self:center;align-items:center;gap:4px;padding:0;font-size:.8rem;font-weight:500;display:inline-flex}.specs-more__chevron[data-v-2ab27b4c]{width:12px;height:12px}.specs-more__chevron.is-open[data-v-2ab27b4c]{transform:rotate(180deg)}.specs-extra[data-v-2ab27b4c]{color:var(--color-text-muted);background:#f6f7f8;border-radius:12px;padding:12px 14px;font-size:.82rem}.specs-extra p[data-v-2ab27b4c]{margin:0 0 6px}.specs-extra p[data-v-2ab27b4c]:last-child{margin:0}.pd-section[data-v-2ab27b4c]{flex-direction:column;gap:10px;display:flex}.pd-section--boxed[data-v-2ab27b4c]{background:var(--color-surface);border:var(--pd-card-border);border-radius:var(--pd-card-radius);box-shadow:var(--pd-card-shadow);padding:12px 14px}.section-head[data-v-2ab27b4c]{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.section-head h2[data-v-2ab27b4c],.section-title[data-v-2ab27b4c]{margin:0;font-size:.95rem;font-weight:700}.section-head span[data-v-2ab27b4c]{color:#8b939c;font-size:.78rem}.colors[data-v-2ab27b4c]{padding:4px 2px;flex-wrap:nowrap;gap:14px;padding-inline-start:20px;display:flex;overflow-x:auto}.color-dot[data-v-2ab27b4c]{appearance:none;width:22px;height:22px;box-shadow:none;cursor:pointer;box-sizing:border-box;background-position:50%;background-size:cover;border:1px solid #00000014;border-radius:999px;flex-shrink:0;padding:0}.color-dot--active[data-v-2ab27b4c]{border-color:#0000;box-shadow:0 0 0 2px #fff,0 0 0 3.5px #0a353c}.tags[data-v-2ab27b4c]{flex-wrap:wrap;justify-content:flex-start;gap:8px;display:flex}.tag[data-v-2ab27b4c],button.tag[data-v-2ab27b4c]{appearance:none;border:var(--pd-card-border);background:var(--color-surface);color:#6b7280;letter-spacing:0;white-space:nowrap;height:32px;min-height:32px;box-shadow:var(--pd-card-shadow);border-radius:6px;outline:none;justify-content:center;align-items:center;padding:0 16px;font-size:.8125rem;font-weight:400;line-height:1;display:inline-flex}button.tag[data-v-2ab27b4c]{cursor:default;font-family:inherit}button.tag--link[data-v-2ab27b4c]{cursor:pointer}button.tag--link[data-v-2ab27b4c]:hover{background:var(--color-surface)}.roll-field[data-v-2ab27b4c]{border:var(--pd-card-border);background:var(--color-surface);width:fit-content;max-width:100%;box-shadow:var(--pd-card-shadow);color:#6b7280;border-radius:6px;align-items:center;padding:0 16px;font-size:.9rem;display:inline-flex}.pd-footer[data-v-2ab27b4c]{padding:12px var(--page-padding) calc(12px + env(safe-area-inset-bottom,0));background:var(--color-surface);border-top:1px solid var(--color-border);grid-template-columns:1.2fr 1fr;align-items:start;gap:8px;display:grid;position:sticky;bottom:0}.pd-footer__primary[data-v-2ab27b4c]{flex-direction:column;display:flex}.btn-secondary[data-v-2ab27b4c],.btn-primary[data-v-2ab27b4c]{cursor:pointer;border-radius:12px;justify-content:center;align-items:center;gap:6px;width:100%;height:48px;min-height:48px;font-weight:700;display:inline-flex}.btn-secondary[data-v-2ab27b4c]{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-primary)}.btn-secondary__icon[data-v-2ab27b4c]{object-fit:contain;flex-shrink:0;width:18px;height:18px;display:block}.btn-primary[data-v-2ab27b4c]{background:var(--color-accent-navy);color:#fff;border:none}.btn-primary[data-v-2ab27b4c]:disabled{opacity:.7;cursor:wait}.min-note[data-v-2ab27b4c]{text-align:center;color:var(--color-text-muted);margin:6px 0 0;font-size:.7rem}.empty[data-v-2ab27b4c]{padding:40px var(--page-padding);text-align:center}.pd-desk-head[data-v-2ab27b4c]{padding-inline:var(--page-padding);justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:4px;display:flex}.pd-desk-head__actions[data-v-2ab27b4c]{flex-shrink:0;gap:4px;display:flex}.pd-desk-catalog-btn[data-v-2ab27b4c]{margin-top:10px}@media (width>=768px){.product-detail[data-v-2ab27b4c]{max-width:var(--content-max-width);width:100%;padding:8px var(--page-padding) 28px;box-sizing:border-box;margin-inline:auto}.pd-desk-head[data-v-2ab27b4c]{margin-bottom:12px;padding-inline:0}.pd-scroll[data-v-2ab27b4c]{padding-bottom:0}.gallery__main[data-v-2ab27b4c]{border-radius:var(--radius-lg);height:360px;overflow:hidden}.gallery__thumbs[data-v-2ab27b4c]{margin-inline:0}.pd-body[data-v-2ab27b4c]{padding-inline:0}.product-page__layout[data-v-2ab27b4c]{grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:24px;display:grid}.product-page__sidebar[data-v-2ab27b4c]{position:sticky;top:16px}.cart-summary-panel__btn .btn-primary[data-v-2ab27b4c]{width:100%}}@media (width>=1200px){.product-page__layout[data-v-2ab27b4c]{grid-template-columns:minmax(0,1fr) 340px;gap:28px}.gallery__main[data-v-2ab27b4c]{height:420px}} diff --git a/dist/assets/ProductsView-CQle6SsP.css b/dist/assets/ProductsView-CQle6SsP.css deleted file mode 100644 index d55aa42..0000000 --- a/dist/assets/ProductsView-CQle6SsP.css +++ /dev/null @@ -1 +0,0 @@ -.products-page[data-v-c3ba0821]{background:var(--color-bg);position:relative}.nav-filter[data-v-c3ba0821]{cursor:pointer;width:40px;height:40px;color:var(--color-text);background:0 0;border:none;place-items:center;display:grid}.products-scroll[data-v-c3ba0821]{padding:8px var(--page-padding) 24px;flex-direction:column;gap:12px;display:flex}.cat-banner[data-v-c3ba0821]{isolation:isolate;border-radius:var(--radius-lg);background:linear-gradient(100deg, rgba(var(--color-primary-rgb), .75), rgba(var(--color-primary-rgb), .35)), #2f3430;color:#fff;background-position:top;background-repeat:no-repeat;background-size:cover;justify-content:space-between;align-items:center;gap:16px;min-height:112px;padding:18px 20px;display:flex;position:relative;overflow:hidden}.cat-banner--photo[data-v-c3ba0821]:before{content:"";z-index:0;pointer-events:none;background:linear-gradient(90deg,#00000094 0%,#00000047 42%,#00000014 68%,#0000 100%);position:absolute;inset:0}.cat-banner__copy[data-v-c3ba0821]{z-index:1;text-align:start;flex:1;min-width:0;position:relative}.cat-banner__lead[data-v-c3ba0821]{opacity:.95;text-shadow:0 1px 6px #00000059;margin:0 0 2px;font-size:.82rem;font-weight:500;line-height:1.4}.cat-banner__title[data-v-c3ba0821]{text-shadow:0 1px 8px #00000059;margin:0 0 6px;font-size:1.35rem;font-weight:700;line-height:1.25}.cat-banner__tagline[data-v-c3ba0821]{opacity:.92;text-shadow:0 1px 6px #00000059;margin:0;font-size:.78rem;font-weight:400;line-height:1.5}.cat-banner__icon-ring[data-v-c3ba0821]{z-index:1;background:#00000029;border:1.5px solid #ffffffe0;border-radius:999px;flex-shrink:0;place-items:center;width:56px;height:56px;display:grid;position:relative;box-shadow:inset 0 0 0 1px #ffffff14}.chips[data-v-c3ba0821]{gap:8px;display:flex;overflow-x:auto}.chip[data-v-c3ba0821]{border-radius:var(--radius-lg);background:var(--color-bg);color:var(--color-text);white-space:nowrap;cursor:pointer;border:none;padding:8px 14px;font-size:.8rem}.chip--active[data-v-c3ba0821]{background:var(--color-primary);color:#fff}.list-meta[data-v-c3ba0821]{color:var(--color-text-muted);justify-content:space-between;align-items:center;font-size:.8rem;display:flex}.list-meta__sort[data-v-c3ba0821]{color:inherit;font:inherit;cursor:pointer;background:0 0;border:none;align-items:center;gap:4px;padding:0;display:inline-flex}.list-meta__sort-icon[data-v-c3ba0821]{flex-shrink:0;line-height:0;display:inline-flex}.list-meta__sort-badge[data-v-c3ba0821]{font-variant-numeric:tabular-nums}.product-item[data-v-c3ba0821]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);cursor:pointer;grid-template-columns:112px 1fr;align-items:stretch;gap:12px;padding:12px;display:grid}.product-item__image[data-v-c3ba0821]{background:linear-gradient(145deg,#2a3544,#111827) 50%/cover;border-radius:12px;min-height:112px}.product-item__body[data-v-c3ba0821]{flex-direction:column;gap:6px;min-width:0;display:flex}.product-item__head[data-v-c3ba0821]{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.product-item__title[data-v-c3ba0821]{flex-wrap:wrap;align-items:center;gap:6px;min-width:0;display:flex}.product-item__title strong[data-v-c3ba0821]{color:var(--color-text);font-size:.9375rem;font-weight:700;line-height:1.4}.new-tag[data-v-c3ba0821]{background:var(--color-primary);color:#fff;white-space:nowrap;border-radius:6px;padding:2px 8px;font-size:.65rem;font-weight:700}.bookmark[data-v-c3ba0821]{cursor:pointer;background:0 0;border:none;flex-shrink:0;place-items:center;width:28px;height:28px;margin-inline-start:auto;padding:0;display:grid}.product-item__specs[data-v-c3ba0821]{color:var(--color-text-muted);text-align:start;flex-direction:column;gap:2px;margin:0;padding:0;font-size:.75rem;line-height:1.55;list-style:none;display:flex}.swatches[data-v-c3ba0821]{flex-wrap:wrap;gap:6px;margin-top:2px;display:flex}.swatch[data-v-c3ba0821]{background-position:50%;background-size:cover;border:1px solid #00000014;border-radius:999px;width:14px;height:14px}.details-link[data-v-c3ba0821]{color:var(--color-info);cursor:pointer;background:0 0;border:none;align-self:flex-end;align-items:center;gap:2px;margin-top:auto;padding:0;font-size:.75rem;display:inline-flex}.empty-list[data-v-c3ba0821]{text-align:center;color:var(--color-text-muted);margin:12px 0 0} diff --git a/dist/assets/ProductsView-DRFfnXs-.css b/dist/assets/ProductsView-DRFfnXs-.css new file mode 100644 index 0000000..ce3ff85 --- /dev/null +++ b/dist/assets/ProductsView-DRFfnXs-.css @@ -0,0 +1 @@ +.products-page[data-v-693d3912]{background:var(--color-bg);position:relative}.nav-filter[data-v-693d3912]{cursor:pointer;width:40px;height:40px;color:var(--color-text);background:0 0;border:none;place-items:center;display:grid}.nav-filter--active[data-v-693d3912]{color:var(--color-primary)}.products-desk-head[data-v-693d3912]{padding-inline:var(--page-padding);justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:4px;display:flex}.products-desk-head__copy[data-v-693d3912]{min-width:0}.products-desk-head__filter[data-v-693d3912]{border:1px solid var(--color-border);background:var(--color-surface);width:auto;min-width:40px;height:40px;font:inherit;border-radius:999px;align-items:center;gap:6px;padding:0 14px;font-size:.8125rem;font-weight:600;display:inline-flex}.products-filter-panel[data-v-693d3912]{z-index:200;background:#00000073;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.products-filter-sheet[data-v-693d3912]{background:var(--color-surface);width:100%;max-width:520px;max-height:min(88dvh,640px);color:var(--color-text);padding:10px 16px calc(16px + env(safe-area-inset-bottom,0px));box-shadow:var(--shadow-md);border-radius:20px 20px 0 0;flex-direction:column;gap:16px;display:flex;overflow-y:auto}.products-filter-sheet__handle[data-v-693d3912]{background:var(--color-border);border-radius:999px;width:40px;height:4px;margin:4px auto 0}.products-filter-sheet__head[data-v-693d3912]{justify-content:space-between;align-items:center;gap:8px;display:flex}.products-filter-sheet__head h2[data-v-693d3912]{margin:0;font-size:1.0625rem;font-weight:700}.products-filter-sheet__close[data-v-693d3912]{background:var(--color-bg);width:36px;height:36px;color:var(--color-text);cursor:pointer;border:none;border-radius:10px;font-size:1.4rem;line-height:1}.products-filter-section[data-v-693d3912]{flex-direction:column;gap:8px;display:flex}.products-filter-section__title[data-v-693d3912]{font-size:.875rem;font-weight:700}.field-select[data-v-693d3912]{position:relative}.field-select__trigger[data-v-693d3912]{width:100%;height:var(--btn-height);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text);font:inherit;text-align:start;cursor:pointer;justify-content:space-between;align-items:center;gap:8px;padding:0 14px;font-size:.9375rem;transition:border-color .15s;display:flex}.field-select__trigger.is-open[data-v-693d3912]{border-color:var(--color-primary)}.field-select__trigger .is-placeholder[data-v-693d3912]{color:var(--color-text-muted)}.field-select__chevron[data-v-693d3912]{width:12px;height:12px;color:var(--color-text-muted);flex-shrink:0;transition:transform .15s}.field-select__trigger.is-open .field-select__chevron[data-v-693d3912]{transform:rotate(180deg)}.field-select__menu[data-v-693d3912]{inset-inline:0;z-index:20;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);max-height:220px;margin:0;padding:6px;list-style:none;position:absolute;top:calc(100% + 6px);overflow-y:auto}.field-select__option[data-v-693d3912]{border-radius:var(--radius-sm);width:100%;color:var(--color-text);font:inherit;text-align:start;cursor:pointer;background:0 0;border:none;padding:10px 12px;font-size:.875rem;display:block}.field-select__option.is-active[data-v-693d3912]{background:var(--color-primary-light);color:var(--color-primary);font-weight:600}.products-filter-actions[data-v-693d3912]{flex-direction:column;gap:10px;margin-top:4px;display:flex}.products-filter-clear[data-v-693d3912],.products-filter-link[data-v-693d3912]{color:var(--color-info);font:inherit;cursor:pointer;background:0 0;border:none;padding:4px 0;font-size:.875rem;font-weight:600}.products-filter-clear[data-v-693d3912]{color:var(--color-text-muted)}.products-filter-sheet-enter-active[data-v-693d3912],.products-filter-sheet-leave-active[data-v-693d3912]{transition:opacity .2s}.products-filter-sheet-enter-active .products-filter-sheet[data-v-693d3912],.products-filter-sheet-leave-active .products-filter-sheet[data-v-693d3912]{transition:transform .24s}.products-filter-sheet-enter-from[data-v-693d3912],.products-filter-sheet-leave-to[data-v-693d3912]{opacity:0}.products-filter-sheet-enter-from .products-filter-sheet[data-v-693d3912],.products-filter-sheet-leave-to .products-filter-sheet[data-v-693d3912]{transform:translateY(100%)}.products-scroll[data-v-693d3912]{padding:8px var(--page-padding) 24px;flex-direction:column;gap:12px;display:flex}.cat-banner[data-v-693d3912]{isolation:isolate;border-radius:var(--radius-lg);background:linear-gradient(100deg, rgba(var(--color-primary-rgb), .75), rgba(var(--color-primary-rgb), .35)), #2f3430;color:#fff;background-position:50%;background-repeat:no-repeat;background-size:cover;flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;min-height:148px;display:flex;position:relative;overflow:hidden}.cat-banner--photo[data-v-693d3912]{aspect-ratio:2.35;background-position:50%;justify-content:flex-start;align-items:flex-end;min-height:156px;max-height:196px}.cat-banner--photo[data-v-693d3912]:before{content:"";z-index:0;pointer-events:none;background:linear-gradient(#0000 12%,#0000002e 38%,#0000007a 66%,#000c 100%);position:absolute;inset:0}.cat-banner[data-v-693d3912]:not(.cat-banner--photo):before{content:"";z-index:0;pointer-events:none;background:linear-gradient(270deg,#0000006b 0%,#0000002e 42%,#0000 72%);position:absolute;inset:0}.cat-banner__content[data-v-693d3912]{z-index:1;text-align:start;flex-direction:column;gap:4px;width:100%;min-width:0;padding:18px 20px;display:flex;position:relative}.cat-banner:not(.cat-banner--photo) .cat-banner__content[data-v-693d3912]{max-width:72%}.cat-banner__lead[data-v-693d3912]{opacity:.95;overflow-wrap:anywhere;text-shadow:0 1px 6px #00000073;margin:0;font-size:.82rem;font-weight:500;line-height:1.45}.cat-banner__title-row[data-v-693d3912]{align-items:center;gap:10px;min-width:0;display:flex}.cat-banner__title[data-v-693d3912]{overflow-wrap:anywhere;text-shadow:0 1px 8px #00000073;margin:0;font-size:1.35rem;font-weight:700;line-height:1.3}.cat-banner__tagline[data-v-693d3912]{opacity:.96;overflow-wrap:anywhere;text-shadow:0 1px 6px #00000073;margin:0;font-size:.8125rem;font-weight:400;line-height:1.55}.cat-banner__icon-ring[data-v-693d3912]{background:#ffffff24;border:1.5px solid #ffffffe6;border-radius:999px;flex-shrink:0;place-items:center;width:48px;height:48px;display:grid;box-shadow:inset 0 0 0 1px #ffffff14}.cat-banner__icon-ring--aside[data-v-693d3912]{z-index:1;background:#00000029;flex-shrink:0;width:56px;height:56px;margin-inline:0 20px;position:relative}.chips-row[data-v-693d3912]{margin-inline:calc(-1 * var(--page-padding));padding-inline:var(--page-padding);-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-shrink:0;overflow-x:auto}.chips-row[data-v-693d3912]::-webkit-scrollbar{display:none}.chips[data-v-693d3912]{align-items:center;gap:8px;min-height:40px;padding:2px 0 6px;display:inline-flex}.chip[data-v-693d3912]{box-sizing:border-box;border:1px solid var(--color-border);background:var(--color-tab-inactive-bg);height:36px;color:var(--color-tab-inactive-text);white-space:nowrap;cursor:pointer;font:inherit;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;padding:0 16px;font-size:.8125rem;font-weight:600;line-height:1;display:inline-flex}.chip--active[data-v-693d3912]{border-color:var(--color-primary);background:var(--color-primary);color:#fff}.list-meta[data-v-693d3912]{color:var(--color-text-muted);flex-shrink:0;justify-content:space-between;align-items:center;font-size:.8rem;display:flex}.list-meta__sort[data-v-693d3912]{color:inherit;font:inherit;cursor:pointer;background:0 0;border:none;align-items:center;gap:4px;padding:0;display:inline-flex}.list-meta__sort-icon[data-v-693d3912]{flex-shrink:0;line-height:0;display:inline-flex}.list-meta__sort-badge[data-v-693d3912]{font-variant-numeric:tabular-nums}.product-item[data-v-693d3912]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);cursor:pointer;grid-template-columns:112px 1fr;align-items:stretch;gap:12px;padding:12px;display:grid}.product-item__image[data-v-693d3912]{background:linear-gradient(145deg,#2a3544,#111827) 50%/cover;border-radius:12px;min-height:112px}.product-item__body[data-v-693d3912]{flex-direction:column;gap:6px;min-width:0;display:flex}.product-item__head[data-v-693d3912]{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.product-item__title[data-v-693d3912]{flex-wrap:wrap;align-items:center;gap:6px;min-width:0;display:flex}.product-item__title strong[data-v-693d3912]{color:var(--color-text);font-size:.9375rem;font-weight:700;line-height:1.4}.new-tag[data-v-693d3912]{background:var(--color-primary);color:#fff;white-space:nowrap;border-radius:6px;padding:2px 8px;font-size:.65rem;font-weight:700}.bookmark[data-v-693d3912]{cursor:pointer;background:0 0;border:none;flex-shrink:0;place-items:center;width:28px;height:28px;margin-inline-start:auto;padding:0;display:grid}.product-item__specs[data-v-693d3912]{color:var(--color-text-muted);text-align:start;flex-direction:column;gap:2px;margin:0;padding:0;font-size:.75rem;line-height:1.55;list-style:none;display:flex}.swatches[data-v-693d3912]{flex-wrap:wrap;gap:6px;margin-top:2px;display:flex}.swatch[data-v-693d3912]{background-position:50%;background-size:cover;border:1px solid #00000014;border-radius:999px;width:14px;height:14px}.details-link[data-v-693d3912]{color:var(--color-info);cursor:pointer;background:0 0;border:none;align-self:flex-end;align-items:center;gap:2px;margin-top:auto;padding:0;font-size:.75rem;display:inline-flex}.empty-list[data-v-693d3912]{text-align:center;color:var(--color-text-muted);margin:12px 0 0}.products-list[data-v-693d3912]{flex-direction:column;gap:12px;display:flex}@media (width>=768px){.products-page[data-v-693d3912]{max-width:var(--content-max-width);width:100%;padding:8px var(--page-padding) 0;box-sizing:border-box;margin-inline:auto}.products-desk-head[data-v-693d3912]{margin-bottom:12px;padding-inline:0}.products-filter-desk[data-v-693d3912]{margin-bottom:12px;overflow:visible}.products-filter-sheet--desk[data-v-693d3912]{border-radius:var(--radius-lg);border:1px solid var(--color-border);width:100%;max-width:none;max-height:none;box-shadow:var(--shadow-card);background:var(--color-surface);grid-template-columns:repeat(2,minmax(220px,1fr)) auto;align-items:end;gap:16px;padding:16px 20px;display:grid;overflow:visible}.products-filter-sheet--desk .products-filter-sheet__head[data-v-693d3912]{grid-column:1/-1}.products-filter-actions--desk[data-v-693d3912]{flex-direction:row;align-items:center;gap:12px;margin-top:0}.products-scroll[data-v-693d3912]{padding:8px 0 28px}.products-list[data-v-693d3912]{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.product-item[data-v-693d3912]{grid-template-columns:120px 1fr;min-height:140px}.product-item__image[data-v-693d3912]{min-height:116px}.chips-row[data-v-693d3912]{margin-inline:0;padding-inline:0}.cat-banner--photo[data-v-693d3912]{max-height:220px}}@media (width>=1200px){.products-list[data-v-693d3912]{grid-template-columns:repeat(3,minmax(0,1fr))}} diff --git a/dist/assets/ProductsView-Dhc6PK3T.js b/dist/assets/ProductsView-Dhc6PK3T.js deleted file mode 100644 index 85c7ba0..0000000 --- a/dist/assets/ProductsView-Dhc6PK3T.js +++ /dev/null @@ -1 +0,0 @@ -import{A as e,Ct as t,D as n,Et as r,I as ee,L as te,M as i,N as a,O as o,P as s,R as c,St as l,Tt as u,Y as d,Z as f,_ as p,et as ne,g as re,j as m,mt as h,n as g,q as ie,rt as ae,tt as _,z as v}from"./BasicIcon-C6boaehV.js";import{b as oe,l as se,o as ce}from"./index-fdhs4HNc.js";import{t as le}from"./IconFilter-D9NdLZ7w.js";import{t as ue}from"./IconDiamond-Bgv1zgqc.js";import{t as de}from"./PageSkeleton-sKuEY4NI.js";import{t as fe}from"./crm-DmqasSZ_.js";import{n as pe}from"./colorSwatch-BgOH1LE5.js";import{t as me}from"./PageHeader-Cd04Z6F_.js";import{t as he}from"./SearchField-CRmbblW7.js";import{n as ge,t as y}from"./categoryIcons-eyHye9W7.js";import{t as _e}from"./IconHeart-CZMe29Nz.js";var ve={class:`page products-page`},ye={class:`page__scroll page__scroll--with-nav products-scroll`},be={key:1},xe={key:0,class:`cat-banner__icon-ring`,"aria-hidden":`true`},Se={class:`cat-banner__copy`},Ce={key:0,class:`cat-banner__lead`},we={class:`cat-banner__title`},b={key:1,class:`cat-banner__tagline`},x={class:`chips`,role:`tablist`,"aria-label":`فصل`},S=[`onClick`],C={class:`list-meta`},w=[`aria-label`],T=[`onClick`],E={class:`product-item__body`},D={class:`product-item__head`},O={class:`product-item__title`},k={key:0,class:`new-tag`},Te=[`aria-label`,`aria-pressed`,`onClick`],Ee={class:`product-item__specs`},De={class:`swatches`},Oe=[`onClick`],ke={key:0,class:`empty-list`},Ae=`مشاهده محصولات`,A=g(v({__name:`ProductsView`,setup(g){let v={suit:`شیک، بادوام و رسمی`,trousers:`مناسب شلوار و مصارف روزانه`,shirt:`سبک و مناسب پیراهن`},A=re(),j=p(),M=fe(),N=se(),P=e(()=>String(A.query.categoryId??``)),F=e(()=>String(A.query.catalogId??``)),I=e(()=>String(A.query.companyId??``)),L=e(()=>String(A.query.season??``)),R=e(()=>String(A.query.q??``)),z=h(String(A.query.q??``)),B=h([]),V=h([]),H=h(``),U=h(!0),W=h(null),G=h(`newest`),K=e(()=>F.value&&H.value?H.value:P.value?M.usageCategories.find(e=>e.id===P.value)?.title??`محصولات`:L.value?V.value.find(e=>e.id===L.value)?.title??`محصولات`:R.value?`جستجو: ${R.value}`:`همه محصولات`);function je(e){let t=e.trim();return t.startsWith(`پارچه‌های `)?{lead:`پارچه‌های`,headline:t.slice(10)}:{lead:void 0,headline:t}}function Me(e){return e.icon||(e.id===`summer`?`bolt`:e.id===`winter`?`feather`:`diamond`)}let q=e(()=>{if(P.value){let e=M.usageCategories.find(e=>e.id===P.value),t=je(e?.title??K.value),n=v[P.value]??(e?.subtitle&&e.subtitle!==Ae?e.subtitle:void 0);return{...t,tagline:n}}if(L.value){let e=V.value.find(e=>e.id===L.value);return{lead:void 0,headline:e?.title??K.value,tagline:e?.description||`فیلتر شده بر اساس فصل`}}return F.value?{lead:`کالیته`,headline:H.value||K.value,tagline:`انتخاب محصول از کالیته`}:{lead:void 0,headline:K.value,tagline:R.value?`نتایج جستجو`:`مشاهده و ثبت سفارش`}}),J=e(()=>{if(P.value){let e=M.usageCategories.find(e=>e.id===P.value);if(e)return y(ge(e),oe)}if(L.value){let e=V.value.find(e=>e.id===L.value);if(e)return y(Me(e),ue)}return null}),Y=e(()=>{if(P.value){let e=M.usageCategories.find(e=>e.id===P.value);if(e?.imageUrl)return e.imageUrl}if(L.value){let e=V.value.find(e=>e.id===L.value);if(e?.imageUrl)return e.imageUrl}if(F.value)return B.value.find(e=>e.imageUrl)?.imageUrl}),Ne=e(()=>Y.value?{backgroundImage:`url(${Y.value})`}:void 0),Pe=e(()=>!P.value&&!F.value),X=e(()=>{let e=R.value.trim().toLowerCase(),t=[...B.value];return e&&(t=t.filter(t=>t.name.toLowerCase().includes(e)||t.code.toLowerCase().includes(e)||(t.composition||``).toLowerCase().includes(e))),G.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 Fe(){G.value=G.value===`newest`?`name`:`newest`}let Ie=e(()=>G.value===`newest`?`مرتب‌سازی: جدیدترین`:`مرتب‌سازی: نام`);function Le(e){z.value=e,j.replace({path:`/products`,query:{...P.value?{categoryId:P.value}:{},...F.value?{catalogId:F.value}:{},...I.value?{companyId:I.value}:{},...L.value?{season:L.value}:{},...e.trim()?{q:e.trim()}:{}}})}async function Z(){U.value=!0,W.value=null;try{if(!M.usageCategories.length||!V.value.length){let e=await M.loadCategories();V.value=e.seasons}B.value=await M.loadBrowseProducts({categoryId:P.value||void 0,season:L.value||void 0,catalogId:F.value||void 0,companyId:I.value||void 0});let e=B.value[0];H.value=e?.catalogName||e?.catalogCode||``}catch(e){W.value=e instanceof Error?e.message:`بارگذاری محصولات ناموفق بود.`,B.value=[]}finally{U.value=!1}}ie(async()=>{await N.hydrate(),await Z()}),_([P,L,F,I],Z),_(R,e=>{z.value=e});function Q(e){j.replace({path:`/products`,query:{...P.value?{categoryId:P.value}:{},...F.value?{catalogId:F.value}:{},...I.value?{companyId:I.value}:{},...e?{season:e}:{},...R.value?{q:R.value}:{}}})}function $(e){j.push({path:`/product`,query:{id:e}})}function Re(e){return V.value.find(t=>t.id===e)?.title??e}function ze(e){N.toggle(e)}return(e,p)=>(d(),s(`div`,ve,[c(me,{title:K.value,"show-back":``,centered:``,onBack:p[1]||=e=>l(j).back()},{trailing:ae(()=>[m(`button`,{type:`button`,class:`nav-filter`,"aria-label":`فیلتر`,onClick:p[0]||=e=>l(j).push(`/categories`)},[c(le,{size:18})])]),_:1},8,[`title`]),m(`div`,ye,[Pe.value?(d(),i(he,{key:0,"model-value":z.value,placeholder:`جستجو نام یا کد محصول...`,"onUpdate:modelValue":Le},null,8,[`model-value`])):a(``,!0),W.value?(d(),s(`p`,be,r(W.value),1)):U.value?(d(),i(de,{key:2,variant:`grid`})):(d(),s(o,{key:3},[m(`section`,{class:t([`cat-banner`,{"cat-banner--photo":!!Y.value}]),style:u(Ne.value)},[J.value?(d(),s(`div`,xe,[(d(),i(ne(J.value),{size:26,color:`#ffffff`}))])):a(``,!0),m(`div`,Se,[q.value.lead?(d(),s(`p`,Ce,r(q.value.lead),1)):a(``,!0),m(`h2`,we,r(q.value.headline),1),q.value.tagline?(d(),s(`p`,b,r(q.value.tagline),1)):a(``,!0)])],6),m(`div`,x,[m(`button`,{type:`button`,class:t([`chip`,{"chip--active":!L.value}]),onClick:p[2]||=e=>Q(``)},` همه `,2),(d(!0),s(o,null,f(V.value,e=>(d(),s(`button`,{key:e.id,type:`button`,class:t([`chip`,{"chip--active":L.value===e.id}]),onClick:t=>Q(e.id)},r(e.title),11,S))),128))]),m(`div`,C,[m(`span`,null,`تعداد محصولات: `+r(X.value.length.toLocaleString(`fa-IR`)),1),m(`button`,{type:`button`,class:`list-meta__sort`,"aria-label":Ie.value,onClick:Fe},[...p[3]||=[ee(`۱مرتب‌سازی`,3)]],8,w)]),(d(!0),s(o,null,f(X.value,e=>(d(),s(`article`,{key:e.id,class:`product-item`,onClick:t=>$(e.id)},[m(`div`,{class:`product-item__image`,style:u(e.imageUrl?{backgroundImage:`url(${e.imageUrl})`}:void 0)},null,4),m(`div`,E,[m(`div`,D,[m(`div`,O,[m(`strong`,null,r(e.name),1),e.isNew?(d(),s(`span`,k,`جدید`)):a(``,!0)]),m(`button`,{type:`button`,class:`bookmark`,"aria-label":l(N).isFavorite(e.id)?`حذف از علاقه‌مندی‌ها`:`افزودن به علاقه‌مندی‌ها`,"aria-pressed":l(N).isFavorite(e.id),onClick:n(t=>ze(e.id),[`stop`])},[c(_e,{size:18,filled:l(N).isFavorite(e.id),color:l(N).isFavorite(e.id)?`#0a353c`:`#9ca3af`},null,8,[`filled`,`color`])],8,Te)]),m(`ul`,Ee,[m(`li`,null,`عرض: `+r(e.widthCm.toLocaleString(`fa-IR`))+` سانتی‌متر`,1),m(`li`,null,`ترکیب: `+r(e.composition||`—`),1),m(`li`,null,`مناسب: `+r(Re(e.season)),1)]),m(`div`,De,[(d(!0),s(o,null,f(e.colors.slice(0,6),(t,n)=>(d(),s(`span`,{key:n,class:`swatch`,style:u(l(pe)(t,e.colorImages?.[n]||e.imageUrls?.[n]))},null,4))),128))]),m(`button`,{type:`button`,class:`details-link`,onClick:n(t=>$(e.id),[`stop`])},[p[4]||=te(` مشاهده جزئیات `,-1),c(ce,{size:14})],8,Oe)])],8,T))),128)),X.value.length?a(``,!0):(d(),s(`p`,ke,`محصولی در این دسته یافت نشد.`))],64))])]))}}),[[`__scopeId`,`data-v-c3ba0821`]]);export{A as default}; \ No newline at end of file diff --git a/dist/assets/ProductsView-xMKufARc.js b/dist/assets/ProductsView-xMKufARc.js new file mode 100644 index 0000000..8d45c87 --- /dev/null +++ b/dist/assets/ProductsView-xMKufARc.js @@ -0,0 +1 @@ +import{A as e,Ct as t,D as n,Dt as r,Et as i,I as ee,J as a,L as o,M as s,N as c,O as l,P as u,Q as d,R as f,X as p,Y as te,_ as ne,g as re,ht as m,it as h,j as g,k as ie,n as ae,nt as _,tt as oe,wt as v,y as se,z as y}from"./BasicIcon-Bnxm-DKk.js";import{t as b}from"./dist-CeuESLw-.js";import{T as ce,l as le,n as ue,o as de}from"./index-DB4cQnln.js";import{t as fe}from"./IconFilter-DHL8PKX0.js";import{t as pe}from"./IconDiamond-CGMEs3wg.js";import{t as me}from"./PageSkeleton-CpZ7eT1v.js";import{t as he}from"./crm-CZ7XH3z9.js";import{n as ge}from"./colorSwatch-BgOH1LE5.js";import{t as _e}from"./PageHeader-BxTTQB_F.js";import{t as ve}from"./SearchField-CGW0jRdh.js";import{n as ye,t as x}from"./categoryIcons-XvfZlu8n.js";import{t as be}from"./IconHeart-CiwVmqRC.js";var xe={class:`page products-page`},Se=[`aria-expanded`],Ce={class:`desktop-page__head desktop-only products-desk-head`},we={class:`products-desk-head__copy`},Te={class:`desktop-page__title`},Ee={class:`desktop-page__subtitle`},De={key:0,class:`products-filter-desk desktop-only`},Oe={class:`products-filter-sheet products-filter-sheet--desk`},ke={class:`products-filter-section`},Ae=[`aria-expanded`],je={key:0,class:`field-select__menu`,role:`listbox`,"aria-label":`دسته کاربرد`},Me=[`onClick`],Ne={class:`products-filter-section`},Pe=[`aria-expanded`],Fe={key:0,class:`field-select__menu`,role:`listbox`,"aria-label":`فصل`},Ie=[`onClick`],Le={class:`products-filter-actions products-filter-actions--desk`},Re={class:`products-filter-section`},ze=[`aria-expanded`],Be={key:0,class:`field-select__menu`,role:`listbox`,"aria-label":`دسته کاربرد`},Ve=[`aria-selected`],He=[`aria-selected`,`onClick`],Ue={class:`products-filter-section`},We=[`aria-expanded`],Ge={key:0,class:`field-select__menu`,role:`listbox`,"aria-label":`فصل`},Ke=[`aria-selected`],qe=[`aria-selected`,`onClick`],Je={class:`products-filter-actions`},Ye={class:`page__scroll page__scroll--with-nav products-scroll`},Xe={key:1},Ze={class:`cat-banner__content`},Qe={key:0,class:`cat-banner__lead`},$e={key:1,class:`cat-banner__title-row`},et={key:0,class:`cat-banner__icon-ring`,"aria-hidden":`true`},tt={key:1,class:`cat-banner__title`},nt={key:2,class:`cat-banner__title`},rt={key:3,class:`cat-banner__tagline`},it={key:0,class:`cat-banner__icon-ring cat-banner__icon-ring--aside`,"aria-hidden":`true`},at={class:`chips-row`},ot={class:`chips`,role:`tablist`,"aria-label":`فصل`},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:0,class:`empty-list`},S=ae(y({__name:`ProductsView`,setup(ae){let y=re(),S=ne(),C=he(),w=le(),T=e(()=>String(y.query.categoryId??``)),E=e(()=>String(y.query.catalogId??``)),D=e(()=>String(y.query.companyId??``)),O=e(()=>String(y.query.season??``)),k=e(()=>String(y.query.q??``)),A=m(String(y.query.q??``)),j=m([]),M=m(``),N=m(!0),P=m(null),F=m(`newest`),I=m(!1),L=m(``),R=m(``),z=m(!1),B=m(!1),xt=m(null),St=m(null),V=m(null),H=m(null),U=e(()=>!E.value),W=e(()=>!!T.value||!!O.value),G=e(()=>L.value?C.usageCategories.find(e=>e.id===L.value)?.title??`همه دسته‌ها`:`همه دسته‌ها`),Ct=e(()=>R.value?C.seasonCategories.find(e=>e.id===R.value)?.title??`همه فصول`:`همه فصول`),K=e(()=>E.value&&M.value?M.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 wt(e){let t=e.trim();return t.startsWith(`پارچه‌های `)?{lead:`پارچه‌های`,headline:t.slice(10)}:{lead:void 0,headline:t}}function Tt(e){return e.icon||(e.id===`summer`?`bolt`:e.id===`winter`?`feather`:`diamond`)}let q=e(()=>{if(T.value){let e=C.usageCategories.find(e=>e.id===T.value),t=wt(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:M.value||K.value,tagline:`انتخاب محصول از کالیته`,showIcon:!0}:{lead:void 0,headline:K.value,tagline:k.value?`نتایج جستجو`:`مشاهده و ثبت سفارش`,showIcon:!1}}),J=e(()=>{if(q.value.showIcon===!1)return null;if(T.value){let e=C.usageCategories.find(e=>e.id===T.value);if(e)return x(ye(e),ce)}if(O.value){let e=C.seasonCategories.find(e=>e.id===O.value);if(e)return x(Tt(e),pe)}return null}),Y=e(()=>{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 j.value.find(e=>e.imageUrl)?.imageUrl}),Et=e(()=>Y.value?{backgroundImage:`url(${Y.value})`}:void 0),Dt=e(()=>!T.value&&!E.value),X=e(()=>{let e=k.value.trim().toLowerCase(),t=[...j.value];return e&&(t=t.filter(t=>t.name.toLowerCase().includes(e)||t.code.toLowerCase().includes(e)||(t.composition||``).toLowerCase().includes(e))),F.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 Ot(){F.value=F.value===`newest`?`name`:`newest`}let kt=e(()=>F.value===`newest`?`مرتب‌سازی: جدیدترین`:`مرتب‌سازی: نام`);function At(e){A.value=e,S.replace({path:`/products`,query:{...T.value?{categoryId:T.value}:{},...E.value?{catalogId:E.value}:{},...D.value?{companyId:D.value}:{},...O.value?{season:O.value}:{},...e.trim()?{q:e.trim()}:{}}})}async function jt(){N.value=!0,P.value=null;try{await C.loadCategories(),j.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=j.value[0];M.value=e?.catalogName||e?.catalogCode||``}catch(e){P.value=e instanceof Error?e.message:`بارگذاری محصولات ناموفق بود.`,j.value=[]}finally{N.value=!1}}a(async()=>{await w.hydrate(),await jt()}),_([T,O,E,D],jt),_(k,e=>{A.value=e});function Mt(e){S.replace({path:`/products`,query:{...T.value?{categoryId:T.value}:{},...E.value?{catalogId:E.value}:{},...D.value?{companyId:D.value}:{},...e?{season:e}:{},...k.value?{q:k.value}:{}}})}function Nt(e){S.push({path:`/product`,query:{id:e}})}function Pt(e){return C.seasonCategories.find(t=>t.id===e)?.title??e}function Ft(e){w.toggle(e)}function It(){L.value=T.value,R.value=O.value,z.value=!1,B.value=!1,I.value=!0}function Z(){I.value=!1,z.value=!1,B.value=!1}function Lt(){B.value=!1,z.value=!z.value}function Rt(){z.value=!1,B.value=!B.value}function Q(e){L.value=e,z.value=!1}function $(e){R.value=e,B.value=!1}b(xt,()=>{z.value=!1}),b(St,()=>{B.value=!1}),b(V,()=>{z.value=!1}),b(H,()=>{B.value=!1});function zt(e,t){return{...e?{categoryId:e}:{},...t?{season:t}:{},...D.value?{companyId:D.value}:{},...k.value?{q:k.value}:{}}}function Bt(){S.replace({path:`/products`,query:zt(L.value,R.value)}),Z()}function Vt(){L.value=``,R.value=``,S.replace({path:`/products`,query:zt(``,``)}),Z()}return _(I,e=>{typeof window<`u`&&window.matchMedia(`(min-width: 768px)`).matches||(document.body.style.overflow=e?`hidden`:``)}),te(()=>{document.body.style.overflow=``}),(e,a)=>(p(),u(`div`,xe,[f(_e,{class:`mobile-only`,title:K.value,"show-back":``,centered:``,onBack:a[0]||=e=>t(S).back()},{trailing:h(()=>[U.value?(p(),u(`button`,{key:0,type:`button`,class:v([`nav-filter`,{"nav-filter--active":W.value}]),"aria-label":`فیلتر محصولات`,"aria-expanded":I.value,onClick:It},[f(fe,{size:18})],10,Se)):c(``,!0)]),_:1},8,[`title`]),g(`header`,Ce,[g(`div`,we,[g(`h1`,Te,r(K.value),1),g(`p`,Ee,r(q.value.tagline||(k.value?`نتایج جستجو`:`مشاهده و ثبت سفارش`)),1)])]),U.value?(p(),u(`div`,De,[g(`div`,Oe,[a[13]||=g(`header`,{class:`products-filter-sheet__head`},[g(`h2`,null,`فیلتر محصولات`)],-1),g(`label`,ke,[a[9]||=g(`span`,{class:`products-filter-section__title`},`دسته کاربرد`,-1),g(`div`,{ref_key:`categoryRootDesk`,ref:V,class:`field-select`},[g(`button`,{type:`button`,class:v([`field-select__trigger`,{"is-open":z.value}]),"aria-haspopup":`listbox`,"aria-expanded":z.value,onClick:Lt},[g(`span`,{class:v({"is-placeholder":!L.value})},r(G.value),3),a[8]||=g(`svg`,{class:`field-select__chevron`,viewBox:`0 0 12 12`,"aria-hidden":`true`},[g(`path`,{d:`M2.5 4.5 6 8l3.5-3.5`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.4`,"stroke-linecap":`round`})],-1)],10,Ae),z.value?(p(),u(`ul`,je,[g(`li`,null,[g(`button`,{type:`button`,role:`option`,class:v([`field-select__option`,{"is-active":!L.value}]),onClick:a[1]||=e=>Q(``)},` همه دسته‌ها `,2)]),(p(!0),u(l,null,d(t(C).usageCategories,e=>(p(),u(`li`,{key:e.id},[g(`button`,{type:`button`,role:`option`,class:v([`field-select__option`,{"is-active":L.value===e.id}]),onClick:t=>Q(e.id)},r(e.title),11,Me)]))),128))])):c(``,!0)],512)]),g(`label`,Ne,[a[11]||=g(`span`,{class:`products-filter-section__title`},`فصل`,-1),g(`div`,{ref_key:`seasonRootDesk`,ref:H,class:`field-select`},[g(`button`,{type:`button`,class:v([`field-select__trigger`,{"is-open":B.value}]),"aria-haspopup":`listbox`,"aria-expanded":B.value,onClick:Rt},[g(`span`,{class:v({"is-placeholder":!R.value})},r(Ct.value),3),a[10]||=g(`svg`,{class:`field-select__chevron`,viewBox:`0 0 12 12`,"aria-hidden":`true`},[g(`path`,{d:`M2.5 4.5 6 8l3.5-3.5`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.4`,"stroke-linecap":`round`})],-1)],10,Pe),B.value?(p(),u(`ul`,Fe,[g(`li`,null,[g(`button`,{type:`button`,role:`option`,class:v([`field-select__option`,{"is-active":!R.value}]),onClick:a[2]||=e=>$(``)},` همه فصول `,2)]),(p(!0),u(l,null,d(t(C).seasonCategories,e=>(p(),u(`li`,{key:e.id},[g(`button`,{type:`button`,role:`option`,class:v([`field-select__option`,{"is-active":R.value===e.id}]),onClick:t=>$(e.id)},r(e.title),11,Ie)]))),128))])):c(``,!0)],512)]),g(`div`,Le,[f(ue,{onClick:Bt},{default:h(()=>[...a[12]||=[o(`اعمال فیلتر`,-1)]]),_:1}),W.value?(p(),u(`button`,{key:0,type:`button`,class:`products-filter-clear`,onClick:Vt},` پاک کردن فیلترها `)):c(``,!0)])])])):c(``,!0),(p(),s(ie,{to:`body`},[f(se,{name:`products-filter-sheet`},{default:h(()=>[I.value&&U.value?(p(),u(`div`,{key:0,class:`products-filter-panel mobile-only`,role:`dialog`,"aria-modal":`true`,"aria-labelledby":`products-filter-title`,onClick:n(Z,[`self`])},[g(`div`,{class:`products-filter-sheet`,onClick:a[6]||=n(()=>{},[`stop`])},[a[20]||=g(`div`,{class:`products-filter-sheet__handle`,"aria-hidden":`true`},null,-1),g(`header`,{class:`products-filter-sheet__head`},[a[14]||=g(`h2`,{id:`products-filter-title`},`فیلتر محصولات`,-1),g(`button`,{type:`button`,class:`products-filter-sheet__close`,"aria-label":`بستن`,onClick:Z},` × `)]),g(`label`,Re,[a[16]||=g(`span`,{class:`products-filter-section__title`},`دسته کاربرد`,-1),g(`div`,{ref_key:`categoryRoot`,ref:xt,class:`field-select`},[g(`button`,{type:`button`,class:v([`field-select__trigger`,{"is-open":z.value}]),"aria-haspopup":`listbox`,"aria-expanded":z.value,onClick:Lt},[g(`span`,{class:v({"is-placeholder":!L.value})},r(G.value),3),a[15]||=g(`svg`,{class:`field-select__chevron`,viewBox:`0 0 12 12`,"aria-hidden":`true`},[g(`path`,{d:`M2.5 4.5 6 8l3.5-3.5`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.4`,"stroke-linecap":`round`})],-1)],10,ze),z.value?(p(),u(`ul`,Be,[g(`li`,null,[g(`button`,{type:`button`,role:`option`,class:v([`field-select__option`,{"is-active":!L.value}]),"aria-selected":!L.value,onClick:a[3]||=e=>Q(``)},` همه دسته‌ها `,10,Ve)]),(p(!0),u(l,null,d(t(C).usageCategories,e=>(p(),u(`li`,{key:e.id},[g(`button`,{type:`button`,role:`option`,class:v([`field-select__option`,{"is-active":L.value===e.id}]),"aria-selected":L.value===e.id,onClick:t=>Q(e.id)},r(e.title),11,He)]))),128))])):c(``,!0)],512)]),g(`label`,Ue,[a[18]||=g(`span`,{class:`products-filter-section__title`},`فصل`,-1),g(`div`,{ref_key:`seasonRoot`,ref:St,class:`field-select`},[g(`button`,{type:`button`,class:v([`field-select__trigger`,{"is-open":B.value}]),"aria-haspopup":`listbox`,"aria-expanded":B.value,onClick:Rt},[g(`span`,{class:v({"is-placeholder":!R.value})},r(Ct.value),3),a[17]||=g(`svg`,{class:`field-select__chevron`,viewBox:`0 0 12 12`,"aria-hidden":`true`},[g(`path`,{d:`M2.5 4.5 6 8l3.5-3.5`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.4`,"stroke-linecap":`round`})],-1)],10,We),B.value?(p(),u(`ul`,Ge,[g(`li`,null,[g(`button`,{type:`button`,role:`option`,class:v([`field-select__option`,{"is-active":!R.value}]),"aria-selected":!R.value,onClick:a[4]||=e=>$(``)},` همه فصول `,10,Ke)]),(p(!0),u(l,null,d(t(C).seasonCategories,e=>(p(),u(`li`,{key:e.id},[g(`button`,{type:`button`,role:`option`,class:v([`field-select__option`,{"is-active":R.value===e.id}]),"aria-selected":R.value===e.id,onClick:t=>$(e.id)},r(e.title),11,qe)]))),128))])):c(``,!0)],512)]),g(`div`,Je,[f(ue,{block:``,onClick:Bt},{default:h(()=>[...a[19]||=[o(`اعمال فیلتر`,-1)]]),_:1}),W.value?(p(),u(`button`,{key:0,type:`button`,class:`products-filter-clear`,onClick:Vt},` پاک کردن فیلترها `)):c(``,!0),g(`button`,{type:`button`,class:`products-filter-link`,onClick:a[5]||=e=>{t(S).push(`/categories`),Z()}},` مشاهده همه دسته‌بندی‌ها `)])])])):c(``,!0)]),_:1})])),g(`div`,Ye,[Dt.value?(p(),s(ve,{key:0,"model-value":A.value,placeholder:`جستجو نام یا کد محصول...`,"onUpdate:modelValue":At},null,8,[`model-value`])):c(``,!0),P.value?(p(),u(`p`,Xe,r(P.value),1)):N.value?(p(),s(me,{key:2,variant:`grid`})):(p(),u(l,{key:3},[g(`section`,{class:v([`cat-banner`,{"cat-banner--photo":!!Y.value}]),style:i(Et.value)},[g(`div`,Ze,[q.value.lead?(p(),u(`p`,Qe,r(q.value.lead),1)):c(``,!0),q.value.headline||J.value&&Y.value?(p(),u(`div`,$e,[J.value&&Y.value?(p(),u(`span`,et,[(p(),s(oe(J.value),{size:22,color:`#ffffff`}))])):c(``,!0),q.value.headline?(p(),u(`h2`,tt,r(q.value.headline),1)):c(``,!0)])):q.value.headline?(p(),u(`h2`,nt,r(q.value.headline),1)):c(``,!0),q.value.tagline?(p(),u(`p`,rt,r(q.value.tagline),1)):c(``,!0)]),J.value&&!Y.value?(p(),u(`span`,it,[(p(),s(oe(J.value),{size:26,color:`#ffffff`}))])):c(``,!0)],6),g(`div`,at,[g(`div`,ot,[g(`button`,{type:`button`,class:v([`chip`,{"chip--active":!O.value}]),onClick:a[7]||=e=>Mt(``)},` همه `,2),(p(!0),u(l,null,d(t(C).seasonCategories,e=>(p(),u(`button`,{key:e.id,type:`button`,class:v([`chip`,{"chip--active":O.value===e.id}]),onClick:t=>Mt(e.id)},r(e.title),11,st))),128))])]),g(`div`,ct,[g(`span`,null,`تعداد محصولات: `+r(X.value.length.toLocaleString(`fa-IR`)),1),g(`button`,{type:`button`,class:`list-meta__sort`,"aria-label":kt.value,onClick:Ot},[...a[21]||=[ee(`۱مرتب‌سازی`,3)]],8,lt)]),g(`div`,ut,[(p(!0),u(l,null,d(X.value,e=>(p(),u(`article`,{key:e.id,class:`product-item`,onClick:t=>Nt(e.id)},[g(`div`,{class:`product-item__image`,style:i(e.imageUrl?{backgroundImage:`url(${e.imageUrl})`}:void 0)},null,4),g(`div`,ft,[g(`div`,pt,[g(`div`,mt,[g(`strong`,null,r(e.name),1),e.isNew?(p(),u(`span`,ht,`جدید`)):c(``,!0)]),g(`button`,{type:`button`,class:`bookmark`,"aria-label":t(w).isFavorite(e.id)?`حذف از علاقه‌مندی‌ها`:`افزودن به علاقه‌مندی‌ها`,"aria-pressed":t(w).isFavorite(e.id),onClick:n(t=>Ft(e.id),[`stop`])},[f(be,{size:18,filled:t(w).isFavorite(e.id),color:t(w).isFavorite(e.id)?`#0a353c`:`#9ca3af`},null,8,[`filled`,`color`])],8,gt)]),g(`ul`,_t,[g(`li`,null,`عرض: `+r(e.widthCm.toLocaleString(`fa-IR`))+` سانتی‌متر`,1),g(`li`,null,`ترکیب: `+r(e.composition||`—`),1),g(`li`,null,`مناسب: `+r(Pt(e.season)),1)]),g(`div`,vt,[(p(!0),u(l,null,d(e.colors.slice(0,6),(n,r)=>(p(),u(`span`,{key:r,class:`swatch`,style:i(t(ge)(n,e.colorImages?.[r]||e.imageUrls?.[r]))},null,4))),128))]),g(`button`,{type:`button`,class:`details-link`,onClick:n(t=>Nt(e.id),[`stop`])},[a[22]||=o(` مشاهده جزئیات `,-1),f(de,{size:14})],8,yt)])],8,dt))),128))]),X.value.length?c(``,!0):(p(),u(`p`,bt,`محصولی در این دسته یافت نشد.`))],64))])]))}}),[[`__scopeId`,`data-v-693d3912`]]);export{S as default}; \ No newline at end of file diff --git a/dist/assets/ProfileChecksView-CeWWUlq-.js b/dist/assets/ProfileChecksView-CeWWUlq-.js deleted file mode 100644 index d9c5d5c..0000000 --- a/dist/assets/ProfileChecksView-CeWWUlq-.js +++ /dev/null @@ -1 +0,0 @@ -import{t as e}from"./CheckListView-BM6vq5YZ.js";import{M as t,Y as n,z as r}from"./BasicIcon-C6boaehV.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-Tp62gSX1.js b/dist/assets/ProfileChecksView-Tp62gSX1.js new file mode 100644 index 0000000..14d0b80 --- /dev/null +++ b/dist/assets/ProfileChecksView-Tp62gSX1.js @@ -0,0 +1 @@ +import{t as e}from"./CheckListView-C2RmOScu.js";import{M as t,X as n,z as r}from"./BasicIcon-Bnxm-DKk.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/ProfileDisplayView-BeAOZ6_e.js b/dist/assets/ProfileDisplayView-BeAOZ6_e.js deleted file mode 100644 index 1bebb89..0000000 --- a/dist/assets/ProfileDisplayView-BeAOZ6_e.js +++ /dev/null @@ -1 +0,0 @@ -import{A as e,Ct as t,Et as n,L as r,M as i,N as a,O as o,P as s,R as c,St as l,Y as u,Z as d,_ as f,j as p,mt as m,n as h,rt as g,t as _,z as v}from"./BasicIcon-C6boaehV.js";import{u as y}from"./dist-CUUvbY4x.js";import{a as b,c as x,d as S,n as C}from"./index-fdhs4HNc.js";import{t as w}from"./ProfileSubpageLayout-PN2YWH-s.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(v({__name:`ProfileDisplayView`,setup(h){let v=f(),B=x(),V=S(),H=b(),U=m(!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=e(()=>V.draftChecks.length);function q(){U.value=!0,W()}function J(){B.logout(),v.replace(`/welcome`)}return(e,f)=>(u(),i(w,{title:`تنظیمات`,subtitle:`نمایش، حساب کاربری و خروج`},{default:g(()=>[p(`div`,T,[p(`nav`,E,[p(`button`,{type:`button`,class:`settings-link`,onClick:f[0]||=e=>l(v).push(`/profile/edit`)},[p(`span`,D,[c(_,{icon:`vuesax-linear:profile-circle`,size:20,"stroke-width":1.5})]),f[2]||=p(`span`,{class:`settings-link__label`},`اطلاعات کاربری`,-1),c(_,{class:`settings-link__chevron`,icon:`vuesax-linear:arrow-left-1`,size:16,"stroke-width":1.5})]),p(`button`,{type:`button`,class:`settings-link`,onClick:f[1]||=e=>l(v).push(`/profile/checks`)},[p(`span`,O,[c(_,{icon:`vuesax-linear:card`,size:20,"stroke-width":1.5})]),p(`span`,k,[f[3]||=r(` لیست چک‌ها `,-1),K.value?(u(),s(`em`,A,`(`+n(K.value)+`)`,1)):a(``,!0)]),c(_,{class:`settings-link__chevron`,icon:`vuesax-linear:arrow-left-1`,size:16,"stroke-width":1.5})])]),p(`fieldset`,j,[f[4]||=p(`legend`,{class:`display-fieldset__legend`},`حالت نمایش`,-1),p(`div`,M,[(u(),s(o,null,d(G,e=>p(`button`,{key:e.value,type:`button`,class:t([`theme-card`,{"theme-card--active":l(H).preference===e.value}]),role:`radio`,"aria-checked":l(H).preference===e.value,onClick:t=>l(H).preference=e.value},[p(`span`,P,[c(_,{icon:e.icon,size:26,"stroke-width":1.5},null,8,[`icon`])]),p(`span`,F,[p(`strong`,I,n(e.label),1),p(`span`,L,n(e.description),1)]),p(`span`,R,[l(H).preference===e.value?(u(),i(_,{key:0,icon:`vuesax-linear:tick-circle`,size:20,"stroke-width":1.75})):a(``,!0)])],10,N)),64))])]),c(C,{block:``,onClick:q},{default:g(()=>[...f[5]||=[r(`ذخیره تنظیمات`,-1)]]),_:1}),U.value?(u(),s(`p`,z,`تنظیمات نمایش ذخیره شد ✓`)):a(``,!0),p(`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-DnuPC4UZ.js b/dist/assets/ProfileDisplayView-DnuPC4UZ.js new file mode 100644 index 0000000..66303ad --- /dev/null +++ b/dist/assets/ProfileDisplayView-DnuPC4UZ.js @@ -0,0 +1 @@ +import{A as e,Ct as t,Dt as n,L as r,M as i,N as a,O as o,P as s,Q as c,R as l,X as u,_ as d,ht as f,it as p,j as m,n as h,t as g,wt as _,z as v}from"./BasicIcon-Bnxm-DKk.js";import{u as y}from"./dist-CGdWzQ9K.js";import{a as b,c as x,d as S,n as C}from"./index-DB4cQnln.js";import{t as w}from"./ProfileSubpageLayout-M9w6UPVb.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(v({__name:`ProfileDisplayView`,setup(h){let v=d(),B=x(),V=S(),H=b(),U=f(!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=e(()=>V.draftChecks.length);function q(){U.value=!0,W()}function J(){B.logout(),v.replace(`/welcome`)}return(e,d)=>(u(),i(w,{title:`تنظیمات`,subtitle:`نمایش، حساب کاربری و خروج`},{default:p(()=>[m(`div`,T,[m(`nav`,E,[m(`button`,{type:`button`,class:`settings-link`,onClick:d[0]||=e=>t(v).push(`/profile/edit`)},[m(`span`,D,[l(g,{icon:`vuesax-linear:profile-circle`,size:20,"stroke-width":1.5})]),d[2]||=m(`span`,{class:`settings-link__label`},`اطلاعات کاربری`,-1),l(g,{class:`settings-link__chevron`,icon:`vuesax-linear:arrow-left-1`,size:16,"stroke-width":1.5})]),m(`button`,{type:`button`,class:`settings-link`,onClick:d[1]||=e=>t(v).push(`/profile/checks`)},[m(`span`,O,[l(g,{icon:`vuesax-linear:card`,size:20,"stroke-width":1.5})]),m(`span`,k,[d[3]||=r(` لیست چک‌ها `,-1),K.value?(u(),s(`em`,A,`(`+n(K.value)+`)`,1)):a(``,!0)]),l(g,{class:`settings-link__chevron`,icon:`vuesax-linear:arrow-left-1`,size:16,"stroke-width":1.5})])]),m(`fieldset`,j,[d[4]||=m(`legend`,{class:`display-fieldset__legend`},`حالت نمایش`,-1),m(`div`,M,[(u(),s(o,null,c(G,e=>m(`button`,{key:e.value,type:`button`,class:_([`theme-card`,{"theme-card--active":t(H).preference===e.value}]),role:`radio`,"aria-checked":t(H).preference===e.value,onClick:n=>t(H).preference=e.value},[m(`span`,P,[l(g,{icon:e.icon,size:26,"stroke-width":1.5},null,8,[`icon`])]),m(`span`,F,[m(`strong`,I,n(e.label),1),m(`span`,L,n(e.description),1)]),m(`span`,R,[t(H).preference===e.value?(u(),i(g,{key:0,icon:`vuesax-linear:tick-circle`,size:20,"stroke-width":1.75})):a(``,!0)])],10,N)),64))])]),l(C,{block:``,onClick:q},{default:p(()=>[...d[5]||=[r(`ذخیره تنظیمات`,-1)]]),_:1}),U.value?(u(),s(`p`,z,`تنظیمات نمایش ذخیره شد ✓`)):a(``,!0),m(`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-BMYT8anS.js b/dist/assets/ProfileEditView-wzEZQKJ2.js similarity index 63% rename from dist/assets/ProfileEditView-BMYT8anS.js rename to dist/assets/ProfileEditView-wzEZQKJ2.js index a5be67b..d5af325 100644 --- a/dist/assets/ProfileEditView-BMYT8anS.js +++ b/dist/assets/ProfileEditView-wzEZQKJ2.js @@ -1 +1 @@ -import{A as e,Et as t,L as n,M as r,N as i,P as a,R as o,Y as s,j as c,mt as l,n as u,rt as d,t as f,z as p}from"./BasicIcon-C6boaehV.js";import{c as m,n as h,r as g}from"./index-fdhs4HNc.js";import{t as _}from"./FormErrorBanner-CjdBfIQT.js";import{n as v,r as y,t as b}from"./formErrors-DglFjYkZ.js";import{t as x}from"./BaseInput-C6eO_Qjy.js";import{t as S}from"./ProfileSubpageLayout-PN2YWH-s.js";var C=512,w=.82;async function T(e){if(!e.type.startsWith(`image/`))throw Error(`فقط فایل تصویری مجاز است.`);if(e.size>8388608)throw Error(`حجم تصویر نباید بیشتر از ۸ مگابایت باشد.`);return D(await E(e))}function E(e){return new Promise((t,n)=>{let r=new FileReader;r.onload=()=>t(String(r.result??``)),r.onerror=()=>n(Error(`خواندن تصویر ناموفق بود.`)),r.readAsDataURL(e)})}function D(e){return new Promise((t,n)=>{let r=new Image;r.onload=()=>{let e=Math.min(1,C/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`,w))},r.onerror=()=>n(Error(`تصویر نامعتبر است.`)),r.src=e})}var O={class:`profile-edit`},k={class:`avatar-editor`},A={class:`avatar-editor__actions`},j={class:`avatar-editor__btns`},M=[`disabled`],N=[`disabled`],P={class:`profile-edit__intro`},F={class:`profile-edit__intro-icon`,"aria-hidden":`true`},I={class:`profile-edit__grid`},L={class:`profile-edit__actions`},R={key:0,class:`profile-edit__saved`},z=u(p({__name:`ProfileEditView`,setup(u){let p=m(),C=l(p.user?.firstName??``),w=l(p.user?.lastName??``),E=l(p.user?.nationalId??``),D=l(p.user?.avatarUrl??null),z=l(null),B=l({}),V=l(``),H=l(!1),U=l(!1),W=e(()=>`${C.value.trim().charAt(0)}${w.value.trim().charAt(0)}`||`؟`);function G(e){B.value=v(B.value,e),y(B.value)||(V.value=``)}function K(){z.value?.click()}async function q(e){U.value=!0,V.value=``;try{let t=await p.updateProfile({avatarUrl:e??``});t?D.value=t.avatarUrl??null:D.value=e}catch(e){V.value=e instanceof Error?e.message:`ذخیره تصویر ناموفق بود.`}finally{U.value=!1}}async function J(e){let t=e.target,n=t.files?.[0];if(t.value=``,n){U.value=!0,V.value=``;try{let e=await T(n);D.value=e,await q(e)}catch(e){V.value=e instanceof Error?e.message:`بارگذاری تصویر ناموفق بود.`,U.value=!1}}}async function Y(){D.value=null,await q(null)}async function X(){B.value={},V.value=``,H.value=!1;let e={};if(C.value.trim()||(e.firstName=`نام الزامی است.`),w.value.trim()||(e.lastName=`نام خانوادگی الزامی است.`),E.value&&E.value.length!==10&&(e.nationalId=`کد ملی باید ۱۰ رقم باشد.`),y(e)){B.value=e,V.value=b;return}if(!await p.updateProfile({firstName:C.value.trim(),lastName:w.value.trim(),nationalId:E.value||void 0,avatarUrl:D.value??``})){V.value=`ذخیره پروفایل ناموفق بود.`;return}H.value=!0,setTimeout(()=>{H.value=!1},2e3)}return(e,l)=>(s(),r(S,{title:`اطلاعات کاربری`,subtitle:`ویرایش تصویر، نام و کد ملی حساب کاربری`},{default:d(()=>[o(_,{message:V.value},null,8,[`message`]),c(`div`,O,[c(`div`,k,[o(g,{src:D.value,initials:W.value,size:96,class:`avatar-editor__photo`},null,8,[`src`,`initials`]),c(`div`,A,[l[6]||=c(`p`,{class:`avatar-editor__title`},`تصویر پروفایل`,-1),l[7]||=c(`p`,{class:`avatar-editor__hint`},`افزودن، تغییر یا حذف عکس نمایش‌داده‌شده در پروفایل`,-1),c(`div`,j,[c(`button`,{type:`button`,class:`avatar-btn`,disabled:U.value,onClick:K},t(D.value?`تغییر تصویر`:`افزودن تصویر`),9,M),D.value?(s(),a(`button`,{key:0,type:`button`,class:`avatar-btn avatar-btn--danger`,disabled:U.value,onClick:Y},` حذف تصویر `,8,N)):i(``,!0)])]),c(`input`,{ref_key:`fileInput`,ref:z,type:`file`,accept:`image/*`,class:`avatar-editor__file`,onChange:J},null,544)]),c(`div`,P,[c(`span`,F,[o(f,{icon:`vuesax-linear:profile-circle`,size:22,"stroke-width":1.5})]),l[8]||=c(`div`,{class:`profile-edit__intro-text`},[c(`strong`,null,`مشخصات فردی`),c(`p`,null,`این اطلاعات روی سفارش‌ها و چک‌های ثبت‌شده نمایش داده می‌شود.`)],-1)]),c(`div`,I,[o(x,{modelValue:C.value,"onUpdate:modelValue":[l[0]||=e=>C.value=e,l[1]||=e=>G(`firstName`)],label:`نام`,error:B.value.firstName},null,8,[`modelValue`,`error`]),o(x,{modelValue:w.value,"onUpdate:modelValue":[l[2]||=e=>w.value=e,l[3]||=e=>G(`lastName`)],label:`نام خانوادگی`,error:B.value.lastName},null,8,[`modelValue`,`error`]),o(x,{modelValue:E.value,"onUpdate:modelValue":[l[4]||=e=>E.value=e,l[5]||=e=>G(`nationalId`)],class:`profile-edit__full`,label:`کد ملی`,maxlength:`10`,inputmode:`numeric`,dir:`ltr`,hint:`برای ثبت چک الزامی است`,error:B.value.nationalId},null,8,[`modelValue`,`error`])]),c(`div`,L,[o(h,{class:`profile-edit__save`,onClick:X},{default:d(()=>[...l[9]||=[n(`ذخیره تغییرات`,-1)]]),_:1}),H.value?(s(),a(`p`,R,`ذخیره شد ✓`)):i(``,!0)])])]),_:1}))}}),[[`__scopeId`,`data-v-bd0a4276`]]);export{z as default}; \ No newline at end of file +import{A as e,Dt as t,L as n,M as r,N as i,P as a,R as o,X as s,ht as c,it as l,j as u,n as d,t as f,z as p}from"./BasicIcon-Bnxm-DKk.js";import{c as m,n as h,r as g}from"./index-DB4cQnln.js";import{t as _}from"./FormErrorBanner-BahrrGfv.js";import{n as v,r as y,t as b}from"./formErrors-DglFjYkZ.js";import{t as x}from"./BaseInput-BFVjehfb.js";import{t as S}from"./ProfileSubpageLayout-M9w6UPVb.js";var C=512,w=.82;async function T(e){if(!e.type.startsWith(`image/`))throw Error(`فقط فایل تصویری مجاز است.`);if(e.size>8388608)throw Error(`حجم تصویر نباید بیشتر از ۸ مگابایت باشد.`);return D(await E(e))}function E(e){return new Promise((t,n)=>{let r=new FileReader;r.onload=()=>t(String(r.result??``)),r.onerror=()=>n(Error(`خواندن تصویر ناموفق بود.`)),r.readAsDataURL(e)})}function D(e){return new Promise((t,n)=>{let r=new Image;r.onload=()=>{let e=Math.min(1,C/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`,w))},r.onerror=()=>n(Error(`تصویر نامعتبر است.`)),r.src=e})}var O={class:`profile-edit`},k={class:`avatar-editor`},A={class:`avatar-editor__actions`},j={class:`avatar-editor__btns`},M=[`disabled`],N=[`disabled`],P={class:`profile-edit__intro`},F={class:`profile-edit__intro-icon`,"aria-hidden":`true`},I={class:`profile-edit__grid`},L={class:`profile-edit__actions`},R={key:0,class:`profile-edit__saved`},z=d(p({__name:`ProfileEditView`,setup(d){let p=m(),C=c(p.user?.firstName??``),w=c(p.user?.lastName??``),E=c(p.user?.nationalId??``),D=c(p.user?.avatarUrl??null),z=c(null),B=c({}),V=c(``),H=c(!1),U=c(!1),W=e(()=>`${C.value.trim().charAt(0)}${w.value.trim().charAt(0)}`||`؟`);function G(e){B.value=v(B.value,e),y(B.value)||(V.value=``)}function K(){z.value?.click()}async function q(e){U.value=!0,V.value=``;try{let t=await p.updateProfile({avatarUrl:e??``});t?D.value=t.avatarUrl??null:D.value=e}catch(e){V.value=e instanceof Error?e.message:`ذخیره تصویر ناموفق بود.`}finally{U.value=!1}}async function J(e){let t=e.target,n=t.files?.[0];if(t.value=``,n){U.value=!0,V.value=``;try{let e=await T(n);D.value=e,await q(e)}catch(e){V.value=e instanceof Error?e.message:`بارگذاری تصویر ناموفق بود.`,U.value=!1}}}async function Y(){D.value=null,await q(null)}async function X(){B.value={},V.value=``,H.value=!1;let e={};if(C.value.trim()||(e.firstName=`نام الزامی است.`),w.value.trim()||(e.lastName=`نام خانوادگی الزامی است.`),E.value&&E.value.length!==10&&(e.nationalId=`کد ملی باید ۱۰ رقم باشد.`),y(e)){B.value=e,V.value=b;return}if(!await p.updateProfile({firstName:C.value.trim(),lastName:w.value.trim(),nationalId:E.value||void 0,avatarUrl:D.value??``})){V.value=`ذخیره پروفایل ناموفق بود.`;return}H.value=!0,setTimeout(()=>{H.value=!1},2e3)}return(e,c)=>(s(),r(S,{title:`اطلاعات کاربری`,subtitle:`ویرایش تصویر، نام و کد ملی حساب کاربری`},{default:l(()=>[o(_,{message:V.value},null,8,[`message`]),u(`div`,O,[u(`div`,k,[o(g,{src:D.value,initials:W.value,size:96,class:`avatar-editor__photo`},null,8,[`src`,`initials`]),u(`div`,A,[c[6]||=u(`p`,{class:`avatar-editor__title`},`تصویر پروفایل`,-1),c[7]||=u(`p`,{class:`avatar-editor__hint`},`افزودن، تغییر یا حذف عکس نمایش‌داده‌شده در پروفایل`,-1),u(`div`,j,[u(`button`,{type:`button`,class:`avatar-btn`,disabled:U.value,onClick:K},t(D.value?`تغییر تصویر`:`افزودن تصویر`),9,M),D.value?(s(),a(`button`,{key:0,type:`button`,class:`avatar-btn avatar-btn--danger`,disabled:U.value,onClick:Y},` حذف تصویر `,8,N)):i(``,!0)])]),u(`input`,{ref_key:`fileInput`,ref:z,type:`file`,accept:`image/*`,class:`avatar-editor__file`,onChange:J},null,544)]),u(`div`,P,[u(`span`,F,[o(f,{icon:`vuesax-linear:profile-circle`,size:22,"stroke-width":1.5})]),c[8]||=u(`div`,{class:`profile-edit__intro-text`},[u(`strong`,null,`مشخصات فردی`),u(`p`,null,`این اطلاعات روی سفارش‌ها و چک‌های ثبت‌شده نمایش داده می‌شود.`)],-1)]),u(`div`,I,[o(x,{modelValue:C.value,"onUpdate:modelValue":[c[0]||=e=>C.value=e,c[1]||=e=>G(`firstName`)],label:`نام`,error:B.value.firstName},null,8,[`modelValue`,`error`]),o(x,{modelValue:w.value,"onUpdate:modelValue":[c[2]||=e=>w.value=e,c[3]||=e=>G(`lastName`)],label:`نام خانوادگی`,error:B.value.lastName},null,8,[`modelValue`,`error`]),o(x,{modelValue:E.value,"onUpdate:modelValue":[c[4]||=e=>E.value=e,c[5]||=e=>G(`nationalId`)],class:`profile-edit__full`,label:`کد ملی`,maxlength:`10`,inputmode:`numeric`,dir:`ltr`,hint:`برای ثبت چک الزامی است`,error:B.value.nationalId},null,8,[`modelValue`,`error`])]),u(`div`,L,[o(h,{class:`profile-edit__save`,onClick:X},{default:l(()=>[...c[9]||=[n(`ذخیره تغییرات`,-1)]]),_:1}),H.value?(s(),a(`p`,R,`ذخیره شد ✓`)):i(``,!0)])])]),_:1}))}}),[[`__scopeId`,`data-v-bd0a4276`]]);export{z as default}; \ No newline at end of file diff --git a/dist/assets/ProfileNotificationsView-D_wDB5-Q.js b/dist/assets/ProfileNotificationsView-D_wDB5-Q.js new file mode 100644 index 0000000..57128f0 --- /dev/null +++ b/dist/assets/ProfileNotificationsView-D_wDB5-Q.js @@ -0,0 +1 @@ +import{A as e,Ct as t,Dt as n,J as r,L as i,M as a,N as o,O as s,P as c,Q as l,R as u,X as d,_ as f,it as p,j as m,n as h,t as g,wt as _,z as v}from"./BasicIcon-Bnxm-DKk.js";import{i as y}from"./format-C72AoJ2H.js";import{n as b,u as x}from"./index-DB4cQnln.js";import{t as S}from"./EmptyState-CsuH56HV.js";import{t as C}from"./ProfileSubpageLayout-M9w6UPVb.js";var w={key:0,class:`notif-box`},T={class:`notif-box__head`},E={class:`notif-box__count`},D=[`onClick`],O={class:`notif-row__icon`,"aria-hidden":`true`},k={class:`notif-row__body`},A={class:`notif-row__title-row`},j={class:`notif-row__title`},M={key:0,class:`notif-row__dot`,"aria-label":`خوانده‌نشده`},N={class:`notif-row__text`},P={class:`notif-row__time`},F=h(v({__name:`ProfileNotificationsView`,setup(h){let v=f(),F=x(),I=e(()=>F.items),L=e(()=>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&&v.push(e.link)}return(e,r)=>(d(),a(C,{title:`اعلان‌ها`,subtitle:`سفارش‌ها، پیشنهاد محصول و سایر اعلان‌ها`},{default:p(()=>[I.value.length?(d(),c(`div`,w,[m(`div`,T,[m(`span`,E,n(L.value?`${t(F).unreadCount} اعلان خوانده‌نشده`:`همه خوانده شده`),1),L.value?(d(),a(b,{key:0,variant:`outline`,class:`notif-box__mark`,onClick:r[0]||=e=>t(F).markAllRead()},{default:p(()=>[...r[2]||=[i(` خواندن همه `,-1)]]),_:1})):o(``,!0)]),(d(!0),c(s,null,l(I.value,e=>(d(),c(`button`,{key:e.id,type:`button`,class:_([`notif-row`,[`notif-row--${e.tone}`,{"notif-row--unread":!e.isRead}]]),onClick:t=>z(e)},[m(`span`,O,[u(g,{icon:R[e.tone],size:22,"stroke-width":1.5},null,8,[`icon`])]),m(`span`,k,[m(`span`,A,[m(`strong`,j,n(e.title),1),e.isRead?o(``,!0):(d(),c(`span`,M))]),m(`span`,N,n(e.body),1),m(`span`,P,n(t(y)(e.sentAt)),1)])],10,D))),128))])):(d(),a(S,{key:1,icon:`vuesax-linear:notification-bing`,title:`اعلانی ندارید`,message:`وقتی فاکتور سفارشتان صادر شود، پیشنهاد محصولی برایتان ثبت شود یا وضعیت پرداخت تغییر کند، همین‌جا خبردار می‌شوید.`},{default:p(()=>[u(b,{variant:`outline`,onClick:r[1]||=e=>t(v).push(`/orders`)},{default:p(()=>[...r[3]||=[i(`سفارش‌های من`,-1)]]),_:1})]),_:1}))]),_:1}))}}),[[`__scopeId`,`data-v-7e884b50`]]);export{F as default}; \ No newline at end of file diff --git a/dist/assets/ProfileNotificationsView-qTfW9-vz.js b/dist/assets/ProfileNotificationsView-qTfW9-vz.js deleted file mode 100644 index 78c21b8..0000000 --- a/dist/assets/ProfileNotificationsView-qTfW9-vz.js +++ /dev/null @@ -1 +0,0 @@ -import{A as e,Ct as t,Et as n,L as r,M as i,N as a,O as o,P as s,R as c,St as l,Y as u,Z as d,_ as f,j as p,n as m,q as h,rt as g,t as _,z as v}from"./BasicIcon-C6boaehV.js";import{i as y}from"./format-BHJptHdF.js";import{n as b,u as x}from"./index-fdhs4HNc.js";import{t as S}from"./EmptyState-C_QQeA_h.js";import{t as C}from"./ProfileSubpageLayout-PN2YWH-s.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=m(v({__name:`ProfileNotificationsView`,setup(m){let v=f(),F=x(),I=e(()=>F.items),L=e(()=>F.hasUnread),R={info:`vuesax-linear:information`,success:`vuesax-linear:tick-circle`,warning:`vuesax-linear:timer`,danger:`vuesax-linear:close-circle`};h(()=>{F.hydrate()});async function z(e){await F.markRead(e.id),e.link&&v.push(e.link)}return(e,f)=>(u(),i(C,{title:`اعلان‌ها`,subtitle:`سفارش‌ها، پیشنهاد محصول و سایر اعلان‌ها`},{default:g(()=>[I.value.length?(u(),s(`div`,w,[p(`div`,T,[p(`span`,E,n(L.value?`${l(F).unreadCount} اعلان خوانده‌نشده`:`همه خوانده شده`),1),L.value?(u(),i(b,{key:0,variant:`outline`,class:`notif-box__mark`,onClick:f[0]||=e=>l(F).markAllRead()},{default:g(()=>[...f[2]||=[r(` خواندن همه `,-1)]]),_:1})):a(``,!0)]),(u(!0),s(o,null,d(I.value,e=>(u(),s(`button`,{key:e.id,type:`button`,class:t([`notif-row`,[`notif-row--${e.tone}`,{"notif-row--unread":!e.isRead}]]),onClick:t=>z(e)},[p(`span`,O,[c(_,{icon:R[e.tone],size:22,"stroke-width":1.5},null,8,[`icon`])]),p(`span`,k,[p(`span`,A,[p(`strong`,j,n(e.title),1),e.isRead?a(``,!0):(u(),s(`span`,M))]),p(`span`,N,n(e.body),1),p(`span`,P,n(l(y)(e.sentAt)),1)])],10,D))),128))])):(u(),i(S,{key:1,icon:`vuesax-linear:notification-bing`,title:`اعلانی ندارید`,message:`وقتی فاکتور سفارشتان صادر شود، پیشنهاد محصولی برایتان ثبت شود یا وضعیت پرداخت تغییر کند، همین‌جا خبردار می‌شوید.`},{default:g(()=>[c(b,{variant:`outline`,onClick:f[1]||=e=>l(v).push(`/orders`)},{default:g(()=>[...f[3]||=[r(`سفارش‌های من`,-1)]]),_:1})]),_:1}))]),_:1}))}}),[[`__scopeId`,`data-v-7e884b50`]]);export{F as default}; \ No newline at end of file diff --git a/dist/assets/ProfileSecurityView-K8rOJGfa.js b/dist/assets/ProfileSecurityView-K8rOJGfa.js deleted file mode 100644 index 8037225..0000000 --- a/dist/assets/ProfileSecurityView-K8rOJGfa.js +++ /dev/null @@ -1 +0,0 @@ -import{L as e,M as t,N as n,P as r,R as i,Y as a,j as o,mt as s,n as c,rt as l,z as u}from"./BasicIcon-C6boaehV.js";import{n as d}from"./index-fdhs4HNc.js";import{t as f}from"./FormErrorBanner-CjdBfIQT.js";import{n as p,r as m,t as h}from"./formErrors-DglFjYkZ.js";import{t as g}from"./BaseInput-C6eO_Qjy.js";import{t as _}from"./ProfileSubpageLayout-PN2YWH-s.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)=>(a(),t(_,{title:`امنیت حساب`,subtitle:`تغییر رمز عبور و تنظیمات ورود`},{default:l(()=>[i(f,{message:C.value},null,8,[`message`]),o(`div`,v,[i(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`]),i(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`]),i(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`]),i(d,{block:``,onClick:E},{default:l(()=>[...c[6]||=[e(`ذخیره رمز جدید`,-1)]]),_:1}),w.value?(a(),r(`p`,y,`رمز عبور با موفقیت تغییر کرد ✓`)):n(``,!0)])]),_:1}))}}),[[`__scopeId`,`data-v-074827a2`]]);export{b as default}; \ No newline at end of file diff --git a/dist/assets/ProfileSecurityView-oki8MoKN.js b/dist/assets/ProfileSecurityView-oki8MoKN.js new file mode 100644 index 0000000..7c0de56 --- /dev/null +++ b/dist/assets/ProfileSecurityView-oki8MoKN.js @@ -0,0 +1 @@ +import{L as e,M as t,N as n,P as r,R as i,X as a,ht as o,it as s,j as c,n as l,z as u}from"./BasicIcon-Bnxm-DKk.js";import{n as d}from"./index-DB4cQnln.js";import{t as f}from"./FormErrorBanner-BahrrGfv.js";import{n as p,r as m,t as h}from"./formErrors-DglFjYkZ.js";import{t as g}from"./BaseInput-BFVjehfb.js";import{t as _}from"./ProfileSubpageLayout-M9w6UPVb.js";var v={class:`settings-form`},y={key:0,class:`settings-form__saved`},b=l(u({__name:`ProfileSecurityView`,setup(l){let u=o(``),b=o(``),x=o(``),S=o({}),C=o(``),w=o(!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(o,l)=>(a(),t(_,{title:`امنیت حساب`,subtitle:`تغییر رمز عبور و تنظیمات ورود`},{default:s(()=>[i(f,{message:C.value},null,8,[`message`]),c(`div`,v,[i(g,{modelValue:u.value,"onUpdate:modelValue":[l[0]||=e=>u.value=e,l[1]||=e=>T(`currentPassword`)],type:`password`,label:`رمز عبور فعلی`,error:S.value.currentPassword},null,8,[`modelValue`,`error`]),i(g,{modelValue:b.value,"onUpdate:modelValue":[l[2]||=e=>b.value=e,l[3]||=e=>T(`newPassword`)],type:`password`,label:`رمز عبور جدید`,error:S.value.newPassword},null,8,[`modelValue`,`error`]),i(g,{modelValue:x.value,"onUpdate:modelValue":[l[4]||=e=>x.value=e,l[5]||=e=>T(`confirmPassword`)],type:`password`,label:`تکرار رمز عبور جدید`,error:S.value.confirmPassword},null,8,[`modelValue`,`error`]),i(d,{block:``,onClick:E},{default:s(()=>[...l[6]||=[e(`ذخیره رمز جدید`,-1)]]),_:1}),w.value?(a(),r(`p`,y,`رمز عبور با موفقیت تغییر کرد ✓`)):n(``,!0)])]),_:1}))}}),[[`__scopeId`,`data-v-074827a2`]]);export{b as default}; \ No newline at end of file diff --git a/dist/assets/ProfileSubpageLayout-DCtwNGmO.css b/dist/assets/ProfileSubpageLayout-DCtwNGmO.css new file mode 100644 index 0000000..2ca4121 --- /dev/null +++ b/dist/assets/ProfileSubpageLayout-DCtwNGmO.css @@ -0,0 +1 @@ +.profile-subpage[data-v-e7684fde]{overflow:hidden}.profile-subpage__card[data-v-e7684fde]{box-shadow:none;border:none;border-radius:0;padding:12px 16px 20px}.profile-subpage__nav[data-v-e7684fde]{z-index:2;background:var(--color-elevated);border-bottom:1px solid var(--color-border);box-sizing:border-box;border-radius:0;grid-template-columns:40px 1fr 40px;align-items:center;min-height:44px;margin:-12px -16px 16px;padding:8px 12px;display:grid;position:sticky;top:0}.profile-subpage__title[data-v-e7684fde]{text-align:center;color:var(--color-text);margin:0;font-size:1.0625rem;font-weight:700;line-height:1.3}.nav-btn[data-v-e7684fde]{width:40px;height:40px;color:var(--color-text);cursor:pointer;background:0 0;border:none;justify-content:center;place-self:center;align-items:center;padding:0;display:inline-flex}.nav-btn--ghost[data-v-e7684fde]{visibility:hidden;pointer-events:none}.nav-btn__flip[data-v-e7684fde]{transform:scaleX(-1)}.profile-subpage-desktop[data-v-e7684fde]{width:100%}.profile-subpage-desktop__head[data-v-e7684fde]{max-width:none}.profile-subpage-desktop__panel[data-v-e7684fde]{width:100%;max-width:none;box-shadow:var(--shadow-card);padding:28px} diff --git a/dist/assets/ProfileSubpageLayout-M9w6UPVb.js b/dist/assets/ProfileSubpageLayout-M9w6UPVb.js new file mode 100644 index 0000000..0d88a05 --- /dev/null +++ b/dist/assets/ProfileSubpageLayout-M9w6UPVb.js @@ -0,0 +1 @@ +import{$ as e,Dt as t,N as n,O as r,P as i,R as a,X as o,_ as s,j as c,n as l,z as u}from"./BasicIcon-Bnxm-DKk.js";import{t as d}from"./IconChevronBack-DguSlPDK.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=l(u({__name:`ProfileSubpageLayout`,props:{title:{},subtitle:{}},setup(l){let u=s();function C(){u.push(`/profile`)}return(s,u)=>(o(),i(r,null,[c(`div`,f,[c(`div`,p,[c(`div`,m,[c(`header`,h,[c(`button`,{type:`button`,class:`nav-btn`,"aria-label":`بازگشت`,onClick:C},[a(d,{size:20})]),c(`h1`,g,t(l.title),1),c(`button`,_,[a(d,{size:18,class:`nav-btn__flip`})])]),e(s.$slots,`default`,{},void 0,!0)])])]),c(`div`,v,[c(`header`,y,[c(`h1`,b,t(l.title),1),l.subtitle?(o(),i(`p`,x,t(l.subtitle),1)):n(``,!0)]),c(`section`,S,[e(s.$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-PN2YWH-s.js b/dist/assets/ProfileSubpageLayout-PN2YWH-s.js deleted file mode 100644 index 1214973..0000000 --- a/dist/assets/ProfileSubpageLayout-PN2YWH-s.js +++ /dev/null @@ -1 +0,0 @@ -import{Et as e,L as t,N as n,O as r,P as i,Q as a,R as o,Y as s,_ as c,j as l,n as u,z as d}from"./BasicIcon-C6boaehV.js";import{t as f}from"./IconChevronBack-DORV2H0q.js";var p={class:`page profile-subpage mobile-only`},m={class:`page__scroll page__scroll--with-nav`},h={class:`profile-subpage__card card`},g={class:`profile-subpage__nav`},_={class:`profile-subpage__title`},v={type:`button`,class:`nav-btn nav-btn--ghost`,"aria-hidden":`true`,tabindex:`-1`},y={class:`desktop-page profile-subpage-desktop desktop-only`},b={class:`desktop-page__head profile-subpage-desktop__head`},x={class:`desktop-page__title`},S={key:0,class:`desktop-page__subtitle`},C={class:`profile-subpage-desktop__panel card`},w=u(d({__name:`ProfileSubpageLayout`,props:{title:{},subtitle:{}},setup(u){let d=c();function w(){d.push(`/profile`)}return(c,d)=>(s(),i(r,null,[l(`div`,p,[l(`div`,m,[l(`div`,h,[l(`header`,g,[l(`button`,{type:`button`,class:`nav-btn`,"aria-label":`بازگشت`,onClick:w},[o(f,{size:20})]),l(`h1`,_,e(u.title),1),l(`button`,v,[o(f,{size:18,class:`nav-btn__flip`})])]),a(c.$slots,`default`,{},void 0,!0)])])]),l(`div`,y,[l(`header`,b,[l(`button`,{type:`button`,class:`profile-subpage-desktop__back`,onClick:w},[o(f,{size:18}),d[0]||=t(` بازگشت به پروفایل `,-1)]),l(`h1`,x,e(u.title),1),u.subtitle?(s(),i(`p`,S,e(u.subtitle),1)):n(``,!0)]),l(`section`,C,[a(c.$slots,`default`,{},void 0,!0)])])],64))}}),[[`__scopeId`,`data-v-8d824229`]]);export{w as t}; \ No newline at end of file diff --git a/dist/assets/ProfileSubpageLayout-W3vfIprY.css b/dist/assets/ProfileSubpageLayout-W3vfIprY.css deleted file mode 100644 index f7ac1db..0000000 --- a/dist/assets/ProfileSubpageLayout-W3vfIprY.css +++ /dev/null @@ -1 +0,0 @@ -.profile-subpage[data-v-8d824229]{overflow:hidden}.profile-subpage__card[data-v-8d824229]{padding:12px 16px 20px}.profile-subpage__nav[data-v-8d824229]{z-index:2;background:var(--color-elevated);border-bottom:1px solid var(--color-border);border-radius:var(--radius-md) var(--radius-md) 0 0;box-sizing:border-box;grid-template-columns:40px 1fr 40px;align-items:center;min-height:44px;margin:-12px -16px 16px;padding:8px 12px;display:grid;position:sticky;top:0}.profile-subpage__title[data-v-8d824229]{text-align:center;color:var(--color-text);margin:0;font-size:1.0625rem;font-weight:700;line-height:1.3}.nav-btn[data-v-8d824229]{width:40px;height:40px;color:var(--color-text);cursor:pointer;background:0 0;border:none;justify-content:center;place-self:center;align-items:center;padding:0;display:inline-flex}.nav-btn--ghost[data-v-8d824229]{visibility:hidden;pointer-events:none}.nav-btn__flip[data-v-8d824229]{transform:scaleX(-1)}.profile-subpage-desktop[data-v-8d824229]{width:100%}.profile-subpage-desktop__head[data-v-8d824229]{max-width:none}.profile-subpage-desktop__back[data-v-8d824229]{color:var(--color-primary);cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;margin-bottom:12px;padding:0;font-family:inherit;font-size:.875rem;font-weight:600;display:inline-flex}.profile-subpage-desktop__back[data-v-8d824229]:hover{color:var(--color-primary-hover)}.profile-subpage-desktop__panel[data-v-8d824229]{width:100%;max-width:none;box-shadow:var(--shadow-card);padding:28px} diff --git a/dist/assets/ProfileView-BnfYcxhD.js b/dist/assets/ProfileView-BnfYcxhD.js deleted file mode 100644 index b4ab9c1..0000000 --- a/dist/assets/ProfileView-BnfYcxhD.js +++ /dev/null @@ -1 +0,0 @@ -import{A as e,Ct as t,E as n,Et as r,I as ee,L as i,M as a,N as o,O as s,P as c,R as l,St as u,Tt as d,Y as f,Z as p,_ as m,j as h,mt as g,n as te,q as ne,t as _,z as v}from"./BasicIcon-C6boaehV.js";import{o as y,r as re}from"./format-BHJptHdF.js";import{C as ie,c as ae,d as oe,o as se,r as ce,s as le,u as ue}from"./index-fdhs4HNc.js";import{r as b,t as x}from"./constants-DXXK14Zz.js";import{t as S}from"./PageSkeleton-sKuEY4NI.js";import{n as C,t as w}from"./crm-DmqasSZ_.js";var T=v({__name:`IconSettings`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(f(),a(_,{icon:`vuesax-linear:setting-2`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),E={class:`page profile-page`},D={class:`page__scroll page__scroll--with-nav profile-scroll`},O={class:`hero`},k={class:`hero__pin`},A={class:`hero__top mobile-only`},j=[`aria-label`],M={class:`hero__meta`},N={class:`level-pill`},P={class:`hero__desk-actions desktop-only-flex`},F={class:`profile-sheet`},I={class:`panel`},L={class:`panel__head`},R={class:`panel__period`},z={class:`stats`},B={class:`stat-card`},V={class:`stat-card__text`},H={class:`stat-card__value`},U={class:`stat-card__icon stat-card__icon--orders`},de={class:`stat-card`},fe={class:`stat-card__text`},pe={class:`stat-card__value`},me={class:`stat-card__icon stat-card__icon--customers`},he={class:`stat-card`},ge={class:`stat-card__text`},_e={class:`stat-card__value`},ve={class:`stat-card__icon stat-card__icon--profit`},ye={class:`stat-card`},be={class:`stat-card__text`},xe={class:`stat-card__value`},Se={class:`stat-card__icon stat-card__icon--sales`},Ce={class:`loyalty`},we={class:`loyalty__row`},Te={class:`loyalty__text`},Ee={class:`loyalty__text-next`},De={class:`loyalty__bar`},Oe={class:`quick-section`},ke={class:`quick-grid`},Ae=[`onClick`],je={class:`quick-item__icon`},Me={class:`orders-box`},Ne={class:`section-head`},Pe=[`onClick`,`onKeydown`],Fe={class:`order-row__meta`},Ie={class:`order-row__date`},Le={class:`order-row__title`},Re={key:0,class:`order-row__customer`},ze={class:`price-section`},Be={class:`price-card`},Ve={class:`price-card__body`},He={class:`price-card__info`},W=te(v({__name:`MobileProfilePage`,setup(te){let v={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=m(),G=ae(),K=oe(),Ue=w(),q=ue(),J=g(null),Y=g(v),X=g(!1),We=[{label:`ثبت مشتری جدید`,to:`/customers`,icon:`vuesax-linear:add`},{label:`سفارش‌ها`,to:`/orders`,icon:`vuesax-linear:document-text`},{label:`مشتریان من`,to:`/customers`,icon:`vuesax-linear:people`},{label:`گزارش‌ها`,to:`/reminders`,icon:`vuesax-linear:chart-2`},{label:`درخواست کالیته`,to:`/catalog-request`,icon:`vuesax-linear:category`},{label:`قیمت‌گذاری`,to:`/categories`,icon:`vuesax-linear:money-4`}],Ge=e(()=>[...K.orders].sort((e,t)=>String(t.createdAt).localeCompare(String(e.createdAt))).slice(0,3).map(e=>{let t=b[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:x[e.status]||e.status,statusTone:n}})),Z=e(()=>G.fullName||`کاربر`),Q=e(()=>J.value?.code||G.user?.agentCode||`—`),$=e(()=>J.value?.levelLabel||G.user?.levelLabel||`برنزی`),Ke=e(()=>J.value?.nextLevelLabel||G.user?.nextLevelLabel||`نقره‌ای`),qe=e(()=>J.value?.pointsToNext??G.user?.pointsToNext??0),Je=e(()=>J.value?.periodLabel||`۳۰ روز اخیر`),Ye=e(()=>J.value?.customersCount??0),Xe=e(()=>J.value?.ordersCount??K.orders.length),Ze=e(()=>J.value?.salesVolumeToman??0),Qe=e(()=>J.value?.profitToman??0),$e=e(()=>J.value?.levelProgress??G.user?.levelProgress??0),et=e(()=>q.unreadCount>9?`9+`:String(q.unreadCount)),tt=e(()=>Y.value.basePrice??v.basePrice??0);return ne(async()=>{X.value=!0;try{q.hydrate();try{J.value=await C()}catch{J.value=null}try{let e=(await Ue.loadBrowseProducts())[0];Y.value=e?{...v,...e,basePrice:e.basePrice??v.basePrice}:v}catch{Y.value=v}K.orders.length||await K.hydrate()}finally{X.value=!1}}),(e,m)=>(f(),c(`div`,E,[h(`div`,D,[h(`header`,O,[h(`div`,k,[h(`div`,A,[h(`button`,{type:`button`,class:`icon-btn`,"aria-label":`تنظیمات`,onClick:m[0]||=e=>u(W).push(`/profile/display`)},[l(T,{size:20,color:`#ffffff`})]),m[7]||=h(`h1`,null,`پروفایل من`,-1),h(`button`,{type:`button`,class:`icon-btn`,"aria-label":`اعلان‌ها`,onClick:m[1]||=e=>u(W).push(`/profile/notifications`)},[l(le,{size:20,color:`#ffffff`}),u(q).hasUnread?(f(),c(`span`,{key:0,class:`icon-btn__badge`,"aria-label":`${u(q).unreadCount} اعلان خوانده‌نشده`},r(et.value),9,j)):o(``,!0)])]),l(ce,{class:`hero__avatar`,src:u(G).user?.avatarUrl,initials:Z.value.charAt(0),size:84},null,8,[`src`,`initials`])]),h(`div`,M,[h(`h2`,null,r(Z.value),1),h(`p`,null,`کد واسطه: `+r(Q.value),1),h(`span`,N,[m[8]||=h(`svg`,{class:`level-pill__crown`,viewBox:`0 0 24 24`,"aria-hidden":`true`},[h(`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),i(` سطح: `+r($.value),1)])]),h(`div`,P,[h(`button`,{type:`button`,class:`hero__desk-btn`,onClick:m[2]||=e=>u(W).push(`/profile/edit`)},` ویرایش اطلاعات `),h(`button`,{type:`button`,class:`hero__desk-btn`,onClick:m[3]||=e=>u(W).push(`/profile/checks`)},` لیست چک‌ها `),h(`button`,{type:`button`,class:`hero__desk-btn`,onClick:m[4]||=e=>u(W).push(`/profile/display`)},` تنظیمات `)])]),h(`div`,F,[X.value?(f(),a(S,{key:0,variant:`profile`})):(f(),c(s,{key:1},[h(`section`,I,[h(`div`,L,[m[9]||=h(`h3`,null,`خلاصه عملکرد`,-1),h(`span`,R,[i(r(Je.value)+` `,1),l(_,{icon:`vuesax-linear:arrow-down`,size:14,"stroke-width":1.5})])]),h(`div`,z,[h(`div`,B,[h(`div`,V,[m[10]||=h(`span`,{class:`stat-card__label`},`سفارش‌ها`,-1),h(`strong`,H,r(u(y)(Xe.value)),1),m[11]||=h(`em`,{class:`stat-card__hint`},`سفارش`,-1)]),h(`span`,U,[l(ie,{size:18})])]),h(`div`,de,[h(`div`,fe,[m[12]||=h(`span`,{class:`stat-card__label`},`مشتریان من`,-1),h(`strong`,pe,r(u(y)(Ye.value)),1),m[13]||=h(`em`,{class:`stat-card__hint`},`مشتری فعال`,-1)]),h(`span`,me,[l(_,{icon:`vuesax-linear:people`,size:18,"stroke-width":1.5})])]),h(`div`,he,[h(`div`,ge,[m[14]||=h(`span`,{class:`stat-card__label`},`سود شما (ریال)`,-1),h(`strong`,_e,r(u(y)(Qe.value)),1),m[15]||=h(`em`,{class:`stat-card__hint`},`تومان`,-1)]),h(`span`,ve,[l(_,{icon:`vuesax-linear:chart-2`,size:18,"stroke-width":1.5})])]),h(`div`,ye,[h(`div`,be,[m[16]||=h(`span`,{class:`stat-card__label`},`حجم فروش (ریال)`,-1),h(`strong`,xe,r(u(y)(Ze.value)),1),m[17]||=h(`em`,{class:`stat-card__hint`},`تومان`,-1)]),h(`span`,Se,[l(_,{icon:`vuesax-linear:wallet`,size:18,"stroke-width":1.5})])])])]),h(`section`,Ce,[h(`div`,we,[m[18]||=ee(``,1),h(`p`,Te,[h(`span`,null,`شما در سطح `+r($.value)+` قرار دارید.`,1),h(`span`,Ee,` تا سطح `+r(Ke.value)+` فقط `+r(u(y)(qe.value))+` تومان فروش دیگر نیاز دارید. `,1)])]),h(`div`,De,[h(`span`,{style:d({width:`${Math.min(100,Math.max(0,$e.value))}%`})},null,4)])]),h(`section`,Oe,[m[19]||=h(`h3`,{class:`section-title`},`دسترسی سریع`,-1),h(`div`,ke,[(f(),c(s,null,p(We,e=>h(`button`,{key:e.label,type:`button`,class:`quick-item`,onClick:t=>u(W).push(e.to)},[h(`span`,je,[l(_,{icon:e.icon,size:22,"stroke-width":1.5},null,8,[`icon`])]),i(` `+r(e.label),1)],8,Ae)),64))])]),h(`section`,Me,[h(`div`,Ne,[m[20]||=h(`h3`,null,`آخرین سفارش‌ها`,-1),h(`button`,{type:`button`,class:`link`,onClick:m[5]||=e=>u(W).push(`/orders`)},`مشاهده همه`)]),(f(!0),c(s,null,p(Ge.value,e=>(f(),c(`article`,{key:e.id,class:`order-row`,role:`button`,tabindex:`0`,onClick:t=>u(W).push({path:`/order`,query:{id:e.id}}),onKeydown:n(t=>u(W).push({path:`/order`,query:{id:e.id}}),[`enter`])},[h(`div`,Fe,[h(`span`,Ie,r(e.date),1),h(`strong`,Le,r(e.title),1),e.customer?(f(),c(`p`,Re,`مشتری: `+r(e.customer),1)):o(``,!0)]),h(`span`,{class:t([`tone`,`tone--${e.statusTone}`])},r(e.statusLabel),3),l(se,{size:16,class:`order-row__chevron`})],40,Pe))),128)),h(`button`,{type:`button`,class:`orders-all`,onClick:m[6]||=e=>u(W).push(`/orders`)},` مشاهده همه سفارش‌ها `)]),h(`section`,ze,[m[21]||=h(`h3`,{class:`section-title`},`قیمت‌های پایه (نمونه)`,-1),h(`div`,Be,[h(`div`,Ve,[h(`div`,He,[h(`strong`,null,r(Y.value.name),1),h(`p`,null,`کد: `+r(Y.value.code),1),h(`p`,null,`عرض: `+r(u(y)(Y.value.widthCm))+` سانتی‌متر`,1),h(`p`,null,`رنگ‌ها: `+r(u(y)(Y.value.colors.length))+` رنگ`,1)]),h(`div`,{class:`price-card__image`,style:d(Y.value.imageUrl?{backgroundImage:`url(${Y.value.imageUrl})`}:void 0)},null,4)]),h(`footer`,null,`قیمت پایه به شما: `+r(u(y)(tt.value))+` تومان / متر`,1)])])],64))])])]))}}),[[`__scopeId`,`data-v-7e89a222`]]),G=v({__name:`ProfileView`,setup(e){return(e,t)=>(f(),a(W))}});export{G as default}; \ No newline at end of file diff --git a/dist/assets/ProfileView-DSZdSgjW.css b/dist/assets/ProfileView-DSZdSgjW.css deleted file mode 100644 index 133277a..0000000 --- a/dist/assets/ProfileView-DSZdSgjW.css +++ /dev/null @@ -1 +0,0 @@ -.profile-page[data-v-7e89a222]{background:var(--color-primary)}.hero[data-v-7e89a222]{color:#fff;text-align:center;background:linear-gradient(145deg, var(--color-primary) 0%, color-mix(in srgb, var(--color-primary) 78%, #0a1f18) 100%);padding:0 0 28px}.hero__pin[data-v-7e89a222]{z-index:3;padding:12px var(--page-padding) 10px;background:linear-gradient(145deg, var(--color-primary) 0%, color-mix(in srgb, var(--color-primary) 78%, #0a1f18) 100%);position:sticky;top:0}.hero__top[data-v-7e89a222]{grid-template-columns:40px 1fr 40px;align-items:center;margin-bottom:12px;display:grid}.hero__top h1[data-v-7e89a222]{margin:0;font-size:1rem;font-weight:700}.icon-btn[data-v-7e89a222]{cursor:pointer;color:#fff;background:0 0;border:none;place-items:center;width:40px;height:40px;display:grid;position:relative}.icon-btn__badge[data-v-7e89a222]{top:4px;color:#fff;text-align:center;background:#f59e0b;border-radius:999px;min-width:16px;height:16px;padding:0 4px;font-size:.625rem;font-weight:700;line-height:16px;position:absolute;inset-inline-start:4px}.hero__avatar[data-v-7e89a222]{color:#fff;border:3px solid #ffffff59;margin:0 auto}.hero__meta[data-v-7e89a222]{padding:10px var(--page-padding) 0}.hero h2[data-v-7e89a222]{margin:0;font-size:1.2rem;font-weight:700}.hero p[data-v-7e89a222]{opacity:.88;margin:6px 0 12px;font-size:.85rem}.level-pill[data-v-7e89a222]{border:1px solid var(--color-level-gold);background:color-mix(in srgb, var(--color-level-gold) 16%, transparent);color:#fff;border-radius:999px;align-items:center;gap:6px;padding:5px 14px;font-size:.8125rem;display:inline-flex}.level-pill__crown[data-v-7e89a222]{width:14px;height:14px;color:var(--color-level-gold)}.profile-scroll[data-v-7e89a222]{background:0 0;flex:1;min-height:0;padding:0}.profile-sheet[data-v-7e89a222]{z-index:1;padding:20px var(--page-padding) 24px;background:var(--color-bg);border-radius:24px 24px 0 0;flex-direction:column;gap:18px;margin-top:-20px;display:flex;position:relative;box-shadow:0 -4px 16px #0000000f}.profile-sheet[data-v-7e89a222]>*{flex-shrink:0}.panel__head[data-v-7e89a222],.section-head[data-v-7e89a222]{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.panel__head h3[data-v-7e89a222],.section-head h3[data-v-7e89a222],.section-title[data-v-7e89a222]{color:var(--color-text);margin:0;font-size:.95rem;font-weight:700}.section-title[data-v-7e89a222]{margin-bottom:12px}.panel__period[data-v-7e89a222]{color:var(--color-text-muted);align-items:center;gap:2px;font-size:.8rem;display:inline-flex}.link[data-v-7e89a222]{color:var(--color-primary);cursor:pointer;background:0 0;border:none;font-family:inherit;font-size:.8rem;font-weight:600}.stats[data-v-7e89a222]{grid-template-columns:1fr 1fr;gap:10px;display:grid}.stat-card[data-v-7e89a222]{background:var(--color-surface);box-shadow:var(--shadow-sm);border:1px solid var(--color-border);border-radius:14px;flex-direction:row;justify-content:space-between;align-items:center;gap:10px;padding:12px;display:flex}.stat-card__text[data-v-7e89a222]{text-align:start;flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.stat-card__icon[data-v-7e89a222]{border-radius:10px;flex-shrink:0;place-items:center;width:32px;height:32px;display:grid}.stat-card__icon--orders[data-v-7e89a222],.stat-card__icon--customers[data-v-7e89a222]{background:color-mix(in srgb, var(--color-success) 14%, transparent);color:var(--color-success)}.stat-card__icon--profit[data-v-7e89a222]{background:color-mix(in srgb, var(--color-info) 14%, transparent);color:var(--color-info)}.stat-card__icon--sales[data-v-7e89a222]{background:color-mix(in srgb, var(--color-level-gold) 22%, transparent);color:#b8860b}.stat-card__label[data-v-7e89a222]{color:var(--color-text-muted);font-size:.75rem}.stat-card__value[data-v-7e89a222]{color:var(--color-text);font-size:1.05rem;font-weight:700;line-height:1.3}.stat-card__hint[data-v-7e89a222]{color:var(--color-text-muted);font-size:.7rem;font-style:normal}.loyalty[data-v-7e89a222]{background:var(--color-primary-soft);border-radius:14px;padding:14px}.loyalty__row[data-v-7e89a222]{align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.loyalty__crown[data-v-7e89a222]{flex-shrink:0;place-items:center;width:40px;height:40px;display:grid}.loyalty__text[data-v-7e89a222]{color:var(--color-text);text-align:center;margin:0;font-size:.75rem;font-weight:700;line-height:1.75}.loyalty__text-next[data-v-7e89a222]{display:block}.loyalty__bar[data-v-7e89a222]{background:rgba(var(--color-primary-rgb), .15);border-radius:999px;height:8px;overflow:hidden}.loyalty__bar span[data-v-7e89a222]{background:var(--color-primary);border-radius:inherit;height:100%;display:block}.quick-grid[data-v-7e89a222]{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.quick-item[data-v-7e89a222]{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);cursor:pointer;text-align:center;border-radius:14px;flex-direction:column;align-items:center;gap:8px;min-height:88px;padding:14px 8px 12px;font-family:inherit;font-size:.72rem;line-height:1.4;display:flex}.quick-item__icon[data-v-7e89a222]{width:40px;height:40px;color:var(--color-primary);place-items:center;display:grid}.orders-box[data-v-7e89a222]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:14px;flex-shrink:0;padding:4px 0 0;overflow:hidden}.orders-box .section-head[data-v-7e89a222]{margin:0;padding:12px 14px 10px}.order-row[data-v-7e89a222]{border:none;border-top:1px solid var(--color-border);cursor:pointer;background:0 0;border-radius:0;grid-template-columns:1fr auto 16px;align-items:center;gap:8px;margin:0;padding:12px 14px;display:grid}.orders-all[data-v-7e89a222]{border:none;border-top:1px solid var(--color-border);width:100%;color:var(--color-primary);font:inherit;cursor:pointer;background:0 0;border-radius:0;margin:0;padding:12px 14px;font-size:.875rem;font-weight:600}.order-row__meta[data-v-7e89a222]{text-align:start;min-width:0}.order-row__date[data-v-7e89a222]{color:var(--color-text-muted);margin-bottom:2px;font-size:.75rem;display:block}.order-row__title[data-v-7e89a222]{font-size:.875rem;display:block}.order-row__customer[data-v-7e89a222]{color:var(--color-text-muted);margin:2px 0 0;font-size:.75rem}.order-row__chevron[data-v-7e89a222]{color:var(--color-text-muted)}.tone[data-v-7e89a222]{white-space:nowrap;border-radius:999px;padding:4px 10px;font-size:.7rem}.tone--warning[data-v-7e89a222]{background:var(--color-warning-light);color:#b45309}.tone--success[data-v-7e89a222]{background:var(--color-success-light);color:var(--color-success)}.tone--info[data-v-7e89a222]{background:var(--color-info-light);color:var(--color-info)}.tone--danger[data-v-7e89a222]{background:var(--color-danger-light);color:var(--color-danger)}.price-section[data-v-7e89a222]{flex-shrink:0}.price-section .section-title[data-v-7e89a222]{margin-bottom:10px}.price-card[data-v-7e89a222]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:14px;overflow:hidden}.price-card__body[data-v-7e89a222]{grid-template-columns:1fr 88px;align-items:start;gap:12px;padding:12px;display:grid}.price-card__image[data-v-7e89a222]{background:linear-gradient(145deg, var(--color-primary), var(--color-primary-dark));background-position:50%;background-size:cover;border-radius:12px;min-height:88px}.price-card__info[data-v-7e89a222]{text-align:start}.price-card__info strong[data-v-7e89a222]{margin-bottom:4px;font-size:.9rem;display:block}.price-card__info p[data-v-7e89a222]{color:var(--color-text-muted);margin:2px 0 0;font-size:.75rem}.price-card footer[data-v-7e89a222]{border-top:1px solid var(--color-border);background:var(--color-elevated);text-align:start;padding:10px 12px;font-size:.8rem;font-weight:600}.hero__desk-actions[data-v-7e89a222]{display:none}@media (width>=768px){.profile-page[data-v-7e89a222]{max-width:var(--content-max-width);background:0 0;margin-inline:auto;padding:8px 0 28px}.profile-scroll[data-v-7e89a222]{flex-direction:column;gap:0;display:flex;overflow:visible}.hero[data-v-7e89a222]{text-align:start;border-radius:20px;grid-template-columns:auto 1fr auto;align-items:center;gap:20px;padding:24px 28px;display:grid;overflow:hidden}.hero__pin[data-v-7e89a222]{background:0 0;padding:0;display:block;position:static}.hero__avatar[data-v-7e89a222]{margin:0;width:88px!important;height:88px!important}.hero__meta[data-v-7e89a222]{padding:0}.hero h2[data-v-7e89a222]{font-size:1.5rem}.hero__desk-btn[data-v-7e89a222]{color:#fff;cursor:pointer;background:#ffffff1f;border:1px solid #ffffff59;border-radius:999px;padding:8px 14px;font-family:inherit;font-size:.8125rem;font-weight:600}.hero__desk-btn[data-v-7e89a222]:hover{background:#fff3}.hero__desk-actions[data-v-7e89a222]{flex-wrap:wrap;justify-content:flex-end;gap:8px;max-width:280px}.profile-sheet[data-v-7e89a222]{box-shadow:var(--shadow-sm);border:1px solid var(--color-border);border-radius:20px;gap:22px;margin-top:18px;padding:22px 24px 28px}.stats[data-v-7e89a222]{grid-template-columns:repeat(4,minmax(0,1fr))}.quick-grid[data-v-7e89a222]{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.quick-item[data-v-7e89a222]{min-height:88px}}@media (width>=1100px){.profile-sheet[data-v-7e89a222]{grid-template-columns:1.2fr .8fr;grid-template-areas:"panel panel""loyalty loyalty""quick quick""orders price";align-items:start;display:grid}.profile-sheet>.panel[data-v-7e89a222]{grid-area:panel}.profile-sheet>.loyalty[data-v-7e89a222]{grid-area:loyalty}.profile-sheet>.quick-section[data-v-7e89a222]{grid-area:quick}.profile-sheet>.orders-box[data-v-7e89a222]{grid-area:orders}.profile-sheet>.price-section[data-v-7e89a222]{grid-area:price}.quick-grid[data-v-7e89a222]{grid-template-columns:repeat(6,minmax(0,1fr))}} diff --git a/dist/assets/ProfileView-DeYflX6z.css b/dist/assets/ProfileView-DeYflX6z.css new file mode 100644 index 0000000..b925ad4 --- /dev/null +++ b/dist/assets/ProfileView-DeYflX6z.css @@ -0,0 +1 @@ +.profile-page[data-v-febed116]{background:var(--color-primary)}.hero[data-v-febed116]{color:#fff;text-align:center;background:linear-gradient(145deg, var(--color-primary) 0%, color-mix(in srgb, var(--color-primary) 78%, #0a1f18) 100%);padding:0 0 28px}.hero__pin[data-v-febed116]{z-index:3;padding:12px var(--page-padding) 10px;background:linear-gradient(145deg, var(--color-primary) 0%, color-mix(in srgb, var(--color-primary) 78%, #0a1f18) 100%);position:sticky;top:0}.hero__top[data-v-febed116]{grid-template-columns:40px 1fr 40px;align-items:center;margin-bottom:12px;display:grid}.hero__top h1[data-v-febed116]{margin:0;font-size:1rem;font-weight:700}.icon-btn[data-v-febed116]{cursor:pointer;color:#fff;background:0 0;border:none;place-items:center;width:40px;height:40px;display:grid;position:relative}.icon-btn__badge[data-v-febed116]{top:4px;color:#fff;text-align:center;background:#f59e0b;border-radius:999px;min-width:16px;height:16px;padding:0 4px;font-size:.625rem;font-weight:700;line-height:16px;position:absolute;inset-inline-start:4px}.hero__avatar[data-v-febed116]{color:#fff;border:3px solid #ffffff59;margin:0 auto}.hero__meta[data-v-febed116]{padding:10px var(--page-padding) 0}.hero h2[data-v-febed116]{margin:0;font-size:1.2rem;font-weight:700}.hero p[data-v-febed116]{opacity:.88;margin:6px 0 12px;font-size:.85rem}.level-pill[data-v-febed116]{border:1px solid var(--color-level-gold);background:color-mix(in srgb, var(--color-level-gold) 16%, transparent);color:#fff;border-radius:999px;align-items:center;gap:6px;padding:5px 14px;font-size:.8125rem;display:inline-flex}.level-pill__crown[data-v-febed116]{width:14px;height:14px;color:var(--color-level-gold)}.profile-scroll[data-v-febed116]{background:0 0;flex:1;min-height:0;padding:0}.profile-sheet[data-v-febed116]{z-index:1;padding:20px var(--page-padding) 24px;background:var(--color-bg);border-radius:24px 24px 0 0;flex-direction:column;gap:18px;margin-top:-20px;display:flex;position:relative;box-shadow:0 -4px 16px #0000000f}.profile-sheet[data-v-febed116]>*{flex-shrink:0}.panel__head[data-v-febed116],.section-head[data-v-febed116]{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.panel__head h3[data-v-febed116],.section-head h3[data-v-febed116],.section-title[data-v-febed116]{color:var(--color-text);margin:0;font-size:.95rem;font-weight:700}.section-title[data-v-febed116]{margin-bottom:12px}.panel__period[data-v-febed116]{color:var(--color-text-muted);align-items:center;gap:2px;font-size:.8rem;display:inline-flex}.link[data-v-febed116]{color:var(--color-primary);cursor:pointer;background:0 0;border:none;font-family:inherit;font-size:.8rem;font-weight:600}.stats[data-v-febed116]{grid-template-columns:1fr 1fr;gap:10px;display:grid}.stat-card[data-v-febed116]{background:var(--color-surface);box-shadow:var(--shadow-sm);border:1px solid var(--color-border);border-radius:14px;flex-direction:row;justify-content:space-between;align-items:center;gap:10px;padding:12px;display:flex}.stat-card__text[data-v-febed116]{text-align:start;flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.stat-card__icon[data-v-febed116]{border-radius:10px;flex-shrink:0;place-items:center;width:32px;height:32px;display:grid}.stat-card__icon--orders[data-v-febed116],.stat-card__icon--customers[data-v-febed116]{background:color-mix(in srgb, var(--color-success) 14%, transparent);color:var(--color-success)}.stat-card__icon--profit[data-v-febed116]{background:color-mix(in srgb, var(--color-info) 14%, transparent);color:var(--color-info)}.stat-card__icon--sales[data-v-febed116]{background:color-mix(in srgb, var(--color-level-gold) 22%, transparent);color:#b8860b}.stat-card__label[data-v-febed116]{color:var(--color-text-muted);font-size:.75rem}.stat-card__value[data-v-febed116]{color:var(--color-text);font-size:1.05rem;font-weight:700;line-height:1.3}.stat-card__hint[data-v-febed116]{color:var(--color-text-muted);font-size:.7rem;font-style:normal}.loyalty[data-v-febed116]{background:var(--color-primary-soft);border-radius:14px;padding:14px}.loyalty__row[data-v-febed116]{align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.loyalty__crown[data-v-febed116]{flex-shrink:0;place-items:center;width:40px;height:40px;display:grid}.loyalty__text[data-v-febed116]{color:var(--color-text);text-align:center;margin:0;font-size:.75rem;font-weight:700;line-height:1.75}.loyalty__text-next[data-v-febed116]{display:block}.loyalty__bar[data-v-febed116]{background:rgba(var(--color-primary-rgb), .15);border-radius:999px;height:8px;overflow:hidden}.loyalty__bar span[data-v-febed116]{background:var(--color-primary);border-radius:inherit;height:100%;display:block}.quick-grid[data-v-febed116]{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.quick-item[data-v-febed116]{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);cursor:pointer;text-align:center;border-radius:14px;flex-direction:column;align-items:center;gap:8px;min-height:88px;padding:14px 8px 12px;font-family:inherit;font-size:.72rem;line-height:1.4;display:flex}.quick-item__icon[data-v-febed116]{width:40px;height:40px;color:var(--color-primary);place-items:center;display:grid}.orders-box[data-v-febed116]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:14px;flex-shrink:0;padding:4px 0 0;overflow:hidden}.orders-box .section-head[data-v-febed116]{margin:0;padding:12px 14px 10px}.order-row[data-v-febed116]{border:none;border-top:1px solid var(--color-border);cursor:pointer;background:0 0;border-radius:0;grid-template-columns:1fr auto 16px;align-items:center;gap:8px;margin:0;padding:12px 14px;display:grid}.orders-all[data-v-febed116]{border:none;border-top:1px solid var(--color-border);width:100%;color:var(--color-primary);font:inherit;cursor:pointer;background:0 0;border-radius:0;margin:0;padding:12px 14px;font-size:.875rem;font-weight:600}.order-row__meta[data-v-febed116]{text-align:start;min-width:0}.order-row__date[data-v-febed116]{color:var(--color-text-muted);margin-bottom:2px;font-size:.75rem;display:block}.order-row__title[data-v-febed116]{font-size:.875rem;display:block}.order-row__customer[data-v-febed116]{color:var(--color-text-muted);margin:2px 0 0;font-size:.75rem}.order-row__chevron[data-v-febed116]{color:var(--color-text-muted)}.tone[data-v-febed116]{white-space:nowrap;border-radius:999px;padding:4px 10px;font-size:.7rem}.tone--warning[data-v-febed116]{background:var(--color-warning-light);color:#b45309}.tone--success[data-v-febed116]{background:var(--color-success-light);color:var(--color-success)}.tone--info[data-v-febed116]{background:var(--color-info-light);color:var(--color-info)}.tone--danger[data-v-febed116]{background:var(--color-danger-light);color:var(--color-danger)}.price-section[data-v-febed116]{flex-shrink:0}.price-section .section-title[data-v-febed116]{margin-bottom:10px}.price-card[data-v-febed116]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:14px;overflow:hidden}.price-card__body[data-v-febed116]{grid-template-columns:1fr 88px;align-items:start;gap:12px;padding:12px;display:grid}.price-card__image[data-v-febed116]{background:linear-gradient(145deg, var(--color-primary), var(--color-primary-dark));background-position:50%;background-size:cover;border-radius:12px;min-height:88px}.price-card__info[data-v-febed116]{text-align:start}.price-card__info strong[data-v-febed116]{margin-bottom:4px;font-size:.9rem;display:block}.price-card__info p[data-v-febed116]{color:var(--color-text-muted);margin:2px 0 0;font-size:.75rem}.price-card footer[data-v-febed116]{border-top:1px solid var(--color-border);background:var(--color-elevated);text-align:start;padding:10px 12px;font-size:.8rem;font-weight:600}.hero__desk-actions[data-v-febed116]{display:none}@media (width>=768px){.profile-page[data-v-febed116]{max-width:var(--content-max-width);background:0 0;margin-inline:auto;padding:8px 0 28px}.profile-scroll[data-v-febed116]{flex-direction:column;gap:0;display:flex;overflow:visible}.hero[data-v-febed116]{text-align:start;border-radius:20px;grid-template-columns:auto 1fr auto;align-items:center;gap:20px;padding:24px 28px;display:grid;overflow:hidden}.hero__pin[data-v-febed116]{background:0 0;padding:0;display:block;position:static}.hero__avatar[data-v-febed116]{margin:0;width:88px!important;height:88px!important}.hero__meta[data-v-febed116]{padding:0}.hero h2[data-v-febed116]{font-size:1.5rem}.hero__desk-btn[data-v-febed116]{color:#fff;cursor:pointer;background:#ffffff1f;border:1px solid #ffffff59;border-radius:999px;padding:8px 14px;font-family:inherit;font-size:.8125rem;font-weight:600}.hero__desk-btn[data-v-febed116]:hover{background:#fff3}.hero__desk-actions[data-v-febed116]{flex-wrap:wrap;justify-content:flex-end;gap:8px;max-width:280px}.profile-sheet[data-v-febed116]{box-shadow:var(--shadow-sm);border:1px solid var(--color-border);border-radius:20px;gap:22px;margin-top:18px;padding:22px 24px 28px}.stats[data-v-febed116]{grid-template-columns:repeat(4,minmax(0,1fr))}.quick-grid[data-v-febed116]{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.quick-item[data-v-febed116]{min-height:88px}}@media (width>=1100px){.profile-sheet[data-v-febed116]{grid-template-columns:1.2fr .8fr;grid-template-areas:"panel panel""loyalty loyalty""quick quick""orders price";align-items:start;display:grid}.profile-sheet>.panel[data-v-febed116]{grid-area:panel}.profile-sheet>.loyalty[data-v-febed116]{grid-area:loyalty}.profile-sheet>.quick-section[data-v-febed116]{grid-area:quick}.profile-sheet>.orders-box[data-v-febed116]{grid-area:orders}.profile-sheet>.price-section[data-v-febed116]{grid-area:price}.quick-grid[data-v-febed116]{grid-template-columns:repeat(6,minmax(0,1fr))}} diff --git a/dist/assets/ProfileView-DnQpKT74.js b/dist/assets/ProfileView-DnQpKT74.js new file mode 100644 index 0000000..74926a4 --- /dev/null +++ b/dist/assets/ProfileView-DnQpKT74.js @@ -0,0 +1 @@ +import{A as e,Ct as t,Dt as n,E as ee,Et as r,I as te,J as i,L as a,M as o,N as s,O as c,P as l,Q as u,R as d,X as f,_ as ne,ht as p,j as m,n as re,t as h,wt as ie,z as g}from"./BasicIcon-Bnxm-DKk.js";import{o as _,r as ae}from"./format-C72AoJ2H.js";import{O as oe,S as se,c as ce,d as le,o as ue,r as v,s as y,u as b}from"./index-DB4cQnln.js";import{r as x,t as S}from"./constants-DXXK14Zz.js";import{t as C}from"./PageSkeleton-CpZ7eT1v.js";import{n as w,t as T}from"./crm-CZ7XH3z9.js";var E={class:`page profile-page`},D={class:`page__scroll page__scroll--with-nav profile-scroll`},O={class:`hero`},k={class:`hero__pin`},A={class:`hero__top mobile-only`},j=[`aria-label`],M={class:`hero__meta`},N={class:`level-pill`},P={class:`hero__desk-actions desktop-only-flex`},F={class:`profile-sheet`},I={class:`panel`},L={class:`panel__head`},R={class:`panel__period`},z={class:`stats`},B={class:`stat-card`},V={class:`stat-card__text`},H={class:`stat-card__value`},U={class:`stat-card__icon stat-card__icon--orders`},de={class:`stat-card`},fe={class:`stat-card__text`},pe={class:`stat-card__value`},me={class:`stat-card__icon stat-card__icon--customers`},he={class:`stat-card`},ge={class:`stat-card__text`},_e={class:`stat-card__value`},ve={class:`stat-card__icon stat-card__icon--profit`},ye={class:`stat-card`},be={class:`stat-card__text`},xe={class:`stat-card__value`},Se={class:`stat-card__icon stat-card__icon--sales`},Ce={class:`loyalty`},we={class:`loyalty__row`},Te={class:`loyalty__text`},Ee={class:`loyalty__text-next`},De={class:`loyalty__bar`},Oe={class:`quick-section`},ke={class:`quick-grid`},Ae=[`onClick`],je={class:`quick-item__icon`},Me={class:`orders-box`},Ne={class:`section-head`},Pe=[`onClick`,`onKeydown`],Fe={class:`order-row__meta`},Ie={class:`order-row__date`},Le={class:`order-row__title`},Re={key:0,class:`order-row__customer`},ze={class:`price-section`},Be={class:`price-card`},Ve={class:`price-card__body`},He={class:`price-card__info`},W=re(g({__name:`MobileProfilePage`,setup(re){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=ne(),G=ce(),K=le(),Ue=T(),q=b(),J=p(null),Y=p(g),X=p(!1),We=[{label:`ثبت مشتری جدید`,to:`/customers`,icon:`vuesax-linear:add`},{label:`سفارش‌ها`,to:`/orders`,icon:`vuesax-linear:document-text`},{label:`مشتریان من`,to:`/customers`,icon:`vuesax-linear:people`},{label:`گزارش‌ها`,to:`/reminders`,icon:`vuesax-linear:chart-2`},{label:`درخواست کالیته`,to:`/catalog-request`,icon:`vuesax-linear:category`},{label:`قیمت‌گذاری`,to:`/categories`,icon:`vuesax-linear:money-4`}],Ge=e(()=>[...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?ae(e.createdAt):``,customer:e.companyName||``,statusLabel:S[e.status]||e.status,statusTone:n}})),Z=e(()=>G.fullName||`کاربر`),Q=e(()=>J.value?.code||G.user?.agentCode||`—`),$=e(()=>J.value?.levelLabel||G.user?.levelLabel||`برنزی`),Ke=e(()=>J.value?.nextLevelLabel||G.user?.nextLevelLabel||`نقره‌ای`),qe=e(()=>J.value?.pointsToNext??G.user?.pointsToNext??0),Je=e(()=>J.value?.periodLabel||`۳۰ روز اخیر`),Ye=e(()=>J.value?.customersCount??0),Xe=e(()=>J.value?.ordersCount??K.orders.length),Ze=e(()=>J.value?.salesVolumeToman??0),Qe=e(()=>J.value?.profitToman??0),$e=e(()=>J.value?.levelProgress??G.user?.levelProgress??0),et=e(()=>q.unreadCount>9?`9+`:String(q.unreadCount)),tt=e(()=>Y.value.basePrice??g.basePrice??0);return i(async()=>{X.value=!0;try{q.hydrate();try{J.value=await w()}catch{J.value=null}try{let e=(await Ue.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}}),(e,i)=>(f(),l(`div`,E,[m(`div`,D,[m(`header`,O,[m(`div`,k,[m(`div`,A,[m(`button`,{type:`button`,class:`icon-btn`,"aria-label":`تنظیمات`,onClick:i[0]||=e=>t(W).push(`/profile/display`)},[d(se,{size:20,color:`#ffffff`})]),i[5]||=m(`h1`,null,`پروفایل من`,-1),m(`button`,{type:`button`,class:`icon-btn`,"aria-label":`اعلان‌ها`,onClick:i[1]||=e=>t(W).push(`/profile/notifications`)},[d(y,{size:20,color:`#ffffff`}),t(q).hasUnread?(f(),l(`span`,{key:0,class:`icon-btn__badge`,"aria-label":`${t(q).unreadCount} اعلان خوانده‌نشده`},n(et.value),9,j)):s(``,!0)])]),d(v,{class:`hero__avatar`,src:t(G).user?.avatarUrl,initials:Z.value.charAt(0),size:84},null,8,[`src`,`initials`])]),m(`div`,M,[m(`h2`,null,n(Z.value),1),m(`p`,null,`کد واسطه: `+n(Q.value),1),m(`span`,N,[i[6]||=m(`svg`,{class:`level-pill__crown`,viewBox:`0 0 24 24`,"aria-hidden":`true`},[m(`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(` سطح: `+n($.value),1)])]),m(`div`,P,[m(`button`,{type:`button`,class:`hero__desk-btn`,onClick:i[2]||=e=>t(W).push(`/profile/edit`)},` ویرایش اطلاعات `)])]),m(`div`,F,[X.value?(f(),o(C,{key:0,variant:`profile`})):(f(),l(c,{key:1},[m(`section`,I,[m(`div`,L,[i[7]||=m(`h3`,null,`خلاصه عملکرد`,-1),m(`span`,R,[a(n(Je.value)+` `,1),d(h,{icon:`vuesax-linear:arrow-down`,size:14,"stroke-width":1.5})])]),m(`div`,z,[m(`div`,B,[m(`div`,V,[i[8]||=m(`span`,{class:`stat-card__label`},`سفارش‌ها`,-1),m(`strong`,H,n(t(_)(Xe.value)),1),i[9]||=m(`em`,{class:`stat-card__hint`},`سفارش`,-1)]),m(`span`,U,[d(oe,{size:18})])]),m(`div`,de,[m(`div`,fe,[i[10]||=m(`span`,{class:`stat-card__label`},`مشتریان من`,-1),m(`strong`,pe,n(t(_)(Ye.value)),1),i[11]||=m(`em`,{class:`stat-card__hint`},`مشتری فعال`,-1)]),m(`span`,me,[d(h,{icon:`vuesax-linear:people`,size:18,"stroke-width":1.5})])]),m(`div`,he,[m(`div`,ge,[i[12]||=m(`span`,{class:`stat-card__label`},`سود شما (ریال)`,-1),m(`strong`,_e,n(t(_)(Qe.value)),1),i[13]||=m(`em`,{class:`stat-card__hint`},`تومان`,-1)]),m(`span`,ve,[d(h,{icon:`vuesax-linear:chart-2`,size:18,"stroke-width":1.5})])]),m(`div`,ye,[m(`div`,be,[i[14]||=m(`span`,{class:`stat-card__label`},`حجم فروش (ریال)`,-1),m(`strong`,xe,n(t(_)(Ze.value)),1),i[15]||=m(`em`,{class:`stat-card__hint`},`تومان`,-1)]),m(`span`,Se,[d(h,{icon:`vuesax-linear:wallet`,size:18,"stroke-width":1.5})])])])]),m(`section`,Ce,[m(`div`,we,[i[16]||=te(``,1),m(`p`,Te,[m(`span`,null,`شما در سطح `+n($.value)+` قرار دارید.`,1),m(`span`,Ee,` تا سطح `+n(Ke.value)+` فقط `+n(t(_)(qe.value))+` تومان فروش دیگر نیاز دارید. `,1)])]),m(`div`,De,[m(`span`,{style:r({width:`${Math.min(100,Math.max(0,$e.value))}%`})},null,4)])]),m(`section`,Oe,[i[17]||=m(`h3`,{class:`section-title`},`دسترسی سریع`,-1),m(`div`,ke,[(f(),l(c,null,u(We,e=>m(`button`,{key:e.label,type:`button`,class:`quick-item`,onClick:n=>t(W).push(e.to)},[m(`span`,je,[d(h,{icon:e.icon,size:22,"stroke-width":1.5},null,8,[`icon`])]),a(` `+n(e.label),1)],8,Ae)),64))])]),m(`section`,Me,[m(`div`,Ne,[i[18]||=m(`h3`,null,`آخرین سفارش‌ها`,-1),m(`button`,{type:`button`,class:`link`,onClick:i[3]||=e=>t(W).push(`/orders`)},`مشاهده همه`)]),(f(!0),l(c,null,u(Ge.value,e=>(f(),l(`article`,{key:e.id,class:`order-row`,role:`button`,tabindex:`0`,onClick:n=>t(W).push({path:`/order`,query:{id:e.id}}),onKeydown:ee(n=>t(W).push({path:`/order`,query:{id:e.id}}),[`enter`])},[m(`div`,Fe,[m(`span`,Ie,n(e.date),1),m(`strong`,Le,n(e.title),1),e.customer?(f(),l(`p`,Re,`مشتری: `+n(e.customer),1)):s(``,!0)]),m(`span`,{class:ie([`tone`,`tone--${e.statusTone}`])},n(e.statusLabel),3),d(ue,{size:16,class:`order-row__chevron`})],40,Pe))),128)),m(`button`,{type:`button`,class:`orders-all`,onClick:i[4]||=e=>t(W).push(`/orders`)},` مشاهده همه سفارش‌ها `)]),m(`section`,ze,[i[19]||=m(`h3`,{class:`section-title`},`قیمت‌های پایه (نمونه)`,-1),m(`div`,Be,[m(`div`,Ve,[m(`div`,He,[m(`strong`,null,n(Y.value.name),1),m(`p`,null,`کد: `+n(Y.value.code),1),m(`p`,null,`عرض: `+n(t(_)(Y.value.widthCm))+` سانتی‌متر`,1),m(`p`,null,`رنگ‌ها: `+n(t(_)(Y.value.colors.length))+` رنگ`,1)]),m(`div`,{class:`price-card__image`,style:r(Y.value.imageUrl?{backgroundImage:`url(${Y.value.imageUrl})`}:void 0)},null,4)]),m(`footer`,null,`قیمت پایه به شما: `+n(t(_)(tt.value))+` تومان / متر`,1)])])],64))])])]))}}),[[`__scopeId`,`data-v-febed116`]]),G=g({__name:`ProfileView`,setup(e){return(e,t)=>(f(),o(W))}});export{G as default}; \ No newline at end of file diff --git a/dist/assets/RegisterView-EXVxZpxx.js b/dist/assets/RegisterView-EXVxZpxx.js new file mode 100644 index 0000000..a565d11 --- /dev/null +++ b/dist/assets/RegisterView-EXVxZpxx.js @@ -0,0 +1 @@ +import{A as e,Ct as t,D as n,Dt as r,I as ee,L as i,M as a,N as o,O as s,P as c,Q as te,R as l,S as ne,X as u,_ as re,at as d,ht as f,j as p,n as m,t as h,w as g,wt as _,z as v}from"./BasicIcon-Bnxm-DKk.js";import{t as ie}from"./dist-CeuESLw-.js";import{d as ae,l as y}from"./format-C72AoJ2H.js";import{a as b}from"./validation-Duyyve7l.js";import{E as x,c as oe,g as se,m as S,o as C}from"./index-DB4cQnln.js";import{t as ce}from"./FormErrorBanner-BahrrGfv.js";import{t as le}from"./IconPhone-Dp7Txh8V.js";import{n as ue,r as w,t as T}from"./formErrors-DglFjYkZ.js";import{t as E}from"./IconDiamond-CGMEs3wg.js";var D=v({__name:`IconVerified`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(u(),a(h,{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`},de=[`disabled`],fe={key:0,class:`register-submit__spinner`,"aria-hidden":`true`},pe={class:`register-submit__chevron`,"aria-hidden":`true`},me={class:`register-terms`},he={key:0,viewBox:`0 0 12 12`,fill:`none`},ge={key:3,class:`reg-field__error`},_e={class:`register-perks`,"aria-label":`مزایا`},ve={class:`register-perk`},ye={class:`register-perk`},be={class:`register-perk`},xe={class:`register-foot`},Se=[`src`],U=m(v({__name:`RegisterView`,setup(a){let m=re(),v=oe(),U=f(``),W=f(``),G=f(``),K=f(``),q=f(!0),J=f(!1),Y=f(null),X=f({}),Z=f(``),Q=e(()=>G.value?ae(G.value):``),Ce=e(()=>S.find(e=>e.id===K.value)?.label??`دسته‌بندی شغلی`);ie(Y,()=>{J.value=!1});function we(e){K.value=e,J.value=!1,$(`jobCategory`)}function $(e){X.value=ue(X.value,e),w(X.value)||(Z.value=``)}function Te(e){G.value=y(e),$(`phone`)}async function Ee(){X.value={},Z.value=``;let e=y(G.value),t={};if(U.value.trim()||(t.firstName=`نام الزامی است.`),W.value.trim()||(t.lastName=`نام خانوادگی الزامی است.`),b(e)||(t.phone=`شماره موبایل معتبر نیست.`),K.value||(t.jobCategory=`دسته‌بندی شغلی الزامی است.`),q.value||(t.terms=`پذیرش قوانین برای ثبت‌نام لازم است.`),w(t)){X.value=t,Z.value=T;return}let n={firstName:U.value.trim(),lastName:W.value.trim(),jobCategory:K.value};se(n);let r=await v.requestOtp(e,{isRegister:!0,firstName:n.firstName,lastName:n.lastName});r.success?m.push({name:`otp`,query:{phone:e,mode:`register`}}):Z.value=r.message??`خطا در ارسال کد تأیید.`}return(e,a)=>(u(),c(`div`,k,[p(`div`,A,[p(`div`,j,[p(`header`,M,[a[8]||=p(`p`,{class:`register-top__welcome`},`همراه ما باشید`,-1),p(`button`,{type:`button`,class:`register-top__back`,"aria-label":`بازگشت`,onClick:a[0]||=e=>t(m).push(`/login`)},[l(C,{size:20,color:`#2A2622`})])]),a[18]||=p(`h1`,{class:`register-title`},`ثبت‌نام در نادمی تکس`,-1),a[19]||=p(`p`,{class:`register-lead`},`با چند مرحله ساده، عضوی از خانواده ما شوید.`,-1),p(`form`,{class:`register-form`,onSubmit:n(Ee,[`prevent`])},[l(ce,{message:Z.value},null,8,[`message`]),p(`label`,{class:_([`reg-field`,{"is-invalid":!!X.value.firstName}])},[l(x,{size:18,color:`#8A847C`}),d(p(`input`,{"onUpdate:modelValue":a[1]||=e=>U.value=e,class:`reg-field__input`,type:`text`,autocomplete:`given-name`,onInput:a[2]||=e=>$(`firstName`),placeholder:`نام`},null,544),[[g,U.value]])],2),X.value.firstName?(u(),c(`p`,N,r(X.value.firstName),1)):o(``,!0),p(`label`,{class:_([`reg-field`,{"is-invalid":!!X.value.lastName}])},[l(x,{size:18,color:`#8A847C`}),d(p(`input`,{"onUpdate:modelValue":a[3]||=e=>W.value=e,class:`reg-field__input`,type:`text`,dir:`rtl`,autocomplete:`family-name`,onInput:a[4]||=e=>$(`lastName`),placeholder:`نام خانوادگی`},null,544),[[g,W.value]])],2),X.value.lastName?(u(),c(`p`,P,r(X.value.lastName),1)):o(``,!0),p(`label`,{class:_([`reg-field`,{"is-invalid":!!X.value.phone}])},[l(le,{size:18,color:`#8A847C`}),p(`span`,F,[a[9]||=ee(``,1),p(`input`,{class:`reg-field__input reg-field__input--phone`,value:Q.value,type:`tel`,inputmode:`numeric`,autocomplete:`tel`,dir:`rtl`,maxlength:`11`,placeholder:`شماره موبایل`,onInput:a[5]||=e=>Te(e.target.value)},null,40,I)])],2),X.value.phone?(u(),c(`p`,L,r(X.value.phone),1)):o(``,!0),p(`div`,{ref_key:`jobRoot`,ref:Y,class:`job-wrap`},[p(`button`,{type:`button`,class:_([`reg-field job-trigger`,{"is-open":J.value,"is-invalid":!!X.value.jobCategory}]),"aria-haspopup":`listbox`,"aria-expanded":J.value,onClick:a[6]||=e=>J.value=!J.value},[p(`span`,z,[l(h,{icon:`vuesax-linear:category`,size:18,color:`#8A847C`}),p(`span`,{class:_({"is-placeholder":!K.value})},r(Ce.value),3)]),a[10]||=p(`svg`,{class:`job-chevron`,viewBox:`0 0 12 12`,"aria-hidden":`true`},[p(`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),J.value?(u(),c(`ul`,B,[(u(!0),c(s,null,te(t(S),e=>(u(),c(`li`,{key:e.id},[p(`button`,{type:`button`,role:`option`,class:_([`job-option`,{"is-active":K.value===e.id}]),"aria-selected":K.value===e.id,onClick:t=>we(e.id)},r(e.label),11,V)]))),128))])):o(``,!0),X.value.jobCategory?(u(),c(`p`,H,r(X.value.jobCategory),1)):o(``,!0)],512),p(`button`,{class:`register-submit`,type:`submit`,disabled:t(v).loading},[t(v).loading?(u(),c(`span`,fe)):o(``,!0),p(`span`,pe,[l(C,{size:18,color:`#F4EDE4`})]),a[11]||=p(`span`,null,`دریافت کد تأیید`,-1)],8,de),p(`label`,me,[d(p(`input`,{"onUpdate:modelValue":a[7]||=e=>q.value=e,class:`register-terms__native`,type:`checkbox`},null,512),[[ne,q.value]]),p(`span`,{class:_([`register-terms__box`,{"is-on":q.value}]),"aria-hidden":`true`},[q.value?(u(),c(`svg`,he,[...a[12]||=[p(`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)]])):o(``,!0)],2),a[13]||=p(`span`,null,[i(` با ثبت‌نام، `),p(`strong`,null,`قوانین و شرایط`),i(` استفاده از سرویس را می‌پذیرم. `)],-1)]),X.value.terms?(u(),c(`p`,ge,r(X.value.terms),1)):o(``,!0)],32),p(`section`,_e,[p(`article`,ve,[l(D,{size:22,color:`#6F6B66`}),a[14]||=p(`strong`,null,`اطمینان از اصالت محصولات`,-1)]),p(`article`,ye,[l(h,{icon:`vuesax-linear:truck-time`,size:22,color:`#6F6B66`}),a[15]||=p(`strong`,null,`دسترسی سریع به کالیته‌های جدید`,-1)]),p(`article`,be,[l(E,{size:22,color:`#6F6B66`}),a[16]||=p(`strong`,null,`تجربه خرید ویژه مشتریان`,-1)])]),p(`div`,xe,[p(`img`,{class:`register-foot__bg`,src:t(O),alt:``},null,8,Se),a[17]||=p(`p`,{class:`register-foot__copy`},[i(`همراه حرفه‌ای`),p(`br`),i(`کسب‌وکار شما`)],-1)])])])]))}}),[[`__scopeId`,`data-v-dd0b86d6`]]);export{U as default}; \ No newline at end of file diff --git a/dist/assets/RegisterView-P-RrLS2U.js b/dist/assets/RegisterView-P-RrLS2U.js deleted file mode 100644 index 673f2d1..0000000 --- a/dist/assets/RegisterView-P-RrLS2U.js +++ /dev/null @@ -1 +0,0 @@ -import{A as e,Ct as t,D as n,Et as r,I as ee,L as i,M as a,N as o,O as te,P as s,R as c,S as ne,St as l,Y as u,Z as re,_ as d,it as f,j as p,mt as m,n as h,t as g,w as _,z as v}from"./BasicIcon-C6boaehV.js";import{t as ie}from"./dist-B7sUlTMM.js";import{c as y,u as ae}from"./format-BHJptHdF.js";import{a as b}from"./validation-BD7oi-2I.js";import{c as oe,g as se,m as x,o as S,x as C}from"./index-fdhs4HNc.js";import{t as ce}from"./FormErrorBanner-CjdBfIQT.js";import{t as le}from"./IconPhone-C0bnM4fV.js";import{n as ue,r as w,t as T}from"./formErrors-DglFjYkZ.js";import{t as E}from"./IconDiamond-Bgv1zgqc.js";var D=v({__name:`IconVerified`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(u(),a(g,{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`},de=[`disabled`],fe={key:0,class:`register-submit__spinner`,"aria-hidden":`true`},pe={class:`register-submit__chevron`,"aria-hidden":`true`},me={class:`register-terms`},he={key:0,viewBox:`0 0 12 12`,fill:`none`},ge={key:3,class:`reg-field__error`},_e={class:`register-perks`,"aria-label":`مزایا`},ve={class:`register-perk`},ye={class:`register-perk`},be={class:`register-perk`},xe={class:`register-foot`},Se=[`src`],U=h(v({__name:`RegisterView`,setup(a){let h=d(),v=oe(),U=m(``),W=m(``),G=m(``),K=m(``),q=m(!0),J=m(!1),Y=m(null),X=m({}),Z=m(``),Ce=e(()=>G.value?ae(G.value):``),we=e(()=>x.find(e=>e.id===K.value)?.label??`دسته‌بندی شغلی`);ie(Y,()=>{J.value=!1});function Q(e){K.value=e,J.value=!1,$(`jobCategory`)}function $(e){X.value=ue(X.value,e),w(X.value)||(Z.value=``)}function Te(e){G.value=y(e),$(`phone`)}async function Ee(){X.value={},Z.value=``;let e=y(G.value),t={};if(U.value.trim()||(t.firstName=`نام الزامی است.`),W.value.trim()||(t.lastName=`نام خانوادگی الزامی است.`),b(e)||(t.phone=`شماره موبایل معتبر نیست.`),K.value||(t.jobCategory=`دسته‌بندی شغلی الزامی است.`),q.value||(t.terms=`پذیرش قوانین برای ثبت‌نام لازم است.`),w(t)){X.value=t,Z.value=T;return}let n={firstName:U.value.trim(),lastName:W.value.trim(),jobCategory:K.value};se(n);let r=await v.requestOtp(e,{isRegister:!0,firstName:n.firstName,lastName:n.lastName});r.success?h.push({name:`otp`,query:{phone:e,mode:`register`}}):Z.value=r.message??`خطا در ارسال کد تأیید.`}return(e,a)=>(u(),s(`div`,k,[p(`div`,A,[p(`div`,j,[p(`header`,M,[a[8]||=p(`p`,{class:`register-top__welcome`},`همراه ما باشید`,-1),p(`button`,{type:`button`,class:`register-top__back`,"aria-label":`بازگشت`,onClick:a[0]||=e=>l(h).push(`/login`)},[c(S,{size:20,color:`#2A2622`})])]),a[18]||=p(`h1`,{class:`register-title`},`ثبت‌نام در نادمی تکس`,-1),a[19]||=p(`p`,{class:`register-lead`},`با چند مرحله ساده، عضوی از خانواده ما شوید.`,-1),p(`form`,{class:`register-form`,onSubmit:n(Ee,[`prevent`])},[c(ce,{message:Z.value},null,8,[`message`]),p(`label`,{class:t([`reg-field`,{"is-invalid":!!X.value.firstName}])},[c(C,{size:18,color:`#8A847C`}),f(p(`input`,{"onUpdate:modelValue":a[1]||=e=>U.value=e,class:`reg-field__input`,type:`text`,autocomplete:`given-name`,onInput:a[2]||=e=>$(`firstName`),placeholder:`نام`},null,544),[[_,U.value]])],2),X.value.firstName?(u(),s(`p`,N,r(X.value.firstName),1)):o(``,!0),p(`label`,{class:t([`reg-field`,{"is-invalid":!!X.value.lastName}])},[c(C,{size:18,color:`#8A847C`}),f(p(`input`,{"onUpdate:modelValue":a[3]||=e=>W.value=e,class:`reg-field__input`,type:`text`,dir:`rtl`,autocomplete:`family-name`,onInput:a[4]||=e=>$(`lastName`),placeholder:`نام خانوادگی`},null,544),[[_,W.value]])],2),X.value.lastName?(u(),s(`p`,P,r(X.value.lastName),1)):o(``,!0),p(`label`,{class:t([`reg-field`,{"is-invalid":!!X.value.phone}])},[c(le,{size:18,color:`#8A847C`}),p(`span`,F,[a[9]||=ee(``,1),p(`input`,{class:`reg-field__input reg-field__input--phone`,value:Ce.value,type:`tel`,inputmode:`numeric`,autocomplete:`tel`,dir:`rtl`,maxlength:`11`,placeholder:`شماره موبایل`,onInput:a[5]||=e=>Te(e.target.value)},null,40,I)])],2),X.value.phone?(u(),s(`p`,L,r(X.value.phone),1)):o(``,!0),p(`div`,{ref_key:`jobRoot`,ref:Y,class:`job-wrap`},[p(`button`,{type:`button`,class:t([`reg-field job-trigger`,{"is-open":J.value,"is-invalid":!!X.value.jobCategory}]),"aria-haspopup":`listbox`,"aria-expanded":J.value,onClick:a[6]||=e=>J.value=!J.value},[p(`span`,z,[c(g,{icon:`vuesax-linear:category`,size:18,color:`#8A847C`}),p(`span`,{class:t({"is-placeholder":!K.value})},r(we.value),3)]),a[10]||=p(`svg`,{class:`job-chevron`,viewBox:`0 0 12 12`,"aria-hidden":`true`},[p(`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),J.value?(u(),s(`ul`,B,[(u(!0),s(te,null,re(l(x),e=>(u(),s(`li`,{key:e.id},[p(`button`,{type:`button`,role:`option`,class:t([`job-option`,{"is-active":K.value===e.id}]),"aria-selected":K.value===e.id,onClick:t=>Q(e.id)},r(e.label),11,V)]))),128))])):o(``,!0),X.value.jobCategory?(u(),s(`p`,H,r(X.value.jobCategory),1)):o(``,!0)],512),p(`button`,{class:`register-submit`,type:`submit`,disabled:l(v).loading},[l(v).loading?(u(),s(`span`,fe)):o(``,!0),p(`span`,pe,[c(S,{size:18,color:`#F4EDE4`})]),a[11]||=p(`span`,null,`دریافت کد تأیید`,-1)],8,de),p(`label`,me,[f(p(`input`,{"onUpdate:modelValue":a[7]||=e=>q.value=e,class:`register-terms__native`,type:`checkbox`},null,512),[[ne,q.value]]),p(`span`,{class:t([`register-terms__box`,{"is-on":q.value}]),"aria-hidden":`true`},[q.value?(u(),s(`svg`,he,[...a[12]||=[p(`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)]])):o(``,!0)],2),a[13]||=p(`span`,null,[i(` با ثبت‌نام، `),p(`strong`,null,`قوانین و شرایط`),i(` استفاده از سرویس را می‌پذیرم. `)],-1)]),X.value.terms?(u(),s(`p`,ge,r(X.value.terms),1)):o(``,!0)],32),p(`section`,_e,[p(`article`,ve,[c(D,{size:22,color:`#6F6B66`}),a[14]||=p(`strong`,null,`اطمینان از اصالت محصولات`,-1)]),p(`article`,ye,[c(g,{icon:`vuesax-linear:truck-time`,size:22,color:`#6F6B66`}),a[15]||=p(`strong`,null,`دسترسی سریع به کالیته‌های جدید`,-1)]),p(`article`,be,[c(E,{size:22,color:`#6F6B66`}),a[16]||=p(`strong`,null,`تجربه خرید ویژه مشتریان`,-1)])]),p(`div`,xe,[p(`img`,{class:`register-foot__bg`,src:l(O),alt:``},null,8,Se),a[17]||=p(`p`,{class:`register-foot__copy`},[i(`همراه حرفه‌ای`),p(`br`),i(`کسب‌وکار شما`)],-1)])])])]))}}),[[`__scopeId`,`data-v-dd0b86d6`]]);export{U as default}; \ No newline at end of file diff --git a/dist/assets/ReminderDetailView-DHzMhSyb.js b/dist/assets/ReminderDetailView-DHzMhSyb.js new file mode 100644 index 0000000..9db2573 --- /dev/null +++ b/dist/assets/ReminderDetailView-DHzMhSyb.js @@ -0,0 +1 @@ +import{A as e,Ct as t,Dt as n,Et as r,J as i,N as a,O as o,P as s,Q as c,R as l,X as u,_ as d,g as f,ht as p,j as m,n as h,nt as g,z as _}from"./BasicIcon-Bnxm-DKk.js";import{c as v}from"./index-DB4cQnln.js";import{t as y}from"./PageSkeleton-CpZ7eT1v.js";import{t as b}from"./crm-CZ7XH3z9.js";import{t as x}from"./PageHeader-BxTTQB_F.js";var S={key:0,class:`page reminder-detail`},C={class:`page__scroll detail-scroll`},w={key:0,class:`form-error`},T={class:`layout`},ee={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=h(_({__name:`ReminderDetailView`,setup(h){let _=f(),B=d(),V=b(),H=v(),U=e(()=>String(_.query.id??``)),W=p(null),G=p(null),K=p([]),q=p(!0),J=p(!1),Y=p(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}}i(X),g(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=e(()=>H.fullName||`واسطه`),$=e(()=>{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=e(()=>{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(e,i)=>W.value&&G.value?(u(),s(`div`,S,[l(x,{title:`جزئیات یادآور`,"show-back":``,centered:``,onBack:i[0]||=e=>t(B).back()}),m(`div`,C,[Y.value?(u(),s(`p`,w,n(Y.value),1)):a(``,!0),m(`div`,T,[m(`section`,ee,[i[8]||=m(`h2`,null,`جزئیات یادآور`,-1),m(`div`,E,[i[3]||=m(`span`,null,`عنوان`,-1),m(`strong`,null,n(W.value.title)+` — `+n(W.value.description),1)]),m(`div`,D,[i[4]||=m(`span`,null,`مشتری`,-1),m(`div`,O,[m(`div`,{class:`avatar`,style:r({background:G.value.avatarColor})},n(G.value.avatarLetter),5),m(`div`,null,[m(`strong`,null,n(G.value.name),1),m(`p`,null,n(G.value.contactName),1)])])]),m(`div`,k,[i[5]||=m(`span`,null,`فروشنده حامل حضوری`,-1),m(`strong`,null,n(te.value),1)]),m(`div`,A,[i[6]||=m(`span`,null,`تاریخ و زمان`,-1),m(`strong`,null,n(W.value.date)+` — `+n(W.value.time),1)]),m(`div`,j,[i[7]||=m(`span`,null,`یادداشت`,-1),m(`strong`,null,n(W.value.note||`—`),1)]),m(`div`,M,[m(`button`,{type:`button`,class:`btn-outline`,onClick:i[1]||=e=>t(B).back()},`ویرایش`),m(`button`,{type:`button`,class:`btn-primary`,disabled:J.value||W.value.completed,onClick:Q},n(W.value.completed?`تکمیل‌شده`:J.value?`...`:`تکمیل شد`),9,N)])]),m(`section`,P,[i[9]||=m(`h2`,null,`تاریخچه تعاملات`,-1),(u(!0),s(o,null,c(K.value,e=>(u(),s(`article`,{key:e.id,class:`history-row`},[m(`div`,null,[m(`strong`,null,n(Z(e.type)),1),m(`p`,null,n(e.description),1)]),m(`span`,null,n(e.date),1)]))),128)),m(`button`,{type:`button`,class:`see-all`,onClick:i[2]||=e=>t(B).push({path:`/customer`,query:{id:G.value.id,tab:`reports`}})},` مشاهده همه `)]),m(`section`,F,[i[14]||=m(`div`,{class:`chart-panel__head`},[m(`h2`,null,`نمودار فعالیت`),m(`span`,null,`تعاملات ثبت‌شده`)],-1),m(`div`,I,[(u(!0),s(o,null,c(ne.value,(e,t)=>(u(),s(`div`,{key:t,class:`bar`},[e.c===`0%`?a(``,!0):(u(),s(`span`,{key:0,class:`seg seg--c`,style:r({height:e.c})},null,4)),e.b===`0%`?a(``,!0):(u(),s(`span`,{key:1,class:`seg seg--b`,style:r({height:e.b})},null,4)),e.a===`0%`?a(``,!0):(u(),s(`span`,{key:2,class:`seg seg--a`,style:r({height:e.a})},null,4))]))),128))]),m(`div`,L,[m(`div`,null,[i[10]||=m(`span`,null,`کل تعاملات`,-1),m(`strong`,null,n($.value.total.toLocaleString(`fa-IR`))+` مورد`,1)]),m(`div`,null,[i[11]||=m(`span`,null,`ملاقات حضوری`,-1),m(`strong`,null,n($.value.inPerson.toLocaleString(`fa-IR`))+` مورد`,1)]),m(`div`,null,[i[12]||=m(`span`,null,`تماس تلفنی`,-1),m(`strong`,null,n($.value.call.toLocaleString(`fa-IR`))+` مورد`,1)]),m(`div`,null,[i[13]||=m(`span`,null,`یادداشت و پیام`,-1),m(`strong`,null,n($.value.other.toLocaleString(`fa-IR`))+` مورد`,1)])])])])])])):q.value?(u(),s(`div`,R,[l(y,{variant:`detail`})])):(u(),s(`div`,z,[m(`p`,null,n(Y.value||`یادآور یافت نشد.`),1)]))}}),[[`__scopeId`,`data-v-59c58cf4`]]);export{B as default}; \ No newline at end of file diff --git a/dist/assets/ReminderDetailView-DeVZIytU.js b/dist/assets/ReminderDetailView-DeVZIytU.js deleted file mode 100644 index b1c619d..0000000 --- a/dist/assets/ReminderDetailView-DeVZIytU.js +++ /dev/null @@ -1 +0,0 @@ -import{A as e,Et as t,N as n,O as r,P as i,R as a,St as o,Tt as s,Y as c,Z as l,_ as u,g as d,j as f,mt as p,n as m,q as h,tt as g,z as _}from"./BasicIcon-C6boaehV.js";import{c as v}from"./index-fdhs4HNc.js";import{t as y}from"./PageSkeleton-sKuEY4NI.js";import{t as b}from"./crm-DmqasSZ_.js";import{t as x}from"./PageHeader-Cd04Z6F_.js";var S={key:0,class:`page reminder-detail`},C={class:`page__scroll detail-scroll`},w={key:0,class:`form-error`},T={class:`layout`},ee={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=m(_({__name:`ReminderDetailView`,setup(m){let _=d(),B=u(),V=b(),H=v(),U=e(()=>String(_.query.id??``)),W=p(null),G=p(null),K=p([]),q=p(!0),J=p(!1),Y=p(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}}h(X),g(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=e(()=>H.fullName||`واسطه`),$=e(()=>{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=e(()=>{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(e,u)=>W.value&&G.value?(c(),i(`div`,S,[a(x,{title:`جزئیات یادآور`,"show-back":``,centered:``,onBack:u[0]||=e=>o(B).back()}),f(`div`,C,[Y.value?(c(),i(`p`,w,t(Y.value),1)):n(``,!0),f(`div`,T,[f(`section`,ee,[u[8]||=f(`h2`,null,`جزئیات یادآور`,-1),f(`div`,E,[u[3]||=f(`span`,null,`عنوان`,-1),f(`strong`,null,t(W.value.title)+` — `+t(W.value.description),1)]),f(`div`,D,[u[4]||=f(`span`,null,`مشتری`,-1),f(`div`,O,[f(`div`,{class:`avatar`,style:s({background:G.value.avatarColor})},t(G.value.avatarLetter),5),f(`div`,null,[f(`strong`,null,t(G.value.name),1),f(`p`,null,t(G.value.contactName),1)])])]),f(`div`,k,[u[5]||=f(`span`,null,`فروشنده حامل حضوری`,-1),f(`strong`,null,t(te.value),1)]),f(`div`,A,[u[6]||=f(`span`,null,`تاریخ و زمان`,-1),f(`strong`,null,t(W.value.date)+` — `+t(W.value.time),1)]),f(`div`,j,[u[7]||=f(`span`,null,`یادداشت`,-1),f(`strong`,null,t(W.value.note||`—`),1)]),f(`div`,M,[f(`button`,{type:`button`,class:`btn-outline`,onClick:u[1]||=e=>o(B).back()},`ویرایش`),f(`button`,{type:`button`,class:`btn-primary`,disabled:J.value||W.value.completed,onClick:Q},t(W.value.completed?`تکمیل‌شده`:J.value?`...`:`تکمیل شد`),9,N)])]),f(`section`,P,[u[9]||=f(`h2`,null,`تاریخچه تعاملات`,-1),(c(!0),i(r,null,l(K.value,e=>(c(),i(`article`,{key:e.id,class:`history-row`},[f(`div`,null,[f(`strong`,null,t(Z(e.type)),1),f(`p`,null,t(e.description),1)]),f(`span`,null,t(e.date),1)]))),128)),f(`button`,{type:`button`,class:`see-all`,onClick:u[2]||=e=>o(B).push({path:`/customer`,query:{id:G.value.id,tab:`reports`}})},` مشاهده همه `)]),f(`section`,F,[u[14]||=f(`div`,{class:`chart-panel__head`},[f(`h2`,null,`نمودار فعالیت`),f(`span`,null,`تعاملات ثبت‌شده`)],-1),f(`div`,I,[(c(!0),i(r,null,l(ne.value,(e,t)=>(c(),i(`div`,{key:t,class:`bar`},[e.c===`0%`?n(``,!0):(c(),i(`span`,{key:0,class:`seg seg--c`,style:s({height:e.c})},null,4)),e.b===`0%`?n(``,!0):(c(),i(`span`,{key:1,class:`seg seg--b`,style:s({height:e.b})},null,4)),e.a===`0%`?n(``,!0):(c(),i(`span`,{key:2,class:`seg seg--a`,style:s({height:e.a})},null,4))]))),128))]),f(`div`,L,[f(`div`,null,[u[10]||=f(`span`,null,`کل تعاملات`,-1),f(`strong`,null,t($.value.total.toLocaleString(`fa-IR`))+` مورد`,1)]),f(`div`,null,[u[11]||=f(`span`,null,`ملاقات حضوری`,-1),f(`strong`,null,t($.value.inPerson.toLocaleString(`fa-IR`))+` مورد`,1)]),f(`div`,null,[u[12]||=f(`span`,null,`تماس تلفنی`,-1),f(`strong`,null,t($.value.call.toLocaleString(`fa-IR`))+` مورد`,1)]),f(`div`,null,[u[13]||=f(`span`,null,`یادداشت و پیام`,-1),f(`strong`,null,t($.value.other.toLocaleString(`fa-IR`))+` مورد`,1)])])])])])])):q.value?(c(),i(`div`,R,[a(y,{variant:`detail`})])):(c(),i(`div`,z,[f(`p`,null,t(Y.value||`یادآور یافت نشد.`),1)]))}}),[[`__scopeId`,`data-v-59c58cf4`]]);export{B as default}; \ No newline at end of file diff --git a/dist/assets/RemindersView-4scV8gnB.css b/dist/assets/RemindersView-4scV8gnB.css new file mode 100644 index 0000000..2a17039 --- /dev/null +++ b/dist/assets/RemindersView-4scV8gnB.css @@ -0,0 +1 @@ +.reminders-page[data-v-5b2cf3dd]{background:var(--color-bg)}.top[data-v-5b2cf3dd]{padding:10px var(--page-padding);background:var(--color-surface);color:var(--color-text);grid-template-columns:40px 1fr 40px;align-items:center;display:grid}.top h1[data-v-5b2cf3dd]{text-align:center;margin:0;font-size:1rem;font-weight:700}.icon-btn[data-v-5b2cf3dd]{cursor:pointer;width:40px;height:40px;color:var(--color-text);background:0 0;border:none;place-items:center;display:grid}.reminders-scroll[data-v-5b2cf3dd]{padding:0 var(--page-padding) 24px;flex-direction:column;gap:12px;display:flex}.tabs[data-v-5b2cf3dd]{width:100%;margin:0 calc(-1 * var(--page-padding));padding:0 var(--page-padding);border-bottom:1px solid var(--color-border);align-items:stretch;display:flex}.tab[data-v-5b2cf3dd]{appearance:none;color:#9ca3af;cursor:pointer;background:0 0;border:0;flex:1;justify-content:center;align-items:flex-end;min-width:0;padding:10px 0 0;font-family:inherit;font-size:.875rem;font-weight:400;line-height:1.5;display:flex}.tab__text[data-v-5b2cf3dd]{align-items:center;gap:4px;padding-bottom:11px;display:inline-flex;position:relative}.tab--active[data-v-5b2cf3dd]{color:var(--color-text);font-weight:700}.tab--active .tab__text[data-v-5b2cf3dd]:after{content:"";inset-inline:0;background:var(--color-primary);border-radius:2px 2px 0 0;height:3px;position:absolute;bottom:-1px}.tab__badge[data-v-5b2cf3dd]{background:var(--color-danger);color:#fff;border-radius:999px;place-items:center;min-width:18px;height:18px;padding:0 4px;font-size:.65rem;font-weight:700;line-height:1;display:inline-grid}.error-text[data-v-5b2cf3dd]{color:var(--color-danger);margin:0;font-size:.85rem}.summary[data-v-5b2cf3dd]{background:var(--color-primary);color:#fff;border-radius:var(--radius-lg);flex-direction:column;gap:8px;margin-top:4px;padding:16px;display:flex}.summary__top[data-v-5b2cf3dd]{justify-content:space-between;align-items:center;gap:12px;display:flex}.summary__label[data-v-5b2cf3dd]{font-size:.875rem;font-weight:600}.summary__calendar[data-v-5b2cf3dd]{color:#fff;flex-shrink:0;width:34px;height:34px;position:relative}.summary__calendar svg[data-v-5b2cf3dd]{width:100%;height:100%;display:block}.summary__calendar span[data-v-5b2cf3dd]{place-items:center;padding-top:7px;font-size:.7rem;font-weight:700;line-height:1;display:grid;position:absolute;inset:0}.summary__count[data-v-5b2cf3dd]{align-items:baseline;gap:6px;display:flex}.summary__count strong[data-v-5b2cf3dd]{font-size:2.25rem;font-weight:700;line-height:1}.summary__count span[data-v-5b2cf3dd]{font-size:1rem;font-weight:600}.summary__sub[data-v-5b2cf3dd]{opacity:.88;margin:0;font-size:.78rem;line-height:1.5}.empty-state[data-v-5b2cf3dd]{text-align:center;color:var(--color-text-muted);margin:0;padding:8px 0;font-size:.85rem}.reminder-row[data-v-5b2cf3dd]{grid-template-columns:28px 1fr;align-items:start;gap:10px;display:grid}.reminder-row__check[data-v-5b2cf3dd]{cursor:pointer;background:0 0;border:1.5px solid #cbd5e1;border-radius:999px;flex-shrink:0;width:22px;height:22px;margin-top:14px}.reminder-row__check--done[data-v-5b2cf3dd]{border-color:var(--color-primary);background:var(--color-primary);display:block;box-shadow:inset 0 0 0 3px #fff}.reminder-card[data-v-5b2cf3dd]{border-radius:var(--radius-md);cursor:pointer;background:#fff;padding:12px 14px;box-shadow:0 1px 2px #1018280a,0 6px 16px #1018280d}.reminder-card--done[data-v-5b2cf3dd]{opacity:.72}.reminder-card__header[data-v-5b2cf3dd]{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.reminder-card__time[data-v-5b2cf3dd]{color:var(--color-text-muted);flex-shrink:0;font-size:.8125rem;font-weight:700}.reminder-card__title-row[data-v-5b2cf3dd]{flex:1;justify-content:flex-end;align-items:flex-start;gap:6px;min-width:0;display:flex}.reminder-card__title-row strong[data-v-5b2cf3dd]{text-align:end;font-size:.9rem;font-weight:700;line-height:1.4}.reminder-card__menu[data-v-5b2cf3dd]{color:var(--color-text-muted);flex-shrink:0;margin-top:2px}.reminder-card__body[data-v-5b2cf3dd]{grid-template-columns:auto 1fr;align-items:start;gap:8px 10px;margin-top:8px;display:grid}.tag[data-v-5b2cf3dd]{white-space:nowrap;border-radius:6px;align-items:center;height:24px;padding:0 10px;font-size:.7rem;font-weight:600;display:inline-flex}.tag--green[data-v-5b2cf3dd]{background:var(--color-primary-soft);color:var(--color-primary)}.tag--blue[data-v-5b2cf3dd]{color:#0369a1;background:#e0f2fe}.tag--purple[data-v-5b2cf3dd]{color:#6d28d9;background:#ede9fe}.reminder-card__customer[data-v-5b2cf3dd]{justify-content:flex-end;align-items:center;gap:10px;min-width:0;display:flex}.reminder-card__customer-text[data-v-5b2cf3dd]{text-align:end;min-width:0}.reminder-card__name[data-v-5b2cf3dd]{margin:0;font-size:.875rem;font-weight:700;line-height:1.35}.reminder-card__contact[data-v-5b2cf3dd]{color:var(--color-text-muted);margin:2px 0 0;font-size:.75rem;line-height:1.35}.reminder-card__avatar[data-v-5b2cf3dd]{color:#111;border-radius:999px;flex-shrink:0;place-items:center;width:40px;height:40px;font-size:.85rem;font-weight:700;display:grid}.reminder-card__desc[data-v-5b2cf3dd]{color:var(--color-text-muted);margin:10px 0 0;font-size:.75rem;line-height:1.55}.completed-section[data-v-5b2cf3dd]{flex-direction:column;gap:10px;display:flex}.completed-bar[data-v-5b2cf3dd]{border-radius:var(--radius-md);cursor:pointer;color:var(--color-text);text-align:start;background:#e4e8e6;border:none;grid-template-columns:16px 1fr auto;align-items:center;gap:10px;padding:14px 16px;font-family:inherit;font-size:.875rem;font-weight:600;display:grid}.completed-bar__chevron[data-v-5b2cf3dd]{width:12px;height:12px;color:var(--color-text-muted);transition:transform .15s}.completed-bar__chevron.is-open[data-v-5b2cf3dd]{transform:rotate(180deg)}.completed-bar__label[data-v-5b2cf3dd]{line-height:1.4}.completed-bar__count[data-v-5b2cf3dd]{font-weight:700}.completed-list[data-v-5b2cf3dd]{flex-direction:column;gap:10px;display:flex}.completed-empty[data-v-5b2cf3dd]{text-align:center;color:var(--color-text-muted);margin:0;font-size:.8rem}.new-btn[data-v-5b2cf3dd]{background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:14px;justify-content:center;align-items:center;gap:8px;width:100%;min-height:52px;margin-top:4px;font-size:.95rem;font-weight:700;display:flex}.create-panel[data-v-5b2cf3dd]{border-radius:var(--radius-md);background:#fff;flex-direction:column;gap:10px;margin-top:4px;padding:14px;display:flex;box-shadow:0 1px 2px #1018280a,0 6px 16px #1018280d}.create-panel h3[data-v-5b2cf3dd]{margin:0;font-size:.95rem}.create-panel label[data-v-5b2cf3dd]{color:var(--color-text-muted);flex-direction:column;gap:4px;font-size:.8rem;display:flex}.create-panel input[data-v-5b2cf3dd],.create-panel textarea[data-v-5b2cf3dd]{border:1px solid var(--color-border);border-radius:var(--radius-sm);width:100%;font:inherit;color:var(--color-text);padding:0 14px;font-size:.9375rem;transition:border-color .15s}.create-panel input[data-v-5b2cf3dd]{height:var(--btn-height)}.create-panel textarea[data-v-5b2cf3dd]{resize:vertical;min-height:72px;padding:12px 14px}.create-panel input[data-v-5b2cf3dd]:focus,.create-panel textarea[data-v-5b2cf3dd]:focus{border-color:var(--color-primary);outline:none}.field-select[data-v-5b2cf3dd]{position:relative}.field-select__trigger[data-v-5b2cf3dd]{width:100%;height:var(--btn-height);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);font:inherit;text-align:start;cursor:pointer;justify-content:space-between;align-items:center;gap:8px;padding:0 14px;font-size:.9375rem;transition:border-color .15s;display:flex}.field-select__trigger.is-open[data-v-5b2cf3dd]{border-color:var(--color-primary)}.field-select__trigger .is-placeholder[data-v-5b2cf3dd]{color:var(--color-text-muted)}.field-select__chevron[data-v-5b2cf3dd]{width:12px;height:12px;color:var(--color-text-muted);flex-shrink:0}.field-select__trigger.is-open .field-select__chevron[data-v-5b2cf3dd]{transform:rotate(180deg)}.field-select__menu[data-v-5b2cf3dd]{inset-inline:0;z-index:20;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);max-height:220px;margin:0;padding:6px;list-style:none;position:absolute;top:calc(100% + 6px);overflow-y:auto;box-shadow:0 8px 24px #10182814}.field-select__option[data-v-5b2cf3dd]{border-radius:var(--radius-sm);width:100%;color:var(--color-text);font:inherit;text-align:start;cursor:pointer;background:0 0;border:none;padding:10px 12px;font-size:.875rem;display:block}.field-select__option.is-active[data-v-5b2cf3dd]{background:var(--color-primary-light);color:var(--color-primary);font-weight:600}.create-row[data-v-5b2cf3dd]{grid-template-columns:1fr 1fr;align-items:end;gap:8px;display:grid}.create-panel[data-v-5b2cf3dd] .create-date.form-group{margin-bottom:0}.create-panel[data-v-5b2cf3dd] .create-date .form-label{color:var(--color-text-muted);margin-bottom:4px;font-size:.8rem;font-weight:400}.create-actions[data-v-5b2cf3dd]{grid-template-columns:1fr 1.2fr;gap:8px;display:grid}.btn-cancel[data-v-5b2cf3dd],.btn-save[data-v-5b2cf3dd]{cursor:pointer;border-radius:12px;min-height:44px;font-family:inherit;font-weight:700}.btn-cancel[data-v-5b2cf3dd]{border:1px solid var(--color-border);background:var(--color-surface)}.btn-save[data-v-5b2cf3dd]{background:var(--color-primary);color:#fff;border:none}.btn-save[data-v-5b2cf3dd]:disabled{opacity:.7}.create-error[data-v-5b2cf3dd]{color:#b42318;margin:0;font-size:.8rem}.reminders-desk-head[data-v-5b2cf3dd]{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.reminders-desk-head__actions[data-v-5b2cf3dd]{flex-shrink:0;align-items:center;gap:10px;display:flex}.desk-icon-btn[data-v-5b2cf3dd]{border:1px solid var(--color-border);background:var(--color-surface);width:44px;height:44px;color:var(--color-text);cursor:pointer;border-radius:12px;place-items:center;display:grid}.desk-new-btn[data-v-5b2cf3dd]{background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:12px;align-items:center;gap:8px;padding:10px 16px;font-family:inherit;font-size:.875rem;font-weight:700;display:inline-flex}@media (width>=768px){.reminders-page[data-v-5b2cf3dd]{max-width:var(--content-max-width);padding:20px var(--page-padding) 28px;box-sizing:border-box;margin-inline:auto}.reminders-scroll[data-v-5b2cf3dd]{gap:14px;padding:0}.tabs[data-v-5b2cf3dd]{margin:0}.reminder-card[data-v-5b2cf3dd]{box-shadow:var(--shadow-card);border:1px solid var(--color-border)}.create-panel[data-v-5b2cf3dd]{max-width:560px}} diff --git a/dist/assets/RemindersView-7lF3bXsi.js b/dist/assets/RemindersView-7lF3bXsi.js new file mode 100644 index 0000000..749cd79 --- /dev/null +++ b/dist/assets/RemindersView-7lF3bXsi.js @@ -0,0 +1 @@ +import{A as e,Ct as t,D as ee,Dt as n,Et as r,J as i,L as a,M as te,N as o,O as s,P as c,Q as l,R as u,X as d,_ as ne,at as f,g as re,ht as p,j as m,n as ie,nt as ae,w as h,wt as g,z as _}from"./BasicIcon-Bnxm-DKk.js";import{t as oe}from"./dist-CeuESLw-.js";import{o as v}from"./format-C72AoJ2H.js";import{s as y,w as b}from"./index-DB4cQnln.js";import{t as se}from"./IconChevronBack-DguSlPDK.js";import{t as x}from"./IconMoreVertical-C07CFI4h.js";import{t as ce}from"./PageSkeleton-CpZ7eT1v.js";import{i as le,t as ue}from"./crm-CZ7XH3z9.js";import{t as de}from"./useGoBack-Ds4z3swU.js";import{t as fe}from"./PersianDateInput-BiSVL1bi.js";var pe={class:`page reminders-page`},me={class:`top mobile-only`},he={class:`desktop-page__head desktop-only reminders-desk-head`},ge={class:`reminders-desk-head__actions`},_e={class:`page__scroll page__scroll--with-nav reminders-scroll`},ve={class:`tabs`,role:`tablist`,"aria-label":`فیلتر یادآورها`},ye=[`aria-selected`,`onClick`],be={class:`tab__text`},xe={key:0,class:`tab__badge`},Se={key:1,class:`error-text`},Ce={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`},Ke={class:`reminder-card__body`},j={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=ie(_({__name:`RemindersView`,setup(ie){let _=re(),M=ne(),{goBack:N}=de(`/`),P=ue(),F=e(()=>String(_.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=e(()=>{if(!W.value.customerId)return`انتخاب مشتری`;let e=L.value.find(e=>e.id===W.value.customerId);return e?.name||e?.contactName||`انتخاب مشتری`});oe(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=e(()=>I.value.filter(e=>!e.completed)),J=e(()=>{let e=new Date().toISOString().slice(0,10);return I.value.filter(t=>t.completed&&t.date===e)}),tt=e(()=>q.value.length),nt=e(()=>F.value===`today`?`پیگیری‌های امروز`:F.value===`week`?`پیگیری‌های هفته آینده`:F.value===`past`?`پیگیری‌های گذشته`:`پیگیری‌های باز`),rt=e(()=>new Date().getDate().toLocaleString(`fa-IR`));async function Y(){try{let e=await le(`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}}i(async()=>{await Promise.all([X(),Y()])}),ae(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(e,i)=>(d(),c(`div`,pe,[m(`header`,me,[m(`button`,{type:`button`,class:`icon-btn`,"aria-label":`بازگشت`,onClick:i[0]||=(...e)=>t(N)&&t(N)(...e)},[u(se,{size:20})]),i[9]||=m(`h1`,null,`یادآورها`,-1),m(`button`,{type:`button`,class:`icon-btn`,"aria-label":`اعلان‌ها`,onClick:i[1]||=e=>t(M).push(`/profile/notifications`)},[u(y,{size:20})])]),m(`header`,he,[i[11]||=m(`div`,null,[m(`h1`,{class:`desktop-page__title`},`یادآورها`),m(`p`,{class:`desktop-page__subtitle`},`پیگیری و مدیریت یادآورهای مشتریان`)],-1),m(`div`,ge,[m(`button`,{type:`button`,class:`desk-icon-btn`,"aria-label":`اعلان‌ها`,onClick:i[2]||=e=>t(M).push(`/profile/notifications`)},[u(y,{size:20})]),m(`button`,{type:`button`,class:`desk-new-btn`,onClick:$},[u(b,{size:18,color:`#fff`}),i[10]||=a(` یادآور جدید `,-1)])])]),m(`div`,_e,[m(`div`,ve,[(d(),c(s,null,l(et,e=>m(`button`,{key:e.id,type:`button`,role:`tab`,class:g([`tab`,{"tab--active":F.value===e.id}]),"aria-selected":F.value===e.id,onClick:t=>it(e.id)},[m(`span`,be,[a(n(e.label)+` `,1),e.id===`past`&&H.value?(d(),c(`span`,xe,n(H.value.toLocaleString(`fa-IR`)),1)):o(``,!0)])],10,ye)),64))]),R.value?(d(),te(ce,{key:0,variant:`list`})):z.value&&!B.value?(d(),c(`p`,Se,n(z.value),1)):o(``,!0),B.value?(d(),c(`section`,Ce,[i[17]||=m(`h3`,null,`یادآور جدید`,-1),z.value?(d(),c(`p`,S,n(z.value),1)):o(``,!0),m(`label`,null,[i[13]||=a(` مشتری `,-1),m(`div`,{ref_key:`customerRoot`,ref:K,class:`field-select`},[m(`button`,{type:`button`,class:g([`field-select__trigger`,{"is-open":G.value}]),"aria-haspopup":`listbox`,"aria-expanded":G.value,onClick:i[3]||=e=>G.value=!G.value},[m(`span`,{class:g({"is-placeholder":!W.value.customerId})},n(Qe.value),3),i[12]||=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,C),G.value?(d(),c(`ul`,w,[(d(!0),c(s,null,l(L.value,e=>(d(),c(`li`,{key:e.id},[m(`button`,{type:`button`,role:`option`,class:g([`field-select__option`,{"is-active":W.value.customerId===e.id}]),"aria-selected":W.value.customerId===e.id,onClick:t=>$e(e.id)},n(e.name||e.contactName),11,T)]))),128))])):o(``,!0)],512)]),m(`label`,null,[i[14]||=a(` عنوان `,-1),f(m(`input`,{"onUpdate:modelValue":i[4]||=e=>W.value.title=e,type:`text`,placeholder:`مثلاً پیگیری نمونه`},null,512),[[h,W.value.title]])]),m(`div`,E,[u(fe,{modelValue:W.value.date,"onUpdate:modelValue":i[5]||=e=>W.value.date=e,label:`تاریخ`,class:`create-date`},null,8,[`modelValue`]),m(`label`,null,[i[15]||=a(` ساعت `,-1),f(m(`input`,{"onUpdate:modelValue":i[6]||=e=>W.value.time=e,type:`time`},null,512),[[h,W.value.time]])])]),m(`label`,null,[i[16]||=a(` یادداشت `,-1),f(m(`textarea`,{"onUpdate:modelValue":i[7]||=e=>W.value.note=e,rows:`2`,placeholder:`اختیاری`},null,512),[[h,W.value.note]])]),m(`div`,D,[m(`button`,{type:`button`,class:`btn-cancel`,onClick:i[8]||=e=>B.value=!1},`انصراف`),m(`button`,{type:`button`,class:`btn-save`,disabled:V.value,onClick:ot},n(V.value?`در حال ثبت...`:`ثبت یادآور`),9,O)])])):!R.value&&!z.value?(d(),c(s,{key:3},[m(`section`,k,[m(`div`,A,[m(`span`,we,n(nt.value),1),m(`div`,Te,[i[18]||=m(`svg`,{viewBox:`0 0 24 24`,fill:`none`},[m(`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),m(`span`,null,n(rt.value),1)])]),m(`div`,Ee,[m(`strong`,null,n(t(v)(tt.value)),1),i[19]||=m(`span`,null,`مورد`,-1)]),i[20]||=m(`p`,{class:`summary__sub`},`یادآورهای شما برای پیگیری مشتریان`,-1)]),q.value.length?o(``,!0):(d(),c(`div`,De,`یادآوری برای این بازه ثبت نشده است.`)),(d(!0),c(s,null,l(q.value,e=>(d(),c(`div`,{key:e.id,class:`reminder-row`},[m(`button`,{type:`button`,class:`reminder-row__check`,"aria-label":`تکمیل یادآور`,onClick:ee(t=>at(e.id),[`stop`])},null,8,Oe),m(`article`,{class:`reminder-card`,onClick:ee=>t(M).push({path:`/reminder`,query:{id:e.id}})},[m(`div`,Ae,[m(`span`,je,n(e.time),1),m(`div`,Me,[m(`strong`,null,n(e.title),1),u(x,{size:18,class:`reminder-card__menu`})])]),m(`div`,Ne,[m(`span`,{class:g([`tag`,Q(e.interactionType)])},n(Z(e.interactionType)),3),m(`div`,Pe,[m(`div`,Fe,[m(`p`,Ie,n(e.customerName),1),m(`p`,Le,n(e.contactName),1)]),m(`div`,{class:`reminder-card__avatar`,style:r({background:e.avatarColor})},n(e.avatarLetter),5)])]),e.description?(d(),c(`p`,Re,n(e.description),1)):o(``,!0)],8,ke)]))),128)),m(`section`,ze,[m(`button`,{type:`button`,class:`completed-bar`,onClick:st},[(d(),c(`svg`,{class:g([`completed-bar__chevron`,{"is-open":U.value}]),viewBox:`0 0 12 12`,"aria-hidden":`true`},[...i[21]||=[m(`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)),i[22]||=m(`span`,{class:`completed-bar__label`},`یادآورهای تکمیل شده امروز`,-1),m(`span`,Be,n(t(v)(J.value.length)),1)]),U.value?(d(),c(`div`,Ve,[(d(!0),c(s,null,l(J.value,e=>(d(),c(`div`,{key:e.id,class:`reminder-row reminder-row--done`},[i[23]||=m(`span`,{class:`reminder-row__check reminder-row__check--done`,"aria-hidden":`true`},null,-1),m(`article`,{class:`reminder-card reminder-card--done`,onClick:ee=>t(M).push({path:`/reminder`,query:{id:e.id}})},[m(`div`,Ue,[m(`span`,We,n(e.time),1),m(`div`,Ge,[m(`strong`,null,n(e.title),1),u(x,{size:18,class:`reminder-card__menu`})])]),m(`div`,Ke,[m(`span`,{class:g([`tag`,Q(e.interactionType)])},n(Z(e.interactionType)),3),m(`div`,j,[m(`div`,qe,[m(`p`,Je,n(e.customerName),1),m(`p`,Ye,n(e.contactName),1)]),m(`div`,{class:`reminder-card__avatar`,style:r({background:e.avatarColor})},n(e.avatarLetter),5)])]),e.description?(d(),c(`p`,Xe,n(e.description),1)):o(``,!0)],8,He)]))),128)),J.value.length?o(``,!0):(d(),c(`p`,Ze,`یادآور تکمیل‌شده‌ای برای امروز نیست.`))])):o(``,!0)])],64)):o(``,!0),m(`button`,{type:`button`,class:`new-btn mobile-only`,onClick:$},[u(b,{size:20,color:`#fff`}),i[24]||=a(` یادآور جدید `,-1)])])]))}}),[[`__scopeId`,`data-v-5b2cf3dd`]]);export{M as default}; \ No newline at end of file diff --git a/dist/assets/RemindersView-BsYkMSSC.css b/dist/assets/RemindersView-BsYkMSSC.css deleted file mode 100644 index 71178be..0000000 --- a/dist/assets/RemindersView-BsYkMSSC.css +++ /dev/null @@ -1 +0,0 @@ -.reminders-page[data-v-c73bda59]{background:var(--color-bg)}.top[data-v-c73bda59]{padding:10px var(--page-padding);background:var(--color-surface);color:var(--color-text);grid-template-columns:40px 1fr 40px;align-items:center;display:grid}.top h1[data-v-c73bda59]{text-align:center;margin:0;font-size:1rem;font-weight:700}.icon-btn[data-v-c73bda59]{cursor:pointer;width:40px;height:40px;color:var(--color-text);background:0 0;border:none;place-items:center;display:grid}.reminders-scroll[data-v-c73bda59]{padding:0 var(--page-padding) 24px;flex-direction:column;gap:12px;display:flex}.tabs[data-v-c73bda59]{width:100%;margin:0 calc(-1 * var(--page-padding));padding:0 var(--page-padding);border-bottom:1px solid var(--color-border);align-items:stretch;display:flex}.tab[data-v-c73bda59]{appearance:none;color:#9ca3af;cursor:pointer;background:0 0;border:0;flex:1;justify-content:center;align-items:flex-end;min-width:0;padding:10px 0 0;font-family:inherit;font-size:.875rem;font-weight:400;line-height:1.5;display:flex}.tab__text[data-v-c73bda59]{align-items:center;gap:4px;padding-bottom:11px;display:inline-flex;position:relative}.tab--active[data-v-c73bda59]{color:var(--color-text);font-weight:700}.tab--active .tab__text[data-v-c73bda59]:after{content:"";inset-inline:0;background:var(--color-primary);border-radius:2px 2px 0 0;height:3px;position:absolute;bottom:-1px}.tab__badge[data-v-c73bda59]{background:var(--color-danger);color:#fff;border-radius:999px;place-items:center;min-width:18px;height:18px;padding:0 4px;font-size:.65rem;font-weight:700;line-height:1;display:inline-grid}.error-text[data-v-c73bda59]{color:var(--color-danger);margin:0;font-size:.85rem}.summary[data-v-c73bda59]{background:var(--color-primary);color:#fff;border-radius:var(--radius-lg);flex-direction:column;gap:8px;margin-top:4px;padding:16px;display:flex}.summary__top[data-v-c73bda59]{justify-content:space-between;align-items:center;gap:12px;display:flex}.summary__label[data-v-c73bda59]{font-size:.875rem;font-weight:600}.summary__calendar[data-v-c73bda59]{color:#fff;flex-shrink:0;width:34px;height:34px;position:relative}.summary__calendar svg[data-v-c73bda59]{width:100%;height:100%;display:block}.summary__calendar span[data-v-c73bda59]{place-items:center;padding-top:7px;font-size:.7rem;font-weight:700;line-height:1;display:grid;position:absolute;inset:0}.summary__count[data-v-c73bda59]{align-items:baseline;gap:6px;display:flex}.summary__count strong[data-v-c73bda59]{font-size:2.25rem;font-weight:700;line-height:1}.summary__count span[data-v-c73bda59]{font-size:1rem;font-weight:600}.summary__sub[data-v-c73bda59]{opacity:.88;margin:0;font-size:.78rem;line-height:1.5}.empty-state[data-v-c73bda59]{text-align:center;color:var(--color-text-muted);margin:0;padding:8px 0;font-size:.85rem}.reminder-row[data-v-c73bda59]{grid-template-columns:28px 1fr;align-items:start;gap:10px;display:grid}.reminder-row__check[data-v-c73bda59]{cursor:pointer;background:0 0;border:1.5px solid #cbd5e1;border-radius:999px;flex-shrink:0;width:22px;height:22px;margin-top:14px}.reminder-row__check--done[data-v-c73bda59]{border-color:var(--color-primary);background:var(--color-primary);display:block;box-shadow:inset 0 0 0 3px #fff}.reminder-card[data-v-c73bda59]{border-radius:var(--radius-md);cursor:pointer;background:#fff;padding:12px 14px;box-shadow:0 1px 2px #1018280a,0 6px 16px #1018280d}.reminder-card--done[data-v-c73bda59]{opacity:.72}.reminder-card__header[data-v-c73bda59]{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.reminder-card__time[data-v-c73bda59]{color:var(--color-text-muted);flex-shrink:0;font-size:.8125rem;font-weight:700}.reminder-card__title-row[data-v-c73bda59]{flex:1;justify-content:flex-end;align-items:flex-start;gap:6px;min-width:0;display:flex}.reminder-card__title-row strong[data-v-c73bda59]{text-align:end;font-size:.9rem;font-weight:700;line-height:1.4}.reminder-card__menu[data-v-c73bda59]{color:var(--color-text-muted);flex-shrink:0;margin-top:2px}.reminder-card__body[data-v-c73bda59]{grid-template-columns:auto 1fr;align-items:start;gap:8px 10px;margin-top:8px;display:grid}.tag[data-v-c73bda59]{white-space:nowrap;border-radius:6px;align-items:center;height:24px;padding:0 10px;font-size:.7rem;font-weight:600;display:inline-flex}.tag--green[data-v-c73bda59]{background:var(--color-primary-soft);color:var(--color-primary)}.tag--blue[data-v-c73bda59]{color:#0369a1;background:#e0f2fe}.tag--purple[data-v-c73bda59]{color:#6d28d9;background:#ede9fe}.reminder-card__customer[data-v-c73bda59]{justify-content:flex-end;align-items:center;gap:10px;min-width:0;display:flex}.reminder-card__customer-text[data-v-c73bda59]{text-align:end;min-width:0}.reminder-card__name[data-v-c73bda59]{margin:0;font-size:.875rem;font-weight:700;line-height:1.35}.reminder-card__contact[data-v-c73bda59]{color:var(--color-text-muted);margin:2px 0 0;font-size:.75rem;line-height:1.35}.reminder-card__avatar[data-v-c73bda59]{color:#111;border-radius:999px;flex-shrink:0;place-items:center;width:40px;height:40px;font-size:.85rem;font-weight:700;display:grid}.reminder-card__desc[data-v-c73bda59]{color:var(--color-text-muted);margin:10px 0 0;font-size:.75rem;line-height:1.55}.completed-section[data-v-c73bda59]{flex-direction:column;gap:10px;display:flex}.completed-bar[data-v-c73bda59]{border-radius:var(--radius-md);cursor:pointer;color:var(--color-text);text-align:start;background:#e4e8e6;border:none;grid-template-columns:16px 1fr auto;align-items:center;gap:10px;padding:14px 16px;font-family:inherit;font-size:.875rem;font-weight:600;display:grid}.completed-bar__chevron[data-v-c73bda59]{width:12px;height:12px;color:var(--color-text-muted);transition:transform .15s}.completed-bar__chevron.is-open[data-v-c73bda59]{transform:rotate(180deg)}.completed-bar__label[data-v-c73bda59]{line-height:1.4}.completed-bar__count[data-v-c73bda59]{font-weight:700}.completed-list[data-v-c73bda59]{flex-direction:column;gap:10px;display:flex}.completed-empty[data-v-c73bda59]{text-align:center;color:var(--color-text-muted);margin:0;font-size:.8rem}.new-btn[data-v-c73bda59]{background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:14px;justify-content:center;align-items:center;gap:8px;width:100%;min-height:52px;margin-top:4px;font-size:.95rem;font-weight:700;display:flex}.create-panel[data-v-c73bda59]{border-radius:var(--radius-md);background:#fff;flex-direction:column;gap:10px;margin-top:4px;padding:14px;display:flex;box-shadow:0 1px 2px #1018280a,0 6px 16px #1018280d}.create-panel h3[data-v-c73bda59]{margin:0;font-size:.95rem}.create-panel label[data-v-c73bda59]{color:var(--color-text-muted);flex-direction:column;gap:4px;font-size:.8rem;display:flex}.create-panel input[data-v-c73bda59],.create-panel textarea[data-v-c73bda59]{border:1px solid var(--color-border);border-radius:var(--radius-sm);width:100%;font:inherit;color:var(--color-text);padding:0 14px;font-size:.9375rem;transition:border-color .15s}.create-panel input[data-v-c73bda59]{height:var(--btn-height)}.create-panel textarea[data-v-c73bda59]{resize:vertical;min-height:72px;padding:12px 14px}.create-panel input[data-v-c73bda59]:focus,.create-panel textarea[data-v-c73bda59]:focus{border-color:var(--color-primary);outline:none}.field-select[data-v-c73bda59]{position:relative}.field-select__trigger[data-v-c73bda59]{width:100%;height:var(--btn-height);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);font:inherit;text-align:start;cursor:pointer;justify-content:space-between;align-items:center;gap:8px;padding:0 14px;font-size:.9375rem;transition:border-color .15s;display:flex}.field-select__trigger.is-open[data-v-c73bda59]{border-color:var(--color-primary)}.field-select__trigger .is-placeholder[data-v-c73bda59]{color:var(--color-text-muted)}.field-select__chevron[data-v-c73bda59]{width:12px;height:12px;color:var(--color-text-muted);flex-shrink:0}.field-select__trigger.is-open .field-select__chevron[data-v-c73bda59]{transform:rotate(180deg)}.field-select__menu[data-v-c73bda59]{inset-inline:0;z-index:20;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);max-height:220px;margin:0;padding:6px;list-style:none;position:absolute;top:calc(100% + 6px);overflow-y:auto;box-shadow:0 8px 24px #10182814}.field-select__option[data-v-c73bda59]{border-radius:var(--radius-sm);width:100%;color:var(--color-text);font:inherit;text-align:start;cursor:pointer;background:0 0;border:none;padding:10px 12px;font-size:.875rem;display:block}.field-select__option.is-active[data-v-c73bda59]{background:var(--color-primary-light);color:var(--color-primary);font-weight:600}.create-row[data-v-c73bda59]{grid-template-columns:1fr 1fr;align-items:end;gap:8px;display:grid}.create-panel[data-v-c73bda59] .create-date.form-group{margin-bottom:0}.create-panel[data-v-c73bda59] .create-date .form-label{color:var(--color-text-muted);margin-bottom:4px;font-size:.8rem;font-weight:400}.create-actions[data-v-c73bda59]{grid-template-columns:1fr 1.2fr;gap:8px;display:grid}.btn-cancel[data-v-c73bda59],.btn-save[data-v-c73bda59]{cursor:pointer;border-radius:12px;min-height:44px;font-family:inherit;font-weight:700}.btn-cancel[data-v-c73bda59]{border:1px solid var(--color-border);background:var(--color-surface)}.btn-save[data-v-c73bda59]{background:var(--color-primary);color:#fff;border:none}.btn-save[data-v-c73bda59]:disabled{opacity:.7}.create-error[data-v-c73bda59]{color:#b42318;margin:0;font-size:.8rem} diff --git a/dist/assets/RemindersView-xi9w9NYU.js b/dist/assets/RemindersView-xi9w9NYU.js deleted file mode 100644 index 2b8644a..0000000 --- a/dist/assets/RemindersView-xi9w9NYU.js +++ /dev/null @@ -1 +0,0 @@ -import{A as e,Ct as t,D as ee,Et as n,L as r,M as te,N as i,O as a,P as o,R as s,St as c,Tt as l,Y as u,Z as d,_ as f,g as ne,it as p,j as m,mt as h,n as re,q as ie,tt as ae,w as g,z as _}from"./BasicIcon-C6boaehV.js";import{t as oe}from"./dist-B7sUlTMM.js";import{o as v}from"./format-BHJptHdF.js";import{s as se,y as ce}from"./index-fdhs4HNc.js";import{t as le}from"./IconChevronBack-DORV2H0q.js";import{t as y}from"./IconMoreVertical-BPkOm_2U.js";import{t as ue}from"./PageSkeleton-sKuEY4NI.js";import{i as de,t as fe}from"./crm-DmqasSZ_.js";import{t as pe}from"./useGoBack-CgNp0uP9.js";import{t as me}from"./PersianDateInput-2Yt1srLL.js";var he={class:`page reminders-page`},ge={class:`top`},_e={class:`page__scroll page__scroll--with-nav reminders-scroll`},ve={class:`tabs`,role:`tablist`,"aria-label":`فیلتر یادآورها`},ye=[`aria-selected`,`onClick`],be={class:`tab__text`},xe={key:0,class:`tab__badge`},Se={key:1,class:`error-text`},b={key:2,class:`create-panel`},x={key:0,class:`create-error`},S=[`aria-expanded`],C={key:0,class:`field-select__menu`,role:`listbox`},w=[`aria-selected`,`onClick`],T={class:`create-row`},E={class:`create-actions`},D=[`disabled`],O={class:`summary`},k={class:`summary__top`},A={class:`summary__label`},j={class:`summary__calendar`,"aria-hidden":`true`},Ce={class:`summary__count`},we={key:0,class:`empty-state`},Te=[`onClick`],Ee=[`onClick`],De={class:`reminder-card__header`},Oe={class:`reminder-card__time`},ke={class:`reminder-card__title-row`},Ae={class:`reminder-card__body`},je={class:`reminder-card__customer`},Me={class:`reminder-card__customer-text`},Ne={class:`reminder-card__name`},Pe={class:`reminder-card__contact`},Fe={key:0,class:`reminder-card__desc`},Ie={class:`completed-section`},Le={class:`completed-bar__count`},Re={key:0,class:`completed-list`},ze=[`onClick`],Be={class:`reminder-card__header`},Ve={class:`reminder-card__time`},He={class:`reminder-card__title-row`},Ue={class:`reminder-card__body`},We={class:`reminder-card__customer`},Ge={class:`reminder-card__customer-text`},Ke={class:`reminder-card__name`},qe={class:`reminder-card__contact`},Je={key:0,class:`reminder-card__desc`},Ye={key:0,class:`completed-empty`},M=re(_({__name:`RemindersView`,setup(re){let _=ne(),M=f(),{goBack:N}=pe(`/`),P=fe(),F=e(()=>String(_.query.filter??`today`)),I=h([]),L=h([]),R=h(!0),z=h(null),B=h(!1),V=h(!1),H=h(0),U=h(!1),W=h({customerId:``,title:``,date:``,time:`10:00`,note:``}),G=h(!1),K=h(null),Xe=e(()=>{if(!W.value.customerId)return`انتخاب مشتری`;let e=L.value.find(e=>e.id===W.value.customerId);return e?.name||e?.contactName||`انتخاب مشتری`});oe(K,()=>{G.value=!1});function Ze(e){W.value.customerId=e,G.value=!1}let Qe=[{id:`all`,label:`همه`},{id:`today`,label:`امروز`},{id:`week`,label:`هفته آینده`},{id:`past`,label:`گذشته`}],q=e(()=>I.value.filter(e=>!e.completed)),J=e(()=>{let e=new Date().toISOString().slice(0,10);return I.value.filter(t=>t.completed&&t.date===e)}),Y=e(()=>q.value.length),$e=e(()=>F.value===`today`?`پیگیری‌های امروز`:F.value===`week`?`پیگیری‌های هفته آینده`:F.value===`past`?`پیگیری‌های گذشته`:`پیگیری‌های باز`),et=e(()=>new Date().getDate().toLocaleString(`fa-IR`));async function X(){try{let e=await de(`past`);H.value=e.length}catch{H.value=0}}async function Z(){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}}ie(async()=>{await Promise.all([Z(),X()])}),ae(F,Z);function tt(e){M.replace({path:`/reminders`,query:{filter:e}})}async function nt(e){try{await P.markReminderComplete(e),await Z(),await X()}catch(e){z.value=e instanceof Error?e.message:`تکمیل یادآور ناموفق بود.`}}function Q(e){return e===`in_person`?`ملاقات حضوری`:e===`call`?`تماس تلفنی`:e===`message`?`پیام`:`یادداشت`}function $(e){return e===`in_person`?`tag--green`:e===`call`?`tag--blue`:`tag--purple`}async function rt(){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 it(){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 Z(),await X()}catch(e){z.value=e instanceof Error?e.message:`ثبت یادآور ناموفق بود.`}finally{V.value=!1}}function at(){U.value=!U.value}return(e,f)=>(u(),o(`div`,he,[m(`header`,ge,[m(`button`,{type:`button`,class:`icon-btn`,"aria-label":`بازگشت`,onClick:f[0]||=(...e)=>c(N)&&c(N)(...e)},[s(le,{size:20})]),f[8]||=m(`h1`,null,`یادآورها`,-1),m(`button`,{type:`button`,class:`icon-btn`,"aria-label":`اعلان‌ها`,onClick:f[1]||=e=>c(M).push(`/profile/notifications`)},[s(se,{size:20})])]),m(`div`,_e,[m(`div`,ve,[(u(),o(a,null,d(Qe,e=>m(`button`,{key:e.id,type:`button`,role:`tab`,class:t([`tab`,{"tab--active":F.value===e.id}]),"aria-selected":F.value===e.id,onClick:t=>tt(e.id)},[m(`span`,be,[r(n(e.label)+` `,1),e.id===`past`&&H.value?(u(),o(`span`,xe,n(H.value.toLocaleString(`fa-IR`)),1)):i(``,!0)])],10,ye)),64))]),R.value?(u(),te(ue,{key:0,variant:`list`})):z.value&&!B.value?(u(),o(`p`,Se,n(z.value),1)):i(``,!0),B.value?(u(),o(`section`,b,[f[14]||=m(`h3`,null,`یادآور جدید`,-1),z.value?(u(),o(`p`,x,n(z.value),1)):i(``,!0),m(`label`,null,[f[10]||=r(` مشتری `,-1),m(`div`,{ref_key:`customerRoot`,ref:K,class:`field-select`},[m(`button`,{type:`button`,class:t([`field-select__trigger`,{"is-open":G.value}]),"aria-haspopup":`listbox`,"aria-expanded":G.value,onClick:f[2]||=e=>G.value=!G.value},[m(`span`,{class:t({"is-placeholder":!W.value.customerId})},n(Xe.value),3),f[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,S),G.value?(u(),o(`ul`,C,[(u(!0),o(a,null,d(L.value,e=>(u(),o(`li`,{key:e.id},[m(`button`,{type:`button`,role:`option`,class:t([`field-select__option`,{"is-active":W.value.customerId===e.id}]),"aria-selected":W.value.customerId===e.id,onClick:t=>Ze(e.id)},n(e.name||e.contactName),11,w)]))),128))])):i(``,!0)],512)]),m(`label`,null,[f[11]||=r(` عنوان `,-1),p(m(`input`,{"onUpdate:modelValue":f[3]||=e=>W.value.title=e,type:`text`,placeholder:`مثلاً پیگیری نمونه`},null,512),[[g,W.value.title]])]),m(`div`,T,[s(me,{modelValue:W.value.date,"onUpdate:modelValue":f[4]||=e=>W.value.date=e,label:`تاریخ`,class:`create-date`},null,8,[`modelValue`]),m(`label`,null,[f[12]||=r(` ساعت `,-1),p(m(`input`,{"onUpdate:modelValue":f[5]||=e=>W.value.time=e,type:`time`},null,512),[[g,W.value.time]])])]),m(`label`,null,[f[13]||=r(` یادداشت `,-1),p(m(`textarea`,{"onUpdate:modelValue":f[6]||=e=>W.value.note=e,rows:`2`,placeholder:`اختیاری`},null,512),[[g,W.value.note]])]),m(`div`,E,[m(`button`,{type:`button`,class:`btn-cancel`,onClick:f[7]||=e=>B.value=!1},`انصراف`),m(`button`,{type:`button`,class:`btn-save`,disabled:V.value,onClick:it},n(V.value?`در حال ثبت...`:`ثبت یادآور`),9,D)])])):!R.value&&!z.value?(u(),o(a,{key:3},[m(`section`,O,[m(`div`,k,[m(`span`,A,n($e.value),1),m(`div`,j,[f[15]||=m(`svg`,{viewBox:`0 0 24 24`,fill:`none`},[m(`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),m(`span`,null,n(et.value),1)])]),m(`div`,Ce,[m(`strong`,null,n(c(v)(Y.value)),1),f[16]||=m(`span`,null,`مورد`,-1)]),f[17]||=m(`p`,{class:`summary__sub`},`یادآورهای شما برای پیگیری مشتریان`,-1)]),q.value.length?i(``,!0):(u(),o(`div`,we,`یادآوری برای این بازه ثبت نشده است.`)),(u(!0),o(a,null,d(q.value,e=>(u(),o(`div`,{key:e.id,class:`reminder-row`},[m(`button`,{type:`button`,class:`reminder-row__check`,"aria-label":`تکمیل یادآور`,onClick:ee(t=>nt(e.id),[`stop`])},null,8,Te),m(`article`,{class:`reminder-card`,onClick:t=>c(M).push({path:`/reminder`,query:{id:e.id}})},[m(`div`,De,[m(`span`,Oe,n(e.time),1),m(`div`,ke,[m(`strong`,null,n(e.title),1),s(y,{size:18,class:`reminder-card__menu`})])]),m(`div`,Ae,[m(`span`,{class:t([`tag`,$(e.interactionType)])},n(Q(e.interactionType)),3),m(`div`,je,[m(`div`,Me,[m(`p`,Ne,n(e.customerName),1),m(`p`,Pe,n(e.contactName),1)]),m(`div`,{class:`reminder-card__avatar`,style:l({background:e.avatarColor})},n(e.avatarLetter),5)])]),e.description?(u(),o(`p`,Fe,n(e.description),1)):i(``,!0)],8,Ee)]))),128)),m(`section`,Ie,[m(`button`,{type:`button`,class:`completed-bar`,onClick:at},[(u(),o(`svg`,{class:t([`completed-bar__chevron`,{"is-open":U.value}]),viewBox:`0 0 12 12`,"aria-hidden":`true`},[...f[18]||=[m(`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)),f[19]||=m(`span`,{class:`completed-bar__label`},`یادآورهای تکمیل شده امروز`,-1),m(`span`,Le,n(c(v)(J.value.length)),1)]),U.value?(u(),o(`div`,Re,[(u(!0),o(a,null,d(J.value,e=>(u(),o(`div`,{key:e.id,class:`reminder-row reminder-row--done`},[f[20]||=m(`span`,{class:`reminder-row__check reminder-row__check--done`,"aria-hidden":`true`},null,-1),m(`article`,{class:`reminder-card reminder-card--done`,onClick:t=>c(M).push({path:`/reminder`,query:{id:e.id}})},[m(`div`,Be,[m(`span`,Ve,n(e.time),1),m(`div`,He,[m(`strong`,null,n(e.title),1),s(y,{size:18,class:`reminder-card__menu`})])]),m(`div`,Ue,[m(`span`,{class:t([`tag`,$(e.interactionType)])},n(Q(e.interactionType)),3),m(`div`,We,[m(`div`,Ge,[m(`p`,Ke,n(e.customerName),1),m(`p`,qe,n(e.contactName),1)]),m(`div`,{class:`reminder-card__avatar`,style:l({background:e.avatarColor})},n(e.avatarLetter),5)])]),e.description?(u(),o(`p`,Je,n(e.description),1)):i(``,!0)],8,ze)]))),128)),J.value.length?i(``,!0):(u(),o(`p`,Ye,`یادآور تکمیل‌شده‌ای برای امروز نیست.`))])):i(``,!0)])],64)):i(``,!0),m(`button`,{type:`button`,class:`new-btn`,onClick:rt},[s(ce,{size:20,color:`#fff`}),f[21]||=r(` یادآور جدید `,-1)])])]))}}),[[`__scopeId`,`data-v-c73bda59`]]);export{M as default}; \ No newline at end of file diff --git a/dist/assets/SearchField-CGW0jRdh.js b/dist/assets/SearchField-CGW0jRdh.js new file mode 100644 index 0000000..5ec6fac --- /dev/null +++ b/dist/assets/SearchField-CGW0jRdh.js @@ -0,0 +1 @@ +import{P as e,X as t,ht as n,j as r,n as i,z as a}from"./BasicIcon-Bnxm-DKk.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=n(null);function l(){c.value?.focus()}return a({focus:l}),(n,a)=>(t(),e(`div`,o,[r(`input`,{ref_key:`inputRef`,ref:c,class:`search-field__input`,type:`search`,enterkeyhint:`search`,value:i.modelValue,placeholder:i.placeholder,onInput:a[0]||=e=>n.$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-CRmbblW7.js b/dist/assets/SearchField-CRmbblW7.js deleted file mode 100644 index 63f3d4e..0000000 --- a/dist/assets/SearchField-CRmbblW7.js +++ /dev/null @@ -1 +0,0 @@ -import{P as e,Y as t,j as n,n as r,z as i}from"./BasicIcon-C6boaehV.js";var a={class:`search-field`},o=[`value`,`placeholder`],s=r(i({__name:`SearchField`,props:{modelValue:{},placeholder:{}},emits:[`update:modelValue`],setup(r){return(i,s)=>(t(),e(`div`,a,[n(`input`,{class:`search-field__input`,type:`search`,value:r.modelValue,placeholder:r.placeholder,onInput:s[0]||=e=>i.$emit(`update:modelValue`,e.target.value)},null,40,o)]))}}),[[`__scopeId`,`data-v-dd01a898`]]);export{s as t}; \ No newline at end of file diff --git a/dist/assets/SearchField-BSod6Xak.css b/dist/assets/SearchField-QJMYJEg3.css similarity index 54% rename from dist/assets/SearchField-BSod6Xak.css rename to dist/assets/SearchField-QJMYJEg3.css index a914394..9133813 100644 --- a/dist/assets/SearchField-BSod6Xak.css +++ b/dist/assets/SearchField-QJMYJEg3.css @@ -1 +1 @@ -.search-field__input[data-v-dd01a898]{border:1px solid var(--color-border);border-radius:var(--radius-sm);width:100%;height:48px;color:var(--color-text);padding:0 16px;font-family:inherit;font-size:.9375rem;line-height:1.5;transition:border-color .15s}.search-field__input[data-v-dd01a898]::placeholder{color:var(--color-text-muted)}.search-field__input[data-v-dd01a898]:focus{border-color:var(--color-primary);outline:none} +.search-field__input[data-v-c37974a4]{border:1px solid var(--color-border);border-radius:var(--radius-sm);width:100%;height:48px;color:var(--color-text);padding:0 16px;font-family:inherit;font-size:.9375rem;line-height:1.5;transition:border-color .15s}.search-field__input[data-v-c37974a4]::placeholder{color:var(--color-text-muted)}.search-field__input[data-v-c37974a4]:focus{border-color:var(--color-primary);outline:none} diff --git a/dist/assets/SettlementTypeView-Bo02Lk5z.js b/dist/assets/SettlementTypeView-Bo02Lk5z.js deleted file mode 100644 index 1f5a620..0000000 --- a/dist/assets/SettlementTypeView-Bo02Lk5z.js +++ /dev/null @@ -1 +0,0 @@ -import{A as e,Et as t,L as n,M as r,N as i,O as a,P as o,R as s,St as c,Y as l,_ as u,j as d,mt as f,n as p,rt as m,t as h,tt as g,z as _}from"./BasicIcon-C6boaehV.js";import{n as v}from"./format-BHJptHdF.js";import{d as y,n as b}from"./index-fdhs4HNc.js";import{t as x}from"./FormErrorBanner-CjdBfIQT.js";import{t as S}from"./CheckoutStepper-CqUviuW7.js";import{t as C}from"./PageHeader-Cd04Z6F_.js";import{n as w}from"./orderInvoice-B0L1Aeuk.js";import{t as T}from"./useRequirePricedOrder-BV4a0r6K.js";import{t as E}from"./IconCheckBook-DwIUojJc.js";var D=_({__name:`IconCashSettlement`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(l(),r(h,{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=p(_({__name:`SettlementTypeView`,setup(r){let p=u(),h=y(),{orderId:_,order:J,invoiceReady:Y}=T(),X=f(!1),Z=f(``);g(_,async e=>{e&&!h.getOrderById(e)&&await h.fetchOrder(e)},{immediate:!0});let Q=e(()=>J.value?.finalAmount?v(J.value.finalAmount):`—`);async function $(e){if(X.value||!w(J.value)){Z.value=`تا قبل از قیمت‌گذاری مدیریت، امکان انتخاب روش تسویه وجود ندارد.`;return}X.value=!0,Z.value=``;try{await h.chooseSettlement(_.value,e),e===`cash`?p.replace(`/orders/${_.value}/cash`):(h.startCheckDraft(_.value),p.replace(`/orders/${_.value}/check-mode`))}catch(e){Z.value=e instanceof Error?e.message:`ثبت روش تسویه ناموفق بود.`}finally{X.value=!1}}return(e,r)=>(l(),o(a,null,[d(`div`,O,[s(C,{title:`انتخاب نوع تسویه`,subtitle:`پس از صدور فاکتور، نوع تسویه را انتخاب کنید`,"show-back":``,centered:``,onBack:r[0]||=e=>c(p).push(`/orders/${c(_)}`)}),d(`div`,k,[s(x,{message:Z.value},null,8,[`message`]),c(Y)?(l(),o(a,{key:1},[d(`div`,j,[r[10]||=d(`span`,{class:`settlement-invoice__label`},`مبلغ فاکتور`,-1),d(`strong`,M,t(Q.value),1),c(J)?(l(),o(`span`,N,`سفارش `+t(c(J).orderNumber),1)):i(``,!0)]),d(`div`,P,[d(`button`,{type:`button`,class:`settlement-card`,disabled:X.value,onClick:r[2]||=e=>$(`cash`)},[d(`span`,I,[s(D,{size:36})]),r[11]||=d(`h3`,null,`تسویه نقدی`,-1),r[12]||=d(`p`,null,`پرداخت از طریق واریز به حساب شرکت`,-1)],8,F),d(`button`,{type:`button`,class:`settlement-card`,disabled:X.value,onClick:r[3]||=e=>$(`check`)},[d(`span`,R,[s(E,{size:36})]),r[13]||=d(`h3`,null,`تسویه چکی`,-1),r[14]||=d(`p`,null,`پرداخت بر اساس مبلغ فاکتور با ثبت چک`,-1)],8,L)])],64)):(l(),o(`div`,A,[r[8]||=d(`h3`,{class:`settlement-waiting__title`},`در انتظار قیمت‌گذاری`,-1),r[9]||=d(`p`,{class:`settlement-waiting__text`},` پیش‌سفارش ثبت شده است. پس از تعیین قیمت توسط مدیریت و صدور فاکتور، از این صفحه روش تسویه (نقد یا چک) را انتخاب کنید. `,-1),s(b,{block:``,variant:`outline`,onClick:r[1]||=e=>c(p).push(`/orders/${c(_)}`)},{default:m(()=>[...r[7]||=[n(` بازگشت به جزئیات سفارش `,-1)]]),_:1})]))])]),d(`div`,z,[s(S,{"current-step":4}),d(`header`,B,[r[15]||=d(`h1`,{class:`desktop-page__title`},`انتخاب نوع تسویه`,-1),d(`p`,V,[c(Y)?(l(),o(a,{key:0},[n(` مبلغ فاکتور `+t(Q.value)+t(c(J)?` · سفارش ${c(J).orderNumber}`:``),1)],64)):(l(),o(a,{key:1},[n(`پس از قیمت‌گذاری مدیریت فعال می‌شود`)],64))])]),s(x,{message:Z.value},null,8,[`message`]),c(Y)?(l(),o(`div`,U,[d(`button`,{type:`button`,class:`settlement-card settlement-card--desktop`,disabled:X.value,onClick:r[5]||=e=>$(`cash`)},[d(`span`,G,[s(D,{size:40})]),r[19]||=d(`h3`,null,`تسویه نقدی`,-1),r[20]||=d(`p`,null,`پرداخت از طریق واریز به حساب شرکت`,-1)],8,W),d(`button`,{type:`button`,class:`settlement-card settlement-card--desktop`,disabled:X.value,onClick:r[6]||=e=>$(`check`)},[d(`span`,q,[s(E,{size:40})]),r[21]||=d(`h3`,null,`تسویه چکی`,-1),r[22]||=d(`p`,null,`پرداخت بر اساس مبلغ فاکتور با ثبت چک`,-1)],8,K)])):(l(),o(`div`,H,[r[17]||=d(`h3`,{class:`settlement-waiting__title`},`در انتظار قیمت‌گذاری`,-1),r[18]||=d(`p`,{class:`settlement-waiting__text`},` پیش‌سفارش ثبت شده است. پس از صدور فاکتور می‌توانید روش تسویه را انتخاب کنید. `,-1),s(b,{variant:`outline`,onClick:r[4]||=e=>c(p).push(`/orders/${c(_)}`)},{default:m(()=>[...r[16]||=[n(` بازگشت به جزئیات سفارش `,-1)]]),_:1})]))])],64))}}),[[`__scopeId`,`data-v-6b697aeb`]]);export{J as default}; \ No newline at end of file diff --git a/dist/assets/SettlementTypeView-Ci4oR-Ca.js b/dist/assets/SettlementTypeView-Ci4oR-Ca.js new file mode 100644 index 0000000..0f801ae --- /dev/null +++ b/dist/assets/SettlementTypeView-Ci4oR-Ca.js @@ -0,0 +1 @@ +import{A as e,Ct as t,Dt as n,L as r,M as i,N as a,O as o,P as s,R as c,X as l,_ as u,ht as d,it as f,j as p,n as m,nt as h,t as g,z as _}from"./BasicIcon-Bnxm-DKk.js";import{n as v}from"./format-C72AoJ2H.js";import{C as y,d as b,n as x}from"./index-DB4cQnln.js";import{t as S}from"./FormErrorBanner-BahrrGfv.js";import{t as C}from"./CheckoutStepper-DOrSsyu1.js";import{t as w}from"./PageHeader-BxTTQB_F.js";import{n as T}from"./orderInvoice-B0L1Aeuk.js";import{t as E}from"./useRequirePricedOrder-CUckkgqU.js";var D=_({__name:`IconCashSettlement`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(l(),i(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=m(_({__name:`SettlementTypeView`,setup(i){let m=u(),g=b(),{orderId:_,order:J,invoiceReady:Y}=E(),X=d(!1),Z=d(``);h(_,async e=>{e&&!g.getOrderById(e)&&await g.fetchOrder(e)},{immediate:!0});let Q=e(()=>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 g.chooseSettlement(_.value,e),e===`cash`?m.replace(`/orders/${_.value}/cash`):(g.startCheckDraft(_.value),m.replace(`/orders/${_.value}/check-mode`))}catch(e){Z.value=e instanceof Error?e.message:`ثبت روش تسویه ناموفق بود.`}finally{X.value=!1}}return(e,i)=>(l(),s(o,null,[p(`div`,O,[c(w,{title:`انتخاب نوع تسویه`,subtitle:`پس از صدور فاکتور، نوع تسویه را انتخاب کنید`,"show-back":``,centered:``,onBack:i[0]||=e=>t(m).push(`/orders/${t(_)}`)}),p(`div`,k,[c(S,{message:Z.value},null,8,[`message`]),t(Y)?(l(),s(o,{key:1},[p(`div`,j,[i[10]||=p(`span`,{class:`settlement-invoice__label`},`مبلغ فاکتور`,-1),p(`strong`,M,n(Q.value),1),t(J)?(l(),s(`span`,N,`سفارش `+n(t(J).orderNumber),1)):a(``,!0)]),p(`div`,P,[p(`button`,{type:`button`,class:`settlement-card`,disabled:X.value,onClick:i[2]||=e=>$(`cash`)},[p(`span`,I,[c(D,{size:36})]),i[11]||=p(`h3`,null,`تسویه نقدی`,-1),i[12]||=p(`p`,null,`پرداخت از طریق واریز به حساب شرکت`,-1)],8,F),p(`button`,{type:`button`,class:`settlement-card`,disabled:X.value,onClick:i[3]||=e=>$(`check`)},[p(`span`,R,[c(y,{size:36})]),i[13]||=p(`h3`,null,`تسویه چکی`,-1),i[14]||=p(`p`,null,`پرداخت بر اساس مبلغ فاکتور با ثبت چک`,-1)],8,L)])],64)):(l(),s(`div`,A,[i[8]||=p(`h3`,{class:`settlement-waiting__title`},`در انتظار قیمت‌گذاری`,-1),i[9]||=p(`p`,{class:`settlement-waiting__text`},` پیش‌سفارش ثبت شده است. پس از تعیین قیمت توسط مدیریت و صدور فاکتور، از این صفحه روش تسویه (نقد یا چک) را انتخاب کنید. `,-1),c(x,{block:``,variant:`outline`,onClick:i[1]||=e=>t(m).push(`/orders/${t(_)}`)},{default:f(()=>[...i[7]||=[r(` بازگشت به جزئیات سفارش `,-1)]]),_:1})]))])]),p(`div`,z,[c(C,{"current-step":4}),p(`header`,B,[i[15]||=p(`h1`,{class:`desktop-page__title`},`انتخاب نوع تسویه`,-1),p(`p`,V,[t(Y)?(l(),s(o,{key:0},[r(` مبلغ فاکتور `+n(Q.value)+n(t(J)?` · سفارش ${t(J).orderNumber}`:``),1)],64)):(l(),s(o,{key:1},[r(`پس از قیمت‌گذاری مدیریت فعال می‌شود`)],64))])]),c(S,{message:Z.value},null,8,[`message`]),t(Y)?(l(),s(`div`,U,[p(`button`,{type:`button`,class:`settlement-card settlement-card--desktop`,disabled:X.value,onClick:i[5]||=e=>$(`cash`)},[p(`span`,G,[c(D,{size:40})]),i[19]||=p(`h3`,null,`تسویه نقدی`,-1),i[20]||=p(`p`,null,`پرداخت از طریق واریز به حساب شرکت`,-1)],8,W),p(`button`,{type:`button`,class:`settlement-card settlement-card--desktop`,disabled:X.value,onClick:i[6]||=e=>$(`check`)},[p(`span`,q,[c(y,{size:40})]),i[21]||=p(`h3`,null,`تسویه چکی`,-1),i[22]||=p(`p`,null,`پرداخت بر اساس مبلغ فاکتور با ثبت چک`,-1)],8,K)])):(l(),s(`div`,H,[i[17]||=p(`h3`,{class:`settlement-waiting__title`},`در انتظار قیمت‌گذاری`,-1),i[18]||=p(`p`,{class:`settlement-waiting__text`},` پیش‌سفارش ثبت شده است. پس از صدور فاکتور می‌توانید روش تسویه را انتخاب کنید. `,-1),c(x,{variant:`outline`,onClick:i[4]||=e=>t(m).push(`/orders/${t(_)}`)},{default:f(()=>[...i[16]||=[r(` بازگشت به جزئیات سفارش `,-1)]]),_:1})]))])],64))}}),[[`__scopeId`,`data-v-6b697aeb`]]);export{J as default}; \ No newline at end of file diff --git a/dist/assets/WelcomeView-CMxZax1Y.js b/dist/assets/WelcomeView-DCG7Drw-.js similarity index 75% rename from dist/assets/WelcomeView-CMxZax1Y.js rename to dist/assets/WelcomeView-DCG7Drw-.js index 1164235..7d3e6ce 100644 --- a/dist/assets/WelcomeView-CMxZax1Y.js +++ b/dist/assets/WelcomeView-DCG7Drw-.js @@ -1 +1 @@ -import{Et as e,M as t,O as n,P as r,R as i,St as a,Y as o,Z as s,_ as c,j as l,n as u,t as d,z as f}from"./BasicIcon-C6boaehV.js";import{_ as p,o as m}from"./index-fdhs4HNc.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=u(f({__name:`WelcomeView`,setup(u){let f=c(),T=[{icon:`star`,title:`همراه همیشگی کسب‌وکارتان`,subtitle:`با خدمات ویژه مشتریان`},{icon:`vuesax-linear:truck-time`,title:`سفارش عمده`,subtitle:`مستقیم از تولیدکننده`},{icon:`vuesax-linear:element-3`,title:`تنوع بی‌نظیر محصولات`,subtitle:`از کلاسیک تا مدرن`}];function E(){let e=typeof f.currentRoute.value.query.redirect==`string`?f.currentRoute.value.query.redirect:void 0;f.push({name:`login`,query:e?{redirect:e}:void 0})}return(c,u)=>(o(),r(`div`,g,[l(`img`,{class:`welcome-page__bg`,src:a(h),alt:``},null,8,_),u[7]||=l(`div`,{class:`welcome-page__veil`,"aria-hidden":`true`},null,-1),l(`div`,v,[l(`div`,y,[l(`header`,{class:`welcome-top`},[l(`button`,{type:`button`,class:`welcome-skip`,onClick:E},`رد شدن`)]),l(`div`,b,[i(p,{size:88}),u[0]||=l(`h1`,{class:`welcome-brand__fa`},`نادمی تکس`,-1),u[1]||=l(`p`,{class:`welcome-brand__tag`},`انتخاب حرفه‌ای، شروع یک همکاری ماندگار`,-1),u[2]||=l(`span`,{class:`welcome-brand__rule`,"aria-hidden":`true`},null,-1)]),l(`ul`,x,[(o(),r(n,null,s(T,n=>l(`li`,{key:n.title,class:`welcome-feature`},[l(`span`,S,[n.icon===`star`?(o(),r(`svg`,C,[...u[3]||=[l(`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)]])):(o(),t(d,{key:1,icon:n.icon,size:22,color:`#ffffff`},null,8,[`icon`]))]),l(`strong`,null,e(n.title),1),l(`span`,null,e(n.subtitle),1)])),64))]),u[5]||=l(`div`,{class:`welcome-spacer`,"aria-hidden":`true`},null,-1),u[6]||=l(`div`,{class:`welcome-dots`,"aria-hidden":`true`},[l(`i`,{class:`is-on`}),l(`i`),l(`i`),l(`i`)],-1),l(`button`,{type:`button`,class:`welcome-cta`,onClick:E},[u[4]||=l(`span`,null,`ورود / ثبت‌نام`,-1),l(`span`,w,[i(m,{size:18,color:`#ffffff`})])])])])]))}}),[[`__scopeId`,`data-v-66f13882`]]);export{T as default}; \ No newline at end of file +import{Ct as e,Dt as t,M as n,O as r,P as i,Q as a,R as o,X as s,_ as c,j as l,n as u,t as d,z as f}from"./BasicIcon-Bnxm-DKk.js";import{_ as p,o as m}from"./index-DB4cQnln.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=u(f({__name:`WelcomeView`,setup(u){let f=c(),T=[{icon:`star`,title:`همراه همیشگی کسب‌وکارتان`,subtitle:`با خدمات ویژه مشتریان`},{icon:`vuesax-linear:truck-time`,title:`سفارش عمده`,subtitle:`مستقیم از تولیدکننده`},{icon:`vuesax-linear:element-3`,title:`تنوع بی‌نظیر محصولات`,subtitle:`از کلاسیک تا مدرن`}];function E(){let e=typeof f.currentRoute.value.query.redirect==`string`?f.currentRoute.value.query.redirect:void 0;f.push({name:`login`,query:e?{redirect:e}:void 0})}return(c,u)=>(s(),i(`div`,g,[l(`img`,{class:`welcome-page__bg`,src:e(h),alt:``},null,8,_),u[7]||=l(`div`,{class:`welcome-page__veil`,"aria-hidden":`true`},null,-1),l(`div`,v,[l(`div`,y,[l(`header`,{class:`welcome-top`},[l(`button`,{type:`button`,class:`welcome-skip`,onClick:E},`رد شدن`)]),l(`div`,b,[o(p,{size:88}),u[0]||=l(`h1`,{class:`welcome-brand__fa`},`نادمی تکس`,-1),u[1]||=l(`p`,{class:`welcome-brand__tag`},`انتخاب حرفه‌ای، شروع یک همکاری ماندگار`,-1),u[2]||=l(`span`,{class:`welcome-brand__rule`,"aria-hidden":`true`},null,-1)]),l(`ul`,x,[(s(),i(r,null,a(T,e=>l(`li`,{key:e.title,class:`welcome-feature`},[l(`span`,S,[e.icon===`star`?(s(),i(`svg`,C,[...u[3]||=[l(`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)]])):(s(),n(d,{key:1,icon:e.icon,size:22,color:`#ffffff`},null,8,[`icon`]))]),l(`strong`,null,t(e.title),1),l(`span`,null,t(e.subtitle),1)])),64))]),u[5]||=l(`div`,{class:`welcome-spacer`,"aria-hidden":`true`},null,-1),u[6]||=l(`div`,{class:`welcome-dots`,"aria-hidden":`true`},[l(`i`,{class:`is-on`}),l(`i`),l(`i`),l(`i`)],-1),l(`button`,{type:`button`,class:`welcome-cta`,onClick:E},[u[4]||=l(`span`,null,`ورود / ثبت‌نام`,-1),l(`span`,w,[o(m,{size:18,color:`#ffffff`})])])])])]))}}),[[`__scopeId`,`data-v-66f13882`]]);export{T as default}; \ No newline at end of file diff --git a/dist/assets/caliteCollections-CooWZH--.js b/dist/assets/caliteCollections-CooWZH--.js new file mode 100644 index 0000000..9632f65 --- /dev/null +++ b/dist/assets/caliteCollections-CooWZH--.js @@ -0,0 +1 @@ +import{c as e}from"./format-C72AoJ2H.js";var t={suit:`پارچه‌های کت‌وشلواری`,trousers:`پارچه‌های شلواری`,shirt:`پارچه‌های پیراهنی`},n={summer:`تابستانه`,winter:`زمستانه`,all_season:`چهار فصل`};function r(e){let t=e.trim();return t.includes(`کالیته`)?t:`کالیته ${t}`}function i(t){return e(t).replace(/\u064A/g,`ی`).replace(/\u0643/g,`ک`).trim().toLowerCase()}function a(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 o(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 s(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 c(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:s(t),items:e}})}function l(e,n){let i=new Map;for(let e of n){if(!e.catalogId)continue;let t=i.get(e.catalogId)??[];t.push(e),i.set(e.catalogId,t)}let s=e.map(e=>i.get(e.id)?.length??e.productCount??0),l=Math.max(4,[...s].sort((e,t)=>t-e)[Math.floor(e.length/3)]??4);return e.map(e=>{let n=i.get(e.id)??[],s=c(n).length||n.length||e.productCount||0,u=o(n.map(e=>e.categoryId),`suit`),d=o(n.map(e=>e.season),`all_season`),f=n.some(e=>e.isNew),p=s>=l;return{id:e.id,companyId:e.companyId,name:e.name,title:r(e.name),latinName:a(e),subtitle:e.description?.trim()||t[u]||`پارچه‌های منتخب`,code:e.code,imageUrl:e.imageUrl||n.find(e=>e.imageUrl)?.imageUrl,patternCount:s,badge:f?`new`:p?`popular`:void 0,season:d,isNew:f,isPopular:p}})}function u(e,t,n){let r=i(n),a=e.filter(e=>!r||i([e.title,e.name,e.latinName,e.subtitle,e.code??``].join(` `)).includes(r));if(t===`newest`)return a.sort((e,t)=>Number(t.isNew)-Number(e.isNew)||t.patternCount-e.patternCount);if(t===`popular`)return a.sort((e,t)=>Number(t.isPopular)-Number(e.isPopular)||t.patternCount-e.patternCount);if(t===`season`){let e=[`summer`,`winter`,`all_season`];return a.sort((t,n)=>e.indexOf(t.season)-e.indexOf(n.season)||t.title.localeCompare(n.title,`fa`))}return a}var d=[{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 f(e){return d.find(t=>t.id===e)}function p(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}))}export{l as a,u as c,n as i,c as l,p as n,r as o,f as r,a as s,d as t}; \ No newline at end of file diff --git a/dist/assets/catalog-s7nVUdlj.js b/dist/assets/catalog-B2Z_WZGF.js similarity index 93% rename from dist/assets/catalog-s7nVUdlj.js rename to dist/assets/catalog-B2Z_WZGF.js index 2c95efc..3331546 100644 --- a/dist/assets/catalog-s7nVUdlj.js +++ b/dist/assets/catalog-B2Z_WZGF.js @@ -1 +1 @@ -import{mt as e}from"./BasicIcon-C6boaehV.js";import{n as t,o as n}from"./http-BC1hNfZ4.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{ht as e}from"./BasicIcon-Bnxm-DKk.js";import{n as t,o as n}from"./http-Bnj5Ml97.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/catalogGallery-Khy0nWqc.js b/dist/assets/catalogGallery-Khy0nWqc.js deleted file mode 100644 index 82352b6..0000000 --- a/dist/assets/catalogGallery-Khy0nWqc.js +++ /dev/null @@ -1 +0,0 @@ -var e={suit:`پارچه‌های کت‌وشلواری`,trousers:`پارچه‌های شلواری`,shirt:`پارچه‌های پیراهنی`},t={summer:`تابستانه`,winter:`زمستانه`,all_season:`چهار فصل`};function n(e){let t=e.trim();return t.includes(`کالیته`)?t:`کالیته ${t}`}function r(e){return e.description?.match(/[A-Za-z][A-Za-z0-9 .&-]{1,28}/)?.[0]?.trim()||(/^[A-Za-z]/.test(e.code)?e.code:``)}function i(e,t){if(!e.length)return t;let n=new Map;for(let t of e)n.set(t,(n.get(t)??0)+1);return[...n.entries()].sort((e,t)=>t[1]-e[1])[0]?.[0]??t}function a(e){let t=`${e.weaveType??``} ${e.tags.join(` `)} ${e.name}`;return/ملانژ|melange|mélange|heather/i.test(t)?`melange`:/طرح‌?دار|striped?|check|print|jacquard|pattern/i.test(t)?`patterned`:/ساده|plain|solid/i.test(t)?`plain`:`other`}function o(e){let t=new Map;for(let n of e){let e=n.name.trim()||n.code,r=t.get(e)??[];r.push(n),t.set(e,r)}return[...t.entries()].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:a(t),items:e}})}function s(t,a){let s=new Map;for(let e of a){if(!e.catalogId)continue;let t=s.get(e.catalogId)??[];t.push(e),s.set(e.catalogId,t)}let c=t.map(e=>s.get(e.id)?.length??e.productCount??0),l=Math.max(4,[...c].sort((e,t)=>t-e)[Math.floor(t.length/3)]??4);return t.map(t=>{let a=s.get(t.id)??[],c=o(a).length||a.length||t.productCount||0,u=i(a.map(e=>e.categoryId),`suit`),d=i(a.map(e=>e.season),`all_season`),f=a.some(e=>e.isNew),p=c>=l;return{id:t.id,companyId:t.companyId,name:t.name,title:n(t.name),latinName:r(t),subtitle:t.description?.trim()||e[u]||`پارچه‌های منتخب`,imageUrl:t.imageUrl||a.find(e=>e.imageUrl)?.imageUrl,patternCount:c,badge:f?`new`:p?`popular`:void 0,season:d,isNew:f,isPopular:p}})}function c(e,t,n){let r=n.trim().toLowerCase(),i=e.filter(e=>!r||[e.title,e.name,e.latinName,e.subtitle].join(` `).toLowerCase().includes(r));if(t===`newest`)return i.sort((e,t)=>Number(t.isNew)-Number(e.isNew)||t.patternCount-e.patternCount);if(t===`popular`)return i.sort((e,t)=>Number(t.isPopular)-Number(e.isPopular)||t.patternCount-e.patternCount);if(t===`season`){let e=[`summer`,`winter`,`all_season`];return i.sort((t,n)=>e.indexOf(t.season)-e.indexOf(n.season)||t.title.localeCompare(n.title,`fa`))}return i}export{c as a,r as i,s as n,o,n as r,t}; \ No newline at end of file diff --git a/dist/assets/catalogRequests-D1kBtGqL.js b/dist/assets/catalogRequests-CHkUMFJx.js similarity index 93% rename from dist/assets/catalogRequests-D1kBtGqL.js rename to dist/assets/catalogRequests-CHkUMFJx.js index c802dfe..116c3d3 100644 --- a/dist/assets/catalogRequests-D1kBtGqL.js +++ b/dist/assets/catalogRequests-CHkUMFJx.js @@ -1 +1 @@ -import{A as e,mt as t}from"./BasicIcon-C6boaehV.js";import{n,o as r}from"./http-BC1hNfZ4.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,status:a[e.status]??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 +import{A as e,ht as t}from"./BasicIcon-Bnxm-DKk.js";import{n,o as r}from"./http-Bnj5Ml97.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,status:a[e.status]??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-eyHye9W7.js b/dist/assets/categoryIcons-XvfZlu8n.js similarity index 88% rename from dist/assets/categoryIcons-eyHye9W7.js rename to dist/assets/categoryIcons-XvfZlu8n.js index 5dc5a4a..0a9fa9b 100644 --- a/dist/assets/categoryIcons-eyHye9W7.js +++ b/dist/assets/categoryIcons-XvfZlu8n.js @@ -1 +1 @@ -import{M as e,P as t,Y as n,j as r,t as i,z as a}from"./BasicIcon-C6boaehV.js";import{b as o,v as s,w as c}from"./index-fdhs4HNc.js";import{t as l}from"./IconDiamond-Bgv1zgqc.js";import{t as u}from"./IconLayoutGrid-E-Q8Z5rF.js";import{t as d}from"./IconShoppingBag-Bq21_Txe.js";var f=a({__name:`IconBolt`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(t){return(r,a)=>(n(),e(i,{icon:`vuesax-linear:flash`,size:t.size,"stroke-width":t.strokeWidth,color:t.color},null,8,[`size`,`stroke-width`,`color`]))}}),p=a({__name:`IconFeather`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(t){return(r,a)=>(n(),e(i,{icon:`vuesax-linear:pen-add`,size:t.size,"stroke-width":t.strokeWidth,color:t.color},null,8,[`size`,`stroke-width`,`color`]))}}),m=a({__name:`IconIdCard`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(t){return(r,a)=>(n(),e(i,{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=a({__name:`IconShirt`,props:{size:{default:24},color:{default:`currentColor`},strokeWidth:{default:1.5}},setup(e){return(i,a)=>(n(),t(`svg`,{width:e.size,height:e.size,viewBox:`0 0 24 24`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,"aria-hidden":`true`},[r(`path`,{d:`M8.25 5.25 12 7.75l3.75-2.5 2.25 2.75L16 9.5V18.5a1 1 0 0 1-1 1H9a1 1 0 0 1-1-1V9.5L6 8l2.25-2.75Z`,stroke:e.color,"stroke-width":e.strokeWidth,"stroke-linecap":`round`,"stroke-linejoin":`round`},null,8,g),r(`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=a({__name:`IconSuit`,props:{size:{default:24},color:{default:`currentColor`},strokeWidth:{default:1.5}},setup(e){return(i,a)=>(n(),t(`svg`,{width:e.size,height:e.size,viewBox:`0 0 24 24`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,"aria-hidden":`true`},[r(`path`,{d:`M7.5 5.5h9l2 3v10.5a1 1 0 0 1-1 1h-11a1 1 0 0 1-1-1V8.5l2-3Z`,stroke:e.color,"stroke-width":e.strokeWidth,"stroke-linecap":`round`,"stroke-linejoin":`round`},null,8,b),r(`path`,{d:`M12 5.5v13`,stroke:e.color,"stroke-width":e.strokeWidth,"stroke-linecap":`round`},null,8,x),r(`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),r(`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:s,home:c,shirt:v,suit:w,trousers:a({__name:`IconTrousers`,props:{size:{default:24},color:{default:`currentColor`},strokeWidth:{default:1.5}},setup(e){return(i,a)=>(n(),t(`svg`,{width:e.size,height:e.size,viewBox:`0 0 24 24`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,"aria-hidden":`true`},[r(`path`,{d:`M8 4.5h8v4.25l-1.75 11H13l-1-9.5-1 9.5H7.75L6 8.75V4.5Z`,stroke:e.color,"stroke-width":e.strokeWidth,"stroke-linecap":`round`,"stroke-linejoin":`round`},null,8,E),r(`path`,{d:`M12 8.75v11`,stroke:e.color,"stroke-width":e.strokeWidth,"stroke-linecap":`round`},null,8,D),r(`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 +import{M as e,P as t,X as n,j as r,t as i,z as a}from"./BasicIcon-Bnxm-DKk.js";import{T as o,k as s,v as c}from"./index-DB4cQnln.js";import{t as l}from"./IconDiamond-CGMEs3wg.js";import{t as u}from"./IconLayoutGrid-BfGINevf.js";import{t as d}from"./IconShoppingBag-kdnOLLiZ.js";var f=a({__name:`IconBolt`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(t){return(r,a)=>(n(),e(i,{icon:`vuesax-linear:flash`,size:t.size,"stroke-width":t.strokeWidth,color:t.color},null,8,[`size`,`stroke-width`,`color`]))}}),p=a({__name:`IconFeather`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(t){return(r,a)=>(n(),e(i,{icon:`vuesax-linear:pen-add`,size:t.size,"stroke-width":t.strokeWidth,color:t.color},null,8,[`size`,`stroke-width`,`color`]))}}),m=a({__name:`IconIdCard`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(t){return(r,a)=>(n(),e(i,{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=a({__name:`IconShirt`,props:{size:{default:24},color:{default:`currentColor`},strokeWidth:{default:1.5}},setup(e){return(i,a)=>(n(),t(`svg`,{width:e.size,height:e.size,viewBox:`0 0 24 24`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,"aria-hidden":`true`},[r(`path`,{d:`M8.25 5.25 12 7.75l3.75-2.5 2.25 2.75L16 9.5V18.5a1 1 0 0 1-1 1H9a1 1 0 0 1-1-1V9.5L6 8l2.25-2.75Z`,stroke:e.color,"stroke-width":e.strokeWidth,"stroke-linecap":`round`,"stroke-linejoin":`round`},null,8,g),r(`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=a({__name:`IconSuit`,props:{size:{default:24},color:{default:`currentColor`},strokeWidth:{default:1.5}},setup(e){return(i,a)=>(n(),t(`svg`,{width:e.size,height:e.size,viewBox:`0 0 24 24`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,"aria-hidden":`true`},[r(`path`,{d:`M7.5 5.5h9l2 3v10.5a1 1 0 0 1-1 1h-11a1 1 0 0 1-1-1V8.5l2-3Z`,stroke:e.color,"stroke-width":e.strokeWidth,"stroke-linecap":`round`,"stroke-linejoin":`round`},null,8,b),r(`path`,{d:`M12 5.5v13`,stroke:e.color,"stroke-width":e.strokeWidth,"stroke-linecap":`round`},null,8,x),r(`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),r(`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:a({__name:`IconTrousers`,props:{size:{default:24},color:{default:`currentColor`},strokeWidth:{default:1.5}},setup(e){return(i,a)=>(n(),t(`svg`,{width:e.size,height:e.size,viewBox:`0 0 24 24`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,"aria-hidden":`true`},[r(`path`,{d:`M8 4.5h8v4.25l-1.75 11H13l-1-9.5-1 9.5H7.75L6 8.75V4.5Z`,stroke:e.color,"stroke-width":e.strokeWidth,"stroke-linecap":`round`,"stroke-linejoin":`round`},null,8,E),r(`path`,{d:`M12 8.75v11`,stroke:e.color,"stroke-width":e.strokeWidth,"stroke-linecap":`round`},null,8,D),r(`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-CZ7XH3z9.js b/dist/assets/crm-CZ7XH3z9.js new file mode 100644 index 0000000..338c314 --- /dev/null +++ b/dist/assets/crm-CZ7XH3z9.js @@ -0,0 +1 @@ +import{ht as e}from"./BasicIcon-Bnxm-DKk.js";import{n as t,o as n,t as r}from"./http-Bnj5Ml97.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/crm-DmqasSZ_.js b/dist/assets/crm-DmqasSZ_.js deleted file mode 100644 index 5f4eab5..0000000 --- a/dist/assets/crm-DmqasSZ_.js +++ /dev/null @@ -1 +0,0 @@ -import{mt as e}from"./BasicIcon-C6boaehV.js";import{n as t,o as n,t as r}from"./http-BC1hNfZ4.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){return c(`/agent/customers/${e}`)}async function g(e){return c(`/agent/meetings`,{method:`POST`,body:e})}async function _(e){return c(`/agent/reminders`,{query:{filter:e}})}async function v(e){return c(`/agent/reminders/${e}`)}async function y(e,t=!0){return c(`/agent/reminders/${e}/complete`,{method:`PATCH`,body:{completed:t}})}async function b(e){return c(`/agent/reminders`,{method:`POST`,body:e})}function x(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 S=n(`crm`,()=>{let n=e(!1),r=e(null),i=e(null),a=e([]),o=e([]),s=e([]),c=e([]),d=e([]);async function S(){let e=await l();return s.value=e.usage,c.value=e.seasons,e}async function C(e){let t=await u(e);return d.value=t.map(x),d.value}async function w(e){return x(await t(`/products/${e}`))}async function T(){return i.value=await f(),i.value}async function E(e){return a.value=await p(e),a.value}async function D(e){return await h(e)}async function O(e){return g(e)}async function k(e){return m(e)}async function A(e){return o.value=await _(e),o.value}async function j(e){return v(e)}async function M(e){return y(e,!0)}async function N(e){return b(e)}return{loading:n,error:r,agentProfile:i,customers:a,reminders:o,usageCategories:s,seasonCategories:c,browseProducts:d,loadCategories:S,loadBrowseProducts:C,loadProductById:w,loadAgentProfile:T,loadCustomers:E,loadCustomerDetail:D,submitMeeting:O,registerCustomer:k,loadReminders:A,loadReminderDetail:j,markReminderComplete:M,createReminder:N}});export{a,_ as i,f as n,i as o,d as r,S as t}; \ No newline at end of file diff --git a/dist/assets/dist-CGdWzQ9K.js b/dist/assets/dist-CGdWzQ9K.js new file mode 100644 index 0000000..4dc4d45 --- /dev/null +++ b/dist/assets/dist-CGdWzQ9K.js @@ -0,0 +1 @@ +import{B as e,J as t,K as n,St as r,U as i,W as a,_t as o,bt as s,ct as c,ft as l,ht as u,mt as d,nt as f,ot as p,ut as m,vt as h}from"./BasicIcon-Bnxm-DKk.js";function g(e,t){return c()?(l(e,t),!0):!1}var _=new WeakMap,v=(...t)=>{let n=t[0],r=e()?.proxy??c();if(r==null&&!i())throw Error(`injectLocal must be called in setup`);return r&&_.has(r)&&n in _.get(r)?_.get(r)[n]:a(...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 s(...e);let t=e[0];return typeof t==`function`?d(p(()=>({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:o(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(t){return t||e()}function M(e,t,n={}){let{eventFilter:r=D,...i}=n;return f(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,r=!0,i){j(i)?t(e,i):r?e():n(e)}function F(e,t=1e3,n={}){let{immediate:i=!0,immediateCallback:a=!1}=n,s=null,c=h(!1);function l(){s&&=(clearInterval(s),null)}function u(){c.value=!1,l()}function d(){let n=r(t);n<=0||(c.value=!0,a&&e(),l(),c.value&&(s=setInterval(e,n)))}return i&&y&&d(),(m(t)||typeof t==`function`)&&g(f(t,()=>{c.value&&y&&d()})),g(u),{isActive:o(c),pause:u,resume:d}}function I(e,t,n={}){let{immediate:i=!0,immediateCallback:a=!1}=n,s=h(!1),c;function l(){c&&=(clearTimeout(c),void 0)}function u(){s.value=!1,l()}function d(...n){a&&e(),l(),s.value=!0,c=setTimeout(()=>{s.value=!1,c=void 0,e(...n)},r(t))}return i&&(s.value=!0,y&&d()),g(u),{isPending:o(s),start:d,stop:u}}function L(e,t,n){return f(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-CUUvbY4x.js b/dist/assets/dist-CUUvbY4x.js deleted file mode 100644 index 2540903..0000000 --- a/dist/assets/dist-CUUvbY4x.js +++ /dev/null @@ -1 +0,0 @@ -import{B as e,G as t,U as n,W as r,_t as i,at as a,dt as o,gt as s,lt as c,mt as l,pt as u,q as d,st as f,tt as p,xt as m,yt as h}from"./BasicIcon-C6boaehV.js";function g(e,t){return f()?(o(e,t),!0):!1}var _=new WeakMap,v=(...t)=>{let i=t[0],a=e()?.proxy??f();if(a==null&&!n())throw Error(`injectLocal must be called in setup`);return a&&_.has(a)&&i in _.get(a)?_.get(a)[i]:r(...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 h(...e);let t=e[0];return typeof t==`function`?u(a(()=>({get:t,set:S}))):l(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(t){return t||e()}function M(e,t,n={}){let{eventFilter:r=D,...i}=n;return p(e,E(r,t),i)}function N(e,t,n={}){let{eventFilter:r,initialState:i=`active`,...a}=n,{eventFilter:o,pause:s,resume:c,isActive:l}=O(r,{initialState:i});return{stop:M(e,t,{...a,eventFilter:o}),pause:s,resume:c,isActive:l}}function P(e,n=!0,r){j(r)?d(e,r):n?e():t(e)}function F(e,t=1e3,n={}){let{immediate:r=!0,immediateCallback:a=!1}=n,o=null,l=i(!1);function u(){o&&=(clearInterval(o),null)}function d(){l.value=!1,u()}function f(){let n=m(t);n<=0||(l.value=!0,a&&e(),u(),l.value&&(o=setInterval(e,n)))}return r&&y&&f(),(c(t)||typeof t==`function`)&&g(p(t,()=>{l.value&&y&&f()})),g(d),{isActive:s(l),pause:d,resume:f}}function I(e,t,n={}){let{immediate:r=!0,immediateCallback:a=!1}=n,o=i(!1),c;function l(){c&&=(clearTimeout(c),void 0)}function u(){o.value=!1,l()}function d(...n){a&&e(),l(),o.value=!0,c=setTimeout(()=>{o.value=!1,c=void 0,e(...n)},m(t))}return r&&(o.value=!0,y&&d()),g(u),{isPending:s(o),start:d,stop:u}}function L(e,t,n){return p(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-B7sUlTMM.js b/dist/assets/dist-CeuESLw-.js similarity index 58% rename from dist/assets/dist-B7sUlTMM.js rename to dist/assets/dist-CeuESLw-.js index c0eaaf2..10530b7 100644 --- a/dist/assets/dist-B7sUlTMM.js +++ b/dist/assets/dist-CeuESLw-.js @@ -1 +1 @@ -import{A as e,B as t,G as n,St as r,U as i,_t as a,mt as o,nt as s,q as c,tt as l,xt as u}from"./BasicIcon-C6boaehV.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-CUUvbY4x.js";var x=g?window:void 0;g&&window.document,g&&window.navigator,g&&window.location;function S(e){let t=u(e);return t?.$el??t}function C(...t){let n=(e,t,n,r)=>(e.addEventListener(t,n,r),()=>e.removeEventListener(t,n,r)),i=e(()=>{let e=y(u(t[0])).filter(e=>e!=null);return e.every(e=>typeof e!=`string`)?e:void 0});return p(()=>[i.value?.map(e=>S(e))??[x].filter(e=>e!=null),y(u(i.value?t[1]:t[0])),y(r(i.value?t[2]:t[1])),u(i.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:i=[],capture:a=!0,detectIframe:o=!1,controls:s=!1}=n;if(!r)return s?{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 c=!0,l=e=>u(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=u(e);return t&&t.$.subTree.shapeFlag===16}function p(e,t){let n=u(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&&(c=!l(n)),!c){c=!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);c=!l(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 s?{stop:_,cancel:()=>{c=!1},trigger:e=>{c=!0,m(e),c=!1}}:_}function E(){let e=a(!1),n=t();return n&&c(()=>{e.value=!0},n),e}function D(t){let n=E();return e(()=>(n.value,!!t()))}var O=Symbol(`vueuse-ssr-width`);function k(){let e=i()?b(O,null):null;return typeof e==`number`?e:void 0}function A(t,n={}){let{window:r=x,ssrWidth:i=k()}=n,o=D(()=>r&&`matchMedia`in r&&typeof r.matchMedia==`function`),c=a(typeof i==`number`),l=a(),d=a(!1);return s(()=>{if(c.value){c.value=!o.value;let e=u(t).split(`,`);d.value=e.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*)\)/),a=!!(n||r);return n&&a&&(a=i>=_(n[1])),r&&a&&(a=i<=_(r[1])),t?!a:a});return}o.value&&(l.value=r.matchMedia(u(t)),d.value=l.value.matches)}),C(l,`change`,e=>{d.value=e.matches},{passive:!0}),e(()=>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(t,r,i,s={}){let{flush:c=`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}=s,w=(_?a:o)(typeof r==`function`?r():r),T=e(()=>u(t));if(!i)try{i=F(`getDefaultStorage`,()=>x?.localStorage)()}catch(e){b(e)}if(!i)return w;let E=u(r),D=L(E),O=s.serializer??R[D],{pause:k,resume:A}=m(w,e=>N(e),{flush:c,deep:d,eventFilter:y});l(T,()=>I(),{flush:c});let j=!1;v&&p&&(i 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:i};v.dispatchEvent(i instanceof Storage?new StorageEvent(`storage`,n):new CustomEvent(z,{detail:n}))}}function N(e){try{let t=i.getItem(T.value);if(e==null)M(t,null),i.removeItem(T.value);else{let n=O.write(e);t!==n&&(i.setItem(T.value,n),M(t,n))}}catch(e){b(e)}}function P(e){let t=e?e.newValue:i.getItem(T.value);if(t==null)return h&&E!=null&&i.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!==i)){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?n(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 +import{A as e,B as t,Ct as n,J as r,K as i,St as a,U as o,ht as s,nt as c,rt as l,vt as u}from"./BasicIcon-Bnxm-DKk.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-CGdWzQ9K.js";var x=g?window:void 0;g&&window.document,g&&window.navigator,g&&window.location;function S(e){let t=a(e);return t?.$el??t}function C(...t){let r=(e,t,n,r)=>(e.addEventListener(t,n,r),()=>e.removeEventListener(t,n,r)),i=e(()=>{let e=y(a(t[0])).filter(e=>e!=null);return e.every(e=>typeof e!=`string`)?e:void 0});return p(()=>[i.value?.map(e=>S(e))??[x].filter(e=>e!=null),y(a(i.value?t[1]:t[0])),y(n(i.value?t[2]:t[1])),a(i.value?t[3]:t[2])],([e,t,n,i],a,o)=>{if(!e?.length||!t?.length||!n?.length)return;let s=h(i)?{...i}:i,c=e.flatMap(e=>t.flatMap(t=>n.map(n=>r(e,t,n,s))));o(()=>{c.forEach(e=>e())})},{flush:`post`})}var w=!1;function T(e,t,n={}){let{window:r=x,ignore:i=[],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=>a(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=a(e);return t&&t.$.subTree.shapeFlag===16}function p(e,t){let n=a(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=u(!1),n=t();return n&&r(()=>{e.value=!0},n),e}function D(t){let n=E();return e(()=>(n.value,!!t()))}var O=Symbol(`vueuse-ssr-width`);function k(){let e=o()?b(O,null):null;return typeof e==`number`?e:void 0}function A(t,n={}){let{window:r=x,ssrWidth:i=k()}=n,o=D(()=>r&&`matchMedia`in r&&typeof r.matchMedia==`function`),s=u(typeof i==`number`),c=u(),d=u(!1);return l(()=>{if(s.value){s.value=!o.value;let e=a(t).split(`,`);d.value=e.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*)\)/),a=!!(n||r);return n&&a&&(a=i>=_(n[1])),r&&a&&(a=i<=_(r[1])),t?!a:a});return}o.value&&(c.value=r.matchMedia(a(t)),d.value=c.value.matches)}),C(c,`change`,e=>{d.value=e.matches},{passive:!0}),e(()=>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(t,n,r,o={}){let{flush:l=`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=(_?u:s)(typeof n==`function`?n():n),T=e(()=>a(t));if(!r)try{r=F(`getDefaultStorage`,()=>x?.localStorage)()}catch(e){b(e)}if(!r)return w;let E=a(n),D=L(E),O=o.serializer??R[D],{pause:k,resume:A}=m(w,e=>N(e),{flush:l,deep:d,eventFilter:y});c(T,()=>I(),{flush:l});let j=!1;v&&p&&(r 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:r};v.dispatchEvent(r instanceof Storage?new StorageEvent(`storage`,n):new CustomEvent(z,{detail:n}))}}function N(e){try{let t=r.getItem(T.value);if(e==null)M(t,null),r.removeItem(T.value);else{let n=O.write(e);t!==n&&(r.setItem(T.value,n),M(t,n))}}catch(e){b(e)}}function P(e){let t=e?e.newValue:r.getItem(T.value);if(t==null)return h&&E!=null&&r.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!==r)){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?i(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/format-BHJptHdF.js b/dist/assets/format-C72AoJ2H.js similarity index 96% rename from dist/assets/format-BHJptHdF.js rename to dist/assets/format-C72AoJ2H.js index fd0de56..8725521 100644 --- a/dist/assets/format-BHJptHdF.js +++ b/dist/assets/format-C72AoJ2H.js @@ -1 +1 @@ -var e=[-61,9,38,199,426,686,756,818,1111,1181,1210,1635,2060,2097,2192,2262,2324,2394,2456,3178],t=e[0],n=e[e.length-1]-1;function r(e,t,n){return e instanceof Date?u(d(e.getFullYear(),e.getMonth()+1,e.getDate())):u(d(e,t,n))}function i(e,t,n){return f(l(e,t,n))}function a(e){return h(e)===0}function o(e,t){return t<=6?31:t<=11||a(e)?30:29}function s(e){let{gy:t,march:n,jump:r,n:i}=p(e);return{leap:m(r,i),gy:t,march:n}}function c(e){let{gy:t,march:n}=p(e);return{gy:t,march:n}}function l(e,t,n){let r=c(e);return d(r.gy,3,r.march)+(t-1)*31-g(t,7)*(t-7)+n-1}function u(e){let t=f(e).gy,n=t-621,r=s(n),i=e-d(t,3,r.march);if(i>=0){if(i<=185)return{jy:n,jm:1+g(i,31),jd:_(i,31)+1};i-=186}else--n,i+=179,r.leap===1&&(i+=1);return{jy:n,jm:7+g(i,30),jd:_(i,30)+1}}function d(e,t,n){let r=g((e+g(t-8,6)+100100)*1461,4)+g(153*_(t+9,12)+2,5)+n-34840408;return r=r-g(g(e+100100+g(t-8,6),100)*3,4)+752,r}function f(e){let t=4*e+139361631;t=t+g(g(4*e+183187720,146097)*3,4)*4-3908;let n=g(_(t,1461),4)*5+308,r=g(_(n,153),5)+1,i=_(g(n,153),12)+1;return{gy:g(t,1461)-100100+g(8-i,6),gm:i,gd:r}}function p(r){if(!Number.isFinite(r)||rn)throw RangeError(`Invalid Jalaali year ${r}: must be a finite number between ${t} and ${n} (inclusive)`);let i=r+621,a=-14,o=e[0],s=0,c=0;for(let t=1;tn)throw RangeError(`Invalid Jalaali year ${r}: must be a finite number between ${t} and ${n} (inclusive)`);let i=e[0],a=0,o=0;for(let t=1;tv[Number(e)])}var b=[`فروردین`,`اردیبهشت`,`خرداد`,`تیر`,`مرداد`,`شهریور`,`مهر`,`آبان`,`آذر`,`دی`,`بهمن`,`اسفند`],x=[`ش`,`ی`,`د`,`س`,`چ`,`پ`,`ج`];function S(e){let t=e.trim().match(/^(\d{4})-(\d{2})-(\d{2})/);if(t)return new Date(Number(t[1]),Number(t[2])-1,Number(t[3]));let n=new Date(e);return Number.isNaN(n.getTime())?new Date(NaN):new Date(n.getFullYear(),n.getMonth(),n.getDate())}function C(e){return`${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,`0`)}-${String(e.getDate()).padStart(2,`0`)}`}function w(e){let{jy:t,jm:n,jd:i}=r(e.getFullYear(),e.getMonth()+1,e.getDate());return{jy:t,jm:n,jd:i}}function T(e,t,n){let{gy:r,gm:a,gd:o}=i(e,t,n);return new Date(r,a-1,o)}function E(e){return e?w(S(e)):null}function D(e,t,n){return C(T(e,t,n))}function O(e,t,n){return`${y(String(n))} ${b[t-1]} ${y(String(e))}`}function k(e,t,n){let{gy:r,gm:a,gd:o}=i(e,t,n);return(new Date(r,a-1,o).getDay()+1)%7}function A(e,t){return o(e,t)}function j(e,t){let n=A(e,t),r=k(e,t,1),i=Array.from({length:r},()=>null);for(let e=1;e<=n;e+=1)i.push(e);for(;i.length%7!=0;)i.push(null);return i}function M(){return w(new Date)}var N=`۰۱۲۳۴۵۶۷۸۹`,P=new Intl.NumberFormat(`fa-IR`,{useGrouping:!0});function F(e){return e.replace(/[۰-۹]/g,e=>String(N.indexOf(e)))}function I(e){return F(e).replace(/[^\d]/g,``)}function L(e){let t=I(e);return t?Number(t):0}function R(e){return Number.isFinite(e)?P.format(e):`—`}function z(e){return`${R(e)} تومان`}function B(e){return`${R(e)} متر`}var V=new Intl.DateTimeFormat(`fa-IR-u-ca-persian`,{year:`numeric`,month:`2-digit`,day:`2-digit`}),H=new Intl.DateTimeFormat(`fa-IR-u-ca-persian`,{year:`numeric`,month:`2-digit`,day:`2-digit`,hour:`2-digit`,minute:`2-digit`});function U(e){let t=F(e.trim()).replace(/-/g,`/`).match(/^(\d{4})\/(\d{1,2})\/(\d{1,2})/);if(!t)return!1;let n=Number(t[1]);return n>=1300&&n<=1500}function W(e){if(typeof e!=`string`)return e;let t=e.trim();if(/^\d{4}-\d{2}-\d{2}$/.test(t))return S(t);let n=new Date(t);return Number.isNaN(n.getTime())?new Date(NaN):n}function G(e){if(!e)return`—`;if(typeof e==`string`&&U(e)){let t=F(e.trim()).replace(/-/g,`/`),n=t.match(/^(\d{4})\/(\d{1,2})\/(\d{1,2})/);if(!n)return q(t);let[,r,i,a]=n;return q(`${r}/${i.padStart(2,`0`)}/${a.padStart(2,`0`)}`)}let t=W(e);return Number.isNaN(t.getTime())?`—`:V.format(t)}function K(e){if(!e)return`—`;if(typeof e==`string`&&U(e)&&!/[T\s]\d/.test(e))return G(e);let t=W(e);return Number.isNaN(t.getTime())?`—`:H.format(t)}function q(e){return e.replace(/\d/g,e=>N[Number(e)])}function J(e){let t=I(e);return t.startsWith(`98`)?t=`0`+t.slice(2):t.startsWith(`9`)&&t.length===10&&(t=`0`+t),t.slice(0,11)}function Y(){return crypto.randomUUID()}export{S as _,B as a,J as c,b as d,x as f,D as g,E as h,K as i,L as l,O as m,z as n,R as o,j as p,G as r,Y as s,I as t,q as u,C as v,M as y}; \ No newline at end of file +var e=[-61,9,38,199,426,686,756,818,1111,1181,1210,1635,2060,2097,2192,2262,2324,2394,2456,3178],t=e[0],n=e[e.length-1]-1;function r(e,t,n){return e instanceof Date?u(d(e.getFullYear(),e.getMonth()+1,e.getDate())):u(d(e,t,n))}function i(e,t,n){return f(l(e,t,n))}function a(e){return h(e)===0}function o(e,t){return t<=6?31:t<=11||a(e)?30:29}function s(e){let{gy:t,march:n,jump:r,n:i}=p(e);return{leap:m(r,i),gy:t,march:n}}function c(e){let{gy:t,march:n}=p(e);return{gy:t,march:n}}function l(e,t,n){let r=c(e);return d(r.gy,3,r.march)+(t-1)*31-g(t,7)*(t-7)+n-1}function u(e){let t=f(e).gy,n=t-621,r=s(n),i=e-d(t,3,r.march);if(i>=0){if(i<=185)return{jy:n,jm:1+g(i,31),jd:_(i,31)+1};i-=186}else--n,i+=179,r.leap===1&&(i+=1);return{jy:n,jm:7+g(i,30),jd:_(i,30)+1}}function d(e,t,n){let r=g((e+g(t-8,6)+100100)*1461,4)+g(153*_(t+9,12)+2,5)+n-34840408;return r=r-g(g(e+100100+g(t-8,6),100)*3,4)+752,r}function f(e){let t=4*e+139361631;t=t+g(g(4*e+183187720,146097)*3,4)*4-3908;let n=g(_(t,1461),4)*5+308,r=g(_(n,153),5)+1,i=_(g(n,153),12)+1;return{gy:g(t,1461)-100100+g(8-i,6),gm:i,gd:r}}function p(r){if(!Number.isFinite(r)||rn)throw RangeError(`Invalid Jalaali year ${r}: must be a finite number between ${t} and ${n} (inclusive)`);let i=r+621,a=-14,o=e[0],s=0,c=0;for(let t=1;tn)throw RangeError(`Invalid Jalaali year ${r}: must be a finite number between ${t} and ${n} (inclusive)`);let i=e[0],a=0,o=0;for(let t=1;tv[Number(e)])}var b=[`فروردین`,`اردیبهشت`,`خرداد`,`تیر`,`مرداد`,`شهریور`,`مهر`,`آبان`,`آذر`,`دی`,`بهمن`,`اسفند`],x=[`ش`,`ی`,`د`,`س`,`چ`,`پ`,`ج`];function S(e){let t=e.trim().match(/^(\d{4})-(\d{2})-(\d{2})/);if(t)return new Date(Number(t[1]),Number(t[2])-1,Number(t[3]));let n=new Date(e);return Number.isNaN(n.getTime())?new Date(NaN):new Date(n.getFullYear(),n.getMonth(),n.getDate())}function C(e){return`${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,`0`)}-${String(e.getDate()).padStart(2,`0`)}`}function w(e){let{jy:t,jm:n,jd:i}=r(e.getFullYear(),e.getMonth()+1,e.getDate());return{jy:t,jm:n,jd:i}}function T(e,t,n){let{gy:r,gm:a,gd:o}=i(e,t,n);return new Date(r,a-1,o)}function E(e){return e?w(S(e)):null}function D(e,t,n){return C(T(e,t,n))}function O(e,t,n){return`${y(String(n))} ${b[t-1]} ${y(String(e))}`}function k(e,t,n){let{gy:r,gm:a,gd:o}=i(e,t,n);return(new Date(r,a-1,o).getDay()+1)%7}function A(e,t){return o(e,t)}function j(e,t){let n=A(e,t),r=k(e,t,1),i=Array.from({length:r},()=>null);for(let e=1;e<=n;e+=1)i.push(e);for(;i.length%7!=0;)i.push(null);return i}function M(){return w(new Date)}var N=`۰۱۲۳۴۵۶۷۸۹`,P=new Intl.NumberFormat(`fa-IR`,{useGrouping:!0});function F(e){return e.replace(/[۰-۹]/g,e=>String(N.indexOf(e)))}function I(e){return F(e).replace(/[^\d]/g,``)}function L(e){let t=I(e);return t?Number(t):0}function R(e){return Number.isFinite(e)?P.format(e):`—`}function z(e){return`${R(e)} تومان`}function B(e){return`${R(e)} متر`}var V=new Intl.DateTimeFormat(`fa-IR-u-ca-persian`,{year:`numeric`,month:`2-digit`,day:`2-digit`}),H=new Intl.DateTimeFormat(`fa-IR-u-ca-persian`,{year:`numeric`,month:`2-digit`,day:`2-digit`,hour:`2-digit`,minute:`2-digit`});function U(e){let t=F(e.trim()).replace(/-/g,`/`).match(/^(\d{4})\/(\d{1,2})\/(\d{1,2})/);if(!t)return!1;let n=Number(t[1]);return n>=1300&&n<=1500}function W(e){if(typeof e!=`string`)return e;let t=e.trim();if(/^\d{4}-\d{2}-\d{2}$/.test(t))return S(t);let n=new Date(t);return Number.isNaN(n.getTime())?new Date(NaN):n}function G(e){if(!e)return`—`;if(typeof e==`string`&&U(e)){let t=F(e.trim()).replace(/-/g,`/`),n=t.match(/^(\d{4})\/(\d{1,2})\/(\d{1,2})/);if(!n)return q(t);let[,r,i,a]=n;return q(`${r}/${i.padStart(2,`0`)}/${a.padStart(2,`0`)}`)}let t=W(e);return Number.isNaN(t.getTime())?`—`:V.format(t)}function K(e){if(!e)return`—`;if(typeof e==`string`&&U(e)&&!/[T\s]\d/.test(e))return G(e);let t=W(e);return Number.isNaN(t.getTime())?`—`:H.format(t)}function q(e){return e.replace(/\d/g,e=>N[Number(e)])}function J(e){let t=I(e);return t.startsWith(`98`)?t=`0`+t.slice(2):t.startsWith(`9`)&&t.length===10&&(t=`0`+t),t.slice(0,11)}function Y(){return crypto.randomUUID()}export{D as _,B as a,M as b,F as c,q as d,b as f,E as g,O as h,K as i,J as l,j as m,z as n,R as o,x as p,G as r,Y as s,I as t,L as u,S as v,C as y}; \ No newline at end of file diff --git a/dist/assets/http-BC1hNfZ4.js b/dist/assets/http-Bnj5Ml97.js similarity index 80% rename from dist/assets/http-BC1hNfZ4.js rename to dist/assets/http-Bnj5Ml97.js index 0170a47..ae464df 100644 --- a/dist/assets/http-BC1hNfZ4.js +++ b/dist/assets/http-Bnj5Ml97.js @@ -1 +1 @@ -import{A as e,G as t,U as n,W as r,bt as i,ct as a,dt as o,ft as s,lt as c,mt as l,ot as u,st as d,tt as f,ut as p,vt as m,yt as h}from"./BasicIcon-C6boaehV.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=u(!0),t=e.run(()=>l({})),n=[],r=[],i=p({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&&d()&&o(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)&&!c(r)&&!a(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(t,n,r,a){let{state:o,actions:s,getters:c}=n,l=r.state.value[t],u;function d(){return l||(r.state.value[t]=o?o():{}),H(i(r.state.value[t]),s,Object.keys(c||{}).reduce((n,i)=>(n[i]=p(e(()=>{v(r);let e=r._s.get(t);return c[i].call(e,e)})),n),{}))}return u=G(t,d,n,r,a,!0),u}function G(e,n,r={},i,o,l){let d,p=H({actions:{}},r),h={deep:!0},g,_,y=new Set,b=new Set,x,S=i.state.value[e];!l&&!S&&(i.state.value[e]={});let C;function w(n){let r;g=_=!1,typeof n==`function`?(n(i.state.value[e]),r={type:`patch function`,storeId:e,events:x}):(z(i.state.value[e],n),r={type:`patch object`,payload:n,storeId:e,events:x});let a=C=Symbol();t().then(()=>{C===a&&(g=!0)}),_=!0,F(y,r,i.state.value[e])}let T=l?function(){let{state:e}=r,t=e?e():{};this.$patch(e=>{H(e,t)})}:N;function E(){d.stop(),y.clear(),b.clear(),i._s.delete(e)}let D=(t,n=``)=>{if(L in t)return t[R]=n,t;let r=function(){v(i);let n=Array.from(arguments),a=new Set,o=new Set;function s(e){a.add(e)}function c(e){o.add(e)}F(b,{args:n,name:r[R],store:k,after:s,onError:c});let l;try{l=t.apply(this&&this.$id===e?this:k,n)}catch(e){throw F(o,e),e}return l instanceof Promise?l.then(e=>(F(a,e),e)).catch(e=>(F(o,e),Promise.reject(e))):(F(a,l),l)};return r[L]=!0,r[R]=n,r},O={_p:i,$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=d.run(()=>f(()=>i.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);i._s.set(e,k);let A=(i._a&&i._a.runWithContext||I)(()=>i._e.run(()=>(d=u()).run(()=>n({action:D}))));for(let t in A){let n=A[t];c(n)&&!U(n)||a(n)?l||(S&&V(n)&&(c(n)?n.value=S[t]:z(n,S[t])),i.state.value[e][t]=n):typeof n==`function`&&(A[t]=D(n,t),p.actions[t]=n)}return H(k,A),H(m(k),A),Object.defineProperty(k,"$state",{get:()=>i.state.value[e],set:e=>{w(t=>{H(t,e)})}}),i._p.forEach(e=>{let t=d.run(()=>e({store:k,app:i._a,pinia:i,options:p}));H(k,t)}),S&&l&&r.hydrate&&r.hydrate(k.$state,S),g=!0,_=!0,k}function K(e,t,i){let a,o=typeof t==`function`;a=o?i:t;function s(i,s){let c=n();return i||=c?r(y,null):null,i&&v(i),i=_,i._s.has(e)||(o?G(e,t,a,i):W(e,a,i)),i._s.get(e)}return s.$id=e,s}function q(t){let n=m(t),r={};for(let i in n){let o=n[i];o?.effect?r[i]=e({get:()=>t[i],set(e){t[i]=e}}):(c(o)||a(o))&&(r[i]=h(t,i))}return r}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{}if(typeof window<`u`&&!window.location.pathname.startsWith(`/login`)){let e=encodeURIComponent(`${window.location.pathname}${window.location.search}`);window.location.assign(`/login?redirect=${e}`)}}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 +import{A as e,K as t,U as n,W as r,bt as i,ct as a,dt as o,ft as s,ht as c,lt as l,nt as u,pt as d,st as f,ut as p,xt as m,yt as h}from"./BasicIcon-Bnxm-DKk.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=f(!0),t=e.run(()=>c({})),n=[],r=[],i=o({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()&&s(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)&&!p(r)&&!l(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!!(p(e)&&e.effect)}function W(t,n,r,i){let{state:a,actions:s,getters:c}=n,l=r.state.value[t],u;function d(){return l||(r.state.value[t]=a?a():{}),H(m(r.state.value[t]),s,Object.keys(c||{}).reduce((n,i)=>(n[i]=o(e(()=>{v(r);let e=r._s.get(t);return c[i].call(e,e)})),n),{}))}return u=G(t,d,n,r,i,!0),u}function G(e,n,r={},i,a,o){let s,c=H({actions:{}},r),m={deep:!0},g,_,y=new Set,b=new Set,x,S=i.state.value[e];!o&&!S&&(i.state.value[e]={});let C;function w(n){let r;g=_=!1,typeof n==`function`?(n(i.state.value[e]),r={type:`patch function`,storeId:e,events:x}):(z(i.state.value[e],n),r={type:`patch object`,payload:n,storeId:e,events:x});let a=C=Symbol();t().then(()=>{C===a&&(g=!0)}),_=!0,F(y,r,i.state.value[e])}let T=o?function(){let{state:e}=r,t=e?e():{};this.$patch(e=>{H(e,t)})}:N;function E(){s.stop(),y.clear(),b.clear(),i._s.delete(e)}let D=(t,n=``)=>{if(L in t)return t[R]=n,t;let r=function(){v(i);let n=Array.from(arguments),a=new Set,o=new Set;function s(e){a.add(e)}function c(e){o.add(e)}F(b,{args:n,name:r[R],store:k,after:s,onError:c});let l;try{l=t.apply(this&&this.$id===e?this:k,n)}catch(e){throw F(o,e),e}return l instanceof Promise?l.then(e=>(F(a,e),e)).catch(e=>(F(o,e),Promise.reject(e))):(F(a,l),l)};return r[L]=!0,r[R]=n,r},O={_p:i,$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=s.run(()=>u(()=>i.state.value[e],r=>{(n.flush===`sync`?_:g)&&t({storeId:e,type:`direct`,events:x},r)},H({},m,n)));return r},$dispose:E},k=d(O);i._s.set(e,k);let A=(i._a&&i._a.runWithContext||I)(()=>i._e.run(()=>(s=f()).run(()=>n({action:D}))));for(let t in A){let n=A[t];p(n)&&!U(n)||l(n)?o||(S&&V(n)&&(p(n)?n.value=S[t]:z(n,S[t])),i.state.value[e][t]=n):typeof n==`function`&&(A[t]=D(n,t),c.actions[t]=n)}return H(k,A),H(h(k),A),Object.defineProperty(k,"$state",{get:()=>i.state.value[e],set:e=>{w(t=>{H(t,e)})}}),i._p.forEach(e=>{let t=s.run(()=>e({store:k,app:i._a,pinia:i,options:c}));H(k,t)}),S&&o&&r.hydrate&&r.hydrate(k.$state,S),g=!0,_=!0,k}function K(e,t,i){let a,o=typeof t==`function`;a=o?i:t;function s(i,s){let c=n();return i||=c?r(y,null):null,i&&v(i),i=_,i._s.has(e)||(o?G(e,t,a,i):W(e,a,i)),i._s.get(e)}return s.$id=e,s}function q(t){let n=h(t),r={};for(let a in n){let o=n[a];o?.effect?r[a]=e({get:()=>t[a],set(e){t[a]=e}}):(p(o)||l(o))&&(r[a]=i(t,a))}return r}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{}if(typeof window<`u`&&!window.location.pathname.startsWith(`/login`)){let e=encodeURIComponent(`${window.location.pathname}${window.location.search}`);window.location.assign(`/login?redirect=${e}`)}}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-B_D_P_q1.css b/dist/assets/index-B_D_P_q1.css new file mode 100644 index 0000000..f774ac6 --- /dev/null +++ b/dist/assets/index-B_D_P_q1.css @@ -0,0 +1 @@ +.bottom-nav[data-v-759f4bb7]{min-height:var(--nav-height);background:var(--color-surface);border-top:1px solid var(--color-border);z-index:100;padding:6px 4px calc(6px + env(safe-area-inset-bottom,0));flex-shrink:0;justify-content:space-around;align-items:flex-end;display:flex}@media (width>=768px){.bottom-nav[data-v-759f4bb7]{display:none}}.nav-item[data-v-759f4bb7]{cursor:pointer;color:var(--color-text-muted);background:0 0;border:none;border-radius:10px;flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:4px;min-width:0;margin:0;padding:4px 2px 2px;transition:color .15s;display:flex;position:relative}.nav-item[data-v-759f4bb7]:focus,.nav-item[data-v-759f4bb7]:focus-visible{outline:none}.nav-item.active[data-v-759f4bb7]{color:var(--color-primary);background:0 0}.nav-item.active .nav-label[data-v-759f4bb7]{font-weight:700}.nav-item--fab[data-v-759f4bb7]{color:var(--color-text-muted);justify-content:flex-end}.nav-item--fab.active[data-v-759f4bb7]{color:var(--color-primary)}.nav-icon[data-v-759f4bb7]{flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;display:flex;position:relative;overflow:visible}.nav-icon--fab[data-v-759f4bb7]{background:var(--color-primary);color:#fff;width:52px;height:52px;box-shadow:0 6px 16px rgba(var(--color-primary-rgb), .35);border-radius:999px;margin-top:-28px}.nav-label[data-v-759f4bb7]{white-space:nowrap;font-size:.6875rem;font-weight:500;line-height:1.2}.nav-label--fab[data-v-759f4bb7]{font-size:.625rem}.nav-badge[data-v-759f4bb7]{top:-2px;background:var(--color-danger);color:#fff;pointer-events:none;border-radius:999px;justify-content:center;align-items:center;min-width:16px;height:16px;padding:0 4px;font-size:.625rem;font-weight:700;line-height:1;display:flex;position:absolute;inset-inline-end:-2px}.brand-logo[data-v-b211450b]{object-fit:contain;-webkit-user-select:none;user-select:none;flex-shrink:0;width:auto;display:block}.desktop-sidebar[data-v-69fbaed9]{width:var(--sidebar-width);background:var(--color-surface);border-inline-start:1px solid var(--color-border);flex-direction:column;flex-shrink:0;height:100%;padding:0;display:none;overflow-y:auto}@media (width>=768px){.desktop-sidebar[data-v-69fbaed9]{display:flex}}.desktop-sidebar__brand[data-v-69fbaed9]{height:var(--header-height);min-height:var(--header-height);max-height:var(--header-height);box-sizing:border-box;border-bottom:none;flex-shrink:0;justify-content:flex-start;align-items:center;gap:10px;padding:0 20px;display:flex}@media (width>=1200px){.desktop-sidebar__brand[data-v-69fbaed9]{padding:0 28px}}.desktop-sidebar__logo-mark[data-v-69fbaed9]{flex-shrink:0}.desktop-sidebar__title[data-v-69fbaed9]{color:var(--color-primary);font-size:1rem;font-weight:700;display:block}.desktop-sidebar__nav[data-v-69fbaed9]{flex-direction:column;flex:1;gap:4px;padding:12px 12px 0;display:flex}@media (width>=1200px){.desktop-sidebar__nav[data-v-69fbaed9]{padding:16px 16px 0}}.desktop-sidebar__item[data-v-69fbaed9]{border-radius:var(--radius-md);cursor:pointer;width:100%;color:var(--color-text-secondary);text-align:start;background:0 0;border:none;justify-content:flex-start;align-items:center;gap:12px;padding:11px 12px;transition:background .15s,color .15s;display:flex;position:relative}@media (width>=1200px){.desktop-sidebar__item[data-v-69fbaed9]{padding:11px 14px}}.desktop-sidebar__item[data-v-69fbaed9]:hover{background:var(--color-elevated);color:var(--color-text)}.desktop-sidebar__item[data-v-69fbaed9]:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.desktop-sidebar__item.active[data-v-69fbaed9]{background:var(--color-primary-soft);color:var(--color-primary);font-weight:600}.desktop-sidebar__item.active .desktop-sidebar__icon[data-v-69fbaed9]{color:var(--color-primary)}.desktop-sidebar__icon[data-v-69fbaed9]{width:22px;height:22px;color:inherit;flex-shrink:0;justify-content:center;align-items:center;display:flex}.desktop-sidebar__label[data-v-69fbaed9]{font-size:.875rem;font-weight:inherit;white-space:nowrap;display:block}.desktop-sidebar__badge[data-v-69fbaed9]{background:var(--color-danger);color:var(--color-surface);border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;min-width:20px;height:20px;margin-inline-start:auto;padding:0 4px;font-size:.6875rem;font-weight:700;display:flex}.desktop-sidebar__support[data-v-69fbaed9]{background:var(--color-primary-soft);border-radius:var(--radius-lg);flex-direction:column;gap:8px;margin:auto 12px 20px;padding:14px;display:flex}@media (width>=1200px){.desktop-sidebar__support[data-v-69fbaed9]{margin:auto 16px 24px;padding:16px}}.desktop-sidebar__support-icon[data-v-69fbaed9]{background:var(--color-primary);width:36px;height:36px;color:var(--color-surface);border-radius:50%;justify-content:center;align-items:center;display:flex}.desktop-sidebar__support-title[data-v-69fbaed9]{color:var(--color-text);font-size:.875rem;font-weight:700}.desktop-sidebar__support-text[data-v-69fbaed9]{color:var(--color-text-muted);margin:0;font-size:.6875rem;line-height:1.5}.desktop-sidebar__support-btn[data-v-69fbaed9]{border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-primary);text-align:center;margin-top:4px;padding:10px 12px;font-size:.8125rem;font-weight:600;text-decoration:none;transition:opacity .15s;display:block}.desktop-sidebar__support-btn[data-v-69fbaed9]:hover{opacity:.9}.desktop-sidebar__support-btn--disabled[data-v-69fbaed9]{opacity:.55;pointer-events:none;cursor:default}.desktop-sidebar__support-phone[data-v-69fbaed9]{text-align:center;color:var(--color-primary);direction:ltr;margin:0;font-size:.8125rem;font-weight:600}.auth-theme-toggle[data-v-3a58cb84]{color:inherit;cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;transition:color .15s;display:inline-flex}.auth-theme-toggle--floating[data-v-3a58cb84]{top:calc(12px + env(safe-area-inset-top,0px));z-index:100;width:40px;height:40px;color:var(--color-text);box-shadow:none;background:0 0;position:fixed;inset-inline-end:16px}.auth-theme-toggle--inline[data-v-3a58cb84]{width:40px;height:40px;color:inherit;flex-shrink:0;position:relative}.auth-theme-toggle[data-v-3a58cb84]:hover{color:var(--color-primary)}.user-avatar[data-v-5c562bf0]{color:inherit;background:#ffffff2e;border-radius:999px;flex-shrink:0;place-items:center;font-weight:700;display:grid;overflow:hidden}.user-avatar__img[data-v-5c562bf0]{object-fit:cover;width:100%;height:100%;display:block}.desktop-header[data-v-5f322d95]{height:var(--header-height);min-height:var(--header-height);max-height:var(--header-height);box-sizing:border-box;background:var(--color-surface);border-bottom:none;flex-shrink:0;justify-content:space-between;align-items:center;gap:24px;padding:0 28px;display:none}@media (width>=768px){.desktop-header[data-v-5f322d95]{padding:0 var(--page-padding);gap:16px;display:flex}}@media (width>=1200px){.desktop-header[data-v-5f322d95]{padding:0 var(--page-padding);gap:24px}}.desktop-header__spacer[data-v-5f322d95]{flex:1;min-width:0}.desktop-header__actions[data-v-5f322d95]{flex-shrink:0;align-items:center;gap:16px;margin-inline-start:auto;display:flex}.desktop-header__company[data-v-5f322d95]{color:var(--color-text-muted);border-inline-end:1px solid var(--color-border);padding-inline-end:8px;font-size:.8125rem;font-weight:600;display:none}@media (width>=992px){.desktop-header__company[data-v-5f322d95]{display:block}}.desktop-header__icon-btn[data-v-5f322d95]{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);width:40px;height:40px;color:var(--color-text-muted);cursor:pointer;justify-content:center;align-items:center;display:flex;position:relative}.desktop-header__notif-badge[data-v-5f322d95]{top:4px;background:var(--color-danger);min-width:18px;height:18px;color:var(--color-on-primary,#fff);border:2px solid var(--color-surface);border-radius:9px;justify-content:center;align-items:center;padding:0 4px;font-size:.625rem;font-weight:700;display:flex;position:absolute;inset-inline-end:4px}.desktop-header__user-wrap[data-v-5f322d95]{position:relative}.desktop-header__user[data-v-5f322d95]{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);cursor:pointer;align-items:center;gap:10px;padding:6px 12px 6px 8px;font-family:inherit;display:flex}.desktop-header__avatar[data-v-5f322d95]{background:var(--color-primary);color:var(--color-surface)}.desktop-header__user-name[data-v-5f322d95]{color:var(--color-text);font-size:.875rem;font-weight:600;display:none}@media (width>=1200px){.desktop-header__user-name[data-v-5f322d95]{display:block}}.desktop-header__chevron[data-v-5f322d95]{color:var(--color-text-muted);transform:rotate(-90deg)}.desktop-header__menu[data-v-5f322d95]{top:calc(100% + 6px);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);min-width:160px;box-shadow:var(--shadow-md);z-index:100;padding:6px;position:absolute;inset-inline-end:0}.desktop-header__menu button[data-v-5f322d95]{text-align:start;cursor:pointer;border-radius:var(--radius-sm);width:100%;color:var(--color-text);background:0 0;border:none;padding:10px 12px;font-family:inherit;font-size:.875rem}.desktop-header__menu button[data-v-5f322d95]:hover{background:var(--color-elevated)}.desktop-header__menu-logout[data-v-5f322d95]{color:var(--color-danger)!important}.btn[data-v-3628a8bb]{border-radius:var(--radius-sm);cursor:pointer;border:none;justify-content:center;align-items:center;gap:8px;font-weight:600;transition:background .15s,opacity .15s;display:inline-flex}.btn[data-v-3628a8bb]:disabled{opacity:.55;cursor:not-allowed}.btn-block[data-v-3628a8bb]{width:100%}.btn-sm[data-v-3628a8bb]{min-height:36px;padding:0 14px;font-size:.8125rem}.btn-md[data-v-3628a8bb]{min-height:var(--btn-height);padding:0 24px;font-size:.9375rem}.btn-lg[data-v-3628a8bb]{min-height:52px;padding:0 28px;font-size:1rem}.btn-primary[data-v-3628a8bb]{background:var(--color-primary);color:var(--color-surface)}.btn-primary[data-v-3628a8bb]:not(:disabled):hover{background:var(--color-primary-dark)}.btn-secondary[data-v-3628a8bb]{background:var(--color-primary-light);color:var(--color-primary)}.btn-outline[data-v-3628a8bb]{color:var(--color-primary);border:1.5px solid var(--color-primary);background:0 0}.btn-danger[data-v-3628a8bb]{background:var(--color-danger);color:var(--color-surface)}.btn-ghost[data-v-3628a8bb]{color:var(--color-text-muted);background:0 0}.btn-spinner[data-v-3628a8bb]{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:16px;height:16px;animation:.6s linear infinite spin-3628a8bb}@keyframes spin-3628a8bb{to{transform:rotate(360deg)}}.confirm-dialog[data-v-2e50e2a7]{padding:20px}.confirm-dialog__title[data-v-2e50e2a7]{margin:0 0 8px;font-size:1.0625rem;font-weight:700}.confirm-dialog__message[data-v-2e50e2a7]{color:var(--color-text-muted);margin:0;font-size:.875rem;line-height:1.7}.confirm-dialog__actions[data-v-2e50e2a7]{margin-top:20px}@media (width>=768px){.confirm-dialog__actions[data-v-2e50e2a7]{flex-direction:row;justify-content:flex-end}}*,:before,:after,::backdrop{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 #0000;--un-ring-shadow:0 0 #0000;--un-shadow-inset: ;--un-shadow:0 0 #0000;--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:#93c5fd80;--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: }.btn-block{width:100%}.page-shell{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.sticky{position:sticky}.static{position:static}.isolate{isolation:isolate}.grid{display:grid}.inline-grid{display:inline-grid}.m-0{margin:0}.mb-3{margin-bottom:.75rem}.mr-4{margin-right:1rem}.mt-1{margin-top:.25rem}.inline,.empty-inline:empty{display:inline}.block{display:block}.inline-block{display:inline-block}.contents{display:contents}.hidden{display:none}.h-10{height:2.5rem}.h1{height:.25rem}.h2{height:.5rem}.h3{height:.75rem}.min-w-0{min-width:0}.w-10{width:2.5rem}.flex{display:flex}.inline-flex{display:inline-flex}.flex-1{flex:1}.flex-shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.table{display:table}.border-collapse{border-collapse:collapse}.transform{transform:translateX(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotateZ(var(--un-rotate-z)) skewX(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.resize{resize:both}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.b,.border{border-width:1px}.border-t{border-top-width:1px}.border-\[var\(--color-border\)\]{border-color:var(--color-border)}.rounded-\[var\(--radius-md\)\]{border-radius:var(--radius-md)}.rounded-full{border-radius:9999px}.bg-\[var\(--color-primary-soft\)\]{background-color:var(--color-primary-soft)}.bg-\[var\(--color-surface\)\]{background-color:var(--color-surface)}.p-4{padding:1rem}.px{padding-left:1rem;padding-right:1rem}.pt-3{padding-top:.75rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.text-\[var\(--color-danger\)\]{color:var(--color-danger)}.text-\[var\(--color-primary\)\]{color:var(--color-primary)}.text-\[var\(--color-success\)\]{color:var(--color-success)}.text-\[var\(--color-text-muted\)\],.text-muted{color:var(--color-text-muted)}.text-\[var\(--color-text\)\]{color:var(--color-text)}.text-white{--un-text-opacity:1;color:rgb(255 255 255/var(--un-text-opacity))}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.leading-relaxed{line-height:1.625}.italic{font-style:italic}.tabular-nums{--un-numeric-spacing:tabular-nums;font-variant-numeric:var(--un-ordinal) var(--un-slashed-zero) var(--un-numeric-figure) var(--un-numeric-spacing) var(--un-numeric-fraction)}.underline{text-decoration-line:underline}.tab{tab-size:4}.text-shadow{--un-text-shadow:0 0 1px var(--un-text-shadow-color,#0003),0 0 1px var(--un-text-shadow-color,#0100051a);text-shadow:var(--un-text-shadow)}.outline{outline-style:solid}.blur{--un-blur:blur(8px);filter:var(--un-blur) var(--un-brightness) var(--un-contrast) var(--un-drop-shadow) var(--un-grayscale) var(--un-hue-rotate) var(--un-invert) var(--un-saturate) var(--un-sepia)}.filter{filter:var(--un-blur) var(--un-brightness) var(--un-contrast) var(--un-drop-shadow) var(--un-grayscale) var(--un-hue-rotate) var(--un-invert) var(--un-saturate) var(--un-sepia)}.backdrop-filter{-webkit-backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia);backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter,backdrop-filter;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease,.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}@font-face{font-family:IRANSans;src:url(/assets/IRANSansWeb\(FaNum\)-BLA2CtIC.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:IRANSans;src:url(/assets/IRANSansWeb\(FaNum\)_Light-B637MNLG.woff2)format("woff2");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:IRANSans;src:url(/assets/IRANSansWeb\(FaNum\)_UltraLight-hW-WDKY9.woff2)format("woff2");font-weight:200;font-style:normal;font-display:swap}@font-face{font-family:IRANSans;src:url(/assets/IRANSansWeb\(FaNum\)_Medium-C2CKjrKB.woff2)format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:IRANSans;src:url(/assets/IRANSansWeb\(FaNum\)_Medium-C2CKjrKB.woff2)format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:IRANSans;src:url(/assets/IRANSansWeb\(FaNum\)_Bold-C8urhp07.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:IRANSans;src:url(/assets/IRANSansWeb\(FaNum\)_Black-BFAfOkt4.woff2)format("woff2");font-weight:900;font-style:normal;font-display:swap}:root{--color-primary:#0a353c;--color-primary-hover:#072a2f;--color-primary-soft:color-mix(in srgb, var(--color-primary) 14%, #fff);--color-primary-dark:#062428;--color-primary-light:var(--color-primary-soft);--color-primary-rgb:10, 53, 60;--color-accent-navy:#0a353c;--color-accent-navy-rgb:10, 53, 60;--color-success:#1b8a5a;--color-success-light:#eaf8f1;--color-success-soft:#eaf8f1;--color-warning:#e8a317;--color-warning-light:#fff6e5;--color-danger:#dc3545;--color-danger-light:#fee2e2;--color-purple:#7c3aed;--color-purple-light:#ede9fe;--color-info:#3b6fa0;--color-info-light:#eef3f7;--color-bg:#eef1f0;--color-page-background:#eef1f0;--color-shell-bg:#eef1f0;--color-surface:#eef1f0;--color-border:#d8dedc;--color-text:#121212;--color-text-primary:#121212;--color-text-muted:#6b7280;--color-text-secondary:#6b7280;--color-tab-inactive-bg:#e4e8e6;--color-tab-inactive-text:#64748b;--color-summary-bg:#e4e8e6;--color-elevated:#eef1f0;--color-brand-warm:#f3ece3;--color-brand-warm-text:#1a202c;--color-brand-warm-muted:#718096;--color-level-gold:#c9a227;--color-level-gold-soft:#f7efd6;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--shadow-sm:none;--shadow-md:none;--shadow-card:none;--shadow-frame:0 8px 32px #0f172a1a;--nav-height:64px;--page-padding:16px;--page-padding-tablet:20px;--page-padding-desktop:28px;--page-gap:12px;--content-max-width:1360px;--form-max-width:520px;--auth-form-max-width:440px;--summary-panel-width:320px;--sidebar-width:240px;--sidebar-width-compact:72px;--header-height:70px;--app-shell-breakpoint:768px;--font-family:"IRANSans", "Tahoma", sans-serif;--btn-height:48px;--desktop-breakpoint:1200px}html.dark{--color-primary:#5eb8ad;--color-primary-hover:#7ad0c5;--color-primary-soft:color-mix(in srgb, var(--color-primary) 22%, var(--color-bg));--color-primary-dark:#7ad0c5;--color-primary-light:var(--color-primary-soft);--color-primary-rgb:94, 184, 173;--color-accent-navy:#5eb8ad;--color-accent-navy-rgb:94, 184, 173;--color-success:#3dd68c;--color-success-light:#123528;--color-success-soft:#123528;--color-warning:#f5c14a;--color-warning-light:#3a2f14;--color-danger:#f47979;--color-danger-light:#3f1d22;--color-purple:#b39afa;--color-purple-light:#2a2144;--color-info:#7b9cff;--color-info-light:#1b2740;--color-bg:#0b0f14;--color-page-background:#0b0f14;--color-shell-bg:#0b0f14;--color-surface:#0b0f14;--color-elevated:#0b0f14;--color-border:#2a3444;--color-text:#eef2f8;--color-text-primary:#eef2f8;--color-text-muted:#9aa8bc;--color-text-secondary:#9aa8bc;--color-tab-inactive-bg:#1a2230;--color-tab-inactive-text:#9aa8bc;--color-summary-bg:#1a2230;--color-brand-warm:#2a241c;--color-brand-warm-text:#f3ebe0;--color-brand-warm-muted:#b9a88d;--color-level-gold:#e0c35a;--color-level-gold-soft:#3a3420;--shadow-sm:0 1px 2px #00000073;--shadow-md:0 8px 24px #00000073;--shadow-card:0 1px 2px #00000059, 0 8px 24px #00000059;--shadow-frame:0 12px 40px #00000080}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;height:100%;font-size:16px;overflow:hidden}body{font-family:var(--font-family);background:var(--color-shell-bg);color:var(--color-text);direction:rtl;height:100%;margin:0;line-height:1.5;overflow:hidden}#app{height:100dvh;overflow:hidden}*{scrollbar-width:none;-ms-overflow-style:none}::-webkit-scrollbar{width:0;height:0;display:none}a{color:var(--color-primary);text-decoration:none}button,input,select,textarea{font-family:inherit}input:not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=button]):not([type=reset]):not([type=file]):not([type=hidden]):not([type=image]):not([type=range]):not([type=color]),textarea,select,.persian-date-input__trigger,.time-input__trigger,.search-field__input,.field-select__trigger{background-color:#0000}input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield;text-align:right}.page{background:var(--color-bg);min-height:0;color:var(--color-text);flex-direction:column;flex:1;padding:0;display:flex;overflow:hidden}.page__scroll{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;flex:1;min-height:0;overflow-y:auto}.page__scroll--with-nav{padding-bottom:calc(12px + env(safe-area-inset-bottom,0px))}.page-title{color:var(--color-text);margin:0 0 4px;font-size:1.25rem;font-weight:700;line-height:1.35}.page-subtitle{color:var(--color-text-muted);margin:0;font-size:.875rem;line-height:1.5}.card{background:var(--color-elevated);border-radius:var(--radius-md);border:1px solid var(--color-border);box-shadow:none;color:var(--color-text);padding:16px}.auth-page{background:0 0}.auth-top{padding:8px var(--page-padding);background:var(--color-surface);grid-template-columns:40px 1fr 40px;align-items:center;gap:4px;display:grid}.auth-top__title{text-align:center;color:var(--color-text);margin:0;font-size:1rem;font-weight:700}.auth-top .icon-btn{cursor:pointer;width:40px;height:40px;color:var(--color-text);background:0 0;border:none;border-radius:12px;place-items:center;padding:0;display:grid}.auth-body{padding:20px var(--page-padding) 32px;background:0 0;flex-direction:column;gap:16px;display:flex}.auth-lead{color:var(--color-text-muted);margin:0;font-size:.875rem;line-height:1.6}.auth-page .card{width:100%;max-width:var(--auth-form-max-width);box-shadow:none;background:0 0;border:none;margin-inline:auto;padding:0}.auth-switch{width:100%;max-width:var(--auth-form-max-width);text-align:center;color:var(--color-text-muted);margin:0 auto;font-size:.875rem}.auth-switch a{color:var(--color-primary);font-weight:700}.auth-page .input,.auth-page .job-select,.auth-page .otp-box{border:1px solid #eeeef1;border-radius:12px}.auth-page .btn{border-radius:12px}.card+.card{margin-top:var(--page-gap)}.alert{border-radius:var(--radius-sm);padding:12px 14px;font-size:.875rem;line-height:1.5}.alert-info{background:var(--color-primary-light);color:var(--color-primary);border:1px solid #cbd5e1}.alert-warning{background:var(--color-warning-light);color:#9a3412;border:1px solid #fed7aa}.alert-success{background:var(--color-success-light);color:#155724;border:1px solid #c3e6cb}.alert-danger{background:var(--color-danger-light);color:#991b1b;border:1px solid #fecaca}.form-group{margin-bottom:16px}.form-label{color:var(--color-text);margin-bottom:6px;font-size:.875rem;font-weight:600;display:block}.form-hint{color:var(--color-text-muted);margin-top:4px;font-size:.75rem}.divider{background:var(--color-border);height:1px;margin:16px 0}.text-muted{color:var(--color-text-muted)}.text-sm{font-size:.875rem}.text-center{text-align:center}.mt-2{margin-top:8px}.mt-4{margin-top:16px}.mb-4{margin-bottom:16px}.flex-between{justify-content:space-between;align-items:center;gap:8px;display:flex}.sticky-footer{bottom:calc(var(--nav-height) + 12px);z-index:50;width:100%;max-width:100%;padding-inline:var(--page-padding);box-sizing:border-box;position:fixed;inset-inline:0}.sticky-footer-inner{max-width:100%}.no-nav .page{padding-bottom:0}.no-nav .sticky-footer{bottom:0}.dialog-overlay{z-index:200;background:#0f172a66;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.dialog-overlay .dialog{width:100%;max-width:400px}.dialog-actions{flex-direction:column;gap:8px;margin-top:16px;display:flex}.desktop-only,.desktop-only-flex,.desktop-only-grid{display:none!important}.mobile-hidden{display:block}.desktop-hidden{display:none!important}@media (width>=768px){.mobile-only,.mobile-block{display:none!important}.desktop-only{display:block!important}.mobile-hidden{display:none!important}.desktop-hidden{display:block!important}.desktop-only-flex{display:flex!important}.desktop-only-grid{display:grid!important}.page{background:0 0;padding:0}.page__scroll--with-nav{padding-bottom:0}}.page-fade-enter-active,.page-fade-leave-active,.page-forward-enter-active,.page-forward-leave-active,.page-back-enter-active,.page-back-leave-active{transition:opacity .22s,transform .22s}.page-fade-enter-from,.page-fade-leave-to{opacity:0}.page-forward-enter-from{opacity:0;transform:translate(-18px)}.page-forward-leave-to{opacity:0;transform:translate(12px)}.page-back-enter-from{opacity:0;transform:translate(18px)}.page-back-leave-to{opacity:0;transform:translate(-12px)}@media (prefers-reduced-motion:reduce){.page-fade-enter-active,.page-fade-leave-active,.page-forward-enter-active,.page-forward-leave-active,.page-back-enter-active,.page-back-leave-active{transition:none}}.app-shell{background:var(--color-shell-bg);width:100%;height:100dvh;display:flex;overflow:hidden}.app-layout{flex-direction:row;width:100%;height:100%;min-height:0;display:flex}.app-frame{background:var(--color-bg);width:100%;height:100%;color:var(--color-text);flex-direction:column;flex:1;min-width:0;display:flex;overflow:hidden}.app-main,.app-main__content{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.app-content{width:100%;min-height:0;max-width:var(--content-max-width);flex-direction:column;flex:1;margin-inline:auto;padding-inline:0;display:flex;position:relative}.page-transition{flex-direction:column;flex:1;width:100%;min-height:0;display:flex;overflow:hidden}.app-shell--with-nav{justify-content:stretch}.app-shell--with-nav .app-frame{max-width:100%;box-shadow:none;border-radius:0;margin:0}@media (width>=768px){.app-shell--with-nav,.app-shell--with-nav .app-frame{background:var(--color-page-background)}.app-shell--with-nav .app-layout{position:relative}.app-shell--with-nav .app-layout:after{content:"";top:var(--header-height);background:var(--color-border);z-index:30;pointer-events:none;height:1px;position:absolute;inset-inline:0}.app-shell--with-nav .app-main__content{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;overflow:hidden auto}.app-shell--with-nav .app-content,.app-shell--with-nav .page-transition{flex:1 0 auto;min-height:min-content;overflow:visible}.app-shell--with-nav .page-transition>*{flex:1 0 auto;height:auto;min-height:min-content;max-height:none;overflow:visible}}.app-shell--no-nav{background:var(--color-page-background);justify-content:center;align-items:center;padding:16px}.app-shell--no-nav .app-layout{max-width:var(--form-max-width);width:100%;height:auto;min-height:0;max-height:calc(100dvh - 32px);overflow:hidden}.app-shell--no-nav .app-frame{max-width:var(--form-max-width);border-radius:var(--radius-lg);width:100%;height:auto;min-height:0;max-height:calc(100dvh - 32px);box-shadow:var(--shadow-frame);background:var(--color-surface);overscroll-behavior:contain;-webkit-overflow-scrolling:touch;overflow:hidden auto}.app-shell--no-nav .app-main,.app-shell--no-nav .app-main__content,.app-shell--no-nav .app-content,.app-shell--no-nav .page-transition{flex:1 0 auto;height:auto;min-height:min-content;overflow:visible}.app-shell--no-nav .app-content{padding-inline:var(--page-padding)}.app-shell--no-nav .page{background:0 0;min-height:auto;overflow:visible}.app-shell--no-nav.app-shell--wide .app-layout,.app-shell--no-nav.app-shell--wide .app-frame{max-width:min(var(--content-max-width), calc(100vw - 32px))}.app-shell--no-nav.app-shell--wide .app-frame{background:var(--color-bg)}.app-shell--immersive{background:#efe8df;justify-content:stretch;align-items:stretch;padding:0}.app-shell--immersive .app-layout,.app-shell--immersive .app-frame{width:100%;max-width:none;height:100%;max-height:none;box-shadow:none;background:0 0;border-radius:0;overflow:hidden}.app-shell--immersive .app-main,.app-shell--immersive .app-main__content,.app-shell--immersive .app-content,.app-shell--immersive .page-transition{flex:1;height:100%;min-height:0;overflow:hidden}.app-shell--immersive .page-transition{flex-direction:column;display:flex}.app-shell--immersive .page-transition>*{flex:1;height:100%;min-height:0}.app-shell--immersive .app-content{max-width:none;padding-inline:0}.app-shell--immersive .page{background:0 0;height:100%;min-height:0;overflow:hidden}@media (width>=768px){.app-shell--immersive .page{flex:1;max-width:none;height:100%;min-height:0;margin:0;padding:0;overflow:hidden}.app-shell--no-nav{padding:24px}.app-shell--no-nav.app-shell--immersive{background:#141210;justify-content:center;align-items:center;padding:0}.app-shell--no-nav.app-shell--immersive .app-layout,.app-shell--no-nav.app-shell--immersive .app-frame{width:min(100%,430px);max-width:430px;height:100%;max-height:100dvh;box-shadow:none;border-radius:0;margin-inline:auto}.app-shell--no-nav .app-layout,.app-shell--no-nav .app-frame{max-height:calc(100dvh - 48px)}.app-shell--no-nav.app-shell--wide .app-layout,.app-shell--no-nav.app-shell--wide .app-frame{max-width:min(var(--content-max-width), calc(100vw - 48px))}:root{--page-padding:var(--page-padding-tablet);--nav-height:0px}html,body{height:auto;overflow:auto}#app{height:100dvh;overflow:hidden}*{scrollbar-width:thin;scrollbar-color:#cbd5e1 transparent}::-webkit-scrollbar{width:6px;height:6px;display:block}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:999px}.sticky-footer{max-width:min(var(--content-max-width), calc(100% - 2 * var(--page-padding)));bottom:0}.no-nav .sticky-footer{bottom:0}.auth-body{align-items:center;padding-block:32px 48px}.auth-lead,.auth-page .card,.auth-switch{width:100%;max-width:var(--auth-form-max-width)}.company-select-page__list{grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:20px;display:grid}.company-brand-card{min-height:220px}.catalog-list{gap:var(--page-gap);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.product-list{gap:var(--page-gap);grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;display:grid}.product-page__scroll{padding-bottom:88px}.settlement-options,.mode-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;max-width:720px;margin-inline:auto;display:grid}.company-select-page{max-width:var(--content-max-width);width:100%;padding-inline:var(--page-padding);margin-inline:auto}.company-select-page__header{max-width:560px;margin-inline:auto}.catalog-page .page__scroll,.orders-page__scroll,.product-page .product-page__scroll{max-width:var(--content-max-width);width:100%;margin-inline:auto}.cart-page{max-width:var(--content-max-width);width:100%;padding-inline:var(--page-padding);margin-inline:auto}.cart-page__body{grid-template-rows:auto 1fr;grid-template-columns:minmax(0,1fr) minmax(260px,300px);align-items:start;gap:16px 20px;display:grid}.cart-page__company{grid-column:1/-1;margin-bottom:0;font-size:.9375rem}.cart-page__scroll{grid-column:1;max-height:none;overflow:visible}.cart-page__footer{box-shadow:var(--shadow-md);border-radius:var(--radius-md);border-top:none;border:1px solid var(--color-border);grid-area:1/2/-1;margin:0;padding:16px;position:sticky;top:16px}.cart-table__head{position:static}.check-list-page{max-width:var(--content-max-width);width:100%;padding-inline:var(--page-padding);margin-inline:auto}.check-list-page__scroll{max-width:var(--content-max-width);width:100%;margin-inline:auto}.summary-cards{gap:16px}.checks-list{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:12px;display:grid}.rass-panel{max-width:480px;margin-inline:auto}.profile-page__scroll{max-width:var(--content-max-width);width:100%;margin-inline:auto}.profile-menu{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.profile-menu__item{border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-sm)}.order-detail-page__body{-webkit-overflow-scrolling:touch;width:100%;max-width:none;margin-inline:0;overflow-y:auto}.order-detail-page__footer{width:100%;max-width:none;margin-inline:0}.checkout-page__scroll,.cash-page__scroll,.settlement-page__scroll,.check-mode-page__scroll{max-width:var(--form-max-width);width:100%;margin-inline:auto}.cash-page{max-width:var(--content-max-width);width:100%;margin-inline:auto}.cash-page__footer{max-width:var(--form-max-width);width:100%;box-shadow:none;border-top:none;grid-template-columns:1fr 1fr;gap:12px;margin-inline:auto;padding-top:16px;display:grid}.accounts-panel{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.bank-card+.bank-card,.cash-page__submit{margin-top:0}.order-info-card{max-width:520px;margin-inline:auto}.profile-edit-page .page__scroll{max-width:var(--form-max-width);width:100%;margin-inline:auto}.success-page__scroll{max-width:var(--form-max-width);flex-direction:column;align-items:center;width:100%;margin-inline:auto;display:flex}.dialog-overlay .dialog,.dialog-overlay .card.dialog{width:100%;max-width:480px}.dialog-actions{flex-direction:row;justify-content:flex-end}}@media (width>=1200px){:root{--page-padding:var(--page-padding-desktop)}.catalog-list{grid-template-columns:repeat(3,minmax(0,1fr))}.checks-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1440px){.product-list{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width>=1920px){:root{--content-max-width:1120px}}@media (width>=768px){:root{--page-padding:var(--page-padding-tablet);--nav-height:0px}.page{padding:20px var(--page-padding-tablet) 28px;max-width:var(--content-max-width);background:0 0;flex:1 0 auto;width:100%;min-height:auto;margin-inline:auto;overflow:visible}.page__scroll{flex:none;min-height:auto;overflow:visible}.page__scroll--with-nav{padding-bottom:0}.page-head{margin-bottom:20px}.page-head__title{color:var(--color-text);margin:0 0 4px;font-size:1.25rem;font-weight:700}.page-head__subtitle{color:var(--color-text-muted);margin:0;font-size:.875rem}.orders-page__desktop-head{margin-bottom:20px}.orders-page__desktop-title{color:var(--color-text);margin:0 0 6px;font-size:1.375rem;font-weight:700}.orders-page__desktop-subtitle{color:var(--color-text-muted);margin:0;font-size:.875rem}.orders-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:20px;display:grid}.orders-stat-card{background:var(--color-surface);border-radius:var(--radius-md);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);flex-direction:column;align-items:stretch;gap:0;min-height:0;padding:16px 18px 14px;display:flex}.orders-stat-card__head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;display:flex}.orders-stat-card__label{font-size:.8125rem;font-weight:600;line-height:1.4}.orders-stat-card__label--total,.orders-stat-card__label--review{color:var(--color-text)}.orders-stat-card__label--active{color:#ea580c}.orders-stat-card__label--done{color:var(--color-success)}.orders-stat-card__value{color:var(--color-text);font-variant-numeric:tabular-nums;margin:0 0 12px;font-size:1.75rem;font-weight:700;line-height:1.15}.orders-stat-card__link{color:var(--color-primary);cursor:pointer;text-underline-offset:3px;background:0 0;border:none;align-self:flex-start;margin-top:auto;padding:0;font-family:inherit;font-size:.8125rem;font-weight:600;text-decoration:underline}.orders-stat-card__link:hover{color:var(--color-primary-hover)}.orders-stat-card__icon{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.orders-stat-card__icon--total,.orders-stat-card__icon--review{background:var(--color-primary-soft);color:var(--color-primary)}.orders-stat-card__icon--active{background:var(--color-warning-light);color:#ea580c}.orders-stat-card__icon--done{background:var(--color-success-soft);color:var(--color-success)}.orders-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.orders-toolbar__actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.orders-toolbar__filter-btn{border-radius:var(--radius-sm);background:var(--color-primary);color:#fff;cursor:pointer;white-space:nowrap;border:none;align-items:center;gap:8px;height:40px;padding:0 18px;font-family:inherit;font-size:.875rem;font-weight:600;display:inline-flex}.orders-toolbar__filter-btn:hover{background:var(--color-primary-hover)}.orders-toolbar__pills{flex-wrap:wrap;flex:1;justify-content:flex-end;align-items:center;gap:8px;min-width:0;display:flex}.orders-filter-pill{border:1px solid var(--color-border);background:var(--color-surface);height:36px;color:var(--color-text-muted);cursor:pointer;white-space:nowrap;border-radius:999px;padding:0 16px;font-family:inherit;font-size:.8125rem;font-weight:500;transition:background .15s,color .15s,border-color .15s}.orders-filter-pill:hover{color:var(--color-text);border-color:#cbd5e1}.orders-filter-pill--active{background:var(--color-primary-soft);color:var(--color-primary);border-color:#c7d7ff;font-weight:600}.orders-table-wrap{background:var(--color-surface);border-radius:var(--radius-md);border:1px solid var(--color-border);box-shadow:var(--shadow-card);overflow:hidden}.orders-table-scroll{overflow-x:auto}.orders-table{border-collapse:collapse;width:100%;min-width:720px;font-size:.875rem}.orders-table th{text-align:start;color:var(--color-text-muted);background:var(--color-bg);border-bottom:1px solid var(--color-border);white-space:nowrap;padding:14px 16px;font-size:.8125rem;font-weight:600}.orders-table td{border-bottom:1px solid var(--color-border);color:var(--color-text);vertical-align:middle;background:var(--color-surface);padding:16px}.orders-table tr:last-child td{border-bottom:none}.orders-table tbody tr:hover td{background:var(--color-elevated)}.orders-table__number{color:var(--color-text);white-space:nowrap;font-weight:700}.orders-table__amount{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}.orders-table__date{color:var(--color-text-muted);white-space:nowrap;font-size:.8125rem}.orders-table__actions{align-items:center;gap:8px;display:flex}.orders-table__action{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-primary);cursor:pointer;white-space:nowrap;padding:7px 16px;font-family:inherit;font-size:.8125rem;font-weight:600}.orders-table__action:hover{background:var(--color-primary-soft);border-color:#c7d7ff}.orders-table__menu{border-radius:var(--radius-sm);width:34px;height:34px;color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:flex}.orders-table__menu:hover{background:var(--color-elevated);color:var(--color-text)}.orders-pagination{border-top:1px solid var(--color-border);color:var(--color-text-muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:14px 16px;font-size:.8125rem;display:flex}.orders-pagination__summary{white-space:nowrap}.orders-pagination__controls{align-items:center;gap:4px;display:flex}.orders-pagination__arrow{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);cursor:pointer;width:32px;height:32px;color:var(--color-text);justify-content:center;align-items:center;padding:0;display:flex}.orders-pagination__arrow:disabled{opacity:.4;cursor:not-allowed}.orders-pagination__arrow:not(:disabled):hover{border-color:var(--color-primary);color:var(--color-primary)}.orders-pagination__arrow-icon--prev{transform:scaleX(-1)}.orders-pagination__arrow-icon--next{transform:none}.orders-pagination__ellipsis{text-align:center;min-width:24px;color:var(--color-text-muted)}.orders-pagination__page{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);cursor:pointer;min-width:32px;height:32px;color:var(--color-text);padding:0 6px;font-family:inherit;font-size:.8125rem}.orders-pagination__page:hover:not(.orders-pagination__page--active){border-color:var(--color-primary);color:var(--color-primary)}.orders-pagination__page--active{background:var(--color-primary);border-color:var(--color-primary);color:#fff;font-weight:600}.product-page__layout{grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:24px;display:grid}.product-page__main{min-width:0}.product-page__sidebar{position:sticky;top:16px}.cart-summary-panel{background:var(--color-surface);border-radius:var(--radius-md);border:1px solid var(--color-border);box-shadow:var(--shadow-card);padding:20px}.cart-summary-panel__title{color:var(--color-text);border-bottom:1px solid var(--color-border);margin:0 0 16px;padding-bottom:12px;font-size:.9375rem;font-weight:700}.cart-summary-panel__row{justify-content:space-between;align-items:center;padding:8px 0;font-size:.875rem;display:flex}.cart-summary-panel__row span:first-child{color:var(--color-text-muted)}.cart-summary-panel__row strong{color:var(--color-text)}.cart-summary-panel__btn{margin-top:16px}.product-page__scroll{padding-bottom:0}.product-page .sticky-footer{display:none}.product-list{grid-template-columns:repeat(2,minmax(0,1fr))}.cart-page{max-width:var(--content-max-width);padding:20px var(--page-padding-tablet) 28px;background:0 0;margin-inline:auto}.cart-page__desktop-title{margin:0 0 16px;font-size:1.25rem;font-weight:700}.cart-page__body{grid-template-columns:minmax(0,1fr) minmax(280px,320px);align-items:start;gap:20px 24px;display:grid}.cart-page__company{grid-column:1/-1}.order-detail-page{max-width:none;padding:24px var(--page-padding) 32px;background:0 0;height:100%;margin-inline:0;overflow:hidden}.order-detail-back{color:var(--color-primary);cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;margin-bottom:12px;padding:0;font-family:inherit;font-size:.875rem;font-weight:600;display:inline-flex}.company-select-page{max-width:var(--content-max-width);padding:24px var(--page-padding-desktop);background:0 0;margin-inline:auto}.catalog-page{background:0 0}.page.calite-detail,.page.calite-hub{background:#f4f0ed;max-width:none;padding:0;overflow:visible}.catalog-list{grid-template-columns:repeat(3,minmax(0,1fr))}.profile-page{background:0 0}.profile-hero{border-radius:var(--radius-md);margin-inline:0}}@media (width>=1200px){:root{--page-padding:var(--page-padding-desktop)}.page{padding:24px var(--page-padding-desktop) 32px}.page.calite-detail,.page.calite-hub{padding:0}.orders-stats{gap:16px;margin-bottom:24px}.orders-page__desktop-head{margin-bottom:24px}.orders-toolbar{margin-bottom:20px}.catalog-list{grid-template-columns:repeat(3,minmax(0,1fr))}.product-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=768px){.desktop-page{width:100%;min-height:auto;max-width:var(--content-max-width);padding:20px var(--page-padding) 28px;box-sizing:border-box;background:0 0;flex-direction:column;flex:1 0 auto;margin-inline:auto;display:flex}.desktop-page__head{margin-bottom:20px}.desktop-page__title{color:var(--color-text);margin:0 0 6px;font-size:1.375rem;font-weight:700}.desktop-page__subtitle{color:var(--color-text-muted);margin:0;font-size:.875rem}.desktop-two-col{grid-template-columns:minmax(0,1fr);align-items:start;gap:24px;display:grid}.desktop-two-col__main{min-width:0}.desktop-summary-panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-card);padding:20px;position:sticky;top:16px}.desktop-summary-panel__title{border-bottom:1px solid var(--color-border);margin:0 0 16px;padding-bottom:12px;font-size:.9375rem;font-weight:700}.desktop-summary-panel__row{justify-content:space-between;align-items:center;gap:12px;padding:8px 0;font-size:.875rem;display:flex}.desktop-summary-panel__row span:first-child{color:var(--color-text-muted)}.desktop-summary-panel__row strong{color:var(--color-text);font-variant-numeric:tabular-nums}.desktop-summary-panel__action{margin-top:16px}.desktop-table-wrap{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-card);width:100%;min-width:0;overflow:hidden}.desktop-table-scroll{-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;overflow-x:auto}.desktop-table{border-collapse:collapse;width:100%;min-width:560px;font-size:.875rem}.desktop-table th{text-align:start;color:var(--color-text-muted);background:var(--color-bg);border-bottom:1px solid var(--color-border);white-space:nowrap;padding:12px 16px;font-size:.8125rem;font-weight:600}.desktop-table td{border-bottom:1px solid var(--color-border);color:var(--color-text);vertical-align:middle;background:var(--color-surface);padding:14px 16px}.desktop-table tbody tr:last-child td{border-bottom:none}.desktop-table tbody tr:hover td{background:var(--color-elevated)}.desktop-grid-2{grid-template-columns:repeat(2,minmax(280px,1fr));gap:16px;display:grid}.desktop-grid-3{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.desktop-grid-4{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.desktop-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.desktop-toolbar__actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.desktop-btn-compact{min-width:120px;width:auto!important;padding-inline:20px!important}.desktop-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.desktop-form-grid__full{grid-column:1/-1}.desktop-checkout-shell{width:100%;max-width:var(--content-max-width);padding:20px var(--page-padding) 28px;box-sizing:border-box;margin-inline:auto}.desktop-settlement-grid{grid-template-columns:repeat(2,minmax(280px,380px));justify-content:center;gap:20px;max-width:820px;margin-inline:auto;display:grid}.desktop-company-grid{grid-template-columns:repeat(2,minmax(280px,400px));justify-content:center;gap:20px;width:100%;max-width:900px;margin-inline:auto;display:grid}}@media (width>=1200px){.desktop-page,.desktop-checkout-shell{padding:24px var(--page-padding) 32px}.desktop-page__head{margin-bottom:24px}.desktop-two-col:has(>.desktop-summary-panel){grid-template-columns:minmax(0, 1fr) var(--summary-panel-width,320px)}.desktop-grid-3{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.desktop-grid-4{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}}@media (width>=1440px){.desktop-grid-3{grid-template-columns:repeat(4,minmax(0,1fr))}} diff --git a/dist/assets/index-DB4cQnln.js b/dist/assets/index-DB4cQnln.js new file mode 100644 index 0000000..f1714b5 --- /dev/null +++ b/dist/assets/index-DB4cQnln.js @@ -0,0 +1,2 @@ +const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/WelcomeView-DCG7Drw-.js","assets/BasicIcon-Bnxm-DKk.js","assets/BasicIcon-QF_b9Svq.css","assets/login-fabric-CzrIXTnD.js","assets/WelcomeView-Bue6hk9x.css","assets/LoginView-DCgkTu-r.js","assets/format-C72AoJ2H.js","assets/validation-Duyyve7l.js","assets/FormErrorBanner-BahrrGfv.js","assets/FormErrorBanner-Hje8L-00.css","assets/IconPhone-Dp7Txh8V.js","assets/formErrors-DglFjYkZ.js","assets/LoginView-DzSYxjJ8.css","assets/RegisterView-EXVxZpxx.js","assets/dist-CeuESLw-.js","assets/dist-CGdWzQ9K.js","assets/IconDiamond-CGMEs3wg.js","assets/RegisterView-DGOdJpXQ.css","assets/OtpView-iifaPe_r.js","assets/IconChevronBack-DguSlPDK.js","assets/IconEditPen-BwxVBWii.js","assets/OtpView-w9hAwgso.css","assets/HomeView-sRBpjtF9.js","assets/PageSkeleton-CpZ7eT1v.js","assets/PageSkeleton-CaQ4bDKV.css","assets/crm-CZ7XH3z9.js","assets/http-Bnj5Ml97.js","assets/useGoBack-Ds4z3swU.js","assets/quick-catalog-request-Di7-t6Ua.js","assets/IconHeart-CiwVmqRC.js","assets/HomeView-DYxyNGVU.css","assets/CategoriesView-BNMtfoIp.js","assets/IconSearch-D5bVmUdX.js","assets/categoryIcons-XvfZlu8n.js","assets/IconLayoutGrid-BfGINevf.js","assets/IconShoppingBag-kdnOLLiZ.js","assets/CategoriesView-BtU4FhNT.css","assets/ProductsView-xMKufARc.js","assets/IconFilter-DHL8PKX0.js","assets/colorSwatch-BgOH1LE5.js","assets/PageHeader-BxTTQB_F.js","assets/PageHeader-C69aO5cY.css","assets/SearchField-CGW0jRdh.js","assets/SearchField-QJMYJEg3.css","assets/ProductsView-DRFfnXs-.css","assets/ProductDetailView-7kd_faet.js","assets/catalog-B2Z_WZGF.js","assets/IconShare-DtutVVj1.js","assets/ProductDetailView-DhezkUBD.css","assets/CatalogsHubView-CHO1oP_S.js","assets/caliteCollections-CooWZH--.js","assets/CatalogsHubView-CoPTnv3-.css","assets/CatalogDetailView-D9HeT7Iq.js","assets/CatalogDetailView-CZHNGZXq.css","assets/CatalogRequestView-CbekVMOP.js","assets/catalogRequests-CHkUMFJx.js","assets/CatalogRequestView--XiSD0Pv.css","assets/CatalogRequestsView--TWbJobZ.js","assets/CatalogRequestsView-DSkjUp3f.css","assets/FavoritesView-HolTmpnM.js","assets/FavoritesView-DDiGZjUW.css","assets/CustomersView-Khlai4Rw.js","assets/CustomerCreateOverlay-CStx-5j-.js","assets/BaseInput-BFVjehfb.js","assets/BaseInput-BKq5OFkZ.css","assets/CustomerCreateOverlay-DpQkF2Gz.css","assets/CustomersView-ZfDgnskm.css","assets/CustomerDetailView-Czbonf-B.js","assets/constants-DXXK14Zz.js","assets/IconProgressClock-D-v2U-1t.js","assets/IconClipboardEmpty-dbxs07_C.js","assets/PersianDateInput-BiSVL1bi.js","assets/PersianDateInput-CQDjJN3F.css","assets/CustomerDetailView-D35VhooF.css","assets/RemindersView-7lF3bXsi.js","assets/IconMoreVertical-C07CFI4h.js","assets/RemindersView-4scV8gnB.css","assets/ReminderDetailView-DHzMhSyb.js","assets/ReminderDetailView-Bgb1iArR.css","assets/CatalogListView-BKPppl-b.js","assets/EmptyState-CsuH56HV.js","assets/EmptyState-D6A5GmrP.css","assets/CatalogListView-1JVmwn4V.css","assets/CartView-DcIrdqu4.js","assets/CheckoutStepper-DOrSsyu1.js","assets/CheckoutStepper-hqk-kVCz.css","assets/CartView-C652iQUF.css","assets/OrdersView-ZqpETR7Y.js","assets/OrdersView-C_CUEMfe.css","assets/OrderDetailView-F8UnKRJu.js","assets/orderInvoice-B0L1Aeuk.js","assets/CurrencyInput-DQq9PyBn.js","assets/CurrencyInput-ByU-DLUz.css","assets/OrderDetailView-5Zi-DKNv.css","assets/OrderSuccessView-BpOXWOi1.js","assets/OrderSuccessView-BI6XPtrV.css","assets/SettlementTypeView-Ci4oR-Ca.js","assets/useRequirePricedOrder-CUckkgqU.js","assets/SettlementTypeView-C3wqclvS.css","assets/CashSettlementView-DmaDYQvf.js","assets/CashSettlementView-C8IRazOR.css","assets/CheckModeSelectView-pdkEZrIl.js","assets/CheckModeSelectView-BZlKzxFL.css","assets/CheckFormView-DApWVLTM.js","assets/CheckFormView-Cgp6kUZ2.css","assets/CheckListView-C2RmOScu.js","assets/CheckListView-B_ogsKeK.css","assets/ProfileView-DnQpKT74.js","assets/ProfileView-DeYflX6z.css","assets/ProfileEditView-wzEZQKJ2.js","assets/ProfileSubpageLayout-M9w6UPVb.js","assets/ProfileSubpageLayout-DCtwNGmO.css","assets/ProfileEditView-Cqvr3yiG.css","assets/ProfileSecurityView-oki8MoKN.js","assets/ProfileSecurityView-BjbybMSz.css","assets/ProfileNotificationsView-D_wDB5-Q.js","assets/ProfileNotificationsView-BqMkB4wX.css","assets/ProfileDisplayView-DnuPC4UZ.js","assets/ProfileDisplayView-CDaE5E6F.css","assets/ProfileChecksView-Tp62gSX1.js"])))=>i.map(i=>d[i]); +import{$ as e,A as t,Ct as n,D as r,Dt as i,Et as a,H as o,J as s,K as c,L as l,M as u,N as d,O as f,P as p,Q as m,R as h,W as g,X as _,Z as v,_ as y,a as b,c as x,d as S,f as C,g as w,gt as ee,h as T,ht as E,i as D,it as O,j as k,l as A,m as te,n as j,nt as ne,o as M,p as re,pt as ie,r as ae,rt as oe,s as se,t as N,tt as ce,u as le,v as ue,vt as de,wt as P,x as fe,y as pe,z as F}from"./BasicIcon-Bnxm-DKk.js";import{a as me,i as I,n as L,o as R,r as z,s as B,t as V}from"./http-Bnj5Ml97.js";import{l as he}from"./dist-CGdWzQ9K.js";import{i as ge,r as _e}from"./dist-CeuESLw-.js";import{d as ve,l as ye,s as be,t as xe,v as Se,y as Ce}from"./format-C72AoJ2H.js";import{r as we}from"./validation-Duyyve7l.js";import{t as H}from"./catalog-B2Z_WZGF.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 U=typeof document<`u`,Te=/#/g,Ee=/&/g,De=/\//g,Oe=/=/g,ke=/\?/g,Ae=/\+/g,je=/%5B/g,Me=/%5D/g,Ne=/%5E/g,Pe=/%60/g,Fe=/%7B/g,Ie=/%7C/g,Le=/%7D/g,Re=/%20/g;function ze(e){return e==null?``:encodeURI(``+e).replace(Ie,`|`).replace(je,`[`).replace(Me,`]`)}function Be(e){return ze(e).replace(Fe,`{`).replace(Le,`}`).replace(Ne,`^`)}function Ve(e){return ze(e).replace(Ae,`%2B`).replace(Re,`+`).replace(Te,`%23`).replace(Ee,`%26`).replace(Pe,"`").replace(Fe,`{`).replace(Le,`}`).replace(Ne,`^`)}function He(e){return Ve(e).replace(Oe,`%3D`)}function Ue(e){return ze(e).replace(Te,`%23`).replace(ke,`%3F`)}function We(e){return Ue(e).replace(De,`%2F`)}function Ge(e){if(e==null)return null;try{return decodeURIComponent(``+e)}catch{}return``+e}var Ke=/\/$/,qe=e=>e.replace(Ke,``);function Je(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=tt(r??t,n),{fullPath:r+a+o,path:r,query:i,hash:Ge(o)}}function Ye(e,t){let n=t.query?e(t.query):``;return t.path+(n&&`?`)+n+(t.hash||``)}function Xe(e,t){return!t||!e.toLowerCase().startsWith(t.toLowerCase())?e:e.slice(t.length)||`/`}function Ze(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])&&Qe(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 Qe(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(var n in e)if(!$e(e[n],t[n]))return!1;return!0}function $e(e,t){return M(e)?et(e,t):M(t)?et(t,e):(e&&e.valueOf())===(t&&t.valueOf())}function et(e,t){return M(t)?e.length===t.length&&e.every((e,n)=>e===t[n]):e.length===1&&e[0]===t}function tt(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 nt(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),qe(e)}var rt=/^[^#]+#/;function it(e,t){return e.replace(rt,`#`)+t}function at(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 ot=()=>({left:window.scrollX,top:window.scrollY});function st(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=at(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 ct(e,t){return(history.state?history.state.position-t:-1)+e}var lt=new Map;function ut(e,t){lt.set(e,t)}function dt(e){let t=lt.get(e);return lt.delete(e),t}function ft(e){return typeof e==`string`||e&&typeof e==`object`}function pt(e){return typeof e==`string`||typeof e==`symbol`}function mt(e){let t={};if(e===``||e===`?`)return t;let n=(e[0]===`?`?e.slice(1):e).split(`&`);for(let e=0;ee&&Ve(e)):[r&&Ve(r)]).forEach(e=>{e!==void 0&&(t+=(t.length?`&`:``)+n,e!=null&&(t+=`=`+e))})}return t}function gt(e){let t={};for(let n in e){let r=e[n];r!==void 0&&(t[n]=M(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(b(4,{from:n,to:t})):e instanceof Error?c(e):ft(e)?c(b(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 _t(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(A(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=se(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 vt(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 yt=()=>location.protocol+`//`+location.host;function bt(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),Xe(n,``)}return Xe(n,e)+r+i}function xt(e,t,n,r){let i=[],a=[],o=null,s=({state:a})=>{let s=bt(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(D({},e.state,{scroll:ot()}),``)}}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 St(e,t,n,r=!1,i=!1){return{back:e,current:t,forward:n,replaced:r,position:window.history.length,scroll:i?ot():null}}function Ct(e){let{history:t,location:n}=window,r={value:bt(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:yt()+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,D({},t.state,St(i.value.back,e,i.value.forward,!0),n,{position:i.value.position}),!0),r.value=e}function s(e,n){let o=D({},i.value,t.state,{forward:e,scroll:ot()});a(o.current,o,!0),a(e,D({},St(r.value,e,null),{position:o.position+1},n),!1),r.value=e}return{location:r,state:i,push:s,replace:o}}function wt(e){e=nt(e);let t=Ct(e),n=xt(e,t.state,t.location,t.replace);function r(e,t=!0){t||n.pauseListeners(),history.go(e)}let i=D({location:``,base:e,go:r,createHref:it.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 Tt={type:0,value:``},Et=/[a-zA-Z0-9_]/;function Dt(e){if(!e)return[[]];if(e===`/`)return[[Tt]];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 Nt(e,t){let n=0,r=e.score,i=t.score;for(;n0&&t[t.length-1]<0}var Ft={strict:!1,end:!0,sensitive:!1};function It(e,t,n){let r=jt(Dt(e.path),n),i=D(r,{record:e,parent:t,children:[],alias:[]});return t&&!i.record.aliasOf==!t.record.aliasOf&&t.children.push(i),i}function Lt(e,t){let n=[],r=new Map;t=S(Ft,t);function i(e){return r.get(e)}function a(e,n,r){let i=!r,s=zt(e);s.aliasOf=r&&r.record;let l=S(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(zt(D({},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=It(t,n,l),r?r.alias.push(d):(f||=d,f!==d&&f.alias.push(d),i&&e.name&&!Vt(d)&&o(e.name)),Gt(d)&&c(d),s.children){let e=s.children;for(let t=0;t{o(f)}:C}function o(e){if(pt(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=Ut(e,n);n.splice(t,0,e),e.record.name&&!Vt(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 b(1,{location:e});s=i.record.name,a=D(Rt(t.params,i.keys.filter(e=>!e.optional).concat(i.parent?i.parent.keys.filter(e=>e.optional):[]).map(e=>e.name)),e.params&&Rt(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 b(1,{location:e,currentLocation:t});s=i.record.name,a=D({},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:Ht(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 Rt(e,t){let n={};for(let r of t)r in e&&(n[r]=e[r]);return n}function zt(e){let t={path:e.path,redirect:e.redirect,name:e.name,meta:e.meta||{},aliasOf:e.aliasOf,beforeEnter:e.beforeEnter,props:Bt(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 Bt(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 Vt(e){for(;e;){if(e.record.aliasOf)return!0;e=e.parent}return!1}function Ht(e){return e.reduce((e,t)=>D(e,t.meta),{})}function Ut(e,t){let n=0,r=t.length;for(;n!==r;){let i=n+r>>1;Nt(e,t[i])<0?r=i:n=i+1}let i=Wt(e);return i&&(r=t.lastIndexOf(i,r-1)),r}function Wt(e){let t=e;for(;t=t.parent;)if(Gt(t)&&Nt(e,t)===0)return t}function Gt({record:e}){return!!(e.name||e.components&&Object.keys(e.components).length||e.redirect)}function Kt(e){let r=g(te),i=g(re),a=t(()=>{let t=n(e.to);return r.resolve(t)}),o=t(()=>{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(W.bind(null,n));if(o>-1)return o;let s=Zt(e[t-2]);return t>1&&Zt(n)===s&&r[r.length-1].path!==s?r.findIndex(W.bind(null,e[t-2])):o}),s=t(()=>o.value>-1&&Xt(i.params,a.value.params)),c=t(()=>o.value>-1&&o.value===i.matched.length-1&&Qe(i.params,a.value.params));function l(t={}){if(Yt(t)){let t=r[n(e.replace)?`replace`:`push`](n(e.to)).catch(C);return e.viewTransition&&typeof document<`u`&&`startViewTransition`in document&&document.startViewTransition(()=>t),t}return Promise.resolve()}return{route:a,href:t(()=>a.value.href),isActive:s,isExactActive:c,navigate:l}}function qt(e){return e.length===1?e[0]:e}var Jt=F({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:Kt,setup(e,{slots:n}){let r=ie(Kt(e)),{options:i}=g(te),a=t(()=>({[Qt(e.activeClass,i.linkActiveClass,`router-link-active`)]:r.isActive,[Qt(e.exactActiveClass,i.linkExactActiveClass,`router-link-exact-active`)]:r.isExactActive}));return()=>{let t=n.default&&qt(n.default(r));return e.custom?t:o(`a`,{"aria-current":r.isExactActive?e.ariaCurrentValue:null,href:r.href,onClick:r.navigate,class:a.value},t)}}});function Yt(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 Xt(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(!M(i)||i.length!==r.length||r.some((e,t)=>e.valueOf()!==i[t].valueOf()))return!1}return!0}function Zt(e){return e?e.aliasOf?e.aliasOf.path:e.path:``}var Qt=(e,t,n)=>e??t??n,$t=F({name:`RouterView`,inheritAttrs:!1,props:{name:{type:String,default:`default`},route:Object},compatConfig:{MODE:3},setup(e,{attrs:r,slots:i}){let a=g(T),s=t(()=>e.route||a.value),c=g(ue,0),l=t(()=>{let e=n(c),{matched:t}=s.value,r;for(;(r=t[e])&&!r.components;)e++;return e}),u=t(()=>s.value.matched[l.value]);v(ue,t(()=>l.value+1)),v(le,u),v(T,s);let d=E();return ne(()=>[d.value,u.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 t=s.value,n=e.name,a=u.value,c=a&&a.components[n];if(!c)return en(i.default,{Component:c,route:t});let l=a.props[n],f=l?l===!0?t.params:typeof l==`function`?l(t):l:null,p=o(c,D({},f,r,{onVnodeUnmounted:e=>{e.component.isUnmounted&&(a.instances[n]=null)},ref:d}));return en(i.default,{Component:p,route:t})||p}}});function en(e,t){if(!e)return null;let n=e(t);return n.length===1?n[0]:n}var tn=$t;function nn(e){let t=Lt(e.routes,e),r=e.parseQuery||mt,i=e.stringifyQuery||ht,a=e.history,o=K(),s=K(),l=K(),u=de(G),d=G;U&&e.scrollBehavior&&`scrollRestoration`in history&&(history.scrollRestoration=`manual`);let f=ae.bind(null,e=>``+e),p=ae.bind(null,We),m=ae.bind(null,Ge);function h(e,n){let r,i;return pt(e)?(r=t.getRecordMatcher(e),i=n):i=e,t.addRoute(i,r)}function g(e){let n=t.getRecordMatcher(e);n&&t.removeRoute(n)}function _(){return t.getRoutes().map(e=>e.record)}function v(e){return!!t.getRecordMatcher(e)}function y(e,n){if(n=D({},n||u.value),typeof e==`string`){let i=Je(r,e,n.path),o=t.resolve({path:i.path},n),s=a.createHref(i.fullPath);return D(i,o,{params:m(o.params),redirectedFrom:void 0,href:s})}let o;if(e.path!=null)o=D({},e,{path:Je(r,e.path,n.path).path});else{let t=D({},e.params);for(let e in t)t[e]??delete t[e];o=D({},e,{params:p(t)}),n.params=p(n.params)}let s=t.resolve(o,n),c=e.hash||``;s.params=f(m(s.params));let l=Ye(i,D({},e,{hash:Be(c),path:s.path})),d=a.createHref(l);return D({fullPath:l,hash:c,query:i===ht?gt(e.query):e.query||{}},s,{redirectedFrom:void 0,href:d})}function S(e){return typeof e==`string`?Je(r,e,u.value.path):D({},e)}function w(e,t){if(d!==e)return b(8,{from:t,to:e})}function E(e){return A(e)}function O(e){return E(D(S(e),{replace:!0}))}function k(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=S(i):{path:i},i.params={}),D({query:e.query,hash:e.hash,params:i.path==null?e.params:{}},i)}}function A(e,t){let n=d=y(e),r=u.value,a=e.state,o=e.force,s=e.replace===!0,c=k(n,r);if(c)return A(D(S(c),{state:typeof c==`object`?D({},a,c.state):a,force:o,replace:s}),t||n);let l=n;l.redirectedFrom=t;let f;return!o&&Ze(i,r,n)&&(f=b(16,{to:l,from:r}),me(r,r,!0,!1)),(f?Promise.resolve(f):ie(l,r)).catch(e=>x(e)?x(e,2)?e:F(e):fe(e,l,r)).then(e=>{if(e){if(x(e,2))return A(D({replace:s},S(e.to),{state:typeof e.to==`object`?D({},a,e.to.state):a,force:o}),t||l)}else e=se(l,r,!0,s,a);return oe(l,r,e),e})}function j(e,t){let n=w(e,t);return n?Promise.reject(n):Promise.resolve()}function ne(e){let t=R.values().next().value;return t&&typeof t.runWithContext==`function`?t.runWithContext(e):e()}function ie(e,t){let n,[r,i,a]=vt(e,t);n=_t(r.reverse(),`beforeRouteLeave`,e,t);for(let i of r)i.leaveGuards.forEach(r=>{n.push(q(r,e,t))});let c=j.bind(null,e,t);return n.push(c),B(n).then(()=>{n=[];for(let r of o.list())n.push(q(r,e,t));return n.push(c),B(n)}).then(()=>{n=_t(i,`beforeRouteUpdate`,e,t);for(let r of i)r.updateGuards.forEach(r=>{n.push(q(r,e,t))});return n.push(c),B(n)}).then(()=>{n=[];for(let r of a)if(r.beforeEnter)if(M(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),B(n)}).then(()=>(e.matched.forEach(e=>e.enterCallbacks={}),n=_t(a,`beforeRouteEnter`,e,t,ne),n.push(c),B(n))).then(()=>{n=[];for(let r of s.list())n.push(q(r,e,t));return n.push(c),B(n)}).catch(e=>x(e,8)?e:Promise.reject(e))}function oe(e,t,n){l.list().forEach(r=>ne(()=>r(e,t,n)))}function se(e,t,n,r,i){let o=w(e,t);if(o)return o;let s=t===G,c=U?history.state:{};n&&(r||s?a.replace(e.fullPath,D({scroll:s&&c&&c.scroll},i)):a.push(e.fullPath,i)),u.value=e,me(e,t,n,s),F()}let N;function ce(){N||=a.listen((e,t,n)=>{if(!z.listening)return;let r=y(e),i=k(r,z.currentRoute.value);if(i){A(D(i,{replace:!0,force:!0}),r).catch(C);return}d=r;let o=u.value;U&&ut(ct(o.fullPath,n.delta),ot()),ie(r,o).catch(e=>x(e,12)?e:x(e,2)?(A(D(S(e.to),{force:!0}),r).then(e=>{x(e,20)&&!n.delta&&n.type===`pop`&&a.go(-1,!1)}).catch(C),Promise.reject()):(n.delta&&a.go(-n.delta,!1),fe(e,r,o))).then(e=>{e||=se(r,o,!1),e&&(n.delta&&!x(e,8)?a.go(-n.delta,!1):n.type===`pop`&&x(e,20)&&a.go(-1,!1)),oe(r,o,e)}).catch(C)})}let le=K(),ue=K(),P;function fe(e,t,n){F(e);let r=ue.list();return r.length?r.forEach(r=>r(e,t,n)):console.error(e),Promise.reject(e)}function pe(){return P&&u.value!==G?Promise.resolve():new Promise((e,t)=>{le.add([e,t])})}function F(e){return P||(P=!e,ce(),le.list().forEach(([t,n])=>e?n(e):t()),le.reset()),e}function me(t,n,r,i){let{scrollBehavior:a}=e;if(!U||!a)return Promise.resolve();let o=!r&&dt(ct(t.fullPath,0))||(i||!r)&&history.state&&history.state.scroll||null;return c().then(()=>a(t,n,o)).then(e=>t===u.value&&e&&st(e)).catch(e=>t===u.value&&fe(e,t,n))}let I=e=>a.go(e),L,R=new Set,z={currentRoute:u,listening:!0,addRoute:h,removeRoute:g,clearRoutes:t.clearRoutes,hasRoute:v,getRoutes:_,resolve:y,options:e,push:E,replace:O,go:I,back:()=>I(-1),forward:()=>I(1),beforeEach:o.add,beforeResolve:s.add,afterEach:l.add,onError:ue.add,isReady:pe,install(e){e.component(`RouterLink`,Jt),e.component(`RouterView`,tn),e.config.globalProperties.$router=z,Object.defineProperty(e.config.globalProperties,"$route",{enumerable:!0,get:()=>n(u)}),U&&!L&&u.value===G&&(L=!0,E(a.location).catch(e=>{}));let t={};for(let e in G)Object.defineProperty(t,e,{get:()=>u.value[e],enumerable:!0});e.provide(te,z),e.provide(re,ee(t)),e.provide(T,u);let r=e.unmount;R.add(e),e.unmount=function(){R.delete(e),R.size<1&&(d=G,N&&N(),N=null,u.value=G,L=!1,P=!1),r()}}};function B(e){return e.reduce((e,t)=>e.then(()=>ne(t)),Promise.resolve())}return z}var rn=typeof global==`object`&&global&&global.Object===Object&&global,an=typeof self==`object`&&self&&self.Object===Object&&self,on=(rn||an||Function(`return this`)()).Symbol,sn=Object.prototype,cn=sn.hasOwnProperty,ln=sn.toString,J=on?on.toStringTag:void 0;function un(e){var t=cn.call(e,J),n=e[J];try{e[J]=void 0;var r=!0}catch{}var i=ln.call(e);return r&&(t?e[J]=n:delete e[J]),i}var dn=Object.prototype.toString;function fn(e){return dn.call(e)}var pn=`[object Null]`,mn=`[object Undefined]`,hn=on?on.toStringTag:void 0;function gn(e){return e==null?e===void 0?mn:pn:hn&&hn in Object(e)?un(e):fn(e)}function _n(e){return typeof e==`object`&&!!e}var vn=`[object Symbol]`;function yn(e){return typeof e==`symbol`||_n(e)&&gn(e)==vn}var bn=/\s/;function xn(e){for(var t=e.length;t--&&bn.test(e.charAt(t)););return t}var Sn=/^\s+/;function Cn(e){return e&&e.slice(0,xn(e)+1).replace(Sn,``)}function wn(e){var t=typeof e;return e!=null&&(t==`object`||t==`function`)}var Tn=NaN,En=/^[-+]0x[0-9a-f]+$/i,Dn=/^0b[01]+$/i,On=/^0o[0-7]+$/i,kn=parseInt;function An(e){if(typeof e==`number`)return e;if(yn(e))return Tn;if(wn(e)){var t=typeof e.valueOf==`function`?e.valueOf():e;e=wn(t)?t+``:t}if(typeof e!=`string`)return e===0?e:+e;e=Cn(e);var n=Dn.test(e);return n||On.test(e)?kn(e.slice(2),n?2:8):En.test(e)?Tn:+e}function jn(e,t,n){return e===e&&(n!==void 0&&(e=e<=n?e:n),t!==void 0&&(e=e>=t?e:t)),e}function Mn(e,t,n){return n===void 0&&(n=t,t=void 0),n!==void 0&&(n=An(n),n=n===n?n:0),t!==void 0&&(t=An(t),t=t===t?t:0),jn(An(e),t,n)}var Nn=5e3;function Y(){return{id:`local`,companyId:``,companyName:``,items:[]}}function X(){return!1}function Pn(e){return[...new Set(e.map(e=>e.companyName).filter(Boolean))].join(`، `)}function Fn(e,t){return e.items.filter(e=>e.companyId===t).reduce((e,t)=>e+t.meterage,0)}var Z=R(`cart`,()=>{let e=E([Y()]),n=E(`local`),r=E(null),i=E(!1),a=t(()=>e.value.find(e=>e.id===n.value)??e.value[0]??null),o=t(()=>a.value?.items.reduce((e,t)=>e+t.meterage,0)??0),s=t(()=>a.value?.items.length??0),c=H(),l=t(()=>a.value?.items.length?Pn(a.value.items):``),u=t(()=>{let e=a.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=c.getCompany(e)?.maxMeteragePerInvoice??Nn;return{companyId:e,companyName:t.companyName,meterage:t.meterage,maxMeterage:n,remaining:Math.max(0,n-t.meterage)}})}),d=t(()=>u.value.length?u.value.reduce((e,t)=>e+t.maxMeterage,0):(r.value?c.getCompany(r.value):null)?.maxMeteragePerInvoice??Nn),f=t(()=>u.value.length?u.value.reduce((e,t)=>e+t.remaining,0):Math.max(0,d.value-o.value)),p=t(()=>u.value.some(e=>e.meterage>=e.maxMeterage));function m(t){let i={id:t.id,companyId:t.companyId||``,companyName:t.companyName||Pn(t.items),items:t.items??[],notes:t.notes};e.value=[i],n.value=i.id,i.companyId&&(r.value=i.companyId)}function h(t){e.value=[{...t,items:t.items.map(e=>({...e}))}],n.value=e.value[0].id}async function g(){if(!z()){_();return}if(X()){i.value=!1;return}i.value=!0;try{m(await L(`/carts`))}catch{_()}finally{i.value=!1}}function _(){e.value=[Y()],n.value=e.value[0].id,r.value=null}function v(e){r.value=e.id,a.value&&!a.value.items.length&&(a.value.companyId=e.id,a.value.companyName=e.name)}function y(e){return v(e),a.value??Y()}function b(e){return e&&v(e),a.value??Y()}async function x(){if(X())return _(),a.value;try{return m(await L(`/carts`,{method:`DELETE`})),a.value}catch(e){return console.error(e),null}}function S(e,t,n,i){let a=b(i),o=a.items.find(t=>t.productId===e.id),s=[...a.items];if(o){let e=s.findIndex(e=>e.id===o.id);s[e]={...o,meterage:n}}else{let r={id:`local-item-${e.id}-${Date.now()}`,productId:e.id,catalogCode:t,productName:e.name,productCode:e.code,color:e.color,meterage:n,companyId:i.id,companyName:i.name};s.push(r)}return h({id:a.id||`local`,companyId:s[0]?.companyId||i.id,companyName:Pn(s)||i.name,items:s,notes:a.notes}),r.value=i.id,{success:!0}}async function C(e,t,n){c.companies.length||await c.loadCompanies();let i=c.getCompany(e.companyId),o=a.value??Y(),s=i?.maxMeteragePerInvoice??Nn,l=e.companyId?Fn(o,e.companyId):0,u=o.items.find(t=>t.productId===e.id),d=u?.meterage??0,f=we(n,e,l,s,d);if(!f.valid)return{success:!1,message:f.message};if(X())return i?S(e,t,n,i):{success:!1,message:`شرکت محصول یافت نشد.`};try{let t;return t=u?await L(`/carts/items/${u.id}`,{method:`PATCH`,body:{meterage:n}}):await L(`/carts/items`,{method:`POST`,body:{productId:e.id,meterage:n}}),m(t),r.value=i?.id||e.companyId||r.value,{success:!0}}catch(e){return{success:!1,message:e instanceof V?e.message:`افزودن به سبد ناموفق بود.`}}}async function w(e,t,n){if(!a.value)return{success:!1,message:`سبد خرید یافت نشد.`};let r=a.value.items.find(t=>t.id===e);if(!r)return{success:!1,message:`آیتم یافت نشد.`};let i=c.getCompany(r.companyId||n.companyId)?.maxMeteragePerInvoice??Nn,o=Fn(a.value,r.companyId),s=we(t,n,o,i,r.meterage);if(!s.valid)return{success:!1,message:s.message};if(X()){let n=a.value.items.map(n=>n.id===e?{...n,meterage:t}:n);return h({...a.value,items:n}),{success:!0}}try{return m(await L(`/carts/items/${e}`,{method:`PATCH`,body:{meterage:t}})),{success:!0}}catch(e){return{success:!1,message:e instanceof V?e.message:`به‌روزرسانی متراژ ناموفق بود.`}}}async function ee(e){if(X()){if(!a.value)return;let t=a.value.items.filter(t=>t.id!==e);h({...a.value,items:t});return}try{m(await L(`/carts/items/${e}`,{method:`DELETE`}))}catch(e){console.error(e)}}async function T(e){if(X()){if(!a.value)return;h({...a.value,notes:e});return}try{m(await L(`/carts/notes`,{method:`PATCH`,body:{notes:e}}))}catch(e){console.error(e)}}async function D(){if(X()){_();return}try{m(await L(`/carts`,{method:`DELETE`}))}catch{_()}}function O(){}return{carts:e,activeCartId:n,selectedCompanyId:r,syncing:i,activeCart:a,totalMeterage:o,itemCount:s,companyNamesLabel:l,companySummaries:u,maxMeterage:d,remainingCapacity:f,isFull:p,initCartForCompany:y,selectCompany:v,createNewCartForSameCompany:x,addItem:C,updateItemMeterage:w,removeItem:ee,setNotes:T,clearActiveCart:D,ensureActiveCartForCartPage:O,hydrate:g,resetLocal:_}}),In=F({__name:`IconHome`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(_(),u(N,{icon:`vuesax-linear:home`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),Ln=F({__name:`IconCart`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(_(),u(N,{icon:`vuesax-linear:bag-2`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),Rn=F({__name:`IconOrders`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(_(),u(N,{icon:`vuesax-linear:document-text`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),zn=F({__name:`IconProfile`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(_(),u(N,{icon:`vuesax-linear:profile-circle`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),Bn=F({__name:`IconCatalog`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(_(),u(N,{icon:`vuesax-linear:category`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),Vn=F({__name:`IconPlus`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(_(),u(N,{icon:`vuesax-linear:add`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),Hn=F({__name:`IconCheckBook`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(_(),u(N,{icon:`vuesax-linear:card-receive`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),Un=F({__name:`IconSettings`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(_(),u(N,{icon:`vuesax-linear:setting-2`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),Wn=[{name:`home`,path:`/`,label:`خانه`,icon:In},{name:`catalogs`,path:`/catalogs`,label:`کالیته‌ها`,icon:Bn},{name:`order-fab`,path:`/cart`,label:`ثبت سفارش`,icon:Vn},{name:`orders`,path:`/orders`,label:`سفارش‌ها`,icon:Rn},{name:`profile`,path:`/profile`,label:`پروفایل`,icon:zn}],Gn=[{name:`home`,path:`/`,label:`خانه`,icon:In},{name:`catalogs`,path:`/catalogs`,label:`کالیته‌ها`,icon:Bn},{name:`cart`,path:`/cart`,label:`ثبت سفارش`,icon:Ln},{name:`orders`,path:`/orders`,label:`سفارش‌ها`,icon:Rn},{name:`checks`,path:`/profile/checks`,label:`لیست چک‌ها`,icon:Hn},{name:`settings`,path:`/profile/display`,label:`تنظیمات`,icon:Un},{name:`profile`,path:`/profile`,label:`پروفایل`,icon:zn}],Kn=`/categories`,qn=[`/catalogs`,`/catalog-request`,`/catalog-requests`],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===`catalogs`?Zn(n,qn):e===`order-fab`||e===`cart`?n===`/cart`||n.startsWith(`/cart/`)||Zn(n,Jn):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?Kn:`/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=j(F({__name:`BottomNav`,setup(e){let r=w(),a=y(),o=Z(),s=t(()=>o.itemCount);function c(e,t){let n=t.currentTarget;if(n instanceof HTMLElement&&n.blur(),e===`/cart`){a.push(er(o.itemCount));return}a.push(e)}return(e,t)=>(_(),p(`nav`,tr,[(_(!0),p(f,null,m(n(Wn),e=>(_(),p(`button`,{key:e.name,type:`button`,class:P([`nav-item`,{active:n(Qn)(e.name,e.path,n(r).path),"nav-item--fab":e.name===`order-fab`}]),"aria-current":n(Qn)(e.name,e.path,n(r).path)?`page`:void 0,"aria-label":e.label,onClick:t=>c(e.path,t)},[k(`span`,{class:P([`nav-icon`,{"nav-icon--fab":e.name===`order-fab`}])},[(_(),u(ce(e.icon),{size:e.name===`order-fab`?26:22,"stroke-width":e.name===`order-fab`?1.8:1.5,color:e.name===`order-fab`?`#ffffff`:void 0},null,8,[`size`,`stroke-width`,`color`])),e.name===`order-fab`&&s.value>0?(_(),p(`span`,rr,i(s.value),1)):d(``,!0)],2),e.name===`order-fab`?(_(),p(`span`,ar,i(e.label),1)):(_(),p(`span`,ir,i(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 L(`/settings/public`,{auth:!1})}var lr=E(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=t(()=>lr.value?.supportPhone??null),n=t(()=>lr.value?.supportEmail??null),r=t(()=>sr(e.value));function i(){return dr()}return{load:i,supportPhone:e,supportEmail:n,supportHref:r}}var pr=F({__name:`IconHeadset`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(_(),u(N,{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=j(F({__name:`IconQemashMark`,props:{size:{default:72}},setup(e){return(t,r)=>(_(),p(`img`,{class:`brand-logo`,src:n(mr),alt:``,style:a({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=j(F({__name:`DesktopSidebar`,setup(e){let r=w(),a=y(),o=Z(),{load:c,supportPhone:l,supportHref:g}=fr();s(()=>{c()});let v=t(()=>o.itemCount),b=t(()=>o.selectedCompanyId||o.activeCart?.companyId||null);function x(e){if(e.name===`cart`){a.push(er(o.itemCount));return}a.push($n(e,b.value))}return(e,t)=>(_(),p(`aside`,_r,[k(`div`,vr,[h(gr,{size:36}),t[1]||=k(`strong`,{class:`desktop-sidebar__title`},`نادمی تکس`,-1)]),k(`nav`,yr,[(_(!0),p(f,null,m(n(Gn),e=>(_(),p(`button`,{key:e.name,type:`button`,class:P([`desktop-sidebar__item`,{active:n(Qn)(e.name,e.path,n(r).path)}]),"aria-current":n(Qn)(e.name,e.path,n(r).path)?`page`:void 0,"aria-label":e.label,title:e.label,onClick:t=>x(e)},[k(`span`,xr,[(_(),u(ce(e.icon),{size:20}))]),k(`span`,Sr,i(e.label),1),e.name===`cart`&&v.value>0?(_(),p(`span`,Cr,i(v.value),1)):d(``,!0)],10,br))),128))]),k(`div`,wr,[k(`span`,Tr,[h(pr,{size:22})]),t[2]||=k(`strong`,{class:`desktop-sidebar__support-title`},`پشتیبانی و راهنما`,-1),t[3]||=k(`p`,{class:`desktop-sidebar__support-text`},` در صورت نیاز به راهنمایی یا گزارش مشکل با تیم پشتیبانی تماس بگیرید. `,-1),k(`a`,{href:n(g)??`#`,class:P([`desktop-sidebar__support-btn`,{"desktop-sidebar__support-btn--disabled":!n(g)}]),"aria-disabled":!n(g),onClick:t[0]||=e=>!n(g)&&e.preventDefault()},` تماس با پشتیبانی `,10,Er),n(l)?(_(),p(`p`,Dr,i(n(l)),1)):d(``,!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 z()?jr():null}function Nr(){return!!z()}function Pr(e){try{e?sessionStorage.setItem(Ar,JSON.stringify(e)):sessionStorage.removeItem(Ar)}catch{}}async function Fr(e,t){let n=ye(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 L(`/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 V?e.message:`ارسال کد ناموفق بود.`}}}async function Ir(e,t){let n=ye(e);try{let e=await L(`/auth/otp/verify`,{method:`POST`,auth:!1,body:{phone:n,code:xe(t)}});return I(e.accessToken),Q(e.user),Pr(null),{success:!0,message:`ورود موفق.`,user:e.user}}catch(e){return{success:!1,message:e instanceof V?e.message:`تأیید کد ناموفق بود.`}}}function Lr(){I(null),Q(null),Pr(null)}async function Rr(){if(!z())return Q(null),null;try{let e=await L(`/auth/me`);return Q(e),e}catch{return jr()}}async function zr(e){try{let t=await L(`/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,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=Se(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]?Ce(a[0]):null,farthestDueDate:a.length?Ce(a[a.length-1]):null,rassDays:o,rassDate:Ce(s)}}function Kr(e){let t=new Date;t.setHours(0,0,0,0);let n=Se(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=R(`order`,()=>{let e=E([]),n=E([]),r=E(null),i=E(null),a=E(null),o=E(!1),s=t(()=>t=>[...e.value].sort((e,t)=>new Date(t.createdAt).getTime()-new Date(e.createdAt).getTime()));function c(t){return e.value.find(e=>e.id===t)}function l(e,t){a.value=e,r.value=`check`,n.value=[],i.value=t??null}function u(e){a.value=e.id,r.value=`check`,i.value=e.checkMode??`full`,n.value=(e.checks??[]).map(e=>({...e}))}function d(){a.value=null,n.value=[],i.value=null,r.value=null}function f(e){i.value=e}function p(e){n.value.push({...e,id:be()})}function m(e,t){let r=n.value.findIndex(t=>t.id===e);r>=0&&(n.value[r]={...n.value[r],...t})}function h(e){n.value=n.value.filter(t=>t.id!==e)}function g(e){return Gr(n.value,e??new Date)}async function _(){if(!z()){e.value=[];return}o.value=!0;try{e.value=await L(`/orders`)}catch{e.value=[]}finally{o.value=!1}}function v(){e.value=[],d()}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 L(`/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 L(`/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),d(),r}catch(e){throw Error(e instanceof V?e.message:`ثبت سفارش ناموفق بود.`)}}async function S(e,t,n){try{let r=await L(`/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 V?e.message:`ثبت روش تسویه ناموفق بود.`)}}async function C(e,t){try{await L(`/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 V?e.message:`ثبت رسید ناموفق بود.`)}}async function w(e,t,n){try{let r=await L(`/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),d(),r}catch(e){throw Error(e instanceof V?e.message:`ثبت چک‌ها ناموفق بود.`)}}async function ee(e){let t=[...new Set([e.companyId,...e.items.map(e=>e.companyId).filter(Boolean)].filter(Boolean))],n=H(),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 H().loadBankAccounts(e)}return{orders:e,draftChecks:n,draftSettlementType:r,draftCheckMode:i,draftOrderId:a,loading:o,userOrders:s,getOrderById:c,startCheckDraft:l,loadChecksIntoDraft:u,clearCheckDraft:d,setCheckMode:f,addDraftCheck:p,updateDraftCheck:m,removeDraftCheck:h,getDraftRass:g,submitOrder:x,chooseSettlement:S,submitCashReceipt:C,updateOrderChecks:w,hydrate:_,resetLocal:v,fetchOrder:b,getBankAccountsForOrder:ee,getBankAccountsForCompany:T}}),Jr=R(`notification`,()=>{let e=E([]),n=E(0),r=E(!1),i=t(()=>n.value>0);async function a(){if(!z()){e.value=[],n.value=0;return}r.value=!0;try{e.value=await L(`/notifications`),n.value=e.value.filter(e=>!e.isRead).length}catch{e.value=[],n.value=0}finally{r.value=!1}}async function o(){if(!z()){n.value=0;return}try{let e=await L(`/notifications/unread-count`);n.value=e.count}catch{}}async function s(t){let r=e.value.find(e=>e.id===t);if(!(!r||r.isRead)){r.isRead=!0,n.value=Math.max(0,n.value-1);try{await L(`/notifications/${t}/read`,{method:`PATCH`})}catch{await a()}}}async function c(){if(n.value){e.value=e.value.map(e=>({...e,isRead:!0})),n.value=0;try{await L(`/notifications/read-all`,{method:`PATCH`})}catch{await a()}}}function l(){e.value=[],n.value=0}return{items:e,unreadCount:n,loading:r,hasUnread:i,hydrate:a,refreshUnreadCount:o,markRead:s,markAllRead:c,resetLocal:l}}),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=R(`favorites`,()=>{let e=E(Xr()),n=E(!1),r=E({}),i=t(()=>new Set(e.value));function a(e){return i.value.has(e)}async function o(){try{let t=await L(`/products/favorites/ids`);e.value=t,Zr(t)}catch{e.value=Xr()}finally{n.value=!0}}async function s(t){if(!t||r.value[t])return;r.value={...r.value,[t]:!0};let n=a(t);e.value=n?e.value.filter(e=>e!==t):[...e.value,t],Zr(e.value);try{let n=await L(`/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(r){if(!(r instanceof V&&r.status===404))throw e.value=n?[...new Set([...e.value,t])]:e.value.filter(e=>e!==t),Zr(e.value),r}finally{let e={...r.value};delete e[t],r.value=e}}function c(){e.value=[],Zr([]),n.value=!1}return{ids:e,loaded:n,pending:r,isFavorite:a,hydrate:o,toggle:s,resetLocal:c}}),$r=R(`auth`,()=>{let e=E(Mr()),n=E(!1),r=E(null),i=E(Hr()),a=t(()=>!!e.value),o=t(()=>e.value?`${e.value.firstName} ${e.value.lastName}`:``),s=t(()=>e.value?.appRole===`agent`),c=t(()=>!!e.value&&e.value.appRole!==`agent`);function l(){r.value=null}function u(){i.value=null,Ur(null)}async function d(e,t){n.value=!0,r.value=null;try{let n=Hr();i.value=n;let a=t.firstName?.trim()||n?.firstName,o=t.lastName?.trim()||n?.lastName;t.isRegister&&a&&o&&(i.value={firstName:a,lastName:o},Ur(i.value));let s=await Fr(e,{isRegister:t.isRegister,firstName:a,lastName:o});return s.success||(r.value=s.message),s}finally{n.value=!1}}async function f(t,i){n.value=!0,r.value=null;let a=await Ir(t,i);return n.value=!1,a.success&&a.user?(e.value=a.user,u(),await Promise.all([H().loadCompanies(),Z().hydrate(),qr().hydrate(),Jr().hydrate(),Qr().hydrate()])):r.value=a.message,a}function p(){Lr(),e.value=null,u(),Z().resetLocal(),qr().resetLocal(),Jr().resetLocal(),Qr().resetLocal()}async function m(t){if(!e.value)return null;let n=await zr(t);return n&&(e.value=n),n}async function h(){if(e.value=Mr(),!e.value)return;let t=await Rr();e.value=t}return{user:e,loading:n,error:r,isAuthenticated:a,fullName:o,isAgent:s,isCustomerOnly:c,clearError:l,requestOtp:d,confirmOtp:f,logout:p,updateProfile:m,hydrate:h}}),ei=F({__name:`IconBell`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(_(),u(N,{icon:`vuesax-linear:notification`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),ti=F({__name:`IconChevronLeft`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(_(),u(N,{icon:`vuesax-linear:arrow-left-1`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),ni=R(`theme`,()=>{let e=ge(`ft_theme`,`system`),n=_e(),r=t(()=>e.value===`system`?n.value?`dark`:`light`:e.value),i=t(()=>r.value===`dark`);oe(()=>{let e=document.documentElement;e.classList.toggle(`dark`,i.value),e.style.colorScheme=r.value});function a(t){e.value=t}function o(){let t=[`light`,`dark`,`system`],n=t.indexOf(e.value);e.value=t[(n+1)%t.length]}function s(){e.value=i.value?`light`:`dark`}return{preference:e,resolved:r,isDark:i,setPreference:a,cyclePreference:o,toggleLightDark:s}}),ri=[`aria-label`,`title`],ii=j(F({__name:`AuthThemeToggle`,props:{variant:{default:`floating`}},setup(e){let r=ni(),{isDark:i}=B(r),a=t(()=>i.value?`vuesax-linear:sun-1`:`vuesax-linear:moon`),o=t(()=>i.value?`تغییر به تم روشن`:`تغییر به تم تاریک`);return(t,i)=>(_(),p(`button`,{type:`button`,class:P([`auth-theme-toggle`,e.variant===`inline`?`auth-theme-toggle--inline`:`auth-theme-toggle--floating`]),"aria-label":o.value,title:o.value,onClick:i[0]||=e=>n(r).toggleLightDark()},[h(N,{icon:a.value,size:18,"stroke-width":1.5},null,8,[`icon`])],10,ri))}}),[[`__scopeId`,`data-v-3a58cb84`]]),ai=[`src`],oi={key:1},si=j(F({__name:`UserAvatar`,props:{src:{},initials:{},size:{default:72}},setup(e){return(t,n)=>(_(),p(`span`,{class:`user-avatar`,style:a({width:`${e.size}px`,height:`${e.size}px`,fontSize:`${Math.round(e.size*.38)}px`})},[e.src?(_(),p(`img`,{key:0,class:`user-avatar__img`,src:e.src,alt:``},null,8,ai)):(_(),p(`span`,oi,i(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=j(F({__name:`DesktopHeader`,setup(e){let r=y(),a=$r(),o=Z(),s=Jr(),c=E(!1),l=t(()=>ve(s.unreadCount>9?`9+`:String(s.unreadCount))),u=t(()=>`${a.user?.firstName?.[0]??``}${a.user?.lastName?.[0]??``}`||`؟`),f=t(()=>o.companyNamesLabel||o.activeCart?.companyName||``);function m(){c.value=!c.value}function g(){c.value=!1,r.push(`/profile`)}function v(){c.value=!1,a.logout(),r.replace(`/welcome`)}return(e,t)=>(_(),p(`header`,ci,[t[1]||=k(`div`,{class:`desktop-header__spacer`,"aria-hidden":`true`},null,-1),k(`div`,li,[f.value?(_(),p(`span`,ui,i(f.value),1)):d(``,!0),h(ii,{variant:`inline`}),k(`button`,{type:`button`,class:`desktop-header__icon-btn`,"aria-label":`اعلان‌ها`,onClick:t[0]||=e=>n(r).push(`/profile/notifications`)},[h(ei,{size:20}),n(s).hasUnread?(_(),p(`span`,{key:0,class:`desktop-header__notif-badge`,"aria-label":`${n(s).unreadCount} اعلان خوانده‌نشده`},i(l.value),9,di)):d(``,!0)]),k(`div`,fi,[k(`button`,{type:`button`,class:`desktop-header__user`,"aria-expanded":c.value,onClick:m},[h(si,{class:`desktop-header__avatar`,src:n(a).user?.avatarUrl,initials:u.value,size:32},null,8,[`src`,`initials`]),k(`span`,mi,i(n(a).fullName),1),h(ti,{size:16,class:`desktop-header__chevron`})],8,pi),c.value?(_(),p(`div`,hi,[k(`button`,{type:`button`,onClick:g},`پروفایل`),k(`button`,{type:`button`,class:`desktop-header__menu-logout`,onClick:v},`خروج`)])):d(``,!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=F({__name:`DefaultLayout`,setup(n){let r=w(),i=t(()=>![`welcome`,`login`,`register`,`otp`,`settlement`,`check-mode`,`check-form`,`check-list`,`cash-settlement`,`order-success`].includes(r.name)&&!r.meta.hideNav),a=t(()=>[`settlement`,`check-mode`,`check-form`,`check-list`,`cash-settlement`].includes(r.name)),o=t(()=>r.name===`welcome`||r.name===`login`||r.name===`register`||r.name===`otp`);return(t,n)=>(_(),p(`div`,{class:P([`app-shell`,{"app-shell--no-nav":!i.value,"app-shell--wide":a.value,"app-shell--with-nav":i.value,"app-shell--immersive":o.value}])},[k(`div`,_i,[i.value?(_(),u(Or,{key:0})):d(``,!0),k(`div`,vi,[i.value?(_(),u(gi,{key:0})):d(``,!0),k(`main`,yi,[k(`div`,bi,[k(`div`,xi,[e(t.$slots,`default`)])])]),i.value?(_(),u(or,{key:1})):d(``,!0)])])],2))}}),Ci=[`type`,`disabled`],wi={key:0,class:`btn-spinner`},Ti=j(F({__name:`BaseButton`,props:{variant:{},size:{},block:{type:Boolean},disabled:{type:Boolean},loading:{type:Boolean},type:{}},setup(t){return(n,r)=>(_(),p(`button`,{type:t.type??`button`,class:P([`btn`,[`btn-${t.variant??`primary`}`,`btn-${t.size??`md`}`,{"btn-block":t.block}]]),disabled:t.disabled||t.loading},[t.loading?(_(),p(`span`,wi)):d(``,!0),e(n.$slots,`default`,{},void 0,!0)],10,Ci))}}),[[`__scopeId`,`data-v-3628a8bb`]]),Ei=ie({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=j(F({__name:`ConfirmDialog`,setup(e){let t=Di();function a(){ki(!1)}function o(){ki(!0)}return(e,s)=>n(t).open?(_(),p(`div`,{key:0,class:`dialog-overlay confirm-dialog-overlay`,role:`dialog`,"aria-modal":`true`,"aria-labelledby":`confirm-dialog-title`,onClick:r(a,[`self`])},[k(`div`,Ai,[k(`h3`,ji,i(n(t).title),1),k(`p`,Mi,i(n(t).message),1),k(`div`,Ni,[h(Ti,{variant:`outline`,onClick:a},{default:O(()=>[l(i(n(t).cancelLabel),1)]),_:1}),h(Ti,{variant:n(t).tone===`danger`?`danger`:`primary`,onClick:o},{default:O(()=>[l(i(n(t).confirmLabel),1)]),_:1},8,[`variant`])])])])):d(``,!0)}}),[[`__scopeId`,`data-v-2e50e2a7`]]),Fi=F({__name:`App`,setup(e){let t=$r(),r=Z(),i=qr(),a=H(),o=Jr(),c=y(),l=E(`page-fade`);function d(e){return e.split(`/`).filter(Boolean).length}return c.beforeEach((e,t)=>{if(!t.name){l.value=`page-fade`;return}let n=Mn(d(e.path)-d(t.path),-1,1);n>0?l.value=`page-forward`:n<0?l.value=`page-back`:l.value=`page-fade`}),s(async()=>{await t.hydrate(),t.isAuthenticated&&await Promise.all([a.loadCompanies(),r.hydrate(),i.hydrate(),o.hydrate()])}),he(()=>{t.isAuthenticated&&o.refreshUnreadCount()},6e4,{immediate:!1}),(e,t)=>(_(),p(f,null,[h(Si,null,{default:O(()=>[h(n(tn),null,{default:O(({Component:e,route:t})=>[h(pe,{name:l.value,mode:`out-in`},{default:O(()=>[(_(),p(`div`,{key:t.path,class:`page-transition page-shell`},[(_(),u(ce(e)))]))]),_:2},1032,[`name`])]),_:1})]),_:1}),h(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=nn({history:wt(`/`),routes:[{path:`/welcome`,name:`welcome`,component:()=>$(()=>import(`./WelcomeView-DCG7Drw-.js`),__vite__mapDeps([0,1,2,3,4])),meta:{guest:!0,hideNav:!0}},{path:`/login`,name:`login`,component:()=>$(()=>import(`./LoginView-DCgkTu-r.js`),__vite__mapDeps([5,1,2,6,7,8,9,10,11,3,12])),meta:{guest:!0,hideNav:!0}},{path:`/register`,name:`register`,component:()=>$(()=>import(`./RegisterView-EXVxZpxx.js`),__vite__mapDeps([13,1,2,14,15,6,7,8,9,10,11,16,17])),meta:{guest:!0,hideNav:!0}},{path:`/otp`,name:`otp`,component:()=>$(()=>import(`./OtpView-iifaPe_r.js`),__vite__mapDeps([18,1,2,15,6,19,8,9,11,3,20,21])),meta:{guest:!0,hideNav:!0}},{path:`/`,name:`home`,component:()=>$(()=>import(`./HomeView-sRBpjtF9.js`),__vite__mapDeps([22,1,2,6,19,23,24,25,26,27,28,29,30])),meta:{requiresAuth:!0}},{path:`/companies`,redirect:`/categories`},{path:`/categories`,name:`categories`,component:()=>$(()=>import(`./CategoriesView-BNMtfoIp.js`),__vite__mapDeps([31,1,2,19,16,23,24,25,26,27,32,33,34,35,36])),meta:{requiresAuth:!0}},{path:`/products`,name:`products`,component:()=>$(()=>import(`./ProductsView-xMKufARc.js`),__vite__mapDeps([37,1,2,14,15,38,16,23,24,25,26,39,40,19,41,42,43,33,34,35,29,44])),meta:{requiresAuth:!0}},{path:`/product`,name:`product`,component:()=>$(()=>import(`./ProductDetailView-7kd_faet.js`),__vite__mapDeps([45,1,2,6,46,26,19,23,24,47,25,27,39,35,28,29,48])),meta:{requiresAuth:!0}},{path:`/catalogs`,name:`catalogs`,component:()=>$(()=>import(`./CatalogsHubView-CHO1oP_S.js`),__vite__mapDeps([49,1,2,6,46,26,19,23,24,25,27,50,42,43,32,51])),meta:{requiresAuth:!0}},{path:`/catalogs/:catalogId`,name:`catalog-detail`,component:()=>$(()=>import(`./CatalogDetailView-D9HeT7Iq.js`),__vite__mapDeps([52,1,2,6,46,26,19,23,24,47,25,27,50,39,53])),meta:{requiresAuth:!0}},{path:`/catalog-request`,name:`catalog-request`,component:()=>$(()=>import(`./CatalogRequestView-CbekVMOP.js`),__vite__mapDeps([54,1,2,6,23,24,25,26,40,19,41,55,56])),meta:{requiresAuth:!0}},{path:`/catalog-requests`,name:`catalog-requests`,component:()=>$(()=>import(`./CatalogRequestsView--TWbJobZ.js`),__vite__mapDeps([57,1,2,6,40,19,41,55,26,58])),meta:{requiresAuth:!0}},{path:`/favorites`,name:`favorites`,component:()=>$(()=>import(`./FavoritesView-HolTmpnM.js`),__vite__mapDeps([59,1,2,23,24,25,26,40,19,41,29,60])),meta:{requiresAuth:!0}},{path:`/customers`,name:`customers`,component:()=>$(()=>import(`./CustomersView-Khlai4Rw.js`),__vite__mapDeps([61,1,2,6,38,23,24,25,26,40,19,41,42,43,62,7,8,9,11,63,64,65,66])),meta:{requiresAuth:!0}},{path:`/customers/new`,redirect:e=>({path:`/customers`,query:{...e.query,create:`1`}})},{path:`/customer`,name:`customer`,component:()=>$(()=>import(`./CustomerDetailView-Czbonf-B.js`),__vite__mapDeps([67,1,2,6,68,69,10,20,70,23,24,25,26,40,19,41,71,72,62,7,8,9,11,63,64,65,73])),meta:{requiresAuth:!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-7lF3bXsi.js`),__vite__mapDeps([74,1,2,14,15,6,19,75,23,24,25,26,27,71,72,76])),meta:{requiresAuth:!0}},{path:`/reminder`,name:`reminder`,component:()=>$(()=>import(`./ReminderDetailView-DHzMhSyb.js`),__vite__mapDeps([77,1,2,23,24,25,26,40,19,41,78])),meta:{requiresAuth:!0,hideNav:!0}},{path:`/companies/:companyId/catalogs`,name:`company-catalogs`,component:()=>$(()=>import(`./CatalogListView-BKPppl-b.js`),__vite__mapDeps([79,1,2,46,26,80,81,23,24,40,19,41,42,43,82])),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-DcIrdqu4.js`),__vite__mapDeps([83,1,2,6,80,81,19,8,9,16,84,85,70,34,86])),meta:{requiresAuth:!0}},{path:`/orders`,name:`orders`,component:()=>$(()=>import(`./OrdersView-ZqpETR7Y.js`),__vite__mapDeps([87,1,2,6,46,26,80,81,68,19,69,38,75,88])),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-F8UnKRJu.js`),__vite__mapDeps([89,1,2,14,15,6,7,68,19,8,9,11,90,63,64,91,92,71,72,93])),meta:{requiresAuth:!0}},{path:`/orders/:id/success`,name:`order-success`,component:()=>$(()=>import(`./OrderSuccessView-BpOXWOi1.js`),__vite__mapDeps([94,1,2,6,27,40,19,41,95])),meta:{requiresAuth:!0,hideNav:!0}},{path:`/orders/:id/settlement`,name:`settlement`,component:()=>$(()=>import(`./SettlementTypeView-Ci4oR-Ca.js`),__vite__mapDeps([96,1,2,6,8,9,84,85,40,19,41,90,97,98])),meta:{requiresAuth:!0,hideNav:!0}},{path:`/orders/:id/cash`,name:`cash-settlement`,component:()=>$(()=>import(`./CashSettlementView-DmaDYQvf.js`),__vite__mapDeps([99,1,2,6,46,26,40,19,41,97,90,100])),meta:{requiresAuth:!0,hideNav:!0}},{path:`/orders/:id/check-mode`,name:`check-mode`,component:()=>$(()=>import(`./CheckModeSelectView-pdkEZrIl.js`),__vite__mapDeps([101,1,2,6,20,40,19,41,97,90,102])),meta:{requiresAuth:!0,hideNav:!0}},{path:`/orders/:id/check-form`,name:`check-form`,component:()=>$(()=>import(`./CheckFormView-DApWVLTM.js`),__vite__mapDeps([103,1,2,6,7,8,9,11,40,19,41,97,90,63,64,91,92,71,72,104])),meta:{requiresAuth:!0,hideNav:!0}},{path:`/orders/:id/check-list`,name:`check-list`,component:()=>$(()=>import(`./CheckListView-C2RmOScu.js`).then(e=>e.n),__vite__mapDeps([105,1,2,6,80,81,19,8,9,97,90,106])),meta:{requiresAuth:!0,hideNav:!0}},{path:`/profile`,name:`profile`,component:()=>$(()=>import(`./ProfileView-DnQpKT74.js`),__vite__mapDeps([107,1,2,6,68,23,24,25,26,108])),meta:{requiresAuth:!0}},{path:`/profile/edit`,name:`profile-edit`,component:()=>$(()=>import(`./ProfileEditView-wzEZQKJ2.js`),__vite__mapDeps([109,1,2,8,9,11,63,64,110,19,111,112])),meta:{requiresAuth:!0}},{path:`/profile/security`,name:`profile-security`,component:()=>$(()=>import(`./ProfileSecurityView-oki8MoKN.js`),__vite__mapDeps([113,1,2,8,9,11,63,64,110,19,111,114])),meta:{requiresAuth:!0}},{path:`/profile/notifications`,name:`profile-notifications`,component:()=>$(()=>import(`./ProfileNotificationsView-D_wDB5-Q.js`),__vite__mapDeps([115,1,2,6,80,81,110,19,111,116])),meta:{requiresAuth:!0}},{path:`/profile/display`,name:`profile-display`,component:()=>$(()=>import(`./ProfileDisplayView-DnuPC4UZ.js`),__vite__mapDeps([117,1,2,15,110,19,111,118])),meta:{requiresAuth:!0}},{path:`/profile/checks`,name:`profile-checks`,component:()=>$(()=>import(`./ProfileChecksView-Tp62gSX1.js`),__vite__mapDeps([119,105,1,2,6,80,81,19,8,9,97,90,106])),meta:{requiresAuth:!0}}],scrollBehavior(){return{top:0}}});zi.beforeEach(e=>{let t=Nr();return e.meta.requiresAuth&&!t?e.name===`home`||e.path===`/`?{name:`welcome`}:{name:`welcome`,query:{redirect:e.fullPath}}:e.meta.guest&&t||e.meta.agentOnly&&jr()?.appRole!==`agent`?{name:`home`}:!0});var Bi=fe(Fi),Vi=me();Bi.use(Vi),Bi.use(zi),ni(Vi),Bi.mount(`#app`);export{Z as A,Hn as C,Rn as D,zn as E,Ln as O,Un as S,Bn 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,In 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,Vn as w,Kn as x,cr as y}; \ No newline at end of file diff --git a/dist/assets/index-fdhs4HNc.js b/dist/assets/index-fdhs4HNc.js deleted file mode 100644 index 66feacb..0000000 --- a/dist/assets/index-fdhs4HNc.js +++ /dev/null @@ -1,2 +0,0 @@ -const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/WelcomeView-CMxZax1Y.js","assets/BasicIcon-C6boaehV.js","assets/BasicIcon-QF_b9Svq.css","assets/login-fabric-CzrIXTnD.js","assets/WelcomeView-Bue6hk9x.css","assets/LoginView-CGhkw0FP.js","assets/http-BC1hNfZ4.js","assets/format-BHJptHdF.js","assets/validation-BD7oi-2I.js","assets/FormErrorBanner-CjdBfIQT.js","assets/FormErrorBanner-Hje8L-00.css","assets/IconPhone-C0bnM4fV.js","assets/formErrors-DglFjYkZ.js","assets/LoginView-DzSYxjJ8.css","assets/RegisterView-P-RrLS2U.js","assets/dist-B7sUlTMM.js","assets/dist-CUUvbY4x.js","assets/IconDiamond-Bgv1zgqc.js","assets/RegisterView-DGOdJpXQ.css","assets/OtpView-BS4oUATh.js","assets/IconChevronBack-DORV2H0q.js","assets/IconEditPen-DLV3_yq2.js","assets/OtpView-w9hAwgso.css","assets/HomeView-hY7x8Ola.js","assets/PageSkeleton-sKuEY4NI.js","assets/PageSkeleton-CaQ4bDKV.css","assets/crm-DmqasSZ_.js","assets/useGoBack-CgNp0uP9.js","assets/quick-catalog-request-Di7-t6Ua.js","assets/IconHeart-CZMe29Nz.js","assets/HomeView-DYxyNGVU.css","assets/CompanySelectView-DXNHvGNP.js","assets/catalog-s7nVUdlj.js","assets/IconFamBaftLogo-BaP40Dff.js","assets/IconFamBaftLogo-BaDEschB.css","assets/CompanySelectView-wH7uHLvB.css","assets/CategoriesView-Da1Yz01j.js","assets/IconSearch-DOnq8ybc.js","assets/categoryIcons-eyHye9W7.js","assets/IconLayoutGrid-E-Q8Z5rF.js","assets/IconShoppingBag-Bq21_Txe.js","assets/CategoriesView-BRz9akNh.css","assets/ProductsView-Dhc6PK3T.js","assets/IconFilter-D9NdLZ7w.js","assets/colorSwatch-BgOH1LE5.js","assets/PageHeader-Cd04Z6F_.js","assets/PageHeader-CDhs0XKF.css","assets/SearchField-CRmbblW7.js","assets/SearchField-BSod6Xak.css","assets/ProductsView-CQle6SsP.css","assets/ProductDetailView-BUGwmJWw.js","assets/IconShare-1kao-fAR.js","assets/ProductDetailView-BlsIoIkr.css","assets/CatalogsHubView-wDSJNJeF.js","assets/catalogGallery-Khy0nWqc.js","assets/CatalogsHubView-Cnl22g6I.css","assets/CatalogDetailView-Dp5X6av6.js","assets/CatalogDetailView-CZHNGZXq.css","assets/CatalogRequestView-BQv6HkdJ.js","assets/catalogRequests-D1kBtGqL.js","assets/CatalogRequestView-CYRKO3rB.css","assets/CatalogRequestsView-BMwSCi02.js","assets/CatalogRequestsView-DUzaL-Pf.css","assets/FavoritesView-BFwf0qCn.js","assets/FavoritesView-C_rd5Wxy.css","assets/CustomersView-_yD0xFZV.js","assets/BaseInput-C6eO_Qjy.js","assets/BaseInput-BKq5OFkZ.css","assets/CustomersView--0EpADIk.css","assets/CustomerDetailView-DC-nbBZ9.js","assets/constants-DXXK14Zz.js","assets/IconProgressClock-ChlGvv7_.js","assets/IconClipboardEmpty-5Av_Gh0W.js","assets/PersianDateInput-2Yt1srLL.js","assets/PersianDateInput-CQDjJN3F.css","assets/CustomerDetailView-U6N_pEg2.css","assets/RemindersView-xi9w9NYU.js","assets/IconMoreVertical-BPkOm_2U.js","assets/RemindersView-BsYkMSSC.css","assets/ReminderDetailView-DeVZIytU.js","assets/ReminderDetailView-Bgb1iArR.css","assets/CatalogListView-B7OmS9fn.js","assets/EmptyState-C_QQeA_h.js","assets/EmptyState-D6A5GmrP.css","assets/CatalogListView-ClQNdMb8.css","assets/CartView-DRuvPkVq.js","assets/CheckoutStepper-CqUviuW7.js","assets/CheckoutStepper-hqk-kVCz.css","assets/CartView-7hxFuJin.css","assets/OrdersView-BqL6_Kme.js","assets/OrdersView-Te_tCICZ.css","assets/OrderDetailView-BAbo40bP.js","assets/orderInvoice-B0L1Aeuk.js","assets/CurrencyInput-Dl1ITOQ-.js","assets/CurrencyInput-ByU-DLUz.css","assets/OrderDetailView-DfQWMJF8.css","assets/OrderSuccessView-DpNlCco5.js","assets/OrderSuccessView-D_odiYNR.css","assets/SettlementTypeView-Bo02Lk5z.js","assets/useRequirePricedOrder-BV4a0r6K.js","assets/IconCheckBook-DwIUojJc.js","assets/SettlementTypeView-C3wqclvS.css","assets/CashSettlementView-CT_ObFX-.js","assets/CashSettlementView-C8IRazOR.css","assets/CheckModeSelectView-Df1a9jxd.js","assets/CheckModeSelectView-BZlKzxFL.css","assets/CheckFormView-Cpz48Srr.js","assets/CheckFormView-Cgp6kUZ2.css","assets/CheckListView-BM6vq5YZ.js","assets/CheckListView-B_ogsKeK.css","assets/ProfileView-BnfYcxhD.js","assets/ProfileView-DSZdSgjW.css","assets/ProfileEditView-BMYT8anS.js","assets/ProfileSubpageLayout-PN2YWH-s.js","assets/ProfileSubpageLayout-W3vfIprY.css","assets/ProfileEditView-Cqvr3yiG.css","assets/ProfileSecurityView-K8rOJGfa.js","assets/ProfileSecurityView-BjbybMSz.css","assets/ProfileNotificationsView-qTfW9-vz.js","assets/ProfileNotificationsView-BqMkB4wX.css","assets/ProfileDisplayView-BeAOZ6_e.js","assets/ProfileDisplayView-CDaE5E6F.css","assets/ProfileChecksView-CeWWUlq-.js"])))=>i.map(i=>d[i]); -import{A as e,Ct as t,D as n,Et as r,G as i,H as a,L as o,M as s,N as c,O as l,P as u,Q as d,R as f,St as p,Tt as m,W as h,X as g,Y as _,Z as v,_ as y,_t as ee,a as b,c as x,d as S,et as C,f as w,ft as T,g as te,h as ne,ht as re,i as E,j as D,l as O,m as ie,mt as k,n as A,nt as ae,o as j,p as oe,q as se,r as ce,rt as M,s as N,t as P,tt as le,u as ue,v as F,x as de,y as fe,z as I}from"./BasicIcon-C6boaehV.js";import{a as pe,i as L,n as R,o as z,r as B,s as V,t as H}from"./http-BC1hNfZ4.js";import{l as me}from"./dist-CUUvbY4x.js";import{i as he,r as ge}from"./dist-B7sUlTMM.js";import{_ as _e,c as ve,s as ye,t as be,u as xe,v as Se}from"./format-BHJptHdF.js";import{r as Ce}from"./validation-BD7oi-2I.js";import{t as U}from"./catalog-s7nVUdlj.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 W=typeof document<`u`,we=/#/g,Te=/&/g,Ee=/\//g,De=/=/g,Oe=/\?/g,ke=/\+/g,Ae=/%5B/g,je=/%5D/g,Me=/%5E/g,Ne=/%60/g,Pe=/%7B/g,Fe=/%7C/g,Ie=/%7D/g,Le=/%20/g;function Re(e){return e==null?``:encodeURI(``+e).replace(Fe,`|`).replace(Ae,`[`).replace(je,`]`)}function ze(e){return Re(e).replace(Pe,`{`).replace(Ie,`}`).replace(Me,`^`)}function Be(e){return Re(e).replace(ke,`%2B`).replace(Le,`+`).replace(we,`%23`).replace(Te,`%26`).replace(Ne,"`").replace(Pe,`{`).replace(Ie,`}`).replace(Me,`^`)}function Ve(e){return Be(e).replace(De,`%3D`)}function He(e){return Re(e).replace(we,`%23`).replace(Oe,`%3F`)}function Ue(e){return He(e).replace(Ee,`%2F`)}function We(e){if(e==null)return null;try{return decodeURIComponent(``+e)}catch{}return``+e}var Ge=/\/$/,Ke=e=>e.replace(Ge,``);function qe(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=et(r??t,n),{fullPath:r+a+o,path:r,query:i,hash:We(o)}}function Je(e,t){let n=t.query?e(t.query):``;return t.path+(n&&`?`)+n+(t.hash||``)}function Ye(e,t){return!t||!e.toLowerCase().startsWith(t.toLowerCase())?e:e.slice(t.length)||`/`}function Xe(e,t,n){let r=t.matched.length-1,i=n.matched.length-1;return r>-1&&r===i&&G(t.matched[r],n.matched[i])&&Ze(t.params,n.params)&&e(t.query)===e(n.query)&&t.hash===n.hash}function G(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function Ze(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(var n in e)if(!Qe(e[n],t[n]))return!1;return!0}function Qe(e,t){return j(e)?$e(e,t):j(t)?$e(t,e):(e&&e.valueOf())===(t&&t.valueOf())}function $e(e,t){return j(t)?e.length===t.length&&e.every((e,n)=>e===t[n]):e.length===1&&e[0]===t}function et(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 K={path:`/`,name:void 0,params:{},query:{},hash:``,fullPath:`/`,matched:[],meta:{},redirectedFrom:void 0};function tt(e){if(!e)if(W){let t=document.querySelector(`base`);e=t&&t.getAttribute(`href`)||`/`,e=e.replace(/^\w+:\/\/[^/]+/,``)}else e=`/`;return e[0]!==`/`&&e[0]!==`#`&&(e=`/`+e),Ke(e)}var nt=/^[^#]+#/;function rt(e,t){return e.replace(nt,`#`)+t}function it(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 at=()=>({left:window.scrollX,top:window.scrollY});function ot(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=it(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 st(e,t){return(history.state?history.state.position-t:-1)+e}var ct=new Map;function lt(e,t){ct.set(e,t)}function ut(e){let t=ct.get(e);return ct.delete(e),t}function dt(e){return typeof e==`string`||e&&typeof e==`object`}function ft(e){return typeof e==`string`||typeof e==`symbol`}function pt(e){let t={};if(e===``||e===`?`)return t;let n=(e[0]===`?`?e.slice(1):e).split(`&`);for(let e=0;ee&&Be(e)):[r&&Be(r)]).forEach(e=>{e!==void 0&&(t+=(t.length?`&`:``)+n,e!=null&&(t+=`=`+e))})}return t}function ht(e){let t={};for(let n in e){let r=e[n];r!==void 0&&(t[n]=j(r)?r.map(e=>e==null?null:``+e):r==null?r:``+r)}return t}function q(){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 J(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(b(4,{from:n,to:t})):e instanceof Error?c(e):dt(e)?c(b(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 gt(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(O(s)){let c=(s.__vccOpts||s)[t];c&&a.push(J(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=N(a)?a.default:a;o.mods[e]=a,o.components[e]=s;let c=(s.__vccOpts||s)[t];return c&&J(c,n,r,o,e,i)()}))}}return a}function _t(e,t){let n=[],r=[],i=[],a=Math.max(t.matched.length,e.matched.length);for(let o=0;oG(e,a))?r.push(a):n.push(a));let s=e.matched[o];s&&(t.matched.find(e=>G(e,s))||i.push(s))}return[n,r,i]}var vt=()=>location.protocol+`//`+location.host;function yt(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),Ye(n,``)}return Ye(n,e)+r+i}function bt(e,t,n,r){let i=[],a=[],o=null,s=({state:a})=>{let s=yt(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(E({},e.state,{scroll:at()}),``)}}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 xt(e,t,n,r=!1,i=!1){return{back:e,current:t,forward:n,replaced:r,position:window.history.length,scroll:i?at():null}}function St(e){let{history:t,location:n}=window,r={value:yt(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:vt()+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,E({},t.state,xt(i.value.back,e,i.value.forward,!0),n,{position:i.value.position}),!0),r.value=e}function s(e,n){let o=E({},i.value,t.state,{forward:e,scroll:at()});a(o.current,o,!0),a(e,E({},xt(r.value,e,null),{position:o.position+1},n),!1),r.value=e}return{location:r,state:i,push:s,replace:o}}function Ct(e){e=tt(e);let t=St(e),n=bt(e,t.state,t.location,t.replace);function r(e,t=!0){t||n.pauseListeners(),history.go(e)}let i=E({location:``,base:e,go:r,createHref:rt.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 wt={type:0,value:``},Tt=/[a-zA-Z0-9_]/;function Et(e){if(!e)return[[]];if(e===`/`)return[[wt]];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 Mt(e,t){let n=0,r=e.score,i=t.score;for(;n0&&t[t.length-1]<0}var Pt={strict:!1,end:!0,sensitive:!1};function Ft(e,t,n){let r=At(Et(e.path),n),i=E(r,{record:e,parent:t,children:[],alias:[]});return t&&!i.record.aliasOf==!t.record.aliasOf&&t.children.push(i),i}function It(e,t){let n=[],r=new Map;t=S(Pt,t);function i(e){return r.get(e)}function a(e,n,r){let i=!r,s=Rt(e);s.aliasOf=r&&r.record;let l=S(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(Rt(E({},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=Ft(t,n,l),r?r.alias.push(d):(f||=d,f!==d&&f.alias.push(d),i&&e.name&&!Bt(d)&&o(e.name)),Wt(d)&&c(d),s.children){let e=s.children;for(let t=0;t{o(f)}:w}function o(e){if(ft(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=Ht(e,n);n.splice(t,0,e),e.record.name&&!Bt(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 b(1,{location:e});s=i.record.name,a=E(Lt(t.params,i.keys.filter(e=>!e.optional).concat(i.parent?i.parent.keys.filter(e=>e.optional):[]).map(e=>e.name)),e.params&&Lt(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 b(1,{location:e,currentLocation:t});s=i.record.name,a=E({},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:Vt(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 Lt(e,t){let n={};for(let r of t)r in e&&(n[r]=e[r]);return n}function Rt(e){let t={path:e.path,redirect:e.redirect,name:e.name,meta:e.meta||{},aliasOf:e.aliasOf,beforeEnter:e.beforeEnter,props:zt(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 zt(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 Bt(e){for(;e;){if(e.record.aliasOf)return!0;e=e.parent}return!1}function Vt(e){return e.reduce((e,t)=>E(e,t.meta),{})}function Ht(e,t){let n=0,r=t.length;for(;n!==r;){let i=n+r>>1;Mt(e,t[i])<0?r=i:n=i+1}let i=Ut(e);return i&&(r=t.lastIndexOf(i,r-1)),r}function Ut(e){let t=e;for(;t=t.parent;)if(Wt(t)&&Mt(e,t)===0)return t}function Wt({record:e}){return!!(e.name||e.components&&Object.keys(e.components).length||e.redirect)}function Gt(t){let n=h(ie),r=h(oe),i=e(()=>{let e=p(t.to);return n.resolve(e)}),a=e(()=>{let{matched:e}=i.value,{length:t}=e,n=e[t-1],a=r.matched;if(!n||!a.length)return-1;let o=a.findIndex(G.bind(null,n));if(o>-1)return o;let s=Xt(e[t-2]);return t>1&&Xt(n)===s&&a[a.length-1].path!==s?a.findIndex(G.bind(null,e[t-2])):o}),o=e(()=>a.value>-1&&Yt(r.params,i.value.params)),s=e(()=>a.value>-1&&a.value===r.matched.length-1&&Ze(r.params,i.value.params));function c(e={}){if(Jt(e)){let e=n[p(t.replace)?`replace`:`push`](p(t.to)).catch(w);return t.viewTransition&&typeof document<`u`&&`startViewTransition`in document&&document.startViewTransition(()=>e),e}return Promise.resolve()}return{route:i,href:e(()=>i.value.href),isActive:o,isExactActive:s,navigate:c}}function Kt(e){return e.length===1?e[0]:e}var qt=I({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:Gt,setup(t,{slots:n}){let r=T(Gt(t)),{options:i}=h(ie),o=e(()=>({[Zt(t.activeClass,i.linkActiveClass,`router-link-active`)]:r.isActive,[Zt(t.exactActiveClass,i.linkExactActiveClass,`router-link-exact-active`)]:r.isExactActive}));return()=>{let e=n.default&&Kt(n.default(r));return t.custom?e:a(`a`,{"aria-current":r.isExactActive?t.ariaCurrentValue:null,href:r.href,onClick:r.navigate,class:o.value},e)}}});function Jt(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 Yt(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(!j(i)||i.length!==r.length||r.some((e,t)=>e.valueOf()!==i[t].valueOf()))return!1}return!0}function Xt(e){return e?e.aliasOf?e.aliasOf.path:e.path:``}var Zt=(e,t,n)=>e??t??n,Qt=I({name:`RouterView`,inheritAttrs:!1,props:{name:{type:String,default:`default`},route:Object},compatConfig:{MODE:3},setup(t,{attrs:n,slots:r}){let i=h(ne),o=e(()=>t.route||i.value),s=h(F,0),c=e(()=>{let e=p(s),{matched:t}=o.value,n;for(;(n=t[e])&&!n.components;)e++;return e}),l=e(()=>o.value.matched[c.value]);g(F,e(()=>c.value+1)),g(ue,l),g(ne,o);let u=k();return le(()=>[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||!G(t,i)||!r)&&(t.enterCallbacks[n]||[]).forEach(t=>t(e))},{flush:`post`}),()=>{let e=o.value,i=t.name,s=l.value,c=s&&s.components[i];if(!c)return $t(r.default,{Component:c,route:e});let d=s.props[i],f=d?d===!0?e.params:typeof d==`function`?d(e):d:null,p=a(c,E({},f,n,{onVnodeUnmounted:e=>{e.component.isUnmounted&&(s.instances[i]=null)},ref:u}));return $t(r.default,{Component:p,route:e})||p}}});function $t(e,t){if(!e)return null;let n=e(t);return n.length===1?n[0]:n}var en=Qt;function tn(e){let t=It(e.routes,e),n=e.parseQuery||pt,r=e.stringifyQuery||mt,a=e.history,o=q(),s=q(),c=q(),l=ee(K),u=K;W&&e.scrollBehavior&&`scrollRestoration`in history&&(history.scrollRestoration=`manual`);let d=ce.bind(null,e=>``+e),f=ce.bind(null,Ue),m=ce.bind(null,We);function h(e,n){let r,i;return ft(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,i){if(i=E({},i||l.value),typeof e==`string`){let r=qe(n,e,i.path),o=t.resolve({path:r.path},i),s=a.createHref(r.fullPath);return E(r,o,{params:m(o.params),redirectedFrom:void 0,href:s})}let o;if(e.path!=null)o=E({},e,{path:qe(n,e.path,i.path).path});else{let t=E({},e.params);for(let e in t)t[e]??delete t[e];o=E({},e,{params:f(t)}),i.params=f(i.params)}let s=t.resolve(o,i),c=e.hash||``;s.params=d(m(s.params));let u=Je(r,E({},e,{hash:ze(c),path:s.path})),p=a.createHref(u);return E({fullPath:u,hash:c,query:r===mt?ht(e.query):e.query||{}},s,{redirectedFrom:void 0,href:p})}function S(e){return typeof e==`string`?qe(n,e,l.value.path):E({},e)}function C(e,t){if(u!==e)return b(8,{from:t,to:e})}function T(e){return O(e)}function te(e){return T(E(S(e),{replace:!0}))}function D(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=S(i):{path:i},i.params={}),E({query:e.query,hash:e.hash,params:i.path==null?e.params:{}},i)}}function O(e,t){let n=u=y(e),i=l.value,a=e.state,o=e.force,s=e.replace===!0,c=D(n,i);if(c)return O(E(S(c),{state:typeof c==`object`?E({},a,c.state):a,force:o,replace:s}),t||n);let d=n;d.redirectedFrom=t;let f;return!o&&Xe(r,i,n)&&(f=b(16,{to:d,from:i}),pe(i,i,!0,!1)),(f?Promise.resolve(f):ae(d,i)).catch(e=>x(e)?x(e,2)?e:I(e):de(e,d,i)).then(e=>{if(e){if(x(e,2))return O(E({replace:s},S(e.to),{state:typeof e.to==`object`?E({},a,e.to.state):a,force:o}),t||d)}else e=M(d,i,!0,s,a);return se(d,i,e),e})}function k(e,t){let n=C(e,t);return n?Promise.reject(n):Promise.resolve()}function A(e){let t=z.values().next().value;return t&&typeof t.runWithContext==`function`?t.runWithContext(e):e()}function ae(e,t){let n,[r,i,a]=_t(e,t);n=gt(r.reverse(),`beforeRouteLeave`,e,t);for(let i of r)i.leaveGuards.forEach(r=>{n.push(J(r,e,t))});let c=k.bind(null,e,t);return n.push(c),V(n).then(()=>{n=[];for(let r of o.list())n.push(J(r,e,t));return n.push(c),V(n)}).then(()=>{n=gt(i,`beforeRouteUpdate`,e,t);for(let r of i)r.updateGuards.forEach(r=>{n.push(J(r,e,t))});return n.push(c),V(n)}).then(()=>{n=[];for(let r of a)if(r.beforeEnter)if(j(r.beforeEnter))for(let i of r.beforeEnter)n.push(J(i,e,t));else n.push(J(r.beforeEnter,e,t));return n.push(c),V(n)}).then(()=>(e.matched.forEach(e=>e.enterCallbacks={}),n=gt(a,`beforeRouteEnter`,e,t,A),n.push(c),V(n))).then(()=>{n=[];for(let r of s.list())n.push(J(r,e,t));return n.push(c),V(n)}).catch(e=>x(e,8)?e:Promise.reject(e))}function se(e,t,n){c.list().forEach(r=>A(()=>r(e,t,n)))}function M(e,t,n,r,i){let o=C(e,t);if(o)return o;let s=t===K,c=W?history.state:{};n&&(r||s?a.replace(e.fullPath,E({scroll:s&&c&&c.scroll},i)):a.push(e.fullPath,i)),l.value=e,pe(e,t,n,s),I()}let N;function P(){N||=a.listen((e,t,n)=>{if(!B.listening)return;let r=y(e),i=D(r,B.currentRoute.value);if(i){O(E(i,{replace:!0,force:!0}),r).catch(w);return}u=r;let o=l.value;W&<(st(o.fullPath,n.delta),at()),ae(r,o).catch(e=>x(e,12)?e:x(e,2)?(O(E(S(e.to),{force:!0}),r).then(e=>{x(e,20)&&!n.delta&&n.type===`pop`&&a.go(-1,!1)}).catch(w),Promise.reject()):(n.delta&&a.go(-n.delta,!1),de(e,r,o))).then(e=>{e||=M(r,o,!1),e&&(n.delta&&!x(e,8)?a.go(-n.delta,!1):n.type===`pop`&&x(e,20)&&a.go(-1,!1)),se(r,o,e)}).catch(w)})}let le=q(),ue=q(),F;function de(e,t,n){I(e);let r=ue.list();return r.length?r.forEach(r=>r(e,t,n)):console.error(e),Promise.reject(e)}function fe(){return F&&l.value!==K?Promise.resolve():new Promise((e,t)=>{le.add([e,t])})}function I(e){return F||(F=!e,P(),le.list().forEach(([t,n])=>e?n(e):t()),le.reset()),e}function pe(t,n,r,a){let{scrollBehavior:o}=e;if(!W||!o)return Promise.resolve();let s=!r&&ut(st(t.fullPath,0))||(a||!r)&&history.state&&history.state.scroll||null;return i().then(()=>o(t,n,s)).then(e=>t===l.value&&e&&ot(e)).catch(e=>t===l.value&&de(e,t,n))}let L=e=>a.go(e),R,z=new Set,B={currentRoute:l,listening:!0,addRoute:h,removeRoute:g,clearRoutes:t.clearRoutes,hasRoute:v,getRoutes:_,resolve:y,options:e,push:T,replace:te,go:L,back:()=>L(-1),forward:()=>L(1),beforeEach:o.add,beforeResolve:s.add,afterEach:c.add,onError:ue.add,isReady:fe,install(e){e.component(`RouterLink`,qt),e.component(`RouterView`,en),e.config.globalProperties.$router=B,Object.defineProperty(e.config.globalProperties,"$route",{enumerable:!0,get:()=>p(l)}),W&&!R&&l.value===K&&(R=!0,T(a.location).catch(e=>{}));let t={};for(let e in K)Object.defineProperty(t,e,{get:()=>l.value[e],enumerable:!0});e.provide(ie,B),e.provide(oe,re(t)),e.provide(ne,l);let n=e.unmount;z.add(e),e.unmount=function(){z.delete(e),z.size<1&&(u=K,N&&N(),N=null,l.value=K,R=!1,F=!1),n()}}};function V(e){return e.reduce((e,t)=>e.then(()=>A(t)),Promise.resolve())}return B}var nn=typeof global==`object`&&global&&global.Object===Object&&global,rn=typeof self==`object`&&self&&self.Object===Object&&self,an=(nn||rn||Function(`return this`)()).Symbol,on=Object.prototype,sn=on.hasOwnProperty,cn=on.toString,Y=an?an.toStringTag:void 0;function ln(e){var t=sn.call(e,Y),n=e[Y];try{e[Y]=void 0;var r=!0}catch{}var i=cn.call(e);return r&&(t?e[Y]=n:delete e[Y]),i}var un=Object.prototype.toString;function dn(e){return un.call(e)}var fn=`[object Null]`,pn=`[object Undefined]`,mn=an?an.toStringTag:void 0;function hn(e){return e==null?e===void 0?pn:fn:mn&&mn in Object(e)?ln(e):dn(e)}function gn(e){return typeof e==`object`&&!!e}var _n=`[object Symbol]`;function vn(e){return typeof e==`symbol`||gn(e)&&hn(e)==_n}var yn=/\s/;function bn(e){for(var t=e.length;t--&&yn.test(e.charAt(t)););return t}var xn=/^\s+/;function Sn(e){return e&&e.slice(0,bn(e)+1).replace(xn,``)}function Cn(e){var t=typeof e;return e!=null&&(t==`object`||t==`function`)}var wn=NaN,Tn=/^[-+]0x[0-9a-f]+$/i,En=/^0b[01]+$/i,Dn=/^0o[0-7]+$/i,On=parseInt;function kn(e){if(typeof e==`number`)return e;if(vn(e))return wn;if(Cn(e)){var t=typeof e.valueOf==`function`?e.valueOf():e;e=Cn(t)?t+``:t}if(typeof e!=`string`)return e===0?e:+e;e=Sn(e);var n=En.test(e);return n||Dn.test(e)?On(e.slice(2),n?2:8):Tn.test(e)?wn:+e}function An(e,t,n){return e===e&&(n!==void 0&&(e=e<=n?e:n),t!==void 0&&(e=e>=t?e:t)),e}function jn(e,t,n){return n===void 0&&(n=t,t=void 0),n!==void 0&&(n=kn(n),n=n===n?n:0),t!==void 0&&(t=kn(t),t=t===t?t:0),An(kn(e),t,n)}var Mn=5e3;function Nn(){return{id:`local`,companyId:``,companyName:``,items:[]}}function X(){return!1}function Pn(e){return[...new Set(e.map(e=>e.companyName).filter(Boolean))].join(`، `)}function Fn(e,t){return e.items.filter(e=>e.companyId===t).reduce((e,t)=>e+t.meterage,0)}var Z=z(`cart`,()=>{let t=k([Nn()]),n=k(`local`),r=k(null),i=k(!1),a=e(()=>t.value.find(e=>e.id===n.value)??t.value[0]??null),o=e(()=>a.value?.items.reduce((e,t)=>e+t.meterage,0)??0),s=e(()=>a.value?.items.length??0),c=U(),l=e(()=>a.value?.items.length?Pn(a.value.items):``),u=e(()=>{let e=a.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=c.getCompany(e)?.maxMeteragePerInvoice??Mn;return{companyId:e,companyName:t.companyName,meterage:t.meterage,maxMeterage:n,remaining:Math.max(0,n-t.meterage)}})}),d=e(()=>u.value.length?u.value.reduce((e,t)=>e+t.maxMeterage,0):(r.value?c.getCompany(r.value):null)?.maxMeteragePerInvoice??Mn),f=e(()=>u.value.length?u.value.reduce((e,t)=>e+t.remaining,0):Math.max(0,d.value-o.value)),p=e(()=>u.value.some(e=>e.meterage>=e.maxMeterage));function m(e){let i={id:e.id,companyId:e.companyId||``,companyName:e.companyName||Pn(e.items),items:e.items??[],notes:e.notes};t.value=[i],n.value=i.id,i.companyId&&(r.value=i.companyId)}function h(e){t.value=[{...e,items:e.items.map(e=>({...e}))}],n.value=t.value[0].id}async function g(){if(!B()){_();return}if(X()){i.value=!1;return}i.value=!0;try{m(await R(`/carts`))}catch{_()}finally{i.value=!1}}function _(){t.value=[Nn()],n.value=t.value[0].id,r.value=null}function v(e){r.value=e.id,a.value&&!a.value.items.length&&(a.value.companyId=e.id,a.value.companyName=e.name)}function y(e){return v(e),a.value??Nn()}function ee(e){return e&&v(e),a.value??Nn()}async function b(){if(X())return _(),a.value;try{return m(await R(`/carts`,{method:`DELETE`})),a.value}catch(e){return console.error(e),null}}function x(e,t,n,i){let a=ee(i),o=a.items.find(t=>t.productId===e.id),s=[...a.items];if(o){let e=s.findIndex(e=>e.id===o.id);s[e]={...o,meterage:n}}else{let r={id:`local-item-${e.id}-${Date.now()}`,productId:e.id,catalogCode:t,productName:e.name,productCode:e.code,color:e.color,meterage:n,companyId:i.id,companyName:i.name};s.push(r)}return h({id:a.id||`local`,companyId:s[0]?.companyId||i.id,companyName:Pn(s)||i.name,items:s,notes:a.notes}),r.value=i.id,{success:!0}}async function S(e,t,n){c.companies.length||await c.loadCompanies();let i=c.getCompany(e.companyId),o=a.value??Nn(),s=i?.maxMeteragePerInvoice??Mn,l=e.companyId?Fn(o,e.companyId):0,u=o.items.find(t=>t.productId===e.id),d=u?.meterage??0,f=Ce(n,e,l,s,d);if(!f.valid)return{success:!1,message:f.message};if(X())return i?x(e,t,n,i):{success:!1,message:`شرکت محصول یافت نشد.`};try{let t;return t=u?await R(`/carts/items/${u.id}`,{method:`PATCH`,body:{meterage:n}}):await R(`/carts/items`,{method:`POST`,body:{productId:e.id,meterage:n}}),m(t),r.value=i?.id||e.companyId||r.value,{success:!0}}catch(e){return{success:!1,message:e instanceof H?e.message:`افزودن به سبد ناموفق بود.`}}}async function C(e,t,n){if(!a.value)return{success:!1,message:`سبد خرید یافت نشد.`};let r=a.value.items.find(t=>t.id===e);if(!r)return{success:!1,message:`آیتم یافت نشد.`};let i=c.getCompany(r.companyId||n.companyId)?.maxMeteragePerInvoice??Mn,o=Fn(a.value,r.companyId),s=Ce(t,n,o,i,r.meterage);if(!s.valid)return{success:!1,message:s.message};if(X()){let n=a.value.items.map(n=>n.id===e?{...n,meterage:t}:n);return h({...a.value,items:n}),{success:!0}}try{return m(await R(`/carts/items/${e}`,{method:`PATCH`,body:{meterage:t}})),{success:!0}}catch(e){return{success:!1,message:e instanceof H?e.message:`به‌روزرسانی متراژ ناموفق بود.`}}}async function w(e){if(X()){if(!a.value)return;let t=a.value.items.filter(t=>t.id!==e);h({...a.value,items:t});return}try{m(await R(`/carts/items/${e}`,{method:`DELETE`}))}catch(e){console.error(e)}}async function T(e){if(X()){if(!a.value)return;h({...a.value,notes:e});return}try{m(await R(`/carts/notes`,{method:`PATCH`,body:{notes:e}}))}catch(e){console.error(e)}}async function te(){if(X()){_();return}try{m(await R(`/carts`,{method:`DELETE`}))}catch{_()}}function ne(){}return{carts:t,activeCartId:n,selectedCompanyId:r,syncing:i,activeCart:a,totalMeterage:o,itemCount:s,companyNamesLabel:l,companySummaries:u,maxMeterage:d,remainingCapacity:f,isFull:p,initCartForCompany:y,selectCompany:v,createNewCartForSameCompany:b,addItem:S,updateItemMeterage:C,removeItem:w,setNotes:T,clearActiveCart:te,ensureActiveCartForCartPage:ne,hydrate:g,resetLocal:_}}),In=I({__name:`IconHome`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(_(),s(P,{icon:`vuesax-linear:home`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),Ln=I({__name:`IconCart`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(_(),s(P,{icon:`vuesax-linear:bag-2`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),Rn=I({__name:`IconOrders`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(_(),s(P,{icon:`vuesax-linear:document-text`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),zn=I({__name:`IconProfile`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(_(),s(P,{icon:`vuesax-linear:profile-circle`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),Bn=I({__name:`IconCatalog`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(_(),s(P,{icon:`vuesax-linear:category`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),Vn=I({__name:`IconPlus`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(_(),s(P,{icon:`vuesax-linear:add`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),Hn=[{name:`home`,path:`/`,label:`خانه`,icon:In},{name:`catalogs`,path:`/catalogs`,label:`کالیته‌ها`,icon:Bn},{name:`order-fab`,path:`/cart`,label:`ثبت سفارش`,icon:Vn},{name:`orders`,path:`/orders`,label:`سفارش‌ها`,icon:Rn},{name:`profile`,path:`/profile`,label:`پروفایل`,icon:zn}],Un=[{name:`home`,path:`/`,label:`خانه`,icon:In},{name:`catalogs`,path:`/catalogs`,label:`کالیته‌ها`,icon:Bn},{name:`cart`,path:`/cart`,label:`ثبت سفارش`,icon:Ln},{name:`orders`,path:`/orders`,label:`سفارش‌ها`,icon:Rn},{name:`profile`,path:`/profile`,label:`پروفایل`,icon:zn}],Wn=[`/catalogs`,`/catalog-request`,`/catalog-requests`,`/categories`,`/products`,`/product`,`/favorites`];function Gn(e,t,n){return e===`home`?n===`/`:e===`catalogs`?Wn.some(e=>n===e||n.startsWith(`${e}/`)):e===`order-fab`||e===`cart`?n===`/cart`||n.startsWith(`/cart/`):e===`profile`?n===`/profile`||n.startsWith(`/profile/`):t===`/`?n===`/`:n.startsWith(t)}function Kn(e,t){return e.path}function qn(e){return e===0?`/catalogs`:`/cart`}var Jn={class:`bottom-nav`,"aria-label":`ناوبری اصلی`},Yn=[`aria-current`,`aria-label`,`onClick`],Xn={key:0,class:`nav-badge`},Zn={key:0,class:`nav-label`},Qn={key:1,class:`nav-label nav-label--fab`},$n=A(I({__name:`BottomNav`,setup(n){let i=te(),a=y(),o=Z(),d=e(()=>o.itemCount);function f(e,t){let n=t.currentTarget;if(n instanceof HTMLElement&&n.blur(),e===`/cart`){a.push(qn(o.itemCount));return}a.push(e)}return(e,n)=>(_(),u(`nav`,Jn,[(_(!0),u(l,null,v(p(Hn),e=>(_(),u(`button`,{key:e.name,type:`button`,class:t([`nav-item`,{active:p(Gn)(e.name,e.path,p(i).path),"nav-item--fab":e.name===`order-fab`}]),"aria-current":p(Gn)(e.name,e.path,p(i).path)?`page`:void 0,"aria-label":e.label,onClick:t=>f(e.path,t)},[D(`span`,{class:t([`nav-icon`,{"nav-icon--fab":e.name===`order-fab`}])},[(_(),s(C(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`&&d.value>0?(_(),u(`span`,Xn,r(d.value),1)):c(``,!0)],2),e.name===`order-fab`?(_(),u(`span`,Qn,r(e.label),1)):(_(),u(`span`,Zn,r(e.label),1))],10,Yn))),128))]))}}),[[`__scopeId`,`data-v-3b391510`]]),er=I({__name:`IconHeadset`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(_(),s(P,{icon:`vuesax-linear:headphone`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),tr=`/assets/nademitex-logo-BJLexNm4.png`,nr=[`src`],rr=A(I({__name:`IconQemashMark`,props:{size:{default:72}},setup(e){return(t,n)=>(_(),u(`img`,{class:`brand-logo`,src:p(tr),alt:``,style:m({height:`${e.size}px`}),draggable:`false`},null,12,nr))}}),[[`__scopeId`,`data-v-b211450b`]]),ir={class:`desktop-sidebar`,"aria-label":`ناوبری اصلی`},ar={class:`desktop-sidebar__brand`},or={class:`desktop-sidebar__nav`},sr=[`aria-current`,`aria-label`,`title`,`onClick`],cr={class:`desktop-sidebar__icon`},lr={class:`desktop-sidebar__label`},ur={key:0,class:`desktop-sidebar__badge`},dr={class:`desktop-sidebar__support`},fr={class:`desktop-sidebar__support-icon`,"aria-hidden":`true`},pr=A(I({__name:`DesktopSidebar`,setup(n){let i=te(),a=y(),o=Z(),d=e(()=>o.itemCount),m=e(()=>o.selectedCompanyId||o.activeCart?.companyId||null);function h(e){if(e.name===`cart`){a.push(qn(o.itemCount));return}a.push(Kn(e,m.value))}return(e,n)=>(_(),u(`aside`,ir,[D(`div`,ar,[f(rr,{size:36}),n[0]||=D(`strong`,{class:`desktop-sidebar__title`},`نادمی تکس`,-1)]),D(`nav`,or,[(_(!0),u(l,null,v(p(Un),e=>(_(),u(`button`,{key:e.name,type:`button`,class:t([`desktop-sidebar__item`,{active:p(Gn)(e.name,e.path,p(i).path)}]),"aria-current":p(Gn)(e.name,e.path,p(i).path)?`page`:void 0,"aria-label":e.label,title:e.label,onClick:t=>h(e)},[D(`span`,cr,[(_(),s(C(e.icon),{size:20}))]),D(`span`,lr,r(e.label),1),e.name===`cart`&&d.value>0?(_(),u(`span`,ur,r(d.value),1)):c(``,!0)],10,sr))),128))]),D(`div`,dr,[D(`span`,fr,[f(er,{size:22})]),n[1]||=D(`strong`,{class:`desktop-sidebar__support-title`},`پشتیبانی و راهنما`,-1),n[2]||=D(`p`,{class:`desktop-sidebar__support-text`},` در صورت نیاز به راهنمایی یا گزارش مشکل با تیم پشتیبانی تماس بگیرید. `,-1),n[3]||=D(`a`,{href:`tel:02112345678`,class:`desktop-sidebar__support-btn`},`تماس با پشتیبانی`,-1)])]))}}),[[`__scopeId`,`data-v-16152195`]]),mr=`ft_user`,hr=`ft_pending_otp`;function Q(e){e?localStorage.setItem(mr,JSON.stringify(e)):localStorage.removeItem(mr)}function gr(){try{let e=localStorage.getItem(mr);return e?JSON.parse(e):null}catch{return null}}function _r(){return B()?gr():null}function vr(){return!!B()}function yr(e){try{e?sessionStorage.setItem(hr,JSON.stringify(e)):sessionStorage.removeItem(hr)}catch{}}async function br(e,t){let n=ve(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{yr({phone:n,isRegister:t.isRegister,firstName:t.firstName,lastName:t.lastName});let e=await R(`/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 H?e.message:`ارسال کد ناموفق بود.`}}}async function xr(e,t){let n=ve(e);try{let e=await R(`/auth/otp/verify`,{method:`POST`,auth:!1,body:{phone:n,code:be(t)}});return L(e.accessToken),Q(e.user),yr(null),{success:!0,message:`ورود موفق.`,user:e.user}}catch(e){return{success:!1,message:e instanceof H?e.message:`تأیید کد ناموفق بود.`}}}function Sr(){L(null),Q(null),yr(null)}async function Cr(){if(!B())return Q(null),null;try{let e=await R(`/auth/me`);return Q(e),e}catch{return gr()}}async function wr(e){try{let t=await R(`/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,r=gr();if(!n||!r)throw t;let i={...r};return e.avatarUrl?i.avatarUrl=e.avatarUrl:delete i.avatarUrl,Q(i),i}}var Tr=`ft_pending_register`,Er=[{id:`garment_producer`,label:`تولیدکننده پوشاک عمده`},{id:`atelier`,label:`مزون`},{id:`fabric_wholesaler`,label:`عمده‌فروش پارچه`}];function Dr(){try{let e=sessionStorage.getItem(Tr);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 Or(e){if(e?.firstName?.trim()&&e?.lastName?.trim()){sessionStorage.setItem(Tr,JSON.stringify({firstName:e.firstName.trim(),lastName:e.lastName.trim(),jobCategory:e.jobCategory}));return}sessionStorage.removeItem(Tr)}function kr(){return{checkCount:0,totalAmount:0,nearestDueDate:null,farthestDueDate:null,rassDays:0,rassDate:null}}function Ar(e,t=new Date){if(e.length===0)return kr();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=_e(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]?Se(a[0]):null,farthestDueDate:a.length?Se(a[a.length-1]):null,rassDays:o,rassDate:Se(s)}}function jr(e){let t=new Date;t.setHours(0,0,0,0);let n=_e(e);return Number.isNaN(n.getTime())?0:(n.setHours(0,0,0,0),Math.max(0,Math.round((n.getTime()-t.getTime())/864e5)))}var Mr=z(`order`,()=>{let t=k([]),n=k([]),r=k(null),i=k(null),a=k(null),o=k(!1),s=e(()=>e=>[...t.value].sort((e,t)=>new Date(t.createdAt).getTime()-new Date(e.createdAt).getTime()));function c(e){return t.value.find(t=>t.id===e)}function l(e,t){a.value=e,r.value=`check`,n.value=[],i.value=t??null}function u(e){a.value=e.id,r.value=`check`,i.value=e.checkMode??`full`,n.value=(e.checks??[]).map(e=>({...e}))}function d(){a.value=null,n.value=[],i.value=null,r.value=null}function f(e){i.value=e}function p(e){n.value.push({...e,id:ye()})}function m(e,t){let r=n.value.findIndex(t=>t.id===e);r>=0&&(n.value[r]={...n.value[r],...t})}function h(e){n.value=n.value.filter(t=>t.id!==e)}function g(e){return Ar(n.value,e??new Date)}async function _(){if(!B()){t.value=[];return}o.value=!0;try{t.value=await R(`/orders`)}catch{t.value=[]}finally{o.value=!1}}function v(){t.value=[],d()}function y(e){let n=t.value.findIndex(t=>t.id===e.id);n>=0?t.value[n]=e:t.value.unshift(e)}async function ee(e){try{let t=await R(`/orders/${e}`);return y(t),t}catch{return null}}async function b(e){if(!e.items.length)throw Error(`سبد خرید خالی است.`);if(e.id===`local`||e.items.some(e=>e.id.startsWith(`local-item-`)))throw Error(`سبد خرید با سرور همگام نیست. لطفاً دوباره محصولات را به سبد اضافه کنید.`);let n=[...new Set(e.items.map(e=>e.companyId).filter(Boolean))];if(!n.length)throw Error(`شرکت سبد مشخص نیست. سبد را خالی کنید و دوباره اضافه کنید.`);try{let r=await R(`/orders`,{method:`POST`,body:{companyId:n[0],notes:e.notes,items:e.items.map(e=>({productId:e.productId,meterage:Number(e.meterage),notes:e.notes}))}});return t.value.unshift(r),d(),r}catch(e){throw Error(e instanceof H?e.message:`ثبت سفارش ناموفق بود.`)}}async function x(e,t,n){try{let r=await R(`/orders/${e}/settlement`,{method:`POST`,body:{settlementType:t,checkMode:t===`check`?n??`full`:void 0}});return y(r),r}catch(e){throw Error(e instanceof H?e.message:`ثبت روش تسویه ناموفق بود.`)}}async function S(e,t){try{await R(`/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 ee(e);if(!n)throw Error(`رسید ثبت شد ولی دریافت سفارش ناموفق بود.`);return n}catch(e){throw Error(e instanceof H?e.message:`ثبت رسید ناموفق بود.`)}}async function C(e,t,n){try{let r=await R(`/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),d(),r}catch(e){throw Error(e instanceof H?e.message:`ثبت چک‌ها ناموفق بود.`)}}async function w(e){let t=[...new Set([e.companyId,...e.items.map(e=>e.companyId).filter(Boolean)].filter(Boolean))],n=U(),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 U().loadBankAccounts(e)}return{orders:t,draftChecks:n,draftSettlementType:r,draftCheckMode:i,draftOrderId:a,loading:o,userOrders:s,getOrderById:c,startCheckDraft:l,loadChecksIntoDraft:u,clearCheckDraft:d,setCheckMode:f,addDraftCheck:p,updateDraftCheck:m,removeDraftCheck:h,getDraftRass:g,submitOrder:b,chooseSettlement:x,submitCashReceipt:S,updateOrderChecks:C,hydrate:_,resetLocal:v,fetchOrder:ee,getBankAccountsForOrder:w,getBankAccountsForCompany:T}}),Nr=z(`notification`,()=>{let t=k([]),n=k(0),r=k(!1),i=e(()=>n.value>0);async function a(){if(!B()){t.value=[],n.value=0;return}r.value=!0;try{t.value=await R(`/notifications`),n.value=t.value.filter(e=>!e.isRead).length}catch{t.value=[],n.value=0}finally{r.value=!1}}async function o(){if(!B()){n.value=0;return}try{let e=await R(`/notifications/unread-count`);n.value=e.count}catch{}}async function s(e){let r=t.value.find(t=>t.id===e);if(!(!r||r.isRead)){r.isRead=!0,n.value=Math.max(0,n.value-1);try{await R(`/notifications/${e}/read`,{method:`PATCH`})}catch{await a()}}}async function c(){if(n.value){t.value=t.value.map(e=>({...e,isRead:!0})),n.value=0;try{await R(`/notifications/read-all`,{method:`PATCH`})}catch{await a()}}}function l(){t.value=[],n.value=0}return{items:t,unreadCount:n,loading:r,hasUnread:i,hydrate:a,refreshUnreadCount:o,markRead:s,markAllRead:c,resetLocal:l}}),Pr=`ft_favorites`;function Fr(){try{let e=localStorage.getItem(Pr);if(!e)return[];let t=JSON.parse(e);return Array.isArray(t)?t.filter(e=>typeof e==`string`):[]}catch{return[]}}function Ir(e){localStorage.setItem(Pr,JSON.stringify(e))}var Lr=z(`favorites`,()=>{let t=k(Fr()),n=k(!1),r=k({}),i=e(()=>new Set(t.value));function a(e){return i.value.has(e)}async function o(){try{let e=await R(`/products/favorites/ids`);t.value=e,Ir(e)}catch{t.value=Fr()}finally{n.value=!0}}async function s(e){if(!e||r.value[e])return;r.value={...r.value,[e]:!0};let n=a(e);t.value=n?t.value.filter(t=>t!==e):[...t.value,e],Ir(t.value);try{let n=await R(`/products/${e}/favorite`,{method:`POST`});t.value=n.favorited?[...new Set([...t.value.filter(t=>t!==e),e])]:t.value.filter(t=>t!==e),Ir(t.value)}catch(r){if(!(r instanceof H&&r.status===404))throw t.value=n?[...new Set([...t.value,e])]:t.value.filter(t=>t!==e),Ir(t.value),r}finally{let t={...r.value};delete t[e],r.value=t}}function c(){t.value=[],Ir([]),n.value=!1}return{ids:t,loaded:n,pending:r,isFavorite:a,hydrate:o,toggle:s,resetLocal:c}}),Rr=z(`auth`,()=>{let t=k(_r()),n=k(!1),r=k(null),i=k(Dr()),a=e(()=>!!t.value),o=e(()=>t.value?`${t.value.firstName} ${t.value.lastName}`:``),s=e(()=>t.value?.appRole===`agent`),c=e(()=>!!t.value&&t.value.appRole!==`agent`);function l(){r.value=null}function u(){i.value=null,Or(null)}async function d(e,t){n.value=!0,r.value=null;try{let n=Dr();i.value=n;let a=t.firstName?.trim()||n?.firstName,o=t.lastName?.trim()||n?.lastName;t.isRegister&&a&&o&&(i.value={firstName:a,lastName:o},Or(i.value));let s=await br(e,{isRegister:t.isRegister,firstName:a,lastName:o});return s.success||(r.value=s.message),s}finally{n.value=!1}}async function f(e,i){n.value=!0,r.value=null;let a=await xr(e,i);return n.value=!1,a.success&&a.user?(t.value=a.user,u(),await Promise.all([U().loadCompanies(),Z().hydrate(),Mr().hydrate(),Nr().hydrate(),Lr().hydrate()])):r.value=a.message,a}function p(){Sr(),t.value=null,u(),Z().resetLocal(),Mr().resetLocal(),Nr().resetLocal(),Lr().resetLocal()}async function m(e){if(!t.value)return null;let n=await wr(e);return n&&(t.value=n),n}async function h(){if(t.value=_r(),!t.value)return;let e=await Cr();t.value=e}return{user:t,loading:n,error:r,isAuthenticated:a,fullName:o,isAgent:s,isCustomerOnly:c,clearError:l,requestOtp:d,confirmOtp:f,logout:p,updateProfile:m,hydrate:h}}),zr=I({__name:`IconBell`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(_(),s(P,{icon:`vuesax-linear:notification`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),Br=I({__name:`IconChevronLeft`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(_(),s(P,{icon:`vuesax-linear:arrow-left-1`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),Vr=z(`theme`,()=>{let t=he(`ft_theme`,`system`),n=ge(),r=e(()=>t.value===`system`?n.value?`dark`:`light`:t.value),i=e(()=>r.value===`dark`);ae(()=>{let e=document.documentElement;e.classList.toggle(`dark`,i.value),e.style.colorScheme=r.value});function a(e){t.value=e}function o(){let e=[`light`,`dark`,`system`],n=e.indexOf(t.value);t.value=e[(n+1)%e.length]}function s(){t.value=i.value?`light`:`dark`}return{preference:t,resolved:r,isDark:i,setPreference:a,cyclePreference:o,toggleLightDark:s}}),Hr=[`aria-label`,`title`],Ur=A(I({__name:`AuthThemeToggle`,props:{variant:{default:`floating`}},setup(n){let r=Vr(),{isDark:i}=V(r),a=e(()=>i.value?`vuesax-linear:sun-1`:`vuesax-linear:moon`),o=e(()=>i.value?`تغییر به تم روشن`:`تغییر به تم تاریک`);return(e,i)=>(_(),u(`button`,{type:`button`,class:t([`auth-theme-toggle`,n.variant===`inline`?`auth-theme-toggle--inline`:`auth-theme-toggle--floating`]),"aria-label":o.value,title:o.value,onClick:i[0]||=e=>p(r).toggleLightDark()},[f(P,{icon:a.value,size:18,"stroke-width":1.5},null,8,[`icon`])],10,Hr))}}),[[`__scopeId`,`data-v-3a58cb84`]]),Wr=[`src`],Gr={key:1},Kr=A(I({__name:`UserAvatar`,props:{src:{},initials:{},size:{default:72}},setup(e){return(t,n)=>(_(),u(`span`,{class:`user-avatar`,style:m({width:`${e.size}px`,height:`${e.size}px`,fontSize:`${Math.round(e.size*.38)}px`})},[e.src?(_(),u(`img`,{key:0,class:`user-avatar__img`,src:e.src,alt:``},null,8,Wr)):(_(),u(`span`,Gr,r(e.initials),1))],4))}}),[[`__scopeId`,`data-v-5c562bf0`]]),qr={class:`desktop-header`},Jr={class:`desktop-header__actions`},Yr={key:0,class:`desktop-header__company`},Xr=[`aria-label`],Zr={class:`desktop-header__user-wrap`},Qr=[`aria-expanded`],$r={class:`desktop-header__user-name`},ei={key:0,class:`desktop-header__menu`},ti=A(I({__name:`DesktopHeader`,setup(t){let n=y(),i=Rr(),a=Z(),o=Nr(),s=k(!1),l=e(()=>xe(o.unreadCount>9?`9+`:String(o.unreadCount))),d=e(()=>`${i.user?.firstName?.[0]??``}${i.user?.lastName?.[0]??``}`||`؟`),m=e(()=>a.companyNamesLabel||a.activeCart?.companyName||``);function h(){s.value=!s.value}function g(){s.value=!1,n.push(`/profile`)}function v(){s.value=!1,i.logout(),n.replace(`/welcome`)}return(e,t)=>(_(),u(`header`,qr,[t[1]||=D(`div`,{class:`desktop-header__spacer`,"aria-hidden":`true`},null,-1),D(`div`,Jr,[m.value?(_(),u(`span`,Yr,r(m.value),1)):c(``,!0),f(Ur,{variant:`inline`}),D(`button`,{type:`button`,class:`desktop-header__icon-btn`,"aria-label":`اعلان‌ها`,onClick:t[0]||=e=>p(n).push(`/profile/notifications`)},[f(zr,{size:20}),p(o).hasUnread?(_(),u(`span`,{key:0,class:`desktop-header__notif-badge`,"aria-label":`${p(o).unreadCount} اعلان خوانده‌نشده`},r(l.value),9,Xr)):c(``,!0)]),D(`div`,Zr,[D(`button`,{type:`button`,class:`desktop-header__user`,"aria-expanded":s.value,onClick:h},[f(Kr,{class:`desktop-header__avatar`,src:p(i).user?.avatarUrl,initials:d.value,size:32},null,8,[`src`,`initials`]),D(`span`,$r,r(p(i).fullName),1),f(Br,{size:16,class:`desktop-header__chevron`})],8,Qr),s.value?(_(),u(`div`,ei,[D(`button`,{type:`button`,onClick:g},`پروفایل`),D(`button`,{type:`button`,class:`desktop-header__menu-logout`,onClick:v},`خروج`)])):c(``,!0)])])]))}}),[[`__scopeId`,`data-v-5f322d95`]]),ni={class:`app-layout`},ri={class:`app-frame`},ii={class:`app-main`},ai={class:`app-main__content`},oi={class:`app-content`},si=I({__name:`DefaultLayout`,setup(n){let r=te(),i=e(()=>![`welcome`,`login`,`register`,`otp`,`settlement`,`check-mode`,`check-form`,`check-list`,`cash-settlement`,`order-success`].includes(r.name)&&!r.meta.hideNav),a=e(()=>[`settlement`,`check-mode`,`check-form`,`check-list`,`cash-settlement`].includes(r.name)),o=e(()=>r.name===`welcome`||r.name===`login`||r.name===`register`||r.name===`otp`);return(e,n)=>(_(),u(`div`,{class:t([`app-shell`,{"app-shell--no-nav":!i.value,"app-shell--wide":a.value,"app-shell--with-nav":i.value,"app-shell--immersive":o.value}])},[D(`div`,ni,[i.value?(_(),s(pr,{key:0})):c(``,!0),D(`div`,ri,[i.value?(_(),s(ti,{key:0})):c(``,!0),D(`main`,ii,[D(`div`,ai,[D(`div`,oi,[d(e.$slots,`default`)])])]),i.value?(_(),s($n,{key:1})):c(``,!0)])])],2))}}),ci=[`type`,`disabled`],li={key:0,class:`btn-spinner`},ui=A(I({__name:`BaseButton`,props:{variant:{},size:{},block:{type:Boolean},disabled:{type:Boolean},loading:{type:Boolean},type:{}},setup(e){return(n,r)=>(_(),u(`button`,{type:e.type??`button`,class:t([`btn`,[`btn-${e.variant??`primary`}`,`btn-${e.size??`md`}`,{"btn-block":e.block}]]),disabled:e.disabled||e.loading},[e.loading?(_(),u(`span`,li)):c(``,!0),d(n.$slots,`default`,{},void 0,!0)],10,ci))}}),[[`__scopeId`,`data-v-3628a8bb`]]),di=T({open:!1,title:``,message:``,confirmLabel:`حذف`,cancelLabel:`انصراف`,tone:`danger`,resolve:null});function fi(){return di}function pi(e){return new Promise(t=>{Object.assign(di,{open:!0,title:e.title,message:e.message,confirmLabel:e.confirmLabel??`حذف`,cancelLabel:e.cancelLabel??`انصراف`,tone:e.tone??`danger`,resolve:t})})}function mi(e){di.resolve?.(e),di.open=!1,di.resolve=null}var hi={class:`dialog card confirm-dialog`},gi={id:`confirm-dialog-title`,class:`confirm-dialog__title`},_i={class:`confirm-dialog__message`},vi={class:`dialog-actions confirm-dialog__actions`},yi=A(I({__name:`ConfirmDialog`,setup(e){let t=fi();function i(){mi(!1)}function a(){mi(!0)}return(e,s)=>p(t).open?(_(),u(`div`,{key:0,class:`dialog-overlay confirm-dialog-overlay`,role:`dialog`,"aria-modal":`true`,"aria-labelledby":`confirm-dialog-title`,onClick:n(i,[`self`])},[D(`div`,hi,[D(`h3`,gi,r(p(t).title),1),D(`p`,_i,r(p(t).message),1),D(`div`,vi,[f(ui,{variant:`outline`,onClick:i},{default:M(()=>[o(r(p(t).cancelLabel),1)]),_:1}),f(ui,{variant:p(t).tone===`danger`?`danger`:`primary`,onClick:a},{default:M(()=>[o(r(p(t).confirmLabel),1)]),_:1},8,[`variant`])])])])):c(``,!0)}}),[[`__scopeId`,`data-v-2e50e2a7`]]),bi=I({__name:`App`,setup(e){let t=Rr(),n=Z(),r=Mr(),i=U(),a=Nr(),o=y(),c=k(`page-fade`);function d(e){return e.split(`/`).filter(Boolean).length}return o.beforeEach((e,t)=>{if(!t.name){c.value=`page-fade`;return}let n=jn(d(e.path)-d(t.path),-1,1);n>0?c.value=`page-forward`:n<0?c.value=`page-back`:c.value=`page-fade`}),se(async()=>{await t.hydrate(),t.isAuthenticated&&await Promise.all([i.loadCompanies(),n.hydrate(),r.hydrate(),a.hydrate()])}),me(()=>{t.isAuthenticated&&a.refreshUnreadCount()},6e4,{immediate:!1}),(e,t)=>(_(),u(l,null,[f(si,null,{default:M(()=>[f(p(en),null,{default:M(({Component:e,route:t})=>[f(fe,{name:c.value,mode:`out-in`},{default:M(()=>[(_(),u(`div`,{key:t.path,class:`page-transition page-shell`},[(_(),s(C(e)))]))]),_:2},1032,[`name`])]),_:1})]),_:1}),f(yi)],64))}}),xi=`modulepreload`,Si=function(e){return`/`+e},Ci={},$=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=Si(t,n),t=s(t),t in Ci)return;Ci[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`:xi,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)})},wi=tn({history:Ct(`/`),routes:[{path:`/welcome`,name:`welcome`,component:()=>$(()=>import(`./WelcomeView-CMxZax1Y.js`),__vite__mapDeps([0,1,2,3,4])),meta:{guest:!0,hideNav:!0}},{path:`/login`,name:`login`,component:()=>$(()=>import(`./LoginView-CGhkw0FP.js`),__vite__mapDeps([5,1,2,6,7,8,9,10,11,12,3,13])),meta:{guest:!0,hideNav:!0}},{path:`/register`,name:`register`,component:()=>$(()=>import(`./RegisterView-P-RrLS2U.js`),__vite__mapDeps([14,1,2,15,16,7,8,9,10,11,12,17,18])),meta:{guest:!0,hideNav:!0}},{path:`/otp`,name:`otp`,component:()=>$(()=>import(`./OtpView-BS4oUATh.js`),__vite__mapDeps([19,1,2,16,7,20,9,10,12,3,21,22])),meta:{guest:!0,hideNav:!0}},{path:`/`,name:`home`,component:()=>$(()=>import(`./HomeView-hY7x8Ola.js`),__vite__mapDeps([23,1,2,7,20,24,25,26,6,27,28,29,30])),meta:{requiresAuth:!0}},{path:`/companies`,name:`companies`,component:()=>$(()=>import(`./CompanySelectView-DXNHvGNP.js`),__vite__mapDeps([31,1,2,32,6,20,33,34,24,25,27,35])),meta:{requiresAuth:!0}},{path:`/categories`,name:`categories`,component:()=>$(()=>import(`./CategoriesView-Da1Yz01j.js`),__vite__mapDeps([36,1,2,20,17,24,25,26,6,27,37,38,39,40,41])),meta:{requiresAuth:!0}},{path:`/products`,name:`products`,component:()=>$(()=>import(`./ProductsView-Dhc6PK3T.js`),__vite__mapDeps([42,1,2,43,17,24,25,26,6,44,45,20,46,47,48,38,39,40,29,49])),meta:{requiresAuth:!0}},{path:`/product`,name:`product`,component:()=>$(()=>import(`./ProductDetailView-BUGwmJWw.js`),__vite__mapDeps([50,1,2,7,32,6,20,24,25,51,26,27,44,40,28,29,52])),meta:{requiresAuth:!0}},{path:`/catalogs`,name:`catalogs`,component:()=>$(()=>import(`./CatalogsHubView-wDSJNJeF.js`),__vite__mapDeps([53,1,2,7,32,6,20,24,25,26,27,54,47,48,37,55])),meta:{requiresAuth:!0}},{path:`/catalogs/:catalogId`,name:`catalog-detail`,component:()=>$(()=>import(`./CatalogDetailView-Dp5X6av6.js`),__vite__mapDeps([56,1,2,7,32,6,20,24,25,51,26,27,54,44,57])),meta:{requiresAuth:!0}},{path:`/catalog-request`,name:`catalog-request`,component:()=>$(()=>import(`./CatalogRequestView-BQv6HkdJ.js`),__vite__mapDeps([58,1,2,7,24,25,26,6,45,20,46,59,60])),meta:{requiresAuth:!0}},{path:`/catalog-requests`,name:`catalog-requests`,component:()=>$(()=>import(`./CatalogRequestsView-BMwSCi02.js`),__vite__mapDeps([61,1,2,7,45,20,46,59,6,62])),meta:{requiresAuth:!0}},{path:`/favorites`,name:`favorites`,component:()=>$(()=>import(`./FavoritesView-BFwf0qCn.js`),__vite__mapDeps([63,1,2,24,25,26,6,45,20,46,29,64])),meta:{requiresAuth:!0}},{path:`/customers`,name:`customers`,component:()=>$(()=>import(`./CustomersView-_yD0xFZV.js`),__vite__mapDeps([65,1,2,6,7,8,43,9,10,12,24,25,26,45,20,46,47,48,66,67,68])),meta:{requiresAuth:!0}},{path:`/customers/new`,redirect:e=>({path:`/customers`,query:{...e.query,create:`1`}})},{path:`/customer`,name:`customer`,component:()=>$(()=>import(`./CustomerDetailView-DC-nbBZ9.js`),__vite__mapDeps([69,1,2,7,70,71,11,21,72,24,25,26,6,45,20,46,73,74,75])),meta:{requiresAuth:!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-xi9w9NYU.js`),__vite__mapDeps([76,1,2,15,16,7,20,77,24,25,26,6,27,73,74,78])),meta:{requiresAuth:!0}},{path:`/reminder`,name:`reminder`,component:()=>$(()=>import(`./ReminderDetailView-DeVZIytU.js`),__vite__mapDeps([79,1,2,24,25,26,6,45,20,46,80])),meta:{requiresAuth:!0,hideNav:!0}},{path:`/companies/:companyId/catalogs`,name:`company-catalogs`,component:()=>$(()=>import(`./CatalogListView-B7OmS9fn.js`),__vite__mapDeps([81,1,2,32,6,82,83,24,25,45,20,46,47,48,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-DRuvPkVq.js`),__vite__mapDeps([85,1,2,7,82,83,20,9,10,17,86,87,72,39,88])),meta:{requiresAuth:!0}},{path:`/orders`,name:`orders`,component:()=>$(()=>import(`./OrdersView-BqL6_Kme.js`),__vite__mapDeps([89,1,2,7,32,6,82,83,70,20,33,34,71,43,77,90])),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-BAbo40bP.js`),__vite__mapDeps([91,1,2,15,16,7,8,70,20,9,10,12,92,66,67,93,94,73,74,95])),meta:{requiresAuth:!0}},{path:`/orders/:id/success`,name:`order-success`,component:()=>$(()=>import(`./OrderSuccessView-DpNlCco5.js`),__vite__mapDeps([96,1,2,7,27,45,20,46,97])),meta:{requiresAuth:!0,hideNav:!0}},{path:`/orders/:id/settlement`,name:`settlement`,component:()=>$(()=>import(`./SettlementTypeView-Bo02Lk5z.js`),__vite__mapDeps([98,1,2,7,9,10,86,87,45,20,46,92,99,100,101])),meta:{requiresAuth:!0,hideNav:!0}},{path:`/orders/:id/cash`,name:`cash-settlement`,component:()=>$(()=>import(`./CashSettlementView-CT_ObFX-.js`),__vite__mapDeps([102,1,2,7,32,6,45,20,46,99,92,103])),meta:{requiresAuth:!0,hideNav:!0}},{path:`/orders/:id/check-mode`,name:`check-mode`,component:()=>$(()=>import(`./CheckModeSelectView-Df1a9jxd.js`),__vite__mapDeps([104,1,2,7,21,45,20,46,99,92,100,105])),meta:{requiresAuth:!0,hideNav:!0}},{path:`/orders/:id/check-form`,name:`check-form`,component:()=>$(()=>import(`./CheckFormView-Cpz48Srr.js`),__vite__mapDeps([106,1,2,7,8,9,10,12,45,20,46,99,92,66,67,93,94,73,74,100,107])),meta:{requiresAuth:!0,hideNav:!0}},{path:`/orders/:id/check-list`,name:`check-list`,component:()=>$(()=>import(`./CheckListView-BM6vq5YZ.js`).then(e=>e.n),__vite__mapDeps([108,1,2,7,82,83,20,9,10,99,92,109])),meta:{requiresAuth:!0,hideNav:!0}},{path:`/profile`,name:`profile`,component:()=>$(()=>import(`./ProfileView-BnfYcxhD.js`),__vite__mapDeps([110,1,2,7,70,24,25,26,6,111])),meta:{requiresAuth:!0}},{path:`/profile/edit`,name:`profile-edit`,component:()=>$(()=>import(`./ProfileEditView-BMYT8anS.js`),__vite__mapDeps([112,1,2,9,10,12,66,67,113,20,114,115])),meta:{requiresAuth:!0}},{path:`/profile/security`,name:`profile-security`,component:()=>$(()=>import(`./ProfileSecurityView-K8rOJGfa.js`),__vite__mapDeps([116,1,2,9,10,12,66,67,113,20,114,117])),meta:{requiresAuth:!0}},{path:`/profile/notifications`,name:`profile-notifications`,component:()=>$(()=>import(`./ProfileNotificationsView-qTfW9-vz.js`),__vite__mapDeps([118,1,2,7,82,83,113,20,114,119])),meta:{requiresAuth:!0}},{path:`/profile/display`,name:`profile-display`,component:()=>$(()=>import(`./ProfileDisplayView-BeAOZ6_e.js`),__vite__mapDeps([120,1,2,16,113,20,114,121])),meta:{requiresAuth:!0}},{path:`/profile/checks`,name:`profile-checks`,component:()=>$(()=>import(`./ProfileChecksView-CeWWUlq-.js`),__vite__mapDeps([122,108,1,2,7,82,83,20,9,10,99,92,109])),meta:{requiresAuth:!0}}],scrollBehavior(){return{top:0}}});wi.beforeEach(e=>{let t=vr();return e.meta.requiresAuth&&!t?e.name===`home`||e.path===`/`?{name:`welcome`}:{name:`welcome`,query:{redirect:e.fullPath}}:e.meta.guest&&t||e.meta.agentOnly&&gr()?.appRole!==`agent`?{name:`home`}:!0});var Ti=de(bi),Ei=pe();Ti.use(Ei),Ti.use(wi),Vr(Ei),Ti.mount(`#app`);export{Ln as C,Rn as S,Z as T,rr as _,Vr as a,Bn as b,Rr as c,Mr as d,Ar as f,Or as g,Dr as h,Ur as i,Lr as l,Er as m,ui as n,Br as o,jr as p,Kr as r,zr as s,pi as t,Nr as u,er as v,In as w,zn as x,Vn as y}; \ No newline at end of file diff --git a/dist/assets/index-qUmhMDxH.css b/dist/assets/index-qUmhMDxH.css deleted file mode 100644 index aa3f505..0000000 --- a/dist/assets/index-qUmhMDxH.css +++ /dev/null @@ -1 +0,0 @@ -.bottom-nav[data-v-3b391510]{min-height:var(--nav-height);background:var(--color-surface);border-top:1px solid var(--color-border);z-index:100;padding:6px 4px calc(6px + env(safe-area-inset-bottom,0));flex-shrink:0;justify-content:space-around;align-items:flex-end;display:flex}@media (width>=768px){.bottom-nav[data-v-3b391510]{display:none}}.nav-item[data-v-3b391510]{cursor:pointer;color:var(--color-text-muted);background:0 0;border:none;border-radius:10px;flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:4px;min-width:0;margin:0;padding:4px 2px 2px;transition:color .15s;display:flex;position:relative}.nav-item[data-v-3b391510]:focus,.nav-item[data-v-3b391510]:focus-visible{outline:none}.nav-item.active[data-v-3b391510]{color:var(--color-primary);background:0 0}.nav-item.active .nav-label[data-v-3b391510]{font-weight:700}.nav-item--fab[data-v-3b391510]{color:var(--color-text-muted);justify-content:flex-end}.nav-item--fab.active[data-v-3b391510]{color:var(--color-primary)}.nav-icon[data-v-3b391510]{flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;display:flex;position:relative;overflow:visible}.nav-icon--fab[data-v-3b391510]{background:var(--color-primary);color:#fff;width:52px;height:52px;box-shadow:0 6px 16px rgba(var(--color-primary-rgb), .35);border-radius:999px;margin-top:-28px}.nav-label[data-v-3b391510]{white-space:nowrap;font-size:.6875rem;font-weight:500;line-height:1.2}.nav-label--fab[data-v-3b391510]{font-size:.625rem}.nav-badge[data-v-3b391510]{top:-2px;background:var(--color-danger);color:#fff;pointer-events:none;border-radius:999px;justify-content:center;align-items:center;min-width:16px;height:16px;padding:0 4px;font-size:.625rem;font-weight:700;line-height:1;display:flex;position:absolute;inset-inline-end:-2px}.brand-logo[data-v-b211450b]{object-fit:contain;-webkit-user-select:none;user-select:none;flex-shrink:0;width:auto;display:block}.desktop-sidebar[data-v-16152195]{width:var(--sidebar-width);background:var(--color-surface);border-inline-start:1px solid var(--color-border);flex-direction:column;flex-shrink:0;height:100%;padding:0;display:none;overflow-y:auto}@media (width>=768px){.desktop-sidebar[data-v-16152195]{display:flex}}.desktop-sidebar__brand[data-v-16152195]{height:var(--header-height);min-height:var(--header-height);max-height:var(--header-height);box-sizing:border-box;border-bottom:none;flex-shrink:0;justify-content:flex-start;align-items:center;gap:10px;padding:0 20px;display:flex}@media (width>=1200px){.desktop-sidebar__brand[data-v-16152195]{padding:0 28px}}.desktop-sidebar__logo-mark[data-v-16152195]{flex-shrink:0}.desktop-sidebar__title[data-v-16152195]{color:var(--color-primary);font-size:1rem;font-weight:700;display:block}.desktop-sidebar__nav[data-v-16152195]{flex-direction:column;flex:1;gap:4px;padding:12px 12px 0;display:flex}@media (width>=1200px){.desktop-sidebar__nav[data-v-16152195]{padding:16px 16px 0}}.desktop-sidebar__item[data-v-16152195]{border-radius:var(--radius-md);cursor:pointer;width:100%;color:var(--color-text-secondary);text-align:start;background:0 0;border:none;justify-content:flex-start;align-items:center;gap:12px;padding:11px 12px;transition:background .15s,color .15s;display:flex;position:relative}@media (width>=1200px){.desktop-sidebar__item[data-v-16152195]{padding:11px 14px}}.desktop-sidebar__item[data-v-16152195]:hover{background:var(--color-elevated);color:var(--color-text)}.desktop-sidebar__item[data-v-16152195]:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.desktop-sidebar__item.active[data-v-16152195]{background:var(--color-primary-soft);color:var(--color-primary);font-weight:600}.desktop-sidebar__item.active .desktop-sidebar__icon[data-v-16152195]{color:var(--color-primary)}.desktop-sidebar__icon[data-v-16152195]{width:22px;height:22px;color:inherit;flex-shrink:0;justify-content:center;align-items:center;display:flex}.desktop-sidebar__label[data-v-16152195]{font-size:.875rem;font-weight:inherit;white-space:nowrap;display:block}.desktop-sidebar__badge[data-v-16152195]{background:var(--color-danger);color:var(--color-surface);border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;min-width:20px;height:20px;margin-inline-start:auto;padding:0 4px;font-size:.6875rem;font-weight:700;display:flex}.desktop-sidebar__support[data-v-16152195]{background:var(--color-primary-soft);border-radius:var(--radius-lg);flex-direction:column;gap:8px;margin:auto 12px 20px;padding:14px;display:flex}@media (width>=1200px){.desktop-sidebar__support[data-v-16152195]{margin:auto 16px 24px;padding:16px}}.desktop-sidebar__support-icon[data-v-16152195]{background:var(--color-primary);width:36px;height:36px;color:var(--color-surface);border-radius:50%;justify-content:center;align-items:center;display:flex}.desktop-sidebar__support-title[data-v-16152195]{color:var(--color-text);font-size:.875rem;font-weight:700}.desktop-sidebar__support-text[data-v-16152195]{color:var(--color-text-muted);margin:0;font-size:.6875rem;line-height:1.5}.desktop-sidebar__support-btn[data-v-16152195]{border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-primary);text-align:center;margin-top:4px;padding:10px 12px;font-size:.8125rem;font-weight:600;text-decoration:none;transition:opacity .15s;display:block}.desktop-sidebar__support-btn[data-v-16152195]:hover{opacity:.9}.auth-theme-toggle[data-v-3a58cb84]{color:inherit;cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;transition:color .15s;display:inline-flex}.auth-theme-toggle--floating[data-v-3a58cb84]{top:calc(12px + env(safe-area-inset-top,0px));z-index:100;width:40px;height:40px;color:var(--color-text);box-shadow:none;background:0 0;position:fixed;inset-inline-end:16px}.auth-theme-toggle--inline[data-v-3a58cb84]{width:40px;height:40px;color:inherit;flex-shrink:0;position:relative}.auth-theme-toggle[data-v-3a58cb84]:hover{color:var(--color-primary)}.user-avatar[data-v-5c562bf0]{color:inherit;background:#ffffff2e;border-radius:999px;flex-shrink:0;place-items:center;font-weight:700;display:grid;overflow:hidden}.user-avatar__img[data-v-5c562bf0]{object-fit:cover;width:100%;height:100%;display:block}.desktop-header[data-v-5f322d95]{height:var(--header-height);min-height:var(--header-height);max-height:var(--header-height);box-sizing:border-box;background:var(--color-surface);border-bottom:none;flex-shrink:0;justify-content:space-between;align-items:center;gap:24px;padding:0 28px;display:none}@media (width>=768px){.desktop-header[data-v-5f322d95]{padding:0 var(--page-padding);gap:16px;display:flex}}@media (width>=1200px){.desktop-header[data-v-5f322d95]{padding:0 var(--page-padding);gap:24px}}.desktop-header__spacer[data-v-5f322d95]{flex:1;min-width:0}.desktop-header__actions[data-v-5f322d95]{flex-shrink:0;align-items:center;gap:16px;margin-inline-start:auto;display:flex}.desktop-header__company[data-v-5f322d95]{color:var(--color-text-muted);border-inline-end:1px solid var(--color-border);padding-inline-end:8px;font-size:.8125rem;font-weight:600;display:none}@media (width>=992px){.desktop-header__company[data-v-5f322d95]{display:block}}.desktop-header__icon-btn[data-v-5f322d95]{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);width:40px;height:40px;color:var(--color-text-muted);cursor:pointer;justify-content:center;align-items:center;display:flex;position:relative}.desktop-header__notif-badge[data-v-5f322d95]{top:4px;background:var(--color-danger);min-width:18px;height:18px;color:var(--color-on-primary,#fff);border:2px solid var(--color-surface);border-radius:9px;justify-content:center;align-items:center;padding:0 4px;font-size:.625rem;font-weight:700;display:flex;position:absolute;inset-inline-end:4px}.desktop-header__user-wrap[data-v-5f322d95]{position:relative}.desktop-header__user[data-v-5f322d95]{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);cursor:pointer;align-items:center;gap:10px;padding:6px 12px 6px 8px;font-family:inherit;display:flex}.desktop-header__avatar[data-v-5f322d95]{background:var(--color-primary);color:var(--color-surface)}.desktop-header__user-name[data-v-5f322d95]{color:var(--color-text);font-size:.875rem;font-weight:600;display:none}@media (width>=1200px){.desktop-header__user-name[data-v-5f322d95]{display:block}}.desktop-header__chevron[data-v-5f322d95]{color:var(--color-text-muted);transform:rotate(-90deg)}.desktop-header__menu[data-v-5f322d95]{top:calc(100% + 6px);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);min-width:160px;box-shadow:var(--shadow-md);z-index:100;padding:6px;position:absolute;inset-inline-end:0}.desktop-header__menu button[data-v-5f322d95]{text-align:start;cursor:pointer;border-radius:var(--radius-sm);width:100%;color:var(--color-text);background:0 0;border:none;padding:10px 12px;font-family:inherit;font-size:.875rem}.desktop-header__menu button[data-v-5f322d95]:hover{background:var(--color-elevated)}.desktop-header__menu-logout[data-v-5f322d95]{color:var(--color-danger)!important}.btn[data-v-3628a8bb]{border-radius:var(--radius-sm);cursor:pointer;border:none;justify-content:center;align-items:center;gap:8px;font-weight:600;transition:background .15s,opacity .15s;display:inline-flex}.btn[data-v-3628a8bb]:disabled{opacity:.55;cursor:not-allowed}.btn-block[data-v-3628a8bb]{width:100%}.btn-sm[data-v-3628a8bb]{min-height:36px;padding:0 14px;font-size:.8125rem}.btn-md[data-v-3628a8bb]{min-height:var(--btn-height);padding:0 24px;font-size:.9375rem}.btn-lg[data-v-3628a8bb]{min-height:52px;padding:0 28px;font-size:1rem}.btn-primary[data-v-3628a8bb]{background:var(--color-primary);color:var(--color-surface)}.btn-primary[data-v-3628a8bb]:not(:disabled):hover{background:var(--color-primary-dark)}.btn-secondary[data-v-3628a8bb]{background:var(--color-primary-light);color:var(--color-primary)}.btn-outline[data-v-3628a8bb]{color:var(--color-primary);border:1.5px solid var(--color-primary);background:0 0}.btn-danger[data-v-3628a8bb]{background:var(--color-danger);color:var(--color-surface)}.btn-ghost[data-v-3628a8bb]{color:var(--color-text-muted);background:0 0}.btn-spinner[data-v-3628a8bb]{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:16px;height:16px;animation:.6s linear infinite spin-3628a8bb}@keyframes spin-3628a8bb{to{transform:rotate(360deg)}}.confirm-dialog[data-v-2e50e2a7]{padding:20px}.confirm-dialog__title[data-v-2e50e2a7]{margin:0 0 8px;font-size:1.0625rem;font-weight:700}.confirm-dialog__message[data-v-2e50e2a7]{color:var(--color-text-muted);margin:0;font-size:.875rem;line-height:1.7}.confirm-dialog__actions[data-v-2e50e2a7]{margin-top:20px}@media (width>=768px){.confirm-dialog__actions[data-v-2e50e2a7]{flex-direction:row;justify-content:flex-end}}*,:before,:after,::backdrop{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 #0000;--un-ring-shadow:0 0 #0000;--un-shadow-inset: ;--un-shadow:0 0 #0000;--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:#93c5fd80;--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: }.btn-block{width:100%}.page-shell{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.sticky{position:sticky}.static{position:static}.isolate{isolation:isolate}.grid{display:grid}.inline-grid{display:inline-grid}.m-0{margin:0}.mb-3{margin-bottom:.75rem}.mr-4{margin-right:1rem}.mt-1{margin-top:.25rem}.inline,.empty-inline:empty{display:inline}.block{display:block}.inline-block{display:inline-block}.hidden{display:none}.h-10{height:2.5rem}.h1{height:.25rem}.h2{height:.5rem}.h3{height:.75rem}.min-w-0{min-width:0}.w-10{width:2.5rem}.flex{display:flex}.inline-flex{display:inline-flex}.flex-1{flex:1}.flex-shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.table{display:table}.border-collapse{border-collapse:collapse}.transform{transform:translateX(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotateZ(var(--un-rotate-z)) skewX(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.resize{resize:both}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.b,.border{border-width:1px}.border-t{border-top-width:1px}.border-\[var\(--color-border\)\]{border-color:var(--color-border)}.rounded-\[var\(--radius-md\)\]{border-radius:var(--radius-md)}.rounded-full{border-radius:9999px}.bg-\[var\(--color-primary-soft\)\]{background-color:var(--color-primary-soft)}.bg-\[var\(--color-surface\)\]{background-color:var(--color-surface)}.p-4{padding:1rem}.px{padding-left:1rem;padding-right:1rem}.pt-3{padding-top:.75rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.text-\[var\(--color-danger\)\]{color:var(--color-danger)}.text-\[var\(--color-primary\)\]{color:var(--color-primary)}.text-\[var\(--color-success\)\]{color:var(--color-success)}.text-\[var\(--color-text-muted\)\],.text-muted{color:var(--color-text-muted)}.text-\[var\(--color-text\)\]{color:var(--color-text)}.text-white{--un-text-opacity:1;color:rgb(255 255 255/var(--un-text-opacity))}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.leading-relaxed{line-height:1.625}.italic{font-style:italic}.tabular-nums{--un-numeric-spacing:tabular-nums;font-variant-numeric:var(--un-ordinal) var(--un-slashed-zero) var(--un-numeric-figure) var(--un-numeric-spacing) var(--un-numeric-fraction)}.underline{text-decoration-line:underline}.tab{tab-size:4}.text-shadow{--un-text-shadow:0 0 1px var(--un-text-shadow-color,#0003),0 0 1px var(--un-text-shadow-color,#0100051a);text-shadow:var(--un-text-shadow)}.outline{outline-style:solid}.blur{--un-blur:blur(8px);filter:var(--un-blur) var(--un-brightness) var(--un-contrast) var(--un-drop-shadow) var(--un-grayscale) var(--un-hue-rotate) var(--un-invert) var(--un-saturate) var(--un-sepia)}.filter{filter:var(--un-blur) var(--un-brightness) var(--un-contrast) var(--un-drop-shadow) var(--un-grayscale) var(--un-hue-rotate) var(--un-invert) var(--un-saturate) var(--un-sepia)}.backdrop-filter{-webkit-backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia);backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter,backdrop-filter;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease,.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}@font-face{font-family:IRANSans;src:url(/assets/IRANSansWeb\(FaNum\)-BLA2CtIC.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:IRANSans;src:url(/assets/IRANSansWeb\(FaNum\)_Light-B637MNLG.woff2)format("woff2");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:IRANSans;src:url(/assets/IRANSansWeb\(FaNum\)_UltraLight-hW-WDKY9.woff2)format("woff2");font-weight:200;font-style:normal;font-display:swap}@font-face{font-family:IRANSans;src:url(/assets/IRANSansWeb\(FaNum\)_Medium-C2CKjrKB.woff2)format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:IRANSans;src:url(/assets/IRANSansWeb\(FaNum\)_Medium-C2CKjrKB.woff2)format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:IRANSans;src:url(/assets/IRANSansWeb\(FaNum\)_Bold-C8urhp07.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:IRANSans;src:url(/assets/IRANSansWeb\(FaNum\)_Black-BFAfOkt4.woff2)format("woff2");font-weight:900;font-style:normal;font-display:swap}:root{--color-primary:#0a353c;--color-primary-hover:#072a2f;--color-primary-soft:#e8f4f1;--color-primary-dark:#062428;--color-primary-light:#e8f4f1;--color-primary-rgb:10, 53, 60;--color-accent-navy:#0a353c;--color-accent-navy-rgb:10, 53, 60;--color-success:#1b8a5a;--color-success-light:#eaf8f1;--color-success-soft:#eaf8f1;--color-warning:#e8a317;--color-warning-light:#fff6e5;--color-danger:#dc3545;--color-danger-light:#fee2e2;--color-purple:#7c3aed;--color-purple-light:#ede9fe;--color-info:#3b6fa0;--color-info-light:#eef3f7;--color-bg:#eef1f0;--color-page-background:#eef1f0;--color-shell-bg:#eef1f0;--color-surface:#eef1f0;--color-border:#d8dedc;--color-text:#121212;--color-text-primary:#121212;--color-text-muted:#6b7280;--color-text-secondary:#6b7280;--color-tab-inactive-bg:#e4e8e6;--color-tab-inactive-text:#64748b;--color-summary-bg:#e4e8e6;--color-elevated:#eef1f0;--color-brand-warm:#f3ece3;--color-brand-warm-text:#1a202c;--color-brand-warm-muted:#718096;--color-level-gold:#c9a227;--color-level-gold-soft:#f7efd6;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--shadow-sm:none;--shadow-md:none;--shadow-card:none;--shadow-frame:0 8px 32px #0f172a1a;--nav-height:64px;--page-padding:16px;--page-padding-tablet:20px;--page-padding-desktop:28px;--page-gap:12px;--content-max-width:1360px;--form-max-width:520px;--auth-form-max-width:440px;--summary-panel-width:320px;--sidebar-width:240px;--sidebar-width-compact:72px;--header-height:70px;--app-shell-breakpoint:768px;--font-family:"IRANSans", "Tahoma", sans-serif;--btn-height:48px;--desktop-breakpoint:1200px}html.dark{--color-primary:#5eb8ad;--color-primary-hover:#7ad0c5;--color-primary-soft:#14353a;--color-primary-dark:#7ad0c5;--color-primary-light:#14353a;--color-primary-rgb:94, 184, 173;--color-accent-navy:#5eb8ad;--color-accent-navy-rgb:94, 184, 173;--color-success:#3dd68c;--color-success-light:#123528;--color-success-soft:#123528;--color-warning:#f5c14a;--color-warning-light:#3a2f14;--color-danger:#f47979;--color-danger-light:#3f1d22;--color-purple:#b39afa;--color-purple-light:#2a2144;--color-info:#7b9cff;--color-info-light:#1b2740;--color-bg:#0b0f14;--color-page-background:#0b0f14;--color-shell-bg:#0b0f14;--color-surface:#0b0f14;--color-elevated:#0b0f14;--color-border:#2a3444;--color-text:#eef2f8;--color-text-primary:#eef2f8;--color-text-muted:#9aa8bc;--color-text-secondary:#9aa8bc;--color-tab-inactive-bg:#1a2230;--color-tab-inactive-text:#9aa8bc;--color-summary-bg:#1a2230;--color-brand-warm:#2a241c;--color-brand-warm-text:#f3ebe0;--color-brand-warm-muted:#b9a88d;--color-level-gold:#e0c35a;--color-level-gold-soft:#3a3420;--shadow-sm:0 1px 2px #00000073;--shadow-md:0 8px 24px #00000073;--shadow-card:0 1px 2px #00000059, 0 8px 24px #00000059;--shadow-frame:0 12px 40px #00000080}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;height:100%;font-size:16px;overflow:hidden}body{font-family:var(--font-family);background:var(--color-shell-bg);color:var(--color-text);direction:rtl;height:100%;margin:0;line-height:1.5;overflow:hidden}#app{height:100dvh;overflow:hidden}*{scrollbar-width:none;-ms-overflow-style:none}::-webkit-scrollbar{width:0;height:0;display:none}a{color:var(--color-primary);text-decoration:none}button,input,select,textarea{font-family:inherit}input:not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=button]):not([type=reset]):not([type=file]):not([type=hidden]):not([type=image]):not([type=range]):not([type=color]),textarea,select,.persian-date-input__trigger,.time-input__trigger,.search-field__input,.field-select__trigger{background-color:#0000}input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield;text-align:right}.page{background:var(--color-bg);min-height:0;color:var(--color-text);flex-direction:column;flex:1;padding:0;display:flex;overflow:hidden}.page__scroll{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;flex:1;min-height:0;overflow-y:auto}.page__scroll--with-nav{padding-bottom:calc(12px + env(safe-area-inset-bottom,0px))}.page-title{color:var(--color-text);margin:0 0 4px;font-size:1.25rem;font-weight:700;line-height:1.35}.page-subtitle{color:var(--color-text-muted);margin:0;font-size:.875rem;line-height:1.5}.card{background:var(--color-elevated);border-radius:var(--radius-md);border:1px solid var(--color-border);box-shadow:none;color:var(--color-text);padding:16px}.auth-page{background:0 0}.auth-top{padding:8px var(--page-padding);background:var(--color-surface);grid-template-columns:40px 1fr 40px;align-items:center;gap:4px;display:grid}.auth-top__title{text-align:center;color:var(--color-text);margin:0;font-size:1rem;font-weight:700}.auth-top .icon-btn{cursor:pointer;width:40px;height:40px;color:var(--color-text);background:0 0;border:none;border-radius:12px;place-items:center;padding:0;display:grid}.auth-body{padding:20px var(--page-padding) 32px;background:0 0;flex-direction:column;gap:16px;display:flex}.auth-lead{color:var(--color-text-muted);margin:0;font-size:.875rem;line-height:1.6}.auth-page .card{width:100%;max-width:var(--auth-form-max-width);box-shadow:none;background:0 0;border:none;margin-inline:auto;padding:0}.auth-switch{width:100%;max-width:var(--auth-form-max-width);text-align:center;color:var(--color-text-muted);margin:0 auto;font-size:.875rem}.auth-switch a{color:var(--color-primary);font-weight:700}.auth-page .input,.auth-page .job-select,.auth-page .otp-box{border:1px solid #eeeef1;border-radius:12px}.auth-page .btn{border-radius:12px}.card+.card{margin-top:var(--page-gap)}.alert{border-radius:var(--radius-sm);padding:12px 14px;font-size:.875rem;line-height:1.5}.alert-info{background:var(--color-primary-light);color:var(--color-primary);border:1px solid #cbd5e1}.alert-warning{background:var(--color-warning-light);color:#9a3412;border:1px solid #fed7aa}.alert-success{background:var(--color-success-light);color:#155724;border:1px solid #c3e6cb}.alert-danger{background:var(--color-danger-light);color:#991b1b;border:1px solid #fecaca}.form-group{margin-bottom:16px}.form-label{color:var(--color-text);margin-bottom:6px;font-size:.875rem;font-weight:600;display:block}.form-hint{color:var(--color-text-muted);margin-top:4px;font-size:.75rem}.divider{background:var(--color-border);height:1px;margin:16px 0}.text-muted{color:var(--color-text-muted)}.text-sm{font-size:.875rem}.text-center{text-align:center}.mt-2{margin-top:8px}.mt-4{margin-top:16px}.mb-4{margin-bottom:16px}.flex-between{justify-content:space-between;align-items:center;gap:8px;display:flex}.sticky-footer{bottom:calc(var(--nav-height) + 12px);z-index:50;width:100%;max-width:100%;padding-inline:var(--page-padding);box-sizing:border-box;position:fixed;inset-inline:0}.sticky-footer-inner{max-width:100%}.no-nav .page{padding-bottom:0}.no-nav .sticky-footer{bottom:0}.dialog-overlay{z-index:200;background:#0f172a66;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.dialog-overlay .dialog{width:100%;max-width:400px}.dialog-actions{flex-direction:column;gap:8px;margin-top:16px;display:flex}.desktop-only,.desktop-only-flex,.desktop-only-grid{display:none!important}.mobile-hidden{display:block}.desktop-hidden{display:none!important}@media (width>=768px){.mobile-only,.mobile-block{display:none!important}.desktop-only{display:block!important}.mobile-hidden{display:none!important}.desktop-hidden{display:block!important}.desktop-only-flex{display:flex!important}.desktop-only-grid{display:grid!important}.page{background:0 0;padding:0}.page__scroll--with-nav{padding-bottom:0}}.page-fade-enter-active,.page-fade-leave-active,.page-forward-enter-active,.page-forward-leave-active,.page-back-enter-active,.page-back-leave-active{transition:opacity .22s,transform .22s}.page-fade-enter-from,.page-fade-leave-to{opacity:0}.page-forward-enter-from{opacity:0;transform:translate(-18px)}.page-forward-leave-to{opacity:0;transform:translate(12px)}.page-back-enter-from{opacity:0;transform:translate(18px)}.page-back-leave-to{opacity:0;transform:translate(-12px)}@media (prefers-reduced-motion:reduce){.page-fade-enter-active,.page-fade-leave-active,.page-forward-enter-active,.page-forward-leave-active,.page-back-enter-active,.page-back-leave-active{transition:none}}.app-shell{background:var(--color-shell-bg);width:100%;height:100dvh;display:flex;overflow:hidden}.app-layout{flex-direction:row;width:100%;height:100%;min-height:0;display:flex}.app-frame{background:var(--color-bg);width:100%;height:100%;color:var(--color-text);flex-direction:column;flex:1;min-width:0;display:flex;overflow:hidden}.app-main,.app-main__content{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.app-content{width:100%;min-height:0;max-width:var(--content-max-width);flex-direction:column;flex:1;margin-inline:auto;padding-inline:0;display:flex;position:relative}.page-transition{flex-direction:column;flex:1;width:100%;min-height:0;display:flex;overflow:hidden}.app-shell--with-nav{justify-content:stretch}.app-shell--with-nav .app-frame{max-width:100%;box-shadow:none;border-radius:0;margin:0}@media (width>=768px){.app-shell--with-nav,.app-shell--with-nav .app-frame{background:var(--color-page-background)}.app-shell--with-nav .app-layout{position:relative}.app-shell--with-nav .app-layout:after{content:"";top:var(--header-height);background:var(--color-border);z-index:30;pointer-events:none;height:1px;position:absolute;inset-inline:0}.app-shell--with-nav .app-main__content{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;overflow:hidden auto}.app-shell--with-nav .app-content,.app-shell--with-nav .page-transition{flex:1 0 auto;min-height:min-content;overflow:visible}.app-shell--with-nav .page-transition>*{flex:1 0 auto;height:auto;min-height:min-content;max-height:none;overflow:visible}}.app-shell--no-nav{background:var(--color-page-background);justify-content:center;align-items:center;padding:16px}.app-shell--no-nav .app-layout{max-width:var(--form-max-width);width:100%;height:auto;min-height:0;max-height:calc(100dvh - 32px);overflow:hidden}.app-shell--no-nav .app-frame{max-width:var(--form-max-width);border-radius:var(--radius-lg);width:100%;height:auto;min-height:0;max-height:calc(100dvh - 32px);box-shadow:var(--shadow-frame);background:var(--color-surface);overscroll-behavior:contain;-webkit-overflow-scrolling:touch;overflow:hidden auto}.app-shell--no-nav .app-main,.app-shell--no-nav .app-main__content,.app-shell--no-nav .app-content,.app-shell--no-nav .page-transition{flex:1 0 auto;height:auto;min-height:min-content;overflow:visible}.app-shell--no-nav .app-content{padding-inline:var(--page-padding)}.app-shell--no-nav .page{background:0 0;min-height:auto;overflow:visible}.app-shell--no-nav.app-shell--wide .app-layout,.app-shell--no-nav.app-shell--wide .app-frame{max-width:min(var(--content-max-width), calc(100vw - 32px))}.app-shell--no-nav.app-shell--wide .app-frame{background:var(--color-bg)}.app-shell--immersive{background:#efe8df;justify-content:stretch;align-items:stretch;padding:0}.app-shell--immersive .app-layout,.app-shell--immersive .app-frame{width:100%;max-width:none;height:100%;max-height:none;box-shadow:none;background:0 0;border-radius:0;overflow:hidden}.app-shell--immersive .app-main,.app-shell--immersive .app-main__content,.app-shell--immersive .app-content,.app-shell--immersive .page-transition{flex:1;height:100%;min-height:0;overflow:hidden}.app-shell--immersive .page-transition{flex-direction:column;display:flex}.app-shell--immersive .page-transition>*{flex:1;height:100%;min-height:0}.app-shell--immersive .app-content{max-width:none;padding-inline:0}.app-shell--immersive .page{background:0 0;height:100%;min-height:0;overflow:hidden}@media (width>=768px){.app-shell--immersive .page{flex:1;max-width:none;height:100%;min-height:0;margin:0;padding:0;overflow:hidden}.app-shell--no-nav{padding:24px}.app-shell--no-nav.app-shell--immersive{background:#141210;justify-content:center;align-items:center;padding:0}.app-shell--no-nav.app-shell--immersive .app-layout,.app-shell--no-nav.app-shell--immersive .app-frame{width:min(100%,430px);max-width:430px;height:100%;max-height:100dvh;box-shadow:none;border-radius:0;margin-inline:auto}.app-shell--no-nav .app-layout,.app-shell--no-nav .app-frame{max-height:calc(100dvh - 48px)}.app-shell--no-nav.app-shell--wide .app-layout,.app-shell--no-nav.app-shell--wide .app-frame{max-width:min(var(--content-max-width), calc(100vw - 48px))}:root{--page-padding:var(--page-padding-tablet);--nav-height:0px}html,body{height:auto;overflow:auto}#app{height:100dvh;overflow:hidden}*{scrollbar-width:thin;scrollbar-color:#cbd5e1 transparent}::-webkit-scrollbar{width:6px;height:6px;display:block}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:999px}.sticky-footer{max-width:min(var(--content-max-width), calc(100% - 2 * var(--page-padding)));bottom:0}.no-nav .sticky-footer{bottom:0}.auth-body{align-items:center;padding-block:32px 48px}.auth-lead,.auth-page .card,.auth-switch{width:100%;max-width:var(--auth-form-max-width)}.company-select-page__list{grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:20px;display:grid}.company-brand-card{min-height:220px}.catalog-list{gap:var(--page-gap);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.product-list{gap:var(--page-gap);grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;display:grid}.product-page__scroll{padding-bottom:88px}.settlement-options,.mode-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;max-width:720px;margin-inline:auto;display:grid}.company-select-page{max-width:var(--content-max-width);width:100%;padding-inline:var(--page-padding);margin-inline:auto}.company-select-page__header{max-width:560px;margin-inline:auto}.catalog-page .page__scroll,.orders-page__scroll,.product-page .product-page__scroll{max-width:var(--content-max-width);width:100%;margin-inline:auto}.cart-page{max-width:var(--content-max-width);width:100%;padding-inline:var(--page-padding);margin-inline:auto}.cart-page__body{grid-template-rows:auto 1fr;grid-template-columns:minmax(0,1fr) minmax(260px,300px);align-items:start;gap:16px 20px;display:grid}.cart-page__company{grid-column:1/-1;margin-bottom:0;font-size:.9375rem}.cart-page__scroll{grid-column:1;max-height:none;overflow:visible}.cart-page__footer{box-shadow:var(--shadow-md);border-radius:var(--radius-md);border-top:none;border:1px solid var(--color-border);grid-area:1/2/-1;margin:0;padding:16px;position:sticky;top:16px}.cart-table__head{position:static}.check-list-page{max-width:var(--content-max-width);width:100%;padding-inline:var(--page-padding);margin-inline:auto}.check-list-page__scroll{max-width:var(--content-max-width);width:100%;margin-inline:auto}.summary-cards{gap:16px}.checks-list{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:12px;display:grid}.rass-panel{max-width:480px;margin-inline:auto}.profile-page__scroll{max-width:var(--content-max-width);width:100%;margin-inline:auto}.profile-menu{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.profile-menu__item{border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-sm)}.order-detail-page__body{-webkit-overflow-scrolling:touch;width:100%;max-width:none;margin-inline:0;overflow-y:auto}.order-detail-page__footer{width:100%;max-width:none;margin-inline:0}.checkout-page__scroll,.cash-page__scroll,.settlement-page__scroll,.check-mode-page__scroll{max-width:var(--form-max-width);width:100%;margin-inline:auto}.cash-page{max-width:var(--content-max-width);width:100%;margin-inline:auto}.cash-page__footer{max-width:var(--form-max-width);width:100%;box-shadow:none;border-top:none;grid-template-columns:1fr 1fr;gap:12px;margin-inline:auto;padding-top:16px;display:grid}.accounts-panel{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.bank-card+.bank-card,.cash-page__submit{margin-top:0}.order-info-card{max-width:520px;margin-inline:auto}.profile-edit-page .page__scroll{max-width:var(--form-max-width);width:100%;margin-inline:auto}.success-page__scroll{max-width:var(--form-max-width);flex-direction:column;align-items:center;width:100%;margin-inline:auto;display:flex}.dialog-overlay .dialog,.dialog-overlay .card.dialog{width:100%;max-width:480px}.dialog-actions{flex-direction:row;justify-content:flex-end}}@media (width>=1200px){:root{--page-padding:var(--page-padding-desktop)}.catalog-list{grid-template-columns:repeat(3,minmax(0,1fr))}.checks-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1440px){.product-list{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width>=1920px){:root{--content-max-width:1120px}}@media (width>=768px){:root{--page-padding:var(--page-padding-tablet);--nav-height:0px}.page{padding:20px var(--page-padding-tablet) 28px;max-width:var(--content-max-width);background:0 0;flex:1 0 auto;width:100%;min-height:auto;margin-inline:auto;overflow:visible}.page__scroll{flex:none;min-height:auto;overflow:visible}.page__scroll--with-nav{padding-bottom:0}.page-head{margin-bottom:20px}.page-head__title{color:var(--color-text);margin:0 0 4px;font-size:1.25rem;font-weight:700}.page-head__subtitle{color:var(--color-text-muted);margin:0;font-size:.875rem}.orders-page__desktop-head{margin-bottom:20px}.orders-page__desktop-title{color:var(--color-text);margin:0 0 6px;font-size:1.375rem;font-weight:700}.orders-page__desktop-subtitle{color:var(--color-text-muted);margin:0;font-size:.875rem}.orders-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:20px;display:grid}.orders-stat-card{background:var(--color-surface);border-radius:var(--radius-md);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);flex-direction:column;align-items:stretch;gap:0;min-height:0;padding:16px 18px 14px;display:flex}.orders-stat-card__head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;display:flex}.orders-stat-card__label{font-size:.8125rem;font-weight:600;line-height:1.4}.orders-stat-card__label--total,.orders-stat-card__label--review{color:var(--color-text)}.orders-stat-card__label--active{color:#ea580c}.orders-stat-card__label--done{color:var(--color-success)}.orders-stat-card__value{color:var(--color-text);font-variant-numeric:tabular-nums;margin:0 0 12px;font-size:1.75rem;font-weight:700;line-height:1.15}.orders-stat-card__link{color:var(--color-primary);cursor:pointer;text-underline-offset:3px;background:0 0;border:none;align-self:flex-start;margin-top:auto;padding:0;font-family:inherit;font-size:.8125rem;font-weight:600;text-decoration:underline}.orders-stat-card__link:hover{color:var(--color-primary-hover)}.orders-stat-card__icon{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.orders-stat-card__icon--total,.orders-stat-card__icon--review{background:var(--color-primary-soft);color:var(--color-primary)}.orders-stat-card__icon--active{background:var(--color-warning-light);color:#ea580c}.orders-stat-card__icon--done{background:var(--color-success-soft);color:var(--color-success)}.orders-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.orders-toolbar__actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.orders-toolbar__filter-btn{border-radius:var(--radius-sm);background:var(--color-primary);color:#fff;cursor:pointer;white-space:nowrap;border:none;align-items:center;gap:8px;height:40px;padding:0 18px;font-family:inherit;font-size:.875rem;font-weight:600;display:inline-flex}.orders-toolbar__filter-btn:hover{background:var(--color-primary-hover)}.orders-toolbar__pills{flex-wrap:wrap;flex:1;justify-content:flex-end;align-items:center;gap:8px;min-width:0;display:flex}.orders-filter-pill{border:1px solid var(--color-border);background:var(--color-surface);height:36px;color:var(--color-text-muted);cursor:pointer;white-space:nowrap;border-radius:999px;padding:0 16px;font-family:inherit;font-size:.8125rem;font-weight:500;transition:background .15s,color .15s,border-color .15s}.orders-filter-pill:hover{color:var(--color-text);border-color:#cbd5e1}.orders-filter-pill--active{background:var(--color-primary-soft);color:var(--color-primary);border-color:#c7d7ff;font-weight:600}.orders-table-wrap{background:var(--color-surface);border-radius:var(--radius-md);border:1px solid var(--color-border);box-shadow:var(--shadow-card);overflow:hidden}.orders-table-scroll{overflow-x:auto}.orders-table{border-collapse:collapse;width:100%;min-width:720px;font-size:.875rem}.orders-table th{text-align:start;color:var(--color-text-muted);background:var(--color-bg);border-bottom:1px solid var(--color-border);white-space:nowrap;padding:14px 16px;font-size:.8125rem;font-weight:600}.orders-table td{border-bottom:1px solid var(--color-border);color:var(--color-text);vertical-align:middle;background:var(--color-surface);padding:16px}.orders-table tr:last-child td{border-bottom:none}.orders-table tbody tr:hover td{background:var(--color-elevated)}.orders-table__number{color:var(--color-text);white-space:nowrap;font-weight:700}.orders-table__amount{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}.orders-table__date{color:var(--color-text-muted);white-space:nowrap;font-size:.8125rem}.orders-table__actions{align-items:center;gap:8px;display:flex}.orders-table__action{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-primary);cursor:pointer;white-space:nowrap;padding:7px 16px;font-family:inherit;font-size:.8125rem;font-weight:600}.orders-table__action:hover{background:var(--color-primary-soft);border-color:#c7d7ff}.orders-table__menu{border-radius:var(--radius-sm);width:34px;height:34px;color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:flex}.orders-table__menu:hover{background:var(--color-elevated);color:var(--color-text)}.orders-pagination{border-top:1px solid var(--color-border);color:var(--color-text-muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:14px 16px;font-size:.8125rem;display:flex}.orders-pagination__summary{white-space:nowrap}.orders-pagination__controls{align-items:center;gap:4px;display:flex}.orders-pagination__arrow{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);cursor:pointer;width:32px;height:32px;color:var(--color-text);justify-content:center;align-items:center;padding:0;display:flex}.orders-pagination__arrow:disabled{opacity:.4;cursor:not-allowed}.orders-pagination__arrow:not(:disabled):hover{border-color:var(--color-primary);color:var(--color-primary)}.orders-pagination__arrow-icon--prev{transform:scaleX(-1)}.orders-pagination__arrow-icon--next{transform:none}.orders-pagination__ellipsis{text-align:center;min-width:24px;color:var(--color-text-muted)}.orders-pagination__page{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);cursor:pointer;min-width:32px;height:32px;color:var(--color-text);padding:0 6px;font-family:inherit;font-size:.8125rem}.orders-pagination__page:hover:not(.orders-pagination__page--active){border-color:var(--color-primary);color:var(--color-primary)}.orders-pagination__page--active{background:var(--color-primary);border-color:var(--color-primary);color:#fff;font-weight:600}.product-page__layout{grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:24px;display:grid}.product-page__main{min-width:0}.product-page__sidebar{position:sticky;top:16px}.cart-summary-panel{background:var(--color-surface);border-radius:var(--radius-md);border:1px solid var(--color-border);box-shadow:var(--shadow-card);padding:20px}.cart-summary-panel__title{color:var(--color-text);border-bottom:1px solid var(--color-border);margin:0 0 16px;padding-bottom:12px;font-size:.9375rem;font-weight:700}.cart-summary-panel__row{justify-content:space-between;align-items:center;padding:8px 0;font-size:.875rem;display:flex}.cart-summary-panel__row span:first-child{color:var(--color-text-muted)}.cart-summary-panel__row strong{color:var(--color-text)}.cart-summary-panel__btn{margin-top:16px}.product-page__scroll{padding-bottom:0}.product-page .sticky-footer{display:none}.product-list{grid-template-columns:repeat(2,minmax(0,1fr))}.cart-page{max-width:var(--content-max-width);padding:20px var(--page-padding-tablet) 28px;background:0 0;margin-inline:auto}.cart-page__desktop-title{margin:0 0 16px;font-size:1.25rem;font-weight:700}.cart-page__body{grid-template-columns:minmax(0,1fr) minmax(280px,320px);align-items:start;gap:20px 24px;display:grid}.cart-page__company{grid-column:1/-1}.order-detail-page{max-width:none;padding:24px var(--page-padding) 32px;background:0 0;height:100%;margin-inline:0;overflow:hidden}.order-detail-back{color:var(--color-primary);cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;margin-bottom:12px;padding:0;font-family:inherit;font-size:.875rem;font-weight:600;display:inline-flex}.company-select-page{max-width:var(--content-max-width);padding:24px var(--page-padding-desktop);background:0 0;margin-inline:auto}.catalog-page{background:0 0}.page.calite-detail,.page.calite-hub{background:#f4f0ed;max-width:none;padding:0;overflow:visible}.catalog-list{grid-template-columns:repeat(3,minmax(0,1fr))}.profile-page{background:0 0}.profile-hero{border-radius:var(--radius-md);margin-inline:0}}@media (width>=1200px){:root{--page-padding:var(--page-padding-desktop)}.page{padding:24px var(--page-padding-desktop) 32px}.page.calite-detail,.page.calite-hub{padding:0}.orders-stats{gap:16px;margin-bottom:24px}.orders-page__desktop-head{margin-bottom:24px}.orders-toolbar{margin-bottom:20px}.catalog-list{grid-template-columns:repeat(3,minmax(0,1fr))}.product-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=768px){.desktop-page{width:100%;min-height:auto;max-width:var(--content-max-width);padding:20px var(--page-padding) 28px;box-sizing:border-box;background:0 0;flex-direction:column;flex:1 0 auto;margin-inline:auto;display:flex}.desktop-page__head{margin-bottom:20px}.desktop-page__title{color:var(--color-text);margin:0 0 6px;font-size:1.375rem;font-weight:700}.desktop-page__subtitle{color:var(--color-text-muted);margin:0;font-size:.875rem}.desktop-two-col{grid-template-columns:minmax(0,1fr);align-items:start;gap:24px;display:grid}.desktop-two-col__main{min-width:0}.desktop-summary-panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-card);padding:20px;position:sticky;top:16px}.desktop-summary-panel__title{border-bottom:1px solid var(--color-border);margin:0 0 16px;padding-bottom:12px;font-size:.9375rem;font-weight:700}.desktop-summary-panel__row{justify-content:space-between;align-items:center;gap:12px;padding:8px 0;font-size:.875rem;display:flex}.desktop-summary-panel__row span:first-child{color:var(--color-text-muted)}.desktop-summary-panel__row strong{color:var(--color-text);font-variant-numeric:tabular-nums}.desktop-summary-panel__action{margin-top:16px}.desktop-table-wrap{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-card);width:100%;min-width:0;overflow:hidden}.desktop-table-scroll{-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;overflow-x:auto}.desktop-table{border-collapse:collapse;width:100%;min-width:560px;font-size:.875rem}.desktop-table th{text-align:start;color:var(--color-text-muted);background:var(--color-bg);border-bottom:1px solid var(--color-border);white-space:nowrap;padding:12px 16px;font-size:.8125rem;font-weight:600}.desktop-table td{border-bottom:1px solid var(--color-border);color:var(--color-text);vertical-align:middle;background:var(--color-surface);padding:14px 16px}.desktop-table tbody tr:last-child td{border-bottom:none}.desktop-table tbody tr:hover td{background:var(--color-elevated)}.desktop-grid-2{grid-template-columns:repeat(2,minmax(280px,1fr));gap:16px;display:grid}.desktop-grid-3{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.desktop-grid-4{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.desktop-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.desktop-toolbar__actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.desktop-btn-compact{min-width:120px;width:auto!important;padding-inline:20px!important}.desktop-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.desktop-form-grid__full{grid-column:1/-1}.desktop-checkout-shell{width:100%;max-width:var(--content-max-width);padding:20px var(--page-padding) 28px;box-sizing:border-box;margin-inline:auto}.desktop-settlement-grid{grid-template-columns:repeat(2,minmax(280px,380px));justify-content:center;gap:20px;max-width:820px;margin-inline:auto;display:grid}.desktop-company-grid{grid-template-columns:repeat(2,minmax(280px,400px));justify-content:center;gap:20px;width:100%;max-width:900px;margin-inline:auto;display:grid}}@media (width>=1200px){.desktop-page,.desktop-checkout-shell{padding:24px var(--page-padding) 32px}.desktop-page__head{margin-bottom:24px}.desktop-two-col:has(>.desktop-summary-panel){grid-template-columns:minmax(0, 1fr) var(--summary-panel-width,320px)}.desktop-grid-3{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.desktop-grid-4{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}}@media (width>=1440px){.desktop-grid-3{grid-template-columns:repeat(4,minmax(0,1fr))}} diff --git a/dist/assets/useGoBack-CgNp0uP9.js b/dist/assets/useGoBack-Ds4z3swU.js similarity index 61% rename from dist/assets/useGoBack-CgNp0uP9.js rename to dist/assets/useGoBack-Ds4z3swU.js index 2a28c5f..cbf5e42 100644 --- a/dist/assets/useGoBack-CgNp0uP9.js +++ b/dist/assets/useGoBack-Ds4z3swU.js @@ -1 +1 @@ -import{_ as e}from"./BasicIcon-C6boaehV.js";function t(t=`/`){let n=e();function r(){if(window.history.length>1){n.back();return}n.push(t)}return{goBack:r}}export{t}; \ No newline at end of file +import{_ as e}from"./BasicIcon-Bnxm-DKk.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-BV4a0r6K.js b/dist/assets/useRequirePricedOrder-CUckkgqU.js similarity index 72% rename from dist/assets/useRequirePricedOrder-BV4a0r6K.js rename to dist/assets/useRequirePricedOrder-CUckkgqU.js index d43d56d..f2b772e 100644 --- a/dist/assets/useRequirePricedOrder-BV4a0r6K.js +++ b/dist/assets/useRequirePricedOrder-CUckkgqU.js @@ -1 +1 @@ -import{A as e,_ as t,g as n,tt as r}from"./BasicIcon-C6boaehV.js";import{d as i}from"./index-fdhs4HNc.js";import{n as a}from"./orderInvoice-B0L1Aeuk.js";function o(){let o=n(),s=t(),c=i(),l=e(()=>o.params.id),u=e(()=>c.getOrderById(l.value)),d=e(()=>a(u.value));function f(e){e&&(a(e)||s.replace(`/orders/${e.id}`))}return r(l,async e=>{e&&f(c.getOrderById(e)??await c.fetchOrder(e))},{immediate:!0}),r(u,e=>{f(e)}),{orderId:l,order:u,invoiceReady:d}}export{o as t}; \ No newline at end of file +import{A as e,_ as t,g as n,nt as r}from"./BasicIcon-Bnxm-DKk.js";import{d as i}from"./index-DB4cQnln.js";import{n as a}from"./orderInvoice-B0L1Aeuk.js";function o(){let o=n(),s=t(),c=i(),l=e(()=>o.params.id),u=e(()=>c.getOrderById(l.value)),d=e(()=>a(u.value));function f(e){e&&(a(e)||s.replace(`/orders/${e.id}`))}return r(l,async e=>{e&&f(c.getOrderById(e)??await c.fetchOrder(e))},{immediate:!0}),r(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/validation-BD7oi-2I.js b/dist/assets/validation-Duyyve7l.js similarity index 95% rename from dist/assets/validation-BD7oi-2I.js rename to dist/assets/validation-Duyyve7l.js index 9c03378..87202cc 100644 --- a/dist/assets/validation-BD7oi-2I.js +++ b/dist/assets/validation-Duyyve7l.js @@ -1 +1 @@ -import{c as e}from"./format-BHJptHdF.js";function t(e){if(!/^\d{10}$/.test(e)||/^(\d)\1{9}$/.test(e))return!1;let t=Number(e[9]),n=0;for(let t=0;t<9;t++)n+=Number(e[t])*(10-t);let r=n%11;return r<2?t===r:t===11-r}function n(e){return/^\d{16}$/.test(e.replace(/\s/g,``))}function r(t){return/^09\d{9}$/.test(e(t))}function i(e,t,n,r,i=0){if(!Number.isFinite(e)||e<=0)return{valid:!1,message:`متراژ باید عددی بزرگ‌تر از صفر باشد.`};if(er){let e=r-(n-i);return{valid:!1,message:`حداکثر متراژ قابل ثبت در هر فاکتور ${r} متر است. شما فقط می‌توانید ${Math.max(0,e)} متر دیگر به این سفارش اضافه کنید.`}}return{valid:!0}}function a(e){return[`image/jpeg`,`image/png`,`image/webp`].includes(e.type)?e.size>5242880?{valid:!1,message:`حجم تصویر نباید بیشتر از ۵ مگابایت باشد.`}:{valid:!0}:{valid:!1,message:`فرمت تصویر مجاز نیست. (JPG, PNG, WEBP)`}}async function o(e){return new Promise((t,n)=>{let r=new FileReader;r.onload=()=>t(r.result),r.onerror=n,r.readAsDataURL(e)})}export{r as a,t as i,a as n,n as o,i as r,o as t}; \ No newline at end of file +import{l as e}from"./format-C72AoJ2H.js";function t(e){if(!/^\d{10}$/.test(e)||/^(\d)\1{9}$/.test(e))return!1;let t=Number(e[9]),n=0;for(let t=0;t<9;t++)n+=Number(e[t])*(10-t);let r=n%11;return r<2?t===r:t===11-r}function n(e){return/^\d{16}$/.test(e.replace(/\s/g,``))}function r(t){return/^09\d{9}$/.test(e(t))}function i(e,t,n,r,i=0){if(!Number.isFinite(e)||e<=0)return{valid:!1,message:`متراژ باید عددی بزرگ‌تر از صفر باشد.`};if(er){let e=r-(n-i);return{valid:!1,message:`حداکثر متراژ قابل ثبت در هر فاکتور ${r} متر است. شما فقط می‌توانید ${Math.max(0,e)} متر دیگر به این سفارش اضافه کنید.`}}return{valid:!0}}function a(e){return[`image/jpeg`,`image/png`,`image/webp`].includes(e.type)?e.size>5242880?{valid:!1,message:`حجم تصویر نباید بیشتر از ۵ مگابایت باشد.`}:{valid:!0}:{valid:!1,message:`فرمت تصویر مجاز نیست. (JPG, PNG, WEBP)`}}async function o(e){return new Promise((t,n)=>{let r=new FileReader;r.onload=()=>t(r.result),r.onerror=n,r.readAsDataURL(e)})}export{r as a,t as i,a as n,n as o,i as r,o as t}; \ No newline at end of file diff --git a/dist/index.html b/dist/index.html index df954f3..aa288bd 100644 --- a/dist/index.html +++ b/dist/index.html @@ -6,16 +6,16 @@ سامانه سفارش عمده پارچه - - - - - - - - + + + + + + + + - +
diff --git a/src/assets/styles/main.css b/src/assets/styles/main.css index ea1f04f..8af6996 100644 --- a/src/assets/styles/main.css +++ b/src/assets/styles/main.css @@ -2,9 +2,9 @@ /* Brand — sampled from mockups/11-my-profile + FAB/CTA screens */ --color-primary: #0a353c; --color-primary-hover: #072a2f; - --color-primary-soft: #e8f4f1; + --color-primary-soft: color-mix(in srgb, var(--color-primary) 14%, #ffffff); --color-primary-dark: #062428; - --color-primary-light: #e8f4f1; + --color-primary-light: var(--color-primary-soft); --color-primary-rgb: 10, 53, 60; --color-accent-navy: #0a353c; --color-accent-navy-rgb: 10, 53, 60; @@ -65,9 +65,9 @@ html.dark { --color-primary: #5eb8ad; --color-primary-hover: #7ad0c5; - --color-primary-soft: #14353a; + --color-primary-soft: color-mix(in srgb, var(--color-primary) 22%, var(--color-bg)); --color-primary-dark: #7ad0c5; - --color-primary-light: #14353a; + --color-primary-light: var(--color-primary-soft); --color-primary-rgb: 94, 184, 173; --color-accent-navy: #5eb8ad; --color-accent-navy-rgb: 94, 184, 173; diff --git a/src/components/customers/CustomerCreateForm.vue b/src/components/customers/CustomerCreateForm.vue index 1924452..e33ef0c 100644 --- a/src/components/customers/CustomerCreateForm.vue +++ b/src/components/customers/CustomerCreateForm.vue @@ -1,5 +1,5 @@ diff --git a/src/views/cart/CartView.vue b/src/views/cart/CartView.vue index 0aeb669..30e61b0 100644 --- a/src/views/cart/CartView.vue +++ b/src/views/cart/CartView.vue @@ -1,6 +1,7 @@ @@ -68,7 +69,7 @@ function goToOrdering() {

سقف متراژ تکمیل شد

- سقف متراژ حداقل یک شرکت در سبد پر شده است. می‌توانید همین پیش‌سفارش‌ها را ثبت کنید یا سبد را خالی کرده و فاکتور جدید بسازید. + سقف متراژ مجاز این سفارش پر شده است. می‌توانید همین پیش‌سفارش را ثبت کنید یا سبد را خالی کرده و سفارش جدید بسازید.

diff --git a/src/views/cart/components/DesktopCartPage.vue b/src/views/cart/components/DesktopCartPage.vue index 52262cb..fe758d4 100644 --- a/src/views/cart/components/DesktopCartPage.vue +++ b/src/views/cart/components/DesktopCartPage.vue @@ -69,8 +69,8 @@ const quickLinks = [

سبد خرید

-

- {{ companyName ? `شرکت‌ها: ${companyName}` : 'سبد خرید مشترک' }} +

+ تأمین‌کننده: {{ companyName }}

@@ -91,13 +91,13 @@ const quickLinks = [

- +
@@ -107,7 +107,6 @@ const quickLinks = [ محصول - شرکت کد متراژ (متر) حذف @@ -118,7 +117,6 @@ const quickLinks = [ {{ item.productName }} - {{ item.companyName || '—' }} {{ item.productCode }} {{ formatNumber(item.meterage) }} @@ -192,7 +190,7 @@ const quickLinks = [ {{ submitting ? 'در حال ثبت…' : 'ثبت پیش‌سفارش' }}

- اقلام همه شرکت‌ها در یک سبد و یک فاکتور ثبت می‌شوند؛ پس از قیمت‌گذاری، یک‌بار تسویه می‌کنید. + پس از ثبت سفارش، مدیریت قیمت‌گذاری می‌کند و فاکتور صادر می‌شود؛ سپس روش تسویه را انتخاب می‌کنید.

@@ -204,12 +202,12 @@ const quickLinks = [ راهنمای گام بعدی

- پس از انتخاب شرکت و افزودن محصولات، متراژ کل و سقف مجاز فاکتور را بررسی کنید. + محصولات موردنظر را به سبد اضافه کنید، متراژ کل را بررسی کنید و «ثبت پیش‌سفارش» را بزنید. - سپس برای تکمیل سفارش، گزینه «ادامه و انتخاب تسویه» را بزنید. + پس از قیمت‌گذاری، از صفحه سفارش روش تسویه را انتخاب می‌کنید.

diff --git a/src/views/cart/components/MobileCartPage.vue b/src/views/cart/components/MobileCartPage.vue index beee641..92abb99 100644 --- a/src/views/cart/components/MobileCartPage.vue +++ b/src/views/cart/components/MobileCartPage.vue @@ -44,8 +44,8 @@ const emit = defineEmits<{
-

- {{ companyName ? `شرکت‌ها: ${companyName}` : 'سبد خرید مشترک' }} +

+ تأمین‌کننده: {{ companyName }}

@@ -59,7 +59,6 @@ const emit = defineEmits<{
{{ item.productName }} کد: {{ item.productCode }} - {{ item.companyName }}
{{ formatNumber(item.meterage) }}
@@ -100,7 +99,7 @@ const emit = defineEmits<{

- پس از ثبت، همه اقلام در یک پیش‌سفارش واحد قرار می‌گیرند و مدیریت قیمت‌گذاری می‌کند. + پس از ثبت سفارش، کارشناسان قیمت‌گذاری می‌کنند و فاکتور برای شما صادر می‌شود.

ثبت پیش‌سفارش
@@ -174,7 +173,7 @@ const emit = defineEmits<{ min-height: 0; } -.cart-mobile-page__company { +.cart-mobile-page__meta { margin: 0 0 16px; font-size: 0.875rem; color: var(--color-text-muted); diff --git a/src/views/catalogs/CatalogListView.vue b/src/views/catalogs/CatalogListView.vue index a5df272..9cfd1f1 100644 --- a/src/views/catalogs/CatalogListView.vue +++ b/src/views/catalogs/CatalogListView.vue @@ -50,7 +50,7 @@ function getProductCount(catalogId: string) { subtitle="کالیته مورد نظر را انتخاب کنید" show-back centered - @back="router.push('/companies')" + @back="router.push('/catalogs')" />
diff --git a/src/views/catalogs/CatalogRequestView.vue b/src/views/catalogs/CatalogRequestView.vue index dfdad15..7a96c89 100644 --- a/src/views/catalogs/CatalogRequestView.vue +++ b/src/views/catalogs/CatalogRequestView.vue @@ -82,8 +82,14 @@ async function submit() {