From 6514b05d1802fa1ddbc4a129187ed64366ced82c Mon Sep 17 00:00:00 2001 From: mahmood Date: Thu, 29 Oct 2026 18:09:02 +0330 Subject: [PATCH] fix(money,orders): wage/gram-debt parity, atomic document confirm, expert edit, made-to-order, QA fixes - Rial wage and gram-debt arithmetic matched to the reference; order corrections keep debt in sync - Document confirm/un-confirm is a compare-and-swap (no double-applied cache under concurrency) - Settlement document and expert inputs validated (400 instead of 500) - Expert: edit / activate-deactivate own customers, adjust raw weights only - Made-to-order flow in the app, PreOrder.quantity migration - Order grids: customer column, sort keys; panel select search; pre-order quantity save - Rebuilt release artifacts Co-Authored-By: Claude Sonnet 5.5 --- DELIVERY.md | 6 +- ...e_type_script_setup_true_lang-wE6MaQCK.js} | 2 +- apps/admin-panel/dist/assets/Add-BB2qAVCI.js | 1 + apps/admin-panel/dist/assets/Add-CdH53yqV.js | 1 - ...ue_type_script_setup_true_lang-Bhji6saH.js | 1 + ...ue_type_script_setup_true_lang-Zo2rdVSj.js | 1 - .../dist/assets/AddBranches-DWxalK1k.js | 1 + .../dist/assets/AddBranches-DymI7uEo.js | 1 - ...ue_type_script_setup_true_lang-CIZbMJ7d.js | 1 - ...ue_type_script_setup_true_lang-Ds4yo_72.js | 1 + .../dist/assets/AddCustomer-Bfimekhg.js | 1 + .../dist/assets/AddCustomer-DnqegEEB.js | 1 - .../dist/assets/AddInvoice-CkuDWq78.js | 1 + .../dist/assets/AddInvoice-DbwyBxeJ.css | 1 - .../dist/assets/AddInvoice-DdE29E9r.js | 1 - .../dist/assets/AddInvoice-ZsR8qaoD.css | 1 + .../dist/assets/AddProduct-B3HJWpgQ.css | 1 - .../dist/assets/AddProduct-BiMN_lga.css | 1 + ...uct-CvfafZ03.js => AddProduct-DUZcRoso.js} | 2 +- .../dist/assets/AddWorkshop-BApQPfNS.js | 1 + .../dist/assets/AddWorkshop-DudIwgDB.js | 1 - ...e_type_script_setup_true_lang-C1UXqOZL.js} | 2 +- ...il-JeRg2GEi.js => AgentDetail-CTcXAMW4.js} | 2 +- ...D8zs_r.js => AppstoreOutlined-BRgpp4c5.js} | 2 +- .../dist/assets/BankerList-BVO4ofYV.js | 1 + .../dist/assets/BankerList-D669FBjo.js | 1 - ...e_vue_type_style_index_0_lang-B4iVMhZt.js} | 2 +- ...BcxYWwtK.js => CameraOutlined-JfS-rAEW.js} | 2 +- .../dist/assets/ChangePercent-2MR1RuUp.js | 1 - .../dist/assets/ChangePercent-DA97Ix9U.js | 1 + ...e_type_script_setup_true_lang-BtBj3fof.js} | 2 +- ...ments-DvxFdxEP.js => Comments-BDyc7xFA.js} | 2 +- .../{Const-BbvgiNia.js => Const-CwYj-wS4.js} | 2 +- ...iwnr.js => CreditCardOutlined-CIq9Sdft.js} | 2 +- ...Fa2XV1tc.js => CustomerDetail-ByDc8rdk.js} | 2 +- ...oard-DWJ-7hU1.js => Dashboard-D29XNQ4P.js} | 2 +- ...nput-DgUF2he7.js => DateInput-0_1fMgrR.js} | 2 +- apps/admin-panel/dist/assets/Edit-BJ5-os70.js | 1 - apps/admin-panel/dist/assets/Edit-C6iXEE0n.js | 1 + .../dist/assets/EditBranches-PcMrPvLE.js | 1 + .../dist/assets/EditBranches-VJ6QXuC9.js | 1 - .../dist/assets/EditBulkCustomer-BshDOCb8.js | 1 + .../dist/assets/EditBulkCustomer-DHEdY76M.js | 1 - .../dist/assets/EditInvoice-BIXjPtQa.js | 1 + .../dist/assets/EditInvoice-Z14oksL0.js | 1 - .../dist/assets/EditProduct-3lcOmFDK.js | 1 - .../dist/assets/EditProduct-Db-gCITq.js | 1 + .../dist/assets/EditReagent-Dlp0pEGi.js | 1 + .../dist/assets/EditReagent-DwXyXJ1x.js | 1 - .../assets/EditSingleCustomer-DTV5ZFem.js | 1 - .../assets/EditSingleCustomer-DaVDehIn.js | 1 + .../dist/assets/EditWorkshop-CCAz5Q3q.js | 1 - .../dist/assets/EditWorkshop-DfzVUJen.js | 1 + ...vFW.js => EnvironmentOutlined-BZFp8i4M.js} | 2 +- ...or404-CBtpcCz_.js => Error404-BQoXkfid.js} | 2 +- ...or500-DfUulvTr.js => Error500-uPAg0OcA.js} | 2 +- ...e_type_script_setup_true_lang-CXgI4BGC.js} | 2 +- ...lPage-C6nxZM2C.js => FullPage-BQwDeh1b.js} | 2 +- ...ck-BqXFuRfL.js => IamCallback-sHw34Y_i.js} | 2 +- ...e_type_script_setup_true_lang-B9gVJPft.js} | 2 +- apps/admin-panel/dist/assets/List-166e0qeN.js | 1 - .../{List-CLqbrntB.js => List-BRVkWgnF.js} | 2 +- apps/admin-panel/dist/assets/List-SPeRezZh.js | 1 + .../dist/assets/ListBranches-C7SXu9cB.js | 1 - .../dist/assets/ListBranches-HWP1sgoA.js | 1 + .../dist/assets/ListInvoice-C0gF64PN.js | 1 - .../dist/assets/ListInvoice-Kc7ntcss.js | 1 + ...e_type_script_setup_true_lang-YlEXklTr.js} | 2 +- ...tUser-V5KZlNnL.js => ListUser-6vbYcmi4.js} | 2 +- ...p-BIaGADxA.js => ListWorkshop-BqcYfnRu.js} | 2 +- ...d-IueoJDte.js => LockOutlined-Dute1ueQ.js} | 2 +- .../{Login-CsyZWAYt.js => Login-C0DeEoWB.js} | 2 +- .../{Main-DE7EPCye.js => Main-XjZjVgvH.js} | 2 +- ...ce-3Xkj-5w0.js => Maintenance-axbA62Hp.js} | 2 +- .../dist/assets/MakeOrder-CURJu9sW.css | 1 - .../dist/assets/MakeOrder-DEb98dwZ.js | 1 + .../dist/assets/MakeOrder-DOwP9BUX.css | 1 + .../dist/assets/MakeOrder-D_SjEFcs.js | 1 - ...-DqBj3zAX.js => NotAuthorized-DZ45zTfA.js} | 2 +- .../dist/assets/OmdeArchivedList-4HZ0YAiM.js | 1 - .../dist/assets/OmdeArchivedList-DVwW0GQo.js | 1 + .../dist/assets/OmdeCustomerList-BnaQmi8j.js | 1 + .../dist/assets/OmdeCustomerList-CVyvM4xg.js | 1 - .../dist/assets/OmdeList-CtPAuZzk.css | 1 - .../dist/assets/OmdeList-CzOQlZG1.js | 1 + .../dist/assets/OmdeList-D3y3JuDv.js | 1 - .../dist/assets/OmdeList-DFLQsm-6.js | 1 + .../dist/assets/OmdeList-Dlohchjn.css | 1 + .../dist/assets/OmdeList-aVLywWtp.js | 1 - .../assets/OmdeNonVerifiedList-CRSC0a38.js | 1 - .../assets/OmdeNonVerifiedList-Dmyix5RU.js | 1 + ...LYTJ.js => PercentageOutlined-IS1MVcbY.js} | 2 +- ...ion-ChUHkDie.js => Permission-CXDQqW2j.js} | 2 +- ...st-GHlxqjVF.js => ProductList-Cvdk4j7I.js} | 2 +- .../dist/assets/PromotionForm-B6PGO9Ts.js | 1 + .../dist/assets/PromotionForm-BbHzArCn.css | 1 - .../dist/assets/PromotionForm-CMK9v6id.css | 1 + .../dist/assets/PromotionForm-DL-pNvym.js | 1 - ...fWz1HOe.js => ReagentCustomer-CN5vQurl.js} | 2 +- ...st-C0dDuwVE.js => ReagentList-B_8NugUa.js} | 2 +- ... => SafetyCertificateOutlined-mD-ddSP4.js} | 2 +- ...JxMXy1I.js => SettingOutlined-E4OknxY2.js} | 2 +- ...d-B63CHExu.js => ShopOutlined-D8LgPxHa.js} | 2 +- .../dist/assets/ShopkeeperList-BEzGdfo_.js | 1 - .../dist/assets/ShopkeeperList-BhINz1-X.js | 1 + ...B9GIcC68.js => SingleCustomer-CZrbY03b.js} | 2 +- .../dist/assets/TaminList-CebUFGpf.css | 1 + .../dist/assets/TaminList-DqcIrDA5.css | 1 - .../dist/assets/TaminList-WWoJ26yi.js | 1 + .../dist/assets/TaminList-m6Vqk25d.js | 1 - ...d-Bdydtt7N.js => TeamOutlined-DL6Ofm69.js} | 2 +- ...e_type_script_setup_true_lang-DuvVMhj7.js} | 2 +- ...3.js => UnorderedListOutlined-CLUl5bxX.js} | 2 +- ...ac4nUC8.js => UserAddOutlined-Bpe7Keo_.js} | 2 +- ...ate-B0hNHwjp.js => UserCreate-CjovLfJM.js} | 2 +- .../dist/assets/UserEdit-QMU2tuNB.js | 1 + .../dist/assets/UserEdit-lnrPwbCv.js | 1 - ...d-yq90mQcC.js => UserOutlined-DeX82IP7.js} | 2 +- .../dist/assets/ViewOmdeCustomer-DFToMqq3.js | 1 + .../dist/assets/ViewOmdeCustomer-n6uGE_JK.js | 1 - .../assets/ViewSingleCustomer-CaDBHZh8.js | 1 + .../assets/ViewSingleCustomer-DmXKmHGI.js | 1 - ...ing-CXNK39dF.js => accounting-Bbumy49K.js} | 2 +- .../dist/assets/addFinDoc-kdexvNXV.js | 1 - .../dist/assets/addFinDoc-sT3KrSUV.js | 1 + ...ue_type_script_setup_true_lang-BXXIemK7.js | 1 - ...ue_type_script_setup_true_lang-C7dUyRNk.js | 1 + .../{auth-N_TMNrPz.js => auth-taL2eAff.js} | 2 +- ...-WLX8YCc1.js => autopromotion-ngLMgEP5.js} | 2 +- ...ue_type_script_setup_true_lang-Bh7ptZgl.js | 1 + ...ue_type_script_setup_true_lang-C_6AC_x3.js | 1 - ...yList-CLAq_V2X.js => cityList-Cc1Z6hFj.js} | 2 +- .../dist/assets/create-B3FDXHvx.css | 1 - .../dist/assets/create-BCbtKbMi.js | 1 - .../dist/assets/create-DRi1ARwy.css | 1 + .../dist/assets/create-jCm_K0UT.js | 1 + ...{create-Bz_jl_71.js => create-n0rRDFYE.js} | 2 +- ...{create-DSDeteBR.js => create-o6ZX-3sE.js} | 2 +- .../dist/assets/createCity-Dfoq0Y3F.js | 1 + .../dist/assets/createCity-IOL5uAp-.js | 1 - ...e_type_script_setup_true_lang-DCWOwlVG.js} | 2 +- ...ilters-BPYO-DKN.js => filters-CoNJlguG.js} | 2 +- .../admin-panel/dist/assets/icons-BRqF3liF.js | 1 + .../admin-panel/dist/assets/icons-BplZzYUR.js | 1 - .../{index-CJij4X3l.js => index-CpVArufm.js} | 8 +- .../admin-panel/dist/assets/index-DLK4s3ft.js | 1 + .../admin-panel/dist/assets/index-DbpLOoM-.js | 1 - .../{index-CKg-8s_Z.js => index-DjZc5EYL.js} | 2 +- apps/admin-panel/dist/assets/list-BUpibcCs.js | 1 - apps/admin-panel/dist/assets/list-C8ypErFY.js | 1 + .../dist/assets/model-BYVpc9QD.css | 1 - .../dist/assets/model-DB3OrB0q.css | 1 + .../admin-panel/dist/assets/model-mwiDYd1J.js | 1 + .../admin-panel/dist/assets/model-tqsMDjkK.js | 1 - ...{myData-Dl1l_agX.js => myData-DPVKtj6d.js} | 2 +- ...rs-ChrvxoA6.js => newsletters-O6c9pnMf.js} | 2 +- ...z.js => offersIgnore-add-edit-4VqJNFTd.js} | 2 +- ...tem-7Q53VUbN.js => order_item-CUVkIral.js} | 2 +- ...roduct-C5P80aHW.js => product-DIBhEedA.js} | 2 +- ...g_dJPi.js => productListModel-Ht1NntTk.js} | 2 +- .../assets/promotion_add_edit-BRbwsORn.js | 1 + .../assets/promotion_add_edit-jiuK4lfb.js | 1 - ...e_type_script_setup_true_lang-DaCHq3Nj.js} | 2 +- .../dist/assets/promotion_list-BpomTa7C.js | 1 + .../dist/assets/promotion_list-RkmZV5Nb.js | 1 - .../assets/promotion_tak_add_edit-Bc-tQJWp.js | 1 + .../assets/promotion_tak_add_edit-DA_k0I4c.js | 1 - ...e_type_script_setup_true_lang-BukTCIkf.js} | 2 +- .../{reg-CieCn523.js => reg-vVyzwPVS.js} | 2 +- ...{report-BZwqp4wm.js => report-BNLBN5x0.js} | 2 +- .../dist/assets/select--BgT6D7O.js | 1 + ...CKKhHCBR.js => singleCustomer-DCfVboVT.js} | 2 +- ...Ep06Uq.js => useDeleteHandler-K9FWNrnm.js} | 2 +- .../{user-DmSbNUqc.js => user-D29KoPC1.js} | 2 +- .../{wage-BgO7d8Zq.js => wage-CnYyduGf.js} | 2 +- ...{wallet-DkHAMmjF.js => wallet-CPY--I3Y.js} | 2 +- ...{wallet-DXWKA2NQ.js => wallet-R5LsWnVf.js} | 2 +- apps/admin-panel/dist/index.html | 2 +- apps/admin-panel/dist/version.json | 8 +- .../src/components/x-table/XTable.vue | 10 +- apps/admin-panel/src/utils/select.ts | 14 + .../src/views/apps/category/Add.vue | 3 +- .../src/views/apps/customer/bulkCustomer.vue | 3 +- .../src/views/apps/product/AddProduct.vue | 3 +- .../src/views/apps/product/ChangePercent.vue | 3 +- .../src/views/branch/AddBranches.vue | 3 +- .../src/views/branch/order/create.vue | 9 +- .../src/views/finical/addFinDoc.vue | 3 +- .../src/views/invoice/AddInvoice.vue | 3 +- .../admin-panel/src/views/order/MakeOrder.vue | 2 + apps/admin-panel/src/views/order/OmdeList.vue | 94 +- .../src/views/order/OmdeListModel.ts | 4 +- .../admin-panel/src/views/order/TaminList.vue | 13 +- .../src/views/order/TaminListModel.ts | 3 +- apps/admin-panel/src/views/order/create.vue | 22 +- .../src/views/promotion/PromotionForm.vue | 3 +- apps/admin-panel/src/views/statics/index.vue | 3 +- .../migration.sql | 3 + apps/api/prisma/schema.prisma | 3 + apps/api/release/app.js | 4342 ++++++++++------- .../migration.sql | 3 + .../api/release/vendor/.prisma/client/edge.js | 7 +- .../vendor/.prisma/client/index-browser.js | 1 + .../release/vendor/.prisma/client/index.d.ts | 65 + .../release/vendor/.prisma/client/index.js | 7 +- .../vendor/.prisma/client/package.json | 2 +- .../vendor/.prisma/client/schema.prisma | 3 + .../api/release/vendor/.prisma/client/wasm.js | 1 + apps/api/src/app.module.ts | 2 + apps/api/src/common/customer-input.ts | 32 + .../accounting-hooks.service.spec.ts | 55 + .../accounting-hooks.service.ts | 46 + .../accounting-sync.service.ts | 3 +- .../accounting-sync/document-check.spec.ts | 43 + .../modules/accounting-sync/document-check.ts | 17 + .../modules/accounting/ledger.service.spec.ts | 158 +- .../src/modules/accounting/ledger.service.ts | 146 +- .../accounting/reference-parity.spec.ts | 277 ++ .../admin-customers.service.ts | 28 +- .../admin-documents.service.spec.ts | 192 + .../admin-documents.service.ts | 173 +- .../admin-orders/admin-orders.controller.ts | 19 +- .../admin-orders/admin-orders.module.ts | 3 +- .../admin-orders/admin-orders.service.spec.ts | 214 + .../admin-orders/admin-orders.service.ts | 93 +- .../admin-preorders.service.spec.ts | 68 + .../admin-preorders.service.ts | 15 +- .../modules/admin-table/table.service.spec.ts | 26 + .../src/modules/admin-table/table.service.ts | 7 +- .../customer-preorders.controller.ts | 31 + .../customer-preorders.module.ts | 12 + .../customer-preorders.service.spec.ts | 87 + .../customer-preorders.service.ts | 129 + .../modules/orders/dto/create-order.dto.ts | 4 +- .../modules/orders/order-corrections.spec.ts | 280 ++ apps/api/src/modules/orders/orders.service.ts | 237 +- .../src/modules/pricing/wage.service.spec.ts | 74 + apps/api/src/modules/pricing/wage.service.ts | 32 +- .../modules/sales-agent/agent-orders.spec.ts | 23 + .../src/modules/sales-agent/agent-orders.ts | 22 +- .../sales-agent/sales-agent.service.ts | 3 +- .../sales-expert-app.controller.ts | 37 +- .../sales-expert-app.customers.spec.ts | 197 + .../sales-expert-app.module.ts | 3 +- .../sales-expert-app.service.ts | 190 +- ...D5o9arkH.js => AppPullRefresh-B0f-tYJA.js} | 2 +- ...C5Q3kWiJ.js => AppearanceView-DbutwzY3.js} | 2 +- .../dist/assets/CartView-B1YZE1vT.js | 1 - .../dist/assets/CartView-BXG2gOP6.js | 1 + .../dist/assets/CartView-Bhmq-OS2.css | 1 + .../dist/assets/CartView-CyRqcM3j.css | 1 - .../dist/assets/ChildOrdersView-BF3rQgcj.js | 1 - .../dist/assets/ChildOrdersView-C_bGdhOX.css | 1 + .../dist/assets/ChildOrdersView-D6xgBGGQ.css | 1 - .../dist/assets/ChildOrdersView-VI9JoZBd.js | 1 + ...BFYcJaFU.js => CollectionView-Ccz1xfLj.js} | 2 +- .../assets/CompleteProfileView-C7JLf-Nm.js | 1 + .../assets/CompleteProfileView-DupW6p4B.js | 1 - .../assets/CompleteProfileView-dA-JFzJ8.css | 1 + .../assets/CustomerChoiceView-BAraArtK.css | 1 + .../assets/CustomerChoiceView-DB7yiqRu.css | 1 - .../assets/CustomerChoiceView-TztEX5yz.js | 1 - .../assets/CustomerChoiceView-k6dxoQeC.js | 1 + .../dist/assets/DashboardView-0i6dxLCl.js | 1 + .../dist/assets/DashboardView-CBcbShu-.js | 1 - .../dist/assets/DashboardView-DjinhUjZ.css | 1 - .../dist/assets/DashboardView-IvrrMCbI.css | 1 + ...-G8Eq8gge.js => FavoritesView-D4uhWzf6.js} | 2 +- .../dist/assets/FormItemContext-DbjT2GfY.js | 1 - .../dist/assets/FormItemContext-i27DxbTo.js | 1 + ...eView-CmQuuH6B.js => HomeView-DkQixCVq.js} | 2 +- ...ck-DlXOWqWp.js => IamCallback-CJv82M1_.js} | 2 +- ...eyCode-Dl7BYvJp.js => KeyCode-CJkaCAgc.js} | 2 +- .../dist/assets/LoginRegisterView-BxGfq6Qb.js | 1 - .../dist/assets/LoginRegisterView-YXS01jJu.js | 1 + .../assets/MakeOrderStatusView-CTreLH8h.css | 1 + .../assets/MakeOrderStatusView-KNj-VY0s.js | 1 + .../dist/assets/MakeOrderView-BbkmtdQq.js | 1 + .../dist/assets/MakeOrderView-C9rL7TjE.css | 1 + ...iew-Ck-kfDLs.js => NewestView-BMWSaz4F.js} | 2 +- ...rqT9Y.js => NotificationsView-C1OS_0OW.js} | 2 +- .../dist/assets/OrdersView-ChZr4TeF.js | 1 + ...w-DNKGvr4J.css => OrdersView-DKHth8-i.css} | 2 +- .../dist/assets/OrdersView-DwH-CdbT.js | 1 - ...ageBar-DNaPusPm.js => PageBar-HEcoSwjE.js} | 2 +- ...rd-aZrPdL37.js => ProductCard-Rxk1Fz5I.js} | 2 +- ...ew-Bv3BZktW.js => ProfileView-CQEqt_G8.js} | 2 +- ...trip-BeFld7sY.js => RateStrip-BM0cz1ET.js} | 2 +- ...iew-DFtAMFYJ.js => ReportView-CSkjz93w.js} | 2 +- ...ut-CvqnREPV.js => SearchInput-DosQYiNS.js} | 2 +- .../dist/assets/SearchView-CF-TYwrT.js | 1 - .../dist/assets/SearchView-DRQJDTDf.js | 1 + ...ad-CvKB7By7.js => SectionHead-YsBbRh09.js} | 2 +- ...X.css => SingleImageUploader-BaDxKXWS.css} | 2 +- .../assets/SingleImageUploader-Cogbl9FI.js | 1 + ...Wfe7_D.js => TransactionsView-IbI6E-sw.js} | 2 +- ...e-KIY-JJk-.js => catalogStore-DqM2POWt.js} | 2 +- .../dist/assets/classCallCheck-BINKwNli.js | 1 + .../dist/assets/classCallCheck-DJjGN2cU.js | 1 - ...ilters-C_cKdZcl.js => filters-CmtC5ctw.js} | 2 +- .../{index-CN-v7uYp.js => index-6E0fX61D.js} | 42 +- .../{index-CQtdsSs3.js => index-BRKIhLwl.js} | 2 +- .../{index-FX8mzrjV.js => index-C6v9FxiB.js} | 4 +- .../dist/assets/isEqual-4qLLVpCV.js | 1 + ...hfR9Yx.js => usePagedProducts-Dfd2dvnx.js} | 2 +- apps/user-app-v2/dist/index.html | 2 +- apps/user-app-v2/dist/sw.js | 2 +- apps/user-app-v2/dist/version.json | 8 +- apps/user-app-v2/src/api/client.ts | 74 + .../src/components/product/CartItem.vue | 14 +- apps/user-app-v2/src/router/index.ts | 4 + apps/user-app-v2/src/stores/cartStore.ts | 12 + apps/user-app-v2/src/views/CartView.vue | 14 + .../src/views/expert/ChildOrdersView.vue | 208 +- .../src/views/expert/CustomerChoiceView.vue | 212 +- .../src/views/user/DashboardView.vue | 54 + .../src/views/user/MakeOrderStatusView.vue | 237 + .../src/views/user/MakeOrderView.vue | 197 + .../user-app-v2/src/views/user/OrdersView.vue | 6 +- docs/parity/01-ADMIN-MATRIX.md | 2 +- docs/parity/CHANGELOG.md | 99 + 321 files changed, 6984 insertions(+), 2170 deletions(-) rename apps/admin-panel/dist/assets/{AccountingSyncButton.vue_vue_type_script_setup_true_lang-CVFVkjGK.js => AccountingSyncButton.vue_vue_type_script_setup_true_lang-wE6MaQCK.js} (96%) create mode 100644 apps/admin-panel/dist/assets/Add-BB2qAVCI.js delete mode 100644 apps/admin-panel/dist/assets/Add-CdH53yqV.js create mode 100644 apps/admin-panel/dist/assets/Add.vue_vue_type_script_setup_true_lang-Bhji6saH.js delete mode 100644 apps/admin-panel/dist/assets/Add.vue_vue_type_script_setup_true_lang-Zo2rdVSj.js create mode 100644 apps/admin-panel/dist/assets/AddBranches-DWxalK1k.js delete mode 100644 apps/admin-panel/dist/assets/AddBranches-DymI7uEo.js delete mode 100644 apps/admin-panel/dist/assets/AddBranches.vue_vue_type_script_setup_true_lang-CIZbMJ7d.js create mode 100644 apps/admin-panel/dist/assets/AddBranches.vue_vue_type_script_setup_true_lang-Ds4yo_72.js create mode 100644 apps/admin-panel/dist/assets/AddCustomer-Bfimekhg.js delete mode 100644 apps/admin-panel/dist/assets/AddCustomer-DnqegEEB.js create mode 100644 apps/admin-panel/dist/assets/AddInvoice-CkuDWq78.js delete mode 100644 apps/admin-panel/dist/assets/AddInvoice-DbwyBxeJ.css delete mode 100644 apps/admin-panel/dist/assets/AddInvoice-DdE29E9r.js create mode 100644 apps/admin-panel/dist/assets/AddInvoice-ZsR8qaoD.css delete mode 100644 apps/admin-panel/dist/assets/AddProduct-B3HJWpgQ.css create mode 100644 apps/admin-panel/dist/assets/AddProduct-BiMN_lga.css rename apps/admin-panel/dist/assets/{AddProduct-CvfafZ03.js => AddProduct-DUZcRoso.js} (98%) create mode 100644 apps/admin-panel/dist/assets/AddWorkshop-BApQPfNS.js delete mode 100644 apps/admin-panel/dist/assets/AddWorkshop-DudIwgDB.js rename apps/admin-panel/dist/assets/{AddWorkshop.vue_vue_type_script_setup_true_lang-CYeQJKq0.js => AddWorkshop.vue_vue_type_script_setup_true_lang-C1UXqOZL.js} (97%) rename apps/admin-panel/dist/assets/{AgentDetail-JeRg2GEi.js => AgentDetail-CTcXAMW4.js} (96%) rename apps/admin-panel/dist/assets/{AppstoreOutlined-DvD8zs_r.js => AppstoreOutlined-BRgpp4c5.js} (95%) create mode 100644 apps/admin-panel/dist/assets/BankerList-BVO4ofYV.js delete mode 100644 apps/admin-panel/dist/assets/BankerList-D669FBjo.js rename apps/admin-panel/dist/assets/{BaseFormModal.vue_vue_type_style_index_0_lang-YLHOAWTN.js => BaseFormModal.vue_vue_type_style_index_0_lang-B4iVMhZt.js} (88%) rename apps/admin-panel/dist/assets/{CameraOutlined-BcxYWwtK.js => CameraOutlined-JfS-rAEW.js} (94%) delete mode 100644 apps/admin-panel/dist/assets/ChangePercent-2MR1RuUp.js create mode 100644 apps/admin-panel/dist/assets/ChangePercent-DA97Ix9U.js rename apps/admin-panel/dist/assets/{CityTreeSelect.vue_vue_type_script_setup_true_lang-7y8zYJ_W.js => CityTreeSelect.vue_vue_type_script_setup_true_lang-BtBj3fof.js} (95%) rename apps/admin-panel/dist/assets/{Comments-DvxFdxEP.js => Comments-BDyc7xFA.js} (77%) rename apps/admin-panel/dist/assets/{Const-BbvgiNia.js => Const-CwYj-wS4.js} (98%) rename apps/admin-panel/dist/assets/{CreditCardOutlined-Cz1giwnr.js => CreditCardOutlined-CIq9Sdft.js} (93%) rename apps/admin-panel/dist/assets/{CustomerDetail-Fa2XV1tc.js => CustomerDetail-ByDc8rdk.js} (98%) rename apps/admin-panel/dist/assets/{Dashboard-DWJ-7hU1.js => Dashboard-D29XNQ4P.js} (98%) rename apps/admin-panel/dist/assets/{DateInput-DgUF2he7.js => DateInput-0_1fMgrR.js} (89%) delete mode 100644 apps/admin-panel/dist/assets/Edit-BJ5-os70.js create mode 100644 apps/admin-panel/dist/assets/Edit-C6iXEE0n.js create mode 100644 apps/admin-panel/dist/assets/EditBranches-PcMrPvLE.js delete mode 100644 apps/admin-panel/dist/assets/EditBranches-VJ6QXuC9.js create mode 100644 apps/admin-panel/dist/assets/EditBulkCustomer-BshDOCb8.js delete mode 100644 apps/admin-panel/dist/assets/EditBulkCustomer-DHEdY76M.js create mode 100644 apps/admin-panel/dist/assets/EditInvoice-BIXjPtQa.js delete mode 100644 apps/admin-panel/dist/assets/EditInvoice-Z14oksL0.js delete mode 100644 apps/admin-panel/dist/assets/EditProduct-3lcOmFDK.js create mode 100644 apps/admin-panel/dist/assets/EditProduct-Db-gCITq.js create mode 100644 apps/admin-panel/dist/assets/EditReagent-Dlp0pEGi.js delete mode 100644 apps/admin-panel/dist/assets/EditReagent-DwXyXJ1x.js delete mode 100644 apps/admin-panel/dist/assets/EditSingleCustomer-DTV5ZFem.js create mode 100644 apps/admin-panel/dist/assets/EditSingleCustomer-DaVDehIn.js delete mode 100644 apps/admin-panel/dist/assets/EditWorkshop-CCAz5Q3q.js create mode 100644 apps/admin-panel/dist/assets/EditWorkshop-DfzVUJen.js rename apps/admin-panel/dist/assets/{EnvironmentOutlined-Cetl6vFW.js => EnvironmentOutlined-BZFp8i4M.js} (96%) rename apps/admin-panel/dist/assets/{Error404-CBtpcCz_.js => Error404-BQoXkfid.js} (89%) rename apps/admin-panel/dist/assets/{Error500-DfUulvTr.js => Error500-uPAg0OcA.js} (89%) rename apps/admin-panel/dist/assets/{FacilityList.vue_vue_type_script_setup_true_lang-z3KF0c-X.js => FacilityList.vue_vue_type_script_setup_true_lang-CXgI4BGC.js} (72%) rename apps/admin-panel/dist/assets/{FullPage-C6nxZM2C.js => FullPage-BQwDeh1b.js} (70%) rename apps/admin-panel/dist/assets/{IamCallback-BqXFuRfL.js => IamCallback-sHw34Y_i.js} (85%) rename apps/admin-panel/dist/assets/{ImageUploadInput.vue_vue_type_script_setup_true_lang-vRgyyG7o.js => ImageUploadInput.vue_vue_type_script_setup_true_lang-B9gVJPft.js} (96%) delete mode 100644 apps/admin-panel/dist/assets/List-166e0qeN.js rename apps/admin-panel/dist/assets/{List-CLqbrntB.js => List-BRVkWgnF.js} (91%) create mode 100644 apps/admin-panel/dist/assets/List-SPeRezZh.js delete mode 100644 apps/admin-panel/dist/assets/ListBranches-C7SXu9cB.js create mode 100644 apps/admin-panel/dist/assets/ListBranches-HWP1sgoA.js delete mode 100644 apps/admin-panel/dist/assets/ListInvoice-C0gF64PN.js create mode 100644 apps/admin-panel/dist/assets/ListInvoice-Kc7ntcss.js rename apps/admin-panel/dist/assets/{ListPageHeader.vue_vue_type_script_setup_true_lang-D07Lc14a.js => ListPageHeader.vue_vue_type_script_setup_true_lang-YlEXklTr.js} (87%) rename apps/admin-panel/dist/assets/{ListUser-V5KZlNnL.js => ListUser-6vbYcmi4.js} (84%) rename apps/admin-panel/dist/assets/{ListWorkshop-BIaGADxA.js => ListWorkshop-BqcYfnRu.js} (65%) rename apps/admin-panel/dist/assets/{LockOutlined-IueoJDte.js => LockOutlined-Dute1ueQ.js} (94%) rename apps/admin-panel/dist/assets/{Login-CsyZWAYt.js => Login-C0DeEoWB.js} (96%) rename apps/admin-panel/dist/assets/{Main-DE7EPCye.js => Main-XjZjVgvH.js} (97%) rename apps/admin-panel/dist/assets/{Maintenance-3Xkj-5w0.js => Maintenance-axbA62Hp.js} (88%) delete mode 100644 apps/admin-panel/dist/assets/MakeOrder-CURJu9sW.css create mode 100644 apps/admin-panel/dist/assets/MakeOrder-DEb98dwZ.js create mode 100644 apps/admin-panel/dist/assets/MakeOrder-DOwP9BUX.css delete mode 100644 apps/admin-panel/dist/assets/MakeOrder-D_SjEFcs.js rename apps/admin-panel/dist/assets/{NotAuthorized-DqBj3zAX.js => NotAuthorized-DZ45zTfA.js} (89%) delete mode 100644 apps/admin-panel/dist/assets/OmdeArchivedList-4HZ0YAiM.js create mode 100644 apps/admin-panel/dist/assets/OmdeArchivedList-DVwW0GQo.js create mode 100644 apps/admin-panel/dist/assets/OmdeCustomerList-BnaQmi8j.js delete mode 100644 apps/admin-panel/dist/assets/OmdeCustomerList-CVyvM4xg.js delete mode 100644 apps/admin-panel/dist/assets/OmdeList-CtPAuZzk.css create mode 100644 apps/admin-panel/dist/assets/OmdeList-CzOQlZG1.js delete mode 100644 apps/admin-panel/dist/assets/OmdeList-D3y3JuDv.js create mode 100644 apps/admin-panel/dist/assets/OmdeList-DFLQsm-6.js create mode 100644 apps/admin-panel/dist/assets/OmdeList-Dlohchjn.css delete mode 100644 apps/admin-panel/dist/assets/OmdeList-aVLywWtp.js delete mode 100644 apps/admin-panel/dist/assets/OmdeNonVerifiedList-CRSC0a38.js create mode 100644 apps/admin-panel/dist/assets/OmdeNonVerifiedList-Dmyix5RU.js rename apps/admin-panel/dist/assets/{PercentageOutlined-CtwjLYTJ.js => PercentageOutlined-IS1MVcbY.js} (94%) rename apps/admin-panel/dist/assets/{Permission-ChUHkDie.js => Permission-CXDQqW2j.js} (99%) rename apps/admin-panel/dist/assets/{ProductList-GHlxqjVF.js => ProductList-Cvdk4j7I.js} (91%) create mode 100644 apps/admin-panel/dist/assets/PromotionForm-B6PGO9Ts.js delete mode 100644 apps/admin-panel/dist/assets/PromotionForm-BbHzArCn.css create mode 100644 apps/admin-panel/dist/assets/PromotionForm-CMK9v6id.css delete mode 100644 apps/admin-panel/dist/assets/PromotionForm-DL-pNvym.js rename apps/admin-panel/dist/assets/{ReagentCustomer-BfWz1HOe.js => ReagentCustomer-CN5vQurl.js} (94%) rename apps/admin-panel/dist/assets/{ReagentList-C0dDuwVE.js => ReagentList-B_8NugUa.js} (84%) rename apps/admin-panel/dist/assets/{SafetyCertificateOutlined-Cr8bqGKo.js => SafetyCertificateOutlined-mD-ddSP4.js} (95%) rename apps/admin-panel/dist/assets/{SettingOutlined-BJxMXy1I.js => SettingOutlined-E4OknxY2.js} (97%) rename apps/admin-panel/dist/assets/{ShopOutlined-B63CHExu.js => ShopOutlined-D8LgPxHa.js} (96%) delete mode 100644 apps/admin-panel/dist/assets/ShopkeeperList-BEzGdfo_.js create mode 100644 apps/admin-panel/dist/assets/ShopkeeperList-BhINz1-X.js rename apps/admin-panel/dist/assets/{SingleCustomer-B9GIcC68.js => SingleCustomer-CZrbY03b.js} (92%) create mode 100644 apps/admin-panel/dist/assets/TaminList-CebUFGpf.css delete mode 100644 apps/admin-panel/dist/assets/TaminList-DqcIrDA5.css create mode 100644 apps/admin-panel/dist/assets/TaminList-WWoJ26yi.js delete mode 100644 apps/admin-panel/dist/assets/TaminList-m6Vqk25d.js rename apps/admin-panel/dist/assets/{TeamOutlined-Bdydtt7N.js => TeamOutlined-DL6Ofm69.js} (97%) rename apps/admin-panel/dist/assets/{TooltipBtn.vue_vue_type_script_setup_true_lang-xFR71kab.js => TooltipBtn.vue_vue_type_script_setup_true_lang-DuvVMhj7.js} (78%) rename apps/admin-panel/dist/assets/{UnorderedListOutlined-CHqEItu3.js => UnorderedListOutlined-CLUl5bxX.js} (97%) rename apps/admin-panel/dist/assets/{UserAddOutlined-Dac4nUC8.js => UserAddOutlined-Bpe7Keo_.js} (98%) rename apps/admin-panel/dist/assets/{UserCreate-B0hNHwjp.js => UserCreate-CjovLfJM.js} (98%) create mode 100644 apps/admin-panel/dist/assets/UserEdit-QMU2tuNB.js delete mode 100644 apps/admin-panel/dist/assets/UserEdit-lnrPwbCv.js rename apps/admin-panel/dist/assets/{UserOutlined-yq90mQcC.js => UserOutlined-DeX82IP7.js} (95%) create mode 100644 apps/admin-panel/dist/assets/ViewOmdeCustomer-DFToMqq3.js delete mode 100644 apps/admin-panel/dist/assets/ViewOmdeCustomer-n6uGE_JK.js create mode 100644 apps/admin-panel/dist/assets/ViewSingleCustomer-CaDBHZh8.js delete mode 100644 apps/admin-panel/dist/assets/ViewSingleCustomer-DmXKmHGI.js rename apps/admin-panel/dist/assets/{accounting-CXNK39dF.js => accounting-Bbumy49K.js} (99%) delete mode 100644 apps/admin-panel/dist/assets/addFinDoc-kdexvNXV.js create mode 100644 apps/admin-panel/dist/assets/addFinDoc-sT3KrSUV.js delete mode 100644 apps/admin-panel/dist/assets/addFinDoc.vue_vue_type_script_setup_true_lang-BXXIemK7.js create mode 100644 apps/admin-panel/dist/assets/addFinDoc.vue_vue_type_script_setup_true_lang-C7dUyRNk.js rename apps/admin-panel/dist/assets/{auth-N_TMNrPz.js => auth-taL2eAff.js} (88%) rename apps/admin-panel/dist/assets/{autopromotion-WLX8YCc1.js => autopromotion-ngLMgEP5.js} (97%) create mode 100644 apps/admin-panel/dist/assets/bulkCustomer.vue_vue_type_script_setup_true_lang-Bh7ptZgl.js delete mode 100644 apps/admin-panel/dist/assets/bulkCustomer.vue_vue_type_script_setup_true_lang-C_6AC_x3.js rename apps/admin-panel/dist/assets/{cityList-CLAq_V2X.js => cityList-Cc1Z6hFj.js} (86%) delete mode 100644 apps/admin-panel/dist/assets/create-B3FDXHvx.css delete mode 100644 apps/admin-panel/dist/assets/create-BCbtKbMi.js create mode 100644 apps/admin-panel/dist/assets/create-DRi1ARwy.css create mode 100644 apps/admin-panel/dist/assets/create-jCm_K0UT.js rename apps/admin-panel/dist/assets/{create-Bz_jl_71.js => create-n0rRDFYE.js} (95%) rename apps/admin-panel/dist/assets/{create-DSDeteBR.js => create-o6ZX-3sE.js} (96%) create mode 100644 apps/admin-panel/dist/assets/createCity-Dfoq0Y3F.js delete mode 100644 apps/admin-panel/dist/assets/createCity-IOL5uAp-.js rename apps/admin-panel/dist/assets/{createCity.vue_vue_type_script_setup_true_lang-n4IdwDm_.js => createCity.vue_vue_type_script_setup_true_lang-DCWOwlVG.js} (95%) rename apps/admin-panel/dist/assets/{filters-BPYO-DKN.js => filters-CoNJlguG.js} (86%) create mode 100644 apps/admin-panel/dist/assets/icons-BRqF3liF.js delete mode 100644 apps/admin-panel/dist/assets/icons-BplZzYUR.js rename apps/admin-panel/dist/assets/{index-CJij4X3l.js => index-CpVArufm.js} (98%) create mode 100644 apps/admin-panel/dist/assets/index-DLK4s3ft.js delete mode 100644 apps/admin-panel/dist/assets/index-DbpLOoM-.js rename apps/admin-panel/dist/assets/{index-CKg-8s_Z.js => index-DjZc5EYL.js} (99%) delete mode 100644 apps/admin-panel/dist/assets/list-BUpibcCs.js create mode 100644 apps/admin-panel/dist/assets/list-C8ypErFY.js delete mode 100644 apps/admin-panel/dist/assets/model-BYVpc9QD.css create mode 100644 apps/admin-panel/dist/assets/model-DB3OrB0q.css create mode 100644 apps/admin-panel/dist/assets/model-mwiDYd1J.js delete mode 100644 apps/admin-panel/dist/assets/model-tqsMDjkK.js rename apps/admin-panel/dist/assets/{myData-Dl1l_agX.js => myData-DPVKtj6d.js} (88%) rename apps/admin-panel/dist/assets/{newsletters-ChrvxoA6.js => newsletters-O6c9pnMf.js} (79%) rename apps/admin-panel/dist/assets/{offersIgnore-add-edit-Cmton9Iz.js => offersIgnore-add-edit-4VqJNFTd.js} (96%) rename apps/admin-panel/dist/assets/{order_item-7Q53VUbN.js => order_item-CUVkIral.js} (91%) rename apps/admin-panel/dist/assets/{product-C5P80aHW.js => product-DIBhEedA.js} (89%) rename apps/admin-panel/dist/assets/{productListModel-Dqg_dJPi.js => productListModel-Ht1NntTk.js} (92%) create mode 100644 apps/admin-panel/dist/assets/promotion_add_edit-BRbwsORn.js delete mode 100644 apps/admin-panel/dist/assets/promotion_add_edit-jiuK4lfb.js rename apps/admin-panel/dist/assets/{promotion_add_edit.vue_vue_type_script_setup_true_lang-ChhS006A.js => promotion_add_edit.vue_vue_type_script_setup_true_lang-DaCHq3Nj.js} (72%) create mode 100644 apps/admin-panel/dist/assets/promotion_list-BpomTa7C.js delete mode 100644 apps/admin-panel/dist/assets/promotion_list-RkmZV5Nb.js create mode 100644 apps/admin-panel/dist/assets/promotion_tak_add_edit-Bc-tQJWp.js delete mode 100644 apps/admin-panel/dist/assets/promotion_tak_add_edit-DA_k0I4c.js rename apps/admin-panel/dist/assets/{promotion_tak_add_edit.vue_vue_type_script_setup_true_lang-Dr6DW2X2.js => promotion_tak_add_edit.vue_vue_type_script_setup_true_lang-BukTCIkf.js} (72%) rename apps/admin-panel/dist/assets/{reg-CieCn523.js => reg-vVyzwPVS.js} (97%) rename apps/admin-panel/dist/assets/{report-BZwqp4wm.js => report-BNLBN5x0.js} (91%) create mode 100644 apps/admin-panel/dist/assets/select--BgT6D7O.js rename apps/admin-panel/dist/assets/{singleCustomer-CKKhHCBR.js => singleCustomer-DCfVboVT.js} (92%) rename apps/admin-panel/dist/assets/{useDeleteHandler-DuEp06Uq.js => useDeleteHandler-K9FWNrnm.js} (86%) rename apps/admin-panel/dist/assets/{user-DmSbNUqc.js => user-D29KoPC1.js} (93%) rename apps/admin-panel/dist/assets/{wage-BgO7d8Zq.js => wage-CnYyduGf.js} (99%) rename apps/admin-panel/dist/assets/{wallet-DkHAMmjF.js => wallet-CPY--I3Y.js} (82%) rename apps/admin-panel/dist/assets/{wallet-DXWKA2NQ.js => wallet-R5LsWnVf.js} (98%) create mode 100644 apps/admin-panel/src/utils/select.ts create mode 100644 apps/api/prisma/migrations/20261029120000_preorder_quantity/migration.sql create mode 100644 apps/api/release/migrations/20261029120000_preorder_quantity/migration.sql create mode 100644 apps/api/src/common/customer-input.ts create mode 100644 apps/api/src/modules/accounting-sync/document-check.spec.ts create mode 100644 apps/api/src/modules/accounting-sync/document-check.ts create mode 100644 apps/api/src/modules/accounting/reference-parity.spec.ts create mode 100644 apps/api/src/modules/admin-documents/admin-documents.service.spec.ts create mode 100644 apps/api/src/modules/admin-orders/admin-orders.service.spec.ts create mode 100644 apps/api/src/modules/admin-preorders/admin-preorders.service.spec.ts create mode 100644 apps/api/src/modules/admin-table/table.service.spec.ts create mode 100644 apps/api/src/modules/customer-preorders/customer-preorders.controller.ts create mode 100644 apps/api/src/modules/customer-preorders/customer-preorders.module.ts create mode 100644 apps/api/src/modules/customer-preorders/customer-preorders.service.spec.ts create mode 100644 apps/api/src/modules/customer-preorders/customer-preorders.service.ts create mode 100644 apps/api/src/modules/orders/order-corrections.spec.ts create mode 100644 apps/api/src/modules/pricing/wage.service.spec.ts create mode 100644 apps/api/src/modules/sales-agent/agent-orders.spec.ts create mode 100644 apps/api/src/modules/sales-expert-app/sales-expert-app.customers.spec.ts rename apps/user-app-v2/dist/assets/{AppPullRefresh-D5o9arkH.js => AppPullRefresh-B0f-tYJA.js} (94%) rename apps/user-app-v2/dist/assets/{AppearanceView-C5Q3kWiJ.js => AppearanceView-DbutwzY3.js} (98%) delete mode 100644 apps/user-app-v2/dist/assets/CartView-B1YZE1vT.js create mode 100644 apps/user-app-v2/dist/assets/CartView-BXG2gOP6.js create mode 100644 apps/user-app-v2/dist/assets/CartView-Bhmq-OS2.css delete mode 100644 apps/user-app-v2/dist/assets/CartView-CyRqcM3j.css delete mode 100644 apps/user-app-v2/dist/assets/ChildOrdersView-BF3rQgcj.js create mode 100644 apps/user-app-v2/dist/assets/ChildOrdersView-C_bGdhOX.css delete mode 100644 apps/user-app-v2/dist/assets/ChildOrdersView-D6xgBGGQ.css create mode 100644 apps/user-app-v2/dist/assets/ChildOrdersView-VI9JoZBd.js rename apps/user-app-v2/dist/assets/{CollectionView-BFYcJaFU.js => CollectionView-Ccz1xfLj.js} (86%) create mode 100644 apps/user-app-v2/dist/assets/CompleteProfileView-C7JLf-Nm.js delete mode 100644 apps/user-app-v2/dist/assets/CompleteProfileView-DupW6p4B.js create mode 100644 apps/user-app-v2/dist/assets/CompleteProfileView-dA-JFzJ8.css create mode 100644 apps/user-app-v2/dist/assets/CustomerChoiceView-BAraArtK.css delete mode 100644 apps/user-app-v2/dist/assets/CustomerChoiceView-DB7yiqRu.css delete mode 100644 apps/user-app-v2/dist/assets/CustomerChoiceView-TztEX5yz.js create mode 100644 apps/user-app-v2/dist/assets/CustomerChoiceView-k6dxoQeC.js create mode 100644 apps/user-app-v2/dist/assets/DashboardView-0i6dxLCl.js delete mode 100644 apps/user-app-v2/dist/assets/DashboardView-CBcbShu-.js delete mode 100644 apps/user-app-v2/dist/assets/DashboardView-DjinhUjZ.css create mode 100644 apps/user-app-v2/dist/assets/DashboardView-IvrrMCbI.css rename apps/user-app-v2/dist/assets/{FavoritesView-G8Eq8gge.js => FavoritesView-D4uhWzf6.js} (88%) delete mode 100644 apps/user-app-v2/dist/assets/FormItemContext-DbjT2GfY.js create mode 100644 apps/user-app-v2/dist/assets/FormItemContext-i27DxbTo.js rename apps/user-app-v2/dist/assets/{HomeView-CmQuuH6B.js => HomeView-DkQixCVq.js} (97%) rename apps/user-app-v2/dist/assets/{IamCallback-DlXOWqWp.js => IamCallback-CJv82M1_.js} (93%) rename apps/user-app-v2/dist/assets/{KeyCode-Dl7BYvJp.js => KeyCode-CJkaCAgc.js} (67%) delete mode 100644 apps/user-app-v2/dist/assets/LoginRegisterView-BxGfq6Qb.js create mode 100644 apps/user-app-v2/dist/assets/LoginRegisterView-YXS01jJu.js create mode 100644 apps/user-app-v2/dist/assets/MakeOrderStatusView-CTreLH8h.css create mode 100644 apps/user-app-v2/dist/assets/MakeOrderStatusView-KNj-VY0s.js create mode 100644 apps/user-app-v2/dist/assets/MakeOrderView-BbkmtdQq.js create mode 100644 apps/user-app-v2/dist/assets/MakeOrderView-C9rL7TjE.css rename apps/user-app-v2/dist/assets/{NewestView-Ck-kfDLs.js => NewestView-BMWSaz4F.js} (91%) rename apps/user-app-v2/dist/assets/{NotificationsView-B5erqT9Y.js => NotificationsView-C1OS_0OW.js} (89%) create mode 100644 apps/user-app-v2/dist/assets/OrdersView-ChZr4TeF.js rename apps/user-app-v2/dist/assets/{OrdersView-DNKGvr4J.css => OrdersView-DKHth8-i.css} (59%) delete mode 100644 apps/user-app-v2/dist/assets/OrdersView-DwH-CdbT.js rename apps/user-app-v2/dist/assets/{PageBar-DNaPusPm.js => PageBar-HEcoSwjE.js} (87%) rename apps/user-app-v2/dist/assets/{ProductCard-aZrPdL37.js => ProductCard-Rxk1Fz5I.js} (96%) rename apps/user-app-v2/dist/assets/{ProfileView-Bv3BZktW.js => ProfileView-CQEqt_G8.js} (96%) rename apps/user-app-v2/dist/assets/{RateStrip-BeFld7sY.js => RateStrip-BM0cz1ET.js} (87%) rename apps/user-app-v2/dist/assets/{ReportView-DFtAMFYJ.js => ReportView-CSkjz93w.js} (96%) rename apps/user-app-v2/dist/assets/{SearchInput-CvqnREPV.js => SearchInput-DosQYiNS.js} (79%) delete mode 100644 apps/user-app-v2/dist/assets/SearchView-CF-TYwrT.js create mode 100644 apps/user-app-v2/dist/assets/SearchView-DRQJDTDf.js rename apps/user-app-v2/dist/assets/{SectionHead-CvKB7By7.js => SectionHead-YsBbRh09.js} (90%) rename apps/user-app-v2/dist/assets/{CompleteProfileView-hH_R3jUX.css => SingleImageUploader-BaDxKXWS.css} (63%) create mode 100644 apps/user-app-v2/dist/assets/SingleImageUploader-Cogbl9FI.js rename apps/user-app-v2/dist/assets/{TransactionsView-BMWfe7_D.js => TransactionsView-IbI6E-sw.js} (91%) rename apps/user-app-v2/dist/assets/{catalogStore-KIY-JJk-.js => catalogStore-DqM2POWt.js} (91%) create mode 100644 apps/user-app-v2/dist/assets/classCallCheck-BINKwNli.js delete mode 100644 apps/user-app-v2/dist/assets/classCallCheck-DJjGN2cU.js rename apps/user-app-v2/dist/assets/{filters-C_cKdZcl.js => filters-CmtC5ctw.js} (99%) rename apps/user-app-v2/dist/assets/{index-CN-v7uYp.js => index-6E0fX61D.js} (94%) rename apps/user-app-v2/dist/assets/{index-CQtdsSs3.js => index-BRKIhLwl.js} (87%) rename apps/user-app-v2/dist/assets/{index-FX8mzrjV.js => index-C6v9FxiB.js} (92%) create mode 100644 apps/user-app-v2/dist/assets/isEqual-4qLLVpCV.js rename apps/user-app-v2/dist/assets/{usePagedProducts-CQhfR9Yx.js => usePagedProducts-Dfd2dvnx.js} (92%) create mode 100644 apps/user-app-v2/src/views/user/MakeOrderStatusView.vue create mode 100644 apps/user-app-v2/src/views/user/MakeOrderView.vue diff --git a/DELIVERY.md b/DELIVERY.md index 34816d5..7e556f0 100644 --- a/DELIVERY.md +++ b/DELIVERY.md @@ -385,8 +385,10 @@ risks and both recorded in D21: 1. `myChild` minted an `api_token` per listed customer so the agent could act **as** them — a session-hijack primitive. 2. The child-order edit drawer (`PUT /order/child/{id}`) recalculated an - order's weights and prices from client-sent values. The card opens a - read-only summary instead. + order's weights and prices from client-sent values. **Since 2026-10-29 it is + back in a safe form:** the expert sends only the real raw weight per piece and + the server applies the making charge, recomputes totals and debt, and checks + the order is theirs. ### Behavioural gaps diff --git a/apps/admin-panel/dist/assets/AccountingSyncButton.vue_vue_type_script_setup_true_lang-CVFVkjGK.js b/apps/admin-panel/dist/assets/AccountingSyncButton.vue_vue_type_script_setup_true_lang-wE6MaQCK.js similarity index 96% rename from apps/admin-panel/dist/assets/AccountingSyncButton.vue_vue_type_script_setup_true_lang-CVFVkjGK.js rename to apps/admin-panel/dist/assets/AccountingSyncButton.vue_vue_type_script_setup_true_lang-wE6MaQCK.js index df59426..b86e0bb 100644 --- a/apps/admin-panel/dist/assets/AccountingSyncButton.vue_vue_type_script_setup_true_lang-CVFVkjGK.js +++ b/apps/admin-panel/dist/assets/AccountingSyncButton.vue_vue_type_script_setup_true_lang-wE6MaQCK.js @@ -1 +1 @@ -import{c as O,I as x,d as j,x as B,y as m,o as C,a as A,w as y,f as $,t as E,h as N,i as P,m as u,a8 as v,N as b,J as L,r as M}from"./index-CJij4X3l.js";var V={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M168 504.2c1-43.7 10-86.1 26.9-126 17.3-41 42.1-77.7 73.7-109.4S337 212.3 378 195c42.4-17.9 87.4-27 133.9-27s91.5 9.1 133.8 27A341.5 341.5 0 01755 268.8c9.9 9.9 19.2 20.4 27.8 31.4l-60.2 47a8 8 0 003 14.1l175.7 43c5 1.2 9.9-2.6 9.9-7.7l.8-180.9c0-6.7-7.7-10.5-12.9-6.3l-56.4 44.1C765.8 155.1 646.2 92 511.8 92 282.7 92 96.3 275.6 92 503.8a8 8 0 008 8.2h60c4.4 0 7.9-3.5 8-7.8zm756 7.8h-60c-4.4 0-7.9 3.5-8 7.8-1 43.7-10 86.1-26.9 126-17.3 41-42.1 77.8-73.7 109.4A342.45 342.45 0 01512.1 856a342.24 342.24 0 01-243.2-100.8c-9.9-9.9-19.2-20.4-27.8-31.4l60.2-47a8 8 0 00-3-14.1l-175.7-43c-5-1.2-9.9 2.6-9.9 7.7l-.7 181c0 6.7 7.7 10.5 12.9 6.3l56.4-44.1C258.2 868.9 377.8 932 512.2 932c229.2 0 415.5-183.7 419.8-411.8a8 8 0 00-8-8.2z"}}]},name:"sync",theme:"outlined"};function g(o){for(var t=1;te&&typeof e=="object"?Object.entries(e).map(([s,a])=>`${_[s]??s}: ${a}`).join("، "):"";B(async()=>{try{const{data:e}=await m.get("admin/accounting-status");c.value=!!(e!=null&&e.connected),p.value=(e==null?void 0:e.provider)??null}catch{c.value=!1}});async function w(){var e,s;i.value=!0;try{const{data:a}=await m.post(n.endpoint),k=Object.entries(a.results).map(([f,l])=>v("p",{style:l.ok?"":"color:#d4380d"},`${h[f]??f}: ${l.ok?S(l.summary)||"انجام شد":`خطا — ${l.error}`}`));(a.ok?b.success:b.warning)({title:a.ok?"سینک با حسابداری انجام شد":"سینک با حسابداری کامل انجام نشد",content:v("div",k),okText:"باشه"}),r("done")}catch(a){L.error(((s=(e=a==null?void 0:a.response)==null?void 0:e.data)==null?void 0:s.message)||"سینک با حسابداری انجام نشد")}finally{i.value=!1}}return(e,s)=>{const a=M("a-button");return c.value?(C(),A(a,{key:0,loading:i.value,onClick:w},{icon:y(()=>[O(N(d))]),default:y(()=>[$(" سینک با "+E(p.value||"حسابداری"),1)]),_:1},8,["loading"])):P("",!0)}}});export{I as _}; +import{c as O,I as x,d as j,x as B,y as m,o as C,a as A,w as y,f as $,t as E,h as N,i as P,m as u,a9 as v,N as b,J as L,r as M}from"./index-CpVArufm.js";var V={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M168 504.2c1-43.7 10-86.1 26.9-126 17.3-41 42.1-77.7 73.7-109.4S337 212.3 378 195c42.4-17.9 87.4-27 133.9-27s91.5 9.1 133.8 27A341.5 341.5 0 01755 268.8c9.9 9.9 19.2 20.4 27.8 31.4l-60.2 47a8 8 0 003 14.1l175.7 43c5 1.2 9.9-2.6 9.9-7.7l.8-180.9c0-6.7-7.7-10.5-12.9-6.3l-56.4 44.1C765.8 155.1 646.2 92 511.8 92 282.7 92 96.3 275.6 92 503.8a8 8 0 008 8.2h60c4.4 0 7.9-3.5 8-7.8zm756 7.8h-60c-4.4 0-7.9 3.5-8 7.8-1 43.7-10 86.1-26.9 126-17.3 41-42.1 77.8-73.7 109.4A342.45 342.45 0 01512.1 856a342.24 342.24 0 01-243.2-100.8c-9.9-9.9-19.2-20.4-27.8-31.4l60.2-47a8 8 0 00-3-14.1l-175.7-43c-5-1.2-9.9 2.6-9.9 7.7l-.7 181c0 6.7 7.7 10.5 12.9 6.3l56.4-44.1C258.2 868.9 377.8 932 512.2 932c229.2 0 415.5-183.7 419.8-411.8a8 8 0 00-8-8.2z"}}]},name:"sync",theme:"outlined"};function g(o){for(var t=1;te&&typeof e=="object"?Object.entries(e).map(([s,a])=>`${_[s]??s}: ${a}`).join("، "):"";B(async()=>{try{const{data:e}=await m.get("admin/accounting-status");c.value=!!(e!=null&&e.connected),p.value=(e==null?void 0:e.provider)??null}catch{c.value=!1}});async function w(){var e,s;i.value=!0;try{const{data:a}=await m.post(n.endpoint),k=Object.entries(a.results).map(([f,l])=>v("p",{style:l.ok?"":"color:#d4380d"},`${h[f]??f}: ${l.ok?S(l.summary)||"انجام شد":`خطا — ${l.error}`}`));(a.ok?b.success:b.warning)({title:a.ok?"سینک با حسابداری انجام شد":"سینک با حسابداری کامل انجام نشد",content:v("div",k),okText:"باشه"}),r("done")}catch(a){L.error(((s=(e=a==null?void 0:a.response)==null?void 0:e.data)==null?void 0:s.message)||"سینک با حسابداری انجام نشد")}finally{i.value=!1}}return(e,s)=>{const a=M("a-button");return c.value?(C(),A(a,{key:0,loading:i.value,onClick:w},{icon:y(()=>[O(N(d))]),default:y(()=>[$(" سینک با "+E(p.value||"حسابداری"),1)]),_:1},8,["loading"])):P("",!0)}}});export{I as _}; diff --git a/apps/admin-panel/dist/assets/Add-BB2qAVCI.js b/apps/admin-panel/dist/assets/Add-BB2qAVCI.js new file mode 100644 index 0000000..96f7921 --- /dev/null +++ b/apps/admin-panel/dist/assets/Add-BB2qAVCI.js @@ -0,0 +1 @@ +import{_ as o}from"./Add.vue_vue_type_script_setup_true_lang-Bhji6saH.js";import"./index-CpVArufm.js";import"./select--BgT6D7O.js";import"./BaseFormModal.vue_vue_type_style_index_0_lang-B4iVMhZt.js";import"./ImageUploadInput.vue_vue_type_script_setup_true_lang-B9gVJPft.js";export{o as default}; diff --git a/apps/admin-panel/dist/assets/Add-CdH53yqV.js b/apps/admin-panel/dist/assets/Add-CdH53yqV.js deleted file mode 100644 index 0359974..0000000 --- a/apps/admin-panel/dist/assets/Add-CdH53yqV.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as o}from"./Add.vue_vue_type_script_setup_true_lang-Zo2rdVSj.js";import"./index-CJij4X3l.js";import"./BaseFormModal.vue_vue_type_style_index_0_lang-YLHOAWTN.js";import"./ImageUploadInput.vue_vue_type_script_setup_true_lang-vRgyyG7o.js";export{o as default}; diff --git a/apps/admin-panel/dist/assets/Add.vue_vue_type_script_setup_true_lang-Bhji6saH.js b/apps/admin-panel/dist/assets/Add.vue_vue_type_script_setup_true_lang-Bhji6saH.js new file mode 100644 index 0000000..ad350a7 --- /dev/null +++ b/apps/admin-panel/dist/assets/Add.vue_vue_type_script_setup_true_lang-Bhji6saH.js @@ -0,0 +1 @@ +import{d as P,n as Q,x as W,y,a as b,w as o,h as X,k as Y,m as j,z,s as M,r as s,o as v,c as l,f as m,p as N,b as E,e as F,F as T,H as Z,J as A,l as ee,t as D}from"./index-CpVArufm.js";import{o as te}from"./select--BgT6D7O.js";import{_ as ae}from"./BaseFormModal.vue_vue_type_style_index_0_lang-B4iVMhZt.js";import{_ as g}from"./ImageUploadInput.vue_vue_type_script_setup_true_lang-B9gVJPft.js";const le={class:"grid-2"},oe={class:"grid-2"},se=P({__name:"Add",props:{open:{type:Boolean},id:{}},emits:["update:open","success"],setup(U,{emit:H}){const V=U,k=H,c=V.open!==void 0,J=Y(),L=ee(),p=c?V.id:J.params.id,f=j(!1),x=j([]),t=z({type:1,title:"",parent_id_id:void 0,image:"",icon:"",meta:"",body_html:""}),d=z({}),n=M(()=>t.type===1?"(سایت)":t.type===2?"(موبایل)":""),$=M(()=>x.value.filter(i=>i.type===t.type&&i.id!==p));Q(()=>t.type,()=>{t.parent_id_id&&!$.value.some(i=>i.id===t.parent_id_id)&&(t.parent_id_id=void 0)});function B(i,e){return te(e).includes(i)}function h(){return Object.keys(d).forEach(i=>delete d[i]),t.type||(d.type="لطفا نوع نمایش دسته بندی را انتخاب کنید"),t.title||(d.title="لطفا مقدار را وارد کنید"),Object.keys(d).length===0}async function w(){var i,e;if(h())try{f.value=!0,p?await y.put(`category/${p}`,{...t,id:p}):await y.post("category/",t),A.info("اطلاعات با موفقیت به ثبت رسید."),c?(k("success"),k("update:open",!1)):L.push("/category/list")}catch(r){A.error(((e=(i=r==null?void 0:r.response)==null?void 0:i.data)==null?void 0:e.message)??"خطا در ثبت اطلاعات.")}finally{f.value=!1}}return W(async()=>{try{const{data:i}=await y.get("admin/categories/tree");x.value=i}catch(i){console.log(i)}if(p)try{const{data:i}=await y.get(`admin/categories/${p}`);Object.assign(t,{type:i.type??1,title:i.title??"",parent_id_id:i.parent_id_id??void 0,image:i.image??"",icon:i.icon??"",meta:i.meta??"",body_html:i.body_html??""})}catch(i){console.log(i)}}),(i,e)=>{const r=s("a-radio"),R=s("a-radio-group"),u=s("a-form-item"),_=s("a-input"),C=s("a-select-option"),O=s("a-select"),S=s("a-textarea"),q=s("a-button"),G=s("a-card"),I=s("a-form"),K=s("a-spin");return c?(v(),b(ae,{key:0,open:!!U.open,id:X(p),"add-title":`دسته بندی ${n.value}`,"edit-title":`دسته بندی ${n.value}`,loading:f.value,submitting:f.value,width:"lg","onUpdate:open":e[7]||(e[7]=a=>i.$emit("update:open",a)),onSubmit:w},{default:o(()=>[l(u,{label:"نوع نمایش","validate-status":d.type?"error":"",help:d.type},{default:o(()=>[l(R,{value:t.type,"onUpdate:value":e[0]||(e[0]=a=>t.type=a)},{default:o(()=>[l(r,{value:1},{default:o(()=>[...e[15]||(e[15]=[m("سایت",-1)])]),_:1}),l(r,{value:2},{default:o(()=>[...e[16]||(e[16]=[m("اپلیکشن موبایل",-1)])]),_:1})]),_:1},8,["value"])]),_:1},8,["validate-status","help"]),N("div",le,[l(u,{label:`عنوان ${n.value}`,"validate-status":d.title?"error":"",help:d.title},{default:o(()=>[l(_,{value:t.title,"onUpdate:value":e[1]||(e[1]=a=>t.title=a)},null,8,["value"])]),_:1},8,["label","validate-status","help"]),l(u,{label:`پدر دسته ${n.value}`},{default:o(()=>[l(O,{value:t.parent_id_id,"onUpdate:value":e[2]||(e[2]=a=>t.parent_id_id=a),"allow-clear":"","show-search":"",placeholder:"انتخاب کنید","filter-option":B},{default:o(()=>[(v(!0),E(T,null,F($.value,a=>(v(),b(C,{key:a.id,value:a.id},{default:o(()=>[m(D(a.title),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1},8,["label"]),l(u,{label:`تصویر شاخص ${n.value}`},{default:o(()=>[l(g,{modelValue:t.image,"onUpdate:modelValue":e[3]||(e[3]=a=>t.image=a),purpose:"category.image",placeholder:"تصویر"},null,8,["modelValue"])]),_:1},8,["label"]),l(u,{label:`آیکون ${n.value}`},{default:o(()=>[l(g,{modelValue:t.icon,"onUpdate:modelValue":e[4]||(e[4]=a=>t.icon=a),purpose:"category.icon",placeholder:"آیکون"},null,8,["modelValue"])]),_:1},8,["label"]),l(u,{label:`متا تگ ${n.value}`},{default:o(()=>[l(_,{value:t.meta,"onUpdate:value":e[5]||(e[5]=a=>t.meta=a)},null,8,["value"])]),_:1},8,["label"])]),l(u,{label:`شرح دسته ${n.value}`},{default:o(()=>[l(S,{value:t.body_html,"onUpdate:value":e[6]||(e[6]=a=>t.body_html=a),"auto-size":{minRows:3,maxRows:8}},null,8,["value"])]),_:1},8,["label"])]),_:1},8,["open","id","add-title","edit-title","loading","submitting"])):(v(),b(K,{key:1,spinning:f.value},{default:o(()=>[l(I,{layout:"vertical",onSubmit:Z(w,["prevent"])},{default:o(()=>[l(G,{title:`دسته بندی ${n.value}`,class:"mb-base page-card"},{default:o(()=>[l(u,{label:"نوع نمایش","validate-status":d.type?"error":"",help:d.type},{default:o(()=>[l(R,{value:t.type,"onUpdate:value":e[8]||(e[8]=a=>t.type=a)},{default:o(()=>[l(r,{value:1},{default:o(()=>[...e[17]||(e[17]=[m("سایت",-1)])]),_:1}),l(r,{value:2},{default:o(()=>[...e[18]||(e[18]=[m("اپلیکشن موبایل",-1)])]),_:1})]),_:1},8,["value"])]),_:1},8,["validate-status","help"]),N("div",oe,[l(u,{label:`عنوان ${n.value}`,"validate-status":d.title?"error":"",help:d.title},{default:o(()=>[l(_,{value:t.title,"onUpdate:value":e[9]||(e[9]=a=>t.title=a)},null,8,["value"])]),_:1},8,["label","validate-status","help"]),l(u,{label:`پدر دسته ${n.value}`},{default:o(()=>[l(O,{value:t.parent_id_id,"onUpdate:value":e[10]||(e[10]=a=>t.parent_id_id=a),"allow-clear":"","show-search":"",placeholder:"انتخاب کنید","filter-option":B},{default:o(()=>[(v(!0),E(T,null,F($.value,a=>(v(),b(C,{key:a.id,value:a.id},{default:o(()=>[m(D(a.title),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1},8,["label"]),l(u,{label:`تصویر شاخص ${n.value}`},{default:o(()=>[l(g,{modelValue:t.image,"onUpdate:modelValue":e[11]||(e[11]=a=>t.image=a),purpose:"category.image",placeholder:"تصویر"},null,8,["modelValue"])]),_:1},8,["label"]),l(u,{label:`آیکون ${n.value}`},{default:o(()=>[l(g,{modelValue:t.icon,"onUpdate:modelValue":e[12]||(e[12]=a=>t.icon=a),purpose:"category.icon",placeholder:"آیکون"},null,8,["modelValue"])]),_:1},8,["label"]),l(u,{label:`متا تگ ${n.value}`},{default:o(()=>[l(_,{value:t.meta,"onUpdate:value":e[13]||(e[13]=a=>t.meta=a)},null,8,["value"])]),_:1},8,["label"])]),l(u,{label:`شرح دسته ${n.value}`},{default:o(()=>[l(S,{value:t.body_html,"onUpdate:value":e[14]||(e[14]=a=>t.body_html=a),"auto-size":{minRows:3,maxRows:8}},null,8,["value"])]),_:1},8,["label"]),l(q,{type:"primary",class:"form-submit",onClick:w},{default:o(()=>[...e[19]||(e[19]=[m("ثبت اطلاعات",-1)])]),_:1})]),_:1},8,["title"])]),_:1})]),_:1},8,["spinning"]))}}});export{se as _}; diff --git a/apps/admin-panel/dist/assets/Add.vue_vue_type_script_setup_true_lang-Zo2rdVSj.js b/apps/admin-panel/dist/assets/Add.vue_vue_type_script_setup_true_lang-Zo2rdVSj.js deleted file mode 100644 index 2852a48..0000000 --- a/apps/admin-panel/dist/assets/Add.vue_vue_type_script_setup_true_lang-Zo2rdVSj.js +++ /dev/null @@ -1 +0,0 @@ -import{d as P,n as Q,x as W,y as b,a as g,w as o,h as X,k as Y,m as j,z,s as M,r,o as v,c as l,f as m,p as N,b as h,e as E,F,H as Z,J as A,l as ee,t as D}from"./index-CJij4X3l.js";import{_ as te}from"./BaseFormModal.vue_vue_type_style_index_0_lang-YLHOAWTN.js";import{_ as c}from"./ImageUploadInput.vue_vue_type_script_setup_true_lang-vRgyyG7o.js";const ae={class:"grid-2"},le={class:"grid-2"},ue=P({__name:"Add",props:{open:{type:Boolean},id:{}},emits:["update:open","success"],setup(V,{emit:H}){const k=V,x=H,$=k.open!==void 0,J=Y(),L=ee(),p=$?k.id:J.params.id,f=j(!1),B=j([]),t=z({type:1,title:"",parent_id_id:void 0,image:"",icon:"",meta:"",body_html:""}),d=z({}),i=M(()=>t.type===1?"(سایت)":t.type===2?"(موبایل)":""),w=M(()=>B.value.filter(n=>n.type===t.type&&n.id!==p));Q(()=>t.type,()=>{t.parent_id_id&&!w.value.some(n=>n.id===t.parent_id_id)&&(t.parent_id_id=void 0)});function R(n,e){var s,_;return String(((_=(s=e==null?void 0:e.children)==null?void 0:s[0])==null?void 0:_.children)??"").includes(n)}function T(){return Object.keys(d).forEach(n=>delete d[n]),t.type||(d.type="لطفا نوع نمایش دسته بندی را انتخاب کنید"),t.title||(d.title="لطفا مقدار را وارد کنید"),Object.keys(d).length===0}async function U(){var n,e;if(T())try{f.value=!0,p?await b.put(`category/${p}`,{...t,id:p}):await b.post("category/",t),A.info("اطلاعات با موفقیت به ثبت رسید."),$?(x("success"),x("update:open",!1)):L.push("/category/list")}catch(s){A.error(((e=(n=s==null?void 0:s.response)==null?void 0:n.data)==null?void 0:e.message)??"خطا در ثبت اطلاعات.")}finally{f.value=!1}}return W(async()=>{try{const{data:n}=await b.get("admin/categories/tree");B.value=n}catch(n){console.log(n)}if(p)try{const{data:n}=await b.get(`admin/categories/${p}`);Object.assign(t,{type:n.type??1,title:n.title??"",parent_id_id:n.parent_id_id??void 0,image:n.image??"",icon:n.icon??"",meta:n.meta??"",body_html:n.body_html??""})}catch(n){console.log(n)}}),(n,e)=>{const s=r("a-radio"),_=r("a-radio-group"),u=r("a-form-item"),y=r("a-input"),S=r("a-select-option"),C=r("a-select"),O=r("a-textarea"),q=r("a-button"),G=r("a-card"),I=r("a-form"),K=r("a-spin");return $?(v(),g(te,{key:0,open:!!V.open,id:X(p),"add-title":`دسته بندی ${i.value}`,"edit-title":`دسته بندی ${i.value}`,loading:f.value,submitting:f.value,width:"lg","onUpdate:open":e[7]||(e[7]=a=>n.$emit("update:open",a)),onSubmit:U},{default:o(()=>[l(u,{label:"نوع نمایش","validate-status":d.type?"error":"",help:d.type},{default:o(()=>[l(_,{value:t.type,"onUpdate:value":e[0]||(e[0]=a=>t.type=a)},{default:o(()=>[l(s,{value:1},{default:o(()=>[...e[15]||(e[15]=[m("سایت",-1)])]),_:1}),l(s,{value:2},{default:o(()=>[...e[16]||(e[16]=[m("اپلیکشن موبایل",-1)])]),_:1})]),_:1},8,["value"])]),_:1},8,["validate-status","help"]),N("div",ae,[l(u,{label:`عنوان ${i.value}`,"validate-status":d.title?"error":"",help:d.title},{default:o(()=>[l(y,{value:t.title,"onUpdate:value":e[1]||(e[1]=a=>t.title=a)},null,8,["value"])]),_:1},8,["label","validate-status","help"]),l(u,{label:`پدر دسته ${i.value}`},{default:o(()=>[l(C,{value:t.parent_id_id,"onUpdate:value":e[2]||(e[2]=a=>t.parent_id_id=a),"allow-clear":"","show-search":"",placeholder:"انتخاب کنید","filter-option":R},{default:o(()=>[(v(!0),h(F,null,E(w.value,a=>(v(),g(S,{key:a.id,value:a.id},{default:o(()=>[m(D(a.title),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1},8,["label"]),l(u,{label:`تصویر شاخص ${i.value}`},{default:o(()=>[l(c,{modelValue:t.image,"onUpdate:modelValue":e[3]||(e[3]=a=>t.image=a),purpose:"category.image",placeholder:"تصویر"},null,8,["modelValue"])]),_:1},8,["label"]),l(u,{label:`آیکون ${i.value}`},{default:o(()=>[l(c,{modelValue:t.icon,"onUpdate:modelValue":e[4]||(e[4]=a=>t.icon=a),purpose:"category.icon",placeholder:"آیکون"},null,8,["modelValue"])]),_:1},8,["label"]),l(u,{label:`متا تگ ${i.value}`},{default:o(()=>[l(y,{value:t.meta,"onUpdate:value":e[5]||(e[5]=a=>t.meta=a)},null,8,["value"])]),_:1},8,["label"])]),l(u,{label:`شرح دسته ${i.value}`},{default:o(()=>[l(O,{value:t.body_html,"onUpdate:value":e[6]||(e[6]=a=>t.body_html=a),"auto-size":{minRows:3,maxRows:8}},null,8,["value"])]),_:1},8,["label"])]),_:1},8,["open","id","add-title","edit-title","loading","submitting"])):(v(),g(K,{key:1,spinning:f.value},{default:o(()=>[l(I,{layout:"vertical",onSubmit:Z(U,["prevent"])},{default:o(()=>[l(G,{title:`دسته بندی ${i.value}`,class:"mb-base page-card"},{default:o(()=>[l(u,{label:"نوع نمایش","validate-status":d.type?"error":"",help:d.type},{default:o(()=>[l(_,{value:t.type,"onUpdate:value":e[8]||(e[8]=a=>t.type=a)},{default:o(()=>[l(s,{value:1},{default:o(()=>[...e[17]||(e[17]=[m("سایت",-1)])]),_:1}),l(s,{value:2},{default:o(()=>[...e[18]||(e[18]=[m("اپلیکشن موبایل",-1)])]),_:1})]),_:1},8,["value"])]),_:1},8,["validate-status","help"]),N("div",le,[l(u,{label:`عنوان ${i.value}`,"validate-status":d.title?"error":"",help:d.title},{default:o(()=>[l(y,{value:t.title,"onUpdate:value":e[9]||(e[9]=a=>t.title=a)},null,8,["value"])]),_:1},8,["label","validate-status","help"]),l(u,{label:`پدر دسته ${i.value}`},{default:o(()=>[l(C,{value:t.parent_id_id,"onUpdate:value":e[10]||(e[10]=a=>t.parent_id_id=a),"allow-clear":"","show-search":"",placeholder:"انتخاب کنید","filter-option":R},{default:o(()=>[(v(!0),h(F,null,E(w.value,a=>(v(),g(S,{key:a.id,value:a.id},{default:o(()=>[m(D(a.title),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1},8,["label"]),l(u,{label:`تصویر شاخص ${i.value}`},{default:o(()=>[l(c,{modelValue:t.image,"onUpdate:modelValue":e[11]||(e[11]=a=>t.image=a),purpose:"category.image",placeholder:"تصویر"},null,8,["modelValue"])]),_:1},8,["label"]),l(u,{label:`آیکون ${i.value}`},{default:o(()=>[l(c,{modelValue:t.icon,"onUpdate:modelValue":e[12]||(e[12]=a=>t.icon=a),purpose:"category.icon",placeholder:"آیکون"},null,8,["modelValue"])]),_:1},8,["label"]),l(u,{label:`متا تگ ${i.value}`},{default:o(()=>[l(y,{value:t.meta,"onUpdate:value":e[13]||(e[13]=a=>t.meta=a)},null,8,["value"])]),_:1},8,["label"])]),l(u,{label:`شرح دسته ${i.value}`},{default:o(()=>[l(O,{value:t.body_html,"onUpdate:value":e[14]||(e[14]=a=>t.body_html=a),"auto-size":{minRows:3,maxRows:8}},null,8,["value"])]),_:1},8,["label"]),l(q,{type:"primary",class:"form-submit",onClick:U},{default:o(()=>[...e[19]||(e[19]=[m("ثبت اطلاعات",-1)])]),_:1})]),_:1},8,["title"])]),_:1})]),_:1},8,["spinning"]))}}});export{ue as _}; diff --git a/apps/admin-panel/dist/assets/AddBranches-DWxalK1k.js b/apps/admin-panel/dist/assets/AddBranches-DWxalK1k.js new file mode 100644 index 0000000..63a5369 --- /dev/null +++ b/apps/admin-panel/dist/assets/AddBranches-DWxalK1k.js @@ -0,0 +1 @@ +import{_ as o}from"./AddBranches.vue_vue_type_script_setup_true_lang-Ds4yo_72.js";import"./index-CpVArufm.js";import"./select--BgT6D7O.js";import"./BaseFormModal.vue_vue_type_style_index_0_lang-B4iVMhZt.js";export{o as default}; diff --git a/apps/admin-panel/dist/assets/AddBranches-DymI7uEo.js b/apps/admin-panel/dist/assets/AddBranches-DymI7uEo.js deleted file mode 100644 index 1b6609b..0000000 --- a/apps/admin-panel/dist/assets/AddBranches-DymI7uEo.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as o}from"./AddBranches.vue_vue_type_script_setup_true_lang-CIZbMJ7d.js";import"./index-CJij4X3l.js";import"./BaseFormModal.vue_vue_type_style_index_0_lang-YLHOAWTN.js";export{o as default}; diff --git a/apps/admin-panel/dist/assets/AddBranches.vue_vue_type_script_setup_true_lang-CIZbMJ7d.js b/apps/admin-panel/dist/assets/AddBranches.vue_vue_type_script_setup_true_lang-CIZbMJ7d.js deleted file mode 100644 index 78494ff..0000000 --- a/apps/admin-panel/dist/assets/AddBranches.vue_vue_type_script_setup_true_lang-CIZbMJ7d.js +++ /dev/null @@ -1 +0,0 @@ -import{d as L,x as T,y as c,a as v,w as l,h as R,k as q,m as S,z as C,r as i,o as p,p as O,c as n,b as $,e as j,f as g,t as z,F as M,H as G,J as N,l as I}from"./index-CJij4X3l.js";import{_ as K}from"./BaseFormModal.vue_vue_type_style_index_0_lang-YLHOAWTN.js";const P={class:"grid-2"},Q={class:"grid-2"},Y=L({__name:"AddBranches",props:{open:{type:Boolean},id:{}},emits:["update:open","success"],setup(h,{emit:V}){const y=h,w=V,f=y.open!==void 0,E=q(),F=I(),r=f?y.id:E.params.id,m=S(!1),_=S([]),t=C({name:"",phone:"",address:"",user_id:void 0}),d=C({});function k(s,e){var o,u;return String(((u=(o=e==null?void 0:e.children)==null?void 0:o[0])==null?void 0:u.children)??"").includes(s)}async function b(){var s,e;if(Object.keys(d).forEach(o=>delete d[o]),!t.name){d.name="لطفا مقدار را وارد کنید";return}try{m.value=!0,r?await c.put(`branch/${r}`,t):await c.post("branch",t),N.info("اطلاعات با موفقیت به ثبت رسید."),r||Object.assign(t,{name:"",phone:"",address:"",user_id:void 0}),f?(w("success"),w("update:open",!1)):F.push("/branch/list")}catch(o){N.error(((e=(s=o==null?void 0:o.response)==null?void 0:s.data)==null?void 0:e.message)??"خطا در ثبت اطلاعات.")}finally{m.value=!1}}return T(async()=>{try{const{data:s}=await c.get("user/list");_.value=s}catch(s){console.log(s)}if(r)try{const{data:s}=await c.get(`branch/${r}`);Object.assign(t,{name:s.name??"",phone:s.phone??"",address:s.address??"",user_id:s.user_id??void 0})}catch(s){console.log(s)}}),(s,e)=>{const o=i("a-input"),u=i("a-form-item"),U=i("a-select-option"),x=i("a-select"),B=i("a-textarea"),A=i("a-button"),D=i("a-card"),H=i("a-form"),J=i("a-spin");return f?(p(),v(K,{key:0,open:!!h.open,id:R(r),"add-title":"افزودن شعبه","edit-title":"ویرایش شعبه",loading:m.value,submitting:m.value,"onUpdate:open":e[4]||(e[4]=a=>s.$emit("update:open",a)),onSubmit:b},{default:l(()=>[O("div",P,[n(u,{label:"نام شعبه","validate-status":d.name?"error":"",help:d.name},{default:l(()=>[n(o,{value:t.name,"onUpdate:value":e[0]||(e[0]=a=>t.name=a)},null,8,["value"])]),_:1},8,["validate-status","help"]),n(u,{label:"تلفن شعبه"},{default:l(()=>[n(o,{value:t.phone,"onUpdate:value":e[1]||(e[1]=a=>t.phone=a)},null,8,["value"])]),_:1}),n(u,{label:"مدیر"},{default:l(()=>[n(x,{value:t.user_id,"onUpdate:value":e[2]||(e[2]=a=>t.user_id=a),"show-search":"","allow-clear":"",placeholder:"انتخاب کنید","filter-option":k},{default:l(()=>[(p(!0),$(M,null,j(_.value,a=>(p(),v(U,{key:a.id,value:a.id},{default:l(()=>[g(z(a.name),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1})]),n(u,{label:"آدرس"},{default:l(()=>[n(B,{value:t.address,"onUpdate:value":e[3]||(e[3]=a=>t.address=a),"auto-size":{minRows:2,maxRows:5}},null,8,["value"])]),_:1})]),_:1},8,["open","id","loading","submitting"])):(p(),v(J,{key:1,spinning:m.value},{default:l(()=>[n(H,{layout:"vertical",onSubmit:G(b,["prevent"])},{default:l(()=>[n(D,{title:R(r)?"ویرایش شعبه":"افزودن شعبه",class:"mb-base page-card"},{default:l(()=>[O("div",Q,[n(u,{label:"نام شعبه","validate-status":d.name?"error":"",help:d.name},{default:l(()=>[n(o,{value:t.name,"onUpdate:value":e[5]||(e[5]=a=>t.name=a)},null,8,["value"])]),_:1},8,["validate-status","help"]),n(u,{label:"تلفن شعبه"},{default:l(()=>[n(o,{value:t.phone,"onUpdate:value":e[6]||(e[6]=a=>t.phone=a)},null,8,["value"])]),_:1}),n(u,{label:"مدیر"},{default:l(()=>[n(x,{value:t.user_id,"onUpdate:value":e[7]||(e[7]=a=>t.user_id=a),"show-search":"","allow-clear":"",placeholder:"انتخاب کنید","filter-option":k},{default:l(()=>[(p(!0),$(M,null,j(_.value,a=>(p(),v(U,{key:a.id,value:a.id},{default:l(()=>[g(z(a.name),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1})]),n(u,{label:"آدرس"},{default:l(()=>[n(B,{value:t.address,"onUpdate:value":e[8]||(e[8]=a=>t.address=a),"auto-size":{minRows:2,maxRows:5}},null,8,["value"])]),_:1}),n(A,{type:"primary",class:"form-submit",onClick:b},{default:l(()=>[...e[9]||(e[9]=[g("ثبت اطلاعات",-1)])]),_:1})]),_:1},8,["title"])]),_:1})]),_:1},8,["spinning"]))}}});export{Y as _}; diff --git a/apps/admin-panel/dist/assets/AddBranches.vue_vue_type_script_setup_true_lang-Ds4yo_72.js b/apps/admin-panel/dist/assets/AddBranches.vue_vue_type_script_setup_true_lang-Ds4yo_72.js new file mode 100644 index 0000000..aec6e38 --- /dev/null +++ b/apps/admin-panel/dist/assets/AddBranches.vue_vue_type_script_setup_true_lang-Ds4yo_72.js @@ -0,0 +1 @@ +import{d as J,x as L,y as c,a as v,w as s,h as R,k as q,m as C,z as O,r as i,o as p,p as S,c as n,b as $,e as j,f as g,t as z,F as M,H as G,J as N,l as I}from"./index-CpVArufm.js";import{o as K}from"./select--BgT6D7O.js";import{_ as P}from"./BaseFormModal.vue_vue_type_style_index_0_lang-B4iVMhZt.js";const Q={class:"grid-2"},W={class:"grid-2"},ee=J({__name:"AddBranches",props:{open:{type:Boolean},id:{}},emits:["update:open","success"],setup(y,{emit:V}){const h=y,w=V,f=h.open!==void 0,E=q(),F=I(),r=f?h.id:E.params.id,m=C(!1),_=C([]),t=O({name:"",phone:"",address:"",user_id:void 0}),d=O({});function k(o,e){return K(e).includes(o)}async function b(){var o,e;if(Object.keys(d).forEach(l=>delete d[l]),!t.name){d.name="لطفا مقدار را وارد کنید";return}try{m.value=!0,r?await c.put(`branch/${r}`,t):await c.post("branch",t),N.info("اطلاعات با موفقیت به ثبت رسید."),r||Object.assign(t,{name:"",phone:"",address:"",user_id:void 0}),f?(w("success"),w("update:open",!1)):F.push("/branch/list")}catch(l){N.error(((e=(o=l==null?void 0:l.response)==null?void 0:o.data)==null?void 0:e.message)??"خطا در ثبت اطلاعات.")}finally{m.value=!1}}return L(async()=>{try{const{data:o}=await c.get("user/list");_.value=o}catch(o){console.log(o)}if(r)try{const{data:o}=await c.get(`branch/${r}`);Object.assign(t,{name:o.name??"",phone:o.phone??"",address:o.address??"",user_id:o.user_id??void 0})}catch(o){console.log(o)}}),(o,e)=>{const l=i("a-input"),u=i("a-form-item"),x=i("a-select-option"),U=i("a-select"),B=i("a-textarea"),T=i("a-button"),A=i("a-card"),D=i("a-form"),H=i("a-spin");return f?(p(),v(P,{key:0,open:!!y.open,id:R(r),"add-title":"افزودن شعبه","edit-title":"ویرایش شعبه",loading:m.value,submitting:m.value,"onUpdate:open":e[4]||(e[4]=a=>o.$emit("update:open",a)),onSubmit:b},{default:s(()=>[S("div",Q,[n(u,{label:"نام شعبه","validate-status":d.name?"error":"",help:d.name},{default:s(()=>[n(l,{value:t.name,"onUpdate:value":e[0]||(e[0]=a=>t.name=a)},null,8,["value"])]),_:1},8,["validate-status","help"]),n(u,{label:"تلفن شعبه"},{default:s(()=>[n(l,{value:t.phone,"onUpdate:value":e[1]||(e[1]=a=>t.phone=a)},null,8,["value"])]),_:1}),n(u,{label:"مدیر"},{default:s(()=>[n(U,{value:t.user_id,"onUpdate:value":e[2]||(e[2]=a=>t.user_id=a),"show-search":"","allow-clear":"",placeholder:"انتخاب کنید","filter-option":k},{default:s(()=>[(p(!0),$(M,null,j(_.value,a=>(p(),v(x,{key:a.id,value:a.id},{default:s(()=>[g(z(a.name),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1})]),n(u,{label:"آدرس"},{default:s(()=>[n(B,{value:t.address,"onUpdate:value":e[3]||(e[3]=a=>t.address=a),"auto-size":{minRows:2,maxRows:5}},null,8,["value"])]),_:1})]),_:1},8,["open","id","loading","submitting"])):(p(),v(H,{key:1,spinning:m.value},{default:s(()=>[n(D,{layout:"vertical",onSubmit:G(b,["prevent"])},{default:s(()=>[n(A,{title:R(r)?"ویرایش شعبه":"افزودن شعبه",class:"mb-base page-card"},{default:s(()=>[S("div",W,[n(u,{label:"نام شعبه","validate-status":d.name?"error":"",help:d.name},{default:s(()=>[n(l,{value:t.name,"onUpdate:value":e[5]||(e[5]=a=>t.name=a)},null,8,["value"])]),_:1},8,["validate-status","help"]),n(u,{label:"تلفن شعبه"},{default:s(()=>[n(l,{value:t.phone,"onUpdate:value":e[6]||(e[6]=a=>t.phone=a)},null,8,["value"])]),_:1}),n(u,{label:"مدیر"},{default:s(()=>[n(U,{value:t.user_id,"onUpdate:value":e[7]||(e[7]=a=>t.user_id=a),"show-search":"","allow-clear":"",placeholder:"انتخاب کنید","filter-option":k},{default:s(()=>[(p(!0),$(M,null,j(_.value,a=>(p(),v(x,{key:a.id,value:a.id},{default:s(()=>[g(z(a.name),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1})]),n(u,{label:"آدرس"},{default:s(()=>[n(B,{value:t.address,"onUpdate:value":e[8]||(e[8]=a=>t.address=a),"auto-size":{minRows:2,maxRows:5}},null,8,["value"])]),_:1}),n(T,{type:"primary",class:"form-submit",onClick:b},{default:s(()=>[...e[9]||(e[9]=[g("ثبت اطلاعات",-1)])]),_:1})]),_:1},8,["title"])]),_:1})]),_:1},8,["spinning"]))}}});export{ee as _}; diff --git a/apps/admin-panel/dist/assets/AddCustomer-Bfimekhg.js b/apps/admin-panel/dist/assets/AddCustomer-Bfimekhg.js new file mode 100644 index 0000000..8189832 --- /dev/null +++ b/apps/admin-panel/dist/assets/AddCustomer-Bfimekhg.js @@ -0,0 +1 @@ +import{c as h,I as w,d as x,u as z,m as B,b as l,p as n,w as I,F as v,e as P,a as m,g as k,i as p,k as A,s as R,r as F,o as i,h as b,A as H,l as M,q as V,t as y,M as j,_ as N}from"./index-CpVArufm.js";import{_ as D}from"./bulkCustomer.vue_vue_type_script_setup_true_lang-Bh7ptZgl.js";import{R as U}from"./ReagentCustomer-CN5vQurl.js";import{S as $}from"./singleCustomer-DCfVboVT.js";import{S as q}from"./ShopOutlined-D8LgPxHa.js";import{U as E}from"./UserOutlined-DeX82IP7.js";import"./select--BgT6D7O.js";import"./BaseFormModal.vue_vue_type_style_index_0_lang-B4iVMhZt.js";import"./ImageUploadInput.vue_vue_type_script_setup_true_lang-B9gVJPft.js";import"./CityTreeSelect.vue_vue_type_script_setup_true_lang-BtBj3fof.js";import"./DateInput-0_1fMgrR.js";import"./index-DjZc5EYL.js";import"./EnvironmentOutlined-BZFp8i4M.js";import"./PercentageOutlined-IS1MVcbY.js";import"./SafetyCertificateOutlined-mD-ddSP4.js";import"./CameraOutlined-JfS-rAEW.js";var L={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M928 160H96c-17.7 0-32 14.3-32 32v640c0 17.7 14.3 32 32 32h832c17.7 0 32-14.3 32-32V192c0-17.7-14.3-32-32-32zm-40 632H136V232h752v560zM610.3 476h123.4c1.3 0 2.3-3.6 2.3-8v-48c0-4.4-1-8-2.3-8H610.3c-1.3 0-2.3 3.6-2.3 8v48c0 4.4 1 8 2.3 8zm4.8 144h185.7c3.9 0 7.1-3.6 7.1-8v-48c0-4.4-3.2-8-7.1-8H615.1c-3.9 0-7.1 3.6-7.1 8v48c0 4.4 3.2 8 7.1 8zM224 673h43.9c4.2 0 7.6-3.3 7.9-7.5 3.8-50.5 46-90.5 97.2-90.5s93.4 40 97.2 90.5c.3 4.2 3.7 7.5 7.9 7.5H522a8 8 0 008-8.4c-2.8-53.3-32-99.7-74.6-126.1a111.8 111.8 0 0029.1-75.5c0-61.9-49.9-112-111.4-112s-111.4 50.1-111.4 112c0 29.1 11 55.5 29.1 75.5a158.09 158.09 0 00-74.6 126.1c-.4 4.6 3.2 8.4 7.8 8.4zm149-262c28.5 0 51.7 23.3 51.7 52s-23.2 52-51.7 52-51.7-23.3-51.7-52 23.2-52 51.7-52z"}}]},name:"idcard",theme:"outlined"};function g(a){for(var e=1;e!!o.hasPermission(c),d=R(()=>{const c=[];return u("persons.create.client")&&c.push({key:"omde",title:"مشتری عمده",hint:"مغازه‌دار، بنکدار و خریدار عمده",icon:q}),u("persons.create.seller")&&c.push({key:"reagent",title:"کارشناس فروش",hint:"کارشناس با کمیسیون و سقف اعتبار",icon:_}),o.isSuperAdmin&&c.push({key:"tak",title:"مشتری تک",hint:"مشتری خرده‌فروشی حضوری",icon:E}),c}),O={omde:D,reagent:U,tak:$};function C(){window.history.length>1?t.back():t.push("/customer/omde-list")}return(c,f)=>{const S=F("a-button");return i(),l("div",G,[n("header",J,[h(S,{class:"pf-head__back",shape:"circle",onClick:C},{icon:I(()=>[h(b(H))]),_:1}),f[0]||(f[0]=n("div",{class:"pf-head__text"},[n("h1",null,"افزودن شخص"),n("p",null,"نوع شخص را انتخاب و اطلاعات او را تکمیل کنید.")],-1))]),u("persons.create")&&d.value.length?(i(),l(v,{key:0},[n("div",Q,[(i(!0),l(v,null,P(d.value,r=>(i(),l("button",{key:r.key,type:"button",role:"tab",class:V(["kind-card",{"is-on":s.value===r.key}]),"aria-selected":s.value===r.key,onClick:K=>s.value=r.key},[n("span",X,[(i(),m(k(r.icon)))]),n("span",Y,[n("b",null,y(r.title),1),n("small",null,y(r.hint),1)]),s.value===r.key?(i(),m(b(j),{key:0,class:"kind-card__check"})):p("",!0)],10,W))),128))]),d.value.some(r=>r.key===s.value)?(i(),m(k(O[s.value]),{key:s.value})):p("",!0)],64)):p("",!0)])}}}),fe=N(Z,[["__scopeId","data-v-09902473"]]);export{fe as default}; diff --git a/apps/admin-panel/dist/assets/AddCustomer-DnqegEEB.js b/apps/admin-panel/dist/assets/AddCustomer-DnqegEEB.js deleted file mode 100644 index 892ffd6..0000000 --- a/apps/admin-panel/dist/assets/AddCustomer-DnqegEEB.js +++ /dev/null @@ -1 +0,0 @@ -import{c as h,I as w,d as x,u as z,m as B,b as l,p as n,w as I,F as v,e as P,a as m,g as k,i as p,k as A,s as R,r as F,o as i,h as b,A as H,l as M,q as V,t as y,M as j,_ as N}from"./index-CJij4X3l.js";import{_ as D}from"./bulkCustomer.vue_vue_type_script_setup_true_lang-C_6AC_x3.js";import{R as U}from"./ReagentCustomer-BfWz1HOe.js";import{S as $}from"./singleCustomer-CKKhHCBR.js";import{S as q}from"./ShopOutlined-B63CHExu.js";import{U as E}from"./UserOutlined-yq90mQcC.js";import"./BaseFormModal.vue_vue_type_style_index_0_lang-YLHOAWTN.js";import"./ImageUploadInput.vue_vue_type_script_setup_true_lang-vRgyyG7o.js";import"./CityTreeSelect.vue_vue_type_script_setup_true_lang-7y8zYJ_W.js";import"./DateInput-DgUF2he7.js";import"./index-CKg-8s_Z.js";import"./EnvironmentOutlined-Cetl6vFW.js";import"./PercentageOutlined-CtwjLYTJ.js";import"./SafetyCertificateOutlined-Cr8bqGKo.js";import"./CameraOutlined-BcxYWwtK.js";var L={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M928 160H96c-17.7 0-32 14.3-32 32v640c0 17.7 14.3 32 32 32h832c17.7 0 32-14.3 32-32V192c0-17.7-14.3-32-32-32zm-40 632H136V232h752v560zM610.3 476h123.4c1.3 0 2.3-3.6 2.3-8v-48c0-4.4-1-8-2.3-8H610.3c-1.3 0-2.3 3.6-2.3 8v48c0 4.4 1 8 2.3 8zm4.8 144h185.7c3.9 0 7.1-3.6 7.1-8v-48c0-4.4-3.2-8-7.1-8H615.1c-3.9 0-7.1 3.6-7.1 8v48c0 4.4 3.2 8 7.1 8zM224 673h43.9c4.2 0 7.6-3.3 7.9-7.5 3.8-50.5 46-90.5 97.2-90.5s93.4 40 97.2 90.5c.3 4.2 3.7 7.5 7.9 7.5H522a8 8 0 008-8.4c-2.8-53.3-32-99.7-74.6-126.1a111.8 111.8 0 0029.1-75.5c0-61.9-49.9-112-111.4-112s-111.4 50.1-111.4 112c0 29.1 11 55.5 29.1 75.5a158.09 158.09 0 00-74.6 126.1c-.4 4.6 3.2 8.4 7.8 8.4zm149-262c28.5 0 51.7 23.3 51.7 52s-23.2 52-51.7 52-51.7-23.3-51.7-52 23.2-52 51.7-52z"}}]},name:"idcard",theme:"outlined"};function g(r){for(var e=1;e!!o.hasPermission(c),d=R(()=>{const c=[];return u("persons.create.client")&&c.push({key:"omde",title:"مشتری عمده",hint:"مغازه‌دار، بنکدار و خریدار عمده",icon:q}),u("persons.create.seller")&&c.push({key:"reagent",title:"کارشناس فروش",hint:"کارشناس با کمیسیون و سقف اعتبار",icon:_}),o.isSuperAdmin&&c.push({key:"tak",title:"مشتری تک",hint:"مشتری خرده‌فروشی حضوری",icon:E}),c}),O={omde:D,reagent:U,tak:$};function C(){window.history.length>1?t.back():t.push("/customer/omde-list")}return(c,f)=>{const S=F("a-button");return i(),l("div",G,[n("header",J,[h(S,{class:"pf-head__back",shape:"circle",onClick:C},{icon:I(()=>[h(b(H))]),_:1}),f[0]||(f[0]=n("div",{class:"pf-head__text"},[n("h1",null,"افزودن شخص"),n("p",null,"نوع شخص را انتخاب و اطلاعات او را تکمیل کنید.")],-1))]),u("persons.create")&&d.value.length?(i(),l(v,{key:0},[n("div",Q,[(i(!0),l(v,null,P(d.value,a=>(i(),l("button",{key:a.key,type:"button",role:"tab",class:V(["kind-card",{"is-on":s.value===a.key}]),"aria-selected":s.value===a.key,onClick:K=>s.value=a.key},[n("span",X,[(i(),m(k(a.icon)))]),n("span",Y,[n("b",null,y(a.title),1),n("small",null,y(a.hint),1)]),s.value===a.key?(i(),m(b(j),{key:0,class:"kind-card__check"})):p("",!0)],10,W))),128))]),d.value.some(a=>a.key===s.value)?(i(),m(k(O[s.value]),{key:s.value})):p("",!0)],64)):p("",!0)])}}}),_e=N(Z,[["__scopeId","data-v-09902473"]]);export{_e as default}; diff --git a/apps/admin-panel/dist/assets/AddInvoice-CkuDWq78.js b/apps/admin-panel/dist/assets/AddInvoice-CkuDWq78.js new file mode 100644 index 0000000..d967dae --- /dev/null +++ b/apps/admin-panel/dist/assets/AddInvoice-CkuDWq78.js @@ -0,0 +1 @@ +import{Z as it,d as nt,x as st,y as q,a as f,w as n,h as b,k as ot,m as M,z as L,r as u,o as l,c as s,f as m,p as I,a0 as Q,b as C,t as S,F as B,i as P,e as Z,H as lt,s as dt,J as V,l as rt,_ as ct}from"./index-CpVArufm.js";import{o as ut}from"./select--BgT6D7O.js";import{_ as mt}from"./BaseFormModal.vue_vue_type_style_index_0_lang-B4iVMhZt.js";import{a as pt,b as p,X as G}from"./model-mwiDYd1J.js";import"./filters-CoNJlguG.js";import"./index-DjZc5EYL.js";import"./SettingOutlined-E4OknxY2.js";function _t(){const e=new pt("admin/products/list","لیست محصولات");return e.add(new p("id","کد").filterNumber()),e.add(new p("ProductImage","تصویر محصول").renderSlot("image").noSort()),e.add(new p("title","نام محصول").filterText()),e.add(new p("min_gram","وزن").filterNumber().noSort()),e.add(new p("brand.title","برند").filterText()),e.add(new p("category.collection.title","دسته بندی").filterText()),e.add(new p("product_code","کد محصول").filterText()),e.add(new p("max_gram","حداکثر وزن").filterNumber().hidden().noSort()),e.add(new p("op","عملیات").noSort().renderSlot("op")),e}const W="admin_invoice_items",ft=it("invoiceCart",{state:()=>({items:[]}),actions:{setItems(e){this.items=e,localStorage.setItem(W,JSON.stringify(e))},add(e){var x;const _=this.items.findIndex(w=>w.pid==e.pid&&w.vid==e.vid),y=(((x=e.product)==null?void 0:x.variants_all)??[]).filter(w=>w.id===e.vid)[0];e.vid&&y&&!y.is_pre_order&&y.qty===0||(_==-1?this.items.push(e):(this.items[_].product=e.product,this.items[_].qty=e.qty),this.setItems(this.items))},remove(e){const _=this.items.findIndex(g=>g.pid==e.pid&&g.vid==e.vid);_>-1&&this.items.splice(_,1),this.setItems(this.items)},updateItemQuantity(e){this.items[e.index].qty=e.quantity,this.setItems(this.items)},clear(){this.items=[],this.setItems(this.items)},init(){try{this.items=JSON.parse(localStorage.getItem(W)??"[]")||[]}catch{this.items=[]}}}}),ht=["src"],vt={key:1,class:"flex items-center"},bt=["src"],gt={class:"grid-3 mt-4"},yt=["src"],xt={key:1,class:"flex items-center"},wt=["src"],kt={class:"grid-3"},X="/img/no-items.png",It=nt({__name:"AddInvoice",props:{open:{type:Boolean},id:{}},emits:["update:open","success"],setup(e,{emit:_}){const g=e,y=_,x=g.open!==void 0,w=ot(),Y=rt(),h=ft(),N=x?g.id:w.params.id,T=M(!1),j=_t(),z=M(null),O=M([]),d=L({branch_id:void 0,note:""}),v=L({}),k=dt(()=>h.items),J=[{title:"حذف",dataIndex:"delete",width:60,align:"center"},{title:"کد محصول",dataIndex:"pid",align:"center",width:120},{title:"محصول",dataIndex:"product"},{title:"وزن",dataIndex:"weight",align:"center"}];function A(i){var a,o,c;return((a=i==null?void 0:i.thumb)==null?void 0:a.full)??((c=(o=i==null?void 0:i.ProductImage)==null?void 0:o[0])==null?void 0:c.image)??X}function E(i){h.add({pid:i.id,qty:1,product:i}),V.info("اضافه شد")}function F(i,a){return ut(a).includes(i)}async function U(){var i,a;if(Object.keys(v).forEach(o=>delete v[o]),!d.branch_id){v.branch_id="مقدار را وارد نمایید";return}try{T.value=!0;const o=k.value.map(c=>c.pid);N?await q.put(`branch/product/${N}`,{...d,products:o}):await q.post("branch/product",{...d,products:o}),V.info("عملیات با موفقیت انجام شد"),h.clear(),x?(y("success"),y("update:open",!1)):Y.push("/invoice/list")}catch(o){V.error(((a=(i=o==null?void 0:o.response)==null?void 0:i.data)==null?void 0:a.message)??"خطا در ثبت اطلاعات.")}finally{T.value=!1}}return st(async()=>{h.init();try{const{data:i}=await q.get("branch/list");O.value=i}catch(i){console.log(i)}if(N)try{const{data:i}=await q.get(`branch/product/${N}`);d.branch_id=i.branch_id,d.note=i.note??"",h.setItems((i.products??[]).map(a=>({pid:a.id,qty:1,product:{id:a.id,title:a.title,min_gram:a.grams}})))}catch(i){console.log(i)}}),(i,a)=>{const o=u("a-button"),c=u("a-card"),R=u("a-table"),D=u("a-select-option"),H=u("a-select"),$=u("a-form-item"),K=u("a-input"),tt=u("a-form"),et=u("a-spin");return x?(l(),f(mt,{key:0,open:!!e.open,id:b(N),"add-title":"افزودن فاکتور","edit-title":"ویرایش فاکتور",loading:T.value,submitting:T.value,width:"xl","ok-text":"ثبت تغییرات","onUpdate:open":a[2]||(a[2]=t=>i.$emit("update:open",t)),onSubmit:U},{default:n(()=>[s(c,{title:"لیست محصولات"},{default:n(()=>[s(G,{ref_key:"tblProducts",ref:z,model:b(j),"mobile-cards":""},{image:n(({record:t})=>[I("img",{width:"90px",height:"90px",style:{"object-fit":"scale-down"},src:t.thumb&&t.thumb.full?t.thumb.full:X},null,8,ht)]),op:n(({record:t})=>[s(o,{size:"small",type:"primary",onClick:r=>E(t)},{default:n(()=>[...a[5]||(a[5]=[m("افزودن",-1)])]),_:1},8,["onClick"])]),_:1},8,["model"])]),_:1}),k.value.length>0?(l(),f(c,{key:0,title:"ثبت سفارش",class:"mt-5 table-scroll"},{default:n(()=>[s(R,{columns:J,"data-source":k.value,bordered:"",pagination:!1,"row-key":"pid"},{bodyCell:n(({column:t,record:r})=>[t.dataIndex==="delete"?(l(),f(b(Q),{key:0,class:"cursor-pointer",onClick:at=>b(h).remove(r)},null,8,["onClick"])):t.dataIndex==="product"?(l(),C("div",vt,[I("img",{src:A(r.product),width:"50px"},null,8,bt),m(" "+S(r.product.title),1)])):t.dataIndex==="weight"?(l(),C(B,{key:2},[m(S(r.product.min_gram??"-"),1)],64)):P("",!0)]),_:1},8,["data-source"]),I("div",gt,[s($,{label:"نام شعبه","validate-status":v.branch_id?"error":"",help:v.branch_id},{default:n(()=>[s(H,{value:d.branch_id,"onUpdate:value":a[0]||(a[0]=t=>d.branch_id=t),"show-search":"",placeholder:"انتخاب کنید","filter-option":F},{default:n(()=>[(l(!0),C(B,null,Z(O.value,t=>(l(),f(D,{key:t.id,value:t.id},{default:n(()=>[m(S(t.name),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1},8,["validate-status","help"]),s($,{label:"توضیحات"},{default:n(()=>[s(K,{value:d.note,"onUpdate:value":a[1]||(a[1]=t=>d.note=t)},null,8,["value"])]),_:1})])]),_:1})):P("",!0)]),_:1},8,["open","id","loading","submitting"])):(l(),f(et,{key:1,spinning:T.value},{default:n(()=>[s(c,{title:"لیست محصولات",class:"page-card"},{default:n(()=>[s(G,{ref_key:"tblProducts",ref:z,model:b(j),"mobile-cards":""},{image:n(({record:t})=>[I("img",{width:"90px",height:"90px",style:{"object-fit":"scale-down"},src:t.thumb&&t.thumb.full?t.thumb.full:X},null,8,yt)]),op:n(({record:t})=>[s(o,{size:"small",type:"primary",onClick:r=>E(t)},{default:n(()=>[...a[6]||(a[6]=[m("افزودن",-1)])]),_:1},8,["onClick"])]),_:1},8,["model"]),k.value.length>0?(l(),f(c,{key:0,title:"ثبت سفارش",class:"mt-5 table-scroll"},{default:n(()=>[s(R,{columns:J,"data-source":k.value,bordered:"",pagination:!1,"row-key":"pid"},{bodyCell:n(({column:t,record:r})=>[t.dataIndex==="delete"?(l(),f(b(Q),{key:0,class:"cursor-pointer",onClick:at=>b(h).remove(r)},null,8,["onClick"])):t.dataIndex==="product"?(l(),C("div",xt,[I("img",{src:A(r.product),width:"50px"},null,8,wt),m(" "+S(r.product.title),1)])):t.dataIndex==="weight"?(l(),C(B,{key:2},[m(S(r.product.min_gram??"-"),1)],64)):P("",!0)]),_:1},8,["data-source"]),s(tt,{layout:"vertical",class:"mt-4",onSubmit:lt(U,["prevent"])},{default:n(()=>[I("div",kt,[s($,{label:"نام شعبه","validate-status":v.branch_id?"error":"",help:v.branch_id},{default:n(()=>[s(H,{value:d.branch_id,"onUpdate:value":a[3]||(a[3]=t=>d.branch_id=t),"show-search":"",placeholder:"انتخاب کنید","filter-option":F},{default:n(()=>[(l(!0),C(B,null,Z(O.value,t=>(l(),f(D,{key:t.id,value:t.id},{default:n(()=>[m(S(t.name),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1},8,["validate-status","help"]),s($,{label:"توضیحات"},{default:n(()=>[s(K,{value:d.note,"onUpdate:value":a[4]||(a[4]=t=>d.note=t)},null,8,["value"])]),_:1})]),s(o,{type:"primary",class:"form-submit",disabled:k.value.length<1,onClick:U},{default:n(()=>[...a[7]||(a[7]=[m(" ثبت تغییرات ",-1)])]),_:1},8,["disabled"])]),_:1})]),_:1})):P("",!0)]),_:1})]),_:1},8,["spinning"]))}}}),Pt=ct(It,[["__scopeId","data-v-42197ac4"]]);export{Pt as default}; diff --git a/apps/admin-panel/dist/assets/AddInvoice-DbwyBxeJ.css b/apps/admin-panel/dist/assets/AddInvoice-DbwyBxeJ.css deleted file mode 100644 index b996b43..0000000 --- a/apps/admin-panel/dist/assets/AddInvoice-DbwyBxeJ.css +++ /dev/null @@ -1 +0,0 @@ -.mt-4[data-v-a752a6ce]{margin-top:1rem}.mt-5[data-v-a752a6ce]{margin-top:1.25rem} diff --git a/apps/admin-panel/dist/assets/AddInvoice-DdE29E9r.js b/apps/admin-panel/dist/assets/AddInvoice-DdE29E9r.js deleted file mode 100644 index a6cbb53..0000000 --- a/apps/admin-panel/dist/assets/AddInvoice-DdE29E9r.js +++ /dev/null @@ -1 +0,0 @@ -import{Y as it,d as nt,x as st,y as q,a as f,w as n,h as b,k as ot,m as M,z as L,r as u,o as l,c as o,f as m,p as I,$ as Q,b as C,t as S,F as B,i as P,e as Y,H as lt,s as dt,J as V,l as rt,_ as ct}from"./index-CJij4X3l.js";import{_ as ut}from"./BaseFormModal.vue_vue_type_style_index_0_lang-YLHOAWTN.js";import{a as mt,b as p,X as G}from"./model-tqsMDjkK.js";import"./filters-BPYO-DKN.js";import"./index-CKg-8s_Z.js";import"./SettingOutlined-BJxMXy1I.js";function pt(){const e=new mt("admin/products/list","لیست محصولات");return e.add(new p("id","کد").filterNumber()),e.add(new p("ProductImage","تصویر محصول").renderSlot("image").noSort()),e.add(new p("title","نام محصول").filterText()),e.add(new p("min_gram","وزن").filterNumber().noSort()),e.add(new p("brand.title","برند").filterText()),e.add(new p("category.collection.title","دسته بندی").filterText()),e.add(new p("product_code","کد محصول").filterText()),e.add(new p("max_gram","حداکثر وزن").filterNumber().hidden().noSort()),e.add(new p("op","عملیات").noSort().renderSlot("op")),e}const W="admin_invoice_items",_t=it("invoiceCart",{state:()=>({items:[]}),actions:{setItems(e){this.items=e,localStorage.setItem(W,JSON.stringify(e))},add(e){var x;const _=this.items.findIndex(w=>w.pid==e.pid&&w.vid==e.vid),y=(((x=e.product)==null?void 0:x.variants_all)??[]).filter(w=>w.id===e.vid)[0];e.vid&&y&&!y.is_pre_order&&y.qty===0||(_==-1?this.items.push(e):(this.items[_].product=e.product,this.items[_].qty=e.qty),this.setItems(this.items))},remove(e){const _=this.items.findIndex(g=>g.pid==e.pid&&g.vid==e.vid);_>-1&&this.items.splice(_,1),this.setItems(this.items)},updateItemQuantity(e){this.items[e.index].qty=e.quantity,this.setItems(this.items)},clear(){this.items=[],this.setItems(this.items)},init(){try{this.items=JSON.parse(localStorage.getItem(W)??"[]")||[]}catch{this.items=[]}}}}),ft=["src"],ht={key:1,class:"flex items-center"},vt=["src"],bt={class:"grid-3 mt-4"},gt=["src"],yt={key:1,class:"flex items-center"},xt=["src"],wt={class:"grid-3"},X="/img/no-items.png",kt=nt({__name:"AddInvoice",props:{open:{type:Boolean},id:{}},emits:["update:open","success"],setup(e,{emit:_}){const g=e,y=_,x=g.open!==void 0,w=ot(),Z=rt(),h=_t(),N=x?g.id:w.params.id,$=M(!1),j=pt(),z=M(null),O=M([]),d=L({branch_id:void 0,note:""}),v=L({}),k=dt(()=>h.items),J=[{title:"حذف",dataIndex:"delete",width:60,align:"center"},{title:"کد محصول",dataIndex:"pid",align:"center",width:120},{title:"محصول",dataIndex:"product"},{title:"وزن",dataIndex:"weight",align:"center"}];function A(i){var a,s,r;return((a=i==null?void 0:i.thumb)==null?void 0:a.full)??((r=(s=i==null?void 0:i.ProductImage)==null?void 0:s[0])==null?void 0:r.image)??X}function E(i){h.add({pid:i.id,qty:1,product:i}),V.info("اضافه شد")}function F(i,a){var s,r;return String(((r=(s=a==null?void 0:a.children)==null?void 0:s[0])==null?void 0:r.children)??"").includes(i)}async function U(){var i,a;if(Object.keys(v).forEach(s=>delete v[s]),!d.branch_id){v.branch_id="مقدار را وارد نمایید";return}try{$.value=!0;const s=k.value.map(r=>r.pid);N?await q.put(`branch/product/${N}`,{...d,products:s}):await q.post("branch/product",{...d,products:s}),V.info("عملیات با موفقیت انجام شد"),h.clear(),x?(y("success"),y("update:open",!1)):Z.push("/invoice/list")}catch(s){V.error(((a=(i=s==null?void 0:s.response)==null?void 0:i.data)==null?void 0:a.message)??"خطا در ثبت اطلاعات.")}finally{$.value=!1}}return st(async()=>{h.init();try{const{data:i}=await q.get("branch/list");O.value=i}catch(i){console.log(i)}if(N)try{const{data:i}=await q.get(`branch/product/${N}`);d.branch_id=i.branch_id,d.note=i.note??"",h.setItems((i.products??[]).map(a=>({pid:a.id,qty:1,product:{id:a.id,title:a.title,min_gram:a.grams}})))}catch(i){console.log(i)}}),(i,a)=>{const s=u("a-button"),r=u("a-card"),R=u("a-table"),D=u("a-select-option"),H=u("a-select"),T=u("a-form-item"),K=u("a-input"),tt=u("a-form"),et=u("a-spin");return x?(l(),f(ut,{key:0,open:!!e.open,id:b(N),"add-title":"افزودن فاکتور","edit-title":"ویرایش فاکتور",loading:$.value,submitting:$.value,width:"xl","ok-text":"ثبت تغییرات","onUpdate:open":a[2]||(a[2]=t=>i.$emit("update:open",t)),onSubmit:U},{default:n(()=>[o(r,{title:"لیست محصولات"},{default:n(()=>[o(G,{ref_key:"tblProducts",ref:z,model:b(j),"mobile-cards":""},{image:n(({record:t})=>[I("img",{width:"90px",height:"90px",style:{"object-fit":"scale-down"},src:t.thumb&&t.thumb.full?t.thumb.full:X},null,8,ft)]),op:n(({record:t})=>[o(s,{size:"small",type:"primary",onClick:c=>E(t)},{default:n(()=>[...a[5]||(a[5]=[m("افزودن",-1)])]),_:1},8,["onClick"])]),_:1},8,["model"])]),_:1}),k.value.length>0?(l(),f(r,{key:0,title:"ثبت سفارش",class:"mt-5 table-scroll"},{default:n(()=>[o(R,{columns:J,"data-source":k.value,bordered:"",pagination:!1,"row-key":"pid"},{bodyCell:n(({column:t,record:c})=>[t.dataIndex==="delete"?(l(),f(b(Q),{key:0,class:"cursor-pointer",onClick:at=>b(h).remove(c)},null,8,["onClick"])):t.dataIndex==="product"?(l(),C("div",ht,[I("img",{src:A(c.product),width:"50px"},null,8,vt),m(" "+S(c.product.title),1)])):t.dataIndex==="weight"?(l(),C(B,{key:2},[m(S(c.product.min_gram??"-"),1)],64)):P("",!0)]),_:1},8,["data-source"]),I("div",bt,[o(T,{label:"نام شعبه","validate-status":v.branch_id?"error":"",help:v.branch_id},{default:n(()=>[o(H,{value:d.branch_id,"onUpdate:value":a[0]||(a[0]=t=>d.branch_id=t),"show-search":"",placeholder:"انتخاب کنید","filter-option":F},{default:n(()=>[(l(!0),C(B,null,Y(O.value,t=>(l(),f(D,{key:t.id,value:t.id},{default:n(()=>[m(S(t.name),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1},8,["validate-status","help"]),o(T,{label:"توضیحات"},{default:n(()=>[o(K,{value:d.note,"onUpdate:value":a[1]||(a[1]=t=>d.note=t)},null,8,["value"])]),_:1})])]),_:1})):P("",!0)]),_:1},8,["open","id","loading","submitting"])):(l(),f(et,{key:1,spinning:$.value},{default:n(()=>[o(r,{title:"لیست محصولات",class:"page-card"},{default:n(()=>[o(G,{ref_key:"tblProducts",ref:z,model:b(j),"mobile-cards":""},{image:n(({record:t})=>[I("img",{width:"90px",height:"90px",style:{"object-fit":"scale-down"},src:t.thumb&&t.thumb.full?t.thumb.full:X},null,8,gt)]),op:n(({record:t})=>[o(s,{size:"small",type:"primary",onClick:c=>E(t)},{default:n(()=>[...a[6]||(a[6]=[m("افزودن",-1)])]),_:1},8,["onClick"])]),_:1},8,["model"]),k.value.length>0?(l(),f(r,{key:0,title:"ثبت سفارش",class:"mt-5 table-scroll"},{default:n(()=>[o(R,{columns:J,"data-source":k.value,bordered:"",pagination:!1,"row-key":"pid"},{bodyCell:n(({column:t,record:c})=>[t.dataIndex==="delete"?(l(),f(b(Q),{key:0,class:"cursor-pointer",onClick:at=>b(h).remove(c)},null,8,["onClick"])):t.dataIndex==="product"?(l(),C("div",yt,[I("img",{src:A(c.product),width:"50px"},null,8,xt),m(" "+S(c.product.title),1)])):t.dataIndex==="weight"?(l(),C(B,{key:2},[m(S(c.product.min_gram??"-"),1)],64)):P("",!0)]),_:1},8,["data-source"]),o(tt,{layout:"vertical",class:"mt-4",onSubmit:lt(U,["prevent"])},{default:n(()=>[I("div",wt,[o(T,{label:"نام شعبه","validate-status":v.branch_id?"error":"",help:v.branch_id},{default:n(()=>[o(H,{value:d.branch_id,"onUpdate:value":a[3]||(a[3]=t=>d.branch_id=t),"show-search":"",placeholder:"انتخاب کنید","filter-option":F},{default:n(()=>[(l(!0),C(B,null,Y(O.value,t=>(l(),f(D,{key:t.id,value:t.id},{default:n(()=>[m(S(t.name),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1},8,["validate-status","help"]),o(T,{label:"توضیحات"},{default:n(()=>[o(K,{value:d.note,"onUpdate:value":a[4]||(a[4]=t=>d.note=t)},null,8,["value"])]),_:1})]),o(s,{type:"primary",class:"form-submit",disabled:k.value.length<1,onClick:U},{default:n(()=>[...a[7]||(a[7]=[m(" ثبت تغییرات ",-1)])]),_:1},8,["disabled"])]),_:1})]),_:1})):P("",!0)]),_:1})]),_:1},8,["spinning"]))}}}),qt=ct(kt,[["__scopeId","data-v-a752a6ce"]]);export{qt as default}; diff --git a/apps/admin-panel/dist/assets/AddInvoice-ZsR8qaoD.css b/apps/admin-panel/dist/assets/AddInvoice-ZsR8qaoD.css new file mode 100644 index 0000000..b837dbe --- /dev/null +++ b/apps/admin-panel/dist/assets/AddInvoice-ZsR8qaoD.css @@ -0,0 +1 @@ +.mt-4[data-v-42197ac4]{margin-top:1rem}.mt-5[data-v-42197ac4]{margin-top:1.25rem} diff --git a/apps/admin-panel/dist/assets/AddProduct-B3HJWpgQ.css b/apps/admin-panel/dist/assets/AddProduct-B3HJWpgQ.css deleted file mode 100644 index 0f6d969..0000000 --- a/apps/admin-panel/dist/assets/AddProduct-B3HJWpgQ.css +++ /dev/null @@ -1 +0,0 @@ -.gallery-upload[data-v-79ab0f30]{display:flex;flex-direction:column;gap:12px}.gallery-upload__zone[data-v-79ab0f30]{padding:18px 12px}.gallery-upload__icon[data-v-79ab0f30]{font-size:16px;color:#1c2d56;opacity:.75}.gallery-upload__title[data-v-79ab0f30]{margin:8px 0 2px;font-weight:500;font-size:14px;color:#101828}.gallery-upload__hint[data-v-79ab0f30]{margin:0;font-size:12px;color:#8a94a6}.gallery-upload__grid[data-v-79ab0f30]{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:10px}.tile[data-v-79ab0f30]{position:relative;aspect-ratio:1;border-radius:12px;overflow:hidden;border:1px solid #eef0f5;background:#f5f7fb}.tile img[data-v-79ab0f30]{width:100%;height:100%;object-fit:cover;display:block}.tile.is-uploading img[data-v-79ab0f30]{filter:brightness(.6)}.tile__progress[data-v-79ab0f30]{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center}.tile__overlay[data-v-79ab0f30]{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;gap:8px;background:#10182880;opacity:0;transition:opacity .2s ease}.tile:hover .tile__overlay[data-v-79ab0f30],.tile:focus-within .tile__overlay[data-v-79ab0f30]{opacity:1}.tile__btn[data-v-79ab0f30]{width:32px;height:32px;display:grid;place-items:center;border:none;border-radius:9px;background:#ffffffeb;color:#1c2d56;font-size:15px;cursor:pointer;transition:transform .15s ease}.tile__btn[data-v-79ab0f30]:hover{transform:scale(1.08)}.tile__btn--danger[data-v-79ab0f30]{color:#ea5455}@media (hover: none){.tile__overlay[data-v-79ab0f30]{opacity:1;align-items:flex-end;justify-content:flex-end;padding:6px;gap:4px;background:linear-gradient(to top,rgba(16,24,40,.55),transparent 55%)}.tile__btn[data-v-79ab0f30]{width:28px;height:28px;font-size:13px}}.gallery-upload__meta[data-v-79ab0f30]{display:flex;align-items:center;gap:14px;font-size:12px;color:#8a94a6}.gallery-upload__pending[data-v-79ab0f30]{display:inline-flex;align-items:center;gap:6px;color:#1c2d56}.product-form-page[data-v-4d03854e]{--c-primary: #1c2d56;--ink: #101828;--muted: #8a94a6;--line: #eef0f5;min-width:0}.pf-table__title[data-v-4d03854e]{font-weight:500;color:var(--ink)}.pf-table__ops[data-v-4d03854e]{display:flex;gap:2px}.muted[data-v-4d03854e]{color:var(--muted)}.variant-thumb[data-v-4d03854e]{width:44px;height:44px;object-fit:cover;border-radius:10px;display:inline-block;border:1px solid var(--line)}.variant-thumb--empty[data-v-4d03854e]{display:inline-flex;align-items:center;justify-content:center;border:1px dashed #d9dde5;background:#fafbfd;color:#b4bccb;font-size:16px}.variant-form[data-v-4d03854e]{display:grid;grid-template-columns:120px minmax(0,1fr);gap:20px;align-items:start}.variant-form__media[data-v-4d03854e]{display:flex;flex-direction:column;align-items:flex-start;gap:4px}.variant-form__gallery-btn[data-v-4d03854e]{padding-inline:0}.variant-form__hint[data-v-4d03854e]{margin:12px 0 0;font-size:12px;color:var(--muted)}.variant-gallery[data-v-4d03854e]{display:grid;grid-template-columns:repeat(4,64px);gap:8px;max-height:232px;overflow-y:auto}.variant-gallery__item[data-v-4d03854e]{width:64px;height:64px;padding:2px;border:2px solid #e3e7ef;border-radius:10px;background:#fff;cursor:pointer;overflow:hidden}.variant-gallery__item[data-v-4d03854e]:hover{border-color:#b4bccb}.variant-gallery__item.is-on[data-v-4d03854e]{border-color:#1c2d56}.variant-gallery__item img[data-v-4d03854e]{width:100%;height:100%;object-fit:cover;border-radius:7px;display:block}@media (max-width: 575px){.variant-form[data-v-4d03854e]{grid-template-columns:minmax(0,1fr);gap:12px}}.product-editor-page[data-v-4d03854e]{display:flex;flex-direction:column;gap:16px;min-width:0}.page-top-header[data-v-4d03854e]{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:2px 4px}.page-title-wrap[data-v-4d03854e]{display:flex;flex-direction:column;gap:4px}.title-with-badge[data-v-4d03854e]{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.page-title[data-v-4d03854e]{margin:0;font-size:20px;font-weight:600;color:#1c2d56;line-height:1.3}.product-name-badge[data-v-4d03854e]{margin:0;font-size:13px;font-weight:500;border-radius:6px}.accounting-badge[data-v-4d03854e]{margin:0;font-size:12px;border-radius:6px}.page-subtitle[data-v-4d03854e]{margin:0;font-size:13px;color:#8c8c8c}.header-actions[data-v-4d03854e]{display:flex;align-items:center;gap:10px}.back-btn[data-v-4d03854e]{display:inline-flex;align-items:center;gap:6px;height:38px;border-radius:8px;color:#595959;font-size:13px}.header-save-btn[data-v-4d03854e]{background:#1c2d56;border-color:#1c2d56;height:38px;padding:0 18px;border-radius:8px;font-size:13px;font-weight:600}.header-save-btn[data-v-4d03854e]:hover{background:#2b427a!important;border-color:#2b427a!important}.product-grid-layout[data-v-4d03854e]{display:grid;grid-template-columns:1fr 340px;gap:20px;align-items:start}.layout-main[data-v-4d03854e],.layout-sidebar[data-v-4d03854e]{display:flex;flex-direction:column;gap:20px;min-width:0}.form-section[data-v-4d03854e]{background:#fff;border:1px solid #edf0f5;border-radius:12px;padding:20px 22px 24px;box-shadow:0 1px 2px #1c2d5605}.form-section-head[data-v-4d03854e]{display:flex;align-items:center;gap:12px;padding-bottom:14px;margin-bottom:20px;border-bottom:1px solid #f0f2f5}.form-section-head.has-action[data-v-4d03854e]{justify-content:space-between}.head-info[data-v-4d03854e]{display:flex;align-items:center;gap:12px}.section-icon-badge[data-v-4d03854e]{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:10px;background:#1c2d560d;color:#1c2d56;font-size:18px;flex-shrink:0}.section-title-wrap[data-v-4d03854e]{display:flex;flex-direction:column;gap:2px}.section-title[data-v-4d03854e]{margin:0;font-size:15px;font-weight:600;color:#1c2d56;line-height:1.3}.section-subtitle[data-v-4d03854e]{margin:0;font-size:12px;color:#8c8c8c;line-height:1.4}.form-grid-2[data-v-4d03854e]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 20px}.full-width-item[data-v-4d03854e]{grid-column:1 / -1}.form-grid-2[data-v-4d03854e] .ant-form-item,.sidebar-section[data-v-4d03854e] .ant-form-item{margin-bottom:0}.sidebar-section[data-v-4d03854e]{padding:18px}.sidebar-item[data-v-4d03854e]{margin-bottom:16px}.switch-row[data-v-4d03854e]{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-radius:8px;background:#fafbfc;border:1px solid #f0f2f5}.switch-info[data-v-4d03854e]{display:flex;flex-direction:column;gap:2px}.switch-title[data-v-4d03854e]{font-size:13px;font-weight:600;color:#262626}.switch-subtitle[data-v-4d03854e]{font-size:11px;color:#8c8c8c}.featured-images-grid[data-v-4d03854e]{display:grid;grid-template-columns:1fr 1fr;gap:12px}.featured-upload-card[data-v-4d03854e]{display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px;background:#fafbfc;border:1px dashed #d9d9d9;border-radius:8px;transition:all .2s ease}.featured-upload-card[data-v-4d03854e]:hover{border-color:#1c2d56;background:#fff}.featured-label[data-v-4d03854e]{font-size:12px;font-weight:500;color:#595959}.gallery-tabs[data-v-4d03854e]{margin-bottom:14px}.gallery-segmented[data-v-4d03854e]{width:100%;display:flex}.gallery-segmented[data-v-4d03854e] .ant-radio-button-wrapper{flex:1;text-align:center;font-size:12px}.gallery-grid[data-v-4d03854e]{display:flex;flex-wrap:wrap;gap:10px}.gallery-item[data-v-4d03854e]{flex-shrink:0}.add-variant-btn[data-v-4d03854e]{background:#1c2d56;border-color:#1c2d56;border-radius:6px;font-size:13px}.add-variant-btn[data-v-4d03854e]:hover{background:#2b427a!important;border-color:#2b427a!important}.table-container[data-v-4d03854e]{border:1px solid #edf0f5;border-radius:8px;overflow:hidden}.variants-table[data-v-4d03854e] .ant-table-thead>tr>th{background:#fafbfc;font-size:12px;font-weight:600;color:#595959}.variant-thumb[data-v-4d03854e]{width:42px;height:42px;object-fit:cover;border-radius:6px;border:1px solid #e8e8e8;display:inline-block}.variant-thumb--empty[data-v-4d03854e]{display:inline-flex;align-items:center;justify-content:center;background:#fafafa;color:#bfbfbf;border:1px dashed #d9d9d9;font-size:14px}.variant-title-cell[data-v-4d03854e]{font-weight:600;color:#262626;font-size:13px}.weight-cell[data-v-4d03854e]{color:#1c2d56;font-weight:500;font-size:13px}.wage-cell[data-v-4d03854e]{color:#28c76f;font-weight:600;font-size:13px}.qty-badge[data-v-4d03854e]{display:inline-block;padding:2px 8px;background:#f5f5f5;border-radius:4px;font-size:12px;color:#595959}.status-tag[data-v-4d03854e]{margin:0;border-radius:4px;font-size:11px}.table-actions[data-v-4d03854e]{display:inline-flex;align-items:center;gap:4px}.action-btn[data-v-4d03854e]{border-radius:4px}.edit-btn[data-v-4d03854e]{color:#1c2d56}.edit-btn[data-v-4d03854e]:hover{background:#1c2d5614}.delete-btn[data-v-4d03854e]{color:#ea5455}.delete-btn[data-v-4d03854e]:hover{background:#ea545514}.variants-empty[data-v-4d03854e]{padding:24px 16px;text-align:center}.empty-title[data-v-4d03854e]{margin:0 0 4px;font-size:14px;font-weight:600;color:#262626}.empty-desc[data-v-4d03854e]{margin:0 0 16px;font-size:12px;color:#8c8c8c}.empty-add-btn[data-v-4d03854e]{border-radius:6px;color:#1c2d56;border-color:#1c2d56}.form-actions-bar[data-v-4d03854e]{display:flex;align-items:center;gap:12px;margin-top:20px;padding-top:20px;border-top:1px solid #edf0f5}.submit-btn[data-v-4d03854e]{background:#1c2d56;border-color:#1c2d56;height:42px;padding:0 24px;font-size:14px;font-weight:600;border-radius:8px}.submit-btn[data-v-4d03854e]:hover{background:#2b427a!important;border-color:#2b427a!important}.cancel-btn[data-v-4d03854e]{height:42px;padding:0 20px;font-size:14px;border-radius:8px;color:#595959}.vmodal-header[data-v-4d03854e]{display:flex;align-items:center;gap:12px;padding:0 0 10px;border-bottom:1px solid #edf2f7}.vmodal-header__icon[data-v-4d03854e]{width:36px;height:36px;border-radius:8px;background:#1c2d5614;color:#1c2d56;display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0}.vmodal-header__text h3[data-v-4d03854e]{margin:0;font-size:15px;font-weight:700;color:#1a202c;line-height:1.2}.vmodal-header__text p[data-v-4d03854e]{margin:2px 0 0;font-size:11.5px;color:#718096}.vmodal-form[data-v-4d03854e]{padding-top:8px}.vmodal-cols[data-v-4d03854e]{display:grid;grid-template-columns:1.05fr .95fr;gap:12px;align-items:stretch}.vmodal-col[data-v-4d03854e]{display:flex;flex-direction:column;gap:10px}.vmodal-card[data-v-4d03854e]{background:#fafafa;border:1px solid #f0f0f0;border-radius:8px;padding:10px 14px}.vmodal-card__head[data-v-4d03854e]{font-size:12.5px;font-weight:700;color:#2d3748;margin-bottom:8px;padding-bottom:4px;border-bottom:1px dashed #e2e8f0;position:relative;padding-right:10px}.vmodal-card__head[data-v-4d03854e]:before{content:"";position:absolute;right:0;top:50%;transform:translateY(-50%);width:3px;height:12px;background:#1c2d56;border-radius:2px}.vmodal-grid[data-v-4d03854e]{display:grid;gap:8px}.vmodal-grid--2[data-v-4d03854e]{grid-template-columns:repeat(2,minmax(0,1fr))}.vmodal-item[data-v-4d03854e]{margin-bottom:6px}.vmodal-item[data-v-4d03854e]:last-child{margin-bottom:0}.vmodal-item[data-v-4d03854e] .ant-form-item-label{padding-bottom:2px!important}.vmodal-item[data-v-4d03854e] .ant-form-item-label>label{font-size:11.5px;font-weight:600;color:#4a5568;height:auto}.vmodal-switches[data-v-4d03854e]{display:flex;gap:10px;margin-top:6px;padding-top:6px;border-top:1px dashed #e2e8f0}.vmodal-switch-box[data-v-4d03854e]{flex:1;display:flex;align-items:center;justify-content:space-between;padding:6px 10px;background:#fff;border:1px solid #e2e8f0;border-radius:6px;cursor:pointer;margin:0}.vmodal-switch-box[data-v-4d03854e]:hover{border-color:#cbd5e0}.vmodal-switch-label[data-v-4d03854e]{font-size:11.5px;font-weight:600;color:#2d3748}.color-opt[data-v-4d03854e]{display:flex;align-items:center;gap:6px}.color-opt__dot[data-v-4d03854e]{width:10px;height:10px;border-radius:50%;border:1px solid rgba(0,0,0,.2);display:inline-block}.color-opt__dot--0[data-v-4d03854e]{background:#fdfdfd}.color-opt__dot--1[data-v-4d03854e]{background:gold}.color-opt__dot--2[data-v-4d03854e]{background:#795548}.color-opt__dot--3[data-v-4d03854e]{background:#b76e79}.vmodal-picker[data-v-4d03854e]{display:flex;flex-wrap:wrap;gap:8px;max-height:125px;overflow-y:auto;padding:2px}.vmodal-picker__item[data-v-4d03854e]{position:relative;width:54px;height:54px;padding:2px;border:1.5px solid #e2e8f0;border-radius:6px;background:#fff;cursor:pointer;overflow:hidden;transition:all .15s ease;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-size:10px;color:#a0aec0}.vmodal-picker__item[data-v-4d03854e]:hover{border-color:#1c2d56}.vmodal-picker__item img[data-v-4d03854e]{width:100%;height:100%;object-fit:cover;border-radius:4px;display:block}.vmodal-picker__item.is-active[data-v-4d03854e]{border-color:#1c2d56;box-shadow:0 0 0 2px #1c2d5633}.vmodal-picker__check[data-v-4d03854e]{position:absolute;top:2px;right:2px;width:14px;height:14px;background:#1c2d56;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:8px}.vmodal-picker-empty[data-v-4d03854e]{font-size:11px;color:#8c8c8c;padding:8px;text-align:center;background:#fff;border:1px dashed #e2e8f0;border-radius:6px}.vmodal-footer[data-v-4d03854e]{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding-top:10px;margin-top:8px;border-top:1px solid #edf2f7}.vmodal-footer__cancel[data-v-4d03854e]{border-radius:6px;min-width:80px}.vmodal-footer__submit[data-v-4d03854e]{border-radius:6px;background:#1c2d56;border-color:#1c2d56;min-width:110px;font-weight:600}.vmodal-footer__submit[data-v-4d03854e]:hover{background:#2b427a!important;border-color:#2b427a!important}@media (max-width: 1199px){.product-grid-layout[data-v-4d03854e]{grid-template-columns:1fr}.layout-sidebar[data-v-4d03854e]{order:2}}@media (max-width: 575px){.page-top-header[data-v-4d03854e]{flex-direction:column;align-items:flex-start}.header-actions[data-v-4d03854e]{width:100%;flex-direction:column}.back-btn[data-v-4d03854e],.header-save-btn[data-v-4d03854e]{width:100%;justify-content:center}.form-grid-2[data-v-4d03854e],.form-grid-3[data-v-4d03854e]{grid-template-columns:1fr;gap:12px}.form-section[data-v-4d03854e]{padding:16px 14px}.form-actions-bar[data-v-4d03854e]{flex-direction:column}.submit-btn[data-v-4d03854e],.cancel-btn[data-v-4d03854e]{width:100%}} diff --git a/apps/admin-panel/dist/assets/AddProduct-BiMN_lga.css b/apps/admin-panel/dist/assets/AddProduct-BiMN_lga.css new file mode 100644 index 0000000..50ded70 --- /dev/null +++ b/apps/admin-panel/dist/assets/AddProduct-BiMN_lga.css @@ -0,0 +1 @@ +.gallery-upload[data-v-79ab0f30]{display:flex;flex-direction:column;gap:12px}.gallery-upload__zone[data-v-79ab0f30]{padding:18px 12px}.gallery-upload__icon[data-v-79ab0f30]{font-size:16px;color:#1c2d56;opacity:.75}.gallery-upload__title[data-v-79ab0f30]{margin:8px 0 2px;font-weight:500;font-size:14px;color:#101828}.gallery-upload__hint[data-v-79ab0f30]{margin:0;font-size:12px;color:#8a94a6}.gallery-upload__grid[data-v-79ab0f30]{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:10px}.tile[data-v-79ab0f30]{position:relative;aspect-ratio:1;border-radius:12px;overflow:hidden;border:1px solid #eef0f5;background:#f5f7fb}.tile img[data-v-79ab0f30]{width:100%;height:100%;object-fit:cover;display:block}.tile.is-uploading img[data-v-79ab0f30]{filter:brightness(.6)}.tile__progress[data-v-79ab0f30]{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center}.tile__overlay[data-v-79ab0f30]{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;gap:8px;background:#10182880;opacity:0;transition:opacity .2s ease}.tile:hover .tile__overlay[data-v-79ab0f30],.tile:focus-within .tile__overlay[data-v-79ab0f30]{opacity:1}.tile__btn[data-v-79ab0f30]{width:32px;height:32px;display:grid;place-items:center;border:none;border-radius:9px;background:#ffffffeb;color:#1c2d56;font-size:15px;cursor:pointer;transition:transform .15s ease}.tile__btn[data-v-79ab0f30]:hover{transform:scale(1.08)}.tile__btn--danger[data-v-79ab0f30]{color:#ea5455}@media (hover: none){.tile__overlay[data-v-79ab0f30]{opacity:1;align-items:flex-end;justify-content:flex-end;padding:6px;gap:4px;background:linear-gradient(to top,rgba(16,24,40,.55),transparent 55%)}.tile__btn[data-v-79ab0f30]{width:28px;height:28px;font-size:13px}}.gallery-upload__meta[data-v-79ab0f30]{display:flex;align-items:center;gap:14px;font-size:12px;color:#8a94a6}.gallery-upload__pending[data-v-79ab0f30]{display:inline-flex;align-items:center;gap:6px;color:#1c2d56}.product-form-page[data-v-4dcde320]{--c-primary: #1c2d56;--ink: #101828;--muted: #8a94a6;--line: #eef0f5;min-width:0}.pf-table__title[data-v-4dcde320]{font-weight:500;color:var(--ink)}.pf-table__ops[data-v-4dcde320]{display:flex;gap:2px}.muted[data-v-4dcde320]{color:var(--muted)}.variant-thumb[data-v-4dcde320]{width:44px;height:44px;object-fit:cover;border-radius:10px;display:inline-block;border:1px solid var(--line)}.variant-thumb--empty[data-v-4dcde320]{display:inline-flex;align-items:center;justify-content:center;border:1px dashed #d9dde5;background:#fafbfd;color:#b4bccb;font-size:16px}.variant-form[data-v-4dcde320]{display:grid;grid-template-columns:120px minmax(0,1fr);gap:20px;align-items:start}.variant-form__media[data-v-4dcde320]{display:flex;flex-direction:column;align-items:flex-start;gap:4px}.variant-form__gallery-btn[data-v-4dcde320]{padding-inline:0}.variant-form__hint[data-v-4dcde320]{margin:12px 0 0;font-size:12px;color:var(--muted)}.variant-gallery[data-v-4dcde320]{display:grid;grid-template-columns:repeat(4,64px);gap:8px;max-height:232px;overflow-y:auto}.variant-gallery__item[data-v-4dcde320]{width:64px;height:64px;padding:2px;border:2px solid #e3e7ef;border-radius:10px;background:#fff;cursor:pointer;overflow:hidden}.variant-gallery__item[data-v-4dcde320]:hover{border-color:#b4bccb}.variant-gallery__item.is-on[data-v-4dcde320]{border-color:#1c2d56}.variant-gallery__item img[data-v-4dcde320]{width:100%;height:100%;object-fit:cover;border-radius:7px;display:block}@media (max-width: 575px){.variant-form[data-v-4dcde320]{grid-template-columns:minmax(0,1fr);gap:12px}}.product-editor-page[data-v-4dcde320]{display:flex;flex-direction:column;gap:16px;min-width:0}.page-top-header[data-v-4dcde320]{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:2px 4px}.page-title-wrap[data-v-4dcde320]{display:flex;flex-direction:column;gap:4px}.title-with-badge[data-v-4dcde320]{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.page-title[data-v-4dcde320]{margin:0;font-size:20px;font-weight:600;color:#1c2d56;line-height:1.3}.product-name-badge[data-v-4dcde320]{margin:0;font-size:13px;font-weight:500;border-radius:6px}.accounting-badge[data-v-4dcde320]{margin:0;font-size:12px;border-radius:6px}.page-subtitle[data-v-4dcde320]{margin:0;font-size:13px;color:#8c8c8c}.header-actions[data-v-4dcde320]{display:flex;align-items:center;gap:10px}.back-btn[data-v-4dcde320]{display:inline-flex;align-items:center;gap:6px;height:38px;border-radius:8px;color:#595959;font-size:13px}.header-save-btn[data-v-4dcde320]{background:#1c2d56;border-color:#1c2d56;height:38px;padding:0 18px;border-radius:8px;font-size:13px;font-weight:600}.header-save-btn[data-v-4dcde320]:hover{background:#2b427a!important;border-color:#2b427a!important}.product-grid-layout[data-v-4dcde320]{display:grid;grid-template-columns:1fr 340px;gap:20px;align-items:start}.layout-main[data-v-4dcde320],.layout-sidebar[data-v-4dcde320]{display:flex;flex-direction:column;gap:20px;min-width:0}.form-section[data-v-4dcde320]{background:#fff;border:1px solid #edf0f5;border-radius:12px;padding:20px 22px 24px;box-shadow:0 1px 2px #1c2d5605}.form-section-head[data-v-4dcde320]{display:flex;align-items:center;gap:12px;padding-bottom:14px;margin-bottom:20px;border-bottom:1px solid #f0f2f5}.form-section-head.has-action[data-v-4dcde320]{justify-content:space-between}.head-info[data-v-4dcde320]{display:flex;align-items:center;gap:12px}.section-icon-badge[data-v-4dcde320]{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:10px;background:#1c2d560d;color:#1c2d56;font-size:18px;flex-shrink:0}.section-title-wrap[data-v-4dcde320]{display:flex;flex-direction:column;gap:2px}.section-title[data-v-4dcde320]{margin:0;font-size:15px;font-weight:600;color:#1c2d56;line-height:1.3}.section-subtitle[data-v-4dcde320]{margin:0;font-size:12px;color:#8c8c8c;line-height:1.4}.form-grid-2[data-v-4dcde320]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 20px}.full-width-item[data-v-4dcde320]{grid-column:1 / -1}.form-grid-2[data-v-4dcde320] .ant-form-item,.sidebar-section[data-v-4dcde320] .ant-form-item{margin-bottom:0}.sidebar-section[data-v-4dcde320]{padding:18px}.sidebar-item[data-v-4dcde320]{margin-bottom:16px}.switch-row[data-v-4dcde320]{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-radius:8px;background:#fafbfc;border:1px solid #f0f2f5}.switch-info[data-v-4dcde320]{display:flex;flex-direction:column;gap:2px}.switch-title[data-v-4dcde320]{font-size:13px;font-weight:600;color:#262626}.switch-subtitle[data-v-4dcde320]{font-size:11px;color:#8c8c8c}.featured-images-grid[data-v-4dcde320]{display:grid;grid-template-columns:1fr 1fr;gap:12px}.featured-upload-card[data-v-4dcde320]{display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px;background:#fafbfc;border:1px dashed #d9d9d9;border-radius:8px;transition:all .2s ease}.featured-upload-card[data-v-4dcde320]:hover{border-color:#1c2d56;background:#fff}.featured-label[data-v-4dcde320]{font-size:12px;font-weight:500;color:#595959}.gallery-tabs[data-v-4dcde320]{margin-bottom:14px}.gallery-segmented[data-v-4dcde320]{width:100%;display:flex}.gallery-segmented[data-v-4dcde320] .ant-radio-button-wrapper{flex:1;text-align:center;font-size:12px}.gallery-grid[data-v-4dcde320]{display:flex;flex-wrap:wrap;gap:10px}.gallery-item[data-v-4dcde320]{flex-shrink:0}.add-variant-btn[data-v-4dcde320]{background:#1c2d56;border-color:#1c2d56;border-radius:6px;font-size:13px}.add-variant-btn[data-v-4dcde320]:hover{background:#2b427a!important;border-color:#2b427a!important}.table-container[data-v-4dcde320]{border:1px solid #edf0f5;border-radius:8px;overflow:hidden}.variants-table[data-v-4dcde320] .ant-table-thead>tr>th{background:#fafbfc;font-size:12px;font-weight:600;color:#595959}.variant-thumb[data-v-4dcde320]{width:42px;height:42px;object-fit:cover;border-radius:6px;border:1px solid #e8e8e8;display:inline-block}.variant-thumb--empty[data-v-4dcde320]{display:inline-flex;align-items:center;justify-content:center;background:#fafafa;color:#bfbfbf;border:1px dashed #d9d9d9;font-size:14px}.variant-title-cell[data-v-4dcde320]{font-weight:600;color:#262626;font-size:13px}.weight-cell[data-v-4dcde320]{color:#1c2d56;font-weight:500;font-size:13px}.wage-cell[data-v-4dcde320]{color:#28c76f;font-weight:600;font-size:13px}.qty-badge[data-v-4dcde320]{display:inline-block;padding:2px 8px;background:#f5f5f5;border-radius:4px;font-size:12px;color:#595959}.status-tag[data-v-4dcde320]{margin:0;border-radius:4px;font-size:11px}.table-actions[data-v-4dcde320]{display:inline-flex;align-items:center;gap:4px}.action-btn[data-v-4dcde320]{border-radius:4px}.edit-btn[data-v-4dcde320]{color:#1c2d56}.edit-btn[data-v-4dcde320]:hover{background:#1c2d5614}.delete-btn[data-v-4dcde320]{color:#ea5455}.delete-btn[data-v-4dcde320]:hover{background:#ea545514}.variants-empty[data-v-4dcde320]{padding:24px 16px;text-align:center}.empty-title[data-v-4dcde320]{margin:0 0 4px;font-size:14px;font-weight:600;color:#262626}.empty-desc[data-v-4dcde320]{margin:0 0 16px;font-size:12px;color:#8c8c8c}.empty-add-btn[data-v-4dcde320]{border-radius:6px;color:#1c2d56;border-color:#1c2d56}.form-actions-bar[data-v-4dcde320]{display:flex;align-items:center;gap:12px;margin-top:20px;padding-top:20px;border-top:1px solid #edf0f5}.submit-btn[data-v-4dcde320]{background:#1c2d56;border-color:#1c2d56;height:42px;padding:0 24px;font-size:14px;font-weight:600;border-radius:8px}.submit-btn[data-v-4dcde320]:hover{background:#2b427a!important;border-color:#2b427a!important}.cancel-btn[data-v-4dcde320]{height:42px;padding:0 20px;font-size:14px;border-radius:8px;color:#595959}.vmodal-header[data-v-4dcde320]{display:flex;align-items:center;gap:12px;padding:0 0 10px;border-bottom:1px solid #edf2f7}.vmodal-header__icon[data-v-4dcde320]{width:36px;height:36px;border-radius:8px;background:#1c2d5614;color:#1c2d56;display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0}.vmodal-header__text h3[data-v-4dcde320]{margin:0;font-size:15px;font-weight:700;color:#1a202c;line-height:1.2}.vmodal-header__text p[data-v-4dcde320]{margin:2px 0 0;font-size:11.5px;color:#718096}.vmodal-form[data-v-4dcde320]{padding-top:8px}.vmodal-cols[data-v-4dcde320]{display:grid;grid-template-columns:1.05fr .95fr;gap:12px;align-items:stretch}.vmodal-col[data-v-4dcde320]{display:flex;flex-direction:column;gap:10px}.vmodal-card[data-v-4dcde320]{background:#fafafa;border:1px solid #f0f0f0;border-radius:8px;padding:10px 14px}.vmodal-card__head[data-v-4dcde320]{font-size:12.5px;font-weight:700;color:#2d3748;margin-bottom:8px;padding-bottom:4px;border-bottom:1px dashed #e2e8f0;position:relative;padding-right:10px}.vmodal-card__head[data-v-4dcde320]:before{content:"";position:absolute;right:0;top:50%;transform:translateY(-50%);width:3px;height:12px;background:#1c2d56;border-radius:2px}.vmodal-grid[data-v-4dcde320]{display:grid;gap:8px}.vmodal-grid--2[data-v-4dcde320]{grid-template-columns:repeat(2,minmax(0,1fr))}.vmodal-item[data-v-4dcde320]{margin-bottom:6px}.vmodal-item[data-v-4dcde320]:last-child{margin-bottom:0}.vmodal-item[data-v-4dcde320] .ant-form-item-label{padding-bottom:2px!important}.vmodal-item[data-v-4dcde320] .ant-form-item-label>label{font-size:11.5px;font-weight:600;color:#4a5568;height:auto}.vmodal-switches[data-v-4dcde320]{display:flex;gap:10px;margin-top:6px;padding-top:6px;border-top:1px dashed #e2e8f0}.vmodal-switch-box[data-v-4dcde320]{flex:1;display:flex;align-items:center;justify-content:space-between;padding:6px 10px;background:#fff;border:1px solid #e2e8f0;border-radius:6px;cursor:pointer;margin:0}.vmodal-switch-box[data-v-4dcde320]:hover{border-color:#cbd5e0}.vmodal-switch-label[data-v-4dcde320]{font-size:11.5px;font-weight:600;color:#2d3748}.color-opt[data-v-4dcde320]{display:flex;align-items:center;gap:6px}.color-opt__dot[data-v-4dcde320]{width:10px;height:10px;border-radius:50%;border:1px solid rgba(0,0,0,.2);display:inline-block}.color-opt__dot--0[data-v-4dcde320]{background:#fdfdfd}.color-opt__dot--1[data-v-4dcde320]{background:gold}.color-opt__dot--2[data-v-4dcde320]{background:#795548}.color-opt__dot--3[data-v-4dcde320]{background:#b76e79}.vmodal-picker[data-v-4dcde320]{display:flex;flex-wrap:wrap;gap:8px;max-height:125px;overflow-y:auto;padding:2px}.vmodal-picker__item[data-v-4dcde320]{position:relative;width:54px;height:54px;padding:2px;border:1.5px solid #e2e8f0;border-radius:6px;background:#fff;cursor:pointer;overflow:hidden;transition:all .15s ease;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-size:10px;color:#a0aec0}.vmodal-picker__item[data-v-4dcde320]:hover{border-color:#1c2d56}.vmodal-picker__item img[data-v-4dcde320]{width:100%;height:100%;object-fit:cover;border-radius:4px;display:block}.vmodal-picker__item.is-active[data-v-4dcde320]{border-color:#1c2d56;box-shadow:0 0 0 2px #1c2d5633}.vmodal-picker__check[data-v-4dcde320]{position:absolute;top:2px;right:2px;width:14px;height:14px;background:#1c2d56;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:8px}.vmodal-picker-empty[data-v-4dcde320]{font-size:11px;color:#8c8c8c;padding:8px;text-align:center;background:#fff;border:1px dashed #e2e8f0;border-radius:6px}.vmodal-footer[data-v-4dcde320]{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding-top:10px;margin-top:8px;border-top:1px solid #edf2f7}.vmodal-footer__cancel[data-v-4dcde320]{border-radius:6px;min-width:80px}.vmodal-footer__submit[data-v-4dcde320]{border-radius:6px;background:#1c2d56;border-color:#1c2d56;min-width:110px;font-weight:600}.vmodal-footer__submit[data-v-4dcde320]:hover{background:#2b427a!important;border-color:#2b427a!important}@media (max-width: 1199px){.product-grid-layout[data-v-4dcde320]{grid-template-columns:1fr}.layout-sidebar[data-v-4dcde320]{order:2}}@media (max-width: 575px){.page-top-header[data-v-4dcde320]{flex-direction:column;align-items:flex-start}.header-actions[data-v-4dcde320]{width:100%;flex-direction:column}.back-btn[data-v-4dcde320],.header-save-btn[data-v-4dcde320]{width:100%;justify-content:center}.form-grid-2[data-v-4dcde320],.form-grid-3[data-v-4dcde320]{grid-template-columns:1fr;gap:12px}.form-section[data-v-4dcde320]{padding:16px 14px}.form-actions-bar[data-v-4dcde320]{flex-direction:column}.submit-btn[data-v-4dcde320],.cancel-btn[data-v-4dcde320]{width:100%}} diff --git a/apps/admin-panel/dist/assets/AddProduct-CvfafZ03.js b/apps/admin-panel/dist/assets/AddProduct-DUZcRoso.js similarity index 98% rename from apps/admin-panel/dist/assets/AddProduct-CvfafZ03.js rename to apps/admin-panel/dist/assets/AddProduct-DUZcRoso.js index ee3ef34..27a323e 100644 --- a/apps/admin-panel/dist/assets/AddProduct-CvfafZ03.js +++ b/apps/admin-panel/dist/assets/AddProduct-DUZcRoso.js @@ -1 +1 @@ -import{c as a,I as ae,d as $e,n as je,O as Ae,o,b as p,w as s,p as l,h as v,t as $,F as A,e as J,i as P,Q as Me,f as w,m as V,s as me,J as Z,U as Re,r as x,q as H,R as xe,G as Ue,y as B,_ as Ce,u as Ee,x as Ne,k as qe,z as oe,A as Be,a as S,H as De,S as He,P as fe,T as Fe,E as Te,V as Ge,W as ie,l as Je}from"./index-CJij4X3l.js";import{_ as ge}from"./ImageUploadInput.vue_vue_type_script_setup_true_lang-vRgyyG7o.js";import{A as ye}from"./AppstoreOutlined-DvD8zs_r.js";var We={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M518.3 459a8 8 0 00-12.6 0l-112 141.7a7.98 7.98 0 006.3 12.9h73.9V856c0 4.4 3.6 8 8 8h60c4.4 0 8-3.6 8-8V613.7H624c6.7 0 10.4-7.7 6.3-12.9L518.3 459z"}},{tag:"path",attrs:{d:"M811.4 366.7C765.6 245.9 648.9 160 512.2 160S258.8 245.8 213 366.6C127.3 389.1 64 467.2 64 560c0 110.5 89.5 200 199.9 200H304c4.4 0 8-3.6 8-8v-60c0-4.4-3.6-8-8-8h-40.1c-33.7 0-65.4-13.4-89-37.7-23.5-24.2-36-56.8-34.9-90.6.9-26.4 9.9-51.2 26.2-72.1 16.7-21.3 40.1-36.8 66.1-43.7l37.9-9.9 13.9-36.6c8.6-22.8 20.6-44.1 35.7-63.4a245.6 245.6 0 0152.4-49.9c41.1-28.9 89.5-44.2 140-44.2s98.9 15.3 140 44.2c19.9 14 37.5 30.8 52.4 49.9 15.1 19.3 27.1 40.7 35.7 63.4l13.8 36.5 37.8 10C846.1 454.5 884 503.8 884 560c0 33.1-12.9 64.3-36.3 87.7a123.07 123.07 0 01-87.6 36.3H720c-4.4 0-8 3.6-8 8v60c0 4.4 3.6 8 8 8h40.1C870.5 760 960 670.5 960 560c0-92.7-63.1-170.7-148.6-193.3z"}}]},name:"cloud-upload",theme:"outlined"};function be(u){for(var n=1;n[]},purpose:{default:void 0},placeholder:{default:"افزودن تصاویر گالری"}},emits:["update:modelValue"],setup(u,{emit:n}){const r=u,_=n,c=V([]),M=V(!1),R=V(""),W=()=>c.value.filter(d=>d.status==="done"&&d.url).map(d=>d.url),F=me(()=>c.value.filter(d=>d.status==="done").length),Q=me(()=>c.value.filter(d=>d.status==="uploading").length);function X(){_("update:modelValue",W())}je(()=>r.modelValue,d=>{if(JSON.stringify(W())===JSON.stringify(d??[]))return;const i=c.value.filter(f=>f.status==="uploading");c.value=[...(d??[]).map(f=>({uid:f,status:"done",url:f,percent:100})),...i]},{immediate:!0});function ee(d){return d.type.startsWith("image/")?!0:(Z.error(`«${d.name}» تصویر نیست`),Re.LIST_IGNORE)}let m=0;const E=[];function T(d){return new Promise((i,f)=>{const U=()=>{m++,d().then(i,f).finally(()=>{var L;m--,(L=E.shift())==null||L()})};mc.value.find(i=>i.uid===d);function Y({file:d}){const i=d.uid??`${Date.now()}-${Math.random().toString(36).slice(2,8)}`;c.value.push({uid:i,status:"uploading",preview:URL.createObjectURL(d),percent:0}),T(async()=>{if(!q(i))return null;const f=new FormData;f.append("file",d),r.purpose&&f.append("purpose",r.purpose);const{data:U}=await B.post("file/create",f,{onUploadProgress:L=>{const C=q(i);C&&L.total&&(C.percent=Math.round(L.loaded/L.total*100))}});return U}).then(f=>{const U=q(i);!U||!(f!=null&&f.url)||(U.preview&&URL.revokeObjectURL(U.preview),Object.assign(U,{status:"done",url:f.url,preview:void 0,percent:100}),X())}).catch(f=>{var L,C;const U=((C=(L=f==null?void 0:f.response)==null?void 0:L.data)==null?void 0:C.message)??`بارگذاری «${d.name}» ناموفق بود`;Z.error(U),G(i)})}function G(d){const i=c.value.findIndex(U=>U.uid===d);if(i===-1)return;const[f]=c.value.splice(i,1);f.preview&&URL.revokeObjectURL(f.preview)}function N(d){G(d),X()}function D(d){R.value=d.url??d.preview??"",M.value=!0}return Ae(()=>{c.value.forEach(d=>d.preview&&URL.revokeObjectURL(d.preview))}),(d,i)=>{const f=x("a-upload-dragger"),U=x("a-progress"),L=x("a-modal");return o(),p("div",lt,[a(f,{accept:"image/*",multiple:"","show-upload-list":!1,"custom-request":Y,"before-upload":ee},{default:s(()=>[l("div",at,[a(v(ne),{class:"gallery-upload__icon"}),l("p",st,$(u.placeholder),1),i[1]||(i[1]=l("p",{class:"gallery-upload__hint"}," تصاویر را اینجا بکشید و رها کنید یا کلیک کنید — انتخاب چند تصویر به‌صورت همزمان امکان‌پذیر است ",-1))])]),_:1}),c.value.length?(o(),p("div",ot,[(o(!0),p(A,null,J(c.value,C=>(o(),p("div",{key:C.uid,class:H(["tile",{"is-uploading":C.status==="uploading"}])},[l("img",{src:C.url??C.preview,alt:""},null,8,it),C.status==="uploading"?(o(),p("div",nt,[a(U,{type:"circle",percent:C.percent,size:40,"stroke-width":8,"stroke-color":"#fff","trail-color":"rgba(255,255,255,.3)","show-info":!1},null,8,["percent"])])):(o(),p("div",rt,[l("button",{type:"button",class:"tile__btn",title:"نمایش",onClick:te=>D(C)},[a(v(xe))],8,dt),l("button",{type:"button",class:"tile__btn tile__btn--danger",title:"حذف",onClick:te=>N(C.uid)},[a(v(Ue))],8,ut)]))],2))),128))])):P("",!0),c.value.length?(o(),p("div",ct,[l("span",null,$(F.value)+" تصویر",1),Q.value?(o(),p("span",pt,[a(v(Me)),w(" در حال بارگذاری "+$(Q.value)+" تصویر… ",1)])):P("",!0)])):P("",!0),a(L,{open:M.value,footer:null,onCancel:i[0]||(i[0]=C=>M.value=!1)},{default:s(()=>[l("img",{src:R.value,style:{width:"100%"},alt:""},null,8,_t)]),_:1},8,["open"])])}}}),Oe=Ce(mt,[["__scopeId","data-v-79ab0f30"]]),ft={id:"page-user-view",class:"pf-page product-form-page"},gt={class:"pf-head"},yt={class:"pf-head__text"},bt={class:"pf-layout"},ht={class:"pf-main"},kt={class:"pf-section"},wt={class:"pf-section__head"},Ot={class:"pf-section__icon"},$t={key:0,class:"pf-section"},xt={class:"pf-section__head"},Ut={class:"pf-section__icon"},Ct={key:1,class:"table-scroll"},It=["src"],St={key:1,class:"variant-thumb variant-thumb--empty"},Pt={key:1,class:"pf-table__title"},Vt={key:0},Lt={key:1,class:"muted"},zt={key:0},jt={key:1,class:"muted"},At={key:0},Mt={key:1,class:"muted"},Rt={key:0},Et={key:1,class:"muted"},Nt={key:6,class:"pf-table__ops"},qt={class:"pf-section"},Bt={class:"pf-section__head"},Dt={class:"pf-section__icon"},Ht={class:"pf-side"},Ft={class:"pf-section"},Tt={class:"pf-section__head"},Gt={class:"pf-section__icon"},Jt={class:"pf-section"},Wt={class:"pf-section__head"},Qt={class:"pf-section__icon"},Xt={class:"pf-section"},Yt={class:"pf-section__head"},Zt={class:"pf-section__icon"},Kt={class:"pf-uploads"},el={class:"pf-actions"},tl={class:"pf-actions__hint"},ll={class:"vmodal-header"},al={class:"vmodal-header__icon"},sl={class:"vmodal-header__text"},ol={class:"vmodal-cols"},il={class:"vmodal-col"},nl={class:"vmodal-card"},rl={class:"vmodal-grid vmodal-grid--2"},dl={class:"vmodal-grid vmodal-grid--2"},ul={class:"color-opt"},cl={class:"vmodal-switches"},pl={class:"vmodal-switch-box"},_l={class:"vmodal-switch-box"},vl={class:"vmodal-card"},ml={class:"vmodal-grid vmodal-grid--2"},fl={class:"vmodal-col"},gl={class:"vmodal-card"},yl={key:0,class:"vmodal-picker"},bl=["onClick"],hl=["src"],kl={key:0,class:"vmodal-picker__check"},wl={key:1,class:"vmodal-picker-empty"},Ol={class:"vmodal-card"},$l={class:"vmodal-footer"},xl=$e({__name:"AddProduct",setup(u){const n=qe(),r=Je(),_=Ee(),c=h=>!!_.hasPermission(h),M=n.params.id,R=V(!1),W=V(void 0),F=V(!1),Q=V([]),X=V([]),ee=V([]),m=oe({title:"",product_code:"",show_type:3,category_id:void 0,brand_id:void 0,ciny_ids:[],body_html:"",is_active:!0,indicator_id:null,mobile_pic:null}),E=oe({}),T=V([]),q=V([]),Y=V([]),G=V([]),N=V([]),D=V(!1),d=V(null),i=oe({__key:"",title:"",grams:void 0,percentage_pay:void 0,qty:0,is_active:!0,is_pre_order:!1,color:void 0,color_str:void 0,rial_pay:void 0,details:"",description:"",image_id:null,image_url:null});function f(h){i.image_id=h?h.id:null,i.image_url=h?h.url:null}const U=[{title:"تصویر",dataIndex:"image",width:68,align:"center"},{title:"عنوان تنوع",dataIndex:"title"},{title:"وزن",dataIndex:"grams",align:"right"},{title:"رنگ",dataIndex:"color",align:"center"},{title:"اجرت",dataIndex:"percentage_pay",align:"right"},{title:"اجرت ریالی",dataIndex:"rial_pay",align:"right"},{title:"موجودی",dataIndex:"qty",align:"center"},{title:"وضعیت",dataIndex:"is_active",align:"center"},{title:"پیش‌سفارش",dataIndex:"is_pre_order",align:"center"},{title:"عملیات",dataIndex:"op",width:84,align:"center"}];function L(h,e){h&&e!==void 0?(d.value=e,Object.assign(i,h)):(d.value=null,Object.assign(i,{__key:`v-${Date.now()}-${Math.random().toString(36).slice(2,7)}`,id:void 0,title:"",grams:void 0,percentage_pay:W.value,qty:0,is_active:!0,is_pre_order:!1,color:void 0,color_str:void 0,rial_pay:void 0,details:"",description:"",image_id:null,image_url:null})),D.value=!0}function C(){if(!i.title){Z.error("عنوان تنوع الزامی است");return}const h=G.value.find(k=>k.id===i.color);i.color_str=h?h.title:null;const e={...i};d.value===null?N.value.push(e):N.value[d.value]=e,D.value=!1}function te(){window.history.length>1?r.back():r.push("/apps/product/list")}function Ie(){return Object.keys(E).forEach(h=>delete E[h]),m.title||(E.title="لطفا مقدار را وارد کنید"),Object.keys(E).length===0}async function ue(){var h,e;if(Ie())try{F.value=!0;const k={...m,cats:m.category_id?[m.category_id]:[],images:T.value,images_mobile:q.value,variants:N.value.map(O=>({id:O.id,title:O.title,grams:O.grams,percentage_pay:O.percentage_pay,qty:O.qty,is_active:O.is_active,is_pre_order:O.is_pre_order,color:O.color??null,rial_pay:O.rial_pay??null,details:O.details||null,description:O.description||null,image_id:O.image_id??null}))};M?await B.put(`product/update/${M}`,k):await B.post("product/create",k),Z.info("اطلاعات با موفقیت به ثبت رسید."),r.push("/apps/product/list")}catch(k){Z.error(((e=(h=k==null?void 0:k.response)==null?void 0:h.data)==null?void 0:e.message)??"خطا در ثبت اطلاعات.")}finally{F.value=!1}}return Ne(async()=>{var h,e,k,O;try{const[g,y,b,z]=await Promise.all([B.get("brand"),B.post("category"),_.isSuperAdmin?B.get("admin/products/collections"):Promise.resolve({data:[]}),B.get("admin/products/colors").catch(()=>({data:[]}))]);Q.value=g.data,X.value=(y.data.rows??y.data).map(j=>({id:j.id,title:j.type_str?`${j.title} (${j.type_str}) `:j.title,type:j.type})),ee.value=b.data,G.value=z.data??[]}catch(g){console.log(g)}if(M)try{const{data:g}=await B.get(`product/show/${M}`);R.value=!!((h=g.accounting)!=null&&h.locked),W.value=((e=g.accounting)==null?void 0:e.sale_wage_percent)!=null?Number(g.accounting.sale_wage_percent):void 0,Object.assign(m,{title:g.title??"",product_code:g.product_code??"",show_type:g.show_type??3,category_id:((k=g.category)==null?void 0:k.id)??void 0,brand_id:((O=g.brand)==null?void 0:O.id)??void 0,ciny_ids:g.ciny_ids??[],body_html:g.body_html??"",is_active:g.is_active??!0,indicator_id:g.indicator_id??null,mobile_pic:g.mobile_pic??null}),T.value=g.images_gallery??[],q.value=g.images_mobile??[],Y.value=g.gallery??[],N.value=(g.variants_all??[]).map((y,b)=>{var z;return{__key:y.id??`v-${b}`,id:y.id,title:y.title,grams:Number(y.grams),percentage_pay:Number(y.percentage_pay),qty:y.qty,is_active:y.is_active,is_pre_order:y.is_pre_order,color:y.color!=null?Number(y.color):void 0,color_str:y.color_str??null,rial_pay:y.rial_pay!=null?Number(y.rial_pay):void 0,details:y.details??"",description:y.description??"",image_id:y.image_id??null,image_url:((z=y.image)==null?void 0:z.url)??null}})}catch(g){console.log(g)}}),(h,e)=>{const k=x("a-button"),O=x("a-tag"),g=x("a-alert"),y=x("a-input"),b=x("a-form-item"),z=x("a-select-option"),j=x("a-select"),ce=x("a-textarea"),Se=x("a-empty"),pe=x("a-tooltip"),Pe=x("a-table"),se=x("a-switch"),_e=x("a-form"),Ve=x("a-spin"),le=x("a-input-number"),Le=x("a-modal");return o(),p("div",ft,[a(Ve,{spinning:F.value},{default:s(()=>[l("header",gt,[a(k,{class:"pf-head__back",shape:"circle",onClick:te},{icon:s(()=>[a(v(Be))]),_:1}),l("div",yt,[l("h1",null,$(v(M)?"ویرایش محصول":"افزودن محصول"),1),e[27]||(e[27]=l("p",null,"اطلاعات، تنوع‌ها و تصاویر محصول را تکمیل کنید.",-1))]),v(M)?(o(),S(O,{key:0,color:m.is_active?"green":"default",class:"pf-head__status"},{default:s(()=>[w($(m.is_active?"فعال":"غیر فعال"),1)]),_:1},8,["color"])):P("",!0)]),a(_e,{layout:"vertical",class:"pf-form",onSubmit:De(ue,["prevent"])},{default:s(()=>[l("div",bt,[l("div",ht,[l("section",kt,[l("div",wt,[l("span",Ot,[a(v(He))]),e[28]||(e[28]=l("div",null,[l("h3",null,"اطلاعات پایه"),l("p",null,"نام، کد و توضیحات محصول")],-1))]),R.value?(o(),S(g,{key:0,class:"pf-alert",type:"info","show-icon":"",message:"این محصول به نرم‌افزار حسابداری متصل است؛ نام و کد محصول از آنجا خوانده می‌شود."})):P("",!0),a(b,{label:"نام محصول",required:"","validate-status":E.title?"error":"",help:E.title||(R.value?"از نرم‌افزار حسابداری — برای تغییر، آن را در حسابداری ویرایش کنید":void 0)},{default:s(()=>[a(y,{value:m.title,"onUpdate:value":e[0]||(e[0]=t=>m.title=t),placeholder:"مثلاً: گردنبند طلا",disabled:R.value},null,8,["value","disabled"])]),_:1},8,["validate-status","help"]),l("div",{class:H({"pf-grid-2":v(_).isSuperAdmin})},[a(b,{label:"کد محصول",class:H({"mb-0":!v(_).isSuperAdmin}),help:R.value?"از نرم‌افزار حسابداری":void 0},{default:s(()=>[a(y,{value:m.product_code,"onUpdate:value":e[1]||(e[1]=t=>m.product_code=t),disabled:R.value},null,8,["value","disabled"])]),_:1},8,["class","help"]),v(_).isSuperAdmin?(o(),S(b,{key:0,label:"نوع نمایش"},{default:s(()=>[a(j,{value:m.show_type,"onUpdate:value":e[2]||(e[2]=t=>m.show_type=t)},{default:s(()=>[a(z,{value:1},{default:s(()=>[...e[29]||(e[29]=[w("سایت",-1)])]),_:1}),a(z,{value:2},{default:s(()=>[...e[30]||(e[30]=[w("گوشی",-1)])]),_:1}),a(z,{value:3},{default:s(()=>[...e[31]||(e[31]=[w("سایت و گوشی",-1)])]),_:1})]),_:1},8,["value"])]),_:1})):P("",!0)],2),v(_).isSuperAdmin?(o(),S(b,{key:1,label:"شرح محصول (سایت)",class:"mb-0"},{default:s(()=>[a(ce,{value:m.body_html,"onUpdate:value":e[3]||(e[3]=t=>m.body_html=t),"auto-size":{minRows:5,maxRows:12},placeholder:"توضیحات محصول برای نمایش در سایت"},null,8,["value"])]),_:1})):P("",!0)]),c("product.list.variants")?(o(),p("section",$t,[l("div",xt,[l("span",Ut,[a(v(ye))]),e[33]||(e[33]=l("div",null,[l("h3",null,"تنوع ها"),l("p",null,"وزن، اجرت و موجودی هر مدل از محصول")],-1)),c("product.list.variants.add")?(o(),S(k,{key:0,type:"primary",class:"pf-section__action",onClick:e[4]||(e[4]=t=>L())},{icon:s(()=>[a(v(fe))]),default:s(()=>[e[32]||(e[32]=w(" افزودن تنوع ",-1))]),_:1})):P("",!0)]),N.value.length?(o(),p("div",Ct,[a(Pe,{class:"pf-table",columns:U,"data-source":N.value,pagination:!1,scroll:{x:"max-content"},size:"middle","row-key":"__key"},{bodyCell:s(({column:t,record:I,index:ve})=>[t.dataIndex==="image"?(o(),p(A,{key:0},[I.image_url?(o(),p("img",{key:0,src:I.image_url,class:"variant-thumb",alt:""},null,8,It)):(o(),p("span",St,[a(v(K))]))],64)):t.dataIndex==="title"?(o(),p("span",Pt,$(I.title),1)):t.dataIndex==="grams"?(o(),p(A,{key:2},[I.grams!=null?(o(),p("span",Vt,[w($(I.grams)+" ",1),e[35]||(e[35]=l("small",{class:"muted"},"گرم",-1))])):(o(),p("span",Lt,"—"))],64)):t.dataIndex==="color"?(o(),p(A,{key:3},[I.color_str?(o(),p("span",zt,$(I.color_str),1)):(o(),p("span",jt,"—"))],64)):t.dataIndex==="percentage_pay"?(o(),p(A,{key:4},[I.percentage_pay!=null?(o(),p("span",At,[w($(I.percentage_pay),1),e[36]||(e[36]=l("small",{class:"muted"},"٪",-1))])):(o(),p("span",Mt,"—"))],64)):t.dataIndex==="rial_pay"?(o(),p(A,{key:5},[I.rial_pay!=null?(o(),p("span",Rt,[w($(Number(I.rial_pay).toLocaleString("fa-IR"))+" ",1),e[37]||(e[37]=l("small",{class:"muted"},"ریال",-1))])):(o(),p("span",Et,"—"))],64)):t.dataIndex==="op"?(o(),p("div",Nt,[c("product.list.variants.edit")?(o(),S(pe,{key:0,title:"ویرایش"},{default:s(()=>[a(k,{type:"text",size:"small",onClick:ze=>L(I,ve)},{icon:s(()=>[a(v(Te),{class:"text-primary"})]),_:1},8,["onClick"])]),_:2},1024)):P("",!0),c("product.list.variants.remove")?(o(),S(pe,{key:1,title:"حذف"},{default:s(()=>[a(k,{type:"text",size:"small",danger:"",onClick:ze=>N.value.splice(ve,1)},{icon:s(()=>[a(v(Ue))]),_:1},8,["onClick"])]),_:2},1024)):P("",!0)])):t.dataIndex==="is_active"?(o(),S(O,{key:7,color:I.is_active?"green":"red"},{default:s(()=>[w($(I.is_active?"فعال":"غیر فعال"),1)]),_:2},1032,["color"])):t.dataIndex==="is_pre_order"?(o(),S(O,{key:8,color:I.is_pre_order?"blue":""},{default:s(()=>[w($(I.is_pre_order?"بله":"خیر"),1)]),_:2},1032,["color"])):P("",!0)]),_:1},8,["data-source"])])):(o(),S(Se,{key:0,image:v(Fe).PRESENTED_IMAGE_SIMPLE,description:"هنوز تنوعی برای این محصول ثبت نشده است."},{default:s(()=>[c("product.list.variants.add")?(o(),S(k,{key:0,onClick:e[5]||(e[5]=t=>L())},{icon:s(()=>[a(v(fe))]),default:s(()=>[e[34]||(e[34]=w(" افزودن اولین تنوع ",-1))]),_:1})):P("",!0)]),_:1},8,["image"]))])):P("",!0),l("section",qt,[l("div",Bt,[l("span",Dt,[a(v(K))]),l("div",null,[e[38]||(e[38]=l("h3",null,"گالری تصاویر",-1)),l("p",null,$(v(_).isSuperAdmin?"تصاویر جداگانه برای نمایش در سایت و اپلیکیشن موبایل":"تصاویر نمایش در اپلیکیشن موبایل"),1)])]),v(_).isSuperAdmin?(o(),p(A,{key:0},[a(b,{label:"گالری تصاویر سایت"},{default:s(()=>[a(Oe,{modelValue:T.value,"onUpdate:modelValue":e[6]||(e[6]=t=>T.value=t),purpose:"product.gallery",placeholder:"افزودن تصاویر گالری سایت"},null,8,["modelValue"])]),_:1}),e[39]||(e[39]=l("div",{class:"pf-divider"},null,-1))],64)):P("",!0),a(b,{label:"گالری تصاویر موبایل",class:"mb-0"},{default:s(()=>[a(Oe,{modelValue:q.value,"onUpdate:modelValue":e[7]||(e[7]=t=>q.value=t),purpose:"product.gallery_mobile",placeholder:"افزودن تصاویر گالری موبایل"},null,8,["modelValue"])]),_:1})])]),l("aside",Ht,[l("section",Ft,[l("div",Tt,[l("span",Gt,[a(v(xe))]),e[40]||(e[40]=l("div",null,[l("h3",null,"وضعیت نمایش"),l("p",null,"نمایش یا عدم نمایش محصول برای مشتریان")],-1))]),a(b,{label:"نمایش محصول",extra:m.is_active?"محصول برای مشتریان قابل مشاهده است":"محصول پنهان است",class:"mb-0"},{default:s(()=>[a(se,{checked:m.is_active,"onUpdate:checked":e[8]||(e[8]=t=>m.is_active=t)},null,8,["checked"])]),_:1},8,["extra"])]),l("section",Jt,[l("div",Wt,[l("span",Qt,[a(v(de))]),e[41]||(e[41]=l("div",null,[l("h3",null,"دسته‌بندی"),l("p",null,"دسته، برند و سینی‌های محصول")],-1))]),a(b,{label:"دسته بندی"},{default:s(()=>[a(j,{value:m.category_id,"onUpdate:value":e[9]||(e[9]=t=>m.category_id=t),"allow-clear":"","show-search":"","option-filter-prop":"label",placeholder:"انتخاب کنید"},{default:s(()=>[(o(!0),p(A,null,J(X.value,t=>(o(),S(z,{key:t.id,value:t.id,label:t.title},{default:s(()=>[w($(t.title),1)]),_:2},1032,["value","label"]))),128))]),_:1},8,["value"])]),_:1}),a(b,{label:"برند",class:H({"mb-0":!v(_).isSuperAdmin})},{default:s(()=>[a(j,{value:m.brand_id,"onUpdate:value":e[10]||(e[10]=t=>m.brand_id=t),"allow-clear":"","show-search":"","option-filter-prop":"label",placeholder:"انتخاب کنید"},{default:s(()=>[(o(!0),p(A,null,J(Q.value,t=>(o(),S(z,{key:t.id,value:t.id,label:t.title},{default:s(()=>[w($(t.title),1)]),_:2},1032,["value","label"]))),128))]),_:1},8,["value"])]),_:1},8,["class"]),v(_).isSuperAdmin?(o(),S(b,{key:0,label:"سینی ها",class:"mb-0"},{default:s(()=>[a(j,{value:m.ciny_ids,"onUpdate:value":e[11]||(e[11]=t=>m.ciny_ids=t),mode:"multiple","allow-clear":"","option-filter-prop":"label",placeholder:"انتخاب کنید"},{default:s(()=>[(o(!0),p(A,null,J(ee.value,t=>(o(),S(z,{key:t.id,value:t.id,label:t.title},{default:s(()=>[w($(t.title),1)]),_:2},1032,["value","label"]))),128))]),_:1},8,["value"])]),_:1})):P("",!0)]),l("section",Xt,[l("div",Yt,[l("span",Zt,[a(v(re))]),e[42]||(e[42]=l("div",null,[l("h3",null,"تصویر شاخص"),l("p",null,"تصویر اصلی در لیست محصولات")],-1))]),l("div",Kt,[v(_).isSuperAdmin?(o(),S(b,{key:0,label:"سایت",class:"mb-0"},{default:s(()=>[a(ge,{modelValue:m.indicator_id,"onUpdate:modelValue":e[12]||(e[12]=t=>m.indicator_id=t),purpose:"product.indicator",placeholder:"تصویر شاخص"},null,8,["modelValue"])]),_:1})):P("",!0),a(b,{label:"موبایل",class:"mb-0"},{default:s(()=>[a(ge,{modelValue:m.mobile_pic,"onUpdate:modelValue":e[13]||(e[13]=t=>m.mobile_pic=t),purpose:"product.indicator_mobile",placeholder:"تصویر شاخص موبایل"},null,8,["modelValue"])]),_:1})])])])]),l("div",el,[l("span",tl,[a(v(Ge)),e[43]||(e[43]=w(" تغییرات تنوع‌ها و تصاویر پس از «ثبت اطلاعات» ذخیره می‌شوند. ",-1))]),a(k,{onClick:te},{default:s(()=>[...e[44]||(e[44]=[w("انصراف",-1)])]),_:1}),a(k,{type:"primary",class:"form-submit",loading:F.value,onClick:ue},{icon:s(()=>[a(v(ie))]),default:s(()=>[e[45]||(e[45]=w(" ثبت اطلاعات ",-1))]),_:1},8,["loading"])])]),_:1})]),_:1},8,["spinning"]),a(Le,{open:D.value,"onUpdate:open":e[26]||(e[26]=t=>D.value=t),width:860,"wrap-class-name":"pf-variant-modal",footer:null,"destroy-on-close":!0,centered:""},{title:s(()=>[l("div",ll,[l("div",al,[a(v(ye))]),l("div",sl,[l("h3",null,$(d.value===null?"افزودن تنوع جدید":"ویرایش تنوع"),1),e[46]||(e[46]=l("p",null,"مشخصات، قیمت‌گذاری و تصویر این تنوع را وارد کنید.",-1))])])]),default:s(()=>[a(_e,{layout:"vertical",class:"vmodal-form"},{default:s(()=>[l("div",ol,[l("div",il,[l("div",nl,[e[49]||(e[49]=l("div",{class:"vmodal-card__head"},"مشخصات اصلی",-1)),l("div",rl,[a(b,{label:"عنوان تنوع",required:"",class:"vmodal-item"},{default:s(()=>[a(y,{value:i.title,"onUpdate:value":e[14]||(e[14]=t=>i.title=t),placeholder:"مثلاً: ۵ گرمی"},null,8,["value"])]),_:1}),a(b,{label:"وزن خام",class:"vmodal-item"},{default:s(()=>[a(le,{value:i.grams,"onUpdate:value":e[15]||(e[15]=t=>i.grams=t),class:"w-full",step:.001,"addon-after":"گرم",placeholder:"۰.۰۰۰"},null,8,["value"])]),_:1})]),l("div",dl,[a(b,{label:"تعداد موجودی",class:"vmodal-item"},{default:s(()=>[a(le,{value:i.qty,"onUpdate:value":e[16]||(e[16]=t=>i.qty=t),class:"w-full",min:0,placeholder:"۰"},null,8,["value"])]),_:1}),a(b,{label:"رنگ طلا",class:"vmodal-item"},{default:s(()=>[a(j,{value:i.color,"onUpdate:value":e[17]||(e[17]=t=>i.color=t),placeholder:"انتخاب رنگ","allow-clear":""},{default:s(()=>[(o(!0),p(A,null,J(G.value,t=>(o(),S(z,{key:t.id,value:t.id},{default:s(()=>[l("div",ul,[l("span",{class:H(["color-opt__dot",`color-opt__dot--${t.id}`])},null,2),l("span",null,$(t.title),1)])]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1})]),l("div",cl,[l("label",pl,[e[47]||(e[47]=l("span",{class:"vmodal-switch-label"},"فعال برای فروش",-1)),a(se,{checked:i.is_active,"onUpdate:checked":e[18]||(e[18]=t=>i.is_active=t),size:"small"},null,8,["checked"])]),l("label",_l,[e[48]||(e[48]=l("span",{class:"vmodal-switch-label"},"پیش‌سفارش",-1)),a(se,{checked:i.is_pre_order,"onUpdate:checked":e[19]||(e[19]=t=>i.is_pre_order=t),size:"small"},null,8,["checked"])])])]),l("div",vl,[e[50]||(e[50]=l("div",{class:"vmodal-card__head"},"اجرت و قیمت‌گذاری",-1)),l("div",ml,[a(b,{label:"اجرت درصدی",class:"vmodal-item"},{default:s(()=>[a(le,{value:i.percentage_pay,"onUpdate:value":e[20]||(e[20]=t=>i.percentage_pay=t),class:"w-full",step:.1,"addon-after":"٪",placeholder:"۰"},null,8,["value"])]),_:1}),a(b,{label:"اجرت ریالی",class:"vmodal-item"},{default:s(()=>[a(le,{value:i.rial_pay,"onUpdate:value":e[21]||(e[21]=t=>i.rial_pay=t),class:"w-full",step:5e4,"addon-after":"ریال",placeholder:"۰",formatter:t=>t?`${t}`.replace(/\B(?=(\d{3})+(?!\d))/g,","):"",parser:t=>t?t.replace(/,/g,""):""},null,8,["value","formatter","parser"])]),_:1})])])]),l("div",fl,[l("div",gl,[e[52]||(e[52]=l("div",{class:"vmodal-card__head"},"تصویر اختصاصی تنوع",-1)),Y.value.length?(o(),p("div",yl,[l("button",{type:"button",class:H(["vmodal-picker__item",{"is-active":!i.image_id}]),title:"بدون تصویر",onClick:e[22]||(e[22]=t=>f(null))},[a(v(K)),e[51]||(e[51]=l("span",null,"بدون عکس",-1))],2),(o(!0),p(A,null,J(Y.value,t=>(o(),p("button",{key:t.id,type:"button",class:H(["vmodal-picker__item",{"is-active":i.image_id===t.id}]),onClick:I=>f(t)},[l("img",{src:t.url,alt:""},null,8,hl),i.image_id===t.id?(o(),p("div",kl,[a(v(ie))])):P("",!0)],10,bl))),128))])):(o(),p("div",wl," تصویری در گالری ثبت نشده است (می‌توانید در بخش گالری محصول تصویر بارگذاری کنید). "))]),l("div",Ol,[e[53]||(e[53]=l("div",{class:"vmodal-card__head"},"توضیحات تکمیلی",-1)),a(b,{label:"توضیح مختصر",class:"vmodal-item"},{default:s(()=>[a(y,{value:i.details,"onUpdate:value":e[23]||(e[23]=t=>i.details=t),placeholder:"مثلاً: طراحی مات با تراش برلیان"},null,8,["value"])]),_:1}),a(b,{label:"توضیحات کامل",class:"vmodal-item mb-0"},{default:s(()=>[a(ce,{value:i.description,"onUpdate:value":e[24]||(e[24]=t=>i.description=t),style:{height:"95px","min-height":"95px","max-height":"95px",resize:"none"},placeholder:"ویژگی‌های خاص این تنوع..."},null,8,["value"])]),_:1})])])]),l("div",$l,[a(k,{class:"vmodal-footer__cancel",onClick:e[25]||(e[25]=t=>D.value=!1)},{default:s(()=>[...e[54]||(e[54]=[w(" انصراف ",-1)])]),_:1}),a(k,{type:"primary",class:"vmodal-footer__submit",onClick:C},{icon:s(()=>[a(v(ie))]),default:s(()=>[w(" "+$(d.value===null?"افزودن تنوع":"ذخیره تغییرات"),1)]),_:1})])]),_:1})]),_:1},8,["open"])])}}}),Sl=Ce(xl,[["__scopeId","data-v-4d03854e"]]);export{Sl as default}; +import{c as a,I as ae,d as $e,n as je,O as Ae,o,b as p,w as s,p as l,h as v,t as $,F as A,e as J,i as P,Q as Me,f as w,m as V,s as me,J as Z,U as Re,r as x,q as H,R as xe,G as Ue,y as B,_ as Ce,u as Ee,x as Ne,k as qe,z as oe,A as Be,a as S,H as De,S as He,P as fe,T as Fe,E as Te,V as Ge,W as ie,l as Je}from"./index-CpVArufm.js";import{_ as ge}from"./ImageUploadInput.vue_vue_type_script_setup_true_lang-B9gVJPft.js";import{A as ye}from"./AppstoreOutlined-BRgpp4c5.js";var We={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M518.3 459a8 8 0 00-12.6 0l-112 141.7a7.98 7.98 0 006.3 12.9h73.9V856c0 4.4 3.6 8 8 8h60c4.4 0 8-3.6 8-8V613.7H624c6.7 0 10.4-7.7 6.3-12.9L518.3 459z"}},{tag:"path",attrs:{d:"M811.4 366.7C765.6 245.9 648.9 160 512.2 160S258.8 245.8 213 366.6C127.3 389.1 64 467.2 64 560c0 110.5 89.5 200 199.9 200H304c4.4 0 8-3.6 8-8v-60c0-4.4-3.6-8-8-8h-40.1c-33.7 0-65.4-13.4-89-37.7-23.5-24.2-36-56.8-34.9-90.6.9-26.4 9.9-51.2 26.2-72.1 16.7-21.3 40.1-36.8 66.1-43.7l37.9-9.9 13.9-36.6c8.6-22.8 20.6-44.1 35.7-63.4a245.6 245.6 0 0152.4-49.9c41.1-28.9 89.5-44.2 140-44.2s98.9 15.3 140 44.2c19.9 14 37.5 30.8 52.4 49.9 15.1 19.3 27.1 40.7 35.7 63.4l13.8 36.5 37.8 10C846.1 454.5 884 503.8 884 560c0 33.1-12.9 64.3-36.3 87.7a123.07 123.07 0 01-87.6 36.3H720c-4.4 0-8 3.6-8 8v60c0 4.4 3.6 8 8 8h40.1C870.5 760 960 670.5 960 560c0-92.7-63.1-170.7-148.6-193.3z"}}]},name:"cloud-upload",theme:"outlined"};function be(u){for(var n=1;n[]},purpose:{default:void 0},placeholder:{default:"افزودن تصاویر گالری"}},emits:["update:modelValue"],setup(u,{emit:n}){const r=u,_=n,c=V([]),M=V(!1),R=V(""),W=()=>c.value.filter(d=>d.status==="done"&&d.url).map(d=>d.url),F=me(()=>c.value.filter(d=>d.status==="done").length),Q=me(()=>c.value.filter(d=>d.status==="uploading").length);function X(){_("update:modelValue",W())}je(()=>r.modelValue,d=>{if(JSON.stringify(W())===JSON.stringify(d??[]))return;const i=c.value.filter(f=>f.status==="uploading");c.value=[...(d??[]).map(f=>({uid:f,status:"done",url:f,percent:100})),...i]},{immediate:!0});function ee(d){return d.type.startsWith("image/")?!0:(Z.error(`«${d.name}» تصویر نیست`),Re.LIST_IGNORE)}let m=0;const E=[];function T(d){return new Promise((i,f)=>{const U=()=>{m++,d().then(i,f).finally(()=>{var L;m--,(L=E.shift())==null||L()})};mc.value.find(i=>i.uid===d);function Y({file:d}){const i=d.uid??`${Date.now()}-${Math.random().toString(36).slice(2,8)}`;c.value.push({uid:i,status:"uploading",preview:URL.createObjectURL(d),percent:0}),T(async()=>{if(!q(i))return null;const f=new FormData;f.append("file",d),r.purpose&&f.append("purpose",r.purpose);const{data:U}=await B.post("file/create",f,{onUploadProgress:L=>{const C=q(i);C&&L.total&&(C.percent=Math.round(L.loaded/L.total*100))}});return U}).then(f=>{const U=q(i);!U||!(f!=null&&f.url)||(U.preview&&URL.revokeObjectURL(U.preview),Object.assign(U,{status:"done",url:f.url,preview:void 0,percent:100}),X())}).catch(f=>{var L,C;const U=((C=(L=f==null?void 0:f.response)==null?void 0:L.data)==null?void 0:C.message)??`بارگذاری «${d.name}» ناموفق بود`;Z.error(U),G(i)})}function G(d){const i=c.value.findIndex(U=>U.uid===d);if(i===-1)return;const[f]=c.value.splice(i,1);f.preview&&URL.revokeObjectURL(f.preview)}function N(d){G(d),X()}function D(d){R.value=d.url??d.preview??"",M.value=!0}return Ae(()=>{c.value.forEach(d=>d.preview&&URL.revokeObjectURL(d.preview))}),(d,i)=>{const f=x("a-upload-dragger"),U=x("a-progress"),L=x("a-modal");return o(),p("div",lt,[a(f,{accept:"image/*",multiple:"","show-upload-list":!1,"custom-request":Y,"before-upload":ee},{default:s(()=>[l("div",at,[a(v(ne),{class:"gallery-upload__icon"}),l("p",st,$(u.placeholder),1),i[1]||(i[1]=l("p",{class:"gallery-upload__hint"}," تصاویر را اینجا بکشید و رها کنید یا کلیک کنید — انتخاب چند تصویر به‌صورت همزمان امکان‌پذیر است ",-1))])]),_:1}),c.value.length?(o(),p("div",ot,[(o(!0),p(A,null,J(c.value,C=>(o(),p("div",{key:C.uid,class:H(["tile",{"is-uploading":C.status==="uploading"}])},[l("img",{src:C.url??C.preview,alt:""},null,8,it),C.status==="uploading"?(o(),p("div",nt,[a(U,{type:"circle",percent:C.percent,size:40,"stroke-width":8,"stroke-color":"#fff","trail-color":"rgba(255,255,255,.3)","show-info":!1},null,8,["percent"])])):(o(),p("div",rt,[l("button",{type:"button",class:"tile__btn",title:"نمایش",onClick:te=>D(C)},[a(v(xe))],8,dt),l("button",{type:"button",class:"tile__btn tile__btn--danger",title:"حذف",onClick:te=>N(C.uid)},[a(v(Ue))],8,ut)]))],2))),128))])):P("",!0),c.value.length?(o(),p("div",ct,[l("span",null,$(F.value)+" تصویر",1),Q.value?(o(),p("span",pt,[a(v(Me)),w(" در حال بارگذاری "+$(Q.value)+" تصویر… ",1)])):P("",!0)])):P("",!0),a(L,{open:M.value,footer:null,onCancel:i[0]||(i[0]=C=>M.value=!1)},{default:s(()=>[l("img",{src:R.value,style:{width:"100%"},alt:""},null,8,_t)]),_:1},8,["open"])])}}}),Oe=Ce(mt,[["__scopeId","data-v-79ab0f30"]]),ft={id:"page-user-view",class:"pf-page product-form-page"},gt={class:"pf-head"},yt={class:"pf-head__text"},bt={class:"pf-layout"},ht={class:"pf-main"},kt={class:"pf-section"},wt={class:"pf-section__head"},Ot={class:"pf-section__icon"},$t={key:0,class:"pf-section"},xt={class:"pf-section__head"},Ut={class:"pf-section__icon"},Ct={key:1,class:"table-scroll"},It=["src"],St={key:1,class:"variant-thumb variant-thumb--empty"},Pt={key:1,class:"pf-table__title"},Vt={key:0},Lt={key:1,class:"muted"},zt={key:0},jt={key:1,class:"muted"},At={key:0},Mt={key:1,class:"muted"},Rt={key:0},Et={key:1,class:"muted"},Nt={key:6,class:"pf-table__ops"},qt={class:"pf-section"},Bt={class:"pf-section__head"},Dt={class:"pf-section__icon"},Ht={class:"pf-side"},Ft={class:"pf-section"},Tt={class:"pf-section__head"},Gt={class:"pf-section__icon"},Jt={class:"pf-section"},Wt={class:"pf-section__head"},Qt={class:"pf-section__icon"},Xt={class:"pf-section"},Yt={class:"pf-section__head"},Zt={class:"pf-section__icon"},Kt={class:"pf-uploads"},el={class:"pf-actions"},tl={class:"pf-actions__hint"},ll={class:"vmodal-header"},al={class:"vmodal-header__icon"},sl={class:"vmodal-header__text"},ol={class:"vmodal-cols"},il={class:"vmodal-col"},nl={class:"vmodal-card"},rl={class:"vmodal-grid vmodal-grid--2"},dl={class:"vmodal-grid vmodal-grid--2"},ul={class:"color-opt"},cl={class:"vmodal-switches"},pl={class:"vmodal-switch-box"},_l={class:"vmodal-switch-box"},vl={class:"vmodal-card"},ml={class:"vmodal-grid vmodal-grid--2"},fl={class:"vmodal-col"},gl={class:"vmodal-card"},yl={key:0,class:"vmodal-picker"},bl=["onClick"],hl=["src"],kl={key:0,class:"vmodal-picker__check"},wl={key:1,class:"vmodal-picker-empty"},Ol={class:"vmodal-card"},$l={class:"vmodal-footer"},xl=$e({__name:"AddProduct",setup(u){const n=qe(),r=Je(),_=Ee(),c=h=>!!_.hasPermission(h),M=n.params.id,R=V(!1),W=V(void 0),F=V(!1),Q=V([]),X=V([]),ee=V([]),m=oe({title:"",product_code:"",show_type:3,category_id:void 0,brand_id:void 0,ciny_ids:[],body_html:"",is_active:!0,indicator_id:null,mobile_pic:null}),E=oe({}),T=V([]),q=V([]),Y=V([]),G=V([]),N=V([]),D=V(!1),d=V(null),i=oe({__key:"",title:"",grams:void 0,percentage_pay:void 0,qty:0,is_active:!0,is_pre_order:!1,color:void 0,color_str:void 0,rial_pay:void 0,details:"",description:"",image_id:null,image_url:null});function f(h){i.image_id=h?h.id:null,i.image_url=h?h.url:null}const U=[{title:"تصویر",dataIndex:"image",width:68,align:"center"},{title:"عنوان تنوع",dataIndex:"title"},{title:"وزن",dataIndex:"grams",align:"right"},{title:"رنگ",dataIndex:"color",align:"center"},{title:"اجرت",dataIndex:"percentage_pay",align:"right"},{title:"اجرت ریالی",dataIndex:"rial_pay",align:"right"},{title:"موجودی",dataIndex:"qty",align:"center"},{title:"وضعیت",dataIndex:"is_active",align:"center"},{title:"پیش‌سفارش",dataIndex:"is_pre_order",align:"center"},{title:"عملیات",dataIndex:"op",width:84,align:"center"}];function L(h,e){h&&e!==void 0?(d.value=e,Object.assign(i,h)):(d.value=null,Object.assign(i,{__key:`v-${Date.now()}-${Math.random().toString(36).slice(2,7)}`,id:void 0,title:"",grams:void 0,percentage_pay:W.value,qty:0,is_active:!0,is_pre_order:!1,color:void 0,color_str:void 0,rial_pay:void 0,details:"",description:"",image_id:null,image_url:null})),D.value=!0}function C(){if(!i.title){Z.error("عنوان تنوع الزامی است");return}const h=G.value.find(k=>k.id===i.color);i.color_str=h?h.title:null;const e={...i};d.value===null?N.value.push(e):N.value[d.value]=e,D.value=!1}function te(){window.history.length>1?r.back():r.push("/apps/product/list")}function Ie(){return Object.keys(E).forEach(h=>delete E[h]),m.title||(E.title="لطفا مقدار را وارد کنید"),Object.keys(E).length===0}async function ue(){var h,e;if(Ie())try{F.value=!0;const k={...m,cats:m.category_id?[m.category_id]:[],images:T.value,images_mobile:q.value,variants:N.value.map(O=>({id:O.id,title:O.title,grams:O.grams,percentage_pay:O.percentage_pay,qty:O.qty,is_active:O.is_active,is_pre_order:O.is_pre_order,color:O.color??null,rial_pay:O.rial_pay??null,details:O.details||null,description:O.description||null,image_id:O.image_id??null}))};M?await B.put(`product/update/${M}`,k):await B.post("product/create",k),Z.info("اطلاعات با موفقیت به ثبت رسید."),r.push("/apps/product/list")}catch(k){Z.error(((e=(h=k==null?void 0:k.response)==null?void 0:h.data)==null?void 0:e.message)??"خطا در ثبت اطلاعات.")}finally{F.value=!1}}return Ne(async()=>{var h,e,k,O;try{const[g,y,b,z]=await Promise.all([B.get("brand"),B.post("category"),_.isSuperAdmin?B.get("admin/products/collections"):Promise.resolve({data:[]}),B.get("admin/products/colors").catch(()=>({data:[]}))]);Q.value=g.data,X.value=(y.data.rows??y.data).map(j=>({id:j.id,title:j.type_str?`${j.title} (${j.type_str}) `:j.title,type:j.type})),ee.value=b.data,G.value=z.data??[]}catch(g){console.log(g)}if(M)try{const{data:g}=await B.get(`product/show/${M}`);R.value=!!((h=g.accounting)!=null&&h.locked),W.value=((e=g.accounting)==null?void 0:e.sale_wage_percent)!=null?Number(g.accounting.sale_wage_percent):void 0,Object.assign(m,{title:g.title??"",product_code:g.product_code??"",show_type:g.show_type??3,category_id:((k=g.category)==null?void 0:k.id)??void 0,brand_id:((O=g.brand)==null?void 0:O.id)??void 0,ciny_ids:g.ciny_ids??[],body_html:g.body_html??"",is_active:g.is_active??!0,indicator_id:g.indicator_id??null,mobile_pic:g.mobile_pic??null}),T.value=g.images_gallery??[],q.value=g.images_mobile??[],Y.value=g.gallery??[],N.value=(g.variants_all??[]).map((y,b)=>{var z;return{__key:y.id??`v-${b}`,id:y.id,title:y.title,grams:Number(y.grams),percentage_pay:Number(y.percentage_pay),qty:y.qty,is_active:y.is_active,is_pre_order:y.is_pre_order,color:y.color!=null?Number(y.color):void 0,color_str:y.color_str??null,rial_pay:y.rial_pay!=null?Number(y.rial_pay):void 0,details:y.details??"",description:y.description??"",image_id:y.image_id??null,image_url:((z=y.image)==null?void 0:z.url)??null}})}catch(g){console.log(g)}}),(h,e)=>{const k=x("a-button"),O=x("a-tag"),g=x("a-alert"),y=x("a-input"),b=x("a-form-item"),z=x("a-select-option"),j=x("a-select"),ce=x("a-textarea"),Se=x("a-empty"),pe=x("a-tooltip"),Pe=x("a-table"),se=x("a-switch"),_e=x("a-form"),Ve=x("a-spin"),le=x("a-input-number"),Le=x("a-modal");return o(),p("div",ft,[a(Ve,{spinning:F.value},{default:s(()=>[l("header",gt,[a(k,{class:"pf-head__back",shape:"circle",onClick:te},{icon:s(()=>[a(v(Be))]),_:1}),l("div",yt,[l("h1",null,$(v(M)?"ویرایش محصول":"افزودن محصول"),1),e[27]||(e[27]=l("p",null,"اطلاعات، تنوع‌ها و تصاویر محصول را تکمیل کنید.",-1))]),v(M)?(o(),S(O,{key:0,color:m.is_active?"green":"default",class:"pf-head__status"},{default:s(()=>[w($(m.is_active?"فعال":"غیر فعال"),1)]),_:1},8,["color"])):P("",!0)]),a(_e,{layout:"vertical",class:"pf-form",onSubmit:De(ue,["prevent"])},{default:s(()=>[l("div",bt,[l("div",ht,[l("section",kt,[l("div",wt,[l("span",Ot,[a(v(He))]),e[28]||(e[28]=l("div",null,[l("h3",null,"اطلاعات پایه"),l("p",null,"نام، کد و توضیحات محصول")],-1))]),R.value?(o(),S(g,{key:0,class:"pf-alert",type:"info","show-icon":"",message:"این محصول به نرم‌افزار حسابداری متصل است؛ نام و کد محصول از آنجا خوانده می‌شود."})):P("",!0),a(b,{label:"نام محصول",required:"","validate-status":E.title?"error":"",help:E.title||(R.value?"از نرم‌افزار حسابداری — برای تغییر، آن را در حسابداری ویرایش کنید":void 0)},{default:s(()=>[a(y,{value:m.title,"onUpdate:value":e[0]||(e[0]=t=>m.title=t),placeholder:"مثلاً: گردنبند طلا",disabled:R.value},null,8,["value","disabled"])]),_:1},8,["validate-status","help"]),l("div",{class:H({"pf-grid-2":v(_).isSuperAdmin})},[a(b,{label:"کد محصول",class:H({"mb-0":!v(_).isSuperAdmin}),help:R.value?"از نرم‌افزار حسابداری":void 0},{default:s(()=>[a(y,{value:m.product_code,"onUpdate:value":e[1]||(e[1]=t=>m.product_code=t),disabled:R.value},null,8,["value","disabled"])]),_:1},8,["class","help"]),v(_).isSuperAdmin?(o(),S(b,{key:0,label:"نوع نمایش"},{default:s(()=>[a(j,{value:m.show_type,"onUpdate:value":e[2]||(e[2]=t=>m.show_type=t)},{default:s(()=>[a(z,{value:1},{default:s(()=>[...e[29]||(e[29]=[w("سایت",-1)])]),_:1}),a(z,{value:2},{default:s(()=>[...e[30]||(e[30]=[w("گوشی",-1)])]),_:1}),a(z,{value:3},{default:s(()=>[...e[31]||(e[31]=[w("سایت و گوشی",-1)])]),_:1})]),_:1},8,["value"])]),_:1})):P("",!0)],2),v(_).isSuperAdmin?(o(),S(b,{key:1,label:"شرح محصول (سایت)",class:"mb-0"},{default:s(()=>[a(ce,{value:m.body_html,"onUpdate:value":e[3]||(e[3]=t=>m.body_html=t),"auto-size":{minRows:5,maxRows:12},placeholder:"توضیحات محصول برای نمایش در سایت"},null,8,["value"])]),_:1})):P("",!0)]),c("product.list.variants")?(o(),p("section",$t,[l("div",xt,[l("span",Ut,[a(v(ye))]),e[33]||(e[33]=l("div",null,[l("h3",null,"تنوع ها"),l("p",null,"وزن، اجرت و موجودی هر مدل از محصول")],-1)),c("product.list.variants.add")?(o(),S(k,{key:0,type:"primary",class:"pf-section__action",onClick:e[4]||(e[4]=t=>L())},{icon:s(()=>[a(v(fe))]),default:s(()=>[e[32]||(e[32]=w(" افزودن تنوع ",-1))]),_:1})):P("",!0)]),N.value.length?(o(),p("div",Ct,[a(Pe,{class:"pf-table",columns:U,"data-source":N.value,pagination:!1,scroll:{x:"max-content"},size:"middle","row-key":"__key"},{bodyCell:s(({column:t,record:I,index:ve})=>[t.dataIndex==="image"?(o(),p(A,{key:0},[I.image_url?(o(),p("img",{key:0,src:I.image_url,class:"variant-thumb",alt:""},null,8,It)):(o(),p("span",St,[a(v(K))]))],64)):t.dataIndex==="title"?(o(),p("span",Pt,$(I.title),1)):t.dataIndex==="grams"?(o(),p(A,{key:2},[I.grams!=null?(o(),p("span",Vt,[w($(I.grams)+" ",1),e[35]||(e[35]=l("small",{class:"muted"},"گرم",-1))])):(o(),p("span",Lt,"—"))],64)):t.dataIndex==="color"?(o(),p(A,{key:3},[I.color_str?(o(),p("span",zt,$(I.color_str),1)):(o(),p("span",jt,"—"))],64)):t.dataIndex==="percentage_pay"?(o(),p(A,{key:4},[I.percentage_pay!=null?(o(),p("span",At,[w($(I.percentage_pay),1),e[36]||(e[36]=l("small",{class:"muted"},"٪",-1))])):(o(),p("span",Mt,"—"))],64)):t.dataIndex==="rial_pay"?(o(),p(A,{key:5},[I.rial_pay!=null?(o(),p("span",Rt,[w($(Number(I.rial_pay).toLocaleString("fa-IR"))+" ",1),e[37]||(e[37]=l("small",{class:"muted"},"ریال",-1))])):(o(),p("span",Et,"—"))],64)):t.dataIndex==="op"?(o(),p("div",Nt,[c("product.list.variants.edit")?(o(),S(pe,{key:0,title:"ویرایش"},{default:s(()=>[a(k,{type:"text",size:"small",onClick:ze=>L(I,ve)},{icon:s(()=>[a(v(Te),{class:"text-primary"})]),_:1},8,["onClick"])]),_:2},1024)):P("",!0),c("product.list.variants.remove")?(o(),S(pe,{key:1,title:"حذف"},{default:s(()=>[a(k,{type:"text",size:"small",danger:"",onClick:ze=>N.value.splice(ve,1)},{icon:s(()=>[a(v(Ue))]),_:1},8,["onClick"])]),_:2},1024)):P("",!0)])):t.dataIndex==="is_active"?(o(),S(O,{key:7,color:I.is_active?"green":"red"},{default:s(()=>[w($(I.is_active?"فعال":"غیر فعال"),1)]),_:2},1032,["color"])):t.dataIndex==="is_pre_order"?(o(),S(O,{key:8,color:I.is_pre_order?"blue":""},{default:s(()=>[w($(I.is_pre_order?"بله":"خیر"),1)]),_:2},1032,["color"])):P("",!0)]),_:1},8,["data-source"])])):(o(),S(Se,{key:0,image:v(Fe).PRESENTED_IMAGE_SIMPLE,description:"هنوز تنوعی برای این محصول ثبت نشده است."},{default:s(()=>[c("product.list.variants.add")?(o(),S(k,{key:0,onClick:e[5]||(e[5]=t=>L())},{icon:s(()=>[a(v(fe))]),default:s(()=>[e[34]||(e[34]=w(" افزودن اولین تنوع ",-1))]),_:1})):P("",!0)]),_:1},8,["image"]))])):P("",!0),l("section",qt,[l("div",Bt,[l("span",Dt,[a(v(K))]),l("div",null,[e[38]||(e[38]=l("h3",null,"گالری تصاویر",-1)),l("p",null,$(v(_).isSuperAdmin?"تصاویر جداگانه برای نمایش در سایت و اپلیکیشن موبایل":"تصاویر نمایش در اپلیکیشن موبایل"),1)])]),v(_).isSuperAdmin?(o(),p(A,{key:0},[a(b,{label:"گالری تصاویر سایت"},{default:s(()=>[a(Oe,{modelValue:T.value,"onUpdate:modelValue":e[6]||(e[6]=t=>T.value=t),purpose:"product.gallery",placeholder:"افزودن تصاویر گالری سایت"},null,8,["modelValue"])]),_:1}),e[39]||(e[39]=l("div",{class:"pf-divider"},null,-1))],64)):P("",!0),a(b,{label:"گالری تصاویر موبایل",class:"mb-0"},{default:s(()=>[a(Oe,{modelValue:q.value,"onUpdate:modelValue":e[7]||(e[7]=t=>q.value=t),purpose:"product.gallery_mobile",placeholder:"افزودن تصاویر گالری موبایل"},null,8,["modelValue"])]),_:1})])]),l("aside",Ht,[l("section",Ft,[l("div",Tt,[l("span",Gt,[a(v(xe))]),e[40]||(e[40]=l("div",null,[l("h3",null,"وضعیت نمایش"),l("p",null,"نمایش یا عدم نمایش محصول برای مشتریان")],-1))]),a(b,{label:"نمایش محصول",extra:m.is_active?"محصول برای مشتریان قابل مشاهده است":"محصول پنهان است",class:"mb-0"},{default:s(()=>[a(se,{checked:m.is_active,"onUpdate:checked":e[8]||(e[8]=t=>m.is_active=t)},null,8,["checked"])]),_:1},8,["extra"])]),l("section",Jt,[l("div",Wt,[l("span",Qt,[a(v(de))]),e[41]||(e[41]=l("div",null,[l("h3",null,"دسته‌بندی"),l("p",null,"دسته، برند و سینی‌های محصول")],-1))]),a(b,{label:"دسته بندی"},{default:s(()=>[a(j,{value:m.category_id,"onUpdate:value":e[9]||(e[9]=t=>m.category_id=t),"allow-clear":"","show-search":"","option-filter-prop":"label",placeholder:"انتخاب کنید"},{default:s(()=>[(o(!0),p(A,null,J(X.value,t=>(o(),S(z,{key:t.id,value:t.id,label:t.title},{default:s(()=>[w($(t.title),1)]),_:2},1032,["value","label"]))),128))]),_:1},8,["value"])]),_:1}),a(b,{label:"برند",class:H({"mb-0":!v(_).isSuperAdmin})},{default:s(()=>[a(j,{value:m.brand_id,"onUpdate:value":e[10]||(e[10]=t=>m.brand_id=t),"allow-clear":"","show-search":"","option-filter-prop":"label",placeholder:"انتخاب کنید"},{default:s(()=>[(o(!0),p(A,null,J(Q.value,t=>(o(),S(z,{key:t.id,value:t.id,label:t.title},{default:s(()=>[w($(t.title),1)]),_:2},1032,["value","label"]))),128))]),_:1},8,["value"])]),_:1},8,["class"]),v(_).isSuperAdmin?(o(),S(b,{key:0,label:"سینی ها",class:"mb-0"},{default:s(()=>[a(j,{value:m.ciny_ids,"onUpdate:value":e[11]||(e[11]=t=>m.ciny_ids=t),mode:"multiple","allow-clear":"","option-filter-prop":"label",placeholder:"انتخاب کنید"},{default:s(()=>[(o(!0),p(A,null,J(ee.value,t=>(o(),S(z,{key:t.id,value:t.id,label:t.title},{default:s(()=>[w($(t.title),1)]),_:2},1032,["value","label"]))),128))]),_:1},8,["value"])]),_:1})):P("",!0)]),l("section",Xt,[l("div",Yt,[l("span",Zt,[a(v(re))]),e[42]||(e[42]=l("div",null,[l("h3",null,"تصویر شاخص"),l("p",null,"تصویر اصلی در لیست محصولات")],-1))]),l("div",Kt,[v(_).isSuperAdmin?(o(),S(b,{key:0,label:"سایت",class:"mb-0"},{default:s(()=>[a(ge,{modelValue:m.indicator_id,"onUpdate:modelValue":e[12]||(e[12]=t=>m.indicator_id=t),purpose:"product.indicator",placeholder:"تصویر شاخص"},null,8,["modelValue"])]),_:1})):P("",!0),a(b,{label:"موبایل",class:"mb-0"},{default:s(()=>[a(ge,{modelValue:m.mobile_pic,"onUpdate:modelValue":e[13]||(e[13]=t=>m.mobile_pic=t),purpose:"product.indicator_mobile",placeholder:"تصویر شاخص موبایل"},null,8,["modelValue"])]),_:1})])])])]),l("div",el,[l("span",tl,[a(v(Ge)),e[43]||(e[43]=w(" تغییرات تنوع‌ها و تصاویر پس از «ثبت اطلاعات» ذخیره می‌شوند. ",-1))]),a(k,{onClick:te},{default:s(()=>[...e[44]||(e[44]=[w("انصراف",-1)])]),_:1}),a(k,{type:"primary",class:"form-submit",loading:F.value,onClick:ue},{icon:s(()=>[a(v(ie))]),default:s(()=>[e[45]||(e[45]=w(" ثبت اطلاعات ",-1))]),_:1},8,["loading"])])]),_:1})]),_:1},8,["spinning"]),a(Le,{open:D.value,"onUpdate:open":e[26]||(e[26]=t=>D.value=t),width:860,"wrap-class-name":"pf-variant-modal",footer:null,"destroy-on-close":!0,centered:""},{title:s(()=>[l("div",ll,[l("div",al,[a(v(ye))]),l("div",sl,[l("h3",null,$(d.value===null?"افزودن تنوع جدید":"ویرایش تنوع"),1),e[46]||(e[46]=l("p",null,"مشخصات، قیمت‌گذاری و تصویر این تنوع را وارد کنید.",-1))])])]),default:s(()=>[a(_e,{layout:"vertical",class:"vmodal-form"},{default:s(()=>[l("div",ol,[l("div",il,[l("div",nl,[e[49]||(e[49]=l("div",{class:"vmodal-card__head"},"مشخصات اصلی",-1)),l("div",rl,[a(b,{label:"عنوان تنوع",required:"",class:"vmodal-item"},{default:s(()=>[a(y,{value:i.title,"onUpdate:value":e[14]||(e[14]=t=>i.title=t),placeholder:"مثلاً: ۵ گرمی"},null,8,["value"])]),_:1}),a(b,{label:"وزن خام",class:"vmodal-item"},{default:s(()=>[a(le,{value:i.grams,"onUpdate:value":e[15]||(e[15]=t=>i.grams=t),class:"w-full",step:.001,"addon-after":"گرم",placeholder:"۰.۰۰۰"},null,8,["value"])]),_:1})]),l("div",dl,[a(b,{label:"تعداد موجودی",class:"vmodal-item"},{default:s(()=>[a(le,{value:i.qty,"onUpdate:value":e[16]||(e[16]=t=>i.qty=t),class:"w-full",min:0,placeholder:"۰"},null,8,["value"])]),_:1}),a(b,{label:"رنگ طلا",class:"vmodal-item"},{default:s(()=>[a(j,{value:i.color,"onUpdate:value":e[17]||(e[17]=t=>i.color=t),placeholder:"انتخاب رنگ","allow-clear":""},{default:s(()=>[(o(!0),p(A,null,J(G.value,t=>(o(),S(z,{key:t.id,value:t.id},{default:s(()=>[l("div",ul,[l("span",{class:H(["color-opt__dot",`color-opt__dot--${t.id}`])},null,2),l("span",null,$(t.title),1)])]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1})]),l("div",cl,[l("label",pl,[e[47]||(e[47]=l("span",{class:"vmodal-switch-label"},"فعال برای فروش",-1)),a(se,{checked:i.is_active,"onUpdate:checked":e[18]||(e[18]=t=>i.is_active=t),size:"small"},null,8,["checked"])]),l("label",_l,[e[48]||(e[48]=l("span",{class:"vmodal-switch-label"},"پیش‌سفارش",-1)),a(se,{checked:i.is_pre_order,"onUpdate:checked":e[19]||(e[19]=t=>i.is_pre_order=t),size:"small"},null,8,["checked"])])])]),l("div",vl,[e[50]||(e[50]=l("div",{class:"vmodal-card__head"},"اجرت و قیمت‌گذاری",-1)),l("div",ml,[a(b,{label:"اجرت درصدی",class:"vmodal-item"},{default:s(()=>[a(le,{value:i.percentage_pay,"onUpdate:value":e[20]||(e[20]=t=>i.percentage_pay=t),class:"w-full",step:.1,"addon-after":"٪",placeholder:"۰"},null,8,["value"])]),_:1}),a(b,{label:"اجرت ریالی",class:"vmodal-item"},{default:s(()=>[a(le,{value:i.rial_pay,"onUpdate:value":e[21]||(e[21]=t=>i.rial_pay=t),class:"w-full",step:5e4,"addon-after":"ریال",placeholder:"۰",formatter:t=>t?`${t}`.replace(/\B(?=(\d{3})+(?!\d))/g,","):"",parser:t=>t?t.replace(/,/g,""):""},null,8,["value","formatter","parser"])]),_:1})])])]),l("div",fl,[l("div",gl,[e[52]||(e[52]=l("div",{class:"vmodal-card__head"},"تصویر اختصاصی تنوع",-1)),Y.value.length?(o(),p("div",yl,[l("button",{type:"button",class:H(["vmodal-picker__item",{"is-active":!i.image_id}]),title:"بدون تصویر",onClick:e[22]||(e[22]=t=>f(null))},[a(v(K)),e[51]||(e[51]=l("span",null,"بدون عکس",-1))],2),(o(!0),p(A,null,J(Y.value,t=>(o(),p("button",{key:t.id,type:"button",class:H(["vmodal-picker__item",{"is-active":i.image_id===t.id}]),onClick:I=>f(t)},[l("img",{src:t.url,alt:""},null,8,hl),i.image_id===t.id?(o(),p("div",kl,[a(v(ie))])):P("",!0)],10,bl))),128))])):(o(),p("div",wl," تصویری در گالری ثبت نشده است (می‌توانید در بخش گالری محصول تصویر بارگذاری کنید). "))]),l("div",Ol,[e[53]||(e[53]=l("div",{class:"vmodal-card__head"},"توضیحات تکمیلی",-1)),a(b,{label:"توضیح مختصر",class:"vmodal-item"},{default:s(()=>[a(y,{value:i.details,"onUpdate:value":e[23]||(e[23]=t=>i.details=t),placeholder:"مثلاً: طراحی مات با تراش برلیان"},null,8,["value"])]),_:1}),a(b,{label:"توضیحات کامل",class:"vmodal-item mb-0"},{default:s(()=>[a(ce,{value:i.description,"onUpdate:value":e[24]||(e[24]=t=>i.description=t),style:{height:"95px","min-height":"95px","max-height":"95px",resize:"none"},placeholder:"ویژگی‌های خاص این تنوع..."},null,8,["value"])]),_:1})])])]),l("div",$l,[a(k,{class:"vmodal-footer__cancel",onClick:e[25]||(e[25]=t=>D.value=!1)},{default:s(()=>[...e[54]||(e[54]=[w(" انصراف ",-1)])]),_:1}),a(k,{type:"primary",class:"vmodal-footer__submit",onClick:C},{icon:s(()=>[a(v(ie))]),default:s(()=>[w(" "+$(d.value===null?"افزودن تنوع":"ذخیره تغییرات"),1)]),_:1})])]),_:1})]),_:1},8,["open"])])}}}),Sl=Ce(xl,[["__scopeId","data-v-4dcde320"]]);export{Sl as default}; diff --git a/apps/admin-panel/dist/assets/AddWorkshop-BApQPfNS.js b/apps/admin-panel/dist/assets/AddWorkshop-BApQPfNS.js new file mode 100644 index 0000000..11a1275 --- /dev/null +++ b/apps/admin-panel/dist/assets/AddWorkshop-BApQPfNS.js @@ -0,0 +1 @@ +import{_ as o}from"./AddWorkshop.vue_vue_type_script_setup_true_lang-C1UXqOZL.js";import"./index-CpVArufm.js";import"./BaseFormModal.vue_vue_type_style_index_0_lang-B4iVMhZt.js";export{o as default}; diff --git a/apps/admin-panel/dist/assets/AddWorkshop-DudIwgDB.js b/apps/admin-panel/dist/assets/AddWorkshop-DudIwgDB.js deleted file mode 100644 index 91c5541..0000000 --- a/apps/admin-panel/dist/assets/AddWorkshop-DudIwgDB.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as o}from"./AddWorkshop.vue_vue_type_script_setup_true_lang-CYeQJKq0.js";import"./index-CJij4X3l.js";import"./BaseFormModal.vue_vue_type_style_index_0_lang-YLHOAWTN.js";export{o as default}; diff --git a/apps/admin-panel/dist/assets/AddWorkshop.vue_vue_type_script_setup_true_lang-CYeQJKq0.js b/apps/admin-panel/dist/assets/AddWorkshop.vue_vue_type_script_setup_true_lang-C1UXqOZL.js similarity index 97% rename from apps/admin-panel/dist/assets/AddWorkshop.vue_vue_type_script_setup_true_lang-CYeQJKq0.js rename to apps/admin-panel/dist/assets/AddWorkshop.vue_vue_type_script_setup_true_lang-C1UXqOZL.js index 09307fe..d570a68 100644 --- a/apps/admin-panel/dist/assets/AddWorkshop.vue_vue_type_script_setup_true_lang-CYeQJKq0.js +++ b/apps/admin-panel/dist/assets/AddWorkshop.vue_vue_type_script_setup_true_lang-C1UXqOZL.js @@ -1 +1 @@ -import{d as N,x as O,y as v,a as b,w as n,h as g,k as S,m as V,z as y,r as p,o as U,p as x,c as o,f as A,H as E,J as c,l as H}from"./index-CJij4X3l.js";import{_ as J}from"./BaseFormModal.vue_vue_type_style_index_0_lang-YLHOAWTN.js";const T={class:"grid-3"},W={class:"grid-3"},F=N({__name:"AddWorkshop",props:{open:{type:Boolean},id:{}},emits:["update:open","success"],setup(f,{emit:R}){const h=f,w=R,_=h.open!==void 0,B=S(),C=H(),d=_?h.id:B.params.id,i=V(!1),e=y({workshop_name:"",workshop_phone:"",workshop_address:"",user_fname:"",user_lname:"",user_phone:""}),u=y({});async function m(){var t,a;if(Object.keys(u).forEach(l=>delete u[l]),e.workshop_name||(u.workshop_name="لطفا مقدار را وارد کنید"),(e.user_fname||e.user_lname)&&!e.user_phone&&(u.user_phone="موبایل سرپرست کارگاه الزامی است"),!Object.keys(u).length)try{i.value=!0,d?await v.put(`workshop/${d}`,e):await v.post("workshop",e),c.info("اطلاعات با موفقیت به ثبت رسید."),_?(w("success"),w("update:open",!1)):C.push("/workshop/list")}catch(l){c.error(((a=(t=l==null?void 0:l.response)==null?void 0:t.data)==null?void 0:a.message)??"خطا در ثبت اطلاعات.")}finally{i.value=!1}}return O(async()=>{if(d)try{const{data:t}=await v.get(`workshop/${d}`);Object.assign(e,{workshop_name:t.workshop_name??t.name??"",workshop_phone:t.workshop_phone??t.phone??"",workshop_address:t.workshop_address??t.address??"",user_fname:t.user_fname??"",user_lname:t.user_lname??"",user_phone:t.user_phone??""})}catch(t){console.log(t)}}),(t,a)=>{const l=p("a-input"),r=p("a-form-item"),k=p("a-textarea"),$=p("a-button"),j=p("a-card"),z=p("a-form"),M=p("a-spin");return _?(U(),b(J,{key:0,open:!!f.open,id:g(d),"add-title":"افزودن کارگاه","edit-title":"ویرایش کارگاه",loading:i.value,submitting:i.value,width:"lg","onUpdate:open":a[6]||(a[6]=s=>t.$emit("update:open",s)),onSubmit:m},{default:n(()=>[x("div",T,[o(r,{label:"نام کارگاه","validate-status":u.workshop_name?"error":"",help:u.workshop_name},{default:n(()=>[o(l,{value:e.workshop_name,"onUpdate:value":a[0]||(a[0]=s=>e.workshop_name=s)},null,8,["value"])]),_:1},8,["validate-status","help"]),o(r,{label:"تلفن کارگاه"},{default:n(()=>[o(l,{value:e.workshop_phone,"onUpdate:value":a[1]||(a[1]=s=>e.workshop_phone=s)},null,8,["value"])]),_:1}),o(r,{label:"نام سرپرست کارگاه"},{default:n(()=>[o(l,{value:e.user_fname,"onUpdate:value":a[2]||(a[2]=s=>e.user_fname=s)},null,8,["value"])]),_:1}),o(r,{label:"نام خانوادگی سرپرست کارگاه"},{default:n(()=>[o(l,{value:e.user_lname,"onUpdate:value":a[3]||(a[3]=s=>e.user_lname=s)},null,8,["value"])]),_:1}),o(r,{label:"موبایل سرپرست کارگاه","validate-status":u.user_phone?"error":"",help:u.user_phone},{default:n(()=>[o(l,{value:e.user_phone,"onUpdate:value":a[4]||(a[4]=s=>e.user_phone=s)},null,8,["value"])]),_:1},8,["validate-status","help"])]),o(r,{label:"آدرس"},{default:n(()=>[o(k,{value:e.workshop_address,"onUpdate:value":a[5]||(a[5]=s=>e.workshop_address=s),"auto-size":{minRows:2,maxRows:5}},null,8,["value"])]),_:1})]),_:1},8,["open","id","loading","submitting"])):(U(),b(M,{key:1,spinning:i.value},{default:n(()=>[o(z,{layout:"vertical",onSubmit:E(m,["prevent"])},{default:n(()=>[o(j,{title:g(d)?"ویرایش کارگاه":"افزودن کارگاه",class:"mb-base page-card"},{default:n(()=>[x("div",W,[o(r,{label:"نام کارگاه","validate-status":u.workshop_name?"error":"",help:u.workshop_name},{default:n(()=>[o(l,{value:e.workshop_name,"onUpdate:value":a[7]||(a[7]=s=>e.workshop_name=s)},null,8,["value"])]),_:1},8,["validate-status","help"]),o(r,{label:"تلفن کارگاه"},{default:n(()=>[o(l,{value:e.workshop_phone,"onUpdate:value":a[8]||(a[8]=s=>e.workshop_phone=s)},null,8,["value"])]),_:1}),o(r,{label:"نام سرپرست کارگاه"},{default:n(()=>[o(l,{value:e.user_fname,"onUpdate:value":a[9]||(a[9]=s=>e.user_fname=s)},null,8,["value"])]),_:1}),o(r,{label:"نام خانوادگی سرپرست کارگاه"},{default:n(()=>[o(l,{value:e.user_lname,"onUpdate:value":a[10]||(a[10]=s=>e.user_lname=s)},null,8,["value"])]),_:1}),o(r,{label:"موبایل سرپرست کارگاه","validate-status":u.user_phone?"error":"",help:u.user_phone},{default:n(()=>[o(l,{value:e.user_phone,"onUpdate:value":a[11]||(a[11]=s=>e.user_phone=s)},null,8,["value"])]),_:1},8,["validate-status","help"])]),o(r,{label:"آدرس"},{default:n(()=>[o(k,{value:e.workshop_address,"onUpdate:value":a[12]||(a[12]=s=>e.workshop_address=s),"auto-size":{minRows:2,maxRows:5}},null,8,["value"])]),_:1}),o($,{type:"primary",class:"form-submit",onClick:m},{default:n(()=>[...a[13]||(a[13]=[A("ثبت اطلاعات",-1)])]),_:1})]),_:1},8,["title"])]),_:1})]),_:1},8,["spinning"]))}}});export{F as _}; +import{d as N,x as O,y as v,a as b,w as n,h as g,k as S,m as V,z as y,r as p,o as U,p as x,c as o,f as A,H as E,J as c,l as H}from"./index-CpVArufm.js";import{_ as J}from"./BaseFormModal.vue_vue_type_style_index_0_lang-B4iVMhZt.js";const T={class:"grid-3"},W={class:"grid-3"},F=N({__name:"AddWorkshop",props:{open:{type:Boolean},id:{}},emits:["update:open","success"],setup(f,{emit:R}){const h=f,w=R,_=h.open!==void 0,B=S(),C=H(),d=_?h.id:B.params.id,i=V(!1),e=y({workshop_name:"",workshop_phone:"",workshop_address:"",user_fname:"",user_lname:"",user_phone:""}),u=y({});async function m(){var t,a;if(Object.keys(u).forEach(l=>delete u[l]),e.workshop_name||(u.workshop_name="لطفا مقدار را وارد کنید"),(e.user_fname||e.user_lname)&&!e.user_phone&&(u.user_phone="موبایل سرپرست کارگاه الزامی است"),!Object.keys(u).length)try{i.value=!0,d?await v.put(`workshop/${d}`,e):await v.post("workshop",e),c.info("اطلاعات با موفقیت به ثبت رسید."),_?(w("success"),w("update:open",!1)):C.push("/workshop/list")}catch(l){c.error(((a=(t=l==null?void 0:l.response)==null?void 0:t.data)==null?void 0:a.message)??"خطا در ثبت اطلاعات.")}finally{i.value=!1}}return O(async()=>{if(d)try{const{data:t}=await v.get(`workshop/${d}`);Object.assign(e,{workshop_name:t.workshop_name??t.name??"",workshop_phone:t.workshop_phone??t.phone??"",workshop_address:t.workshop_address??t.address??"",user_fname:t.user_fname??"",user_lname:t.user_lname??"",user_phone:t.user_phone??""})}catch(t){console.log(t)}}),(t,a)=>{const l=p("a-input"),r=p("a-form-item"),k=p("a-textarea"),$=p("a-button"),j=p("a-card"),z=p("a-form"),M=p("a-spin");return _?(U(),b(J,{key:0,open:!!f.open,id:g(d),"add-title":"افزودن کارگاه","edit-title":"ویرایش کارگاه",loading:i.value,submitting:i.value,width:"lg","onUpdate:open":a[6]||(a[6]=s=>t.$emit("update:open",s)),onSubmit:m},{default:n(()=>[x("div",T,[o(r,{label:"نام کارگاه","validate-status":u.workshop_name?"error":"",help:u.workshop_name},{default:n(()=>[o(l,{value:e.workshop_name,"onUpdate:value":a[0]||(a[0]=s=>e.workshop_name=s)},null,8,["value"])]),_:1},8,["validate-status","help"]),o(r,{label:"تلفن کارگاه"},{default:n(()=>[o(l,{value:e.workshop_phone,"onUpdate:value":a[1]||(a[1]=s=>e.workshop_phone=s)},null,8,["value"])]),_:1}),o(r,{label:"نام سرپرست کارگاه"},{default:n(()=>[o(l,{value:e.user_fname,"onUpdate:value":a[2]||(a[2]=s=>e.user_fname=s)},null,8,["value"])]),_:1}),o(r,{label:"نام خانوادگی سرپرست کارگاه"},{default:n(()=>[o(l,{value:e.user_lname,"onUpdate:value":a[3]||(a[3]=s=>e.user_lname=s)},null,8,["value"])]),_:1}),o(r,{label:"موبایل سرپرست کارگاه","validate-status":u.user_phone?"error":"",help:u.user_phone},{default:n(()=>[o(l,{value:e.user_phone,"onUpdate:value":a[4]||(a[4]=s=>e.user_phone=s)},null,8,["value"])]),_:1},8,["validate-status","help"])]),o(r,{label:"آدرس"},{default:n(()=>[o(k,{value:e.workshop_address,"onUpdate:value":a[5]||(a[5]=s=>e.workshop_address=s),"auto-size":{minRows:2,maxRows:5}},null,8,["value"])]),_:1})]),_:1},8,["open","id","loading","submitting"])):(U(),b(M,{key:1,spinning:i.value},{default:n(()=>[o(z,{layout:"vertical",onSubmit:E(m,["prevent"])},{default:n(()=>[o(j,{title:g(d)?"ویرایش کارگاه":"افزودن کارگاه",class:"mb-base page-card"},{default:n(()=>[x("div",W,[o(r,{label:"نام کارگاه","validate-status":u.workshop_name?"error":"",help:u.workshop_name},{default:n(()=>[o(l,{value:e.workshop_name,"onUpdate:value":a[7]||(a[7]=s=>e.workshop_name=s)},null,8,["value"])]),_:1},8,["validate-status","help"]),o(r,{label:"تلفن کارگاه"},{default:n(()=>[o(l,{value:e.workshop_phone,"onUpdate:value":a[8]||(a[8]=s=>e.workshop_phone=s)},null,8,["value"])]),_:1}),o(r,{label:"نام سرپرست کارگاه"},{default:n(()=>[o(l,{value:e.user_fname,"onUpdate:value":a[9]||(a[9]=s=>e.user_fname=s)},null,8,["value"])]),_:1}),o(r,{label:"نام خانوادگی سرپرست کارگاه"},{default:n(()=>[o(l,{value:e.user_lname,"onUpdate:value":a[10]||(a[10]=s=>e.user_lname=s)},null,8,["value"])]),_:1}),o(r,{label:"موبایل سرپرست کارگاه","validate-status":u.user_phone?"error":"",help:u.user_phone},{default:n(()=>[o(l,{value:e.user_phone,"onUpdate:value":a[11]||(a[11]=s=>e.user_phone=s)},null,8,["value"])]),_:1},8,["validate-status","help"])]),o(r,{label:"آدرس"},{default:n(()=>[o(k,{value:e.workshop_address,"onUpdate:value":a[12]||(a[12]=s=>e.workshop_address=s),"auto-size":{minRows:2,maxRows:5}},null,8,["value"])]),_:1}),o($,{type:"primary",class:"form-submit",onClick:m},{default:n(()=>[...a[13]||(a[13]=[A("ثبت اطلاعات",-1)])]),_:1})]),_:1},8,["title"])]),_:1})]),_:1},8,["spinning"]))}}});export{F as _}; diff --git a/apps/admin-panel/dist/assets/AgentDetail-JeRg2GEi.js b/apps/admin-panel/dist/assets/AgentDetail-CTcXAMW4.js similarity index 96% rename from apps/admin-panel/dist/assets/AgentDetail-JeRg2GEi.js rename to apps/admin-panel/dist/assets/AgentDetail-CTcXAMW4.js index 11dc4eb..d1426a6 100644 --- a/apps/admin-panel/dist/assets/AgentDetail-JeRg2GEi.js +++ b/apps/admin-panel/dist/assets/AgentDetail-CTcXAMW4.js @@ -1 +1 @@ -import{d as D,x as S,y as A,a as b,w as a,k as F,m as y,r as d,o as i,c as l,f as n,t as s,p as E,b as p,F as f,h as I,i as k,_ as M}from"./index-CJij4X3l.js";import{j as h}from"./filters-BPYO-DKN.js";import"./index-CKg-8s_Z.js";const R={class:"stats mt-4"},T=D({__name:"AgentDetail",setup($){const j=F().params.id,m=y(!1),o=y(void 0),C=[{title:"نام",dataIndex:"name"},{title:"موبایل",dataIndex:"mobile"},{title:"شهر",dataIndex:"city"},{title:"نوع",dataIndex:"type_str"},{title:"وضعیت",dataIndex:"active"},{title:"تاریخ ثبت",dataIndex:"caj"}],w=[{title:"شماره سفارش",dataIndex:"name"},{title:"مشتری",dataIndex:"customer"},{title:"وزن",dataIndex:"w"},{title:"وضعیت",dataIndex:"status"},{title:"تاریخ",dataIndex:"caj"}];return S(async()=>{try{m.value=!0;const{data:_}=await A.get(`admin/customers-omde/reagent/${j}`);o.value=_}catch(_){console.log(_)}finally{m.value=!1}}),(_,G)=>{const c=d("a-descriptions-item"),u=d("a-tag"),z=d("a-descriptions"),B=d("a-card"),v=d("a-table"),x=d("a-tab-pane"),N=d("a-tabs"),V=d("a-spin");return i(),b(V,{spinning:m.value},{default:a(()=>[l(B,{title:"مشاهده اطلاعات کارشناس فروش",class:"page-card"},{default:a(()=>[l(z,{bordered:"",size:"small",column:{xxl:3,xl:3,lg:3,md:2,sm:2,xs:1}},{default:a(()=>[l(c,{label:"نام"},{default:a(()=>{var e;return[n(s(((e=o.value)==null?void 0:e.name)??"-"),1)]}),_:1}),l(c,{label:"موبایل"},{default:a(()=>{var e;return[n(s(((e=o.value)==null?void 0:e.mobile)??"-"),1)]}),_:1}),l(c,{label:"شعبه"},{default:a(()=>{var e,t;return[n(s(((t=(e=o.value)==null?void 0:e.branch)==null?void 0:t.name)??"-"),1)]}),_:1}),l(c,{label:"درصد کمیسیون"},{default:a(()=>{var e;return[n(s(((e=o.value)==null?void 0:e.percent)??"-"),1)]}),_:1}),l(c,{label:"وضعیت"},{default:a(()=>{var e;return[l(u,{color:((e=o.value)==null?void 0:e.active)===1?"green":"red"},{default:a(()=>{var t;return[n(s(((t=o.value)==null?void 0:t.active)===1?"فعال":"غیر فعال"),1)]}),_:1},8,["color"])]}),_:1}),l(c,{label:"میزان فروش (گرم)"},{default:a(()=>{var e;return[n(s(((e=o.value)==null?void 0:e.grams_sell)??0),1)]}),_:1})]),_:1}),E("div",R,[l(u,{color:"blue"},{default:a(()=>{var e,t;return[n("مشتریان معرفی‌شده: "+s(((t=(e=o.value)==null?void 0:e.referred_customers)==null?void 0:t.length)??0),1)]}),_:1}),l(u,{color:"green"},{default:a(()=>{var e,t;return[n("سفارش‌های ثبت‌شده: "+s(((t=(e=o.value)==null?void 0:e.orders)==null?void 0:t.length)??0),1)]}),_:1})])]),_:1}),l(N,{class:"mt-4 detail-tabs","default-active-key":"referred"},{default:a(()=>[l(x,{key:"referred",tab:"مشتریان معرفی‌شده"},{default:a(()=>{var e;return[l(v,{size:"small","data-source":(e=o.value)==null?void 0:e.referred_customers,columns:C,pagination:{pageSize:10},"row-key":"id"},{bodyCell:a(({column:t,record:r})=>{var g;return[t.dataIndex==="active"?(i(),b(u,{key:0,color:r.active===1?"green":"red"},{default:a(()=>[n(s(r.active===1?"فعال":"غیر فعال"),1)]),_:2},1032,["color"])):t.dataIndex==="city"?(i(),p(f,{key:1},[n(s(((g=r.city)==null?void 0:g.title)??"-"),1)],64)):t.dataIndex==="caj"?(i(),p(f,{key:2},[n(s(I(h)(r.caj)),1)],64)):k("",!0)]}),_:1},8,["data-source"])]}),_:1}),l(x,{key:"orders",tab:"سفارش‌های مشتریان"},{default:a(()=>{var e;return[l(v,{size:"small","data-source":(e=o.value)==null?void 0:e.orders,columns:w,pagination:{pageSize:10},"row-key":"id"},{bodyCell:a(({column:t,record:r})=>[t.dataIndex==="caj"?(i(),p(f,{key:0},[n(s(I(h)(r.caj)),1)],64)):k("",!0)]),_:1},8,["data-source"])]}),_:1})]),_:1})]),_:1},8,["spinning"])}}}),L=M(T,[["__scopeId","data-v-eef9d79c"]]);export{L as default}; +import{d as D,x as S,y as A,a as b,w as a,k as F,m as y,r as d,o as i,c as l,f as n,t as s,p as E,b as p,F as f,h as I,i as k,_ as M}from"./index-CpVArufm.js";import{j as h}from"./filters-CoNJlguG.js";import"./index-DjZc5EYL.js";const R={class:"stats mt-4"},T=D({__name:"AgentDetail",setup($){const j=F().params.id,m=y(!1),o=y(void 0),C=[{title:"نام",dataIndex:"name"},{title:"موبایل",dataIndex:"mobile"},{title:"شهر",dataIndex:"city"},{title:"نوع",dataIndex:"type_str"},{title:"وضعیت",dataIndex:"active"},{title:"تاریخ ثبت",dataIndex:"caj"}],w=[{title:"شماره سفارش",dataIndex:"name"},{title:"مشتری",dataIndex:"customer"},{title:"وزن",dataIndex:"w"},{title:"وضعیت",dataIndex:"status"},{title:"تاریخ",dataIndex:"caj"}];return S(async()=>{try{m.value=!0;const{data:_}=await A.get(`admin/customers-omde/reagent/${j}`);o.value=_}catch(_){console.log(_)}finally{m.value=!1}}),(_,G)=>{const c=d("a-descriptions-item"),u=d("a-tag"),z=d("a-descriptions"),B=d("a-card"),v=d("a-table"),x=d("a-tab-pane"),N=d("a-tabs"),V=d("a-spin");return i(),b(V,{spinning:m.value},{default:a(()=>[l(B,{title:"مشاهده اطلاعات کارشناس فروش",class:"page-card"},{default:a(()=>[l(z,{bordered:"",size:"small",column:{xxl:3,xl:3,lg:3,md:2,sm:2,xs:1}},{default:a(()=>[l(c,{label:"نام"},{default:a(()=>{var e;return[n(s(((e=o.value)==null?void 0:e.name)??"-"),1)]}),_:1}),l(c,{label:"موبایل"},{default:a(()=>{var e;return[n(s(((e=o.value)==null?void 0:e.mobile)??"-"),1)]}),_:1}),l(c,{label:"شعبه"},{default:a(()=>{var e,t;return[n(s(((t=(e=o.value)==null?void 0:e.branch)==null?void 0:t.name)??"-"),1)]}),_:1}),l(c,{label:"درصد کمیسیون"},{default:a(()=>{var e;return[n(s(((e=o.value)==null?void 0:e.percent)??"-"),1)]}),_:1}),l(c,{label:"وضعیت"},{default:a(()=>{var e;return[l(u,{color:((e=o.value)==null?void 0:e.active)===1?"green":"red"},{default:a(()=>{var t;return[n(s(((t=o.value)==null?void 0:t.active)===1?"فعال":"غیر فعال"),1)]}),_:1},8,["color"])]}),_:1}),l(c,{label:"میزان فروش (گرم)"},{default:a(()=>{var e;return[n(s(((e=o.value)==null?void 0:e.grams_sell)??0),1)]}),_:1})]),_:1}),E("div",R,[l(u,{color:"blue"},{default:a(()=>{var e,t;return[n("مشتریان معرفی‌شده: "+s(((t=(e=o.value)==null?void 0:e.referred_customers)==null?void 0:t.length)??0),1)]}),_:1}),l(u,{color:"green"},{default:a(()=>{var e,t;return[n("سفارش‌های ثبت‌شده: "+s(((t=(e=o.value)==null?void 0:e.orders)==null?void 0:t.length)??0),1)]}),_:1})])]),_:1}),l(N,{class:"mt-4 detail-tabs","default-active-key":"referred"},{default:a(()=>[l(x,{key:"referred",tab:"مشتریان معرفی‌شده"},{default:a(()=>{var e;return[l(v,{size:"small","data-source":(e=o.value)==null?void 0:e.referred_customers,columns:C,pagination:{pageSize:10},"row-key":"id"},{bodyCell:a(({column:t,record:r})=>{var g;return[t.dataIndex==="active"?(i(),b(u,{key:0,color:r.active===1?"green":"red"},{default:a(()=>[n(s(r.active===1?"فعال":"غیر فعال"),1)]),_:2},1032,["color"])):t.dataIndex==="city"?(i(),p(f,{key:1},[n(s(((g=r.city)==null?void 0:g.title)??"-"),1)],64)):t.dataIndex==="caj"?(i(),p(f,{key:2},[n(s(I(h)(r.caj)),1)],64)):k("",!0)]}),_:1},8,["data-source"])]}),_:1}),l(x,{key:"orders",tab:"سفارش‌های مشتریان"},{default:a(()=>{var e;return[l(v,{size:"small","data-source":(e=o.value)==null?void 0:e.orders,columns:w,pagination:{pageSize:10},"row-key":"id"},{bodyCell:a(({column:t,record:r})=>[t.dataIndex==="caj"?(i(),p(f,{key:0},[n(s(I(h)(r.caj)),1)],64)):k("",!0)]),_:1},8,["data-source"])]}),_:1})]),_:1})]),_:1},8,["spinning"])}}}),L=M(T,[["__scopeId","data-v-eef9d79c"]]);export{L as default}; diff --git a/apps/admin-panel/dist/assets/AppstoreOutlined-DvD8zs_r.js b/apps/admin-panel/dist/assets/AppstoreOutlined-BRgpp4c5.js similarity index 95% rename from apps/admin-panel/dist/assets/AppstoreOutlined-DvD8zs_r.js rename to apps/admin-panel/dist/assets/AppstoreOutlined-BRgpp4c5.js index 7bed7e3..17be4e9 100644 --- a/apps/admin-panel/dist/assets/AppstoreOutlined-DvD8zs_r.js +++ b/apps/admin-panel/dist/assets/AppstoreOutlined-BRgpp4c5.js @@ -1 +1 @@ -import{c as i,I as u}from"./index-CJij4X3l.js";var l={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M464 144H160c-8.8 0-16 7.2-16 16v304c0 8.8 7.2 16 16 16h304c8.8 0 16-7.2 16-16V160c0-8.8-7.2-16-16-16zm-52 268H212V212h200v200zm452-268H560c-8.8 0-16 7.2-16 16v304c0 8.8 7.2 16 16 16h304c8.8 0 16-7.2 16-16V160c0-8.8-7.2-16-16-16zm-52 268H612V212h200v200zM464 544H160c-8.8 0-16 7.2-16 16v304c0 8.8 7.2 16 16 16h304c8.8 0 16-7.2 16-16V560c0-8.8-7.2-16-16-16zm-52 268H212V612h200v200zm452-268H560c-8.8 0-16 7.2-16 16v304c0 8.8 7.2 16 16 16h304c8.8 0 16-7.2 16-16V560c0-8.8-7.2-16-16-16zm-52 268H612V612h200v200z"}}]},name:"appstore",theme:"outlined"};function a(r){for(var t=1;t(s(),a(e,{title:t(o),model:t(r)},null,8,["title","model"]))}});export{q as default}; diff --git a/apps/admin-panel/dist/assets/BankerList-D669FBjo.js b/apps/admin-panel/dist/assets/BankerList-D669FBjo.js deleted file mode 100644 index 53f5f4b..0000000 --- a/apps/admin-panel/dist/assets/BankerList-D669FBjo.js +++ /dev/null @@ -1 +0,0 @@ -import{b as m,O as i,a as e}from"./OmdeCustomerList-CVyvM4xg.js";import{d as p,a,h as t,o as s}from"./index-CJij4X3l.js";import"./index-CKg-8s_Z.js";import"./model-tqsMDjkK.js";import"./filters-BPYO-DKN.js";import"./SettingOutlined-BJxMXy1I.js";import"./ListPageHeader.vue_vue_type_script_setup_true_lang-D07Lc14a.js";import"./AccountingSyncButton.vue_vue_type_script_setup_true_lang-CVFVkjGK.js";import"./bulkCustomer.vue_vue_type_script_setup_true_lang-C_6AC_x3.js";import"./BaseFormModal.vue_vue_type_style_index_0_lang-YLHOAWTN.js";import"./ImageUploadInput.vue_vue_type_script_setup_true_lang-vRgyyG7o.js";import"./CityTreeSelect.vue_vue_type_script_setup_true_lang-7y8zYJ_W.js";import"./DateInput-DgUF2he7.js";import"./UserOutlined-yq90mQcC.js";import"./ShopOutlined-B63CHExu.js";import"./EnvironmentOutlined-Cetl6vFW.js";import"./PercentageOutlined-CtwjLYTJ.js";import"./SafetyCertificateOutlined-Cr8bqGKo.js";import"./UnorderedListOutlined-CHqEItu3.js";const j=p({__name:"BankerList",setup(n){const o=i.banker.title,r=m("banker");return(l,c)=>(s(),a(e,{title:t(o),model:t(r)},null,8,["title","model"]))}});export{j as default}; diff --git a/apps/admin-panel/dist/assets/BaseFormModal.vue_vue_type_style_index_0_lang-YLHOAWTN.js b/apps/admin-panel/dist/assets/BaseFormModal.vue_vue_type_style_index_0_lang-B4iVMhZt.js similarity index 88% rename from apps/admin-panel/dist/assets/BaseFormModal.vue_vue_type_style_index_0_lang-YLHOAWTN.js rename to apps/admin-panel/dist/assets/BaseFormModal.vue_vue_type_style_index_0_lang-B4iVMhZt.js index b7f594c..223d0e5 100644 --- a/apps/admin-panel/dist/assets/BaseFormModal.vue_vue_type_style_index_0_lang-YLHOAWTN.js +++ b/apps/admin-panel/dist/assets/BaseFormModal.vue_vue_type_style_index_0_lang-B4iVMhZt.js @@ -1 +1 @@ -import{d as r,a as g,w as a,r as o,o as k,c as i,a7 as w}from"./index-CJij4X3l.js";const b=r({__name:"BaseFormModal",props:{open:{type:Boolean},id:{default:void 0},addTitle:{},editTitle:{},loading:{type:Boolean,default:!1},submitting:{type:Boolean,default:!1},width:{default:"md"},okText:{default:"ثبت اطلاعات"}},emits:["update:open","submit","cancel"],setup(e,{emit:d}){const n=d,s={sm:520,md:720,lg:900,xl:1140};function m(t){n("update:open",t)}function c(){n("update:open",!1),n("cancel")}return(t,l)=>{const f=o("a-form"),u=o("a-spin"),p=o("a-modal");return k(),g(p,{open:e.open,title:e.id?e.editTitle:e.addTitle,width:s[e.width],"confirm-loading":e.submitting,"ok-text":e.okText,"cancel-text":"انصراف","mask-closable":!1,"wrap-class-name":"base-form-modal","onUpdate:open":m,onOk:l[0]||(l[0]=x=>t.$emit("submit")),onCancel:c},{default:a(()=>[i(u,{spinning:e.loading},{default:a(()=>[i(f,{layout:"vertical"},{default:a(()=>[w(t.$slots,"default")]),_:3})]),_:3},8,["spinning"])]),_:3},8,["open","title","width","confirm-loading","ok-text"])}}});export{b as _}; +import{d as r,a as g,w as a,r as o,o as k,c as i,a8 as w}from"./index-CpVArufm.js";const b=r({__name:"BaseFormModal",props:{open:{type:Boolean},id:{default:void 0},addTitle:{},editTitle:{},loading:{type:Boolean,default:!1},submitting:{type:Boolean,default:!1},width:{default:"md"},okText:{default:"ثبت اطلاعات"}},emits:["update:open","submit","cancel"],setup(e,{emit:d}){const n=d,s={sm:520,md:720,lg:900,xl:1140};function m(t){n("update:open",t)}function c(){n("update:open",!1),n("cancel")}return(t,l)=>{const f=o("a-form"),u=o("a-spin"),p=o("a-modal");return k(),g(p,{open:e.open,title:e.id?e.editTitle:e.addTitle,width:s[e.width],"confirm-loading":e.submitting,"ok-text":e.okText,"cancel-text":"انصراف","mask-closable":!1,"wrap-class-name":"base-form-modal","onUpdate:open":m,onOk:l[0]||(l[0]=x=>t.$emit("submit")),onCancel:c},{default:a(()=>[i(u,{spinning:e.loading},{default:a(()=>[i(f,{layout:"vertical"},{default:a(()=>[w(t.$slots,"default")]),_:3})]),_:3},8,["spinning"])]),_:3},8,["open","title","width","confirm-loading","ok-text"])}}});export{b as _}; diff --git a/apps/admin-panel/dist/assets/CameraOutlined-BcxYWwtK.js b/apps/admin-panel/dist/assets/CameraOutlined-JfS-rAEW.js similarity index 94% rename from apps/admin-panel/dist/assets/CameraOutlined-BcxYWwtK.js rename to apps/admin-panel/dist/assets/CameraOutlined-JfS-rAEW.js index b69db95..cebbbcb 100644 --- a/apps/admin-panel/dist/assets/CameraOutlined-BcxYWwtK.js +++ b/apps/admin-panel/dist/assets/CameraOutlined-JfS-rAEW.js @@ -1 +1 @@ -import{c as i,I as u}from"./index-CJij4X3l.js";var o={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M864 248H728l-32.4-90.8a32.07 32.07 0 00-30.2-21.2H358.6c-13.5 0-25.6 8.5-30.1 21.2L296 248H160c-44.2 0-80 35.8-80 80v456c0 44.2 35.8 80 80 80h704c44.2 0 80-35.8 80-80V328c0-44.2-35.8-80-80-80zm8 536c0 4.4-3.6 8-8 8H160c-4.4 0-8-3.6-8-8V328c0-4.4 3.6-8 8-8h186.7l17.1-47.8 22.9-64.2h250.5l22.9 64.2 17.1 47.8H864c4.4 0 8 3.6 8 8v456zM512 384c-88.4 0-160 71.6-160 160s71.6 160 160 160 160-71.6 160-160-71.6-160-160-160zm0 256c-53 0-96-43-96-96s43-96 96-96 96 43 96 96-43 96-96 96z"}}]},name:"camera",theme:"outlined"};function c(r){for(var e=1;e=0}async function m(){try{const{data:t}=await u.post("change/percent/count",{category_id:a.category_id,brand_id:a.brand_id});p.value=t.count}catch(t){console.log("e ==> ",t)}}async function L(){if(a.percent===void 0||a.percent===null){z.error("لطفا اجرت درصدی را وارد کنید");return}try{f.value=!0;const{data:t}=await u.post("change/all",{percent:a.percent,category_id:a.category_id,brand_id:a.brand_id});k.success({title:"تغییرات با موفقیت اعمال شد",okText:"بستن"}),p.value=t.updated}catch(t){k.success({title:"خطا در اعمال تغییرات"}),console.log(t)}finally{f.value=!1}}return S(async()=>{try{const[t,e]=await Promise.all([u.get("brand"),u.post("category")]);y.value=t.data,b.value=(e.data.rows??e.data).map(r=>({id:r.id,title:r.type_str?`${r.title} (${r.type_str}) `:r.title}))}catch(t){console.log(t)}m()}),(t,e)=>{const r=s("a-select-option"),c=s("a-select"),i=s("a-form-item"),N=s("a-input"),U=s("a-input-number"),V=s("a-button"),F=s("a-popconfirm"),M=s("a-form"),O=s("a-card");return d(),v("div",D,[n(O,{title:"تغییر درصد محصولات",class:"page-card"},{default:l(()=>[n(M,{layout:"vertical"},{default:l(()=>[$("div",E,[n(i,{label:"دسته بندی"},{default:l(()=>[n(c,{value:a.category_id,"onUpdate:value":e[0]||(e[0]=o=>a.category_id=o),"allow-clear":"","show-search":"",placeholder:"انتخاب کنید","filter-option":h,onChange:m},{default:l(()=>[(d(!0),v(w,null,C(b.value,o=>(d(),x(r,{key:o.id,value:o.id},{default:l(()=>[g(B(o.title),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1}),n(i,{label:"برند"},{default:l(()=>[n(c,{value:a.brand_id,"onUpdate:value":e[1]||(e[1]=o=>a.brand_id=o),"allow-clear":"","show-search":"",placeholder:"انتخاب کنید","filter-option":h,onChange:m},{default:l(()=>[(d(!0),v(w,null,C(y.value,o=>(d(),x(r,{key:o.id,value:o.id},{default:l(()=>[g(B(o.title),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1}),n(i,{label:"تعداد یافت شده"},{default:l(()=>[n(N,{value:p.value,disabled:""},null,8,["value"])]),_:1}),n(i,{label:"اجرت درصدی"},{default:l(()=>[n(U,{value:a.percent,"onUpdate:value":e[2]||(e[2]=o=>a.percent=o),class:"w-full",step:.1},null,8,["value"])]),_:1})]),n(F,{title:"آیا از اعمال تغییرات مطمئن هستید؟","ok-text":"بله","cancel-text":"خیر",onConfirm:L},{default:l(()=>[n(V,{type:"primary",class:"form-submit",loading:f.value},{default:l(()=>[...e[3]||(e[3]=[g("اعمال تغییرات",-1)])]),_:1},8,["loading"])]),_:1})]),_:1})]),_:1})])}}});export{q as default}; diff --git a/apps/admin-panel/dist/assets/ChangePercent-DA97Ix9U.js b/apps/admin-panel/dist/assets/ChangePercent-DA97Ix9U.js new file mode 100644 index 0000000..a49a0dd --- /dev/null +++ b/apps/admin-panel/dist/assets/ChangePercent-DA97Ix9U.js @@ -0,0 +1 @@ +import{o as O}from"./select--BgT6D7O.js";import{d as P,x as $,y as d,b as m,c as n,w as l,m as u,r,z,o as c,p as D,F as h,e as C,f as v,J as E,N as k,a as x,t as B}from"./index-CpVArufm.js";const J={id:"page-user-list"},S={class:"grid-3"},G=P({__name:"ChangePercent",setup(j){const g=u([]),y=u([]),p=u("-"),_=u(!1),t=z({category_id:void 0,brand_id:void 0,percent:void 0});function b(e,a){return O(a).toLowerCase().indexOf(e.toLowerCase())>=0}async function f(){try{const{data:e}=await d.post("change/percent/count",{category_id:t.category_id,brand_id:t.brand_id});p.value=e.count}catch(e){console.log("e ==> ",e)}}async function L(){if(t.percent===void 0||t.percent===null){E.error("لطفا اجرت درصدی را وارد کنید");return}try{_.value=!0;const{data:e}=await d.post("change/all",{percent:t.percent,category_id:t.category_id,brand_id:t.brand_id});k.success({title:"تغییرات با موفقیت اعمال شد",okText:"بستن"}),p.value=e.updated}catch(e){k.success({title:"خطا در اعمال تغییرات"}),console.log(e)}finally{_.value=!1}}return $(async()=>{try{const[e,a]=await Promise.all([d.get("brand"),d.post("category")]);g.value=e.data,y.value=(a.data.rows??a.data).map(s=>({id:s.id,title:s.type_str?`${s.title} (${s.type_str}) `:s.title}))}catch(e){console.log(e)}f()}),(e,a)=>{const s=r("a-select-option"),w=r("a-select"),i=r("a-form-item"),N=r("a-input"),T=r("a-input-number"),U=r("a-button"),V=r("a-popconfirm"),F=r("a-form"),M=r("a-card");return c(),m("div",J,[n(M,{title:"تغییر درصد محصولات",class:"page-card"},{default:l(()=>[n(F,{layout:"vertical"},{default:l(()=>[D("div",S,[n(i,{label:"دسته بندی"},{default:l(()=>[n(w,{value:t.category_id,"onUpdate:value":a[0]||(a[0]=o=>t.category_id=o),"allow-clear":"","show-search":"",placeholder:"انتخاب کنید","filter-option":b,onChange:f},{default:l(()=>[(c(!0),m(h,null,C(y.value,o=>(c(),x(s,{key:o.id,value:o.id},{default:l(()=>[v(B(o.title),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1}),n(i,{label:"برند"},{default:l(()=>[n(w,{value:t.brand_id,"onUpdate:value":a[1]||(a[1]=o=>t.brand_id=o),"allow-clear":"","show-search":"",placeholder:"انتخاب کنید","filter-option":b,onChange:f},{default:l(()=>[(c(!0),m(h,null,C(g.value,o=>(c(),x(s,{key:o.id,value:o.id},{default:l(()=>[v(B(o.title),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1}),n(i,{label:"تعداد یافت شده"},{default:l(()=>[n(N,{value:p.value,disabled:""},null,8,["value"])]),_:1}),n(i,{label:"اجرت درصدی"},{default:l(()=>[n(T,{value:t.percent,"onUpdate:value":a[2]||(a[2]=o=>t.percent=o),class:"w-full",step:.1},null,8,["value"])]),_:1})]),n(V,{title:"آیا از اعمال تغییرات مطمئن هستید؟","ok-text":"بله","cancel-text":"خیر",onConfirm:L},{default:l(()=>[n(U,{type:"primary",class:"form-submit",loading:_.value},{default:l(()=>[...a[3]||(a[3]=[v("اعمال تغییرات",-1)])]),_:1},8,["loading"])]),_:1})]),_:1})]),_:1})])}}});export{G as default}; diff --git a/apps/admin-panel/dist/assets/CityTreeSelect.vue_vue_type_script_setup_true_lang-7y8zYJ_W.js b/apps/admin-panel/dist/assets/CityTreeSelect.vue_vue_type_script_setup_true_lang-BtBj3fof.js similarity index 95% rename from apps/admin-panel/dist/assets/CityTreeSelect.vue_vue_type_script_setup_true_lang-7y8zYJ_W.js rename to apps/admin-panel/dist/assets/CityTreeSelect.vue_vue_type_script_setup_true_lang-BtBj3fof.js index a7a8a69..a093bfa 100644 --- a/apps/admin-panel/dist/assets/CityTreeSelect.vue_vue_type_script_setup_true_lang-7y8zYJ_W.js +++ b/apps/admin-panel/dist/assets/CityTreeSelect.vue_vue_type_script_setup_true_lang-BtBj3fof.js @@ -1 +1 @@ -import{d as m,o as k,a as w,s as u,r as _}from"./index-CJij4X3l.js";const p=" › ",g=m({__name:"CityTreeSelect",props:{value:{},cities:{},parentPicker:{type:Boolean},excludeId:{},placeholder:{}},emits:["update:value","change"],setup(o,{emit:h}){const c=o,r=h,d=u(()=>{const e=new Set(c.cities.map(n=>n.id)),l=new Map;for(const n of c.cities){const t=n.parent&&e.has(n.parent)&&n.parent!==n.id?n.parent:null;l.has(t)||l.set(t,[]),l.get(t).push(n)}const a=new Set,i=n=>(l.get(n)??[]).filter(t=>!a.has(t.id)&&!(c.parentPicker&&t.id===c.excludeId)).map(t=>(a.add(t.id),{id:t.id,title:t.title,children:i(t.id)}));return i(null)});function s(e,l,a=""){return e.flatMap(i=>{const n=[...l,i.title],t=n.join(p);return[{value:i.id,label:t,search:a?`${a}${p}${t}`:t},...s(i.children,n,a)]})}const v=u(()=>c.parentPicker?s(d.value,[]):d.value.map(e=>e.children.length?{key:e.id,label:e.title,options:s(e.children,[],e.title)}:{value:e.id,label:e.title,search:e.title}));function f(e){r("update:value",e??void 0),r("change",e??void 0)}return(e,l)=>{const a=_("a-select");return k(),w(a,{value:o.value??void 0,options:v.value,"show-search":"","allow-clear":"","option-filter-prop":"search",placeholder:o.placeholder??"شهر را انتخاب کنید",class:"w-full","onUpdate:value":f},null,8,["value","options","placeholder"])}}});export{g as _}; +import{d as m,o as k,a as w,s as u,r as _}from"./index-CpVArufm.js";const p=" › ",g=m({__name:"CityTreeSelect",props:{value:{},cities:{},parentPicker:{type:Boolean},excludeId:{},placeholder:{}},emits:["update:value","change"],setup(o,{emit:h}){const c=o,r=h,d=u(()=>{const e=new Set(c.cities.map(n=>n.id)),l=new Map;for(const n of c.cities){const t=n.parent&&e.has(n.parent)&&n.parent!==n.id?n.parent:null;l.has(t)||l.set(t,[]),l.get(t).push(n)}const a=new Set,i=n=>(l.get(n)??[]).filter(t=>!a.has(t.id)&&!(c.parentPicker&&t.id===c.excludeId)).map(t=>(a.add(t.id),{id:t.id,title:t.title,children:i(t.id)}));return i(null)});function s(e,l,a=""){return e.flatMap(i=>{const n=[...l,i.title],t=n.join(p);return[{value:i.id,label:t,search:a?`${a}${p}${t}`:t},...s(i.children,n,a)]})}const v=u(()=>c.parentPicker?s(d.value,[]):d.value.map(e=>e.children.length?{key:e.id,label:e.title,options:s(e.children,[],e.title)}:{value:e.id,label:e.title,search:e.title}));function f(e){r("update:value",e??void 0),r("change",e??void 0)}return(e,l)=>{const a=_("a-select");return k(),w(a,{value:o.value??void 0,options:v.value,"show-search":"","allow-clear":"","option-filter-prop":"search",placeholder:o.placeholder??"شهر را انتخاب کنید",class:"w-full","onUpdate:value":f},null,8,["value","options","placeholder"])}}});export{g as _}; diff --git a/apps/admin-panel/dist/assets/Comments-DvxFdxEP.js b/apps/admin-panel/dist/assets/Comments-BDyc7xFA.js similarity index 77% rename from apps/admin-panel/dist/assets/Comments-DvxFdxEP.js rename to apps/admin-panel/dist/assets/Comments-BDyc7xFA.js index 54c5ce7..5bd09f9 100644 --- a/apps/admin-panel/dist/assets/Comments-DvxFdxEP.js +++ b/apps/admin-panel/dist/assets/Comments-BDyc7xFA.js @@ -1 +1 @@ -import{_ as F}from"./brand-icon-CrDwHrcf.js";import{a as G,b as p,X as H}from"./model-tqsMDjkK.js";import{_ as V}from"./TooltipBtn.vue_vue_type_script_setup_true_lang-xFR71kab.js";import{u as z,d as K,b as N,c as m,w as o,r as u,o as i,h as C,p as a,a as d,i as y,f as c,t as w,Z as Q,J as _,m as S,s as X,j as W,y as B,_ as Y}from"./index-CJij4X3l.js";import{U as ee}from"./UserOutlined-yq90mQcC.js";import"./filters-BPYO-DKN.js";import"./index-CKg-8s_Z.js";import"./SettingOutlined-BJxMXy1I.js";import"./icons-BplZzYUR.js";import"./UnorderedListOutlined-CHqEItu3.js";import"./PercentageOutlined-CtwjLYTJ.js";import"./UserAddOutlined-Dac4nUC8.js";import"./CreditCardOutlined-Cz1giwnr.js";import"./AppstoreOutlined-DvD8zs_r.js";import"./TeamOutlined-Bdydtt7N.js";import"./CameraOutlined-BcxYWwtK.js";function te(){const x=z(),r=new G("admin/comments/list","لیست دیدگاه ها");return r.add(new p("product_id","شناسه محصول").filterNumber().hidden()),r.add(new p("product.title","نام محصول").filterNumber().renderSlot("productName")),r.add(new p("customer.id","شناسه نویسنده دیدگاه").filterNumber().hidden()),r.add(new p("customer","نام نویسنده ").filterText().renderSlot("customer")),r.add(new p("reply","پاسخ").renderSlot("reply").noSort()),r.add(new p("sts","وضعیت").renderSlot("sts").noSort()),x.roles&&x.roles.includes("comment.state")&&r.add(new p("changeState","تغییر وضعیت").renderSlot("changeState").noSort()),r.add(new p("opt","عملیات").noSort().renderSlot("opt")),r}const oe={id:"page-user-list"},ne=["href"],se=["onClick"],le=["onClick"],ae={class:"flex"},me={key:0,class:"comments-list"},ie={class:"comment-item"},re={class:"img"},ue={class:"comment-body"},de={class:"time"},ce={class:"comment-item"},pe={class:"comment-body"},_e={key:0,class:"time"},ve=K({__name:"Comments",setup(x){const r=z(),v=n=>!!r.hasPermission(n),D=te(),h=S(null),l=S(void 0),k=S(!1),$=S(""),b=S(""),I=X(()=>{var n;return $.value!==(((n=l.value)==null?void 0:n.comment)??"")}),E=X(()=>{var n,e,s;return b.value!==(((s=(e=(n=l.value)==null?void 0:n.reply)==null?void 0:e[0])==null?void 0:s.comment)??"")});function L(n){var s,f;const e=String(((s=n.product)==null?void 0:s.title)??"").split(" ").join("-");return`${W.siteUrl}/product/${e}/${(f=n.product)==null?void 0:f.id}`}async function T(n,e){var s;try{await B.post("comment/sts",{id:n,sts:e}),_.info("تغییرات ثبت شد "),(s=h.value)==null||s.fetch()}catch{_.error("خطا در تغییر وضعیت")}}function O(n){var e,s;l.value=n,$.value=n.comment??"",b.value=((s=(e=n.reply)==null?void 0:e[0])==null?void 0:s.comment)??"",k.value=!0}async function P(n){var e;try{await B.delete(`comment/${n}`),_.info("دیدگاه حذف شد"),(e=h.value)==null||e.fetch()}catch{_.error("خطا در حذف")}}async function J(n){var e;try{await B.post("comment",{product_id:n.product_id,customer_id:n.customer_id,comment:b.value,reply_to:n.id}),_.info("تغییرات ثبت شد "),k.value=!1,(e=h.value)==null||e.fetch()}catch{_.error("خطا در ثبت تغییرات")}}return(n,e)=>{const s=u("a-tag"),f=u("a-menu-item"),M=u("a-menu"),Z=u("a-dropdown"),U=u("a-textarea"),j=u("a-form-item"),R=u("a-button"),q=u("a-modal"),A=u("a-card");return i(),N("div",oe,[m(A,{title:"لیست دیدگاه ها",class:"page-card"},{default:o(()=>[m(H,{ref_key:"tbl",ref:h,model:C(D),"mobile-cards":""},{customer:o(({text:t})=>[c(w(t&&t.fname&&t.lname?`${t.fname} ${t.lname}`:"بدون نام"),1)]),productName:o(({record:t})=>[a("a",{href:L(t),target:"_blank"},w(t.product.title),9,ne)]),sts:o(({text:t})=>[t==1?(i(),d(s,{key:0},{default:o(()=>[...e[6]||(e[6]=[c("در انتظار تایید",-1)])]),_:1})):t==2?(i(),d(s,{key:1,color:"green"},{default:o(()=>[...e[7]||(e[7]=[c("تایید شده",-1)])]),_:1})):(i(),d(s,{key:2,color:"red"},{default:o(()=>[...e[8]||(e[8]=[c("عدم تایید",-1)])]),_:1}))]),reply:o(({text:t})=>[t&&t.length>0&&t[0].comment!==null?(i(),d(s,{key:0,color:"green"},{default:o(()=>[...e[9]||(e[9]=[c(" پاسخ داده شده ",-1)])]),_:1})):(i(),d(s,{key:1},{default:o(()=>[...e[10]||(e[10]=[c("بدون پاسخ",-1)])]),_:1}))]),changeState:o(({record:t})=>[v("comment.state")?(i(),d(Z,{key:0},{overlay:o(()=>[m(M,null,{default:o(()=>[m(f,null,{default:o(()=>[a("div",{onClick:g=>t.sts!==2?T(t.id,2):C(_).error("حالت فعلی تایید می باشد")}," تایید ",8,se)]),_:2},1024),m(f,{class:"red"},{default:o(()=>[a("div",{onClick:g=>t.sts!==3?T(t.id,3):C(_).error("حالت فعلی عدم تایید می باشد")}," عدم تایید ",8,le)]),_:2},1024)]),_:2},1024)]),default:o(()=>[m(s,{style:{cursor:"pointer"},color:t.sts===1?"":t.sts===2?"green":t.sts===3?"red":"",onClick:e[0]||(e[0]=g=>g.preventDefault())},{default:o(()=>[c(w(t.sts===1?"در انتظار تایید":t.sts===2?"تایید":"عدم تایید")+" ",1),m(C(Q))]),_:2},1032,["color"])]),_:2},1024)):y("",!0)]),opt:o(({record:t})=>[a("div",ae,[v("comment.view")?(i(),d(V,{key:0,"icon-class":"w-5 h-5 text-primary",class:"mr-3",icon:"EyeIcon",title:"مشاهده دیدگاه",onClick:g=>O(t)},null,8,["onClick"])):y("",!0),v("comment.remove")?(i(),d(V,{key:1,"icon-class":"w-5 h-5 text-danger",class:"mr-3",icon:"TrashIcon","pop-title":"دیدگاه حذف شود؟",onClick:g=>P(t.id)},null,8,["onClick"])):y("",!0)])]),_:1},8,["model"]),m(q,{open:k.value,"onUpdate:open":e[5]||(e[5]=t=>k.value=t),title:"مشاهده دیدگاه",width:"80%","wrap-class-name":"detail-modal"},{footer:o(()=>[m(R,{onClick:e[4]||(e[4]=t=>k.value=!1)},{default:o(()=>[...e[14]||(e[14]=[c("بستن",-1)])]),_:1})]),default:o(()=>[l.value?(i(),N("div",me,[a("ul",null,[a("li",ie,[a("span",re,[m(C(ee),{style:{"font-size":"48px",color:"#1c2d56"}})]),a("div",ue,[a("h5",null,w(l.value.customer&&l.value.customer.fname&&l.value.customer.lname?`${l.value.customer.fname} ${l.value.customer.lname}`:"بدون نام"),1),a("span",de," ارسال شده در تاریخ : "+w(l.value.caj?String(l.value.caj).split("-")[0]:null),1),m(j,{style:{width:"100%"}},{default:o(()=>[m(U,{value:$.value,"onUpdate:value":e[1]||(e[1]=t=>$.value=t),disabled:!v("comment.view.edit"),"auto-size":{minRows:3,maxRows:5}},null,8,["value","disabled"])]),_:1})]),a("ul",null,[a("li",ce,[e[13]||(e[13]=a("img",{src:F,alt:"comment author",class:"img border"},null,-1)),a("div",pe,[e[12]||(e[12]=a("h5",null,"ادمین",-1)),l.value.reply&&l.value.reply[0]?(i(),N("span",_e," ارسال شده در تاریخ : "+w(l.value.reply[0].caj?String(l.value.reply[0].caj).split("-")[0]:""),1)):y("",!0),m(j,{style:{width:"100%"}},{default:o(()=>[m(U,{value:b.value,"onUpdate:value":e[2]||(e[2]=t=>b.value=t),disabled:!v("comment.view.edit"),"auto-size":{minRows:3,maxRows:5}},null,8,["value","disabled"])]),_:1}),(E.value||I.value)&&v("comment.view.edit")?(i(),d(R,{key:1,class:"mr-4",onClick:e[3]||(e[3]=t=>J(l.value))},{default:o(()=>[...e[11]||(e[11]=[c(" ثبت تغییرات ",-1)])]),_:1})):y("",!0)])])])])])])):y("",!0)]),_:1},8,["open"])]),_:1})])}}}),Re=Y(ve,[["__scopeId","data-v-a75e1991"]]);export{Re as default}; +import{_ as G}from"./brand-icon-CrDwHrcf.js";import{a as H,b as p,X as K}from"./model-mwiDYd1J.js";import{_ as V}from"./TooltipBtn.vue_vue_type_script_setup_true_lang-DuvVMhj7.js";import{u as z,d as Q,b as N,c as m,w as o,r as u,o as i,h as C,p as a,a as d,i as y,f as c,t as w,$ as W,J as _,m as S,s as X,j as Y,y as B,_ as Z}from"./index-CpVArufm.js";import{U as ee}from"./UserOutlined-DeX82IP7.js";import"./filters-CoNJlguG.js";import"./index-DjZc5EYL.js";import"./SettingOutlined-E4OknxY2.js";import"./icons-BRqF3liF.js";import"./UnorderedListOutlined-CLUl5bxX.js";import"./PercentageOutlined-IS1MVcbY.js";import"./UserAddOutlined-Bpe7Keo_.js";import"./CreditCardOutlined-CIq9Sdft.js";import"./AppstoreOutlined-BRgpp4c5.js";import"./TeamOutlined-DL6Ofm69.js";import"./CameraOutlined-JfS-rAEW.js";function te(){const x=z(),r=new H("admin/comments/list","لیست دیدگاه ها");return r.add(new p("product_id","شناسه محصول").filterNumber().hidden()),r.add(new p("product.title","نام محصول").filterNumber().renderSlot("productName")),r.add(new p("customer.id","شناسه نویسنده دیدگاه").filterNumber().hidden()),r.add(new p("customer","نام نویسنده ").filterText().renderSlot("customer")),r.add(new p("reply","پاسخ").renderSlot("reply").noSort()),r.add(new p("sts","وضعیت").renderSlot("sts").noSort()),x.roles&&x.roles.includes("comment.state")&&r.add(new p("changeState","تغییر وضعیت").renderSlot("changeState").noSort()),r.add(new p("opt","عملیات").noSort().renderSlot("opt")),r}const oe={id:"page-user-list"},ne=["href"],se=["onClick"],le=["onClick"],ae={class:"flex"},me={key:0,class:"comments-list"},ie={class:"comment-item"},re={class:"img"},ue={class:"comment-body"},de={class:"time"},ce={class:"comment-item"},pe={class:"comment-body"},_e={key:0,class:"time"},ve=Q({__name:"Comments",setup(x){const r=z(),v=n=>!!r.hasPermission(n),D=te(),h=S(null),l=S(void 0),k=S(!1),$=S(""),b=S(""),I=X(()=>{var n;return $.value!==(((n=l.value)==null?void 0:n.comment)??"")}),E=X(()=>{var n,e,s;return b.value!==(((s=(e=(n=l.value)==null?void 0:n.reply)==null?void 0:e[0])==null?void 0:s.comment)??"")});function L(n){var s,f;const e=String(((s=n.product)==null?void 0:s.title)??"").split(" ").join("-");return`${Y.siteUrl}/product/${e}/${(f=n.product)==null?void 0:f.id}`}async function T(n,e){var s;try{await B.post("comment/sts",{id:n,sts:e}),_.info("تغییرات ثبت شد "),(s=h.value)==null||s.fetch()}catch{_.error("خطا در تغییر وضعیت")}}function O(n){var e,s;l.value=n,$.value=n.comment??"",b.value=((s=(e=n.reply)==null?void 0:e[0])==null?void 0:s.comment)??"",k.value=!0}async function P(n){var e;try{await B.delete(`comment/${n}`),_.info("دیدگاه حذف شد"),(e=h.value)==null||e.fetch()}catch{_.error("خطا در حذف")}}async function J(n){var e;try{await B.post("comment",{product_id:n.product_id,customer_id:n.customer_id,comment:b.value,reply_to:n.id}),_.info("تغییرات ثبت شد "),k.value=!1,(e=h.value)==null||e.fetch()}catch{_.error("خطا در ثبت تغییرات")}}return(n,e)=>{const s=u("a-tag"),f=u("a-menu-item"),M=u("a-menu"),q=u("a-dropdown"),U=u("a-textarea"),j=u("a-form-item"),R=u("a-button"),A=u("a-modal"),F=u("a-card");return i(),N("div",oe,[m(F,{title:"لیست دیدگاه ها",class:"page-card"},{default:o(()=>[m(K,{ref_key:"tbl",ref:h,model:C(D),"mobile-cards":""},{customer:o(({text:t})=>[c(w(t&&t.fname&&t.lname?`${t.fname} ${t.lname}`:"بدون نام"),1)]),productName:o(({record:t})=>[a("a",{href:L(t),target:"_blank"},w(t.product.title),9,ne)]),sts:o(({text:t})=>[t==1?(i(),d(s,{key:0},{default:o(()=>[...e[6]||(e[6]=[c("در انتظار تایید",-1)])]),_:1})):t==2?(i(),d(s,{key:1,color:"green"},{default:o(()=>[...e[7]||(e[7]=[c("تایید شده",-1)])]),_:1})):(i(),d(s,{key:2,color:"red"},{default:o(()=>[...e[8]||(e[8]=[c("عدم تایید",-1)])]),_:1}))]),reply:o(({text:t})=>[t&&t.length>0&&t[0].comment!==null?(i(),d(s,{key:0,color:"green"},{default:o(()=>[...e[9]||(e[9]=[c(" پاسخ داده شده ",-1)])]),_:1})):(i(),d(s,{key:1},{default:o(()=>[...e[10]||(e[10]=[c("بدون پاسخ",-1)])]),_:1}))]),changeState:o(({record:t})=>[v("comment.state")?(i(),d(q,{key:0},{overlay:o(()=>[m(M,null,{default:o(()=>[m(f,null,{default:o(()=>[a("div",{onClick:g=>t.sts!==2?T(t.id,2):C(_).error("حالت فعلی تایید می باشد")}," تایید ",8,se)]),_:2},1024),m(f,{class:"red"},{default:o(()=>[a("div",{onClick:g=>t.sts!==3?T(t.id,3):C(_).error("حالت فعلی عدم تایید می باشد")}," عدم تایید ",8,le)]),_:2},1024)]),_:2},1024)]),default:o(()=>[m(s,{style:{cursor:"pointer"},color:t.sts===1?"":t.sts===2?"green":t.sts===3?"red":"",onClick:e[0]||(e[0]=g=>g.preventDefault())},{default:o(()=>[c(w(t.sts===1?"در انتظار تایید":t.sts===2?"تایید":"عدم تایید")+" ",1),m(C(W))]),_:2},1032,["color"])]),_:2},1024)):y("",!0)]),opt:o(({record:t})=>[a("div",ae,[v("comment.view")?(i(),d(V,{key:0,"icon-class":"w-5 h-5 text-primary",class:"mr-3",icon:"EyeIcon",title:"مشاهده دیدگاه",onClick:g=>O(t)},null,8,["onClick"])):y("",!0),v("comment.remove")?(i(),d(V,{key:1,"icon-class":"w-5 h-5 text-danger",class:"mr-3",icon:"TrashIcon","pop-title":"دیدگاه حذف شود؟",onClick:g=>P(t.id)},null,8,["onClick"])):y("",!0)])]),_:1},8,["model"]),m(A,{open:k.value,"onUpdate:open":e[5]||(e[5]=t=>k.value=t),title:"مشاهده دیدگاه",width:"80%","wrap-class-name":"detail-modal"},{footer:o(()=>[m(R,{onClick:e[4]||(e[4]=t=>k.value=!1)},{default:o(()=>[...e[14]||(e[14]=[c("بستن",-1)])]),_:1})]),default:o(()=>[l.value?(i(),N("div",me,[a("ul",null,[a("li",ie,[a("span",re,[m(C(ee),{style:{"font-size":"48px",color:"#1c2d56"}})]),a("div",ue,[a("h5",null,w(l.value.customer&&l.value.customer.fname&&l.value.customer.lname?`${l.value.customer.fname} ${l.value.customer.lname}`:"بدون نام"),1),a("span",de," ارسال شده در تاریخ : "+w(l.value.caj?String(l.value.caj).split("-")[0]:null),1),m(j,{style:{width:"100%"}},{default:o(()=>[m(U,{value:$.value,"onUpdate:value":e[1]||(e[1]=t=>$.value=t),disabled:!v("comment.view.edit"),"auto-size":{minRows:3,maxRows:5}},null,8,["value","disabled"])]),_:1})]),a("ul",null,[a("li",ce,[e[13]||(e[13]=a("img",{src:G,alt:"comment author",class:"img border"},null,-1)),a("div",pe,[e[12]||(e[12]=a("h5",null,"ادمین",-1)),l.value.reply&&l.value.reply[0]?(i(),N("span",_e," ارسال شده در تاریخ : "+w(l.value.reply[0].caj?String(l.value.reply[0].caj).split("-")[0]:""),1)):y("",!0),m(j,{style:{width:"100%"}},{default:o(()=>[m(U,{value:b.value,"onUpdate:value":e[2]||(e[2]=t=>b.value=t),disabled:!v("comment.view.edit"),"auto-size":{minRows:3,maxRows:5}},null,8,["value","disabled"])]),_:1}),(E.value||I.value)&&v("comment.view.edit")?(i(),d(R,{key:1,class:"mr-4",onClick:e[3]||(e[3]=t=>J(l.value))},{default:o(()=>[...e[11]||(e[11]=[c(" ثبت تغییرات ",-1)])]),_:1})):y("",!0)])])])])])])):y("",!0)]),_:1},8,["open"])]),_:1})])}}}),Re=Z(ve,[["__scopeId","data-v-a75e1991"]]);export{Re as default}; diff --git a/apps/admin-panel/dist/assets/Const-BbvgiNia.js b/apps/admin-panel/dist/assets/Const-CwYj-wS4.js similarity index 98% rename from apps/admin-panel/dist/assets/Const-BbvgiNia.js rename to apps/admin-panel/dist/assets/Const-CwYj-wS4.js index 461a97a..685abfa 100644 --- a/apps/admin-panel/dist/assets/Const-BbvgiNia.js +++ b/apps/admin-panel/dist/assets/Const-CwYj-wS4.js @@ -1 +1 @@ -import{d as be,u as Ce,x as we,y as c,a as m,w as n,i as _,m as d,r,o as i,c as l,p as f,f as g,b as B,h as x,E as Y,G as H,F as A,e as Z,t as M,P as xe,H as he,J as u,_ as Be}from"./index-CJij4X3l.js";import{u as Ee}from"./useDeleteHandler-DuEp06Uq.js";import{_ as Ue}from"./ImageUploadInput.vue_vue_type_script_setup_true_lang-vRgyyG7o.js";const Ie={class:"row"},Se={class:"row"},$e={class:"mt-4 tags"},Pe={class:"slider-toolbar"},Ve={class:"slider-count"},Ae={class:"row"},Me={key:1,class:"slider-grid"},Te={class:"slide-card__head"},Ne={class:"slide-card__title"},Oe={class:"slide-card__media"},ze={class:"row"},De=be({__name:"Const",setup(Fe){const T=Ce(),h=t=>!!T.hasPermission(t),N=d(!1),j=d([]),E=d(""),S=d(!1),$=d(""),G=d(void 0),ee=[{title:"عنوان",dataIndex:"title"},{title:"عملیات",dataIndex:"op"}],b=d([]),P=d(""),C=d([]),v=d({enabled:!1,title:"",link:""}),J=d([]),w=d(""),U=d(!1),O=d(void 0),te=[{title:"عنوان",dataIndex:"title"},{title:"عملیات",dataIndex:"op"}];async function V(){const{data:t}=await c.get("brand");j.value=t}async function L(){var t,e;if(E.value.trim())try{await c.post("brand/create",{title:E.value.trim()}),E.value="",await V(),u.success("برند اضافه شد")}catch(a){u.error(((e=(t=a==null?void 0:a.response)==null?void 0:t.data)==null?void 0:e.message)??"خطا در افزودن برند")}}function ae(t){G.value=t.id,$.value=t.title,S.value=!0}async function le(){var t,e;try{await c.put(`brand/${G.value}`,{title:$.value}),S.value=!1,await V(),u.success("تغییرات ثبت شد")}catch(a){u.error(((e=(t=a==null?void 0:a.response)==null?void 0:t.data)==null?void 0:e.message)??"خطا در ویرایش")}}const{remove:ne}=Ee({onSuccess:V,successMessage:"برند حذف شد",fallbackErrorMessage:"خطا در حذف برند"});function se(t){return ne(`brand/${t}`)}function q(){const t=P.value.trim();t&&(b.value.includes(t)||b.value.push(t),P.value="")}function oe(t){b.value.splice(t,1)}async function ie(){var t,e;try{await c.put("const/__list__tags",{val:b.value}),u.success("برچسب ها ذخیره شد")}catch(a){u.error(((e=(t=a==null?void 0:a.response)==null?void 0:t.data)==null?void 0:e.message)??"خطا در ذخیره")}}function re(){C.value.push({image:"",link:""})}function ue(t){C.value.splice(t,1)}async function de(){var t,e;try{await c.put("const/slider",{val:C.value}),u.success("اسلایدر ذخیره شد")}catch(a){u.error(((e=(t=a==null?void 0:a.response)==null?void 0:t.data)==null?void 0:e.message)??"خطا در ذخیره")}}async function K(){var a,o;const t=v.value.title.trim(),e=v.value.link.trim();if(v.value.enabled&&(!t||!e)){u.warning("برای فعال‌سازی، عنوان و لینک را وارد کنید");return}try{await c.put("const/custom_button",{val:{enabled:v.value.enabled,title:t,link:e}}),u.success("دکمه سفارشی ذخیره شد")}catch(k){u.error(((o=(a=k==null?void 0:k.response)==null?void 0:a.data)==null?void 0:o.message)??"خطا در ذخیره")}}async function z(){const{data:t}=await c.post("ciny",{page:1,limit:200});J.value=t.rows??t}async function Q(){var t,e;if(w.value.trim())try{U.value?await c.put(`ciny/${O.value}`,{title:w.value.trim()}):await c.post("ciny/create",{title:w.value.trim()}),R(),await z(),u.success("عملیات انجام شد")}catch(a){u.error(((e=(t=a==null?void 0:a.response)==null?void 0:t.data)==null?void 0:e.message)??"خطا")}}function ce(t){U.value=!0,O.value=t.id,w.value=t.title}function R(){U.value=!1,O.value=void 0,w.value=""}async function pe(t){var e,a;try{await c.delete(`ciny/${t}`),await z(),u.success("حذف شد")}catch(o){u.error(((a=(e=o==null?void 0:o.response)==null?void 0:e.data)==null?void 0:a.message)??"خطا در حذف")}}return we(async()=>{try{N.value=!0,await Promise.all([V(),T.isSuperAdmin?z():Promise.resolve()]);const[t,e,a]=await Promise.all([c.get("const/__list__tags"),c.get("const/slider"),c.get("const/custom_button")]);b.value=Array.isArray(t.data)?t.data:[],C.value=Array.isArray(e.data)?e.data:[],a.data&&typeof a.data=="object"&&!Array.isArray(a.data)&&(v.value={enabled:!!a.data.enabled,title:String(a.data.title??""),link:String(a.data.link??"")})}catch(t){console.log(t)}finally{N.value=!1}}),(t,e)=>{const a=r("a-input"),o=r("a-button"),k=r("a-tooltip"),D=r("a-popconfirm"),W=r("a-table"),I=r("a-tab-pane"),ve=r("a-tag"),X=r("a-empty"),me=r("a-switch"),F=r("a-form-item"),_e=r("a-form"),fe=r("a-tabs"),ye=r("a-spin"),ge=r("a-modal"),ke=r("a-card");return h("config.statics")?(i(),m(ke,{key:0,title:"مدیریت ثابت ها",class:"page-card table-scroll"},{default:n(()=>[l(ye,{spinning:N.value},{default:n(()=>[l(fe,null,{default:n(()=>[l(I,{key:"brands",tab:"برند ها"},{default:n(()=>[f("div",Ie,[l(a,{value:E.value,"onUpdate:value":e[0]||(e[0]=s=>E.value=s),placeholder:"نام برند",style:{"max-width":"260px"},onPressEnter:L},null,8,["value"]),h("config.statics.brand.create")?(i(),m(o,{key:0,type:"primary",onClick:L},{default:n(()=>[...e[8]||(e[8]=[g(" افزودن ",-1)])]),_:1})):_("",!0)]),l(W,{class:"mt-4",size:"small","data-source":j.value,columns:ee,pagination:!1,"row-key":"id"},{bodyCell:n(({column:s,record:p})=>[s.dataIndex==="op"?(i(),B(A,{key:0},[h("config.statics.brand.edit")?(i(),m(k,{key:0,title:"ویرایش"},{default:n(()=>[l(x(Y),{class:"cursor-pointer mx-1 text-primary",onClick:y=>ae(p)},null,8,["onClick"])]),_:2},1024)):_("",!0),h("config.statics.brand.remove")?(i(),m(k,{key:1,title:"حذف"},{default:n(()=>[l(D,{"ok-text":"بله","cancel-text":"خیر",title:"آیا مطمئن هستید؟",onConfirm:y=>se(p.id)},{default:n(()=>[l(x(H),{class:"cursor-pointer mx-1 text-danger"})]),_:1},8,["onConfirm"])]),_:2},1024)):_("",!0)],64)):_("",!0)]),_:1},8,["data-source"])]),_:1}),l(I,{key:"tags",tab:"برچسب ها"},{default:n(()=>[f("div",Se,[l(a,{value:P.value,"onUpdate:value":e[1]||(e[1]=s=>P.value=s),placeholder:"برچسب",style:{"max-width":"260px"},onPressEnter:q},null,8,["value"]),h("config.statics.tags.create")?(i(),m(o,{key:0,type:"primary",onClick:q},{default:n(()=>[...e[9]||(e[9]=[g(" افزودن ",-1)])]),_:1})):_("",!0)]),f("div",$e,[(i(!0),B(A,null,Z(b.value,(s,p)=>(i(),m(ve,{key:p,closable:h("config.statics.tags.remove"),onClose:y=>oe(p)},{default:n(()=>[g(M(s),1)]),_:2},1032,["closable","onClose"]))),128)),b.value.length===0?(i(),m(X,{key:0,description:"برچسبی ثبت نشده است"})):_("",!0)]),l(o,{class:"mt-4",type:"primary",onClick:ie},{default:n(()=>[...e[10]||(e[10]=[g("ذخیره برچسب ها",-1)])]),_:1})]),_:1}),l(I,{key:"slider",tab:"اسلایدر موبایل"},{default:n(()=>[f("div",Pe,[f("span",Ve,M(C.value.length)+" اسلاید",1),f("div",Ae,[l(o,{onClick:re},{icon:n(()=>[l(x(xe))]),default:n(()=>[e[11]||(e[11]=g(" افزودن اسلاید ",-1))]),_:1}),l(o,{type:"primary",onClick:de},{default:n(()=>[...e[12]||(e[12]=[g("ذخیره اسلایدر",-1)])]),_:1})])]),C.value.length===0?(i(),m(X,{key:0,description:"اسلایدی ثبت نشده است"})):(i(),B("div",Me,[(i(!0),B(A,null,Z(C.value,(s,p)=>(i(),B("div",{key:p,class:"slide-card"},[f("div",Te,[f("span",Ne,"اسلاید "+M(p+1),1),l(D,{"ok-text":"بله","cancel-text":"خیر",title:"این اسلاید حذف شود؟",onConfirm:y=>ue(p)},{default:n(()=>[l(o,{type:"text",danger:"",size:"small",title:"حذف"},{icon:n(()=>[l(x(H))]),_:1})]),_:1},8,["onConfirm"])]),f("div",Oe,[l(Ue,{modelValue:s.image,"onUpdate:modelValue":y=>s.image=y,purpose:"slider",placeholder:"تصویر اسلاید"},null,8,["modelValue","onUpdate:modelValue"])]),l(a,{value:s.link,"onUpdate:value":y=>s.link=y,placeholder:"لینک"},null,8,["value","onUpdate:value"])]))),128))]))]),_:1}),l(I,{key:"custom-button",tab:"دکمه سفارشی"},{default:n(()=>[l(_e,{layout:"vertical",class:"custom-btn-form",onSubmit:he(K,["prevent"])},{default:n(()=>[l(F,{label:"وضعیت"},{default:n(()=>[l(me,{checked:v.value.enabled,"onUpdate:checked":e[2]||(e[2]=s=>v.value.enabled=s),"checked-children":"فعال","un-checked-children":"غیرفعال"},null,8,["checked"])]),_:1}),l(F,{label:"عنوان دکمه"},{default:n(()=>[l(a,{value:v.value.title,"onUpdate:value":e[3]||(e[3]=s=>v.value.title=s),placeholder:"مثلاً پشتیبانی تلگرام",style:{"max-width":"360px"}},null,8,["value"])]),_:1}),l(F,{label:"لینک"},{default:n(()=>[l(a,{value:v.value.link,"onUpdate:value":e[4]||(e[4]=s=>v.value.link=s),placeholder:"https://...",style:{"max-width":"360px"},dir:"ltr"},null,8,["value"])]),_:1}),l(o,{type:"primary",onClick:K},{default:n(()=>[...e[13]||(e[13]=[g("ذخیره دکمه",-1)])]),_:1})]),_:1})]),_:1}),x(T).isSuperAdmin?(i(),m(I,{key:"collections",tab:"سینی ها"},{default:n(()=>[f("div",ze,[l(a,{value:w.value,"onUpdate:value":e[5]||(e[5]=s=>w.value=s),placeholder:"نام سینی",style:{"max-width":"260px"},onPressEnter:Q},null,8,["value"]),l(o,{type:"primary",onClick:Q},{default:n(()=>[g(M(U.value?"ویرایش":"ثبت")+" سینی ",1)]),_:1}),U.value?(i(),m(o,{key:0,onClick:R},{default:n(()=>[...e[14]||(e[14]=[g("انصراف",-1)])]),_:1})):_("",!0)]),l(W,{class:"mt-4",size:"small","data-source":J.value,columns:te,pagination:!1,"row-key":"id"},{bodyCell:n(({column:s,record:p})=>[s.dataIndex==="op"?(i(),B(A,{key:0},[l(k,{title:"ویرایش"},{default:n(()=>[l(x(Y),{class:"cursor-pointer mx-1 text-primary",onClick:y=>ce(p)},null,8,["onClick"])]),_:2},1024),l(k,{title:"حذف"},{default:n(()=>[l(D,{"ok-text":"بله","cancel-text":"خیر",title:"آیا مطمئن هستید؟",onConfirm:y=>pe(p.id)},{default:n(()=>[l(x(H),{class:"cursor-pointer mx-1 text-danger"})]),_:1},8,["onConfirm"])]),_:2},1024)],64)):_("",!0)]),_:1},8,["data-source"])]),_:1})):_("",!0)]),_:1})]),_:1},8,["spinning"]),l(ge,{open:S.value,"onUpdate:open":e[7]||(e[7]=s=>S.value=s),title:"ویرایش برند",onOk:le},{default:n(()=>[l(a,{value:$.value,"onUpdate:value":e[6]||(e[6]=s=>$.value=s)},null,8,["value"])]),_:1},8,["open"])]),_:1})):_("",!0)}}}),Je=Be(De,[["__scopeId","data-v-f2e1c33e"]]);export{Je as default}; +import{d as be,u as Ce,x as we,y as c,a as m,w as n,i as _,m as d,r,o as i,c as l,p as f,f as g,b as B,h as x,E as Y,G as H,F as A,e as Z,t as M,P as xe,H as he,J as u,_ as Be}from"./index-CpVArufm.js";import{u as Ee}from"./useDeleteHandler-K9FWNrnm.js";import{_ as Ue}from"./ImageUploadInput.vue_vue_type_script_setup_true_lang-B9gVJPft.js";const Ie={class:"row"},Se={class:"row"},$e={class:"mt-4 tags"},Pe={class:"slider-toolbar"},Ve={class:"slider-count"},Ae={class:"row"},Me={key:1,class:"slider-grid"},Te={class:"slide-card__head"},Ne={class:"slide-card__title"},Oe={class:"slide-card__media"},ze={class:"row"},De=be({__name:"Const",setup(Fe){const T=Ce(),h=t=>!!T.hasPermission(t),N=d(!1),j=d([]),E=d(""),S=d(!1),$=d(""),G=d(void 0),ee=[{title:"عنوان",dataIndex:"title"},{title:"عملیات",dataIndex:"op"}],b=d([]),P=d(""),C=d([]),v=d({enabled:!1,title:"",link:""}),J=d([]),w=d(""),U=d(!1),O=d(void 0),te=[{title:"عنوان",dataIndex:"title"},{title:"عملیات",dataIndex:"op"}];async function V(){const{data:t}=await c.get("brand");j.value=t}async function L(){var t,e;if(E.value.trim())try{await c.post("brand/create",{title:E.value.trim()}),E.value="",await V(),u.success("برند اضافه شد")}catch(a){u.error(((e=(t=a==null?void 0:a.response)==null?void 0:t.data)==null?void 0:e.message)??"خطا در افزودن برند")}}function ae(t){G.value=t.id,$.value=t.title,S.value=!0}async function le(){var t,e;try{await c.put(`brand/${G.value}`,{title:$.value}),S.value=!1,await V(),u.success("تغییرات ثبت شد")}catch(a){u.error(((e=(t=a==null?void 0:a.response)==null?void 0:t.data)==null?void 0:e.message)??"خطا در ویرایش")}}const{remove:ne}=Ee({onSuccess:V,successMessage:"برند حذف شد",fallbackErrorMessage:"خطا در حذف برند"});function se(t){return ne(`brand/${t}`)}function q(){const t=P.value.trim();t&&(b.value.includes(t)||b.value.push(t),P.value="")}function oe(t){b.value.splice(t,1)}async function ie(){var t,e;try{await c.put("const/__list__tags",{val:b.value}),u.success("برچسب ها ذخیره شد")}catch(a){u.error(((e=(t=a==null?void 0:a.response)==null?void 0:t.data)==null?void 0:e.message)??"خطا در ذخیره")}}function re(){C.value.push({image:"",link:""})}function ue(t){C.value.splice(t,1)}async function de(){var t,e;try{await c.put("const/slider",{val:C.value}),u.success("اسلایدر ذخیره شد")}catch(a){u.error(((e=(t=a==null?void 0:a.response)==null?void 0:t.data)==null?void 0:e.message)??"خطا در ذخیره")}}async function K(){var a,o;const t=v.value.title.trim(),e=v.value.link.trim();if(v.value.enabled&&(!t||!e)){u.warning("برای فعال‌سازی، عنوان و لینک را وارد کنید");return}try{await c.put("const/custom_button",{val:{enabled:v.value.enabled,title:t,link:e}}),u.success("دکمه سفارشی ذخیره شد")}catch(k){u.error(((o=(a=k==null?void 0:k.response)==null?void 0:a.data)==null?void 0:o.message)??"خطا در ذخیره")}}async function z(){const{data:t}=await c.post("ciny",{page:1,limit:200});J.value=t.rows??t}async function Q(){var t,e;if(w.value.trim())try{U.value?await c.put(`ciny/${O.value}`,{title:w.value.trim()}):await c.post("ciny/create",{title:w.value.trim()}),R(),await z(),u.success("عملیات انجام شد")}catch(a){u.error(((e=(t=a==null?void 0:a.response)==null?void 0:t.data)==null?void 0:e.message)??"خطا")}}function ce(t){U.value=!0,O.value=t.id,w.value=t.title}function R(){U.value=!1,O.value=void 0,w.value=""}async function pe(t){var e,a;try{await c.delete(`ciny/${t}`),await z(),u.success("حذف شد")}catch(o){u.error(((a=(e=o==null?void 0:o.response)==null?void 0:e.data)==null?void 0:a.message)??"خطا در حذف")}}return we(async()=>{try{N.value=!0,await Promise.all([V(),T.isSuperAdmin?z():Promise.resolve()]);const[t,e,a]=await Promise.all([c.get("const/__list__tags"),c.get("const/slider"),c.get("const/custom_button")]);b.value=Array.isArray(t.data)?t.data:[],C.value=Array.isArray(e.data)?e.data:[],a.data&&typeof a.data=="object"&&!Array.isArray(a.data)&&(v.value={enabled:!!a.data.enabled,title:String(a.data.title??""),link:String(a.data.link??"")})}catch(t){console.log(t)}finally{N.value=!1}}),(t,e)=>{const a=r("a-input"),o=r("a-button"),k=r("a-tooltip"),D=r("a-popconfirm"),W=r("a-table"),I=r("a-tab-pane"),ve=r("a-tag"),X=r("a-empty"),me=r("a-switch"),F=r("a-form-item"),_e=r("a-form"),fe=r("a-tabs"),ye=r("a-spin"),ge=r("a-modal"),ke=r("a-card");return h("config.statics")?(i(),m(ke,{key:0,title:"مدیریت ثابت ها",class:"page-card table-scroll"},{default:n(()=>[l(ye,{spinning:N.value},{default:n(()=>[l(fe,null,{default:n(()=>[l(I,{key:"brands",tab:"برند ها"},{default:n(()=>[f("div",Ie,[l(a,{value:E.value,"onUpdate:value":e[0]||(e[0]=s=>E.value=s),placeholder:"نام برند",style:{"max-width":"260px"},onPressEnter:L},null,8,["value"]),h("config.statics.brand.create")?(i(),m(o,{key:0,type:"primary",onClick:L},{default:n(()=>[...e[8]||(e[8]=[g(" افزودن ",-1)])]),_:1})):_("",!0)]),l(W,{class:"mt-4",size:"small","data-source":j.value,columns:ee,pagination:!1,"row-key":"id"},{bodyCell:n(({column:s,record:p})=>[s.dataIndex==="op"?(i(),B(A,{key:0},[h("config.statics.brand.edit")?(i(),m(k,{key:0,title:"ویرایش"},{default:n(()=>[l(x(Y),{class:"cursor-pointer mx-1 text-primary",onClick:y=>ae(p)},null,8,["onClick"])]),_:2},1024)):_("",!0),h("config.statics.brand.remove")?(i(),m(k,{key:1,title:"حذف"},{default:n(()=>[l(D,{"ok-text":"بله","cancel-text":"خیر",title:"آیا مطمئن هستید؟",onConfirm:y=>se(p.id)},{default:n(()=>[l(x(H),{class:"cursor-pointer mx-1 text-danger"})]),_:1},8,["onConfirm"])]),_:2},1024)):_("",!0)],64)):_("",!0)]),_:1},8,["data-source"])]),_:1}),l(I,{key:"tags",tab:"برچسب ها"},{default:n(()=>[f("div",Se,[l(a,{value:P.value,"onUpdate:value":e[1]||(e[1]=s=>P.value=s),placeholder:"برچسب",style:{"max-width":"260px"},onPressEnter:q},null,8,["value"]),h("config.statics.tags.create")?(i(),m(o,{key:0,type:"primary",onClick:q},{default:n(()=>[...e[9]||(e[9]=[g(" افزودن ",-1)])]),_:1})):_("",!0)]),f("div",$e,[(i(!0),B(A,null,Z(b.value,(s,p)=>(i(),m(ve,{key:p,closable:h("config.statics.tags.remove"),onClose:y=>oe(p)},{default:n(()=>[g(M(s),1)]),_:2},1032,["closable","onClose"]))),128)),b.value.length===0?(i(),m(X,{key:0,description:"برچسبی ثبت نشده است"})):_("",!0)]),l(o,{class:"mt-4",type:"primary",onClick:ie},{default:n(()=>[...e[10]||(e[10]=[g("ذخیره برچسب ها",-1)])]),_:1})]),_:1}),l(I,{key:"slider",tab:"اسلایدر موبایل"},{default:n(()=>[f("div",Pe,[f("span",Ve,M(C.value.length)+" اسلاید",1),f("div",Ae,[l(o,{onClick:re},{icon:n(()=>[l(x(xe))]),default:n(()=>[e[11]||(e[11]=g(" افزودن اسلاید ",-1))]),_:1}),l(o,{type:"primary",onClick:de},{default:n(()=>[...e[12]||(e[12]=[g("ذخیره اسلایدر",-1)])]),_:1})])]),C.value.length===0?(i(),m(X,{key:0,description:"اسلایدی ثبت نشده است"})):(i(),B("div",Me,[(i(!0),B(A,null,Z(C.value,(s,p)=>(i(),B("div",{key:p,class:"slide-card"},[f("div",Te,[f("span",Ne,"اسلاید "+M(p+1),1),l(D,{"ok-text":"بله","cancel-text":"خیر",title:"این اسلاید حذف شود؟",onConfirm:y=>ue(p)},{default:n(()=>[l(o,{type:"text",danger:"",size:"small",title:"حذف"},{icon:n(()=>[l(x(H))]),_:1})]),_:1},8,["onConfirm"])]),f("div",Oe,[l(Ue,{modelValue:s.image,"onUpdate:modelValue":y=>s.image=y,purpose:"slider",placeholder:"تصویر اسلاید"},null,8,["modelValue","onUpdate:modelValue"])]),l(a,{value:s.link,"onUpdate:value":y=>s.link=y,placeholder:"لینک"},null,8,["value","onUpdate:value"])]))),128))]))]),_:1}),l(I,{key:"custom-button",tab:"دکمه سفارشی"},{default:n(()=>[l(_e,{layout:"vertical",class:"custom-btn-form",onSubmit:he(K,["prevent"])},{default:n(()=>[l(F,{label:"وضعیت"},{default:n(()=>[l(me,{checked:v.value.enabled,"onUpdate:checked":e[2]||(e[2]=s=>v.value.enabled=s),"checked-children":"فعال","un-checked-children":"غیرفعال"},null,8,["checked"])]),_:1}),l(F,{label:"عنوان دکمه"},{default:n(()=>[l(a,{value:v.value.title,"onUpdate:value":e[3]||(e[3]=s=>v.value.title=s),placeholder:"مثلاً پشتیبانی تلگرام",style:{"max-width":"360px"}},null,8,["value"])]),_:1}),l(F,{label:"لینک"},{default:n(()=>[l(a,{value:v.value.link,"onUpdate:value":e[4]||(e[4]=s=>v.value.link=s),placeholder:"https://...",style:{"max-width":"360px"},dir:"ltr"},null,8,["value"])]),_:1}),l(o,{type:"primary",onClick:K},{default:n(()=>[...e[13]||(e[13]=[g("ذخیره دکمه",-1)])]),_:1})]),_:1})]),_:1}),x(T).isSuperAdmin?(i(),m(I,{key:"collections",tab:"سینی ها"},{default:n(()=>[f("div",ze,[l(a,{value:w.value,"onUpdate:value":e[5]||(e[5]=s=>w.value=s),placeholder:"نام سینی",style:{"max-width":"260px"},onPressEnter:Q},null,8,["value"]),l(o,{type:"primary",onClick:Q},{default:n(()=>[g(M(U.value?"ویرایش":"ثبت")+" سینی ",1)]),_:1}),U.value?(i(),m(o,{key:0,onClick:R},{default:n(()=>[...e[14]||(e[14]=[g("انصراف",-1)])]),_:1})):_("",!0)]),l(W,{class:"mt-4",size:"small","data-source":J.value,columns:te,pagination:!1,"row-key":"id"},{bodyCell:n(({column:s,record:p})=>[s.dataIndex==="op"?(i(),B(A,{key:0},[l(k,{title:"ویرایش"},{default:n(()=>[l(x(Y),{class:"cursor-pointer mx-1 text-primary",onClick:y=>ce(p)},null,8,["onClick"])]),_:2},1024),l(k,{title:"حذف"},{default:n(()=>[l(D,{"ok-text":"بله","cancel-text":"خیر",title:"آیا مطمئن هستید؟",onConfirm:y=>pe(p.id)},{default:n(()=>[l(x(H),{class:"cursor-pointer mx-1 text-danger"})]),_:1},8,["onConfirm"])]),_:2},1024)],64)):_("",!0)]),_:1},8,["data-source"])]),_:1})):_("",!0)]),_:1})]),_:1},8,["spinning"]),l(ge,{open:S.value,"onUpdate:open":e[7]||(e[7]=s=>S.value=s),title:"ویرایش برند",onOk:le},{default:n(()=>[l(a,{value:$.value,"onUpdate:value":e[6]||(e[6]=s=>$.value=s)},null,8,["value"])]),_:1},8,["open"])]),_:1})):_("",!0)}}}),Je=Be(De,[["__scopeId","data-v-f2e1c33e"]]);export{Je as default}; diff --git a/apps/admin-panel/dist/assets/CreditCardOutlined-Cz1giwnr.js b/apps/admin-panel/dist/assets/CreditCardOutlined-CIq9Sdft.js similarity index 93% rename from apps/admin-panel/dist/assets/CreditCardOutlined-Cz1giwnr.js rename to apps/admin-panel/dist/assets/CreditCardOutlined-CIq9Sdft.js index 9a21b2c..4c31aa1 100644 --- a/apps/admin-panel/dist/assets/CreditCardOutlined-Cz1giwnr.js +++ b/apps/admin-panel/dist/assets/CreditCardOutlined-CIq9Sdft.js @@ -1 +1 @@ -import{c as u,I as l}from"./index-CJij4X3l.js";var d={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M928 160H96c-17.7 0-32 14.3-32 32v640c0 17.7 14.3 32 32 32h832c17.7 0 32-14.3 32-32V192c0-17.7-14.3-32-32-32zm-792 72h752v120H136V232zm752 560H136V440h752v352zm-237-64h165c4.4 0 8-3.6 8-8v-72c0-4.4-3.6-8-8-8H651c-4.4 0-8 3.6-8 8v72c0 4.4 3.6 8 8 8z"}}]},name:"credit-card",theme:"outlined"};function c(r){for(var t=1;tnew Me(u).setAlpha(l).toRgbString(),J=(u,l)=>new Me(u).lighten(l).toHexString(),mt=u=>{const l=Ue(u,{theme:"dark"});return{1:l[0],2:l[1],3:l[2],4:l[3],5:l[6],6:l[5],7:l[4],8:l[6],9:l[5],10:l[4]}},pt=(u,l)=>{const d=u||"#000",r=l||"#fff";return{colorBgBase:d,colorTextBase:r,colorText:U(r,.85),colorTextSecondary:U(r,.65),colorTextTertiary:U(r,.45),colorTextQuaternary:U(r,.25),colorFill:U(r,.18),colorFillSecondary:U(r,.12),colorFillTertiary:U(r,.08),colorFillQuaternary:U(r,.04),colorBgElevated:J(d,12),colorBgContainer:J(d,8),colorBgLayout:J(d,0),colorBgSpotlight:J(d,26),colorBorder:J(d,26),colorBorderSecondary:J(d,19)}},_t=(u,l)=>{const d=Object.keys(qe).map(E=>{const f=Ue(u[E],{theme:"dark"});return new Array(10).fill(1).reduce((k,_,$)=>(k[`${E}-${$+1}`]=f[$],k),{})}).reduce((E,f)=>(E=D(D({},E),f),E),{}),r=l??ue(u);return D(D(D({},r),d),Ke(u,{generateColorPalettes:mt,generateNeutralColorPalettes:pt}))};function gt(u){const{sizeUnit:l,sizeStep:d}=u,r=d-2;return{sizeXXL:l*(r+10),sizeXL:l*(r+6),sizeLG:l*(r+2),sizeMD:l*(r+2),sizeMS:l*(r+1),size:l*r,sizeSM:l*r,sizeXS:l*(r-1),sizeXXS:l*(r-1)}}const yt=(u,l)=>{const d=l??ue(u),r=d.fontSizeSM,E=d.controlHeight-4;return D(D(D(D(D({},d),gt(l??u)),Ze(r)),{controlHeight:E}),et(D(D({},d),{controlHeight:E})))};function bt(){const[u,l,d]=tt();return{theme:u,token:l,hashId:d}}const Ye={defaultConfig:je,defaultSeed:je.token,useToken:bt,defaultAlgorithm:ue,darkAlgorithm:_t,compactAlgorithm:yt},ft={class:"acc-head"},kt={class:"acc-body"},ht={class:"acc-code"},Et={class:"code",dir:"ltr"},xt={class:"origin"},It={key:1,class:"muted"},St={class:"balances"},Ct={class:"balance"},Tt={class:"line"},Nt={class:"line"},Rt={class:"hint"},Dt={class:"balance"},wt={class:"line"},At={class:"line"},Ot={key:0,class:"last-job"},$t={key:0,class:"warn"},Pt={class:"link-form"},jt={class:"label"},zt={class:"link-row"},Bt=Fe({__name:"CustomerAccountingCard",props:{customerId:{}},setup(u){const l=u,d={LINKED:"جفت با موبایل",IMPORTED:"وارد شده از حسابداری",PUSHED:"ساخته شده از اپ",MANUAL:"دستی"},r={PENDING:"در صف",SENDING:"در حال ارسال",SENT:"ارسال شد",FAILED:"ناموفق",NEEDS_REVIEW:"نیاز به بررسی",RESOLVED:"حل‌شده"},E={PENDING:"default",SENDING:"processing",SENT:"success",FAILED:"error",NEEDS_REVIEW:"warning",RESOLVED:"success"},f=Ve(),{token:k}=Ye.useToken(),_=A(null),$=A(!1),i=A(""),L=O(()=>({"--acc-bg":k.value.colorBgContainer,"--acc-border":k.value.colorBorderSecondary,"--acc-fill":k.value.colorFillQuaternary,"--acc-text":k.value.colorText,"--acc-text-2":k.value.colorTextSecondary,"--acc-text-3":k.value.colorTextTertiary,"--acc-error":k.value.colorError,"--acc-success":k.value.colorSuccess})),V=O(()=>!!f.hasPermission("config.accounting")&&_.value&&_.value.provider!=="none"),T=O(()=>{var y,o;return(o=(y=_.value)==null?void 0:y.jobs)==null?void 0:o[0]}),P=(y,o)=>y==null?"—":Number(y).toLocaleString("fa-IR",{maximumFractionDigits:o}),j=y=>Number(y)>0?"debt":Number(y)<0?"credit":"",Z=y=>y?rt(y).format("jYYYY/jMM/jDD HH:mm"):"";async function Y(){if(f.hasPermission("config.accounting")){$.value=!0;try{const{data:y}=await B.get(`admin/accounting/customers/${l.customerId}`);_.value=y}catch{_.value=null}finally{$.value=!1}}}async function ee(){var y,o;try{await B.post("admin/accounting/links",{entityType:"CUSTOMER",entityId:l.customerId,externalCode:i.value.trim()}),ze.success("لینک شد"),i.value="",Y()}catch(M){ze.error(((o=(y=M==null?void 0:M.response)==null?void 0:y.data)==null?void 0:o.message)??"خطا")}}async function ie(){var y;(y=_.value)!=null&&y.link&&(await B.delete(`admin/accounting/links/${_.value.link.id}`),Y())}return Ge(Y),(y,o)=>{var G;const M=C("a-tag"),x=C("a-badge"),te=C("a-input"),q=C("a-button"),X=C("a-popconfirm"),re=C("a-spin");return V.value?(n(),p("section",{key:0,class:"acc-card",style:He(L.value)},[e("header",ft,[o[4]||(o[4]=e("h2",null,"حسابداری",-1)),(G=_.value)!=null&&G.link?(n(),R(M,{key:0,color:"success"},{default:m(()=>[...o[2]||(o[2]=[c("لینک شده",-1)])]),_:1})):(n(),R(M,{key:1,color:"warning"},{default:m(()=>[...o[3]||(o[3]=[c("لینک نشده",-1)])]),_:1}))]),b(re,{spinning:$.value},{default:m(()=>{var ae,le,se,K,t,a,w,N,z,oe,H,W;return[e("div",kt,[e("div",ht,[o[5]||(o[5]=e("span",{class:"label"},"کد حساب",-1)),(ae=_.value)!=null&&ae.link?(n(),p(S,{key:0},[e("span",Et,s(_.value.link.externalCode),1),e("span",xt,s(d[_.value.link.origin]??_.value.link.origin),1)],64)):(n(),p("span",It,"—"))]),e("div",St,[e("div",Ct,[o[10]||(o[10]=e("div",{class:"label"},"مانده‌ی حسابداری",-1)),(le=_.value)!=null&&le.accounting?(n(),p(S,{key:0},[e("div",Tt,[e("span",{class:F(j(_.value.accounting.gold))},s(P(_.value.accounting.gold,3)),3),o[6]||(o[6]=e("small",null,"گرم",-1))]),e("div",Nt,[e("span",{class:F(j(_.value.accounting.rial))},s(P(_.value.accounting.rial,0)),3),o[7]||(o[7]=e("small",null,"ریال",-1))]),e("div",Rt,s(Z(_.value.accounting.at)),1)],64)):(n(),p(S,{key:1},[o[8]||(o[8]=e("div",{class:"line muted"},"—",-1)),o[9]||(o[9]=e("div",{class:"hint"},"هنوز دریافت نشده",-1))],64))]),e("div",Dt,[o[13]||(o[13]=e("div",{class:"label"},"مانده‌ی دفتر اپ",-1)),e("div",wt,[e("span",{class:F(j((K=(se=_.value)==null?void 0:se.internal)==null?void 0:K.gold))},s(P((a=(t=_.value)==null?void 0:t.internal)==null?void 0:a.gold,3)),3),o[11]||(o[11]=e("small",null,"گرم",-1))]),e("div",At,[e("span",{class:F(j((N=(w=_.value)==null?void 0:w.internal)==null?void 0:N.rial))},s(P((oe=(z=_.value)==null?void 0:z.internal)==null?void 0:oe.rial,0)),3),o[12]||(o[12]=e("small",null,"ریال",-1))]),o[14]||(o[14]=e("div",{class:"hint"},"مبنای سقف اعتبار",-1))])]),T.value?(n(),p("div",Ot,[b(x,{status:E[T.value.status]??"default"},null,8,["status"]),c(" آخرین ارسال: "+s(r[T.value.status]??T.value.status)+" — "+s(Z(T.value.updatedAt))+" ",1),T.value.lastError?(n(),p("div",$t,s(T.value.lastError),1)):h("",!0)])):h("",!0),e("div",Pt,[e("div",jt,s((H=_.value)!=null&&H.link?"تغییر لینک":"لینک دستی"),1),e("div",zt,[b(te,{value:i.value,"onUpdate:value":o[0]||(o[0]=ne=>i.value=ne),dir:"ltr",placeholder:"کد حساب در حسابداری",onPressEnter:o[1]||(o[1]=ne=>i.value.trim()&&ee())},null,8,["value"]),b(q,{type:"primary",ghost:"",disabled:!i.value.trim(),onClick:ee},{default:m(()=>[...o[15]||(o[15]=[c("لینک",-1)])]),_:1},8,["disabled"])]),(W=_.value)!=null&&W.link?(n(),R(X,{key:0,title:"لینک حذف شود؟",onConfirm:ie},{default:m(()=>[b(q,{type:"link",danger:"",size:"small",class:"unlink"},{default:m(()=>[...o[16]||(o[16]=[c("حذف لینک فعلی",-1)])]),_:1})]),_:1})):h("",!0)])])]}),_:1},8,["spinning"])],4)):h("",!0)}}}),Lt=We(Bt,[["__scopeId","data-v-17e381b4"]]),Mt={class:"panel hero"},Ut={class:"hero-main"},Ft={class:"hero-text"},Vt={class:"hero-eyebrow"},Gt={class:"hero-name"},Ht={class:"hero-tags"},Wt={class:"hero-meta"},Yt={key:0,class:"meta-item"},Xt={dir:"ltr"},Qt={key:1,class:"meta-item"},Jt={key:2,class:"meta-item"},qt={key:3,class:"meta-item"},Kt={class:"hero-actions"},Zt={class:"kpis"},ea={class:"panel kpi"},ta={class:"kpi-foot"},aa={class:"panel kpi"},la={class:"kpi-foot"},sa={class:"panel kpi"},oa={class:"kpi-value"},na={class:"kpi-foot"},ia={key:1,class:"kpi-foot"},ra={class:"panel kpi"},ua={class:"kpi-value"},da={class:"panel kpi"},ca={class:"kpi-value"},va={class:"kpi-foot"},ma={class:"layout"},pa={class:"panel layout-main"},_a={class:"tab-count"},ga={key:0,class:"mono",dir:"ltr"},ya={class:"tab-count"},ba={class:"unit"},fa={key:3,class:"note"},ka={class:"tab-count"},ha={class:"tab-count"},Ea={key:0,dir:"ltr"},xa={class:"layout-side"},Ia={class:"panel"},Sa={class:"facts"},Ca=["dir"],Ta={key:0,class:"panel"},Na={class:"facts"},Ra=Fe({__name:"CustomerDetail",props:{title:{default:"مشاهده اطلاعات مشتری"},showWallet:{type:Boolean,default:!1},showActivity:{type:Boolean,default:!1},defaultTab:{default:"orders"},editRoute:{default:void 0}},setup(u){const l=u,d=at(),r=nt(),E=Ve(),{token:f}=Ye.useToken(),k=d.params.id,_=A(!1),$=A(l.defaultTab),i=A(void 0),L=A(void 0),V=A([]),T=A([]),P=A([]),j=A([]),Z=O(()=>({"--cd-bg":f.value.colorBgContainer,"--cd-border":f.value.colorBorderSecondary,"--cd-text":f.value.colorText,"--cd-text-2":f.value.colorTextSecondary,"--cd-text-3":f.value.colorTextTertiary,"--cd-fill":f.value.colorFillQuaternary,"--cd-primary":f.value.colorPrimary,"--cd-primary-bg":f.value.colorPrimaryBg,"--cd-error":f.value.colorError,"--cd-success":f.value.colorSuccess,"--cd-warning":f.value.colorWarning})),Y={SUSPENDED:{label:"معلق (عبور از سقف)",color:"error"},PLACED:{label:"ثبت سفارش",color:"default"},ADMIN_APPROVED:{label:"تأیید مدیر",color:"processing"},SOURCING:{label:"در حال تأمین",color:"processing"},PREPARING:{label:"در حال آماده‌سازی",color:"processing"},DELIVERED_TO_AGENT:{label:"تحویل مسئول فروش",color:"cyan"},DELIVERED_TO_CUSTOMER:{label:"تحویل مشتری",color:"success"},CANCELLED:{label:"لغو شده",color:"default"}},ee={ORDER_STOCK:"سفارش کالای موجود",ORDER_PRE_ORDER:"پیش‌سفارش",REPAYMENT_MELTED_GOLD:"تسویه با آبشده",REPAYMENT_TRANSFER:"تسویه با واریز",REPAYMENT_CHEQUE:"تسویه با چک",REPAYMENT_CASH:"تسویه نقدی",WALLET_BONUS:"پاداش کیف پول",ADJUSTMENT:"اصلاحیه"},ie=[{title:"شماره سفارش",dataIndex:"name"},{title:"وضعیت",dataIndex:"status"},{title:"وزن",dataIndex:"w"},{title:"تعداد آیتم",dataIndex:"items_count",align:"center"},{title:"شعبه",dataIndex:"branch"},{title:"تاریخ",dataIndex:"caj"}],y=[{title:"نوع",dataIndex:"type"},{title:"مقدار",dataIndex:"value"},{title:"وضعیت",dataIndex:"confirmed"},{title:"توضیحات",dataIndex:"note",ellipsis:!0},{title:"تاریخ",dataIndex:"caj"}],o=[{title:"مقدار",dataIndex:"value"},{title:"تاریخ اعطا",dataIndex:"caj"},{title:"انقضا",dataIndex:"expires_at"}],M=[{title:"عملیات",dataIndex:"action"},{title:"جزئیات",dataIndex:"detail"},{title:"تاریخ",dataIndex:"caj"}],x=(t,a)=>t==null||t===""||Number.isNaN(Number(t))?"—":Number(t).toLocaleString("fa-IR",{maximumFractionDigits:a}),te=t=>Number(t)>0?"debt":Number(t)<0?"credit":"",q=t=>t==null?"":Number(t)>0?"بدهکار":Number(t)<0?"بستانکار":"تسویه",X=(t,a)=>a>t?{pageSize:t,size:"small",showSizeChanger:!1}:!1,re=O(()=>{var t;return(((t=i.value)==null?void 0:t.name)??"").trim().charAt(0)||"؟"}),G=O(()=>{var w,N;const t=Number((w=i.value)==null?void 0:w.gram_level);if(!t||t<=0)return null;const a=Math.max(Number((N=i.value)==null?void 0:N.remain)||0,0);return Math.min(Math.round(a/t*100),100)}),ae=O(()=>{const t=G.value??0;return t>=90?f.value.colorError:t>=70?f.value.colorWarning:f.value.colorPrimary}),le=O(()=>{if(!l.editRoute||!r.hasRoute(l.editRoute))return!1;const t=r.resolve({name:l.editRoute,params:{id:k}}).meta;return t.superAdminOnly&&!E.isSuperAdmin?!1:!t.role||!!E.hasPermission(t.role)}),se=O(()=>{var a;const t=i.value;return[{label:"موبایل",value:t==null?void 0:t.mobile,ltr:!0},{label:"تلفن ثابت",value:t==null?void 0:t.phone,ltr:!0},{label:"کد ملی",value:t==null?void 0:t.national_code,ltr:!0},{label:"تاریخ تولد",value:t!=null&&t.birth_date?Q(t.birth_date):null},{label:"شهر",value:(a=t==null?void 0:t.city)==null?void 0:a.title},{label:"آدرس",value:t==null?void 0:t.address}]}),K=O(()=>{var a;const t=i.value;return[{label:"نام فروشگاه",value:t==null?void 0:t.store_name},{label:"پاساژ",value:t==null?void 0:t.pasazh_name},{label:"منطقه",value:t==null?void 0:t.zone},{label:"کد عضویت",value:t==null?void 0:t.mcode},{label:"کارشناس فروش",value:(a=t==null?void 0:t.reagent)==null?void 0:a.name},{label:"درصد اجرت",value:(t==null?void 0:t.percent)!==null&&(t==null?void 0:t.percent)!==void 0&&(t==null?void 0:t.percent)!==""?`${x(t.percent,2)}٪`:null}].filter(w=>w.value)});return Ge(async()=>{try{_.value=!0;const[t,a,w,N]=await Promise.all([B.get(`customer/${k}`),B.get(`major/dashboard/${k}`).catch(()=>({data:void 0})),B.get(`admin/customers-omde/${k}/orders`).catch(()=>({data:[]})),B.get(`admin/customers-omde/${k}/documents`).catch(()=>({data:[]}))]);if(i.value=t.data,L.value=a.data,V.value=w.data,T.value=N.data,l.showWallet){const z=await B.get(`admin/customers-omde/${k}/wallet`).catch(()=>({data:[]}));P.value=z.data}if(l.showActivity){const z=await B.get(`log/ago/${k}`).catch(()=>({data:[]}));j.value=z.data}}catch(t){console.log(t)}finally{_.value=!1}}),(t,a)=>{const w=C("a-avatar"),N=C("a-tag"),z=C("a-button"),oe=C("a-progress"),H=C("a-table"),W=C("a-tab-pane"),ne=C("a-badge"),Xe=C("a-tabs"),Qe=C("a-spin");return n(),R(Qe,{spinning:_.value},{default:m(()=>{var ce,ve,me,pe,_e,ge,ye,be,fe,ke,he,Ee,xe,Ie,Se,Ce,Te,Ne,Re,De,we,Ae,Oe;return[e("div",{class:"customer-detail",style:He(Z.value)},[e("section",Mt,[e("div",Ut,[b(w,{size:64,src:(ve=(ce=i.value)==null?void 0:ce.image)==null?void 0:ve.image,class:"hero-avatar"},{default:m(()=>[c(s(re.value),1)]),_:1},8,["src"]),e("div",Ft,[e("div",Vt,s(u.title),1),e("h1",Gt,s(((me=i.value)==null?void 0:me.name)||"—"),1),e("div",Ht,[i.value?(n(),R(N,{key:0,color:i.value.active===1?"success":"error"},{default:m(()=>[c(s(i.value.active===1?"فعال":"غیرفعال"),1)]),_:1},8,["color"])):h("",!0),i.value?(n(),R(N,{key:1,color:i.value.sts===1?"processing":"warning"},{default:m(()=>[c(s(i.value.sts===1?"مجاز به سفارش":"عدم سفارش"),1)]),_:1},8,["color"])):h("",!0),(pe=i.value)!=null&&pe.type_str?(n(),R(N,{key:2},{default:m(()=>[c(s(i.value.type_str),1)]),_:1})):h("",!0),((_e=i.value)==null?void 0:_e.is_archive)===1?(n(),R(N,{key:3,color:"default"},{default:m(()=>[...a[3]||(a[3]=[c("بایگانی‌شده",-1)])]),_:1})):h("",!0)]),e("div",Wt,[(ge=i.value)!=null&&ge.mobile?(n(),p("span",Yt,[b(I(de)),e("span",Xt,s(i.value.mobile),1)])):h("",!0),(be=(ye=i.value)==null?void 0:ye.city)!=null&&be.title?(n(),p("span",Qt,[b(I(ut)),c(" "+s(i.value.city.title),1)])):h("",!0),(ke=(fe=i.value)==null?void 0:fe.reagent)!=null&&ke.name?(n(),p("span",Jt,[b(I(dt)),c(" کارشناس فروش: "+s(i.value.reagent.name),1)])):h("",!0),(he=i.value)!=null&&he.caj?(n(),p("span",qt,[b(I(lt)),c(" عضویت از "+s(I(Q)(i.value.caj)),1)])):h("",!0)])])]),e("div",Kt,[b(z,{onClick:a[0]||(a[0]=v=>I(r).back())},{icon:m(()=>[b(I(st))]),default:m(()=>[a[4]||(a[4]=c(" بازگشت ",-1))]),_:1}),le.value?(n(),R(z,{key:0,type:"primary",onClick:a[1]||(a[1]=v=>I(r).push({name:u.editRoute,params:{id:I(k)}}))},{icon:m(()=>[b(I(ot))]),default:m(()=>[a[5]||(a[5]=c(" ویرایش مشتری ",-1))]),_:1})):h("",!0)])]),e("section",Zt,[e("div",ea,[a[7]||(a[7]=e("div",{class:"kpi-label"},"بدهی طلایی",-1)),e("div",{class:F(["kpi-value",te((Ee=i.value)==null?void 0:Ee.remain)])},[c(s(x((xe=i.value)==null?void 0:xe.remain,3)),1),a[6]||(a[6]=e("small",null,"گرم",-1))],2),e("div",ta,s(q((Ie=i.value)==null?void 0:Ie.remain)),1)]),e("div",aa,[a[9]||(a[9]=e("div",{class:"kpi-label"},"بدهی ریالی",-1)),e("div",{class:F(["kpi-value",te((Se=i.value)==null?void 0:Se.rial_remain)])},[c(s(x((Ce=i.value)==null?void 0:Ce.rial_remain,0)),1),a[8]||(a[8]=e("small",null,"ریال",-1))],2),e("div",la,s(q((Te=i.value)==null?void 0:Te.rial_remain)),1)]),e("div",sa,[a[11]||(a[11]=e("div",{class:"kpi-label"},"سقف اعتبار",-1)),e("div",oa,[c(s(x((Ne=i.value)==null?void 0:Ne.gram_level,3)),1),a[10]||(a[10]=e("small",null,"گرم",-1))]),G.value!==null?(n(),p(S,{key:0},[b(oe,{percent:G.value,"stroke-color":ae.value,"show-info":!1,size:"small",class:"kpi-progress"},null,8,["percent","stroke-color"]),e("div",na,s(x(G.value,0))+"٪ از سقف استفاده شده",1)],64)):(n(),p("div",ia,"سقفی تعیین نشده"))]),e("div",ra,[a[13]||(a[13]=e("div",{class:"kpi-label"},"میزان فروش",-1)),e("div",ua,[c(s(x((Re=L.value)==null?void 0:Re.grams_sell,3)),1),a[12]||(a[12]=e("small",null,"گرم",-1))]),a[14]||(a[14]=e("div",{class:"kpi-foot"},"مجموع وزن سفارش‌ها",-1))]),e("div",da,[a[15]||(a[15]=e("div",{class:"kpi-label"},"سفارش‌ها",-1)),e("div",ca,s(x(((De=L.value)==null?void 0:De.total_order)??V.value.length,0)),1),e("div",va,[e("span",{class:F({"text-warning":Number((we=L.value)==null?void 0:we.open_order)>0})},s(x((Ae=L.value)==null?void 0:Ae.open_order,0))+" باز ",3),c(" · "+s(x(((Oe=L.value)==null?void 0:Oe.ledger_entries)??T.value.length,0))+" سند ",1)])])]),e("div",ma,[e("section",pa,[b(Xe,{"active-key":$.value,"onUpdate:activeKey":a[2]||(a[2]=v=>$.value=v),class:"detail-tabs"},{default:m(()=>[b(W,{key:"orders"},{tab:m(()=>[a[16]||(a[16]=c(" سفارش‌ها ",-1)),e("span",_a,s(x(V.value.length,0)),1)]),default:m(()=>[b(H,{size:"middle","data-source":V.value,columns:ie,pagination:X(10,V.value.length),locale:{emptyText:"سفارشی برای این مشتری ثبت نشده است"},"row-key":"id"},{bodyCell:m(({column:v,record:g})=>{var $e;return[v.dataIndex==="name"?(n(),p("span",ga,s(g.name),1)):v.dataIndex==="w"?(n(),p(S,{key:1},[c(s(x(g.w,3))+" ",1),a[17]||(a[17]=e("span",{class:"unit"},"گرم",-1))],64)):v.dataIndex==="status"?(n(),R(N,{key:2,color:($e=Y[g.status])==null?void 0:$e.color},{default:m(()=>{var Pe;return[c(s(((Pe=Y[g.status])==null?void 0:Pe.label)??g.status??"—"),1)]}),_:2},1032,["color"])):v.dataIndex==="branch"?(n(),p(S,{key:3},[c(s(g.branch??"—"),1)],64)):v.dataIndex==="caj"?(n(),p(S,{key:4},[c(s(I(Q)(g.caj)),1)],64)):h("",!0)]}),_:1},8,["data-source","pagination"])]),_:1}),b(W,{key:"documents"},{tab:m(()=>[a[18]||(a[18]=c(" سندهای مالی ",-1)),e("span",ya,s(x(T.value.length,0)),1)]),default:m(()=>[b(H,{size:"middle","data-source":T.value,columns:y,pagination:X(10,T.value.length),locale:{emptyText:"سندی برای این مشتری ثبت نشده است"},"row-key":"id"},{bodyCell:m(({column:v,record:g})=>[v.dataIndex==="type"?(n(),p(S,{key:0},[c(s(ee[g.type]??g.type),1)],64)):v.dataIndex==="value"?(n(),p(S,{key:1},[e("span",{class:F(g.direction==="DEBIT"?"debt":g.direction==="CREDIT"?"credit":"")},s(g.direction==="CREDIT"?"−":g.direction==="DEBIT"?"+":"")+s(x(g.value,g.currency==="RIAL"?0:3)),3),e("span",ba,s(g.currency==="RIAL"?"ریال":"گرم"),1)],64)):v.dataIndex==="confirmed"?(n(),R(ne,{key:2,status:g.confirmed===1?"success":"default",text:g.confirmed===1?"تایید شده":"تایید نشده"},null,8,["status","text"])):v.dataIndex==="note"?(n(),p("span",fa,s(g.note||"—"),1)):v.dataIndex==="caj"?(n(),p(S,{key:4},[c(s(I(Q)(g.caj)),1)],64)):h("",!0)]),_:1},8,["data-source","pagination"])]),_:1}),u.showWallet?(n(),R(W,{key:"wallet"},{tab:m(()=>[a[19]||(a[19]=c(" کیف پول ",-1)),e("span",ka,s(x(P.value.length,0)),1)]),default:m(()=>[b(H,{size:"middle","data-source":P.value,columns:o,pagination:X(10,P.value.length),locale:{emptyText:"اعتباری در کیف پول ثبت نشده است"},"row-key":"id"},{bodyCell:m(({column:v,record:g})=>[v.dataIndex==="value"?(n(),p(S,{key:0},[c(s(x(g.value,3))+" ",1),a[20]||(a[20]=e("span",{class:"unit"},"گرم",-1))],64)):v.dataIndex==="caj"?(n(),p(S,{key:1},[c(s(I(Q)(g.caj)),1)],64)):v.dataIndex==="expires_at"?(n(),p(S,{key:2},[c(s(g.expires_at?I(Q)(g.expires_at):"—"),1)],64)):h("",!0)]),_:1},8,["data-source","pagination"])]),_:1})):h("",!0),u.showActivity?(n(),R(W,{key:"activity"},{tab:m(()=>[a[21]||(a[21]=c(" فعالیت‌ها ",-1)),e("span",ha,s(x(j.value.length,0)),1)]),default:m(()=>[b(H,{size:"middle","data-source":j.value,columns:M,pagination:X(15,j.value.length),locale:{emptyText:"فعالیتی ثبت نشده است"},"row-key":"id"},{bodyCell:m(({column:v,record:g})=>[v.dataIndex==="caj"?(n(),p("span",Ea,s(I(it)(g.caj)),1)):h("",!0)]),_:1},8,["data-source","pagination"])]),_:1})):h("",!0)]),_:1},8,["active-key"])]),e("aside",xa,[e("section",Ia,[a[22]||(a[22]=e("h2",{class:"panel-title"},"اطلاعات هویتی و تماس",-1)),e("dl",Sa,[(n(!0),p(S,null,Be(se.value,v=>(n(),p("div",{key:v.label,class:"fact"},[e("dt",null,s(v.label),1),e("dd",{dir:v.ltr?"ltr":void 0},s(v.value||"—"),9,Ca)]))),128))])]),K.value.length?(n(),p("section",Ta,[a[23]||(a[23]=e("h2",{class:"panel-title"},"اطلاعات کسب‌وکار",-1)),e("dl",Na,[(n(!0),p(S,null,Be(K.value,v=>(n(),p("div",{key:v.label,class:"fact"},[e("dt",null,s(v.label),1),e("dd",null,s(v.value),1)]))),128))])])):h("",!0),b(Lt,{"customer-id":I(k)},null,8,["customer-id"])])])],4)]}),_:1},8,["spinning"])}}}),Pa=We(Ra,[["__scopeId","data-v-46230ed7"]]);export{Pa as C}; +import{c as b,I as Je,aa as Me,ab as Ue,ac as qe,ad as D,ae as ue,af as Ke,ag as Ze,ah as et,ai as je,aj as tt,d as Fe,u as Ve,x as Ge,o as n,b as p,p as e,a as R,w as m,f as c,F as S,t as s,q as F,i as h,B as He,m as A,s as O,y as B,J as ze,r as C,_ as We,k as at,h as I,C as lt,A as st,E as ot,e as Be,l as nt}from"./index-CpVArufm.js";import{j as Q,b as it}from"./filters-CoNJlguG.js";import{m as rt}from"./index-DjZc5EYL.js";import{E as ut}from"./EnvironmentOutlined-BZFp8i4M.js";import{U as dt}from"./UserOutlined-DeX82IP7.js";var ct={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M877.1 238.7L770.6 132.3c-13-13-30.4-20.3-48.8-20.3s-35.8 7.2-48.8 20.3L558.3 246.8c-13 13-20.3 30.5-20.3 48.9 0 18.5 7.2 35.8 20.3 48.9l89.6 89.7a405.46 405.46 0 01-86.4 127.3c-36.7 36.9-79.6 66-127.2 86.6l-89.6-89.7c-13-13-30.4-20.3-48.8-20.3a68.2 68.2 0 00-48.8 20.3L132.3 673c-13 13-20.3 30.5-20.3 48.9 0 18.5 7.2 35.8 20.3 48.9l106.4 106.4c22.2 22.2 52.8 34.9 84.2 34.9 6.5 0 12.8-.5 19.2-1.6 132.4-21.8 263.8-92.3 369.9-198.3C818 606 888.4 474.6 910.4 342.1c6.3-37.6-6.3-76.3-33.3-103.4zm-37.6 91.5c-19.5 117.9-82.9 235.5-178.4 331s-213 158.9-330.9 178.4c-14.8 2.5-30-2.5-40.8-13.2L184.9 721.9 295.7 611l119.8 120 .9.9 21.6-8a481.29 481.29 0 00285.7-285.8l8-21.6-120.8-120.7 110.8-110.9 104.5 104.5c10.8 10.8 15.8 26 13.3 40.8z"}}]},name:"phone",theme:"outlined"};function Le(u){for(var l=1;lnew Me(u).setAlpha(l).toRgbString(),J=(u,l)=>new Me(u).lighten(l).toHexString(),mt=u=>{const l=Ue(u,{theme:"dark"});return{1:l[0],2:l[1],3:l[2],4:l[3],5:l[6],6:l[5],7:l[4],8:l[6],9:l[5],10:l[4]}},pt=(u,l)=>{const d=u||"#000",r=l||"#fff";return{colorBgBase:d,colorTextBase:r,colorText:U(r,.85),colorTextSecondary:U(r,.65),colorTextTertiary:U(r,.45),colorTextQuaternary:U(r,.25),colorFill:U(r,.18),colorFillSecondary:U(r,.12),colorFillTertiary:U(r,.08),colorFillQuaternary:U(r,.04),colorBgElevated:J(d,12),colorBgContainer:J(d,8),colorBgLayout:J(d,0),colorBgSpotlight:J(d,26),colorBorder:J(d,26),colorBorderSecondary:J(d,19)}},_t=(u,l)=>{const d=Object.keys(qe).map(E=>{const f=Ue(u[E],{theme:"dark"});return new Array(10).fill(1).reduce((k,_,$)=>(k[`${E}-${$+1}`]=f[$],k),{})}).reduce((E,f)=>(E=D(D({},E),f),E),{}),r=l??ue(u);return D(D(D({},r),d),Ke(u,{generateColorPalettes:mt,generateNeutralColorPalettes:pt}))};function gt(u){const{sizeUnit:l,sizeStep:d}=u,r=d-2;return{sizeXXL:l*(r+10),sizeXL:l*(r+6),sizeLG:l*(r+2),sizeMD:l*(r+2),sizeMS:l*(r+1),size:l*r,sizeSM:l*r,sizeXS:l*(r-1),sizeXXS:l*(r-1)}}const yt=(u,l)=>{const d=l??ue(u),r=d.fontSizeSM,E=d.controlHeight-4;return D(D(D(D(D({},d),gt(l??u)),Ze(r)),{controlHeight:E}),et(D(D({},d),{controlHeight:E})))};function bt(){const[u,l,d]=tt();return{theme:u,token:l,hashId:d}}const Ye={defaultConfig:je,defaultSeed:je.token,useToken:bt,defaultAlgorithm:ue,darkAlgorithm:_t,compactAlgorithm:yt},ft={class:"acc-head"},kt={class:"acc-body"},ht={class:"acc-code"},Et={class:"code",dir:"ltr"},xt={class:"origin"},It={key:1,class:"muted"},St={class:"balances"},Ct={class:"balance"},Tt={class:"line"},Nt={class:"line"},Rt={class:"hint"},Dt={class:"balance"},wt={class:"line"},At={class:"line"},Ot={key:0,class:"last-job"},$t={key:0,class:"warn"},Pt={class:"link-form"},jt={class:"label"},zt={class:"link-row"},Bt=Fe({__name:"CustomerAccountingCard",props:{customerId:{}},setup(u){const l=u,d={LINKED:"جفت با موبایل",IMPORTED:"وارد شده از حسابداری",PUSHED:"ساخته شده از اپ",MANUAL:"دستی"},r={PENDING:"در صف",SENDING:"در حال ارسال",SENT:"ارسال شد",FAILED:"ناموفق",NEEDS_REVIEW:"نیاز به بررسی",RESOLVED:"حل‌شده"},E={PENDING:"default",SENDING:"processing",SENT:"success",FAILED:"error",NEEDS_REVIEW:"warning",RESOLVED:"success"},f=Ve(),{token:k}=Ye.useToken(),_=A(null),$=A(!1),i=A(""),L=O(()=>({"--acc-bg":k.value.colorBgContainer,"--acc-border":k.value.colorBorderSecondary,"--acc-fill":k.value.colorFillQuaternary,"--acc-text":k.value.colorText,"--acc-text-2":k.value.colorTextSecondary,"--acc-text-3":k.value.colorTextTertiary,"--acc-error":k.value.colorError,"--acc-success":k.value.colorSuccess})),V=O(()=>!!f.hasPermission("config.accounting")&&_.value&&_.value.provider!=="none"),T=O(()=>{var y,o;return(o=(y=_.value)==null?void 0:y.jobs)==null?void 0:o[0]}),P=(y,o)=>y==null?"—":Number(y).toLocaleString("fa-IR",{maximumFractionDigits:o}),j=y=>Number(y)>0?"debt":Number(y)<0?"credit":"",Z=y=>y?rt(y).format("jYYYY/jMM/jDD HH:mm"):"";async function Y(){if(f.hasPermission("config.accounting")){$.value=!0;try{const{data:y}=await B.get(`admin/accounting/customers/${l.customerId}`);_.value=y}catch{_.value=null}finally{$.value=!1}}}async function ee(){var y,o;try{await B.post("admin/accounting/links",{entityType:"CUSTOMER",entityId:l.customerId,externalCode:i.value.trim()}),ze.success("لینک شد"),i.value="",Y()}catch(M){ze.error(((o=(y=M==null?void 0:M.response)==null?void 0:y.data)==null?void 0:o.message)??"خطا")}}async function ie(){var y;(y=_.value)!=null&&y.link&&(await B.delete(`admin/accounting/links/${_.value.link.id}`),Y())}return Ge(Y),(y,o)=>{var G;const M=C("a-tag"),x=C("a-badge"),te=C("a-input"),q=C("a-button"),X=C("a-popconfirm"),re=C("a-spin");return V.value?(n(),p("section",{key:0,class:"acc-card",style:He(L.value)},[e("header",ft,[o[4]||(o[4]=e("h2",null,"حسابداری",-1)),(G=_.value)!=null&&G.link?(n(),R(M,{key:0,color:"success"},{default:m(()=>[...o[2]||(o[2]=[c("لینک شده",-1)])]),_:1})):(n(),R(M,{key:1,color:"warning"},{default:m(()=>[...o[3]||(o[3]=[c("لینک نشده",-1)])]),_:1}))]),b(re,{spinning:$.value},{default:m(()=>{var ae,le,se,K,t,a,w,N,z,oe,H,W;return[e("div",kt,[e("div",ht,[o[5]||(o[5]=e("span",{class:"label"},"کد حساب",-1)),(ae=_.value)!=null&&ae.link?(n(),p(S,{key:0},[e("span",Et,s(_.value.link.externalCode),1),e("span",xt,s(d[_.value.link.origin]??_.value.link.origin),1)],64)):(n(),p("span",It,"—"))]),e("div",St,[e("div",Ct,[o[10]||(o[10]=e("div",{class:"label"},"مانده‌ی حسابداری",-1)),(le=_.value)!=null&&le.accounting?(n(),p(S,{key:0},[e("div",Tt,[e("span",{class:F(j(_.value.accounting.gold))},s(P(_.value.accounting.gold,3)),3),o[6]||(o[6]=e("small",null,"گرم",-1))]),e("div",Nt,[e("span",{class:F(j(_.value.accounting.rial))},s(P(_.value.accounting.rial,0)),3),o[7]||(o[7]=e("small",null,"ریال",-1))]),e("div",Rt,s(Z(_.value.accounting.at)),1)],64)):(n(),p(S,{key:1},[o[8]||(o[8]=e("div",{class:"line muted"},"—",-1)),o[9]||(o[9]=e("div",{class:"hint"},"هنوز دریافت نشده",-1))],64))]),e("div",Dt,[o[13]||(o[13]=e("div",{class:"label"},"مانده‌ی دفتر اپ",-1)),e("div",wt,[e("span",{class:F(j((K=(se=_.value)==null?void 0:se.internal)==null?void 0:K.gold))},s(P((a=(t=_.value)==null?void 0:t.internal)==null?void 0:a.gold,3)),3),o[11]||(o[11]=e("small",null,"گرم",-1))]),e("div",At,[e("span",{class:F(j((N=(w=_.value)==null?void 0:w.internal)==null?void 0:N.rial))},s(P((oe=(z=_.value)==null?void 0:z.internal)==null?void 0:oe.rial,0)),3),o[12]||(o[12]=e("small",null,"ریال",-1))]),o[14]||(o[14]=e("div",{class:"hint"},"مبنای سقف اعتبار",-1))])]),T.value?(n(),p("div",Ot,[b(x,{status:E[T.value.status]??"default"},null,8,["status"]),c(" آخرین ارسال: "+s(r[T.value.status]??T.value.status)+" — "+s(Z(T.value.updatedAt))+" ",1),T.value.lastError?(n(),p("div",$t,s(T.value.lastError),1)):h("",!0)])):h("",!0),e("div",Pt,[e("div",jt,s((H=_.value)!=null&&H.link?"تغییر لینک":"لینک دستی"),1),e("div",zt,[b(te,{value:i.value,"onUpdate:value":o[0]||(o[0]=ne=>i.value=ne),dir:"ltr",placeholder:"کد حساب در حسابداری",onPressEnter:o[1]||(o[1]=ne=>i.value.trim()&&ee())},null,8,["value"]),b(q,{type:"primary",ghost:"",disabled:!i.value.trim(),onClick:ee},{default:m(()=>[...o[15]||(o[15]=[c("لینک",-1)])]),_:1},8,["disabled"])]),(W=_.value)!=null&&W.link?(n(),R(X,{key:0,title:"لینک حذف شود؟",onConfirm:ie},{default:m(()=>[b(q,{type:"link",danger:"",size:"small",class:"unlink"},{default:m(()=>[...o[16]||(o[16]=[c("حذف لینک فعلی",-1)])]),_:1})]),_:1})):h("",!0)])])]}),_:1},8,["spinning"])],4)):h("",!0)}}}),Lt=We(Bt,[["__scopeId","data-v-17e381b4"]]),Mt={class:"panel hero"},Ut={class:"hero-main"},Ft={class:"hero-text"},Vt={class:"hero-eyebrow"},Gt={class:"hero-name"},Ht={class:"hero-tags"},Wt={class:"hero-meta"},Yt={key:0,class:"meta-item"},Xt={dir:"ltr"},Qt={key:1,class:"meta-item"},Jt={key:2,class:"meta-item"},qt={key:3,class:"meta-item"},Kt={class:"hero-actions"},Zt={class:"kpis"},ea={class:"panel kpi"},ta={class:"kpi-foot"},aa={class:"panel kpi"},la={class:"kpi-foot"},sa={class:"panel kpi"},oa={class:"kpi-value"},na={class:"kpi-foot"},ia={key:1,class:"kpi-foot"},ra={class:"panel kpi"},ua={class:"kpi-value"},da={class:"panel kpi"},ca={class:"kpi-value"},va={class:"kpi-foot"},ma={class:"layout"},pa={class:"panel layout-main"},_a={class:"tab-count"},ga={key:0,class:"mono",dir:"ltr"},ya={class:"tab-count"},ba={class:"unit"},fa={key:3,class:"note"},ka={class:"tab-count"},ha={class:"tab-count"},Ea={key:0,dir:"ltr"},xa={class:"layout-side"},Ia={class:"panel"},Sa={class:"facts"},Ca=["dir"],Ta={key:0,class:"panel"},Na={class:"facts"},Ra=Fe({__name:"CustomerDetail",props:{title:{default:"مشاهده اطلاعات مشتری"},showWallet:{type:Boolean,default:!1},showActivity:{type:Boolean,default:!1},defaultTab:{default:"orders"},editRoute:{default:void 0}},setup(u){const l=u,d=at(),r=nt(),E=Ve(),{token:f}=Ye.useToken(),k=d.params.id,_=A(!1),$=A(l.defaultTab),i=A(void 0),L=A(void 0),V=A([]),T=A([]),P=A([]),j=A([]),Z=O(()=>({"--cd-bg":f.value.colorBgContainer,"--cd-border":f.value.colorBorderSecondary,"--cd-text":f.value.colorText,"--cd-text-2":f.value.colorTextSecondary,"--cd-text-3":f.value.colorTextTertiary,"--cd-fill":f.value.colorFillQuaternary,"--cd-primary":f.value.colorPrimary,"--cd-primary-bg":f.value.colorPrimaryBg,"--cd-error":f.value.colorError,"--cd-success":f.value.colorSuccess,"--cd-warning":f.value.colorWarning})),Y={SUSPENDED:{label:"معلق (عبور از سقف)",color:"error"},PLACED:{label:"ثبت سفارش",color:"default"},ADMIN_APPROVED:{label:"تأیید مدیر",color:"processing"},SOURCING:{label:"در حال تأمین",color:"processing"},PREPARING:{label:"در حال آماده‌سازی",color:"processing"},DELIVERED_TO_AGENT:{label:"تحویل مسئول فروش",color:"cyan"},DELIVERED_TO_CUSTOMER:{label:"تحویل مشتری",color:"success"},CANCELLED:{label:"لغو شده",color:"default"}},ee={ORDER_STOCK:"سفارش کالای موجود",ORDER_PRE_ORDER:"پیش‌سفارش",REPAYMENT_MELTED_GOLD:"تسویه با آبشده",REPAYMENT_TRANSFER:"تسویه با واریز",REPAYMENT_CHEQUE:"تسویه با چک",REPAYMENT_CASH:"تسویه نقدی",WALLET_BONUS:"پاداش کیف پول",ADJUSTMENT:"اصلاحیه"},ie=[{title:"شماره سفارش",dataIndex:"name"},{title:"وضعیت",dataIndex:"status"},{title:"وزن",dataIndex:"w"},{title:"تعداد آیتم",dataIndex:"items_count",align:"center"},{title:"شعبه",dataIndex:"branch"},{title:"تاریخ",dataIndex:"caj"}],y=[{title:"نوع",dataIndex:"type"},{title:"مقدار",dataIndex:"value"},{title:"وضعیت",dataIndex:"confirmed"},{title:"توضیحات",dataIndex:"note",ellipsis:!0},{title:"تاریخ",dataIndex:"caj"}],o=[{title:"مقدار",dataIndex:"value"},{title:"تاریخ اعطا",dataIndex:"caj"},{title:"انقضا",dataIndex:"expires_at"}],M=[{title:"عملیات",dataIndex:"action"},{title:"جزئیات",dataIndex:"detail"},{title:"تاریخ",dataIndex:"caj"}],x=(t,a)=>t==null||t===""||Number.isNaN(Number(t))?"—":Number(t).toLocaleString("fa-IR",{maximumFractionDigits:a}),te=t=>Number(t)>0?"debt":Number(t)<0?"credit":"",q=t=>t==null?"":Number(t)>0?"بدهکار":Number(t)<0?"بستانکار":"تسویه",X=(t,a)=>a>t?{pageSize:t,size:"small",showSizeChanger:!1}:!1,re=O(()=>{var t;return(((t=i.value)==null?void 0:t.name)??"").trim().charAt(0)||"؟"}),G=O(()=>{var w,N;const t=Number((w=i.value)==null?void 0:w.gram_level);if(!t||t<=0)return null;const a=Math.max(Number((N=i.value)==null?void 0:N.remain)||0,0);return Math.min(Math.round(a/t*100),100)}),ae=O(()=>{const t=G.value??0;return t>=90?f.value.colorError:t>=70?f.value.colorWarning:f.value.colorPrimary}),le=O(()=>{if(!l.editRoute||!r.hasRoute(l.editRoute))return!1;const t=r.resolve({name:l.editRoute,params:{id:k}}).meta;return t.superAdminOnly&&!E.isSuperAdmin?!1:!t.role||!!E.hasPermission(t.role)}),se=O(()=>{var a;const t=i.value;return[{label:"موبایل",value:t==null?void 0:t.mobile,ltr:!0},{label:"تلفن ثابت",value:t==null?void 0:t.phone,ltr:!0},{label:"کد ملی",value:t==null?void 0:t.national_code,ltr:!0},{label:"تاریخ تولد",value:t!=null&&t.birth_date?Q(t.birth_date):null},{label:"شهر",value:(a=t==null?void 0:t.city)==null?void 0:a.title},{label:"آدرس",value:t==null?void 0:t.address}]}),K=O(()=>{var a;const t=i.value;return[{label:"نام فروشگاه",value:t==null?void 0:t.store_name},{label:"پاساژ",value:t==null?void 0:t.pasazh_name},{label:"منطقه",value:t==null?void 0:t.zone},{label:"کد عضویت",value:t==null?void 0:t.mcode},{label:"کارشناس فروش",value:(a=t==null?void 0:t.reagent)==null?void 0:a.name},{label:"درصد اجرت",value:(t==null?void 0:t.percent)!==null&&(t==null?void 0:t.percent)!==void 0&&(t==null?void 0:t.percent)!==""?`${x(t.percent,2)}٪`:null}].filter(w=>w.value)});return Ge(async()=>{try{_.value=!0;const[t,a,w,N]=await Promise.all([B.get(`customer/${k}`),B.get(`major/dashboard/${k}`).catch(()=>({data:void 0})),B.get(`admin/customers-omde/${k}/orders`).catch(()=>({data:[]})),B.get(`admin/customers-omde/${k}/documents`).catch(()=>({data:[]}))]);if(i.value=t.data,L.value=a.data,V.value=w.data,T.value=N.data,l.showWallet){const z=await B.get(`admin/customers-omde/${k}/wallet`).catch(()=>({data:[]}));P.value=z.data}if(l.showActivity){const z=await B.get(`log/ago/${k}`).catch(()=>({data:[]}));j.value=z.data}}catch(t){console.log(t)}finally{_.value=!1}}),(t,a)=>{const w=C("a-avatar"),N=C("a-tag"),z=C("a-button"),oe=C("a-progress"),H=C("a-table"),W=C("a-tab-pane"),ne=C("a-badge"),Xe=C("a-tabs"),Qe=C("a-spin");return n(),R(Qe,{spinning:_.value},{default:m(()=>{var ce,ve,me,pe,_e,ge,ye,be,fe,ke,he,Ee,xe,Ie,Se,Ce,Te,Ne,Re,De,we,Ae,Oe;return[e("div",{class:"customer-detail",style:He(Z.value)},[e("section",Mt,[e("div",Ut,[b(w,{size:64,src:(ve=(ce=i.value)==null?void 0:ce.image)==null?void 0:ve.image,class:"hero-avatar"},{default:m(()=>[c(s(re.value),1)]),_:1},8,["src"]),e("div",Ft,[e("div",Vt,s(u.title),1),e("h1",Gt,s(((me=i.value)==null?void 0:me.name)||"—"),1),e("div",Ht,[i.value?(n(),R(N,{key:0,color:i.value.active===1?"success":"error"},{default:m(()=>[c(s(i.value.active===1?"فعال":"غیرفعال"),1)]),_:1},8,["color"])):h("",!0),i.value?(n(),R(N,{key:1,color:i.value.sts===1?"processing":"warning"},{default:m(()=>[c(s(i.value.sts===1?"مجاز به سفارش":"عدم سفارش"),1)]),_:1},8,["color"])):h("",!0),(pe=i.value)!=null&&pe.type_str?(n(),R(N,{key:2},{default:m(()=>[c(s(i.value.type_str),1)]),_:1})):h("",!0),((_e=i.value)==null?void 0:_e.is_archive)===1?(n(),R(N,{key:3,color:"default"},{default:m(()=>[...a[3]||(a[3]=[c("بایگانی‌شده",-1)])]),_:1})):h("",!0)]),e("div",Wt,[(ge=i.value)!=null&&ge.mobile?(n(),p("span",Yt,[b(I(de)),e("span",Xt,s(i.value.mobile),1)])):h("",!0),(be=(ye=i.value)==null?void 0:ye.city)!=null&&be.title?(n(),p("span",Qt,[b(I(ut)),c(" "+s(i.value.city.title),1)])):h("",!0),(ke=(fe=i.value)==null?void 0:fe.reagent)!=null&&ke.name?(n(),p("span",Jt,[b(I(dt)),c(" کارشناس فروش: "+s(i.value.reagent.name),1)])):h("",!0),(he=i.value)!=null&&he.caj?(n(),p("span",qt,[b(I(lt)),c(" عضویت از "+s(I(Q)(i.value.caj)),1)])):h("",!0)])])]),e("div",Kt,[b(z,{onClick:a[0]||(a[0]=v=>I(r).back())},{icon:m(()=>[b(I(st))]),default:m(()=>[a[4]||(a[4]=c(" بازگشت ",-1))]),_:1}),le.value?(n(),R(z,{key:0,type:"primary",onClick:a[1]||(a[1]=v=>I(r).push({name:u.editRoute,params:{id:I(k)}}))},{icon:m(()=>[b(I(ot))]),default:m(()=>[a[5]||(a[5]=c(" ویرایش مشتری ",-1))]),_:1})):h("",!0)])]),e("section",Zt,[e("div",ea,[a[7]||(a[7]=e("div",{class:"kpi-label"},"بدهی طلایی",-1)),e("div",{class:F(["kpi-value",te((Ee=i.value)==null?void 0:Ee.remain)])},[c(s(x((xe=i.value)==null?void 0:xe.remain,3)),1),a[6]||(a[6]=e("small",null,"گرم",-1))],2),e("div",ta,s(q((Ie=i.value)==null?void 0:Ie.remain)),1)]),e("div",aa,[a[9]||(a[9]=e("div",{class:"kpi-label"},"بدهی ریالی",-1)),e("div",{class:F(["kpi-value",te((Se=i.value)==null?void 0:Se.rial_remain)])},[c(s(x((Ce=i.value)==null?void 0:Ce.rial_remain,0)),1),a[8]||(a[8]=e("small",null,"ریال",-1))],2),e("div",la,s(q((Te=i.value)==null?void 0:Te.rial_remain)),1)]),e("div",sa,[a[11]||(a[11]=e("div",{class:"kpi-label"},"سقف اعتبار",-1)),e("div",oa,[c(s(x((Ne=i.value)==null?void 0:Ne.gram_level,3)),1),a[10]||(a[10]=e("small",null,"گرم",-1))]),G.value!==null?(n(),p(S,{key:0},[b(oe,{percent:G.value,"stroke-color":ae.value,"show-info":!1,size:"small",class:"kpi-progress"},null,8,["percent","stroke-color"]),e("div",na,s(x(G.value,0))+"٪ از سقف استفاده شده",1)],64)):(n(),p("div",ia,"سقفی تعیین نشده"))]),e("div",ra,[a[13]||(a[13]=e("div",{class:"kpi-label"},"میزان فروش",-1)),e("div",ua,[c(s(x((Re=L.value)==null?void 0:Re.grams_sell,3)),1),a[12]||(a[12]=e("small",null,"گرم",-1))]),a[14]||(a[14]=e("div",{class:"kpi-foot"},"مجموع وزن سفارش‌ها",-1))]),e("div",da,[a[15]||(a[15]=e("div",{class:"kpi-label"},"سفارش‌ها",-1)),e("div",ca,s(x(((De=L.value)==null?void 0:De.total_order)??V.value.length,0)),1),e("div",va,[e("span",{class:F({"text-warning":Number((we=L.value)==null?void 0:we.open_order)>0})},s(x((Ae=L.value)==null?void 0:Ae.open_order,0))+" باز ",3),c(" · "+s(x(((Oe=L.value)==null?void 0:Oe.ledger_entries)??T.value.length,0))+" سند ",1)])])]),e("div",ma,[e("section",pa,[b(Xe,{"active-key":$.value,"onUpdate:activeKey":a[2]||(a[2]=v=>$.value=v),class:"detail-tabs"},{default:m(()=>[b(W,{key:"orders"},{tab:m(()=>[a[16]||(a[16]=c(" سفارش‌ها ",-1)),e("span",_a,s(x(V.value.length,0)),1)]),default:m(()=>[b(H,{size:"middle","data-source":V.value,columns:ie,pagination:X(10,V.value.length),locale:{emptyText:"سفارشی برای این مشتری ثبت نشده است"},"row-key":"id"},{bodyCell:m(({column:v,record:g})=>{var $e;return[v.dataIndex==="name"?(n(),p("span",ga,s(g.name),1)):v.dataIndex==="w"?(n(),p(S,{key:1},[c(s(x(g.w,3))+" ",1),a[17]||(a[17]=e("span",{class:"unit"},"گرم",-1))],64)):v.dataIndex==="status"?(n(),R(N,{key:2,color:($e=Y[g.status])==null?void 0:$e.color},{default:m(()=>{var Pe;return[c(s(((Pe=Y[g.status])==null?void 0:Pe.label)??g.status??"—"),1)]}),_:2},1032,["color"])):v.dataIndex==="branch"?(n(),p(S,{key:3},[c(s(g.branch??"—"),1)],64)):v.dataIndex==="caj"?(n(),p(S,{key:4},[c(s(I(Q)(g.caj)),1)],64)):h("",!0)]}),_:1},8,["data-source","pagination"])]),_:1}),b(W,{key:"documents"},{tab:m(()=>[a[18]||(a[18]=c(" سندهای مالی ",-1)),e("span",ya,s(x(T.value.length,0)),1)]),default:m(()=>[b(H,{size:"middle","data-source":T.value,columns:y,pagination:X(10,T.value.length),locale:{emptyText:"سندی برای این مشتری ثبت نشده است"},"row-key":"id"},{bodyCell:m(({column:v,record:g})=>[v.dataIndex==="type"?(n(),p(S,{key:0},[c(s(ee[g.type]??g.type),1)],64)):v.dataIndex==="value"?(n(),p(S,{key:1},[e("span",{class:F(g.direction==="DEBIT"?"debt":g.direction==="CREDIT"?"credit":"")},s(g.direction==="CREDIT"?"−":g.direction==="DEBIT"?"+":"")+s(x(g.value,g.currency==="RIAL"?0:3)),3),e("span",ba,s(g.currency==="RIAL"?"ریال":"گرم"),1)],64)):v.dataIndex==="confirmed"?(n(),R(ne,{key:2,status:g.confirmed===1?"success":"default",text:g.confirmed===1?"تایید شده":"تایید نشده"},null,8,["status","text"])):v.dataIndex==="note"?(n(),p("span",fa,s(g.note||"—"),1)):v.dataIndex==="caj"?(n(),p(S,{key:4},[c(s(I(Q)(g.caj)),1)],64)):h("",!0)]),_:1},8,["data-source","pagination"])]),_:1}),u.showWallet?(n(),R(W,{key:"wallet"},{tab:m(()=>[a[19]||(a[19]=c(" کیف پول ",-1)),e("span",ka,s(x(P.value.length,0)),1)]),default:m(()=>[b(H,{size:"middle","data-source":P.value,columns:o,pagination:X(10,P.value.length),locale:{emptyText:"اعتباری در کیف پول ثبت نشده است"},"row-key":"id"},{bodyCell:m(({column:v,record:g})=>[v.dataIndex==="value"?(n(),p(S,{key:0},[c(s(x(g.value,3))+" ",1),a[20]||(a[20]=e("span",{class:"unit"},"گرم",-1))],64)):v.dataIndex==="caj"?(n(),p(S,{key:1},[c(s(I(Q)(g.caj)),1)],64)):v.dataIndex==="expires_at"?(n(),p(S,{key:2},[c(s(g.expires_at?I(Q)(g.expires_at):"—"),1)],64)):h("",!0)]),_:1},8,["data-source","pagination"])]),_:1})):h("",!0),u.showActivity?(n(),R(W,{key:"activity"},{tab:m(()=>[a[21]||(a[21]=c(" فعالیت‌ها ",-1)),e("span",ha,s(x(j.value.length,0)),1)]),default:m(()=>[b(H,{size:"middle","data-source":j.value,columns:M,pagination:X(15,j.value.length),locale:{emptyText:"فعالیتی ثبت نشده است"},"row-key":"id"},{bodyCell:m(({column:v,record:g})=>[v.dataIndex==="caj"?(n(),p("span",Ea,s(I(it)(g.caj)),1)):h("",!0)]),_:1},8,["data-source","pagination"])]),_:1})):h("",!0)]),_:1},8,["active-key"])]),e("aside",xa,[e("section",Ia,[a[22]||(a[22]=e("h2",{class:"panel-title"},"اطلاعات هویتی و تماس",-1)),e("dl",Sa,[(n(!0),p(S,null,Be(se.value,v=>(n(),p("div",{key:v.label,class:"fact"},[e("dt",null,s(v.label),1),e("dd",{dir:v.ltr?"ltr":void 0},s(v.value||"—"),9,Ca)]))),128))])]),K.value.length?(n(),p("section",Ta,[a[23]||(a[23]=e("h2",{class:"panel-title"},"اطلاعات کسب‌وکار",-1)),e("dl",Na,[(n(!0),p(S,null,Be(K.value,v=>(n(),p("div",{key:v.label,class:"fact"},[e("dt",null,s(v.label),1),e("dd",null,s(v.value),1)]))),128))])])):h("",!0),b(Lt,{"customer-id":I(k)},null,8,["customer-id"])])])],4)]}),_:1},8,["spinning"])}}}),Pa=We(Ra,[["__scopeId","data-v-46230ed7"]]);export{Pa as C}; diff --git a/apps/admin-panel/dist/assets/Dashboard-DWJ-7hU1.js b/apps/admin-panel/dist/assets/Dashboard-D29XNQ4P.js similarity index 98% rename from apps/admin-panel/dist/assets/Dashboard-DWJ-7hU1.js rename to apps/admin-panel/dist/assets/Dashboard-D29XNQ4P.js index fb53610..8f36fc7 100644 --- a/apps/admin-panel/dist/assets/Dashboard-DWJ-7hU1.js +++ b/apps/admin-panel/dist/assets/Dashboard-D29XNQ4P.js @@ -1 +1 @@ -import{j as M,p as j}from"./filters-BPYO-DKN.js";import{c as h,I,d as Ne,v as Pe,u as Te,x as Be,y as Ae,a as b,w as S,m as K,z as Re,r as O,o as d,p as e,h as g,C as je,t as o,f as v,i as P,q as ee,b as y,B as T,F as L,e as te,D as He,s as c,_ as Ie}from"./index-CJij4X3l.js";import{U as De,D as Fe}from"./UserAddOutlined-Dac4nUC8.js";import{C as Ge}from"./CreditCardOutlined-Cz1giwnr.js";import"./index-CKg-8s_Z.js";var $e={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M926 164H94c-17.7 0-32 14.3-32 32v640c0 17.7 14.3 32 32 32h832c17.7 0 32-14.3 32-32V196c0-17.7-14.3-32-32-32zm-40 632H134V236h752v560zm-658.9-82.3c3.1 3.1 8.2 3.1 11.3 0l172.5-172.5 114.4 114.5c3.1 3.1 8.2 3.1 11.3 0l297-297.2c3.1-3.1 3.1-8.2 0-11.3l-36.8-36.8a8.03 8.03 0 00-11.3 0L531 565 416.6 450.5a8.03 8.03 0 00-11.3 0l-214.9 215a8.03 8.03 0 000 11.3l36.7 36.9z"}}]},name:"fund",theme:"outlined"};function se(r){for(var n=1;np.isSuperAdmin),ne=c(()=>a.isMobile?240:300),oe=c(()=>a.isMobile?220:240),re=c(()=>a.isMobile?260:320),l=Re({customerCount:0,allgram:0,ordercount:0,reagent:[],lastOrder:[],sumLastOrder:0,sumLastOrderMonth:0,ordersTrend:[],statusBreakdown:[],channelBreakdown:[],topProducts:[],goldPricePerGram:null,totalCustomerDebtGrams:0}),A=[C,k],ie=[H,C,C,H,H,k,k,Kt],z={fontFamily:"inherit",parentHeightOffset:0,toolbar:{show:!1}},R={borderColor:"#eef0f5",strokeDashArray:4},de=[{title:"شماره سفارش",dataIndex:"name"},{title:"مشتری",dataIndex:"customer"},{title:"وزن",dataIndex:"w"},{title:"وضعیت",dataIndex:"sts_str"},{title:"تاریخ",dataIndex:"caj"}];function G(s){return{success:"green",warning:"orange",danger:"red",primary:"blue"}[s]??""}function m(s){return j(s??0)||"0"}const ce=c(()=>M(new Date().toISOString())),ue=c(()=>l.goldPricePerGram?`${j(Math.round(Number(l.goldPricePerGram)))} تومان`:"—"),$=c(()=>j(Number(l.totalCustomerDebtGrams??0).toFixed(2))),E=c(()=>{const s=Number(l.sumLastOrder??0),t=Number(l.sumLastOrderMonth??0);return s>0?(t/s).toFixed(2):"0"}),W=c(()=>(l.ordersTrend??[]).map(s=>s.total)),pe={chart:{...z,sparkline:{enabled:!0},animations:{enabled:!1}},colors:[k],stroke:{curve:"smooth",width:2},fill:{type:"gradient",gradient:{opacityFrom:.35,opacityTo:0}},tooltip:{enabled:!1}},w=K("area"),_e=[{label:"ناحیه‌ای",value:"area"},{label:"ستونی",value:"bar"}],he=c(()=>(l.ordersTrend??[]).reduce((s,t)=>s+Number(t.retail??0),0)),me=c(()=>(l.ordersTrend??[]).reduce((s,t)=>s+Number(t.wholesale??0),0)),be=c(()=>{const s=l.ordersTrend??[],t={name:"عمده فروشی",data:s.map(_=>_.wholesale)};return u.value?[{name:"تک فروشی",data:s.map(_=>_.retail)},t]:[t]}),ge=c(()=>({chart:{...z,stacked:w.value==="bar"},colors:u.value?[C,k]:[k],dataLabels:{enabled:!1},stroke:w.value==="area"?{curve:"smooth",width:2.5}:{width:0},fill:w.value==="area"?{type:"gradient",gradient:{opacityFrom:.3,opacityTo:.02}}:{opacity:1},plotOptions:{bar:{columnWidth:"55%",borderRadius:3,borderRadiusApplication:"end"}},legend:{show:!1},grid:{...R,padding:a.isMobile?{left:4,right:4}:{}},markers:{size:0,hover:{size:5}},xaxis:{categories:(l.ordersTrend??[]).map(s=>String(M(s.date)??"").slice(5)),tickAmount:a.isMobile?6:10,axisBorder:{show:!1},axisTicks:{show:!1},labels:{rotate:0,hideOverlappingLabels:!0,style:{colors:x,fontSize:a.isMobile?"10px":"12px"}}},yaxis:{labels:{style:{colors:x,fontSize:a.isMobile?"10px":"12px"},formatter:s=>String(Math.round(s))}},tooltip:{shared:!0,intersect:!1,x:{formatter:(s,t)=>{var _;return M((_=(l.ordersTrend??[])[t==null?void 0:t.dataPointIndex])==null?void 0:_.date)}}}})),U=c(()=>(l.channelBreakdown??[]).map(s=>Number(s.count??0))),fe=c(()=>({chart:{...z},labels:(l.channelBreakdown??[]).map(s=>s.label),colors:A,legend:{show:!1},dataLabels:{enabled:!1},stroke:{width:3,colors:["#fff"]},plotOptions:{pie:{donut:{size:"74%",labels:{show:!0,name:{fontSize:"13px",color:x,offsetY:18},value:{fontSize:"16px",fontWeight:500,color:C,offsetY:-14},total:{show:!0,label:"کل سفارش‌ها",color:x,fontSize:"13px",formatter:s=>String(s.globals.seriesTotals.reduce((t,_)=>t+_,0))}}}}}})),ve=c(()=>(l.statusBreakdown??[]).reduce((s,t)=>s+Number(t.count??0),0)),V=c(()=>[{name:"تعداد",data:(l.statusBreakdown??[]).map(s=>Number(s.count??0))}]),ye=c(()=>{var s;return Math.max(200,(((s=l.statusBreakdown)==null?void 0:s.length)??0)*(a.isMobile?38:44)+40)}),Oe=c(()=>({chart:{...z},colors:ie,plotOptions:{bar:{horizontal:!0,distributed:!0,borderRadius:6,borderRadiusApplication:"end",barHeight:"58%"}},legend:{show:!1},dataLabels:{enabled:!0,textAnchor:"start",offsetX:8,style:{colors:["#fff"],fontWeight:500,fontSize:"12px"}},grid:{...R,xaxis:{lines:{show:!0}},yaxis:{lines:{show:!1}}},xaxis:{categories:(l.statusBreakdown??[]).map(s=>s.label),axisBorder:{show:!1},axisTicks:{show:!1},labels:{style:{colors:x,fontSize:"11px"}}},yaxis:{labels:{maxWidth:a.isMobile?110:160,style:{colors:"#475467",fontSize:"12px",fontWeight:500}}},tooltip:{y:{formatter:s=>`${s} سفارش`}}})),ke=c(()=>Math.max(1,...(l.reagent??[]).map(s=>Number(s.grams_sell??0))));function we(s){return Math.max(2,Math.round(Number(s.grams_sell??0)/ke.value*100))}const Y=c(()=>[{name:"وزن فروخته‌شده (گرم)",data:(l.topProducts??[]).map(s=>Number(s.weight??0))}]),xe=c(()=>({chart:{...z},plotOptions:{bar:a.isMobile?{horizontal:!0,borderRadius:6,borderRadiusApplication:"end",barHeight:"60%"}:{borderRadius:8,borderRadiusApplication:"end",columnWidth:"45%"}},colors:[k],fill:{type:"gradient",gradient:{shade:"light",type:"vertical",shadeIntensity:.2,opacityFrom:1,opacityTo:.75}},dataLabels:{enabled:!1},grid:R,xaxis:{categories:(l.topProducts??[]).map(s=>s.title),axisBorder:{show:!1},axisTicks:{show:!1},labels:{trim:!0,style:{colors:x,fontSize:a.isMobile?"10px":"12px"}}},yaxis:{labels:{maxWidth:a.isMobile?120:160,style:{colors:x,fontSize:a.isMobile?"11px":"12px"}}},tooltip:{y:{formatter:s=>`${s} گرم`}}}));return Be(async()=>{try{n.value=!0;const{data:s}=await Ae.get("dashboard/overview");Object.assign(l,s),l.reagent=[...l.reagent??[]].sort((t,_)=>Number(_.grams_sell)-Number(t.grams_sell)),l.lastOrder=[...l.lastOrder??[]].sort((t,_)=>Number(_.w)-Number(t.w))}catch(s){console.error(s)}finally{n.value=!1}}),(s,t)=>{const _=O("apexchart"),Se=O("a-segmented"),N=O("a-empty"),X=O("a-tag"),Ce=O("a-list-item"),ze=O("a-list"),Me=O("a-table"),Le=O("a-spin");return d(),b(Le,{spinning:n.value},{default:S(()=>{var q,J,Q,Z;return[e("div",Xe,[e("header",qe,[t[1]||(t[1]=e("div",null,[e("h1",{class:"dash-head__title"},"داشبورد"),e("p",{class:"dash-head__sub"},"خلاصه عملکرد فروش در ۳۰ روز گذشته")],-1)),e("div",Je,[h(g(je)),e("span",null,o(ce.value),1)])]),e("section",Qe,[e("div",Ze,[e("div",Ke,[e("span",et,[h(g(F))]),t[2]||(t[2]=e("span",{class:"kpi__label"},"تعداد سفارشات (۳۰ روز گذشته)",-1))]),e("div",tt,[v(o(m(l.ordercount)),1),t[3]||(t[3]=e("small",null,"سفارش",-1))]),W.value.length?(d(),b(_,{key:0,class:"kpi__spark",type:"area",height:"56",options:pe,series:[{name:"سفارش",data:W.value}]},null,8,["series"])):P("",!0)]),e("div",st,[e("div",at,[e("span",lt,[h(g(B))]),t[4]||(t[4]=e("span",{class:"kpi__label"},"طلای فروش رفته (۳۰ روز گذشته)",-1))]),e("div",nt,[v(o(m(l.allgram)),1),t[5]||(t[5]=e("small",null,"گرم",-1))]),e("div",ot,[t[6]||(t[6]=v(" میانگین هر سفارش تحویل‌شده: ",-1)),e("b",null,o(E.value)+" گرم",1)])]),e("div",rt,[e("div",it,[e("span",dt,[h(g(De))]),t[7]||(t[7]=e("span",{class:"kpi__label"},"مشتریان جدید (۳۰ روز گذشته)",-1))]),e("div",ct,[v(o(m(l.customerCount)),1),t[8]||(t[8]=e("small",null,"نفر",-1))]),e("div",ut,[t[9]||(t[9]=v(" مجموع بدهی طلای مشتریان: ",-1)),e("b",null,o($.value)+" گرم",1)])]),e("div",pt,[e("div",_t,[e("span",ht,[h(g(Fe))]),t[10]||(t[10]=e("span",{class:"kpi__label"},"نرخ هر گرم طلای ۱۸ عیار",-1))]),e("div",mt,o(ue.value),1),e("div",bt,[t[11]||(t[11]=v(" سفارشات تحویل‌شده (۳۰ روز گذشته): ",-1)),e("b",null,o(m(l.sumLastOrder))+" سفارش",1)])])]),e("section",{class:ee(["row",u.value?"row--main":"row--single"])},[e("div",gt,[e("div",ft,[e("div",null,[t[12]||(t[12]=e("h3",{class:"panel__title"},"روند سفارش‌ها",-1)),e("p",vt,o(u.value?"۳۰ روز گذشته، تفکیک تک و عمده":"۳۰ روز گذشته"),1)]),h(Se,{value:w.value,"onUpdate:value":t[0]||(t[0]=i=>w.value=i),options:_e,size:"small"},null,8,["value"])]),e("div",yt,[u.value?(d(),y("div",Ot,[e("span",{class:"dot",style:T({background:C})},null,4),t[13]||(t[13]=e("span",null,"تک فروشی",-1)),e("b",null,o(m(he.value)),1)])):P("",!0),e("div",kt,[e("span",{class:"dot",style:T({background:k})},null,4),t[14]||(t[14]=e("span",null,"عمده فروشی",-1)),e("b",null,o(m(me.value)),1)])]),(d(),b(_,{key:w.value,type:w.value,height:ne.value,options:ge.value,series:be.value},null,8,["type","height","options","series"]))]),u.value?(d(),y("div",wt,[t[15]||(t[15]=e("div",{class:"panel__head"},[e("div",null,[e("h3",{class:"panel__title"},"تفکیک عمده / تک"),e("p",{class:"panel__sub"},"۳۰ روز گذشته")])],-1)),U.value.some(i=>i>0)?(d(),y(L,{key:0},[h(_,{type:"donut",height:oe.value,options:fe.value,series:U.value},null,8,["height","options","series"]),e("ul",xt,[(d(!0),y(L,null,te(l.channelBreakdown,(i,f)=>(d(),y("li",{key:i.channel},[e("span",{class:"dot",style:T({background:A[f%A.length]})},null,4),e("span",St,o(i.label),1),e("span",Ct,o(m(i.grams))+" گرم",1),e("b",null,o(m(i.count)),1)]))),128))])],64)):(d(),b(N,{key:1,description:"داده‌ای برای نمایش وجود ندارد"}))])):P("",!0)],2),e("section",zt,[e("div",Mt,[e("div",Lt,[t[16]||(t[16]=e("div",null,[e("h3",{class:"panel__title"},"وضعیت سفارشات"),e("p",{class:"panel__sub"},"۳۰ روز گذشته")],-1)),e("span",Nt,o(m(ve.value))+" سفارش",1)]),V.value[0].data.length?(d(),b(_,{key:0,type:"bar",height:ye.value,options:Oe.value,series:V.value},null,8,["height","options","series"])):(d(),b(N,{key:1,description:"داده‌ای برای نمایش وجود ندارد"}))]),e("div",Pt,[t[21]||(t[21]=e("div",{class:"panel__head"},[e("div",null,[e("h3",{class:"panel__title"},"میزان فروش"),e("p",{class:"panel__sub"},"۳۰ روز گذشته")])],-1)),e("ul",Tt,[e("li",null,[e("span",Bt,[h(g(He))]),t[17]||(t[17]=e("span",{class:"metric-list__label"},"تعداد سفارش (۳۰ روز)",-1)),e("b",null,o(m(l.sumLastOrder)),1)]),e("li",null,[e("span",At,[h(g(B))]),t[18]||(t[18]=e("span",{class:"metric-list__label"},"مجموع وزن (۳۰ روز)",-1)),e("b",null,o(m(l.sumLastOrderMonth))+" گرم",1)]),e("li",null,[e("span",Rt,[h(g(D))]),t[19]||(t[19]=e("span",{class:"metric-list__label"},"میانگین هر سفارش",-1)),e("b",null,o(E.value)+" گرم",1)]),e("li",null,[e("span",jt,[h(g(Ge))]),t[20]||(t[20]=e("span",{class:"metric-list__label"},"مجموع بدهی طلای مشتریان",-1)),e("b",null,o($.value)+" گرم",1)])])])]),e("section",Ht,[e("div",It,[t[22]||(t[22]=e("div",{class:"panel__head"},[e("div",null,[e("h3",{class:"panel__title"},"عملکرد کارشناسان فروش"),e("p",{class:"panel__sub"},"بر اساس گرم فروخته‌شده")])],-1)),(q=l.reagent)!=null&&q.length?(d(),y("ol",Dt,[(d(!0),y(L,null,te(l.reagent,(i,f)=>(d(),y("li",{key:i.id??f},[e("span",{class:ee(["rank-list__pos",{"is-top":f<3}])},o(f+1),3),e("div",Ft,[e("div",Gt,[e("span",$t,o(i.name),1),e("b",null,o(m(i.grams_sell))+" گرم",1)]),e("div",Et,[e("span",{style:T({width:`${we(i)}%`})},null,4)]),e("span",Wt,o(m(i.order_count))+" سفارش",1)])]))),128))])):(d(),b(N,{key:1,description:"داده‌ای برای نمایش وجود ندارد"}))]),e("div",Ut,[t[23]||(t[23]=e("div",{class:"panel__head"},[e("div",null,[e("h3",{class:"panel__title"},"محصولات پرفروش"),e("p",{class:"panel__sub"},"۳۰ روز گذشته، بر اساس وزن")])],-1)),(J=Y.value[0])!=null&&J.data.length?(d(),b(_,{key:0,type:"bar",height:re.value,options:xe.value,series:Y.value},null,8,["height","options","series"])):(d(),b(N,{key:1,description:"داده‌ای برای نمایش وجود ندارد"}))])]),e("section",Vt,[e("div",Yt,[t[24]||(t[24]=e("div",null,[e("h3",{class:"panel__title"},"سفارشات هفته جاری"),e("p",{class:"panel__sub"},"مرتب‌شده بر اساس وزن")],-1)),e("span",Xt,o(m(((Q=l.lastOrder)==null?void 0:Q.length)??0))+" سفارش",1)]),g(a).isMobile?(d(),b(ze,{key:0,class:"order-list","data-source":l.lastOrder,pagination:((Z=l.lastOrder)==null?void 0:Z.length)>10?{pageSize:10,size:"small",align:"center"}:!1,"row-key":"id"},{renderItem:S(({item:i})=>[h(Ce,{class:"order-item"},{default:S(()=>[e("div",qt,[e("span",Jt,o(i.name),1),h(X,{color:G(i.statusColor),class:"order-item__tag"},{default:S(()=>[v(o(i.sts_str),1)]),_:2},1032,["color"])]),e("div",Qt,o(i.customer),1),e("div",Zt,[e("span",null,o(i.w)+" گرم",1),e("span",null,o(g(M)(i.caj)),1)])]),_:2},1024)]),_:1},8,["data-source","pagination"])):(d(),b(Me,{key:1,class:"dash-table",size:"middle","data-source":l.lastOrder,columns:de,pagination:{pageSize:10},scroll:{x:"max-content"},"row-key":"id"},{bodyCell:S(({column:i,record:f})=>[i.dataIndex==="sts_str"?(d(),b(X,{key:0,color:G(f.statusColor)},{default:S(()=>[v(o(f.sts_str),1)]),_:2},1032,["color"])):i.dataIndex==="caj"?(d(),y(L,{key:1},[v(o(g(M)(f.caj)),1)],64)):i.dataIndex==="w"?(d(),y(L,{key:2},[v(o(f.w)+" گرم",1)],64)):P("",!0)]),_:1},8,["data-source"]))])])]}),_:1},8,["spinning"])}}}),os=Ie(es,[["__scopeId","data-v-00f0eac8"]]);export{os as default}; +import{j as M,p as j}from"./filters-CoNJlguG.js";import{c as h,I,d as Ne,v as Pe,u as Te,x as Be,y as Ae,a as b,w as S,m as K,z as Re,r as O,o as d,p as e,h as g,C as je,t as o,f as v,i as P,q as ee,b as y,B as T,F as L,e as te,D as He,s as c,_ as Ie}from"./index-CpVArufm.js";import{U as De,D as Fe}from"./UserAddOutlined-Bpe7Keo_.js";import{C as Ge}from"./CreditCardOutlined-CIq9Sdft.js";import"./index-DjZc5EYL.js";var $e={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M926 164H94c-17.7 0-32 14.3-32 32v640c0 17.7 14.3 32 32 32h832c17.7 0 32-14.3 32-32V196c0-17.7-14.3-32-32-32zm-40 632H134V236h752v560zm-658.9-82.3c3.1 3.1 8.2 3.1 11.3 0l172.5-172.5 114.4 114.5c3.1 3.1 8.2 3.1 11.3 0l297-297.2c3.1-3.1 3.1-8.2 0-11.3l-36.8-36.8a8.03 8.03 0 00-11.3 0L531 565 416.6 450.5a8.03 8.03 0 00-11.3 0l-214.9 215a8.03 8.03 0 000 11.3l36.7 36.9z"}}]},name:"fund",theme:"outlined"};function se(r){for(var n=1;np.isSuperAdmin),ne=c(()=>a.isMobile?240:300),oe=c(()=>a.isMobile?220:240),re=c(()=>a.isMobile?260:320),l=Re({customerCount:0,allgram:0,ordercount:0,reagent:[],lastOrder:[],sumLastOrder:0,sumLastOrderMonth:0,ordersTrend:[],statusBreakdown:[],channelBreakdown:[],topProducts:[],goldPricePerGram:null,totalCustomerDebtGrams:0}),A=[C,k],ie=[H,C,C,H,H,k,k,Kt],z={fontFamily:"inherit",parentHeightOffset:0,toolbar:{show:!1}},R={borderColor:"#eef0f5",strokeDashArray:4},de=[{title:"شماره سفارش",dataIndex:"name"},{title:"مشتری",dataIndex:"customer"},{title:"وزن",dataIndex:"w"},{title:"وضعیت",dataIndex:"sts_str"},{title:"تاریخ",dataIndex:"caj"}];function G(s){return{success:"green",warning:"orange",danger:"red",primary:"blue"}[s]??""}function m(s){return j(s??0)||"0"}const ce=c(()=>M(new Date().toISOString())),ue=c(()=>l.goldPricePerGram?`${j(Math.round(Number(l.goldPricePerGram)))} تومان`:"—"),$=c(()=>j(Number(l.totalCustomerDebtGrams??0).toFixed(2))),E=c(()=>{const s=Number(l.sumLastOrder??0),t=Number(l.sumLastOrderMonth??0);return s>0?(t/s).toFixed(2):"0"}),W=c(()=>(l.ordersTrend??[]).map(s=>s.total)),pe={chart:{...z,sparkline:{enabled:!0},animations:{enabled:!1}},colors:[k],stroke:{curve:"smooth",width:2},fill:{type:"gradient",gradient:{opacityFrom:.35,opacityTo:0}},tooltip:{enabled:!1}},w=K("area"),_e=[{label:"ناحیه‌ای",value:"area"},{label:"ستونی",value:"bar"}],he=c(()=>(l.ordersTrend??[]).reduce((s,t)=>s+Number(t.retail??0),0)),me=c(()=>(l.ordersTrend??[]).reduce((s,t)=>s+Number(t.wholesale??0),0)),be=c(()=>{const s=l.ordersTrend??[],t={name:"عمده فروشی",data:s.map(_=>_.wholesale)};return u.value?[{name:"تک فروشی",data:s.map(_=>_.retail)},t]:[t]}),ge=c(()=>({chart:{...z,stacked:w.value==="bar"},colors:u.value?[C,k]:[k],dataLabels:{enabled:!1},stroke:w.value==="area"?{curve:"smooth",width:2.5}:{width:0},fill:w.value==="area"?{type:"gradient",gradient:{opacityFrom:.3,opacityTo:.02}}:{opacity:1},plotOptions:{bar:{columnWidth:"55%",borderRadius:3,borderRadiusApplication:"end"}},legend:{show:!1},grid:{...R,padding:a.isMobile?{left:4,right:4}:{}},markers:{size:0,hover:{size:5}},xaxis:{categories:(l.ordersTrend??[]).map(s=>String(M(s.date)??"").slice(5)),tickAmount:a.isMobile?6:10,axisBorder:{show:!1},axisTicks:{show:!1},labels:{rotate:0,hideOverlappingLabels:!0,style:{colors:x,fontSize:a.isMobile?"10px":"12px"}}},yaxis:{labels:{style:{colors:x,fontSize:a.isMobile?"10px":"12px"},formatter:s=>String(Math.round(s))}},tooltip:{shared:!0,intersect:!1,x:{formatter:(s,t)=>{var _;return M((_=(l.ordersTrend??[])[t==null?void 0:t.dataPointIndex])==null?void 0:_.date)}}}})),U=c(()=>(l.channelBreakdown??[]).map(s=>Number(s.count??0))),fe=c(()=>({chart:{...z},labels:(l.channelBreakdown??[]).map(s=>s.label),colors:A,legend:{show:!1},dataLabels:{enabled:!1},stroke:{width:3,colors:["#fff"]},plotOptions:{pie:{donut:{size:"74%",labels:{show:!0,name:{fontSize:"13px",color:x,offsetY:18},value:{fontSize:"16px",fontWeight:500,color:C,offsetY:-14},total:{show:!0,label:"کل سفارش‌ها",color:x,fontSize:"13px",formatter:s=>String(s.globals.seriesTotals.reduce((t,_)=>t+_,0))}}}}}})),ve=c(()=>(l.statusBreakdown??[]).reduce((s,t)=>s+Number(t.count??0),0)),V=c(()=>[{name:"تعداد",data:(l.statusBreakdown??[]).map(s=>Number(s.count??0))}]),ye=c(()=>{var s;return Math.max(200,(((s=l.statusBreakdown)==null?void 0:s.length)??0)*(a.isMobile?38:44)+40)}),Oe=c(()=>({chart:{...z},colors:ie,plotOptions:{bar:{horizontal:!0,distributed:!0,borderRadius:6,borderRadiusApplication:"end",barHeight:"58%"}},legend:{show:!1},dataLabels:{enabled:!0,textAnchor:"start",offsetX:8,style:{colors:["#fff"],fontWeight:500,fontSize:"12px"}},grid:{...R,xaxis:{lines:{show:!0}},yaxis:{lines:{show:!1}}},xaxis:{categories:(l.statusBreakdown??[]).map(s=>s.label),axisBorder:{show:!1},axisTicks:{show:!1},labels:{style:{colors:x,fontSize:"11px"}}},yaxis:{labels:{maxWidth:a.isMobile?110:160,style:{colors:"#475467",fontSize:"12px",fontWeight:500}}},tooltip:{y:{formatter:s=>`${s} سفارش`}}})),ke=c(()=>Math.max(1,...(l.reagent??[]).map(s=>Number(s.grams_sell??0))));function we(s){return Math.max(2,Math.round(Number(s.grams_sell??0)/ke.value*100))}const Y=c(()=>[{name:"وزن فروخته‌شده (گرم)",data:(l.topProducts??[]).map(s=>Number(s.weight??0))}]),xe=c(()=>({chart:{...z},plotOptions:{bar:a.isMobile?{horizontal:!0,borderRadius:6,borderRadiusApplication:"end",barHeight:"60%"}:{borderRadius:8,borderRadiusApplication:"end",columnWidth:"45%"}},colors:[k],fill:{type:"gradient",gradient:{shade:"light",type:"vertical",shadeIntensity:.2,opacityFrom:1,opacityTo:.75}},dataLabels:{enabled:!1},grid:R,xaxis:{categories:(l.topProducts??[]).map(s=>s.title),axisBorder:{show:!1},axisTicks:{show:!1},labels:{trim:!0,style:{colors:x,fontSize:a.isMobile?"10px":"12px"}}},yaxis:{labels:{maxWidth:a.isMobile?120:160,style:{colors:x,fontSize:a.isMobile?"11px":"12px"}}},tooltip:{y:{formatter:s=>`${s} گرم`}}}));return Be(async()=>{try{n.value=!0;const{data:s}=await Ae.get("dashboard/overview");Object.assign(l,s),l.reagent=[...l.reagent??[]].sort((t,_)=>Number(_.grams_sell)-Number(t.grams_sell)),l.lastOrder=[...l.lastOrder??[]].sort((t,_)=>Number(_.w)-Number(t.w))}catch(s){console.error(s)}finally{n.value=!1}}),(s,t)=>{const _=O("apexchart"),Se=O("a-segmented"),N=O("a-empty"),X=O("a-tag"),Ce=O("a-list-item"),ze=O("a-list"),Me=O("a-table"),Le=O("a-spin");return d(),b(Le,{spinning:n.value},{default:S(()=>{var q,J,Q,Z;return[e("div",Xe,[e("header",qe,[t[1]||(t[1]=e("div",null,[e("h1",{class:"dash-head__title"},"داشبورد"),e("p",{class:"dash-head__sub"},"خلاصه عملکرد فروش در ۳۰ روز گذشته")],-1)),e("div",Je,[h(g(je)),e("span",null,o(ce.value),1)])]),e("section",Qe,[e("div",Ze,[e("div",Ke,[e("span",et,[h(g(F))]),t[2]||(t[2]=e("span",{class:"kpi__label"},"تعداد سفارشات (۳۰ روز گذشته)",-1))]),e("div",tt,[v(o(m(l.ordercount)),1),t[3]||(t[3]=e("small",null,"سفارش",-1))]),W.value.length?(d(),b(_,{key:0,class:"kpi__spark",type:"area",height:"56",options:pe,series:[{name:"سفارش",data:W.value}]},null,8,["series"])):P("",!0)]),e("div",st,[e("div",at,[e("span",lt,[h(g(B))]),t[4]||(t[4]=e("span",{class:"kpi__label"},"طلای فروش رفته (۳۰ روز گذشته)",-1))]),e("div",nt,[v(o(m(l.allgram)),1),t[5]||(t[5]=e("small",null,"گرم",-1))]),e("div",ot,[t[6]||(t[6]=v(" میانگین هر سفارش تحویل‌شده: ",-1)),e("b",null,o(E.value)+" گرم",1)])]),e("div",rt,[e("div",it,[e("span",dt,[h(g(De))]),t[7]||(t[7]=e("span",{class:"kpi__label"},"مشتریان جدید (۳۰ روز گذشته)",-1))]),e("div",ct,[v(o(m(l.customerCount)),1),t[8]||(t[8]=e("small",null,"نفر",-1))]),e("div",ut,[t[9]||(t[9]=v(" مجموع بدهی طلای مشتریان: ",-1)),e("b",null,o($.value)+" گرم",1)])]),e("div",pt,[e("div",_t,[e("span",ht,[h(g(Fe))]),t[10]||(t[10]=e("span",{class:"kpi__label"},"نرخ هر گرم طلای ۱۸ عیار",-1))]),e("div",mt,o(ue.value),1),e("div",bt,[t[11]||(t[11]=v(" سفارشات تحویل‌شده (۳۰ روز گذشته): ",-1)),e("b",null,o(m(l.sumLastOrder))+" سفارش",1)])])]),e("section",{class:ee(["row",u.value?"row--main":"row--single"])},[e("div",gt,[e("div",ft,[e("div",null,[t[12]||(t[12]=e("h3",{class:"panel__title"},"روند سفارش‌ها",-1)),e("p",vt,o(u.value?"۳۰ روز گذشته، تفکیک تک و عمده":"۳۰ روز گذشته"),1)]),h(Se,{value:w.value,"onUpdate:value":t[0]||(t[0]=i=>w.value=i),options:_e,size:"small"},null,8,["value"])]),e("div",yt,[u.value?(d(),y("div",Ot,[e("span",{class:"dot",style:T({background:C})},null,4),t[13]||(t[13]=e("span",null,"تک فروشی",-1)),e("b",null,o(m(he.value)),1)])):P("",!0),e("div",kt,[e("span",{class:"dot",style:T({background:k})},null,4),t[14]||(t[14]=e("span",null,"عمده فروشی",-1)),e("b",null,o(m(me.value)),1)])]),(d(),b(_,{key:w.value,type:w.value,height:ne.value,options:ge.value,series:be.value},null,8,["type","height","options","series"]))]),u.value?(d(),y("div",wt,[t[15]||(t[15]=e("div",{class:"panel__head"},[e("div",null,[e("h3",{class:"panel__title"},"تفکیک عمده / تک"),e("p",{class:"panel__sub"},"۳۰ روز گذشته")])],-1)),U.value.some(i=>i>0)?(d(),y(L,{key:0},[h(_,{type:"donut",height:oe.value,options:fe.value,series:U.value},null,8,["height","options","series"]),e("ul",xt,[(d(!0),y(L,null,te(l.channelBreakdown,(i,f)=>(d(),y("li",{key:i.channel},[e("span",{class:"dot",style:T({background:A[f%A.length]})},null,4),e("span",St,o(i.label),1),e("span",Ct,o(m(i.grams))+" گرم",1),e("b",null,o(m(i.count)),1)]))),128))])],64)):(d(),b(N,{key:1,description:"داده‌ای برای نمایش وجود ندارد"}))])):P("",!0)],2),e("section",zt,[e("div",Mt,[e("div",Lt,[t[16]||(t[16]=e("div",null,[e("h3",{class:"panel__title"},"وضعیت سفارشات"),e("p",{class:"panel__sub"},"۳۰ روز گذشته")],-1)),e("span",Nt,o(m(ve.value))+" سفارش",1)]),V.value[0].data.length?(d(),b(_,{key:0,type:"bar",height:ye.value,options:Oe.value,series:V.value},null,8,["height","options","series"])):(d(),b(N,{key:1,description:"داده‌ای برای نمایش وجود ندارد"}))]),e("div",Pt,[t[21]||(t[21]=e("div",{class:"panel__head"},[e("div",null,[e("h3",{class:"panel__title"},"میزان فروش"),e("p",{class:"panel__sub"},"۳۰ روز گذشته")])],-1)),e("ul",Tt,[e("li",null,[e("span",Bt,[h(g(He))]),t[17]||(t[17]=e("span",{class:"metric-list__label"},"تعداد سفارش (۳۰ روز)",-1)),e("b",null,o(m(l.sumLastOrder)),1)]),e("li",null,[e("span",At,[h(g(B))]),t[18]||(t[18]=e("span",{class:"metric-list__label"},"مجموع وزن (۳۰ روز)",-1)),e("b",null,o(m(l.sumLastOrderMonth))+" گرم",1)]),e("li",null,[e("span",Rt,[h(g(D))]),t[19]||(t[19]=e("span",{class:"metric-list__label"},"میانگین هر سفارش",-1)),e("b",null,o(E.value)+" گرم",1)]),e("li",null,[e("span",jt,[h(g(Ge))]),t[20]||(t[20]=e("span",{class:"metric-list__label"},"مجموع بدهی طلای مشتریان",-1)),e("b",null,o($.value)+" گرم",1)])])])]),e("section",Ht,[e("div",It,[t[22]||(t[22]=e("div",{class:"panel__head"},[e("div",null,[e("h3",{class:"panel__title"},"عملکرد کارشناسان فروش"),e("p",{class:"panel__sub"},"بر اساس گرم فروخته‌شده")])],-1)),(q=l.reagent)!=null&&q.length?(d(),y("ol",Dt,[(d(!0),y(L,null,te(l.reagent,(i,f)=>(d(),y("li",{key:i.id??f},[e("span",{class:ee(["rank-list__pos",{"is-top":f<3}])},o(f+1),3),e("div",Ft,[e("div",Gt,[e("span",$t,o(i.name),1),e("b",null,o(m(i.grams_sell))+" گرم",1)]),e("div",Et,[e("span",{style:T({width:`${we(i)}%`})},null,4)]),e("span",Wt,o(m(i.order_count))+" سفارش",1)])]))),128))])):(d(),b(N,{key:1,description:"داده‌ای برای نمایش وجود ندارد"}))]),e("div",Ut,[t[23]||(t[23]=e("div",{class:"panel__head"},[e("div",null,[e("h3",{class:"panel__title"},"محصولات پرفروش"),e("p",{class:"panel__sub"},"۳۰ روز گذشته، بر اساس وزن")])],-1)),(J=Y.value[0])!=null&&J.data.length?(d(),b(_,{key:0,type:"bar",height:re.value,options:xe.value,series:Y.value},null,8,["height","options","series"])):(d(),b(N,{key:1,description:"داده‌ای برای نمایش وجود ندارد"}))])]),e("section",Vt,[e("div",Yt,[t[24]||(t[24]=e("div",null,[e("h3",{class:"panel__title"},"سفارشات هفته جاری"),e("p",{class:"panel__sub"},"مرتب‌شده بر اساس وزن")],-1)),e("span",Xt,o(m(((Q=l.lastOrder)==null?void 0:Q.length)??0))+" سفارش",1)]),g(a).isMobile?(d(),b(ze,{key:0,class:"order-list","data-source":l.lastOrder,pagination:((Z=l.lastOrder)==null?void 0:Z.length)>10?{pageSize:10,size:"small",align:"center"}:!1,"row-key":"id"},{renderItem:S(({item:i})=>[h(Ce,{class:"order-item"},{default:S(()=>[e("div",qt,[e("span",Jt,o(i.name),1),h(X,{color:G(i.statusColor),class:"order-item__tag"},{default:S(()=>[v(o(i.sts_str),1)]),_:2},1032,["color"])]),e("div",Qt,o(i.customer),1),e("div",Zt,[e("span",null,o(i.w)+" گرم",1),e("span",null,o(g(M)(i.caj)),1)])]),_:2},1024)]),_:1},8,["data-source","pagination"])):(d(),b(Me,{key:1,class:"dash-table",size:"middle","data-source":l.lastOrder,columns:de,pagination:{pageSize:10},scroll:{x:"max-content"},"row-key":"id"},{bodyCell:S(({column:i,record:f})=>[i.dataIndex==="sts_str"?(d(),b(X,{key:0,color:G(f.statusColor)},{default:S(()=>[v(o(f.sts_str),1)]),_:2},1032,["color"])):i.dataIndex==="caj"?(d(),y(L,{key:1},[v(o(g(M)(f.caj)),1)],64)):i.dataIndex==="w"?(d(),y(L,{key:2},[v(o(f.w)+" گرم",1)],64)):P("",!0)]),_:1},8,["data-source"]))])])]}),_:1},8,["spinning"])}}}),os=Ie(es,[["__scopeId","data-v-00f0eac8"]]);export{os as default}; diff --git a/apps/admin-panel/dist/assets/DateInput-DgUF2he7.js b/apps/admin-panel/dist/assets/DateInput-0_1fMgrR.js similarity index 89% rename from apps/admin-panel/dist/assets/DateInput-DgUF2he7.js rename to apps/admin-panel/dist/assets/DateInput-0_1fMgrR.js index 18141c3..d2dddb2 100644 --- a/apps/admin-panel/dist/assets/DateInput-DgUF2he7.js +++ b/apps/admin-panel/dist/assets/DateInput-0_1fMgrR.js @@ -1 +1 @@ -import{m}from"./index-CKg-8s_Z.js";import{d as _,n as V,o as r,a as Y,w as h,c as D,b,t as j,i as M,m as i,s as x,r as d,_ as y}from"./index-CJij4X3l.js";const k={key:0,class:"hint"},C=_({__name:"DateInput",props:{label:{},modelValue:{},placeholder:{default:"مثال: ۱۴۰۳/۰۵/۱۲"}},emits:["update:modelValue"],setup(o,{emit:p}){const n=o,c=p,t=i(void 0),a=i(""),v=x(()=>{if(t.value!==void 0)return t.value;if(!n.modelValue)return"";const e=m(n.modelValue);return e.isValid()?e.format("jYYYY/jMM/jDD"):""});V(()=>n.modelValue,()=>{t.value=void 0});function f(e){if(t.value=e,!e){a.value="",c("update:modelValue",void 0);return}const u=e.replace(/[۰-۹]/g,s=>String("۰۱۲۳۴۵۶۷۸۹".indexOf(s))),l=m(u,"jYYYY/jMM/jDD");l.isValid()?(a.value="",c("update:modelValue",l.format("YYYY-MM-DD"))):a.value="تاریخ معتبر نیست"}return(e,u)=>{const l=d("a-input"),s=d("a-form-item");return r(),Y(s,{label:o.label},{default:h(()=>[D(l,{value:v.value,placeholder:o.placeholder,"allow-clear":"","onUpdate:value":f},null,8,["value","placeholder"]),a.value?(r(),b("small",k,j(a.value),1)):M("",!0)]),_:1},8,["label"])}}}),I=y(C,[["__scopeId","data-v-3863c3bc"]]);export{I as D}; +import{m}from"./index-DjZc5EYL.js";import{d as _,n as V,o as r,a as Y,w as h,c as D,b,t as j,i as M,m as i,s as x,r as d,_ as y}from"./index-CpVArufm.js";const k={key:0,class:"hint"},C=_({__name:"DateInput",props:{label:{},modelValue:{},placeholder:{default:"مثال: ۱۴۰۳/۰۵/۱۲"}},emits:["update:modelValue"],setup(o,{emit:p}){const n=o,c=p,t=i(void 0),a=i(""),v=x(()=>{if(t.value!==void 0)return t.value;if(!n.modelValue)return"";const e=m(n.modelValue);return e.isValid()?e.format("jYYYY/jMM/jDD"):""});V(()=>n.modelValue,()=>{t.value=void 0});function f(e){if(t.value=e,!e){a.value="",c("update:modelValue",void 0);return}const u=e.replace(/[۰-۹]/g,s=>String("۰۱۲۳۴۵۶۷۸۹".indexOf(s))),l=m(u,"jYYYY/jMM/jDD");l.isValid()?(a.value="",c("update:modelValue",l.format("YYYY-MM-DD"))):a.value="تاریخ معتبر نیست"}return(e,u)=>{const l=d("a-input"),s=d("a-form-item");return r(),Y(s,{label:o.label},{default:h(()=>[D(l,{value:v.value,placeholder:o.placeholder,"allow-clear":"","onUpdate:value":f},null,8,["value","placeholder"]),a.value?(r(),b("small",k,j(a.value),1)):M("",!0)]),_:1},8,["label"])}}}),I=y(C,[["__scopeId","data-v-3863c3bc"]]);export{I as D}; diff --git a/apps/admin-panel/dist/assets/Edit-BJ5-os70.js b/apps/admin-panel/dist/assets/Edit-BJ5-os70.js deleted file mode 100644 index a8184c6..0000000 --- a/apps/admin-panel/dist/assets/Edit-BJ5-os70.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as o}from"./Add.vue_vue_type_script_setup_true_lang-Zo2rdVSj.js";import{d as t,a as e,o as r}from"./index-CJij4X3l.js";import"./BaseFormModal.vue_vue_type_style_index_0_lang-YLHOAWTN.js";import"./ImageUploadInput.vue_vue_type_script_setup_true_lang-vRgyyG7o.js";const i=t({__name:"Edit",setup(a){return(_,m)=>(r(),e(o))}});export{i as default}; diff --git a/apps/admin-panel/dist/assets/Edit-C6iXEE0n.js b/apps/admin-panel/dist/assets/Edit-C6iXEE0n.js new file mode 100644 index 0000000..c1a5ac7 --- /dev/null +++ b/apps/admin-panel/dist/assets/Edit-C6iXEE0n.js @@ -0,0 +1 @@ +import{_ as o}from"./Add.vue_vue_type_script_setup_true_lang-Bhji6saH.js";import{d as t,a as r,o as e}from"./index-CpVArufm.js";import"./select--BgT6D7O.js";import"./BaseFormModal.vue_vue_type_style_index_0_lang-B4iVMhZt.js";import"./ImageUploadInput.vue_vue_type_script_setup_true_lang-B9gVJPft.js";const f=t({__name:"Edit",setup(a){return(m,p)=>(e(),r(o))}});export{f as default}; diff --git a/apps/admin-panel/dist/assets/EditBranches-PcMrPvLE.js b/apps/admin-panel/dist/assets/EditBranches-PcMrPvLE.js new file mode 100644 index 0000000..4107933 --- /dev/null +++ b/apps/admin-panel/dist/assets/EditBranches-PcMrPvLE.js @@ -0,0 +1 @@ +import{_ as o}from"./AddBranches.vue_vue_type_script_setup_true_lang-Ds4yo_72.js";import{d as e,a as r,o as t}from"./index-CpVArufm.js";import"./select--BgT6D7O.js";import"./BaseFormModal.vue_vue_type_style_index_0_lang-B4iVMhZt.js";const i=e({__name:"EditBranches",setup(a){return(n,s)=>(t(),r(o))}});export{i as default}; diff --git a/apps/admin-panel/dist/assets/EditBranches-VJ6QXuC9.js b/apps/admin-panel/dist/assets/EditBranches-VJ6QXuC9.js deleted file mode 100644 index 103fa47..0000000 --- a/apps/admin-panel/dist/assets/EditBranches-VJ6QXuC9.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as e}from"./AddBranches.vue_vue_type_script_setup_true_lang-CIZbMJ7d.js";import{d as o,a,o as r}from"./index-CJij4X3l.js";import"./BaseFormModal.vue_vue_type_style_index_0_lang-YLHOAWTN.js";const p=o({__name:"EditBranches",setup(t){return(n,s)=>(r(),a(e))}});export{p as default}; diff --git a/apps/admin-panel/dist/assets/EditBulkCustomer-BshDOCb8.js b/apps/admin-panel/dist/assets/EditBulkCustomer-BshDOCb8.js new file mode 100644 index 0000000..25fe31c --- /dev/null +++ b/apps/admin-panel/dist/assets/EditBulkCustomer-BshDOCb8.js @@ -0,0 +1 @@ +import{_ as o}from"./bulkCustomer.vue_vue_type_script_setup_true_lang-Bh7ptZgl.js";import{d as r,a as t,o as m}from"./index-CpVArufm.js";import"./select--BgT6D7O.js";import"./BaseFormModal.vue_vue_type_style_index_0_lang-B4iVMhZt.js";import"./ImageUploadInput.vue_vue_type_script_setup_true_lang-B9gVJPft.js";import"./CityTreeSelect.vue_vue_type_script_setup_true_lang-BtBj3fof.js";import"./DateInput-0_1fMgrR.js";import"./index-DjZc5EYL.js";import"./UserOutlined-DeX82IP7.js";import"./ShopOutlined-D8LgPxHa.js";import"./EnvironmentOutlined-BZFp8i4M.js";import"./PercentageOutlined-IS1MVcbY.js";import"./SafetyCertificateOutlined-mD-ddSP4.js";const g=r({__name:"EditBulkCustomer",setup(p){return(i,a)=>(m(),t(o,{class:"page-card"}))}});export{g as default}; diff --git a/apps/admin-panel/dist/assets/EditBulkCustomer-DHEdY76M.js b/apps/admin-panel/dist/assets/EditBulkCustomer-DHEdY76M.js deleted file mode 100644 index aed726c..0000000 --- a/apps/admin-panel/dist/assets/EditBulkCustomer-DHEdY76M.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as o}from"./bulkCustomer.vue_vue_type_script_setup_true_lang-C_6AC_x3.js";import{d as r,a as t,o as m}from"./index-CJij4X3l.js";import"./BaseFormModal.vue_vue_type_style_index_0_lang-YLHOAWTN.js";import"./ImageUploadInput.vue_vue_type_script_setup_true_lang-vRgyyG7o.js";import"./CityTreeSelect.vue_vue_type_script_setup_true_lang-7y8zYJ_W.js";import"./DateInput-DgUF2he7.js";import"./index-CKg-8s_Z.js";import"./UserOutlined-yq90mQcC.js";import"./ShopOutlined-B63CHExu.js";import"./EnvironmentOutlined-Cetl6vFW.js";import"./PercentageOutlined-CtwjLYTJ.js";import"./SafetyCertificateOutlined-Cr8bqGKo.js";const C=r({__name:"EditBulkCustomer",setup(p){return(i,a)=>(m(),t(o,{class:"page-card"}))}});export{C as default}; diff --git a/apps/admin-panel/dist/assets/EditInvoice-BIXjPtQa.js b/apps/admin-panel/dist/assets/EditInvoice-BIXjPtQa.js new file mode 100644 index 0000000..283fab5 --- /dev/null +++ b/apps/admin-panel/dist/assets/EditInvoice-BIXjPtQa.js @@ -0,0 +1 @@ +import o from"./AddInvoice-CkuDWq78.js";import{d as t,a as r,o as e}from"./index-CpVArufm.js";import"./select--BgT6D7O.js";import"./BaseFormModal.vue_vue_type_style_index_0_lang-B4iVMhZt.js";import"./model-mwiDYd1J.js";import"./filters-CoNJlguG.js";import"./index-DjZc5EYL.js";import"./SettingOutlined-E4OknxY2.js";const l=t({__name:"EditInvoice",setup(p){return(i,m)=>(e(),r(o))}});export{l as default}; diff --git a/apps/admin-panel/dist/assets/EditInvoice-Z14oksL0.js b/apps/admin-panel/dist/assets/EditInvoice-Z14oksL0.js deleted file mode 100644 index 2b2149e..0000000 --- a/apps/admin-panel/dist/assets/EditInvoice-Z14oksL0.js +++ /dev/null @@ -1 +0,0 @@ -import o from"./AddInvoice-DdE29E9r.js";import{d as t,a as r,o as e}from"./index-CJij4X3l.js";import"./BaseFormModal.vue_vue_type_style_index_0_lang-YLHOAWTN.js";import"./model-tqsMDjkK.js";import"./filters-BPYO-DKN.js";import"./index-CKg-8s_Z.js";import"./SettingOutlined-BJxMXy1I.js";const u=t({__name:"EditInvoice",setup(p){return(i,m)=>(e(),r(o))}});export{u as default}; diff --git a/apps/admin-panel/dist/assets/EditProduct-3lcOmFDK.js b/apps/admin-panel/dist/assets/EditProduct-3lcOmFDK.js deleted file mode 100644 index 256ad06..0000000 --- a/apps/admin-panel/dist/assets/EditProduct-3lcOmFDK.js +++ /dev/null @@ -1 +0,0 @@ -import e from"./AddProduct-CvfafZ03.js";import{d as o,b as t,c as r,o as c}from"./index-CJij4X3l.js";import"./ImageUploadInput.vue_vue_type_script_setup_true_lang-vRgyyG7o.js";import"./AppstoreOutlined-DvD8zs_r.js";const _=o({__name:"EditProduct",setup(a){return(n,d)=>(c(),t("div",null,[r(e)]))}});export{_ as default}; diff --git a/apps/admin-panel/dist/assets/EditProduct-Db-gCITq.js b/apps/admin-panel/dist/assets/EditProduct-Db-gCITq.js new file mode 100644 index 0000000..4decb48 --- /dev/null +++ b/apps/admin-panel/dist/assets/EditProduct-Db-gCITq.js @@ -0,0 +1 @@ +import e from"./AddProduct-DUZcRoso.js";import{d as o,b as t,c as r,o as c}from"./index-CpVArufm.js";import"./ImageUploadInput.vue_vue_type_script_setup_true_lang-B9gVJPft.js";import"./AppstoreOutlined-BRgpp4c5.js";const _=o({__name:"EditProduct",setup(a){return(n,d)=>(c(),t("div",null,[r(e)]))}});export{_ as default}; diff --git a/apps/admin-panel/dist/assets/EditReagent-Dlp0pEGi.js b/apps/admin-panel/dist/assets/EditReagent-Dlp0pEGi.js new file mode 100644 index 0000000..c11c5c7 --- /dev/null +++ b/apps/admin-panel/dist/assets/EditReagent-Dlp0pEGi.js @@ -0,0 +1 @@ +import{R as t}from"./ReagentCustomer-CN5vQurl.js";import{d as o,a as r,o as e}from"./index-CpVArufm.js";import"./CityTreeSelect.vue_vue_type_script_setup_true_lang-BtBj3fof.js";import"./ImageUploadInput.vue_vue_type_script_setup_true_lang-B9gVJPft.js";import"./UserOutlined-DeX82IP7.js";import"./ShopOutlined-D8LgPxHa.js";import"./EnvironmentOutlined-BZFp8i4M.js";import"./CameraOutlined-JfS-rAEW.js";import"./PercentageOutlined-IS1MVcbY.js";const g=o({__name:"EditReagent",setup(a){return(p,m)=>(e(),r(t,{class:"page-card"}))}});export{g as default}; diff --git a/apps/admin-panel/dist/assets/EditReagent-DwXyXJ1x.js b/apps/admin-panel/dist/assets/EditReagent-DwXyXJ1x.js deleted file mode 100644 index 0343f63..0000000 --- a/apps/admin-panel/dist/assets/EditReagent-DwXyXJ1x.js +++ /dev/null @@ -1 +0,0 @@ -import{R as t}from"./ReagentCustomer-BfWz1HOe.js";import{d as o,a as r,o as e}from"./index-CJij4X3l.js";import"./CityTreeSelect.vue_vue_type_script_setup_true_lang-7y8zYJ_W.js";import"./ImageUploadInput.vue_vue_type_script_setup_true_lang-vRgyyG7o.js";import"./UserOutlined-yq90mQcC.js";import"./ShopOutlined-B63CHExu.js";import"./EnvironmentOutlined-Cetl6vFW.js";import"./CameraOutlined-BcxYWwtK.js";import"./PercentageOutlined-CtwjLYTJ.js";const g=o({__name:"EditReagent",setup(a){return(p,m)=>(e(),r(t,{class:"page-card"}))}});export{g as default}; diff --git a/apps/admin-panel/dist/assets/EditSingleCustomer-DTV5ZFem.js b/apps/admin-panel/dist/assets/EditSingleCustomer-DTV5ZFem.js deleted file mode 100644 index 8ccf71d..0000000 --- a/apps/admin-panel/dist/assets/EditSingleCustomer-DTV5ZFem.js +++ /dev/null @@ -1 +0,0 @@ -import{S as o}from"./singleCustomer-CKKhHCBR.js";import{d as r,a as e,o as t}from"./index-CJij4X3l.js";import"./CityTreeSelect.vue_vue_type_script_setup_true_lang-7y8zYJ_W.js";import"./DateInput-DgUF2he7.js";import"./index-CKg-8s_Z.js";import"./UserOutlined-yq90mQcC.js";const u=r({__name:"EditSingleCustomer",setup(a){return(m,p)=>(t(),e(o,{class:"page-card"}))}});export{u as default}; diff --git a/apps/admin-panel/dist/assets/EditSingleCustomer-DaVDehIn.js b/apps/admin-panel/dist/assets/EditSingleCustomer-DaVDehIn.js new file mode 100644 index 0000000..c90843d --- /dev/null +++ b/apps/admin-panel/dist/assets/EditSingleCustomer-DaVDehIn.js @@ -0,0 +1 @@ +import{S as o}from"./singleCustomer-DCfVboVT.js";import{d as r,a as e,o as t}from"./index-CpVArufm.js";import"./CityTreeSelect.vue_vue_type_script_setup_true_lang-BtBj3fof.js";import"./DateInput-0_1fMgrR.js";import"./index-DjZc5EYL.js";import"./UserOutlined-DeX82IP7.js";const u=r({__name:"EditSingleCustomer",setup(a){return(m,p)=>(t(),e(o,{class:"page-card"}))}});export{u as default}; diff --git a/apps/admin-panel/dist/assets/EditWorkshop-CCAz5Q3q.js b/apps/admin-panel/dist/assets/EditWorkshop-CCAz5Q3q.js deleted file mode 100644 index d1233f5..0000000 --- a/apps/admin-panel/dist/assets/EditWorkshop-CCAz5Q3q.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as o}from"./AddWorkshop.vue_vue_type_script_setup_true_lang-CYeQJKq0.js";import{d as e,a as r,o as t}from"./index-CJij4X3l.js";import"./BaseFormModal.vue_vue_type_style_index_0_lang-YLHOAWTN.js";const m=e({__name:"EditWorkshop",setup(a){return(s,_)=>(t(),r(o))}});export{m as default}; diff --git a/apps/admin-panel/dist/assets/EditWorkshop-DfzVUJen.js b/apps/admin-panel/dist/assets/EditWorkshop-DfzVUJen.js new file mode 100644 index 0000000..4843ddc --- /dev/null +++ b/apps/admin-panel/dist/assets/EditWorkshop-DfzVUJen.js @@ -0,0 +1 @@ +import{_ as o}from"./AddWorkshop.vue_vue_type_script_setup_true_lang-C1UXqOZL.js";import{d as e,a as r,o as t}from"./index-CpVArufm.js";import"./BaseFormModal.vue_vue_type_style_index_0_lang-B4iVMhZt.js";const m=e({__name:"EditWorkshop",setup(a){return(s,_)=>(t(),r(o))}});export{m as default}; diff --git a/apps/admin-panel/dist/assets/EnvironmentOutlined-Cetl6vFW.js b/apps/admin-panel/dist/assets/EnvironmentOutlined-BZFp8i4M.js similarity index 96% rename from apps/admin-panel/dist/assets/EnvironmentOutlined-Cetl6vFW.js rename to apps/admin-panel/dist/assets/EnvironmentOutlined-BZFp8i4M.js index cf7c1ca..511d5bb 100644 --- a/apps/admin-panel/dist/assets/EnvironmentOutlined-Cetl6vFW.js +++ b/apps/admin-panel/dist/assets/EnvironmentOutlined-BZFp8i4M.js @@ -1 +1 @@ -import{c as o,I as u}from"./index-CJij4X3l.js";var l={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M854.6 289.1a362.49 362.49 0 00-79.9-115.7 370.83 370.83 0 00-118.2-77.8C610.7 76.6 562.1 67 512 67c-50.1 0-98.7 9.6-144.5 28.5-44.3 18.3-84 44.5-118.2 77.8A363.6 363.6 0 00169.4 289c-19.5 45-29.4 92.8-29.4 142 0 70.6 16.9 140.9 50.1 208.7 26.7 54.5 64 107.6 111 158.1 80.3 86.2 164.5 138.9 188.4 153a43.9 43.9 0 0022.4 6.1c7.8 0 15.5-2 22.4-6.1 23.9-14.1 108.1-66.8 188.4-153 47-50.4 84.3-103.6 111-158.1C867.1 572 884 501.8 884 431.1c0-49.2-9.9-97-29.4-142zM512 880.2c-65.9-41.9-300-207.8-300-449.1 0-77.9 31.1-151.1 87.6-206.3C356.3 169.5 431.7 139 512 139s155.7 30.5 212.4 85.9C780.9 280 812 353.2 812 431.1c0 241.3-234.1 407.2-300 449.1zm0-617.2c-97.2 0-176 78.8-176 176s78.8 176 176 176 176-78.8 176-176-78.8-176-176-176zm79.2 255.2A111.6 111.6 0 01512 551c-29.9 0-58-11.7-79.2-32.8A111.6 111.6 0 01400 439c0-29.9 11.7-58 32.8-79.2C454 338.6 482.1 327 512 327c29.9 0 58 11.6 79.2 32.8C612.4 381 624 409.1 624 439c0 29.9-11.6 58-32.8 79.2z"}}]},name:"environment",theme:"outlined"};function c(n){for(var e=1;e[e(a,{type:"primary",onClick:t[0]||(t[0]=f=>r.$router.push("/"))},{default:o(()=>[...t[1]||(t[1]=[l("بازگشت به خانه",-1)])]),_:1})]),_:1})])}const x=_(p,[["render",i],["__scopeId","data-v-82a95474"]]);export{x as default}; +import{_,b as c,c as e,w as o,f as l,r as s,o as u}from"./index-CpVArufm.js";const p={},d={class:"full-page-msg"};function i(r,t){const a=s("a-button"),n=s("a-result");return u(),c("div",d,[e(n,{status:"404",title:"صفحه مورد نظر یافت نشد","sub-title":"آدرسی که وارد کرده‌اید وجود ندارد."},{extra:o(()=>[e(a,{type:"primary",onClick:t[0]||(t[0]=f=>r.$router.push("/"))},{default:o(()=>[...t[1]||(t[1]=[l("بازگشت به خانه",-1)])]),_:1})]),_:1})])}const x=_(p,[["render",i],["__scopeId","data-v-82a95474"]]);export{x as default}; diff --git a/apps/admin-panel/dist/assets/Error500-DfUulvTr.js b/apps/admin-panel/dist/assets/Error500-uPAg0OcA.js similarity index 89% rename from apps/admin-panel/dist/assets/Error500-DfUulvTr.js rename to apps/admin-panel/dist/assets/Error500-uPAg0OcA.js index 7075e51..c68fb3d 100644 --- a/apps/admin-panel/dist/assets/Error500-DfUulvTr.js +++ b/apps/admin-panel/dist/assets/Error500-uPAg0OcA.js @@ -1 +1 @@ -import{_,b as c,c as e,w as o,f as l,r as s,o as u}from"./index-CJij4X3l.js";const p={},d={class:"full-page-msg"};function i(r,t){const a=s("a-button"),n=s("a-result");return u(),c("div",d,[e(n,{status:"500",title:"خطای سرور","sub-title":"مشکلی در سرور رخ داده است. لطفاً بعداً تلاش کنید."},{extra:o(()=>[e(a,{type:"primary",onClick:t[0]||(t[0]=f=>r.$router.push("/"))},{default:o(()=>[...t[1]||(t[1]=[l("بازگشت به خانه",-1)])]),_:1})]),_:1})])}const x=_(p,[["render",i],["__scopeId","data-v-1080291a"]]);export{x as default}; +import{_,b as c,c as e,w as o,f as l,r as s,o as u}from"./index-CpVArufm.js";const p={},d={class:"full-page-msg"};function i(r,t){const a=s("a-button"),n=s("a-result");return u(),c("div",d,[e(n,{status:"500",title:"خطای سرور","sub-title":"مشکلی در سرور رخ داده است. لطفاً بعداً تلاش کنید."},{extra:o(()=>[e(a,{type:"primary",onClick:t[0]||(t[0]=f=>r.$router.push("/"))},{default:o(()=>[...t[1]||(t[1]=[l("بازگشت به خانه",-1)])]),_:1})]),_:1})])}const x=_(p,[["render",i],["__scopeId","data-v-1080291a"]]);export{x as default}; diff --git a/apps/admin-panel/dist/assets/FacilityList.vue_vue_type_script_setup_true_lang-z3KF0c-X.js b/apps/admin-panel/dist/assets/FacilityList.vue_vue_type_script_setup_true_lang-CXgI4BGC.js similarity index 72% rename from apps/admin-panel/dist/assets/FacilityList.vue_vue_type_script_setup_true_lang-z3KF0c-X.js rename to apps/admin-panel/dist/assets/FacilityList.vue_vue_type_script_setup_true_lang-CXgI4BGC.js index 97ee29d..0dfe84f 100644 --- a/apps/admin-panel/dist/assets/FacilityList.vue_vue_type_script_setup_true_lang-z3KF0c-X.js +++ b/apps/admin-panel/dist/assets/FacilityList.vue_vue_type_script_setup_true_lang-CXgI4BGC.js @@ -1 +1 @@ -import{d as E,a as i,w as l,r as x,o as s,c as d,aj as P,p as w,h as u,E as y,W as B,$ as L,a7 as S,m as v,y as A,J as $,l as I}from"./index-CJij4X3l.js";import{X as N}from"./model-tqsMDjkK.js";import{_ as V}from"./ListPageHeader.vue_vue_type_script_setup_true_lang-D07Lc14a.js";const X={class:"flex gap-2"},T=E({__name:"FacilityList",props:{title:{},model:{},editPath:{},activePath:{},addRid:{},addLabel:{}},setup(a){const k=a,h=I(),m=v(null),c=v(!1),f=v(void 0);function _(){f.value=void 0,c.value=!0}function b(e){f.value=e,c.value=!0}function g(e){c.value=e}function O(){var e;(e=m.value)==null||e.fetch()}function R(e){h.push(`${k.editPath}/${e}`)}async function C(e){var o,n,r;try{await A.get(`${k.activePath}/${e}`),$.success("تغییرات ثبت شد"),(o=m.value)==null||o.fetch()}catch(t){$.error(((r=(n=t==null?void 0:t.response)==null?void 0:n.data)==null?void 0:r.message)??"خطا در تغییر وضعیت")}}return(e,o)=>{const n=x("a-tooltip"),r=x("a-card");return s(),i(r,{title:a.title,class:"page-card"},{default:l(()=>[d(N,{ref_key:"tbl",ref:m,model:a.model,"mobile-cards":""},P({actions:l(({record:t})=>[w("div",X,[a.addRid?(s(),i(n,{key:0,title:"ویرایش"},{default:l(()=>[d(u(y),{class:"cursor-pointer mx-1 text-primary",onClick:p=>b(t.id)},null,8,["onClick"])]),_:2},1024)):(s(),i(n,{key:1,title:"ویرایش"},{default:l(()=>[d(u(y),{class:"cursor-pointer mx-1 text-primary",onClick:p=>R(t.id)},null,8,["onClick"])]),_:2},1024)),d(n,{title:"وضعیت"},{default:l(()=>[t.is_active?(s(),i(u(B),{key:0,class:"cursor-pointer mx-1 text-success",onClick:p=>C(t.id)},null,8,["onClick"])):(s(),i(u(L),{key:1,class:"cursor-pointer mx-1 text-danger",onClick:p=>C(t.id)},null,8,["onClick"]))]),_:2},1024)])]),_:2},[a.addRid?{name:"add",fn:l(()=>[d(V,{rid:a.addRid,"add-label":a.addLabel,onAdd:o[0]||(o[0]=t=>_())},null,8,["rid","add-label"])]),key:"0"}:void 0]),1032,["model"]),S(e.$slots,"form",{open:c.value,editingId:f.value,onUpdateOpen:g,onSuccess:O})]),_:3},8,["title"])}}});export{T as _}; +import{d as E,a as i,w as l,r as x,o as s,c as d,Y as P,p as w,h as u,E as y,W as B,a0 as L,a8 as S,m as v,y as A,J as h,l as I}from"./index-CpVArufm.js";import{X as N}from"./model-mwiDYd1J.js";import{_ as V}from"./ListPageHeader.vue_vue_type_script_setup_true_lang-YlEXklTr.js";const X={class:"flex gap-2"},U=E({__name:"FacilityList",props:{title:{},model:{},editPath:{},activePath:{},addRid:{},addLabel:{}},setup(a){const k=a,$=I(),m=v(null),c=v(!1),f=v(void 0);function _(){f.value=void 0,c.value=!0}function b(e){f.value=e,c.value=!0}function g(e){c.value=e}function O(){var e;(e=m.value)==null||e.fetch()}function R(e){$.push(`${k.editPath}/${e}`)}async function C(e){var o,n,r;try{await A.get(`${k.activePath}/${e}`),h.success("تغییرات ثبت شد"),(o=m.value)==null||o.fetch()}catch(t){h.error(((r=(n=t==null?void 0:t.response)==null?void 0:n.data)==null?void 0:r.message)??"خطا در تغییر وضعیت")}}return(e,o)=>{const n=x("a-tooltip"),r=x("a-card");return s(),i(r,{title:a.title,class:"page-card"},{default:l(()=>[d(N,{ref_key:"tbl",ref:m,model:a.model,"mobile-cards":""},P({actions:l(({record:t})=>[w("div",X,[a.addRid?(s(),i(n,{key:0,title:"ویرایش"},{default:l(()=>[d(u(y),{class:"cursor-pointer mx-1 text-primary",onClick:p=>b(t.id)},null,8,["onClick"])]),_:2},1024)):(s(),i(n,{key:1,title:"ویرایش"},{default:l(()=>[d(u(y),{class:"cursor-pointer mx-1 text-primary",onClick:p=>R(t.id)},null,8,["onClick"])]),_:2},1024)),d(n,{title:"وضعیت"},{default:l(()=>[t.is_active?(s(),i(u(B),{key:0,class:"cursor-pointer mx-1 text-success",onClick:p=>C(t.id)},null,8,["onClick"])):(s(),i(u(L),{key:1,class:"cursor-pointer mx-1 text-danger",onClick:p=>C(t.id)},null,8,["onClick"]))]),_:2},1024)])]),_:2},[a.addRid?{name:"add",fn:l(()=>[d(V,{rid:a.addRid,"add-label":a.addLabel,onAdd:o[0]||(o[0]=t=>_())},null,8,["rid","add-label"])]),key:"0"}:void 0]),1032,["model"]),S(e.$slots,"form",{open:c.value,editingId:f.value,onUpdateOpen:g,onSuccess:O})]),_:3},8,["title"])}}});export{U as _}; diff --git a/apps/admin-panel/dist/assets/FullPage-C6nxZM2C.js b/apps/admin-panel/dist/assets/FullPage-BQwDeh1b.js similarity index 70% rename from apps/admin-panel/dist/assets/FullPage-C6nxZM2C.js rename to apps/admin-panel/dist/assets/FullPage-BQwDeh1b.js index 2f05292..1fd8d62 100644 --- a/apps/admin-panel/dist/assets/FullPage-C6nxZM2C.js +++ b/apps/admin-panel/dist/assets/FullPage-BQwDeh1b.js @@ -1 +1 @@ -import{_ as o,b as t,c,r,o as s}from"./index-CJij4X3l.js";const n={},a={class:"layout--full-page"};function _(l,u){const e=r("router-view");return s(),t("div",a,[c(e)])}const i=o(n,[["render",_]]);export{i as default}; +import{_ as o,b as t,c,r,o as s}from"./index-CpVArufm.js";const n={},a={class:"layout--full-page"};function _(l,u){const e=r("router-view");return s(),t("div",a,[c(e)])}const i=o(n,[["render",_]]);export{i as default}; diff --git a/apps/admin-panel/dist/assets/IamCallback-BqXFuRfL.js b/apps/admin-panel/dist/assets/IamCallback-sHw34Y_i.js similarity index 85% rename from apps/admin-panel/dist/assets/IamCallback-BqXFuRfL.js rename to apps/admin-panel/dist/assets/IamCallback-sHw34Y_i.js index 050c954..e550dfe 100644 --- a/apps/admin-panel/dist/assets/IamCallback-BqXFuRfL.js +++ b/apps/admin-panel/dist/assets/IamCallback-sHw34Y_i.js @@ -1 +1 @@ -import{d as r,x as c,y as n,b as i,l as m,o as d}from"./index-CJij4X3l.js";import{u as _}from"./auth-N_TMNrPz.js";const l={style:{"min-height":"100vh",display:"grid","place-items":"center"}},h=r({__name:"IamCallback",setup(p){const t=m(),o=_();return c(async()=>{const e=new URLSearchParams(window.location.search);if(sessionStorage.removeItem("gb_admin_iam_sso_checked"),e.get("error")||!e.get("code")||!e.get("state")){sessionStorage.setItem("gb_admin_iam_sso_skip","1"),await t.replace("/auth/login");return}try{const{data:s}=await n.post("admin/auth/sso/callback",{code:e.get("code"),state:e.get("state")}),a={...s};delete a.roles,delete a.ut,o.inject(a),await t.replace("/dashboard/ecommerce")}catch{sessionStorage.setItem("gb_admin_iam_sso_skip","1"),await t.replace("/auth/login")}}),(e,s)=>(d(),i("div",l,"در حال ورود..."))}});export{h as default}; +import{d as r,x as c,y as n,b as i,l as m,o as d}from"./index-CpVArufm.js";import{u as _}from"./auth-taL2eAff.js";const l={style:{"min-height":"100vh",display:"grid","place-items":"center"}},h=r({__name:"IamCallback",setup(p){const t=m(),o=_();return c(async()=>{const e=new URLSearchParams(window.location.search);if(sessionStorage.removeItem("gb_admin_iam_sso_checked"),e.get("error")||!e.get("code")||!e.get("state")){sessionStorage.setItem("gb_admin_iam_sso_skip","1"),await t.replace("/auth/login");return}try{const{data:s}=await n.post("admin/auth/sso/callback",{code:e.get("code"),state:e.get("state")}),a={...s};delete a.roles,delete a.ut,o.inject(a),await t.replace("/dashboard/ecommerce")}catch{sessionStorage.setItem("gb_admin_iam_sso_skip","1"),await t.replace("/auth/login")}}),(e,s)=>(d(),i("div",l,"در حال ورود..."))}});export{h as default}; diff --git a/apps/admin-panel/dist/assets/ImageUploadInput.vue_vue_type_script_setup_true_lang-vRgyyG7o.js b/apps/admin-panel/dist/assets/ImageUploadInput.vue_vue_type_script_setup_true_lang-B9gVJPft.js similarity index 96% rename from apps/admin-panel/dist/assets/ImageUploadInput.vue_vue_type_script_setup_true_lang-vRgyyG7o.js rename to apps/admin-panel/dist/assets/ImageUploadInput.vue_vue_type_script_setup_true_lang-B9gVJPft.js index 9de6908..b186867 100644 --- a/apps/admin-panel/dist/assets/ImageUploadInput.vue_vue_type_script_setup_true_lang-vRgyyG7o.js +++ b/apps/admin-panel/dist/assets/ImageUploadInput.vue_vue_type_script_setup_true_lang-B9gVJPft.js @@ -1 +1 @@ -import{d as B,n as P,o as u,b as r,c as m,w as h,a as N,h as b,P as D,p as y,t as I,i as R,m as i,s as S,y as U,J as q,r as f}from"./index-CJij4X3l.js";const z={class:"image-upload"},E={key:0},F={key:1},J={style:{"margin-top":"8px"}},L=["src"],$=B({__name:"ImageUploadInput",props:{modelValue:{default:null},purpose:{default:void 0},placeholder:{default:"بارگذاری"}},emits:["update:modelValue","ok"],setup(g,{emit:w}){const s=g,p=w,c=i(!1),d=i(!1),v=i(""),o=i([]);P(()=>s.modelValue,e=>{var a;e?((a=o.value[0])==null?void 0:a.url)!==e&&(o.value=[{uid:e,name:e.split("/").pop()??"file",status:"done",url:e}]):o.value=[]},{immediate:!0});const V=S(()=>s.placeholder);async function k({file:e}){var l,n;const a=new FormData;a.append("file",e),s.purpose&&a.append("purpose",s.purpose),c.value=!0;try{const{data:t}=await U.post("file/create",a);p("update:modelValue",t.url),p("ok",t)}catch(t){const _=((n=(l=t==null?void 0:t.response)==null?void 0:l.data)==null?void 0:n.message)??"بارگذاری فایل ناموفق بود";q.error(_)}finally{c.value=!1}}function x(){return p("update:modelValue",null),!0}function C(e){v.value=e.url,d.value=!0}return(e,a)=>{const l=f("a-spin"),n=f("a-upload"),t=f("a-modal");return u(),r("div",z,[m(n,{"file-list":o.value,"list-type":"picture-card","max-count":1,accept:"image/*","custom-request":k,onRemove:x,onPreview:C},{default:h(()=>[o.value.length===0?(u(),r("div",E,[c.value?(u(),N(l,{key:0,size:"small"})):(u(),r("div",F,[m(b(D)),y("div",J,I(V.value),1)]))])):R("",!0)]),_:1},8,["file-list"]),m(t,{open:d.value,footer:null,onCancel:a[0]||(a[0]=_=>d.value=!1)},{default:h(()=>[y("img",{src:v.value,style:{width:"100%"},alt:""},null,8,L)]),_:1},8,["open"])])}}});export{$ as _}; +import{d as B,n as P,o as u,b as r,c as m,w as h,a as N,h as b,P as D,p as y,t as I,i as R,m as i,s as S,y as U,J as q,r as f}from"./index-CpVArufm.js";const z={class:"image-upload"},E={key:0},F={key:1},J={style:{"margin-top":"8px"}},L=["src"],$=B({__name:"ImageUploadInput",props:{modelValue:{default:null},purpose:{default:void 0},placeholder:{default:"بارگذاری"}},emits:["update:modelValue","ok"],setup(g,{emit:w}){const s=g,p=w,c=i(!1),d=i(!1),v=i(""),o=i([]);P(()=>s.modelValue,e=>{var a;e?((a=o.value[0])==null?void 0:a.url)!==e&&(o.value=[{uid:e,name:e.split("/").pop()??"file",status:"done",url:e}]):o.value=[]},{immediate:!0});const V=S(()=>s.placeholder);async function k({file:e}){var l,n;const a=new FormData;a.append("file",e),s.purpose&&a.append("purpose",s.purpose),c.value=!0;try{const{data:t}=await U.post("file/create",a);p("update:modelValue",t.url),p("ok",t)}catch(t){const _=((n=(l=t==null?void 0:t.response)==null?void 0:l.data)==null?void 0:n.message)??"بارگذاری فایل ناموفق بود";q.error(_)}finally{c.value=!1}}function x(){return p("update:modelValue",null),!0}function C(e){v.value=e.url,d.value=!0}return(e,a)=>{const l=f("a-spin"),n=f("a-upload"),t=f("a-modal");return u(),r("div",z,[m(n,{"file-list":o.value,"list-type":"picture-card","max-count":1,accept:"image/*","custom-request":k,onRemove:x,onPreview:C},{default:h(()=>[o.value.length===0?(u(),r("div",E,[c.value?(u(),N(l,{key:0,size:"small"})):(u(),r("div",F,[m(b(D)),y("div",J,I(V.value),1)]))])):R("",!0)]),_:1},8,["file-list"]),m(t,{open:d.value,footer:null,onCancel:a[0]||(a[0]=_=>d.value=!1)},{default:h(()=>[y("img",{src:v.value,style:{width:"100%"},alt:""},null,8,L)]),_:1},8,["open"])])}}});export{$ as _}; diff --git a/apps/admin-panel/dist/assets/List-166e0qeN.js b/apps/admin-panel/dist/assets/List-166e0qeN.js deleted file mode 100644 index a57211f..0000000 --- a/apps/admin-panel/dist/assets/List-166e0qeN.js +++ /dev/null @@ -1 +0,0 @@ -import{a as $,b as s,X as B}from"./model-tqsMDjkK.js";import{_ as E}from"./ListPageHeader.vue_vue_type_script_setup_true_lang-D07Lc14a.js";import{_ as X}from"./Add.vue_vue_type_script_setup_true_lang-Zo2rdVSj.js";import{d as D,u as M,b as O,c as i,w as o,r as u,o as c,h as m,a as f,E as T,i as b,G as V,p as w,m as _}from"./index-CJij4X3l.js";import{u as A}from"./useDeleteHandler-DuEp06Uq.js";import"./filters-BPYO-DKN.js";import"./index-CKg-8s_Z.js";import"./SettingOutlined-BJxMXy1I.js";import"./BaseFormModal.vue_vue_type_style_index_0_lang-YLHOAWTN.js";import"./ImageUploadInput.vue_vue_type_script_setup_true_lang-vRgyyG7o.js";function I(){const t=new $("admin/categories/list","لیست دسته بندی");return t.add(new s("id","شماره").filterNumber()),t.add(new s("image","تصویر").noSort().renderSlot("image")),t.add(new s("type_str","نوع نمایش")),t.add(new s("title","عنوان دسته").filterNumber()),t.add(new s("parent.title","پدر دسته").filterNumber()),t.add(new s("opt","عملیات").noSort().renderSlot("opt")),t}const P={id:"page-user-list"},U=["src"],j="/img/no-items.png",W=D({__name:"List",setup(t){const k=M(),g=n=>!!k.hasPermission(n),y=I(),p=_(null),r=_(!1),l=_(void 0),{remove:x}=A({onSuccess:()=>{var n;return(n=p.value)==null?void 0:n.fetch()},successMessage:"دسته حذف شد",successType:"info",fallbackErrorMessage:"خطا در حذف دسته"});function C(){l.value=void 0,r.value=!0}function S(n){l.value=n,r.value=!0}return(n,a)=>{const v=u("a-tooltip"),h=u("a-popconfirm"),N=u("a-card");return c(),O("div",P,[i(N,{title:"لیست دسته بندی ها",class:"page-card"},{default:o(()=>[i(B,{ref_key:"tbl",ref:p,model:m(y),"mobile-cards":""},{add:o(()=>[i(E,{rid:"collection.create","add-label":"افزودن دسته",onAdd:C})]),image:o(({text:e})=>[w("img",{width:"90px",height:"90px",style:{"object-fit":"scale-down"},src:e&&e.image?e.image:j},null,8,U)]),opt:o(({record:e})=>[g("collection.list.edit")?(c(),f(v,{key:0,title:"ویرایش"},{default:o(()=>[i(m(T),{class:"cursor-pointer mx-1 text-primary",onClick:d=>S(e.id)},null,8,["onClick"])]),_:2},1024)):b("",!0),g("collection.list.remove")?(c(),f(v,{key:1,title:"حذف"},{default:o(()=>[i(h,{placement:"top","ok-text":"بله","cancel-text":"خیر",onConfirm:d=>m(x)(`category/${e.id}`)},{title:o(()=>[...a[2]||(a[2]=[w("p",null,"آیا مطمئن به حذف دسته مورد نظر هستید ؟",-1)])]),default:o(()=>[i(m(V),{class:"cursor-pointer mx-1 text-danger"})]),_:1},8,["onConfirm"])]),_:2},1024)):b("",!0)]),_:1},8,["model"]),(c(),f(X,{key:l.value??"new",open:r.value,id:l.value,"onUpdate:open":a[0]||(a[0]=e=>r.value=e),onSuccess:a[1]||(a[1]=e=>{var d;return(d=p.value)==null?void 0:d.fetch()})},null,8,["open","id"]))]),_:1})])}}});export{W as default}; diff --git a/apps/admin-panel/dist/assets/List-CLqbrntB.js b/apps/admin-panel/dist/assets/List-BRVkWgnF.js similarity index 91% rename from apps/admin-panel/dist/assets/List-CLqbrntB.js rename to apps/admin-panel/dist/assets/List-BRVkWgnF.js index a2570b5..b51a546 100644 --- a/apps/admin-panel/dist/assets/List-CLqbrntB.js +++ b/apps/admin-panel/dist/assets/List-BRVkWgnF.js @@ -1 +1 @@ -import{u as V,d as oe,b as d,c as n,w as t,s as ae,r as c,o as a,h as X,H as le,t as s,i as m,p as w,a as _,F,e as K,f as r,m as U,y as j,J as h,X as ne,_ as se}from"./index-CJij4X3l.js";import{a as re,b as v,X as ie}from"./model-tqsMDjkK.js";import{_ as P}from"./TooltipBtn.vue_vue_type_script_setup_true_lang-xFR71kab.js";import{a as de,j as ue}from"./filters-BPYO-DKN.js";import"./SettingOutlined-BJxMXy1I.js";import"./icons-BplZzYUR.js";import"./UnorderedListOutlined-CHqEItu3.js";import"./PercentageOutlined-CtwjLYTJ.js";import"./UserAddOutlined-Dac4nUC8.js";import"./CreditCardOutlined-Cz1giwnr.js";import"./AppstoreOutlined-DvD8zs_r.js";import"./TeamOutlined-Bdydtt7N.js";import"./UserOutlined-yq90mQcC.js";import"./CameraOutlined-BcxYWwtK.js";import"./index-CKg-8s_Z.js";function ce(){const u=new re("admin/orders/list","لیست سفارش های تک فروشی");u.add(new v("id","شماره").filterNumber()),u.add(new v("customer.fname","نام مشتری").filterKey("customer.fullName").filterText()),u.add(new v("customer.lname","نام خانوادگی").filterKey("customer.fullName").filterText()),u.add(new v("total_price","جمع کل سفارش").renderSlot("total_price").filterText()),u.add(new v("items","تعداد آیتم ها").renderSlot("items_len").noSort()),u.add(new v("caj","تاریخ ثبت").filterKey("createdAt").filterDate().noSort()),u.add(new v("uaj","تاریخ ویرایش").hidden().filterKey("updatedAt").filterDate().noSort()),u.add(new v("user","ثبت کننده").renderSlot("user").noSort());const $=V();return $.roles&&$.roles.includes("order.tamin.state")&&(u.add(new v("sts_str","وضعیت").renderSlot("sts").noSort()),u.add(new v("branch.name","نام شعبه").filterText().noSort())),u.add(new v("opt","عملیات").noSort().renderSlot("opt")),u}const _e={id:"page-user-list"},fe={class:"flex"},me={key:0},pe={key:0},ve={key:1},ye={key:0},ke=["onClick"],be={key:1},we={class:"flex flex-col"},ge={key:0},he={class:"flex"},Ce={class:"flex-1"},Se={key:1,class:"flex items-center"},xe={key:2},Ue={key:0},$e={class:"flex justify-between"},Ne=oe({__name:"List",setup(u){const $=V(),k=l=>!!$.hasPermission(l),q=ce(),N=U(null),i=U(void 0),C=U(!1),S=U(!1),x=U(!1),M=ae(()=>ne()),L=l=>l?ue(l):"";function z(l){return l.proceed?"green":"gray"}async function A(l){l.branch_id||(i.value=await T(l.id),S.value=!0)}async function T(l){const{data:o}=await j.get(`admin/orders/${l}`);return o}async function O(l){var o,p;try{await j.post("single/order-sts/edit",{orderId:(o=i.value)==null?void 0:o.id,status:l.status,note:l.note}),S.value=!1,h.info("ویرایش موفق آمیز"),(p=N.value)==null||p.fetch()}catch{h.error("خطا در ویرایش")}}async function E(l){var o,p;try{await j.post("single/order-sts/edit",{orderId:(o=i.value)==null?void 0:o.id,status:l.status,note:l.note,remove:!0}),S.value=!1,h.info("ویرایش موفق آمیز"),(p=N.value)==null||p.fetch()}catch{h.error("خطا در ویرایش")}}async function H(){var l;try{x.value=!x.value,C.value=!C.value,h.info("ویرایش موفق آمیز"),(l=N.value)==null||l.fetch()}catch{h.error("خطا در ویرایش")}}async function J(l){i.value=await T(l.id),C.value=!0}async function G(l){h.warning("خروجی PDF هنوز در بک‌اند جدید پیاده‌سازی نشده است")}return(l,o)=>{const p=c("a-tag"),g=c("a-button"),Q=c("a-popconfirm"),W=c("a-input"),Y=c("a-timeline-item"),Z=c("a-timeline"),B=c("a-modal"),y=c("a-descriptions-item"),D=c("a-descriptions"),I=c("a-input-number"),ee=c("a-divider"),R=c("a-card"),te=c("a-empty");return a(),d("div",_e,[n(R,{title:M.value?"لیست سفارش":"لیست سفارش های تک فروشی",class:"page-card"},{default:t(()=>[n(ie,{ref_key:"tbl",ref:N,model:X(q),"mobile-cards":""},{opt:t(({record:e})=>[w("div",fe,[k("order.list.view")?(a(),_(P,{key:0,"icon-class":"w-5 h-5 text-primary",class:"mr-3",icon:"ListIcon",title:"مشاهده سفارش",onClick:f=>J(e)},null,8,["onClick"])):m("",!0),k("order.list.pdf")?(a(),_(P,{key:1,"icon-class":"w-5 h-5 text-danger",class:"mr-3",icon:"FileIcon",title:"دانلود pdf",onClick:f=>G(e.id)},null,8,["onClick"])):m("",!0)])]),items_len:t(({text:e})=>[e?(a(),d("div",me,s(e.length),1)):m("",!0)]),user:t(({text:e,record:f})=>[e?(a(),d("div",pe,s(e.name),1)):(a(),d("div",ve,s(f.customer.fname+" "+f.customer.lname),1))]),total_price:t(({text:e})=>[e?(a(),d("div",ye,s(X(de)(e)),1)):m("",!0)]),sts:t(({text:e,record:f})=>[k("order.list.sts")?(a(),d("a",{key:0,href:"",onClick:le(b=>A(f),["prevent"])},s(e),9,ke)):(a(),d("span",be,s(e),1))]),_:1},8,["model"]),n(B,{open:S.value,"onUpdate:open":o[1]||(o[1]=e=>S.value=e),title:"وضعیت سفارش","wrap-class-name":"detail-modal"},{footer:t(()=>[n(g,{onClick:o[0]||(o[0]=e=>S.value=!1)},{default:t(()=>[...o[8]||(o[8]=[r("باشه",-1)])]),_:1})]),default:t(()=>[i.value?(a(),_(Z,{key:0},{default:t(()=>[(a(!0),d(F,null,K(i.value.activity,(e,f)=>(a(),_(Y,{key:f,color:z(e)},{default:t(()=>[w("div",we,[w("div",null,s(e.title),1),e.proceed?(a(),d("div",ge,[w("div",he,[w("div",Ce,[n(p,null,{default:t(()=>[r(s(L(e.uaj)),1)]),_:2},1024)]),f>0&&k("order.list.sts.remove")?(a(),_(Q,{key:0,"ok-text":"بله","cancel-text":"بی خیال",onConfirm:b=>E(e)},{title:t(()=>[...o[5]||(o[5]=[w("p",null,"آیا مطمئن به حذف وضعیت مورد نظر هستید ؟",-1)])]),default:t(()=>[n(g,{size:"small",danger:""},{default:t(()=>[...o[6]||(o[6]=[r("حذف وضعیت",-1)])]),_:1})]),_:1},8,["onConfirm"])):m("",!0)])])):m("",!0),!e.proceed&&k("order.list.sts.submit")?(a(),d("div",Se,[n(W,{value:e.note,"onUpdate:value":b=>e.note=b,placeholder:"یادداشت"},null,8,["value","onUpdate:value"]),n(g,{type:"text",size:"small",onClick:b=>O(e)},{default:t(()=>[...o[7]||(o[7]=[r("ثبت وضعیت",-1)])]),_:1},8,["onClick"])])):m("",!0),e.proceed?(a(),d("div",xe,s(e.note),1)):m("",!0)])]),_:2},1032,["color"]))),128))]),_:1})):m("",!0)]),_:1},8,["open"]),n(B,{open:C.value,"onUpdate:open":o[4]||(o[4]=e=>C.value=e),title:"مشاهده سفارش",width:"80%","wrap-class-name":"detail-modal"},{footer:t(()=>[w("div",$e,[n(g,{onClick:o[2]||(o[2]=e=>C.value=!1)},{default:t(()=>[...o[9]||(o[9]=[r("باشه",-1)])]),_:1}),x.value&&k("order.list.view.edit")?(a(),_(g,{key:0,danger:"",onClick:o[3]||(o[3]=e=>H())},{default:t(()=>[...o[10]||(o[10]=[r(" ویرایش سفارش ",-1)])]),_:1})):m("",!0)])]),default:t(()=>[i.value?(a(),d("div",Ue,[n(D,null,{default:t(()=>[n(y,{label:"مشتری"},{default:t(()=>[r(s(i.value.customer.fname)+" "+s(i.value.customer.lname),1)]),_:1}),n(y,{label:"تلفن همراه"},{default:t(()=>[r(s(i.value.customer.phone),1)]),_:1}),n(y,{label:"تاریخ ثبت"},{default:t(()=>[r(s(L(i.value.caj)),1)]),_:1}),n(y,{label:"وضعیت"},{default:t(()=>[r(s(i.value.sts_str),1)]),_:1})]),_:1}),n(R,{title:"آیتم های سفارش"},{default:t(()=>[(a(!0),d(F,null,K(i.value.items,(e,f)=>(a(),d("div",{key:f},[n(D,null,{default:t(()=>[n(y,{label:"نام محصول"},{default:t(()=>[n(p,{color:"blue"},{default:t(()=>[r(s(e.title),1)]),_:2},1024)]),_:2},1024),n(y,{label:"عنوان تنوع"},{default:t(()=>[r(s(e.variant_title),1)]),_:2},1024),n(y,{label:"وزن نهایی"},{default:t(()=>[x.value&&k("order.list.view.edit")?(a(),_(I,{key:0,value:e.grams,"onUpdate:value":b=>e.grams=b,class:"w-full mt-0"},null,8,["value","onUpdate:value"])):(a(),_(p,{key:1,color:"red"},{default:t(()=>[r(s(e.grams),1)]),_:2},1024))]),_:2},1024),n(y,{label:"تعداد"},{default:t(()=>[x.value&&k("order.list.view.edit")?(a(),_(I,{key:0,value:e.qty,"onUpdate:value":b=>e.qty=b},null,8,["value","onUpdate:value"])):(a(),_(p,{key:1,color:"orange"},{default:t(()=>[r(s(e.qty),1)]),_:2},1024))]),_:2},1024),Number(e.flatRialCharge)>0?(a(),_(y,{key:0,label:"اجرت ریالی"},{default:t(()=>[n(p,null,{default:t(()=>[r(s(Number(e.flatRialCharge).toLocaleString("fa-IR"))+" ریال",1)]),_:2},1024)]),_:2},1024)):m("",!0),n(y,{label:"توضیحات"},{default:t(()=>[w("div",null,s(e.note),1)]),_:2},1024)]),_:2},1024),f!!$.hasPermission(l),q=ce(),N=U(null),i=U(void 0),C=U(!1),S=U(!1),x=U(!1),M=ae(()=>ne()),L=l=>l?ue(l):"";function z(l){return l.proceed?"green":"gray"}async function A(l){l.branch_id||(i.value=await T(l.id),S.value=!0)}async function T(l){const{data:o}=await j.get(`admin/orders/${l}`);return o}async function O(l){var o,p;try{await j.post("single/order-sts/edit",{orderId:(o=i.value)==null?void 0:o.id,status:l.status,note:l.note}),S.value=!1,h.info("ویرایش موفق آمیز"),(p=N.value)==null||p.fetch()}catch{h.error("خطا در ویرایش")}}async function E(l){var o,p;try{await j.post("single/order-sts/edit",{orderId:(o=i.value)==null?void 0:o.id,status:l.status,note:l.note,remove:!0}),S.value=!1,h.info("ویرایش موفق آمیز"),(p=N.value)==null||p.fetch()}catch{h.error("خطا در ویرایش")}}async function H(){var l;try{x.value=!x.value,C.value=!C.value,h.info("ویرایش موفق آمیز"),(l=N.value)==null||l.fetch()}catch{h.error("خطا در ویرایش")}}async function J(l){i.value=await T(l.id),C.value=!0}async function G(l){h.warning("خروجی PDF هنوز در بک‌اند جدید پیاده‌سازی نشده است")}return(l,o)=>{const p=c("a-tag"),g=c("a-button"),Q=c("a-popconfirm"),W=c("a-input"),Y=c("a-timeline-item"),Z=c("a-timeline"),B=c("a-modal"),y=c("a-descriptions-item"),D=c("a-descriptions"),I=c("a-input-number"),ee=c("a-divider"),R=c("a-card"),te=c("a-empty");return a(),d("div",_e,[n(R,{title:M.value?"لیست سفارش":"لیست سفارش های تک فروشی",class:"page-card"},{default:t(()=>[n(ie,{ref_key:"tbl",ref:N,model:X(q),"mobile-cards":""},{opt:t(({record:e})=>[w("div",fe,[k("order.list.view")?(a(),_(P,{key:0,"icon-class":"w-5 h-5 text-primary",class:"mr-3",icon:"ListIcon",title:"مشاهده سفارش",onClick:f=>J(e)},null,8,["onClick"])):m("",!0),k("order.list.pdf")?(a(),_(P,{key:1,"icon-class":"w-5 h-5 text-danger",class:"mr-3",icon:"FileIcon",title:"دانلود pdf",onClick:f=>G(e.id)},null,8,["onClick"])):m("",!0)])]),items_len:t(({text:e})=>[e?(a(),d("div",me,s(e.length),1)):m("",!0)]),user:t(({text:e,record:f})=>[e?(a(),d("div",pe,s(e.name),1)):(a(),d("div",ve,s(f.customer.fname+" "+f.customer.lname),1))]),total_price:t(({text:e})=>[e?(a(),d("div",ye,s(X(de)(e)),1)):m("",!0)]),sts:t(({text:e,record:f})=>[k("order.list.sts")?(a(),d("a",{key:0,href:"",onClick:le(b=>A(f),["prevent"])},s(e),9,ke)):(a(),d("span",be,s(e),1))]),_:1},8,["model"]),n(B,{open:S.value,"onUpdate:open":o[1]||(o[1]=e=>S.value=e),title:"وضعیت سفارش","wrap-class-name":"detail-modal"},{footer:t(()=>[n(g,{onClick:o[0]||(o[0]=e=>S.value=!1)},{default:t(()=>[...o[8]||(o[8]=[r("باشه",-1)])]),_:1})]),default:t(()=>[i.value?(a(),_(Z,{key:0},{default:t(()=>[(a(!0),d(F,null,K(i.value.activity,(e,f)=>(a(),_(Y,{key:f,color:z(e)},{default:t(()=>[w("div",we,[w("div",null,s(e.title),1),e.proceed?(a(),d("div",ge,[w("div",he,[w("div",Ce,[n(p,null,{default:t(()=>[r(s(L(e.uaj)),1)]),_:2},1024)]),f>0&&k("order.list.sts.remove")?(a(),_(Q,{key:0,"ok-text":"بله","cancel-text":"بی خیال",onConfirm:b=>E(e)},{title:t(()=>[...o[5]||(o[5]=[w("p",null,"آیا مطمئن به حذف وضعیت مورد نظر هستید ؟",-1)])]),default:t(()=>[n(g,{size:"small",danger:""},{default:t(()=>[...o[6]||(o[6]=[r("حذف وضعیت",-1)])]),_:1})]),_:1},8,["onConfirm"])):m("",!0)])])):m("",!0),!e.proceed&&k("order.list.sts.submit")?(a(),d("div",Se,[n(W,{value:e.note,"onUpdate:value":b=>e.note=b,placeholder:"یادداشت"},null,8,["value","onUpdate:value"]),n(g,{type:"text",size:"small",onClick:b=>O(e)},{default:t(()=>[...o[7]||(o[7]=[r("ثبت وضعیت",-1)])]),_:1},8,["onClick"])])):m("",!0),e.proceed?(a(),d("div",xe,s(e.note),1)):m("",!0)])]),_:2},1032,["color"]))),128))]),_:1})):m("",!0)]),_:1},8,["open"]),n(B,{open:C.value,"onUpdate:open":o[4]||(o[4]=e=>C.value=e),title:"مشاهده سفارش",width:"80%","wrap-class-name":"detail-modal"},{footer:t(()=>[w("div",$e,[n(g,{onClick:o[2]||(o[2]=e=>C.value=!1)},{default:t(()=>[...o[9]||(o[9]=[r("باشه",-1)])]),_:1}),x.value&&k("order.list.view.edit")?(a(),_(g,{key:0,danger:"",onClick:o[3]||(o[3]=e=>H())},{default:t(()=>[...o[10]||(o[10]=[r(" ویرایش سفارش ",-1)])]),_:1})):m("",!0)])]),default:t(()=>[i.value?(a(),d("div",Ue,[n(D,null,{default:t(()=>[n(y,{label:"مشتری"},{default:t(()=>[r(s(i.value.customer.fname)+" "+s(i.value.customer.lname),1)]),_:1}),n(y,{label:"تلفن همراه"},{default:t(()=>[r(s(i.value.customer.phone),1)]),_:1}),n(y,{label:"تاریخ ثبت"},{default:t(()=>[r(s(L(i.value.caj)),1)]),_:1}),n(y,{label:"وضعیت"},{default:t(()=>[r(s(i.value.sts_str),1)]),_:1})]),_:1}),n(R,{title:"آیتم های سفارش"},{default:t(()=>[(a(!0),d(F,null,K(i.value.items,(e,f)=>(a(),d("div",{key:f},[n(D,null,{default:t(()=>[n(y,{label:"نام محصول"},{default:t(()=>[n(p,{color:"blue"},{default:t(()=>[r(s(e.title),1)]),_:2},1024)]),_:2},1024),n(y,{label:"عنوان تنوع"},{default:t(()=>[r(s(e.variant_title),1)]),_:2},1024),n(y,{label:"وزن نهایی"},{default:t(()=>[x.value&&k("order.list.view.edit")?(a(),_(I,{key:0,value:e.grams,"onUpdate:value":b=>e.grams=b,class:"w-full mt-0"},null,8,["value","onUpdate:value"])):(a(),_(p,{key:1,color:"red"},{default:t(()=>[r(s(e.grams),1)]),_:2},1024))]),_:2},1024),n(y,{label:"تعداد"},{default:t(()=>[x.value&&k("order.list.view.edit")?(a(),_(I,{key:0,value:e.qty,"onUpdate:value":b=>e.qty=b},null,8,["value","onUpdate:value"])):(a(),_(p,{key:1,color:"orange"},{default:t(()=>[r(s(e.qty),1)]),_:2},1024))]),_:2},1024),Number(e.flatRialCharge)>0?(a(),_(y,{key:0,label:"اجرت ریالی"},{default:t(()=>[n(p,null,{default:t(()=>[r(s(Number(e.flatRialCharge).toLocaleString("fa-IR"))+" ریال",1)]),_:2},1024)]),_:2},1024)):m("",!0),n(y,{label:"توضیحات"},{default:t(()=>[w("div",null,s(e.note),1)]),_:2},1024)]),_:2},1024),f!!k.hasPermission(n),y=I(),p=_(null),r=_(!1),l=_(void 0),{remove:x}=A({onSuccess:()=>{var n;return(n=p.value)==null?void 0:n.fetch()},successMessage:"دسته حذف شد",successType:"info",fallbackErrorMessage:"خطا در حذف دسته"});function C(){l.value=void 0,r.value=!0}function S(n){l.value=n,r.value=!0}return(n,a)=>{const v=u("a-tooltip"),h=u("a-popconfirm"),N=u("a-card");return c(),O("div",P,[i(N,{title:"لیست دسته بندی ها",class:"page-card"},{default:o(()=>[i(B,{ref_key:"tbl",ref:p,model:m(y),"mobile-cards":""},{add:o(()=>[i(E,{rid:"collection.create","add-label":"افزودن دسته",onAdd:C})]),image:o(({text:e})=>[w("img",{width:"90px",height:"90px",style:{"object-fit":"scale-down"},src:e&&e.image?e.image:j},null,8,U)]),opt:o(({record:e})=>[g("collection.list.edit")?(c(),f(v,{key:0,title:"ویرایش"},{default:o(()=>[i(m(T),{class:"cursor-pointer mx-1 text-primary",onClick:d=>S(e.id)},null,8,["onClick"])]),_:2},1024)):b("",!0),g("collection.list.remove")?(c(),f(v,{key:1,title:"حذف"},{default:o(()=>[i(h,{placement:"top","ok-text":"بله","cancel-text":"خیر",onConfirm:d=>m(x)(`category/${e.id}`)},{title:o(()=>[...a[2]||(a[2]=[w("p",null,"آیا مطمئن به حذف دسته مورد نظر هستید ؟",-1)])]),default:o(()=>[i(m(V),{class:"cursor-pointer mx-1 text-danger"})]),_:1},8,["onConfirm"])]),_:2},1024)):b("",!0)]),_:1},8,["model"]),(c(),f(X,{key:l.value??"new",open:r.value,id:l.value,"onUpdate:open":a[0]||(a[0]=e=>r.value=e),onSuccess:a[1]||(a[1]=e=>{var d;return(d=p.value)==null?void 0:d.fetch()})},null,8,["open","id"]))]),_:1})])}}});export{Y as default}; diff --git a/apps/admin-panel/dist/assets/ListBranches-C7SXu9cB.js b/apps/admin-panel/dist/assets/ListBranches-C7SXu9cB.js deleted file mode 100644 index 0c9bb03..0000000 --- a/apps/admin-panel/dist/assets/ListBranches-C7SXu9cB.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as m}from"./FacilityList.vue_vue_type_script_setup_true_lang-z3KF0c-X.js";import{_ as c}from"./AddBranches.vue_vue_type_script_setup_true_lang-CIZbMJ7d.js";import{a as p,b as t}from"./model-tqsMDjkK.js";import{d as l,a as n,w as f,h as _,o}from"./index-CJij4X3l.js";import"./ListPageHeader.vue_vue_type_script_setup_true_lang-D07Lc14a.js";import"./BaseFormModal.vue_vue_type_style_index_0_lang-YLHOAWTN.js";import"./filters-BPYO-DKN.js";import"./index-CKg-8s_Z.js";import"./SettingOutlined-BJxMXy1I.js";function u(){const e=new p("admin/branches/list","لیست شعب");return e.add(new t("name","نام").filterText()),e.add(new t("address","آدرس").filterText()),e.add(new t("phone","شماره تلفن").filterNumber()),e.add(new t("user.name","مدیر شعبه").filterNumber().noSort()),e.add(new t("op","عملیات").noSort().renderSlot("actions")),e}const N=l({__name:"ListBranches",setup(e){const r=u();return(h,b)=>(o(),n(m,{title:"لیست شعب",model:_(r),"edit-path":"/branch/edit","active-path":"branch/active","add-rid":"branch.create","add-label":"افزودن شعبه"},{form:f(({open:d,editingId:a,onUpdateOpen:i,onSuccess:s})=>[(o(),n(c,{key:a??"new",open:d,id:a,"onUpdate:open":i,onSuccess:s},null,8,["open","id","onUpdate:open","onSuccess"]))]),_:1},8,["model"]))}});export{N as default}; diff --git a/apps/admin-panel/dist/assets/ListBranches-HWP1sgoA.js b/apps/admin-panel/dist/assets/ListBranches-HWP1sgoA.js new file mode 100644 index 0000000..7dacb57 --- /dev/null +++ b/apps/admin-panel/dist/assets/ListBranches-HWP1sgoA.js @@ -0,0 +1 @@ +import{_ as m}from"./FacilityList.vue_vue_type_script_setup_true_lang-CXgI4BGC.js";import{_ as c}from"./AddBranches.vue_vue_type_script_setup_true_lang-Ds4yo_72.js";import{a as p,b as t}from"./model-mwiDYd1J.js";import{d as l,a as o,w as f,h as _,o as r}from"./index-CpVArufm.js";import"./ListPageHeader.vue_vue_type_script_setup_true_lang-YlEXklTr.js";import"./select--BgT6D7O.js";import"./BaseFormModal.vue_vue_type_style_index_0_lang-B4iVMhZt.js";import"./filters-CoNJlguG.js";import"./index-DjZc5EYL.js";import"./SettingOutlined-E4OknxY2.js";function u(){const e=new p("admin/branches/list","لیست شعب");return e.add(new t("name","نام").filterText()),e.add(new t("address","آدرس").filterText()),e.add(new t("phone","شماره تلفن").filterNumber()),e.add(new t("user.name","مدیر شعبه").filterNumber().noSort()),e.add(new t("op","عملیات").noSort().renderSlot("actions")),e}const U=l({__name:"ListBranches",setup(e){const n=u();return(h,b)=>(r(),o(m,{title:"لیست شعب",model:_(n),"edit-path":"/branch/edit","active-path":"branch/active","add-rid":"branch.create","add-label":"افزودن شعبه"},{form:f(({open:i,editingId:a,onUpdateOpen:d,onSuccess:s})=>[(r(),o(c,{key:a??"new",open:i,id:a,"onUpdate:open":d,onSuccess:s},null,8,["open","id","onUpdate:open","onSuccess"]))]),_:1},8,["model"]))}});export{U as default}; diff --git a/apps/admin-panel/dist/assets/ListInvoice-C0gF64PN.js b/apps/admin-panel/dist/assets/ListInvoice-C0gF64PN.js deleted file mode 100644 index 6006231..0000000 --- a/apps/admin-panel/dist/assets/ListInvoice-C0gF64PN.js +++ /dev/null @@ -1 +0,0 @@ -import{a as M,b as d,X as V}from"./model-tqsMDjkK.js";import{_ as h}from"./ListPageHeader.vue_vue_type_script_setup_true_lang-D07Lc14a.js";import z from"./AddInvoice-DdE29E9r.js";import{j as K}from"./filters-BPYO-DKN.js";import{u as R}from"./useDeleteHandler-DuEp06Uq.js";import{d as U,b as g,c as e,w as t,r as s,o as x,h as p,p as y,R as G,E as H,G as q,f as r,t as u,a as C,m as _,y as F,_ as J}from"./index-CJij4X3l.js";import"./SettingOutlined-BJxMXy1I.js";import"./BaseFormModal.vue_vue_type_style_index_0_lang-YLHOAWTN.js";import"./index-CKg-8s_Z.js";function P(){const n=new M("admin/invoices/list","لیست فاکتورها");return n.add(new d("id","ردیف").filterNumber()),n.add(new d("name","نام مشتری").filterKey("branch.name").filterText()),n.add(new d("sum_weight","جمع کل سفارش").filterNumber().noSort()),n.add(new d("count_item","تعداد آیتم ها").filterNumber().noSort()),n.add(new d("caj","تاریخ ثبت").filterKey("createdAt").filterDate().noSort()),n.add(new d("allocator_user.name","ثبت کننده").renderSlot("user").noSort()),n.add(new d("note","توضیحات").filterText().noSort()),n.add(new d("op","عملیات").noSort().renderSlot("actions")),n}const Q={id:"page-user-list"},W={class:"flex gap-2"},Y={key:0},Z=U({__name:"ListInvoice",setup(n){const S=P(),w=_(null),f=_(!1),l=_(void 0),v=_(!1),b=_(void 0);function I(){b.value=void 0,v.value=!0}function $(c){b.value=c,v.value=!0}const E=[{title:"کد محصول",dataIndex:"product_code"},{title:"نام محصول",dataIndex:"title"},{title:"وزن",dataIndex:"grams"}];async function N(c){const{data:o}=await F.get(`branch/product/${c.id}`);l.value=o,f.value=!0}const{remove:D}=R({onSuccess:()=>{var c;return(c=w.value)==null?void 0:c.fetch()},successMessage:"فاکتور حذف شد",fallbackErrorMessage:"خطا در حذف فاکتور"});return(c,o)=>{const k=s("a-tooltip"),T=s("a-popconfirm"),m=s("a-descriptions-item"),j=s("a-descriptions"),A=s("a-table"),B=s("a-empty"),O=s("a-button"),X=s("a-modal"),L=s("a-card");return x(),g("div",Q,[e(L,{title:"لیست فاکتورها",class:"page-card"},{default:t(()=>[e(V,{ref_key:"tbl",ref:w,model:p(S),"mobile-cards":""},{add:t(()=>[e(h,{rid:"invoice.create","add-label":"افزودن فاکتور",onAdd:I})]),user:t(({record:a})=>{var i;return[r(u(((i=a.allocator_user)==null?void 0:i.name)??"-"),1)]}),actions:t(({record:a})=>[y("div",W,[e(k,{title:"مشاهده"},{default:t(()=>[e(p(G),{class:"cursor-pointer mx-1 text-success",onClick:i=>N(a)},null,8,["onClick"])]),_:2},1024),e(k,{title:"ویرایش"},{default:t(()=>[e(p(H),{class:"cursor-pointer mx-1 text-primary",onClick:i=>$(a.id)},null,8,["onClick"])]),_:2},1024),e(k,{title:"حذف"},{default:t(()=>[e(T,{placement:"top","ok-text":"بله","cancel-text":"خیر",onConfirm:i=>p(D)(`branch/product/${a.id}`)},{title:t(()=>[...o[4]||(o[4]=[y("p",null,"آیا مطمئن به حذف فاکتور مورد نظر هستید ؟",-1)])]),default:t(()=>[e(p(q),{class:"cursor-pointer mx-1 text-danger"})]),_:1},8,["onConfirm"])]),_:2},1024)])]),_:1},8,["model"]),e(X,{open:f.value,"onUpdate:open":o[1]||(o[1]=a=>f.value=a),title:"مشاهده فاکتور",width:"70%","wrap-class-name":"detail-modal"},{footer:t(()=>[e(O,{onClick:o[0]||(o[0]=a=>f.value=!1)},{default:t(()=>[...o[5]||(o[5]=[r("بستن",-1)])]),_:1})]),default:t(()=>[l.value?(x(),g("div",Y,[e(j,{bordered:"",size:"small",column:{xxl:2,xl:2,lg:2,md:2,sm:2,xs:1}},{default:t(()=>[e(m,{label:"شعبه"},{default:t(()=>[r(u(l.value.name),1)]),_:1}),e(m,{label:"ثبت کننده"},{default:t(()=>{var a;return[r(u(((a=l.value.allocator_user)==null?void 0:a.name)??"-"),1)]}),_:1}),e(m,{label:"تاریخ ثبت"},{default:t(()=>[r(u(p(K)(l.value.caj)),1)]),_:1}),e(m,{label:"تعداد آیتم"},{default:t(()=>[r(u(l.value.count_item),1)]),_:1}),e(m,{label:"جمع وزن"},{default:t(()=>[r(u(l.value.sum_weight),1)]),_:1}),e(m,{label:"توضیحات"},{default:t(()=>[r(u(l.value.note??"-"),1)]),_:1})]),_:1}),e(A,{class:"mt-4",size:"small","data-source":l.value.products,columns:E,pagination:!1,"row-key":"id"},null,8,["data-source"])])):(x(),C(B,{key:1}))]),_:1},8,["open"]),(x(),C(z,{key:b.value??"new",open:v.value,id:b.value,"onUpdate:open":o[2]||(o[2]=a=>v.value=a),onSuccess:o[3]||(o[3]=a=>{var i;return(i=w.value)==null?void 0:i.fetch()})},null,8,["open","id"]))]),_:1})])}}}),re=J(Z,[["__scopeId","data-v-7869d72f"]]);export{re as default}; diff --git a/apps/admin-panel/dist/assets/ListInvoice-Kc7ntcss.js b/apps/admin-panel/dist/assets/ListInvoice-Kc7ntcss.js new file mode 100644 index 0000000..1a76c9d --- /dev/null +++ b/apps/admin-panel/dist/assets/ListInvoice-Kc7ntcss.js @@ -0,0 +1 @@ +import{a as M,b as d,X as V}from"./model-mwiDYd1J.js";import{_ as h}from"./ListPageHeader.vue_vue_type_script_setup_true_lang-YlEXklTr.js";import z from"./AddInvoice-CkuDWq78.js";import{j as K}from"./filters-CoNJlguG.js";import{u as R}from"./useDeleteHandler-K9FWNrnm.js";import{d as U,b as g,c as e,w as t,r as s,o as x,h as p,p as y,R as G,E as H,G as q,f as r,t as u,a as C,m as _,y as F,_ as J}from"./index-CpVArufm.js";import"./SettingOutlined-E4OknxY2.js";import"./select--BgT6D7O.js";import"./BaseFormModal.vue_vue_type_style_index_0_lang-B4iVMhZt.js";import"./index-DjZc5EYL.js";function P(){const n=new M("admin/invoices/list","لیست فاکتورها");return n.add(new d("id","ردیف").filterNumber()),n.add(new d("name","نام مشتری").filterKey("branch.name").filterText()),n.add(new d("sum_weight","جمع کل سفارش").filterNumber().noSort()),n.add(new d("count_item","تعداد آیتم ها").filterNumber().noSort()),n.add(new d("caj","تاریخ ثبت").filterKey("createdAt").filterDate().noSort()),n.add(new d("allocator_user.name","ثبت کننده").renderSlot("user").noSort()),n.add(new d("note","توضیحات").filterText().noSort()),n.add(new d("op","عملیات").noSort().renderSlot("actions")),n}const Q={id:"page-user-list"},W={class:"flex gap-2"},Y={key:0},Z=U({__name:"ListInvoice",setup(n){const S=P(),w=_(null),f=_(!1),l=_(void 0),v=_(!1),b=_(void 0);function I(){b.value=void 0,v.value=!0}function $(c){b.value=c,v.value=!0}const E=[{title:"کد محصول",dataIndex:"product_code"},{title:"نام محصول",dataIndex:"title"},{title:"وزن",dataIndex:"grams"}];async function N(c){const{data:o}=await F.get(`branch/product/${c.id}`);l.value=o,f.value=!0}const{remove:D}=R({onSuccess:()=>{var c;return(c=w.value)==null?void 0:c.fetch()},successMessage:"فاکتور حذف شد",fallbackErrorMessage:"خطا در حذف فاکتور"});return(c,o)=>{const k=s("a-tooltip"),T=s("a-popconfirm"),m=s("a-descriptions-item"),j=s("a-descriptions"),A=s("a-table"),B=s("a-empty"),O=s("a-button"),X=s("a-modal"),L=s("a-card");return x(),g("div",Q,[e(L,{title:"لیست فاکتورها",class:"page-card"},{default:t(()=>[e(V,{ref_key:"tbl",ref:w,model:p(S),"mobile-cards":""},{add:t(()=>[e(h,{rid:"invoice.create","add-label":"افزودن فاکتور",onAdd:I})]),user:t(({record:a})=>{var i;return[r(u(((i=a.allocator_user)==null?void 0:i.name)??"-"),1)]}),actions:t(({record:a})=>[y("div",W,[e(k,{title:"مشاهده"},{default:t(()=>[e(p(G),{class:"cursor-pointer mx-1 text-success",onClick:i=>N(a)},null,8,["onClick"])]),_:2},1024),e(k,{title:"ویرایش"},{default:t(()=>[e(p(H),{class:"cursor-pointer mx-1 text-primary",onClick:i=>$(a.id)},null,8,["onClick"])]),_:2},1024),e(k,{title:"حذف"},{default:t(()=>[e(T,{placement:"top","ok-text":"بله","cancel-text":"خیر",onConfirm:i=>p(D)(`branch/product/${a.id}`)},{title:t(()=>[...o[4]||(o[4]=[y("p",null,"آیا مطمئن به حذف فاکتور مورد نظر هستید ؟",-1)])]),default:t(()=>[e(p(q),{class:"cursor-pointer mx-1 text-danger"})]),_:1},8,["onConfirm"])]),_:2},1024)])]),_:1},8,["model"]),e(X,{open:f.value,"onUpdate:open":o[1]||(o[1]=a=>f.value=a),title:"مشاهده فاکتور",width:"70%","wrap-class-name":"detail-modal"},{footer:t(()=>[e(O,{onClick:o[0]||(o[0]=a=>f.value=!1)},{default:t(()=>[...o[5]||(o[5]=[r("بستن",-1)])]),_:1})]),default:t(()=>[l.value?(x(),g("div",Y,[e(j,{bordered:"",size:"small",column:{xxl:2,xl:2,lg:2,md:2,sm:2,xs:1}},{default:t(()=>[e(m,{label:"شعبه"},{default:t(()=>[r(u(l.value.name),1)]),_:1}),e(m,{label:"ثبت کننده"},{default:t(()=>{var a;return[r(u(((a=l.value.allocator_user)==null?void 0:a.name)??"-"),1)]}),_:1}),e(m,{label:"تاریخ ثبت"},{default:t(()=>[r(u(p(K)(l.value.caj)),1)]),_:1}),e(m,{label:"تعداد آیتم"},{default:t(()=>[r(u(l.value.count_item),1)]),_:1}),e(m,{label:"جمع وزن"},{default:t(()=>[r(u(l.value.sum_weight),1)]),_:1}),e(m,{label:"توضیحات"},{default:t(()=>[r(u(l.value.note??"-"),1)]),_:1})]),_:1}),e(A,{class:"mt-4",size:"small","data-source":l.value.products,columns:E,pagination:!1,"row-key":"id"},null,8,["data-source"])])):(x(),C(B,{key:1}))]),_:1},8,["open"]),(x(),C(z,{key:b.value??"new",open:v.value,id:b.value,"onUpdate:open":o[2]||(o[2]=a=>v.value=a),onSuccess:o[3]||(o[3]=a=>{var i;return(i=w.value)==null?void 0:i.fetch()})},null,8,["open","id"]))]),_:1})])}}}),ce=J(Z,[["__scopeId","data-v-7869d72f"]]);export{ce as default}; diff --git a/apps/admin-panel/dist/assets/ListPageHeader.vue_vue_type_script_setup_true_lang-D07Lc14a.js b/apps/admin-panel/dist/assets/ListPageHeader.vue_vue_type_script_setup_true_lang-YlEXklTr.js similarity index 87% rename from apps/admin-panel/dist/assets/ListPageHeader.vue_vue_type_script_setup_true_lang-D07Lc14a.js rename to apps/admin-panel/dist/assets/ListPageHeader.vue_vue_type_script_setup_true_lang-YlEXklTr.js index f42225b..4f99f26 100644 --- a/apps/admin-panel/dist/assets/ListPageHeader.vue_vue_type_script_setup_true_lang-D07Lc14a.js +++ b/apps/admin-panel/dist/assets/ListPageHeader.vue_vue_type_script_setup_true_lang-YlEXklTr.js @@ -1 +1 @@ -import{d,u as i,o as u,a as m,w as s,f as c,t as l,c as f,h as p,P as C,i as P,r as b}from"./index-CJij4X3l.js";const _=d({__name:"ListPageHeader",props:{rid:{default:void 0},addLabel:{default:"افزودن"}},emits:["add"],setup(e){const o=i(),n=t=>!!o.hasPermission(t);return(t,a)=>{const r=b("a-button");return!e.rid||n(e.rid)?(u(),m(r,{key:0,type:"primary",onClick:a[0]||(a[0]=k=>t.$emit("add"))},{icon:s(()=>[f(p(C))]),default:s(()=>[c(" "+l(e.addLabel),1)]),_:1})):P("",!0)}}});export{_}; +import{d,u as i,o as u,a as m,w as s,f as c,t as l,c as f,h as p,P as C,i as P,r as b}from"./index-CpVArufm.js";const _=d({__name:"ListPageHeader",props:{rid:{default:void 0},addLabel:{default:"افزودن"}},emits:["add"],setup(e){const o=i(),n=t=>!!o.hasPermission(t);return(t,a)=>{const r=b("a-button");return!e.rid||n(e.rid)?(u(),m(r,{key:0,type:"primary",onClick:a[0]||(a[0]=k=>t.$emit("add"))},{icon:s(()=>[f(p(C))]),default:s(()=>[c(" "+l(e.addLabel),1)]),_:1})):P("",!0)}}});export{_}; diff --git a/apps/admin-panel/dist/assets/ListUser-V5KZlNnL.js b/apps/admin-panel/dist/assets/ListUser-6vbYcmi4.js similarity index 84% rename from apps/admin-panel/dist/assets/ListUser-V5KZlNnL.js rename to apps/admin-panel/dist/assets/ListUser-6vbYcmi4.js index 18bc0fa..345af5c 100644 --- a/apps/admin-panel/dist/assets/ListUser-V5KZlNnL.js +++ b/apps/admin-panel/dist/assets/ListUser-6vbYcmi4.js @@ -1 +1 @@ -import{a as E,b as a,X as U}from"./model-tqsMDjkK.js";import{_ as $}from"./ListPageHeader.vue_vue_type_script_setup_true_lang-D07Lc14a.js";import D from"./UserCreate-B0hNHwjp.js";import{d as M,u as V,x as X,y as h,b as O,c as r,w as n,m as c,r as _,o as m,h as p,a as v,E as A,i as y,G as K,p as L,f as P,t as G}from"./index-CJij4X3l.js";import{u as H}from"./useDeleteHandler-DuEp06Uq.js";import"./filters-BPYO-DKN.js";import"./index-CKg-8s_Z.js";import"./SettingOutlined-BJxMXy1I.js";import"./BaseFormModal.vue_vue_type_style_index_0_lang-YLHOAWTN.js";function I(){const o=new E("admin/users/list","لیست مدیران");return o.add(new a("id","کد مدیر")),o.add(new a("fname","نام").filterKey("fullName").filterText()),o.add(new a("lname","نام خانوادگی").filterKey("fullName").filterText()),o.add(new a("mobile","موبایل").filterText()),o.add(new a("ut","نوع کاربر").filterNumber().renderSlot("ut")),o.add(new a("op","عملیات").noSort().renderSlot("op")),o}const j={id:"page-user-list"},ee=M({__name:"ListUser",setup(o){const k=V(),x=e=>!!k.hasPermission(e),w=I(),f=c(null),b=c([]),l=c(!1),i=c(void 0);function g(e){var t;return e==null?"-":((t=b.value.find(d=>d.id===Number(e)))==null?void 0:t.title)??String(e)}function C(){i.value=void 0,l.value=!0}function T(e){i.value=e.id,l.value=!0}const{remove:N}=H({onSuccess:()=>{var e;return(e=f.value)==null?void 0:e.fetch()},successMessage:"کاربر حذف شد",fallbackErrorMessage:"خطا در حذف کاربر"});return X(async()=>{try{const{data:e}=await h.get("const/__list__ut");b.value=e}catch(e){console.log(e)}}),(e,t)=>{const d=_("a-tooltip"),S=_("a-popconfirm"),B=_("a-card");return m(),O("div",j,[r(B,{title:"لیست مدیران",class:"page-card"},{default:n(()=>[r(U,{ref_key:"tbl",ref:f,model:p(w),"mobile-cards":""},{add:n(()=>[r($,{rid:"user.list.create","add-label":"افزودن کاربر",onAdd:C})]),ut:n(({text:s})=>[P(G(g(s)),1)]),op:n(({record:s})=>[x("user.list.edit")?(m(),v(d,{key:0,title:"ویرایش"},{default:n(()=>[r(p(A),{class:"cursor-pointer mx-1 text-primary",onClick:u=>T(s)},null,8,["onClick"])]),_:2},1024)):y("",!0),x("user.list.remove")?(m(),v(d,{key:1,title:"حذف"},{default:n(()=>[r(S,{placement:"top","ok-text":"بله","cancel-text":"خیر",onConfirm:u=>p(N)(`users/${s.id}`)},{title:n(()=>[...t[2]||(t[2]=[L("p",null,"آیا مطمئن به حذف کاربر مورد نظر هستید ؟",-1)])]),default:n(()=>[r(p(K),{class:"cursor-pointer mx-1 text-danger"})]),_:1},8,["onConfirm"])]),_:2},1024)):y("",!0)]),_:1},8,["model"]),(m(),v(D,{key:i.value??"new",open:l.value,id:i.value,"onUpdate:open":t[0]||(t[0]=s=>l.value=s),onSuccess:t[1]||(t[1]=s=>{var u;return(u=f.value)==null?void 0:u.fetch()})},null,8,["open","id"]))]),_:1})])}}});export{ee as default}; +import{a as E,b as a,X as U}from"./model-mwiDYd1J.js";import{_ as $}from"./ListPageHeader.vue_vue_type_script_setup_true_lang-YlEXklTr.js";import D from"./UserCreate-CjovLfJM.js";import{d as M,u as V,x as X,y as h,b as O,c as r,w as n,m as c,r as _,o as m,h as p,a as v,E as A,i as y,G as K,p as L,f as P,t as G}from"./index-CpVArufm.js";import{u as H}from"./useDeleteHandler-K9FWNrnm.js";import"./filters-CoNJlguG.js";import"./index-DjZc5EYL.js";import"./SettingOutlined-E4OknxY2.js";import"./BaseFormModal.vue_vue_type_style_index_0_lang-B4iVMhZt.js";function I(){const o=new E("admin/users/list","لیست مدیران");return o.add(new a("id","کد مدیر")),o.add(new a("fname","نام").filterKey("fullName").filterText()),o.add(new a("lname","نام خانوادگی").filterKey("fullName").filterText()),o.add(new a("mobile","موبایل").filterText()),o.add(new a("ut","نوع کاربر").filterNumber().renderSlot("ut")),o.add(new a("op","عملیات").noSort().renderSlot("op")),o}const j={id:"page-user-list"},ee=M({__name:"ListUser",setup(o){const k=V(),x=e=>!!k.hasPermission(e),w=I(),f=c(null),b=c([]),l=c(!1),i=c(void 0);function g(e){var t;return e==null?"-":((t=b.value.find(d=>d.id===Number(e)))==null?void 0:t.title)??String(e)}function C(){i.value=void 0,l.value=!0}function T(e){i.value=e.id,l.value=!0}const{remove:N}=H({onSuccess:()=>{var e;return(e=f.value)==null?void 0:e.fetch()},successMessage:"کاربر حذف شد",fallbackErrorMessage:"خطا در حذف کاربر"});return X(async()=>{try{const{data:e}=await h.get("const/__list__ut");b.value=e}catch(e){console.log(e)}}),(e,t)=>{const d=_("a-tooltip"),S=_("a-popconfirm"),B=_("a-card");return m(),O("div",j,[r(B,{title:"لیست مدیران",class:"page-card"},{default:n(()=>[r(U,{ref_key:"tbl",ref:f,model:p(w),"mobile-cards":""},{add:n(()=>[r($,{rid:"user.list.create","add-label":"افزودن کاربر",onAdd:C})]),ut:n(({text:s})=>[P(G(g(s)),1)]),op:n(({record:s})=>[x("user.list.edit")?(m(),v(d,{key:0,title:"ویرایش"},{default:n(()=>[r(p(A),{class:"cursor-pointer mx-1 text-primary",onClick:u=>T(s)},null,8,["onClick"])]),_:2},1024)):y("",!0),x("user.list.remove")?(m(),v(d,{key:1,title:"حذف"},{default:n(()=>[r(S,{placement:"top","ok-text":"بله","cancel-text":"خیر",onConfirm:u=>p(N)(`users/${s.id}`)},{title:n(()=>[...t[2]||(t[2]=[L("p",null,"آیا مطمئن به حذف کاربر مورد نظر هستید ؟",-1)])]),default:n(()=>[r(p(K),{class:"cursor-pointer mx-1 text-danger"})]),_:1},8,["onConfirm"])]),_:2},1024)):y("",!0)]),_:1},8,["model"]),(m(),v(D,{key:i.value??"new",open:l.value,id:i.value,"onUpdate:open":t[0]||(t[0]=s=>l.value=s),onSuccess:t[1]||(t[1]=s=>{var u;return(u=f.value)==null?void 0:u.fetch()})},null,8,["open","id"]))]),_:1})])}}});export{ee as default}; diff --git a/apps/admin-panel/dist/assets/ListWorkshop-BIaGADxA.js b/apps/admin-panel/dist/assets/ListWorkshop-BqcYfnRu.js similarity index 65% rename from apps/admin-panel/dist/assets/ListWorkshop-BIaGADxA.js rename to apps/admin-panel/dist/assets/ListWorkshop-BqcYfnRu.js index d466560..d6ab5f4 100644 --- a/apps/admin-panel/dist/assets/ListWorkshop-BIaGADxA.js +++ b/apps/admin-panel/dist/assets/ListWorkshop-BqcYfnRu.js @@ -1 +1 @@ -import{_ as d}from"./FacilityList.vue_vue_type_script_setup_true_lang-z3KF0c-X.js";import{_ as m}from"./AddWorkshop.vue_vue_type_script_setup_true_lang-CYeQJKq0.js";import{a as c,b as e}from"./model-tqsMDjkK.js";import{d as l,a as r,w as f,h as _,o as a}from"./index-CJij4X3l.js";import"./ListPageHeader.vue_vue_type_script_setup_true_lang-D07Lc14a.js";import"./BaseFormModal.vue_vue_type_style_index_0_lang-YLHOAWTN.js";import"./filters-BPYO-DKN.js";import"./index-CKg-8s_Z.js";import"./SettingOutlined-BJxMXy1I.js";function h(){const o=new c("admin/workshops/list","لیست کارگاه ها");return o.add(new e("name","نام").filterText()),o.add(new e("address","آدرس").filterText()),o.add(new e("phone","شماره تلفن").filterNumber()),o.add(new e("op","عملیات").noSort().renderSlot("actions")),o}const U=l({__name:"ListWorkshop",setup(o){const n=h();return(w,u)=>(a(),r(d,{title:"لیست کارگاه ها",model:_(n),"edit-path":"/workshop/edit","active-path":"workshop/active","add-rid":"workshop.create","add-label":"افزودن کارگاه"},{form:f(({open:s,editingId:t,onUpdateOpen:i,onSuccess:p})=>[(a(),r(m,{key:t??"new",open:s,id:t,"onUpdate:open":i,onSuccess:p},null,8,["open","id","onUpdate:open","onSuccess"]))]),_:1},8,["model"]))}});export{U as default}; +import{_ as d}from"./FacilityList.vue_vue_type_script_setup_true_lang-CXgI4BGC.js";import{_ as m}from"./AddWorkshop.vue_vue_type_script_setup_true_lang-C1UXqOZL.js";import{a as c,b as e}from"./model-mwiDYd1J.js";import{d as l,a as r,w as f,h as _,o as a}from"./index-CpVArufm.js";import"./ListPageHeader.vue_vue_type_script_setup_true_lang-YlEXklTr.js";import"./BaseFormModal.vue_vue_type_style_index_0_lang-B4iVMhZt.js";import"./filters-CoNJlguG.js";import"./index-DjZc5EYL.js";import"./SettingOutlined-E4OknxY2.js";function h(){const o=new c("admin/workshops/list","لیست کارگاه ها");return o.add(new e("name","نام").filterText()),o.add(new e("address","آدرس").filterText()),o.add(new e("phone","شماره تلفن").filterNumber()),o.add(new e("op","عملیات").noSort().renderSlot("actions")),o}const U=l({__name:"ListWorkshop",setup(o){const n=h();return(w,u)=>(a(),r(d,{title:"لیست کارگاه ها",model:_(n),"edit-path":"/workshop/edit","active-path":"workshop/active","add-rid":"workshop.create","add-label":"افزودن کارگاه"},{form:f(({open:s,editingId:t,onUpdateOpen:i,onSuccess:p})=>[(a(),r(m,{key:t??"new",open:s,id:t,"onUpdate:open":i,onSuccess:p},null,8,["open","id","onUpdate:open","onSuccess"]))]),_:1},8,["model"]))}});export{U as default}; diff --git a/apps/admin-panel/dist/assets/LockOutlined-IueoJDte.js b/apps/admin-panel/dist/assets/LockOutlined-Dute1ueQ.js similarity index 94% rename from apps/admin-panel/dist/assets/LockOutlined-IueoJDte.js rename to apps/admin-panel/dist/assets/LockOutlined-Dute1ueQ.js index d1b7718..0e886c1 100644 --- a/apps/admin-panel/dist/assets/LockOutlined-IueoJDte.js +++ b/apps/admin-panel/dist/assets/LockOutlined-Dute1ueQ.js @@ -1 +1 @@ -import{c as i,I as l}from"./index-CJij4X3l.js";var u={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M832 464h-68V240c0-70.7-57.3-128-128-128H388c-70.7 0-128 57.3-128 128v224h-68c-17.7 0-32 14.3-32 32v384c0 17.7 14.3 32 32 32h640c17.7 0 32-14.3 32-32V496c0-17.7-14.3-32-32-32zM332 240c0-30.9 25.1-56 56-56h248c30.9 0 56 25.1 56 56v224H332V240zm460 600H232V536h560v304zM484 701v53c0 4.4 3.6 8 8 8h40c4.4 0 8-3.6 8-8v-53a48.01 48.01 0 10-56 0z"}}]},name:"lock",theme:"outlined"};function a(r){for(var t=1;tP.value?l.value?l.value.length<8?"مقدار ورودی صحیح نیست":"":"وارد کردن موبایل الزامی است":""),m=O(()=>L.value?n.value?n.value.length<5?"مقدار ورودی صحیح نیست":"":"وارد کردن رمز عبور الزامی است":""),B=O(()=>!g.value&&!m.value&&l.value!==""&&n.value!=="");async function h(){if(!(!B.value||p.value)){p.value=!0;try{await o.login({phone:l.value,password:n.value}),await a.push("/dashboard/ecommerce")}catch(c){console.log(c),q.error("خطا در ورود")}finally{p.value=!1}}}return(c,e)=>{const y=f("a-input"),C=f("a-form-item"),z=f("a-input-password"),A=f("a-button"),D=f("a-form");return x(),M("div",ne,[e[14]||(e[14]=$('',2)),t("div",re,[(x(),M(T,null,F(14,d=>t("i",{key:d,style:J(k(d))},null,4)),64))]),t("main",ie,[t("section",de,[t("div",ce,[e[4]||(e[4]=t("div",{class:"logo-chip"},[t("img",{src:E,alt:""})],-1)),t("span",ue,j(i(_).nameEn),1)]),e[8]||(e[8]=$('

مدیریت هوشمند کسب‌وکار طلا

سفارش‌ها، مشتریان، محصولات و حسابداری؛ همه در یک پنل.

999.9
',3)),t("ul",pe,[t("li",null,[r(i(w)),e[5]||(e[5]=b(" گزارش لحظه‌ای",-1))]),t("li",null,[r(i(Z)),e[6]||(e[6]=b(" مدیریت مشتریان",-1))]),t("li",null,[r(i(K)),e[7]||(e[7]=b(" پیگیری سفارش",-1))])])]),t("section",fe,[t("div",ve,[t("div",be,[t("div",ge,[t("img",{src:E,alt:i(_).nameEn},null,8,me)]),e[9]||(e[9]=t("span",{class:"eyebrow"},[t("span",{class:"dot"}),b("پنل مدیریت")],-1))]),e[12]||(e[12]=t("h1",{class:"title"},"ورود به محیط مدیریت",-1)),e[13]||(e[13]=t("p",{class:"subtitle"},"لطفا شماره تلفن همراه خود به همراه رمز عبور وارد کنید.",-1)),r(D,{layout:"vertical",class:"login-form",onSubmit:I(h,["prevent"])},{default:u(()=>[r(C,{label:"موبایل","validate-status":g.value?"error":"",help:g.value},{default:u(()=>[r(y,{value:l.value,"onUpdate:value":e[0]||(e[0]=d=>l.value=d),autocomplete:"off",inputmode:"numeric",placeholder:"09xxxxxxxxx",class:"ltr-input",onBlur:e[1]||(e[1]=d=>P.value=!0)},{prefix:u(()=>[r(i(S),{class:"field-icon"})]),_:1},8,["value"])]),_:1},8,["validate-status","help"]),r(C,{label:"رمز عبور","validate-status":m.value?"error":"",help:m.value},{default:u(()=>[r(z,{value:n.value,"onUpdate:value":e[2]||(e[2]=d=>n.value=d),placeholder:"••••••",class:"ltr-input",onBlur:e[3]||(e[3]=d=>L.value=!0),onPressEnter:h},{prefix:u(()=>[r(i(te),{class:"field-icon"})]),_:1},8,["value"])]),_:1},8,["validate-status","help"]),r(A,{type:"primary",block:"",class:"submit-btn",disabled:!B.value,loading:p.value,onClick:h},{default:u(()=>[e[10]||(e[10]=t("span",null,"ورود",-1)),p.value?W("",!0):(x(),U(i(R),{key:0,class:"btn-arrow"}))]),_:1},8,["disabled","loading"])]),_:1}),t("p",he,[r(i(ee)),e[11]||(e[11]=t("span",null,"اتصال شما رمزنگاری شده و امن است",-1))])])])]),t("footer",ye,"© "+j(i(_).nameEn),1)])}}}),Be=X(_e,[["__scopeId","data-v-1eb36c3e"]]);export{Be as default}; +import{c as r,I as N,d as H,b as M,al as $,p as t,F as T,e as F,t as j,h as i,j as _,f as b,w as u,H as I,r as f,o as x,B as J,a as U,am as R,i as W,m as v,s as O,J as q,l as Q,_ as X}from"./index-CpVArufm.js";import{_ as E}from"./brand-icon-CrDwHrcf.js";import{u as Y}from"./auth-taL2eAff.js";import{T as Z,S as K}from"./TeamOutlined-DL6Ofm69.js";import{S as ee}from"./SafetyCertificateOutlined-mD-ddSP4.js";import{L as te}from"./LockOutlined-Dute1ueQ.js";var ae={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M888 792H200V168c0-4.4-3.6-8-8-8h-56c-4.4 0-8 3.6-8 8v688c0 4.4 3.6 8 8 8h752c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8zM305.8 637.7c3.1 3.1 8.1 3.1 11.3 0l138.3-137.6L583 628.5c3.1 3.1 8.2 3.1 11.3 0l275.4-275.3c3.1-3.1 3.1-8.2 0-11.3l-39.6-39.6a8.03 8.03 0 00-11.3 0l-230 229.9L461.4 404a8.03 8.03 0 00-11.3 0L266.3 586.7a8.03 8.03 0 000 11.3l39.5 39.7z"}}]},name:"line-chart",theme:"outlined"};function G(s){for(var a=1;aP.value?l.value?l.value.length<8?"مقدار ورودی صحیح نیست":"":"وارد کردن موبایل الزامی است":""),m=O(()=>L.value?n.value?n.value.length<5?"مقدار ورودی صحیح نیست":"":"وارد کردن رمز عبور الزامی است":""),B=O(()=>!g.value&&!m.value&&l.value!==""&&n.value!=="");async function h(){if(!(!B.value||p.value)){p.value=!0;try{await o.login({phone:l.value,password:n.value}),await a.push("/dashboard/ecommerce")}catch(c){console.log(c),q.error("خطا در ورود")}finally{p.value=!1}}}return(c,e)=>{const y=f("a-input"),C=f("a-form-item"),z=f("a-input-password"),A=f("a-button"),D=f("a-form");return x(),M("div",ne,[e[14]||(e[14]=$('',2)),t("div",re,[(x(),M(T,null,F(14,d=>t("i",{key:d,style:J(k(d))},null,4)),64))]),t("main",ie,[t("section",de,[t("div",ce,[e[4]||(e[4]=t("div",{class:"logo-chip"},[t("img",{src:E,alt:""})],-1)),t("span",ue,j(i(_).nameEn),1)]),e[8]||(e[8]=$('

مدیریت هوشمند کسب‌وکار طلا

سفارش‌ها، مشتریان، محصولات و حسابداری؛ همه در یک پنل.

999.9
',3)),t("ul",pe,[t("li",null,[r(i(w)),e[5]||(e[5]=b(" گزارش لحظه‌ای",-1))]),t("li",null,[r(i(Z)),e[6]||(e[6]=b(" مدیریت مشتریان",-1))]),t("li",null,[r(i(K)),e[7]||(e[7]=b(" پیگیری سفارش",-1))])])]),t("section",fe,[t("div",ve,[t("div",be,[t("div",ge,[t("img",{src:E,alt:i(_).nameEn},null,8,me)]),e[9]||(e[9]=t("span",{class:"eyebrow"},[t("span",{class:"dot"}),b("پنل مدیریت")],-1))]),e[12]||(e[12]=t("h1",{class:"title"},"ورود به محیط مدیریت",-1)),e[13]||(e[13]=t("p",{class:"subtitle"},"لطفا شماره تلفن همراه خود به همراه رمز عبور وارد کنید.",-1)),r(D,{layout:"vertical",class:"login-form",onSubmit:I(h,["prevent"])},{default:u(()=>[r(C,{label:"موبایل","validate-status":g.value?"error":"",help:g.value},{default:u(()=>[r(y,{value:l.value,"onUpdate:value":e[0]||(e[0]=d=>l.value=d),autocomplete:"off",inputmode:"numeric",placeholder:"09xxxxxxxxx",class:"ltr-input",onBlur:e[1]||(e[1]=d=>P.value=!0)},{prefix:u(()=>[r(i(S),{class:"field-icon"})]),_:1},8,["value"])]),_:1},8,["validate-status","help"]),r(C,{label:"رمز عبور","validate-status":m.value?"error":"",help:m.value},{default:u(()=>[r(z,{value:n.value,"onUpdate:value":e[2]||(e[2]=d=>n.value=d),placeholder:"••••••",class:"ltr-input",onBlur:e[3]||(e[3]=d=>L.value=!0),onPressEnter:h},{prefix:u(()=>[r(i(te),{class:"field-icon"})]),_:1},8,["value"])]),_:1},8,["validate-status","help"]),r(A,{type:"primary",block:"",class:"submit-btn",disabled:!B.value,loading:p.value,onClick:h},{default:u(()=>[e[10]||(e[10]=t("span",null,"ورود",-1)),p.value?W("",!0):(x(),U(i(R),{key:0,class:"btn-arrow"}))]),_:1},8,["disabled","loading"])]),_:1}),t("p",he,[r(i(ee)),e[11]||(e[11]=t("span",null,"اتصال شما رمزنگاری شده و امن است",-1))])])])]),t("footer",ye,"© "+j(i(_).nameEn),1)])}}}),Be=X(_e,[["__scopeId","data-v-1eb36c3e"]]);export{Be as default}; diff --git a/apps/admin-panel/dist/assets/Main-DE7EPCye.js b/apps/admin-panel/dist/assets/Main-XjZjVgvH.js similarity index 97% rename from apps/admin-panel/dist/assets/Main-DE7EPCye.js rename to apps/admin-panel/dist/assets/Main-XjZjVgvH.js index 25f1ed7..6c5b9f2 100644 --- a/apps/admin-panel/dist/assets/Main-DE7EPCye.js +++ b/apps/admin-panel/dist/assets/Main-XjZjVgvH.js @@ -1 +1 @@ -import{c,I as K,d as U,u as D,r as p,o as a,a as f,w as i,b as A,e as T,F as j,f as N,t as S,g as J,h as b,i as x,j as oe,k as R,l as te,m as H,n as V,p as _,q as se,s as P,_ as E,A as ie,v as ae}from"./index-CJij4X3l.js";import{_ as le}from"./brand-icon-CrDwHrcf.js";import{r as Q}from"./icons-BplZzYUR.js";import{u as ue}from"./auth-N_TMNrPz.js";import{U as ce}from"./UserOutlined-yq90mQcC.js";import{S as me}from"./SafetyCertificateOutlined-Cr8bqGKo.js";import"./SettingOutlined-BJxMXy1I.js";import"./UnorderedListOutlined-CHqEItu3.js";import"./PercentageOutlined-CtwjLYTJ.js";import"./UserAddOutlined-Dac4nUC8.js";import"./CreditCardOutlined-Cz1giwnr.js";import"./AppstoreOutlined-DvD8zs_r.js";import"./TeamOutlined-Bdydtt7N.js";import"./CameraOutlined-BcxYWwtK.js";var de={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M868 732h-70.3c-4.8 0-9.3 2.1-12.3 5.8-7 8.5-14.5 16.7-22.4 24.5a353.84 353.84 0 01-112.7 75.9A352.8 352.8 0 01512.4 866c-47.9 0-94.3-9.4-137.9-27.8a353.84 353.84 0 01-112.7-75.9 353.28 353.28 0 01-76-112.5C167.3 606.2 158 559.9 158 512s9.4-94.2 27.8-137.8c17.8-42.1 43.4-80 76-112.5s70.5-58.1 112.7-75.9c43.6-18.4 90-27.8 137.9-27.8 47.9 0 94.3 9.3 137.9 27.8 42.2 17.8 80.1 43.4 112.7 75.9 7.9 7.9 15.3 16.1 22.4 24.5 3 3.7 7.6 5.8 12.3 5.8H868c6.3 0 10.2-7 6.7-12.3C798 160.5 663.8 81.6 511.3 82 271.7 82.6 79.6 277.1 82 516.4 84.4 751.9 276.2 942 512.4 942c152.1 0 285.7-78.8 362.3-197.7 3.4-5.3-.4-12.3-6.7-12.3zm88.9-226.3L815 393.7c-5.3-4.2-13-.4-13 6.3v76H488c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h314v76c0 6.7 7.8 10.5 13 6.3l141.9-112a8 8 0 000-12.6z"}}]},name:"logout",theme:"outlined"};function X(n){for(var t=1;t{const M=p("NavMenuNode",!0),w=p("a-sub-menu"),g=p("a-menu-item");return n.node.submenu?(a(),f(w,{key:n.menuKey,"popup-class-name":"nav-popup"},{icon:i(()=>[n.node.icon?(a(),f(J(b(Q)(n.node.icon)),{key:0})):x("",!0)]),title:i(()=>[N(S(n.node.i18n||n.node.name),1)]),default:i(()=>[(a(!0),A(j,null,T(r(n.node.submenu),(k,C)=>(a(),f(M,{key:k.url||`${n.menuKey}-${C}`,node:k,"menu-key":k.url||`${n.menuKey}-${C}`},null,8,["node","menu-key"]))),128))]),_:1})):(a(),f(g,{key:n.menuKey},{icon:i(()=>[n.node.icon?(a(),f(J(b(Q)(n.node.icon)),{key:0})):x("",!0)]),default:i(()=>[N(" "+S(n.node.i18n||n.node.name),1)]),_:1}))}}}),he={key:0,class:"nav-brand"},Ie={class:"nav-title"},Oe=U({__name:"VerticalNavMenu",props:{title:{default:oe.name},collapsed:{type:Boolean,default:!1}},setup(n){const t=R(),e=te(),r=D();function o(s){return s.superAdminOnly&&!r.isSuperAdmin?!1:s.permissionId?!!r.hasPermission(s.permissionId):!0}function O(s){return(s??[]).filter(o)}function M(s){return s.header?O(s.items).length>0:s.submenu?O(s.submenu).length>0:!0}const w=P(()=>ye().filter(s=>o(s)&&M(s))),g=(s,u)=>`sub-${s.name??""}-${u}`;function k(s,u,y){for(let h=0;ht.path,s=>{B.value=[s];const u=C(s);for(const y of u)l.value.includes(y)||(l.value=[...l.value,y])});function m({key:s}){const u=String(s);u.startsWith("/")&&u!==t.path&&e.push(u)}return(s,u)=>{const y=p("a-menu-item-group"),h=p("a-menu"),v=p("a-layout-sider");return a(),f(v,{collapsed:n.collapsed,trigger:null,collapsible:"",width:"260",class:"vertical-nav-menu",theme:"light"},{default:i(()=>[_("div",{class:se(["nav-header",{"is-collapsed":n.collapsed}])},[u[2]||(u[2]=_("span",{class:"nav-logo"},[_("img",{src:le,alt:""})],-1)),n.collapsed?x("",!0):(a(),A("span",he,[_("span",Ie,S(n.title),1),u[1]||(u[1]=_("span",{class:"nav-subtitle"},"پنل مدیریت",-1))]))],2),c(h,{class:"nav-menu",mode:"inline",theme:"light","inline-collapsed":n.collapsed,"selected-keys":B.value,"open-keys":l.value,"onUpdate:openKeys":u[0]||(u[0]=d=>l.value=d),onClick:m},{default:i(()=>[(a(!0),A(j,null,T(w.value,(d,I)=>(a(),A(j,{key:d.url||d.header||I},[d.header?(a(),f(y,{key:0,title:d.i18n||d.header},{default:i(()=>[(a(!0),A(j,null,T(O(d.items),(L,z)=>(a(),f(ee,{key:L.url||`${I}-${z}`,node:L,"menu-key":L.url||g(L,z)},null,8,["node","menu-key"]))),128))]),_:2},1032,["title"])):(a(),f(ee,{key:1,node:d,"menu-key":d.url||g(d,I)},null,8,["node","menu-key"]))],64))),128))]),_:1},8,["inline-collapsed","selected-keys","open-keys"])]),_:1},8,["collapsed"])}}}),ne=E(Oe,[["__scopeId","data-v-f8bc07d5"]]),ke={class:"nav-left"},we={class:"page-title"},Se={key:1},Me={class:"nav-right"},Le={class:"user-chip"},Ce={class:"user-name"},$e={class:"user-card"},Ne={class:"user-card__head"},Pe={class:"user-card__id"},Ae={class:"user-card__name"},Be={class:"user-card__mobile"},je=U({__name:"TheNavbar",props:{collapsed:{type:Boolean}},emits:["toggle-sidebar"],setup(n){const t=R(),e=te(),r=ue(),o=D(),O=P(()=>{var l;return((l=t.meta)==null?void 0:l.pageTitle)??""}),M=P(()=>{var l;return(l=t.meta)==null?void 0:l.breadcrumb}),w=P(()=>{var l,m;return((l=r.user)==null?void 0:l.name)??((m=r.user)==null?void 0:m.fullName)??"کاربر"}),g=P(()=>w.value.trim().charAt(0)||"ک"),k=P(()=>!!o.hasPermission("user.permission"));function C(){var m;const l=(m=M.value)==null?void 0:m.slice().reverse().find(s=>s.url&&!s.active);if(l!=null&&l.url){e.push(l.url);return}if(window.history.length>1){e.back();return}e.push("/")}async function B(){await r.logout()||e.push("/auth/login")}return(l,m)=>{const s=p("a-button"),u=p("router-link"),y=p("a-breadcrumb-item"),h=p("a-breadcrumb"),v=p("a-avatar"),d=p("a-divider"),I=p("a-menu-item"),L=p("a-menu"),z=p("a-dropdown"),re=p("a-layout-header");return a(),f(re,{class:"the-navbar"},{default:i(()=>[_("div",ke,[c(s,{type:"text",onClick:m[0]||(m[0]=$=>l.$emit("toggle-sidebar"))},{default:i(()=>[n.collapsed?(a(),f(b(q),{key:0})):(a(),f(b(W),{key:1}))]),_:1}),c(s,{type:"text",class:"nav-back",title:"بازگشت","aria-label":"بازگشت",onClick:C},{default:i(()=>[c(b(ie))]),_:1}),_("span",we,S(O.value),1),M.value?(a(),f(h,{key:0,class:"breadcrumb"},{default:i(()=>[(a(!0),A(j,null,T(M.value,($,F)=>(a(),f(y,{key:F},{default:i(()=>[$.url&&!$.active?(a(),f(u,{key:0,to:$.url},{default:i(()=>[N(S($.title),1)]),_:2},1032,["to"])):(a(),A("span",Se,S($.title),1))]),_:2},1024))),128))]),_:1})):x("",!0)]),_("div",Me,[c(z,{trigger:"click",placement:"bottomRight","overlay-class-name":"user-dropdown-overlay"},{overlay:i(()=>{var $;return[_("div",$e,[_("div",Ne,[c(v,{size:"large",style:{"background-color":"#1c2d56"}},{default:i(()=>[N(S(g.value),1)]),_:1}),_("div",Pe,[_("span",Ae,S(w.value),1),_("span",Be,S(($=b(r).user)==null?void 0:$.mobile),1)])]),c(d,{class:"user-card__divider"}),c(L,{class:"user-card__menu"},{default:i(()=>[c(I,{key:"my-data",onClick:m[1]||(m[1]=F=>b(e).push("/my-data"))},{default:i(()=>[c(b(ce)),m[3]||(m[3]=N(" اطلاعات من ",-1))]),_:1}),k.value?(a(),f(I,{key:"permission",onClick:m[2]||(m[2]=F=>b(e).push("/permission"))},{default:i(()=>[c(b(me)),m[4]||(m[4]=N(" دسترسی ها ",-1))]),_:1})):x("",!0)]),_:1}),c(d,{class:"user-card__divider"}),c(L,{class:"user-card__menu"},{default:i(()=>[c(I,{key:"logout",onClick:B},{default:i(()=>[c(b(G)),m[5]||(m[5]=N(" خروج ",-1))]),_:1})]),_:1})])]}),default:i(()=>[_("span",Le,[c(v,{size:"small",style:{"background-color":"#1c2d56"}},{default:i(()=>[N(S(g.value),1)]),_:1}),_("span",Ce,S(w.value),1)])]),_:1})])]),_:1})}}}),xe=E(je,[["__scopeId","data-v-4d61f0ad"]]),ze={class:"content-wrapper"},Te={class:"content-area__content"},Ue=U({__name:"Main",setup(n){const t=R(),e=ae(),r=P(()=>e.sidebarCollapsed);function o(){e.isSmallScreen?e.setMobileNavOpen(!e.mobileNavOpen):e.setSidebarCollapsed(!r.value)}const O=P(()=>{var g;return!!((g=t.meta)!=null&&g.no_scroll)}),M=H(void 0);function w(g){M.value=g}return V(()=>t.path,()=>{M.value=void 0,e.setMobileNavOpen(!1)}),V(()=>e.isSmallScreen,g=>{g||e.setMobileNavOpen(!1)}),(g,k)=>{const C=p("a-drawer"),B=p("router-view"),l=p("a-layout-content"),m=p("a-layout");return a(),f(m,{class:se(["layout--main",{"no-scroll":O.value}])},{default:i(()=>[b(e).isSmallScreen?(a(),f(C,{key:1,open:b(e).mobileNavOpen,placement:"right",width:260,closable:!1,"root-class-name":"mobile-nav-drawer",onClose:k[0]||(k[0]=s=>b(e).setMobileNavOpen(!1))},{default:i(()=>[c(ne)]),_:1},8,["open"])):(a(),f(ne,{key:0,collapsed:r.value,"show-toggle":"",onToggle:o},null,8,["collapsed"])),c(m,null,{default:i(()=>[c(xe,{collapsed:b(e).isSmallScreen?!b(e).mobileNavOpen:r.value,onToggleSidebar:o},null,8,["collapsed"]),c(l,{id:"content-area"},{default:i(()=>[_("div",ze,[_("div",Te,[c(B,{onChangeRouteTitle:w})])])]),_:1})]),_:1})]),_:1},8,["class"])}}}),Ze=E(Ue,[["__scopeId","data-v-c1ea4b9d"]]);export{Ze as default}; +import{c,I as K,d as U,u as D,r as p,o as a,a as f,w as i,b as A,e as T,F as j,f as N,t as S,g as J,h as b,i as x,j as oe,k as R,l as te,m as H,n as V,p as _,q as se,s as P,_ as E,A as ie,v as ae}from"./index-CpVArufm.js";import{_ as le}from"./brand-icon-CrDwHrcf.js";import{r as Q}from"./icons-BRqF3liF.js";import{u as ue}from"./auth-taL2eAff.js";import{U as ce}from"./UserOutlined-DeX82IP7.js";import{S as me}from"./SafetyCertificateOutlined-mD-ddSP4.js";import"./SettingOutlined-E4OknxY2.js";import"./UnorderedListOutlined-CLUl5bxX.js";import"./PercentageOutlined-IS1MVcbY.js";import"./UserAddOutlined-Bpe7Keo_.js";import"./CreditCardOutlined-CIq9Sdft.js";import"./AppstoreOutlined-BRgpp4c5.js";import"./TeamOutlined-DL6Ofm69.js";import"./CameraOutlined-JfS-rAEW.js";var de={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M868 732h-70.3c-4.8 0-9.3 2.1-12.3 5.8-7 8.5-14.5 16.7-22.4 24.5a353.84 353.84 0 01-112.7 75.9A352.8 352.8 0 01512.4 866c-47.9 0-94.3-9.4-137.9-27.8a353.84 353.84 0 01-112.7-75.9 353.28 353.28 0 01-76-112.5C167.3 606.2 158 559.9 158 512s9.4-94.2 27.8-137.8c17.8-42.1 43.4-80 76-112.5s70.5-58.1 112.7-75.9c43.6-18.4 90-27.8 137.9-27.8 47.9 0 94.3 9.3 137.9 27.8 42.2 17.8 80.1 43.4 112.7 75.9 7.9 7.9 15.3 16.1 22.4 24.5 3 3.7 7.6 5.8 12.3 5.8H868c6.3 0 10.2-7 6.7-12.3C798 160.5 663.8 81.6 511.3 82 271.7 82.6 79.6 277.1 82 516.4 84.4 751.9 276.2 942 512.4 942c152.1 0 285.7-78.8 362.3-197.7 3.4-5.3-.4-12.3-6.7-12.3zm88.9-226.3L815 393.7c-5.3-4.2-13-.4-13 6.3v76H488c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h314v76c0 6.7 7.8 10.5 13 6.3l141.9-112a8 8 0 000-12.6z"}}]},name:"logout",theme:"outlined"};function X(n){for(var t=1;t{const M=p("NavMenuNode",!0),w=p("a-sub-menu"),g=p("a-menu-item");return n.node.submenu?(a(),f(w,{key:n.menuKey,"popup-class-name":"nav-popup"},{icon:i(()=>[n.node.icon?(a(),f(J(b(Q)(n.node.icon)),{key:0})):x("",!0)]),title:i(()=>[N(S(n.node.i18n||n.node.name),1)]),default:i(()=>[(a(!0),A(j,null,T(r(n.node.submenu),(k,C)=>(a(),f(M,{key:k.url||`${n.menuKey}-${C}`,node:k,"menu-key":k.url||`${n.menuKey}-${C}`},null,8,["node","menu-key"]))),128))]),_:1})):(a(),f(g,{key:n.menuKey},{icon:i(()=>[n.node.icon?(a(),f(J(b(Q)(n.node.icon)),{key:0})):x("",!0)]),default:i(()=>[N(" "+S(n.node.i18n||n.node.name),1)]),_:1}))}}}),he={key:0,class:"nav-brand"},Ie={class:"nav-title"},Oe=U({__name:"VerticalNavMenu",props:{title:{default:oe.name},collapsed:{type:Boolean,default:!1}},setup(n){const t=R(),e=te(),r=D();function o(s){return s.superAdminOnly&&!r.isSuperAdmin?!1:s.permissionId?!!r.hasPermission(s.permissionId):!0}function O(s){return(s??[]).filter(o)}function M(s){return s.header?O(s.items).length>0:s.submenu?O(s.submenu).length>0:!0}const w=P(()=>ye().filter(s=>o(s)&&M(s))),g=(s,u)=>`sub-${s.name??""}-${u}`;function k(s,u,y){for(let h=0;ht.path,s=>{B.value=[s];const u=C(s);for(const y of u)l.value.includes(y)||(l.value=[...l.value,y])});function m({key:s}){const u=String(s);u.startsWith("/")&&u!==t.path&&e.push(u)}return(s,u)=>{const y=p("a-menu-item-group"),h=p("a-menu"),v=p("a-layout-sider");return a(),f(v,{collapsed:n.collapsed,trigger:null,collapsible:"",width:"260",class:"vertical-nav-menu",theme:"light"},{default:i(()=>[_("div",{class:se(["nav-header",{"is-collapsed":n.collapsed}])},[u[2]||(u[2]=_("span",{class:"nav-logo"},[_("img",{src:le,alt:""})],-1)),n.collapsed?x("",!0):(a(),A("span",he,[_("span",Ie,S(n.title),1),u[1]||(u[1]=_("span",{class:"nav-subtitle"},"پنل مدیریت",-1))]))],2),c(h,{class:"nav-menu",mode:"inline",theme:"light","inline-collapsed":n.collapsed,"selected-keys":B.value,"open-keys":l.value,"onUpdate:openKeys":u[0]||(u[0]=d=>l.value=d),onClick:m},{default:i(()=>[(a(!0),A(j,null,T(w.value,(d,I)=>(a(),A(j,{key:d.url||d.header||I},[d.header?(a(),f(y,{key:0,title:d.i18n||d.header},{default:i(()=>[(a(!0),A(j,null,T(O(d.items),(L,z)=>(a(),f(ee,{key:L.url||`${I}-${z}`,node:L,"menu-key":L.url||g(L,z)},null,8,["node","menu-key"]))),128))]),_:2},1032,["title"])):(a(),f(ee,{key:1,node:d,"menu-key":d.url||g(d,I)},null,8,["node","menu-key"]))],64))),128))]),_:1},8,["inline-collapsed","selected-keys","open-keys"])]),_:1},8,["collapsed"])}}}),ne=E(Oe,[["__scopeId","data-v-f8bc07d5"]]),ke={class:"nav-left"},we={class:"page-title"},Se={key:1},Me={class:"nav-right"},Le={class:"user-chip"},Ce={class:"user-name"},$e={class:"user-card"},Ne={class:"user-card__head"},Pe={class:"user-card__id"},Ae={class:"user-card__name"},Be={class:"user-card__mobile"},je=U({__name:"TheNavbar",props:{collapsed:{type:Boolean}},emits:["toggle-sidebar"],setup(n){const t=R(),e=te(),r=ue(),o=D(),O=P(()=>{var l;return((l=t.meta)==null?void 0:l.pageTitle)??""}),M=P(()=>{var l;return(l=t.meta)==null?void 0:l.breadcrumb}),w=P(()=>{var l,m;return((l=r.user)==null?void 0:l.name)??((m=r.user)==null?void 0:m.fullName)??"کاربر"}),g=P(()=>w.value.trim().charAt(0)||"ک"),k=P(()=>!!o.hasPermission("user.permission"));function C(){var m;const l=(m=M.value)==null?void 0:m.slice().reverse().find(s=>s.url&&!s.active);if(l!=null&&l.url){e.push(l.url);return}if(window.history.length>1){e.back();return}e.push("/")}async function B(){await r.logout()||e.push("/auth/login")}return(l,m)=>{const s=p("a-button"),u=p("router-link"),y=p("a-breadcrumb-item"),h=p("a-breadcrumb"),v=p("a-avatar"),d=p("a-divider"),I=p("a-menu-item"),L=p("a-menu"),z=p("a-dropdown"),re=p("a-layout-header");return a(),f(re,{class:"the-navbar"},{default:i(()=>[_("div",ke,[c(s,{type:"text",onClick:m[0]||(m[0]=$=>l.$emit("toggle-sidebar"))},{default:i(()=>[n.collapsed?(a(),f(b(q),{key:0})):(a(),f(b(W),{key:1}))]),_:1}),c(s,{type:"text",class:"nav-back",title:"بازگشت","aria-label":"بازگشت",onClick:C},{default:i(()=>[c(b(ie))]),_:1}),_("span",we,S(O.value),1),M.value?(a(),f(h,{key:0,class:"breadcrumb"},{default:i(()=>[(a(!0),A(j,null,T(M.value,($,F)=>(a(),f(y,{key:F},{default:i(()=>[$.url&&!$.active?(a(),f(u,{key:0,to:$.url},{default:i(()=>[N(S($.title),1)]),_:2},1032,["to"])):(a(),A("span",Se,S($.title),1))]),_:2},1024))),128))]),_:1})):x("",!0)]),_("div",Me,[c(z,{trigger:"click",placement:"bottomRight","overlay-class-name":"user-dropdown-overlay"},{overlay:i(()=>{var $;return[_("div",$e,[_("div",Ne,[c(v,{size:"large",style:{"background-color":"#1c2d56"}},{default:i(()=>[N(S(g.value),1)]),_:1}),_("div",Pe,[_("span",Ae,S(w.value),1),_("span",Be,S(($=b(r).user)==null?void 0:$.mobile),1)])]),c(d,{class:"user-card__divider"}),c(L,{class:"user-card__menu"},{default:i(()=>[c(I,{key:"my-data",onClick:m[1]||(m[1]=F=>b(e).push("/my-data"))},{default:i(()=>[c(b(ce)),m[3]||(m[3]=N(" اطلاعات من ",-1))]),_:1}),k.value?(a(),f(I,{key:"permission",onClick:m[2]||(m[2]=F=>b(e).push("/permission"))},{default:i(()=>[c(b(me)),m[4]||(m[4]=N(" دسترسی ها ",-1))]),_:1})):x("",!0)]),_:1}),c(d,{class:"user-card__divider"}),c(L,{class:"user-card__menu"},{default:i(()=>[c(I,{key:"logout",onClick:B},{default:i(()=>[c(b(G)),m[5]||(m[5]=N(" خروج ",-1))]),_:1})]),_:1})])]}),default:i(()=>[_("span",Le,[c(v,{size:"small",style:{"background-color":"#1c2d56"}},{default:i(()=>[N(S(g.value),1)]),_:1}),_("span",Ce,S(w.value),1)])]),_:1})])]),_:1})}}}),xe=E(je,[["__scopeId","data-v-4d61f0ad"]]),ze={class:"content-wrapper"},Te={class:"content-area__content"},Ue=U({__name:"Main",setup(n){const t=R(),e=ae(),r=P(()=>e.sidebarCollapsed);function o(){e.isSmallScreen?e.setMobileNavOpen(!e.mobileNavOpen):e.setSidebarCollapsed(!r.value)}const O=P(()=>{var g;return!!((g=t.meta)!=null&&g.no_scroll)}),M=H(void 0);function w(g){M.value=g}return V(()=>t.path,()=>{M.value=void 0,e.setMobileNavOpen(!1)}),V(()=>e.isSmallScreen,g=>{g||e.setMobileNavOpen(!1)}),(g,k)=>{const C=p("a-drawer"),B=p("router-view"),l=p("a-layout-content"),m=p("a-layout");return a(),f(m,{class:se(["layout--main",{"no-scroll":O.value}])},{default:i(()=>[b(e).isSmallScreen?(a(),f(C,{key:1,open:b(e).mobileNavOpen,placement:"right",width:260,closable:!1,"root-class-name":"mobile-nav-drawer",onClose:k[0]||(k[0]=s=>b(e).setMobileNavOpen(!1))},{default:i(()=>[c(ne)]),_:1},8,["open"])):(a(),f(ne,{key:0,collapsed:r.value,"show-toggle":"",onToggle:o},null,8,["collapsed"])),c(m,null,{default:i(()=>[c(xe,{collapsed:b(e).isSmallScreen?!b(e).mobileNavOpen:r.value,onToggleSidebar:o},null,8,["collapsed"]),c(l,{id:"content-area"},{default:i(()=>[_("div",ze,[_("div",Te,[c(B,{onChangeRouteTitle:w})])])]),_:1})]),_:1})]),_:1},8,["class"])}}}),Ze=E(Ue,[["__scopeId","data-v-c1ea4b9d"]]);export{Ze as default}; diff --git a/apps/admin-panel/dist/assets/Maintenance-3Xkj-5w0.js b/apps/admin-panel/dist/assets/Maintenance-axbA62Hp.js similarity index 88% rename from apps/admin-panel/dist/assets/Maintenance-3Xkj-5w0.js rename to apps/admin-panel/dist/assets/Maintenance-axbA62Hp.js index 944db25..bbcd2f8 100644 --- a/apps/admin-panel/dist/assets/Maintenance-3Xkj-5w0.js +++ b/apps/admin-panel/dist/assets/Maintenance-axbA62Hp.js @@ -1 +1 @@ -import{_ as c,b as _,c as e,w as o,f as l,r as s,o as u}from"./index-CJij4X3l.js";const i={},p={class:"full-page-msg"};function d(n,t){const a=s("a-button"),r=s("a-result");return u(),_("div",p,[e(r,{status:"info",title:"در دست تعمیر","sub-title":"این بخش موقتاً در دسترس نیست."},{extra:o(()=>[e(a,{type:"primary",onClick:t[0]||(t[0]=f=>n.$router.push("/"))},{default:o(()=>[...t[1]||(t[1]=[l("بازگشت به خانه",-1)])]),_:1})]),_:1})])}const x=c(i,[["render",d],["__scopeId","data-v-4e6c833c"]]);export{x as default}; +import{_ as c,b as _,c as e,w as o,f as l,r as s,o as u}from"./index-CpVArufm.js";const i={},p={class:"full-page-msg"};function d(n,t){const a=s("a-button"),r=s("a-result");return u(),_("div",p,[e(r,{status:"info",title:"در دست تعمیر","sub-title":"این بخش موقتاً در دسترس نیست."},{extra:o(()=>[e(a,{type:"primary",onClick:t[0]||(t[0]=f=>n.$router.push("/"))},{default:o(()=>[...t[1]||(t[1]=[l("بازگشت به خانه",-1)])]),_:1})]),_:1})])}const x=c(i,[["render",d],["__scopeId","data-v-4e6c833c"]]);export{x as default}; diff --git a/apps/admin-panel/dist/assets/MakeOrder-CURJu9sW.css b/apps/admin-panel/dist/assets/MakeOrder-CURJu9sW.css deleted file mode 100644 index a362728..0000000 --- a/apps/admin-panel/dist/assets/MakeOrder-CURJu9sW.css +++ /dev/null @@ -1 +0,0 @@ -.flex-1[data-v-4a9a9c66]{flex:1}.gap-8[data-v-4a9a9c66]{gap:2rem}.mr-3[data-v-4a9a9c66]{margin-left:.75rem}@media (max-width: 575px){.make-detail[data-v-4a9a9c66]{flex-direction:column;gap:12px}.make-detail>.flex[data-v-4a9a9c66]{min-width:0}} diff --git a/apps/admin-panel/dist/assets/MakeOrder-DEb98dwZ.js b/apps/admin-panel/dist/assets/MakeOrder-DEb98dwZ.js new file mode 100644 index 0000000..82e4ec9 --- /dev/null +++ b/apps/admin-panel/dist/assets/MakeOrder-DEb98dwZ.js @@ -0,0 +1 @@ +import{u as X,d as q,b as p,c as n,w as l,r as m,o as s,h as G,H as Q,t as c,p as w,a as _,i as v,f,F as Y,e as Z,m as h,s as U,y as I,J as D,_ as ee}from"./index-CpVArufm.js";import{a as te,b as d,X as oe}from"./model-mwiDYd1J.js";import{_ as V}from"./TooltipBtn.vue_vue_type_script_setup_true_lang-DuvVMhj7.js";import{j as ae}from"./filters-CoNJlguG.js";import"./SettingOutlined-E4OknxY2.js";import"./icons-BRqF3liF.js";import"./UnorderedListOutlined-CLUl5bxX.js";import"./PercentageOutlined-IS1MVcbY.js";import"./UserAddOutlined-Bpe7Keo_.js";import"./CreditCardOutlined-CIq9Sdft.js";import"./AppstoreOutlined-BRgpp4c5.js";import"./TeamOutlined-DL6Ofm69.js";import"./UserOutlined-DeX82IP7.js";import"./CameraOutlined-JfS-rAEW.js";import"./index-DjZc5EYL.js";function le(){const K=X(),r=new te("admin/pre-orders/list","سفارش های ساختنی");return r.add(new d("customer.id","شماره").filterKey("id").filterNumber()),r.add(new d("customer.fname","نام مشتری").filterKey("customer.fullName").filterText()),r.add(new d("customer.lname","نام خانوادگی").filterKey("customer.fullName").filterText()),r.add(new d("color","رنگ محصول").filterKey("colorName").filterText()),r.add(new d("size","سایز محصول").filterKey("sizeSpec").filterText()),r.add(new d("color_mina","رنگ مینا").filterKey("minaColor").filterText()),r.add(new d("color_stone","رنگ سنگ").filterKey("stoneColor").filterText()),r.add(new d("sum","تعداد").filterText()),r.add(new d("time_creat_fa","تاریخ ثبت").filterKey("createdAt").filterDate().noSort()),r.add(new d("time_update_fa","تاریخ ویرایش").hidden().filterKey("updatedAt").filterDate().noSort()),r.add(new d("customer.name","ثبت کننده").renderSlot("name").noSort()),K.roles&&K.roles.includes("order.tamin.state")&&r.add(new d("sts_str_fa","وضعیت").renderSlot("sts").noSort()),r.add(new d("opt","عملیات").noSort().renderSlot("opt")),r}const se={id:"page-user-list"},ne={class:"flex"},re=["onClick"],ie={key:1},de={key:0},ue={class:"flex"},ce={class:"flex gap-8 make-detail"},me=["src"],_e={class:"flex"},ve={key:0},pe={key:0},fe={key:0},ke=q({__name:"MakeOrder",setup(K){const r=X(),k=a=>!!r.hasPermission(a),j=le(),N=h(null),t=h(void 0),C=h(!1),i=h(!1),M=h([]),L=a=>a?ae(a):"",z=U(()=>i.value?"CheckIcon":"EditIcon"),A=U(()=>{var a,e;return((e=(a=t.value)==null?void 0:a.customer)==null?void 0:e.name)??"-"}),E=U(()=>{var a,e;return((e=(a=t.value)==null?void 0:a.customer)==null?void 0:e.mobile)??"-"});async function F(){try{const{data:a}=await I.post("workshop/table",{page:1,limit:100});M.value=(a.rows??[]).map(e=>({id:e.id,name:e.name}))}catch(a){console.log(a)}}async function $(a){const{data:e}=await I.get(`admin/pre-orders/${a.id}`);t.value=e,C.value=!0,F()}async function P(){var a,e,u,b,x,y,O,S;if(!i.value){i.value=!0;return}try{await I.put(`custom-order/${(a=t.value)==null?void 0:a.id}`,{color:(e=t.value)==null?void 0:e.color,color_mina:(u=t.value)==null?void 0:u.color_mina,color_stone:(b=t.value)==null?void 0:b.color_stone,sum:(x=t.value)==null?void 0:x.sum}),i.value=!1,D.info("ویرایش موفق آمیز"),(y=N.value)==null||y.fetch()}catch(g){D.error(((S=(O=g==null?void 0:g.response)==null?void 0:O.data)==null?void 0:S.message)??"خطا در ویرایش")}}function W(){var a;(a=N.value)==null||a.fetch(),i.value=!1}return(a,e)=>{const u=m("a-descriptions-item"),b=m("a-descriptions"),x=m("a-empty"),y=m("a-input"),O=m("a-tag"),S=m("a-input-number"),g=m("a-select-option"),H=m("a-select"),B=m("a-card"),J=m("a-button"),R=m("a-modal");return s(),p("div",se,[n(B,{title:"سفارش های ساختنی",class:"page-card"},{default:l(()=>[n(oe,{ref_key:"tbl",ref:N,model:G(j),"mobile-cards":""},{name:l(({record:o})=>{var T;return[f(c((T=o.customer)==null?void 0:T.name),1)]}),opt:l(({record:o})=>[w("div",ne,[k("order.makeOrder.view")?(s(),_(V,{key:0,"icon-class":"w-5 h-5 text-primary",class:"mr-3",icon:"ListIcon",title:"مشاهده سفارش",onClick:T=>$(o)},null,8,["onClick"])):v("",!0)])]),sts:l(({record:o})=>[k("order.makeOrder.state")?(s(),p("a",{key:0,href:"",onClick:Q(T=>$(o),["prevent"])},c(o.sts_str_fa),9,re)):(s(),p("span",ie,c(o.sts_str_fa),1))]),_:1},8,["model"]),n(R,{open:C.value,"onUpdate:open":e[6]||(e[6]=o=>C.value=o),title:"مشاهده سفارش",width:"80%","wrap-class-name":"detail-modal",onCancel:W},{footer:l(()=>[n(J,{onClick:e[5]||(e[5]=o=>C.value=!1)},{default:l(()=>[...e[8]||(e[8]=[f("باشه",-1)])]),_:1})]),default:l(()=>[t.value?(s(),p("div",de,[n(b,null,{default:l(()=>[n(u,{label:"مشتری"},{default:l(()=>[f(c(A.value),1)]),_:1}),n(u,{label:"تلفن همراه"},{default:l(()=>[f(c(E.value),1)]),_:1}),n(u,{label:"تاریخ ثبت"},{default:l(()=>[f(c(L(t.value.time_creat_fa)||"-"),1)]),_:1}),n(u,{label:"وضعیت"},{default:l(()=>[f(c(t.value.sts_str_fa||"-"),1)]),_:1})]),_:1}),n(B,null,{title:l(()=>[w("div",ue,[e[7]||(e[7]=w("div",{class:"flex-1"},"آیتم های سفارش",-1)),w("div",null,[k("order.makeOrder.view.edit")?(s(),_(V,{key:0,"icon-class":"w-5 h-5 text-success",title:"ویرایش",icon:z.value,onClick:P},null,8,["icon"])):v("",!0)])])]),default:l(()=>[w("div",ce,[w("div",null,[t.value.designImageUrl?(s(),p("img",{key:0,src:t.value.designImageUrl,width:"90px",height:"90px",style:{"object-fit":"scale-down"}},null,8,me)):(s(),_(x,{key:1,image:void 0,description:"بدون تصویر"}))]),w("div",_e,[n(b,null,{default:l(()=>[n(u,{label:"رنگ محصول"},{default:l(()=>[i.value?v("",!0):(s(),p("div",ve,c(t.value.color||"-"),1)),i.value&&k("order.makeOrder.view.edit")?(s(),_(y,{key:1,value:t.value.color,"onUpdate:value":e[0]||(e[0]=o=>t.value.color=o)},null,8,["value"])):v("",!0)]),_:1}),n(u,{label:"رنگ مینا"},{default:l(()=>[i.value?v("",!0):(s(),p("div",pe,c(t.value.color_mina||"-"),1)),i.value&&k("order.makeOrder.view.edit")?(s(),_(y,{key:1,value:t.value.color_mina,"onUpdate:value":e[1]||(e[1]=o=>t.value.color_mina=o)},null,8,["value"])):v("",!0)]),_:1}),n(u,{label:"رنگ سنگ"},{default:l(()=>[i.value?v("",!0):(s(),p("div",fe,c(t.value.color_stone||"-"),1)),i.value&&k("order.makeOrder.view.edit")?(s(),_(y,{key:1,value:t.value.color_stone,"onUpdate:value":e[2]||(e[2]=o=>t.value.color_stone=o)},null,8,["value"])):v("",!0)]),_:1}),n(u,{label:"تعداد"},{default:l(()=>[i.value?v("",!0):(s(),_(O,{key:0,color:"orange"},{default:l(()=>[f(c(t.value.sum||0),1)]),_:1})),i.value&&k("order.makeOrder.view.edit")?(s(),_(S,{key:1,value:t.value.sum,"onUpdate:value":e[3]||(e[3]=o=>t.value.sum=o),class:"w-full"},null,8,["value"])):v("",!0)]),_:1}),n(u,{label:"انتخاب کارگاه"},{default:l(()=>[n(H,{value:t.value.workshop_id,"onUpdate:value":e[4]||(e[4]=o=>t.value.workshop_id=o),placeholder:"لطفا یک کارگاه را انتخاب کنید",style:{"min-width":"200px"}},{default:l(()=>[(s(!0),p(Y,null,Z(M.value,o=>(s(),_(g,{key:o.id,value:o.id},{default:l(()=>[f(c(o.name),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1})]),_:1})])])]),_:1})])):(s(),_(x,{key:1}))]),_:1},8,["open"])]),_:1})])}}}),$e=ee(ke,[["__scopeId","data-v-bb2f59e2"]]);export{$e as default}; diff --git a/apps/admin-panel/dist/assets/MakeOrder-DOwP9BUX.css b/apps/admin-panel/dist/assets/MakeOrder-DOwP9BUX.css new file mode 100644 index 0000000..0c59360 --- /dev/null +++ b/apps/admin-panel/dist/assets/MakeOrder-DOwP9BUX.css @@ -0,0 +1 @@ +.flex-1[data-v-bb2f59e2]{flex:1}.gap-8[data-v-bb2f59e2]{gap:2rem}.mr-3[data-v-bb2f59e2]{margin-left:.75rem}@media (max-width: 575px){.make-detail[data-v-bb2f59e2]{flex-direction:column;gap:12px}.make-detail>.flex[data-v-bb2f59e2]{min-width:0}} diff --git a/apps/admin-panel/dist/assets/MakeOrder-D_SjEFcs.js b/apps/admin-panel/dist/assets/MakeOrder-D_SjEFcs.js deleted file mode 100644 index 22aba86..0000000 --- a/apps/admin-panel/dist/assets/MakeOrder-D_SjEFcs.js +++ /dev/null @@ -1 +0,0 @@ -import{u as V,d as q,b as p,c as n,w as l,r as m,o as s,h as G,H as Q,t as c,p as w,a as _,i as v,f,F as Y,e as Z,m as h,s as N,y as U,J as B,_ as ee}from"./index-CJij4X3l.js";import{a as te,b as d,X as oe}from"./model-tqsMDjkK.js";import{_ as D}from"./TooltipBtn.vue_vue_type_script_setup_true_lang-xFR71kab.js";import{j as ae}from"./filters-BPYO-DKN.js";import"./SettingOutlined-BJxMXy1I.js";import"./icons-BplZzYUR.js";import"./UnorderedListOutlined-CHqEItu3.js";import"./PercentageOutlined-CtwjLYTJ.js";import"./UserAddOutlined-Dac4nUC8.js";import"./CreditCardOutlined-Cz1giwnr.js";import"./AppstoreOutlined-DvD8zs_r.js";import"./TeamOutlined-Bdydtt7N.js";import"./UserOutlined-yq90mQcC.js";import"./CameraOutlined-BcxYWwtK.js";import"./index-CKg-8s_Z.js";function le(){const T=V(),r=new te("admin/pre-orders/list","سفارش های ساختنی");return r.add(new d("customer.id","شماره").filterKey("id").filterNumber()),r.add(new d("customer.fname","نام مشتری").filterKey("customer.fullName").filterText()),r.add(new d("customer.lname","نام خانوادگی").filterKey("customer.fullName").filterText()),r.add(new d("color","رنگ محصول").filterKey("colorName").filterText()),r.add(new d("size","سایز محصول").filterKey("sizeSpec").filterText()),r.add(new d("color_mina","رنگ مینا").filterKey("minaColor").filterText()),r.add(new d("color_stone","رنگ سنگ").filterKey("stoneColor").filterText()),r.add(new d("sum","تعداد").filterText()),r.add(new d("time_creat_fa","تاریخ ثبت").filterKey("createdAt").filterDate().noSort()),r.add(new d("time_update_fa","تاریخ ویرایش").hidden().filterKey("updatedAt").filterDate().noSort()),r.add(new d("customer.name","ثبت کننده").renderSlot("name").noSort()),T.roles&&T.roles.includes("order.tamin.state")&&r.add(new d("sts_str_fa","وضعیت").renderSlot("sts").noSort()),r.add(new d("opt","عملیات").noSort().renderSlot("opt")),r}const se={id:"page-user-list"},ne={class:"flex"},re=["onClick"],ie={key:1},de={key:0},ue={class:"flex"},ce={class:"flex gap-8 make-detail"},me=["src"],_e={class:"flex"},ve={key:0},pe={key:0},fe={key:0},ke=q({__name:"MakeOrder",setup(T){const r=V(),k=a=>!!r.hasPermission(a),X=le(),K=h(null),t=h(void 0),C=h(!1),i=h(!1),I=h([]),j=a=>a?ae(a):"",L=N(()=>i.value?"CheckIcon":"EditIcon"),z=N(()=>{var a,e;return((e=(a=t.value)==null?void 0:a.customer)==null?void 0:e.name)??"-"}),A=N(()=>{var a,e;return((e=(a=t.value)==null?void 0:a.customer)==null?void 0:e.mobile)??"-"});async function E(){try{const{data:a}=await U.post("workshop/table",{page:1,limit:100});I.value=(a.rows??[]).map(e=>({id:e.id,name:e.name}))}catch(a){console.log(a)}}async function M(a){const{data:e}=await U.get(`admin/pre-orders/${a.id}`);t.value=e,C.value=!0,E()}async function F(){var a,e,u,b,x,y,O;if(!i.value){i.value=!0;return}try{await U.put(`custom-order/${(a=t.value)==null?void 0:a.id}`,{color:(e=t.value)==null?void 0:e.color,color_mina:(u=t.value)==null?void 0:u.color_mina,color_stone:(b=t.value)==null?void 0:b.color_stone}),i.value=!1,B.info("ویرایش موفق آمیز"),(x=K.value)==null||x.fetch()}catch(g){B.error(((O=(y=g==null?void 0:g.response)==null?void 0:y.data)==null?void 0:O.message)??"خطا در ویرایش")}}function P(){var a;(a=K.value)==null||a.fetch(),i.value=!1}return(a,e)=>{const u=m("a-descriptions-item"),b=m("a-descriptions"),x=m("a-empty"),y=m("a-input"),O=m("a-tag"),g=m("a-input-number"),W=m("a-select-option"),H=m("a-select"),$=m("a-card"),J=m("a-button"),R=m("a-modal");return s(),p("div",se,[n($,{title:"سفارش های ساختنی",class:"page-card"},{default:l(()=>[n(oe,{ref_key:"tbl",ref:K,model:G(X),"mobile-cards":""},{name:l(({record:o})=>{var S;return[f(c((S=o.customer)==null?void 0:S.name),1)]}),opt:l(({record:o})=>[w("div",ne,[k("order.makeOrder.view")?(s(),_(D,{key:0,"icon-class":"w-5 h-5 text-primary",class:"mr-3",icon:"ListIcon",title:"مشاهده سفارش",onClick:S=>M(o)},null,8,["onClick"])):v("",!0)])]),sts:l(({record:o})=>[k("order.makeOrder.state")?(s(),p("a",{key:0,href:"",onClick:Q(S=>M(o),["prevent"])},c(o.sts_str_fa),9,re)):(s(),p("span",ie,c(o.sts_str_fa),1))]),_:1},8,["model"]),n(R,{open:C.value,"onUpdate:open":e[6]||(e[6]=o=>C.value=o),title:"مشاهده سفارش",width:"80%","wrap-class-name":"detail-modal",onCancel:P},{footer:l(()=>[n(J,{onClick:e[5]||(e[5]=o=>C.value=!1)},{default:l(()=>[...e[8]||(e[8]=[f("باشه",-1)])]),_:1})]),default:l(()=>[t.value?(s(),p("div",de,[n(b,null,{default:l(()=>[n(u,{label:"مشتری"},{default:l(()=>[f(c(z.value),1)]),_:1}),n(u,{label:"تلفن همراه"},{default:l(()=>[f(c(A.value),1)]),_:1}),n(u,{label:"تاریخ ثبت"},{default:l(()=>[f(c(j(t.value.time_creat_fa)||"-"),1)]),_:1}),n(u,{label:"وضعیت"},{default:l(()=>[f(c(t.value.sts_str_fa||"-"),1)]),_:1})]),_:1}),n($,null,{title:l(()=>[w("div",ue,[e[7]||(e[7]=w("div",{class:"flex-1"},"آیتم های سفارش",-1)),w("div",null,[k("order.makeOrder.view.edit")?(s(),_(D,{key:0,"icon-class":"w-5 h-5 text-success",title:"ویرایش",icon:L.value,onClick:F},null,8,["icon"])):v("",!0)])])]),default:l(()=>[w("div",ce,[w("div",null,[t.value.designImageUrl?(s(),p("img",{key:0,src:t.value.designImageUrl,width:"90px",height:"90px",style:{"object-fit":"scale-down"}},null,8,me)):(s(),_(x,{key:1,image:void 0,description:"بدون تصویر"}))]),w("div",_e,[n(b,null,{default:l(()=>[n(u,{label:"رنگ محصول"},{default:l(()=>[i.value?v("",!0):(s(),p("div",ve,c(t.value.color||"-"),1)),i.value&&k("order.makeOrder.view.edit")?(s(),_(y,{key:1,value:t.value.color,"onUpdate:value":e[0]||(e[0]=o=>t.value.color=o)},null,8,["value"])):v("",!0)]),_:1}),n(u,{label:"رنگ مینا"},{default:l(()=>[i.value?v("",!0):(s(),p("div",pe,c(t.value.color_mina||"-"),1)),i.value&&k("order.makeOrder.view.edit")?(s(),_(y,{key:1,value:t.value.color_mina,"onUpdate:value":e[1]||(e[1]=o=>t.value.color_mina=o)},null,8,["value"])):v("",!0)]),_:1}),n(u,{label:"رنگ سنگ"},{default:l(()=>[i.value?v("",!0):(s(),p("div",fe,c(t.value.color_stone||"-"),1)),i.value&&k("order.makeOrder.view.edit")?(s(),_(y,{key:1,value:t.value.color_stone,"onUpdate:value":e[2]||(e[2]=o=>t.value.color_stone=o)},null,8,["value"])):v("",!0)]),_:1}),n(u,{label:"تعداد"},{default:l(()=>[i.value?v("",!0):(s(),_(O,{key:0,color:"orange"},{default:l(()=>[f(c(t.value.sum||0),1)]),_:1})),i.value&&k("order.makeOrder.view.edit")?(s(),_(g,{key:1,value:t.value.sum,"onUpdate:value":e[3]||(e[3]=o=>t.value.sum=o),class:"w-full"},null,8,["value"])):v("",!0)]),_:1}),n(u,{label:"انتخاب کارگاه"},{default:l(()=>[n(H,{value:t.value.workshop_id,"onUpdate:value":e[4]||(e[4]=o=>t.value.workshop_id=o),placeholder:"لطفا یک کارگاه را انتخاب کنید",style:{"min-width":"200px"}},{default:l(()=>[(s(!0),p(Y,null,Z(I.value,o=>(s(),_(W,{key:o.id,value:o.id},{default:l(()=>[f(c(o.name),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1})]),_:1})])])]),_:1})])):(s(),_(x,{key:1}))]),_:1},8,["open"])]),_:1})])}}}),$e=ee(ke,[["__scopeId","data-v-4a9a9c66"]]);export{$e as default}; diff --git a/apps/admin-panel/dist/assets/NotAuthorized-DqBj3zAX.js b/apps/admin-panel/dist/assets/NotAuthorized-DZ45zTfA.js similarity index 89% rename from apps/admin-panel/dist/assets/NotAuthorized-DqBj3zAX.js rename to apps/admin-panel/dist/assets/NotAuthorized-DZ45zTfA.js index a2930a2..77e3dd5 100644 --- a/apps/admin-panel/dist/assets/NotAuthorized-DqBj3zAX.js +++ b/apps/admin-panel/dist/assets/NotAuthorized-DZ45zTfA.js @@ -1 +1 @@ -import{_,b as c,c as e,w as o,f as l,r as s,o as u}from"./index-CJij4X3l.js";const p={},d={class:"full-page-msg"};function i(n,t){const r=s("a-button"),a=s("a-result");return u(),c("div",d,[e(a,{status:"403",title:"دسترسی غیرمجاز","sub-title":"شما دسترسی لازم برای مشاهده این صفحه را ندارید."},{extra:o(()=>[e(r,{type:"primary",onClick:t[0]||(t[0]=f=>n.$router.push("/"))},{default:o(()=>[...t[1]||(t[1]=[l("بازگشت به خانه",-1)])]),_:1})]),_:1})])}const b=_(p,[["render",i],["__scopeId","data-v-8b21c139"]]);export{b as default}; +import{_,b as c,c as e,w as o,f as l,r as s,o as u}from"./index-CpVArufm.js";const p={},d={class:"full-page-msg"};function i(n,t){const r=s("a-button"),a=s("a-result");return u(),c("div",d,[e(a,{status:"403",title:"دسترسی غیرمجاز","sub-title":"شما دسترسی لازم برای مشاهده این صفحه را ندارید."},{extra:o(()=>[e(r,{type:"primary",onClick:t[0]||(t[0]=f=>n.$router.push("/"))},{default:o(()=>[...t[1]||(t[1]=[l("بازگشت به خانه",-1)])]),_:1})]),_:1})])}const b=_(p,[["render",i],["__scopeId","data-v-8b21c139"]]);export{b as default}; diff --git a/apps/admin-panel/dist/assets/OmdeArchivedList-4HZ0YAiM.js b/apps/admin-panel/dist/assets/OmdeArchivedList-4HZ0YAiM.js deleted file mode 100644 index 16fd81f..0000000 --- a/apps/admin-panel/dist/assets/OmdeArchivedList-4HZ0YAiM.js +++ /dev/null @@ -1 +0,0 @@ -import{b as i,O as m,a as e}from"./OmdeCustomerList-CVyvM4xg.js";import{d as p,a as s,h as t,o as a}from"./index-CJij4X3l.js";import"./index-CKg-8s_Z.js";import"./model-tqsMDjkK.js";import"./filters-BPYO-DKN.js";import"./SettingOutlined-BJxMXy1I.js";import"./ListPageHeader.vue_vue_type_script_setup_true_lang-D07Lc14a.js";import"./AccountingSyncButton.vue_vue_type_script_setup_true_lang-CVFVkjGK.js";import"./bulkCustomer.vue_vue_type_script_setup_true_lang-C_6AC_x3.js";import"./BaseFormModal.vue_vue_type_style_index_0_lang-YLHOAWTN.js";import"./ImageUploadInput.vue_vue_type_script_setup_true_lang-vRgyyG7o.js";import"./CityTreeSelect.vue_vue_type_script_setup_true_lang-7y8zYJ_W.js";import"./DateInput-DgUF2he7.js";import"./UserOutlined-yq90mQcC.js";import"./ShopOutlined-B63CHExu.js";import"./EnvironmentOutlined-Cetl6vFW.js";import"./PercentageOutlined-CtwjLYTJ.js";import"./SafetyCertificateOutlined-Cr8bqGKo.js";import"./UnorderedListOutlined-CHqEItu3.js";const U=p({__name:"OmdeArchivedList",setup(d){const o=m.archived.title,r=i("archived");return(l,c)=>(a(),s(e,{title:t(o),model:t(r)},null,8,["title","model"]))}});export{U as default}; diff --git a/apps/admin-panel/dist/assets/OmdeArchivedList-DVwW0GQo.js b/apps/admin-panel/dist/assets/OmdeArchivedList-DVwW0GQo.js new file mode 100644 index 0000000..33023b1 --- /dev/null +++ b/apps/admin-panel/dist/assets/OmdeArchivedList-DVwW0GQo.js @@ -0,0 +1 @@ +import{b as i,O as m,a as e}from"./OmdeCustomerList-BnaQmi8j.js";import{d as p,a as s,h as t,o as a}from"./index-CpVArufm.js";import"./index-DjZc5EYL.js";import"./model-mwiDYd1J.js";import"./filters-CoNJlguG.js";import"./SettingOutlined-E4OknxY2.js";import"./ListPageHeader.vue_vue_type_script_setup_true_lang-YlEXklTr.js";import"./AccountingSyncButton.vue_vue_type_script_setup_true_lang-wE6MaQCK.js";import"./bulkCustomer.vue_vue_type_script_setup_true_lang-Bh7ptZgl.js";import"./select--BgT6D7O.js";import"./BaseFormModal.vue_vue_type_style_index_0_lang-B4iVMhZt.js";import"./ImageUploadInput.vue_vue_type_script_setup_true_lang-B9gVJPft.js";import"./CityTreeSelect.vue_vue_type_script_setup_true_lang-BtBj3fof.js";import"./DateInput-0_1fMgrR.js";import"./UserOutlined-DeX82IP7.js";import"./ShopOutlined-D8LgPxHa.js";import"./EnvironmentOutlined-BZFp8i4M.js";import"./PercentageOutlined-IS1MVcbY.js";import"./SafetyCertificateOutlined-mD-ddSP4.js";import"./UnorderedListOutlined-CLUl5bxX.js";const g=p({__name:"OmdeArchivedList",setup(d){const o=m.archived.title,r=i("archived");return(l,c)=>(a(),s(e,{title:t(o),model:t(r)},null,8,["title","model"]))}});export{g as default}; diff --git a/apps/admin-panel/dist/assets/OmdeCustomerList-BnaQmi8j.js b/apps/admin-panel/dist/assets/OmdeCustomerList-BnaQmi8j.js new file mode 100644 index 0000000..e531cc1 --- /dev/null +++ b/apps/admin-panel/dist/assets/OmdeCustomerList-BnaQmi8j.js @@ -0,0 +1 @@ +import{m as ke}from"./index-DjZc5EYL.js";import{c as a,I as Se,u as W,d as be,x as Oe,y as $,z as $e,b,Y as J,w as o,r as C,o as d,f as A,t as v,p as l,i as w,h as y,$ as Te,a as p,E as je,R as Ie,S as De,q as T,g as N,W as H,e as Ne,m as j,ak as Be,J as h,l as Ee,_ as Ae}from"./index-CpVArufm.js";import{a as He,b as r,X as Me}from"./model-mwiDYd1J.js";import{_ as Le}from"./ListPageHeader.vue_vue_type_script_setup_true_lang-YlEXklTr.js";import{_ as Ve}from"./AccountingSyncButton.vue_vue_type_script_setup_true_lang-wE6MaQCK.js";import{_ as Pe}from"./bulkCustomer.vue_vue_type_script_setup_true_lang-Bh7ptZgl.js";import{S as Re}from"./SettingOutlined-E4OknxY2.js";import{U as ze,S as M}from"./UnorderedListOutlined-CLUl5bxX.js";var Ue={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M624 706.3h-74.1V464c0-4.4-3.6-8-8-8h-60c-4.4 0-8 3.6-8 8v242.3H400c-6.7 0-10.4 7.7-6.3 12.9l112 141.7a8 8 0 0012.6 0l112-141.7c4.1-5.2.4-12.9-6.3-12.9z"}},{tag:"path",attrs:{d:"M811.4 366.7C765.6 245.9 648.9 160 512.2 160S258.8 245.8 213 366.6C127.3 389.1 64 467.2 64 560c0 110.5 89.5 200 199.9 200H304c4.4 0 8-3.6 8-8v-60c0-4.4-3.6-8-8-8h-40.1c-33.7 0-65.4-13.4-89-37.7-23.5-24.2-36-56.8-34.9-90.6.9-26.4 9.9-51.2 26.2-72.1 16.7-21.3 40.1-36.8 66.1-43.7l37.9-9.9 13.9-36.6c8.6-22.8 20.6-44.1 35.7-63.4a245.6 245.6 0 0152.4-49.9c41.1-28.9 89.5-44.2 140-44.2s98.9 15.3 140 44.2c19.9 14 37.5 30.8 52.4 49.9 15.1 19.3 27.1 40.7 35.7 63.4l13.8 36.5 37.8 10C846.1 454.5 884 503.8 884 560c0 33.1-12.9 64.3-36.3 87.7a123.07 123.07 0 01-87.6 36.3H720c-4.4 0-8 3.6-8 8v60c0 4.4 3.6 8 8 8h40.1C870.5 760 960 670.5 960 560c0-92.7-63.1-170.7-148.6-193.3z"}}]},name:"cloud-download",theme:"outlined"};function Q(c){for(var u=1;u_.key==="acc_remain"))return;const f=c.cols.findIndex(_=>_.key==="rial_remain");for(const _ of c.cols)_.key==="remain"&&(_.title="بدهی داخل اپ (گرم)"),_.key==="rial_remain"&&(_.title="بدهی داخل اپ (ریال)");c.cols.splice(f+1,0,new r("acc_remain",`مانده‌ی ${u} (گرم)`).filterNumber().renderSlot("acc_gold"),new r("acc_rial_remain",`مانده‌ی ${u} (ریال)`).filterNumber().renderSlot("acc_rial"))}const qe={id:"page-user-list"},Je={key:0,class:"list-count"},Qe={class:"text-danger"},We={key:0},Ge={key:1},Ze={key:0,class:"acc-none"},Ke={class:"flex"},et={class:"cursor-pointer flex items-center"},tt={class:"flex gap-2"},nt={class:"flex gap-2"},st={class:"flex gap-2"},ot={class:"flex gap-2"},it={class:"flex gap-2"},at={class:"flex gap-2"},lt={key:0,class:"text-danger text-xs"},rt={class:"flex gap-2"},ct={class:"flex gap-2"},ut={class:"flex gap-2"},dt=be({__name:"OmdeCustomerList",props:{title:{},model:{},showAddButton:{type:Boolean,default:!1},accountingSync:{type:Boolean,default:!1}},setup(c){const u=c,f=Ee(),_=W(),s=e=>!!_.hasPermission(e),x=j(null),I=j(!1),D=j(void 0),S=j(void 0);function G(e){const n=e;S.value={count:n&&n.count?n.count:void 0,total:n&&n.total?n.total:void 0}}const Z=[{slot:"acc_gold",field:"acc_remain",places:3},{slot:"acc_rial",field:"acc_rial_remain",places:0}],K=e=>Number(e)>0?"acc-debt":Number(e)<0?"acc-credit":"";function ee(e,n){const m=Number(e);return m?`${Math.abs(m).toLocaleString("fa-IR",{maximumFractionDigits:n})} ${m>0?"بدهکار":"بستانکار"}`:"۰"}const te=e=>ke(e).format("jYYYY/jMM/jDD HH:mm");Oe(async()=>{try{const{data:e}=await $.get("admin/accounting-status");e!=null&&e.connected&&e.provider&&Xe($e(u.model),e.provider)}catch{}});function ne(e,n){const m=String(e.key);return m==="5"||m==="6"||m==="7"||m==="8"||m==="9"}function se(e){switch(e.sts_verify_step_one){case 1:return"در انتظار تایید ورود مشتری";case 2:return"رد ورود مشتری";case 3:return"تایید ورود مشتری"}}function V(e){switch(e.sts_verify_step_one){case 1:return"HelpCircleIcon";case 2:return"SlashIcon";case 3:return"CheckIcon"}}function oe(e){switch(e.sts_verify_step_two){case 1:return"در انتظار فعال سازی";case 2:return"غیر فعال سازی";case 3:return"فعال سازی"}}function P(e){switch(e.sts_verify_step_two){case 1:return"HelpCircleIcon";case 2:return"SlashIcon";case 3:return"CheckIcon"}}function R(e){return e==="HelpCircleIcon"?Be:e==="CheckIcon"?H:M}function z(e){return e==="HelpCircleIcon"?"text-primary":e==="CheckIcon"?"text-success":"text-danger"}async function B(e,n){var m;try{await $.post("major/verify",e),h.info("تغییرات ثبت شد "),(m=x.value)==null||m.fetch()}catch{h.error(n)}}const U=e=>B({customer_id:e,sts_verify_step_one:2},"خطا در تغییر وضعیت اولیه مشتری"),Y=e=>q(e,"sts_verify_step_one"),F=e=>B({customer_id:e,sts_verify_step_two:2},"خطا در تغییر وضعیت سفارش مشتری"),X=e=>q(e,"sts_verify_step_two"),k=j({open:!1,saving:!1,id:"",step:"sts_verify_step_one",reason:""});function q(e,n){k.value={open:!0,saving:!1,id:e,step:n,reason:""}}async function ie(){const e=k.value;e.saving=!0,await B({customer_id:e.id,[e.step]:3,reason:e.reason.trim()||null},e.step==="sts_verify_step_one"?"خطا در تغییر وضعیت اولیه مشتری":"خطا در تغییر وضعیت سفارش مشتری"),e.saving=!1,e.open=!1}function ae(e){return e.sts_verify_step_one===1?U(e.id):e.sts_verify_step_one===2?Y(e.id):U(e.id)}function le(e){if(e.sts_verify_step_one===1)return Y(e.id)}function re(e){return e.sts_verify_step_two===1?F(e.id):e.sts_verify_step_two===2?X(e.id):F(e.id)}function ce(e){if(e.sts_verify_step_two===1)return X(e.id)}async function ue(e){var n;try{await $.post("customer/toggle-active",{id:e.id}),h.info("تغییرات ثبت شد "),await((n=x.value)==null?void 0:n.fetch())}catch{h.error("خطا در تغییر وضعیت")}}async function de(e){var n;try{await $.post("customer/toggle-sts",{id:e.id,sts:e.sts}),h.info("تغییرات ثبت شد "),await((n=x.value)==null?void 0:n.fetch())}catch{h.error("خطا در تغییر وضعیت")}}async function fe(e){var n;try{await $.get(`major/archive/${e}`),h.info("تغییرات ثبت شد "),await((n=x.value)==null?void 0:n.fetch())}catch{h.error("خطا در بایگانی")}}function _e(e){u.showAddButton?(D.value=e,I.value=!0):f.push(`/bulkCustomer/edit/${e}`)}function me(){D.value=void 0,I.value=!0}function pe(e){f.push(`/bulkCustomer/view/${e}`)}function ve(e){f.push(`/bulkCustomer/view/${e.id}?tab=orders`)}function ye(e){f.push(`/bulkCustomer/view/${e.id}?tab=documents`)}return(e,n)=>{const m=C("a-tag"),E=C("a-tooltip"),g=C("a-menu-item"),O=C("a-popconfirm"),we=C("a-menu"),ge=C("a-dropdown"),Ce=C("a-textarea"),he=C("a-modal"),xe=C("a-card");return d(),b("div",qe,[a(xe,{title:c.title,class:"page-card"},J({default:o(()=>[S.value&&S.value.count&&S.value.total?(d(),b("div",Je,[A(v(S.value.total)+" رکورد یافت شد - ",1),l("span",Qe,v(S.value.count)+" رکورد غیر فعال",1)])):w("",!0),a(Me,{ref_key:"tbl",ref:x,model:c.model,"mobile-cards":"",onQuery:G},J({city:o(({record:t})=>[t.city&&t.city.title?(d(),b("div",We,v(t.city.title),1)):(d(),b("div",Ge,"-"))]),sts:o(({record:t})=>[a(m,{color:t.sts===1?"green":"red"},{default:o(()=>[A(v(t.sts_str),1)]),_:2},1032,["color"])]),active:o(({record:t})=>[a(m,{color:t.active===1?"green":"red"},{default:o(()=>[A(v(t.active===1?"فعال":"غیر فعال"),1)]),_:2},1032,["color"])]),opt:o(({record:t})=>[l("div",Ke,[a(ge,null,{overlay:o(()=>[a(we,{onClick:i=>ne(i,t.id)},{default:o(()=>[s("persons.list.client.omde.edit")?(d(),p(g,{key:"1",onClick:i=>_e(t.id)},{default:o(()=>[l("div",tt,[a(y(je),{class:"cursor-pointer w-5 ml-1"}),n[5]||(n[5]=l("div",null,"ویرایش",-1))])]),_:1},8,["onClick"])):w("",!0),s("persons.list.client.omde.view")?(d(),p(g,{key:"2",onClick:i=>pe(t.id)},{default:o(()=>[l("div",nt,[a(y(Ie),{class:"cursor-pointer w-5 ml-1"}),n[6]||(n[6]=l("div",null,"مشاهده اطلاعات",-1))])]),_:1},8,["onClick"])):w("",!0),s("persons.list.client.omde.view.orders")?(d(),p(g,{key:"3",onClick:i=>ve(t)},{default:o(()=>[l("div",st,[a(y(ze),{class:"cursor-pointer w-5 ml-1"}),n[7]||(n[7]=l("div",null,"مشاهده سفارش",-1))])]),_:1},8,["onClick"])):w("",!0),s("persons.list.client.omde.view.documents")?(d(),p(g,{key:"4",onClick:i=>ye(t)},{default:o(()=>[l("div",ot,[a(y(De),{class:"cursor-pointer w-5 ml-1"}),n[8]||(n[8]=l("div",null,"سند های مالی",-1))])]),_:1},8,["onClick"])):w("",!0),s("persons.list.client.omde.able")?(d(),p(g,{key:"7"},{default:o(()=>[a(O,{"ok-text":"بله","cancel-text":"خیر",title:"آیا مطمئن هستید؟",onConfirm:i=>fe(t.id)},{default:o(()=>[l("div",it,[a(y(L),{class:"cursor-pointer w-5 ml-1"}),n[9]||(n[9]=l("div",null,"بایگانی کردن",-1))])]),_:1},8,["onConfirm"])]),_:2},1024)):w("",!0),a(g,{key:"8"},{default:o(()=>[a(O,{"ok-text":t.sts_verify_step_one===1?"تایید":"بله","cancel-text":t.sts_verify_step_one===1?"رد":"خیر",title:t.sts_verify_step_one===1?"وضعیت تایید اولیه مشتری به چه نحوی تغییر یابد؟":"آیا از تغییر وضعیت مشتری اطمینان دارید؟",onConfirm:i=>ae(t),onCancel:i=>le(t)},{default:o(()=>[l("div",at,[(d(),p(N(R(V(t))),{class:T(["cursor-pointer w-5 ml-1",z(V(t))])},null,8,["class"])),l("div",null,[l("div",null,v(se(t)),1),t.verificationStep==="REJECTED"?(d(),b("div",lt," رد شده"+v(t.verification_rejection_reason?`: ${t.verification_rejection_reason}`:""),1)):w("",!0)])])]),_:2},1032,["ok-text","cancel-text","title","onConfirm","onCancel"])]),_:2},1024),a(g,{disabled:t.sts_verify_step_one!==2,key:"9"},{default:o(()=>[a(O,{"ok-text":t.sts_verify_step_two===1?"تایید":"بله","cancel-text":t.sts_verify_step_two===1?"رد":"خیر",title:t.sts_verify_step_two===1?"وضعیت تایید سفارش مشتری به چه نحوی تغییر یابد؟":"آیا از تغییر وضعیت سفارش مشتری اطمینان دارید؟",onConfirm:i=>re(t),onCancel:i=>ce(t)},{default:o(()=>[l("div",rt,[(d(),p(N(R(P(t))),{class:T(["cursor-pointer w-5 ml-1",z(P(t))])},null,8,["class"])),l("div",null,v(oe(t)),1)])]),_:2},1032,["ok-text","cancel-text","title","onConfirm","onCancel"])]),_:2},1032,["disabled"]),s("persons.list.client.omde.able.order")?(d(),p(g,{disabled:t.sts_verify_step_one!==2,key:"5"},{default:o(()=>[a(O,{"ok-text":"بله","cancel-text":"خیر",title:"آیا مطمئن هستید؟",onConfirm:i=>de(t)},{default:o(()=>[l("div",ct,[(d(),p(N(t.sts===1?y(H):y(M)),{class:T(["cursor-pointer w-5 ml-1",t.sts===1?"text-success":"text-danger"])},null,8,["class"])),l("div",null,v(t.sts===1?"معلق کردن سفارش":"فعال کردن سفارش"),1)])]),_:2},1032,["onConfirm"])]),_:2},1032,["disabled"])):w("",!0),s("persons.list.client.omde.able")?(d(),p(g,{disabled:t.sts_verify_step_one!==2,key:"6"},{default:o(()=>[a(O,{"ok-text":"بله","cancel-text":"خیر",title:"آیا مطمئن هستید؟",onConfirm:i=>ue(t)},{default:o(()=>[l("div",ut,[(d(),p(N(t.sts===1?y(H):y(M)),{class:T(["cursor-pointer w-5 ml-1",t.active===1?"text-success":"text-danger"])},null,8,["class"])),l("div",null,v(t.active===1?"معلق کردن حساب کاربری":" فعال کردن حساب کاربری"),1)])]),_:2},1032,["onConfirm"])]),_:2},1032,["disabled"])):w("",!0)]),_:2},1032,["onClick"])]),default:o(()=>[l("div",et,[a(y(Te)),a(y(Re),{class:"cursor-pointer w-5 ml-1"})])]),_:2},1024)])]),_:2},[c.showAddButton?{name:"add",fn:o(()=>[a(Le,{rid:"persons.create.client","add-label":"افزودن مشتری عمده",onAdd:me})]),key:"0"}:void 0,Ne(Z,t=>({name:t.slot,fn:o(({record:i})=>[i[t.field]===null||i[t.field]===void 0?(d(),b("span",Ze,"—")):(d(),p(E,{key:1,title:i.acc_at?`به‌روزرسانی: ${te(i.acc_at)}`:void 0},{default:o(()=>[l("span",{class:T(K(i[t.field]))},v(ee(i[t.field],t.places)),3)]),_:2},1032,["title"]))])}))]),1032,["model"]),a(he,{open:k.value.open,title:"رد مدارک مشتری","ok-text":"ثبت رد","cancel-text":"انصراف","ok-button-props":{danger:!0},"confirm-loading":k.value.saving,onOk:ie,onCancel:n[2]||(n[2]=t=>k.value.open=!1)},{default:o(()=>[n[10]||(n[10]=l("p",null,"دلیل رد (اختیاری) — در پرونده‌ی مشتری ثبت می‌شود.",-1)),a(Ce,{value:k.value.reason,"onUpdate:value":n[1]||(n[1]=t=>k.value.reason=t),rows:3,maxlength:500,placeholder:"مثلاً: تصویر کارت ملی خوانا نیست"},null,8,["value"])]),_:1},8,["open","confirm-loading"]),c.showAddButton?(d(),p(Pe,{key:D.value??"new","as-modal":"",open:I.value,id:D.value,"onUpdate:open":n[3]||(n[3]=t=>I.value=t),onSuccess:n[4]||(n[4]=t=>{var i;return(i=x.value)==null?void 0:i.fetch()})},null,8,["open","id"])):w("",!0)]),_:2},[c.accountingSync?{name:"extra",fn:o(()=>[a(Ve,{endpoint:"admin/customers-omde/accounting-sync",onDone:n[0]||(n[0]=t=>{var i;return(i=x.value)==null?void 0:i.fetch()})})]),key:"0"}:void 0]),1032,["title"])])}}}),ht=Ae(dt,[["__scopeId","data-v-287c42bd"]]);export{Fe as O,ht as a,Ct as b}; diff --git a/apps/admin-panel/dist/assets/OmdeCustomerList-CVyvM4xg.js b/apps/admin-panel/dist/assets/OmdeCustomerList-CVyvM4xg.js deleted file mode 100644 index 9df4e22..0000000 --- a/apps/admin-panel/dist/assets/OmdeCustomerList-CVyvM4xg.js +++ /dev/null @@ -1 +0,0 @@ -import{m as ke}from"./index-CKg-8s_Z.js";import{c as a,I as Se,u as W,d as be,x as Oe,y as $,z as $e,b,aj as J,w as o,r as C,o as d,f as A,t as v,p as l,i as w,h as y,Z as Te,a as p,E as je,R as Ie,S as De,q as T,g as N,W as H,e as Ne,m as j,ak as Be,J as h,l as Ee,_ as Ae}from"./index-CJij4X3l.js";import{a as He,b as r,X as Me}from"./model-tqsMDjkK.js";import{_ as Le}from"./ListPageHeader.vue_vue_type_script_setup_true_lang-D07Lc14a.js";import{_ as Ve}from"./AccountingSyncButton.vue_vue_type_script_setup_true_lang-CVFVkjGK.js";import{_ as Pe}from"./bulkCustomer.vue_vue_type_script_setup_true_lang-C_6AC_x3.js";import{S as Re}from"./SettingOutlined-BJxMXy1I.js";import{U as ze,S as M}from"./UnorderedListOutlined-CHqEItu3.js";var Ue={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M624 706.3h-74.1V464c0-4.4-3.6-8-8-8h-60c-4.4 0-8 3.6-8 8v242.3H400c-6.7 0-10.4 7.7-6.3 12.9l112 141.7a8 8 0 0012.6 0l112-141.7c4.1-5.2.4-12.9-6.3-12.9z"}},{tag:"path",attrs:{d:"M811.4 366.7C765.6 245.9 648.9 160 512.2 160S258.8 245.8 213 366.6C127.3 389.1 64 467.2 64 560c0 110.5 89.5 200 199.9 200H304c4.4 0 8-3.6 8-8v-60c0-4.4-3.6-8-8-8h-40.1c-33.7 0-65.4-13.4-89-37.7-23.5-24.2-36-56.8-34.9-90.6.9-26.4 9.9-51.2 26.2-72.1 16.7-21.3 40.1-36.8 66.1-43.7l37.9-9.9 13.9-36.6c8.6-22.8 20.6-44.1 35.7-63.4a245.6 245.6 0 0152.4-49.9c41.1-28.9 89.5-44.2 140-44.2s98.9 15.3 140 44.2c19.9 14 37.5 30.8 52.4 49.9 15.1 19.3 27.1 40.7 35.7 63.4l13.8 36.5 37.8 10C846.1 454.5 884 503.8 884 560c0 33.1-12.9 64.3-36.3 87.7a123.07 123.07 0 01-87.6 36.3H720c-4.4 0-8 3.6-8 8v60c0 4.4 3.6 8 8 8h40.1C870.5 760 960 670.5 960 560c0-92.7-63.1-170.7-148.6-193.3z"}}]},name:"cloud-download",theme:"outlined"};function Q(c){for(var u=1;u_.key==="acc_remain"))return;const f=c.cols.findIndex(_=>_.key==="rial_remain");for(const _ of c.cols)_.key==="remain"&&(_.title="بدهی داخل اپ (گرم)"),_.key==="rial_remain"&&(_.title="بدهی داخل اپ (ریال)");c.cols.splice(f+1,0,new r("acc_remain",`مانده‌ی ${u} (گرم)`).filterNumber().renderSlot("acc_gold"),new r("acc_rial_remain",`مانده‌ی ${u} (ریال)`).filterNumber().renderSlot("acc_rial"))}const qe={id:"page-user-list"},Je={key:0,class:"list-count"},Qe={class:"text-danger"},We={key:0},Ze={key:1},Ge={key:0,class:"acc-none"},Ke={class:"flex"},et={class:"cursor-pointer flex items-center"},tt={class:"flex gap-2"},nt={class:"flex gap-2"},st={class:"flex gap-2"},ot={class:"flex gap-2"},it={class:"flex gap-2"},at={class:"flex gap-2"},lt={key:0,class:"text-danger text-xs"},rt={class:"flex gap-2"},ct={class:"flex gap-2"},ut={class:"flex gap-2"},dt=be({__name:"OmdeCustomerList",props:{title:{},model:{},showAddButton:{type:Boolean,default:!1},accountingSync:{type:Boolean,default:!1}},setup(c){const u=c,f=Ee(),_=W(),s=e=>!!_.hasPermission(e),x=j(null),I=j(!1),D=j(void 0),S=j(void 0);function Z(e){const n=e;S.value={count:n&&n.count?n.count:void 0,total:n&&n.total?n.total:void 0}}const G=[{slot:"acc_gold",field:"acc_remain",places:3},{slot:"acc_rial",field:"acc_rial_remain",places:0}],K=e=>Number(e)>0?"acc-debt":Number(e)<0?"acc-credit":"";function ee(e,n){const m=Number(e);return m?`${Math.abs(m).toLocaleString("fa-IR",{maximumFractionDigits:n})} ${m>0?"بدهکار":"بستانکار"}`:"۰"}const te=e=>ke(e).format("jYYYY/jMM/jDD HH:mm");Oe(async()=>{try{const{data:e}=await $.get("admin/accounting-status");e!=null&&e.connected&&e.provider&&Ye($e(u.model),e.provider)}catch{}});function ne(e,n){const m=String(e.key);return m==="5"||m==="6"||m==="7"||m==="8"||m==="9"}function se(e){switch(e.sts_verify_step_one){case 1:return"در انتظار تایید ورود مشتری";case 2:return"رد ورود مشتری";case 3:return"تایید ورود مشتری"}}function V(e){switch(e.sts_verify_step_one){case 1:return"HelpCircleIcon";case 2:return"SlashIcon";case 3:return"CheckIcon"}}function oe(e){switch(e.sts_verify_step_two){case 1:return"در انتظار فعال سازی";case 2:return"غیر فعال سازی";case 3:return"فعال سازی"}}function P(e){switch(e.sts_verify_step_two){case 1:return"HelpCircleIcon";case 2:return"SlashIcon";case 3:return"CheckIcon"}}function R(e){return e==="HelpCircleIcon"?Be:e==="CheckIcon"?H:M}function z(e){return e==="HelpCircleIcon"?"text-primary":e==="CheckIcon"?"text-success":"text-danger"}async function B(e,n){var m;try{await $.post("major/verify",e),h.info("تغییرات ثبت شد "),(m=x.value)==null||m.fetch()}catch{h.error(n)}}const U=e=>B({customer_id:e,sts_verify_step_one:2},"خطا در تغییر وضعیت اولیه مشتری"),F=e=>q(e,"sts_verify_step_one"),X=e=>B({customer_id:e,sts_verify_step_two:2},"خطا در تغییر وضعیت سفارش مشتری"),Y=e=>q(e,"sts_verify_step_two"),k=j({open:!1,saving:!1,id:"",step:"sts_verify_step_one",reason:""});function q(e,n){k.value={open:!0,saving:!1,id:e,step:n,reason:""}}async function ie(){const e=k.value;e.saving=!0,await B({customer_id:e.id,[e.step]:3,reason:e.reason.trim()||null},e.step==="sts_verify_step_one"?"خطا در تغییر وضعیت اولیه مشتری":"خطا در تغییر وضعیت سفارش مشتری"),e.saving=!1,e.open=!1}function ae(e){return e.sts_verify_step_one===1?U(e.id):e.sts_verify_step_one===2?F(e.id):U(e.id)}function le(e){if(e.sts_verify_step_one===1)return F(e.id)}function re(e){return e.sts_verify_step_two===1?X(e.id):e.sts_verify_step_two===2?Y(e.id):X(e.id)}function ce(e){if(e.sts_verify_step_two===1)return Y(e.id)}async function ue(e){var n;try{await $.post("customer/toggle-active",{id:e.id}),h.info("تغییرات ثبت شد "),await((n=x.value)==null?void 0:n.fetch())}catch{h.error("خطا در تغییر وضعیت")}}async function de(e){var n;try{await $.post("customer/toggle-sts",{id:e.id,sts:e.sts}),h.info("تغییرات ثبت شد "),await((n=x.value)==null?void 0:n.fetch())}catch{h.error("خطا در تغییر وضعیت")}}async function fe(e){var n;try{await $.get(`major/archive/${e}`),h.info("تغییرات ثبت شد "),await((n=x.value)==null?void 0:n.fetch())}catch{h.error("خطا در بایگانی")}}function _e(e){u.showAddButton?(D.value=e,I.value=!0):f.push(`/bulkCustomer/edit/${e}`)}function me(){D.value=void 0,I.value=!0}function pe(e){f.push(`/bulkCustomer/view/${e}`)}function ve(e){f.push(`/bulkCustomer/view/${e.id}?tab=orders`)}function ye(e){f.push(`/bulkCustomer/view/${e.id}?tab=documents`)}return(e,n)=>{const m=C("a-tag"),E=C("a-tooltip"),g=C("a-menu-item"),O=C("a-popconfirm"),we=C("a-menu"),ge=C("a-dropdown"),Ce=C("a-textarea"),he=C("a-modal"),xe=C("a-card");return d(),b("div",qe,[a(xe,{title:c.title,class:"page-card"},J({default:o(()=>[S.value&&S.value.count&&S.value.total?(d(),b("div",Je,[A(v(S.value.total)+" رکورد یافت شد - ",1),l("span",Qe,v(S.value.count)+" رکورد غیر فعال",1)])):w("",!0),a(Me,{ref_key:"tbl",ref:x,model:c.model,"mobile-cards":"",onQuery:Z},J({city:o(({record:t})=>[t.city&&t.city.title?(d(),b("div",We,v(t.city.title),1)):(d(),b("div",Ze,"-"))]),sts:o(({record:t})=>[a(m,{color:t.sts===1?"green":"red"},{default:o(()=>[A(v(t.sts_str),1)]),_:2},1032,["color"])]),active:o(({record:t})=>[a(m,{color:t.active===1?"green":"red"},{default:o(()=>[A(v(t.active===1?"فعال":"غیر فعال"),1)]),_:2},1032,["color"])]),opt:o(({record:t})=>[l("div",Ke,[a(ge,null,{overlay:o(()=>[a(we,{onClick:i=>ne(i,t.id)},{default:o(()=>[s("persons.list.client.omde.edit")?(d(),p(g,{key:"1",onClick:i=>_e(t.id)},{default:o(()=>[l("div",tt,[a(y(je),{class:"cursor-pointer w-5 ml-1"}),n[5]||(n[5]=l("div",null,"ویرایش",-1))])]),_:1},8,["onClick"])):w("",!0),s("persons.list.client.omde.view")?(d(),p(g,{key:"2",onClick:i=>pe(t.id)},{default:o(()=>[l("div",nt,[a(y(Ie),{class:"cursor-pointer w-5 ml-1"}),n[6]||(n[6]=l("div",null,"مشاهده اطلاعات",-1))])]),_:1},8,["onClick"])):w("",!0),s("persons.list.client.omde.view.orders")?(d(),p(g,{key:"3",onClick:i=>ve(t)},{default:o(()=>[l("div",st,[a(y(ze),{class:"cursor-pointer w-5 ml-1"}),n[7]||(n[7]=l("div",null,"مشاهده سفارش",-1))])]),_:1},8,["onClick"])):w("",!0),s("persons.list.client.omde.view.documents")?(d(),p(g,{key:"4",onClick:i=>ye(t)},{default:o(()=>[l("div",ot,[a(y(De),{class:"cursor-pointer w-5 ml-1"}),n[8]||(n[8]=l("div",null,"سند های مالی",-1))])]),_:1},8,["onClick"])):w("",!0),s("persons.list.client.omde.able")?(d(),p(g,{key:"7"},{default:o(()=>[a(O,{"ok-text":"بله","cancel-text":"خیر",title:"آیا مطمئن هستید؟",onConfirm:i=>fe(t.id)},{default:o(()=>[l("div",it,[a(y(L),{class:"cursor-pointer w-5 ml-1"}),n[9]||(n[9]=l("div",null,"بایگانی کردن",-1))])]),_:1},8,["onConfirm"])]),_:2},1024)):w("",!0),a(g,{key:"8"},{default:o(()=>[a(O,{"ok-text":t.sts_verify_step_one===1?"تایید":"بله","cancel-text":t.sts_verify_step_one===1?"رد":"خیر",title:t.sts_verify_step_one===1?"وضعیت تایید اولیه مشتری به چه نحوی تغییر یابد؟":"آیا از تغییر وضعیت مشتری اطمینان دارید؟",onConfirm:i=>ae(t),onCancel:i=>le(t)},{default:o(()=>[l("div",at,[(d(),p(N(R(V(t))),{class:T(["cursor-pointer w-5 ml-1",z(V(t))])},null,8,["class"])),l("div",null,[l("div",null,v(se(t)),1),t.verificationStep==="REJECTED"?(d(),b("div",lt," رد شده"+v(t.verification_rejection_reason?`: ${t.verification_rejection_reason}`:""),1)):w("",!0)])])]),_:2},1032,["ok-text","cancel-text","title","onConfirm","onCancel"])]),_:2},1024),a(g,{disabled:t.sts_verify_step_one!==2,key:"9"},{default:o(()=>[a(O,{"ok-text":t.sts_verify_step_two===1?"تایید":"بله","cancel-text":t.sts_verify_step_two===1?"رد":"خیر",title:t.sts_verify_step_two===1?"وضعیت تایید سفارش مشتری به چه نحوی تغییر یابد؟":"آیا از تغییر وضعیت سفارش مشتری اطمینان دارید؟",onConfirm:i=>re(t),onCancel:i=>ce(t)},{default:o(()=>[l("div",rt,[(d(),p(N(R(P(t))),{class:T(["cursor-pointer w-5 ml-1",z(P(t))])},null,8,["class"])),l("div",null,v(oe(t)),1)])]),_:2},1032,["ok-text","cancel-text","title","onConfirm","onCancel"])]),_:2},1032,["disabled"]),s("persons.list.client.omde.able.order")?(d(),p(g,{disabled:t.sts_verify_step_one!==2,key:"5"},{default:o(()=>[a(O,{"ok-text":"بله","cancel-text":"خیر",title:"آیا مطمئن هستید؟",onConfirm:i=>de(t)},{default:o(()=>[l("div",ct,[(d(),p(N(t.sts===1?y(H):y(M)),{class:T(["cursor-pointer w-5 ml-1",t.sts===1?"text-success":"text-danger"])},null,8,["class"])),l("div",null,v(t.sts===1?"معلق کردن سفارش":"فعال کردن سفارش"),1)])]),_:2},1032,["onConfirm"])]),_:2},1032,["disabled"])):w("",!0),s("persons.list.client.omde.able")?(d(),p(g,{disabled:t.sts_verify_step_one!==2,key:"6"},{default:o(()=>[a(O,{"ok-text":"بله","cancel-text":"خیر",title:"آیا مطمئن هستید؟",onConfirm:i=>ue(t)},{default:o(()=>[l("div",ut,[(d(),p(N(t.sts===1?y(H):y(M)),{class:T(["cursor-pointer w-5 ml-1",t.active===1?"text-success":"text-danger"])},null,8,["class"])),l("div",null,v(t.active===1?"معلق کردن حساب کاربری":" فعال کردن حساب کاربری"),1)])]),_:2},1032,["onConfirm"])]),_:2},1032,["disabled"])):w("",!0)]),_:2},1032,["onClick"])]),default:o(()=>[l("div",et,[a(y(Te)),a(y(Re),{class:"cursor-pointer w-5 ml-1"})])]),_:2},1024)])]),_:2},[c.showAddButton?{name:"add",fn:o(()=>[a(Le,{rid:"persons.create.client","add-label":"افزودن مشتری عمده",onAdd:me})]),key:"0"}:void 0,Ne(G,t=>({name:t.slot,fn:o(({record:i})=>[i[t.field]===null||i[t.field]===void 0?(d(),b("span",Ge,"—")):(d(),p(E,{key:1,title:i.acc_at?`به‌روزرسانی: ${te(i.acc_at)}`:void 0},{default:o(()=>[l("span",{class:T(K(i[t.field]))},v(ee(i[t.field],t.places)),3)]),_:2},1032,["title"]))])}))]),1032,["model"]),a(he,{open:k.value.open,title:"رد مدارک مشتری","ok-text":"ثبت رد","cancel-text":"انصراف","ok-button-props":{danger:!0},"confirm-loading":k.value.saving,onOk:ie,onCancel:n[2]||(n[2]=t=>k.value.open=!1)},{default:o(()=>[n[10]||(n[10]=l("p",null,"دلیل رد (اختیاری) — در پرونده‌ی مشتری ثبت می‌شود.",-1)),a(Ce,{value:k.value.reason,"onUpdate:value":n[1]||(n[1]=t=>k.value.reason=t),rows:3,maxlength:500,placeholder:"مثلاً: تصویر کارت ملی خوانا نیست"},null,8,["value"])]),_:1},8,["open","confirm-loading"]),c.showAddButton?(d(),p(Pe,{key:D.value??"new","as-modal":"",open:I.value,id:D.value,"onUpdate:open":n[3]||(n[3]=t=>I.value=t),onSuccess:n[4]||(n[4]=t=>{var i;return(i=x.value)==null?void 0:i.fetch()})},null,8,["open","id"])):w("",!0)]),_:2},[c.accountingSync?{name:"extra",fn:o(()=>[a(Ve,{endpoint:"admin/customers-omde/accounting-sync",onDone:n[0]||(n[0]=t=>{var i;return(i=x.value)==null?void 0:i.fetch()})})]),key:"0"}:void 0]),1032,["title"])])}}}),ht=Ae(dt,[["__scopeId","data-v-287c42bd"]]);export{Xe as O,ht as a,Ct as b}; diff --git a/apps/admin-panel/dist/assets/OmdeList-CtPAuZzk.css b/apps/admin-panel/dist/assets/OmdeList-CtPAuZzk.css deleted file mode 100644 index 7fc7648..0000000 --- a/apps/admin-panel/dist/assets/OmdeList-CtPAuZzk.css +++ /dev/null @@ -1 +0,0 @@ -.flex-col[data-v-c98a3ed6]{flex-direction:column}.flex-1[data-v-c98a3ed6]{flex:1}.mr-3[data-v-c98a3ed6]{margin-left:.75rem} diff --git a/apps/admin-panel/dist/assets/OmdeList-CzOQlZG1.js b/apps/admin-panel/dist/assets/OmdeList-CzOQlZG1.js new file mode 100644 index 0000000..9876256 --- /dev/null +++ b/apps/admin-panel/dist/assets/OmdeList-CzOQlZG1.js @@ -0,0 +1 @@ +import{b as i,O as r,a as e}from"./OmdeCustomerList-BnaQmi8j.js";import{d as p,a as s,h as t,o as a}from"./index-CpVArufm.js";import"./index-DjZc5EYL.js";import"./model-mwiDYd1J.js";import"./filters-CoNJlguG.js";import"./SettingOutlined-E4OknxY2.js";import"./ListPageHeader.vue_vue_type_script_setup_true_lang-YlEXklTr.js";import"./AccountingSyncButton.vue_vue_type_script_setup_true_lang-wE6MaQCK.js";import"./bulkCustomer.vue_vue_type_script_setup_true_lang-Bh7ptZgl.js";import"./select--BgT6D7O.js";import"./BaseFormModal.vue_vue_type_style_index_0_lang-B4iVMhZt.js";import"./ImageUploadInput.vue_vue_type_script_setup_true_lang-B9gVJPft.js";import"./CityTreeSelect.vue_vue_type_script_setup_true_lang-BtBj3fof.js";import"./DateInput-0_1fMgrR.js";import"./UserOutlined-DeX82IP7.js";import"./ShopOutlined-D8LgPxHa.js";import"./EnvironmentOutlined-BZFp8i4M.js";import"./PercentageOutlined-IS1MVcbY.js";import"./SafetyCertificateOutlined-mD-ddSP4.js";import"./UnorderedListOutlined-CLUl5bxX.js";const j=p({__name:"OmdeList",setup(n){const o=r.omde.title,m=i("omde");return(l,c)=>(a(),s(e,{title:t(o),model:t(m),"accounting-sync":""},null,8,["title","model"]))}});export{j as default}; diff --git a/apps/admin-panel/dist/assets/OmdeList-D3y3JuDv.js b/apps/admin-panel/dist/assets/OmdeList-D3y3JuDv.js deleted file mode 100644 index 0fe3ea9..0000000 --- a/apps/admin-panel/dist/assets/OmdeList-D3y3JuDv.js +++ /dev/null @@ -1 +0,0 @@ -import{u as V,d as Y,b as c,c as a,w as t,r as _,o as l,h as Z,f as i,t as n,H as ee,i as p,p as b,a as k,F as U,e as F,m as T,y as j,J as h,_ as te}from"./index-CJij4X3l.js";import{a as oe,b as m,X as ae}from"./model-tqsMDjkK.js";import{_ as R}from"./TooltipBtn.vue_vue_type_script_setup_true_lang-xFR71kab.js";import{j as se}from"./filters-BPYO-DKN.js";import"./SettingOutlined-BJxMXy1I.js";import"./icons-BplZzYUR.js";import"./UnorderedListOutlined-CHqEItu3.js";import"./PercentageOutlined-CtwjLYTJ.js";import"./UserAddOutlined-Dac4nUC8.js";import"./CreditCardOutlined-Cz1giwnr.js";import"./AppstoreOutlined-DvD8zs_r.js";import"./TeamOutlined-Bdydtt7N.js";import"./UserOutlined-yq90mQcC.js";import"./CameraOutlined-BcxYWwtK.js";import"./index-CKg-8s_Z.js";function le(){const g=V();Object.keys(g.cityFilters).length<1&&g.getCities();const r=new oe("admin/orders/wholesale/list","لیست سفارش های عمده");return r.add(new m("id","شماره").filterNumber()),r.add(new m("customer.name","مشتری").filterKey("customer.fullName").filterText()),r.add(new m("customer.mobile","موبایل").filterText().hidden().noSort()),r.add(new m("input","جمع کل سفارش").filterKey("totalGoldWeightGrams").filterText()),r.add(new m("discount","جمع کل تخفیف (درصد)").filterText()),r.add(new m("customer.city_id","شهر").hidden().renderSlot("city")),r.add(new m("items","تعداد آیتم ها").renderSlot("items_len").noSort()),r.add(new m("caj","تاریخ ثبت").filterKey("createdAt").filterDate().noSort()),r.add(new m("uaj","تاریخ ویرایش").hidden().filterKey("updatedAt").filterDate().noSort()),g.roles&&g.roles.includes("order.omde.state")&&r.add(new m("sts","وضعیت").renderSlot("sts_str").noSort().filterKey("status").filterSelect({0:"معلق",1:"ثبت سفارش",2:"تایید مدیر سیستم",3:"در حال تامین",4:"در حال آماده سازی ",5:"تحویل مسئول فروش",6:"تحویل مشتری "})),r.add(new m("confirmed","وضعیت تایید مشتری").renderSlot("confirmed_str").noSort().filterSelect({1:"تایید شده",2:"در انتظار تایید"})),r.add(new m("opt","عملیات").noSort().renderSlot("opt")),r}const ne={id:"page-user-list"},re={key:0},ie={key:1},de={class:"flex"},ue={key:0},ce=["onClick"],_e={key:1},me={class:"flex flex-col"},fe={key:0},pe={class:"flex"},ve={class:"flex-1"},ye={key:1,class:"flex items-center"},ke={key:2},we={key:0},be=Y({__name:"OmdeList",setup(g){const r=V(),S=s=>!!r.hasPermission(s),X=le(),x=T(null),d=T(void 0),$=T(!1),w=T(!1),I=s=>s?se(s):"";function z(s){return r.cityFilters[s]??"-"}function A(s){return s.proceed?"green":"gray"}async function O(s){const{data:o}=await j.get(`admin/orders/${s}`);return o}async function G(s){d.value=await O(s.id),$.value=!0}async function M(s){d.value=await O(s.id),w.value=!0}async function P(s){var o,u;try{await j.post("order-sts/edit",{orderId:(o=d.value)==null?void 0:o.id,status:s.status,note:s.note}),w.value=!1,h.info("ویرایش موفق آمیز"),(u=x.value)==null||u.fetch()}catch{h.error("خطا در ویرایش")}}async function q(s){var o,u,f,N;try{await j.post("order-sts/edit",{orderId:(o=d.value)==null?void 0:o.id,status:s.status,remove:!0}),w.value=!1,h.info("ویرایش موفق آمیز"),(u=x.value)==null||u.fetch()}catch(C){h.error(((N=(f=C==null?void 0:C.response)==null?void 0:f.data)==null?void 0:N.message)??"خطا در ویرایش")}}function E(s){j.post("delete-order",{id:s.id}).then(()=>{var o;h.info("سفارش با موفقیت حذف گردید"),(o=x.value)==null||o.fetch()}).catch(o=>{var u,f;console.log(o),h.error(((f=(u=o==null?void 0:o.response)==null?void 0:u.data)==null?void 0:f.message)??"خطا در حذف")})}return(s,o)=>{const u=_("a-tag"),f=_("a-button"),N=_("a-popconfirm"),C=_("a-input"),H=_("a-timeline-item"),J=_("a-timeline"),B=_("a-modal"),v=_("a-descriptions-item"),D=_("a-descriptions"),W=_("a-divider"),K=_("a-card"),Q=_("a-empty");return l(),c("div",ne,[a(K,{title:"لیست سفارش های عمده",class:"page-card"},{default:t(()=>[a(ae,{ref_key:"tbl",ref:x,model:Z(X),"mobile-cards":""},{city:t(({text:e})=>[e?(l(),c("div",re,n(z(e)),1)):(l(),c("div",ie,"-"))]),opt:t(({record:e})=>[b("div",de,[S("order.omde.view")?(l(),k(R,{key:0,"icon-class":"w-5 h-5 text-primary",class:"mr-3",icon:"ListIcon",title:"مشاهده سفارش",onClick:y=>G(e)},null,8,["onClick"])):p("",!0),S("order.omde.remove")?(l(),k(R,{key:1,"icon-class":"w-5 h-5 text-danger",class:"mr-3",icon:"TrashIcon",title:"حذف","pop-title":"آیا مطمئن به حدف رکورد مورد نظر هستید؟",onClick:y=>E(e)},null,8,["onClick"])):p("",!0)])]),items_len:t(({text:e})=>[e?(l(),c("div",ue,n(e.length),1)):p("",!0)]),sts_str:t(({record:e})=>[S("order.omde.state")?(l(),c("a",{key:0,href:"",onClick:ee(y=>M(e),["prevent"])},n(e.sts_str),9,ce)):(l(),c("span",_e,n(e.sts_str),1))]),confirmed_str:t(({record:e})=>[i(n(e.confirmed_str),1)]),_:1},8,["model"]),a(B,{open:w.value,"onUpdate:open":o[1]||(o[1]=e=>w.value=e),title:"وضعیت سفارش","wrap-class-name":"detail-modal"},{footer:t(()=>[a(f,{onClick:o[0]||(o[0]=e=>w.value=!1)},{default:t(()=>[...o[7]||(o[7]=[i("باشه",-1)])]),_:1})]),default:t(()=>[d.value?(l(),k(J,{key:0},{default:t(()=>[(l(!0),c(U,null,F(d.value.activity,(e,y)=>(l(),k(H,{key:y,color:A(e)},{default:t(()=>[b("div",me,[b("div",null,n(e.title),1),e.proceed?(l(),c("div",fe,[b("div",pe,[b("div",ve,[a(u,null,{default:t(()=>[i(n(I(e.uaj)),1)]),_:2},1024)]),y>0&&S("order.omde.state.remove")?(l(),k(N,{key:0,"ok-text":"بله","cancel-text":"بی خیال",onConfirm:L=>q(e)},{title:t(()=>[...o[4]||(o[4]=[b("p",null,"آیا مطمئن به حذف وضعیت مورد نظر هستید ؟",-1)])]),default:t(()=>[a(f,{size:"small",danger:""},{default:t(()=>[...o[5]||(o[5]=[i("حذف وضعیت",-1)])]),_:1})]),_:1},8,["onConfirm"])):p("",!0)])])):p("",!0),!e.proceed&&S("order.omde.state.submit")?(l(),c("div",ye,[a(C,{value:e.note,"onUpdate:value":L=>e.note=L,placeholder:"یادداشت"},null,8,["value","onUpdate:value"]),a(f,{type:"text",size:"small",onClick:L=>P(e)},{default:t(()=>[...o[6]||(o[6]=[i("ثبت وضعیت",-1)])]),_:1},8,["onClick"])])):p("",!0),e.proceed?(l(),c("div",ke,n(e.note),1)):p("",!0)])]),_:2},1032,["color"]))),128))]),_:1})):p("",!0)]),_:1},8,["open"]),a(B,{open:$.value,"onUpdate:open":o[3]||(o[3]=e=>$.value=e),title:"مشاهده سفارش",width:"80%","wrap-class-name":"detail-modal"},{footer:t(()=>[a(f,{onClick:o[2]||(o[2]=e=>$.value=!1)},{default:t(()=>[...o[8]||(o[8]=[i("باشه",-1)])]),_:1})]),default:t(()=>[d.value?(l(),c("div",we,[a(D,null,{default:t(()=>[a(v,{label:"مشتری"},{default:t(()=>[i(n(d.value.customer.fname)+" "+n(d.value.customer.lname),1)]),_:1}),a(v,{label:"تلفن همراه"},{default:t(()=>[i(n(d.value.customer.phone),1)]),_:1}),a(v,{label:"تاریخ ثبت"},{default:t(()=>[i(n(I(d.value.caj)),1)]),_:1}),a(v,{label:"وضعیت"},{default:t(()=>[i(n(d.value.sts_str),1)]),_:1})]),_:1}),a(K,{title:"آیتم های سفارش"},{default:t(()=>[(l(!0),c(U,null,F(d.value.items,(e,y)=>(l(),c("div",{key:y},[a(D,null,{default:t(()=>[a(v,{label:"نام محصول"},{default:t(()=>[a(u,{color:"blue"},{default:t(()=>[i(n(e.title),1)]),_:2},1024)]),_:2},1024),a(v,{label:"عنوان تنوع"},{default:t(()=>[i(n(e.variant_title),1)]),_:2},1024),a(v,{label:"وزن نهایی"},{default:t(()=>[a(u,{color:"red"},{default:t(()=>[i(n(e.grams),1)]),_:2},1024)]),_:2},1024),a(v,{label:"تعداد"},{default:t(()=>[a(u,{color:"orange"},{default:t(()=>[i(n(e.qty),1)]),_:2},1024)]),_:2},1024),Number(e.flatRialCharge)>0?(l(),k(v,{key:0,label:"اجرت ریالی"},{default:t(()=>[a(u,null,{default:t(()=>[i(n(Number(e.flatRialCharge).toLocaleString("fa-IR"))+" ریال",1)]),_:2},1024)]),_:2},1024)):p("",!0)]),_:2},1024),y!!u.hasPermission(l),M=me(),C=$(null),d=$(void 0),j=$(!1),S=$(!1),R=l=>l?fe(l):"",A=l=>l==null?"-":String(Number(Number(l).toFixed(4)));function P(l){return u.cityFilters[l]??"-"}function W(l){return l.proceed?"green":"gray"}async function I(l){const{data:t}=await N.get(`admin/orders/${l}`);return t}async function E(l){d.value=await I(l.id),x.value=!1,j.value=!0}const x=$(!1),K=$(null);function q(l,t){var n,c;return((c=(n=l==null?void 0:l.response)==null?void 0:n.data)==null?void 0:c.message)??t}async function H(l){var t;try{K.value=l.id;const{data:n}=await N.post("admin/orders/item/edit",{id:l.id,rash_weight:l.rash,qty:l.qty,percent:l.percent});d.value=n,b.info("ردیف سفارش ویرایش شد؛ جمع و بدهی مشتری به‌روز شد"),(t=C.value)==null||t.fetch()}catch(n){b.error(q(n,"خطا در ویرایش ردیف")),d.value&&(d.value=await I(d.value.id))}finally{K.value=null}}async function J(l){var t;try{const{data:n}=await N.delete(`admin/orders/item/${l.id}`);d.value=n,b.info("ردیف از سفارش حذف شد؛ جمع و بدهی مشتری به‌روز شد"),(t=C.value)==null||t.fetch()}catch(n){b.error(q(n,"خطا در حذف ردیف"))}}async function Y(l){d.value=await I(l.id),S.value=!0}async function Q(l){var t,n;try{await N.post("order-sts/edit",{orderId:(t=d.value)==null?void 0:t.id,status:l.status,note:l.note}),S.value=!1,b.info("ویرایش موفق آمیز"),(n=C.value)==null||n.fetch()}catch{b.error("خطا در ویرایش")}}async function Z(l){var t,n,c,U;try{await N.post("order-sts/edit",{orderId:(t=d.value)==null?void 0:t.id,status:l.status,remove:!0}),S.value=!1,b.info("ویرایش موفق آمیز"),(n=C.value)==null||n.fetch()}catch(T){b.error(((U=(c=T==null?void 0:T.response)==null?void 0:c.data)==null?void 0:U.message)??"خطا در ویرایش")}}function ee(l){N.post("delete-order",{id:l.id}).then(()=>{var t;b.info("سفارش با موفقیت حذف گردید"),(t=C.value)==null||t.fetch()}).catch(t=>{var n,c;console.log(t),b.error(((c=(n=t==null?void 0:t.response)==null?void 0:n.data)==null?void 0:c.message)??"خطا در حذف")})}return(l,t)=>{const n=_("a-tag"),c=_("a-button"),U=_("a-popconfirm"),T=_("a-input"),te=_("a-timeline-item"),ae=_("a-timeline"),z=_("a-modal"),v=_("a-descriptions-item"),B=_("a-descriptions"),O=_("a-input-number"),le=_("a-divider"),D=_("a-card"),oe=_("a-empty");return r(),f("div",_e,[o(D,{title:"لیست سفارش های عمده",class:"page-card"},{default:a(()=>[o(ce,{ref_key:"tbl",ref:C,model:se(M),"mobile-cards":""},{city:a(({text:e})=>[e?(r(),f("div",pe,i(P(e)),1)):(r(),f("div",ve,"-"))]),opt:a(({record:e})=>[k("div",ye,[h("order.omde.view")?(r(),w(V,{key:0,"icon-class":"w-5 h-5 text-primary",class:"mr-3",icon:"ListIcon",title:"مشاهده سفارش",onClick:g=>E(e)},null,8,["onClick"])):p("",!0),h("order.omde.remove")?(r(),w(V,{key:1,"icon-class":"w-5 h-5 text-danger",class:"mr-3",icon:"TrashIcon",title:"حذف","pop-title":"آیا مطمئن به حدف رکورد مورد نظر هستید؟",onClick:g=>ee(e)},null,8,["onClick"])):p("",!0)])]),items_len:a(({text:e})=>[e?(r(),f("div",be,i(e.length),1)):p("",!0)]),sts_str:a(({record:e})=>[h("order.omde.state")?(r(),f("a",{key:0,href:"",onClick:re(g=>Y(e),["prevent"])},i(e.sts_str),9,ke)):(r(),f("span",we,i(e.sts_str),1))]),confirmed_str:a(({record:e})=>[s(i(e.confirmed_str),1)]),_:1},8,["model"]),o(z,{open:S.value,"onUpdate:open":t[1]||(t[1]=e=>S.value=e),title:"وضعیت سفارش","wrap-class-name":"detail-modal"},{footer:a(()=>[o(c,{onClick:t[0]||(t[0]=e=>S.value=!1)},{default:a(()=>[...t[8]||(t[8]=[s("باشه",-1)])]),_:1})]),default:a(()=>[d.value?(r(),w(ae,{key:0},{default:a(()=>[(r(!0),f(F,null,G(d.value.activity,(e,g)=>(r(),w(te,{key:g,color:W(e)},{default:a(()=>[k("div",ge,[k("div",null,i(e.title),1),e.proceed?(r(),f("div",he,[k("div",Ce,[k("div",Se,[o(n,null,{default:a(()=>[s(i(R(e.uaj)),1)]),_:2},1024)]),g>0&&h("order.omde.state.remove")?(r(),w(U,{key:0,"ok-text":"بله","cancel-text":"بی خیال",onConfirm:y=>Z(e)},{title:a(()=>[...t[5]||(t[5]=[k("p",null,"آیا مطمئن به حذف وضعیت مورد نظر هستید ؟",-1)])]),default:a(()=>[o(c,{size:"small",danger:""},{default:a(()=>[...t[6]||(t[6]=[s("حذف وضعیت",-1)])]),_:1})]),_:1},8,["onConfirm"])):p("",!0)])])):p("",!0),!e.proceed&&h("order.omde.state.submit")?(r(),f("div",xe,[o(T,{value:e.note,"onUpdate:value":y=>e.note=y,placeholder:"یادداشت"},null,8,["value","onUpdate:value"]),o(c,{type:"text",size:"small",onClick:y=>Q(e)},{default:a(()=>[...t[7]||(t[7]=[s("ثبت وضعیت",-1)])]),_:1},8,["onClick"])])):p("",!0),e.proceed?(r(),f("div",$e,i(e.note),1)):p("",!0)])]),_:2},1032,["color"]))),128))]),_:1})):p("",!0)]),_:1},8,["open"]),o(z,{open:j.value,"onUpdate:open":t[4]||(t[4]=e=>j.value=e),title:"مشاهده سفارش",width:"80%","wrap-class-name":"detail-modal"},{footer:a(()=>[o(c,{onClick:t[3]||(t[3]=e=>j.value=!1)},{default:a(()=>[...t[14]||(t[14]=[s("باشه",-1)])]),_:1})]),default:a(()=>[d.value?(r(),f("div",Ne,[o(B,null,{default:a(()=>[o(v,{label:"مشتری"},{default:a(()=>[s(i(d.value.customer.fname)+" "+i(d.value.customer.lname),1)]),_:1}),o(v,{label:"تلفن همراه"},{default:a(()=>[s(i(d.value.customer.phone),1)]),_:1}),o(v,{label:"تاریخ ثبت"},{default:a(()=>[s(i(R(d.value.caj)),1)]),_:1}),o(v,{label:"وضعیت"},{default:a(()=>[s(i(d.value.sts_str),1)]),_:1})]),_:1}),o(D,{title:"آیتم های سفارش"},ie({default:a(()=>[(r(!0),f(F,null,G(d.value.items,(e,g)=>(r(),f("div",{key:e.id??g},[x.value&&h("order.omde.view.edit")?(r(),f("div",Le,[o(n,{color:"blue"},{default:a(()=>[s(i(e.title)+" — "+i(e.variant_title),1)]),_:2},1024),k("label",null,[t[9]||(t[9]=s("وزن خام (گرم)",-1)),o(O,{value:e.rash,"onUpdate:value":y=>e.rash=y,min:.001,step:.01},null,8,["value","onUpdate:value"])]),k("label",null,[t[10]||(t[10]=s("تعداد",-1)),o(O,{value:e.qty,"onUpdate:value":y=>e.qty=y,min:1,precision:0},null,8,["value","onUpdate:value"])]),k("label",null,[t[11]||(t[11]=s("درصد اجرت",-1)),o(O,{value:e.percent,"onUpdate:value":y=>e.percent=y,step:.1},null,8,["value","onUpdate:value"])]),o(c,{type:"primary",size:"small",loading:K.value===e.id,onClick:y=>H(e)},{default:a(()=>[...t[12]||(t[12]=[s("ذخیره",-1)])]),_:1},8,["loading","onClick"]),o(U,{title:"این ردیف از سفارش حذف شود؟","ok-text":"بله","cancel-text":"بی خیال",onConfirm:y=>J(e)},{default:a(()=>[o(c,{danger:"",size:"small"},{default:a(()=>[...t[13]||(t[13]=[s("حذف ردیف",-1)])]),_:1})]),_:1},8,["onConfirm"])])):p("",!0),o(B,null,{default:a(()=>[o(v,{label:"نام محصول"},{default:a(()=>[o(n,{color:"blue"},{default:a(()=>[s(i(e.title),1)]),_:2},1024)]),_:2},1024),o(v,{label:"عنوان تنوع"},{default:a(()=>[s(i(e.variant_title),1)]),_:2},1024),o(v,{label:"وزن نهایی (هر عدد)"},{default:a(()=>[o(n,{color:"red"},{default:a(()=>[s(i(e.grams),1)]),_:2},1024)]),_:2},1024),o(v,{label:"تعداد"},{default:a(()=>[o(n,{color:"orange"},{default:a(()=>[s(i(e.qty),1)]),_:2},1024)]),_:2},1024),o(v,{label:"جمع وزن ردیف"},{default:a(()=>[o(n,{color:"red"},{default:a(()=>[s(i(A(e.total_grams))+" گرم",1)]),_:2},1024)]),_:2},1024),Number(e.flatRialCharge)>0?(r(),w(v,{key:0,label:"اجرت ریالی (هر عدد)"},{default:a(()=>[o(n,null,{default:a(()=>[s(i(Number(e.flatRialCharge).toLocaleString("fa-IR"))+" ریال",1)]),_:2},1024)]),_:2},1024)):p("",!0),Number(e.total_rial)>0?(r(),w(v,{key:1,label:"جمع اجرت ریالی ردیف"},{default:a(()=>[o(n,null,{default:a(()=>[s(i(Number(e.total_rial).toLocaleString("fa-IR"))+" ریال",1)]),_:2},1024)]),_:2},1024)):p("",!0)]),_:2},1024),g[o(c,{size:"small",type:x.value?"primary":"default",onClick:t[2]||(t[2]=e=>x.value=!x.value)},{default:a(()=>[s(i(x.value?"پایان ویرایش":"ویرایش ردیف‌ها"),1)]),_:1},8,["type"])]),key:"0"}:void 0]),1024)])):(r(),w(oe,{key:1}))]),_:1},8,["open"])]),_:1})])}}}),Ae=de(Ue,[["__scopeId","data-v-08769715"]]);export{Ae as default}; diff --git a/apps/admin-panel/dist/assets/OmdeList-Dlohchjn.css b/apps/admin-panel/dist/assets/OmdeList-Dlohchjn.css new file mode 100644 index 0000000..2f50262 --- /dev/null +++ b/apps/admin-panel/dist/assets/OmdeList-Dlohchjn.css @@ -0,0 +1 @@ +.flex-col[data-v-08769715]{flex-direction:column}.flex-1[data-v-08769715]{flex:1}.mr-3[data-v-08769715]{margin-left:.75rem}.line-edit[data-v-08769715]{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px;padding:10px 12px;margin-bottom:8px;border:1px dashed var(--ant-color-border, #d9d9d9);border-radius:8px}.line-edit label[data-v-08769715]{display:flex;flex-direction:column;gap:4px;font-size:12px} diff --git a/apps/admin-panel/dist/assets/OmdeList-aVLywWtp.js b/apps/admin-panel/dist/assets/OmdeList-aVLywWtp.js deleted file mode 100644 index a752b6b..0000000 --- a/apps/admin-panel/dist/assets/OmdeList-aVLywWtp.js +++ /dev/null @@ -1 +0,0 @@ -import{b as i,O as r,a as e}from"./OmdeCustomerList-CVyvM4xg.js";import{d as p,a as s,h as t,o as a}from"./index-CJij4X3l.js";import"./index-CKg-8s_Z.js";import"./model-tqsMDjkK.js";import"./filters-BPYO-DKN.js";import"./SettingOutlined-BJxMXy1I.js";import"./ListPageHeader.vue_vue_type_script_setup_true_lang-D07Lc14a.js";import"./AccountingSyncButton.vue_vue_type_script_setup_true_lang-CVFVkjGK.js";import"./bulkCustomer.vue_vue_type_script_setup_true_lang-C_6AC_x3.js";import"./BaseFormModal.vue_vue_type_style_index_0_lang-YLHOAWTN.js";import"./ImageUploadInput.vue_vue_type_script_setup_true_lang-vRgyyG7o.js";import"./CityTreeSelect.vue_vue_type_script_setup_true_lang-7y8zYJ_W.js";import"./DateInput-DgUF2he7.js";import"./UserOutlined-yq90mQcC.js";import"./ShopOutlined-B63CHExu.js";import"./EnvironmentOutlined-Cetl6vFW.js";import"./PercentageOutlined-CtwjLYTJ.js";import"./SafetyCertificateOutlined-Cr8bqGKo.js";import"./UnorderedListOutlined-CHqEItu3.js";const U=p({__name:"OmdeList",setup(n){const o=r.omde.title,m=i("omde");return(l,c)=>(a(),s(e,{title:t(o),model:t(m),"accounting-sync":""},null,8,["title","model"]))}});export{U as default}; diff --git a/apps/admin-panel/dist/assets/OmdeNonVerifiedList-CRSC0a38.js b/apps/admin-panel/dist/assets/OmdeNonVerifiedList-CRSC0a38.js deleted file mode 100644 index 8cfefae..0000000 --- a/apps/admin-panel/dist/assets/OmdeNonVerifiedList-CRSC0a38.js +++ /dev/null @@ -1 +0,0 @@ -import{b as r,O as e,a as m}from"./OmdeCustomerList-CVyvM4xg.js";import{d as p,a as n,h as t,o as s}from"./index-CJij4X3l.js";import"./index-CKg-8s_Z.js";import"./model-tqsMDjkK.js";import"./filters-BPYO-DKN.js";import"./SettingOutlined-BJxMXy1I.js";import"./ListPageHeader.vue_vue_type_script_setup_true_lang-D07Lc14a.js";import"./AccountingSyncButton.vue_vue_type_script_setup_true_lang-CVFVkjGK.js";import"./bulkCustomer.vue_vue_type_script_setup_true_lang-C_6AC_x3.js";import"./BaseFormModal.vue_vue_type_style_index_0_lang-YLHOAWTN.js";import"./ImageUploadInput.vue_vue_type_script_setup_true_lang-vRgyyG7o.js";import"./CityTreeSelect.vue_vue_type_script_setup_true_lang-7y8zYJ_W.js";import"./DateInput-DgUF2he7.js";import"./UserOutlined-yq90mQcC.js";import"./ShopOutlined-B63CHExu.js";import"./EnvironmentOutlined-Cetl6vFW.js";import"./PercentageOutlined-CtwjLYTJ.js";import"./SafetyCertificateOutlined-Cr8bqGKo.js";import"./UnorderedListOutlined-CHqEItu3.js";const U=p({__name:"OmdeNonVerifiedList",setup(a){const o=e.nonVerified.title,i=r("nonVerified");return(d,l)=>(s(),n(m,{title:t(o),model:t(i)},null,8,["title","model"]))}});export{U as default}; diff --git a/apps/admin-panel/dist/assets/OmdeNonVerifiedList-Dmyix5RU.js b/apps/admin-panel/dist/assets/OmdeNonVerifiedList-Dmyix5RU.js new file mode 100644 index 0000000..0ad61de --- /dev/null +++ b/apps/admin-panel/dist/assets/OmdeNonVerifiedList-Dmyix5RU.js @@ -0,0 +1 @@ +import{b as r,O as e,a as m}from"./OmdeCustomerList-BnaQmi8j.js";import{d as p,a as n,h as t,o as s}from"./index-CpVArufm.js";import"./index-DjZc5EYL.js";import"./model-mwiDYd1J.js";import"./filters-CoNJlguG.js";import"./SettingOutlined-E4OknxY2.js";import"./ListPageHeader.vue_vue_type_script_setup_true_lang-YlEXklTr.js";import"./AccountingSyncButton.vue_vue_type_script_setup_true_lang-wE6MaQCK.js";import"./bulkCustomer.vue_vue_type_script_setup_true_lang-Bh7ptZgl.js";import"./select--BgT6D7O.js";import"./BaseFormModal.vue_vue_type_style_index_0_lang-B4iVMhZt.js";import"./ImageUploadInput.vue_vue_type_script_setup_true_lang-B9gVJPft.js";import"./CityTreeSelect.vue_vue_type_script_setup_true_lang-BtBj3fof.js";import"./DateInput-0_1fMgrR.js";import"./UserOutlined-DeX82IP7.js";import"./ShopOutlined-D8LgPxHa.js";import"./EnvironmentOutlined-BZFp8i4M.js";import"./PercentageOutlined-IS1MVcbY.js";import"./SafetyCertificateOutlined-mD-ddSP4.js";import"./UnorderedListOutlined-CLUl5bxX.js";const g=p({__name:"OmdeNonVerifiedList",setup(a){const o=e.nonVerified.title,i=r("nonVerified");return(d,l)=>(s(),n(m,{title:t(o),model:t(i)},null,8,["title","model"]))}});export{g as default}; diff --git a/apps/admin-panel/dist/assets/PercentageOutlined-CtwjLYTJ.js b/apps/admin-panel/dist/assets/PercentageOutlined-IS1MVcbY.js similarity index 94% rename from apps/admin-panel/dist/assets/PercentageOutlined-CtwjLYTJ.js rename to apps/admin-panel/dist/assets/PercentageOutlined-IS1MVcbY.js index 85f31ff..9c2ff7f 100644 --- a/apps/admin-panel/dist/assets/PercentageOutlined-CtwjLYTJ.js +++ b/apps/admin-panel/dist/assets/PercentageOutlined-IS1MVcbY.js @@ -1 +1 @@ -import{c as l,I as u}from"./index-CJij4X3l.js";var o={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M855.7 210.8l-42.4-42.4a8.03 8.03 0 00-11.3 0L168.3 801.9a8.03 8.03 0 000 11.3l42.4 42.4c3.1 3.1 8.2 3.1 11.3 0L855.6 222c3.2-3 3.2-8.1.1-11.2zM304 448c79.4 0 144-64.6 144-144s-64.6-144-144-144-144 64.6-144 144 64.6 144 144 144zm0-216c39.7 0 72 32.3 72 72s-32.3 72-72 72-72-32.3-72-72 32.3-72 72-72zm416 344c-79.4 0-144 64.6-144 144s64.6 144 144 144 144-64.6 144-144-64.6-144-144-144zm0 216c-39.7 0-72-32.3-72-72s32.3-72 72-72 72 32.3 72 72-32.3 72-72 72z"}}]},name:"percentage",theme:"outlined"};function c(r){for(var e=1;e!!f.hasPermission(t),n=c(U),k=c(""),u=c([]),V=c(!0),I=c([]),s=ee({}),a=D(()=>n.value===P),F=D(()=>{var e;let t=I.value;return p("user.permission.create")||(t=t.filter(i=>String(i.id)!==P)),((e=x.user)==null?void 0:e.ut)!==N&&(t=t.filter(i=>i.id!==N)),t});function A(t){return t.filter(e=>!T.has(e.key)).map(e=>e.children?{...e,children:A(e.children)}:e)}const L=D(()=>{var e;const t=((e=x.user)==null?void 0:e.ut)===N?B:B.filter(i=>i.key!=="custom");return f.isSuperAdmin?t:A(t)}),h=c([]);function w(t){if(f.isSuperAdmin){u.value=t,h.value=[];return}u.value=t.filter(e=>!T.has(e)),h.value=t.filter(e=>T.has(e))}async function C(){try{const{data:t}=await v.get("const/__list__ut");I.value=t}catch(t){console.log(t)}}async function g(t){if(!t){w([]);return}if(t===P){w([]);return}try{const{data:e}=await v.get(`roles/${t}`);w(e)}catch{S.error("خطا در دریافت اطلاعات")}}async function M(){var t,e;if(Object.keys(s).forEach(i=>delete s[i]),!n.value){s.ut="لطفاسطح دسترسی را انتخاب کنید";return}if(a.value&&!k.value){s.user="لطفا نام سطح دسترسی را وارد کنید";return}try{let i=n.value;if(a.value){const{data:_}=await v.post("const",{key:"__list__ut",val:k.value});i=String(_.id)}await v.post("roles/create",{ut:i,roles:[...new Set([...u.value,...h.value])]}),await C(),a.value&&(n.value=i,k.value="",await g(i)),S.success("عملیات با موفقیت انجام شد")}catch(i){S.error(((e=(t=i==null?void 0:i.response)==null?void 0:t.data)==null?void 0:e.message)??"خطا در ثبت اطلاعات")}}return W(async()=>{await C(),n.value=U,await g(U)}),(t,e)=>{const i=o("a-select-option"),_=o("a-select"),b=o("a-form-item"),Y=o("a-input"),H=o("a-tree"),R=o("a-button"),j=o("a-card"),z=o("a-form");return d(),m(z,{layout:"vertical",onSubmit:$(M,["prevent"])},{default:r(()=>[y(j,{id:"rid",title:"دسترسی ها",class:"page-card"},{default:r(()=>[q("div",le,[y(b,{label:"سطح کاربر","validate-status":s.ut?"error":"",help:s.ut},{default:r(()=>[y(_,{value:n.value,"onUpdate:value":e[0]||(e[0]=l=>n.value=l),"allow-clear":"",onChange:g},{default:r(()=>[(d(!0),G(Z,null,Q(F.value,l=>(d(),m(i,{key:l.id,value:String(l.id)},{default:r(()=>[E(X(l.title),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1},8,["validate-status","help"]),a.value&&p("user.permission.create")?(d(),m(b,{key:0,label:"نام سطح دسترسی","validate-status":s.user?"error":"",help:s.user},{default:r(()=>[y(Y,{value:k.value,"onUpdate:value":e[1]||(e[1]=l=>k.value=l),"allow-clear":""},null,8,["value"])]),_:1},8,["validate-status","help"])):O("",!0),y(b,{label:"نقش ها",class:"tree-item"},{default:r(()=>[y(H,{"checked-keys":u.value,"onUpdate:checkedKeys":e[2]||(e[2]=l=>u.value=l),"check-strictly":!1,checkable:"",style:{width:"100%"},"tree-data":L.value,"field-names":{title:"title",key:"key",children:"children"},"auto-expand-parent":V.value},null,8,["checked-keys","tree-data","auto-expand-parent"])]),_:1})]),!a.value&&p("user.permission.edit")?(d(),m(R,{key:0,type:"primary",class:"form-submit","html-type":"submit"},{default:r(()=>[...e[3]||(e[3]=[E(" ثبت تغییرات ",-1)])]),_:1})):O("",!0),a.value&&p("user.permission.create")?(d(),m(R,{key:1,type:"primary",class:"form-submit","html-type":"submit"},{default:r(()=>[...e[4]||(e[4]=[E(" افزودن ",-1)])]),_:1})):O("",!0)]),_:1})]),_:1})}}}),ae=te(re,[["__scopeId","data-v-e837c6b0"]]);export{ae as default}; +import{d as J,u as K,x as W,a as m,w as r,H as $,m as c,y as v,J as S,r as o,o as d,c as y,p as q,b as G,e as Q,f as E,t as X,F as Z,i as O,z as ee,s as D,_ as te}from"./index-CpVArufm.js";import{u as ie}from"./auth-taL2eAff.js";const B=[{title:"پیشخوان",key:"dashboard.view"},{title:"اشخاص",key:"persons",children:[{title:"اضافه کردن شخص",key:"persons.create",children:[{title:"افزودن کارشناس فروش",key:"persons.create.seller"},{title:"افزودن مشتری عمده",key:"persons.create.client"},{title:"افزودن مشتری تک",key:"persons.create.single"}]},{title:"لیست کارشناسان فروش",key:"persons.list.sellers",children:[{title:"ویرایش اطلاعات کارشناس فروش",key:"persons.list.sellers.edit"},{title:"مشاهده سفارشات کارشناس فروش",key:"persons.list.sellers.view.orders"},{title:"مشاهده اسناد مالی کارشناس فروش",key:"persons.list.sellers.view.documents"},{title:"توقف سفارش کارشناس فروش",key:"persons.list.sellers.unable.order"},{title:"فعال سازی سفارش کارشناس فروش",key:"persons.list.sellers.able.order"},{title:"فعال سازی حساب کاربری کارشناس فروش",key:"persons.list.sellers.able"},{title:"غیر فعال سازی حساب کاربری کارشناس فروش",key:"persons.list.sellers.unable"}]},{title:"لیست مشتریان عمده",key:"persons.list.client.omde",children:[{title:"مشاهده اطلاعات مشتریان عمده",key:"persons.list.client.omde.view"},{title:"ویرایش اطلاعات مشتری عمده",key:"persons.list.client.omde.edit"},{title:"مشاهده سفارشات مشتری عمده",key:"persons.list.client.omde.view.orders"},{title:"مشاهده اسناد مالی مشتری عمده",key:"persons.list.client.omde.view.documents"},{title:"توقف سفارش مشتری عمده",key:"persons.list.client.omde.unable.order"},{title:"فعال سازی سفارش مشتری عمده",key:"persons.list.client.omde.able.order"},{title:"فعال سازی مشتری عمده",key:"persons.list.client.omde.able"},{title:"غیر فعال سازی مشتری عمده",key:"persons.list.client.omde.unable"}]},{title:"لیست مشتریان تک",key:"persons.list.client.single",children:[{title:"مشاهده اطلاعات مشتریان تک",key:"persons.list.client.single.view"},{title:"ویرایش اطلاعات مشتری تک",key:"persons.list.client.single.edit"},{title:"مشاهده اطلاعات مشتری تک",key:"persons.list.client.single.view"}]}]},{title:"شعب",key:"branch",children:[{title:"افزودن شعب",key:"branch.create"},{title:" لیست شعب",key:"branch.list"}]},{title:"کارگاه",key:"workshop",children:[{title:"افزودن کارگاه",key:"workshop.create"},{title:" لیست کارگاه ها",key:"workshop.list"}]},{title:"محصولات",key:"product",children:[{title:"افزودن محصول",key:"product.create"},{title:"لیست محصولات",key:"product.list",children:[{title:"مشاهده لیست محصولات",key:"product.list.view"},{title:"ویرایش اطلاعات محصول",key:"product.list.edit"},{title:"مشاهده اطلاعات جامع محصول",key:"product.list.view"},{title:"تنوع های محصول",key:"product.list.variants",children:[{title:"مشاهده تنوع های محصول",key:"product.list.variants.view"},{title:"ویرایش تنوع محصول",key:"product.list.variants.edit"},{title:"حذف تنوع محصول",key:"product.list.variants.remove"},{title:"افزودن تنوع محصول",key:"product.list.variants.add"}]},{title:"حذف محصول",key:"product.list.remove"},{title:"تغییر دسته ای",key:"product.list.group.edit"}]},{title:"تغییر درصد محصولات",key:"product.percent"}]},{title:"سفارشات",key:"order",children:[{title:"لیست سفارشات",key:"order.list",children:[{title:"مشاهده لیست سفارشات",key:"order.list.view"},{title:"وضعیت سفارش",key:"order.list.sts",children:[{title:"مشاهده وضعیت سفارش",key:"order.list.sts.view"},{title:"حذف وضعیت",key:"order.list.sts.remove"},{title:"ثبت وضعیت",key:"order.list.sts.submit"}]},{title:"مشاهده سفارش",key:"order.list.view"},{title:"ویرایش سفارش",key:"order.list.view.edit"},{title:"دریافت pdf",key:"order.list.pdf"}]},{title:"سفارشات عمده",key:"order.omde",children:[{title:"وضعیت سفارش",key:"order.omde.state",children:[{title:"مشاهده وضعیت سفارش",key:"order.omde.state.view"},{title:"ثبت وضعیت سفارش",key:"order.omde.state.submit"},{title:"حذف وضعیت سفارش",key:"order.omde.state.remove"}]},{title:"مشاهده سفارش",key:"order.omde.view"},{title:"ویرایش سفارش",key:"order.omde.view.edit"},{title:"حذف آیتم از سفارش",key:"order.omde.view.remove"},{title:"حذف سفارش",key:"order.omde.remove"},{title:"دریافت pdf سفارش",key:"order.omde.get"}]},{title:"سفارشات ساختنی",key:"order.makeOrder",children:[{title:"وضعیت سفارش",key:"order.makeOrder.state",children:[{title:"مشاهده وضعیت سفارش",key:"order.makeOrder.state.view"},{title:"ثبت وضعیت سفارش",key:"order.makeOrder.state.submit"},{title:"حذف وضعیت سفارش",key:"order.makeOrder.state.remove"}]},{title:"مشاهده سفارش",key:"order.makeOrder.view"},{title:"ویرایش سفارش",key:"order.makeOrder.view.edit"},{title:"حذف آیتم از سفارش",key:"order.makeOrder.view.remove"},{title:"حذف سفارش",key:"order.makeOrder.remove"},{title:"دریافت pdf سفارش",key:"order.makeOrder.get"}]},{title:"لیست تامین",key:"order.tamin",children:[{title:"مشاهده لیست تامین",key:"order.tamin.view"},{title:"وضعیت سفارش",key:"order.tamin.state",children:[{title:"مشاهده وضعیت سفارش",key:"order.tamin.state.view"},{title:"ثبت وضعیت سفارش",key:"order.tamin.state.submit"},{title:"حذف وضعیت سفارش",key:"order.tamin.state.remove"}]},{title:"مشاهده سفارش",key:"order.tamin.view"},{title:"ویرایش سفارش",key:"order.tamin.view.edit"}]},{title:"ثبت سفارش تک",key:"order.create"}]},{title:"مدیران",key:"user",children:[{title:"افزودن مدیر",key:"user.create"},{title:"لیست مدیران",key:"user.list",children:[{title:"مشاهده لیست مدیران",key:"user.list.view"},{title:"ویرایش مدیر",key:"user.list.edit"},{title:"حذف مدیر",key:"user.list.remove"},{title:"افزودن مدیر",key:"user.list.create"}]},{title:"دسترسی ها",key:"user.permission",children:[{title:"ویرایش دسترسی",key:"user.permission.edit"},{title:"افزودن دسترسی",key:"user.permission.create"}]}]},{title:"دسته بندی ها",key:"collection",children:[{title:"افزودن دسته بندی",key:"collection.create"},{title:" لیست دسته بندی ها",key:"collection.list",children:[{title:"مشاهده لیست دسته بندی ها",key:"collection.list.view"},{title:"ویرایش دسته",key:"collection.list.edit"},{title:"حذف دسته",key:"collection.list.remove"}]}]},{title:"اسناد مالی",key:"document",children:[{title:" لیست اسناد مالی",key:"document.list",children:[{title:"مشاهده لیست اسناد مالی",key:"document.list.view"},{title:"ویرایش سند مالی",key:"document.list.edit"},{title:"حذف سند مالی",key:"document.list.remove"},{title:"رد کردن سند مالی",key:"document.list.deny"},{title:"تأیید کردن سند مالی",key:"document.list.confirm"},{title:"دریافت pdf سند مالی",key:"document.list.get"}]},{title:"وارد کردن سند مالی مشتری",key:"document.create"}]},{title:"استثناعات تخفیف",key:"offersIgnore"},{title:"تخفیفات",key:"offers",children:[{title:" لیست تخفیفات",key:"offers.list",children:[{title:"مشاهده لیست تخفیفات",key:"offers.list.view"},{title:"ویرایش تخفیف عمده",key:"offers.list.edit"},{title:"ویرایش تخفیف تک",key:"offers.list.tak.edit"},{title:"حذف تخفیف عمده",key:"offers.list.remove"},{title:"حذف تخفیف تک",key:"offers.list.tak.remove"}]},{title:"تعریف تخفیف عمده",key:"offers.create"},{title:"تعریف تخفیف تک",key:"offers.create.tak"},{title:"تخفیف اتوماتیک",key:"offers.autopromotion"}]},{title:"فاکتور انتقال",key:"invoice",children:[{title:"افزودن فاکتور",key:"invoice.create"},{title:" لیست فاکتورها",key:"invoice.list"}]},{title:"گزارشات",key:"report",children:[{title:"گزارش تجمیعی سفارشات و اسناد مالی",key:"report.order.item"},{title:"گزارش محصولات",key:"report.product"}]},{title:"شهرها",key:"cities",children:[{title:"افزودن شهر",key:"cities.create"},{title:"لیست شهرها",key:"cities.list",children:[{title:"مشاهده لیست شهرها",key:"cities.list.view"},{title:"حذف شهر",key:"cities.list.remove"},{title:"مشاهده شهر",key:"cities.list.view"},{title:"ویرایش شهر",key:"cities.list.view.edit"}]}]},{title:"دیدگاه ها",key:"comment",children:[{title:"مشاهده لیست دیدگاه ها",key:"comment.view.all"},{title:"تغییر وضعیت دیدگاه",key:"comment.state"},{title:"مشاهده دیدگاه",key:"comment.view"},{title:"ویرایش دیدگاه",key:"comment.view.edit"},{title:"حذف دیدگاه",key:"comment.remove"}]},{title:"پیامک",key:"sms",children:[{title:"ارسال پیامک",key:"sms.create",children:[{title:"ارسال برای یک شماره تلفن",key:"sms.create.single"},{title:"ارسال برای همه کاربران",key:"sms.create.all"},{title:"ارسال برای کارشناسان فروش",key:"sms.create.reagent"},{title:"ارسال برای مشتریان عمده",key:"sms.create.omde"},{title:"ارسال برای چند شماره تلفن",key:"sms.create.multiple"}]},{title:"لیست پیامک های ارسال شده",key:"sms.list"}]},{title:"کیف پول",key:"wallet",children:[{title:"لیست کیف پول های شارژ شده",key:"wallet.list"},{title:"شارژ کیف پول",key:"wallet.charge"},{title:"تغییر درصد شارژ کیف پول",key:"wallet.percent"}]},{title:"نوتیفیکیشن",key:"notify",children:[{title:"ارسال نوتیفیکیشن",key:"notify.create",children:[{title:"ارسال برای کارشناسان فروش",key:"notify.create.multiple.reagent"},{title:"ارسال برای یک مشتری",key:"notify.create.single.customer"},{title:"ارسال برای مشتریان عمده",key:"notify.create.multiple.omde"},{title:"ارسال برای همه مشتریان",key:"notify.create.multiple.customer"},{title:"ارسال برای یک مدیر",key:"notify.create.single.admin"},{title:"ارسال برای همه مدیران",key:"notify.create.multiple.admin"}]},{title:"لیست نوتیفیکیشن های دریافتی",key:"notify.me"}]},{title:"پیکربندی",key:"config",children:[{title:"مدیریت ثابت ها",key:"config.statics",children:[{title:"برند ها",key:"config.statics.brand",children:[{title:"افزودن برند",key:"config.statics.brand.create"},{title:"ویرایش برند",key:"config.statics.brand.edit"},{title:"حذف برند",key:"config.statics.brand.remove"}]},{title:"برچسب ها",key:"config.statics.tags",children:[{title:"افزودن برچسب",key:"config.statics.tags.create"},{title:"ویرایش برچسب",key:"config.statics.tags.edit"},{title:"حذف برچسب",key:"config.statics.tags.remove"}]},{title:"اسلایدر موبایل",key:"custom.config.statics.slider"}]},{title:"مدیریت کیف پول",key:"config.wallet"},{title:"گزارش",key:"config.report"},{title:"اتصال حسابداری",key:"config.accounting"},{title:"اجرت",key:"config.wage"}]},{title:"آمار",key:"statics"},{title:"خبرنامه",key:"newsletters.newsletters"},{title:"سفارشی",key:"custom",children:[{title:"برچسب بنر اول سایت",key:"custom.config.statics.tags.banner.ids"}]}],T=new Set(["persons.create.single","persons.list.client.single","persons.list.client.single.view","persons.list.client.single.edit","branch","branch.create","branch.list","workshop","workshop.create","workshop.list","order.create","order.list","order.list.view","order.list.sts","order.list.sts.view","order.list.sts.remove","order.list.sts.submit","order.list.view.edit","order.list.pdf","offers.create.tak","offers.list.tak.edit","offers.list.tak.remove","config.wallet"]),le={class:"grid-2"},P="84",U="85",N=104,re=J({__name:"Permission",setup(se){const f=K(),x=ie(),p=t=>!!f.hasPermission(t),n=c(U),k=c(""),u=c([]),V=c(!0),I=c([]),s=ee({}),a=D(()=>n.value===P),F=D(()=>{var e;let t=I.value;return p("user.permission.create")||(t=t.filter(i=>String(i.id)!==P)),((e=x.user)==null?void 0:e.ut)!==N&&(t=t.filter(i=>i.id!==N)),t});function A(t){return t.filter(e=>!T.has(e.key)).map(e=>e.children?{...e,children:A(e.children)}:e)}const L=D(()=>{var e;const t=((e=x.user)==null?void 0:e.ut)===N?B:B.filter(i=>i.key!=="custom");return f.isSuperAdmin?t:A(t)}),h=c([]);function w(t){if(f.isSuperAdmin){u.value=t,h.value=[];return}u.value=t.filter(e=>!T.has(e)),h.value=t.filter(e=>T.has(e))}async function C(){try{const{data:t}=await v.get("const/__list__ut");I.value=t}catch(t){console.log(t)}}async function g(t){if(!t){w([]);return}if(t===P){w([]);return}try{const{data:e}=await v.get(`roles/${t}`);w(e)}catch{S.error("خطا در دریافت اطلاعات")}}async function M(){var t,e;if(Object.keys(s).forEach(i=>delete s[i]),!n.value){s.ut="لطفاسطح دسترسی را انتخاب کنید";return}if(a.value&&!k.value){s.user="لطفا نام سطح دسترسی را وارد کنید";return}try{let i=n.value;if(a.value){const{data:_}=await v.post("const",{key:"__list__ut",val:k.value});i=String(_.id)}await v.post("roles/create",{ut:i,roles:[...new Set([...u.value,...h.value])]}),await C(),a.value&&(n.value=i,k.value="",await g(i)),S.success("عملیات با موفقیت انجام شد")}catch(i){S.error(((e=(t=i==null?void 0:i.response)==null?void 0:t.data)==null?void 0:e.message)??"خطا در ثبت اطلاعات")}}return W(async()=>{await C(),n.value=U,await g(U)}),(t,e)=>{const i=o("a-select-option"),_=o("a-select"),b=o("a-form-item"),Y=o("a-input"),H=o("a-tree"),R=o("a-button"),j=o("a-card"),z=o("a-form");return d(),m(z,{layout:"vertical",onSubmit:$(M,["prevent"])},{default:r(()=>[y(j,{id:"rid",title:"دسترسی ها",class:"page-card"},{default:r(()=>[q("div",le,[y(b,{label:"سطح کاربر","validate-status":s.ut?"error":"",help:s.ut},{default:r(()=>[y(_,{value:n.value,"onUpdate:value":e[0]||(e[0]=l=>n.value=l),"allow-clear":"",onChange:g},{default:r(()=>[(d(!0),G(Z,null,Q(F.value,l=>(d(),m(i,{key:l.id,value:String(l.id)},{default:r(()=>[E(X(l.title),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1},8,["validate-status","help"]),a.value&&p("user.permission.create")?(d(),m(b,{key:0,label:"نام سطح دسترسی","validate-status":s.user?"error":"",help:s.user},{default:r(()=>[y(Y,{value:k.value,"onUpdate:value":e[1]||(e[1]=l=>k.value=l),"allow-clear":""},null,8,["value"])]),_:1},8,["validate-status","help"])):O("",!0),y(b,{label:"نقش ها",class:"tree-item"},{default:r(()=>[y(H,{"checked-keys":u.value,"onUpdate:checkedKeys":e[2]||(e[2]=l=>u.value=l),"check-strictly":!1,checkable:"",style:{width:"100%"},"tree-data":L.value,"field-names":{title:"title",key:"key",children:"children"},"auto-expand-parent":V.value},null,8,["checked-keys","tree-data","auto-expand-parent"])]),_:1})]),!a.value&&p("user.permission.edit")?(d(),m(R,{key:0,type:"primary",class:"form-submit","html-type":"submit"},{default:r(()=>[...e[3]||(e[3]=[E(" ثبت تغییرات ",-1)])]),_:1})):O("",!0),a.value&&p("user.permission.create")?(d(),m(R,{key:1,type:"primary",class:"form-submit","html-type":"submit"},{default:r(()=>[...e[4]||(e[4]=[E(" افزودن ",-1)])]),_:1})):O("",!0)]),_:1})]),_:1})}}}),ae=te(re,[["__scopeId","data-v-e837c6b0"]]);export{ae as default}; diff --git a/apps/admin-panel/dist/assets/ProductList-GHlxqjVF.js b/apps/admin-panel/dist/assets/ProductList-Cvdk4j7I.js similarity index 91% rename from apps/admin-panel/dist/assets/ProductList-GHlxqjVF.js rename to apps/admin-panel/dist/assets/ProductList-Cvdk4j7I.js index 5d2c64c..90db218 100644 --- a/apps/admin-panel/dist/assets/ProductList-GHlxqjVF.js +++ b/apps/admin-panel/dist/assets/ProductList-Cvdk4j7I.js @@ -1 +1 @@ -import{d as X,u as q,b as _,c as l,w as o,r as c,o as a,p as C,t as r,h as g,a as d,E as A,i as m,K as G,G as H,f as u,q as K,m as y,s as j,y as F,l as J,X as Q,_ as W}from"./index-CJij4X3l.js";import{X as Y}from"./model-tqsMDjkK.js";import{_ as Z}from"./AccountingSyncButton.vue_vue_type_script_setup_true_lang-CVFVkjGK.js";import{b as tt}from"./productListModel-Dqg_dJPi.js";import{u as et}from"./useDeleteHandler-DuEp06Uq.js";import"./filters-BPYO-DKN.js";import"./index-CKg-8s_Z.js";import"./SettingOutlined-BJxMXy1I.js";const ot={id:"page-user-list"},at={class:"selected-count"},st=["src"],nt={key:1},lt={key:0,class:"acc-stock"},it={key:0,class:"w-48 flex"},ut={key:0},ct=X({__name:"ProductList",setup(rt){const I=J(),b=q(),v=s=>!!b.hasPermission(s),$=tt(b.isSuperAdmin),x=y(null),w=y([]),B=j(()=>Q()),k=y(!1),i=y(void 0),N=[{title:"عنوان",dataIndex:"title"},{title:"وزن",dataIndex:"grams"},{title:"اجرت درصدی",dataIndex:"percentage_pay"},{title:"تعداد",dataIndex:"qty"}];async function V(s){const{data:e}=await F.get(`admin/products/${s.id}`);i.value=e,k.value=!0}const{remove:D}=et({onSuccess:()=>{var s;return(s=x.value)==null?void 0:s.fetch()},successMessage:"محصول حذف شد",successType:"info",fallbackErrorMessage:"خطا در حذف محصول"});function E(s){return D(`delete/product/${s}`,{method:"post"})}const P=s=>{var e,f;return Number(((e=s.accounting_stock)==null?void 0:e.weight)??((f=s.accounting_stock)==null?void 0:f.count)??0)};function S(s){I.push(`/apps/product/edit/${s}`)}return(s,e)=>{const f=c("a-tag"),h=c("a-tooltip"),M=c("a-popconfirm"),p=c("a-descriptions-item"),O=c("a-descriptions"),z=c("a-table"),L=c("a-empty"),R=c("a-button"),T=c("a-modal"),U=c("a-card");return a(),_("div",ot,[l(U,{title:"لیست محصولات",class:"page-card"},{extra:o(()=>[v("product.list")?(a(),d(Z,{key:0,endpoint:"admin/products/accounting-sync",onDone:e[0]||(e[0]=t=>{var n;return(n=x.value)==null?void 0:n.fetch()})})):m("",!0)]),default:o(()=>[C("h6",at,"تعداد "+r(w.value.length)+" محصول انتخاب شده است.",1),l(Y,{ref_key:"tblProducts",ref:x,modelValue:w.value,"onUpdate:modelValue":e[1]||(e[1]=t=>w.value=t),model:g($),"has-selection":!0,"mobile-cards":""},{image:o(({record:t})=>[t.ProductImage&&t.ProductImage.length?(a(),_("img",{key:0,src:t.ProductImage[0].image,class:"product-thumb",alt:""},null,8,st)):(a(),_("span",nt,"-"))]),show_type:o(({record:t})=>[u(r(t.show_type_str),1)]),accounting:o(({record:t})=>[t.accounting_stock?(a(),_("div",lt,[e[4]||(e[4]=u(" موجودی: ",-1)),C("span",{class:K(P(t)<=0?"text-danger":"")},r(t.accounting_stock.weight!=null?`${Number(t.accounting_stock.weight)} گرم`:`${Number(t.accounting_stock.count)} عدد`),3)])):m("",!0),!t.ProductImage||!t.ProductImage.length?(a(),d(f,{key:1,color:"orange"},{default:o(()=>[...e[5]||(e[5]=[u("بدون تصویر — در اپ پنهان",-1)])]),_:1})):t.accounting_stock&&P(t)<=0?(a(),d(f,{key:2,color:"red"},{default:o(()=>[...e[6]||(e[6]=[u("ناموجود در حسابداری",-1)])]),_:1})):m("",!0)]),op:o(({record:t})=>[B.value?m("",!0):(a(),_("div",it,[v("product.list.edit")?(a(),d(h,{key:0,title:"ویرایش"},{default:o(()=>[l(g(A),{class:"cursor-pointer mx-1 text-primary",onClick:n=>S(t.id)},null,8,["onClick"])]),_:2},1024)):m("",!0),v("product.list.view")?(a(),d(h,{key:1,title:"اطلاعات جامع"},{default:o(()=>[l(g(G),{class:"cursor-pointer mx-1 text-warning",onClick:n=>V(t)},null,8,["onClick"])]),_:2},1024)):m("",!0),v("product.list.remove")?(a(),d(h,{key:2,title:"حذف"},{default:o(()=>[l(M,{placement:"top","ok-text":"بله","cancel-text":"خیر",onConfirm:n=>E(t.id)},{title:o(()=>[...e[7]||(e[7]=[C("p",null,"آیا مطمئن به حذف محصول مورد نظر هستید ؟",-1)])]),default:o(()=>[l(g(H),{class:"cursor-pointer mx-1 text-danger"})]),_:1},8,["onConfirm"])]),_:2},1024)):m("",!0)]))]),_:1},8,["modelValue","model"]),l(T,{open:k.value,"onUpdate:open":e[3]||(e[3]=t=>k.value=t),title:"اطلاعات جامع محصول",width:"70%","wrap-class-name":"detail-modal"},{footer:o(()=>[l(R,{onClick:e[2]||(e[2]=t=>k.value=!1)},{default:o(()=>[...e[8]||(e[8]=[u("بستن",-1)])]),_:1})]),default:o(()=>{var t;return[i.value?(a(),_("div",ut,[l(O,{bordered:"",size:"small",column:{xxl:2,xl:2,lg:2,md:2,sm:2,xs:1}},{default:o(()=>[l(p,{label:"نام محصول"},{default:o(()=>[u(r(i.value.title),1)]),_:1}),l(p,{label:"کد محصول"},{default:o(()=>[u(r(i.value.product_code||"-"),1)]),_:1}),l(p,{label:"برند"},{default:o(()=>{var n;return[u(r(((n=i.value.brand)==null?void 0:n.title)||"-"),1)]}),_:1}),l(p,{label:"دسته بندی"},{default:o(()=>{var n;return[u(r(((n=i.value.category)==null?void 0:n.title)||"-"),1)]}),_:1}),g(b).isSuperAdmin?(a(),d(p,{key:0,label:"نوع نمایش"},{default:o(()=>[u(r(i.value.show_type_str),1)]),_:1})):m("",!0),l(p,{label:"تعداد تنوع"},{default:o(()=>{var n;return[u(r(((n=i.value.variants_all)==null?void 0:n.length)??i.value.variants_count??0),1)]}),_:1})]),_:1}),(t=i.value.variants_all)!=null&&t.length?(a(),d(z,{key:0,class:"mt-4",size:"small","data-source":i.value.variants_all,columns:N,pagination:!1,"row-key":"id"},null,8,["data-source"])):m("",!0)])):(a(),d(L,{key:1}))]}),_:1},8,["open"])]),_:1})])}}}),yt=W(ct,[["__scopeId","data-v-034e8438"]]);export{yt as default}; +import{d as X,u as q,b as _,c as l,w as o,r as c,o as a,p as C,t as r,h as g,a as d,E as A,i as m,K as G,G as H,f as u,q as K,m as y,s as j,y as F,l as J,X as Q,_ as W}from"./index-CpVArufm.js";import{X as Y}from"./model-mwiDYd1J.js";import{_ as Z}from"./AccountingSyncButton.vue_vue_type_script_setup_true_lang-wE6MaQCK.js";import{b as tt}from"./productListModel-Ht1NntTk.js";import{u as et}from"./useDeleteHandler-K9FWNrnm.js";import"./filters-CoNJlguG.js";import"./index-DjZc5EYL.js";import"./SettingOutlined-E4OknxY2.js";const ot={id:"page-user-list"},at={class:"selected-count"},st=["src"],nt={key:1},lt={key:0,class:"acc-stock"},it={key:0,class:"w-48 flex"},ut={key:0},ct=X({__name:"ProductList",setup(rt){const I=J(),b=q(),v=s=>!!b.hasPermission(s),$=tt(b.isSuperAdmin),x=y(null),w=y([]),B=j(()=>Q()),k=y(!1),i=y(void 0),N=[{title:"عنوان",dataIndex:"title"},{title:"وزن",dataIndex:"grams"},{title:"اجرت درصدی",dataIndex:"percentage_pay"},{title:"تعداد",dataIndex:"qty"}];async function V(s){const{data:e}=await F.get(`admin/products/${s.id}`);i.value=e,k.value=!0}const{remove:D}=et({onSuccess:()=>{var s;return(s=x.value)==null?void 0:s.fetch()},successMessage:"محصول حذف شد",successType:"info",fallbackErrorMessage:"خطا در حذف محصول"});function E(s){return D(`delete/product/${s}`,{method:"post"})}const P=s=>{var e,f;return Number(((e=s.accounting_stock)==null?void 0:e.weight)??((f=s.accounting_stock)==null?void 0:f.count)??0)};function S(s){I.push(`/apps/product/edit/${s}`)}return(s,e)=>{const f=c("a-tag"),h=c("a-tooltip"),M=c("a-popconfirm"),p=c("a-descriptions-item"),O=c("a-descriptions"),z=c("a-table"),L=c("a-empty"),R=c("a-button"),T=c("a-modal"),U=c("a-card");return a(),_("div",ot,[l(U,{title:"لیست محصولات",class:"page-card"},{extra:o(()=>[v("product.list")?(a(),d(Z,{key:0,endpoint:"admin/products/accounting-sync",onDone:e[0]||(e[0]=t=>{var n;return(n=x.value)==null?void 0:n.fetch()})})):m("",!0)]),default:o(()=>[C("h6",at,"تعداد "+r(w.value.length)+" محصول انتخاب شده است.",1),l(Y,{ref_key:"tblProducts",ref:x,modelValue:w.value,"onUpdate:modelValue":e[1]||(e[1]=t=>w.value=t),model:g($),"has-selection":!0,"mobile-cards":""},{image:o(({record:t})=>[t.ProductImage&&t.ProductImage.length?(a(),_("img",{key:0,src:t.ProductImage[0].image,class:"product-thumb",alt:""},null,8,st)):(a(),_("span",nt,"-"))]),show_type:o(({record:t})=>[u(r(t.show_type_str),1)]),accounting:o(({record:t})=>[t.accounting_stock?(a(),_("div",lt,[e[4]||(e[4]=u(" موجودی: ",-1)),C("span",{class:K(P(t)<=0?"text-danger":"")},r(t.accounting_stock.weight!=null?`${Number(t.accounting_stock.weight)} گرم`:`${Number(t.accounting_stock.count)} عدد`),3)])):m("",!0),!t.ProductImage||!t.ProductImage.length?(a(),d(f,{key:1,color:"orange"},{default:o(()=>[...e[5]||(e[5]=[u("بدون تصویر — در اپ پنهان",-1)])]),_:1})):t.accounting_stock&&P(t)<=0?(a(),d(f,{key:2,color:"red"},{default:o(()=>[...e[6]||(e[6]=[u("ناموجود در حسابداری",-1)])]),_:1})):m("",!0)]),op:o(({record:t})=>[B.value?m("",!0):(a(),_("div",it,[v("product.list.edit")?(a(),d(h,{key:0,title:"ویرایش"},{default:o(()=>[l(g(A),{class:"cursor-pointer mx-1 text-primary",onClick:n=>S(t.id)},null,8,["onClick"])]),_:2},1024)):m("",!0),v("product.list.view")?(a(),d(h,{key:1,title:"اطلاعات جامع"},{default:o(()=>[l(g(G),{class:"cursor-pointer mx-1 text-warning",onClick:n=>V(t)},null,8,["onClick"])]),_:2},1024)):m("",!0),v("product.list.remove")?(a(),d(h,{key:2,title:"حذف"},{default:o(()=>[l(M,{placement:"top","ok-text":"بله","cancel-text":"خیر",onConfirm:n=>E(t.id)},{title:o(()=>[...e[7]||(e[7]=[C("p",null,"آیا مطمئن به حذف محصول مورد نظر هستید ؟",-1)])]),default:o(()=>[l(g(H),{class:"cursor-pointer mx-1 text-danger"})]),_:1},8,["onConfirm"])]),_:2},1024)):m("",!0)]))]),_:1},8,["modelValue","model"]),l(T,{open:k.value,"onUpdate:open":e[3]||(e[3]=t=>k.value=t),title:"اطلاعات جامع محصول",width:"70%","wrap-class-name":"detail-modal"},{footer:o(()=>[l(R,{onClick:e[2]||(e[2]=t=>k.value=!1)},{default:o(()=>[...e[8]||(e[8]=[u("بستن",-1)])]),_:1})]),default:o(()=>{var t;return[i.value?(a(),_("div",ut,[l(O,{bordered:"",size:"small",column:{xxl:2,xl:2,lg:2,md:2,sm:2,xs:1}},{default:o(()=>[l(p,{label:"نام محصول"},{default:o(()=>[u(r(i.value.title),1)]),_:1}),l(p,{label:"کد محصول"},{default:o(()=>[u(r(i.value.product_code||"-"),1)]),_:1}),l(p,{label:"برند"},{default:o(()=>{var n;return[u(r(((n=i.value.brand)==null?void 0:n.title)||"-"),1)]}),_:1}),l(p,{label:"دسته بندی"},{default:o(()=>{var n;return[u(r(((n=i.value.category)==null?void 0:n.title)||"-"),1)]}),_:1}),g(b).isSuperAdmin?(a(),d(p,{key:0,label:"نوع نمایش"},{default:o(()=>[u(r(i.value.show_type_str),1)]),_:1})):m("",!0),l(p,{label:"تعداد تنوع"},{default:o(()=>{var n;return[u(r(((n=i.value.variants_all)==null?void 0:n.length)??i.value.variants_count??0),1)]}),_:1})]),_:1}),(t=i.value.variants_all)!=null&&t.length?(a(),d(z,{key:0,class:"mt-4",size:"small","data-source":i.value.variants_all,columns:N,pagination:!1,"row-key":"id"},null,8,["data-source"])):m("",!0)])):(a(),d(L,{key:1}))]}),_:1},8,["open"])]),_:1})])}}}),yt=W(ct,[["__scopeId","data-v-034e8438"]]);export{yt as default}; diff --git a/apps/admin-panel/dist/assets/PromotionForm-B6PGO9Ts.js b/apps/admin-panel/dist/assets/PromotionForm-B6PGO9Ts.js new file mode 100644 index 0000000..fd17873 --- /dev/null +++ b/apps/admin-panel/dist/assets/PromotionForm-B6PGO9Ts.js @@ -0,0 +1 @@ +import{d as h,x as ee,y as U,a as s,h as O,w as a,k as te,m as C,z as q,J as H,r as p,o as d,p as I,c as o,f as r,i as m,b as y,e as b,F as w,H as le,l as ae,t as g,_ as oe}from"./index-CpVArufm.js";import{o as ue}from"./select--BgT6D7O.js";import{_ as de}from"./BaseFormModal.vue_vue_type_style_index_0_lang-B4iVMhZt.js";const ne={class:"grid-4 grid-4--tight"},ie={class:"grid-4 grid-4--tight"},re=h({__name:"PromotionForm",props:{title:{default:"تعریف تخفیف"},allowCustomerScope:{type:Boolean,default:!0},open:{type:Boolean},id:{}},emits:["update:open","success"],setup(_,{emit:J}){const M=_,P=J,B=M.open!==void 0,A=te(),G=ae(),k=B?M.id:A.params.id,Y=C(!1),D=C([]),R=C([]),N=C([]),j=C([]),l=q({type:1,title:"",description:"",discount_percent:void 0,use_only:1,is_active:!0,start:void 0,end:void 0,product_id:void 0,category_id:void 0,customer_id:void 0,brand_id:void 0}),v=q({});function V(){l.product_id=void 0,l.category_id=void 0,l.customer_id=void 0,l.brand_id=void 0}function c(u,e){return ue(e).toLowerCase().includes(u.toLowerCase())}function K(){return Object.keys(v).forEach(u=>delete v[u]),l.title||(v.title="لطفا مقدار را وارد کنید"),(l.discount_percent===void 0||l.discount_percent===null)&&(v.discount_percent="لطفا مقدار را وارد کنید"),Object.keys(v).length===0}async function F(){var u,e;if(K())try{Y.value=!0,k?await U.put(`product/variant/promotion/${k}`,l):await U.post("product/variant/promotion",l),H.info("اطلاعات با موفقیت به ثبت رسید."),B?(P("success"),P("update:open",!1)):G.push("/major/promotion/list")}catch(i){H.error(((e=(u=i==null?void 0:i.response)==null?void 0:u.data)==null?void 0:e.message)??"خطا در ثبت اطلاعات.")}finally{Y.value=!1}}return ee(async()=>{try{const[u,e,i]=await Promise.all([U.post("products",{page:1,limit:500}),U.post("category",{page:1,limit:500}),U.get("brand")]);D.value=u.data.rows??[],R.value=e.data.rows??[],j.value=i.data??[]}catch(u){console.log(u)}if(M.allowCustomerScope)try{const{data:u}=await U.get("query/customer");N.value=u}catch(u){console.log(u)}if(k)try{const{data:u}=await U.get(`admin/promotions/${k}`);Object.assign(l,{type:u.type??1,title:u.title??"",description:u.description??"",discount_percent:u.discount_percent!==null?Number(u.discount_percent):void 0,use_only:u.use_only??1,is_active:u.is_active??!0,start:u.start?String(u.start).slice(0,10):void 0,end:u.end?String(u.end).slice(0,10):void 0,product_id:u.product_id??void 0,category_id:u.category_id??void 0,customer_id:u.customer_id??void 0,brand_id:u.brand_id??void 0})}catch(u){console.log(u)}}),(u,e)=>{const i=p("a-select-option"),f=p("a-select"),n=p("a-form-item"),$=p("a-input"),z=p("a-input-number"),x=p("a-date-picker"),S=p("a-radio"),L=p("a-radio-group"),T=p("a-switch"),E=p("a-textarea"),Q=p("a-button"),W=p("a-card"),X=p("a-form"),Z=p("a-spin");return B?(d(),s(de,{key:0,open:!!_.open,id:O(k),"add-title":_.title,"edit-title":_.title,loading:Y.value,submitting:Y.value,width:"lg","onUpdate:open":e[12]||(e[12]=t=>u.$emit("update:open",t)),onSubmit:F},{default:a(()=>[I("div",ne,[o(n,{label:"نوع تخفیف"},{default:a(()=>[o(f,{value:l.type,"onUpdate:value":e[0]||(e[0]=t=>l.type=t),disabled:!!O(k),onChange:V},{default:a(()=>[o(i,{value:1},{default:a(()=>[...e[25]||(e[25]=[r("محصولات",-1)])]),_:1}),o(i,{value:2},{default:a(()=>[...e[26]||(e[26]=[r("دسته بندی",-1)])]),_:1}),_.allowCustomerScope?(d(),s(i,{key:0,value:3},{default:a(()=>[...e[27]||(e[27]=[r("مشتری",-1)])]),_:1})):m("",!0),o(i,{value:4},{default:a(()=>[...e[28]||(e[28]=[r("برند",-1)])]),_:1})]),_:1},8,["value","disabled"])]),_:1}),o(n,{label:"عنوان","validate-status":v.title?"error":"",help:v.title},{default:a(()=>[o($,{value:l.title,"onUpdate:value":e[1]||(e[1]=t=>l.title=t)},null,8,["value"])]),_:1},8,["validate-status","help"]),l.type===1?(d(),s(n,{key:0,label:"محصول"},{default:a(()=>[o(f,{value:l.product_id,"onUpdate:value":e[2]||(e[2]=t=>l.product_id=t),"show-search":"","allow-clear":"","filter-option":c,placeholder:"انتخاب کنید"},{default:a(()=>[(d(!0),y(w,null,b(D.value,t=>(d(),s(i,{key:t.id,value:t.id},{default:a(()=>[r(g(t.title),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1})):m("",!0),l.type===2?(d(),s(n,{key:1,label:"دسته بندی"},{default:a(()=>[o(f,{value:l.category_id,"onUpdate:value":e[3]||(e[3]=t=>l.category_id=t),"show-search":"","allow-clear":"","filter-option":c,placeholder:"انتخاب کنید"},{default:a(()=>[(d(!0),y(w,null,b(R.value,t=>(d(),s(i,{key:t.id,value:t.id},{default:a(()=>[r(g(t.title),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1})):m("",!0),l.type===3&&_.allowCustomerScope?(d(),s(n,{key:2,label:"مشتری"},{default:a(()=>[o(f,{value:l.customer_id,"onUpdate:value":e[4]||(e[4]=t=>l.customer_id=t),"show-search":"","allow-clear":"","filter-option":c,placeholder:"انتخاب کنید"},{default:a(()=>[(d(!0),y(w,null,b(N.value,t=>(d(),s(i,{key:t.id,value:t.id},{default:a(()=>[r(g(t.name),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1})):m("",!0),l.type===4?(d(),s(n,{key:3,label:"برند"},{default:a(()=>[o(f,{value:l.brand_id,"onUpdate:value":e[5]||(e[5]=t=>l.brand_id=t),"show-search":"","allow-clear":"","filter-option":c,placeholder:"انتخاب کنید"},{default:a(()=>[(d(!0),y(w,null,b(j.value,t=>(d(),s(i,{key:t.id,value:t.id},{default:a(()=>[r(g(t.title),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1})):m("",!0),o(n,{label:"درصد تخفیف","validate-status":v.discount_percent?"error":"",help:v.discount_percent},{default:a(()=>[o(z,{value:l.discount_percent,"onUpdate:value":e[6]||(e[6]=t=>l.discount_percent=t),class:"w-full",min:0,max:100},null,8,["value"])]),_:1},8,["validate-status","help"]),o(n,{label:"تاریخ شروع"},{default:a(()=>[o(x,{value:l.start,"onUpdate:value":e[7]||(e[7]=t=>l.start=t),class:"w-full","value-format":"YYYY-MM-DD"},null,8,["value"])]),_:1}),o(n,{label:"تاریخ پایان"},{default:a(()=>[o(x,{value:l.end,"onUpdate:value":e[8]||(e[8]=t=>l.end=t),class:"w-full","value-format":"YYYY-MM-DD"},null,8,["value"])]),_:1}),o(n,{label:"قابلیت استفاده"},{default:a(()=>[o(L,{value:l.use_only,"onUpdate:value":e[9]||(e[9]=t=>l.use_only=t)},{default:a(()=>[o(S,{value:1},{default:a(()=>[...e[29]||(e[29]=[r(" فقط یکبار",-1)])]),_:1}),o(S,{value:2},{default:a(()=>[...e[30]||(e[30]=[r("تا تاریخ پایان",-1)])]),_:1})]),_:1},8,["value"])]),_:1}),o(n,{label:"وضعیت تخفیف"},{default:a(()=>[o(T,{checked:l.is_active,"onUpdate:checked":e[10]||(e[10]=t=>l.is_active=t)},null,8,["checked"])]),_:1})]),o(n,{label:"توضیحات"},{default:a(()=>[o(E,{value:l.description,"onUpdate:value":e[11]||(e[11]=t=>l.description=t),"auto-size":{minRows:3,maxRows:6}},null,8,["value"])]),_:1})]),_:1},8,["open","id","add-title","edit-title","loading","submitting"])):(d(),s(Z,{key:1,spinning:Y.value},{default:a(()=>[o(X,{layout:"vertical",onSubmit:le(F,["prevent"])},{default:a(()=>[o(W,{title:_.title,class:"mb-base page-card"},{default:a(()=>[I("div",ie,[o(n,{label:"نوع تخفیف"},{default:a(()=>[o(f,{value:l.type,"onUpdate:value":e[13]||(e[13]=t=>l.type=t),disabled:!!O(k),onChange:V},{default:a(()=>[o(i,{value:1},{default:a(()=>[...e[31]||(e[31]=[r("محصولات",-1)])]),_:1}),o(i,{value:2},{default:a(()=>[...e[32]||(e[32]=[r("دسته بندی",-1)])]),_:1}),_.allowCustomerScope?(d(),s(i,{key:0,value:3},{default:a(()=>[...e[33]||(e[33]=[r("مشتری",-1)])]),_:1})):m("",!0),o(i,{value:4},{default:a(()=>[...e[34]||(e[34]=[r("برند",-1)])]),_:1})]),_:1},8,["value","disabled"])]),_:1}),o(n,{label:"عنوان","validate-status":v.title?"error":"",help:v.title},{default:a(()=>[o($,{value:l.title,"onUpdate:value":e[14]||(e[14]=t=>l.title=t)},null,8,["value"])]),_:1},8,["validate-status","help"]),l.type===1?(d(),s(n,{key:0,label:"محصول"},{default:a(()=>[o(f,{value:l.product_id,"onUpdate:value":e[15]||(e[15]=t=>l.product_id=t),"show-search":"","allow-clear":"","filter-option":c,placeholder:"انتخاب کنید"},{default:a(()=>[(d(!0),y(w,null,b(D.value,t=>(d(),s(i,{key:t.id,value:t.id},{default:a(()=>[r(g(t.title),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1})):m("",!0),l.type===2?(d(),s(n,{key:1,label:"دسته بندی"},{default:a(()=>[o(f,{value:l.category_id,"onUpdate:value":e[16]||(e[16]=t=>l.category_id=t),"show-search":"","allow-clear":"","filter-option":c,placeholder:"انتخاب کنید"},{default:a(()=>[(d(!0),y(w,null,b(R.value,t=>(d(),s(i,{key:t.id,value:t.id},{default:a(()=>[r(g(t.title),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1})):m("",!0),l.type===3&&_.allowCustomerScope?(d(),s(n,{key:2,label:"مشتری"},{default:a(()=>[o(f,{value:l.customer_id,"onUpdate:value":e[17]||(e[17]=t=>l.customer_id=t),"show-search":"","allow-clear":"","filter-option":c,placeholder:"انتخاب کنید"},{default:a(()=>[(d(!0),y(w,null,b(N.value,t=>(d(),s(i,{key:t.id,value:t.id},{default:a(()=>[r(g(t.name),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1})):m("",!0),l.type===4?(d(),s(n,{key:3,label:"برند"},{default:a(()=>[o(f,{value:l.brand_id,"onUpdate:value":e[18]||(e[18]=t=>l.brand_id=t),"show-search":"","allow-clear":"","filter-option":c,placeholder:"انتخاب کنید"},{default:a(()=>[(d(!0),y(w,null,b(j.value,t=>(d(),s(i,{key:t.id,value:t.id},{default:a(()=>[r(g(t.title),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1})):m("",!0),o(n,{label:"درصد تخفیف","validate-status":v.discount_percent?"error":"",help:v.discount_percent},{default:a(()=>[o(z,{value:l.discount_percent,"onUpdate:value":e[19]||(e[19]=t=>l.discount_percent=t),class:"w-full",min:0,max:100},null,8,["value"])]),_:1},8,["validate-status","help"]),o(n,{label:"تاریخ شروع"},{default:a(()=>[o(x,{value:l.start,"onUpdate:value":e[20]||(e[20]=t=>l.start=t),class:"w-full","value-format":"YYYY-MM-DD"},null,8,["value"])]),_:1}),o(n,{label:"تاریخ پایان"},{default:a(()=>[o(x,{value:l.end,"onUpdate:value":e[21]||(e[21]=t=>l.end=t),class:"w-full","value-format":"YYYY-MM-DD"},null,8,["value"])]),_:1}),o(n,{label:"قابلیت استفاده"},{default:a(()=>[o(L,{value:l.use_only,"onUpdate:value":e[22]||(e[22]=t=>l.use_only=t)},{default:a(()=>[o(S,{value:1},{default:a(()=>[...e[35]||(e[35]=[r(" فقط یکبار",-1)])]),_:1}),o(S,{value:2},{default:a(()=>[...e[36]||(e[36]=[r("تا تاریخ پایان",-1)])]),_:1})]),_:1},8,["value"])]),_:1}),o(n,{label:"وضعیت تخفیف"},{default:a(()=>[o(T,{checked:l.is_active,"onUpdate:checked":e[23]||(e[23]=t=>l.is_active=t)},null,8,["checked"])]),_:1})]),o(n,{label:"توضیحات"},{default:a(()=>[o(E,{value:l.description,"onUpdate:value":e[24]||(e[24]=t=>l.description=t),"auto-size":{minRows:3,maxRows:6}},null,8,["value"])]),_:1}),o(Q,{type:"primary",class:"form-submit",onClick:F},{default:a(()=>[...e[37]||(e[37]=[r("ثبت اطلاعات",-1)])]),_:1})]),_:1},8,["title"])]),_:1})]),_:1},8,["spinning"]))}}}),fe=oe(re,[["__scopeId","data-v-30a94998"]]);export{fe as P}; diff --git a/apps/admin-panel/dist/assets/PromotionForm-BbHzArCn.css b/apps/admin-panel/dist/assets/PromotionForm-BbHzArCn.css deleted file mode 100644 index 647daeb..0000000 --- a/apps/admin-panel/dist/assets/PromotionForm-BbHzArCn.css +++ /dev/null @@ -1 +0,0 @@ -.grid-4--tight[data-v-ff6809ef]{gap:.5rem} diff --git a/apps/admin-panel/dist/assets/PromotionForm-CMK9v6id.css b/apps/admin-panel/dist/assets/PromotionForm-CMK9v6id.css new file mode 100644 index 0000000..9ea88dd --- /dev/null +++ b/apps/admin-panel/dist/assets/PromotionForm-CMK9v6id.css @@ -0,0 +1 @@ +.grid-4--tight[data-v-30a94998]{gap:.5rem} diff --git a/apps/admin-panel/dist/assets/PromotionForm-DL-pNvym.js b/apps/admin-panel/dist/assets/PromotionForm-DL-pNvym.js deleted file mode 100644 index 3aa19e6..0000000 --- a/apps/admin-panel/dist/assets/PromotionForm-DL-pNvym.js +++ /dev/null @@ -1 +0,0 @@ -import{d as h,x as ee,y as U,a as s,h as O,w as a,k as te,m as C,z as q,J as H,r as v,o as d,p as I,c as o,f as r,i as m,b as y,e as b,F as w,H as le,l as ae,t as g,_ as oe}from"./index-CJij4X3l.js";import{_ as ue}from"./BaseFormModal.vue_vue_type_style_index_0_lang-YLHOAWTN.js";const de={class:"grid-4 grid-4--tight"},ne={class:"grid-4 grid-4--tight"},ie=h({__name:"PromotionForm",props:{title:{default:"تعریف تخفیف"},allowCustomerScope:{type:Boolean,default:!0},open:{type:Boolean},id:{}},emits:["update:open","success"],setup(_,{emit:J}){const M=_,P=J,B=M.open!==void 0,A=te(),G=ae(),k=B?M.id:A.params.id,Y=C(!1),D=C([]),R=C([]),N=C([]),j=C([]),l=q({type:1,title:"",description:"",discount_percent:void 0,use_only:1,is_active:!0,start:void 0,end:void 0,product_id:void 0,category_id:void 0,customer_id:void 0,brand_id:void 0}),p=q({});function V(){l.product_id=void 0,l.category_id=void 0,l.customer_id=void 0,l.brand_id=void 0}function c(u,e){var n,f;return String(((f=(n=e==null?void 0:e.children)==null?void 0:n[0])==null?void 0:f.children)??"").toLowerCase().includes(u.toLowerCase())}function K(){return Object.keys(p).forEach(u=>delete p[u]),l.title||(p.title="لطفا مقدار را وارد کنید"),(l.discount_percent===void 0||l.discount_percent===null)&&(p.discount_percent="لطفا مقدار را وارد کنید"),Object.keys(p).length===0}async function F(){var u,e;if(K())try{Y.value=!0,k?await U.put(`product/variant/promotion/${k}`,l):await U.post("product/variant/promotion",l),H.info("اطلاعات با موفقیت به ثبت رسید."),B?(P("success"),P("update:open",!1)):G.push("/major/promotion/list")}catch(n){H.error(((e=(u=n==null?void 0:n.response)==null?void 0:u.data)==null?void 0:e.message)??"خطا در ثبت اطلاعات.")}finally{Y.value=!1}}return ee(async()=>{try{const[u,e,n]=await Promise.all([U.post("products",{page:1,limit:500}),U.post("category",{page:1,limit:500}),U.get("brand")]);D.value=u.data.rows??[],R.value=e.data.rows??[],j.value=n.data??[]}catch(u){console.log(u)}if(M.allowCustomerScope)try{const{data:u}=await U.get("query/customer");N.value=u}catch(u){console.log(u)}if(k)try{const{data:u}=await U.get(`admin/promotions/${k}`);Object.assign(l,{type:u.type??1,title:u.title??"",description:u.description??"",discount_percent:u.discount_percent!==null?Number(u.discount_percent):void 0,use_only:u.use_only??1,is_active:u.is_active??!0,start:u.start?String(u.start).slice(0,10):void 0,end:u.end?String(u.end).slice(0,10):void 0,product_id:u.product_id??void 0,category_id:u.category_id??void 0,customer_id:u.customer_id??void 0,brand_id:u.brand_id??void 0})}catch(u){console.log(u)}}),(u,e)=>{const n=v("a-select-option"),f=v("a-select"),i=v("a-form-item"),$=v("a-input"),z=v("a-input-number"),S=v("a-date-picker"),x=v("a-radio"),L=v("a-radio-group"),E=v("a-switch"),T=v("a-textarea"),Q=v("a-button"),W=v("a-card"),X=v("a-form"),Z=v("a-spin");return B?(d(),s(ue,{key:0,open:!!_.open,id:O(k),"add-title":_.title,"edit-title":_.title,loading:Y.value,submitting:Y.value,width:"lg","onUpdate:open":e[12]||(e[12]=t=>u.$emit("update:open",t)),onSubmit:F},{default:a(()=>[I("div",de,[o(i,{label:"نوع تخفیف"},{default:a(()=>[o(f,{value:l.type,"onUpdate:value":e[0]||(e[0]=t=>l.type=t),disabled:!!O(k),onChange:V},{default:a(()=>[o(n,{value:1},{default:a(()=>[...e[25]||(e[25]=[r("محصولات",-1)])]),_:1}),o(n,{value:2},{default:a(()=>[...e[26]||(e[26]=[r("دسته بندی",-1)])]),_:1}),_.allowCustomerScope?(d(),s(n,{key:0,value:3},{default:a(()=>[...e[27]||(e[27]=[r("مشتری",-1)])]),_:1})):m("",!0),o(n,{value:4},{default:a(()=>[...e[28]||(e[28]=[r("برند",-1)])]),_:1})]),_:1},8,["value","disabled"])]),_:1}),o(i,{label:"عنوان","validate-status":p.title?"error":"",help:p.title},{default:a(()=>[o($,{value:l.title,"onUpdate:value":e[1]||(e[1]=t=>l.title=t)},null,8,["value"])]),_:1},8,["validate-status","help"]),l.type===1?(d(),s(i,{key:0,label:"محصول"},{default:a(()=>[o(f,{value:l.product_id,"onUpdate:value":e[2]||(e[2]=t=>l.product_id=t),"show-search":"","allow-clear":"","filter-option":c,placeholder:"انتخاب کنید"},{default:a(()=>[(d(!0),y(w,null,b(D.value,t=>(d(),s(n,{key:t.id,value:t.id},{default:a(()=>[r(g(t.title),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1})):m("",!0),l.type===2?(d(),s(i,{key:1,label:"دسته بندی"},{default:a(()=>[o(f,{value:l.category_id,"onUpdate:value":e[3]||(e[3]=t=>l.category_id=t),"show-search":"","allow-clear":"","filter-option":c,placeholder:"انتخاب کنید"},{default:a(()=>[(d(!0),y(w,null,b(R.value,t=>(d(),s(n,{key:t.id,value:t.id},{default:a(()=>[r(g(t.title),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1})):m("",!0),l.type===3&&_.allowCustomerScope?(d(),s(i,{key:2,label:"مشتری"},{default:a(()=>[o(f,{value:l.customer_id,"onUpdate:value":e[4]||(e[4]=t=>l.customer_id=t),"show-search":"","allow-clear":"","filter-option":c,placeholder:"انتخاب کنید"},{default:a(()=>[(d(!0),y(w,null,b(N.value,t=>(d(),s(n,{key:t.id,value:t.id},{default:a(()=>[r(g(t.name),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1})):m("",!0),l.type===4?(d(),s(i,{key:3,label:"برند"},{default:a(()=>[o(f,{value:l.brand_id,"onUpdate:value":e[5]||(e[5]=t=>l.brand_id=t),"show-search":"","allow-clear":"","filter-option":c,placeholder:"انتخاب کنید"},{default:a(()=>[(d(!0),y(w,null,b(j.value,t=>(d(),s(n,{key:t.id,value:t.id},{default:a(()=>[r(g(t.title),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1})):m("",!0),o(i,{label:"درصد تخفیف","validate-status":p.discount_percent?"error":"",help:p.discount_percent},{default:a(()=>[o(z,{value:l.discount_percent,"onUpdate:value":e[6]||(e[6]=t=>l.discount_percent=t),class:"w-full",min:0,max:100},null,8,["value"])]),_:1},8,["validate-status","help"]),o(i,{label:"تاریخ شروع"},{default:a(()=>[o(S,{value:l.start,"onUpdate:value":e[7]||(e[7]=t=>l.start=t),class:"w-full","value-format":"YYYY-MM-DD"},null,8,["value"])]),_:1}),o(i,{label:"تاریخ پایان"},{default:a(()=>[o(S,{value:l.end,"onUpdate:value":e[8]||(e[8]=t=>l.end=t),class:"w-full","value-format":"YYYY-MM-DD"},null,8,["value"])]),_:1}),o(i,{label:"قابلیت استفاده"},{default:a(()=>[o(L,{value:l.use_only,"onUpdate:value":e[9]||(e[9]=t=>l.use_only=t)},{default:a(()=>[o(x,{value:1},{default:a(()=>[...e[29]||(e[29]=[r(" فقط یکبار",-1)])]),_:1}),o(x,{value:2},{default:a(()=>[...e[30]||(e[30]=[r("تا تاریخ پایان",-1)])]),_:1})]),_:1},8,["value"])]),_:1}),o(i,{label:"وضعیت تخفیف"},{default:a(()=>[o(E,{checked:l.is_active,"onUpdate:checked":e[10]||(e[10]=t=>l.is_active=t)},null,8,["checked"])]),_:1})]),o(i,{label:"توضیحات"},{default:a(()=>[o(T,{value:l.description,"onUpdate:value":e[11]||(e[11]=t=>l.description=t),"auto-size":{minRows:3,maxRows:6}},null,8,["value"])]),_:1})]),_:1},8,["open","id","add-title","edit-title","loading","submitting"])):(d(),s(Z,{key:1,spinning:Y.value},{default:a(()=>[o(X,{layout:"vertical",onSubmit:le(F,["prevent"])},{default:a(()=>[o(W,{title:_.title,class:"mb-base page-card"},{default:a(()=>[I("div",ne,[o(i,{label:"نوع تخفیف"},{default:a(()=>[o(f,{value:l.type,"onUpdate:value":e[13]||(e[13]=t=>l.type=t),disabled:!!O(k),onChange:V},{default:a(()=>[o(n,{value:1},{default:a(()=>[...e[31]||(e[31]=[r("محصولات",-1)])]),_:1}),o(n,{value:2},{default:a(()=>[...e[32]||(e[32]=[r("دسته بندی",-1)])]),_:1}),_.allowCustomerScope?(d(),s(n,{key:0,value:3},{default:a(()=>[...e[33]||(e[33]=[r("مشتری",-1)])]),_:1})):m("",!0),o(n,{value:4},{default:a(()=>[...e[34]||(e[34]=[r("برند",-1)])]),_:1})]),_:1},8,["value","disabled"])]),_:1}),o(i,{label:"عنوان","validate-status":p.title?"error":"",help:p.title},{default:a(()=>[o($,{value:l.title,"onUpdate:value":e[14]||(e[14]=t=>l.title=t)},null,8,["value"])]),_:1},8,["validate-status","help"]),l.type===1?(d(),s(i,{key:0,label:"محصول"},{default:a(()=>[o(f,{value:l.product_id,"onUpdate:value":e[15]||(e[15]=t=>l.product_id=t),"show-search":"","allow-clear":"","filter-option":c,placeholder:"انتخاب کنید"},{default:a(()=>[(d(!0),y(w,null,b(D.value,t=>(d(),s(n,{key:t.id,value:t.id},{default:a(()=>[r(g(t.title),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1})):m("",!0),l.type===2?(d(),s(i,{key:1,label:"دسته بندی"},{default:a(()=>[o(f,{value:l.category_id,"onUpdate:value":e[16]||(e[16]=t=>l.category_id=t),"show-search":"","allow-clear":"","filter-option":c,placeholder:"انتخاب کنید"},{default:a(()=>[(d(!0),y(w,null,b(R.value,t=>(d(),s(n,{key:t.id,value:t.id},{default:a(()=>[r(g(t.title),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1})):m("",!0),l.type===3&&_.allowCustomerScope?(d(),s(i,{key:2,label:"مشتری"},{default:a(()=>[o(f,{value:l.customer_id,"onUpdate:value":e[17]||(e[17]=t=>l.customer_id=t),"show-search":"","allow-clear":"","filter-option":c,placeholder:"انتخاب کنید"},{default:a(()=>[(d(!0),y(w,null,b(N.value,t=>(d(),s(n,{key:t.id,value:t.id},{default:a(()=>[r(g(t.name),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1})):m("",!0),l.type===4?(d(),s(i,{key:3,label:"برند"},{default:a(()=>[o(f,{value:l.brand_id,"onUpdate:value":e[18]||(e[18]=t=>l.brand_id=t),"show-search":"","allow-clear":"","filter-option":c,placeholder:"انتخاب کنید"},{default:a(()=>[(d(!0),y(w,null,b(j.value,t=>(d(),s(n,{key:t.id,value:t.id},{default:a(()=>[r(g(t.title),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1})):m("",!0),o(i,{label:"درصد تخفیف","validate-status":p.discount_percent?"error":"",help:p.discount_percent},{default:a(()=>[o(z,{value:l.discount_percent,"onUpdate:value":e[19]||(e[19]=t=>l.discount_percent=t),class:"w-full",min:0,max:100},null,8,["value"])]),_:1},8,["validate-status","help"]),o(i,{label:"تاریخ شروع"},{default:a(()=>[o(S,{value:l.start,"onUpdate:value":e[20]||(e[20]=t=>l.start=t),class:"w-full","value-format":"YYYY-MM-DD"},null,8,["value"])]),_:1}),o(i,{label:"تاریخ پایان"},{default:a(()=>[o(S,{value:l.end,"onUpdate:value":e[21]||(e[21]=t=>l.end=t),class:"w-full","value-format":"YYYY-MM-DD"},null,8,["value"])]),_:1}),o(i,{label:"قابلیت استفاده"},{default:a(()=>[o(L,{value:l.use_only,"onUpdate:value":e[22]||(e[22]=t=>l.use_only=t)},{default:a(()=>[o(x,{value:1},{default:a(()=>[...e[35]||(e[35]=[r(" فقط یکبار",-1)])]),_:1}),o(x,{value:2},{default:a(()=>[...e[36]||(e[36]=[r("تا تاریخ پایان",-1)])]),_:1})]),_:1},8,["value"])]),_:1}),o(i,{label:"وضعیت تخفیف"},{default:a(()=>[o(E,{checked:l.is_active,"onUpdate:checked":e[23]||(e[23]=t=>l.is_active=t)},null,8,["checked"])]),_:1})]),o(i,{label:"توضیحات"},{default:a(()=>[o(T,{value:l.description,"onUpdate:value":e[24]||(e[24]=t=>l.description=t),"auto-size":{minRows:3,maxRows:6}},null,8,["value"])]),_:1}),o(Q,{type:"primary",class:"form-submit",onClick:F},{default:a(()=>[...e[37]||(e[37]=[r("ثبت اطلاعات",-1)])]),_:1})]),_:1},8,["title"])]),_:1})]),_:1},8,["spinning"]))}}}),ve=oe(ie,[["__scopeId","data-v-ff6809ef"]]);export{ve as P}; diff --git a/apps/admin-panel/dist/assets/ReagentCustomer-BfWz1HOe.js b/apps/admin-panel/dist/assets/ReagentCustomer-CN5vQurl.js similarity index 94% rename from apps/admin-panel/dist/assets/ReagentCustomer-BfWz1HOe.js rename to apps/admin-panel/dist/assets/ReagentCustomer-CN5vQurl.js index 94cd44b..a9202cb 100644 --- a/apps/admin-panel/dist/assets/ReagentCustomer-BfWz1HOe.js +++ b/apps/admin-panel/dist/assets/ReagentCustomer-CN5vQurl.js @@ -1 +1 @@ -import{d as j,x as q,y as g,a as J,w as i,k as I,m as R,z as O,r as _,o as A,c as l,p as t,h as m,V as B,f as U,W as P,H as F,l as M,J as S,_ as T}from"./index-CJij4X3l.js";import{_ as D}from"./CityTreeSelect.vue_vue_type_script_setup_true_lang-7y8zYJ_W.js";import{_ as H}from"./ImageUploadInput.vue_vue_type_script_setup_true_lang-vRgyyG7o.js";import{U as L}from"./UserOutlined-yq90mQcC.js";import{S as Q}from"./ShopOutlined-B63CHExu.js";import{E as W}from"./EnvironmentOutlined-Cetl6vFW.js";import{C as X}from"./CameraOutlined-BcxYWwtK.js";import{P as G}from"./PercentageOutlined-CtwjLYTJ.js";const K={class:"pf-layout"},Y={class:"pf-main"},Z={class:"pf-section"},ee={class:"pf-section__head"},ae={class:"pf-section__icon"},se={class:"pf-grid-2"},te={class:"pf-section"},le={class:"pf-section__head"},ne={class:"pf-section__icon"},oe={class:"pf-grid-3"},ie={class:"pf-section"},de={class:"pf-section__head"},re={class:"pf-section__icon"},ue={class:"pf-side"},pe={class:"pf-section"},me={class:"pf-section__head"},_e={class:"pf-section__icon"},ce={class:"avatar-slot"},fe={class:"pf-section"},ve={class:"pf-section__head"},ge={class:"pf-section__icon"},be={class:"pf-actions"},we={class:"pf-actions__hint"},h="لطفا مقدار را وارد کنید",ye=j({__name:"ReagentCustomer",setup(he){const E=I(),C=M(),p=E.params.id,b=R(!1),a=O({fname:"",lname:"",password:"",mobile:"",mcode:"",store_name:"",pasazh_name:"",address:"",percent:void 0,ncode:"",phone:"",city_id:void 0,gram_level:void 0,image_id:"",image_url:null}),x=R([]),d=O({}),N=O({});function $(r=[]){const e={};for(const[s,n]of Object.entries(a))r.includes(s)||JSON.stringify(n)!==JSON.stringify(N[s])&&(e[s]=n);return e}function z(r){a.image_id=r.id??""}async function V(r){var s;if(a.city_id=r,!r)return;let e=(s=x.value.find(n=>n.id===r))==null?void 0:s.percent;if(!e)try{const{data:n}=await g.get(`cities/get-percent-aux/${r}`);e=n}catch(n){console.log(n);return}a.percent=e==null?void 0:Number(e)}async function k(){var r,e,s,n,w,y;if(Object.keys(d).forEach(u=>delete d[u]),a.fname||(d.fname=h),a.lname||(d.lname=h),a.mobile||(d.mobile=h),!p&&!a.password&&(d.password=h),!Object.keys(d).length)try{b.value=!0;const{image_url:u,...c}=a,f=p?$(["image_url","password"]):c;p&&a.password&&(f.password=a.password);const v={...f,role:"SALES_EXPERT"};(!p||"fname"in f||"lname"in f)&&(v.name=`${a.fname} ${a.lname}`.trim()),p?await g.put(`users/${p}`,v):await g.post("users",v),S.info("اطلاعات با موفقیت به ثبت رسید."),C.go(-1)}catch(u){const c=(n=(s=(e=(r=u==null?void 0:u.response)==null?void 0:r.data)==null?void 0:e.errors)==null?void 0:s.mobile)==null?void 0:n[0];S.error(c??((y=(w=u==null?void 0:u.response)==null?void 0:w.data)==null?void 0:y.message)??"خطا در ثبت اطلاعات.")}finally{b.value=!1}}return q(async()=>{var r,e;try{const{data:s}=await g.post("cities/list",{page:1,limit:500});x.value=(s.rows??[]).map(n=>({id:n.id,title:n.title??n.name,parent:n.parent??null,percent:n.percent===null||n.percent===void 0?null:Number(n.percent)}))}catch(s){console.log(s)}if(p)try{const{data:s}=await g.get(`admin/users/${p}`);Object.assign(a,{fname:s.fname??"",lname:s.lname??"",mobile:s.mobile??"",address:s.address??"",percent:s.percent===null?void 0:Number(s.percent),ncode:s.ncode??"",phone:s.phone??"",city_id:s.city_id??void 0,gram_level:s.gram_level===null||s.gram_level===void 0?void 0:Number(s.gram_level),image_id:((r=s.image)==null?void 0:r.id)??"",image_url:((e=s.image)==null?void 0:e.image)??null,store_name:s.store_name??"",pasazh_name:s.pasazh_name??"",mcode:s.mcode??""}),Object.assign(N,JSON.parse(JSON.stringify(a)))}catch(s){console.log(s)}}),(r,e)=>{const s=_("a-input"),n=_("a-form-item"),w=_("a-input-password"),y=_("a-textarea"),u=_("a-input-number"),c=_("a-button"),f=_("a-form"),v=_("a-spin");return A(),J(v,{spinning:b.value},{default:i(()=>[l(f,{layout:"vertical",class:"pf-form",onSubmit:F(k,["prevent"])},{default:i(()=>[t("div",K,[t("div",Y,[t("section",Z,[t("div",ee,[t("span",ae,[l(m(L))]),e[15]||(e[15]=t("div",null,[t("h3",null,"اطلاعات پایه"),t("p",null,"مشخصات هویتی و اطلاعات ورود کارشناس")],-1))]),t("div",se,[l(n,{label:"نام ",required:"","validate-status":d.fname?"error":"",help:d.fname},{default:i(()=>[l(s,{value:a.fname,"onUpdate:value":e[0]||(e[0]=o=>a.fname=o)},null,8,["value"])]),_:1},8,["validate-status","help"]),l(n,{label:"نام خانوادگی",required:"","validate-status":d.lname?"error":"",help:d.lname},{default:i(()=>[l(s,{value:a.lname,"onUpdate:value":e[1]||(e[1]=o=>a.lname=o)},null,8,["value"])]),_:1},8,["validate-status","help"]),l(n,{label:"کد ملی"},{default:i(()=>[l(s,{value:a.ncode,"onUpdate:value":e[2]||(e[2]=o=>a.ncode=o),class:"ltr-input",inputmode:"numeric"},null,8,["value"])]),_:1}),l(n,{label:"تلفن"},{default:i(()=>[l(s,{value:a.phone,"onUpdate:value":e[3]||(e[3]=o=>a.phone=o),class:"ltr-input",inputmode:"tel"},null,8,["value"])]),_:1}),l(n,{label:"شماره تلفن همراه",required:"","validate-status":d.mobile?"error":"",help:d.mobile,class:"mb-0"},{default:i(()=>[l(s,{value:a.mobile,"onUpdate:value":e[4]||(e[4]=o=>a.mobile=o),class:"ltr-input",inputmode:"tel",placeholder:"09xxxxxxxxx"},null,8,["value"])]),_:1},8,["validate-status","help"]),l(n,{label:"رمز عبور",required:!m(p),"validate-status":d.password?"error":"",help:d.password,class:"mb-0"},{default:i(()=>[l(w,{value:a.password,"onUpdate:value":e[5]||(e[5]=o=>a.password=o)},null,8,["value"])]),_:1},8,["required","validate-status","help"])])]),t("section",te,[t("div",le,[t("span",ne,[l(m(Q))]),e[16]||(e[16]=t("div",null,[t("h3",null,"اطلاعات تجاری"),t("p",null,"کد و مشخصات فروشگاه")],-1))]),t("div",oe,[l(n,{label:"کد مشتری",class:"mb-0"},{default:i(()=>[l(s,{value:a.mcode,"onUpdate:value":e[6]||(e[6]=o=>a.mcode=o)},null,8,["value"])]),_:1}),l(n,{label:"نام مغازه",class:"mb-0"},{default:i(()=>[l(s,{value:a.store_name,"onUpdate:value":e[7]||(e[7]=o=>a.store_name=o)},null,8,["value"])]),_:1}),l(n,{label:"نام پاساژ",class:"mb-0"},{default:i(()=>[l(s,{value:a.pasazh_name,"onUpdate:value":e[8]||(e[8]=o=>a.pasazh_name=o)},null,8,["value"])]),_:1})])]),t("section",ie,[t("div",de,[t("span",re,[l(m(W))]),e[17]||(e[17]=t("div",null,[t("h3",null,"آدرس"),t("p",null,"انتخاب شهر، درصد کمیسیون را بر اساس همان شهر پر می‌کند")],-1))]),l(n,{label:"شهر"},{default:i(()=>[l(D,{value:a.city_id,cities:x.value,placeholder:"شهر را انتخاب نمایید",onChange:V},null,8,["value","cities"])]),_:1}),l(n,{label:"آدرس",class:"mb-0"},{default:i(()=>[l(y,{value:a.address,"onUpdate:value":e[9]||(e[9]=o=>a.address=o),"auto-size":{minRows:3,maxRows:5}},null,8,["value"])]),_:1})])]),t("aside",ue,[t("section",pe,[t("div",me,[t("span",_e,[l(m(X))]),e[18]||(e[18]=t("div",null,[t("h3",null,"عکس پروفایل"),t("p",null,"تصویر نمایش داده‌شده برای کارشناس")],-1))]),t("div",ce,[l(H,{modelValue:a.image_url,"onUpdate:modelValue":[e[10]||(e[10]=o=>a.image_url=o),e[11]||(e[11]=o=>{o||(a.image_id="")})],purpose:"reagent.avatar",placeholder:"عکس",onOk:z},null,8,["modelValue"])])]),t("section",fe,[t("div",ve,[t("span",ge,[l(m(G))]),e[19]||(e[19]=t("div",null,[t("h3",null,"کمیسیون و اعتبار"),t("p",null,"درصد کمیسیون و سقف اعتبار")],-1))]),l(n,{label:"درصد کمیسیون"},{default:i(()=>[l(u,{value:a.percent,"onUpdate:value":e[12]||(e[12]=o=>a.percent=o),class:"w-full",step:.1,"addon-after":"٪"},null,8,["value"])]),_:1}),l(n,{label:"سقف اعتبار",class:"mb-0"},{default:i(()=>[l(u,{value:a.gram_level,"onUpdate:value":e[13]||(e[13]=o=>a.gram_level=o),class:"w-full","addon-after":"گرم"},null,8,["value"])]),_:1})])])]),t("div",be,[t("span",we,[l(m(B)),e[20]||(e[20]=U(" فیلدهای ستاره‌دار الزامی هستند.",-1))]),l(c,{onClick:e[14]||(e[14]=o=>m(C).go(-1))},{default:i(()=>[...e[21]||(e[21]=[U("انصراف",-1)])]),_:1}),l(c,{type:"primary",class:"form-submit",loading:b.value,onClick:k},{icon:i(()=>[l(m(P))]),default:i(()=>[e[22]||(e[22]=U(" ثبت اطلاعات ",-1))]),_:1},8,["loading"])])]),_:1})]),_:1},8,["spinning"])}}}),Ee=T(ye,[["__scopeId","data-v-78564364"]]);export{Ee as R}; +import{d as j,x as q,y as g,a as J,w as i,k as I,m as R,z as O,r as _,o as A,c as l,p as t,h as m,V as B,f as U,W as P,H as F,l as M,J as S,_ as T}from"./index-CpVArufm.js";import{_ as D}from"./CityTreeSelect.vue_vue_type_script_setup_true_lang-BtBj3fof.js";import{_ as H}from"./ImageUploadInput.vue_vue_type_script_setup_true_lang-B9gVJPft.js";import{U as L}from"./UserOutlined-DeX82IP7.js";import{S as Q}from"./ShopOutlined-D8LgPxHa.js";import{E as W}from"./EnvironmentOutlined-BZFp8i4M.js";import{C as X}from"./CameraOutlined-JfS-rAEW.js";import{P as G}from"./PercentageOutlined-IS1MVcbY.js";const K={class:"pf-layout"},Y={class:"pf-main"},Z={class:"pf-section"},ee={class:"pf-section__head"},ae={class:"pf-section__icon"},se={class:"pf-grid-2"},te={class:"pf-section"},le={class:"pf-section__head"},ne={class:"pf-section__icon"},oe={class:"pf-grid-3"},ie={class:"pf-section"},de={class:"pf-section__head"},re={class:"pf-section__icon"},ue={class:"pf-side"},pe={class:"pf-section"},me={class:"pf-section__head"},_e={class:"pf-section__icon"},ce={class:"avatar-slot"},fe={class:"pf-section"},ve={class:"pf-section__head"},ge={class:"pf-section__icon"},be={class:"pf-actions"},we={class:"pf-actions__hint"},h="لطفا مقدار را وارد کنید",ye=j({__name:"ReagentCustomer",setup(he){const E=I(),C=M(),p=E.params.id,b=R(!1),a=O({fname:"",lname:"",password:"",mobile:"",mcode:"",store_name:"",pasazh_name:"",address:"",percent:void 0,ncode:"",phone:"",city_id:void 0,gram_level:void 0,image_id:"",image_url:null}),x=R([]),d=O({}),N=O({});function $(r=[]){const e={};for(const[s,n]of Object.entries(a))r.includes(s)||JSON.stringify(n)!==JSON.stringify(N[s])&&(e[s]=n);return e}function z(r){a.image_id=r.id??""}async function V(r){var s;if(a.city_id=r,!r)return;let e=(s=x.value.find(n=>n.id===r))==null?void 0:s.percent;if(!e)try{const{data:n}=await g.get(`cities/get-percent-aux/${r}`);e=n}catch(n){console.log(n);return}a.percent=e==null?void 0:Number(e)}async function k(){var r,e,s,n,w,y;if(Object.keys(d).forEach(u=>delete d[u]),a.fname||(d.fname=h),a.lname||(d.lname=h),a.mobile||(d.mobile=h),!p&&!a.password&&(d.password=h),!Object.keys(d).length)try{b.value=!0;const{image_url:u,...c}=a,f=p?$(["image_url","password"]):c;p&&a.password&&(f.password=a.password);const v={...f,role:"SALES_EXPERT"};(!p||"fname"in f||"lname"in f)&&(v.name=`${a.fname} ${a.lname}`.trim()),p?await g.put(`users/${p}`,v):await g.post("users",v),S.info("اطلاعات با موفقیت به ثبت رسید."),C.go(-1)}catch(u){const c=(n=(s=(e=(r=u==null?void 0:u.response)==null?void 0:r.data)==null?void 0:e.errors)==null?void 0:s.mobile)==null?void 0:n[0];S.error(c??((y=(w=u==null?void 0:u.response)==null?void 0:w.data)==null?void 0:y.message)??"خطا در ثبت اطلاعات.")}finally{b.value=!1}}return q(async()=>{var r,e;try{const{data:s}=await g.post("cities/list",{page:1,limit:500});x.value=(s.rows??[]).map(n=>({id:n.id,title:n.title??n.name,parent:n.parent??null,percent:n.percent===null||n.percent===void 0?null:Number(n.percent)}))}catch(s){console.log(s)}if(p)try{const{data:s}=await g.get(`admin/users/${p}`);Object.assign(a,{fname:s.fname??"",lname:s.lname??"",mobile:s.mobile??"",address:s.address??"",percent:s.percent===null?void 0:Number(s.percent),ncode:s.ncode??"",phone:s.phone??"",city_id:s.city_id??void 0,gram_level:s.gram_level===null||s.gram_level===void 0?void 0:Number(s.gram_level),image_id:((r=s.image)==null?void 0:r.id)??"",image_url:((e=s.image)==null?void 0:e.image)??null,store_name:s.store_name??"",pasazh_name:s.pasazh_name??"",mcode:s.mcode??""}),Object.assign(N,JSON.parse(JSON.stringify(a)))}catch(s){console.log(s)}}),(r,e)=>{const s=_("a-input"),n=_("a-form-item"),w=_("a-input-password"),y=_("a-textarea"),u=_("a-input-number"),c=_("a-button"),f=_("a-form"),v=_("a-spin");return A(),J(v,{spinning:b.value},{default:i(()=>[l(f,{layout:"vertical",class:"pf-form",onSubmit:F(k,["prevent"])},{default:i(()=>[t("div",K,[t("div",Y,[t("section",Z,[t("div",ee,[t("span",ae,[l(m(L))]),e[15]||(e[15]=t("div",null,[t("h3",null,"اطلاعات پایه"),t("p",null,"مشخصات هویتی و اطلاعات ورود کارشناس")],-1))]),t("div",se,[l(n,{label:"نام ",required:"","validate-status":d.fname?"error":"",help:d.fname},{default:i(()=>[l(s,{value:a.fname,"onUpdate:value":e[0]||(e[0]=o=>a.fname=o)},null,8,["value"])]),_:1},8,["validate-status","help"]),l(n,{label:"نام خانوادگی",required:"","validate-status":d.lname?"error":"",help:d.lname},{default:i(()=>[l(s,{value:a.lname,"onUpdate:value":e[1]||(e[1]=o=>a.lname=o)},null,8,["value"])]),_:1},8,["validate-status","help"]),l(n,{label:"کد ملی"},{default:i(()=>[l(s,{value:a.ncode,"onUpdate:value":e[2]||(e[2]=o=>a.ncode=o),class:"ltr-input",inputmode:"numeric"},null,8,["value"])]),_:1}),l(n,{label:"تلفن"},{default:i(()=>[l(s,{value:a.phone,"onUpdate:value":e[3]||(e[3]=o=>a.phone=o),class:"ltr-input",inputmode:"tel"},null,8,["value"])]),_:1}),l(n,{label:"شماره تلفن همراه",required:"","validate-status":d.mobile?"error":"",help:d.mobile,class:"mb-0"},{default:i(()=>[l(s,{value:a.mobile,"onUpdate:value":e[4]||(e[4]=o=>a.mobile=o),class:"ltr-input",inputmode:"tel",placeholder:"09xxxxxxxxx"},null,8,["value"])]),_:1},8,["validate-status","help"]),l(n,{label:"رمز عبور",required:!m(p),"validate-status":d.password?"error":"",help:d.password,class:"mb-0"},{default:i(()=>[l(w,{value:a.password,"onUpdate:value":e[5]||(e[5]=o=>a.password=o)},null,8,["value"])]),_:1},8,["required","validate-status","help"])])]),t("section",te,[t("div",le,[t("span",ne,[l(m(Q))]),e[16]||(e[16]=t("div",null,[t("h3",null,"اطلاعات تجاری"),t("p",null,"کد و مشخصات فروشگاه")],-1))]),t("div",oe,[l(n,{label:"کد مشتری",class:"mb-0"},{default:i(()=>[l(s,{value:a.mcode,"onUpdate:value":e[6]||(e[6]=o=>a.mcode=o)},null,8,["value"])]),_:1}),l(n,{label:"نام مغازه",class:"mb-0"},{default:i(()=>[l(s,{value:a.store_name,"onUpdate:value":e[7]||(e[7]=o=>a.store_name=o)},null,8,["value"])]),_:1}),l(n,{label:"نام پاساژ",class:"mb-0"},{default:i(()=>[l(s,{value:a.pasazh_name,"onUpdate:value":e[8]||(e[8]=o=>a.pasazh_name=o)},null,8,["value"])]),_:1})])]),t("section",ie,[t("div",de,[t("span",re,[l(m(W))]),e[17]||(e[17]=t("div",null,[t("h3",null,"آدرس"),t("p",null,"انتخاب شهر، درصد کمیسیون را بر اساس همان شهر پر می‌کند")],-1))]),l(n,{label:"شهر"},{default:i(()=>[l(D,{value:a.city_id,cities:x.value,placeholder:"شهر را انتخاب نمایید",onChange:V},null,8,["value","cities"])]),_:1}),l(n,{label:"آدرس",class:"mb-0"},{default:i(()=>[l(y,{value:a.address,"onUpdate:value":e[9]||(e[9]=o=>a.address=o),"auto-size":{minRows:3,maxRows:5}},null,8,["value"])]),_:1})])]),t("aside",ue,[t("section",pe,[t("div",me,[t("span",_e,[l(m(X))]),e[18]||(e[18]=t("div",null,[t("h3",null,"عکس پروفایل"),t("p",null,"تصویر نمایش داده‌شده برای کارشناس")],-1))]),t("div",ce,[l(H,{modelValue:a.image_url,"onUpdate:modelValue":[e[10]||(e[10]=o=>a.image_url=o),e[11]||(e[11]=o=>{o||(a.image_id="")})],purpose:"reagent.avatar",placeholder:"عکس",onOk:z},null,8,["modelValue"])])]),t("section",fe,[t("div",ve,[t("span",ge,[l(m(G))]),e[19]||(e[19]=t("div",null,[t("h3",null,"کمیسیون و اعتبار"),t("p",null,"درصد کمیسیون و سقف اعتبار")],-1))]),l(n,{label:"درصد کمیسیون"},{default:i(()=>[l(u,{value:a.percent,"onUpdate:value":e[12]||(e[12]=o=>a.percent=o),class:"w-full",step:.1,"addon-after":"٪"},null,8,["value"])]),_:1}),l(n,{label:"سقف اعتبار",class:"mb-0"},{default:i(()=>[l(u,{value:a.gram_level,"onUpdate:value":e[13]||(e[13]=o=>a.gram_level=o),class:"w-full","addon-after":"گرم"},null,8,["value"])]),_:1})])])]),t("div",be,[t("span",we,[l(m(B)),e[20]||(e[20]=U(" فیلدهای ستاره‌دار الزامی هستند.",-1))]),l(c,{onClick:e[14]||(e[14]=o=>m(C).go(-1))},{default:i(()=>[...e[21]||(e[21]=[U("انصراف",-1)])]),_:1}),l(c,{type:"primary",class:"form-submit",loading:b.value,onClick:k},{icon:i(()=>[l(m(P))]),default:i(()=>[e[22]||(e[22]=U(" ثبت اطلاعات ",-1))]),_:1},8,["loading"])])]),_:1})]),_:1},8,["spinning"])}}}),Ee=T(ye,[["__scopeId","data-v-78564364"]]);export{Ee as R}; diff --git a/apps/admin-panel/dist/assets/ReagentList-C0dDuwVE.js b/apps/admin-panel/dist/assets/ReagentList-B_8NugUa.js similarity index 84% rename from apps/admin-panel/dist/assets/ReagentList-C0dDuwVE.js rename to apps/admin-panel/dist/assets/ReagentList-B_8NugUa.js index 2988698..a3229b7 100644 --- a/apps/admin-panel/dist/assets/ReagentList-C0dDuwVE.js +++ b/apps/admin-panel/dist/assets/ReagentList-B_8NugUa.js @@ -1 +1 @@ -import{u as g,d as B,b as _,c as d,w as o,r as v,o as n,h as V,p as X,a as r,i as l,f as k,t as w,m as E,l as I,y as j,J as b}from"./index-CJij4X3l.js";import{a as A,b as s,X as D}from"./model-tqsMDjkK.js";import{_ as m}from"./TooltipBtn.vue_vue_type_script_setup_true_lang-xFR71kab.js";import{_ as R}from"./ListPageHeader.vue_vue_type_script_setup_true_lang-D07Lc14a.js";import"./filters-BPYO-DKN.js";import"./index-CKg-8s_Z.js";import"./SettingOutlined-BJxMXy1I.js";import"./icons-BplZzYUR.js";import"./UnorderedListOutlined-CHqEItu3.js";import"./PercentageOutlined-CtwjLYTJ.js";import"./UserAddOutlined-Dac4nUC8.js";import"./CreditCardOutlined-Cz1giwnr.js";import"./AppstoreOutlined-DvD8zs_r.js";import"./TeamOutlined-Bdydtt7N.js";import"./UserOutlined-yq90mQcC.js";import"./CameraOutlined-BcxYWwtK.js";function F(){const c=g();Object.keys(c.cityFilters).length<1&&c.getCities();const e=new A("admin/customers-omde/reagent/list","لیست کارشناسان فروش");return e.add(new s("id","کد").filterNumber()),e.add(new s("lname","نام خانوادگی").filterText().hidden()),e.add(new s("name","نام و نام خانوادگی").filterText()),e.add(new s("name","نام").filterText().hidden()),e.add(new s("mobile","موبایل").filterText().hidden().noSort()),e.add(new s("city_id","شهر").hidden().renderSlot("city").filterKey("city_id").filterSelect(c.cityFilters)),e.add(new s("gram_level","سطح اعتبار").filterNumber().noSort()),e.add(new s("percent","درصد").filterNumber().noSort()),e.add(new s("remain","بدهی گرمی").filterNumber().noSort()),e.add(new s("rial_remain","بدهی ریالی").filterNumber().noSort()),e.add(new s("grams_sell","میزان فروش").filterNumber().noSort()),e.add(new s("caj","تاریخ ثبت").filterDate().noSort()),e.add(new s("uaj","بروزرسانی").hidden().filterDate().noSort()),e.add(new s("sts_str","وضعیت ثبت سفارش").renderSlot("sts").noSort()),e.add(new s("active","وضعیت حساب کاربری").renderSlot("active").noSort().filterSelect({1:"فعال","-1":"غیر فعال"})),e.add(new s("opt","عملیات").noSort().renderSlot("opt")),e}const L={id:"page-user-list"},P={key:0},J={key:1},K={class:"flex"},ne=B({__name:"ReagentList",setup(c){const e=I(),S=g(),a=i=>!!S.hasPermission(i),x=F(),h=E(null);async function y(i){var u;try{await j.put(`users/${i.id}`,{is_active:i.active!==1}),b.info("تغییرات ثبت شد "),await((u=h.value)==null?void 0:u.fetch())}catch{b.error("خطا در تغییر وضعیت")}}function C(){e.push("/reagent/add")}function N(i){e.push(`/reagent/edit/${i}`)}function $(i){e.push(`/reagent/view/${i}`)}return(i,u)=>{const p=v("a-tag"),T=v("a-card");return n(),_("div",L,[d(T,{title:"لیست کارشناسان فروش",class:"page-card"},{default:o(()=>[d(D,{ref_key:"tbl",ref:h,model:V(x),"mobile-cards":""},{add:o(()=>[a("persons.create.seller")?(n(),r(R,{key:0,rid:"persons.create.seller","add-label":"افزودن کارشناس فروش",onAdd:C})):l("",!0)]),city:o(({record:t})=>[t.city&&t.city.title?(n(),_("div",P,w(t.city.title),1)):(n(),_("div",J,"-"))]),sts:o(({record:t})=>[d(p,{color:t.sts===1?"green":"red"},{default:o(()=>[k(w(t.sts_str),1)]),_:2},1032,["color"])]),active:o(({record:t})=>[d(p,{color:t.active===1?"green":"red"},{default:o(()=>[k(w(t.active===1?"فعال":"غیر فعال"),1)]),_:2},1032,["color"])]),opt:o(({record:t})=>[X("div",K,[a("persons.list.sellers.edit")?(n(),r(m,{key:0,"icon-class":"w-5 h-5 text-primary",class:"ml-3",icon:"EditIcon",title:"ویرایش",onClick:f=>N(t.id)},null,8,["onClick"])):l("",!0),a("persons.list.sellers.view")?(n(),r(m,{key:1,"icon-class":"w-5 h-5 text-success",class:"ml-3",icon:"EyeIcon",title:"مشاهده اطلاعات",onClick:f=>$(t.id)},null,8,["onClick"])):l("",!0),t.active==1&&a("persons.list.sellers.unable")?(n(),r(m,{key:2,"icon-class":"w-5 h-5 text-danger",class:"ml-3",icon:"XIcon",title:"غیر فعال کردن حساب کاربری","pop-title":"آیا مطمئن هستید؟",onClick:f=>y(t)},null,8,["onClick"])):l("",!0),t.active!==1&&a("persons.list.sellers.able")?(n(),r(m,{key:3,"icon-class":"w-5 h-5 text-success",class:"ml-3",icon:"CheckIcon",title:"فعال سازی حساب کاربری","pop-title":"آیا مطمئن هستید؟",onClick:f=>y(t)},null,8,["onClick"])):l("",!0)])]),_:1},8,["model"])]),_:1})])}}});export{ne as default}; +import{u as g,d as B,b as _,c as d,w as o,r as v,o as n,h as V,p as X,a as r,i as l,f as k,t as w,m as E,l as I,y as j,J as b}from"./index-CpVArufm.js";import{a as A,b as s,X as D}from"./model-mwiDYd1J.js";import{_ as m}from"./TooltipBtn.vue_vue_type_script_setup_true_lang-DuvVMhj7.js";import{_ as R}from"./ListPageHeader.vue_vue_type_script_setup_true_lang-YlEXklTr.js";import"./filters-CoNJlguG.js";import"./index-DjZc5EYL.js";import"./SettingOutlined-E4OknxY2.js";import"./icons-BRqF3liF.js";import"./UnorderedListOutlined-CLUl5bxX.js";import"./PercentageOutlined-IS1MVcbY.js";import"./UserAddOutlined-Bpe7Keo_.js";import"./CreditCardOutlined-CIq9Sdft.js";import"./AppstoreOutlined-BRgpp4c5.js";import"./TeamOutlined-DL6Ofm69.js";import"./UserOutlined-DeX82IP7.js";import"./CameraOutlined-JfS-rAEW.js";function F(){const c=g();Object.keys(c.cityFilters).length<1&&c.getCities();const e=new A("admin/customers-omde/reagent/list","لیست کارشناسان فروش");return e.add(new s("id","کد").filterNumber()),e.add(new s("lname","نام خانوادگی").filterText().hidden()),e.add(new s("name","نام و نام خانوادگی").filterText()),e.add(new s("name","نام").filterText().hidden()),e.add(new s("mobile","موبایل").filterText().hidden().noSort()),e.add(new s("city_id","شهر").hidden().renderSlot("city").filterKey("city_id").filterSelect(c.cityFilters)),e.add(new s("gram_level","سطح اعتبار").filterNumber().noSort()),e.add(new s("percent","درصد").filterNumber().noSort()),e.add(new s("remain","بدهی گرمی").filterNumber().noSort()),e.add(new s("rial_remain","بدهی ریالی").filterNumber().noSort()),e.add(new s("grams_sell","میزان فروش").filterNumber().noSort()),e.add(new s("caj","تاریخ ثبت").filterDate().noSort()),e.add(new s("uaj","بروزرسانی").hidden().filterDate().noSort()),e.add(new s("sts_str","وضعیت ثبت سفارش").renderSlot("sts").noSort()),e.add(new s("active","وضعیت حساب کاربری").renderSlot("active").noSort().filterSelect({1:"فعال","-1":"غیر فعال"})),e.add(new s("opt","عملیات").noSort().renderSlot("opt")),e}const L={id:"page-user-list"},P={key:0},J={key:1},K={class:"flex"},ne=B({__name:"ReagentList",setup(c){const e=I(),S=g(),a=i=>!!S.hasPermission(i),x=F(),h=E(null);async function y(i){var u;try{await j.put(`users/${i.id}`,{is_active:i.active!==1}),b.info("تغییرات ثبت شد "),await((u=h.value)==null?void 0:u.fetch())}catch{b.error("خطا در تغییر وضعیت")}}function C(){e.push("/reagent/add")}function N(i){e.push(`/reagent/edit/${i}`)}function $(i){e.push(`/reagent/view/${i}`)}return(i,u)=>{const p=v("a-tag"),T=v("a-card");return n(),_("div",L,[d(T,{title:"لیست کارشناسان فروش",class:"page-card"},{default:o(()=>[d(D,{ref_key:"tbl",ref:h,model:V(x),"mobile-cards":""},{add:o(()=>[a("persons.create.seller")?(n(),r(R,{key:0,rid:"persons.create.seller","add-label":"افزودن کارشناس فروش",onAdd:C})):l("",!0)]),city:o(({record:t})=>[t.city&&t.city.title?(n(),_("div",P,w(t.city.title),1)):(n(),_("div",J,"-"))]),sts:o(({record:t})=>[d(p,{color:t.sts===1?"green":"red"},{default:o(()=>[k(w(t.sts_str),1)]),_:2},1032,["color"])]),active:o(({record:t})=>[d(p,{color:t.active===1?"green":"red"},{default:o(()=>[k(w(t.active===1?"فعال":"غیر فعال"),1)]),_:2},1032,["color"])]),opt:o(({record:t})=>[X("div",K,[a("persons.list.sellers.edit")?(n(),r(m,{key:0,"icon-class":"w-5 h-5 text-primary",class:"ml-3",icon:"EditIcon",title:"ویرایش",onClick:f=>N(t.id)},null,8,["onClick"])):l("",!0),a("persons.list.sellers.view")?(n(),r(m,{key:1,"icon-class":"w-5 h-5 text-success",class:"ml-3",icon:"EyeIcon",title:"مشاهده اطلاعات",onClick:f=>$(t.id)},null,8,["onClick"])):l("",!0),t.active==1&&a("persons.list.sellers.unable")?(n(),r(m,{key:2,"icon-class":"w-5 h-5 text-danger",class:"ml-3",icon:"XIcon",title:"غیر فعال کردن حساب کاربری","pop-title":"آیا مطمئن هستید؟",onClick:f=>y(t)},null,8,["onClick"])):l("",!0),t.active!==1&&a("persons.list.sellers.able")?(n(),r(m,{key:3,"icon-class":"w-5 h-5 text-success",class:"ml-3",icon:"CheckIcon",title:"فعال سازی حساب کاربری","pop-title":"آیا مطمئن هستید؟",onClick:f=>y(t)},null,8,["onClick"])):l("",!0)])]),_:1},8,["model"])]),_:1})])}}});export{ne as default}; diff --git a/apps/admin-panel/dist/assets/SafetyCertificateOutlined-Cr8bqGKo.js b/apps/admin-panel/dist/assets/SafetyCertificateOutlined-mD-ddSP4.js similarity index 95% rename from apps/admin-panel/dist/assets/SafetyCertificateOutlined-Cr8bqGKo.js rename to apps/admin-panel/dist/assets/SafetyCertificateOutlined-mD-ddSP4.js index 580a784..30d34b9 100644 --- a/apps/admin-panel/dist/assets/SafetyCertificateOutlined-Cr8bqGKo.js +++ b/apps/admin-panel/dist/assets/SafetyCertificateOutlined-mD-ddSP4.js @@ -1 +1 @@ -import{c as f,I as l}from"./index-CJij4X3l.js";var u={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M866.9 169.9L527.1 54.1C523 52.7 517.5 52 512 52s-11 .7-15.1 2.1L157.1 169.9c-8.3 2.8-15.1 12.4-15.1 21.2v482.4c0 8.8 5.7 20.4 12.6 25.9L499.3 968c3.5 2.7 8 4.1 12.6 4.1s9.2-1.4 12.6-4.1l344.7-268.6c6.9-5.4 12.6-17 12.6-25.9V191.1c.2-8.8-6.6-18.3-14.9-21.2zM810 654.3L512 886.5 214 654.3V226.7l298-101.6 298 101.6v427.6zm-405.8-201c-3-4.1-7.8-6.6-13-6.6H336c-6.5 0-10.3 7.4-6.5 12.7l126.4 174a16.1 16.1 0 0026 0l212.6-292.7c3.8-5.3 0-12.7-6.5-12.7h-55.2c-5.1 0-10 2.5-13 6.6L468.9 542.4l-64.7-89.1z"}}]},name:"safety-certificate",theme:"outlined"};function c(r){for(var t=1;t(a(),s(m,{title:t(o),model:t(e)},null,8,["title","model"]))}});export{j as default}; diff --git a/apps/admin-panel/dist/assets/ShopkeeperList-BhINz1-X.js b/apps/admin-panel/dist/assets/ShopkeeperList-BhINz1-X.js new file mode 100644 index 0000000..8f79f2d --- /dev/null +++ b/apps/admin-panel/dist/assets/ShopkeeperList-BhINz1-X.js @@ -0,0 +1 @@ +import{b as r,O as p,a as m}from"./OmdeCustomerList-BnaQmi8j.js";import{d as i,a as s,h as t,o as a}from"./index-CpVArufm.js";import"./index-DjZc5EYL.js";import"./model-mwiDYd1J.js";import"./filters-CoNJlguG.js";import"./SettingOutlined-E4OknxY2.js";import"./ListPageHeader.vue_vue_type_script_setup_true_lang-YlEXklTr.js";import"./AccountingSyncButton.vue_vue_type_script_setup_true_lang-wE6MaQCK.js";import"./bulkCustomer.vue_vue_type_script_setup_true_lang-Bh7ptZgl.js";import"./select--BgT6D7O.js";import"./BaseFormModal.vue_vue_type_style_index_0_lang-B4iVMhZt.js";import"./ImageUploadInput.vue_vue_type_script_setup_true_lang-B9gVJPft.js";import"./CityTreeSelect.vue_vue_type_script_setup_true_lang-BtBj3fof.js";import"./DateInput-0_1fMgrR.js";import"./UserOutlined-DeX82IP7.js";import"./ShopOutlined-D8LgPxHa.js";import"./EnvironmentOutlined-BZFp8i4M.js";import"./PercentageOutlined-IS1MVcbY.js";import"./SafetyCertificateOutlined-mD-ddSP4.js";import"./UnorderedListOutlined-CLUl5bxX.js";const q=i({__name:"ShopkeeperList",setup(l){const o=p.shopkeeper.title,e=r("shopkeeper");return(n,c)=>(a(),s(m,{title:t(o),model:t(e)},null,8,["title","model"]))}});export{q as default}; diff --git a/apps/admin-panel/dist/assets/SingleCustomer-B9GIcC68.js b/apps/admin-panel/dist/assets/SingleCustomer-CZrbY03b.js similarity index 92% rename from apps/admin-panel/dist/assets/SingleCustomer-B9GIcC68.js rename to apps/admin-panel/dist/assets/SingleCustomer-CZrbY03b.js index 87c0dcc..a85df0c 100644 --- a/apps/admin-panel/dist/assets/SingleCustomer-B9GIcC68.js +++ b/apps/admin-panel/dist/assets/SingleCustomer-CZrbY03b.js @@ -1 +1 @@ -import{d as F,u as J,a as m,w as t,s as L,r as l,o as p,c as o,h as f,E as M,i as w,R as W,p as j,f as q,m as d,J as b,y as z,l as A,X as D,_ as G}from"./index-CJij4X3l.js";import{a as H,b as u,X as Q}from"./model-tqsMDjkK.js";import{C as Y}from"./CreditCardOutlined-Cz1giwnr.js";import"./filters-BPYO-DKN.js";import"./index-CKg-8s_Z.js";import"./SettingOutlined-BJxMXy1I.js";function Z(){const a=new H("admin/customers-omde/single/list","لیست مشتریان تک");return a.add(new u("id","کد").filterNumber()),a.add(new u("fname","نام").filterKey("fullName").filterText()),a.add(new u("lname","نام خانوادگی").filterKey("fullName").filterText().noSort()),a.add(new u("phone","تلفن تماس").filterKey("mobile").filterText().noSort()),a.add(new u("email","ایمیل").filterText().noSort()),a.add(new u("branch.name","نام شعبه").filterText().noSort()),a.add(new u("op","عملیات").noSort().renderSlot("op")),a}const ee={class:"charge-grid"},te=F({__name:"SingleCustomer",setup(a){const _=A(),y=J(),v=e=>!!y.hasPermission(e),k=Z(),S=d(null),h=L(()=>D()),c=d(!1),g=d(!1),r=d(void 0),C=d(void 0);function T(e){C.value=e,r.value=void 0,c.value=!0}function N(){r.value=void 0,c.value=!1}async function V(){var e,n;if(!C.value||!r.value){b.error("لطفا مقدار را وارد کنید");return}try{g.value=!0,await z.post("wallet/charge",{customer_id:C.value,value:r.value}),b.info("عملیات با موفقیت انجام شد"),c.value=!1,r.value=void 0,await _.push("/wallet")}catch(s){console.log(s),b.error(((n=(e=s==null?void 0:s.response)==null?void 0:e.data)==null?void 0:n.message)??"خطا در ثبت اطلاعات.")}finally{g.value=!1}}function B(e){_.push(`/singleCustomer/edit/${e}`)}function X(e){_.push(`/singleCustomer/view/${e}`)}return(e,n)=>{const s=l("a-tooltip"),$=l("a-input-number"),E=l("a-form-item"),K=l("a-button"),O=l("a-popconfirm"),U=l("a-form"),I=l("a-spin"),P=l("a-modal"),R=l("a-card");return p(),m(R,{title:h.value?"لیست مشتریان":"لیست مشتریان تک فروشی",class:"page-card"},{default:t(()=>[o(Q,{ref_key:"tbl",ref:S,model:f(k),"mobile-cards":""},{op:t(({record:i})=>[o(s,{title:"ویرایش"},{default:t(()=>[o(f(M),{class:"cursor-pointer mx-1 text-primary",onClick:x=>B(i.id)},null,8,["onClick"])]),_:2},1024),v("wallet.charge")&&!h.value?(p(),m(s,{key:0,title:"شارژ کیف پول"},{default:t(()=>[o(f(Y),{class:"cursor-pointer mx-1",style:{color:"#d48806"},onClick:x=>T(i.id)},null,8,["onClick"])]),_:2},1024)):w("",!0),v("wallet.charge")?(p(),m(s,{key:1,title:"مشاهده اطلاعات"},{default:t(()=>[o(f(W),{class:"cursor-pointer mx-1 text-success",onClick:x=>X(i.id)},null,8,["onClick"])]),_:2},1024)):w("",!0)]),_:1},8,["model"]),v("wallet.charge")?(p(),m(P,{key:0,open:c.value,"onUpdate:open":n[1]||(n[1]=i=>c.value=i),footer:null,title:"شارژ کیف پول"},{default:t(()=>[o(I,{spinning:g.value},{default:t(()=>[o(U,{layout:"vertical"},{default:t(()=>[j("div",ee,[o(E,{label:"میزان شارژ"},{default:t(()=>[o($,{value:r.value,"onUpdate:value":n[0]||(n[0]=i=>r.value=i),class:"w-full"},null,8,["value"])]),_:1}),o(O,{style:{"margin-bottom":"24px"},title:"آیا از شارژ کیف پول مطمعن هستید؟","ok-text":"بله","cancel-text":"خیر",onConfirm:V,onCancel:N},{default:t(()=>[o(K,{type:"primary"},{default:t(()=>[...n[2]||(n[2]=[q("ثبت",-1)])]),_:1})]),_:1})])]),_:1})]),_:1},8,["spinning"])]),_:1},8,["open"])):w("",!0)]),_:1},8,["title"])}}}),ie=G(te,[["__scopeId","data-v-9bf82b76"]]);export{ie as default}; +import{d as F,u as J,a as m,w as t,s as L,r as l,o as p,c as o,h as f,E as M,i as w,R as W,p as j,f as q,m as d,J as b,y as z,l as A,X as D,_ as G}from"./index-CpVArufm.js";import{a as H,b as u,X as Q}from"./model-mwiDYd1J.js";import{C as Y}from"./CreditCardOutlined-CIq9Sdft.js";import"./filters-CoNJlguG.js";import"./index-DjZc5EYL.js";import"./SettingOutlined-E4OknxY2.js";function Z(){const a=new H("admin/customers-omde/single/list","لیست مشتریان تک");return a.add(new u("id","کد").filterNumber()),a.add(new u("fname","نام").filterKey("fullName").filterText()),a.add(new u("lname","نام خانوادگی").filterKey("fullName").filterText().noSort()),a.add(new u("phone","تلفن تماس").filterKey("mobile").filterText().noSort()),a.add(new u("email","ایمیل").filterText().noSort()),a.add(new u("branch.name","نام شعبه").filterText().noSort()),a.add(new u("op","عملیات").noSort().renderSlot("op")),a}const ee={class:"charge-grid"},te=F({__name:"SingleCustomer",setup(a){const _=A(),y=J(),v=e=>!!y.hasPermission(e),k=Z(),S=d(null),h=L(()=>D()),c=d(!1),g=d(!1),r=d(void 0),C=d(void 0);function T(e){C.value=e,r.value=void 0,c.value=!0}function N(){r.value=void 0,c.value=!1}async function V(){var e,n;if(!C.value||!r.value){b.error("لطفا مقدار را وارد کنید");return}try{g.value=!0,await z.post("wallet/charge",{customer_id:C.value,value:r.value}),b.info("عملیات با موفقیت انجام شد"),c.value=!1,r.value=void 0,await _.push("/wallet")}catch(s){console.log(s),b.error(((n=(e=s==null?void 0:s.response)==null?void 0:e.data)==null?void 0:n.message)??"خطا در ثبت اطلاعات.")}finally{g.value=!1}}function B(e){_.push(`/singleCustomer/edit/${e}`)}function X(e){_.push(`/singleCustomer/view/${e}`)}return(e,n)=>{const s=l("a-tooltip"),$=l("a-input-number"),E=l("a-form-item"),K=l("a-button"),O=l("a-popconfirm"),U=l("a-form"),I=l("a-spin"),P=l("a-modal"),R=l("a-card");return p(),m(R,{title:h.value?"لیست مشتریان":"لیست مشتریان تک فروشی",class:"page-card"},{default:t(()=>[o(Q,{ref_key:"tbl",ref:S,model:f(k),"mobile-cards":""},{op:t(({record:i})=>[o(s,{title:"ویرایش"},{default:t(()=>[o(f(M),{class:"cursor-pointer mx-1 text-primary",onClick:x=>B(i.id)},null,8,["onClick"])]),_:2},1024),v("wallet.charge")&&!h.value?(p(),m(s,{key:0,title:"شارژ کیف پول"},{default:t(()=>[o(f(Y),{class:"cursor-pointer mx-1",style:{color:"#d48806"},onClick:x=>T(i.id)},null,8,["onClick"])]),_:2},1024)):w("",!0),v("wallet.charge")?(p(),m(s,{key:1,title:"مشاهده اطلاعات"},{default:t(()=>[o(f(W),{class:"cursor-pointer mx-1 text-success",onClick:x=>X(i.id)},null,8,["onClick"])]),_:2},1024)):w("",!0)]),_:1},8,["model"]),v("wallet.charge")?(p(),m(P,{key:0,open:c.value,"onUpdate:open":n[1]||(n[1]=i=>c.value=i),footer:null,title:"شارژ کیف پول"},{default:t(()=>[o(I,{spinning:g.value},{default:t(()=>[o(U,{layout:"vertical"},{default:t(()=>[j("div",ee,[o(E,{label:"میزان شارژ"},{default:t(()=>[o($,{value:r.value,"onUpdate:value":n[0]||(n[0]=i=>r.value=i),class:"w-full"},null,8,["value"])]),_:1}),o(O,{style:{"margin-bottom":"24px"},title:"آیا از شارژ کیف پول مطمعن هستید؟","ok-text":"بله","cancel-text":"خیر",onConfirm:V,onCancel:N},{default:t(()=>[o(K,{type:"primary"},{default:t(()=>[...n[2]||(n[2]=[q("ثبت",-1)])]),_:1})]),_:1})])]),_:1})]),_:1},8,["spinning"])]),_:1},8,["open"])):w("",!0)]),_:1},8,["title"])}}}),ie=G(te,[["__scopeId","data-v-9bf82b76"]]);export{ie as default}; diff --git a/apps/admin-panel/dist/assets/TaminList-CebUFGpf.css b/apps/admin-panel/dist/assets/TaminList-CebUFGpf.css new file mode 100644 index 0000000..ce43971 --- /dev/null +++ b/apps/admin-panel/dist/assets/TaminList-CebUFGpf.css @@ -0,0 +1 @@ +.flex-col[data-v-54889367]{flex-direction:column}.flex-1[data-v-54889367]{flex:1}.mr-3[data-v-54889367]{margin-left:.75rem} diff --git a/apps/admin-panel/dist/assets/TaminList-DqcIrDA5.css b/apps/admin-panel/dist/assets/TaminList-DqcIrDA5.css deleted file mode 100644 index a85ca70..0000000 --- a/apps/admin-panel/dist/assets/TaminList-DqcIrDA5.css +++ /dev/null @@ -1 +0,0 @@ -.flex-col[data-v-80b95658]{flex-direction:column}.flex-1[data-v-80b95658]{flex:1}.mr-3[data-v-80b95658]{margin-left:.75rem} diff --git a/apps/admin-panel/dist/assets/TaminList-WWoJ26yi.js b/apps/admin-panel/dist/assets/TaminList-WWoJ26yi.js new file mode 100644 index 0000000..18d06e1 --- /dev/null +++ b/apps/admin-panel/dist/assets/TaminList-WWoJ26yi.js @@ -0,0 +1 @@ +import{u as V,d as O,b as m,c as a,w as t,r as c,o as n,h as Q,f as r,t as s,H as Y,i as p,p as k,a as y,F as U,e as G,m as C,y as j,J as N,_ as Z}from"./index-CpVArufm.js";import{a as ee,b as _,X as te}from"./model-mwiDYd1J.js";import{_ as ae}from"./TooltipBtn.vue_vue_type_script_setup_true_lang-DuvVMhj7.js";import{j as oe}from"./filters-CoNJlguG.js";import"./SettingOutlined-E4OknxY2.js";import"./icons-BRqF3liF.js";import"./UnorderedListOutlined-CLUl5bxX.js";import"./PercentageOutlined-IS1MVcbY.js";import"./UserAddOutlined-Bpe7Keo_.js";import"./CreditCardOutlined-CIq9Sdft.js";import"./AppstoreOutlined-BRgpp4c5.js";import"./TeamOutlined-DL6Ofm69.js";import"./UserOutlined-DeX82IP7.js";import"./CameraOutlined-JfS-rAEW.js";import"./index-DjZc5EYL.js";function le(){const T=V(),i=new ee("admin/orders/tamin/list","لیست سفارش های عمده");return i.add(new _("id","شماره").filterNumber()),i.add(new _("customer.name","مشتری").filterKey("customer.fullName").filterText()),i.add(new _("customer.mobile","موبایل").filterText().hidden().noSort()),i.add(new _("input","ورودی").filterKey("totalGoldWeightGrams").filterText()),i.add(new _("wage","اجرت (گرم)").filterKey("wageWeightGrams").filterText().noSort()),i.add(new _("rial_input","اجرت ریالی (ریال)").filterKey("flatRialCharge").filterText()),i.add(new _("items","تعداد آیتم ها").renderSlot("items_len").noSort()),i.add(new _("caj","تاریخ ثبت").filterKey("createdAt").filterDate().noSort()),i.add(new _("uaj","تاریخ ویرایش").hidden().filterKey("updatedAt").filterDate().noSort()),T.roles&&T.roles.includes("order.tamin.state")&&i.add(new _("sts","وضعیت").renderSlot("sts_str").noSort().filterSelect()),i.add(new _("confirmed","وضعیت تایید مشتری").renderSlot("confirmed_str").noSort().filterSelect({1:"تایید شده",2:"در انتظار تایید"})),i.add(new _("opt","عملیات").noSort().renderSlot("opt")),i}const ne={id:"page-user-list"},se={class:"flex"},re={key:0},ie=["onClick"],de={key:1},ue={class:"flex flex-col"},ce={key:0},_e={class:"flex"},fe={class:"flex-1"},me={key:1,class:"flex items-center"},pe={key:2},ve={key:0},ye=O({__name:"TaminList",setup(T){const i=V(),S=l=>!!i.hasPermission(l),X=le(),L=C(null),d=C(void 0),h=C(!1),w=C(!1),I=l=>l?oe(l):"",F=l=>l==null?"-":String(Number(Number(l).toFixed(4)));function z(l){return l.proceed?"green":"gray"}async function K(l){const{data:o}=await j.get(`admin/orders/${l}`);return o}async function A(l){d.value=await K(l.id),h.value=!0}async function M(l){d.value=await K(l.id),w.value=!0}async function P(l){var o,u;try{await j.post("order-sts/edit",{orderId:(o=d.value)==null?void 0:o.id,status:l.status,note:l.note}),w.value=!1,N.info("ویرایش موفق آمیز"),(u=L.value)==null||u.fetch()}catch{N.error("خطا در ویرایش")}}async function W(l){var o,u,v,x;try{await j.post("order-sts/edit",{orderId:(o=d.value)==null?void 0:o.id,status:l.status,remove:!0}),w.value=!1,N.info("ویرایش موفق آمیز"),(u=L.value)==null||u.fetch()}catch(g){N.error(((x=(v=g==null?void 0:g.response)==null?void 0:v.data)==null?void 0:x.message)??"خطا در ویرایش")}}return(l,o)=>{const u=c("a-tag"),v=c("a-button"),x=c("a-popconfirm"),g=c("a-input"),q=c("a-timeline-item"),E=c("a-timeline"),R=c("a-modal"),f=c("a-descriptions-item"),B=c("a-descriptions"),H=c("a-divider"),D=c("a-card"),J=c("a-empty");return n(),m("div",ne,[a(D,{title:"لیست سفارش های عمده",class:"page-card"},{default:t(()=>[a(te,{ref_key:"tbl",ref:L,model:Q(X),"mobile-cards":""},{opt:t(({record:e})=>[k("div",se,[S("order.tamin.view")?(n(),y(ae,{key:0,"icon-class":"w-5 h-5 text-primary",class:"mr-3",icon:"ListIcon",title:"مشاهده سفارش",onClick:b=>A(e)},null,8,["onClick"])):p("",!0)])]),items_len:t(({text:e})=>[e?(n(),m("div",re,s(e.length),1)):p("",!0)]),sts_str:t(({record:e})=>[S("order.tamin.state")?(n(),m("a",{key:0,href:"",onClick:Y(b=>M(e),["prevent"])},s(e.sts_str),9,ie)):(n(),m("span",de,s(e.sts_str),1))]),confirmed_str:t(({record:e})=>[r(s(e.confirmed_str),1)]),_:1},8,["model"]),a(R,{open:w.value,"onUpdate:open":o[1]||(o[1]=e=>w.value=e),title:"وضعیت سفارش","wrap-class-name":"detail-modal"},{footer:t(()=>[a(v,{onClick:o[0]||(o[0]=e=>w.value=!1)},{default:t(()=>[...o[7]||(o[7]=[r("باشه",-1)])]),_:1})]),default:t(()=>[d.value?(n(),y(E,{key:0},{default:t(()=>[(n(!0),m(U,null,G(d.value.activity,(e,b)=>(n(),y(q,{key:b,color:z(e)},{default:t(()=>[k("div",ue,[k("div",null,s(e.title),1),e.proceed?(n(),m("div",ce,[k("div",_e,[k("div",fe,[a(u,null,{default:t(()=>[r(s(I(e.uaj)),1)]),_:2},1024)]),b>0&&S("order.tamin.state.remove")?(n(),y(x,{key:0,"ok-text":"بله","cancel-text":"بی خیال",onConfirm:$=>W(e)},{title:t(()=>[...o[4]||(o[4]=[k("p",null,"آیا مطمئن به حذف وضعیت مورد نظر هستید ؟",-1)])]),default:t(()=>[a(v,{size:"small",danger:""},{default:t(()=>[...o[5]||(o[5]=[r("حذف وضعیت",-1)])]),_:1})]),_:1},8,["onConfirm"])):p("",!0)])])):p("",!0),!e.proceed&&S("order.tamin.state.submit")?(n(),m("div",me,[a(g,{value:e.note,"onUpdate:value":$=>e.note=$,placeholder:"یادداشت"},null,8,["value","onUpdate:value"]),a(v,{type:"text",size:"small",onClick:$=>P(e)},{default:t(()=>[...o[6]||(o[6]=[r("ثبت وضعیت",-1)])]),_:1},8,["onClick"])])):p("",!0),e.proceed?(n(),m("div",pe,s(e.note),1)):p("",!0)])]),_:2},1032,["color"]))),128))]),_:1})):p("",!0)]),_:1},8,["open"]),a(R,{open:h.value,"onUpdate:open":o[3]||(o[3]=e=>h.value=e),title:"مشاهده سفارش",width:"80%","wrap-class-name":"detail-modal"},{footer:t(()=>[a(v,{onClick:o[2]||(o[2]=e=>h.value=!1)},{default:t(()=>[...o[8]||(o[8]=[r("باشه",-1)])]),_:1})]),default:t(()=>[d.value?(n(),m("div",ve,[a(B,null,{default:t(()=>[a(f,{label:"مشتری"},{default:t(()=>[r(s(d.value.customer.fname)+" "+s(d.value.customer.lname),1)]),_:1}),a(f,{label:"تلفن همراه"},{default:t(()=>[r(s(d.value.customer.phone),1)]),_:1}),a(f,{label:"تاریخ ثبت"},{default:t(()=>[r(s(I(d.value.caj)),1)]),_:1}),a(f,{label:"وضعیت"},{default:t(()=>[r(s(d.value.sts_str),1)]),_:1})]),_:1}),a(D,{title:"آیتم های سفارش"},{default:t(()=>[(n(!0),m(U,null,G(d.value.items,(e,b)=>(n(),m("div",{key:b},[a(B,null,{default:t(()=>[a(f,{label:"نام محصول"},{default:t(()=>[a(u,{color:"blue"},{default:t(()=>[r(s(e.title),1)]),_:2},1024)]),_:2},1024),a(f,{label:"عنوان تنوع"},{default:t(()=>[r(s(e.variant_title),1)]),_:2},1024),a(f,{label:"وزن نهایی (هر عدد)"},{default:t(()=>[a(u,{color:"red"},{default:t(()=>[r(s(e.grams),1)]),_:2},1024)]),_:2},1024),a(f,{label:"تعداد"},{default:t(()=>[a(u,{color:"orange"},{default:t(()=>[r(s(e.qty),1)]),_:2},1024)]),_:2},1024),a(f,{label:"جمع وزن ردیف"},{default:t(()=>[a(u,{color:"red"},{default:t(()=>[r(s(F(e.total_grams))+" گرم",1)]),_:2},1024)]),_:2},1024),Number(e.flatRialCharge)>0?(n(),y(f,{key:0,label:"اجرت ریالی (هر عدد)"},{default:t(()=>[a(u,null,{default:t(()=>[r(s(Number(e.flatRialCharge).toLocaleString("fa-IR"))+" ریال",1)]),_:2},1024)]),_:2},1024)):p("",!0),Number(e.total_rial)>0?(n(),y(f,{key:1,label:"جمع اجرت ریالی ردیف"},{default:t(()=>[a(u,null,{default:t(()=>[r(s(Number(e.total_rial).toLocaleString("fa-IR"))+" ریال",1)]),_:2},1024)]),_:2},1024)):p("",!0)]),_:2},1024),b!!i.hasPermission(n),G=ae(),$=C(null),d=C(void 0),h=C(!1),w=C(!1),B=n=>n?oe(n):"";function z(n){return n.proceed?"green":"gray"}async function D(n){const{data:o}=await j.get(`admin/orders/${n}`);return o}async function A(n){d.value=await D(n.id),h.value=!0}async function F(n){d.value=await D(n.id),w.value=!0}async function M(n){var o,c;try{await j.post("order-sts/edit",{orderId:(o=d.value)==null?void 0:o.id,status:n.status,note:n.note}),w.value=!1,T.info("ویرایش موفق آمیز"),(c=$.value)==null||c.fetch()}catch{T.error("خطا در ویرایش")}}async function P(n){var o,c,v,x;try{await j.post("order-sts/edit",{orderId:(o=d.value)==null?void 0:o.id,status:n.status,remove:!0}),w.value=!1,T.info("ویرایش موفق آمیز"),(c=$.value)==null||c.fetch()}catch(g){T.error(((x=(v=g==null?void 0:g.response)==null?void 0:v.data)==null?void 0:x.message)??"خطا در ویرایش")}}return(n,o)=>{const c=u("a-tag"),v=u("a-button"),x=u("a-popconfirm"),g=u("a-input"),W=u("a-timeline-item"),q=u("a-timeline"),I=u("a-modal"),f=u("a-descriptions-item"),K=u("a-descriptions"),E=u("a-divider"),U=u("a-card"),H=u("a-empty");return l(),m("div",ne,[a(U,{title:"لیست سفارش های عمده",class:"page-card"},{default:t(()=>[a(ee,{ref_key:"tbl",ref:$,model:O(G),"mobile-cards":""},{opt:t(({record:e})=>[k("div",le,[S("order.tamin.view")?(l(),b(te,{key:0,"icon-class":"w-5 h-5 text-primary",class:"mr-3",icon:"ListIcon",title:"مشاهده سفارش",onClick:y=>A(e)},null,8,["onClick"])):p("",!0)])]),items_len:t(({text:e})=>[e?(l(),m("div",se,s(e.length),1)):p("",!0)]),sts_str:t(({record:e})=>[S("order.tamin.state")?(l(),m("a",{key:0,href:"",onClick:Q(y=>F(e),["prevent"])},s(e.sts_str),9,re)):(l(),m("span",ie,s(e.sts_str),1))]),confirmed_str:t(({record:e})=>[r(s(e.confirmed_str),1)]),_:1},8,["model"]),a(I,{open:w.value,"onUpdate:open":o[1]||(o[1]=e=>w.value=e),title:"وضعیت سفارش","wrap-class-name":"detail-modal"},{footer:t(()=>[a(v,{onClick:o[0]||(o[0]=e=>w.value=!1)},{default:t(()=>[...o[7]||(o[7]=[r("باشه",-1)])]),_:1})]),default:t(()=>[d.value?(l(),b(q,{key:0},{default:t(()=>[(l(!0),m(R,null,V(d.value.activity,(e,y)=>(l(),b(W,{key:y,color:z(e)},{default:t(()=>[k("div",de,[k("div",null,s(e.title),1),e.proceed?(l(),m("div",ue,[k("div",ce,[k("div",me,[a(c,null,{default:t(()=>[r(s(B(e.uaj)),1)]),_:2},1024)]),y>0&&S("order.tamin.state.remove")?(l(),b(x,{key:0,"ok-text":"بله","cancel-text":"بی خیال",onConfirm:L=>P(e)},{title:t(()=>[...o[4]||(o[4]=[k("p",null,"آیا مطمئن به حذف وضعیت مورد نظر هستید ؟",-1)])]),default:t(()=>[a(v,{size:"small",danger:""},{default:t(()=>[...o[5]||(o[5]=[r("حذف وضعیت",-1)])]),_:1})]),_:1},8,["onConfirm"])):p("",!0)])])):p("",!0),!e.proceed&&S("order.tamin.state.submit")?(l(),m("div",_e,[a(g,{value:e.note,"onUpdate:value":L=>e.note=L,placeholder:"یادداشت"},null,8,["value","onUpdate:value"]),a(v,{type:"text",size:"small",onClick:L=>M(e)},{default:t(()=>[...o[6]||(o[6]=[r("ثبت وضعیت",-1)])]),_:1},8,["onClick"])])):p("",!0),e.proceed?(l(),m("div",fe,s(e.note),1)):p("",!0)])]),_:2},1032,["color"]))),128))]),_:1})):p("",!0)]),_:1},8,["open"]),a(I,{open:h.value,"onUpdate:open":o[3]||(o[3]=e=>h.value=e),title:"مشاهده سفارش",width:"80%","wrap-class-name":"detail-modal"},{footer:t(()=>[a(v,{onClick:o[2]||(o[2]=e=>h.value=!1)},{default:t(()=>[...o[8]||(o[8]=[r("باشه",-1)])]),_:1})]),default:t(()=>[d.value?(l(),m("div",pe,[a(K,null,{default:t(()=>[a(f,{label:"مشتری"},{default:t(()=>[r(s(d.value.customer.fname)+" "+s(d.value.customer.lname),1)]),_:1}),a(f,{label:"تلفن همراه"},{default:t(()=>[r(s(d.value.customer.phone),1)]),_:1}),a(f,{label:"تاریخ ثبت"},{default:t(()=>[r(s(B(d.value.caj)),1)]),_:1}),a(f,{label:"وضعیت"},{default:t(()=>[r(s(d.value.sts_str),1)]),_:1})]),_:1}),a(U,{title:"آیتم های سفارش"},{default:t(()=>[(l(!0),m(R,null,V(d.value.items,(e,y)=>(l(),m("div",{key:y},[a(K,null,{default:t(()=>[a(f,{label:"نام محصول"},{default:t(()=>[a(c,{color:"blue"},{default:t(()=>[r(s(e.title),1)]),_:2},1024)]),_:2},1024),a(f,{label:"عنوان تنوع"},{default:t(()=>[r(s(e.variant_title),1)]),_:2},1024),a(f,{label:"وزن نهایی"},{default:t(()=>[a(c,{color:"red"},{default:t(()=>[r(s(e.grams),1)]),_:2},1024)]),_:2},1024),a(f,{label:"تعداد"},{default:t(()=>[a(c,{color:"orange"},{default:t(()=>[r(s(e.qty),1)]),_:2},1024)]),_:2},1024),Number(e.flatRialCharge)>0?(l(),b(f,{key:0,label:"اجرت ریالی"},{default:t(()=>[a(c,null,{default:t(()=>[r(s(Number(e.flatRialCharge).toLocaleString("fa-IR"))+" ریال",1)]),_:2},1024)]),_:2},1024)):p("",!0)]),_:2},1024),yC(p.icon)??k);function c(){u("click")}return(B,T)=>{const d=r("a-popconfirm"),f=r("a-tooltip");return t(),l("div",null,[_(f,{title:o.title},{default:s(()=>[o.popTitle?(t(),e(d,{key:0,"ok-text":"بله","cancel-text":"خیر",title:o.popTitle,onConfirm:c},{default:s(()=>[(t(),e(i(n.value),{class:a(["cursor-pointer",o.iconClass])},null,8,["class"]))]),_:1},8,["title"])):(t(),l("div",h,[(t(),e(i(n.value),{class:a(["cursor-pointer",o.iconClass]),onClick:c},null,8,["class"]))]))]),_:1},8,["title"])])}}});export{b as _}; +import{r as C}from"./icons-BRqF3liF.js";import{U as k}from"./UnorderedListOutlined-CLUl5bxX.js";import{d as v,o as t,b as l,c as _,w as s,a as e,g as i,q as a,s as x,r}from"./index-CpVArufm.js";const h={key:1},b=v({__name:"TooltipBtn",props:{title:{},popTitle:{},icon:{},iconClass:{default:"w-5 h-5"}},emits:["click"],setup(o,{emit:m}){const p=o,u=m,n=x(()=>C(p.icon)??k);function c(){u("click")}return(B,T)=>{const d=r("a-popconfirm"),f=r("a-tooltip");return t(),l("div",null,[_(f,{title:o.title},{default:s(()=>[o.popTitle?(t(),e(d,{key:0,"ok-text":"بله","cancel-text":"خیر",title:o.popTitle,onConfirm:c},{default:s(()=>[(t(),e(i(n.value),{class:a(["cursor-pointer",o.iconClass])},null,8,["class"]))]),_:1},8,["title"])):(t(),l("div",h,[(t(),e(i(n.value),{class:a(["cursor-pointer",o.iconClass]),onClick:c},null,8,["class"]))]))]),_:1},8,["title"])])}}});export{b as _}; diff --git a/apps/admin-panel/dist/assets/UnorderedListOutlined-CHqEItu3.js b/apps/admin-panel/dist/assets/UnorderedListOutlined-CLUl5bxX.js similarity index 97% rename from apps/admin-panel/dist/assets/UnorderedListOutlined-CHqEItu3.js rename to apps/admin-panel/dist/assets/UnorderedListOutlined-CLUl5bxX.js index 0fed54d..498bda1 100644 --- a/apps/admin-panel/dist/assets/UnorderedListOutlined-CHqEItu3.js +++ b/apps/admin-panel/dist/assets/UnorderedListOutlined-CLUl5bxX.js @@ -1 +1 @@ -import{c as o,I as u}from"./index-CJij4X3l.js";var s={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372 0-89 31.3-170.8 83.5-234.8l523.3 523.3C682.8 852.7 601 884 512 884zm288.5-137.2L277.2 223.5C341.2 171.3 423 140 512 140c205.4 0 372 166.6 372 372 0 89-31.3 170.8-83.5 234.8z"}}]},name:"stop",theme:"outlined"};function c(r){for(var t=1;tdelete l[n]),e.fname||(l.fname=f),e.lname||(l.lname=f),e.mobile||(l.mobile=f),(e.ut===void 0||e.ut===null)&&(l.ut=f),!d&&!e.role&&(l.role=f),!d&&!e.password&&(l.password=f),e.password&&e.password!==e.password_confirmation&&(l.password_confirmation="رمز عبور و تأیید آن یکسان نیستند"),Object.keys(l).length===0}async function S(){var n,t;if(z())try{_.value=!0;const u={name:`${e.fname} ${e.lname}`.trim(),mobile:e.mobile,ut:e.ut};(!d||e.role!==void 0)&&(u.role=e.role),e.password&&(u.password=e.password),d?await c.put(`users/${d}`,u):await c.post("users",u),D.info("اطلاعات با موفقیت به ثبت رسید."),x?(O("success"),O("update:open",!1)):T.push("/user/list")}catch(u){D.error(((t=(n=u==null?void 0:u.response)==null?void 0:n.data)==null?void 0:t.message)??"خطا در ثبت اطلاعات.")}finally{_.value=!1}}return q(async()=>{try{const[{data:n},{data:t}]=await Promise.all([c.get("const/__list__ut"),c.get("admin/users/role-options")]);B.value=n,$.value=t}catch(n){console.log(n)}if(d)try{const{data:n}=await c.get(`admin/users/${d}`),t=String(n.name??"").trim().split(" ");Object.assign(e,{fname:t[0]??"",lname:t.slice(1).join(" "),mobile:n.mobile??"",ut:n.ut??void 0,role:n.role??void 0,password:"",password_confirmation:""})}catch(n){console.log(n)}}),(n,t)=>{const u=p("a-input"),r=p("a-form-item"),w=p("a-select-option"),y=p("a-select"),g=p("a-input-password"),H=p("a-button"),J=p("a-card"),L=p("a-form"),P=p("a-spin");return x?(i(),v(X,{key:0,open:!!E.open,id:U(d),"add-title":"افزودن مدیر","edit-title":"ویرایش مدیر",loading:_.value,submitting:_.value,"onUpdate:open":t[7]||(t[7]=a=>n.$emit("update:open",a)),onSubmit:S},{default:s(()=>[V("div",Y,[o(r,{label:"نام","validate-status":l.fname?"error":"",help:l.fname},{default:s(()=>[o(u,{value:e.fname,"onUpdate:value":t[0]||(t[0]=a=>e.fname=a)},null,8,["value"])]),_:1},8,["validate-status","help"]),o(r,{label:"نام خانوادگی","validate-status":l.lname?"error":"",help:l.lname},{default:s(()=>[o(u,{value:e.lname,"onUpdate:value":t[1]||(t[1]=a=>e.lname=a)},null,8,["value"])]),_:1},8,["validate-status","help"]),o(r,{label:"شماره موبایل","validate-status":l.mobile?"error":"",help:l.mobile},{default:s(()=>[o(u,{value:e.mobile,"onUpdate:value":t[2]||(t[2]=a=>e.mobile=a)},null,8,["value"])]),_:1},8,["validate-status","help"]),o(r,{label:"نوع کاربری","validate-status":l.ut?"error":"",help:l.ut},{default:s(()=>[o(y,{value:e.ut,"onUpdate:value":t[3]||(t[3]=a=>e.ut=a),"allow-clear":"",placeholder:"انتخاب کنید"},{default:s(()=>[(i(!0),m(C,null,h(B.value,a=>(i(),v(w,{key:a.id,value:a.id},{default:s(()=>[b(k(a.title),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1},8,["validate-status","help"]),o(r,{label:"نقش","validate-status":l.role?"error":"",help:l.role},{default:s(()=>[o(y,{value:e.role,"onUpdate:value":t[4]||(t[4]=a=>e.role=a),placeholder:"انتخاب کنید"},{default:s(()=>[(i(!0),m(C,null,h($.value,a=>(i(),v(w,{key:a.value,value:a.value},{default:s(()=>[b(k(a.title),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1},8,["validate-status","help"]),o(r,{label:"رمز عبور","validate-status":l.password?"error":"",help:l.password},{default:s(()=>[o(g,{value:e.password,"onUpdate:value":t[5]||(t[5]=a=>e.password=a)},null,8,["value"])]),_:1},8,["validate-status","help"]),o(r,{label:"تأیید رمز عبور","validate-status":l.password_confirmation?"error":"",help:l.password_confirmation},{default:s(()=>[o(g,{value:e.password_confirmation,"onUpdate:value":t[6]||(t[6]=a=>e.password_confirmation=a)},null,8,["value"])]),_:1},8,["validate-status","help"])]),U(d)?(i(),m("p",Z,"برای تغییر ندادن رمز عبور، هر دو فیلد رمز را خالی بگذارید.")):M("",!0)]),_:1},8,["open","id","loading","submitting"])):(i(),v(P,{key:1,spinning:_.value},{default:s(()=>[o(L,{layout:"vertical",onSubmit:G(S,["prevent"])},{default:s(()=>[o(J,{title:U(d)?"ویرایش مدیر":"افزودن مدیر",class:"mb-base page-card"},{default:s(()=>[V("div",ee,[o(r,{label:"نام","validate-status":l.fname?"error":"",help:l.fname},{default:s(()=>[o(u,{value:e.fname,"onUpdate:value":t[8]||(t[8]=a=>e.fname=a)},null,8,["value"])]),_:1},8,["validate-status","help"]),o(r,{label:"نام خانوادگی","validate-status":l.lname?"error":"",help:l.lname},{default:s(()=>[o(u,{value:e.lname,"onUpdate:value":t[9]||(t[9]=a=>e.lname=a)},null,8,["value"])]),_:1},8,["validate-status","help"]),o(r,{label:"شماره موبایل","validate-status":l.mobile?"error":"",help:l.mobile},{default:s(()=>[o(u,{value:e.mobile,"onUpdate:value":t[10]||(t[10]=a=>e.mobile=a)},null,8,["value"])]),_:1},8,["validate-status","help"]),o(r,{label:"نوع کاربری","validate-status":l.ut?"error":"",help:l.ut},{default:s(()=>[o(y,{value:e.ut,"onUpdate:value":t[11]||(t[11]=a=>e.ut=a),"allow-clear":"",placeholder:"انتخاب کنید"},{default:s(()=>[(i(!0),m(C,null,h(B.value,a=>(i(),v(w,{key:a.id,value:a.id},{default:s(()=>[b(k(a.title),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1},8,["validate-status","help"]),o(r,{label:"نقش","validate-status":l.role?"error":"",help:l.role},{default:s(()=>[o(y,{value:e.role,"onUpdate:value":t[12]||(t[12]=a=>e.role=a),placeholder:"انتخاب کنید"},{default:s(()=>[(i(!0),m(C,null,h($.value,a=>(i(),v(w,{key:a.value,value:a.value},{default:s(()=>[b(k(a.title),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1},8,["validate-status","help"]),o(r,{label:"رمز عبور","validate-status":l.password?"error":"",help:l.password},{default:s(()=>[o(g,{value:e.password,"onUpdate:value":t[13]||(t[13]=a=>e.password=a)},null,8,["value"])]),_:1},8,["validate-status","help"]),o(r,{label:"تأیید رمز عبور","validate-status":l.password_confirmation?"error":"",help:l.password_confirmation},{default:s(()=>[o(g,{value:e.password_confirmation,"onUpdate:value":t[14]||(t[14]=a=>e.password_confirmation=a)},null,8,["value"])]),_:1},8,["validate-status","help"])]),U(d)?(i(),m("p",ae,"برای تغییر ندادن رمز عبور، هر دو فیلد رمز را خالی بگذارید.")):M("",!0),o(H,{type:"primary",class:"form-submit",onClick:S},{default:s(()=>[...t[15]||(t[15]=[b("ثبت اطلاعات",-1)])]),_:1})]),_:1},8,["title"])]),_:1})]),_:1},8,["spinning"]))}}}),se=W(te,[["__scopeId","data-v-5e70913d"]]);export{se as default}; +import{d as Q,x as q,y as c,a as v,w as s,h as U,k as A,m as j,z as R,r as p,o as i,p as V,c as o,b as m,e as h,f as b,t as k,F as C,i as M,H as G,J as D,l as K,_ as W}from"./index-CpVArufm.js";import{_ as X}from"./BaseFormModal.vue_vue_type_style_index_0_lang-B4iVMhZt.js";const Y={class:"grid-3"},Z={key:0,class:"hint"},ee={class:"grid-3"},ae={key:0,class:"hint"},f="لطفا مقدار را وارد کنید",te=Q({__name:"UserCreate",props:{open:{type:Boolean},id:{}},emits:["update:open","success"],setup(E,{emit:F}){const N=E,O=F,x=N.open!==void 0,I=A(),T=K(),d=x?N.id:I.params.id,_=j(!1),B=j([]),$=j([]),e=R({fname:"",lname:"",mobile:"",ut:void 0,role:void 0,password:"",password_confirmation:""}),l=R({});function z(){return Object.keys(l).forEach(n=>delete l[n]),e.fname||(l.fname=f),e.lname||(l.lname=f),e.mobile||(l.mobile=f),(e.ut===void 0||e.ut===null)&&(l.ut=f),!d&&!e.role&&(l.role=f),!d&&!e.password&&(l.password=f),e.password&&e.password!==e.password_confirmation&&(l.password_confirmation="رمز عبور و تأیید آن یکسان نیستند"),Object.keys(l).length===0}async function S(){var n,t;if(z())try{_.value=!0;const u={name:`${e.fname} ${e.lname}`.trim(),mobile:e.mobile,ut:e.ut};(!d||e.role!==void 0)&&(u.role=e.role),e.password&&(u.password=e.password),d?await c.put(`users/${d}`,u):await c.post("users",u),D.info("اطلاعات با موفقیت به ثبت رسید."),x?(O("success"),O("update:open",!1)):T.push("/user/list")}catch(u){D.error(((t=(n=u==null?void 0:u.response)==null?void 0:n.data)==null?void 0:t.message)??"خطا در ثبت اطلاعات.")}finally{_.value=!1}}return q(async()=>{try{const[{data:n},{data:t}]=await Promise.all([c.get("const/__list__ut"),c.get("admin/users/role-options")]);B.value=n,$.value=t}catch(n){console.log(n)}if(d)try{const{data:n}=await c.get(`admin/users/${d}`),t=String(n.name??"").trim().split(" ");Object.assign(e,{fname:t[0]??"",lname:t.slice(1).join(" "),mobile:n.mobile??"",ut:n.ut??void 0,role:n.role??void 0,password:"",password_confirmation:""})}catch(n){console.log(n)}}),(n,t)=>{const u=p("a-input"),r=p("a-form-item"),w=p("a-select-option"),y=p("a-select"),g=p("a-input-password"),H=p("a-button"),J=p("a-card"),L=p("a-form"),P=p("a-spin");return x?(i(),v(X,{key:0,open:!!E.open,id:U(d),"add-title":"افزودن مدیر","edit-title":"ویرایش مدیر",loading:_.value,submitting:_.value,"onUpdate:open":t[7]||(t[7]=a=>n.$emit("update:open",a)),onSubmit:S},{default:s(()=>[V("div",Y,[o(r,{label:"نام","validate-status":l.fname?"error":"",help:l.fname},{default:s(()=>[o(u,{value:e.fname,"onUpdate:value":t[0]||(t[0]=a=>e.fname=a)},null,8,["value"])]),_:1},8,["validate-status","help"]),o(r,{label:"نام خانوادگی","validate-status":l.lname?"error":"",help:l.lname},{default:s(()=>[o(u,{value:e.lname,"onUpdate:value":t[1]||(t[1]=a=>e.lname=a)},null,8,["value"])]),_:1},8,["validate-status","help"]),o(r,{label:"شماره موبایل","validate-status":l.mobile?"error":"",help:l.mobile},{default:s(()=>[o(u,{value:e.mobile,"onUpdate:value":t[2]||(t[2]=a=>e.mobile=a)},null,8,["value"])]),_:1},8,["validate-status","help"]),o(r,{label:"نوع کاربری","validate-status":l.ut?"error":"",help:l.ut},{default:s(()=>[o(y,{value:e.ut,"onUpdate:value":t[3]||(t[3]=a=>e.ut=a),"allow-clear":"",placeholder:"انتخاب کنید"},{default:s(()=>[(i(!0),m(C,null,h(B.value,a=>(i(),v(w,{key:a.id,value:a.id},{default:s(()=>[b(k(a.title),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1},8,["validate-status","help"]),o(r,{label:"نقش","validate-status":l.role?"error":"",help:l.role},{default:s(()=>[o(y,{value:e.role,"onUpdate:value":t[4]||(t[4]=a=>e.role=a),placeholder:"انتخاب کنید"},{default:s(()=>[(i(!0),m(C,null,h($.value,a=>(i(),v(w,{key:a.value,value:a.value},{default:s(()=>[b(k(a.title),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1},8,["validate-status","help"]),o(r,{label:"رمز عبور","validate-status":l.password?"error":"",help:l.password},{default:s(()=>[o(g,{value:e.password,"onUpdate:value":t[5]||(t[5]=a=>e.password=a)},null,8,["value"])]),_:1},8,["validate-status","help"]),o(r,{label:"تأیید رمز عبور","validate-status":l.password_confirmation?"error":"",help:l.password_confirmation},{default:s(()=>[o(g,{value:e.password_confirmation,"onUpdate:value":t[6]||(t[6]=a=>e.password_confirmation=a)},null,8,["value"])]),_:1},8,["validate-status","help"])]),U(d)?(i(),m("p",Z,"برای تغییر ندادن رمز عبور، هر دو فیلد رمز را خالی بگذارید.")):M("",!0)]),_:1},8,["open","id","loading","submitting"])):(i(),v(P,{key:1,spinning:_.value},{default:s(()=>[o(L,{layout:"vertical",onSubmit:G(S,["prevent"])},{default:s(()=>[o(J,{title:U(d)?"ویرایش مدیر":"افزودن مدیر",class:"mb-base page-card"},{default:s(()=>[V("div",ee,[o(r,{label:"نام","validate-status":l.fname?"error":"",help:l.fname},{default:s(()=>[o(u,{value:e.fname,"onUpdate:value":t[8]||(t[8]=a=>e.fname=a)},null,8,["value"])]),_:1},8,["validate-status","help"]),o(r,{label:"نام خانوادگی","validate-status":l.lname?"error":"",help:l.lname},{default:s(()=>[o(u,{value:e.lname,"onUpdate:value":t[9]||(t[9]=a=>e.lname=a)},null,8,["value"])]),_:1},8,["validate-status","help"]),o(r,{label:"شماره موبایل","validate-status":l.mobile?"error":"",help:l.mobile},{default:s(()=>[o(u,{value:e.mobile,"onUpdate:value":t[10]||(t[10]=a=>e.mobile=a)},null,8,["value"])]),_:1},8,["validate-status","help"]),o(r,{label:"نوع کاربری","validate-status":l.ut?"error":"",help:l.ut},{default:s(()=>[o(y,{value:e.ut,"onUpdate:value":t[11]||(t[11]=a=>e.ut=a),"allow-clear":"",placeholder:"انتخاب کنید"},{default:s(()=>[(i(!0),m(C,null,h(B.value,a=>(i(),v(w,{key:a.id,value:a.id},{default:s(()=>[b(k(a.title),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1},8,["validate-status","help"]),o(r,{label:"نقش","validate-status":l.role?"error":"",help:l.role},{default:s(()=>[o(y,{value:e.role,"onUpdate:value":t[12]||(t[12]=a=>e.role=a),placeholder:"انتخاب کنید"},{default:s(()=>[(i(!0),m(C,null,h($.value,a=>(i(),v(w,{key:a.value,value:a.value},{default:s(()=>[b(k(a.title),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1},8,["validate-status","help"]),o(r,{label:"رمز عبور","validate-status":l.password?"error":"",help:l.password},{default:s(()=>[o(g,{value:e.password,"onUpdate:value":t[13]||(t[13]=a=>e.password=a)},null,8,["value"])]),_:1},8,["validate-status","help"]),o(r,{label:"تأیید رمز عبور","validate-status":l.password_confirmation?"error":"",help:l.password_confirmation},{default:s(()=>[o(g,{value:e.password_confirmation,"onUpdate:value":t[14]||(t[14]=a=>e.password_confirmation=a)},null,8,["value"])]),_:1},8,["validate-status","help"])]),U(d)?(i(),m("p",ae,"برای تغییر ندادن رمز عبور، هر دو فیلد رمز را خالی بگذارید.")):M("",!0),o(H,{type:"primary",class:"form-submit",onClick:S},{default:s(()=>[...t[15]||(t[15]=[b("ثبت اطلاعات",-1)])]),_:1})]),_:1},8,["title"])]),_:1})]),_:1},8,["spinning"]))}}}),se=W(te,[["__scopeId","data-v-5e70913d"]]);export{se as default}; diff --git a/apps/admin-panel/dist/assets/UserEdit-QMU2tuNB.js b/apps/admin-panel/dist/assets/UserEdit-QMU2tuNB.js new file mode 100644 index 0000000..eda99d4 --- /dev/null +++ b/apps/admin-panel/dist/assets/UserEdit-QMU2tuNB.js @@ -0,0 +1 @@ +import e from"./UserCreate-CjovLfJM.js";import{d as r,a as o,o as t}from"./index-CpVArufm.js";import"./BaseFormModal.vue_vue_type_style_index_0_lang-B4iVMhZt.js";const _=r({__name:"UserEdit",setup(a){return(s,n)=>(t(),o(e))}});export{_ as default}; diff --git a/apps/admin-panel/dist/assets/UserEdit-lnrPwbCv.js b/apps/admin-panel/dist/assets/UserEdit-lnrPwbCv.js deleted file mode 100644 index 9f52599..0000000 --- a/apps/admin-panel/dist/assets/UserEdit-lnrPwbCv.js +++ /dev/null @@ -1 +0,0 @@ -import e from"./UserCreate-B0hNHwjp.js";import{d as r,a as o,o as t}from"./index-CJij4X3l.js";import"./BaseFormModal.vue_vue_type_style_index_0_lang-YLHOAWTN.js";const _=r({__name:"UserEdit",setup(a){return(s,n)=>(t(),o(e))}});export{_ as default}; diff --git a/apps/admin-panel/dist/assets/UserOutlined-yq90mQcC.js b/apps/admin-panel/dist/assets/UserOutlined-DeX82IP7.js similarity index 95% rename from apps/admin-panel/dist/assets/UserOutlined-yq90mQcC.js rename to apps/admin-panel/dist/assets/UserOutlined-DeX82IP7.js index c20c146..cabba5a 100644 --- a/apps/admin-panel/dist/assets/UserOutlined-yq90mQcC.js +++ b/apps/admin-panel/dist/assets/UserOutlined-DeX82IP7.js @@ -1 +1 @@ -import{c as u,I as l}from"./index-CJij4X3l.js";var o={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M858.5 763.6a374 374 0 00-80.6-119.5 375.63 375.63 0 00-119.5-80.6c-.4-.2-.8-.3-1.2-.5C719.5 518 760 444.7 760 362c0-137-111-248-248-248S264 225 264 362c0 82.7 40.5 156 102.8 201.1-.4.2-.8.3-1.2.5-44.8 18.9-85 46-119.5 80.6a375.63 375.63 0 00-80.6 119.5A371.7 371.7 0 00136 901.8a8 8 0 008 8.2h60c4.4 0 7.9-3.5 8-7.8 2-77.2 33-149.5 87.8-204.3 56.7-56.7 132-87.9 212.2-87.9s155.5 31.2 212.2 87.9C779 752.7 810 825 812 902.2c.1 4.4 3.6 7.8 8 7.8h60a8 8 0 008-8.2c-1-47.8-10.9-94.3-29.5-138.2zM512 534c-45.9 0-89.1-17.9-121.6-50.4S340 407.9 340 362c0-45.9 17.9-89.1 50.4-121.6S466.1 190 512 190s89.1 17.9 121.6 50.4S684 316.1 684 362c0 45.9-17.9 89.1-50.4 121.6S557.9 534 512 534z"}}]},name:"user",theme:"outlined"};function c(r){for(var e=1;e(r(),o(t,{title:"مشاهده اطلاعات مشتری عمده","show-activity":!0,"show-wallet":!1,"edit-route":"bulkCustomer-edit"}))}});export{_ as default}; diff --git a/apps/admin-panel/dist/assets/ViewOmdeCustomer-n6uGE_JK.js b/apps/admin-panel/dist/assets/ViewOmdeCustomer-n6uGE_JK.js deleted file mode 100644 index 9a9dd99..0000000 --- a/apps/admin-panel/dist/assets/ViewOmdeCustomer-n6uGE_JK.js +++ /dev/null @@ -1 +0,0 @@ -import{C as t}from"./CustomerDetail-Fa2XV1tc.js";import{d as e,a as o,o as r}from"./index-CJij4X3l.js";import"./filters-BPYO-DKN.js";import"./index-CKg-8s_Z.js";import"./EnvironmentOutlined-Cetl6vFW.js";import"./UserOutlined-yq90mQcC.js";const _=e({__name:"ViewOmdeCustomer",setup(a){return(i,m)=>(r(),o(t,{title:"مشاهده اطلاعات مشتری عمده","show-activity":!0,"show-wallet":!1,"edit-route":"bulkCustomer-edit"}))}});export{_ as default}; diff --git a/apps/admin-panel/dist/assets/ViewSingleCustomer-CaDBHZh8.js b/apps/admin-panel/dist/assets/ViewSingleCustomer-CaDBHZh8.js new file mode 100644 index 0000000..6ac89cf --- /dev/null +++ b/apps/admin-panel/dist/assets/ViewSingleCustomer-CaDBHZh8.js @@ -0,0 +1 @@ +import{C as t}from"./CustomerDetail-ByDc8rdk.js";import{d as e,a as o,o as r}from"./index-CpVArufm.js";import"./filters-CoNJlguG.js";import"./index-DjZc5EYL.js";import"./EnvironmentOutlined-BZFp8i4M.js";import"./UserOutlined-DeX82IP7.js";const _=e({__name:"ViewSingleCustomer",setup(i){return(s,a)=>(r(),o(t,{title:"مشاهده اطلاعات مشتری","show-wallet":!0,"show-activity":!1,"edit-route":"singleCustomer-edit"}))}});export{_ as default}; diff --git a/apps/admin-panel/dist/assets/ViewSingleCustomer-DmXKmHGI.js b/apps/admin-panel/dist/assets/ViewSingleCustomer-DmXKmHGI.js deleted file mode 100644 index dd9080e..0000000 --- a/apps/admin-panel/dist/assets/ViewSingleCustomer-DmXKmHGI.js +++ /dev/null @@ -1 +0,0 @@ -import{C as t}from"./CustomerDetail-Fa2XV1tc.js";import{d as e,a as o,o as r}from"./index-CJij4X3l.js";import"./filters-BPYO-DKN.js";import"./index-CKg-8s_Z.js";import"./EnvironmentOutlined-Cetl6vFW.js";import"./UserOutlined-yq90mQcC.js";const _=e({__name:"ViewSingleCustomer",setup(i){return(s,a)=>(r(),o(t,{title:"مشاهده اطلاعات مشتری","show-wallet":!0,"show-activity":!1,"edit-route":"singleCustomer-edit"}))}});export{_ as default}; diff --git a/apps/admin-panel/dist/assets/accounting-CXNK39dF.js b/apps/admin-panel/dist/assets/accounting-Bbumy49K.js similarity index 99% rename from apps/admin-panel/dist/assets/accounting-CXNK39dF.js rename to apps/admin-panel/dist/assets/accounting-Bbumy49K.js index 541a6c8..f6b4f0e 100644 --- a/apps/admin-panel/dist/assets/accounting-CXNK39dF.js +++ b/apps/admin-panel/dist/assets/accounting-Bbumy49K.js @@ -1 +1 @@ -import{m as Je}from"./index-CKg-8s_Z.js";import{c as a,I as Ut,d as mt,n as Qe,o,b as c,p as n,a as x,g as Nt,f as u,t as v,w as l,i as _,F as D,e as Oe,q as Le,h as U,K as ht,s as M,z as ne,m as h,y as j,J as B,r as f,L as vt,M as Tt,_ as pt,u as $t,x as Dt,j as T}from"./index-CJij4X3l.js";import{L as It}from"./LockOutlined-IueoJDte.js";import{S as qe}from"./SafetyCertificateOutlined-Cr8bqGKo.js";var Mt={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm192 472c0 4.4-3.6 8-8 8H328c-4.4 0-8-3.6-8-8v-48c0-4.4 3.6-8 8-8h368c4.4 0 8 3.6 8 8v48z"}}]},name:"minus-circle",theme:"filled"};function ct(C){for(var A=1;Ap.form.provider==="none"?null:p.form.provider),Z=M(()=>{var r;return((r=p.overview)==null?void 0:r.config)??null}),Y=r=>{var t;return(t=Z.value)==null?void 0:t[r]},oe=M(()=>{var r;return!!(i.value&&((r=Y(i.value))!=null&&r.tokenSet))}),O=M(()=>!!i.value&&/^https:\/\//i.test(p.form[i.value].baseUrl||"")),m=(r,t)=>{var g,y,N,I,ae;return JSON.stringify(t==="none"?{provider:t}:{provider:t,baseUrl:((g=r[t])==null?void 0:g.baseUrl)??"",caCert:((y=r[t])==null?void 0:y.caCert)??"",timeoutMs:(N=r[t])==null?void 0:N.timeoutMs,dbName:t==="tahesab"?(I=r.tahesab)==null?void 0:I.dbName:void 0,balanceOwesWhen:t==="zarrin"?(ae=r.zarrin)==null?void 0:ae.balanceOwesWhen:void 0})},X=M(()=>{var r;return Z.value?p.form.provider!==Z.value.provider?!0:i.value?m(p.form,i.value)!==m(Z.value,i.value)||!!((r=p.tokens[i.value])!=null&&r.trim()):!1:!1}),$e=M(()=>!!Z.value&&Z.value.provider!=="none"&&Z.value.provider!==p.form.provider),be=r=>r?Je(r).format("jYYYY/jMM/jDD ساعت HH:mm"):"",G=M(()=>{const r=p.overview;if(!r)return{tone:"off",icon:Pe,title:"…",text:"",rows:[]};const t=r.config;if(t.provider==="none")return{tone:"off",icon:Pe,title:"اتصال خاموش است",text:"هیچ اطلاعاتی با نرم‌افزار حسابداری رد و بدل نمی‌شود."};const g=W[t.provider];if(r.inactiveReason)return{tone:"bad",icon:vt,title:`اتصال به ${g} کار نمی‌کند`,text:r.inactiveReason};const y=r.realtime;if(y!=null&&y.lastError)return{tone:"bad",icon:vt,title:`${g}: ارتباط برقرار نیست`,text:y.lastError};const I=[{label:"آدرس",value:t[t.provider].baseUrl,ltr:!0}];return t.provider==="tahesab"&&I.push({label:"دیتابیس",value:t.tahesab.dbName,ltr:!0}),y!=null&&y.lastOkAt&&I.push({label:"آخرین ارتباط موفق",value:be(y.lastOkAt)}),{tone:"ok",icon:Tt,title:`متصل به ${g}`,text:"",rows:I}}),ee=ne({tahesab:!1,zarrin:!1});function ce(){i.value&&(p.tokens[i.value]="",ee[i.value]=!1)}Qe(()=>p.overview,()=>{ee.tahesab=!1,ee.zarrin=!1,S.value=null});const _e=M({get:()=>i.value?Math.round((p.form[i.value].timeoutMs??2e4)/1e3):20,set:r=>{i.value&&(p.form[i.value].timeoutMs=Math.max(3,Math.min(120,Number(r)||20))*1e3)}}),H=h(!1),S=h(null),ye=r=>{var t;return((t=r.match(/CN=([^\n,]+)/))==null?void 0:t[1])??r.replace(/\n/g,", ")},ie=r=>r?Je(new Date(r)).format("jYYYY/jMM/jDD"):"—",re=M(()=>{var r;return!!i.value&&(p.form[i.value].caCert||"")!==(((r=Y(i.value))==null?void 0:r.caCert)||"")}),q=M(()=>{var r;return i.value?re.value?S.value&&S.value.pem===p.form[i.value].caCert?S.value:null:((r=Y(i.value))==null?void 0:r.caInfo)??null:null});async function ue(){var r,t;if(i.value){H.value=!0;try{const{data:g}=await j.post("admin/accounting/certificate",{baseUrl:p.form[i.value].baseUrl});S.value=g,p.form[i.value].caCert&&g.pem.trim()===p.form[i.value].caCert.trim()?B.success("گواهی سرور همان گواهی تأییدشده است"):p.form[i.value].caCert&&(p.form[i.value].caCert="")}catch(g){B.error(((t=(r=g==null?void 0:g.response)==null?void 0:r.data)==null?void 0:t.message)??"گواهی دریافت نشد")}finally{H.value=!1}}}function te(){!i.value||!S.value||(p.form[i.value].caCert=S.value.pem)}const ke=h(!1),z=h(null),De=h(""),Ie=()=>i.value?JSON.stringify([p.form.provider,p.form[i.value],p.tokens[i.value]]):"",Me=M(()=>!!z.value&&De.value!==Ie()),We=M(()=>{var r;return!!i.value&&!!p.form[i.value].baseUrl&&(oe.value||!!((r=p.tokens[i.value])!=null&&r.trim()))});Qe(i,()=>z.value=null);async function de(){var t,g;if(!i.value)return;const r=i.value;ke.value=!0;try{const y={baseUrl:p.form[r].baseUrl,timeoutMs:p.form[r].timeoutMs,caCert:p.form[r].caCert,token:p.tokens[r]||void 0};r==="tahesab"?y.dbName=p.form.tahesab.dbName:y.balanceOwesWhen=p.form.zarrin.balanceOwesWhen,De.value=Ie();const{data:N}=await j.post("admin/accounting/test",{provider:r,connection:y});z.value=N}catch(y){const N=(g=(t=y==null?void 0:y.response)==null?void 0:t.data)==null?void 0:g.message;z.value={ok:!1,error:Array.isArray(N)?N.join("، "):N??"خطا در تست اتصال"}}finally{ke.value=!1}}const Fe={version:{label:"نسخه",ltr:!0},dbType:{label:"نوع دیتابیس",ltr:!0},dbName:{label:"دیتابیس",ltr:!0},customerGroups:{label:"گروه‌های حساب"},message:{label:"پیام سرور"}},J=M(()=>{var g,y;const r=((g=z.value)==null?void 0:g.info)??{},t=Object.entries(Fe).filter(([N])=>r[N]!==void 0&&r[N]!==null&&r[N]!=="").map(([N,I])=>({label:I.label,value:String(r[N]),ltr:I.ltr}));return t.push({label:"زمان پاسخ",value:`${(((y=z.value)==null?void 0:y.ms)??0).toLocaleString("fa-IR")} میلی‌ثانیه`,ltr:!1}),t}),Se=M(()=>{var r,t;return i.value==="tahesab"&&!!((t=(r=z.value)==null?void 0:r.info)!=null&&t.dbName)&&String(z.value.info.dbName).toLowerCase()!==String(p.form.tahesab.dbName||"").toLowerCase()});return(r,t)=>{var Ne,je,le;const g=f("a-tag"),y=f("a-alert"),N=f("a-input"),I=f("a-form-item"),ae=f("a-select-option"),xe=f("a-select"),L=f("a-button"),Ue=f("a-popconfirm"),F=f("a-space"),Re=f("a-input-password"),Q=f("a-form"),ze=f("a-input-number"),me=f("a-collapse-panel"),ge=f("a-collapse"),Ke=f("a-textarea");return o(),c("div",zt,[n("div",{class:Le(["status",`status--${G.value.tone}`])},[(o(),x(Nt(G.value.icon),{class:"status__icon"})),n("div",jt,[n("div",At,[u(v(G.value.title)+" ",1),X.value?(o(),x(g,{key:0,color:"orange",class:"status__tag"},{default:l(()=>[...t[11]||(t[11]=[u("تغییرات ذخیره نشده",-1)])]),_:1})):_("",!0)]),G.value.text?(o(),c("div",Gt,v(G.value.text),1)):_("",!0),(Ne=G.value.rows)!=null&&Ne.length?(o(),c("dl",Lt,[(o(!0),c(D,null,Oe(G.value.rows,b=>(o(),c(D,{key:b.label},[n("dt",null,v(b.label),1),n("dd",{dir:b.ltr?"ltr":void 0,class:Le({latin:b.ltr})},v(b.value),11,Pt)],64))),128))])):_("",!0)])],2),n("section",Bt,[t[13]||(t[13]=n("h3",{class:"step__title"},[n("span",{class:"step__no"},"۱"),u("نرم‌افزار حسابداری")],-1)),n("div",Wt,[(o(),c(D,null,Oe(Be,b=>n("button",{key:b.value,type:"button",role:"radio","aria-checked":C.form.provider===b.value,class:Le(["choice",{"choice--on":C.form.provider===b.value}]),onClick:Ce=>C.form.provider=b.value},[t[12]||(t[12]=n("span",{class:"choice__dot"},null,-1)),n("span",Kt,v(b.label),1),n("span",Vt,v(b.desc),1)],10,Ft)),64))]),$e.value?(o(),x(y,{key:0,class:"mt",type:"info","show-icon":"",message:"با ذخیره، نرم‌افزار عوض می‌شود",description:"کارهای در صف نرم‌افزار قبلی متوقف می‌مانند (پاک نمی‌شوند) و لینک‌های هر نرم‌افزار جدا نگه داشته می‌شوند؛ برگشت بی‌خطر است."})):_("",!0)]),i.value?(o(),c(D,{key:0},[n("section",Yt,[n("h3",Ht,[t[14]||(t[14]=n("span",{class:"step__no"},"۲",-1)),u("اطلاعات اتصال به "+v(W[i.value]),1)]),a(Q,{layout:"vertical",class:"grid"},{default:l(()=>[a(I,{label:"آدرس وب‌سرویس",required:""},{default:l(()=>[a(N,{value:C.form[i.value].baseUrl,"onUpdate:value":t[0]||(t[0]=b=>C.form[i.value].baseUrl=b),dir:"ltr",class:"ltr",placeholder:i.value==="tahesab"?"https://192.168.1.10:8081":"http://192.168.1.10:8000/ZarrinService/accounting"},null,8,["value","placeholder"]),n("div",qt,"آدرسی که وب‌سرویس "+v(W[i.value])+" روی آن در دسترس است، با پورت.",1)]),_:1}),i.value==="tahesab"?(o(),x(I,{key:0,label:"نام دیتابیس (DBname)",required:""},{default:l(()=>[a(N,{value:C.form.tahesab.dbName,"onUpdate:value":t[1]||(t[1]=b=>C.form.tahesab.dbName=b),dir:"ltr",class:"ltr",placeholder:"TahesabDB"},null,8,["value"]),t[15]||(t[15]=n("div",{class:"help"},"نام دقیق دیتابیس همین شرکت. یک سرور ممکن است چند دیتابیس داشته باشد؛ بعد از تست، نام را در نتیجه چک کنید.",-1))]),_:1})):(o(),x(I,{key:1,label:"علامت مانده‌ی بدهکار"},{default:l(()=>[a(xe,{value:C.form.zarrin.balanceOwesWhen,"onUpdate:value":t[2]||(t[2]=b=>C.form.zarrin.balanceOwesWhen=b)},{default:l(()=>[a(ae,{value:"negative"},{default:l(()=>[...t[16]||(t[16]=[u("منفی یعنی بدهکار",-1)])]),_:1}),a(ae,{value:"positive"},{default:l(()=>[...t[17]||(t[17]=[u("مثبت یعنی بدهکار",-1)])]),_:1})]),_:1},8,["value"]),t[18]||(t[18]=n("div",{class:"help"},"در زرین منفی یعنی بدهکار (روی نصب واقعی بررسی شد)؛ تغییرش ندهید مگر نصب شما خلاف این باشد.",-1))]),_:1})),a(I,{label:"توکن وب‌سرویس",required:"",class:"grid__full"},{default:l(()=>{var b;return[oe.value&&!ee[i.value]?(o(),c("div",Jt,[a(U(It),{class:"token__icon"}),(b=Y(i.value))!=null&&b.tokenReadable?(o(),c("span",Qt,"توکن ذخیره شده است و نمایش داده نمی‌شود.")):(o(),c("span",Zt,"توکن ذخیره‌شده قابل‌خواندن نیست؛ دوباره وارد کنید.")),a(F,{class:"token__actions"},{default:l(()=>[a(L,{size:"small",onClick:t[3]||(t[3]=Ce=>ee[i.value]=!0)},{default:l(()=>[...t[19]||(t[19]=[u("تغییر توکن",-1)])]),_:1}),a(Ue,{title:"توکن حذف شود؟ تا توکن جدید وارد نشود اتصال کار نمی‌کند.","ok-text":"حذف","cancel-text":"انصراف",onConfirm:t[4]||(t[4]=Ce=>V("clearToken",i.value))},{default:l(()=>[a(L,{size:"small",danger:""},{default:l(()=>[...t[20]||(t[20]=[u("حذف",-1)])]),_:1})]),_:1})]),_:1})])):(o(),c(D,{key:1},[a(Re,{value:C.tokens[i.value],"onUpdate:value":t[5]||(t[5]=Ce=>C.tokens[i.value]=Ce),dir:"ltr",class:"ltr",autocomplete:"new-password",placeholder:"توکن را اینجا وارد کنید"},null,8,["value"]),n("div",Xt,[t[21]||(t[21]=u(" بعد از ذخیره، توکن رمز می‌شود و دیگر نمایش داده نمی‌شود. ",-1)),oe.value?(o(),c("a",{key:0,class:"link",onClick:ce},"انصراف و نگه‌داشتن توکن فعلی")):_("",!0)])],64))]}),_:1})]),_:1}),a(ge,{ghost:"",class:"advanced"},{default:l(()=>[a(me,{key:"adv",header:"تنظیمات پیشرفته"},{default:l(()=>[a(Q,{layout:"vertical"},{default:l(()=>[a(I,{label:"حداکثر زمان انتظار برای پاسخ"},{default:l(()=>[a(ze,{value:_e.value,"onUpdate:value":t[6]||(t[6]=b=>_e.value=b),min:3,max:120,"addon-after":"ثانیه"},null,8,["value"]),t[22]||(t[22]=n("div",{class:"help"},"اگر سرور حسابداری کند است بیشترش کنید. پیش‌فرض ۲۰ ثانیه.",-1))]),_:1})]),_:1})]),_:1})]),_:1})]),O.value?(o(),c("section",ea,[t[41]||(t[41]=n("h3",{class:"step__title"},[n("span",{class:"step__no"},"۳"),u("گواهی امنیتی سرور")],-1)),n("p",ta," اتصال همیشه رمزنگاری‌شده و بررسی‌شده است. نصب‌های معمول "+v(W[i.value])+" گواهی خودساخته دارند؛ در این حالت یک بار گواهی سرور را بررسی و تأیید کنید. ",1),C.form[i.value].caCert?(o(),c("div",aa,[a(U(qe),{class:"cert__icon"}),n("div",la,[n("div",sa,[t[25]||(t[25]=u(" گواهی سرور تأیید شده است ",-1)),re.value?(o(),x(g,{key:0,color:"orange"},{default:l(()=>[...t[23]||(t[23]=[u("ذخیره نشده",-1)])]),_:1})):_("",!0),(je=q.value)!=null&&je.expired?(o(),x(g,{key:1,color:"red"},{default:l(()=>[...t[24]||(t[24]=[u("منقضی شده",-1)])]),_:1})):_("",!0)]),q.value?(o(),c("dl",na,[t[26]||(t[26]=n("dt",null,"صادرشده برای",-1)),n("dd",oa,v(ye(q.value.subject)),1),t[27]||(t[27]=n("dt",null,"معتبر تا",-1)),n("dd",null,v(ie(q.value.validTo)),1),t[28]||(t[28]=n("dt",null,"اثرانگشت",-1)),n("dd",ia,v(q.value.fingerprint256),1)])):(o(),c("div",ra,"مشخصات گواهی بعد از ذخیره نمایش داده می‌شود."))]),a(F,{direction:"vertical",class:"cert__actions"},{default:l(()=>[a(L,{size:"small",loading:H.value,onClick:ue},{default:l(()=>[...t[29]||(t[29]=[u("بررسی دوباره",-1)])]),_:1},8,["loading"]),a(L,{size:"small",danger:"",onClick:t[7]||(t[7]=b=>C.form[i.value].caCert="")},{default:l(()=>[...t[30]||(t[30]=[u("برداشتن",-1)])]),_:1})]),_:1})])):S.value&&!S.value.trustedBySystem?(o(),c("div",ua,[a(U(ht),{class:"cert__icon"}),n("div",da,[t[34]||(t[34]=n("div",{class:"cert__title"},"این گواهی را تأیید می‌کنید؟",-1)),t[35]||(t[35]=n("div",{class:"help"},"اثرانگشت زیر را با گواهی نصب‌شده روی سرور حسابداری مقایسه کنید. اگر یکی است تأیید کنید.",-1)),n("dl",va,[t[31]||(t[31]=n("dt",null,"صادرشده برای",-1)),n("dd",ca,v(ye(S.value.subject)),1),t[32]||(t[32]=n("dt",null,"معتبر تا",-1)),n("dd",null,v(ie(S.value.validTo)),1),t[33]||(t[33]=n("dt",null,"اثرانگشت",-1)),n("dd",ma,v(S.value.fingerprint256),1)]),S.value.expired?(o(),x(y,{key:0,type:"error","show-icon":"",message:"این گواهی منقضی شده است.",class:"mt"})):_("",!0)]),a(F,{direction:"vertical",class:"cert__actions"},{default:l(()=>[a(L,{type:"primary",size:"small",onClick:te},{default:l(()=>[...t[36]||(t[36]=[u("تأیید گواهی",-1)])]),_:1}),a(L,{size:"small",onClick:t[8]||(t[8]=b=>S.value=null)},{default:l(()=>[...t[37]||(t[37]=[u("انصراف",-1)])]),_:1})]),_:1})])):(le=S.value)!=null&&le.trustedBySystem?(o(),c("div",pa,[a(U(qe),{class:"cert__icon"}),t[38]||(t[38]=n("div",{class:"cert__body"},[n("div",{class:"cert__title"},"گواهی سرور معتبر است"),n("div",{class:"help"},"این سرور گواهی معتبر عمومی دارد؛ کاری لازم نیست.")],-1))])):(o(),c("div",fa,[a(U(qe),{class:"cert__icon cert__icon--muted"}),t[40]||(t[40]=n("div",{class:"cert__body"},[n("div",{class:"cert__title"},"گواهی‌ای تأیید نشده"),n("div",{class:"help"},"اگر «تست اتصال» خطای گواهی داد، اینجا گواهی سرور را بررسی کنید.")],-1)),a(L,{loading:H.value,disabled:!C.form[i.value].baseUrl,onClick:ue},{default:l(()=>[...t[39]||(t[39]=[u("بررسی گواهی سرور",-1)])]),_:1},8,["loading","disabled"])])),a(ge,{ghost:"",class:"advanced"},{default:l(()=>[a(me,{key:"pem",header:"وارد کردن دستی گواهی (PEM)"},{default:l(()=>[a(Ke,{value:C.form[i.value].caCert,"onUpdate:value":t[9]||(t[9]=b=>C.form[i.value].caCert=b),dir:"ltr",class:"ltr mono",rows:5,placeholder:"-----BEGIN CERTIFICATE-----"},null,8,["value"])]),_:1})]),_:1})])):_("",!0)],64)):_("",!0),i.value&&z.value?(o(),c("section",ba,[z.value.ok?(o(),x(y,{key:0,type:"success","show-icon":"",message:`اتصال به ${W[i.value]} برقرار است`},{description:l(()=>[n("dl",_a,[(o(!0),c(D,null,Oe(J.value,b=>(o(),c(D,{key:b.label},[n("dt",null,v(b.label),1),n("dd",{dir:b.ltr?"ltr":void 0,class:Le({latin:b.ltr})},v(b.value),11,ya)],64))),128))]),Se.value?(o(),c("div",ka,[t[42]||(t[42]=u(" دیتابیسی که وصل شد ",-1)),n("bdi",ga,v(z.value.info.dbName),1),t[43]||(t[43]=u(" است، نه ",-1)),n("bdi",Ca,v(C.form.tahesab.dbName),1),t[44]||(t[44]=u(". نام دیتابیس را چک کنید. ",-1))])):_("",!0),Me.value?(o(),c("div",wa,"این نتیجه برای مقادیر قبلی است؛ دوباره تست کنید.")):_("",!0)]),_:1},8,["message"])):(o(),x(y,{key:1,type:"error","show-icon":"",message:"اتصال برقرار نشد"},{description:l(()=>[n("div",null,v(z.value.error),1),Me.value?(o(),c("div",Ea,"این نتیجه برای مقادیر قبلی است؛ دوباره تست کنید.")):_("",!0)]),_:1}))])):_("",!0),n("div",Oa,[n("span",Sa,[X.value?(o(),c(D,{key:0},[u("تغییرات هنوز ذخیره نشده‌اند.")],64)):i.value?(o(),c(D,{key:1},[u("«تست اتصال» مقادیر همین فرم را امتحان می‌کند، حتی پیش از ذخیره.")],64)):_("",!0)]),a(F,null,{default:l(()=>[i.value?(o(),x(L,{key:0,loading:ke.value,disabled:!We.value,onClick:de},{default:l(()=>[...t[45]||(t[45]=[u("تست اتصال",-1)])]),_:1},8,["loading","disabled"])):_("",!0),a(L,{type:"primary",loading:C.saving,disabled:!X.value,onClick:t[10]||(t[10]=b=>V("save"))},{default:l(()=>[...t[46]||(t[46]=[u("ذخیره",-1)])]),_:1},8,["loading","disabled"])]),_:1})])])}}}),Ua=pt(xa,[["__scopeId","data-v-a7739f0b"]]),Na={key:0},ha={key:0},Ta={key:1},$a={key:2,class:"warn"},Da={key:2},Ia={key:0,class:"hint"},Ma={key:0,class:"warn"},Ra={key:1},za={class:"grid-2 mt-4"},ja={class:"hint mb-4"},Aa={key:0},Ga={class:"grid-2"},La={class:"grid-2"},Pa={key:1,class:"hint mb-4"},Ba={key:2,class:"hint mb-4"},Wa={key:0,class:"hint"},Fa={key:4,class:"warn small"},Ka={class:"grid-2"},Va={dir:"ltr"},Ya={dir:"ltr"},Ha={class:"hint"},qa=mt({__name:"accounting",setup(C){const A=$t(),p=s=>!!A.hasPermission(s),V={PENDING:"در صف",SENDING:"در حال ارسال",SENT:"ارسال شد",FAILED:"ناموفق",NEEDS_REVIEW:"نیاز به بررسی",RESOLVED:"حل‌شده"},W={PENDING:"default",SENDING:"processing",SENT:"success",FAILED:"error",NEEDS_REVIEW:"warning",RESOLVED:"default"},Be={CUSTOMER_PUSH:"ارسال مشتری",PRODUCT_PUSH:"ساخت کارساخته",ORDER_DOCUMENT:"سند سفارش",ORDER_DOCUMENT_DELETE:"حذف سند سفارش"},i={CUSTOMER_NO_MOBILE:"حساب بدون موبایل",CUSTOMER_DUPLICATE_MOBILE:"موبایل تکراری",CUSTOMER_LINK_CONFLICT:"تداخل لینک",PRODUCT_DUPLICATE_TITLE:"عنوان تکراری محصول",PRODUCT_CODE_TAKEN:"کد محصول تکراری"},Z={LINKED:"جفت با موبایل/نام",IMPORTED:"وارد شده از حسابداری",PUSHED:`ساخته شده از ${T.name}`,MANUAL:"دستی"},Y=h(!1),oe=h("connection"),O=h(null),m=ne({provider:"none",tahesab:{baseUrl:"",dbName:"TahesabDB",timeoutMs:2e4,caCert:""},zarrin:{baseUrl:"",balanceOwesWhen:"negative",timeoutMs:2e4,caCert:""},features:{customers:!1,balances:!1,report:!1,products:!1,documents:!1},intervals:{customersMinutes:60,balancesMinutes:10,productsMinutes:30},mapping:{karat:750},report:{windowDays:365},documents:{triggerStatus:"DELIVERED_TO_AGENT"}}),X=ne({tahesab:"",zarrin:""}),$e=h("none"),be=M(()=>$e.value!=="none"),G=ne({customerGroups:[],karSakhteGroups:[],karSakhteTypes:[]}),ee=h([]),ce=h([]),_e=h(!1),H=s=>s?`${s.id}|${s.name}`:void 0,S=s=>{if(!s)return null;const e=s.indexOf("|");return{id:s.slice(0,e),name:s.slice(e+1)}},ye=(s,e)=>{const k=[...s];for(const w of e)w&&!k.some(K=>K.id===w.id&&K.name===w.name)&&k.push(w);return k.map(w=>({value:H(w),label:w.id?`${w.name} (${w.id})`:w.name}))},ie=h([]),re=h(),q=h(),ue=h(),te=ne({}),ke=M(()=>ye(G.customerGroups,[...ie.value.map(S),S(re.value)])),z=M(()=>ye(G.karSakhteGroups,[S(q.value),...Object.values(te).map(S)])),De=M(()=>ye(G.karSakhteTypes,[S(ue.value)])),Ie=[{value:"PLACED",label:"ثبت سفارش"},{value:"ADMIN_APPROVED",label:"تأیید مدیر"},{value:"SOURCING",label:"در حال تأمین"},{value:"PREPARING",label:"در حال آماده‌سازی"},{value:"DELIVERED_TO_AGENT",label:"تحویل مسئول فروش"},{value:"DELIVERED_TO_CUSTOMER",label:"تحویل مشتری"}],Me=[{key:"customers",label:"سینک مشتریان (ورود/لینک با موبایل، ساخت پس از احراز هویت)",interval:"customersMinutes",job:"customers"},{key:"balances",label:"سینک مانده (نمایش به مشتری)",interval:"balancesMinutes",job:"balances"},{key:"report",label:"گزارش مشتری از حسابداری",interval:null,job:null},{key:"products",label:"کارساخته ↔ محصول و قفل ناموجود",interval:"productsMinutes",job:"products"},{key:"documents",label:"ثبت سند سفارش (موقت)",interval:null,job:"outbox"}],We=[{title:"قابلیت",dataIndex:"label",key:"label"},{title:"فعال",key:"on",width:80},{title:"بازه",key:"interval",width:170},{title:"وضعیت",key:"state"},{title:"",key:"run",width:110}],de=s=>{var e,k,w;return(w=(k=(e=O.value)==null?void 0:e.state)==null?void 0:k.jobs)==null?void 0:w[s]},Fe=s=>Object.entries(s).map(([e,k])=>`${e}: ${k}`).join("، "),J=ne({rows:[],total:0,page:1,limit:25}),Se=h(),r=[{title:"زمان",key:"createdAt",width:150},{title:"نوع",key:"kind",width:120},{title:"مورد",key:"entity"},{title:"وضعیت",key:"status",width:140},{title:"خطا",key:"error"},{title:"",key:"actions",width:190}],t=M(()=>{var k;const s=((k=O.value)==null?void 0:k.outbox)??{},e=(s.FAILED??0)+(s.NEEDS_REVIEW??0);return e?` (${e})`:""}),g=ne({rows:[],total:0,page:1,limit:25}),y=ne({rows:[],total:0,page:1,limit:25}),N=h("CUSTOMER"),I=h(""),ae=ne({rows:[],scope:null}),xe=h(""),L=h(""),Ue=h(!1),F=s=>s?Je(s).format("jYYYY/jMM/jDD HH:mm"):"—",Re=s=>s==null?"—":JSON.stringify(s,null,2),Q=(s,e)=>{var w,K;const k=(K=(w=s==null?void 0:s.response)==null?void 0:w.data)==null?void 0:K.message;return Array.isArray(k)?k.join("، "):k??e};function ze(s){var e;m.provider=s.provider,$e.value=s.provider;for(const k of["tahesab","zarrin"])m[k].baseUrl=s[k].baseUrl,m[k].timeoutMs=s[k].timeoutMs,m[k].caCert=s[k].caCert??"";m.tahesab.dbName=s.tahesab.dbName,m.zarrin.balanceOwesWhen=s.zarrin.balanceOwesWhen,Object.assign(m.features,s.features),Object.assign(m.intervals,s.intervals),m.mapping.karat=s.mapping.karat,m.report.windowDays=s.report.windowDays,m.documents.triggerStatus=((e=s.documents)==null?void 0:e.triggerStatus)??"DELIVERED_TO_AGENT",ie.value=(s.mapping.importCustomerGroups??[]).map(H),re.value=H(s.mapping.newCustomerGroup),q.value=H(s.mapping.newKarSakhteGroup),ue.value=H(s.mapping.newKarSakhteType);for(const k of Object.keys(te))delete te[k];for(const k of s.mapping.categoryGroups??[])te[k.categoryId]=H(k.group)}async function me(){try{Y.value=!0;const{data:s}=await j.get("admin/accounting");O.value=s,ze(s.config)}catch(s){B.error(Q(s,"خطا در دریافت تنظیمات"))}finally{Y.value=!1}}async function ge(){const s={provider:m.provider,tahesab:{baseUrl:m.tahesab.baseUrl,dbName:m.tahesab.dbName,timeoutMs:m.tahesab.timeoutMs,caCert:m.tahesab.caCert},zarrin:{baseUrl:m.zarrin.baseUrl,balanceOwesWhen:m.zarrin.balanceOwesWhen,timeoutMs:m.zarrin.timeoutMs,caCert:m.zarrin.caCert},features:m.features,intervals:m.intervals,report:m.report,documents:m.documents,mapping:{karat:m.mapping.karat,importCustomerGroups:ie.value.map(S).filter(Boolean),newCustomerGroup:S(re.value),newKarSakhteGroup:S(q.value),newKarSakhteType:S(ue.value),categoryGroups:Object.entries(te).filter(([,e])=>!!e).map(([e,k])=>({categoryId:e,group:S(k)}))}};for(const e of["tahesab","zarrin"])X[e].trim()&&(s[e].token=X[e].trim());try{Y.value=!0;const{data:e}=await j.put("admin/accounting/config",s);O.value=e,ze(e.config),X.tahesab="",X.zarrin="",B.success("تنظیمات ذخیره شد")}catch(e){B.error(Q(e,"خطا در ذخیره"))}finally{Y.value=!1}}async function Ke(s){try{const{data:e}=await j.put("admin/accounting/config",{[s]:{token:null}});O.value=e,B.success("توکن حذف شد")}catch(e){B.error(Q(e,"خطا"))}}async function Ne(){_e.value=!0,ce.value=[];try{const{data:s}=await j.get("admin/accounting/options",{params:{provider:m.provider}});G.customerGroups=s.customerGroups.items,G.karSakhteGroups=s.karSakhteGroups.items,G.karSakhteTypes=s.karSakhteTypes.items,ee.value=s.categories;for(const e of[s.customerGroups,s.karSakhteGroups,s.karSakhteTypes])e.ok||ce.value.push(e.error)}catch(s){ce.value=[Q(s,"تنظیمات اتصال را اول ذخیره کنید")]}finally{_e.value=!1}}async function je(s){try{const{data:e}=await j.post(`admin/accounting/run/${s}`);e.started?B.success("همگام‌سازی شروع شد؛ نتیجه چند لحظه بعد در همین صفحه دیده می‌شود"):B.warning(e.message),setTimeout(me,4e3)}catch(e){B.error(Q(e,"خطا"))}}async function le(s=1){const{data:e}=await j.get("admin/accounting/outbox",{params:{page:s,status:Se.value}});Object.assign(J,e)}async function b(s){try{await j.post(`admin/accounting/outbox/${s}/retry`),B.success("دوباره در صف قرار گرفت"),le(J.page)}catch(e){B.error(Q(e,"خطا"))}}async function Ce(s){await j.post(`admin/accounting/outbox/${s}/resolve`,{}),le(J.page)}async function Ve(s=1){const{data:e}=await j.get("admin/accounting/issues",{params:{page:s}});Object.assign(g,e)}async function ft(s){await j.post(`admin/accounting/issues/${s}/resolve`),Ve(g.page),me()}async function he(s=1){const{data:e}=await j.get("admin/accounting/links",{params:{page:s,entityType:N.value,q:I.value||void 0}});Object.assign(y,e)}async function bt(s){await j.delete(`admin/accounting/links/${s}`),he(y.page)}async function _t(){Ue.value=!0;try{const{data:s}=await j.get("admin/accounting/movement",{params:{from:xe.value||void 0,to:L.value||void 0}});Object.assign(ae,s)}catch(s){B.error(Q(s,"خطا در دریافت گردش"))}finally{Ue.value=!1}}return Qe(oe,s=>{s==="outbox"&&le(1),s==="issues"&&Ve(1),s==="links"&&he(1),s==="mapping"&&m.provider!=="none"&&ee.value.length===0&&Ne()}),Dt(me),(s,e)=>{const k=f("a-tag"),w=f("a-button"),K=f("a-space"),ve=f("a-alert"),pe=f("a-tab-pane"),yt=f("a-switch"),Ye=f("a-input-number"),Ze=f("a-select-option"),fe=f("a-select"),we=f("a-table"),Ee=f("a-form-item"),kt=f("a-collapse-panel"),gt=f("a-collapse"),Xe=f("a-divider"),$=f("a-table-column"),Ct=f("a-form"),He=f("a-popconfirm"),et=f("a-radio-button"),wt=f("a-radio-group"),Et=f("a-input-search"),tt=f("a-input"),Ot=f("a-tabs"),St=f("a-spin"),xt=f("a-card");return o(),c("div",null,[p("config.accounting")?(o(),x(xt,{key:0,title:"اتصال به نرم‌افزار حسابداری",class:"page-card table-scroll"},{extra:l(()=>[a(K,null,{default:l(()=>{var Te;return[(Te=O.value)!=null&&Te.busy?(o(),x(k,{key:0,color:"processing"},{default:l(()=>[...e[17]||(e[17]=[u("همگام‌سازی در حال اجرا",-1)])]),_:1})):_("",!0),a(w,{size:"small",onClick:me},{default:l(()=>[...e[18]||(e[18]=[u("تازه‌سازی",-1)])]),_:1})]}),_:1})]),default:l(()=>{var Te,at,lt,st,nt,ot,it,rt;return[O.value&&O.value.config.secretKeySource!=="ACCOUNTING_SECRET_KEY"?(o(),x(ve,{key:0,type:"warning","show-icon":"",class:"mb-4",message:"متغیر ACCOUNTING_SECRET_KEY روی سرور تنظیم نشده است",description:"توکن با کلیدی مشتق از JWT_SECRET رمز می‌شود؛ اگر JWT_SECRET عوض شود باید توکن را دوباره وارد کنید."})):_("",!0),(Te=O.value)!=null&&Te.inactiveReason&&O.value.config.provider!=="none"&&oe.value!=="connection"?(o(),x(ve,{key:1,type:"error","show-icon":"",class:"mb-4",message:"همگام‌سازی انجام نمی‌شود",description:O.value.inactiveReason},null,8,["description"])):be.value&&!((nt=(st=(lt=(at=O.value)==null?void 0:at.config)==null?void 0:lt.mapping)==null?void 0:st.importCustomerGroups)!=null&&nt.length)&&((rt=(it=(ot=O.value)==null?void 0:ot.config)==null?void 0:it.features)!=null&&rt.customers)?(o(),x(ve,{key:2,type:"warning","show-icon":"",class:"mb-4",message:"سینک مشتری اجرا نمی‌شود",description:"هیچ گروه مشتری برای ورود انتخاب نشده است؛ در تب «نگاشت» گروه‌هایی را که واقعاً مشتری هستند انتخاب و ذخیره کنید."})):_("",!0),a(St,{spinning:Y.value},{default:l(()=>[a(Ot,{"active-key":oe.value,"onUpdate:activeKey":e[16]||(e[16]=Ae=>oe.value=Ae)},{default:l(()=>{var Ae;return[a(pe,{key:"connection",tab:"اتصال"},{default:l(()=>[a(Ua,{overview:O.value,form:m,tokens:X,saving:Y.value,onSave:ge,onClearToken:Ke},null,8,["overview","form","tokens","saving"])]),_:1}),a(pe,{key:"features",tab:"قابلیت‌ها و زمان‌بندی"},{default:l(()=>{var d,E,Ge,ut;return[m.provider==="zarrin"?(o(),x(ve,{key:0,type:"info","show-icon":"",class:"mb-4",message:"درایور زرین روی نصب واقعی تست نشده است",description:"طبق تصمیم مالک، پیش از استفاده‌ی واقعی یک دوره‌ی آزمایشی با اسناد موقت لازم است (علامت مانده و فیلد هزینه‌ی سنگ را بررسی کنید)."})):_("",!0),be.value&&((E=(d=O.value)==null?void 0:d.config)!=null&&E.provider)&&(m.features.balances||m.features.products)?(o(),x(ve,{key:1,type:(ut=(Ge=O.value)==null?void 0:Ge.realtime)!=null&&ut.lastError?"warning":"success","show-icon":"",class:"mb-4",message:"همگام‌سازی لحظه‌ای"},{description:l(()=>{var se,R,P,dt;return[(R=(se=O.value)==null?void 0:se.realtime)!=null&&R.lastOkAt?(o(),c("div",Na,[u(" تغییرات حسابداری چند ثانیه یک‌بار بررسی می‌شود؛ آخرین بررسی: "+v(F(O.value.realtime.lastOkAt))+". ",1),O.value.realtime.lastChangeAt?(o(),c("span",ha,"آخرین تغییر دریافت‌شده: "+v(F(O.value.realtime.lastChangeAt))+".",1)):_("",!0)])):(o(),c("div",Ta,"هنوز بررسی انجام نشده است (چند ثانیه بعد از روشن‌شدن شروع می‌شود).")),(dt=(P=O.value)==null?void 0:P.realtime)!=null&&dt.lastError?(o(),c("div",$a,"خطای آخرین بررسی: "+v(O.value.realtime.lastError),1)):_("",!0),e[19]||(e[19]=n("div",{class:"hint"}," سفارش و ویرایش مشتری بلافاصله ارسال می‌شود و موجودی هنگام ثبت سفارش مستقیم از حسابداری خوانده می‌شود؛ اگر حسابداری آن لحظه پاسخ ندهد، آخرین موجودی معلوم ملاک است. بازه‌های «دقیقه»ی زیر فقط شبکه‌ی اطمینان‌اند (مشتری جدید، ویرایش یا حذف در حسابداری). ",-1))]}),_:1},8,["type"])):_("",!0),a(we,{"data-source":Me,columns:We,pagination:!1,"row-key":"key",size:"middle"},{bodyCell:l(({column:se,record:R})=>[se.key==="on"?(o(),x(yt,{key:0,checked:m.features[R.key],"onUpdate:checked":P=>m.features[R.key]=P},null,8,["checked","onUpdate:checked"])):se.key==="interval"?(o(),c(D,{key:1},[R.interval?(o(),x(Ye,{key:0,value:m.intervals[R.interval],"onUpdate:value":P=>m.intervals[R.interval]=P,min:1,max:1440,"addon-after":"دقیقه"},null,8,["value","onUpdate:value"])):R.key==="documents"?(o(),x(fe,{key:1,value:m.documents.triggerStatus,"onUpdate:value":e[0]||(e[0]=P=>m.documents.triggerStatus=P),style:{"min-width":"220px"},title:"سند (موقت / پیش‌فاکتور) وقتی سفارش به این وضعیت برسد ثبت می‌شود"},{default:l(()=>[(o(),c(D,null,Oe(Ie,P=>a(Ze,{key:P.value,value:P.value},{default:l(()=>[u("ثبت در: "+v(P.label),1)]),_:2},1032,["value"])),64))]),_:1},8,["value"])):(o(),c("span",Da,"—"))],64)):se.key==="state"?(o(),c(D,{key:2},[R.job&&de(R.job)?(o(),c("div",Ia,[u(" آخرین اجرا: "+v(F(de(R.job).lastRunAt))+" ",1),de(R.job).lastError?(o(),c("span",Ma," — خطا: "+v(de(R.job).lastError),1)):de(R.job).summary?(o(),c("span",Ra," — "+v(Fe(de(R.job).summary)),1)):_("",!0)])):_("",!0)],64)):se.key==="run"?(o(),c(D,{key:3},[R.job?(o(),x(w,{key:0,size:"small",disabled:!be.value,onClick:P=>je(R.job)},{default:l(()=>[...e[20]||(e[20]=[u("سینک الان",-1)])]),_:1},8,["disabled","onClick"])):_("",!0)],64)):_("",!0)]),_:1}),n("div",za,[a(Ee,{label:"بازه‌ی گزارش مشتری (روز)"},{default:l(()=>[a(Ye,{value:m.report.windowDays,"onUpdate:value":e[1]||(e[1]=se=>m.report.windowDays=se),min:7,max:3650,class:"w-full"},null,8,["value"])]),_:1})]),n("div",ja," اسناد سفارش همیشه «موقت» ثبت می‌شوند و تا حسابدار نهایی نکند روی مانده‌ی حسابداری اثر ندارند. سقف اعتبار سفارش همچنان با دفتر داخلی "+v(U(T).name)+" چک می‌شود. ",1),a(w,{type:"primary",onClick:ge},{default:l(()=>[...e[21]||(e[21]=[u("ذخیره",-1)])]),_:1})]}),_:1}),a(pe,{key:"mapping",tab:"نگاشت"},{default:l(()=>[a(gt,{ghost:"",class:"mb-4"},{default:l(()=>[a(kt,{key:"guide",header:"راهنمای این تب: نگاشت چیست و چطور پر می‌شود؟"},{default:l(()=>[n("p",null,[u(" در این صفحه «"+v(U(T).name)+"» یعنی همین سامانه: ",1),e[22]||(e[22]=n("b",null,"اپ مشتری",-1)),e[23]||(e[23]=u(" (جایی که مشتری ثبت‌نام، احراز هویت و سفارش می‌کند و مانده‌اش را می‌بیند) و ",-1)),e[24]||(e[24]=n("b",null,"پنل مدیریت",-1)),e[25]||(e[25]=u(" (همین پنل، جایی که محصول و دسته‌بندی تعریف می‌شود). «حسابداری» یعنی نرم‌افزار حسابداری مغازه (ته‌حساب یا زرین). ",-1))]),n("p",null,v(U(T).name)+" و حسابداری هر کدام گروه‌بندی خودشان را دارند. این تب می‌گوید هر چیز در "+v(U(T).name)+" با کدام گروه در حسابداری متناظر است؛ خودِ مشتری‌ها و محصول‌ها اینجا وصل نمی‌شوند (آن‌ها در تب «لینک‌ها» دیده می‌شوند). ",1),n("ol",null,[e[29]||(e[29]=n("li",null,"تنظیمات تب «اتصال» را ذخیره کنید، بعد «دریافت گروه‌ها از حسابداری» را بزنید تا فهرست‌ها از حسابداری پر شوند.",-1)),n("li",null,[n("b",null,"گروه‌های حسابی که مشتری "+v(U(T).name)+" حساب می‌شوند:",1),e[26]||(e[26]=u(" در حسابداری صندوق، کارمند و سرمایه‌گذار هم «حساب» هستند. فقط گروه‌هایی را انتخاب کنید که واقعاً مشتری‌اند؛ سینک مشتری فقط حساب‌های این گروه‌ها را با شماره موبایل به کاربران اپ مشتری وصل می‌کند. اگر خالی بماند سینک مشتری اجرا نمی‌شود. ",-1))]),e[30]||(e[30]=n("li",null,[n("b",null,"گروه مشتری جدید:"),u(" وقتی کاربری در اپ مشتری احراز هویت شود و در حسابداری حساب نداشته باشد، حسابش در این گروه ساخته می‌شود. اگر تعیین نشود، ساخت حساب در «لاگ ارسال» با وضعیت «نیاز به بررسی» می‌ماند. ")],-1)),n("li",null,[e[27]||(e[27]=n("b",null,"عیار پایه:",-1)),u(" عیار وزن‌هایی که در "+v(U(T).name)+" ثبت می‌شود (وزن محصول‌ها و سفارش‌ها؛ معمولاً ۷۵۰ = ۱۸ عیار). در سند سفارش، وزن با همین عیار به حسابداری می‌رود؛ در ته‌حساب اجرت هم روی آن اعمال می‌شود (مثلاً ۷۵۰ با اجرت ۱۰٪ می‌شود ۸۲۵). ",1)]),m.provider==="zarrin"?(o(),c("li",Aa,[e[28]||(e[28]=n("b",null,"کارساخته (فقط زرین):",-1)),u(" وقتی در پنل مدیریت "+v(U(T).name)+" محصول جدیدی تعریف شود، برایش یک «کارساخته» در زرین ساخته می‌شود. «نوع» تعیین می‌کند گرمی است یا تعدادی، و «گروه ساخته» جای آن در زرین است. در جدول پایین برای هر دسته‌بندی محصولِ "+v(U(T).name)+" می‌توانید گروه جدا بدهید؛ دسته‌ای که «پیش‌فرض» بماند در «گروه ساخته‌ی پیش‌فرض» می‌رود. اگر نوع یا گروه خالی باشد، ساخت کارساخته در «لاگ ارسال» منتظر بررسی می‌ماند. ",1)])):_("",!0)]),e[31]||(e[31]=n("p",{class:"hint"}," تغییر این تنظیمات فقط روی موارد بعدی اثر دارد؛ حساب‌ها و کارساخته‌هایی که قبلاً ساخته شده‌اند جابه‌جا نمی‌شوند. در آخر «ذخیره» را بزنید. ",-1))]),_:1})]),_:1}),a(K,{class:"mb-4"},{default:l(()=>[a(w,{disabled:m.provider==="none",loading:_e.value,onClick:Ne},{default:l(()=>[...e[32]||(e[32]=[u("دریافت گروه‌ها از حسابداری",-1)])]),_:1},8,["disabled","loading"]),(o(!0),c(D,null,Oe(ce.value,d=>(o(),c("span",{key:d,class:"warn"},v(d),1))),128))]),_:1}),a(Ct,{layout:"vertical"},{default:l(()=>[a(Xe,{orientation:"right"},{default:l(()=>[...e[33]||(e[33]=[u("حساب مشتری‌ها",-1)])]),_:1}),a(ve,{type:"info","show-icon":"",class:"mb-4",message:`این بخش تعیین می‌کند کدام حساب‌های حسابداری به کاربران اپ مشتری ${U(T).name} وصل شوند`},{description:l(()=>[n("div",null," هر حسابی که در گروه‌های انتخاب‌شده باشد و موبایلش با یک کاربر اپ مشتری "+v(U(T).name)+" یکی باشد، به آن کاربر وصل می‌شود و مانده‌اش در اپ مشتری نمایش داده می‌شود. صندوق، کارمند و سرمایه‌گذار را انتخاب نکنید. ",1),e[34]||(e[34]=n("div",null," مثال: «بنکدار» و «مغازه‌دار» را در فیلد اول انتخاب کنید و در فیلد دوم «مغازه‌دار» را بگذارید. در این حالت کسی که در اپ مشتری ثبت‌نام و احراز هویت کند و در حسابداری حساب نداشته باشد، در گروه «مغازه‌دار» برایش حساب ساخته می‌شود. ",-1))]),_:1},8,["message"]),n("div",Ga,[a(Ee,{label:`گروه‌های حسابی که مشتری ${U(T).name} حساب می‌شوند`,extra:"فقط گروه‌هایی که مشتری‌اند؛ خالی = سینک مشتری اجرا نمی‌شود"},{default:l(()=>[a(fe,{value:ie.value,"onUpdate:value":e[2]||(e[2]=d=>ie.value=d),mode:"multiple",options:ke.value,"allow-clear":"",placeholder:"هیچ گروهی انتخاب نشده"},null,8,["value","options"])]),_:1},8,["label"]),a(Ee,{label:"گروه حسابداریِ مشتری تازه‌ی اپ مشتری",extra:"کاربری که در اپ مشتری احراز هویت شده و در حسابداری حساب ندارد، در این گروه برایش حساب ساخته می‌شود"},{default:l(()=>[a(fe,{value:re.value,"onUpdate:value":e[3]||(e[3]=d=>re.value=d),options:ke.value,"allow-clear":""},null,8,["value","options"])]),_:1}),a(Ee,{label:`عیار پایه‌ی وزن‌های ${U(T).name}`,extra:`عیار وزن محصول‌ها و سفارش‌ها در ${U(T).name}؛ ۷۵۰ یعنی ۱۸ عیار`},{default:l(()=>[a(Ye,{value:m.mapping.karat,"onUpdate:value":e[4]||(e[4]=d=>m.mapping.karat=d),min:1,max:1e3,class:"w-full"},null,8,["value"])]),_:1},8,["label","extra"])]),m.provider==="zarrin"?(o(),c(D,{key:0},[a(Xe,{orientation:"right"},{default:l(()=>[...e[35]||(e[35]=[u("کارساخته (زرین)",-1)])]),_:1}),a(ve,{type:"info","show-icon":"",class:"mb-4",message:`هر محصولی که در پنل مدیریت ${U(T).name} (بخش محصولات) تعریف می‌کنید، در زرین یک «کارساخته» می‌شود`},{description:l(()=>[e[36]||(e[36]=n("div",null,[u(" زرین برای ساختن کارساخته دو چیز لازم دارد: "),n("b",null,"نوع"),u(" (گرمی یا تعدادی) و "),n("b",null,"گروه ساخته"),u(" (کارساخته در کدام پوشه‌ی زرین قرار بگیرد). این بخش این دو را به‌جای شما انتخاب می‌کند تا لازم نباشد برای هر محصول جداگانه در زرین کاری انجام دهید. ")],-1)),n("div",null," ستون «دسته‌بندی محصول در "+v(U(T).name)+"» همان دسته‌بندی‌هایی است که در پنل مدیریت برای محصولات تعریف کرده‌اید. مثال: اگر روبه‌روی «انگشتر» گروه «انگشتر» زرین را بگذارید، هر محصول تازه در دسته‌ی انگشتر "+v(U(T).name)+"، در گروه انگشترِ زرین ساخته می‌شود. دسته‌هایی که «پیش‌فرض» بمانند در «گروه ساخته‌ی پیش‌فرض» می‌روند. ",1),n("div",null," اگر نوع یا گروه خالی باشد، محصول در "+v(U(T).name)+" ساخته می‌شود ولی ساخت کارساخته در «لاگ ارسال» منتظر می‌ماند تا آن را تعیین کنید و «تلاش دوباره» بزنید. محصول‌هایی که از قبل به کارساخته وصل شده‌اند تغییری نمی‌کنند. ",1)]),_:1},8,["message"]),n("div",La,[a(Ee,{label:"نوع کارساخته‌ی جدید (گرمی/تعدادی…)",extra:`برای محصول تازه‌ای که در پنل مدیریت ${U(T).name} تعریف می‌شود`},{default:l(()=>[a(fe,{value:ue.value,"onUpdate:value":e[5]||(e[5]=d=>ue.value=d),options:De.value,"allow-clear":""},null,8,["value","options"])]),_:1},8,["extra"]),a(Ee,{label:"گروه ساخته‌ی پیش‌فرض",extra:"برای دسته‌هایی که در جدول زیر «پیش‌فرض» مانده‌اند"},{default:l(()=>[a(fe,{value:q.value,"onUpdate:value":e[6]||(e[6]=d=>q.value=d),options:z.value,"allow-clear":""},null,8,["value","options"])]),_:1})]),a(we,{"data-source":ee.value,pagination:!1,"row-key":"id",size:"small",class:"mb-4"},{default:l(()=>[a($,{title:`دسته‌بندی محصول در ${U(T).name}`,"data-index":"title"},null,8,["title"]),a($,{title:"گروه ساخته در زرین"},{default:l(({record:d})=>[a(fe,{value:te[d.id],"onUpdate:value":E=>te[d.id]=E,options:z.value,"allow-clear":"",class:"w-full",placeholder:"پیش‌فرض"},null,8,["value","onUpdate:value","options"])]),_:1})]),_:1},8,["data-source"])],64)):m.provider==="tahesab"?(o(),c("div",Pa," ته‌حساب در API خود ساخت کارساخته ندارد: نام کار با اولین سند سفارش در ته‌حساب ساخته می‌شود و از آن به بعد به محصول لینک می‌شود. ")):_("",!0),ce.value.length?(o(),c("div",Ba," اگر فهرستی خالی است، یعنی دریافت آن از حسابداری خطا داده (پیام قرمز بالای صفحه). اتصال را بررسی کنید و دوباره «دریافت گروه‌ها» را بزنید. ")):_("",!0),a(w,{type:"primary",onClick:ge},{default:l(()=>[...e[37]||(e[37]=[u("ذخیره",-1)])]),_:1})]),_:1})]),_:1}),a(pe,{key:"outbox",tab:`لاگ ارسال${t.value}`},{default:l(()=>[a(K,{class:"mb-4"},{default:l(()=>[a(fe,{value:Se.value,"onUpdate:value":e[7]||(e[7]=d=>Se.value=d),style:{width:"180px"},"allow-clear":"",placeholder:"همه‌ی وضعیت‌ها",onChange:e[8]||(e[8]=d=>le(1))},{default:l(()=>[(o(),c(D,null,Oe(V,(d,E)=>a(Ze,{key:E,value:E},{default:l(()=>[u(v(d),1)]),_:2},1032,["value"])),64))]),_:1},8,["value"]),a(w,{onClick:e[9]||(e[9]=d=>le(J.page))},{default:l(()=>[...e[38]||(e[38]=[u("تازه‌سازی",-1)])]),_:1})]),_:1}),a(we,{"data-source":J.rows,columns:r,"row-key":"id",size:"small",pagination:{current:J.page,pageSize:J.limit,total:J.total,onChange:le}},{bodyCell:l(({column:d,record:E})=>[d.key==="createdAt"?(o(),c(D,{key:0},[u(v(F(E.createdAt)),1)],64)):d.key==="kind"?(o(),c(D,{key:1},[u(v(Be[E.kind]??E.kind),1)],64)):d.key==="entity"?(o(),c(D,{key:2},[u(v(E.entityLabel??E.entityId),1)],64)):d.key==="status"?(o(),c(D,{key:3},[a(k,{color:W[E.status]},{default:l(()=>[u(v(V[E.status]??E.status),1)]),_:2},1032,["color"]),E.provider!==m.provider?(o(),c("span",Wa," ("+v(E.provider)+")",1)):_("",!0)],64)):d.key==="error"?(o(),c("span",Fa,v(E.lastError),1)):d.key==="actions"?(o(),x(K,{key:5},{default:l(()=>[["FAILED","NEEDS_REVIEW","PENDING"].includes(E.status)?(o(),x(He,{key:0,title:"پیش از تلاش دوباره، مطمئن شوید سند در حسابداری ثبت نشده است. ادامه؟",onConfirm:Ge=>b(E.id)},{default:l(()=>[a(w,{size:"small"},{default:l(()=>[...e[39]||(e[39]=[u("تلاش دوباره",-1)])]),_:1})]),_:1},8,["onConfirm"])):_("",!0),["FAILED","NEEDS_REVIEW","PENDING"].includes(E.status)?(o(),x(He,{key:1,title:"این ردیف «حل‌شده» علامت بخورد (دستی در حسابداری رسیدگی شده)؟",onConfirm:Ge=>Ce(E.id)},{default:l(()=>[a(w,{size:"small"},{default:l(()=>[...e[40]||(e[40]=[u("حل‌شده",-1)])]),_:1})]),_:1},8,["onConfirm"])):_("",!0)]),_:2},1024)):_("",!0)]),expandedRowRender:l(({record:d})=>[n("div",Ka,[n("div",null,[e[41]||(e[41]=n("b",null,"درخواست",-1)),n("pre",Va,v(Re(d.lastRequest)),1)]),n("div",null,[e[42]||(e[42]=n("b",null,"پاسخ",-1)),n("pre",Ya,v(Re(d.lastResponse)),1)])]),n("div",Ha,"کد مرجع: "+v(d.externalRef??"—")+" | تلاش: "+v(d.attempts)+" | تلاش بعدی: "+v(F(d.nextAttemptAt)),1)]),_:1},8,["data-source","pagination"])]),_:1},8,["tab"]),a(pe,{key:"issues",tab:`مغایرت‌ها${(Ae=O.value)!=null&&Ae.openIssues?` (${O.value.openIssues})`:""}`},{default:l(()=>[a(we,{"data-source":g.rows,"row-key":"id",size:"small",pagination:{current:g.page,pageSize:g.limit,total:g.total,onChange:Ve}},{default:l(()=>[a($,{title:"تاریخ"},{default:l(({record:d})=>[u(v(F(d.updatedAt)),1)]),_:1}),a($,{title:"نرم‌افزار","data-index":"provider"}),a($,{title:"نوع"},{default:l(({record:d})=>[u(v(i[d.kind]??d.kind),1)]),_:1}),a($,{title:"کد حسابداری","data-index":"externalCode"}),a($,{title:"شرح","data-index":"message"}),a($,{title:""},{default:l(({record:d})=>[a(w,{size:"small",onClick:E=>ft(d.id)},{default:l(()=>[...e[43]||(e[43]=[u("رسیدگی شد",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["data-source","pagination"])]),_:1},8,["tab"]),a(pe,{key:"links",tab:"لینک‌ها"},{default:l(()=>[a(K,{class:"mb-4"},{default:l(()=>[a(wt,{value:N.value,"onUpdate:value":e[10]||(e[10]=d=>N.value=d),onChange:e[11]||(e[11]=d=>he(1))},{default:l(()=>[a(et,{value:"CUSTOMER"},{default:l(()=>[...e[44]||(e[44]=[u("مشتری",-1)])]),_:1}),a(et,{value:"PRODUCT"},{default:l(()=>[...e[45]||(e[45]=[u("کارساخته",-1)])]),_:1})]),_:1},8,["value"]),a(Et,{value:I.value,"onUpdate:value":e[12]||(e[12]=d=>I.value=d),placeholder:"کد یا نام در حسابداری",style:{width:"240px"},onSearch:e[13]||(e[13]=d=>he(1))},null,8,["value"])]),_:1}),a(we,{"data-source":y.rows,"row-key":"id",size:"small",pagination:{current:y.page,pageSize:y.limit,total:y.total,onChange:he}},{default:l(()=>[a($,{title:"کد حسابداری","data-index":"externalCode"}),a($,{title:"نام در حسابداری","data-index":"externalName"}),a($,{title:`شناسه در ${U(T).name}`,"data-index":"entityId"},null,8,["title"]),a($,{title:"منشأ"},{default:l(({record:d})=>[u(v(Z[d.origin]??d.origin),1)]),_:1}),a($,{title:"آخرین سینک"},{default:l(({record:d})=>[u(v(F(d.syncedAt)),1)]),_:1}),a($,{title:""},{default:l(({record:d})=>[a(He,{title:"لینک حذف شود؟ در سینک بعدی دوباره با موبایل/نام جفت می‌شود.",onConfirm:E=>bt(d.id)},{default:l(()=>[a(w,{size:"small",danger:""},{default:l(()=>[...e[46]||(e[46]=[u("حذف لینک",-1)])]),_:1})]),_:1},8,["onConfirm"])]),_:1})]),_:1},8,["data-source","pagination"])]),_:1}),a(pe,{key:"movement",tab:"گردش کارساخته"},{default:l(()=>[a(K,{class:"mb-4"},{default:l(()=>[a(tt,{value:xe.value,"onUpdate:value":e[14]||(e[14]=d=>xe.value=d),dir:"ltr",placeholder:"از ۱۴۰۵/۰۷/۰۱",style:{width:"150px"}},null,8,["value"]),a(tt,{value:L.value,"onUpdate:value":e[15]||(e[15]=d=>L.value=d),dir:"ltr",placeholder:"تا ۱۴۰۵/۰۷/۳۰",style:{width:"150px"}},null,8,["value"]),a(w,{disabled:!be.value,loading:Ue.value,onClick:_t},{default:l(()=>[...e[47]||(e[47]=[u("نمایش",-1)])]),_:1},8,["disabled","loading"])]),_:1}),ae.scope==="recent-documents"?(o(),x(ve,{key:0,type:"info","show-icon":"",class:"mb-4",message:"ته‌حساب گزارش گردش همه‌ی حساب‌ها را ندارد؛ این فهرست از آخرین ۱۰۰۰ سند ثبت‌شده ساخته شده است."})):_("",!0),a(we,{"data-source":ae.rows,"row-key":(d,E)=>E,size:"small"},{default:l(()=>[a($,{title:"تاریخ","data-index":"date"}),a($,{title:"کارساخته","data-index":"itemName"}),a($,{title:"شرح","data-index":"description"}),a($,{title:"وزن","data-index":"weight"}),a($,{title:"تعداد","data-index":"count"}),a($,{title:"مبلغ","data-index":"amount"})]),_:1},8,["data-source","row-key"])]),_:1})]}),_:1},8,["active-key"])]),_:1},8,["spinning"])]}),_:1})):_("",!0)])}}}),el=pt(qa,[["__scopeId","data-v-cc33ab94"]]);export{el as default}; +import{m as Je}from"./index-DjZc5EYL.js";import{c as a,I as Ut,d as mt,n as Qe,o,b as c,p as n,a as x,g as Nt,f as u,t as v,w as l,i as _,F as D,e as Oe,q as Le,h as U,K as ht,s as M,z as ne,m as h,y as j,J as B,r as f,L as vt,M as Tt,_ as pt,u as $t,x as Dt,j as T}from"./index-CpVArufm.js";import{L as It}from"./LockOutlined-Dute1ueQ.js";import{S as qe}from"./SafetyCertificateOutlined-mD-ddSP4.js";var Mt={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm192 472c0 4.4-3.6 8-8 8H328c-4.4 0-8-3.6-8-8v-48c0-4.4 3.6-8 8-8h368c4.4 0 8 3.6 8 8v48z"}}]},name:"minus-circle",theme:"filled"};function ct(C){for(var A=1;Ap.form.provider==="none"?null:p.form.provider),Z=M(()=>{var r;return((r=p.overview)==null?void 0:r.config)??null}),Y=r=>{var t;return(t=Z.value)==null?void 0:t[r]},oe=M(()=>{var r;return!!(i.value&&((r=Y(i.value))!=null&&r.tokenSet))}),O=M(()=>!!i.value&&/^https:\/\//i.test(p.form[i.value].baseUrl||"")),m=(r,t)=>{var g,y,N,I,ae;return JSON.stringify(t==="none"?{provider:t}:{provider:t,baseUrl:((g=r[t])==null?void 0:g.baseUrl)??"",caCert:((y=r[t])==null?void 0:y.caCert)??"",timeoutMs:(N=r[t])==null?void 0:N.timeoutMs,dbName:t==="tahesab"?(I=r.tahesab)==null?void 0:I.dbName:void 0,balanceOwesWhen:t==="zarrin"?(ae=r.zarrin)==null?void 0:ae.balanceOwesWhen:void 0})},X=M(()=>{var r;return Z.value?p.form.provider!==Z.value.provider?!0:i.value?m(p.form,i.value)!==m(Z.value,i.value)||!!((r=p.tokens[i.value])!=null&&r.trim()):!1:!1}),$e=M(()=>!!Z.value&&Z.value.provider!=="none"&&Z.value.provider!==p.form.provider),be=r=>r?Je(r).format("jYYYY/jMM/jDD ساعت HH:mm"):"",G=M(()=>{const r=p.overview;if(!r)return{tone:"off",icon:Pe,title:"…",text:"",rows:[]};const t=r.config;if(t.provider==="none")return{tone:"off",icon:Pe,title:"اتصال خاموش است",text:"هیچ اطلاعاتی با نرم‌افزار حسابداری رد و بدل نمی‌شود."};const g=W[t.provider];if(r.inactiveReason)return{tone:"bad",icon:vt,title:`اتصال به ${g} کار نمی‌کند`,text:r.inactiveReason};const y=r.realtime;if(y!=null&&y.lastError)return{tone:"bad",icon:vt,title:`${g}: ارتباط برقرار نیست`,text:y.lastError};const I=[{label:"آدرس",value:t[t.provider].baseUrl,ltr:!0}];return t.provider==="tahesab"&&I.push({label:"دیتابیس",value:t.tahesab.dbName,ltr:!0}),y!=null&&y.lastOkAt&&I.push({label:"آخرین ارتباط موفق",value:be(y.lastOkAt)}),{tone:"ok",icon:Tt,title:`متصل به ${g}`,text:"",rows:I}}),ee=ne({tahesab:!1,zarrin:!1});function ce(){i.value&&(p.tokens[i.value]="",ee[i.value]=!1)}Qe(()=>p.overview,()=>{ee.tahesab=!1,ee.zarrin=!1,S.value=null});const _e=M({get:()=>i.value?Math.round((p.form[i.value].timeoutMs??2e4)/1e3):20,set:r=>{i.value&&(p.form[i.value].timeoutMs=Math.max(3,Math.min(120,Number(r)||20))*1e3)}}),H=h(!1),S=h(null),ye=r=>{var t;return((t=r.match(/CN=([^\n,]+)/))==null?void 0:t[1])??r.replace(/\n/g,", ")},ie=r=>r?Je(new Date(r)).format("jYYYY/jMM/jDD"):"—",re=M(()=>{var r;return!!i.value&&(p.form[i.value].caCert||"")!==(((r=Y(i.value))==null?void 0:r.caCert)||"")}),q=M(()=>{var r;return i.value?re.value?S.value&&S.value.pem===p.form[i.value].caCert?S.value:null:((r=Y(i.value))==null?void 0:r.caInfo)??null:null});async function ue(){var r,t;if(i.value){H.value=!0;try{const{data:g}=await j.post("admin/accounting/certificate",{baseUrl:p.form[i.value].baseUrl});S.value=g,p.form[i.value].caCert&&g.pem.trim()===p.form[i.value].caCert.trim()?B.success("گواهی سرور همان گواهی تأییدشده است"):p.form[i.value].caCert&&(p.form[i.value].caCert="")}catch(g){B.error(((t=(r=g==null?void 0:g.response)==null?void 0:r.data)==null?void 0:t.message)??"گواهی دریافت نشد")}finally{H.value=!1}}}function te(){!i.value||!S.value||(p.form[i.value].caCert=S.value.pem)}const ke=h(!1),z=h(null),De=h(""),Ie=()=>i.value?JSON.stringify([p.form.provider,p.form[i.value],p.tokens[i.value]]):"",Me=M(()=>!!z.value&&De.value!==Ie()),We=M(()=>{var r;return!!i.value&&!!p.form[i.value].baseUrl&&(oe.value||!!((r=p.tokens[i.value])!=null&&r.trim()))});Qe(i,()=>z.value=null);async function de(){var t,g;if(!i.value)return;const r=i.value;ke.value=!0;try{const y={baseUrl:p.form[r].baseUrl,timeoutMs:p.form[r].timeoutMs,caCert:p.form[r].caCert,token:p.tokens[r]||void 0};r==="tahesab"?y.dbName=p.form.tahesab.dbName:y.balanceOwesWhen=p.form.zarrin.balanceOwesWhen,De.value=Ie();const{data:N}=await j.post("admin/accounting/test",{provider:r,connection:y});z.value=N}catch(y){const N=(g=(t=y==null?void 0:y.response)==null?void 0:t.data)==null?void 0:g.message;z.value={ok:!1,error:Array.isArray(N)?N.join("، "):N??"خطا در تست اتصال"}}finally{ke.value=!1}}const Fe={version:{label:"نسخه",ltr:!0},dbType:{label:"نوع دیتابیس",ltr:!0},dbName:{label:"دیتابیس",ltr:!0},customerGroups:{label:"گروه‌های حساب"},message:{label:"پیام سرور"}},J=M(()=>{var g,y;const r=((g=z.value)==null?void 0:g.info)??{},t=Object.entries(Fe).filter(([N])=>r[N]!==void 0&&r[N]!==null&&r[N]!=="").map(([N,I])=>({label:I.label,value:String(r[N]),ltr:I.ltr}));return t.push({label:"زمان پاسخ",value:`${(((y=z.value)==null?void 0:y.ms)??0).toLocaleString("fa-IR")} میلی‌ثانیه`,ltr:!1}),t}),Se=M(()=>{var r,t;return i.value==="tahesab"&&!!((t=(r=z.value)==null?void 0:r.info)!=null&&t.dbName)&&String(z.value.info.dbName).toLowerCase()!==String(p.form.tahesab.dbName||"").toLowerCase()});return(r,t)=>{var Ne,je,le;const g=f("a-tag"),y=f("a-alert"),N=f("a-input"),I=f("a-form-item"),ae=f("a-select-option"),xe=f("a-select"),L=f("a-button"),Ue=f("a-popconfirm"),F=f("a-space"),Re=f("a-input-password"),Q=f("a-form"),ze=f("a-input-number"),me=f("a-collapse-panel"),ge=f("a-collapse"),Ke=f("a-textarea");return o(),c("div",zt,[n("div",{class:Le(["status",`status--${G.value.tone}`])},[(o(),x(Nt(G.value.icon),{class:"status__icon"})),n("div",jt,[n("div",At,[u(v(G.value.title)+" ",1),X.value?(o(),x(g,{key:0,color:"orange",class:"status__tag"},{default:l(()=>[...t[11]||(t[11]=[u("تغییرات ذخیره نشده",-1)])]),_:1})):_("",!0)]),G.value.text?(o(),c("div",Gt,v(G.value.text),1)):_("",!0),(Ne=G.value.rows)!=null&&Ne.length?(o(),c("dl",Lt,[(o(!0),c(D,null,Oe(G.value.rows,b=>(o(),c(D,{key:b.label},[n("dt",null,v(b.label),1),n("dd",{dir:b.ltr?"ltr":void 0,class:Le({latin:b.ltr})},v(b.value),11,Pt)],64))),128))])):_("",!0)])],2),n("section",Bt,[t[13]||(t[13]=n("h3",{class:"step__title"},[n("span",{class:"step__no"},"۱"),u("نرم‌افزار حسابداری")],-1)),n("div",Wt,[(o(),c(D,null,Oe(Be,b=>n("button",{key:b.value,type:"button",role:"radio","aria-checked":C.form.provider===b.value,class:Le(["choice",{"choice--on":C.form.provider===b.value}]),onClick:Ce=>C.form.provider=b.value},[t[12]||(t[12]=n("span",{class:"choice__dot"},null,-1)),n("span",Kt,v(b.label),1),n("span",Vt,v(b.desc),1)],10,Ft)),64))]),$e.value?(o(),x(y,{key:0,class:"mt",type:"info","show-icon":"",message:"با ذخیره، نرم‌افزار عوض می‌شود",description:"کارهای در صف نرم‌افزار قبلی متوقف می‌مانند (پاک نمی‌شوند) و لینک‌های هر نرم‌افزار جدا نگه داشته می‌شوند؛ برگشت بی‌خطر است."})):_("",!0)]),i.value?(o(),c(D,{key:0},[n("section",Yt,[n("h3",Ht,[t[14]||(t[14]=n("span",{class:"step__no"},"۲",-1)),u("اطلاعات اتصال به "+v(W[i.value]),1)]),a(Q,{layout:"vertical",class:"grid"},{default:l(()=>[a(I,{label:"آدرس وب‌سرویس",required:""},{default:l(()=>[a(N,{value:C.form[i.value].baseUrl,"onUpdate:value":t[0]||(t[0]=b=>C.form[i.value].baseUrl=b),dir:"ltr",class:"ltr",placeholder:i.value==="tahesab"?"https://192.168.1.10:8081":"http://192.168.1.10:8000/ZarrinService/accounting"},null,8,["value","placeholder"]),n("div",qt,"آدرسی که وب‌سرویس "+v(W[i.value])+" روی آن در دسترس است، با پورت.",1)]),_:1}),i.value==="tahesab"?(o(),x(I,{key:0,label:"نام دیتابیس (DBname)",required:""},{default:l(()=>[a(N,{value:C.form.tahesab.dbName,"onUpdate:value":t[1]||(t[1]=b=>C.form.tahesab.dbName=b),dir:"ltr",class:"ltr",placeholder:"TahesabDB"},null,8,["value"]),t[15]||(t[15]=n("div",{class:"help"},"نام دقیق دیتابیس همین شرکت. یک سرور ممکن است چند دیتابیس داشته باشد؛ بعد از تست، نام را در نتیجه چک کنید.",-1))]),_:1})):(o(),x(I,{key:1,label:"علامت مانده‌ی بدهکار"},{default:l(()=>[a(xe,{value:C.form.zarrin.balanceOwesWhen,"onUpdate:value":t[2]||(t[2]=b=>C.form.zarrin.balanceOwesWhen=b)},{default:l(()=>[a(ae,{value:"negative"},{default:l(()=>[...t[16]||(t[16]=[u("منفی یعنی بدهکار",-1)])]),_:1}),a(ae,{value:"positive"},{default:l(()=>[...t[17]||(t[17]=[u("مثبت یعنی بدهکار",-1)])]),_:1})]),_:1},8,["value"]),t[18]||(t[18]=n("div",{class:"help"},"در زرین منفی یعنی بدهکار (روی نصب واقعی بررسی شد)؛ تغییرش ندهید مگر نصب شما خلاف این باشد.",-1))]),_:1})),a(I,{label:"توکن وب‌سرویس",required:"",class:"grid__full"},{default:l(()=>{var b;return[oe.value&&!ee[i.value]?(o(),c("div",Jt,[a(U(It),{class:"token__icon"}),(b=Y(i.value))!=null&&b.tokenReadable?(o(),c("span",Qt,"توکن ذخیره شده است و نمایش داده نمی‌شود.")):(o(),c("span",Zt,"توکن ذخیره‌شده قابل‌خواندن نیست؛ دوباره وارد کنید.")),a(F,{class:"token__actions"},{default:l(()=>[a(L,{size:"small",onClick:t[3]||(t[3]=Ce=>ee[i.value]=!0)},{default:l(()=>[...t[19]||(t[19]=[u("تغییر توکن",-1)])]),_:1}),a(Ue,{title:"توکن حذف شود؟ تا توکن جدید وارد نشود اتصال کار نمی‌کند.","ok-text":"حذف","cancel-text":"انصراف",onConfirm:t[4]||(t[4]=Ce=>V("clearToken",i.value))},{default:l(()=>[a(L,{size:"small",danger:""},{default:l(()=>[...t[20]||(t[20]=[u("حذف",-1)])]),_:1})]),_:1})]),_:1})])):(o(),c(D,{key:1},[a(Re,{value:C.tokens[i.value],"onUpdate:value":t[5]||(t[5]=Ce=>C.tokens[i.value]=Ce),dir:"ltr",class:"ltr",autocomplete:"new-password",placeholder:"توکن را اینجا وارد کنید"},null,8,["value"]),n("div",Xt,[t[21]||(t[21]=u(" بعد از ذخیره، توکن رمز می‌شود و دیگر نمایش داده نمی‌شود. ",-1)),oe.value?(o(),c("a",{key:0,class:"link",onClick:ce},"انصراف و نگه‌داشتن توکن فعلی")):_("",!0)])],64))]}),_:1})]),_:1}),a(ge,{ghost:"",class:"advanced"},{default:l(()=>[a(me,{key:"adv",header:"تنظیمات پیشرفته"},{default:l(()=>[a(Q,{layout:"vertical"},{default:l(()=>[a(I,{label:"حداکثر زمان انتظار برای پاسخ"},{default:l(()=>[a(ze,{value:_e.value,"onUpdate:value":t[6]||(t[6]=b=>_e.value=b),min:3,max:120,"addon-after":"ثانیه"},null,8,["value"]),t[22]||(t[22]=n("div",{class:"help"},"اگر سرور حسابداری کند است بیشترش کنید. پیش‌فرض ۲۰ ثانیه.",-1))]),_:1})]),_:1})]),_:1})]),_:1})]),O.value?(o(),c("section",ea,[t[41]||(t[41]=n("h3",{class:"step__title"},[n("span",{class:"step__no"},"۳"),u("گواهی امنیتی سرور")],-1)),n("p",ta," اتصال همیشه رمزنگاری‌شده و بررسی‌شده است. نصب‌های معمول "+v(W[i.value])+" گواهی خودساخته دارند؛ در این حالت یک بار گواهی سرور را بررسی و تأیید کنید. ",1),C.form[i.value].caCert?(o(),c("div",aa,[a(U(qe),{class:"cert__icon"}),n("div",la,[n("div",sa,[t[25]||(t[25]=u(" گواهی سرور تأیید شده است ",-1)),re.value?(o(),x(g,{key:0,color:"orange"},{default:l(()=>[...t[23]||(t[23]=[u("ذخیره نشده",-1)])]),_:1})):_("",!0),(je=q.value)!=null&&je.expired?(o(),x(g,{key:1,color:"red"},{default:l(()=>[...t[24]||(t[24]=[u("منقضی شده",-1)])]),_:1})):_("",!0)]),q.value?(o(),c("dl",na,[t[26]||(t[26]=n("dt",null,"صادرشده برای",-1)),n("dd",oa,v(ye(q.value.subject)),1),t[27]||(t[27]=n("dt",null,"معتبر تا",-1)),n("dd",null,v(ie(q.value.validTo)),1),t[28]||(t[28]=n("dt",null,"اثرانگشت",-1)),n("dd",ia,v(q.value.fingerprint256),1)])):(o(),c("div",ra,"مشخصات گواهی بعد از ذخیره نمایش داده می‌شود."))]),a(F,{direction:"vertical",class:"cert__actions"},{default:l(()=>[a(L,{size:"small",loading:H.value,onClick:ue},{default:l(()=>[...t[29]||(t[29]=[u("بررسی دوباره",-1)])]),_:1},8,["loading"]),a(L,{size:"small",danger:"",onClick:t[7]||(t[7]=b=>C.form[i.value].caCert="")},{default:l(()=>[...t[30]||(t[30]=[u("برداشتن",-1)])]),_:1})]),_:1})])):S.value&&!S.value.trustedBySystem?(o(),c("div",ua,[a(U(ht),{class:"cert__icon"}),n("div",da,[t[34]||(t[34]=n("div",{class:"cert__title"},"این گواهی را تأیید می‌کنید؟",-1)),t[35]||(t[35]=n("div",{class:"help"},"اثرانگشت زیر را با گواهی نصب‌شده روی سرور حسابداری مقایسه کنید. اگر یکی است تأیید کنید.",-1)),n("dl",va,[t[31]||(t[31]=n("dt",null,"صادرشده برای",-1)),n("dd",ca,v(ye(S.value.subject)),1),t[32]||(t[32]=n("dt",null,"معتبر تا",-1)),n("dd",null,v(ie(S.value.validTo)),1),t[33]||(t[33]=n("dt",null,"اثرانگشت",-1)),n("dd",ma,v(S.value.fingerprint256),1)]),S.value.expired?(o(),x(y,{key:0,type:"error","show-icon":"",message:"این گواهی منقضی شده است.",class:"mt"})):_("",!0)]),a(F,{direction:"vertical",class:"cert__actions"},{default:l(()=>[a(L,{type:"primary",size:"small",onClick:te},{default:l(()=>[...t[36]||(t[36]=[u("تأیید گواهی",-1)])]),_:1}),a(L,{size:"small",onClick:t[8]||(t[8]=b=>S.value=null)},{default:l(()=>[...t[37]||(t[37]=[u("انصراف",-1)])]),_:1})]),_:1})])):(le=S.value)!=null&&le.trustedBySystem?(o(),c("div",pa,[a(U(qe),{class:"cert__icon"}),t[38]||(t[38]=n("div",{class:"cert__body"},[n("div",{class:"cert__title"},"گواهی سرور معتبر است"),n("div",{class:"help"},"این سرور گواهی معتبر عمومی دارد؛ کاری لازم نیست.")],-1))])):(o(),c("div",fa,[a(U(qe),{class:"cert__icon cert__icon--muted"}),t[40]||(t[40]=n("div",{class:"cert__body"},[n("div",{class:"cert__title"},"گواهی‌ای تأیید نشده"),n("div",{class:"help"},"اگر «تست اتصال» خطای گواهی داد، اینجا گواهی سرور را بررسی کنید.")],-1)),a(L,{loading:H.value,disabled:!C.form[i.value].baseUrl,onClick:ue},{default:l(()=>[...t[39]||(t[39]=[u("بررسی گواهی سرور",-1)])]),_:1},8,["loading","disabled"])])),a(ge,{ghost:"",class:"advanced"},{default:l(()=>[a(me,{key:"pem",header:"وارد کردن دستی گواهی (PEM)"},{default:l(()=>[a(Ke,{value:C.form[i.value].caCert,"onUpdate:value":t[9]||(t[9]=b=>C.form[i.value].caCert=b),dir:"ltr",class:"ltr mono",rows:5,placeholder:"-----BEGIN CERTIFICATE-----"},null,8,["value"])]),_:1})]),_:1})])):_("",!0)],64)):_("",!0),i.value&&z.value?(o(),c("section",ba,[z.value.ok?(o(),x(y,{key:0,type:"success","show-icon":"",message:`اتصال به ${W[i.value]} برقرار است`},{description:l(()=>[n("dl",_a,[(o(!0),c(D,null,Oe(J.value,b=>(o(),c(D,{key:b.label},[n("dt",null,v(b.label),1),n("dd",{dir:b.ltr?"ltr":void 0,class:Le({latin:b.ltr})},v(b.value),11,ya)],64))),128))]),Se.value?(o(),c("div",ka,[t[42]||(t[42]=u(" دیتابیسی که وصل شد ",-1)),n("bdi",ga,v(z.value.info.dbName),1),t[43]||(t[43]=u(" است، نه ",-1)),n("bdi",Ca,v(C.form.tahesab.dbName),1),t[44]||(t[44]=u(". نام دیتابیس را چک کنید. ",-1))])):_("",!0),Me.value?(o(),c("div",wa,"این نتیجه برای مقادیر قبلی است؛ دوباره تست کنید.")):_("",!0)]),_:1},8,["message"])):(o(),x(y,{key:1,type:"error","show-icon":"",message:"اتصال برقرار نشد"},{description:l(()=>[n("div",null,v(z.value.error),1),Me.value?(o(),c("div",Ea,"این نتیجه برای مقادیر قبلی است؛ دوباره تست کنید.")):_("",!0)]),_:1}))])):_("",!0),n("div",Oa,[n("span",Sa,[X.value?(o(),c(D,{key:0},[u("تغییرات هنوز ذخیره نشده‌اند.")],64)):i.value?(o(),c(D,{key:1},[u("«تست اتصال» مقادیر همین فرم را امتحان می‌کند، حتی پیش از ذخیره.")],64)):_("",!0)]),a(F,null,{default:l(()=>[i.value?(o(),x(L,{key:0,loading:ke.value,disabled:!We.value,onClick:de},{default:l(()=>[...t[45]||(t[45]=[u("تست اتصال",-1)])]),_:1},8,["loading","disabled"])):_("",!0),a(L,{type:"primary",loading:C.saving,disabled:!X.value,onClick:t[10]||(t[10]=b=>V("save"))},{default:l(()=>[...t[46]||(t[46]=[u("ذخیره",-1)])]),_:1},8,["loading","disabled"])]),_:1})])])}}}),Ua=pt(xa,[["__scopeId","data-v-a7739f0b"]]),Na={key:0},ha={key:0},Ta={key:1},$a={key:2,class:"warn"},Da={key:2},Ia={key:0,class:"hint"},Ma={key:0,class:"warn"},Ra={key:1},za={class:"grid-2 mt-4"},ja={class:"hint mb-4"},Aa={key:0},Ga={class:"grid-2"},La={class:"grid-2"},Pa={key:1,class:"hint mb-4"},Ba={key:2,class:"hint mb-4"},Wa={key:0,class:"hint"},Fa={key:4,class:"warn small"},Ka={class:"grid-2"},Va={dir:"ltr"},Ya={dir:"ltr"},Ha={class:"hint"},qa=mt({__name:"accounting",setup(C){const A=$t(),p=s=>!!A.hasPermission(s),V={PENDING:"در صف",SENDING:"در حال ارسال",SENT:"ارسال شد",FAILED:"ناموفق",NEEDS_REVIEW:"نیاز به بررسی",RESOLVED:"حل‌شده"},W={PENDING:"default",SENDING:"processing",SENT:"success",FAILED:"error",NEEDS_REVIEW:"warning",RESOLVED:"default"},Be={CUSTOMER_PUSH:"ارسال مشتری",PRODUCT_PUSH:"ساخت کارساخته",ORDER_DOCUMENT:"سند سفارش",ORDER_DOCUMENT_DELETE:"حذف سند سفارش"},i={CUSTOMER_NO_MOBILE:"حساب بدون موبایل",CUSTOMER_DUPLICATE_MOBILE:"موبایل تکراری",CUSTOMER_LINK_CONFLICT:"تداخل لینک",PRODUCT_DUPLICATE_TITLE:"عنوان تکراری محصول",PRODUCT_CODE_TAKEN:"کد محصول تکراری"},Z={LINKED:"جفت با موبایل/نام",IMPORTED:"وارد شده از حسابداری",PUSHED:`ساخته شده از ${T.name}`,MANUAL:"دستی"},Y=h(!1),oe=h("connection"),O=h(null),m=ne({provider:"none",tahesab:{baseUrl:"",dbName:"TahesabDB",timeoutMs:2e4,caCert:""},zarrin:{baseUrl:"",balanceOwesWhen:"negative",timeoutMs:2e4,caCert:""},features:{customers:!1,balances:!1,report:!1,products:!1,documents:!1},intervals:{customersMinutes:60,balancesMinutes:10,productsMinutes:30},mapping:{karat:750},report:{windowDays:365},documents:{triggerStatus:"DELIVERED_TO_AGENT"}}),X=ne({tahesab:"",zarrin:""}),$e=h("none"),be=M(()=>$e.value!=="none"),G=ne({customerGroups:[],karSakhteGroups:[],karSakhteTypes:[]}),ee=h([]),ce=h([]),_e=h(!1),H=s=>s?`${s.id}|${s.name}`:void 0,S=s=>{if(!s)return null;const e=s.indexOf("|");return{id:s.slice(0,e),name:s.slice(e+1)}},ye=(s,e)=>{const k=[...s];for(const w of e)w&&!k.some(K=>K.id===w.id&&K.name===w.name)&&k.push(w);return k.map(w=>({value:H(w),label:w.id?`${w.name} (${w.id})`:w.name}))},ie=h([]),re=h(),q=h(),ue=h(),te=ne({}),ke=M(()=>ye(G.customerGroups,[...ie.value.map(S),S(re.value)])),z=M(()=>ye(G.karSakhteGroups,[S(q.value),...Object.values(te).map(S)])),De=M(()=>ye(G.karSakhteTypes,[S(ue.value)])),Ie=[{value:"PLACED",label:"ثبت سفارش"},{value:"ADMIN_APPROVED",label:"تأیید مدیر"},{value:"SOURCING",label:"در حال تأمین"},{value:"PREPARING",label:"در حال آماده‌سازی"},{value:"DELIVERED_TO_AGENT",label:"تحویل مسئول فروش"},{value:"DELIVERED_TO_CUSTOMER",label:"تحویل مشتری"}],Me=[{key:"customers",label:"سینک مشتریان (ورود/لینک با موبایل، ساخت پس از احراز هویت)",interval:"customersMinutes",job:"customers"},{key:"balances",label:"سینک مانده (نمایش به مشتری)",interval:"balancesMinutes",job:"balances"},{key:"report",label:"گزارش مشتری از حسابداری",interval:null,job:null},{key:"products",label:"کارساخته ↔ محصول و قفل ناموجود",interval:"productsMinutes",job:"products"},{key:"documents",label:"ثبت سند سفارش (موقت)",interval:null,job:"outbox"}],We=[{title:"قابلیت",dataIndex:"label",key:"label"},{title:"فعال",key:"on",width:80},{title:"بازه",key:"interval",width:170},{title:"وضعیت",key:"state"},{title:"",key:"run",width:110}],de=s=>{var e,k,w;return(w=(k=(e=O.value)==null?void 0:e.state)==null?void 0:k.jobs)==null?void 0:w[s]},Fe=s=>Object.entries(s).map(([e,k])=>`${e}: ${k}`).join("، "),J=ne({rows:[],total:0,page:1,limit:25}),Se=h(),r=[{title:"زمان",key:"createdAt",width:150},{title:"نوع",key:"kind",width:120},{title:"مورد",key:"entity"},{title:"وضعیت",key:"status",width:140},{title:"خطا",key:"error"},{title:"",key:"actions",width:190}],t=M(()=>{var k;const s=((k=O.value)==null?void 0:k.outbox)??{},e=(s.FAILED??0)+(s.NEEDS_REVIEW??0);return e?` (${e})`:""}),g=ne({rows:[],total:0,page:1,limit:25}),y=ne({rows:[],total:0,page:1,limit:25}),N=h("CUSTOMER"),I=h(""),ae=ne({rows:[],scope:null}),xe=h(""),L=h(""),Ue=h(!1),F=s=>s?Je(s).format("jYYYY/jMM/jDD HH:mm"):"—",Re=s=>s==null?"—":JSON.stringify(s,null,2),Q=(s,e)=>{var w,K;const k=(K=(w=s==null?void 0:s.response)==null?void 0:w.data)==null?void 0:K.message;return Array.isArray(k)?k.join("، "):k??e};function ze(s){var e;m.provider=s.provider,$e.value=s.provider;for(const k of["tahesab","zarrin"])m[k].baseUrl=s[k].baseUrl,m[k].timeoutMs=s[k].timeoutMs,m[k].caCert=s[k].caCert??"";m.tahesab.dbName=s.tahesab.dbName,m.zarrin.balanceOwesWhen=s.zarrin.balanceOwesWhen,Object.assign(m.features,s.features),Object.assign(m.intervals,s.intervals),m.mapping.karat=s.mapping.karat,m.report.windowDays=s.report.windowDays,m.documents.triggerStatus=((e=s.documents)==null?void 0:e.triggerStatus)??"DELIVERED_TO_AGENT",ie.value=(s.mapping.importCustomerGroups??[]).map(H),re.value=H(s.mapping.newCustomerGroup),q.value=H(s.mapping.newKarSakhteGroup),ue.value=H(s.mapping.newKarSakhteType);for(const k of Object.keys(te))delete te[k];for(const k of s.mapping.categoryGroups??[])te[k.categoryId]=H(k.group)}async function me(){try{Y.value=!0;const{data:s}=await j.get("admin/accounting");O.value=s,ze(s.config)}catch(s){B.error(Q(s,"خطا در دریافت تنظیمات"))}finally{Y.value=!1}}async function ge(){const s={provider:m.provider,tahesab:{baseUrl:m.tahesab.baseUrl,dbName:m.tahesab.dbName,timeoutMs:m.tahesab.timeoutMs,caCert:m.tahesab.caCert},zarrin:{baseUrl:m.zarrin.baseUrl,balanceOwesWhen:m.zarrin.balanceOwesWhen,timeoutMs:m.zarrin.timeoutMs,caCert:m.zarrin.caCert},features:m.features,intervals:m.intervals,report:m.report,documents:m.documents,mapping:{karat:m.mapping.karat,importCustomerGroups:ie.value.map(S).filter(Boolean),newCustomerGroup:S(re.value),newKarSakhteGroup:S(q.value),newKarSakhteType:S(ue.value),categoryGroups:Object.entries(te).filter(([,e])=>!!e).map(([e,k])=>({categoryId:e,group:S(k)}))}};for(const e of["tahesab","zarrin"])X[e].trim()&&(s[e].token=X[e].trim());try{Y.value=!0;const{data:e}=await j.put("admin/accounting/config",s);O.value=e,ze(e.config),X.tahesab="",X.zarrin="",B.success("تنظیمات ذخیره شد")}catch(e){B.error(Q(e,"خطا در ذخیره"))}finally{Y.value=!1}}async function Ke(s){try{const{data:e}=await j.put("admin/accounting/config",{[s]:{token:null}});O.value=e,B.success("توکن حذف شد")}catch(e){B.error(Q(e,"خطا"))}}async function Ne(){_e.value=!0,ce.value=[];try{const{data:s}=await j.get("admin/accounting/options",{params:{provider:m.provider}});G.customerGroups=s.customerGroups.items,G.karSakhteGroups=s.karSakhteGroups.items,G.karSakhteTypes=s.karSakhteTypes.items,ee.value=s.categories;for(const e of[s.customerGroups,s.karSakhteGroups,s.karSakhteTypes])e.ok||ce.value.push(e.error)}catch(s){ce.value=[Q(s,"تنظیمات اتصال را اول ذخیره کنید")]}finally{_e.value=!1}}async function je(s){try{const{data:e}=await j.post(`admin/accounting/run/${s}`);e.started?B.success("همگام‌سازی شروع شد؛ نتیجه چند لحظه بعد در همین صفحه دیده می‌شود"):B.warning(e.message),setTimeout(me,4e3)}catch(e){B.error(Q(e,"خطا"))}}async function le(s=1){const{data:e}=await j.get("admin/accounting/outbox",{params:{page:s,status:Se.value}});Object.assign(J,e)}async function b(s){try{await j.post(`admin/accounting/outbox/${s}/retry`),B.success("دوباره در صف قرار گرفت"),le(J.page)}catch(e){B.error(Q(e,"خطا"))}}async function Ce(s){await j.post(`admin/accounting/outbox/${s}/resolve`,{}),le(J.page)}async function Ve(s=1){const{data:e}=await j.get("admin/accounting/issues",{params:{page:s}});Object.assign(g,e)}async function ft(s){await j.post(`admin/accounting/issues/${s}/resolve`),Ve(g.page),me()}async function he(s=1){const{data:e}=await j.get("admin/accounting/links",{params:{page:s,entityType:N.value,q:I.value||void 0}});Object.assign(y,e)}async function bt(s){await j.delete(`admin/accounting/links/${s}`),he(y.page)}async function _t(){Ue.value=!0;try{const{data:s}=await j.get("admin/accounting/movement",{params:{from:xe.value||void 0,to:L.value||void 0}});Object.assign(ae,s)}catch(s){B.error(Q(s,"خطا در دریافت گردش"))}finally{Ue.value=!1}}return Qe(oe,s=>{s==="outbox"&&le(1),s==="issues"&&Ve(1),s==="links"&&he(1),s==="mapping"&&m.provider!=="none"&&ee.value.length===0&&Ne()}),Dt(me),(s,e)=>{const k=f("a-tag"),w=f("a-button"),K=f("a-space"),ve=f("a-alert"),pe=f("a-tab-pane"),yt=f("a-switch"),Ye=f("a-input-number"),Ze=f("a-select-option"),fe=f("a-select"),we=f("a-table"),Ee=f("a-form-item"),kt=f("a-collapse-panel"),gt=f("a-collapse"),Xe=f("a-divider"),$=f("a-table-column"),Ct=f("a-form"),He=f("a-popconfirm"),et=f("a-radio-button"),wt=f("a-radio-group"),Et=f("a-input-search"),tt=f("a-input"),Ot=f("a-tabs"),St=f("a-spin"),xt=f("a-card");return o(),c("div",null,[p("config.accounting")?(o(),x(xt,{key:0,title:"اتصال به نرم‌افزار حسابداری",class:"page-card table-scroll"},{extra:l(()=>[a(K,null,{default:l(()=>{var Te;return[(Te=O.value)!=null&&Te.busy?(o(),x(k,{key:0,color:"processing"},{default:l(()=>[...e[17]||(e[17]=[u("همگام‌سازی در حال اجرا",-1)])]),_:1})):_("",!0),a(w,{size:"small",onClick:me},{default:l(()=>[...e[18]||(e[18]=[u("تازه‌سازی",-1)])]),_:1})]}),_:1})]),default:l(()=>{var Te,at,lt,st,nt,ot,it,rt;return[O.value&&O.value.config.secretKeySource!=="ACCOUNTING_SECRET_KEY"?(o(),x(ve,{key:0,type:"warning","show-icon":"",class:"mb-4",message:"متغیر ACCOUNTING_SECRET_KEY روی سرور تنظیم نشده است",description:"توکن با کلیدی مشتق از JWT_SECRET رمز می‌شود؛ اگر JWT_SECRET عوض شود باید توکن را دوباره وارد کنید."})):_("",!0),(Te=O.value)!=null&&Te.inactiveReason&&O.value.config.provider!=="none"&&oe.value!=="connection"?(o(),x(ve,{key:1,type:"error","show-icon":"",class:"mb-4",message:"همگام‌سازی انجام نمی‌شود",description:O.value.inactiveReason},null,8,["description"])):be.value&&!((nt=(st=(lt=(at=O.value)==null?void 0:at.config)==null?void 0:lt.mapping)==null?void 0:st.importCustomerGroups)!=null&&nt.length)&&((rt=(it=(ot=O.value)==null?void 0:ot.config)==null?void 0:it.features)!=null&&rt.customers)?(o(),x(ve,{key:2,type:"warning","show-icon":"",class:"mb-4",message:"سینک مشتری اجرا نمی‌شود",description:"هیچ گروه مشتری برای ورود انتخاب نشده است؛ در تب «نگاشت» گروه‌هایی را که واقعاً مشتری هستند انتخاب و ذخیره کنید."})):_("",!0),a(St,{spinning:Y.value},{default:l(()=>[a(Ot,{"active-key":oe.value,"onUpdate:activeKey":e[16]||(e[16]=Ae=>oe.value=Ae)},{default:l(()=>{var Ae;return[a(pe,{key:"connection",tab:"اتصال"},{default:l(()=>[a(Ua,{overview:O.value,form:m,tokens:X,saving:Y.value,onSave:ge,onClearToken:Ke},null,8,["overview","form","tokens","saving"])]),_:1}),a(pe,{key:"features",tab:"قابلیت‌ها و زمان‌بندی"},{default:l(()=>{var d,E,Ge,ut;return[m.provider==="zarrin"?(o(),x(ve,{key:0,type:"info","show-icon":"",class:"mb-4",message:"درایور زرین روی نصب واقعی تست نشده است",description:"طبق تصمیم مالک، پیش از استفاده‌ی واقعی یک دوره‌ی آزمایشی با اسناد موقت لازم است (علامت مانده و فیلد هزینه‌ی سنگ را بررسی کنید)."})):_("",!0),be.value&&((E=(d=O.value)==null?void 0:d.config)!=null&&E.provider)&&(m.features.balances||m.features.products)?(o(),x(ve,{key:1,type:(ut=(Ge=O.value)==null?void 0:Ge.realtime)!=null&&ut.lastError?"warning":"success","show-icon":"",class:"mb-4",message:"همگام‌سازی لحظه‌ای"},{description:l(()=>{var se,R,P,dt;return[(R=(se=O.value)==null?void 0:se.realtime)!=null&&R.lastOkAt?(o(),c("div",Na,[u(" تغییرات حسابداری چند ثانیه یک‌بار بررسی می‌شود؛ آخرین بررسی: "+v(F(O.value.realtime.lastOkAt))+". ",1),O.value.realtime.lastChangeAt?(o(),c("span",ha,"آخرین تغییر دریافت‌شده: "+v(F(O.value.realtime.lastChangeAt))+".",1)):_("",!0)])):(o(),c("div",Ta,"هنوز بررسی انجام نشده است (چند ثانیه بعد از روشن‌شدن شروع می‌شود).")),(dt=(P=O.value)==null?void 0:P.realtime)!=null&&dt.lastError?(o(),c("div",$a,"خطای آخرین بررسی: "+v(O.value.realtime.lastError),1)):_("",!0),e[19]||(e[19]=n("div",{class:"hint"}," سفارش و ویرایش مشتری بلافاصله ارسال می‌شود و موجودی هنگام ثبت سفارش مستقیم از حسابداری خوانده می‌شود؛ اگر حسابداری آن لحظه پاسخ ندهد، آخرین موجودی معلوم ملاک است. بازه‌های «دقیقه»ی زیر فقط شبکه‌ی اطمینان‌اند (مشتری جدید، ویرایش یا حذف در حسابداری). ",-1))]}),_:1},8,["type"])):_("",!0),a(we,{"data-source":Me,columns:We,pagination:!1,"row-key":"key",size:"middle"},{bodyCell:l(({column:se,record:R})=>[se.key==="on"?(o(),x(yt,{key:0,checked:m.features[R.key],"onUpdate:checked":P=>m.features[R.key]=P},null,8,["checked","onUpdate:checked"])):se.key==="interval"?(o(),c(D,{key:1},[R.interval?(o(),x(Ye,{key:0,value:m.intervals[R.interval],"onUpdate:value":P=>m.intervals[R.interval]=P,min:1,max:1440,"addon-after":"دقیقه"},null,8,["value","onUpdate:value"])):R.key==="documents"?(o(),x(fe,{key:1,value:m.documents.triggerStatus,"onUpdate:value":e[0]||(e[0]=P=>m.documents.triggerStatus=P),style:{"min-width":"220px"},title:"سند (موقت / پیش‌فاکتور) وقتی سفارش به این وضعیت برسد ثبت می‌شود"},{default:l(()=>[(o(),c(D,null,Oe(Ie,P=>a(Ze,{key:P.value,value:P.value},{default:l(()=>[u("ثبت در: "+v(P.label),1)]),_:2},1032,["value"])),64))]),_:1},8,["value"])):(o(),c("span",Da,"—"))],64)):se.key==="state"?(o(),c(D,{key:2},[R.job&&de(R.job)?(o(),c("div",Ia,[u(" آخرین اجرا: "+v(F(de(R.job).lastRunAt))+" ",1),de(R.job).lastError?(o(),c("span",Ma," — خطا: "+v(de(R.job).lastError),1)):de(R.job).summary?(o(),c("span",Ra," — "+v(Fe(de(R.job).summary)),1)):_("",!0)])):_("",!0)],64)):se.key==="run"?(o(),c(D,{key:3},[R.job?(o(),x(w,{key:0,size:"small",disabled:!be.value,onClick:P=>je(R.job)},{default:l(()=>[...e[20]||(e[20]=[u("سینک الان",-1)])]),_:1},8,["disabled","onClick"])):_("",!0)],64)):_("",!0)]),_:1}),n("div",za,[a(Ee,{label:"بازه‌ی گزارش مشتری (روز)"},{default:l(()=>[a(Ye,{value:m.report.windowDays,"onUpdate:value":e[1]||(e[1]=se=>m.report.windowDays=se),min:7,max:3650,class:"w-full"},null,8,["value"])]),_:1})]),n("div",ja," اسناد سفارش همیشه «موقت» ثبت می‌شوند و تا حسابدار نهایی نکند روی مانده‌ی حسابداری اثر ندارند. سقف اعتبار سفارش همچنان با دفتر داخلی "+v(U(T).name)+" چک می‌شود. ",1),a(w,{type:"primary",onClick:ge},{default:l(()=>[...e[21]||(e[21]=[u("ذخیره",-1)])]),_:1})]}),_:1}),a(pe,{key:"mapping",tab:"نگاشت"},{default:l(()=>[a(gt,{ghost:"",class:"mb-4"},{default:l(()=>[a(kt,{key:"guide",header:"راهنمای این تب: نگاشت چیست و چطور پر می‌شود؟"},{default:l(()=>[n("p",null,[u(" در این صفحه «"+v(U(T).name)+"» یعنی همین سامانه: ",1),e[22]||(e[22]=n("b",null,"اپ مشتری",-1)),e[23]||(e[23]=u(" (جایی که مشتری ثبت‌نام، احراز هویت و سفارش می‌کند و مانده‌اش را می‌بیند) و ",-1)),e[24]||(e[24]=n("b",null,"پنل مدیریت",-1)),e[25]||(e[25]=u(" (همین پنل، جایی که محصول و دسته‌بندی تعریف می‌شود). «حسابداری» یعنی نرم‌افزار حسابداری مغازه (ته‌حساب یا زرین). ",-1))]),n("p",null,v(U(T).name)+" و حسابداری هر کدام گروه‌بندی خودشان را دارند. این تب می‌گوید هر چیز در "+v(U(T).name)+" با کدام گروه در حسابداری متناظر است؛ خودِ مشتری‌ها و محصول‌ها اینجا وصل نمی‌شوند (آن‌ها در تب «لینک‌ها» دیده می‌شوند). ",1),n("ol",null,[e[29]||(e[29]=n("li",null,"تنظیمات تب «اتصال» را ذخیره کنید، بعد «دریافت گروه‌ها از حسابداری» را بزنید تا فهرست‌ها از حسابداری پر شوند.",-1)),n("li",null,[n("b",null,"گروه‌های حسابی که مشتری "+v(U(T).name)+" حساب می‌شوند:",1),e[26]||(e[26]=u(" در حسابداری صندوق، کارمند و سرمایه‌گذار هم «حساب» هستند. فقط گروه‌هایی را انتخاب کنید که واقعاً مشتری‌اند؛ سینک مشتری فقط حساب‌های این گروه‌ها را با شماره موبایل به کاربران اپ مشتری وصل می‌کند. اگر خالی بماند سینک مشتری اجرا نمی‌شود. ",-1))]),e[30]||(e[30]=n("li",null,[n("b",null,"گروه مشتری جدید:"),u(" وقتی کاربری در اپ مشتری احراز هویت شود و در حسابداری حساب نداشته باشد، حسابش در این گروه ساخته می‌شود. اگر تعیین نشود، ساخت حساب در «لاگ ارسال» با وضعیت «نیاز به بررسی» می‌ماند. ")],-1)),n("li",null,[e[27]||(e[27]=n("b",null,"عیار پایه:",-1)),u(" عیار وزن‌هایی که در "+v(U(T).name)+" ثبت می‌شود (وزن محصول‌ها و سفارش‌ها؛ معمولاً ۷۵۰ = ۱۸ عیار). در سند سفارش، وزن با همین عیار به حسابداری می‌رود؛ در ته‌حساب اجرت هم روی آن اعمال می‌شود (مثلاً ۷۵۰ با اجرت ۱۰٪ می‌شود ۸۲۵). ",1)]),m.provider==="zarrin"?(o(),c("li",Aa,[e[28]||(e[28]=n("b",null,"کارساخته (فقط زرین):",-1)),u(" وقتی در پنل مدیریت "+v(U(T).name)+" محصول جدیدی تعریف شود، برایش یک «کارساخته» در زرین ساخته می‌شود. «نوع» تعیین می‌کند گرمی است یا تعدادی، و «گروه ساخته» جای آن در زرین است. در جدول پایین برای هر دسته‌بندی محصولِ "+v(U(T).name)+" می‌توانید گروه جدا بدهید؛ دسته‌ای که «پیش‌فرض» بماند در «گروه ساخته‌ی پیش‌فرض» می‌رود. اگر نوع یا گروه خالی باشد، ساخت کارساخته در «لاگ ارسال» منتظر بررسی می‌ماند. ",1)])):_("",!0)]),e[31]||(e[31]=n("p",{class:"hint"}," تغییر این تنظیمات فقط روی موارد بعدی اثر دارد؛ حساب‌ها و کارساخته‌هایی که قبلاً ساخته شده‌اند جابه‌جا نمی‌شوند. در آخر «ذخیره» را بزنید. ",-1))]),_:1})]),_:1}),a(K,{class:"mb-4"},{default:l(()=>[a(w,{disabled:m.provider==="none",loading:_e.value,onClick:Ne},{default:l(()=>[...e[32]||(e[32]=[u("دریافت گروه‌ها از حسابداری",-1)])]),_:1},8,["disabled","loading"]),(o(!0),c(D,null,Oe(ce.value,d=>(o(),c("span",{key:d,class:"warn"},v(d),1))),128))]),_:1}),a(Ct,{layout:"vertical"},{default:l(()=>[a(Xe,{orientation:"right"},{default:l(()=>[...e[33]||(e[33]=[u("حساب مشتری‌ها",-1)])]),_:1}),a(ve,{type:"info","show-icon":"",class:"mb-4",message:`این بخش تعیین می‌کند کدام حساب‌های حسابداری به کاربران اپ مشتری ${U(T).name} وصل شوند`},{description:l(()=>[n("div",null," هر حسابی که در گروه‌های انتخاب‌شده باشد و موبایلش با یک کاربر اپ مشتری "+v(U(T).name)+" یکی باشد، به آن کاربر وصل می‌شود و مانده‌اش در اپ مشتری نمایش داده می‌شود. صندوق، کارمند و سرمایه‌گذار را انتخاب نکنید. ",1),e[34]||(e[34]=n("div",null," مثال: «بنکدار» و «مغازه‌دار» را در فیلد اول انتخاب کنید و در فیلد دوم «مغازه‌دار» را بگذارید. در این حالت کسی که در اپ مشتری ثبت‌نام و احراز هویت کند و در حسابداری حساب نداشته باشد، در گروه «مغازه‌دار» برایش حساب ساخته می‌شود. ",-1))]),_:1},8,["message"]),n("div",Ga,[a(Ee,{label:`گروه‌های حسابی که مشتری ${U(T).name} حساب می‌شوند`,extra:"فقط گروه‌هایی که مشتری‌اند؛ خالی = سینک مشتری اجرا نمی‌شود"},{default:l(()=>[a(fe,{value:ie.value,"onUpdate:value":e[2]||(e[2]=d=>ie.value=d),mode:"multiple",options:ke.value,"allow-clear":"",placeholder:"هیچ گروهی انتخاب نشده"},null,8,["value","options"])]),_:1},8,["label"]),a(Ee,{label:"گروه حسابداریِ مشتری تازه‌ی اپ مشتری",extra:"کاربری که در اپ مشتری احراز هویت شده و در حسابداری حساب ندارد، در این گروه برایش حساب ساخته می‌شود"},{default:l(()=>[a(fe,{value:re.value,"onUpdate:value":e[3]||(e[3]=d=>re.value=d),options:ke.value,"allow-clear":""},null,8,["value","options"])]),_:1}),a(Ee,{label:`عیار پایه‌ی وزن‌های ${U(T).name}`,extra:`عیار وزن محصول‌ها و سفارش‌ها در ${U(T).name}؛ ۷۵۰ یعنی ۱۸ عیار`},{default:l(()=>[a(Ye,{value:m.mapping.karat,"onUpdate:value":e[4]||(e[4]=d=>m.mapping.karat=d),min:1,max:1e3,class:"w-full"},null,8,["value"])]),_:1},8,["label","extra"])]),m.provider==="zarrin"?(o(),c(D,{key:0},[a(Xe,{orientation:"right"},{default:l(()=>[...e[35]||(e[35]=[u("کارساخته (زرین)",-1)])]),_:1}),a(ve,{type:"info","show-icon":"",class:"mb-4",message:`هر محصولی که در پنل مدیریت ${U(T).name} (بخش محصولات) تعریف می‌کنید، در زرین یک «کارساخته» می‌شود`},{description:l(()=>[e[36]||(e[36]=n("div",null,[u(" زرین برای ساختن کارساخته دو چیز لازم دارد: "),n("b",null,"نوع"),u(" (گرمی یا تعدادی) و "),n("b",null,"گروه ساخته"),u(" (کارساخته در کدام پوشه‌ی زرین قرار بگیرد). این بخش این دو را به‌جای شما انتخاب می‌کند تا لازم نباشد برای هر محصول جداگانه در زرین کاری انجام دهید. ")],-1)),n("div",null," ستون «دسته‌بندی محصول در "+v(U(T).name)+"» همان دسته‌بندی‌هایی است که در پنل مدیریت برای محصولات تعریف کرده‌اید. مثال: اگر روبه‌روی «انگشتر» گروه «انگشتر» زرین را بگذارید، هر محصول تازه در دسته‌ی انگشتر "+v(U(T).name)+"، در گروه انگشترِ زرین ساخته می‌شود. دسته‌هایی که «پیش‌فرض» بمانند در «گروه ساخته‌ی پیش‌فرض» می‌روند. ",1),n("div",null," اگر نوع یا گروه خالی باشد، محصول در "+v(U(T).name)+" ساخته می‌شود ولی ساخت کارساخته در «لاگ ارسال» منتظر می‌ماند تا آن را تعیین کنید و «تلاش دوباره» بزنید. محصول‌هایی که از قبل به کارساخته وصل شده‌اند تغییری نمی‌کنند. ",1)]),_:1},8,["message"]),n("div",La,[a(Ee,{label:"نوع کارساخته‌ی جدید (گرمی/تعدادی…)",extra:`برای محصول تازه‌ای که در پنل مدیریت ${U(T).name} تعریف می‌شود`},{default:l(()=>[a(fe,{value:ue.value,"onUpdate:value":e[5]||(e[5]=d=>ue.value=d),options:De.value,"allow-clear":""},null,8,["value","options"])]),_:1},8,["extra"]),a(Ee,{label:"گروه ساخته‌ی پیش‌فرض",extra:"برای دسته‌هایی که در جدول زیر «پیش‌فرض» مانده‌اند"},{default:l(()=>[a(fe,{value:q.value,"onUpdate:value":e[6]||(e[6]=d=>q.value=d),options:z.value,"allow-clear":""},null,8,["value","options"])]),_:1})]),a(we,{"data-source":ee.value,pagination:!1,"row-key":"id",size:"small",class:"mb-4"},{default:l(()=>[a($,{title:`دسته‌بندی محصول در ${U(T).name}`,"data-index":"title"},null,8,["title"]),a($,{title:"گروه ساخته در زرین"},{default:l(({record:d})=>[a(fe,{value:te[d.id],"onUpdate:value":E=>te[d.id]=E,options:z.value,"allow-clear":"",class:"w-full",placeholder:"پیش‌فرض"},null,8,["value","onUpdate:value","options"])]),_:1})]),_:1},8,["data-source"])],64)):m.provider==="tahesab"?(o(),c("div",Pa," ته‌حساب در API خود ساخت کارساخته ندارد: نام کار با اولین سند سفارش در ته‌حساب ساخته می‌شود و از آن به بعد به محصول لینک می‌شود. ")):_("",!0),ce.value.length?(o(),c("div",Ba," اگر فهرستی خالی است، یعنی دریافت آن از حسابداری خطا داده (پیام قرمز بالای صفحه). اتصال را بررسی کنید و دوباره «دریافت گروه‌ها» را بزنید. ")):_("",!0),a(w,{type:"primary",onClick:ge},{default:l(()=>[...e[37]||(e[37]=[u("ذخیره",-1)])]),_:1})]),_:1})]),_:1}),a(pe,{key:"outbox",tab:`لاگ ارسال${t.value}`},{default:l(()=>[a(K,{class:"mb-4"},{default:l(()=>[a(fe,{value:Se.value,"onUpdate:value":e[7]||(e[7]=d=>Se.value=d),style:{width:"180px"},"allow-clear":"",placeholder:"همه‌ی وضعیت‌ها",onChange:e[8]||(e[8]=d=>le(1))},{default:l(()=>[(o(),c(D,null,Oe(V,(d,E)=>a(Ze,{key:E,value:E},{default:l(()=>[u(v(d),1)]),_:2},1032,["value"])),64))]),_:1},8,["value"]),a(w,{onClick:e[9]||(e[9]=d=>le(J.page))},{default:l(()=>[...e[38]||(e[38]=[u("تازه‌سازی",-1)])]),_:1})]),_:1}),a(we,{"data-source":J.rows,columns:r,"row-key":"id",size:"small",pagination:{current:J.page,pageSize:J.limit,total:J.total,onChange:le}},{bodyCell:l(({column:d,record:E})=>[d.key==="createdAt"?(o(),c(D,{key:0},[u(v(F(E.createdAt)),1)],64)):d.key==="kind"?(o(),c(D,{key:1},[u(v(Be[E.kind]??E.kind),1)],64)):d.key==="entity"?(o(),c(D,{key:2},[u(v(E.entityLabel??E.entityId),1)],64)):d.key==="status"?(o(),c(D,{key:3},[a(k,{color:W[E.status]},{default:l(()=>[u(v(V[E.status]??E.status),1)]),_:2},1032,["color"]),E.provider!==m.provider?(o(),c("span",Wa," ("+v(E.provider)+")",1)):_("",!0)],64)):d.key==="error"?(o(),c("span",Fa,v(E.lastError),1)):d.key==="actions"?(o(),x(K,{key:5},{default:l(()=>[["FAILED","NEEDS_REVIEW","PENDING"].includes(E.status)?(o(),x(He,{key:0,title:"پیش از تلاش دوباره، مطمئن شوید سند در حسابداری ثبت نشده است. ادامه؟",onConfirm:Ge=>b(E.id)},{default:l(()=>[a(w,{size:"small"},{default:l(()=>[...e[39]||(e[39]=[u("تلاش دوباره",-1)])]),_:1})]),_:1},8,["onConfirm"])):_("",!0),["FAILED","NEEDS_REVIEW","PENDING"].includes(E.status)?(o(),x(He,{key:1,title:"این ردیف «حل‌شده» علامت بخورد (دستی در حسابداری رسیدگی شده)؟",onConfirm:Ge=>Ce(E.id)},{default:l(()=>[a(w,{size:"small"},{default:l(()=>[...e[40]||(e[40]=[u("حل‌شده",-1)])]),_:1})]),_:1},8,["onConfirm"])):_("",!0)]),_:2},1024)):_("",!0)]),expandedRowRender:l(({record:d})=>[n("div",Ka,[n("div",null,[e[41]||(e[41]=n("b",null,"درخواست",-1)),n("pre",Va,v(Re(d.lastRequest)),1)]),n("div",null,[e[42]||(e[42]=n("b",null,"پاسخ",-1)),n("pre",Ya,v(Re(d.lastResponse)),1)])]),n("div",Ha,"کد مرجع: "+v(d.externalRef??"—")+" | تلاش: "+v(d.attempts)+" | تلاش بعدی: "+v(F(d.nextAttemptAt)),1)]),_:1},8,["data-source","pagination"])]),_:1},8,["tab"]),a(pe,{key:"issues",tab:`مغایرت‌ها${(Ae=O.value)!=null&&Ae.openIssues?` (${O.value.openIssues})`:""}`},{default:l(()=>[a(we,{"data-source":g.rows,"row-key":"id",size:"small",pagination:{current:g.page,pageSize:g.limit,total:g.total,onChange:Ve}},{default:l(()=>[a($,{title:"تاریخ"},{default:l(({record:d})=>[u(v(F(d.updatedAt)),1)]),_:1}),a($,{title:"نرم‌افزار","data-index":"provider"}),a($,{title:"نوع"},{default:l(({record:d})=>[u(v(i[d.kind]??d.kind),1)]),_:1}),a($,{title:"کد حسابداری","data-index":"externalCode"}),a($,{title:"شرح","data-index":"message"}),a($,{title:""},{default:l(({record:d})=>[a(w,{size:"small",onClick:E=>ft(d.id)},{default:l(()=>[...e[43]||(e[43]=[u("رسیدگی شد",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["data-source","pagination"])]),_:1},8,["tab"]),a(pe,{key:"links",tab:"لینک‌ها"},{default:l(()=>[a(K,{class:"mb-4"},{default:l(()=>[a(wt,{value:N.value,"onUpdate:value":e[10]||(e[10]=d=>N.value=d),onChange:e[11]||(e[11]=d=>he(1))},{default:l(()=>[a(et,{value:"CUSTOMER"},{default:l(()=>[...e[44]||(e[44]=[u("مشتری",-1)])]),_:1}),a(et,{value:"PRODUCT"},{default:l(()=>[...e[45]||(e[45]=[u("کارساخته",-1)])]),_:1})]),_:1},8,["value"]),a(Et,{value:I.value,"onUpdate:value":e[12]||(e[12]=d=>I.value=d),placeholder:"کد یا نام در حسابداری",style:{width:"240px"},onSearch:e[13]||(e[13]=d=>he(1))},null,8,["value"])]),_:1}),a(we,{"data-source":y.rows,"row-key":"id",size:"small",pagination:{current:y.page,pageSize:y.limit,total:y.total,onChange:he}},{default:l(()=>[a($,{title:"کد حسابداری","data-index":"externalCode"}),a($,{title:"نام در حسابداری","data-index":"externalName"}),a($,{title:`شناسه در ${U(T).name}`,"data-index":"entityId"},null,8,["title"]),a($,{title:"منشأ"},{default:l(({record:d})=>[u(v(Z[d.origin]??d.origin),1)]),_:1}),a($,{title:"آخرین سینک"},{default:l(({record:d})=>[u(v(F(d.syncedAt)),1)]),_:1}),a($,{title:""},{default:l(({record:d})=>[a(He,{title:"لینک حذف شود؟ در سینک بعدی دوباره با موبایل/نام جفت می‌شود.",onConfirm:E=>bt(d.id)},{default:l(()=>[a(w,{size:"small",danger:""},{default:l(()=>[...e[46]||(e[46]=[u("حذف لینک",-1)])]),_:1})]),_:1},8,["onConfirm"])]),_:1})]),_:1},8,["data-source","pagination"])]),_:1}),a(pe,{key:"movement",tab:"گردش کارساخته"},{default:l(()=>[a(K,{class:"mb-4"},{default:l(()=>[a(tt,{value:xe.value,"onUpdate:value":e[14]||(e[14]=d=>xe.value=d),dir:"ltr",placeholder:"از ۱۴۰۵/۰۷/۰۱",style:{width:"150px"}},null,8,["value"]),a(tt,{value:L.value,"onUpdate:value":e[15]||(e[15]=d=>L.value=d),dir:"ltr",placeholder:"تا ۱۴۰۵/۰۷/۳۰",style:{width:"150px"}},null,8,["value"]),a(w,{disabled:!be.value,loading:Ue.value,onClick:_t},{default:l(()=>[...e[47]||(e[47]=[u("نمایش",-1)])]),_:1},8,["disabled","loading"])]),_:1}),ae.scope==="recent-documents"?(o(),x(ve,{key:0,type:"info","show-icon":"",class:"mb-4",message:"ته‌حساب گزارش گردش همه‌ی حساب‌ها را ندارد؛ این فهرست از آخرین ۱۰۰۰ سند ثبت‌شده ساخته شده است."})):_("",!0),a(we,{"data-source":ae.rows,"row-key":(d,E)=>E,size:"small"},{default:l(()=>[a($,{title:"تاریخ","data-index":"date"}),a($,{title:"کارساخته","data-index":"itemName"}),a($,{title:"شرح","data-index":"description"}),a($,{title:"وزن","data-index":"weight"}),a($,{title:"تعداد","data-index":"count"}),a($,{title:"مبلغ","data-index":"amount"})]),_:1},8,["data-source","row-key"])]),_:1})]}),_:1},8,["active-key"])]),_:1},8,["spinning"])]}),_:1})):_("",!0)])}}}),el=pt(qa,[["__scopeId","data-v-cc33ab94"]]);export{el as default}; diff --git a/apps/admin-panel/dist/assets/addFinDoc-kdexvNXV.js b/apps/admin-panel/dist/assets/addFinDoc-kdexvNXV.js deleted file mode 100644 index 8323641..0000000 --- a/apps/admin-panel/dist/assets/addFinDoc-kdexvNXV.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as o}from"./addFinDoc.vue_vue_type_script_setup_true_lang-BXXIemK7.js";import"./index-CJij4X3l.js";import"./BaseFormModal.vue_vue_type_style_index_0_lang-YLHOAWTN.js";export{o as default}; diff --git a/apps/admin-panel/dist/assets/addFinDoc-sT3KrSUV.js b/apps/admin-panel/dist/assets/addFinDoc-sT3KrSUV.js new file mode 100644 index 0000000..1a2ac17 --- /dev/null +++ b/apps/admin-panel/dist/assets/addFinDoc-sT3KrSUV.js @@ -0,0 +1 @@ +import{_ as o}from"./addFinDoc.vue_vue_type_script_setup_true_lang-C7dUyRNk.js";import"./index-CpVArufm.js";import"./select--BgT6D7O.js";import"./BaseFormModal.vue_vue_type_style_index_0_lang-B4iVMhZt.js";export{o as default}; diff --git a/apps/admin-panel/dist/assets/addFinDoc.vue_vue_type_script_setup_true_lang-BXXIemK7.js b/apps/admin-panel/dist/assets/addFinDoc.vue_vue_type_script_setup_true_lang-BXXIemK7.js deleted file mode 100644 index 8483450..0000000 --- a/apps/admin-panel/dist/assets/addFinDoc.vue_vue_type_script_setup_true_lang-BXXIemK7.js +++ /dev/null @@ -1 +0,0 @@ -import{d as I,x as K,y as U,a as g,w as u,h as Q,k as X,m as M,z as E,r as p,o as r,p as L,c as a,f as v,b as m,e as O,F as V,i as f,H as Y,s as j,J as z,l as Z,t as G}from"./index-CJij4X3l.js";import{_ as h}from"./BaseFormModal.vue_vue_type_style_index_0_lang-YLHOAWTN.js";const ee={class:"grid-3"},le={key:0,class:"grid-3"},ae={key:1,class:"grid-3"},te={key:2,class:"grid-3"},ue={key:3,class:"grid-3"},ne={class:"grid-3"},oe={key:0,class:"grid-3"},se={key:1,class:"grid-3"},re={key:2,class:"grid-3"},ie={key:3,class:"grid-3"},de=4.331802,me=I({__name:"addFinDoc",props:{open:{type:Boolean},id:{}},emits:["update:open","success"],setup(x,{emit:A}){const R=x,$=A,k=R.open!==void 0,D=X(),H=Z(),y=k?R.id:D.params.id,w=M(!1),c=M([]),l=E({type:2,customer_id:void 0,value:void 0,original_value:void 0,ayar:void 0,lab:"",ang:"",to:"",price:void 0,price_per_gram:void 0,account_name:"",bank_name:"",note:""}),_=E({}),C=j(()=>{const o=Number(l.original_value??0),e=Number(l.ayar??0);return!o||!e?"":(o*e/750).toFixed(4)}),F=j(()=>{const o=Number(l.price??0),e=Number(l.price_per_gram??0);return!o||!e?"":(o/(e/de)).toFixed(4)});function S(o,e){var s,b;return String(((b=(s=e==null?void 0:e.children)==null?void 0:s[0])==null?void 0:b.children)??"").toLowerCase().includes(o.toLowerCase())}function W(){return Object.keys(_).forEach(o=>delete _[o]),l.customer_id||(_.customer_id="مقدار را وارد نمایید"),Object.keys(_).length===0}async function N(){var o,e;if(W())try{w.value=!0,y?await U.put(`cash/${y}`,l):await U.post("cash",l),z.info("اطلاعات با موفقیت به ثبت رسید."),k?($("success"),$("update:open",!1)):H.push("/finical/list")}catch(s){z.error(((e=(o=s==null?void 0:s.response)==null?void 0:o.data)==null?void 0:e.message)??"خطا در ثبت اطلاعات.")}finally{w.value=!1}}return K(async()=>{var o;try{const{data:e}=await U.get("query/customer");c.value=e}catch(e){console.log(e)}if(y)try{const{data:e}=await U.get(`cash/${y}`);Object.assign(l,{type:e.type??2,customer_id:(o=e.customer)==null?void 0:o.id,value:e.value!==null?Number(e.value):void 0,original_value:e.original_value!==null?Number(e.original_value):void 0,ayar:e.ayar??void 0,lab:e.lab??"",ang:e.ang??"",to:e.to??"",price:e.price!==null?Number(e.price):void 0,price_per_gram:e.price_per_gram!==null?Number(e.price_per_gram):void 0,account_name:e.account_name??"",bank_name:e.bank_name??"",note:e.note??""})}catch(e){console.log(e)}}),(o,e)=>{const s=p("a-select-option"),b=p("a-select"),n=p("a-form-item"),i=p("a-input-number"),d=p("a-input"),B=p("a-textarea"),q=p("a-button"),J=p("a-card"),P=p("a-form"),T=p("a-spin");return k?(r(),g(h,{key:0,open:!!x.open,id:Q(y),"add-title":"ثبت سند مالی","edit-title":"ویرایش سند مالی",loading:w.value,submitting:w.value,width:"lg","onUpdate:open":e[15]||(e[15]=t=>o.$emit("update:open",t)),onSubmit:N},{default:u(()=>[L("div",ee,[a(n,{label:"نوع سند"},{default:u(()=>[a(b,{value:l.type,"onUpdate:value":e[0]||(e[0]=t=>l.type=t)},{default:u(()=>[a(s,{value:2},{default:u(()=>[...e[31]||(e[31]=[v("حواله",-1)])]),_:1}),a(s,{value:1},{default:u(()=>[...e[32]||(e[32]=[v("آب شده",-1)])]),_:1}),a(s,{value:4},{default:u(()=>[...e[33]||(e[33]=[v("پولی",-1)])]),_:1}),a(s,{value:3},{default:u(()=>[...e[34]||(e[34]=[v("چک",-1)])]),_:1})]),_:1},8,["value"])]),_:1}),a(n,{label:"مشتری","validate-status":_.customer_id?"error":"",help:_.customer_id},{default:u(()=>[a(b,{value:l.customer_id,"onUpdate:value":e[1]||(e[1]=t=>l.customer_id=t),"show-search":"","option-filter-prop":"children","filter-option":S,placeholder:"انتخاب کنید"},{default:u(()=>[(r(!0),m(V,null,O(c.value,t=>(r(),g(s,{key:t.id,value:t.id},{default:u(()=>[v(G(`${t.name} - ${t.mobile}`),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1},8,["validate-status","help"])]),l.type==1?(r(),m("div",le,[a(n,{label:"وزن (گرم)"},{default:u(()=>[a(i,{value:l.original_value,"onUpdate:value":e[2]||(e[2]=t=>l.original_value=t),class:"w-full",step:.001},null,8,["value"])]),_:1}),a(n,{label:"عیار"},{default:u(()=>[a(i,{value:l.ayar,"onUpdate:value":e[3]||(e[3]=t=>l.ayar=t),class:"w-full"},null,8,["value"])]),_:1}),a(n,{label:"نام آزمایشگاه"},{default:u(()=>[a(d,{value:l.lab,"onUpdate:value":e[4]||(e[4]=t=>l.lab=t)},null,8,["value"])]),_:1}),a(n,{label:"انگ"},{default:u(()=>[a(d,{value:l.ang,"onUpdate:value":e[5]||(e[5]=t=>l.ang=t)},null,8,["value"])]),_:1}),a(n,{label:"وزن نهایی اعمال شده"},{default:u(()=>[a(d,{value:C.value,disabled:""},null,8,["value"])]),_:1})])):f("",!0),l.type==2?(r(),m("div",ae,[a(n,{label:"وزن (گرم)"},{default:u(()=>[a(i,{value:l.value,"onUpdate:value":e[6]||(e[6]=t=>l.value=t),class:"w-full",step:.001},null,8,["value"])]),_:1}),a(n,{label:"حواله به"},{default:u(()=>[a(d,{value:l.to,"onUpdate:value":e[7]||(e[7]=t=>l.to=t)},null,8,["value"])]),_:1})])):f("",!0),l.type==3?(r(),m("div",te,[a(n,{label:"مبلغ چک"},{default:u(()=>[a(i,{value:l.price,"onUpdate:value":e[8]||(e[8]=t=>l.price=t),class:"w-full"},null,8,["value"])]),_:1}),a(n,{label:"وزن (گرم)"},{default:u(()=>[a(i,{value:l.value,"onUpdate:value":e[9]||(e[9]=t=>l.value=t),class:"w-full",step:.001},null,8,["value"])]),_:1}),a(n,{label:"نام صاحب حساب"},{default:u(()=>[a(d,{value:l.account_name,"onUpdate:value":e[10]||(e[10]=t=>l.account_name=t)},null,8,["value"])]),_:1}),a(n,{label:"نام بانک"},{default:u(()=>[a(d,{value:l.bank_name,"onUpdate:value":e[11]||(e[11]=t=>l.bank_name=t)},null,8,["value"])]),_:1})])):f("",!0),l.type==4?(r(),m("div",ue,[a(n,{label:"میزان پول"},{default:u(()=>[a(i,{value:l.price,"onUpdate:value":e[12]||(e[12]=t=>l.price=t),class:"w-full"},null,8,["value"])]),_:1}),a(n,{label:"مظنه"},{default:u(()=>[a(i,{value:l.price_per_gram,"onUpdate:value":e[13]||(e[13]=t=>l.price_per_gram=t),class:"w-full"},null,8,["value"])]),_:1}),l.price_per_gram?(r(),g(n,{key:0,label:"وزن نهایی اعمال شده"},{default:u(()=>[a(d,{value:F.value,disabled:""},null,8,["value"])]),_:1})):f("",!0)])):f("",!0),a(n,{label:"توضیحات"},{default:u(()=>[a(B,{value:l.note,"onUpdate:value":e[14]||(e[14]=t=>l.note=t),"auto-size":{minRows:3,maxRows:5}},null,8,["value"])]),_:1})]),_:1},8,["open","id","loading","submitting"])):(r(),g(T,{key:1,spinning:w.value},{default:u(()=>[a(P,{layout:"vertical",onSubmit:Y(N,["prevent"])},{default:u(()=>[a(J,{title:"ثبت سند مالی",class:"mb-base page-card"},{default:u(()=>[L("div",ne,[a(n,{label:"نوع سند"},{default:u(()=>[a(b,{value:l.type,"onUpdate:value":e[16]||(e[16]=t=>l.type=t)},{default:u(()=>[a(s,{value:2},{default:u(()=>[...e[35]||(e[35]=[v("حواله",-1)])]),_:1}),a(s,{value:1},{default:u(()=>[...e[36]||(e[36]=[v("آب شده",-1)])]),_:1}),a(s,{value:4},{default:u(()=>[...e[37]||(e[37]=[v("پولی",-1)])]),_:1}),a(s,{value:3},{default:u(()=>[...e[38]||(e[38]=[v("چک",-1)])]),_:1})]),_:1},8,["value"])]),_:1}),a(n,{label:"مشتری","validate-status":_.customer_id?"error":"",help:_.customer_id},{default:u(()=>[a(b,{value:l.customer_id,"onUpdate:value":e[17]||(e[17]=t=>l.customer_id=t),"show-search":"","option-filter-prop":"children","filter-option":S,placeholder:"انتخاب کنید"},{default:u(()=>[(r(!0),m(V,null,O(c.value,t=>(r(),g(s,{key:t.id,value:t.id},{default:u(()=>[v(G(`${t.name} - ${t.mobile}`),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1},8,["validate-status","help"])]),l.type==1?(r(),m("div",oe,[a(n,{label:"وزن (گرم)"},{default:u(()=>[a(i,{value:l.original_value,"onUpdate:value":e[18]||(e[18]=t=>l.original_value=t),class:"w-full",step:.001},null,8,["value"])]),_:1}),a(n,{label:"عیار"},{default:u(()=>[a(i,{value:l.ayar,"onUpdate:value":e[19]||(e[19]=t=>l.ayar=t),class:"w-full"},null,8,["value"])]),_:1}),a(n,{label:"نام آزمایشگاه"},{default:u(()=>[a(d,{value:l.lab,"onUpdate:value":e[20]||(e[20]=t=>l.lab=t)},null,8,["value"])]),_:1}),a(n,{label:"انگ"},{default:u(()=>[a(d,{value:l.ang,"onUpdate:value":e[21]||(e[21]=t=>l.ang=t)},null,8,["value"])]),_:1}),a(n,{label:"وزن نهایی اعمال شده"},{default:u(()=>[a(d,{value:C.value,disabled:""},null,8,["value"])]),_:1})])):f("",!0),l.type==2?(r(),m("div",se,[a(n,{label:"وزن (گرم)"},{default:u(()=>[a(i,{value:l.value,"onUpdate:value":e[22]||(e[22]=t=>l.value=t),class:"w-full",step:.001},null,8,["value"])]),_:1}),a(n,{label:"حواله به"},{default:u(()=>[a(d,{value:l.to,"onUpdate:value":e[23]||(e[23]=t=>l.to=t)},null,8,["value"])]),_:1})])):f("",!0),l.type==3?(r(),m("div",re,[a(n,{label:"مبلغ چک"},{default:u(()=>[a(i,{value:l.price,"onUpdate:value":e[24]||(e[24]=t=>l.price=t),class:"w-full"},null,8,["value"])]),_:1}),a(n,{label:"وزن (گرم)"},{default:u(()=>[a(i,{value:l.value,"onUpdate:value":e[25]||(e[25]=t=>l.value=t),class:"w-full",step:.001},null,8,["value"])]),_:1}),a(n,{label:"نام صاحب حساب"},{default:u(()=>[a(d,{value:l.account_name,"onUpdate:value":e[26]||(e[26]=t=>l.account_name=t)},null,8,["value"])]),_:1}),a(n,{label:"نام بانک"},{default:u(()=>[a(d,{value:l.bank_name,"onUpdate:value":e[27]||(e[27]=t=>l.bank_name=t)},null,8,["value"])]),_:1})])):f("",!0),l.type==4?(r(),m("div",ie,[a(n,{label:"میزان پول"},{default:u(()=>[a(i,{value:l.price,"onUpdate:value":e[28]||(e[28]=t=>l.price=t),class:"w-full"},null,8,["value"])]),_:1}),a(n,{label:"مظنه"},{default:u(()=>[a(i,{value:l.price_per_gram,"onUpdate:value":e[29]||(e[29]=t=>l.price_per_gram=t),class:"w-full"},null,8,["value"])]),_:1}),l.price_per_gram?(r(),g(n,{key:0,label:"وزن نهایی اعمال شده"},{default:u(()=>[a(d,{value:F.value,disabled:""},null,8,["value"])]),_:1})):f("",!0)])):f("",!0),a(n,{label:"توضیحات"},{default:u(()=>[a(B,{value:l.note,"onUpdate:value":e[30]||(e[30]=t=>l.note=t),"auto-size":{minRows:3,maxRows:5}},null,8,["value"])]),_:1}),a(q,{type:"primary",class:"form-submit",onClick:N},{default:u(()=>[...e[39]||(e[39]=[v("ثبت اطلاعات",-1)])]),_:1})]),_:1})]),_:1})]),_:1},8,["spinning"]))}}});export{me as _}; diff --git a/apps/admin-panel/dist/assets/addFinDoc.vue_vue_type_script_setup_true_lang-C7dUyRNk.js b/apps/admin-panel/dist/assets/addFinDoc.vue_vue_type_script_setup_true_lang-C7dUyRNk.js new file mode 100644 index 0000000..de52cea --- /dev/null +++ b/apps/admin-panel/dist/assets/addFinDoc.vue_vue_type_script_setup_true_lang-C7dUyRNk.js @@ -0,0 +1 @@ +import{d as I,x as K,y as U,a as b,w as u,h as Q,k as X,m as M,z as E,r as p,o as s,p as L,c as a,f as v,b as m,e as O,F as V,i as f,H as Y,s as j,J as z,l as Z,t as G}from"./index-CpVArufm.js";import{o as h}from"./select--BgT6D7O.js";import{_ as ee}from"./BaseFormModal.vue_vue_type_style_index_0_lang-B4iVMhZt.js";const le={class:"grid-3"},ae={key:0,class:"grid-3"},te={key:1,class:"grid-3"},ue={key:2,class:"grid-3"},ne={key:3,class:"grid-3"},oe={class:"grid-3"},se={key:0,class:"grid-3"},ie={key:1,class:"grid-3"},re={key:2,class:"grid-3"},de={key:3,class:"grid-3"},ve=4.331802,_e=I({__name:"addFinDoc",props:{open:{type:Boolean},id:{}},emits:["update:open","success"],setup(N,{emit:A}){const R=N,$=A,k=R.open!==void 0,D=X(),H=Z(),g=k?R.id:D.params.id,y=M(!1),c=M([]),l=E({type:2,customer_id:void 0,value:void 0,original_value:void 0,ayar:void 0,lab:"",ang:"",to:"",price:void 0,price_per_gram:void 0,account_name:"",bank_name:"",note:""}),_=E({}),C=j(()=>{const o=Number(l.original_value??0),e=Number(l.ayar??0);return!o||!e?"":(o*e/750).toFixed(4)}),F=j(()=>{const o=Number(l.price??0),e=Number(l.price_per_gram??0);return!o||!e?"":(o/(e/ve)).toFixed(4)});function B(o,e){return h(e).toLowerCase().includes(o.toLowerCase())}function T(){return Object.keys(_).forEach(o=>delete _[o]),l.customer_id||(_.customer_id="مقدار را وارد نمایید"),Object.keys(_).length===0}async function x(){var o,e;if(T())try{y.value=!0,g?await U.put(`cash/${g}`,l):await U.post("cash",l),z.info("اطلاعات با موفقیت به ثبت رسید."),k?($("success"),$("update:open",!1)):H.push("/finical/list")}catch(i){z.error(((e=(o=i==null?void 0:i.response)==null?void 0:o.data)==null?void 0:e.message)??"خطا در ثبت اطلاعات.")}finally{y.value=!1}}return K(async()=>{var o;try{const{data:e}=await U.get("query/customer");c.value=e}catch(e){console.log(e)}if(g)try{const{data:e}=await U.get(`cash/${g}`);Object.assign(l,{type:e.type??2,customer_id:(o=e.customer)==null?void 0:o.id,value:e.value!==null?Number(e.value):void 0,original_value:e.original_value!==null?Number(e.original_value):void 0,ayar:e.ayar??void 0,lab:e.lab??"",ang:e.ang??"",to:e.to??"",price:e.price!==null?Number(e.price):void 0,price_per_gram:e.price_per_gram!==null?Number(e.price_per_gram):void 0,account_name:e.account_name??"",bank_name:e.bank_name??"",note:e.note??""})}catch(e){console.log(e)}}),(o,e)=>{const i=p("a-select-option"),w=p("a-select"),n=p("a-form-item"),r=p("a-input-number"),d=p("a-input"),S=p("a-textarea"),W=p("a-button"),q=p("a-card"),J=p("a-form"),P=p("a-spin");return k?(s(),b(ee,{key:0,open:!!N.open,id:Q(g),"add-title":"ثبت سند مالی","edit-title":"ویرایش سند مالی",loading:y.value,submitting:y.value,width:"lg","onUpdate:open":e[15]||(e[15]=t=>o.$emit("update:open",t)),onSubmit:x},{default:u(()=>[L("div",le,[a(n,{label:"نوع سند"},{default:u(()=>[a(w,{value:l.type,"onUpdate:value":e[0]||(e[0]=t=>l.type=t)},{default:u(()=>[a(i,{value:2},{default:u(()=>[...e[31]||(e[31]=[v("حواله",-1)])]),_:1}),a(i,{value:1},{default:u(()=>[...e[32]||(e[32]=[v("آب شده",-1)])]),_:1}),a(i,{value:4},{default:u(()=>[...e[33]||(e[33]=[v("پولی",-1)])]),_:1}),a(i,{value:3},{default:u(()=>[...e[34]||(e[34]=[v("چک",-1)])]),_:1})]),_:1},8,["value"])]),_:1}),a(n,{label:"مشتری","validate-status":_.customer_id?"error":"",help:_.customer_id},{default:u(()=>[a(w,{value:l.customer_id,"onUpdate:value":e[1]||(e[1]=t=>l.customer_id=t),"show-search":"","option-filter-prop":"children","filter-option":B,placeholder:"انتخاب کنید"},{default:u(()=>[(s(!0),m(V,null,O(c.value,t=>(s(),b(i,{key:t.id,value:t.id},{default:u(()=>[v(G(`${t.name} - ${t.mobile}`),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1},8,["validate-status","help"])]),l.type==1?(s(),m("div",ae,[a(n,{label:"وزن (گرم)"},{default:u(()=>[a(r,{value:l.original_value,"onUpdate:value":e[2]||(e[2]=t=>l.original_value=t),class:"w-full",step:.001},null,8,["value"])]),_:1}),a(n,{label:"عیار"},{default:u(()=>[a(r,{value:l.ayar,"onUpdate:value":e[3]||(e[3]=t=>l.ayar=t),class:"w-full"},null,8,["value"])]),_:1}),a(n,{label:"نام آزمایشگاه"},{default:u(()=>[a(d,{value:l.lab,"onUpdate:value":e[4]||(e[4]=t=>l.lab=t)},null,8,["value"])]),_:1}),a(n,{label:"انگ"},{default:u(()=>[a(d,{value:l.ang,"onUpdate:value":e[5]||(e[5]=t=>l.ang=t)},null,8,["value"])]),_:1}),a(n,{label:"وزن نهایی اعمال شده"},{default:u(()=>[a(d,{value:C.value,disabled:""},null,8,["value"])]),_:1})])):f("",!0),l.type==2?(s(),m("div",te,[a(n,{label:"وزن (گرم)"},{default:u(()=>[a(r,{value:l.value,"onUpdate:value":e[6]||(e[6]=t=>l.value=t),class:"w-full",step:.001},null,8,["value"])]),_:1}),a(n,{label:"حواله به"},{default:u(()=>[a(d,{value:l.to,"onUpdate:value":e[7]||(e[7]=t=>l.to=t)},null,8,["value"])]),_:1})])):f("",!0),l.type==3?(s(),m("div",ue,[a(n,{label:"مبلغ چک"},{default:u(()=>[a(r,{value:l.price,"onUpdate:value":e[8]||(e[8]=t=>l.price=t),class:"w-full"},null,8,["value"])]),_:1}),a(n,{label:"وزن (گرم)"},{default:u(()=>[a(r,{value:l.value,"onUpdate:value":e[9]||(e[9]=t=>l.value=t),class:"w-full",step:.001},null,8,["value"])]),_:1}),a(n,{label:"نام صاحب حساب"},{default:u(()=>[a(d,{value:l.account_name,"onUpdate:value":e[10]||(e[10]=t=>l.account_name=t)},null,8,["value"])]),_:1}),a(n,{label:"نام بانک"},{default:u(()=>[a(d,{value:l.bank_name,"onUpdate:value":e[11]||(e[11]=t=>l.bank_name=t)},null,8,["value"])]),_:1})])):f("",!0),l.type==4?(s(),m("div",ne,[a(n,{label:"میزان پول"},{default:u(()=>[a(r,{value:l.price,"onUpdate:value":e[12]||(e[12]=t=>l.price=t),class:"w-full"},null,8,["value"])]),_:1}),a(n,{label:"مظنه"},{default:u(()=>[a(r,{value:l.price_per_gram,"onUpdate:value":e[13]||(e[13]=t=>l.price_per_gram=t),class:"w-full"},null,8,["value"])]),_:1}),l.price_per_gram?(s(),b(n,{key:0,label:"وزن نهایی اعمال شده"},{default:u(()=>[a(d,{value:F.value,disabled:""},null,8,["value"])]),_:1})):f("",!0)])):f("",!0),a(n,{label:"توضیحات"},{default:u(()=>[a(S,{value:l.note,"onUpdate:value":e[14]||(e[14]=t=>l.note=t),"auto-size":{minRows:3,maxRows:5}},null,8,["value"])]),_:1})]),_:1},8,["open","id","loading","submitting"])):(s(),b(P,{key:1,spinning:y.value},{default:u(()=>[a(J,{layout:"vertical",onSubmit:Y(x,["prevent"])},{default:u(()=>[a(q,{title:"ثبت سند مالی",class:"mb-base page-card"},{default:u(()=>[L("div",oe,[a(n,{label:"نوع سند"},{default:u(()=>[a(w,{value:l.type,"onUpdate:value":e[16]||(e[16]=t=>l.type=t)},{default:u(()=>[a(i,{value:2},{default:u(()=>[...e[35]||(e[35]=[v("حواله",-1)])]),_:1}),a(i,{value:1},{default:u(()=>[...e[36]||(e[36]=[v("آب شده",-1)])]),_:1}),a(i,{value:4},{default:u(()=>[...e[37]||(e[37]=[v("پولی",-1)])]),_:1}),a(i,{value:3},{default:u(()=>[...e[38]||(e[38]=[v("چک",-1)])]),_:1})]),_:1},8,["value"])]),_:1}),a(n,{label:"مشتری","validate-status":_.customer_id?"error":"",help:_.customer_id},{default:u(()=>[a(w,{value:l.customer_id,"onUpdate:value":e[17]||(e[17]=t=>l.customer_id=t),"show-search":"","option-filter-prop":"children","filter-option":B,placeholder:"انتخاب کنید"},{default:u(()=>[(s(!0),m(V,null,O(c.value,t=>(s(),b(i,{key:t.id,value:t.id},{default:u(()=>[v(G(`${t.name} - ${t.mobile}`),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1},8,["validate-status","help"])]),l.type==1?(s(),m("div",se,[a(n,{label:"وزن (گرم)"},{default:u(()=>[a(r,{value:l.original_value,"onUpdate:value":e[18]||(e[18]=t=>l.original_value=t),class:"w-full",step:.001},null,8,["value"])]),_:1}),a(n,{label:"عیار"},{default:u(()=>[a(r,{value:l.ayar,"onUpdate:value":e[19]||(e[19]=t=>l.ayar=t),class:"w-full"},null,8,["value"])]),_:1}),a(n,{label:"نام آزمایشگاه"},{default:u(()=>[a(d,{value:l.lab,"onUpdate:value":e[20]||(e[20]=t=>l.lab=t)},null,8,["value"])]),_:1}),a(n,{label:"انگ"},{default:u(()=>[a(d,{value:l.ang,"onUpdate:value":e[21]||(e[21]=t=>l.ang=t)},null,8,["value"])]),_:1}),a(n,{label:"وزن نهایی اعمال شده"},{default:u(()=>[a(d,{value:C.value,disabled:""},null,8,["value"])]),_:1})])):f("",!0),l.type==2?(s(),m("div",ie,[a(n,{label:"وزن (گرم)"},{default:u(()=>[a(r,{value:l.value,"onUpdate:value":e[22]||(e[22]=t=>l.value=t),class:"w-full",step:.001},null,8,["value"])]),_:1}),a(n,{label:"حواله به"},{default:u(()=>[a(d,{value:l.to,"onUpdate:value":e[23]||(e[23]=t=>l.to=t)},null,8,["value"])]),_:1})])):f("",!0),l.type==3?(s(),m("div",re,[a(n,{label:"مبلغ چک"},{default:u(()=>[a(r,{value:l.price,"onUpdate:value":e[24]||(e[24]=t=>l.price=t),class:"w-full"},null,8,["value"])]),_:1}),a(n,{label:"وزن (گرم)"},{default:u(()=>[a(r,{value:l.value,"onUpdate:value":e[25]||(e[25]=t=>l.value=t),class:"w-full",step:.001},null,8,["value"])]),_:1}),a(n,{label:"نام صاحب حساب"},{default:u(()=>[a(d,{value:l.account_name,"onUpdate:value":e[26]||(e[26]=t=>l.account_name=t)},null,8,["value"])]),_:1}),a(n,{label:"نام بانک"},{default:u(()=>[a(d,{value:l.bank_name,"onUpdate:value":e[27]||(e[27]=t=>l.bank_name=t)},null,8,["value"])]),_:1})])):f("",!0),l.type==4?(s(),m("div",de,[a(n,{label:"میزان پول"},{default:u(()=>[a(r,{value:l.price,"onUpdate:value":e[28]||(e[28]=t=>l.price=t),class:"w-full"},null,8,["value"])]),_:1}),a(n,{label:"مظنه"},{default:u(()=>[a(r,{value:l.price_per_gram,"onUpdate:value":e[29]||(e[29]=t=>l.price_per_gram=t),class:"w-full"},null,8,["value"])]),_:1}),l.price_per_gram?(s(),b(n,{key:0,label:"وزن نهایی اعمال شده"},{default:u(()=>[a(d,{value:F.value,disabled:""},null,8,["value"])]),_:1})):f("",!0)])):f("",!0),a(n,{label:"توضیحات"},{default:u(()=>[a(S,{value:l.note,"onUpdate:value":e[30]||(e[30]=t=>l.note=t),"auto-size":{minRows:3,maxRows:5}},null,8,["value"])]),_:1}),a(W,{type:"primary",class:"form-submit",onClick:x},{default:u(()=>[...e[39]||(e[39]=[v("ثبت اطلاعات",-1)])]),_:1})]),_:1})]),_:1})]),_:1},8,["spinning"]))}}});export{_e as _}; diff --git a/apps/admin-panel/dist/assets/auth-N_TMNrPz.js b/apps/admin-panel/dist/assets/auth-taL2eAff.js similarity index 88% rename from apps/admin-panel/dist/assets/auth-N_TMNrPz.js rename to apps/admin-panel/dist/assets/auth-taL2eAff.js index 4847e2f..f2ede37 100644 --- a/apps/admin-panel/dist/assets/auth-N_TMNrPz.js +++ b/apps/admin-panel/dist/assets/auth-taL2eAff.js @@ -1 +1 @@ -import{Y as u,y as l,a0 as c,a1 as s,a2 as a,u as n}from"./index-CJij4X3l.js";const g=u("auth",{state:()=>({userPermission:[]}),getters:{token:()=>localStorage.getItem(s),user:()=>{const e=localStorage.getItem(a);if(!e)return null;try{return JSON.parse(e)}catch{return null}},isLoggedIn(){return!!this.token}},actions:{async login(e){const{data:t}=await l.post("admin-login",e),o=n();o.getRoles((t.roles??[]).map(i=>i.rid)),o.setSuperAdmin(t.is_super_admin);const r={...t};return delete r.roles,delete r.ut,this.inject(r),t.iamBootstrapUrl&&window.location.assign(t.iamBootstrapUrl),r},inject(e){localStorage.setItem(s,e.api_token),localStorage.setItem("login","true"),localStorage.setItem(a,JSON.stringify(e))},async logout(){let e=null;try{const{data:o}=await l.get("admin/auth/sso/logout-url",{params:{return_url:c("auth/login")}});e=(o==null?void 0:o.logout_url)??null}catch{e=null}localStorage.removeItem(s),localStorage.removeItem(a),localStorage.removeItem("login"),sessionStorage.removeItem("gb_admin_iam_sso_checked");const t=n();return t.deleteRoles(),t.deleteUserInfo(),e?(window.location.assign(e),!0):!1}}});export{g as u}; +import{Z as u,y as l,a1 as c,a2 as s,a3 as a,u as n}from"./index-CpVArufm.js";const g=u("auth",{state:()=>({userPermission:[]}),getters:{token:()=>localStorage.getItem(s),user:()=>{const e=localStorage.getItem(a);if(!e)return null;try{return JSON.parse(e)}catch{return null}},isLoggedIn(){return!!this.token}},actions:{async login(e){const{data:t}=await l.post("admin-login",e),o=n();o.getRoles((t.roles??[]).map(i=>i.rid)),o.setSuperAdmin(t.is_super_admin);const r={...t};return delete r.roles,delete r.ut,this.inject(r),t.iamBootstrapUrl&&window.location.assign(t.iamBootstrapUrl),r},inject(e){localStorage.setItem(s,e.api_token),localStorage.setItem("login","true"),localStorage.setItem(a,JSON.stringify(e))},async logout(){let e=null;try{const{data:o}=await l.get("admin/auth/sso/logout-url",{params:{return_url:c("auth/login")}});e=(o==null?void 0:o.logout_url)??null}catch{e=null}localStorage.removeItem(s),localStorage.removeItem(a),localStorage.removeItem("login"),sessionStorage.removeItem("gb_admin_iam_sso_checked");const t=n();return t.deleteRoles(),t.deleteUserInfo(),e?(window.location.assign(e),!0):!1}}});export{g as u}; diff --git a/apps/admin-panel/dist/assets/autopromotion-WLX8YCc1.js b/apps/admin-panel/dist/assets/autopromotion-ngLMgEP5.js similarity index 97% rename from apps/admin-panel/dist/assets/autopromotion-WLX8YCc1.js rename to apps/admin-panel/dist/assets/autopromotion-ngLMgEP5.js index 1b816f7..386bca6 100644 --- a/apps/admin-panel/dist/assets/autopromotion-WLX8YCc1.js +++ b/apps/admin-panel/dist/assets/autopromotion-ngLMgEP5.js @@ -1 +1 @@ -import{d as k,x,y as _,a as B,w as r,H as C,m,z as f,r as n,o as N,c as s,p as V,f as z,J as v}from"./index-CJij4X3l.js";const M={class:"grid-3"},j=k({__name:"autopromotion",setup(S){const u=m(!1),l=m(!1),c=f({discount_percent:void 0}),i=f({});async function p(){var t,e;if(Object.keys(i).forEach(a=>delete i[a]),c.discount_percent===void 0||c.discount_percent===null){i.discount_percent="وارد کردن درصد تخفیف اتوماتیک الزامی است";return}try{u.value=!0,await _.post("autopromotion",{state:l.value,discount_percent:c.discount_percent}),v.success("اطلاعات با موفقیت به ثبت رسید.")}catch(a){v.error(((e=(t=a==null?void 0:a.response)==null?void 0:t.data)==null?void 0:e.message)??"خطا در ثبت اطلاعات.")}finally{u.value=!1}}return x(async()=>{try{const{data:t}=await _.get("autopromotion");l.value=!!t.state,c.discount_percent=t.discount_percent??void 0}catch(t){console.log(t)}}),(t,e)=>{const a=n("a-switch"),d=n("a-form-item"),b=n("a-input-number"),y=n("a-card"),h=n("a-spin"),g=n("a-button"),w=n("a-form");return N(),B(w,{layout:"vertical",class:"page-card",onSubmit:C(p,["prevent"])},{default:r(()=>[s(h,{spinning:u.value},{default:r(()=>[s(y,{title:"تخفیف اتوماتیک یکبار مصرف ویژه مشتریان جدید",class:"mb-base"},{default:r(()=>[V("div",M,[s(d,{label:"وضعیت تخفیف اتوماتیک"},{default:r(()=>[s(a,{checked:l.value,"onUpdate:checked":e[0]||(e[0]=o=>l.value=o),size:"default"},null,8,["checked"])]),_:1}),s(d,{label:"درصد تخفیف اتوماتیک روی محصولات","validate-status":i.discount_percent?"error":"",help:i.discount_percent},{default:r(()=>[s(b,{value:c.discount_percent,"onUpdate:value":e[1]||(e[1]=o=>c.discount_percent=o),dir:"ltr",min:0,max:100,formatter:o=>`${o}%`,parser:o=>o.replace("%",""),style:{width:"100%"}},null,8,["value","formatter","parser"])]),_:1},8,["validate-status","help"])])]),_:1})]),_:1},8,["spinning"]),s(g,{type:"primary",class:"mr-4 form-submit",onClick:p},{default:r(()=>[...e[2]||(e[2]=[z("ثبت اطلاعات",-1)])]),_:1})]),_:1})}}});export{j as default}; +import{d as k,x,y as _,a as B,w as r,H as C,m,z as f,r as n,o as N,c as s,p as V,f as z,J as v}from"./index-CpVArufm.js";const M={class:"grid-3"},j=k({__name:"autopromotion",setup(S){const u=m(!1),l=m(!1),c=f({discount_percent:void 0}),i=f({});async function p(){var t,e;if(Object.keys(i).forEach(a=>delete i[a]),c.discount_percent===void 0||c.discount_percent===null){i.discount_percent="وارد کردن درصد تخفیف اتوماتیک الزامی است";return}try{u.value=!0,await _.post("autopromotion",{state:l.value,discount_percent:c.discount_percent}),v.success("اطلاعات با موفقیت به ثبت رسید.")}catch(a){v.error(((e=(t=a==null?void 0:a.response)==null?void 0:t.data)==null?void 0:e.message)??"خطا در ثبت اطلاعات.")}finally{u.value=!1}}return x(async()=>{try{const{data:t}=await _.get("autopromotion");l.value=!!t.state,c.discount_percent=t.discount_percent??void 0}catch(t){console.log(t)}}),(t,e)=>{const a=n("a-switch"),d=n("a-form-item"),b=n("a-input-number"),y=n("a-card"),h=n("a-spin"),g=n("a-button"),w=n("a-form");return N(),B(w,{layout:"vertical",class:"page-card",onSubmit:C(p,["prevent"])},{default:r(()=>[s(h,{spinning:u.value},{default:r(()=>[s(y,{title:"تخفیف اتوماتیک یکبار مصرف ویژه مشتریان جدید",class:"mb-base"},{default:r(()=>[V("div",M,[s(d,{label:"وضعیت تخفیف اتوماتیک"},{default:r(()=>[s(a,{checked:l.value,"onUpdate:checked":e[0]||(e[0]=o=>l.value=o),size:"default"},null,8,["checked"])]),_:1}),s(d,{label:"درصد تخفیف اتوماتیک روی محصولات","validate-status":i.discount_percent?"error":"",help:i.discount_percent},{default:r(()=>[s(b,{value:c.discount_percent,"onUpdate:value":e[1]||(e[1]=o=>c.discount_percent=o),dir:"ltr",min:0,max:100,formatter:o=>`${o}%`,parser:o=>o.replace("%",""),style:{width:"100%"}},null,8,["value","formatter","parser"])]),_:1},8,["validate-status","help"])])]),_:1})]),_:1},8,["spinning"]),s(g,{type:"primary",class:"mr-4 form-submit",onClick:p},{default:r(()=>[...e[2]||(e[2]=[z("ثبت اطلاعات",-1)])]),_:1})]),_:1})}}});export{j as default}; diff --git a/apps/admin-panel/dist/assets/bulkCustomer.vue_vue_type_script_setup_true_lang-Bh7ptZgl.js b/apps/admin-panel/dist/assets/bulkCustomer.vue_vue_type_script_setup_true_lang-Bh7ptZgl.js new file mode 100644 index 0000000..cd09d03 --- /dev/null +++ b/apps/admin-panel/dist/assets/bulkCustomer.vue_vue_type_script_setup_true_lang-Bh7ptZgl.js @@ -0,0 +1 @@ +import{d as le,u as ae,x as te,y,a as U,h as f,w as n,H as ne,k as se,m as B,z as R,J as A,r as p,o as v,c as t,p as o,b as O,e as k,F as S,V as oe,f as b,W as ie,l as ue,s as de,t as C}from"./index-CpVArufm.js";import{o as re}from"./select--BgT6D7O.js";import{_ as pe}from"./BaseFormModal.vue_vue_type_style_index_0_lang-B4iVMhZt.js";import{_ as w}from"./ImageUploadInput.vue_vue_type_script_setup_true_lang-B9gVJPft.js";import{_ as H}from"./CityTreeSelect.vue_vue_type_script_setup_true_lang-BtBj3fof.js";import{D as W}from"./DateInput-0_1fMgrR.js";import{U as me}from"./UserOutlined-DeX82IP7.js";import{S as ve}from"./ShopOutlined-D8LgPxHa.js";import{E as fe}from"./EnvironmentOutlined-BZFp8i4M.js";import{P as _e}from"./PercentageOutlined-IS1MVcbY.js";import{S as ce}from"./SafetyCertificateOutlined-mD-ddSP4.js";const be={class:"grid-4"},ge={class:"grid-4"},ye={class:"grid-2"},Ue={class:"grid-3"},we={class:"pf-layout"},he={class:"pf-main"},Ve={class:"pf-section"},xe={class:"pf-section__head"},Oe={class:"pf-section__icon"},ke={class:"pf-grid-2"},Se={class:"pf-section"},Ce={class:"pf-section__head"},Ne={class:"pf-section__icon"},ze={class:"pf-grid-2"},$e={class:"pf-section"},Be={class:"pf-section__head"},Re={class:"pf-section__icon"},je={class:"pf-side"},qe={class:"pf-section"},Ee={class:"pf-section__head"},Ie={class:"pf-section__icon"},Je={class:"pf-section"},Me={class:"pf-section__head"},Te={class:"pf-section__icon"},De={class:"pf-uploads"},Fe={class:"pf-actions"},Le={class:"pf-actions__hint"},ll=le({__name:"bulkCustomer",props:{open:{type:Boolean},id:{},asModal:{type:Boolean}},emits:["update:open","success"],setup(j,{emit:G}){const q=j,E=G,N=q.asModal===!0,K=se(),I=ue(),Q=ae(),_=N?q.id:K.params.id,g=B(!1),V=B([]),z=B([]),a=R({fname:"",lname:"",ncode:"",password:"",mobile:"",store_name:"",phone:"",pasazh_name:"",city_id:void 0,mcode:"",birth_date:"",address:"",type:void 0,reagent_id:void 0,percent:3,gram_level:void 0,national_id_image:"",business_license:"",shop_image:""}),J=[{id:2,title:"مغازه دار اپلیکیشن"},{id:3,title:"مغازه دار حضوری"},{id:4,title:"بنکدار"}],M=de(()=>Q.isSuperAdmin?J:J.filter(d=>d.id===2||d.id===Number(a.type)));function T(d,e){return re(e).includes(d)}const u=R({}),D=R({});function X(){const d={};for(const[e,i]of Object.entries(a))JSON.stringify(i)!==JSON.stringify(D[e])&&(d[e]=i);return d}async function F(d){var i;if(!d)return;let e=(i=V.value.find(s=>s.id===d))==null?void 0:i.percent;if(!Number(e))try{const{data:s}=await y.get(`cities/get-percent-aux/${d}`);e=s}catch(s){console.log(s);return}a.percent=e==null?void 0:Number(e)}function Y(){return Object.keys(u).forEach(d=>delete u[d]),a.fname||(u.fname="لطفا مقدار را وارد کنید"),a.lname||(u.lname="لطفا مقدار را وارد کنید"),a.mobile||(u.mobile="لطفا مقدار را وارد کنید"),(a.percent===void 0||a.percent===null||a.percent==="")&&(u.percent="لطفا مقدار را وارد کنید"),Object.keys(u).length===0}async function $(){var d,e,i,s,h,c;if(Y())try{g.value=!0;const r=_?X():{...a},m={...r,id:_??null,national_code:a.ncode};(!_||"fname"in r||"lname"in r)&&(m.name=`${a.fname} ${a.lname}`.trim()),_?await y.put(`customer/${_}`,m):await y.post("customer/create",m),A.info("اطلاعات با موفقیت به ثبت رسید."),N?(E("success"),E("update:open",!1)):I.go(-1)}catch(r){const m=(s=(i=(e=(d=r==null?void 0:r.response)==null?void 0:d.data)==null?void 0:e.errors)==null?void 0:i.mobile)==null?void 0:s[0];A.error(m??((c=(h=r==null?void 0:r.response)==null?void 0:h.data)==null?void 0:c.message)??"خطا در ثبت اطلاعات.")}finally{g.value=!1}}return te(async()=>{var d;try{const{data:e}=await y.get("query/reagent");z.value=e}catch(e){console.log(e)}try{const{data:e}=await y.post("cities/list");V.value=e.rows??[]}catch(e){console.log(e)}if(_)try{const{data:e}=await y.get(`customer/${_}`);Object.assign(a,{fname:e.fname??"",lname:e.lname??"",ncode:e.national_code??"",mobile:e.mobile??"",city_id:e.city_id??void 0,address:e.address??"",percent:e.percent===null||e.percent===void 0?void 0:Number(e.percent),gram_level:e.gram_level??void 0,reagent_id:((d=e.reagent)==null?void 0:d.id)??void 0,store_name:e.store_name??"",pasazh_name:e.pasazh_name??"",mcode:e.mcode??"",birth_date:e.birth_date??"",phone:e.phone??"",type:e.type??void 0,national_id_image:e.national_id_image??"",business_license:e.business_license??"",shop_image:e.shop_image??""}),Object.assign(D,JSON.parse(JSON.stringify(a)))}catch(e){console.log(e)}}),(d,e)=>{const i=p("a-input"),s=p("a-form-item"),h=p("a-input-password"),c=p("a-card"),r=p("a-select-option"),m=p("a-select"),x=p("a-input-number"),L=p("a-textarea"),P=p("a-button"),Z=p("a-spin"),ee=p("a-form");return N?(v(),U(pe,{key:0,open:!!j.open,id:f(_),"add-title":"افزودن مشتری عمده","edit-title":"ویرایش مشتری عمده",loading:g.value,submitting:g.value,width:"lg","onUpdate:open":e[19]||(e[19]=l=>d.$emit("update:open",l)),onSubmit:$},{default:n(()=>[t(c,{title:"اطلاعات پایه",class:"mb-base"},{default:n(()=>[o("div",be,[t(s,{label:"نام","validate-status":u.fname?"error":"",help:u.fname},{default:n(()=>[t(i,{value:a.fname,"onUpdate:value":e[0]||(e[0]=l=>a.fname=l)},null,8,["value"])]),_:1},8,["validate-status","help"]),t(s,{label:"نام خانوادگی","validate-status":u.lname?"error":"",help:u.lname},{default:n(()=>[t(i,{value:a.lname,"onUpdate:value":e[1]||(e[1]=l=>a.lname=l)},null,8,["value"])]),_:1},8,["validate-status","help"]),t(s,{label:"کد ملی"},{default:n(()=>[t(i,{value:a.ncode,"onUpdate:value":e[2]||(e[2]=l=>a.ncode=l)},null,8,["value"])]),_:1}),t(s,{label:"شماره تلفن همراه","validate-status":u.mobile?"error":"",help:u.mobile},{default:n(()=>[t(i,{value:a.mobile,"onUpdate:value":e[3]||(e[3]=l=>a.mobile=l)},null,8,["value"])]),_:1},8,["validate-status","help"]),t(s,{label:"رمز عبور"},{default:n(()=>[t(h,{value:a.password,"onUpdate:value":e[4]||(e[4]=l=>a.password=l)},null,8,["value"])]),_:1}),t(s,{label:"تلفن ثابت"},{default:n(()=>[t(i,{value:a.phone,"onUpdate:value":e[5]||(e[5]=l=>a.phone=l)},null,8,["value"])]),_:1})])]),_:1}),t(c,{title:"اطلاعات تجاری",class:"mb-base"},{default:n(()=>[o("div",ge,[t(s,{label:"نوع کاربری"},{default:n(()=>[t(m,{value:a.type,"onUpdate:value":e[6]||(e[6]=l=>a.type=l),"show-search":"","filter-option":T,style:{width:"100%",direction:"rtl !important"}},{default:n(()=>[(v(!0),O(S,null,k(M.value,l=>(v(),U(r,{key:l.id,value:l.id},{default:n(()=>[b(C(l.title),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1}),t(s,{label:"نام مغازه"},{default:n(()=>[t(i,{value:a.store_name,"onUpdate:value":e[7]||(e[7]=l=>a.store_name=l)},null,8,["value"])]),_:1}),t(s,{label:"نام پاساژ"},{default:n(()=>[t(i,{value:a.pasazh_name,"onUpdate:value":e[8]||(e[8]=l=>a.pasazh_name=l)},null,8,["value"])]),_:1}),t(s,{label:"کد مشتری"},{default:n(()=>[t(i,{value:a.mcode,"onUpdate:value":e[9]||(e[9]=l=>a.mcode=l)},null,8,["value"])]),_:1}),t(W,{"model-value":a.birth_date||void 0,label:"تاریخ تولد","onUpdate:modelValue":e[10]||(e[10]=l=>a.birth_date=l??"")},null,8,["model-value"]),t(s,{label:"کارشناس فروش"},{default:n(()=>[t(m,{value:a.reagent_id,"onUpdate:value":e[11]||(e[11]=l=>a.reagent_id=l),"allow-clear":"",placeholder:"انتخاب کنید"},{default:n(()=>[(v(!0),O(S,null,k(z.value,l=>(v(),U(r,{key:l.id,value:l.id},{default:n(()=>[b(C(l.name),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1}),t(s,{label:"درصد","validate-status":u.percent?"error":"",help:u.percent},{default:n(()=>[t(x,{value:a.percent,"onUpdate:value":e[12]||(e[12]=l=>a.percent=l),class:"w-full"},null,8,["value"])]),_:1},8,["validate-status","help"]),t(s,{label:"سقف اعتبار (برحسب گرم)"},{default:n(()=>[t(x,{value:a.gram_level,"onUpdate:value":e[13]||(e[13]=l=>a.gram_level=l),class:"w-full"},null,8,["value"])]),_:1})])]),_:1}),t(c,{title:"اطلاعات تکمیلی",class:"mb-base"},{default:n(()=>[o("div",ye,[t(s,{label:"شهر"},{default:n(()=>[t(H,{value:a.city_id,"onUpdate:value":e[14]||(e[14]=l=>a.city_id=l),cities:V.value,onChange:F},null,8,["value","cities"])]),_:1}),t(s,{label:"آدرس"},{default:n(()=>[t(L,{value:a.address,"onUpdate:value":e[15]||(e[15]=l=>a.address=l),"auto-size":{minRows:2,maxRows:4}},null,8,["value"])]),_:1})])]),_:1}),t(c,{title:"مدارک",class:"mb-base"},{default:n(()=>[o("div",Ue,[t(s,{label:"عکس کارت ملی"},{default:n(()=>[t(w,{modelValue:a.national_id_image,"onUpdate:modelValue":e[16]||(e[16]=l=>a.national_id_image=l),purpose:"customer.nationalId",placeholder:"عکس"},null,8,["modelValue"])]),_:1}),t(s,{label:"عکس جواز کسب"},{default:n(()=>[t(w,{modelValue:a.business_license,"onUpdate:modelValue":e[17]||(e[17]=l=>a.business_license=l),purpose:"customer.businessLicense",placeholder:"عکس"},null,8,["modelValue"])]),_:1}),t(s,{label:"عکس سردر مغازه"},{default:n(()=>[t(w,{modelValue:a.shop_image,"onUpdate:modelValue":e[18]||(e[18]=l=>a.shop_image=l),purpose:"customer.shop",placeholder:"عکس"},null,8,["modelValue"])]),_:1})])]),_:1})]),_:1},8,["open","id","loading","submitting"])):(v(),U(ee,{key:1,layout:"vertical",model:a,class:"pf-form",onSubmit:ne($,["prevent"])},{default:n(()=>[t(Z,{spinning:g.value},{default:n(()=>[o("div",we,[o("div",he,[o("section",Ve,[o("div",xe,[o("span",Oe,[t(f(me))]),e[40]||(e[40]=o("div",null,[o("h3",null,"اطلاعات پایه"),o("p",null,"مشخصات هویتی و اطلاعات ورود مشتری")],-1))]),o("div",ke,[t(s,{label:"نام",required:"","validate-status":u.fname?"error":"",help:u.fname},{default:n(()=>[t(i,{value:a.fname,"onUpdate:value":e[20]||(e[20]=l=>a.fname=l)},null,8,["value"])]),_:1},8,["validate-status","help"]),t(s,{label:"نام خانوادگی",required:"","validate-status":u.lname?"error":"",help:u.lname},{default:n(()=>[t(i,{value:a.lname,"onUpdate:value":e[21]||(e[21]=l=>a.lname=l)},null,8,["value"])]),_:1},8,["validate-status","help"]),t(s,{label:"کد ملی"},{default:n(()=>[t(i,{value:a.ncode,"onUpdate:value":e[22]||(e[22]=l=>a.ncode=l),class:"ltr-input",inputmode:"numeric"},null,8,["value"])]),_:1}),t(W,{"model-value":a.birth_date||void 0,label:"تاریخ تولد","onUpdate:modelValue":e[23]||(e[23]=l=>a.birth_date=l??"")},null,8,["model-value"]),t(s,{label:"شماره تلفن همراه",required:"","validate-status":u.mobile?"error":"",help:u.mobile},{default:n(()=>[t(i,{value:a.mobile,"onUpdate:value":e[24]||(e[24]=l=>a.mobile=l),class:"ltr-input",inputmode:"tel",placeholder:"09xxxxxxxxx"},null,8,["value"])]),_:1},8,["validate-status","help"]),t(s,{label:"رمز عبور"},{default:n(()=>[t(h,{value:a.password,"onUpdate:value":e[25]||(e[25]=l=>a.password=l)},null,8,["value"])]),_:1}),t(s,{label:"تلفن ثابت",class:"mb-0"},{default:n(()=>[t(i,{value:a.phone,"onUpdate:value":e[26]||(e[26]=l=>a.phone=l),class:"ltr-input",inputmode:"tel"},null,8,["value"])]),_:1})])]),o("section",Se,[o("div",Ce,[o("span",Ne,[t(f(ve))]),e[41]||(e[41]=o("div",null,[o("h3",null,"اطلاعات تجاری"),o("p",null,"نوع کاربری و مشخصات فروشگاه")],-1))]),o("div",ze,[t(s,{label:"نوع کاربری"},{default:n(()=>[t(m,{value:a.type,"onUpdate:value":e[27]||(e[27]=l=>a.type=l),"show-search":"",placeholder:"انتخاب کنید","filter-option":T,style:{width:"100%",direction:"rtl !important"}},{default:n(()=>[(v(!0),O(S,null,k(M.value,l=>(v(),U(r,{key:l.id,value:l.id},{default:n(()=>[b(C(l.title),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1}),t(s,{label:"کد مشتری"},{default:n(()=>[t(i,{value:a.mcode,"onUpdate:value":e[28]||(e[28]=l=>a.mcode=l)},null,8,["value"])]),_:1}),t(s,{label:"نام مغازه",class:"mb-0"},{default:n(()=>[t(i,{value:a.store_name,"onUpdate:value":e[29]||(e[29]=l=>a.store_name=l)},null,8,["value"])]),_:1}),t(s,{label:"نام پاساژ",class:"mb-0"},{default:n(()=>[t(i,{value:a.pasazh_name,"onUpdate:value":e[30]||(e[30]=l=>a.pasazh_name=l)},null,8,["value"])]),_:1})])]),o("section",$e,[o("div",Be,[o("span",Re,[t(f(fe))]),e[42]||(e[42]=o("div",null,[o("h3",null,"آدرس"),o("p",null,"انتخاب شهر، درصد را بر اساس همان شهر پر می‌کند")],-1))]),t(s,{label:"شهر"},{default:n(()=>[t(H,{value:a.city_id,"onUpdate:value":e[31]||(e[31]=l=>a.city_id=l),cities:V.value,onChange:F},null,8,["value","cities"])]),_:1}),t(s,{label:"آدرس",class:"mb-0"},{default:n(()=>[t(L,{value:a.address,"onUpdate:value":e[32]||(e[32]=l=>a.address=l),"auto-size":{minRows:3,maxRows:5}},null,8,["value"])]),_:1})])]),o("aside",je,[o("section",qe,[o("div",Ee,[o("span",Ie,[t(f(_e))]),e[43]||(e[43]=o("div",null,[o("h3",null,"کارشناس و اعتبار"),o("p",null,"کارشناس فروش، درصد و سقف اعتبار")],-1))]),t(s,{label:"کارشناس فروش"},{default:n(()=>[t(m,{value:a.reagent_id,"onUpdate:value":e[33]||(e[33]=l=>a.reagent_id=l),"allow-clear":"","show-search":"","option-filter-prop":"label",placeholder:"انتخاب کنید"},{default:n(()=>[(v(!0),O(S,null,k(z.value,l=>(v(),U(r,{key:l.id,value:l.id,label:l.name},{default:n(()=>[b(C(l.name),1)]),_:2},1032,["value","label"]))),128))]),_:1},8,["value"])]),_:1}),t(s,{label:"درصد",required:"","validate-status":u.percent?"error":"",help:u.percent},{default:n(()=>[t(x,{value:a.percent,"onUpdate:value":e[34]||(e[34]=l=>a.percent=l),class:"w-full","addon-after":"٪"},null,8,["value"])]),_:1},8,["validate-status","help"]),t(s,{label:"سقف اعتبار",class:"mb-0"},{default:n(()=>[t(x,{value:a.gram_level,"onUpdate:value":e[35]||(e[35]=l=>a.gram_level=l),class:"w-full","addon-after":"گرم"},null,8,["value"])]),_:1})]),o("section",Je,[o("div",Me,[o("span",Te,[t(f(ce))]),e[44]||(e[44]=o("div",null,[o("h3",null,"مدارک"),o("p",null,"تصویر مدارک هویتی و فروشگاه")],-1))]),o("div",De,[t(s,{label:"کارت ملی",class:"mb-0"},{default:n(()=>[t(w,{modelValue:a.national_id_image,"onUpdate:modelValue":e[36]||(e[36]=l=>a.national_id_image=l),purpose:"customer.nationalId",placeholder:"عکس"},null,8,["modelValue"])]),_:1}),t(s,{label:"جواز کسب",class:"mb-0"},{default:n(()=>[t(w,{modelValue:a.business_license,"onUpdate:modelValue":e[37]||(e[37]=l=>a.business_license=l),purpose:"customer.businessLicense",placeholder:"عکس"},null,8,["modelValue"])]),_:1}),t(s,{label:"سردر مغازه",class:"mb-0"},{default:n(()=>[t(w,{modelValue:a.shop_image,"onUpdate:modelValue":e[38]||(e[38]=l=>a.shop_image=l),purpose:"customer.shop",placeholder:"عکس"},null,8,["modelValue"])]),_:1})])])])]),o("div",Fe,[o("span",Le,[t(f(oe)),e[45]||(e[45]=b(" فیلدهای ستاره‌دار الزامی هستند.",-1))]),t(P,{onClick:e[39]||(e[39]=l=>f(I).go(-1))},{default:n(()=>[...e[46]||(e[46]=[b("انصراف",-1)])]),_:1}),t(P,{type:"primary",class:"form-submit",loading:g.value,onClick:$},{icon:n(()=>[t(f(ie))]),default:n(()=>[e[47]||(e[47]=b(" ثبت اطلاعات ",-1))]),_:1},8,["loading"])])]),_:1},8,["spinning"])]),_:1},8,["model"]))}}});export{ll as _}; diff --git a/apps/admin-panel/dist/assets/bulkCustomer.vue_vue_type_script_setup_true_lang-C_6AC_x3.js b/apps/admin-panel/dist/assets/bulkCustomer.vue_vue_type_script_setup_true_lang-C_6AC_x3.js deleted file mode 100644 index 4131d5a..0000000 --- a/apps/admin-panel/dist/assets/bulkCustomer.vue_vue_type_script_setup_true_lang-C_6AC_x3.js +++ /dev/null @@ -1 +0,0 @@ -import{d as le,u as ae,x as te,y,a as U,h as f,w as n,H as ne,k as se,m as B,z as R,J as A,r as p,o as v,c as t,p as o,b as O,e as k,F as S,V as oe,f as b,W as ie,l as ue,s as de,t as C}from"./index-CJij4X3l.js";import{_ as re}from"./BaseFormModal.vue_vue_type_style_index_0_lang-YLHOAWTN.js";import{_ as w}from"./ImageUploadInput.vue_vue_type_script_setup_true_lang-vRgyyG7o.js";import{_ as H}from"./CityTreeSelect.vue_vue_type_script_setup_true_lang-7y8zYJ_W.js";import{D as W}from"./DateInput-DgUF2he7.js";import{U as pe}from"./UserOutlined-yq90mQcC.js";import{S as me}from"./ShopOutlined-B63CHExu.js";import{E as ve}from"./EnvironmentOutlined-Cetl6vFW.js";import{P as fe}from"./PercentageOutlined-CtwjLYTJ.js";import{S as _e}from"./SafetyCertificateOutlined-Cr8bqGKo.js";const ce={class:"grid-4"},be={class:"grid-4"},ge={class:"grid-2"},ye={class:"grid-3"},Ue={class:"pf-layout"},we={class:"pf-main"},he={class:"pf-section"},Ve={class:"pf-section__head"},xe={class:"pf-section__icon"},Oe={class:"pf-grid-2"},ke={class:"pf-section"},Se={class:"pf-section__head"},Ce={class:"pf-section__icon"},Ne={class:"pf-grid-2"},ze={class:"pf-section"},$e={class:"pf-section__head"},Be={class:"pf-section__icon"},Re={class:"pf-side"},je={class:"pf-section"},qe={class:"pf-section__head"},Ee={class:"pf-section__icon"},Ie={class:"pf-section"},Je={class:"pf-section__head"},Me={class:"pf-section__icon"},Te={class:"pf-uploads"},De={class:"pf-actions"},Fe={class:"pf-actions__hint"},Ze=le({__name:"bulkCustomer",props:{open:{type:Boolean},id:{},asModal:{type:Boolean}},emits:["update:open","success"],setup(j,{emit:G}){const q=j,E=G,N=q.asModal===!0,K=se(),I=ue(),Q=ae(),_=N?q.id:K.params.id,g=B(!1),V=B([]),z=B([]),a=R({fname:"",lname:"",ncode:"",password:"",mobile:"",store_name:"",phone:"",pasazh_name:"",city_id:void 0,mcode:"",birth_date:"",address:"",type:void 0,reagent_id:void 0,percent:3,gram_level:void 0,national_id_image:"",business_license:"",shop_image:""}),J=[{id:2,title:"مغازه دار اپلیکیشن"},{id:3,title:"مغازه دار حضوری"},{id:4,title:"بنکدار"}],M=de(()=>Q.isSuperAdmin?J:J.filter(d=>d.id===2||d.id===Number(a.type)));function T(d,e){var i,s;return String(((s=(i=e==null?void 0:e.children)==null?void 0:i[0])==null?void 0:s.children)??"").includes(d)}const u=R({}),D=R({});function X(){const d={};for(const[e,i]of Object.entries(a))JSON.stringify(i)!==JSON.stringify(D[e])&&(d[e]=i);return d}async function F(d){var i;if(!d)return;let e=(i=V.value.find(s=>s.id===d))==null?void 0:i.percent;if(!Number(e))try{const{data:s}=await y.get(`cities/get-percent-aux/${d}`);e=s}catch(s){console.log(s);return}a.percent=e==null?void 0:Number(e)}function Y(){return Object.keys(u).forEach(d=>delete u[d]),a.fname||(u.fname="لطفا مقدار را وارد کنید"),a.lname||(u.lname="لطفا مقدار را وارد کنید"),a.mobile||(u.mobile="لطفا مقدار را وارد کنید"),(a.percent===void 0||a.percent===null||a.percent==="")&&(u.percent="لطفا مقدار را وارد کنید"),Object.keys(u).length===0}async function $(){var d,e,i,s,h,c;if(Y())try{g.value=!0;const r=_?X():{...a},m={...r,id:_??null,national_code:a.ncode};(!_||"fname"in r||"lname"in r)&&(m.name=`${a.fname} ${a.lname}`.trim()),_?await y.put(`customer/${_}`,m):await y.post("customer/create",m),A.info("اطلاعات با موفقیت به ثبت رسید."),N?(E("success"),E("update:open",!1)):I.go(-1)}catch(r){const m=(s=(i=(e=(d=r==null?void 0:r.response)==null?void 0:d.data)==null?void 0:e.errors)==null?void 0:i.mobile)==null?void 0:s[0];A.error(m??((c=(h=r==null?void 0:r.response)==null?void 0:h.data)==null?void 0:c.message)??"خطا در ثبت اطلاعات.")}finally{g.value=!1}}return te(async()=>{var d;try{const{data:e}=await y.get("query/reagent");z.value=e}catch(e){console.log(e)}try{const{data:e}=await y.post("cities/list");V.value=e.rows??[]}catch(e){console.log(e)}if(_)try{const{data:e}=await y.get(`customer/${_}`);Object.assign(a,{fname:e.fname??"",lname:e.lname??"",ncode:e.national_code??"",mobile:e.mobile??"",city_id:e.city_id??void 0,address:e.address??"",percent:e.percent===null||e.percent===void 0?void 0:Number(e.percent),gram_level:e.gram_level??void 0,reagent_id:((d=e.reagent)==null?void 0:d.id)??void 0,store_name:e.store_name??"",pasazh_name:e.pasazh_name??"",mcode:e.mcode??"",birth_date:e.birth_date??"",phone:e.phone??"",type:e.type??void 0,national_id_image:e.national_id_image??"",business_license:e.business_license??"",shop_image:e.shop_image??""}),Object.assign(D,JSON.parse(JSON.stringify(a)))}catch(e){console.log(e)}}),(d,e)=>{const i=p("a-input"),s=p("a-form-item"),h=p("a-input-password"),c=p("a-card"),r=p("a-select-option"),m=p("a-select"),x=p("a-input-number"),L=p("a-textarea"),P=p("a-button"),Z=p("a-spin"),ee=p("a-form");return N?(v(),U(re,{key:0,open:!!j.open,id:f(_),"add-title":"افزودن مشتری عمده","edit-title":"ویرایش مشتری عمده",loading:g.value,submitting:g.value,width:"lg","onUpdate:open":e[19]||(e[19]=l=>d.$emit("update:open",l)),onSubmit:$},{default:n(()=>[t(c,{title:"اطلاعات پایه",class:"mb-base"},{default:n(()=>[o("div",ce,[t(s,{label:"نام","validate-status":u.fname?"error":"",help:u.fname},{default:n(()=>[t(i,{value:a.fname,"onUpdate:value":e[0]||(e[0]=l=>a.fname=l)},null,8,["value"])]),_:1},8,["validate-status","help"]),t(s,{label:"نام خانوادگی","validate-status":u.lname?"error":"",help:u.lname},{default:n(()=>[t(i,{value:a.lname,"onUpdate:value":e[1]||(e[1]=l=>a.lname=l)},null,8,["value"])]),_:1},8,["validate-status","help"]),t(s,{label:"کد ملی"},{default:n(()=>[t(i,{value:a.ncode,"onUpdate:value":e[2]||(e[2]=l=>a.ncode=l)},null,8,["value"])]),_:1}),t(s,{label:"شماره تلفن همراه","validate-status":u.mobile?"error":"",help:u.mobile},{default:n(()=>[t(i,{value:a.mobile,"onUpdate:value":e[3]||(e[3]=l=>a.mobile=l)},null,8,["value"])]),_:1},8,["validate-status","help"]),t(s,{label:"رمز عبور"},{default:n(()=>[t(h,{value:a.password,"onUpdate:value":e[4]||(e[4]=l=>a.password=l)},null,8,["value"])]),_:1}),t(s,{label:"تلفن ثابت"},{default:n(()=>[t(i,{value:a.phone,"onUpdate:value":e[5]||(e[5]=l=>a.phone=l)},null,8,["value"])]),_:1})])]),_:1}),t(c,{title:"اطلاعات تجاری",class:"mb-base"},{default:n(()=>[o("div",be,[t(s,{label:"نوع کاربری"},{default:n(()=>[t(m,{value:a.type,"onUpdate:value":e[6]||(e[6]=l=>a.type=l),"show-search":"","filter-option":T,style:{width:"100%",direction:"rtl !important"}},{default:n(()=>[(v(!0),O(S,null,k(M.value,l=>(v(),U(r,{key:l.id,value:l.id},{default:n(()=>[b(C(l.title),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1}),t(s,{label:"نام مغازه"},{default:n(()=>[t(i,{value:a.store_name,"onUpdate:value":e[7]||(e[7]=l=>a.store_name=l)},null,8,["value"])]),_:1}),t(s,{label:"نام پاساژ"},{default:n(()=>[t(i,{value:a.pasazh_name,"onUpdate:value":e[8]||(e[8]=l=>a.pasazh_name=l)},null,8,["value"])]),_:1}),t(s,{label:"کد مشتری"},{default:n(()=>[t(i,{value:a.mcode,"onUpdate:value":e[9]||(e[9]=l=>a.mcode=l)},null,8,["value"])]),_:1}),t(W,{"model-value":a.birth_date||void 0,label:"تاریخ تولد","onUpdate:modelValue":e[10]||(e[10]=l=>a.birth_date=l??"")},null,8,["model-value"]),t(s,{label:"کارشناس فروش"},{default:n(()=>[t(m,{value:a.reagent_id,"onUpdate:value":e[11]||(e[11]=l=>a.reagent_id=l),"allow-clear":"",placeholder:"انتخاب کنید"},{default:n(()=>[(v(!0),O(S,null,k(z.value,l=>(v(),U(r,{key:l.id,value:l.id},{default:n(()=>[b(C(l.name),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1}),t(s,{label:"درصد","validate-status":u.percent?"error":"",help:u.percent},{default:n(()=>[t(x,{value:a.percent,"onUpdate:value":e[12]||(e[12]=l=>a.percent=l),class:"w-full"},null,8,["value"])]),_:1},8,["validate-status","help"]),t(s,{label:"سقف اعتبار (برحسب گرم)"},{default:n(()=>[t(x,{value:a.gram_level,"onUpdate:value":e[13]||(e[13]=l=>a.gram_level=l),class:"w-full"},null,8,["value"])]),_:1})])]),_:1}),t(c,{title:"اطلاعات تکمیلی",class:"mb-base"},{default:n(()=>[o("div",ge,[t(s,{label:"شهر"},{default:n(()=>[t(H,{value:a.city_id,"onUpdate:value":e[14]||(e[14]=l=>a.city_id=l),cities:V.value,onChange:F},null,8,["value","cities"])]),_:1}),t(s,{label:"آدرس"},{default:n(()=>[t(L,{value:a.address,"onUpdate:value":e[15]||(e[15]=l=>a.address=l),"auto-size":{minRows:2,maxRows:4}},null,8,["value"])]),_:1})])]),_:1}),t(c,{title:"مدارک",class:"mb-base"},{default:n(()=>[o("div",ye,[t(s,{label:"عکس کارت ملی"},{default:n(()=>[t(w,{modelValue:a.national_id_image,"onUpdate:modelValue":e[16]||(e[16]=l=>a.national_id_image=l),purpose:"customer.nationalId",placeholder:"عکس"},null,8,["modelValue"])]),_:1}),t(s,{label:"عکس جواز کسب"},{default:n(()=>[t(w,{modelValue:a.business_license,"onUpdate:modelValue":e[17]||(e[17]=l=>a.business_license=l),purpose:"customer.businessLicense",placeholder:"عکس"},null,8,["modelValue"])]),_:1}),t(s,{label:"عکس سردر مغازه"},{default:n(()=>[t(w,{modelValue:a.shop_image,"onUpdate:modelValue":e[18]||(e[18]=l=>a.shop_image=l),purpose:"customer.shop",placeholder:"عکس"},null,8,["modelValue"])]),_:1})])]),_:1})]),_:1},8,["open","id","loading","submitting"])):(v(),U(ee,{key:1,layout:"vertical",model:a,class:"pf-form",onSubmit:ne($,["prevent"])},{default:n(()=>[t(Z,{spinning:g.value},{default:n(()=>[o("div",Ue,[o("div",we,[o("section",he,[o("div",Ve,[o("span",xe,[t(f(pe))]),e[40]||(e[40]=o("div",null,[o("h3",null,"اطلاعات پایه"),o("p",null,"مشخصات هویتی و اطلاعات ورود مشتری")],-1))]),o("div",Oe,[t(s,{label:"نام",required:"","validate-status":u.fname?"error":"",help:u.fname},{default:n(()=>[t(i,{value:a.fname,"onUpdate:value":e[20]||(e[20]=l=>a.fname=l)},null,8,["value"])]),_:1},8,["validate-status","help"]),t(s,{label:"نام خانوادگی",required:"","validate-status":u.lname?"error":"",help:u.lname},{default:n(()=>[t(i,{value:a.lname,"onUpdate:value":e[21]||(e[21]=l=>a.lname=l)},null,8,["value"])]),_:1},8,["validate-status","help"]),t(s,{label:"کد ملی"},{default:n(()=>[t(i,{value:a.ncode,"onUpdate:value":e[22]||(e[22]=l=>a.ncode=l),class:"ltr-input",inputmode:"numeric"},null,8,["value"])]),_:1}),t(W,{"model-value":a.birth_date||void 0,label:"تاریخ تولد","onUpdate:modelValue":e[23]||(e[23]=l=>a.birth_date=l??"")},null,8,["model-value"]),t(s,{label:"شماره تلفن همراه",required:"","validate-status":u.mobile?"error":"",help:u.mobile},{default:n(()=>[t(i,{value:a.mobile,"onUpdate:value":e[24]||(e[24]=l=>a.mobile=l),class:"ltr-input",inputmode:"tel",placeholder:"09xxxxxxxxx"},null,8,["value"])]),_:1},8,["validate-status","help"]),t(s,{label:"رمز عبور"},{default:n(()=>[t(h,{value:a.password,"onUpdate:value":e[25]||(e[25]=l=>a.password=l)},null,8,["value"])]),_:1}),t(s,{label:"تلفن ثابت",class:"mb-0"},{default:n(()=>[t(i,{value:a.phone,"onUpdate:value":e[26]||(e[26]=l=>a.phone=l),class:"ltr-input",inputmode:"tel"},null,8,["value"])]),_:1})])]),o("section",ke,[o("div",Se,[o("span",Ce,[t(f(me))]),e[41]||(e[41]=o("div",null,[o("h3",null,"اطلاعات تجاری"),o("p",null,"نوع کاربری و مشخصات فروشگاه")],-1))]),o("div",Ne,[t(s,{label:"نوع کاربری"},{default:n(()=>[t(m,{value:a.type,"onUpdate:value":e[27]||(e[27]=l=>a.type=l),"show-search":"",placeholder:"انتخاب کنید","filter-option":T,style:{width:"100%",direction:"rtl !important"}},{default:n(()=>[(v(!0),O(S,null,k(M.value,l=>(v(),U(r,{key:l.id,value:l.id},{default:n(()=>[b(C(l.title),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1}),t(s,{label:"کد مشتری"},{default:n(()=>[t(i,{value:a.mcode,"onUpdate:value":e[28]||(e[28]=l=>a.mcode=l)},null,8,["value"])]),_:1}),t(s,{label:"نام مغازه",class:"mb-0"},{default:n(()=>[t(i,{value:a.store_name,"onUpdate:value":e[29]||(e[29]=l=>a.store_name=l)},null,8,["value"])]),_:1}),t(s,{label:"نام پاساژ",class:"mb-0"},{default:n(()=>[t(i,{value:a.pasazh_name,"onUpdate:value":e[30]||(e[30]=l=>a.pasazh_name=l)},null,8,["value"])]),_:1})])]),o("section",ze,[o("div",$e,[o("span",Be,[t(f(ve))]),e[42]||(e[42]=o("div",null,[o("h3",null,"آدرس"),o("p",null,"انتخاب شهر، درصد را بر اساس همان شهر پر می‌کند")],-1))]),t(s,{label:"شهر"},{default:n(()=>[t(H,{value:a.city_id,"onUpdate:value":e[31]||(e[31]=l=>a.city_id=l),cities:V.value,onChange:F},null,8,["value","cities"])]),_:1}),t(s,{label:"آدرس",class:"mb-0"},{default:n(()=>[t(L,{value:a.address,"onUpdate:value":e[32]||(e[32]=l=>a.address=l),"auto-size":{minRows:3,maxRows:5}},null,8,["value"])]),_:1})])]),o("aside",Re,[o("section",je,[o("div",qe,[o("span",Ee,[t(f(fe))]),e[43]||(e[43]=o("div",null,[o("h3",null,"کارشناس و اعتبار"),o("p",null,"کارشناس فروش، درصد و سقف اعتبار")],-1))]),t(s,{label:"کارشناس فروش"},{default:n(()=>[t(m,{value:a.reagent_id,"onUpdate:value":e[33]||(e[33]=l=>a.reagent_id=l),"allow-clear":"","show-search":"","option-filter-prop":"label",placeholder:"انتخاب کنید"},{default:n(()=>[(v(!0),O(S,null,k(z.value,l=>(v(),U(r,{key:l.id,value:l.id,label:l.name},{default:n(()=>[b(C(l.name),1)]),_:2},1032,["value","label"]))),128))]),_:1},8,["value"])]),_:1}),t(s,{label:"درصد",required:"","validate-status":u.percent?"error":"",help:u.percent},{default:n(()=>[t(x,{value:a.percent,"onUpdate:value":e[34]||(e[34]=l=>a.percent=l),class:"w-full","addon-after":"٪"},null,8,["value"])]),_:1},8,["validate-status","help"]),t(s,{label:"سقف اعتبار",class:"mb-0"},{default:n(()=>[t(x,{value:a.gram_level,"onUpdate:value":e[35]||(e[35]=l=>a.gram_level=l),class:"w-full","addon-after":"گرم"},null,8,["value"])]),_:1})]),o("section",Ie,[o("div",Je,[o("span",Me,[t(f(_e))]),e[44]||(e[44]=o("div",null,[o("h3",null,"مدارک"),o("p",null,"تصویر مدارک هویتی و فروشگاه")],-1))]),o("div",Te,[t(s,{label:"کارت ملی",class:"mb-0"},{default:n(()=>[t(w,{modelValue:a.national_id_image,"onUpdate:modelValue":e[36]||(e[36]=l=>a.national_id_image=l),purpose:"customer.nationalId",placeholder:"عکس"},null,8,["modelValue"])]),_:1}),t(s,{label:"جواز کسب",class:"mb-0"},{default:n(()=>[t(w,{modelValue:a.business_license,"onUpdate:modelValue":e[37]||(e[37]=l=>a.business_license=l),purpose:"customer.businessLicense",placeholder:"عکس"},null,8,["modelValue"])]),_:1}),t(s,{label:"سردر مغازه",class:"mb-0"},{default:n(()=>[t(w,{modelValue:a.shop_image,"onUpdate:modelValue":e[38]||(e[38]=l=>a.shop_image=l),purpose:"customer.shop",placeholder:"عکس"},null,8,["modelValue"])]),_:1})])])])]),o("div",De,[o("span",Fe,[t(f(oe)),e[45]||(e[45]=b(" فیلدهای ستاره‌دار الزامی هستند.",-1))]),t(P,{onClick:e[39]||(e[39]=l=>f(I).go(-1))},{default:n(()=>[...e[46]||(e[46]=[b("انصراف",-1)])]),_:1}),t(P,{type:"primary",class:"form-submit",loading:g.value,onClick:$},{icon:n(()=>[t(f(ie))]),default:n(()=>[e[47]||(e[47]=b(" ثبت اطلاعات ",-1))]),_:1},8,["loading"])])]),_:1},8,["spinning"])]),_:1},8,["model"]))}}});export{Ze as _}; diff --git a/apps/admin-panel/dist/assets/cityList-CLAq_V2X.js b/apps/admin-panel/dist/assets/cityList-Cc1Z6hFj.js similarity index 86% rename from apps/admin-panel/dist/assets/cityList-CLAq_V2X.js rename to apps/admin-panel/dist/assets/cityList-Cc1Z6hFj.js index 5497267..58f697d 100644 --- a/apps/admin-panel/dist/assets/cityList-CLAq_V2X.js +++ b/apps/admin-panel/dist/assets/cityList-Cc1Z6hFj.js @@ -1 +1 @@ -import{a as z,b as c,X as A}from"./model-tqsMDjkK.js";import{_ as G}from"./ListPageHeader.vue_vue_type_script_setup_true_lang-D07Lc14a.js";import{_ as H}from"./createCity.vue_vue_type_script_setup_true_lang-n4IdwDm_.js";import{d as J,u as K,b as R,c as a,w as o,r as s,o as k,h as x,a as U,E as j,i as N,G as q,p as F,f as S,t as C,m as d,z as I,y as T,J as B}from"./index-CJij4X3l.js";import{u as Q}from"./useDeleteHandler-DuEp06Uq.js";import{_ as W}from"./CityTreeSelect.vue_vue_type_script_setup_true_lang-7y8zYJ_W.js";import"./filters-BPYO-DKN.js";import"./index-CKg-8s_Z.js";import"./SettingOutlined-BJxMXy1I.js";import"./BaseFormModal.vue_vue_type_style_index_0_lang-YLHOAWTN.js";function Y(){const r=new z("admin/misc/cities/list","لیست شهر ها");return r.add(new c("title","نام شهر").filterKey("name").filterText()),r.add(new c("parent_title","والد").renderSlot("parent_title").noSort()),r.add(new c("percent","درصد مشتری عمده").renderSlot("percent").noSort()),r.add(new c("percent_aux","درصد کارشناس فروش").renderSlot("percent_aux").noSort()),r.add(new c("opt","عملیات").noSort().renderSlot("opt")),r}const Z={id:"page-user-list"},pe=J({__name:"cityList",setup(r){const D=K(),$=n=>!!D.hasPermission(n),E=Y(),m=d(null),b=d(!1),_=d(!1),y=d(void 0),l=I({title:"",parent:void 0,percent:null,percent_aux:null}),g=d([]);async function O(n){y.value=n,l.title=n.title??"",l.parent=n.parent??void 0,l.percent=n.percent===null||n.percent===void 0?null:Number(n.percent),l.percent_aux=n.percent_aux===null||n.percent_aux===void 0?null:Number(n.percent_aux);try{const{data:e}=await T.post("cities/list");g.value=e.rows??[]}catch(e){console.log(e)}_.value=!0}async function V(){var n,e,p,f;try{await T.put(`cities/${(n=y.value)==null?void 0:n.id}`,{title:l.title,parent:l.parent??null,percent:l.percent,percent_aux:l.percent_aux}),B.success("تغییرات ثبت شد"),_.value=!1,(e=m.value)==null||e.fetch()}catch(u){B.error(((f=(p=u==null?void 0:u.response)==null?void 0:p.data)==null?void 0:f.message)??"خطا در ثبت تغییرات")}}const{remove:X}=Q({onSuccess:()=>{var n;return(n=m.value)==null?void 0:n.fetch()},successMessage:"شهر حذف شد",fallbackErrorMessage:"خطا در حذف شهر"});return(n,e)=>{const p=s("a-tooltip"),f=s("a-popconfirm"),u=s("a-input"),v=s("a-form-item"),w=s("a-input-number"),M=s("a-form"),L=s("a-modal"),P=s("a-card");return k(),R("div",Z,[a(P,{title:"لیست شهر ها",class:"page-card"},{default:o(()=>[a(A,{ref_key:"citiesTable",ref:m,model:x(E),"mobile-cards":""},{add:o(()=>[a(G,{rid:"cities.create","add-label":"افزودن شهر",onAdd:e[0]||(e[0]=t=>b.value=!0)})]),parent_title:o(({text:t})=>[S(C(t??"—"),1)]),percent:o(({text:t})=>[S(C(t??"-"),1)]),percent_aux:o(({text:t})=>[S(C(t??"-"),1)]),opt:o(({record:t})=>[$("cities.list.view.edit")?(k(),U(p,{key:0,title:"ویرایش"},{default:o(()=>[a(x(j),{class:"cursor-pointer mx-1 text-primary",onClick:i=>O(t)},null,8,["onClick"])]),_:2},1024)):N("",!0),$("cities.list.remove")?(k(),U(p,{key:1,title:"حذف"},{default:o(()=>[a(f,{placement:"top","ok-text":"بله","cancel-text":"خیر",onConfirm:i=>x(X)(`cities/${t.id}`)},{title:o(()=>[...e[8]||(e[8]=[F("p",null,"آیا مطمئن به حذف شهر مورد نظر هستید ؟",-1)])]),default:o(()=>[a(x(q),{class:"cursor-pointer mx-1 text-danger"})]),_:1},8,["onConfirm"])]),_:2},1024)):N("",!0)]),_:1},8,["model"]),a(L,{open:_.value,"onUpdate:open":e[5]||(e[5]=t=>_.value=t),title:"ویرایش شهر",onOk:V},{default:o(()=>[a(M,{layout:"vertical"},{default:o(()=>[a(v,{label:"نام شهر"},{default:o(()=>[a(u,{value:l.title,"onUpdate:value":e[1]||(e[1]=t=>l.title=t)},null,8,["value"])]),_:1}),a(v,{label:"والد",help:"خالی = سرشاخه، مثل کشور"},{default:o(()=>{var t;return[a(W,{value:l.parent,"onUpdate:value":e[2]||(e[2]=i=>l.parent=i),cities:g.value,"parent-picker":"","exclude-id":(t=y.value)==null?void 0:t.id,placeholder:"والد را انتخاب کنید"},null,8,["value","cities","exclude-id"])]}),_:1}),a(v,{label:"درصد مشتری عمده"},{default:o(()=>[a(w,{value:l.percent,"onUpdate:value":e[3]||(e[3]=t=>l.percent=t),class:"w-full",step:.1},null,8,["value"])]),_:1}),a(v,{label:"درصد کارشناس فروش"},{default:o(()=>[a(w,{value:l.percent_aux,"onUpdate:value":e[4]||(e[4]=t=>l.percent_aux=t),class:"w-full",step:.1},null,8,["value"])]),_:1})]),_:1})]),_:1},8,["open"]),a(H,{open:b.value,"onUpdate:open":e[6]||(e[6]=t=>b.value=t),onSuccess:e[7]||(e[7]=t=>{var i;return(i=m.value)==null?void 0:i.fetch()})},null,8,["open"])]),_:1})])}}});export{pe as default}; +import{a as z,b as c,X as A}from"./model-mwiDYd1J.js";import{_ as G}from"./ListPageHeader.vue_vue_type_script_setup_true_lang-YlEXklTr.js";import{_ as H}from"./createCity.vue_vue_type_script_setup_true_lang-DCWOwlVG.js";import{d as J,u as K,b as R,c as a,w as o,r as s,o as k,h as x,a as U,E as j,i as N,G as q,p as F,f as S,t as C,m as d,z as I,y as T,J as B}from"./index-CpVArufm.js";import{u as Q}from"./useDeleteHandler-K9FWNrnm.js";import{_ as W}from"./CityTreeSelect.vue_vue_type_script_setup_true_lang-BtBj3fof.js";import"./filters-CoNJlguG.js";import"./index-DjZc5EYL.js";import"./SettingOutlined-E4OknxY2.js";import"./BaseFormModal.vue_vue_type_style_index_0_lang-B4iVMhZt.js";function Y(){const r=new z("admin/misc/cities/list","لیست شهر ها");return r.add(new c("title","نام شهر").filterKey("name").filterText()),r.add(new c("parent_title","والد").renderSlot("parent_title").noSort()),r.add(new c("percent","درصد مشتری عمده").renderSlot("percent").noSort()),r.add(new c("percent_aux","درصد کارشناس فروش").renderSlot("percent_aux").noSort()),r.add(new c("opt","عملیات").noSort().renderSlot("opt")),r}const Z={id:"page-user-list"},pe=J({__name:"cityList",setup(r){const D=K(),$=n=>!!D.hasPermission(n),E=Y(),m=d(null),b=d(!1),_=d(!1),y=d(void 0),l=I({title:"",parent:void 0,percent:null,percent_aux:null}),g=d([]);async function O(n){y.value=n,l.title=n.title??"",l.parent=n.parent??void 0,l.percent=n.percent===null||n.percent===void 0?null:Number(n.percent),l.percent_aux=n.percent_aux===null||n.percent_aux===void 0?null:Number(n.percent_aux);try{const{data:e}=await T.post("cities/list");g.value=e.rows??[]}catch(e){console.log(e)}_.value=!0}async function V(){var n,e,p,f;try{await T.put(`cities/${(n=y.value)==null?void 0:n.id}`,{title:l.title,parent:l.parent??null,percent:l.percent,percent_aux:l.percent_aux}),B.success("تغییرات ثبت شد"),_.value=!1,(e=m.value)==null||e.fetch()}catch(u){B.error(((f=(p=u==null?void 0:u.response)==null?void 0:p.data)==null?void 0:f.message)??"خطا در ثبت تغییرات")}}const{remove:X}=Q({onSuccess:()=>{var n;return(n=m.value)==null?void 0:n.fetch()},successMessage:"شهر حذف شد",fallbackErrorMessage:"خطا در حذف شهر"});return(n,e)=>{const p=s("a-tooltip"),f=s("a-popconfirm"),u=s("a-input"),v=s("a-form-item"),w=s("a-input-number"),M=s("a-form"),L=s("a-modal"),P=s("a-card");return k(),R("div",Z,[a(P,{title:"لیست شهر ها",class:"page-card"},{default:o(()=>[a(A,{ref_key:"citiesTable",ref:m,model:x(E),"mobile-cards":""},{add:o(()=>[a(G,{rid:"cities.create","add-label":"افزودن شهر",onAdd:e[0]||(e[0]=t=>b.value=!0)})]),parent_title:o(({text:t})=>[S(C(t??"—"),1)]),percent:o(({text:t})=>[S(C(t??"-"),1)]),percent_aux:o(({text:t})=>[S(C(t??"-"),1)]),opt:o(({record:t})=>[$("cities.list.view.edit")?(k(),U(p,{key:0,title:"ویرایش"},{default:o(()=>[a(x(j),{class:"cursor-pointer mx-1 text-primary",onClick:i=>O(t)},null,8,["onClick"])]),_:2},1024)):N("",!0),$("cities.list.remove")?(k(),U(p,{key:1,title:"حذف"},{default:o(()=>[a(f,{placement:"top","ok-text":"بله","cancel-text":"خیر",onConfirm:i=>x(X)(`cities/${t.id}`)},{title:o(()=>[...e[8]||(e[8]=[F("p",null,"آیا مطمئن به حذف شهر مورد نظر هستید ؟",-1)])]),default:o(()=>[a(x(q),{class:"cursor-pointer mx-1 text-danger"})]),_:1},8,["onConfirm"])]),_:2},1024)):N("",!0)]),_:1},8,["model"]),a(L,{open:_.value,"onUpdate:open":e[5]||(e[5]=t=>_.value=t),title:"ویرایش شهر",onOk:V},{default:o(()=>[a(M,{layout:"vertical"},{default:o(()=>[a(v,{label:"نام شهر"},{default:o(()=>[a(u,{value:l.title,"onUpdate:value":e[1]||(e[1]=t=>l.title=t)},null,8,["value"])]),_:1}),a(v,{label:"والد",help:"خالی = سرشاخه، مثل کشور"},{default:o(()=>{var t;return[a(W,{value:l.parent,"onUpdate:value":e[2]||(e[2]=i=>l.parent=i),cities:g.value,"parent-picker":"","exclude-id":(t=y.value)==null?void 0:t.id,placeholder:"والد را انتخاب کنید"},null,8,["value","cities","exclude-id"])]}),_:1}),a(v,{label:"درصد مشتری عمده"},{default:o(()=>[a(w,{value:l.percent,"onUpdate:value":e[3]||(e[3]=t=>l.percent=t),class:"w-full",step:.1},null,8,["value"])]),_:1}),a(v,{label:"درصد کارشناس فروش"},{default:o(()=>[a(w,{value:l.percent_aux,"onUpdate:value":e[4]||(e[4]=t=>l.percent_aux=t),class:"w-full",step:.1},null,8,["value"])]),_:1})]),_:1})]),_:1},8,["open"]),a(H,{open:b.value,"onUpdate:open":e[6]||(e[6]=t=>b.value=t),onSuccess:e[7]||(e[7]=t=>{var i;return(i=m.value)==null?void 0:i.fetch()})},null,8,["open"])]),_:1})])}}});export{pe as default}; diff --git a/apps/admin-panel/dist/assets/create-B3FDXHvx.css b/apps/admin-panel/dist/assets/create-B3FDXHvx.css deleted file mode 100644 index 16fa882..0000000 --- a/apps/admin-panel/dist/assets/create-B3FDXHvx.css +++ /dev/null @@ -1 +0,0 @@ -.grid-5[data-v-c01498ab]{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.ml-2[data-v-c01498ab]{margin-right:.5rem}.mt-4[data-v-c01498ab]{margin-top:1rem}.mt-5[data-v-c01498ab]{margin-top:1.25rem}.totals[data-v-c01498ab]{margin:1rem 0}@media (max-width: 575px){.grid-5[data-v-c01498ab]{grid-template-columns:1fr 1fr;column-gap:12px;row-gap:0}.grid-5[data-v-c01498ab]>:first-child{grid-column:1 / -1}.mt-5[data-v-c01498ab],.mt-4[data-v-c01498ab]{margin-top:12px}.totals[data-v-c01498ab]{margin:0 0 12px}} diff --git a/apps/admin-panel/dist/assets/create-BCbtKbMi.js b/apps/admin-panel/dist/assets/create-BCbtKbMi.js deleted file mode 100644 index fa63664..0000000 --- a/apps/admin-panel/dist/assets/create-BCbtKbMi.js +++ /dev/null @@ -1 +0,0 @@ -import{Y as we,y as z,d as ke,v as Ce,u as Ne,x as qe,a as C,w as s,i as Q,m as $,r as c,o as d,c as i,h as N,f as b,Z as Se,b as x,e as F,F as q,p as R,$ as Ue,t as k,E as Oe,W as Pe,H as Re,z as j,s as J,J as B,l as ze,_ as $e}from"./index-CJij4X3l.js";import{X as Fe}from"./model-tqsMDjkK.js";import{b as Be}from"./productListModel-Dqg_dJPi.js";import{u as Ve}from"./auth-N_TMNrPz.js";import"./filters-BPYO-DKN.js";import"./index-CKg-8s_Z.js";import"./SettingOutlined-BJxMXy1I.js";const K="admin_cart_items",Ee=we("cart",{state:()=>({items:[]}),actions:{addToCart(l){const _=this.items.findIndex(f=>f.pid==l.pid&&f.vid==l.vid),p=l.product.variants_all.filter(f=>f.id===l.vid)[0];p&&!(!p.is_pre_order&&p.qty===0)&&(_==-1?this.items.push(l):(this.items[_].product=l.product,this.items[_].qty=l.qty))},setItems(l){this.items=l,localStorage.setItem(K,JSON.stringify(l))},add(l){this.addToCart(l),this.setItems(this.items)},remove(l){const _=this.items.findIndex(p=>p.pid==l.pid&&p.vid==l.vid);_>-1&&this.items.splice(_,1),this.setItems(this.items)},updateItemQuantity(l){this.items[l.index].qty=l.quantity,this.setItems(this.items)},updateItemRial(l){const _=this.items[l.index];if(!_)return;const p=l.rial==null?0:Number(l.rial);_.rial_input=Number.isFinite(p)?p:0,this.setItems(this.items)},clear(){this.items=[],this.setItems(this.items)},async init(){try{const l=JSON.parse(localStorage.getItem(K)??"[]")||[],_=l.map(f=>f.product.id);if(_.length===0){this.setItems([]);return}const{data:p}=await z.post("product/variant",{products_id:_});if(p){const f=[];for(const S of l){const u=p.find(V=>V.id==S.product.id);u&&(!u.variants_all[0].is_pre_order&&u.variants_all[0].qty===0||f.push({vid:S.vid,pid:u.id,product:u,qty:S.qty,promotion_id:u.promotion&&u.promotion.id?u.promotion.id:null,...S.rial_input!=null?{rial_input:Number(S.rial_input)}:{}}))}this.setItems(f)}}catch(l){console.log("error in cart",l)}}}}),Le=["src"],Te={key:1,class:"flex items-center"},Me=["src"],Qe={key:5,class:"flex"},je={style:{width:"max-content"}},Je={class:"grid-5"},We={class:"totals"},Y="/img/no-items.png",Ae=ke({__name:"create",setup(l){const _=ze(),p=Ce(),f=Ne(),S=Ve(),u=Ee(),V=t=>!!f.hasPermission(t),Z=Be(f.isSuperAdmin),ee=$(null),O=$(!1),W=$([]),A=$({}),te={1:"ثبت سفارش",2:"تایید مدیر سیستم",3:"در حال تامین",4:"در حال آماده سازی",5:"ارسال",6:"تحویل مشتری"},o=j({customer_id:void 0,sts:void 0,type:void 0,note:"",shipping_address:{reciver_fname:"",reciver_lname:"",province:"",city:"",zipcode:"",reciver_phone:"",reciver_fixed_phone:"",address:""}}),g=j({}),ae=J(()=>{var t;return(t=S.user)==null?void 0:t.id}),h=J(()=>u.items),ie=[{title:"حذف",dataIndex:"delete",width:60,align:"center"},{title:"کد محصول",dataIndex:"pid",align:"center",width:90},{title:"محصول",dataIndex:"product"},{title:"اجرت",dataIndex:"wage",align:"center"},{title:"اجرت ریالی",dataIndex:"rial",align:"center",width:160},{title:"تعداد",dataIndex:"qty",align:"center",width:140},{title:"وزن",dataIndex:"weight",align:"center",width:90},{title:"مجموع",dataIndex:"total",align:"center"}],se=t=>t?`${t}`.replace(/\B(?=(\d{3})+(?!\d))/g,","):"",ne=t=>t?t.replace(/,/g,""):"",v=j({});function I(t){return t.product.variants_all.find(e=>e.id===t.vid)??{}}function le(t){var e,n,m;return((e=t==null?void 0:t.thumb)==null?void 0:e.full)??((m=(n=t==null?void 0:t.ProductImage)==null?void 0:n[0])==null?void 0:m.image)??Y}const oe=J(()=>{let t=0;for(const e of h.value)t+=Number(I(e).grams??0);return t});function re(t){return Number(I(t).grams??0)*t.qty}function de(t){const e=h.value[t];if(!e)return 1/0;const n=Number(I(e).qty??0);return n>0?n:1/0}function ue(t,e){u.updateItemQuantity({index:t,quantity:Number(e)})}function D(t){if(t.rial_input!=null){const n=Number(t.rial_input);return Number.isFinite(n)?n:0}const e=Number(I(t).rial_pay??0);return Number.isFinite(e)?e:0}function pe(t,e){u.updateItemRial({index:t,rial:e==null||e===""?0:Number(e)})}function me(t,e){ce(t,String(e.key))}function ce(t,e){u.add({vid:e,pid:t.id,product:t,qty:1,promotion_id:t.promotion&&t.promotion.id?t.promotion.id:null}),B.info("اضافه شد")}function _e(t){const e=I(t);v.id=e.id,v.grams=Number(e.grams??0)}async function ve(){var t,e;if(!(!v.id||!v.grams))try{O.value=!0;const n=h.value.find(m=>m.vid===v.id);await z.post("add/variant",{product_id:n==null?void 0:n.pid,title:`${v.grams} گرم`,grams:v.grams}),await u.init(),v.id=void 0,v.grams=void 0}catch(n){B.error(((e=(t=n==null?void 0:n.response)==null?void 0:t.data)==null?void 0:e.message)??"خطا در ثبت وزن")}finally{O.value=!1}}function fe(t,e){var n,m;return String(((m=(n=e==null?void 0:e.children)==null?void 0:n[0])==null?void 0:m.children)??"").toLowerCase().includes(t.toLowerCase())}function ge(){return Object.keys(g).forEach(t=>delete g[t]),o.customer_id||(g.customer_id="مقدار را وارد نمایید"),o.sts===void 0&&(g.sts="مقدار را وارد نمایید"),o.type===void 0&&(g.type="مقدار را وارد نمایید"),Object.keys(g).length===0}async function X(){var t,e;if(ge())try{O.value=!0;const n=h.value.map(m=>{const E=I(m);return{vid:m.vid,qty:m.qty,percent:E.percentage_pay,promotion_id:m.promotion_id,rial_input:D(m)}});await z.post("order",{...o,reagent_id:ae.value,app:"app",order_items:n}),B.info("عملیات با موفقیت انجام شد"),u.clear(),_.push("/order/list")}catch(n){console.log(n),B.error(((e=(t=n==null?void 0:n.response)==null?void 0:t.data)==null?void 0:e.message)??"خطا در ثبت اطلاعات.")}finally{O.value=!1}}return qe(async()=>{try{const[t,e]=await Promise.all([z.get("order/type"),z.post("single-customer",{page:1,limit:500})]);A.value=t.data,W.value=e.data.rows??[]}catch(t){console.log(t)}await u.init()}),(t,e)=>{const n=c("a-button"),m=c("a-menu-item"),E=c("a-menu"),ye=c("a-dropdown"),L=c("a-input-number"),he=c("a-table"),T=c("a-select-option"),M=c("a-select"),y=c("a-form-item"),U=c("a-input"),G=c("a-textarea"),be=c("a-tag"),xe=c("a-form"),H=c("a-card"),Ie=c("a-spin");return V("order.create")?(d(),C(Ie,{key:0,spinning:O.value},{default:s(()=>[i(H,{title:"لیست محصولات",class:"page-card"},{default:s(()=>[i(Fe,{ref_key:"tblProducts",ref:ee,model:N(Z),"mobile-cards":""},{image:s(({record:a})=>[R("img",{width:"90px",height:"90px",style:{"object-fit":"scale-down"},src:a.thumb&&a.thumb.full?a.thumb.full:Y},null,8,Le)]),op:s(({record:a})=>[i(ye,null,{overlay:s(()=>[i(E,{onClick:r=>me(a,r)},{default:s(()=>[(d(!0),x(q,null,F(a.variants_all,r=>(d(),C(m,{key:r.id},{default:s(()=>[b(" افزودن تنوع "+k(r.title),1)]),_:2},1024))),128))]),_:2},1032,["onClick"])]),default:s(()=>[i(n,{style:{"margin-left":"8px"}},{default:s(()=>[e[13]||(e[13]=b(" افزودن ",-1)),i(N(Se))]),_:1})]),_:2},1024)]),_:1},8,["model"]),h.value.length>0?(d(),C(H,{key:0,title:"ثبت سفارش",class:"mt-5"},{default:s(()=>[i(he,{columns:ie,"data-source":h.value,bordered:"",pagination:!1,"row-key":"vid",size:N(p).isMobile?"small":"middle",scroll:N(p).isSmallScreen?{x:"max-content"}:void 0},{bodyCell:s(({column:a,record:r,index:P})=>[a.dataIndex==="delete"?(d(),C(N(Ue),{key:0,class:"cursor-pointer",onClick:w=>N(u).remove(r)},null,8,["onClick"])):a.dataIndex==="product"?(d(),x("div",Te,[R("img",{src:le(r.product),width:"50px"},null,8,Me),b(" "+k(r.product.title),1)])):a.dataIndex==="wage"?(d(),x(q,{key:2},[b(k(I(r).percentage_pay)+"٪ ",1)],64)):a.dataIndex==="rial"?(d(),C(L,{key:3,value:D(r),min:0,step:5e4,style:{width:"140px"},formatter:se,parser:ne,onChange:w=>pe(P,w)},null,8,["value","onChange"])):a.dataIndex==="qty"?(d(),C(L,{key:4,value:h.value[P].qty,"onUpdate:value":w=>h.value[P].qty=w,min:1,max:de(P),onChange:w=>ue(P,w)},null,8,["value","onUpdate:value","max","onChange"])):a.dataIndex==="weight"?(d(),x("div",Qe,[!v.grams||v.id!==I(r).id?(d(),x(q,{key:0},[R("span",je,k(I(r).title),1),i(N(Oe),{class:"cursor-pointer ml-2 text-primary",onClick:w=>_e(r)},null,8,["onClick"])],64)):(d(),x(q,{key:1},[i(L,{value:v.grams,"onUpdate:value":e[0]||(e[0]=w=>v.grams=w)},null,8,["value"]),i(N(Pe),{class:"cursor-pointer ml-2 text-success",onClick:ve})],64))])):a.dataIndex==="total"?(d(),x(q,{key:6},[b(k(re(r))+" گرم ",1)],64)):Q("",!0)]),_:1},8,["data-source","size","scroll"]),i(xe,{layout:"vertical",class:"mt-4",onSubmit:Re(X,["prevent"])},{default:s(()=>[R("div",Je,[i(y,{label:"مشتری","validate-status":g.customer_id?"error":"",help:g.customer_id},{default:s(()=>[i(M,{value:o.customer_id,"onUpdate:value":e[1]||(e[1]=a=>o.customer_id=a),"show-search":"","option-filter-prop":"children","filter-option":fe},{default:s(()=>[(d(!0),x(q,null,F(W.value,a=>(d(),C(T,{key:a.id,value:a.id},{default:s(()=>[b(k(`${a.id}-${a.fname} ${a.lname}`),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1},8,["validate-status","help"]),i(y,{label:"وضعیت تحویل","validate-status":g.sts?"error":"",help:g.sts},{default:s(()=>[i(M,{value:o.sts,"onUpdate:value":e[2]||(e[2]=a=>o.sts=a)},{default:s(()=>[(d(),x(q,null,F(te,(a,r)=>i(T,{key:r,value:Number(r)},{default:s(()=>[b(k(a),1)]),_:2},1032,["value"])),64))]),_:1},8,["value"])]),_:1},8,["validate-status","help"]),i(y,{label:"نوع فروش","validate-status":g.type?"error":"",help:g.type},{default:s(()=>[i(M,{value:o.type,"onUpdate:value":e[3]||(e[3]=a=>o.type=a)},{default:s(()=>[(d(!0),x(q,null,F(A.value,(a,r)=>(d(),C(T,{key:r,value:Number(r)},{default:s(()=>[b(k(a),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1},8,["validate-status","help"]),i(y,{label:"نام دریافت کننده"},{default:s(()=>[i(U,{value:o.shipping_address.reciver_fname,"onUpdate:value":e[4]||(e[4]=a=>o.shipping_address.reciver_fname=a)},null,8,["value"])]),_:1}),i(y,{label:"نام خانوادگی دریافت کننده"},{default:s(()=>[i(U,{value:o.shipping_address.reciver_lname,"onUpdate:value":e[5]||(e[5]=a=>o.shipping_address.reciver_lname=a)},null,8,["value"])]),_:1}),i(y,{label:"استان"},{default:s(()=>[i(U,{value:o.shipping_address.province,"onUpdate:value":e[6]||(e[6]=a=>o.shipping_address.province=a)},null,8,["value"])]),_:1}),i(y,{label:"شهر"},{default:s(()=>[i(U,{value:o.shipping_address.city,"onUpdate:value":e[7]||(e[7]=a=>o.shipping_address.city=a)},null,8,["value"])]),_:1}),i(y,{label:"کد پستی"},{default:s(()=>[i(U,{value:o.shipping_address.zipcode,"onUpdate:value":e[8]||(e[8]=a=>o.shipping_address.zipcode=a)},null,8,["value"])]),_:1}),i(y,{label:"تلفن همراه"},{default:s(()=>[i(U,{value:o.shipping_address.reciver_phone,"onUpdate:value":e[9]||(e[9]=a=>o.shipping_address.reciver_phone=a)},null,8,["value"])]),_:1}),i(y,{label:"تلفن ثابت"},{default:s(()=>[i(U,{value:o.shipping_address.reciver_fixed_phone,"onUpdate:value":e[10]||(e[10]=a=>o.shipping_address.reciver_fixed_phone=a)},null,8,["value"])]),_:1})]),i(y,{label:"توضیحات"},{default:s(()=>[i(G,{value:o.note,"onUpdate:value":e[11]||(e[11]=a=>o.note=a),"auto-size":{minRows:3,maxRows:5}},null,8,["value"])]),_:1}),i(y,{label:"آدرس"},{default:s(()=>[i(G,{value:o.shipping_address.address,"onUpdate:value":e[12]||(e[12]=a=>o.shipping_address.address=a),"auto-size":{minRows:3,maxRows:5}},null,8,["value"])]),_:1}),R("div",We,[i(be,{color:"blue"},{default:s(()=>[b("مجموع وزن: "+k(oe.value)+" گرم",1)]),_:1})]),i(n,{type:"primary",class:"mt-4 form-submit",disabled:!h.value||h.value.length<1,onClick:X},{default:s(()=>[...e[14]||(e[14]=[b(" ثبت تغییرات ",-1)])]),_:1},8,["disabled"])]),_:1})]),_:1})):Q("",!0)]),_:1})]),_:1},8,["spinning"])):Q("",!0)}}}),et=$e(Ae,[["__scopeId","data-v-c01498ab"]]);export{et as default}; diff --git a/apps/admin-panel/dist/assets/create-DRi1ARwy.css b/apps/admin-panel/dist/assets/create-DRi1ARwy.css new file mode 100644 index 0000000..8fc54b0 --- /dev/null +++ b/apps/admin-panel/dist/assets/create-DRi1ARwy.css @@ -0,0 +1 @@ +.grid-5[data-v-82f5ad23]{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.ml-2[data-v-82f5ad23]{margin-right:.5rem}.mt-4[data-v-82f5ad23]{margin-top:1rem}.mt-5[data-v-82f5ad23]{margin-top:1.25rem}.totals[data-v-82f5ad23]{margin:1rem 0}@media (max-width: 575px){.grid-5[data-v-82f5ad23]{grid-template-columns:1fr 1fr;column-gap:12px;row-gap:0}.grid-5[data-v-82f5ad23]>:first-child{grid-column:1 / -1}.mt-5[data-v-82f5ad23],.mt-4[data-v-82f5ad23]{margin-top:12px}.totals[data-v-82f5ad23]{margin:0 0 12px}} diff --git a/apps/admin-panel/dist/assets/create-jCm_K0UT.js b/apps/admin-panel/dist/assets/create-jCm_K0UT.js new file mode 100644 index 0000000..4a33ba7 --- /dev/null +++ b/apps/admin-panel/dist/assets/create-jCm_K0UT.js @@ -0,0 +1 @@ +import{Z as wt,y as z,d as kt,v as Ct,u as Nt,x as qt,a as C,w as s,i as M,m as $,r as m,o as d,c as i,h as N,f as b,$ as Ut,b as x,e as F,F as q,p as R,a0 as St,t as w,E as Ot,W as Pt,H as Rt,z as Q,s as j,J as B,l as zt,_ as $t}from"./index-CpVArufm.js";import{o as Ft}from"./select--BgT6D7O.js";import{X as Bt}from"./model-mwiDYd1J.js";import{b as Tt}from"./productListModel-Ht1NntTk.js";import{u as Vt}from"./auth-taL2eAff.js";import"./filters-CoNJlguG.js";import"./index-DjZc5EYL.js";import"./SettingOutlined-E4OknxY2.js";const H="admin_cart_items",Et=wt("cart",{state:()=>({items:[]}),actions:{addToCart(n){const c=this.items.findIndex(v=>v.pid==n.pid&&v.vid==n.vid),p=n.product.variants_all.filter(v=>v.id===n.vid)[0];p&&!(!p.is_pre_order&&p.qty===0)&&(c==-1?this.items.push(n):(this.items[c].product=n.product,this.items[c].qty=n.qty))},setItems(n){this.items=n,localStorage.setItem(H,JSON.stringify(n))},add(n){this.addToCart(n),this.setItems(this.items)},remove(n){const c=this.items.findIndex(p=>p.pid==n.pid&&p.vid==n.vid);c>-1&&this.items.splice(c,1),this.setItems(this.items)},updateItemQuantity(n){this.items[n.index].qty=n.quantity,this.setItems(this.items)},updateItemRial(n){const c=this.items[n.index];if(!c)return;const p=n.rial==null?0:Number(n.rial);c.rial_input=Number.isFinite(p)?p:0,this.setItems(this.items)},clear(){this.items=[],this.setItems(this.items)},async init(){try{const n=JSON.parse(localStorage.getItem(H)??"[]")||[],c=n.map(v=>v.product.id);if(c.length===0){this.setItems([]);return}const{data:p}=await z.post("product/variant",{products_id:c});if(p){const v=[];for(const U of n){const u=p.find(T=>T.id==U.product.id);u&&(!u.variants_all[0].is_pre_order&&u.variants_all[0].qty===0||v.push({vid:U.vid,pid:u.id,product:u,qty:U.qty,promotion_id:u.promotion&&u.promotion.id?u.promotion.id:null,...U.rial_input!=null?{rial_input:Number(U.rial_input)}:{}}))}this.setItems(v)}}catch(n){console.log("error in cart",n)}}}}),Lt=["src"],Mt={key:1,class:"flex items-center"},Qt=["src"],jt={key:5,class:"flex"},Jt={style:{width:"max-content"}},Wt={class:"grid-5"},At={class:"totals"},K="/img/no-items.png",Dt=kt({__name:"create",setup(n){const c=zt(),p=Ct(),v=Nt(),U=Vt(),u=Et(),T=e=>!!v.hasPermission(e),Z=Tt(v.isSuperAdmin),Y=$(null),O=$(!1),J=$([]),W=$({}),tt={1:"ثبت سفارش",2:"تایید مدیر سیستم",3:"در حال تامین",4:"در حال آماده سازی",5:"ارسال",6:"تحویل مشتری"},o=Q({customer_id:void 0,sts:void 0,type:void 0,note:"",shipping_address:{reciver_fname:"",reciver_lname:"",province:"",city:"",zipcode:"",reciver_phone:"",reciver_fixed_phone:"",address:""}}),f=Q({}),et=j(()=>{var e;return(e=U.user)==null?void 0:e.id}),h=j(()=>u.items),at=[{title:"حذف",dataIndex:"delete",width:60,align:"center"},{title:"کد محصول",dataIndex:"pid",align:"center",width:90},{title:"محصول",dataIndex:"product"},{title:"اجرت",dataIndex:"wage",align:"center"},{title:"اجرت ریالی",dataIndex:"rial",align:"center",width:160},{title:"تعداد",dataIndex:"qty",align:"center",width:140},{title:"وزن",dataIndex:"weight",align:"center",width:90},{title:"مجموع",dataIndex:"total",align:"center"}],it=e=>e?`${e}`.replace(/\B(?=(\d{3})+(?!\d))/g,","):"",st=e=>e?e.replace(/,/g,""):"",_=Q({});function k(e){return e.product.variants_all.find(t=>t.id===e.vid)??{}}function nt(e){var t,l,y;return((t=e==null?void 0:e.thumb)==null?void 0:t.full)??((y=(l=e==null?void 0:e.ProductImage)==null?void 0:l[0])==null?void 0:y.image)??K}const ot=j(()=>{let e=0;for(const t of h.value)e+=Number(k(t).grams??0);return e});function lt(e){return Number(k(e).grams??0)*e.qty}function rt(e){const t=h.value[e];if(!t)return 1/0;const l=Number(k(t).qty??0);return l>0?l:1/0}function dt(e,t){u.updateItemQuantity({index:e,quantity:Number(t)})}function A(e){if(e.rial_input!=null){const l=Number(e.rial_input);return Number.isFinite(l)?l:0}const t=Number(k(e).rial_pay??0);return Number.isFinite(t)?t:0}function ut(e,t){u.updateItemRial({index:e,rial:t==null||t===""?0:Number(t)})}function pt(e,t){mt(e,String(t.key))}function mt(e,t){u.add({vid:t,pid:e.id,product:e,qty:1,promotion_id:e.promotion&&e.promotion.id?e.promotion.id:null}),B.info("اضافه شد")}function ct(e){const t=k(e);_.id=t.id,_.grams=Number(t.grams??0)}async function _t(){var e,t;if(!(!_.id||!_.grams))try{O.value=!0;const l=h.value.find(y=>y.vid===_.id);await z.post("add/variant",{product_id:l==null?void 0:l.pid,title:`${_.grams} گرم`,grams:_.grams}),await u.init(),_.id=void 0,_.grams=void 0}catch(l){B.error(((t=(e=l==null?void 0:l.response)==null?void 0:e.data)==null?void 0:t.message)??"خطا در ثبت وزن")}finally{O.value=!1}}function vt(e,t){return Ft(t).toLowerCase().includes(e.toLowerCase())}function ft(){return Object.keys(f).forEach(e=>delete f[e]),o.customer_id||(f.customer_id="مقدار را وارد نمایید"),o.sts===void 0&&(f.sts="مقدار را وارد نمایید"),o.type===void 0&&(f.type="مقدار را وارد نمایید"),Object.keys(f).length===0}async function D(){var e,t;if(ft())try{O.value=!0;const l=h.value.map(y=>({vid:y.vid,qty:y.qty,promotion_id:y.promotion_id,rial_input:A(y)}));await z.post("order",{...o,reagent_id:et.value,app:"app",order_items:l}),B.info("عملیات با موفقیت انجام شد"),u.clear(),c.push("/order/list")}catch(l){console.log(l),B.error(((t=(e=l==null?void 0:l.response)==null?void 0:e.data)==null?void 0:t.message)??"خطا در ثبت اطلاعات.")}finally{O.value=!1}}return qt(async()=>{try{const[e,t]=await Promise.all([z.get("order/type"),z.post("single-customer",{page:1,limit:500})]);W.value=e.data,J.value=t.data.rows??[]}catch(e){console.log(e)}await u.init()}),(e,t)=>{const l=m("a-button"),y=m("a-menu-item"),gt=m("a-menu"),yt=m("a-dropdown"),V=m("a-input-number"),ht=m("a-table"),E=m("a-select-option"),L=m("a-select"),g=m("a-form-item"),S=m("a-input"),X=m("a-textarea"),bt=m("a-tag"),xt=m("a-form"),G=m("a-card"),It=m("a-spin");return T("order.create")?(d(),C(It,{key:0,spinning:O.value},{default:s(()=>[i(G,{title:"لیست محصولات",class:"page-card"},{default:s(()=>[i(Bt,{ref_key:"tblProducts",ref:Y,model:N(Z),"mobile-cards":""},{image:s(({record:a})=>[R("img",{width:"90px",height:"90px",style:{"object-fit":"scale-down"},src:a.thumb&&a.thumb.full?a.thumb.full:K},null,8,Lt)]),op:s(({record:a})=>[i(yt,null,{overlay:s(()=>[i(gt,{onClick:r=>pt(a,r)},{default:s(()=>[(d(!0),x(q,null,F(a.variants_all,r=>(d(),C(y,{key:r.id},{default:s(()=>[b(" افزودن تنوع "+w(r.title),1)]),_:2},1024))),128))]),_:2},1032,["onClick"])]),default:s(()=>[i(l,{style:{"margin-left":"8px"}},{default:s(()=>[t[13]||(t[13]=b(" افزودن ",-1)),i(N(Ut))]),_:1})]),_:2},1024)]),_:1},8,["model"]),h.value.length>0?(d(),C(G,{key:0,title:"ثبت سفارش",class:"mt-5"},{default:s(()=>[i(ht,{columns:at,"data-source":h.value,bordered:"",pagination:!1,"row-key":"vid",size:N(p).isMobile?"small":"middle",scroll:N(p).isSmallScreen?{x:"max-content"}:void 0},{bodyCell:s(({column:a,record:r,index:P})=>[a.dataIndex==="delete"?(d(),C(N(St),{key:0,class:"cursor-pointer",onClick:I=>N(u).remove(r)},null,8,["onClick"])):a.dataIndex==="product"?(d(),x("div",Mt,[R("img",{src:nt(r.product),width:"50px"},null,8,Qt),b(" "+w(r.product.title),1)])):a.dataIndex==="wage"?(d(),x(q,{key:2},[b(w(k(r).percentage_pay)+"٪ ",1)],64)):a.dataIndex==="rial"?(d(),C(V,{key:3,value:A(r),min:0,step:5e4,style:{width:"140px"},formatter:it,parser:st,onChange:I=>ut(P,I)},null,8,["value","onChange"])):a.dataIndex==="qty"?(d(),C(V,{key:4,value:h.value[P].qty,"onUpdate:value":I=>h.value[P].qty=I,min:1,max:rt(P),onChange:I=>dt(P,I)},null,8,["value","onUpdate:value","max","onChange"])):a.dataIndex==="weight"?(d(),x("div",jt,[!_.grams||_.id!==k(r).id?(d(),x(q,{key:0},[R("span",Jt,w(k(r).title),1),i(N(Ot),{class:"cursor-pointer ml-2 text-primary",onClick:I=>ct(r)},null,8,["onClick"])],64)):(d(),x(q,{key:1},[i(V,{value:_.grams,"onUpdate:value":t[0]||(t[0]=I=>_.grams=I)},null,8,["value"]),i(N(Pt),{class:"cursor-pointer ml-2 text-success",onClick:_t})],64))])):a.dataIndex==="total"?(d(),x(q,{key:6},[b(w(lt(r))+" گرم ",1)],64)):M("",!0)]),_:1},8,["data-source","size","scroll"]),i(xt,{layout:"vertical",class:"mt-4",onSubmit:Rt(D,["prevent"])},{default:s(()=>[R("div",Wt,[i(g,{label:"مشتری","validate-status":f.customer_id?"error":"",help:f.customer_id},{default:s(()=>[i(L,{value:o.customer_id,"onUpdate:value":t[1]||(t[1]=a=>o.customer_id=a),"show-search":"","option-filter-prop":"children","filter-option":vt},{default:s(()=>[(d(!0),x(q,null,F(J.value,a=>(d(),C(E,{key:a.id,value:a.id},{default:s(()=>[b(w(`${a.id}-${a.fname} ${a.lname}`),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1},8,["validate-status","help"]),i(g,{label:"وضعیت تحویل","validate-status":f.sts?"error":"",help:f.sts},{default:s(()=>[i(L,{value:o.sts,"onUpdate:value":t[2]||(t[2]=a=>o.sts=a)},{default:s(()=>[(d(),x(q,null,F(tt,(a,r)=>i(E,{key:r,value:Number(r)},{default:s(()=>[b(w(a),1)]),_:2},1032,["value"])),64))]),_:1},8,["value"])]),_:1},8,["validate-status","help"]),i(g,{label:"نوع فروش","validate-status":f.type?"error":"",help:f.type},{default:s(()=>[i(L,{value:o.type,"onUpdate:value":t[3]||(t[3]=a=>o.type=a)},{default:s(()=>[(d(!0),x(q,null,F(W.value,(a,r)=>(d(),C(E,{key:r,value:Number(r)},{default:s(()=>[b(w(a),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1},8,["validate-status","help"]),i(g,{label:"نام دریافت کننده"},{default:s(()=>[i(S,{value:o.shipping_address.reciver_fname,"onUpdate:value":t[4]||(t[4]=a=>o.shipping_address.reciver_fname=a)},null,8,["value"])]),_:1}),i(g,{label:"نام خانوادگی دریافت کننده"},{default:s(()=>[i(S,{value:o.shipping_address.reciver_lname,"onUpdate:value":t[5]||(t[5]=a=>o.shipping_address.reciver_lname=a)},null,8,["value"])]),_:1}),i(g,{label:"استان"},{default:s(()=>[i(S,{value:o.shipping_address.province,"onUpdate:value":t[6]||(t[6]=a=>o.shipping_address.province=a)},null,8,["value"])]),_:1}),i(g,{label:"شهر"},{default:s(()=>[i(S,{value:o.shipping_address.city,"onUpdate:value":t[7]||(t[7]=a=>o.shipping_address.city=a)},null,8,["value"])]),_:1}),i(g,{label:"کد پستی"},{default:s(()=>[i(S,{value:o.shipping_address.zipcode,"onUpdate:value":t[8]||(t[8]=a=>o.shipping_address.zipcode=a)},null,8,["value"])]),_:1}),i(g,{label:"تلفن همراه"},{default:s(()=>[i(S,{value:o.shipping_address.reciver_phone,"onUpdate:value":t[9]||(t[9]=a=>o.shipping_address.reciver_phone=a)},null,8,["value"])]),_:1}),i(g,{label:"تلفن ثابت"},{default:s(()=>[i(S,{value:o.shipping_address.reciver_fixed_phone,"onUpdate:value":t[10]||(t[10]=a=>o.shipping_address.reciver_fixed_phone=a)},null,8,["value"])]),_:1})]),i(g,{label:"توضیحات"},{default:s(()=>[i(X,{value:o.note,"onUpdate:value":t[11]||(t[11]=a=>o.note=a),"auto-size":{minRows:3,maxRows:5}},null,8,["value"])]),_:1}),i(g,{label:"آدرس"},{default:s(()=>[i(X,{value:o.shipping_address.address,"onUpdate:value":t[12]||(t[12]=a=>o.shipping_address.address=a),"auto-size":{minRows:3,maxRows:5}},null,8,["value"])]),_:1}),R("div",At,[i(bt,{color:"blue"},{default:s(()=>[b("مجموع وزن: "+w(ot.value)+" گرم",1)]),_:1})]),i(l,{type:"primary",class:"mt-4 form-submit",disabled:!h.value||h.value.length<1,onClick:D},{default:s(()=>[...t[14]||(t[14]=[b(" ثبت تغییرات ",-1)])]),_:1},8,["disabled"])]),_:1})]),_:1})):M("",!0)]),_:1})]),_:1},8,["spinning"])):M("",!0)}}}),ae=$t(Dt,[["__scopeId","data-v-82f5ad23"]]);export{ae as default}; diff --git a/apps/admin-panel/dist/assets/create-Bz_jl_71.js b/apps/admin-panel/dist/assets/create-n0rRDFYE.js similarity index 95% rename from apps/admin-panel/dist/assets/create-Bz_jl_71.js rename to apps/admin-panel/dist/assets/create-n0rRDFYE.js index 7d2ff21..993f541 100644 --- a/apps/admin-panel/dist/assets/create-Bz_jl_71.js +++ b/apps/admin-panel/dist/assets/create-n0rRDFYE.js @@ -1 +1 @@ -import{d as z,u as K,a,w as t,m as x,r as u,o as l,c as d,H as M,p as O,f,i as p,h as P,z as A,y as D,J as B,_ as E}from"./index-CJij4X3l.js";import{a as H,b as _,X as I}from"./model-tqsMDjkK.js";import"./filters-BPYO-DKN.js";import"./index-CKg-8s_Z.js";import"./SettingOutlined-BJxMXy1I.js";function J(){const r=new H("admin/misc/sms/list","لیست پیامک ها");return r.add(new _("id","شماره")),r.add(new _("text","متن پیامک").filterKey("body").filterText()),r.add(new _("mobile","گیرندگان").noSort()),r.add(new _("sent_count","تعداد").noSort()),r.add(new _("sender","ارسال کننده").noSort()),r.add(new _("caj","تاریخ").filterKey("createdAt").filterDate().noSort()),r}const $={class:"grid-2"},q=z({__name:"create",setup(r){const N=K(),c=y=>!!N.hasPermission(y),R=J(),g=x(null),k=x(!1),s=x(-1),m=x(""),b=x(""),o=A({});async function S(){var y,e,i;if(Object.keys(o).forEach(n=>delete o[n]),b.value||(o.text="متن پیامک الزامی است"),(s.value===-1||s.value===9)&&!m.value&&(o.mobile="شماره موبایل الزامی است"),!Object.keys(o).length)try{k.value=!0;const{data:n}=await D.post("sms",{type:s.value,mobile:m.value,text:b.value});B.success(`پیامک برای ${n.sentCount} شماره ثبت شد`),b.value="",m.value="",(y=g.value)==null||y.fetch()}catch(n){B.error(((i=(e=n==null?void 0:n.response)==null?void 0:e.data)==null?void 0:i.message)??"خطا در ارسال پیامک")}finally{k.value=!1}}return(y,e)=>{const i=u("a-select-option"),n=u("a-select"),w=u("a-form-item"),C=u("a-textarea"),T=u("a-input"),V=u("a-button"),X=u("a-form"),U=u("a-card"),j=u("a-spin");return l(),a(j,{spinning:k.value,class:"page-card"},{default:t(()=>[d(U,{title:"ارسال پیامک"},{default:t(()=>[d(X,{layout:"vertical",onSubmit:M(S,["prevent"])},{default:t(()=>[O("div",$,[d(w,{label:"ارسال برای"},{default:t(()=>[d(n,{value:s.value,"onUpdate:value":e[0]||(e[0]=v=>s.value=v)},{default:t(()=>[c("sms.create.single")?(l(),a(i,{key:0,value:-1},{default:t(()=>[...e[4]||(e[4]=[f(" شماره موبایل ",-1)])]),_:1})):p("",!0),c("sms.create.all")?(l(),a(i,{key:1,value:0},{default:t(()=>[...e[5]||(e[5]=[f(" همه مشتریان ",-1)])]),_:1})):p("",!0),c("sms.create.reagent")?(l(),a(i,{key:2,value:1},{default:t(()=>[...e[6]||(e[6]=[f(" کارشناسان فروش ",-1)])]),_:1})):p("",!0),c("sms.create.omde")?(l(),a(i,{key:3,value:2},{default:t(()=>[...e[7]||(e[7]=[f(" مشتریان عمده ",-1)])]),_:1})):p("",!0),c("sms.create.multiple")?(l(),a(i,{key:4,value:9},{default:t(()=>[...e[8]||(e[8]=[f(" شماره های موبایل ",-1)])]),_:1})):p("",!0)]),_:1},8,["value"])]),_:1}),s.value===-1||s.value===9?(l(),a(w,{key:0,label:s.value===9?"شماره های موبایل":"شماره موبایل","validate-status":o.mobile?"error":"",help:o.mobile},{default:t(()=>[s.value===9?(l(),a(C,{key:0,value:m.value,"onUpdate:value":e[1]||(e[1]=v=>m.value=v),"auto-size":{minRows:2,maxRows:6},placeholder:"هر شماره در یک خط"},null,8,["value"])):(l(),a(T,{key:1,value:m.value,"onUpdate:value":e[2]||(e[2]=v=>m.value=v)},null,8,["value"]))]),_:1},8,["label","validate-status","help"])):p("",!0)]),d(w,{label:"متن پیامک","validate-status":o.text?"error":"",help:o.text},{default:t(()=>[d(C,{value:b.value,"onUpdate:value":e[3]||(e[3]=v=>b.value=v),"auto-size":{minRows:4,maxRows:8}},null,8,["value"])]),_:1},8,["validate-status","help"]),d(V,{type:"primary",class:"form-submit",onClick:S},{default:t(()=>[...e[9]||(e[9]=[f("ارسال",-1)])]),_:1})]),_:1})]),_:1}),c("sms.list")?(l(),a(U,{key:0,title:"لیست پیامک ها",class:"mt-4"},{default:t(()=>[d(I,{ref_key:"tbl",ref:g,model:P(R),"mobile-cards":""},null,8,["model"])]),_:1})):p("",!0)]),_:1},8,["spinning"])}}}),Y=E(q,[["__scopeId","data-v-11fdeec9"]]);export{Y as default}; +import{d as z,u as K,a,w as t,m as x,r as u,o as l,c as d,H as M,p as O,f,i as p,h as P,z as A,y as D,J as B,_ as E}from"./index-CpVArufm.js";import{a as H,b as _,X as I}from"./model-mwiDYd1J.js";import"./filters-CoNJlguG.js";import"./index-DjZc5EYL.js";import"./SettingOutlined-E4OknxY2.js";function J(){const r=new H("admin/misc/sms/list","لیست پیامک ها");return r.add(new _("id","شماره")),r.add(new _("text","متن پیامک").filterKey("body").filterText()),r.add(new _("mobile","گیرندگان").noSort()),r.add(new _("sent_count","تعداد").noSort()),r.add(new _("sender","ارسال کننده").noSort()),r.add(new _("caj","تاریخ").filterKey("createdAt").filterDate().noSort()),r}const $={class:"grid-2"},q=z({__name:"create",setup(r){const N=K(),c=y=>!!N.hasPermission(y),R=J(),g=x(null),k=x(!1),s=x(-1),m=x(""),b=x(""),o=A({});async function S(){var y,e,i;if(Object.keys(o).forEach(n=>delete o[n]),b.value||(o.text="متن پیامک الزامی است"),(s.value===-1||s.value===9)&&!m.value&&(o.mobile="شماره موبایل الزامی است"),!Object.keys(o).length)try{k.value=!0;const{data:n}=await D.post("sms",{type:s.value,mobile:m.value,text:b.value});B.success(`پیامک برای ${n.sentCount} شماره ثبت شد`),b.value="",m.value="",(y=g.value)==null||y.fetch()}catch(n){B.error(((i=(e=n==null?void 0:n.response)==null?void 0:e.data)==null?void 0:i.message)??"خطا در ارسال پیامک")}finally{k.value=!1}}return(y,e)=>{const i=u("a-select-option"),n=u("a-select"),w=u("a-form-item"),C=u("a-textarea"),T=u("a-input"),V=u("a-button"),X=u("a-form"),U=u("a-card"),j=u("a-spin");return l(),a(j,{spinning:k.value,class:"page-card"},{default:t(()=>[d(U,{title:"ارسال پیامک"},{default:t(()=>[d(X,{layout:"vertical",onSubmit:M(S,["prevent"])},{default:t(()=>[O("div",$,[d(w,{label:"ارسال برای"},{default:t(()=>[d(n,{value:s.value,"onUpdate:value":e[0]||(e[0]=v=>s.value=v)},{default:t(()=>[c("sms.create.single")?(l(),a(i,{key:0,value:-1},{default:t(()=>[...e[4]||(e[4]=[f(" شماره موبایل ",-1)])]),_:1})):p("",!0),c("sms.create.all")?(l(),a(i,{key:1,value:0},{default:t(()=>[...e[5]||(e[5]=[f(" همه مشتریان ",-1)])]),_:1})):p("",!0),c("sms.create.reagent")?(l(),a(i,{key:2,value:1},{default:t(()=>[...e[6]||(e[6]=[f(" کارشناسان فروش ",-1)])]),_:1})):p("",!0),c("sms.create.omde")?(l(),a(i,{key:3,value:2},{default:t(()=>[...e[7]||(e[7]=[f(" مشتریان عمده ",-1)])]),_:1})):p("",!0),c("sms.create.multiple")?(l(),a(i,{key:4,value:9},{default:t(()=>[...e[8]||(e[8]=[f(" شماره های موبایل ",-1)])]),_:1})):p("",!0)]),_:1},8,["value"])]),_:1}),s.value===-1||s.value===9?(l(),a(w,{key:0,label:s.value===9?"شماره های موبایل":"شماره موبایل","validate-status":o.mobile?"error":"",help:o.mobile},{default:t(()=>[s.value===9?(l(),a(C,{key:0,value:m.value,"onUpdate:value":e[1]||(e[1]=v=>m.value=v),"auto-size":{minRows:2,maxRows:6},placeholder:"هر شماره در یک خط"},null,8,["value"])):(l(),a(T,{key:1,value:m.value,"onUpdate:value":e[2]||(e[2]=v=>m.value=v)},null,8,["value"]))]),_:1},8,["label","validate-status","help"])):p("",!0)]),d(w,{label:"متن پیامک","validate-status":o.text?"error":"",help:o.text},{default:t(()=>[d(C,{value:b.value,"onUpdate:value":e[3]||(e[3]=v=>b.value=v),"auto-size":{minRows:4,maxRows:8}},null,8,["value"])]),_:1},8,["validate-status","help"]),d(V,{type:"primary",class:"form-submit",onClick:S},{default:t(()=>[...e[9]||(e[9]=[f("ارسال",-1)])]),_:1})]),_:1})]),_:1}),c("sms.list")?(l(),a(U,{key:0,title:"لیست پیامک ها",class:"mt-4"},{default:t(()=>[d(I,{ref_key:"tbl",ref:g,model:P(R),"mobile-cards":""},null,8,["model"])]),_:1})):p("",!0)]),_:1},8,["spinning"])}}}),Y=E(q,[["__scopeId","data-v-11fdeec9"]]);export{Y as default}; diff --git a/apps/admin-panel/dist/assets/create-DSDeteBR.js b/apps/admin-panel/dist/assets/create-o6ZX-3sE.js similarity index 96% rename from apps/admin-panel/dist/assets/create-DSDeteBR.js rename to apps/admin-panel/dist/assets/create-o6ZX-3sE.js index 9b7ba38..eae7180 100644 --- a/apps/admin-panel/dist/assets/create-DSDeteBR.js +++ b/apps/admin-panel/dist/assets/create-o6ZX-3sE.js @@ -1 +1 @@ -import{d as k,a as C,w as o,m as B,r as l,o as N,c as e,H as U,p as V,f as r,z as m,y as j,J as c}from"./index-CJij4X3l.js";const z={class:"grid-2"},S=k({__name:"create",setup(O){const u=B(!1),a=m({title:"",text:"",type:0}),n=m({});async function f(){var p,t;if(Object.keys(n).forEach(s=>delete n[s]),a.title||(n.title="عنوان الزامی است"),a.text||(n.text="متن پیام الزامی است"),!Object.keys(n).length)try{u.value=!0;const{data:s}=await j.post("notify",a);c.success("نوتیفیکیشن ارسال شد"),a.title="",a.text=""}catch(s){c.error(((t=(p=s==null?void 0:s.response)==null?void 0:p.data)==null?void 0:t.message)??"خطا در ارسال")}finally{u.value=!1}}return(p,t)=>{const s=l("a-input"),d=l("a-form-item"),_=l("a-select-option"),v=l("a-select"),x=l("a-textarea"),y=l("a-button"),b=l("a-form"),g=l("a-card"),w=l("a-spin");return N(),C(w,{spinning:u.value},{default:o(()=>[e(g,{title:"ارسال نوتیفیکیشن",class:"page-card"},{default:o(()=>[e(b,{layout:"vertical",onSubmit:U(f,["prevent"])},{default:o(()=>[V("div",z,[e(d,{label:"عنوان","validate-status":n.title?"error":"",help:n.title},{default:o(()=>[e(s,{value:a.title,"onUpdate:value":t[0]||(t[0]=i=>a.title=i)},null,8,["value"])]),_:1},8,["validate-status","help"]),e(d,{label:"نوع کاربر"},{default:o(()=>[e(v,{value:a.type,"onUpdate:value":t[1]||(t[1]=i=>a.type=i)},{default:o(()=>[e(_,{value:0},{default:o(()=>[...t[3]||(t[3]=[r("همه مشتریان",-1)])]),_:1}),e(_,{value:2},{default:o(()=>[...t[4]||(t[4]=[r("مشتریان عمده",-1)])]),_:1}),e(_,{value:1},{default:o(()=>[...t[5]||(t[5]=[r("کارشناسان فروش",-1)])]),_:1})]),_:1},8,["value"])]),_:1})]),e(d,{label:"متن پیام","validate-status":n.text?"error":"",help:n.text},{default:o(()=>[e(x,{value:a.text,"onUpdate:value":t[2]||(t[2]=i=>a.text=i),"auto-size":{minRows:4,maxRows:8}},null,8,["value"])]),_:1},8,["validate-status","help"]),e(y,{type:"primary",class:"form-submit",onClick:f},{default:o(()=>[...t[6]||(t[6]=[r("ارسال",-1)])]),_:1})]),_:1})]),_:1})]),_:1},8,["spinning"])}}});export{S as default}; +import{d as k,a as C,w as o,m as B,r as l,o as N,c as e,H as U,p as V,f as r,z as m,y as j,J as c}from"./index-CpVArufm.js";const z={class:"grid-2"},S=k({__name:"create",setup(O){const u=B(!1),a=m({title:"",text:"",type:0}),n=m({});async function f(){var p,t;if(Object.keys(n).forEach(s=>delete n[s]),a.title||(n.title="عنوان الزامی است"),a.text||(n.text="متن پیام الزامی است"),!Object.keys(n).length)try{u.value=!0;const{data:s}=await j.post("notify",a);c.success("نوتیفیکیشن ارسال شد"),a.title="",a.text=""}catch(s){c.error(((t=(p=s==null?void 0:s.response)==null?void 0:p.data)==null?void 0:t.message)??"خطا در ارسال")}finally{u.value=!1}}return(p,t)=>{const s=l("a-input"),d=l("a-form-item"),_=l("a-select-option"),v=l("a-select"),x=l("a-textarea"),y=l("a-button"),b=l("a-form"),g=l("a-card"),w=l("a-spin");return N(),C(w,{spinning:u.value},{default:o(()=>[e(g,{title:"ارسال نوتیفیکیشن",class:"page-card"},{default:o(()=>[e(b,{layout:"vertical",onSubmit:U(f,["prevent"])},{default:o(()=>[V("div",z,[e(d,{label:"عنوان","validate-status":n.title?"error":"",help:n.title},{default:o(()=>[e(s,{value:a.title,"onUpdate:value":t[0]||(t[0]=i=>a.title=i)},null,8,["value"])]),_:1},8,["validate-status","help"]),e(d,{label:"نوع کاربر"},{default:o(()=>[e(v,{value:a.type,"onUpdate:value":t[1]||(t[1]=i=>a.type=i)},{default:o(()=>[e(_,{value:0},{default:o(()=>[...t[3]||(t[3]=[r("همه مشتریان",-1)])]),_:1}),e(_,{value:2},{default:o(()=>[...t[4]||(t[4]=[r("مشتریان عمده",-1)])]),_:1}),e(_,{value:1},{default:o(()=>[...t[5]||(t[5]=[r("کارشناسان فروش",-1)])]),_:1})]),_:1},8,["value"])]),_:1})]),e(d,{label:"متن پیام","validate-status":n.text?"error":"",help:n.text},{default:o(()=>[e(x,{value:a.text,"onUpdate:value":t[2]||(t[2]=i=>a.text=i),"auto-size":{minRows:4,maxRows:8}},null,8,["value"])]),_:1},8,["validate-status","help"]),e(y,{type:"primary",class:"form-submit",onClick:f},{default:o(()=>[...t[6]||(t[6]=[r("ارسال",-1)])]),_:1})]),_:1})]),_:1})]),_:1},8,["spinning"])}}});export{S as default}; diff --git a/apps/admin-panel/dist/assets/createCity-Dfoq0Y3F.js b/apps/admin-panel/dist/assets/createCity-Dfoq0Y3F.js new file mode 100644 index 0000000..d0a5980 --- /dev/null +++ b/apps/admin-panel/dist/assets/createCity-Dfoq0Y3F.js @@ -0,0 +1 @@ +import{_ as o}from"./createCity.vue_vue_type_script_setup_true_lang-DCWOwlVG.js";import"./index-CpVArufm.js";import"./BaseFormModal.vue_vue_type_style_index_0_lang-B4iVMhZt.js";import"./CityTreeSelect.vue_vue_type_script_setup_true_lang-BtBj3fof.js";export{o as default}; diff --git a/apps/admin-panel/dist/assets/createCity-IOL5uAp-.js b/apps/admin-panel/dist/assets/createCity-IOL5uAp-.js deleted file mode 100644 index 35dd4de..0000000 --- a/apps/admin-panel/dist/assets/createCity-IOL5uAp-.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as o}from"./createCity.vue_vue_type_script_setup_true_lang-n4IdwDm_.js";import"./index-CJij4X3l.js";import"./BaseFormModal.vue_vue_type_style_index_0_lang-YLHOAWTN.js";import"./CityTreeSelect.vue_vue_type_script_setup_true_lang-7y8zYJ_W.js";export{o as default}; diff --git a/apps/admin-panel/dist/assets/createCity.vue_vue_type_script_setup_true_lang-n4IdwDm_.js b/apps/admin-panel/dist/assets/createCity.vue_vue_type_script_setup_true_lang-DCWOwlVG.js similarity index 95% rename from apps/admin-panel/dist/assets/createCity.vue_vue_type_script_setup_true_lang-n4IdwDm_.js rename to apps/admin-panel/dist/assets/createCity.vue_vue_type_script_setup_true_lang-DCWOwlVG.js index 060336b..c6fe62e 100644 --- a/apps/admin-panel/dist/assets/createCity.vue_vue_type_script_setup_true_lang-n4IdwDm_.js +++ b/apps/admin-panel/dist/assets/createCity.vue_vue_type_script_setup_true_lang-DCWOwlVG.js @@ -1 +1 @@ -import{d as R,n as z,x as E,a as y,w as n,m as g,y as w,r as p,o as k,p as U,c as a,f as H,H as J,z as C,J as B,l as T,k as h}from"./index-CJij4X3l.js";import{_ as q}from"./BaseFormModal.vue_vue_type_style_index_0_lang-YLHOAWTN.js";import{_ as M}from"./CityTreeSelect.vue_vue_type_script_setup_true_lang-7y8zYJ_W.js";const A={class:"grid-2"},D={class:"grid-2"},K=R({__name:"createCity",props:{open:{type:Boolean},id:{}},emits:["update:open","success"],setup(c,{emit:N}){const _=c,b=N,m=_.open!==void 0;h();const S=T(),r=g(!1),t=C({title:"",parent:void 0,percent:null,percent_aux:null}),f=g([]);async function x(){try{const{data:s}=await w.post("cities/list");f.value=s.rows??[]}catch(s){console.log(s)}}m?z(()=>_.open,s=>s&&x(),{immediate:!0}):E(x);const u=C({});async function v(){var s,e;if(Object.keys(u).forEach(o=>delete u[o]),!t.title){u.title="لطفا مقدار را وارد کنید";return}try{r.value=!0,await w.post("cities",{...t,parent:t.parent??null}),B.info("اطلاعات با موفقیت به ثبت رسید."),m?(Object.assign(t,{title:"",percent:null,percent_aux:null}),b("success"),b("update:open",!1)):S.push("/city/list")}catch(o){B.error(((e=(s=o==null?void 0:o.response)==null?void 0:s.data)==null?void 0:e.message)??"خطا در ثبت اطلاعات.")}finally{r.value=!1}}return(s,e)=>{const o=p("a-input"),i=p("a-form-item"),d=p("a-input-number"),V=p("a-button"),$=p("a-card"),j=p("a-form"),O=p("a-spin");return m?(k(),y(q,{key:0,open:!!c.open,id:c.id,"add-title":"افزودن شهر","edit-title":"افزودن شهر",loading:r.value,submitting:r.value,width:"sm","onUpdate:open":e[4]||(e[4]=l=>s.$emit("update:open",l)),onSubmit:v},{default:n(()=>[U("div",A,[a(i,{label:"نام شهر","validate-status":u.title?"error":"",help:u.title},{default:n(()=>[a(o,{value:t.title,"onUpdate:value":e[0]||(e[0]=l=>t.title=l)},null,8,["value"])]),_:1},8,["validate-status","help"]),a(i,{label:"والد",help:"خالی = سرشاخه، مثل کشور"},{default:n(()=>[a(M,{value:t.parent,"onUpdate:value":e[1]||(e[1]=l=>t.parent=l),cities:f.value,"parent-picker":"",placeholder:"والد را انتخاب کنید"},null,8,["value","cities"])]),_:1}),a(i,{label:"درصد مشتری عمده"},{default:n(()=>[a(d,{value:t.percent,"onUpdate:value":e[2]||(e[2]=l=>t.percent=l),class:"w-full",min:0,max:100,step:.1},null,8,["value"])]),_:1}),a(i,{label:"درصد کارشناس فروش"},{default:n(()=>[a(d,{value:t.percent_aux,"onUpdate:value":e[3]||(e[3]=l=>t.percent_aux=l),class:"w-full",min:0,max:100,step:.1},null,8,["value"])]),_:1})])]),_:1},8,["open","id","loading","submitting"])):(k(),y(O,{key:1,spinning:r.value},{default:n(()=>[a(j,{layout:"vertical",onSubmit:J(v,["prevent"])},{default:n(()=>[a($,{title:"افزودن شهر",class:"page-card"},{default:n(()=>[U("div",D,[a(i,{label:"نام شهر","validate-status":u.title?"error":"",help:u.title},{default:n(()=>[a(o,{value:t.title,"onUpdate:value":e[5]||(e[5]=l=>t.title=l)},null,8,["value"])]),_:1},8,["validate-status","help"]),a(i,{label:"والد",help:"خالی = سرشاخه، مثل کشور"},{default:n(()=>[a(M,{value:t.parent,"onUpdate:value":e[6]||(e[6]=l=>t.parent=l),cities:f.value,"parent-picker":"",placeholder:"والد را انتخاب کنید"},null,8,["value","cities"])]),_:1}),a(i,{label:"درصد مشتری عمده"},{default:n(()=>[a(d,{value:t.percent,"onUpdate:value":e[7]||(e[7]=l=>t.percent=l),class:"w-full",min:0,max:100,step:.1},null,8,["value"])]),_:1}),a(i,{label:"درصد کارشناس فروش"},{default:n(()=>[a(d,{value:t.percent_aux,"onUpdate:value":e[8]||(e[8]=l=>t.percent_aux=l),class:"w-full",min:0,max:100,step:.1},null,8,["value"])]),_:1})]),a(V,{type:"primary",class:"form-submit",onClick:v},{default:n(()=>[...e[9]||(e[9]=[H("ثبت اطلاعات",-1)])]),_:1})]),_:1})]),_:1})]),_:1},8,["spinning"]))}}});export{K as _}; +import{d as R,n as z,x as E,a as y,w as n,m as g,y as w,r as p,o as k,p as U,c as a,f as H,H as J,z as C,J as B,l as T,k as h}from"./index-CpVArufm.js";import{_ as q}from"./BaseFormModal.vue_vue_type_style_index_0_lang-B4iVMhZt.js";import{_ as M}from"./CityTreeSelect.vue_vue_type_script_setup_true_lang-BtBj3fof.js";const A={class:"grid-2"},D={class:"grid-2"},K=R({__name:"createCity",props:{open:{type:Boolean},id:{}},emits:["update:open","success"],setup(c,{emit:N}){const _=c,b=N,m=_.open!==void 0;h();const S=T(),r=g(!1),t=C({title:"",parent:void 0,percent:null,percent_aux:null}),f=g([]);async function x(){try{const{data:s}=await w.post("cities/list");f.value=s.rows??[]}catch(s){console.log(s)}}m?z(()=>_.open,s=>s&&x(),{immediate:!0}):E(x);const u=C({});async function v(){var s,e;if(Object.keys(u).forEach(o=>delete u[o]),!t.title){u.title="لطفا مقدار را وارد کنید";return}try{r.value=!0,await w.post("cities",{...t,parent:t.parent??null}),B.info("اطلاعات با موفقیت به ثبت رسید."),m?(Object.assign(t,{title:"",percent:null,percent_aux:null}),b("success"),b("update:open",!1)):S.push("/city/list")}catch(o){B.error(((e=(s=o==null?void 0:o.response)==null?void 0:s.data)==null?void 0:e.message)??"خطا در ثبت اطلاعات.")}finally{r.value=!1}}return(s,e)=>{const o=p("a-input"),i=p("a-form-item"),d=p("a-input-number"),V=p("a-button"),$=p("a-card"),j=p("a-form"),O=p("a-spin");return m?(k(),y(q,{key:0,open:!!c.open,id:c.id,"add-title":"افزودن شهر","edit-title":"افزودن شهر",loading:r.value,submitting:r.value,width:"sm","onUpdate:open":e[4]||(e[4]=l=>s.$emit("update:open",l)),onSubmit:v},{default:n(()=>[U("div",A,[a(i,{label:"نام شهر","validate-status":u.title?"error":"",help:u.title},{default:n(()=>[a(o,{value:t.title,"onUpdate:value":e[0]||(e[0]=l=>t.title=l)},null,8,["value"])]),_:1},8,["validate-status","help"]),a(i,{label:"والد",help:"خالی = سرشاخه، مثل کشور"},{default:n(()=>[a(M,{value:t.parent,"onUpdate:value":e[1]||(e[1]=l=>t.parent=l),cities:f.value,"parent-picker":"",placeholder:"والد را انتخاب کنید"},null,8,["value","cities"])]),_:1}),a(i,{label:"درصد مشتری عمده"},{default:n(()=>[a(d,{value:t.percent,"onUpdate:value":e[2]||(e[2]=l=>t.percent=l),class:"w-full",min:0,max:100,step:.1},null,8,["value"])]),_:1}),a(i,{label:"درصد کارشناس فروش"},{default:n(()=>[a(d,{value:t.percent_aux,"onUpdate:value":e[3]||(e[3]=l=>t.percent_aux=l),class:"w-full",min:0,max:100,step:.1},null,8,["value"])]),_:1})])]),_:1},8,["open","id","loading","submitting"])):(k(),y(O,{key:1,spinning:r.value},{default:n(()=>[a(j,{layout:"vertical",onSubmit:J(v,["prevent"])},{default:n(()=>[a($,{title:"افزودن شهر",class:"page-card"},{default:n(()=>[U("div",D,[a(i,{label:"نام شهر","validate-status":u.title?"error":"",help:u.title},{default:n(()=>[a(o,{value:t.title,"onUpdate:value":e[5]||(e[5]=l=>t.title=l)},null,8,["value"])]),_:1},8,["validate-status","help"]),a(i,{label:"والد",help:"خالی = سرشاخه، مثل کشور"},{default:n(()=>[a(M,{value:t.parent,"onUpdate:value":e[6]||(e[6]=l=>t.parent=l),cities:f.value,"parent-picker":"",placeholder:"والد را انتخاب کنید"},null,8,["value","cities"])]),_:1}),a(i,{label:"درصد مشتری عمده"},{default:n(()=>[a(d,{value:t.percent,"onUpdate:value":e[7]||(e[7]=l=>t.percent=l),class:"w-full",min:0,max:100,step:.1},null,8,["value"])]),_:1}),a(i,{label:"درصد کارشناس فروش"},{default:n(()=>[a(d,{value:t.percent_aux,"onUpdate:value":e[8]||(e[8]=l=>t.percent_aux=l),class:"w-full",min:0,max:100,step:.1},null,8,["value"])]),_:1})]),a(V,{type:"primary",class:"form-submit",onClick:v},{default:n(()=>[...e[9]||(e[9]=[H("ثبت اطلاعات",-1)])]),_:1})]),_:1})]),_:1})]),_:1},8,["spinning"]))}}});export{K as _}; diff --git a/apps/admin-panel/dist/assets/filters-BPYO-DKN.js b/apps/admin-panel/dist/assets/filters-CoNJlguG.js similarity index 86% rename from apps/admin-panel/dist/assets/filters-BPYO-DKN.js rename to apps/admin-panel/dist/assets/filters-CoNJlguG.js index 0381cbb..214d72f 100644 --- a/apps/admin-panel/dist/assets/filters-BPYO-DKN.js +++ b/apps/admin-panel/dist/assets/filters-CoNJlguG.js @@ -1 +1 @@ -import{m as t}from"./index-CKg-8s_Z.js";function e(r){return r&&r.toString().replace(/\B(?=(\d{3})+(?!\d))/g,",")+" تومان "}function i(r){return r&&r.toString().replace(/\B(?=(\d{3})+(?!\d))/g,",")}function f(r){return r&&t(r).format("jYYYY/jMM/jDD")}function o(r){return typeof r!="string"||!/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}/.test(r)?r:t(r).format("jYYYY/jM/jD-HH:mm")}function u(r){return r&&t(r).format("jYYYY/jMM/jDD - hh:mm:ss")}export{e as a,u as b,o as g,f as j,i as p}; +import{m as t}from"./index-DjZc5EYL.js";function e(r){return r&&r.toString().replace(/\B(?=(\d{3})+(?!\d))/g,",")+" تومان "}function i(r){return r&&r.toString().replace(/\B(?=(\d{3})+(?!\d))/g,",")}function f(r){return r&&t(r).format("jYYYY/jMM/jDD")}function o(r){return typeof r!="string"||!/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}/.test(r)?r:t(r).format("jYYYY/jM/jD-HH:mm")}function u(r){return r&&t(r).format("jYYYY/jMM/jDD - hh:mm:ss")}export{e as a,u as b,o as g,f as j,i as p}; diff --git a/apps/admin-panel/dist/assets/icons-BRqF3liF.js b/apps/admin-panel/dist/assets/icons-BRqF3liF.js new file mode 100644 index 0000000..11045f8 --- /dev/null +++ b/apps/admin-panel/dist/assets/icons-BRqF3liF.js @@ -0,0 +1 @@ +import{c,I as l,S as j,a0 as z,P as H,R as B,W as w,E as $,G as M,a4 as C}from"./index-CpVArufm.js";import{S as x}from"./SettingOutlined-E4OknxY2.js";import{S as _,U as A}from"./UnorderedListOutlined-CLUl5bxX.js";import{P as E}from"./PercentageOutlined-IS1MVcbY.js";import{D,U as L}from"./UserAddOutlined-Bpe7Keo_.js";import{C as N}from"./CreditCardOutlined-CIq9Sdft.js";import{A as U}from"./AppstoreOutlined-BRgpp4c5.js";import{S as G,T}from"./TeamOutlined-DL6Ofm69.js";import{U as F}from"./UserOutlined-DeX82IP7.js";import{C as q}from"./CameraOutlined-JfS-rAEW.js";var R={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M888 792H200V168c0-4.4-3.6-8-8-8h-56c-4.4 0-8 3.6-8 8v688c0 4.4 3.6 8 8 8h752c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8zm-600-80h56c4.4 0 8-3.6 8-8V560c0-4.4-3.6-8-8-8h-56c-4.4 0-8 3.6-8 8v144c0 4.4 3.6 8 8 8zm152 0h56c4.4 0 8-3.6 8-8V384c0-4.4-3.6-8-8-8h-56c-4.4 0-8 3.6-8 8v320c0 4.4 3.6 8 8 8zm152 0h56c4.4 0 8-3.6 8-8V462c0-4.4-3.6-8-8-8h-56c-4.4 0-8 3.6-8 8v242c0 4.4 3.6 8 8 8zm152 0h56c4.4 0 8-3.6 8-8V304c0-4.4-3.6-8-8-8h-56c-4.4 0-8 3.6-8 8v400c0 4.4 3.6 8 8 8z"}}]},name:"bar-chart",theme:"outlined"};function p(r){for(var e=1;ei.map(i=>d[i]); +const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/Dashboard-D29XNQ4P.js","assets/filters-CoNJlguG.js","assets/index-DjZc5EYL.js","assets/UserAddOutlined-Bpe7Keo_.js","assets/CreditCardOutlined-CIq9Sdft.js","assets/Dashboard-DDxYNHoh.css","assets/myData-DPVKtj6d.js","assets/auth-taL2eAff.js","assets/Const-CwYj-wS4.js","assets/useDeleteHandler-K9FWNrnm.js","assets/ImageUploadInput.vue_vue_type_script_setup_true_lang-B9gVJPft.js","assets/Const-DuitwASR.css","assets/wallet-R5LsWnVf.js","assets/wallet-C3HGxzJR.css","assets/accounting-Bbumy49K.js","assets/LockOutlined-Dute1ueQ.js","assets/SafetyCertificateOutlined-mD-ddSP4.js","assets/accounting-C1WiWzRh.css","assets/wage-CnYyduGf.js","assets/wage-BeeFFahC.css","assets/report-BNLBN5x0.js","assets/report-Baq2jRIT.css","assets/ChangePercent-DA97Ix9U.js","assets/select--BgT6D7O.js","assets/AddProduct-DUZcRoso.js","assets/AppstoreOutlined-BRgpp4c5.js","assets/AddProduct-BiMN_lga.css","assets/EditProduct-Db-gCITq.js","assets/ProductList-Cvdk4j7I.js","assets/model-mwiDYd1J.js","assets/SettingOutlined-E4OknxY2.js","assets/model-DB3OrB0q.css","assets/AccountingSyncButton.vue_vue_type_script_setup_true_lang-wE6MaQCK.js","assets/productListModel-Ht1NntTk.js","assets/ProductList-D6w5abTS.css","assets/Add-BB2qAVCI.js","assets/Add.vue_vue_type_script_setup_true_lang-Bhji6saH.js","assets/BaseFormModal.vue_vue_type_style_index_0_lang-B4iVMhZt.js","assets/BaseFormModal-Dd4CwqJh.css","assets/Edit-C6iXEE0n.js","assets/List-SPeRezZh.js","assets/ListPageHeader.vue_vue_type_script_setup_true_lang-YlEXklTr.js","assets/addFinDoc-sT3KrSUV.js","assets/addFinDoc.vue_vue_type_script_setup_true_lang-C7dUyRNk.js","assets/List-BRVkWgnF.js","assets/TooltipBtn.vue_vue_type_script_setup_true_lang-DuvVMhj7.js","assets/icons-BRqF3liF.js","assets/UnorderedListOutlined-CLUl5bxX.js","assets/PercentageOutlined-IS1MVcbY.js","assets/TeamOutlined-DL6Ofm69.js","assets/UserOutlined-DeX82IP7.js","assets/CameraOutlined-JfS-rAEW.js","assets/List-BRnTrvw2.css","assets/OmdeList-DFLQsm-6.js","assets/OmdeList-Dlohchjn.css","assets/MakeOrder-DEb98dwZ.js","assets/MakeOrder-DOwP9BUX.css","assets/create-jCm_K0UT.js","assets/create-DRi1ARwy.css","assets/TaminList-WWoJ26yi.js","assets/TaminList-CebUFGpf.css","assets/promotion_list-BpomTa7C.js","assets/promotion_add_edit.vue_vue_type_script_setup_true_lang-DaCHq3Nj.js","assets/PromotionForm-B6PGO9Ts.js","assets/PromotionForm-CMK9v6id.css","assets/promotion_tak_add_edit.vue_vue_type_script_setup_true_lang-BukTCIkf.js","assets/promotion_list-DWgKEjg6.css","assets/promotion_add_edit-BRbwsORn.js","assets/promotion_tak_add_edit-Bc-tQJWp.js","assets/offersIgnore-add-edit-4VqJNFTd.js","assets/offersIgnore-add-edit-C3EKEL14.css","assets/Comments-BDyc7xFA.js","assets/brand-icon-CrDwHrcf.js","assets/Comments-q2I8jWwp.css","assets/create-n0rRDFYE.js","assets/create-CxWgJ0bc.css","assets/user-D29KoPC1.js","assets/user-B-bC_c-g.css","assets/wallet-CPY--I3Y.js","assets/EditReagent-Dlp0pEGi.js","assets/ReagentCustomer-CN5vQurl.js","assets/CityTreeSelect.vue_vue_type_script_setup_true_lang-BtBj3fof.js","assets/ShopOutlined-D8LgPxHa.js","assets/EnvironmentOutlined-BZFp8i4M.js","assets/ReagentCustomer-BJbNfaGF.css","assets/AgentDetail-CTcXAMW4.js","assets/AgentDetail-BKCHh-yo.css","assets/EditBulkCustomer-BshDOCb8.js","assets/bulkCustomer.vue_vue_type_script_setup_true_lang-Bh7ptZgl.js","assets/DateInput-0_1fMgrR.js","assets/DateInput-BFphsjxa.css","assets/ViewOmdeCustomer-DFToMqq3.js","assets/CustomerDetail-ByDc8rdk.js","assets/CustomerDetail-DGAY9nkY.css","assets/EditSingleCustomer-DaVDehIn.js","assets/singleCustomer-DCfVboVT.js","assets/singleCustomer-D73A_q4T.css","assets/ViewSingleCustomer-CaDBHZh8.js","assets/OmdeList-CzOQlZG1.js","assets/OmdeCustomerList-BnaQmi8j.js","assets/OmdeCustomerList-qppHqBFQ.css","assets/OmdeNonVerifiedList-Dmyix5RU.js","assets/BankerList-BVO4ofYV.js","assets/ShopkeeperList-BhINz1-X.js","assets/OmdeArchivedList-DVwW0GQo.js","assets/ReagentList-B_8NugUa.js","assets/AddCustomer-Bfimekhg.js","assets/AddCustomer-B8yzj_hO.css","assets/SingleCustomer-CZrbY03b.js","assets/SingleCustomer-DXPJhDMT.css","assets/order_item-CUVkIral.js","assets/order_item-L-QxFgjw.css","assets/product-DIBhEedA.js","assets/product-ft0Taq8s.css","assets/list-C8ypErFY.js","assets/ListUser-6vbYcmi4.js","assets/UserCreate-CjovLfJM.js","assets/UserCreate-kr2EAKPI.css","assets/UserEdit-QMU2tuNB.js","assets/Permission-CXDQqW2j.js","assets/Permission-PeCa09B2.css","assets/createCity-Dfoq0Y3F.js","assets/createCity.vue_vue_type_script_setup_true_lang-DCWOwlVG.js","assets/cityList-Cc1Z6hFj.js","assets/index-DLK4s3ft.js","assets/newsletters-O6c9pnMf.js","assets/newsletters-BbmfL6_F.css","assets/AddBranches-DWxalK1k.js","assets/AddBranches.vue_vue_type_script_setup_true_lang-Ds4yo_72.js","assets/EditBranches-PcMrPvLE.js","assets/ListBranches-HWP1sgoA.js","assets/FacilityList.vue_vue_type_script_setup_true_lang-CXgI4BGC.js","assets/AddWorkshop-BApQPfNS.js","assets/AddWorkshop.vue_vue_type_script_setup_true_lang-C1UXqOZL.js","assets/EditWorkshop-DfzVUJen.js","assets/ListWorkshop-BqcYfnRu.js","assets/AddInvoice-CkuDWq78.js","assets/AddInvoice-ZsR8qaoD.css","assets/EditInvoice-BIXjPtQa.js","assets/ListInvoice-Kc7ntcss.js","assets/ListInvoice-CARcAUSN.css","assets/Login-C0DeEoWB.js","assets/Login-DLvlSeqG.css","assets/reg-vVyzwPVS.js","assets/reg-ClbWC7bS.css","assets/Main-XjZjVgvH.js","assets/Main-MNC2nCgv.css","assets/IamCallback-sHw34Y_i.js","assets/Error404-BQoXkfid.js","assets/Error404-CQyPUoKe.css","assets/Error500-uPAg0OcA.js","assets/Error500-Cne_2YUW.css","assets/NotAuthorized-DZ45zTfA.js","assets/NotAuthorized-B2SbXtX1.css","assets/Maintenance-axbA62Hp.js","assets/Maintenance-Duz6NlUR.css"])))=>i.map(i=>d[i]); (function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const o of document.querySelectorAll('link[rel="modulepreload"]'))i(o);new MutationObserver(o=>{for(const r of o)if(r.type==="childList")for(const a of r.addedNodes)a.tagName==="LINK"&&a.rel==="modulepreload"&&i(a)}).observe(document,{childList:!0,subtree:!0});function n(o){const r={};return o.integrity&&(r.integrity=o.integrity),o.referrerPolicy&&(r.referrerPolicy=o.referrerPolicy),o.crossOrigin==="use-credentials"?r.credentials="include":o.crossOrigin==="anonymous"?r.credentials="omit":r.credentials="same-origin",r}function i(o){if(o.ep)return;o.ep=!0;const r=n(o);fetch(o.href,r)}})();/** * @vue/shared v3.5.42 * (c) 2018-present Yuxi (Evan) You and Vue contributors @@ -2466,7 +2466,7 @@ rect.legend-mouseover-inactive, `;class $N{constructor(e,n){this.w=e,this.ctx=n,this.ev=this.w.config.chart.events,this.selectedClass="apexcharts-selected",this.localeValues=this.w.globals.locale.toolbar,this.minX=e.globals.minX,this.maxX=e.globals.maxX,this.elZoom=null,this.elZoomIn=null,this.elZoomOut=null,this.elPan=null,this.elSelection=null,this.elMeasure=null,this.elZoomReset=null,this.elMenuIcon=null,this.elMenu=null,this.elMenuItems=[],this.t=null,this._drawnForZoom=null}resetControlAllowed(){const e=this.w.config.chart;if(!e.zoom||!e.zoom.enabled)return!1;const n=e.zoom.resetControl===void 0?"auto":e.zoom.resetControl;return n!=="auto"?!!n:!(e.toolbar&&e.toolbar.show&&e.toolbar.tools&&e.toolbar.tools.reset)}resetControlDue(){return!!this.w.interact.zoomed&&this.resetControlAllowed()}createToolbar(e={}){var n,i,o;const r=this.w,a=!!e.resetOnly,s=()=>We.createElementNS("http://www.w3.org/1999/xhtml","div"),l=()=>{const h=We.createElementNS("http://www.w3.org/1999/xhtml","button");return h.setAttribute("type","button"),h},c=s();if(c.setAttribute("class","apexcharts-toolbar"),c.style.top=r.config.chart.toolbar.offsetY+"px",c.style.right=-r.config.chart.toolbar.offsetX+3+"px",r.dom.elWrap.appendChild(c),this.elZoom=l(),this.elZoomIn=l(),this.elZoomOut=l(),this.elPan=l(),this.elSelection=l(),this.elMeasure=l(),this.elZoomReset=l(),this.elMenuIcon=l(),this.elMenu=s(),this.elCustomIcons=[],this.t=r.config.chart.toolbar.tools,this._drawnForZoom=null,a?(this.t={zoom:!1,zoomin:!1,zoomout:!1,selection:!1,pan:!1,measure:!1,download:!1,customIcons:[],reset:!0},this._drawnForZoom="wrap"):!this.t.reset&&this.resetControlDue()&&(this.t=vt(Ye({},this.t),{reset:!0}),this._drawnForZoom="control"),Array.isArray(this.t.customIcons))for(let h=0;h{const m=h.toLowerCase();this.t[m]&&r.config.chart.zoom.enabled&&u.push({el:p,icon:typeof this.t[m]=="string"?this.t[m]:g,title:this.localeValues[h],class:`apexcharts-${m}-icon`})};d("zoomIn",this.elZoomIn,c1e),d("zoomOut",this.elZoomOut,u1e);const f=h=>{this.t[h]&&r.config.chart[h].enabled&&u.push({el:h==="zoom"?this.elZoom:this.elSelection,icon:typeof this.t[h]=="string"?this.t[h]:h==="zoom"?s1e:d1e,title:this.localeValues[h==="zoom"?"selectionZoom":"selection"],class:`apexcharts-${h}-icon`})};f("zoom"),f("selection"),this.t.pan&&r.config.chart.zoom.enabled&&u.push({el:this.elPan,icon:typeof this.t.pan=="string"?this.t.pan:a1e,title:this.localeValues.pan,class:"apexcharts-pan-icon"}),this.t.measure&&r.config.chart.measure&&r.config.chart.measure.enabled&&u.push({el:this.elMeasure,icon:typeof this.t.measure=="string"?this.t.measure:f1e,title:this.localeValues.measure||"Measure",class:"apexcharts-measure-icon"}),d("reset",this.elZoomReset,l1e),this.t.download&&u.push({el:this.elMenuIcon,icon:typeof this.t.download=="string"?this.t.download:h1e,title:this.localeValues.menu,class:"apexcharts-menu-icon"});for(let h=0;h{h.index&&Ee.moveIndexInArray(u,p,h.index)});for(let h=0;h{d.classList.contains("exportSVG")?d.addEventListener("click",this.handleDownload.bind(this,"svg")):d.classList.contains("exportPNG")?d.addEventListener("click",this.handleDownload.bind(this,"png")):d.classList.contains("exportCSV")&&d.addEventListener("click",this.handleDownload.bind(this,"csv"))});for(let d=0;d{d.addEventListener("keydown",f=>{if(f.key==="Enter"||f.key===" "){f.preventDefault();const h=d.className;d.click(),requestAnimationFrame(()=>{const p=this.w.dom.baseEl;if(!p)return;const g=h.split(" ").find(v=>v.startsWith("apexcharts-"));if(!g)return;const m=p.querySelector(`.${g}`);m&&m.focus()})}})}),(c=this.elMenuIcon)==null||c.addEventListener("keydown",d=>{var f;(d.key==="ArrowDown"||d.key==="ArrowUp")&&(d.preventDefault(),(f=this.elMenu)!=null&&f.classList.contains("apexcharts-menu-open")||this.toggleMenu(),window.setTimeout(()=>{const h=d.key==="ArrowDown"?0:this.elMenuItems.length-1;this.elMenuItems[h]&&this.elMenuItems[h].focus()},20))}),this.elMenuItems.forEach((d,f)=>{d.addEventListener("keydown",h=>{var p;h.key==="ArrowDown"?(h.preventDefault(),(this.elMenuItems[f+1]||this.elMenuItems[0]).focus()):h.key==="ArrowUp"?(h.preventDefault(),(this.elMenuItems[f-1]||this.elMenuItems[this.elMenuItems.length-1]).focus()):h.key==="Escape"||h.key==="Tab"?(this._closeMenu(),(p=this.elMenuIcon)==null||p.focus(),h.key==="Tab"||h.preventDefault()):(h.key==="Enter"||h.key===" ")&&(h.preventDefault(),d.click())})})}toggleZoomSelection(e){this.ctx.getSyncedCharts().forEach(i=>{const o=i.ctx.toolbar,r=e==="selection"?"selectionEnabled":"zoomEnabled",a=!!i.w.globals[r];o.toggleOtherControls();const s=e==="selection"?o.elSelection:o.elZoom;a||(i.w.globals[r]=!0,s.classList.add(o.selectedClass)),s.setAttribute("aria-pressed",String(!!i.w.globals[r]))})}toggleMeasure(){var e,n,i,o;const r=this.w,a=!r.interact.measureEnabled;this.toggleOtherControls(),a&&(r.interact.measureEnabled=!0,(e=this.elMeasure)==null||e.classList.add(this.selectedClass),(i=(n=this.ctx.measure)==null?void 0:n.startMeasure)==null||i.call(n)),(o=this.elMeasure)==null||o.setAttribute("aria-pressed",String(r.interact.measureEnabled))}getToolbarIconsReference(){const e=this.w;this.elZoom||(this.elZoom=e.dom.baseEl.querySelector(".apexcharts-zoom-icon")),this.elPan||(this.elPan=e.dom.baseEl.querySelector(".apexcharts-pan-icon")),this.elSelection||(this.elSelection=e.dom.baseEl.querySelector(".apexcharts-selection-icon")),this.elMeasure||(this.elMeasure=e.dom.baseEl.querySelector(".apexcharts-measure-icon"))}enableZoomPanFromToolbar(e){this.toggleOtherControls(),e==="pan"?this.w.interact.panEnabled=!0:this.w.interact.zoomEnabled=!0;const n=e==="pan"?this.elPan:this.elZoom,i=e==="pan"?this.elZoom:this.elPan;n&&n.classList.add(this.selectedClass),i&&i.classList.remove(this.selectedClass)}togglePanning(){this.ctx.getSyncedCharts().forEach(n=>{const i=n.ctx.toolbar,o=!!n.w.interact.panEnabled;i.toggleOtherControls(),o||(n.w.interact.panEnabled=!0,i.elPan.classList.add(i.selectedClass)),i.elPan.setAttribute("aria-pressed",String(!!n.w.interact.panEnabled))})}toggleOtherControls(){var e,n,i;const o=this.w;o.interact.panEnabled=!1,o.interact.zoomEnabled=!1,o.interact.selectionEnabled=!1,o.interact.measureEnabled&&(o.interact.measureEnabled=!1,(n=(e=this.ctx.measure)==null?void 0:e.stopMeasure)==null||n.call(e),(i=this.elMeasure)==null||i.setAttribute("aria-pressed","false")),this.getToolbarIconsReference(),[this.elPan,this.elSelection,this.elZoom,this.elMeasure].forEach(a=>{a&&a.classList.remove(this.selectedClass)})}_currentXRange(){const e=this.w;return e.axisFlags.isRangeBar?{minX:e.globals.minY,maxX:e.globals.maxY}:{minX:e.globals.minX,maxX:e.globals.maxX}}handleZoomIn(){const e=this.w,{minX:n,maxX:i}=this._currentXRange();this.minX=n,this.maxX=i;const o=(n+i)/2,r=(n+o)/2,a=(i+o)/2,s=this._getNewMinXMaxX(r,a);e.interact.disableZoomIn||this.zoomUpdateOptions(s.minX,s.maxX)}handleZoomOut(){const e=this.w,{minX:n,maxX:i}=this._currentXRange();if(this.minX=n,this.maxX=i,e.config.xaxis.type==="datetime"&&new Date(n).getUTCFullYear()<1e3)return;const o=(n+i)/2,r=n-(o-n),a=i-(o-i),s=this._getNewMinXMaxX(r,a);e.interact.disableZoomOut||this.zoomUpdateOptions(s.minX,s.maxX)}_getNewMinXMaxX(e,n){const i=this.w.config.xaxis.convertedCatToNumeric;return{minX:i?Math.floor(e):e,maxX:i?Math.floor(n):n}}zoomUpdateOptions(e,n){const i=this.w;if(e===void 0&&n===void 0){this.handleZoomReset();return}if(i.config.xaxis.convertedCatToNumeric&&(e<1&&(e=1,n=i.globals.dataPoints),n-e<2))return;let o={min:e,max:n};const r=this.getBeforeZoomRange(o,void 0);r&&(o=r.xaxis);const a={xaxis:o};if(!i.globals.initialConfig)return;const s=Ee.clone(i.globals.initialConfig.yaxis);i.config.chart.group||(a.yaxis=s),this.w.interact.zoomed=!0,this.ctx.updateHelpers._updateOptions(a,!1,this.w.config.chart.animations.dynamicAnimation.enabled),this.zoomCallback(o,s)}zoomCallback(e,n){typeof this.ev.zoomed=="function"&&(this.ev.zoomed(this.ctx,{xaxis:e,yaxis:n}),this.ctx.events.fireEvent("zoomed",{xaxis:e,yaxis:n}))}getBeforeZoomRange(e,n){let i=null;return typeof this.ev.beforeZoom=="function"&&(i=this.ev.beforeZoom(this,{xaxis:e,yaxis:n})),i}toggleMenu(){window.setTimeout(()=>{var e,n,i;(e=this.elMenu)!=null&&e.classList.contains("apexcharts-menu-open")?this._closeMenu():((n=this.elMenu)==null||n.classList.add("apexcharts-menu-open"),(i=this.elMenuIcon)==null||i.setAttribute("aria-expanded","true"))},0)}_closeMenu(){var e,n;(e=this.elMenu)==null||e.classList.remove("apexcharts-menu-open"),(n=this.elMenuIcon)==null||n.setAttribute("aria-expanded","false")}handleDownload(e){const n=this.w,i=new xN(this.w,this.ctx);switch(e){case"svg":i.exportToSVG();break;case"png":i.exportToPng();break;case"csv":i.exportToCSV({series:n.config.series,columnDelimiter:n.config.chart.toolbar.export.csv.columnDelimiter});break}}clearZoomAffordance(){const e=this._drawnForZoom;if(this._drawnForZoom=null,!e||!this.elZoomReset)return;const n=this.elZoomReset.parentNode,i=e==="wrap"?n:this.elZoomReset;i&&i.parentNode&&i.parentNode.removeChild(i)}handleZoomReset(){this.ctx.getSyncedCharts().forEach(n=>{var i;const o=n.w;if(!o.interact.zoomed)return;if(o.globals.lastXAxis.min=o.globals.initialConfig.xaxis.min,o.globals.lastXAxis.max=o.globals.initialConfig.xaxis.max,n.updateHelpers.revertDefaultAxisMinMax(),typeof o.config.chart.events.beforeResetZoom=="function"){const a=o.config.chart.events.beforeResetZoom(n,o);a&&n.updateHelpers.revertDefaultAxisMinMax(a)}typeof o.config.chart.events.zoomed=="function"&&n.ctx.toolbar.zoomCallback({min:o.config.xaxis.min,max:o.config.xaxis.max});const r=n.ctx.series.emptyCollapsedSeries(Ee.clone(o.globals.initialSeries));n.updateHelpers._updateSeries(r,o.config.chart.animations.dynamicAnimation.enabled),o.interact.zoomed=!1,(i=n.ctx.toolbar)==null||i.clearZoomAffordance()})}destroy(){this.elZoom=null,this.elZoomIn=null,this.elZoomOut=null,this.elPan=null,this.elSelection=null,this.elMeasure=null,this.elZoomReset=null,this.elMenuIcon=null}}class so{static xRatio(e){const n=e.layout.gridWidth||1;return(e.globals.maxX-e.globals.minX)/n}static dataXToPx(e,n){return(n-e.globals.minX)/so.xRatio(e)}static pxToDataX(e,n){return e.globals.minX+n*so.xRatio(e)}static screenXToPlotPx(e,n){const i=e.dom.baseEl,o=i&&i.querySelector(".apexcharts-svg");if(!o)return n-e.layout.translateX;const r=o.getBoundingClientRect(),a=e.globals.svgWidth?r.width/e.globals.svgWidth:1;return(n-r.left)/(a||1)-e.layout.translateX}}const p1e=240,g1e=.05,m1e=.92,v1e=.02,b1e=16.6667,ph=15,BE=0;class y1e extends $N{constructor(e,n){super(e,n),this.w=e,this.ctx=n,this.dragged=!1,this.graphics=new Be(this.w),this.eventList=["mousedown","mouseleave","mousemove","touchstart","touchmove","mouseup","touchend"],this.clientX=0,this.clientY=0,this.startX=0,this.endX=0,this.dragX=0,this.startY=0,this.endY=0,this.dragY=0,this.moveDirection="none"}init({xyRatios:e}){const n=this.w,i=this;this.xyRatios=e,this.zoomRect=this.graphics.drawRect(0,0,0,0),this.selectionRect=this.graphics.drawRect(0,0,0,0),this.constraints=new yN(0,0,n.layout.gridWidth,n.layout.gridHeight),this.zoomRect.node.classList.add("apexcharts-zoom-rect"),this.selectionRect.node.classList.add("apexcharts-selection-rect"),n.dom.Paper.add(this.zoomRect),n.dom.Paper.add(this.selectionRect),n.config.chart.selection.type==="x"?this.slDraggableRect=this.selectionRect.draggable({minX:0,minY:0,maxX:n.layout.gridWidth,maxY:n.layout.gridHeight}).on("dragmove.namespace",this.selectionDragging.bind(this,"dragging")):n.config.chart.selection.type==="y"?this.slDraggableRect=this.selectionRect.draggable({minX:0,maxX:n.layout.gridWidth}).on("dragmove.namespace",this.selectionDragging.bind(this,"dragging")):this.slDraggableRect=this.selectionRect.draggable().on("dragmove.namespace",this.selectionDragging.bind(this,"dragging")),this.preselectedSelection(),this.hoverArea=n.dom.baseEl.querySelector(`${n.globals.chartClass} .apexcharts-svg`),this.hoverArea&&(this.hoverArea.classList.add("apexcharts-zoomable"),this.eventList.forEach(o=>{var r;(r=this.hoverArea)==null||r.addEventListener(o,i.svgMouseEvents.bind(i,e),{capture:!1,passive:!0})}),this._wheelZoomEnabled()&&this.hoverArea.addEventListener("wheel",i.mouseWheelEvent.bind(i),{capture:!1,passive:!1}),this.hoverArea.addEventListener("keydown",i.escapeResetEvent.bind(i),{capture:!1,passive:!0}),this._momentumEnabled()&&["touchstart","touchmove","touchend","touchcancel"].forEach(o=>{var r;(r=this.hoverArea)==null||r.addEventListener(o,i.momentumTouch.bind(i),{capture:!1,passive:!1})}))}destroy(){this.slDraggableRect&&(this.slDraggableRect.draggable(!1),this.slDraggableRect.off(),this.selectionRect.off()),this.selectionRect=null,this.zoomRect=null}svgMouseEvents(e,n){const i=this.w,o=this.ctx.toolbar;if(i.interact.momentum&&i.interact.momentum.busy||this._momentumEnabled()&&n.touches&&n.touches.length>1)return;const r=i.interact.zoomEnabled?i.config.chart.zoom.type:i.config.chart.selection.type,a=i.config.chart.toolbar.autoSelected;if(a!=="measure"&&(n.shiftKey?(i.interact.shiftWasPressed=!0,o.enableZoomPanFromToolbar(a==="pan"?"zoom":"pan")):i.interact.shiftWasPressed&&(o.enableZoomPanFromToolbar(a),i.interact.shiftWasPressed=!1)),!n.target)return;const s=n.target.classList;let l;if(n.target.parentNode&&n.target.parentNode!==null&&(l=n.target.parentNode.classList),!(s.contains("apexcharts-legend-marker")||s.contains("apexcharts-legend-text")||l&&l.contains("apexcharts-toolbar"))){if(this.clientX=n.type==="touchmove"||n.type==="touchstart"?n.touches[0].clientX:n.type==="touchend"?n.changedTouches[0].clientX:n.clientX,this.clientY=n.type==="touchmove"||n.type==="touchstart"?n.touches[0].clientY:n.type==="touchend"?n.changedTouches[0].clientY:n.clientY,n.type==="mousedown"&&n.which===1||n.type==="touchstart"){const u=this._gridRect();if(!u)return;this.startX=this._screenXToPlotPx(this.clientX),this.startY=this.clientY-u.top,this.dragged=!1,this.w.interact.mousedown=!0}(n.type==="mousemove"&&n.which===1||n.type==="touchmove")&&(this.dragged=!0,i.interact.panEnabled?(i.interact.selection=null,this.w.interact.mousedown&&this.panDragging({context:this,zoomtype:r,xyRatios:this.xyRatios})):(this.w.interact.mousedown&&i.interact.zoomEnabled||this.w.interact.mousedown&&i.interact.selectionEnabled)&&(this.selection=this.selectionDrawing({context:this,zoomtype:r}))),(n.type==="mouseup"||n.type==="touchend"||n.type==="mouseleave")&&this.handleMouseUp({zoomtype:r}),this.makeSelectionRectDraggable()}}handleMouseUp({zoomtype:e,isResized:n}){const i=this.w,o=this._gridRect();o&&(this.w.interact.mousedown||n)&&(this.endX=this._screenXToPlotPx(this.clientX),this.endY=this.clientY-o.top,this.dragX=Math.abs(this.endX-this.startX),this.dragY=Math.abs(this.endY-this.startY),(i.interact.zoomEnabled||i.interact.selectionEnabled)&&this.selectionDrawn({context:this,zoomtype:e})),i.interact.zoomEnabled&&this.hideSelectionRect(this.selectionRect),this.dragged=!1,this.w.interact.mousedown=!1}_incidentalZoomEnabled(e){var n,i,o;const r=this.w.config.chart;return!r.zoom||!r.zoom.enabled?!1:e!=="auto"?!!e:!!((n=r.toolbar)!=null&&n.show&&((o=(i=r.toolbar)==null?void 0:i.tools)!=null&&o.reset))}_wheelZoomEnabled(){const{zoom:e}=this.w.config.chart;return this._incidentalZoomEnabled(e&&e.allowMouseWheelZoom)}_focusForKeyboard(){var e,n;const i=this.w.dom.Paper&&this.w.dom.Paper.node;if(!(!i||typeof i.focus!="function")&&i.getAttribute("tabindex")!==null){(n=(e=this.ctx.keyboardNavigation)==null?void 0:e.notePointerFocus)==null||n.call(e);try{i.focus({preventScroll:!0})}catch{i.focus()}}}escapeResetEvent(e){if(e.key!=="Escape"&&e.key!=="Esc"||!this.w.interact.zoomed)return;const n=this.ctx.keyboardNavigation;n&&n.active||this.resetControlAllowed()&&this.handleZoomReset()}_wheel(){const e=this.w.interact;return e.wheel||(e.wheel={factor:1,clientX:0,rafId:null,endTimer:null}),e.wheel}mouseWheelEvent(e){e.preventDefault();const n=this._wheel();let i=e.deltaY;e.deltaMode===1?i*=33:e.deltaMode===2&&(i*=330),n.factor*=Math.pow(2,i/p1e),n.clientX=e.clientX,n.rafId==null&&(n.rafId=requestAnimationFrame(()=>this._applyWheelZoom())),n.endTimer&&clearTimeout(n.endTimer),n.endTimer=setTimeout(()=>this._endWheelZoom(),150)}_applyWheelZoom(){const e=this.w,n=this._wheel();n.rafId=null;const i=n.factor;if(n.factor=1,i===1||e.globals.isDestroyed)return;const o=this._gridRect();if(!o||!o.width)return;const{min:r,max:a}=this._currentXWindow(),s=a-r,l=Math.min(Math.max((n.clientX-o.left)/o.width,0),1);let c=s*i;const u=this._clampBounds();if(u){const m=e.globals.minXDiff>0&&isFinite(e.globals.minXDiff)?e.globals.minXDiff:0,v=Math.max(m*2,(u.max-u.min)*1e-6);cu.max-u.min&&(c=u.max-u.min)}let f=r+l*s-l*c,h=f+c;const p=s*1e-9;if(Math.abs(f-r)0&&n.height>0&&(this.selectionRect.select(!1).resize(!1),this.selectionRect.select({createRot:()=>{},updateRot:()=>{},createHandle:(i,o,r,a,s)=>s==="l"||s==="r"?i.circle(8).css({"stroke-width":1,stroke:"#333",fill:"#fff"}):i.circle(0),updateHandle:(i,o)=>i.center(o[0],o[1])}).resize().on("resize",()=>{var i;if(this._clampSelectionRectToPlot(),e.interact.selectionEnabled)e.interact.selection={x:parseFloat(this.selectionRect.node.getAttribute("x")),y:parseFloat(this.selectionRect.node.getAttribute("y")),width:parseFloat(this.selectionRect.node.getAttribute("width")),height:parseFloat(this.selectionRect.node.getAttribute("height"))},clearTimeout((i=this.w.globals.selectionResizeTimer)!=null?i:void 0),this.w.globals.selectionResizeTimer=window.setTimeout(()=>{this._emitSelectionFromRect()},30);else{const o=e.interact.zoomEnabled?e.config.chart.zoom.type:e.config.chart.selection.type;this.handleMouseUp({zoomtype:o,isResized:!0})}}))}preselectedSelection(){const e=this.w,n=this.xyRatios;if(!e.interact.zoomEnabled){if(typeof e.interact.selection<"u"&&e.interact.selection!==null)this.drawSelectionRect(vt(Ye({},e.interact.selection),{translateX:e.layout.translateX,translateY:e.layout.translateY}));else if(e.config.chart.selection.xaxis.min!==void 0&&e.config.chart.selection.xaxis.max!==void 0){let i=so.dataXToPx(e,e.config.chart.selection.xaxis.min),o=so.dataXToPx(e,e.config.chart.selection.xaxis.max)-i;e.axisFlags.isRangeBar&&(i=(e.config.chart.selection.xaxis.min-e.globals.yAxisScale[0].niceMin)/n.invertedYRatio,o=(e.config.chart.selection.xaxis.max-e.config.chart.selection.xaxis.min)/n.invertedYRatio);const r={x:i,y:0,width:o,height:e.layout.gridHeight,translateX:e.layout.translateX,translateY:e.layout.translateY,selectionEnabled:!0};this.drawSelectionRect(r),this.makeSelectionRectDraggable(),typeof e.config.chart.events.selection=="function"&&e.config.chart.events.selection(this.ctx,{xaxis:{min:e.config.chart.selection.xaxis.min,max:e.config.chart.selection.xaxis.max},yaxis:{}})}}}drawSelectionRect({x:e,y:n,width:i,height:o,translateX:r=0,translateY:a=0}){const s=this.w,l=this.zoomRect,c=this.selectionRect;if(this.dragged||s.interact.selection!==null){const u={transform:"translate("+r+", "+a+")"};s.interact.zoomEnabled&&this.dragged&&(i<0&&(i=1),l.attr({x:e,y:n,width:i,height:o,fill:s.config.chart.zoom.zoomedArea.fill.color,"fill-opacity":s.config.chart.zoom.zoomedArea.fill.opacity,stroke:s.config.chart.zoom.zoomedArea.stroke.color,"stroke-width":s.config.chart.zoom.zoomedArea.stroke.width,"stroke-opacity":s.config.chart.zoom.zoomedArea.stroke.opacity}),Be.setAttrs(l.node,u)),s.interact.selectionEnabled&&(c.attr({x:e,y:n,width:i>0?i:0,height:o>0?o:0,fill:s.config.chart.selection.fill.color,"fill-opacity":s.config.chart.selection.fill.opacity,stroke:s.config.chart.selection.stroke.color,"stroke-width":s.config.chart.selection.stroke.width,"stroke-dasharray":s.config.chart.selection.stroke.dashArray,"stroke-opacity":s.config.chart.selection.stroke.opacity}),Be.setAttrs(c.node,u))}}_clampSelectionRectToPlot(){const e=this.selectionRect;if(!e||!e.node)return;const n=this.w.layout.gridWidth;if(!(n>BE))return;const i=parseFloat(e.node.getAttribute("x"))||0,o=parseFloat(e.node.getAttribute("width"))||0,r=l=>Math.min(Math.max(l,BE),n),a=r(i),s=r(i+o);a===i&&s===i+o||(e.attr({x:a,width:s-a}),e._updateSelectPositions&&e._updateSelectPositions())}hideSelectionRect(e){e&&e.attr({x:0,y:0,width:0,height:0})}selectionDrawing({context:e,zoomtype:n}){const i=this.w,o=e,r=this._gridRect();if(!r)return;const a=o.startX-1,s=o.startY;let l=!1,c=!1;const u=this._screenXToPlotPx(o.clientX),d=o.clientY-r.top;let f=u-a,h=d-s,p={translateX:i.layout.translateX,translateY:i.layout.translateY};return Math.abs(f+a)>i.layout.gridWidth?f=i.layout.gridWidth-a:u<0&&(f=a),a>u&&(l=!0,f=Math.abs(f)),s>d&&(c=!0,h=Math.abs(h)),n==="x"?p={x:l?a-f:a,y:0,width:f,height:i.layout.gridHeight}:n==="y"?p={x:0,y:c?s-h:s,width:i.layout.gridWidth,height:h}:p={x:l?a-f:a,y:c?s-h:s,width:f,height:h},p=vt(Ye({},p),{translateX:i.layout.translateX,translateY:i.layout.translateY}),o.drawSelectionRect(p),o.selectionDragging("resizing"),p}selectionDragging(e,n){var i;const o=this.w;if(!n)return;n.preventDefault();const{handler:r,box:a}=n.detail,s=this.constraints;let{x:l,y:c}=a;ls.x2&&(l=s.x2-a.w),a.y2>s.y2&&(c=s.y2-a.h),r.move(l,c);const u=this.selectionRect;let d=0;e==="resizing"&&(d=30);const f=m=>parseFloat(u.node.getAttribute(m)),h={x:f("x"),y:f("y"),width:f("width"),height:f("height")};o.interact.selection=h;const p=o.config.chart.link,g=!!(p&&(p.enabled||typeof p.dimension=="function"));(typeof o.config.chart.events.selection=="function"||g)&&o.interact.selectionEnabled&&(clearTimeout((i=this.w.globals.selectionResizeTimer)!=null?i:void 0),this.w.globals.selectionResizeTimer=window.setTimeout(()=>{this._emitSelectionFromRect()},d))}_emitSelectionFromRect(){var e;const n=this.w;if(!n.interact.selectionEnabled)return;const i=n.config.chart.link,o=!!(i&&(i.enabled||typeof i.dimension=="function"));if(typeof n.config.chart.events.selection!="function"&&!o)return;const r=this._gridRect();if(!r)return;const a=this.selectionRect.node.getBoundingClientRect(),s=this.xyRatios;let l,c,u,d;const f=this._screenXToPlotPx(a.left),h=this._screenXToPlotPx(a.right);if(n.axisFlags.isRangeBar)l=n.globals.yAxisScale[0].niceMin+f*s.invertedYRatio,c=n.globals.yAxisScale[0].niceMin+h*s.invertedYRatio,u=0,d=1;else{if(!n.globals.xAxisScale)return;l=so.pxToDataX(n,f),c=so.pxToDataX(n,h),u=n.globals.yAxisScale[0].niceMin+(r.bottom-a.bottom)*s.yRatio[0],d=n.globals.yAxisScale[0].niceMax-(a.top-r.top)*s.yRatio[0]}const p={xaxis:{min:l,max:c},yaxis:{min:u,max:d}};typeof n.config.chart.events.selection=="function"&&n.config.chart.events.selection(this.ctx,p),n.config.chart.brush.enabled&&n.config.chart.events.brushScrolled!==void 0&&n.config.chart.events.brushScrolled(this.ctx,p),(e=this.ctx.linkedViews)==null||e.onSourceSelection(p.xaxis)}selectionDrawn({context:e,zoomtype:n}){var i;const o=this.w,r=e,a=this.xyRatios,s=this.ctx.toolbar,l=o.interact.zoomEnabled?r.zoomRect.node.getBoundingClientRect():r.selectionRect.node.getBoundingClientRect(),c=r._gridRect();if(!c)return;const u=this._screenXToPlotPx(l.left),d=this._screenXToPlotPx(l.right),f=l.top-c.top,h=l.bottom-c.top;let p,g;o.axisFlags.isRangeBar?(p=o.globals.yAxisScale[0].niceMin+u*a.invertedYRatio,g=o.globals.yAxisScale[0].niceMin+d*a.invertedYRatio):(p=so.pxToDataX(o,u),g=so.pxToDataX(o,d));const m=[],v=[];if(o.config.yaxis.forEach((b,y)=>{const w=o.globals.seriesYAxisMap[y][0],x=o.globals.yAxisScale[y].niceMax-a.yRatio[w]*f,$=o.globals.yAxisScale[y].niceMax-a.yRatio[w]*h;m.push(x),v.push($)}),r.dragged&&(r.dragX>10||r.dragY>10)&&p!==g){if(o.interact.zoomEnabled){if(!o.globals.initialConfig)return;let b=Ee.clone(o.globals.initialConfig.yaxis),y=Ee.clone(o.globals.initialConfig.xaxis);if(o.interact.zoomed=!0,o.config.xaxis.convertedCatToNumeric&&(p=Math.floor(p),g=Math.floor(g),p<1&&(p=1,g=o.globals.dataPoints),g-p<2&&(g=p+1)),(n==="xy"||n==="x")&&(y={min:p,max:g}),(n==="xy"||n==="y")&&b.forEach(($,S)=>{b[S].min=v[S],b[S].max=m[S]}),s){const $=s.getBeforeZoomRange(y,b);$&&(y=$.xaxis?$.xaxis:y,b=$.yaxis?$.yaxis:b)}const w={xaxis:y};o.config.chart.group||(w.yaxis=b);const x=r.ctx.updateHelpers._updateOptions(w,!1,r.w.config.chart.animations.dynamicAnimation.enabled);x&&typeof x.then=="function"?x.then(()=>r._focusForKeyboard()):r._focusForKeyboard(),typeof o.config.chart.events.zoomed=="function"&&s.zoomCallback(y,b)}else if(o.interact.selectionEnabled){let b=null,y=null;if(y={min:p,max:g},n==="xy"||n==="y"){const w=Ee.clone(o.config.yaxis);b=w,w.forEach((x,$)=>{w[$].min=v[$],w[$].max=m[$]})}o.interact.selection=r.selection,typeof o.config.chart.events.selection=="function"&&o.config.chart.events.selection(r.ctx,{xaxis:y,yaxis:b}),(i=r.ctx.linkedViews)==null||i.onSourceSelection(y)}}}panDragging({context:e}){var n;const i=this.w,o=e;if(typeof i.interact.lastClientPosition.x<"u"){const s=i.interact.lastClientPosition.x-o.clientX,l=((n=i.interact.lastClientPosition.y)!=null?n:0)-o.clientY;Math.abs(s)>Math.abs(l)&&s>0?this.moveDirection="left":Math.abs(s)>Math.abs(l)&&s<0?this.moveDirection="right":Math.abs(l)>Math.abs(s)&&l>0?this.moveDirection="up":Math.abs(l)>Math.abs(s)&&l<0&&(this.moveDirection="down")}i.interact.lastClientPosition={x:o.clientX,y:o.clientY};const r=i.axisFlags.isRangeBar?i.globals.minY:i.globals.minX,a=i.axisFlags.isRangeBar?i.globals.maxY:i.globals.maxX;o.panScrolled(r,a)}panScrolled(e,n){var i,o;const r=this.w,a=this.xyRatios;if(!r.globals.initialConfig)return;const s=Ee.clone(r.globals.initialConfig.yaxis);let l=a.xRatio,c=r.globals.minX,u=r.globals.maxX;if(r.axisFlags.isRangeBar&&(l=a.invertedYRatio,c=r.globals.minY,u=r.globals.maxY),this.moveDirection==="left"?(e=c+r.layout.gridWidth/ph*l,n=u+r.layout.gridWidth/ph*l):this.moveDirection==="right"&&(e=c-r.layout.gridWidth/ph*l,n=u-r.layout.gridWidth/ph*l),!r.axisFlags.isRangeBar){const h=(i=r.globals.dataReducerRawMinX)!=null?i:r.globals.initialMinX,p=(o=r.globals.dataReducerRawMaxX)!=null?o:r.globals.initialMaxX;(ep)&&(e=c,n=u)}const f={xaxis:{min:e,max:n}};r.config.chart.group||(f.yaxis=s),this.updateScrolledChart(f,e,n)}updateScrolledChart(e,n,i){const o=this.w;if(this.ctx.updateHelpers._updateOptions(e,!1,!1),typeof o.config.chart.events.scrolled=="function"){const r={xaxis:{min:n,max:i}};o.config.chart.events.scrolled(this.ctx,r),this.ctx.events.fireEvent("scrolled",r)}}_momentumEnabled(){return this._pinchEnabled()||this._panInertiaEnabled()}_pinchEnabled(){return this._incidentalZoomEnabled(this.w.config.chart.zoom.pinch)}_panInertiaEnabled(){const e=this.w.config.chart;return!!(e.pan&&e.pan.inertia)}_m(){const e=this.w.interact;return e.momentum||(e.momentum={busy:!1,pinch:null,panState:null,samples:[],inertiaRAF:null}),e.momentum}_currentXWindow(){const e=this.w;return e.axisFlags.isRangeBar?{min:e.globals.minY,max:e.globals.maxY}:{min:e.globals.minX,max:e.globals.maxX}}_gridRect(){const e=this.w.dom.baseEl,n=e&&e.querySelector(".apexcharts-grid");return n?n.getBoundingClientRect():null}_screenXToPlotPx(e){return so.screenXToPlotPx(this.w,e)}_clampBounds(){var e,n;const i=this.w;return i.axisFlags.isRangeBar?null:{min:(e=i.globals.dataReducerRawMinX)!=null?e:i.globals.initialMinX,max:(n=i.globals.dataReducerRawMaxX)!=null?n:i.globals.initialMaxX}}_applyXRange(e,n,i){const o=this.w;if(!o.globals.initialConfig)return!1;const r=this._currentXWindow(),a=i&&n-e>r.max-r.min,s=this._clampBounds();if(s){const c=n-e;es.max&&(n=s.max,e=n-c),es.max&&(n=Math.floor(s.max)),n-e<2)||!(n>e))return!1;const l={xaxis:{min:e,max:n}};return o.config.chart.group||(l.yaxis=Ee.clone(o.globals.initialConfig.yaxis)),i&&(o.interact.zoomed=!0),this.ctx.updateHelpers._updateOptions(l,!1,!1),{minX:e,maxX:n}}_cancelInertia(){const e=this._m();e.inertiaRAF!=null&&(cancelAnimationFrame(e.inertiaRAF),e.inertiaRAF=null)}_fireScrolled(){const e=this.w;if(typeof e.config.chart.events.scrolled!="function")return;const{min:n,max:i}=this._currentXWindow(),o={xaxis:{min:n,max:i}};e.config.chart.events.scrolled(this.ctx,o),this.ctx.events.fireEvent("scrolled",o)}_pushSample(e,n){const i=this._m().samples;for(i.push({x:e,t:n});i.length>6;)i.shift()}momentumTouch(e){const n=this.w,i=this._m(),o=e.type;if(o==="touchstart"){this._cancelInertia();const r=this._gridRect();if(!r)return;if(e.touches.length>=2&&this._pinchEnabled())e.preventDefault(),i.busy=!0,i.panState=null,this._beginPinch(e,r);else if(e.touches.length===1&&this._panInertiaEnabled()&&n.interact.panEnabled){i.busy=!0,i.pinch=null;const a=e.touches[0],s=this._currentXWindow(),l=n.layout.gridWidth||1;i.panState={startX:a.clientX,startY:a.clientY,axis:null,minX0:s.min,maxX0:s.max,ratio0:(s.max-s.min)/l},i.samples=[{x:a.clientX,t:e.timeStamp}]}return}if(o==="touchmove"){i.pinch&&e.touches.length>=2?(e.preventDefault(),this._movePinch(e)):i.panState&&e.touches.length===1&&this._movePan(e);return}i.pinch?e.touches.length<2&&this._endPinch():i.panState&&e.touches.length===0&&this._endPan(),e.touches.length===0&&(n.interact.mousedown=!1,this.dragged=!1,i.inertiaRAF==null&&!i.pinch&&!i.panState&&(i.busy=!1))}_beginPinch(e,n){const i=this.w,o=e.touches[0],r=e.touches[1],a=Math.hypot(r.clientX-o.clientX,r.clientY-o.clientY)||1,s=(o.clientX+r.clientX)/2-n.left-i.globals.barPadForNumericAxis,{min:l,max:c}=this._currentXWindow();this._m().pinch={d0:a,cx0:s,minX0:l,maxX0:c,gridWidth:i.layout.gridWidth||1}}_movePinch(e){const n=this.w,i=this._m().pinch;if(!i)return;const o=this._gridRect();if(!o)return;const r=e.touches[0],a=e.touches[1],s=Math.hypot(a.clientX-r.clientX,a.clientY-r.clientY)||1,l=(r.clientX+a.clientX)/2-o.left-n.globals.barPadForNumericAxis,c=i.maxX0-i.minX0,u=c*(i.d0/s);let f=i.minX0+i.cx0/i.gridWidth*c-l/i.gridWidth*u,h=f+u;const p=this._clampBounds();if(p){const g=n.globals.minXDiff>0&&isFinite(n.globals.minXDiff)?n.globals.minXDiff:0,m=Math.max(g*2,(p.max-p.min)*1e-6);if(h-fs){n.busy=!1,n.panState=null;return}i.axis="x"}if(i.axis!=="x")return;e.preventDefault();const a=(o.clientX-i.startX)*i.ratio0;this._pushSample(o.clientX,e.timeStamp),this._applyXRange(i.minX0-a,i.maxX0-a,!1)}_endPan(){const e=this._m(),n=e.panState;e.panState=null;let i=0;const o=e.samples;if(o.length>=2){const r=o[0],a=o[o.length-1],s=a.t-r.t;s>0&&(i=(a.x-r.x)/s)}e.samples=[],n&&n.axis==="x"&&this._panInertiaEnabled()&&Math.abs(i)>g1e?this._startInertia(i):(e.busy=!1,this._fireScrolled())}_startInertia(e){const n=this.w,i=this._m(),o=n.config.chart.pan&&n.config.chart.pan.friction,r=typeof o=="number"?Math.min(Math.max(o,.5),.999):m1e;let a=e,s=null;i.busy=!0;const l=c=>{if(n.globals.isDestroyed){i.inertiaRAF=null,i.busy=!1;return}if(s==null){s=c,i.inertiaRAF=requestAnimationFrame(l);return}const u=c-s;if(s=c,a*=Math.pow(r,u/b1e),Math.abs(a)0&&g.minX<=m.min+(m.max-m.min)*1e-6||p<0&&g.maxX>=m.max-(m.max-m.min)*1e-6)){i.inertiaRAF=null,i.busy=!1,this._fireScrolled();return}i.inertiaRAF=requestAnimationFrame(l)};i.inertiaRAF=requestAnimationFrame(l)}}Vn.registerFeatures({toolbar:$N,zoomPanSelection:y1e});let Pv=class{constructor(e){this.w=e.w,this.annoCtx=e}setOrientations(e,n=null){var i,o;const r=this.w;if(e.label.orientation==="vertical"){const a=n!==null?n:0,s=r.dom.baseEl.querySelector(`.apexcharts-xaxis-annotations .apexcharts-xaxis-annotation-label[rel='${a}']`);if(s!==null){const l=s.getBBox();s.setAttribute("x",String(parseFloat((i=s.getAttribute("x"))!=null?i:"0")-l.height+4));const c=e.label.position==="top"?l.width:-l.width;s.setAttribute("y",String(parseFloat((o=s.getAttribute("y"))!=null?o:"0")+c));const{x:u,y:d}=this.annoCtx.graphics.rotateAroundCenter(s);s.setAttribute("transform",`rotate(-90 ${u} ${d})`)}}}addBackgroundToAnno(e,n){const i=this.w;if(!e||!n.label.text||!String(n.label.text).trim())return null;const o=i.dom.baseEl.querySelector(".apexcharts-grid");if(!o)return null;const r=o.getBoundingClientRect(),a=o.getBBox(),s=r.width/a.width||1,l=e.getBoundingClientRect();let{left:c,right:u,top:d,bottom:f}=n.label.style.padding;n.label.orientation==="vertical"&&([d,f,c,u]=[c,u,d,f]);const h=r.left-a.x*s,p=r.top-a.y*s,g=(l.left-h)/s-c,m=(l.top-p)/s-d,v=this.annoCtx.graphics.drawRect(g,m,l.width/s+c+u,l.height/s+d+f,n.label.borderRadius,n.label.style.background,1,n.label.borderWidth,n.label.borderColor,0);return n.id&&v.node.classList.add(n.id),v}annotationsBackground(){const e=this.w,n=(i,o,r)=>{const a=e.dom.baseEl.querySelector(`.apexcharts-${r}-annotations .apexcharts-${r}-annotation-label[rel='${o}']`);if(a){const s=a.parentNode,l=this.addBackgroundToAnno(a,i);if(l){s==null||s.insertBefore(l.node,a);const c=a.getAttribute("x");c!==null&&Ms(l,parseFloat(c),e),i.label.mouseEnter&&l.node.addEventListener("mouseenter",i.label.mouseEnter.bind(this,i)),i.label.mouseLeave&&l.node.addEventListener("mouseleave",i.label.mouseLeave.bind(this,i)),i.label.click&&l.node.addEventListener("click",i.label.click.bind(this,i))}}};e.config.annotations.xaxis.forEach((i,o)=>n(i,o,"xaxis")),e.config.annotations.yaxis.forEach((i,o)=>n(i,o,"yaxis")),e.config.annotations.points.forEach((i,o)=>n(i,o,"point"))}usesCategoryX(){const e=this.w;return(e.config.xaxis.type==="category"||e.config.xaxis.convertedCatToNumeric)&&!this.annoCtx.invertAxis&&!e.axisFlags.dataFormatXNumeric&&!e.config.chart.sparkline.enabled}hasXDomain(){const e=this.w;return this.annoCtx.invertAxis?Ee.isNumber(e.globals.minY)&&Ee.isNumber(e.globals.yRange[0]):this.usesCategoryX()?e.labelData.labels.length>0||e.labelData.categoryLabels.length>0:Ee.isNumber(e.globals.minX)&&Ee.isNumber(e.globals.xRange)}getY1Y2(e,n){var i,o,r;const a=this.w,s=e==="y1"?n.y:n.y2,l=typeof s=="string"&&s.includes("px");let c,u=!1;if(this.annoCtx.invertAxis){const d=a.config.xaxis.convertedCatToNumeric?a.labelData.categoryLabels:a.labelData.labels,f=d.indexOf(s);if(!l&&f===-1)return{yP:0,clipped:!0};const h=a.dom.baseEl.querySelector(`.apexcharts-yaxis-texts-g text:nth-child(${f+1})`);c=h?parseFloat((i=h.getAttribute("y"))!=null?i:"0"):(a.layout.gridHeight/d.length-1)*(f+1)-a.globals.barHeight,n.seriesIndex!==void 0&&a.globals.barHeight&&(c-=a.globals.barHeight/2*(a.seriesData.series.length-1)-a.globals.barHeight*n.seriesIndex)}else{if(!a.config.yaxis[n.yAxisIndex])return{yP:0,clipped:!0};const d=a.globals.seriesYAxisMap[n.yAxisIndex],f=(o=d==null?void 0:d[0])!=null?o:null;if(f===null&&a.seriesData.series.length)return{yP:0,clipped:!0};const h=f===null?a.globals.minY:a.globals.minYArr[f],p=f===null?a.globals.maxY-a.globals.minY:a.globals.yRange[f],g=a.config.yaxis[n.yAxisIndex].logarithmic&&f!==null?new No(this.w).getLogVal(a.config.yaxis[n.yAxisIndex].logBase,s,f)/a.globals.yLogRatio[f]:(s-h)/(p/a.layout.gridHeight);c=a.layout.gridHeight-Math.min(Math.max(g,0),a.layout.gridHeight),u=g>a.layout.gridHeight||g<0,n.marker&&(n.y===void 0||n.y===null)&&(c=0),(r=a.config.yaxis[n.yAxisIndex])!=null&&r.reversed&&(c=g)}return l&&(c=parseFloat(s)),{yP:c,clipped:u}}getX1X2(e,n){const i=this.w,o=e==="x1"?n.x:n.x2,r=this.annoCtx.invertAxis?i.globals.minY:i.globals.minX,a=this.annoCtx.invertAxis?i.globals.maxY:i.globals.maxX,s=this.annoCtx.invertAxis?i.globals.yRange[0]:i.globals.xRange;let l=!1;const c=typeof o=="string"&&o.includes("px"),u=o==null&&n.marker;if(!c&&!u&&!this.hasXDomain())return{x:0,clipped:!0};let d=this.annoCtx.inversedReversedAxis?(a-o)/(s/i.layout.gridWidth):(o-r)/(s/i.layout.gridWidth);return(i.config.xaxis.type==="category"||i.config.xaxis.convertedCatToNumeric)&&!this.annoCtx.invertAxis&&!i.axisFlags.dataFormatXNumeric&&(i.config.chart.sparkline.enabled||(d=this.getStringX(o))),typeof o=="string"&&o.includes("px")&&(d=parseFloat(o)),o==null&&n.marker&&(d=i.layout.gridWidth),n.seriesIndex!==void 0&&i.globals.barWidth&&!this.annoCtx.invertAxis&&(d-=i.globals.barWidth/2*(i.seriesData.series.length-1)-i.globals.barWidth*n.seriesIndex),typeof d!="number"&&(d=0,l=!0),parseFloat(d.toFixed(10))>parseFloat(i.layout.gridWidth.toFixed(10))?(d=i.layout.gridWidth,l=!0):d<0&&(d=0,l=!0),{x:d,clipped:l}}getStringX(e){var n;const i=this.w;let o=e;if(i.config.xaxis.convertedCatToNumeric&&i.labelData.categoryLabels.length){const s=String(e);e=i.labelData.categoryLabels.findIndex(l=>String(l)===s)+1}const r=i.labelData.labels.map(s=>Array.isArray(s)?s.join(" "):s).indexOf(e),a=i.dom.baseEl.querySelector(`.apexcharts-xaxis-texts-g text:nth-child(${r+1})`);return a&&(o=parseFloat((n=a.getAttribute("x"))!=null?n:"0")),o}};class x1e{constructor(e){this.w=e.w,this.annoCtx=e,this.invertAxis=this.annoCtx.invertAxis,this.helpers=new Pv(this.annoCtx)}addXaxisAnnotation(e,n,i){const o=this.w,r=this.helpers.getX1X2("x1",e);let a=r.x;const s=r.clipped;let l=!0,c;const u=e.label.text,d=e.strokeDashArray;if(Ee.isNumber(a)){if(e.x2===null||typeof e.x2>"u"){if(!s){const f=this.annoCtx.graphics.drawLine(a+e.offsetX,0+e.offsetY,a+e.offsetX,o.layout.gridHeight+e.offsetY,e.borderColor,d,e.borderWidth);n.appendChild(f.node),e.id&&f.node.classList.add(e.id),Ms(f,a+e.offsetX,o)}}else{const f=this.helpers.getX1X2("x2",e);if(c=f.x,l=f.clipped,c{this.addXaxisAnnotation(i,n.node,o)}),n}}class w1e{constructor(e){this.w=e.w,this.annoCtx=e,this.helpers=new Pv(this.annoCtx),this.axesUtils=new d$(this.annoCtx.w,{theme:this.annoCtx.theme,timeScale:this.annoCtx.timeScale})}addYaxisAnnotation(e,n,i){const o=this.w,r=e.strokeDashArray;let a=this.helpers.getY1Y2("y1",e),s=a.yP;const l=a.clipped;let c,u=!0,d=!1;const f=e.label.text;if(e.y2===null||typeof e.y2>"u"){if(!l){d=!0;const h=this.annoCtx.graphics.drawLine(0+e.offsetX,s+e.offsetY,this._getYAxisAnnotationWidth(e),s+e.offsetY,e.borderColor,r,e.borderWidth);n.appendChild(h.node),e.id&&h.node.classList.add(e.id)}}else{if(a=this.helpers.getY1Y2("y2",e),c=a.yP,u=a.clipped,c>s){const h=s;s=c,c=h}if(!(l&&u)){d=!0;const h=this.annoCtx.graphics.drawRect(0+e.offsetX,c+e.offsetY,this._getYAxisAnnotationWidth(e),s-c,0,e.fillColor,e.opacity,1,e.borderColor,r);h.node.classList.add("apexcharts-annotation-rect"),h.attr("clip-path",`url(#gridRectMask${o.globals.cuid})`),n.appendChild(h.node),e.id&&h.node.classList.add(e.id)}}if(d){const h=e.label.position==="right"?o.layout.gridWidth:e.label.position==="center"?o.layout.gridWidth/2:0,p=this.annoCtx.graphics.drawText({x:h+e.label.offsetX,y:(c??s)+e.label.offsetY-3,text:f,textAnchor:e.label.textAnchor,fontSize:e.label.style.fontSize,fontFamily:e.label.style.fontFamily,fontWeight:e.label.style.fontWeight,foreColor:e.label.style.color,cssClass:`apexcharts-yaxis-annotation-label ${e.label.style.cssClass} ${e.id?e.id:""}`});p.attr({rel:i}),n.appendChild(p.node)}}_getYAxisAnnotationWidth(e){const n=this.w;let i=n.layout.gridWidth;return e.width.indexOf("%")>-1?i=n.layout.gridWidth*parseInt(e.width,10)/100:i=parseInt(e.width,10),i+e.offsetX}drawYAxisAnnotations(){const e=this.w,n=this.annoCtx.graphics.group({class:"apexcharts-yaxis-annotations"});return e.config.annotations.yaxis.forEach((i,o)=>{i.yAxisIndex=this.axesUtils.translateYAxisIndex(i.yAxisIndex),this.axesUtils.isYAxisHidden(i.yAxisIndex)&&this.axesUtils.yAxisAllSeriesCollapsed(i.yAxisIndex)||this.addYaxisAnnotation(i,n.node,o)}),n}}class S1e{constructor(e){this.w=e.w,this.annoCtx=e,this.helpers=new Pv(this.annoCtx)}addPointAnnotation(e,n,i){const o=this.w;if(o.globals.collapsedSeriesIndices.indexOf(e.seriesIndex)>-1)return;const r=this.helpers.getX1X2("x1",e),a=r.x,s=r.clipped,l=this.helpers.getY1Y2("y1",e),c=l.yP,u=l.clipped;if(Ee.isNumber(a)&&!(u||s)){const d={pSize:e.marker.size,pointStrokeWidth:e.marker.strokeWidth,pointFillColor:e.marker.fillColor,pointStrokeColor:e.marker.strokeColor,shape:e.marker.shape,pRadius:e.marker.radius,class:`apexcharts-point-annotation-marker ${e.marker.cssClass} ${e.id?e.id:""}`};let f=this.annoCtx.graphics.drawMarker(a+e.marker.offsetX,c+e.marker.offsetY,d);n.appendChild(f.node);const h=[f.node];Ms(f,a,o);const p=e.label.text?e.label.text:"",g=this.getConstrainedLabelX(p,a+e.label.offsetX,e.label),m=this.annoCtx.graphics.drawText({x:g,y:c+e.label.offsetY-e.marker.size-parseFloat(e.label.style.fontSize)/1.6,text:p,textAnchor:e.label.textAnchor,fontSize:e.label.style.fontSize,fontFamily:e.label.style.fontFamily,fontWeight:e.label.style.fontWeight,foreColor:e.label.style.color,cssClass:`apexcharts-point-annotation-label ${e.label.style.cssClass} ${e.id?e.id:""}`});if(m.attr({rel:i}),n.appendChild(m.node),Ms(m,a,o),e.customSVG.SVG){const v=this.annoCtx.graphics.group({class:"apexcharts-point-annotations-custom-svg "+e.customSVG.cssClass});v.attr({transform:`translate(${a+e.customSVG.offsetX}, ${c+e.customSVG.offsetY})`}),v.node.innerHTML=e.customSVG.SVG,n.appendChild(v.node),h.push(v.node)}if(e.image.path){const v=e.image.width?e.image.width:20,b=e.image.height?e.image.height:20;f=this.annoCtx.addImage({x:a+e.image.offsetX-v/2,y:c+e.image.offsetY-b/2,width:v,height:b,path:e.image.path,appendTo:".apexcharts-point-annotations"}),h.push(f.node)}e.tooltip&&e.tooltip.enabled&&h.forEach(v=>{v.addEventListener("mouseenter",()=>{this.showPointTooltip(e,v)}),v.addEventListener("mouseleave",()=>{this.hidePointTooltip()})}),e.mouseEnter&&f.node.addEventListener("mouseenter",e.mouseEnter.bind(this,e)),e.mouseLeave&&f.node.addEventListener("mouseleave",e.mouseLeave.bind(this,e)),e.click&&f.node.addEventListener("click",e.click.bind(this,e))}}getConstrainedLabelX(e,n,i){const o=this.w;if(!e)return n;const{width:r}=this.annoCtx.graphics.getTextRects(e,i.style.fontSize,i.style.fontFamily,void 0,!0,i.style.fontWeight);let a,s;switch(i.textAnchor){case"start":a=n,s=n+r;break;case"end":a=n-r,s=n;break;default:a=n-r/2,s=n+r/2}const l=i.style.padding||{};return a-=l.left||0,s+=l.right||0,a<0?n-a:s>o.layout.gridWidth?n-(s-o.layout.gridWidth):n}getPointTooltipEl(){const e=this.w;let n=e.dom.elWrap.querySelector(".apexcharts-annotation-tooltip");return n||(n=We.createElementNS("http://www.w3.org/1999/xhtml","div"),n.classList.add("apexcharts-tooltip","apexcharts-annotation-tooltip"),e.dom.elWrap.appendChild(n)),n}getPointTooltipContent(e){const n=this.w,i=e.tooltip||{};if(typeof i.formatter=="function")return i.formatter({annotation:e,seriesIndex:e.seriesIndex,id:e.id,w:n});let o=i.text!=null?i.text:e.label&&e.label.text;return Array.isArray(o)&&(o=o.join("
")),o==null?"":String(o)}showPointTooltip(e,n){const i=this.w,o=this.getPointTooltipContent(e);if(!o)return;const r=this.getPointTooltipEl();r.innerHTML=o;const a=e.tooltip.theme||i.config.tooltip.theme||"light";r.classList.remove("apexcharts-theme-light","apexcharts-theme-dark"),r.classList.add(`apexcharts-theme-${a}`),r.classList.add("apexcharts-active");const s=i.dom.elWrap.getBoundingClientRect(),l=n.getBoundingClientRect(),c=r.getBoundingClientRect(),u=e.tooltip.offsetX||0,d=e.tooltip.offsetY||0;let f=l.left-s.left+l.width/2-c.width/2,h=l.top-s.top-c.height-10;f=Math.max(0,Math.min(f,s.width-c.width)),h<0&&(h=l.top-s.top+l.height+10),r.style.left=f+u+"px",r.style.top=h+d+"px"}hidePointTooltip(){const e=this.w.dom.elWrap.querySelector(".apexcharts-annotation-tooltip");e&&e.classList.remove("apexcharts-active")}drawPointAnnotations(){const e=this.w,n=this.annoCtx.graphics.group({class:"apexcharts-point-annotations"});return e.config.annotations.points.map((i,o)=>{this.addPointAnnotation(i,n.node,o)}),n}}class C1e{constructor(e,{theme:n=null,timeScale:i=null}={}){this.w=e,this.theme=n,this.timeScale=i,this.invertAxis=void 0,this.inversedReversedAxis=void 0,this.graphics=new Be(this.w),this.w.globals.isBarHorizontal&&(this.invertAxis=!0),this.helpers=new Pv(this),this.xAxisAnnotations=new x1e(this),this.yAxisAnnotations=new w1e(this),this.pointsAnnotations=new S1e(this),this.w.globals.isBarHorizontal&&this.w.config.yaxis[0].reversed&&(this.inversedReversedAxis=!0),this.xDivision=this.w.layout.gridWidth/this.w.globals.dataPoints}drawAxesAnnotations(){const e=this.w;if(e.globals.axisCharts){const n=this.yAxisAnnotations.drawYAxisAnnotations(),i=this.xAxisAnnotations.drawXAxisAnnotations(),o=this.pointsAnnotations.drawPointAnnotations(),r=e.config.chart.animations.enabled,a=[n,i,o],s=[i.node,n.node,o.node],l=e.config.chart.type==="line"||e.config.chart.type==="area"||e.config.chart.type==="rangeArea",c=[l,!1,l];for(let u=0;u<3;u++)e.dom.elGraphical.add(a[u]),r&&!e.globals.resized&&!e.globals.dataChanged&&e.config.chart.type!=="scatter"&&e.config.chart.type!=="bubble"&&e.globals.dataPoints>1&&!c[u]&&s[u].classList.add("apexcharts-element-hidden"),e.globals.delayedElements.push({el:s[u],index:0});this.helpers.annotationsBackground()}}drawImageAnnos(){this.w.config.annotations.images.map(n=>{this.addImage(n)})}drawTextAnnos(){this.w.config.annotations.texts.map(n=>{this.addText(n)})}addXaxisAnnotation(e,n,i){this.xAxisAnnotations.addXaxisAnnotation(e,n,i)}addYaxisAnnotation(e,n,i){this.yAxisAnnotations.addYaxisAnnotation(e,n,i)}addPointAnnotation(e,n,i){this.pointsAnnotations.addPointAnnotation(e,n,i)}addText(e){const{x:n,y:i,text:o,textAnchor:r,foreColor:a,fontSize:s,fontFamily:l,fontWeight:c,cssClass:u,backgroundColor:d,borderWidth:f,strokeDashArray:h,borderRadius:p,borderColor:g,appendTo:m=".apexcharts-svg",paddingLeft:v=4,paddingRight:b=4,paddingBottom:y=2,paddingTop:w=2}=e,x=this.w,$=this.graphics.drawText({x:n,y:i,text:o,textAnchor:r||"start",fontSize:s||"12px",fontWeight:c||"regular",fontFamily:l||x.config.chart.fontFamily,foreColor:a||x.config.chart.foreColor,cssClass:"apexcharts-text "+u?u:""}),S=x.dom.baseEl.querySelector(m);S&&S.appendChild($.node);const _=$.bbox();if(o){const P=this.graphics.drawRect(_.x-v,_.y-w,_.width+v+b,_.height+y+w,p,d||"transparent",1,f,g,h);S.insertBefore(P.node,$.node)}}addImage(e){const n=this.w,{path:i,x:o=0,y:r=0,width:a=20,height:s=20,appendTo:l=".apexcharts-svg"}=e,c=n.dom.Paper.image(i);c.size(a,s).move(o,r);const u=n.dom.baseEl.querySelector(l);return u&&u.appendChild(c.node),c}addXaxisAnnotationExternal(e,n,i){return this.addAnnotationExternal({params:e,pushToMemory:n,context:i,type:"xaxis",contextMethod:i.addXaxisAnnotation}),i}addYaxisAnnotationExternal(e,n,i){return this.addAnnotationExternal({params:e,pushToMemory:n,context:i,type:"yaxis",contextMethod:i.addYaxisAnnotation}),i}addPointAnnotationExternal(e,n,i){return typeof this.invertAxis>"u"&&(this.invertAxis=i.w.globals.isBarHorizontal),this.addAnnotationExternal({params:e,pushToMemory:n,context:i,type:"point",contextMethod:i.addPointAnnotation}),i}addAnnotationExternal({params:e,pushToMemory:n,context:i,type:o,contextMethod:r}){const a=i,s=a.w,l=s.dom.baseEl.querySelector(`.apexcharts-${o}-annotations`),c=l.childNodes.length+1,u=new bN,d=Object.assign({},o==="xaxis"?u.xAxisAnnotation:o==="yaxis"?u.yAxisAnnotation:u.pointAnnotation),f=Ee.extend(d,e);switch(o){case"xaxis":this.addXaxisAnnotation(f,l,c);break;case"yaxis":this.addYaxisAnnotation(f,l,c);break;case"point":this.addPointAnnotation(f,l,c);break}const h=s.dom.baseEl.querySelector(`.apexcharts-${o}-annotations .apexcharts-${o}-annotation-label[rel='${c}']`),p=this.helpers.addBackgroundToAnno(h,f);return p&&l.insertBefore(p.node,h),n&&s.globals.memory.methodsToExec.push({context:a,id:f.id?f.id:Ee.randomId(),method:r,label:"addAnnotation",params:e}),i}_removeAnnotationTooltip(e){const n=e.dom.elWrap&&e.dom.elWrap.querySelector(".apexcharts-annotation-tooltip");n&&n.parentNode&&n.parentNode.removeChild(n)}clearAnnotations(e){const n=e.w;this._removeAnnotationTooltip(n);const i=n.dom.baseEl.querySelectorAll(".apexcharts-yaxis-annotations, .apexcharts-xaxis-annotations, .apexcharts-point-annotations");for(let o=n.globals.memory.methodsToExec.length-1;o>=0;o--)(n.globals.memory.methodsToExec[o].label==="addText"||n.globals.memory.methodsToExec[o].label==="addAnnotation")&&n.globals.memory.methodsToExec.splice(o,1);Array.prototype.forEach.call(i,o=>{for(;o.firstChild;)o.removeChild(o.firstChild)})}removeAnnotation(e,n){const i=e.w;this._removeAnnotationTooltip(i);const o=i.dom.baseEl.querySelectorAll(`.${n}`);o&&(i.globals.memory.methodsToExec.map((r,a)=>{r.id===n&&i.globals.memory.methodsToExec.splice(a,1)}),Object.keys(i.config.annotations).forEach(r=>{const a=i.config.annotations[r];Array.isArray(a)&&(i.config.annotations[r]=a.filter(s=>s.id!==n))}),Array.prototype.forEach.call(o,r=>{r.parentElement.removeChild(r)}))}}Vn.registerFeatures({annotations:C1e});class $1e{constructor(e,n){this.w=e,this.ctx=n,this.seriesIndex=0,this.dataPointIndex=0,this.active=!1,this._tooltipDismissed=!1,this._focusedEl=null,this._hoveredBarEl=null,this._enlargedScatterMarker=null,this._onKeyDown=this._onKeyDown.bind(this),this._onFocus=this._onFocus.bind(this),this._onBlur=this._onBlur.bind(this),this._onLegendClick=this._onLegendClick.bind(this),this._onPointerDown=this._onPointerDown.bind(this),this._lastPointerDownAt=0}init(){const n=this.w.dom.Paper.node;n&&(n.setAttribute("tabindex","0"),n.addEventListener("focus",this._onFocus),n.addEventListener("blur",this._onBlur),n.addEventListener("mousedown",this._onPointerDown,{capture:!0}),n.addEventListener("pointerdown",this._onPointerDown,{capture:!0}),n.addEventListener("touchstart",this._onPointerDown,{capture:!0,passive:!0}),n.addEventListener("keydown",this._onKeyDown,{passive:!1}),this.ctx.events.addEventListener("legendClick",this._onLegendClick))}destroy(){const e=this.w,n=e.dom.Paper&&e.dom.Paper.node;this.ctx.events.removeEventListener("legendClick",this._onLegendClick),n&&(n.removeEventListener("focus",this._onFocus),n.removeEventListener("blur",this._onBlur),n.removeEventListener("keydown",this._onKeyDown),n.removeEventListener("mousedown",this._onPointerDown,{capture:!0}),n.removeEventListener("pointerdown",this._onPointerDown,{capture:!0}),n.removeEventListener("touchstart",this._onPointerDown,{capture:!0}))}_onPointerDown(){this._lastPointerDownAt=Date.now()}notePointerFocus(){this._lastPointerDownAt=Date.now()}handleKey(e){}_onFocus(){this._isNavEnabled()&&(Date.now()-this._lastPointerDownAt<100||(this.active=!0,this._clampCursor(),this._snapToVisibleRange(),this._showCurrentPoint()))}_onBlur(){this.active=!1,this._tooltipDismissed=!1,this._hideFocus()}_onLegendClick(){this.active&&(this.active=!1,this._hideFocus())}_onKeyDown(e){var n,i,o;if(!(!this._isNavEnabled()||!this.active)){if(e.shiftKey&&(e.key==="ArrowRight"||e.key==="ArrowLeft")&&this._canPan()){e.preventDefault(),this._panBy(e.key==="ArrowRight"?1:-1);return}switch(e.key){case"ArrowRight":e.preventDefault(),this._move(0,1);break;case"ArrowLeft":e.preventDefault(),this._move(0,-1);break;case"ArrowUp":e.preventDefault(),this._move(-1,0);break;case"ArrowDown":e.preventDefault(),this._move(1,0);break;case"Home":e.preventDefault(),this.dataPointIndex=0,this._skipNullForward(),this._showCurrentPoint();break;case"End":e.preventDefault(),this.dataPointIndex=this._getDataPointCount(this.seriesIndex)-1,this._skipNullBackward(),this._showCurrentPoint();break;case"Enter":case" ":e.preventDefault(),this._fireClick();break;case"+":case"=":this._canZoom()&&(e.preventDefault(),(n=this.ctx.toolbar)==null||n.handleZoomIn(),this._announce("Zoomed in"));break;case"-":case"_":this._canZoom()&&(e.preventDefault(),(i=this.ctx.toolbar)==null||i.handleZoomOut(),this._announce("Zoomed out"));break;case"0":this._canZoom()&&this.w.interact.zoomed&&(e.preventDefault(),(o=this.ctx.toolbar)==null||o.handleZoomReset(),this._announce("Zoom reset"));break;case"Escape":e.preventDefault(),this._tooltipDismissed?(this.active=!1,this._tooltipDismissed=!1,this._hideFocus()):(this._tooltipDismissed=!0,this._hideFocus());break}}}_canZoom(){const e=this.w;return!!(e.globals.axisCharts&&e.config.chart.zoom&&e.config.chart.zoom.enabled)}_canPan(){return this._canZoom()}_panBy(e){const n=this.w,i=this.ctx.toolbar;if(!i)return;const o=Number(n.globals.minX),r=Number(n.globals.maxX);if(!isFinite(o)||!isFinite(r)||o===r)return;const s=(r-o)*.1*e;i.zoomUpdateOptions(o+s,r+s),this._announce(e>0?"Panned right":"Panned left")}_move(e,n){const i=this.w,o=i.config.chart.accessibility.keyboard.navigation.wrapAround;if(e!==0){const r=this.w.globals.tooltip;if(r&&r.tConfig&&r.tConfig.shared){const u=this.dataPointIndex;if(r.tooltipUtil&&r.tooltipUtil.isXoverlap(u)&&r.tooltipUtil.isInitialSeriesSameLen())return}const a=this._getSeriesCount();let s=this.seriesIndex+e,l=0;for(;l=a&&(s=o?0:a-1),!!i.globals.collapsedSeriesIndices.includes(s));)s+=e,l++;this.seriesIndex=s;const c=this._getDataPointCount(s);this.dataPointIndex>=c&&(this.dataPointIndex=c-1)}if(n!==0){const r=this._getDataPointCount(this.seriesIndex);let a=this.dataPointIndex+n;a<0&&(a=o?r-1:0),a>=r&&(a=o?0:r-1),this.dataPointIndex=a,n>0?this._skipNullForward():this._skipNullBackward(),this._isDataPointVisible(this.seriesIndex,this.dataPointIndex)||this._snapToVisibleRangeInDirection(n)}this._showCurrentPoint()}_skipNullForward(){const e=this.w,n=this.seriesIndex,i=this._getDataPointCount(n);let o=this.dataPointIndex,r=0;if(Array.isArray(e.seriesData.series[n])){for(;r0&&!o.globals.markers.batched;l?this._showScatterBubblePoint(e,n,i):c?s?i.marker.enlargePoints(n):i.tooltipPosition.moveDynamicPointOnHover(n,e):s?i.tooltipPosition.moveDynamicPointsOnHover(n):i.tooltipPosition.moveDynamicPointOnHover(n,e)}_showScatterBubblePoint(e,n,i){const o=this.w.dom.baseEl;this._enlargedScatterMarker&&(i.marker.oldPointSize(this._enlargedScatterMarker),this._enlargedScatterMarker=null);const r=o.querySelector(`.apexcharts-series[data\\:realIndex='${e}']`);if(!r)return;const a=r.querySelector(`.apexcharts-marker[rel='${n}']`);a&&(i.marker.enlargeCurrentPoint(n,a),this._enlargedScatterMarker=a)}_showTooltipNonAxis(e,n,i,o){const r=this.w;i.tooltipLabels.drawSeriesTexts({ttItems:i.ttItems,i:n,shared:!1});const a=o.getBoundingClientRect(),s=a.width||i.tooltipRect.ttWidth||0,l=a.height||i.tooltipRect.ttHeight||0,c=r.dom.baseEl.querySelector(`.apexcharts-pie-area[j='${n}']`),u=i.getSliceAnchor(c);u&&(o.style.left=u.x-s/2+"px",o.style.top=u.y-l-10+"px")}_showTooltipRadialBar(e,n,i,o){var r;const a=this.w;i.tooltipLabels.drawSeriesTexts({ttItems:i.ttItems,i:e,shared:!1});const{ttWidth:s=0,ttHeight:l=0}=i.getCachedDimensions(),c=a.dom.baseEl.querySelector(`.apexcharts-radialbar-series[data\\:realIndex='${e}'] path`);if(c){const u=parseFloat((r=c.getAttribute("data:angle"))!=null?r:"")||0,f=(a.config.plotOptions.radialBar.startAngle||0)+u/2,h=a.layout.gridWidth/2,p=a.layout.gridHeight/2,g=a.globals.radialSize||Math.min(a.layout.gridWidth,a.layout.gridHeight)/2,m=a.seriesData.series.length,v=g/Math.max(m,1),b=g-e*v,y=b-v,w=(b+y)/2,x=Ee.polarToCartesian(h,p,w,f),$=x.x+(a.layout.translateX||0),S=x.y+(a.layout.translateY||0);o.style.left=$-s/2+"px",o.style.top=S-l-10+"px"}}_showTooltipHeatTree(e,n,i,o,r){var a,s;const l=this.w;i.tooltipLabels.drawSeriesTexts({ttItems:i.ttItems,i:e,j:n,shared:!1});const c=o.getBoundingClientRect(),u=c.width||i.tooltipRect.ttWidth||0,d=c.height||i.tooltipRect.ttHeight||0,f=r==="heatmap"?"apexcharts-heatmap-rect":"apexcharts-treemap-rect",h=l.dom.baseEl.querySelector(`.${f}[i='${e}'][j='${n}']`);if(h){const p=l.dom.elWrap.getBoundingClientRect(),g=h.getBoundingClientRect(),m=g.left-p.left,v=g.top-p.top,b=g.width,y=g.height,w=parseFloat((a=h.getAttribute("cx"))!=null?a:""),x=parseFloat((s=h.getAttribute("width"))!=null?s:"");i.tooltipPosition.moveXCrosshairs(w+x/2);let $=m+b+u/2;const S=v+y/2-d/2;m+b>l.layout.gridWidth/2&&($=m-u/2),o.style.left=$+"px",o.style.top=S+"px"}}_applyFocusClass(e,n){this._removeFocusClass();const i=this._getFocusableElement(e,n)||this._getBatchedFocusEl(e);if(i){i.classList.add("apexcharts-keyboard-focused"),i.setAttribute("role","img");const o=this._buildPointLabel(e,n);o&&i.setAttribute("aria-label",o),this._focusedEl=i}}_getBatchedFocusEl(e){return this.w.globals.markers.batched?this.w.dom.baseEl.querySelector(`.apexcharts-series[data\\:realIndex='${e}'] .apexcharts-series-markers path`):null}_removeFocusClass(){this._focusedEl&&(this._focusedEl.classList.remove("apexcharts-keyboard-focused"),this._focusedEl.removeAttribute("role"),this._focusedEl.removeAttribute("aria-label"),this._focusedEl=null)}_buildPointLabel(e,n){var i,o,r,a,s,l,c,u;const d=this.w,f=d.config.chart.type,h=d.seriesData.seriesNames||[],p=d.seriesData.series||[];if(f==="pie"||f==="donut"||f==="polarArea"){const S=(o=((i=d.labelData)==null?void 0:i.labels)&&d.labelData.labels[n])!=null?o:"",_=Array.isArray(p)?p[n]:"";return S?`${S}: ${_}`:`${_}`}if(f==="radialBar"){const S=h[e]||`Series ${e+1}`,_=Array.isArray(p)?p[e]:"";return`${S}: ${_}`}const g=h[e]||`Series ${e+1}`,v=(Array.isArray(p[e])?p[e]:[])[n];let b=v==null?"":String(v);const y=(a=(r=d.formatters)==null?void 0:r.yLabelFormatters)==null?void 0:a[e];if(typeof y=="function")try{b=y(v,{seriesIndex:e,dataPointIndex:n,w:d})}catch{}let w="";const x=(s=d.labelData)==null?void 0:s.categoryLabels,$=(c=(l=d.seriesData)==null?void 0:l.seriesX)==null?void 0:c[e];if(Array.isArray(x)&&x[n]!=null)w=String(x[n]);else if(Array.isArray($)&&$[n]!=null){const S=(u=d.formatters)==null?void 0:u.xLabelFormatter;if(typeof S=="function")try{w=String(S($[n],{seriesIndex:e,dataPointIndex:n,w:d}))}catch{w=String($[n])}else w=String($[n])}return w?`${g}: ${b}, ${w}`:`${g}: ${b}`}_leaveHoveredBar(){this._hoveredBarEl&&(new Be(this.w,this.ctx).pathMouseLeave(this._hoveredBarEl,null),this._hoveredBarEl=null)}_getFocusableElement(e,n){const i=this.w,o=i.config.chart.type,r=i.dom.baseEl;return o==="pie"||o==="donut"||o==="polarArea"?r.querySelector(`.apexcharts-pie-area[j='${n}']`):o==="heatmap"?r.querySelector(`.apexcharts-heatmap-rect[i='${e}'][j='${n}']`):o==="treemap"?r.querySelector(`.apexcharts-treemap-rect[i='${e}'][j='${n}']`):o==="radialBar"?r.querySelector(`.apexcharts-radialbar-series[data\\:realIndex='${e}'] path`):o==="bar"||o==="candlestick"||o==="boxPlot"||o==="violin"||o==="rangeBar"?r.querySelector(`.apexcharts-series[data\\:realIndex='${e}'] path[j='${n}']`):r.querySelector(`.apexcharts-series[data\\:realIndex='${e}'] .apexcharts-marker[rel='${n}']`)||null}_fireClick(){const n=this.w.globals.tooltip;if(!n)return;const i={type:"mouseup",clientX:0,clientY:0};n.markerClick(i,this.seriesIndex,this.dataPointIndex)}_isNavEnabled(){const e=this.w.config.chart.accessibility;return e.enabled&&e.keyboard.enabled&&e.keyboard.navigation.enabled}_getSeriesCount(){const e=this.w,n=e.config.chart.type;return n==="pie"||n==="donut"||n==="polarArea"?1:e.seriesData.series.length}_getDataPointCount(e){const n=this.w,i=n.config.chart.type;if(i==="pie"||i==="donut"||i==="polarArea")return n.seriesData.series.length;const o=n.seriesData.series;return o[e]&&Array.isArray(o[e])?o[e].length:0}_clampCursor(){const e=this._getSeriesCount();this.seriesIndex>=e&&(this.seriesIndex=e-1),this.seriesIndex<0&&(this.seriesIndex=0);const n=this._getDataPointCount(this.seriesIndex);this.dataPointIndex>=n&&(this.dataPointIndex=n-1),this.dataPointIndex<0&&(this.dataPointIndex=0)}_snapToVisibleRange(){const e=this.w,n=e.globals,i=this.seriesIndex;if(!e.interact.zoomed)return;const o=e.seriesData.seriesX&&e.seriesData.seriesX[i];if(!o||!o.length)return;const r=n.minX,a=n.maxX;if(r===void 0||a===void 0)return;const s=o[this.dataPointIndex];if(s>=r&&s<=a)return;const l=o.length;for(let c=0;c=r&&o[c]<=a){this.dataPointIndex=c;return}}_snapToVisibleRangeInDirection(e){const n=this.w,i=n.globals,o=this.seriesIndex,r=n.seriesData.seriesX&&n.seriesData.seriesX[o];if(!r||!r.length)return;const a=i.minX,s=i.maxX;if(a===void 0||s===void 0)return;const l=r.length;if(e>=0){for(let c=0;c=a&&r[c]<=s){this.dataPointIndex=c;return}}else for(let c=l-1;c>=0;c--)if(r[c]>=a&&r[c]<=s){this.dataPointIndex=c;return}}_isDataPointVisible(e,n){const i=this.w,o=i.globals;if(!i.interact.zoomed)return!0;const r=i.seriesData.seriesX&&i.seriesData.seriesX[e];if(!r)return!0;const a=r[n];return a===void 0?!0:a>=o.minX&&a<=o.maxX}_announce(e){const n=this.w;if(!n.config.chart.accessibility.announcements.enabled)return;const i=n.dom.baseEl;if(!i)return;const o=i.querySelector(".apexcharts-sr-status");o&&(o.textContent="",setTimeout(()=>{o.textContent=e},0))}}Vn.registerFeatures({keyboardNavigation:$1e});function zE(t,e){if(!(e>0))return[];if(e===1)return[Ye({},t)];const n=t.width>=t.height,i=n?t.width:t.height,o=n?t.height:t.width,r=o>0?i/o:e;let a=Math.max(1,Math.ceil(Math.sqrt(r*e)));a>e&&(a=e);const s=Math.floor(e/a);let l=e-s*a;const c=[],u=i/a;let d=0;for(let f=0;f0?1:0);l>0&&l--;const p=h>0?o/h:0;for(let g=0;g0))return[];const i=t.width>=t.height,o=i?t.width:t.height,r=i?t.height:t.width,a=i?t.y:t.x,s=a+r,l=r>0?o/r:e;let c=Math.max(Math.ceil(Math.sqrt(l*e)),Math.ceil(o/16));c>=1||(c=1),c>e&&(c=e);const u=Math.floor(e/c);let d=e-u*c;const f=[],h=o/c;let p=i?t.x:t.y;for(let g=0;g0?1:0);d>0&&d--;const v=[],b=n(p,p+h,i);if(Array.isArray(b))for(let _=0;_T&&v.push([T,O])}v.length||v.push([a,s]);const y=v.reduce((_,P)=>_+(P[1]-P[0]),0),w=v.map(_=>y>0?(_[1]-_[0])/y*m:m/v.length),x=w.map(_=>Math.floor(_));let $=x.reduce((_,P)=>_+P,0);const S=w.map((_,P)=>({i:P,frac:_-Math.floor(_)})).sort((_,P)=>P.frac-_.frac);for(let _=0;$=1;c/=2){const u=(a&c)>0?1:0,d=(s&c)>0?1:0;if(l+=c*c*(3*u^d),d===0){u===1&&(a=c-1-a,s=c-1-s);const f=a;a=s,s=f}}return l}function gh(t,e){let n=1/0,i=1/0,o=-1/0,r=-1/0;const a=t.map(s=>{const[l,c]=e(s);return lo&&(o=l),cr&&(r=c),[l,c]});return t.map((s,l)=>({item:s,d:A1e(a[l][0],a[l][1],n,i,o,r)})).sort((s,l)=>s.d-l.d).map(s=>s.item)}function WE(t){if(!t||typeof t!="string")return null;const e=t.trim();if(e[0]==="#"){const i=e.slice(1);return i.length===3?[parseInt(i[0]+i[0],16),parseInt(i[1]+i[1],16),parseInt(i[2]+i[2],16),1]:i.length===6||i.length===8?[parseInt(i.slice(0,2),16),parseInt(i.slice(2,4),16),parseInt(i.slice(4,6),16),i.length===8?parseInt(i.slice(6,8),16)/255:1]:null}const n=e.match(/^rgba?\(([^)]+)\)$/i);if(n){const i=n[1].split(",").map(o=>parseFloat(o));return i.length<3||i.some(o=>!isFinite(o))?null:[i[0],i[1],i[2],i.length>3?i[3]:1]}return null}function jE(t,e){const n=WE(t),i=WE(e);return!n||!i?null:o=>{const r=Math.round(n[0]+(i[0]-n[0])*o),a=Math.round(n[1]+(i[1]-n[1])*o),s=Math.round(n[2]+(i[2]-n[2])*o),l=n[3]+(i[3]-n[3])*o;return l>=1?`rgb(${r},${a},${s})`:`rgba(${r},${a},${s},${l})`}}function _1e(t){return t<.5?4*t*t*t:1-Math.pow(-2*t+2,3)/2}function P1e({pieces:t,duration:e,onPieceDone:n,onAllDone:i}){let o=!1;const r=Date.now(),a=Math.max(1,e),s=(c,u)=>{const d=c.from,f=c.to,h=c.el;h.setAttribute("x",String(d.x+(f.x-d.x)*u)),h.setAttribute("y",String(d.y+(f.y-d.y)*u)),h.setAttribute("width",String(Math.max(0,d.width+(f.width-d.width)*u))),h.setAttribute("height",String(Math.max(0,d.height+(f.height-d.height)*u))),h.setAttribute("rx",String(Math.max(0,d.rx+(f.rx-d.rx)*u))),c.fill?h.setAttribute("fill",c.fill(u)):u>=1&&c.fillEnd&&h.setAttribute("fill",c.fillEnd)},l=()=>{if(o)return;const c=Date.now()-r;let u=!1;for(let d=0;d=1&&(f._done=!0,n&&n(f))}u?We.requestAnimationFrame(l):i&&i()};return We.requestAnimationFrame(l),()=>{o=!0}}const O1e=new Set(["bar","funnel","pyramid","histogram"]),T1e=new Set(["pie","donut","polarArea","radialBar","gauge"]),E1e=new Set(["unit","waffle"]),M1e=new Set(["treemap","sunburst"]),I1e=new Set(["boxPlot","violin"]),k1e=.55,P0=1500,D1e=300;function Li(t){return O1e.has(t)?"bar":T1e.has(t)?"radial":E1e.has(t)?"unit":M1e.has(t)?"partition":I1e.has(t)?"summary":null}class R1e{constructor(e,n){this.w=e,this.ctx=n,this._snapshot=null,this._ghost=null,this._pieceLayer=null,this._pieceCancel=null}canMorphTypes(e,n){if(e===n)return!1;const i=Li(e),o=Li(n);return!i||!o?!1:i==="partition"!=(o==="partition")?i!=="unit"&&o!=="unit":!0}isCompatibleSeriesShape(e,n,i){if(!Array.isArray(i)||i.length===0)return!1;const o=Li(e),r=Li(n);return r==="unit"?i.every(a=>typeof a=="number")?!0:i.every(a=>a&&typeof a=="object"&&Array.isArray(a.data)):r==="partition"?!0:r==="radial"?i.every(a=>typeof a=="number")?!0:i.length===1&&i[0]&&typeof i[0]=="object"&&Array.isArray(i[0].data):r==="bar"||r==="summary"?i.every(a=>a&&typeof a=="object"&&Array.isArray(a.data)):o!==null&&r!==null}captureBeforeDestroy({fromType:e,toType:n,newSeries:i}){if(this._snapshot=null,this._removeGhost(),this._cancelPieces(),!Ot.isBrowser())return!1;const o=this.w.config.chart.animations;if(!o||o.enabled===!1||o.chartTypeMorph&&o.chartTypeMorph.enabled===!1||o.respectReducedMotion&&u$()||!this.canMorphTypes(e,n)||!this.isCompatibleSeriesShape(e,n,i))return!1;const{marks:r,branches:a,unitDots:s}=this._captureFromDOM(e);if(!r.length)return!1;const l=this._buildMapping(r,e,n,i,a);if(l.size===0)return!1;this._snapshot={fromType:e,toType:n,mapping:l,oldLayout:{translateX:this.w.layout.translateX||0,translateY:this.w.layout.translateY||0}};const c=Li(e),u=Li(n),d=this._canProbePaths();if(u==="unit"&&(c==="bar"||c==="summary"||c==="radial"&&d)){const h=this._countUnitSeries(i);this._snapshot.pieceOut=h>0&&h<=P0}else if(c==="unit"&&(u==="bar"||u==="summary"||u==="radial"&&d)){let h=0;if(s.forEach(p=>{h+=p.length}),h>0&&h<=P0){this._snapshot.pieceIn=!0,this._snapshot.sourceDots=s;const p=[];u==="radial"?(Array.isArray(i)?i:[]).forEach((g,m)=>{p.push(`${m}:0`)}):(Array.isArray(i)?i:[]).forEach((g,m)=>{const v=g&&Array.isArray(g.data)?g.data:[];for(let b=0;b{r.querySelectorAll(s).forEach(l=>{l.parentNode&&l.parentNode.removeChild(l)})}),typeof r.querySelectorAll=="function"&&r.querySelectorAll("[id]").forEach(s=>{s.removeAttribute("id")}),(n=r.removeAttribute)==null||n.call(r,"id"),this._ghost=r}_mountGhost(){var e,n,i;const o=this._ghost;if(!o||!Ot.isBrowser())return;const r=(e=this.w.dom)==null?void 0:e.elWrap;if(!r||typeof r.appendChild!="function"){this._ghost=null;return}const a=o.style;a&&(a.position="absolute",a.left="0",a.top="0",a.background="transparent",a.pointerEvents="none",a.opacity="1"),(n=o.setAttribute)==null||n.call(o,"aria-hidden","true"),(i=o.setAttribute)==null||i.call(o,"class","apexcharts-morph-ghost"),r.appendChild(o);const s=this.getSpeed(),l=Math.max(120,Math.round(s*k1e));We.requestAnimationFrame(()=>{a&&(a.transition=`opacity ${l}ms ease-in`,a.opacity="0")}),setTimeout(()=>this._removeGhost(),l+60)}_removeGhost(){const e=this._ghost;this._ghost=null,e&&e.parentNode&&e.parentNode.removeChild(e)}_countUnitSeries(e){if(!Array.isArray(e))return 0;let n=0;for(const i of e){if(!i||typeof i!="object"||!Array.isArray(i.data))return 0;n+=i.data.length}return n}usesPieceTakeover(){return!!(this._snapshot&&this._snapshot.pieceOut)}claimsTargetMark(e,n){return!!(this._snapshot&&this._snapshot.pieceIn&&this._snapshot.mapping.has(`${e}:${n}`))}_makePieceLayer(){var e,n;const i=(e=this.w.dom)==null?void 0:e.elGraphical,o=i&&i.node;if(!o||typeof o.appendChild!="function")return null;const r=We.createElementNS("http://www.w3.org/2000/svg","g");if(!r)return null;r.setAttribute("class","apexcharts-morph-pieces"),r.setAttribute("pointer-events","none");const a=(n=this.w.globals)==null?void 0:n.cuid;return a&&r.setAttribute("clip-path",`url(#gridRectBarMask${a})`),o.appendChild(r),this._pieceLayer=r,r}_revealPieceHidden(){var e;const n=(e=this.w.globals.dom)==null?void 0:e.baseEl;!n||typeof n.querySelectorAll!="function"||n.querySelectorAll("[data-piece-hidden]").forEach(i=>{i.removeAttribute("opacity"),i.removeAttribute("data-piece-hidden")})}_cancelPieces(){this._pieceCancel&&(this._pieceCancel(),this._pieceCancel=null);const e=this._pieceLayer;this._pieceLayer=null,e&&e.parentNode&&e.parentNode.removeChild(e),this._revealPieceHidden()}_canProbePaths(){if(!Ot.isBrowser())return!1;const e=We.createElementNS("http://www.w3.org/2000/svg","path");return!!e&&typeof e.isPointInFill=="function"}_makeExtentProber(e,n,i){const r=i.ownerDocument.createElementNS("http://www.w3.org/2000/svg","path");r.setAttribute("d",e),r.setAttribute("fill","#000"),r.setAttribute("stroke","#000"),r.setAttribute("stroke-width","3"),r.setAttribute("visibility","hidden"),i.appendChild(r);const a=r.ownerSVGElement;if(typeof r.isPointInFill!="function"||!a||typeof a.createSVGPoint!="function")return i.removeChild(r),null;const s=a.createSVGPoint(),l=(d,f)=>{s.x=d,s.y=f;const h=r;return h.isPointInFill(s)||typeof h.isPointInStroke=="function"&&h.isPointInStroke(s)},c=48;return{intervalsAt:(d,f,h)=>{const p=h?n.y:n.x,g=p+(h?n.height:n.width);if(!(g>p))return null;const m=(_,P)=>h?l(P,_):l(_,P),v=[d+(f-d)*.1,(d+f)/2,f-(f-d)*.1],b=(_,P,T)=>{let O=P,M=_;for(let I=0;I<6;I++){const k=(O+M)/2;m(k,T)?M=k:O=k}return(O+M)/2},y=(g-p)/c,w=new Array(c+1).fill(null);let x=!1;for(const _ of v)for(let P=0;P<=c;P++)w[P]===null&&m(p+P*y,_)&&(w[P]=_,x=!0);if(!x)return null;const $=[];let S=-1;for(let _=0;_<=c+1;_++){const P=_<=c&&w[_]!==null;if(P&&S<0&&(S=_),!P&&S>=0){const T=_-1,O=w[S],M=S===0?p:b(p+S*y,p+(S-1)*y,O),I=T===c?g:b(p+T*y,p+(T+1)*y,w[T]);I>M&&$.push([M,I]),S=-1}}return $.length?$:null},dispose:()=>{r.parentNode&&r.parentNode.removeChild(r)}}}_separatePieces(){var e;const n=this._snapshot,i=(e=this.w.globals.dom)==null?void 0:e.baseEl;if(!n||!i)return this._revealPieceHidden();const o=new Map;let r=0;if(i.querySelectorAll(".apexcharts-unit-area").forEach(d=>{var f,h,p,g,m,v,b;const y=parseInt((f=d.getAttribute("i"))!=null?f:"",10);if(isNaN(y))return;const w=d.getAttribute("cx");let x,$,S=3;if(w!=null)x=parseFloat(w),$=parseFloat((h=d.getAttribute("cy"))!=null?h:""),S=parseFloat((p=d.getAttribute("r"))!=null?p:"3")||3;else{const P=parseFloat((g=d.getAttribute("width"))!=null?g:"0")||0,T=parseFloat((m=d.getAttribute("height"))!=null?m:"0")||0;x=parseFloat((v=d.getAttribute("x"))!=null?v:"")+P/2,$=parseFloat((b=d.getAttribute("y"))!=null?b:"")+T/2,S=Math.max(P,T)/2||3}if(!isFinite(x)||!isFinite($))return;let _=o.get(y);_||(_=[],o.set(y,_)),_.push({el:d,x,y:$,r:S,fill:d.getAttribute("fill")}),r++}),r===0||r>P0)return this._revealPieceHidden();const a=this._makePieceLayer();if(!a)return this._revealPieceHidden();const s=[],l=a.ownerDocument,c=Li(n.fromType),u=c==="summary"||c==="radial";if(Array.from(o.keys()).sort((d,f)=>d-f).forEach(d=>{var f;const h=o.get(d),p=this.getInitialBBoxFor(d),g=n.mapping.get(`${d}:0`);if(!p||!g){h.forEach(x=>{x.el.removeAttribute("opacity"),x.el.removeAttribute("data-piece-hidden")});return}const m=g.fill&&g.fill.indexOf("url(")!==0?g.fill:((f=this.w.globals.colors)==null?void 0:f[d])||h[0].fill;let v=null;if(u){const x=this.getInitialPathFor(d,0);x&&(v=this._makeExtentProber(x,p,a))}const b=v?HE(p,h.length,v.intervalsAt):zE(p,h.length);v&&v.dispose();const y=gh(b,x=>[x.x+x.width/2,x.y+x.height/2]),w=gh(h,x=>[x.x,x.y]);for(let x=0;x{const f=d.meta.dotEl;f.removeAttribute("opacity"),f.removeAttribute("data-piece-hidden"),d.el.parentNode&&d.el.parentNode.removeChild(d.el)})}_combinePieces(){var e,n;const i=this._snapshot,o=(e=this.w.globals.dom)==null?void 0:e.baseEl;if(!i||!i.sourceDots||!i.keyOrder||!o)return this._revealPieceHidden();const r=this._collectTargetMarks(i.toType);if(!r.size)return this._revealPieceHidden();const a=i.oldLayout.translateX-(this.w.layout.translateX||0),s=i.oldLayout.translateY-(this.w.layout.translateY||0),l=Array.from(i.sourceDots.keys()).sort((p,g)=>p-g),c=this._makePieceLayer();if(!c)return this._revealPieceHidden();const u=c.ownerDocument,d=[],f=Li(i.toType),h=f==="summary"||f==="radial";for(let p=0;p{_.removeAttribute("opacity"),_.removeAttribute("data-piece-hidden")});continue}const b=v.fill&&v.fill.indexOf("url(")!==0?v.fill:((n=this.w.globals.colors)==null?void 0:n[v.realIndex])||g[0].fill;let y=null;if(h){const _=v.d||v.els.map(P=>P.getAttribute("pathTo")||P.getAttribute("d")).filter(Boolean).join(" ");_&&(y=this._makeExtentProber(_,v.bbox,c))}const w=y?HE(v.bbox,g.length,y.intervalsAt):zE(v.bbox,g.length);y&&y.dispose();const x=gh(w,_=>[_.x+_.width/2,_.y+_.height/2]),$=gh(g,_=>[_.x,_.y]),S={remaining:$.length,els:v.els,tiles:[]};for(let _=0;_<$.length;_++){const P=$[_],T=x[_],O=u.createElementNS("http://www.w3.org/2000/svg","rect"),M=P.x+a-P.r,I=P.y+s-P.r;O.setAttribute("data-key",m),O.setAttribute("x",String(M)),O.setAttribute("y",String(I)),O.setAttribute("width",String(P.r*2)),O.setAttribute("height",String(P.r*2)),O.setAttribute("rx",String(P.r)),O.setAttribute("fill",String(P.fill||b)),c.appendChild(O),S.tiles.push(O),d.push({el:O,from:{x:M,y:I,width:P.r*2,height:P.r*2,rx:P.r},to:{x:T.x,y:T.y,width:T.width,height:T.height,rx:0},fill:jE(P.fill,b),fillEnd:String(b),delay:0,meta:{markState:S}})}}if(!d.length)return this._cancelPieces();this._runPieces(d,p=>{const g=p.meta.markState;g.remaining--,g.remaining===0&&(g.els.forEach(m=>{m.removeAttribute("opacity"),m.removeAttribute("data-piece-hidden")}),g.tiles.forEach(m=>{m.parentNode&&m.parentNode.removeChild(m)}))})}_runPieces(e,n){const i=this.getSpeed(),o=Math.min(D1e,i*.35),r=Math.max(180,i-o);for(let a=0;a1?a/(e.length-1)*o:0;this._pieceCancel=P1e({pieces:e,duration:r,onPieceDone:n,onAllDone:()=>{this._pieceCancel=null,this._cancelPieces()}})}_collectTargetMarks(e){var n;const i=(n=this.w.globals.dom)==null?void 0:n.baseEl,o=new Map;if(!i)return o;const r=Li(e);if(r==="radial")return i.querySelectorAll(".apexcharts-pie-series .apexcharts-pie-area").forEach((s,l)=>{const c=s.getAttribute("data:pathFinal")||s.getAttribute("d");if(!c||!c.trim())return;const u=this._pathBBox(c);u&&o.set(`${l}:0`,{realIndex:l,j:0,d:c,bbox:{x:u.minX,y:u.minY,width:u.maxX-u.minX,height:u.maxY-u.minY},fill:s.getAttribute("fill"),els:[s]})}),o;const a=r==="summary"?`.apexcharts-${e}-series`:".apexcharts-bar-series";return i.querySelectorAll(`${a} .apexcharts-series`).forEach(s=>{var l;const c=parseInt((l=s.getAttribute("data:realIndex"))!=null?l:"0",10)||0;let u=0;s.querySelectorAll("path[pathTo]").forEach(d=>{var f;const h=d.getAttribute("pathTo")||d.getAttribute("d");if(!h||!h.trim())return;const p=parseInt((f=d.getAttribute("j"))!=null?f:"",10),g=isNaN(p)?u++:p,m=this._pathBBox(h);if(!m)return;const v=`${c}:${g}`,b=o.get(v);b?(b.els.push(d),b.bbox={x:Math.min(b.bbox.x,m.minX),y:Math.min(b.bbox.y,m.minY),width:Math.max(b.bbox.x+b.bbox.width,m.maxX)-Math.min(b.bbox.x,m.minX),height:Math.max(b.bbox.y+b.bbox.height,m.maxY)-Math.min(b.bbox.y,m.minY)}):o.set(v,{realIndex:c,j:g,bbox:{x:m.minX,y:m.minY,width:m.maxX-m.minX,height:m.maxY-m.minY},fill:d.getAttribute("fill"),els:[d]})})}),o}_captureFromDOM(e){var n;const i=(n=this.w.globals.dom)==null?void 0:n.baseEl;if(!i)return{marks:[],branches:[],unitDots:new Map};const o=[],r=[],a=new Map,s=Li(e);if(s==="bar")i.querySelectorAll(".apexcharts-bar-series .apexcharts-series").forEach(c=>{var u;const d=parseInt((u=c.getAttribute("data:realIndex"))!=null?u:"0",10);c.querySelectorAll("path[pathTo]").forEach((h,p)=>{const g=h.getAttribute("pathTo")||h.getAttribute("d");g&&o.push({realIndex:d,j:p,d:g,fill:h.getAttribute("fill")})})});else if(s==="summary"){const l=new Map;i.querySelectorAll(`.apexcharts-${e}-area`).forEach(c=>{var u,d;const f=parseInt((u=c.getAttribute("j"))!=null?u:"",10);if(isNaN(f))return;const h=c.getAttribute("pathTo")||c.getAttribute("d");if(!h||!h.trim())return;const p=typeof c.closest=="function"?c.closest(".apexcharts-series"):null,g=parseInt((d=p==null?void 0:p.getAttribute("data:realIndex"))!=null?d:"0",10)||0,m=`${g}:${f}`,v=l.get(m);v?v.d+=` ${h}`:l.set(m,{realIndex:g,j:f,d:h,fill:c.getAttribute("fill")})}),Array.from(l.values()).sort((c,u)=>c.realIndex-u.realIndex||c.j-u.j).forEach(c=>o.push(c))}else if(s==="partition")if(e==="treemap"){const l=d=>{var f,h,p,g;const m=parseFloat((f=d.getAttribute("x"))!=null?f:""),v=parseFloat((h=d.getAttribute("y"))!=null?h:""),b=parseFloat((p=d.getAttribute("width"))!=null?p:""),y=parseFloat((g=d.getAttribute("height"))!=null?g:"");return[m,v,b,y].every(w=>isFinite(w))?`M ${m} ${v} L ${m+b} ${v} L ${m+b} ${v+y} L ${m} ${v+y} Z`:null};i.querySelectorAll(".apexcharts-treemap-rect").forEach(d=>{var f,h;const p=l(d);p&&o.push({realIndex:parseInt((f=d.getAttribute("i"))!=null?f:"0",10)||0,j:parseInt((h=d.getAttribute("j"))!=null?h:"0",10)||0,d:p,fill:d.getAttribute("fill"),key:d.getAttribute("data:key")||null})}),i.querySelectorAll(".apexcharts-treemap-parent-rect").forEach(d=>{const f=l(d),h=d.getAttribute("data:key");!f||!h||r.push({key:h,d:f,fill:d.getAttribute("fill")})})}else{const l=i.querySelectorAll(".apexcharts-sunburst-arc"),c=[];l.forEach(d=>{d.getAttribute("data:leaf")==="true"&&c.push(d)}),(c.length?c:Array.from(l)).forEach((d,f)=>{const h=d.getAttribute("d");!h||!h.trim()||o.push({realIndex:f,j:0,d:h,fill:d.getAttribute("fill"),key:d.getAttribute("data:key")||null})}),l.forEach(d=>{if(d.getAttribute("data:leaf")==="true")return;const f=d.getAttribute("d"),h=d.getAttribute("data:key");!f||!f.trim()||!h||r.push({key:h,d:f,fill:d.getAttribute("fill")})})}else if(s==="unit"){const l=i.querySelectorAll(".apexcharts-unit-area"),c=new Map;l.forEach(u=>{var d,f,h,p,g,m,v;const b=parseInt((d=u.getAttribute("i"))!=null?d:"",10);if(isNaN(b))return;const y=u.getAttribute("cx");let w,x,$=3;if(y!=null)w=parseFloat(y),x=parseFloat((f=u.getAttribute("cy"))!=null?f:""),$=parseFloat((h=u.getAttribute("r"))!=null?h:"3")||3;else{const P=parseFloat((p=u.getAttribute("width"))!=null?p:"0")||0,T=parseFloat((g=u.getAttribute("height"))!=null?g:"0")||0;w=parseFloat((m=u.getAttribute("x"))!=null?m:"")+P/2,x=parseFloat((v=u.getAttribute("y"))!=null?v:"")+T/2,$=Math.max(P,T)/2||3}if(!isFinite(w)||!isFinite(x))return;let S=a.get(b);S||(S=[],a.set(b,S)),S.push({x:w,y:x,r:$,fill:u.getAttribute("fill")});const _=c.get(b);if(!_){c.set(b,{minX:w,minY:x,maxX:w,maxY:x,fill:u.getAttribute("fill")});return}w<_.minX&&(_.minX=w),w>_.maxX&&(_.maxX=w),x<_.minY&&(_.minY=x),x>_.maxY&&(_.maxY=x)}),Array.from(c.keys()).sort((u,d)=>u-d).forEach(u=>{const d=c.get(u),f=2,h=d.minX-f,p=d.minY-f,g=d.maxX+f,m=d.maxY+f;o.push({realIndex:u,j:0,d:`M ${h} ${p} L ${g} ${p} L ${g} ${m} L ${h} ${m} Z`,fill:d.fill})})}else if(s==="radial")if(e==="radialBar"||e==="gauge"){const l=this.w.layout.gridWidth/2,c=Math.min(this.w.layout.gridWidth,this.w.layout.gridHeight)/2;i.querySelectorAll(".apexcharts-radial-series .apexcharts-radialbar-area").forEach(d=>{var f;const h=d.parentElement,p=parseInt((f=h==null?void 0:h.getAttribute("data:realIndex"))!=null?f:"0",10),g=d.getAttribute("d");if(!g)return;const m=parseFloat(d.getAttribute("stroke-width")||"0"),v=m>1&&this._radialArcToFilledSegment(g,m,l,c)||g;o.push({realIndex:p,j:0,d:v,fill:d.getAttribute("stroke")})})}else i.querySelectorAll(".apexcharts-pie-series .apexcharts-pie-area").forEach((c,u)=>{const d=c.getAttribute("d");d&&o.push({realIndex:u,j:0,d,fill:c.getAttribute("fill")})});return{marks:o,branches:r,unitDots:a}}_radialArcToFilledSegment(e,n,i,o){const r=e.match(/M\s*(-?[\d.]+)\s+(-?[\d.]+)\s+A\s*(-?[\d.]+)\s+(?:-?[\d.]+)\s+(?:-?[\d.]+)\s+(\d)\s+(\d)\s+(-?[\d.]+)\s+(-?[\d.]+)/);if(!r)return null;const a=parseFloat(r[1]),s=parseFloat(r[2]),l=parseFloat(r[3]),c=parseInt(r[4],10),u=parseInt(r[5],10),d=parseFloat(r[6]),f=parseFloat(r[7]);if(!isFinite(l)||l<=0)return null;const h=n/2,p=l+h,g=Math.max(0,l-h),m=($,S,_)=>{const P=$-i,T=S-o,O=Math.sqrt(P*P+T*T);if(O===0)return{x:i,y:o};const M=_/O;return{x:i+P*M,y:o+T*M}},v=m(a,s,p),b=m(d,f,p),y=m(a,s,g),w=m(d,f,g),x=u?0:1;return`M ${v.x} ${v.y} A ${p} ${p} 0 ${c} ${u} ${b.x} ${b.y} L ${w.x} ${w.y} A ${g} ${g} 0 ${c} ${x} ${y.x} ${y.y} Z`}buildRingSegmentPath(e,n,i,o,r,a){const s=o/2,l=i+s,c=Math.max(0,i-s),u=(r-90)*Math.PI/180,d=(a-90)*Math.PI/180,f={x:e+l*Math.cos(u),y:n+l*Math.sin(u)},h={x:e+l*Math.cos(d),y:n+l*Math.sin(d)},p={x:e+c*Math.cos(u),y:n+c*Math.sin(u)},g={x:e+c*Math.cos(d),y:n+c*Math.sin(d)},m=a>r?1:0,v=Math.abs(a-r)>180?1:0;return`M ${f.x} ${f.y} A ${l} ${l} 0 ${v} ${m} ${h.x} ${h.y} L ${g.x} ${g.y} A ${c} ${c} 0 ${v} ${1-m} ${p.x} ${p.y} Z`}getFromType(){return this._snapshot?this._snapshot.fromType:null}_buildMapping(e,n,i,o,r){const a=new Map,s=Li(i),l=e.slice().sort((c,u)=>c.realIndex-u.realIndex||c.j-u.j);if(s==="partition"&&r&&r.length){const c=l.filter(u=>u.key);c.length===l.length&&(c.forEach(u=>{a.set(`key:${u.key}`,{d:u.d,fill:u.fill})}),r.forEach(u=>{a.set(`key:${u.key}`,{d:u.d,fill:u.fill})}))}if(s==="radial"||s==="unit"||s==="partition")return l.forEach((c,u)=>{a.set(`${u}:0`,{d:c.d,fill:c.fill})}),a;if(s==="bar"||s==="summary"){const c=[];return(Array.isArray(o)?o:[]).forEach((d,f)=>{const h=d&&Array.isArray(d.data)?d.data:[];for(let p=0;p{const h=c[f];h&&a.set(`${h.realIndex}:${h.j}`,{d:d.d,fill:d.fill})}),a}return a}isActive(){return this._snapshot!==null}getInitialPathFor(e,n){if(!this._snapshot)return null;const i=this._snapshot.mapping.get(`${e}:${n}`);if(!i)return null;const o=this._snapshot.oldLayout.translateX-(this.w.layout.translateX||0),r=this._snapshot.oldLayout.translateY-(this.w.layout.translateY||0);return o===0&&r===0?i.d:this._translatePathD(i.d,o,r)}_translatePathD(e,n,i){return n===0&&i===0?e:Lg(e).map(r=>{const a=r[0];return a==="Z"?"Z":a==="M"||a==="L"||a==="T"?`${a} ${r[1]+n} ${r[2]+i}`:a==="H"?`${a} ${r[1]+n}`:a==="V"?`${a} ${r[1]+i}`:a==="C"?`${a} ${r[1]+n} ${r[2]+i} ${r[3]+n} ${r[4]+i} ${r[5]+n} ${r[6]+i}`:a==="S"||a==="Q"?`${a} ${r[1]+n} ${r[2]+i} ${r[3]+n} ${r[4]+i}`:a==="A"?`${a} ${r[1]} ${r[2]} ${r[3]} ${r[4]} ${r[5]} ${r[6]+n} ${r[7]+i}`:r.join(" ")}).join(" ")}getInitialCenterFor(e){const n=this.getInitialBBoxFor(e);return n?{x:n.x+n.width/2,y:n.y+n.height/2}:null}getInitialPathAt(e){return this.getInitialPathFor(e,0)}getInitialPathForKey(e){return!this._snapshot||!e?null:this.getInitialPathFor("key",e)}hasKeyedMarks(){if(!this._snapshot)return!1;for(const e of this._snapshot.mapping.keys())if(typeof e=="string"&&e.startsWith("key:"))return!0;return!1}getInitialSlotFor(e,n,i){const o=this.getInitialBBoxFor(e);if(!o)return null;const r=o.x+o.width/2,a=o.y+o.height/2;if(!(i>1)||!(n>=0))return{x:r,y:a};const s=(Math.min(n,i-1)+.5)/i;return o.height>=o.width?{x:r,y:o.y+o.height*(1-s)}:{x:o.x+o.width*s,y:a}}getInitialBBoxFor(e){if(!this._snapshot)return null;const n=this._snapshot.mapping.get(`${e}:0`);if(!n)return null;const i=this._pathBBox(n.d);if(!i)return null;const o=this._snapshot.oldLayout.translateX-(this.w.layout.translateX||0),r=this._snapshot.oldLayout.translateY-(this.w.layout.translateY||0);return{x:i.minX+o,y:i.minY+r,width:i.maxX-i.minX,height:i.maxY-i.minY}}_pathBBox(e){const n=Lg(e);let i=1/0,o=1/0,r=-1/0,a=-1/0,s=!1;return n.forEach(l=>{const c=l[0];if(c==="Z")return;let u=[];if(c==="H")u=[[l[1],(o+a)/2||l[1]]];else if(c==="V")u=[[(i+r)/2||l[1],l[1]]];else if(c==="A")u=[[l[6],l[7]]];else for(let d=1;d+1{!isFinite(d)||!isFinite(f)||(s=!0,dr&&(r=d),fa&&(a=f))})}),s?{minX:i,minY:o,maxX:r,maxY:a}:null}getInitialFillFor(e,n){if(!this._snapshot)return null;const i=this._snapshot.mapping.get(`${e}:${n}`);return i?i.fill:null}getSpeed(){const e=this.w.config.chart.animations;return e.chartTypeMorph&&e.chartTypeMorph.speed||e.speed||600}applyChromeFade(){var e;if(!this._snapshot||!Ot.isBrowser())return;const n=(e=this.w.globals.dom)==null?void 0:e.baseEl;if(!n)return;this._snapshot.pieceOut?this._separatePieces():this._snapshot.pieceIn?this._combinePieces():this._mountGhost();const i=this.getSpeed();[".apexcharts-xaxis",".apexcharts-yaxis",".apexcharts-grid",".apexcharts-gridlines-horizontal",".apexcharts-gridlines-vertical",".apexcharts-legend",".apexcharts-title-text",".apexcharts-subtitle-text"].forEach(r=>{n.querySelectorAll(r).forEach(a=>{a.style&&(a.style.opacity="0",a.style.transition=`opacity ${i}ms ease-out`,We.requestAnimationFrame(()=>{a.style.opacity="1"}),setTimeout(()=>{a.style.transition="",a.style.opacity=""},i+80))})}),setTimeout(()=>this.cleanup(),i+100)}cleanup(){this._snapshot=null,this._removeGhost(),this._cancelPieces()}}Vn.registerFeatures({morphTypeChange:R1e});const Sl="http://www.w3.org/1999/xhtml",AN=18;function _N(t,e){const n=t.config.drilldown&&t.config.drilldown.breadcrumb||{};return Ye(Ye({show:!0,position:"top-left",separator:" / ",rootLabel:"All",offsetX:0,offsetY:0,formatter:void 0},n),e||{})}function PN(t,e){const n=[".apexcharts-title-text",".apexcharts-subtitle-text"].map(o=>t.dom.baseEl.querySelector(o)).filter(o=>o!==null);if(!n.length)return;const i=t.dom.elWrap.getBoundingClientRect().top;for(let o=0;o{const l=s.getBoundingClientRect();return r.leftl.left&&r.topl.top});if(!a)break;e.style.top=`${a.getBoundingClientRect().bottom-i+4}px`}}function L1e(t,e){const n=t.layout.translateY||0,i=t.dom.elWrap;if(!i)return n;const o=t.dom.baseEl.querySelectorAll(".apexcharts-yaxis-label");if(!o.length)return n;const r=i.getBoundingClientRect().top,a=e.getBoundingClientRect();let s=n;for(let l=0;l=a.right||c.right<=a.left||(s=Math.min(s,c.top-r)))}return s}function F1e(t,e,n,i){var o;const r=(o=e==null?void 0:e.dimensions)==null?void 0:o.dimHelpers,a=r?r.getTitleSubtitleCoords("title").height+r.getTitleSubtitleCoords("subtitle").height:0,s=n.getBoundingClientRect().height||AN,l=i&&i.offsetY||0,c=L1e(t,n);if(c-a>=s+1)return n.style.top=`${c-s-1+l}px`,!0;n.style.top=`${a+l}px`;const u=t.config.theme.mode==="dark";return n.style.background=u?"rgba(20,24,30,0.82)":"rgba(255,255,255,0.86)",n.style.borderRadius="4px",!1}function ON(t){const e=t.dom.elWrap;if(!e)return;const n=e.querySelector(".apexcharts-breadcrumb");n&&n.parentNode&&n.parentNode.removeChild(n)}function N1e(t,e){if(!Ot.isBrowser())return null;const n=t.dom.elWrap;if(!n)return null;ON(t);const i=e.config||_N(t);if(i.show===!1)return null;const o=e.crumbs||[];if(o.length<2)return null;const r=We.createElementNS(Sl,"nav");r.setAttribute("class","apexcharts-breadcrumb"),r.setAttribute("aria-label",e.ariaLabel||"Breadcrumb"),B1e(r,i),e.compact&&(r.style.fontSize="11px",r.style.padding="0 2px");const a=i.separator!=null?i.separator:" / ";return o.forEach((s,l)=>{var c;if(l>0){const h=We.createElementNS(Sl,"span");h.setAttribute("class","apexcharts-breadcrumb-separator"),h.setAttribute("aria-hidden","true"),h.textContent=a,r.appendChild(h)}let u=l===0?(c=i.rootLabel)!=null?c:"All":s.label;if(typeof i.formatter=="function"&&(u=i.formatter(u,{index:l,depth:o.length-1,data:s.data})),l===o.length-1){const h=We.createElementNS(Sl,"span");h.setAttribute("class","apexcharts-breadcrumb-item apexcharts-breadcrumb-current"),h.setAttribute("aria-current","page"),h.textContent=String(u),r.appendChild(h);return}const d=We.createElementNS(Sl,"button");if(d.setAttribute("type","button"),d.setAttribute("class","apexcharts-breadcrumb-item"),l===0){const h=We.createElementNS(Sl,"span");h.setAttribute("class","apexcharts-breadcrumb-arrow"),h.setAttribute("aria-hidden","true"),h.textContent="←",d.appendChild(h)}const f=We.createElementNS(Sl,"span");f.setAttribute("class","apexcharts-breadcrumb-label"),f.textContent=String(u),d.appendChild(f),d.addEventListener("click",()=>e.onNavigate(l,s)),r.appendChild(d)}),n.appendChild(r),r}function B1e(t,e){const n=e.offsetX||0,i=e.offsetY||0;t.style.position="absolute",t.style.top=i+"px",e.position==="top-right"?t.style.right=-n+3+"px":t.style.left=n+"px"}const Cl="http://www.w3.org/1999/xhtml";class z1e{constructor(e,n,i){this.w=e,this.ctx=n,this.drilldown=i}render(e){if(!Ot.isBrowser())return;const n=this.w,i=n.dom.elWrap;if(!i)return;const o=i.querySelector(".apexcharts-breadcrumb");o&&o.parentNode&&o.parentNode.removeChild(o);const r=n.config.drilldown&&n.config.drilldown.breadcrumb;if(!r||r.show===!1||this.drilldown.depth===0)return;const a=We.createElementNS(Cl,"nav");a.setAttribute("class","apexcharts-breadcrumb"),a.setAttribute("aria-label","Drilldown breadcrumb"),this._position(a,r);const s=r.separator!=null?r.separator:" / ";e.forEach((l,c)=>{if(c>0){const f=We.createElementNS(Cl,"span");f.setAttribute("class","apexcharts-breadcrumb-separator"),f.setAttribute("aria-hidden","true"),f.textContent=s,a.appendChild(f)}const u=this._label(l,c);if(c===e.length-1){const f=We.createElementNS(Cl,"span");f.setAttribute("class","apexcharts-breadcrumb-item apexcharts-breadcrumb-current"),f.setAttribute("aria-current","page"),f.textContent=u,a.appendChild(f)}else{const f=We.createElementNS(Cl,"button");if(f.setAttribute("type","button"),f.setAttribute("class","apexcharts-breadcrumb-item"),c===0){const p=We.createElementNS(Cl,"span");p.setAttribute("class","apexcharts-breadcrumb-arrow"),p.setAttribute("aria-hidden","true"),p.textContent="←",f.appendChild(p)}const h=We.createElementNS(Cl,"span");h.setAttribute("class","apexcharts-breadcrumb-label"),h.textContent=u,f.appendChild(h),f.addEventListener("click",()=>this.drilldown.drillToLevel(c)),a.appendChild(f)}}),i.appendChild(a),this.w.globals.axisCharts&&F1e(this.w,this.ctx,a,r),this._avoidChromeOverlap(a)}_avoidChromeOverlap(e){const n=this.w,i=[".apexcharts-title-text",".apexcharts-subtitle-text"].map(r=>n.dom.baseEl.querySelector(r)).filter(r=>r!==null);if(!i.length)return;const o=n.dom.elWrap.getBoundingClientRect().top;for(let r=0;r{const c=l.getBoundingClientRect();return a.leftc.left&&a.topc.top});if(!s)break;e.style.top=`${s.getBoundingClientRect().bottom-o+4}px`}}_label(e,n){const i=this.w.config.drilldown.breadcrumb;let o;if(n===0)o=i.rootLabel!=null?i.rootLabel:"All";else{const r=(this.w.config.drilldown.series||[]).find(a=>a&&a.id===e);o=r&&r.name||String(e)}return typeof i.formatter=="function"?i.formatter(o,{index:n,depth:this.drilldown.depth}):o}_position(e,n){const i=n.offsetX||0,o=n.offsetY||0;e.style.position="absolute",e.style.top=o+"px",n.position==="top-right"?e.style.right=-i+3+"px":e.style.left=i+"px"}}const O0="http://www.w3.org/1999/xhtml",mh="apexcharts-drilldown-loading";class H1e{constructor(e){this.w=e,this.el=null}_cfg(){const e=this.w.config.drilldown,n=e&&e.loading;return n===!1?{show:!1}:n||{}}show(){if(!Ot.isBrowser())return;const e=this._cfg();if(e.show===!1)return;const n=this.w.dom.elWrap;if(!n)return;this.hide();const i=We.createElementNS(O0,"div");i.setAttribute("class",mh),i.setAttribute("role","status"),i.setAttribute("aria-live","polite"),i.setAttribute("aria-label",e.text||"Loading");const o=We.createElementNS(O0,"div");if(o.setAttribute("class",`${mh}-spinner`),o.setAttribute("aria-hidden","true"),i.appendChild(o),e.text){const r=We.createElementNS(O0,"span");r.setAttribute("class",`${mh}-text`),r.textContent=e.text,i.appendChild(r)}n.appendChild(i),this.el=i}hide(){const e=this.w.dom.elWrap;if(e){const n=e.querySelectorAll(`.${mh}`);for(let i=0;ie.id)]}get depth(){return this.stack.length}drillDown(e,n,i){const o=this._resolveChild(e);return o?this._drillInto(o,n,i):typeof this.w.config.drilldown.onDrillDown=="function"?this._drillDownAsync(e,n,i):(console.warn(`ApexCharts: drilldown id "${e}" not found in chart.drilldown.series, and no onDrillDown resolver is set.`),Promise.resolve(this.ctx))}drillUp(){return this.drillToLevel(this.stack.length-1)}drillToRoot(){return this.drillToLevel(0)}drillToLevel(e){const n=this.stack.length;if(e<0||e>=n)return Promise.resolve(this.ctx);const i=this.path[this.path.length-1],o=e===0?this.rootSnapshot:this.stack[e].restore;this.stack=this.stack.slice(0,e);const r=this.path[this.path.length-1];return this._apply(this._viewFromSnapshot(o),"up",{from:i,to:r})}_resolveChild(e){const n=this.w.config.drilldown&&this.w.config.drilldown.series;return Array.isArray(n)&&n.find(i=>i&&i.id===e)||null}_drillInto(e,n,i){if(this.stack.length>=VE)return console.warn(`ApexCharts: drilldown max depth (${VE}) reached.`),Promise.resolve(this.ctx);this.rootSnapshot||(this.rootSnapshot=this._snapshot());const o=this.path[this.path.length-1];return this.stack.push({id:e.id,name:e.name,restore:this._snapshot()}),this._apply(this._viewFromChild(e),"down",{from:o,to:e.id,point:n,seriesIndex:i&&i.seriesIndex,dataPointIndex:i&&i.dataPointIndex})}_drillDownAsync(e,n,i){const r=this.w.config.drilldown.onDrillDown,a=this._cacheGet(e);if(a)return this._drillInto(a,n,i);if(this._pending)return this._pending;let s;this.loading.show();try{s=r({id:e,point:n,seriesIndex:i&&i.seriesIndex,dataPointIndex:i&&i.dataPointIndex})}catch(u){return this.loading.hide(),this._fire("drillDownError",{id:e,error:u}),Promise.resolve(this.ctx)}const l=()=>{this._pending=null,this.loading.hide()},c=Promise.resolve(s).then(u=>{if(l(),this._isDead())return this.ctx;if(!u||!u.data)return this._fire("drillDownError",{id:e,error:new Error(`drilldown: onDrillDown resolved without a drillable level for id "${e}" (expected an object with a \`data\` array).`)}),this.ctx;const d=u.id!=null?u:vt(Ye({},u),{id:e});return this._cacheSet(e,d),this._drillInto(d,n,i)},u=>(l(),this._isDead()?this.ctx:(this._fire("drillDownError",{id:e,error:u}),this.ctx)));return this._pending=c,c}_isDead(){const e=this.w;return!e||!e.globals||e.globals.isDestroyed===!0}_cacheEnabled(){const e=this.w.config.drilldown;return!!(e&&e.cache!==!1)}_cacheGet(e){return!this._cacheEnabled()||e==null?null:this._asyncCache.get(e)||null}_cacheSet(e,n){!this._cacheEnabled()||e==null||this._asyncCache.set(e,n)}clearCache(e){return e==null?this._asyncCache.clear():this._asyncCache.delete(e),this.ctx}_snapshot(){const e=this.w.config,n=this._overrideFields(),i={series:this._uncollapseSeries(Ee.clone(e.series))};return Array.isArray(e.labels)&&e.labels.length&&(i.labels=Ee.clone(e.labels)),i.chart={type:e.chart.type,stacked:e.chart.stacked},n.has("xaxis")&&(i.xaxis=Ee.clone(e.xaxis)),n.has("yaxis")&&(i.yaxis=Ee.clone(e.yaxis)),n.has("colors")&&(i.colors=e.colors?Ee.clone(e.colors):void 0),n.has("plotOptions")&&(i.plotOptions=Ee.clone(e.plotOptions)),n.has("fill")&&(i.fill=Ee.clone(e.fill)),n.has("legend")&&(i.legend=Ee.clone(e.legend)),i}_uncollapseSeries(e){const n=this.w,i=n.globals,o=[...i.collapsedSeries||[],...i.ancillaryCollapsedSeries||[]];if(!o.length)return e;const r=n.config.chart.type,s=(r==="pie"||r==="donut"||r==="polarArea")&&e.length===1&&e[0]&&typeof e[0]=="object"&&Array.isArray(e[0].data)?e[0].data:e;for(const l of o){const c=l.index;i.axisCharts?e[c]&&(e[c].data=Array.isArray(l.data)?l.data.slice():l.data):s[c]&&typeof s[c]=="object"?s[c].y=l.data:s[c]!==void 0&&(s[c]=l.data)}return e}_overrideFields(){const e=new Set,n=this.w.config.drilldown&&this.w.config.drilldown.series||[];for(const i of n)i&&(i.xaxis&&e.add("xaxis"),i.yaxis&&e.add("yaxis"),i.colors&&e.add("colors"),i.plotOptions&&e.add("plotOptions"),i.fill&&e.add("fill"),i.legend&&e.add("legend"));return e}_copyOptionalViewFields(e,n){n.xaxis&&(e.xaxis=n.xaxis),n.yaxis&&(e.yaxis=n.yaxis),n.colors&&(e.colors=n.colors),n.plotOptions&&(e.plotOptions=n.plotOptions),n.fill&&(e.fill=n.fill),n.legend&&(e.legend=n.legend)}_viewFromChild(e){const n={};Array.isArray(e.series)?n.series=e.series:n.series=[{name:e.name||"",data:e.data}];const i={};return e.chart&&e.chart.type&&(i.type=e.chart.type),e.chart&&e.chart.stacked!=null&&(i.stacked=e.chart.stacked),Object.keys(i).length&&(n.chart=i),this._copyOptionalViewFields(n,e),n}_viewFromSnapshot(e){const n={series:e.series,chart:e.chart};return e.labels&&e.labels.length&&(n.labels=e.labels),this._copyOptionalViewFields(n,e),n}_apply(e,n,i){const o=this.w;o.interact.selectedDataPoints=[],o.globals.collapsedSeries=[],o.globals.collapsedSeriesIndices=[],o.globals.ancillaryCollapsedSeries=[],o.globals.ancillaryCollapsedSeriesIndices=[],o.globals.allSeriesCollapsed=!1,o.globals.risingSeries=[],e.markers=vt(Ye({},e.markers||{}),{discrete:this._drillMarkers(e.series)});const r=(!o.config.drilldown.animation||o.config.drilldown.animation.enabled!==!1)&&o.config.chart.animations.enabled!==!1;n==="down"&&this._fire("drillDownStart",i);const a=l=>this.ctx.updateOptions(e,!1,l,!1,!1),s=()=>(this._fire(n==="down"?"drillDownEnd":"drillUp",i),this.ctx);if(r&&this._zoomEnabled()){const l=this._triggerOrigin(i);if(l)return this._zoomDrill(l,n,()=>a(!1)).then(s)}return a(r).then(s)}_zoomEnabled(){const e=this.w.config.drilldown&&this.w.config.drilldown.animation;return!!(e&&e.zoomFromPoint)}_svgNode(){const e=this.w.dom&&this.w.dom.Paper;return e&&e.node?e.node:null}_markGroup(){const e=this._svgNode();return!e||typeof e.querySelector!="function"?null:e.querySelector(".apexcharts-plot-series, .apexcharts-heatmap, .apexcharts-treemap")}_triggerOrigin(e){if(!Ot.isBrowser())return null;const n=this._svgNode(),i=this._markGroup();if(!n||!i||typeof i.animate!="function"||typeof n.getBoundingClientRect!="function")return null;const o=n.getBoundingClientRect();let r=null;if(e&&e.seriesIndex!=null&&e.dataPointIndex!=null&&this.w.dom.baseEl&&(r=this.w.dom.baseEl.querySelector(`[index="${e.seriesIndex}"][j="${e.dataPointIndex}"]`)),r&&typeof r.getBoundingClientRect=="function"){const s=r.getBoundingClientRect();return{x:s.left+s.width/2-o.left,y:s.top+s.height/2-o.top}}const a=i.getBoundingClientRect();return{x:a.left+a.width/2-o.left,y:a.top+a.height/2-o.top}}_zoomDrill(e,n,i){return Wxe(this,null,function*(){const o=this._zoomDuration(),r=n==="down",a=Math.round(o*.55),s=r?"scale(1.03)":"scale(0.97)",l=r?"scaleX(0.55) scaleY(0.85)":"scale(1.04)",c=p=>{p.style.transformBox="view-box",p.style.transformOrigin=`${e.x}px ${e.y}px`},u=p=>{p.style.transform="",p.style.opacity="",p.style.transformOrigin="",p.style.transformBox=""},d=this._markGroup();let f=null;if(d){c(d),f=d.animate([{transform:"scale(1)",opacity:1},{transform:s,opacity:0}],{duration:a,easing:"ease-in",fill:"forwards"});try{yield f.finished}catch{}}yield i();const h=this._markGroup();if(h){c(h),h.style.opacity="0",h.style.transform=l,f&&d===h&&f.cancel();const p=h.animate([{transform:l,opacity:0},{transform:"scale(1)",opacity:1}],{duration:o,easing:"cubic-bezier(0.16, 1, 0.3, 1)",fill:"forwards"});try{yield p.finished}catch{}u(h),p.cancel()}})}_zoomDuration(){const e=this.w.config.drilldown&&this.w.config.drilldown.animation,n=e&&typeof e.speed=="number"?e.speed:260;return Math.max(80,n)}_fire(e,n){const i=this.w.config.chart.events&&this.w.config.chart.events[e];typeof i=="function"&&i(n,this.ctx,this.w),this.ctx.events.fireEvent(e,[n,this.ctx,this.w])}_onPointSelect(e,n,i){if(!i)return;const o=this._pointAt(i.seriesIndex,i.dataPointIndex);if(o&&typeof o=="object"&&o.drilldown!=null)return this.drillDown(o.drilldown,o,i);if(typeof this.w.config.drilldown.onDrillDown=="function")return this._drillDownAsync(null,o,i)}_pointAt(e,n){const i=this.w.config.series;if(!Array.isArray(i)||e==null||n==null)return null;const o=i[e];return!o||!Array.isArray(o.data)?null:o.data[n]!=null?o.data[n]:null}_afterRender(){const e=this.w;!e.config.drilldown||!e.config.drilldown.enabled||(this._markDrillableTargets(),this._wirePlotClick(),this.breadcrumb.render(this.path),e.config.markers&&(e.config.markers.discrete=this._drillMarkers(e.config.series)))}_markDrillableTargets(){if(!Ot.isBrowser())return;const e=this.w,n=e.dom.baseEl,i=e.config.series;if(!n||!Array.isArray(i))return;let o=0;i.forEach((r,a)=>{const s=r&&Array.isArray(r.data)?r.data:null;s&&s.forEach((l,c)=>{if(!l||typeof l!="object"||l.drilldown==null)return;const u=n.querySelectorAll(`[index="${a}"][j="${c}"]`);u.length||o++,u.forEach(d=>{this._isClickThroughMark(d)&&d.classList.remove("no-pointer-events"),d.classList.add("apexcharts-drilldown-target")})})}),o&&!this._warnedUnreachable&&(this._warnedUnreachable=!0,console.warn(`ApexCharts: ${o} drillable point(s) have no clickable mark, so clicking them cannot do anything. Leave \`drilldown.marker\` on, or give the series markers of its own (\`markers.size > 0\`).`))}warnSliceOffsetDisabled(){this._warnedNoSliceOffset||(this._warnedNoSliceOffset=!0,console.warn("ApexCharts: `plotOptions.pie.expandOnClick` is not available in a drilldown pie/donut, so it was ignored. A slice click navigates, and a slice that slid out would be discarded by the drill it just triggered."))}_wirePlotClick(){if(!Ot.isBrowser())return;const e=this.w.dom.baseEl;!e||this._plotClickWired===e||(this._plotClickWired&&(this._plotClickWired.removeEventListener("mousedown",this._onPlotDown),this._plotClickWired.removeEventListener("click",this._onPlotClick)),e.addEventListener("mousedown",this._onPlotDown),e.addEventListener("click",this._onPlotClick),this._plotClickWired=e)}_onPlotDown(e){this._downAt={x:e.clientX,y:e.clientY}}_onPlotClick(e){const n=this.w;if(!n.config.drilldown||!n.config.drilldown.enabled)return;const i=this._downAt;if(this._downAt=null,i&&Math.hypot(e.clientX-i.x,e.clientY-i.y)>4)return;const o=e.target;if(!o||typeof o.closest!="function"||o.closest(".apexcharts-drilldown-target")||o.closest(".apexcharts-legend, .apexcharts-toolbar, .apexcharts-breadcrumb, .apexcharts-menu, .apexcharts-tooltip"))return;const r=n.interact.capturedSeriesIndex,a=n.interact.capturedDataPointIndex;if(r==null||a==null||r<0||a<0||!this._isPointBasedSeries(n.config.series[r]))return;const s=this._pointAt(r,a);if(!(!s||typeof s!="object"||s.drilldown==null))return this.drillDown(s.drilldown,s,{seriesIndex:r,dataPointIndex:a})}_isClickThroughMark(e){return!e.classList||!e.classList.contains("no-pointer-events")||!e.classList.contains("apexcharts-marker")?!1:!(typeof e.closest=="function"&&e.closest(".apexcharts-tooltip"))}_drillMarkers(e){const n=this.w,i=n.config.drilldown,o=Array.isArray(n.config.markers&&n.config.markers.discrete)?n.config.markers.discrete.filter(s=>!s||!s[XE]):[],r=i&&i.marker||{};if(r.show===!1||!Array.isArray(e))return o;const a=[];return e.forEach((s,l)=>{if(!this._seriesNeedsDrillMarker(l,s))return;const c=s&&Array.isArray(s.data)?s.data:null;c&&c.forEach((u,d)=>{if(!u||typeof u!="object"||u.drilldown==null)return;const f={seriesIndex:l,dataPointIndex:d,[XE]:!0};r.size!==void 0&&(f.size=r.size),r.shape!==void 0&&(f.shape=r.shape),r.fillColor!==void 0&&(f.fillColor=r.fillColor),r.strokeColor!==void 0&&(f.strokeColor=r.strokeColor),a.push(f)})}),o.concat(a)}_seriesNeedsDrillMarker(e,n){if(!this._isPointBasedSeries(n))return!1;const i=this.w.config.markers&&this.w.config.markers.size,o=Array.isArray(i)?i[e]:i;return!(Number(o)>0)}_isPointBasedSeries(e){const n=e&&e.type||this.w.config.chart.type;return n==="line"||n==="area"}}Vn.registerFeatures({drilldown:W1e});const T0="__apexcharts_plugins__";function j1e(){const t=globalThis;return t[T0]||(t[T0]={}),t[T0]}function V1e(t){return j1e()[t]||null}const nw=5,X1e=["updateOptions","updateSeries","appendData","appendSeries","toggleSeries","showSeries","hideSeries","highlightSeries","isSeriesHidden","zoomX","addXaxisAnnotation","addYaxisAnnotation","addPointAnnotation","clearAnnotations","removeAnnotation","dataURI","exportToCSV"];function Y1e(t){const e={};return X1e.forEach(n=>{typeof t[n]=="function"&&(e[n]=t[n].bind(t))}),Object.freeze(e)}function G1e(t,e){const n=o=>(o&&t.add(o),o),i={get node(){return t.node},path(o={}){const{d:r="",stroke:a="#000",width:s=1,fill:l="none",opacity:c=1,dash:u=0,className:d=""}=o;return n(e.drawPath({d:r,stroke:a,strokeWidth:s,fill:l,fillOpacity:l==="none"?0:c,strokeOpacity:c,strokeDashArray:u,classes:d}))},line(o={}){const{x1:r,y1:a,x2:s,y2:l,stroke:c="#000",width:u=1,dash:d=0}=o;return n(e.drawLine(r,a,s,l,c,d,u))},rect(o={}){const{x:r=0,y:a=0,w:s=0,h:l=0,r:c=0,fill:u="#000",stroke:d=null,opacity:f=1}=o;return n(e.drawRect(r,a,s,l,c,u,f,d!=null?1:null,d))},circle(o={}){const{cx:r=0,cy:a=0,r:s=0,fill:l="#000",stroke:c=null}=o;return n(e.drawCircle(s,{cx:r,cy:a,fill:l,stroke:c||"none"}))},text(o={}){const{x:r=0,y:a=0,text:s="",color:l,size:c,anchor:u="start",weight:d}=o;return n(e.drawText({x:r,y:a,text:s,textAnchor:u,fontSize:c,foreColor:l,fontWeight:d}))},clear(){const o=t.node;for(;o.firstChild;)o.removeChild(o.firstChild);return i}};return i}function K1e(t,e){const n=t.ctx,i=t.w,o={name:e.def.name,version:nw,get options(){return e.options},on(r,a){const s=e.handlers;return s.has(r)||s.set(r,[]),s.get(r).push(a),o},off(r,a){const s=e.handlers.get(r);if(s){const l=s.indexOf(a);l>-1&&s.splice(l,1)}return o},store:{},layer(r){return t._layer(e.def.name,r||{})},get scales(){return t._currentScales},get data(){return t._lastData||(t._lastData=t._dataSnapshot())},theme:Object.freeze({get mode(){return i.config.theme.mode},get foreColor(){return i.config.chart.foreColor},seriesColor(r){return i.globals.colors[r]},token(r){return t._token(r)}}),chart:Y1e(n),get info(){return Object.freeze({type:String(i.config.chart&&(i.config.chart.requestedType||i.config.chart.type)||"line"),axisChart:i.globals.axisCharts===!0,datetimeX:!!(i.config.xaxis&&i.config.xaxis.type==="datetime"),horizontalBars:!!(i.config.plotOptions&&i.config.plotOptions.bar&&i.config.plotOptions.bar.horizontal),dataLabels:Object.freeze({enabled:!!(i.config.dataLabels&&i.config.dataLabels.enabled),enabledOnSeries:Array.isArray(i.config.dataLabels&&i.config.dataLabels.enabledOnSeries)?i.config.dataLabels.enabledOnSeries.slice():null}),stroke:Object.freeze({dashArray:Array.isArray(i.config.stroke&&i.config.stroke.dashArray)?i.config.stroke.dashArray.slice():i.config.stroke&&i.config.stroke.dashArray||0})})},get categories(){return t._categories()},markDerived(r){return t._markDerived(e.def.name,r),o},reserve(r){return t._reserve(e.def.name,r),o},pointer(r){return t._onPointer(e.def.name,r)},emit(r,a){n.events.fireEvent(`plugin:${e.def.name}:${r}`,[n,a])},get el(){return i.dom.baseEl}};return Object.freeze(o)}const TN=class Pu{constructor(e,n){this.w=e,this.ctx=n,this.active=[],this._layers=new Map,this._currentScales=null,this._lastPluginsRef=null,this._lastData=null,this._updatedWired=!1,this._derived=null,this._reserved=null,this._reserveTimer=null,this._pointerSubs=null,this._pointerWired=null,this._onUpdated=this._onUpdated.bind(this),this._init()}_init(){(this.w.config.plugins||[]).map((n,i)=>({entry:n,order:n.order!=null?n.order:i})).sort((n,i)=>n.order-i.order).forEach(n=>this._activate(n.entry)),this._lastPluginsRef=this.w.config.plugins,this._wireUpdated()}_wireUpdated(){this._updatedWired||(this.ctx.addEventListener("updated",this._onUpdated),this._updatedWired=!0)}_onUpdated(){this._repairInitialSeries(),this.dispatch("afterUpdate",{pass:"update"})}_activate(e){const n=V1e(e.name);if(!n){console.error(`[apexcharts] plugin "${e.name}" is not registered.`);return}const i=n.apiVersion!=null?Math.trunc(n.apiVersion):1;if(!(i>=1)||i>nw){console.error(`[apexcharts] plugin "${n.name}" targets Weave API v${n.apiVersion}, host is v${nw}; skipped.`);return}const o={def:n,options:Object.freeze(Ye({},e.options||{})),handlers:new Map,disabled:!1,failures:0,api:null};o.api=K1e(this,o),this.active.push(o),this._guard(o,"setup",()=>n.setup(o.api))}dispatch(e,n){if(e==="draw"&&(this._reconcile(),this._resetLayers()),this._lastData=null,!this.active.length)return;e==="afterParse"?this._currentScales=null:n&&"xyRatios"in n&&this._setScales(n.xyRatios);const i=n&&n.pass||"full";let o=null;for(const r of this.active){if(r.disabled)continue;const a=r.handlers.get(e);if(!a||!a.length)continue;o===null&&(o=this._dataSnapshot(),this._lastData=o);const s={api:r.api,scales:this._currentScales,data:o,pass:i,hook:e};for(const l of a.slice())this._guard(r,e,()=>l(s))}}_guard(e,n,i){if(!e.disabled)try{i()}catch(o){console.error(`[apexcharts] plugin "${e.def.name}" threw in "${n}":`,o),e.failures=(e.failures||0)+1,e.failures>=3&&(e.disabled=!0,console.error(`[apexcharts] plugin "${e.def.name}" disabled after repeated errors.`))}}_setScales(e){const n=this.w,i=n.globals,o=n.layout;if(!e||!i.axisCharts){this._currentScales=null;return}const r=e.xRatio,a=e.yRatio||[],s=f=>a[f]!=null?a[f]:a[0],l=f=>i.maxYArr[f]!=null?i.maxYArr[f]:i.maxY,c=f=>i.minYArr[f]!=null?i.minYArr[f]:i.minY,u=!n.axisFlags.isXNumeric&&!i.isBarHorizontal&&i.dataPoints>0,d=u?o.gridWidth/i.dataPoints:0;this._currentScales={x:u?f=>d*(f+.5):f=>(f-i.minX)/r,y:(f,h=0)=>(l(h)-f)/s(h),domainX:u?[-.5,i.dataPoints-.5]:[i.minX,i.maxX],domainY:(f=0)=>[c(f),l(f)],gridWidth:o.gridWidth,gridHeight:o.gridHeight,ratios:e}}_dataSnapshot(){const e=this.w,n=e.globals,i=e.seriesData.series||[],o=e.seriesData.seriesX||[],r=Array.isArray(e.config.series)?e.config.series:[];return i.map((a,s)=>{const l=Array.isArray(a)?a:[a],c=o[s]||[],u=l.map((h,p)=>({x:c[p]!=null?c[p]:p,y:h})),d=r[s],f=d&&typeof d=="object"&&Array.isArray(d.data)?d.data:[];return{name:n.seriesNames?n.seriesNames[s]:void 0,hidden:(n.collapsedSeriesIndices||[]).includes(s),color:n.colors?n.colors[s]:void 0,points:u,raw:f}})}_categories(){const e=this.w,n=e.globals,i=e.config.xaxis&&Array.isArray(e.config.xaxis.categories)?e.config.xaxis.categories:[],o=Array.isArray(n.categoryLabels)?n.categoryLabels:[],r=Array.isArray(n.labels)?n.labels:[],a=i.length?i:o.length?o:r,s=e.seriesData.series||[];let l=0;for(let u=0;ul&&(l=d.length)}l||(l=a.length);const c=[];for(let u=0;uString(o)):[];i.length?this._derived.set(e,i):this._derived.delete(e),this._repairInitialSeries()}_onPointer(e,n){if(typeof n!="function")return()=>{};this._pointerSubs||(this._pointerSubs=new Map);const i=this._pointerSubs.get(e)||[];return i.push(n),this._pointerSubs.set(e,i),this._wirePointer(),()=>{const o=this._pointerSubs&&this._pointerSubs.get(e);if(!o)return;const r=o.indexOf(n);r>-1&&o.splice(r,1)}}_wirePointer(){if(this._pointerWired||!this.ctx||typeof this.ctx.addEventListener!="function")return;const e=[["enter","dataPointMouseEnter"],["leave","dataPointMouseLeave"],["select","dataPointSelection"]];this._pointerWired=[];for(const[n,i]of e){const o=(r,a,s)=>{this._emitPointer(n,s)};this.ctx.addEventListener(i,o),this._pointerWired.push([i,o])}}_emitPointer(e,n){if(!this._pointerSubs||!this._pointerSubs.size)return;const i=n&&typeof n.seriesIndex=="number"?n.seriesIndex:-1,o=n&&typeof n.dataPointIndex=="number"?n.dataPointIndex:-1,r=this._categories()||[],a=this.w,s=a&&a.config&&a.config.series||[],l={type:e,seriesIndex:i,dataPointIndex:o,category:o>-1?r[o]:void 0,seriesName:Pu._seriesName(s,i),selected:e==="select"?Pu._isSelected(n,i,o):void 0};for(const[c,u]of this._pointerSubs)for(const d of u.slice())try{d(l)}catch(f){console.warn('[apexcharts] plugin "'+c+'" threw in a pointer handler',f)}}static _seriesName(e,n){if(n<0)return;const i=e[n];if(!(!i||typeof i!="object"))return typeof i.name=="string"?i.name:void 0}static _isSelected(e,n,i){const o=e&&e.selectedDataPoints;if(!Array.isArray(o)||n<0)return;const r=o[n];return Array.isArray(r)?r.indexOf(i)>-1:!1}_reserve(e,n){const i=Pu._normaliseBox(n),o=this._reserved?this._reserved.get(e):void 0;if(i){if(o&&o.left===i.left&&o.right===i.right&&o.top===i.top&&o.bottom===i.bottom)return;this._reserved||(this._reserved=new Map),this._reserved.set(e,i)}else{if(!o||!this._reserved)return;this._reserved.delete(e)}this._resizeForReservation()}static _normaliseBox(e){if(!e||typeof e!="object")return null;const n=o=>Number.isFinite(o)&&o>0?Math.round(o):0,i={left:n(e.left),right:n(e.right),top:n(e.top),bottom:n(e.bottom)};return i.left||i.right||i.top||i.bottom?i:null}reservedBox(){if(!this._reserved||this._reserved.size===0)return Pu.NO_RESERVATION;const e={left:0,right:0,top:0,bottom:0};for(const n of this._reserved.values())e.left+=n.left,e.right+=n.right,e.top+=n.top,e.bottom+=n.bottom;return e}_resizeForReservation(){this._reserveTimer==null&&(this._reserveTimer=setTimeout(()=>{this._reserveTimer=null;const e=this.w.globals;if(!e.isDestroyed){e.resized=!0,e.dataChanged=!1;try{this.ctx.update()}catch{}}},0))}_derivedNames(){const e=new Set;if(!this._derived)return e;for(const n of this._derived.values())for(const i of n)e.add(i);return e}_repairInitialSeries(){const e=this._derivedNames();if(!e.size)return;const n=this.w,o=(Array.isArray(n.config.series)?n.config.series:[]).filter(r=>!e.has(String(r&&r.name)));if(o.length)try{n.globals.initialSeries=o,n.globals.initialConfig&&Array.isArray(n.globals.initialConfig.series)&&(n.globals.initialConfig.series=o)}catch{}}_token(e){const n=this.w,i=n.globals;switch(e){case"foreColor":return n.config.chart.foreColor;case"background":return n.config.chart.background;case"accent":case"primary":return i.colors?i.colors[0]:void 0;default:return/^series-\d+$/.test(e)&&i.colors?i.colors[Number(e.split("-")[1])]:void 0}}_layer(e,{z:n="front",className:i=""}={}){let o=this._layers.get(e);if(!o){o=this.ctx.graphics.group({class:`apexcharts-plugin-${e} ${i}`.trim()});const r=this.w.dom.elGraphical.node;n==="behind"?r.insertBefore(o.node,r.firstChild):r.appendChild(o.node),o.node.setAttribute("aria-hidden","true"),this._layers.set(e,o)}return G1e(o,this.ctx.graphics)}_resetLayers(){const e=this.w.dom.elGraphical,n=e&&e.node;if(n){const i=n.querySelectorAll('g[class*="apexcharts-plugin-"]');Array.prototype.forEach.call(i,o=>o.remove())}this._layers.clear()}_reconcile(){const e=this.w.config.plugins||[];if(e===this._lastPluginsRef)return;this._lastPluginsRef=e;const n=new Map(e.map((r,a)=>[r.name,{entry:r,order:r.order!=null?r.order:a}]));for(let r=this.active.length-1;r>=0;r--){const a=this.active[r],s=n.get(a.def.name);s?a.options=Object.freeze(Ye({},s.entry.options||{})):(this._guard(a,"destroy",()=>a.def.destroy&&a.def.destroy(a.api)),this.active.splice(r,1),this._reserve(a.def.name,null))}const i=new Set(this.active.map(r=>r.def.name)),o=[];n.forEach((r,a)=>{i.has(a)||o.push(r)}),o.sort((r,a)=>r.order-a.order).forEach(r=>this._activate(r.entry))}teardown(e){if(!e){this.dispatch("destroy");for(const n of this.active)this._guard(n,"destroy",()=>n.def.destroy&&n.def.destroy(n.api));if(this.active=[],this._derived=null,this._reserved=null,this._pointerSubs=null,this._pointerWired){for(const[n,i]of this._pointerWired)this.ctx.removeEventListener&&this.ctx.removeEventListener(n,i);this._pointerWired=null}this._reserveTimer!=null&&(clearTimeout(this._reserveTimer),this._reserveTimer=null),this._updatedWired&&(this.ctx.removeEventListener&&this.ctx.removeEventListener("updated",this._onUpdated),this._updatedWired=!1)}this._layers.clear()}};Hxe(TN,"NO_RESERVATION",Object.freeze({left:0,right:0,top:0,bottom:0}));let U1e=TN;Vn.registerFeatures({weave:U1e});function Ov(t,e){const n=t&&t.renderer;return n&&n.kind&&n.kind!=="svg"?n:e}function q1e(t,e){const n=class{constructor(o,r,a){this.w=o,this.ctx=r,this.xyRatios=a,this._warned=!1}draw(o,r,a){var s,l;const c=this.w,u=new Be(c,this.ctx),d=Ov(this.ctx,u),f=u.group({class:"apexcharts-marks-series"});return o.forEach((h,p)=>{var g;const m=Array.isArray(a)?a[p]:p,v=u.group({class:"apexcharts-series",rel:m+1,seriesName:Ee.escapeString(c.seriesData.seriesNames[m]),"data:realIndex":m}),b=this._scales(m,(c.seriesData.series[m]||[]).length),y=c.globals.colors[m],w=((g=c.config.series[m])==null?void 0:g.data)||[],x=c.seriesData.seriesX[m]||[],$=c.seriesData.series[m]||[];c.globals.seriesXvalues[m]=[],c.globals.seriesYvalues[m]=[],typeof c.globals.pointsArray[m]>"u"&&(c.globals.pointsArray[m]=[]);for(let S=0;S<$.length;S++){const _=$[S];if(_===null||typeof _>"u")continue;const P=x[S],T=b.xAt(S,P),O=b.y(_),M=this._api(d,v,m,S);try{e.renderItem({datum:w[S],x:T,y:O,scales:b,api:M,seriesIndex:m,dataPointIndex:S,color:y})}catch(I){this._warned||(console.warn(`[apexcharts] renderItem for series type "${t}" threw; skipping datum:`,I),this._warned=!0)}c.globals.seriesXvalues[m][S]=T,c.globals.seriesYvalues[m][S]=O,c.globals.pointsArray[m][S]=[T,O]}u.setupEventDelegation(v,".apexcharts-marks-mark"),f.add(v)}),(l=(s=this.ctx.animations)==null?void 0:s.animationCompleted)==null||l.call(s,f),f}_scales(o,r){var a,s,l,c;const u=this.w.globals,d=this.w.config,f=this.xyRatios.xRatio,h=this.xyRatios.yRatio,p=(s=(a=u.seriesYAxisReverseMap)==null?void 0:a[o])!=null?s:0,g=Array.isArray(h)?(l=h[p])!=null?l:h[0]:h,m=u.maxYArr,v=Array.isArray(m)&&m.length&&(c=m[p])!=null?c:u.maxY,b=u.gridWidth,y=u.gridHeight,w=!u.isXNumeric,x=r||u.dataPoints||1,$=x>0?b/x:b,S=d.xaxis.tickPlacement==="on",_=I=>f?(I-u.minX)/f:b/2,P=I=>(v-I)/g,T=(I,k)=>w?S&&x>1?I/(x-1)*b:(I+.5)*$:_(k),O=u.minXDiff||1,M=w?$:f?O/f:b;return{x:_,xAt:T,y:P,gridWidth:b,gridHeight:y,band:M}}_api(o,r,a,s){const l=c=>{if(c){try{c.node.setAttribute("index",String(a)),c.node.setAttribute("j",String(s)),c.node.classList.add("apexcharts-marks-mark")}catch{}r.add(c)}return c};return{path:(c={})=>{var u,d,f,h,p,g,m,v,b;return l(o.drawPath({d:c.d||"",stroke:(u=c.stroke)!=null?u:"#000",strokeWidth:(f=(d=c.width)!=null?d:c.strokeWidth)!=null?f:1,fill:(h=c.fill)!=null?h:"none",fillOpacity:(g=c.fillOpacity)!=null?g:c.fill&&c.fill!=="none"?(p=c.opacity)!=null?p:1:0,strokeOpacity:(v=(m=c.strokeOpacity)!=null?m:c.opacity)!=null?v:1,strokeDashArray:(b=c.dash)!=null?b:0,strokeLinecap:c.lineCap}))},line:(c={})=>{var u,d,f,h;return l(o.drawLine(c.x1,c.y1,c.x2,c.y2,(u=c.stroke)!=null?u:"#000",(d=c.dash)!=null?d:0,(h=(f=c.width)!=null?f:c.strokeWidth)!=null?h:1))},rect:(c={})=>{var u,d,f,h,p,g,m,v;return l(o.drawRect((u=c.x)!=null?u:0,(d=c.y)!=null?d:0,(f=c.w)!=null?f:0,(h=c.h)!=null?h:0,(p=c.r)!=null?p:0,(g=c.fill)!=null?g:"#000",(m=c.opacity)!=null?m:1,c.stroke!=null?(v=c.strokeWidth)!=null?v:1:null,c.stroke))},circle:(c={})=>{var u,d,f,h,p;return l(o.drawCircle((u=c.r)!=null?u:0,{cx:(d=c.cx)!=null?d:0,cy:(f=c.cy)!=null?f:0,fill:(h=c.fill)!=null?h:"#000",stroke:c.stroke||"none","stroke-width":(p=c.strokeWidth)!=null?p:c.stroke?1:0}))},text:(c={})=>{var u,d,f,h;return l(o.drawText({x:(u=c.x)!=null?u:0,y:(d=c.y)!=null?d:0,text:(f=c.text)!=null?f:"",textAnchor:(h=c.anchor)!=null?h:"start",fontSize:c.size,foreColor:c.color,fontWeight:c.weight}))}}}};return n.dataType=e.dataType||"xy",n.yExtent=typeof e.yExtent=="function"?e.yExtent:null,n}Vn._customSeriesFactory=q1e;const Z1e="(prefers-color-scheme: dark)",J1e="(prefers-contrast: more)";class Wl{constructor(e,n){if(this.w=e,this.ctx=n,e.config.theme.follow!=="os"||!Ot.isBrowser())return;const i=this._ensureMedia();i&&(this._applyToConfig(i),this._ensureListeners(i))}_ensureMedia(){if(!this.ctx._osThemeMedia){const e=We.matchMedia(Z1e),n=We.matchMedia(J1e);if(!e&&!n)return null;this.ctx._osThemeMedia={dark:e,contrast:n,handler:null}}return this.ctx._osThemeMedia}_applyToConfig(e){const n=this.w.config.theme;e.dark&&(n.mode=e.dark.matches?"dark":"light"),e.contrast&&e.contrast.matches&&(n.accessibility=n.accessibility||{},n.accessibility.colorBlindMode="highContrast")}_ensureListeners(e){if(e.handler)return;const n=this.ctx,i=()=>{const o=n._osThemeMedia;if(!o)return;const r={mode:o.dark&&o.dark.matches?"dark":"light"};o.contrast&&o.contrast.matches?r.accessibility={colorBlindMode:"highContrast"}:r.accessibility={colorBlindMode:""},n.updateOptions({theme:r},!1,!0,!1)};Wl._add(e.dark,i),Wl._add(e.contrast,i),e.handler=i}teardown(){const e=this.ctx._osThemeMedia;e&&(e.handler&&(Wl._remove(e.dark,e.handler),Wl._remove(e.contrast,e.handler)),this.ctx._osThemeMedia=null)}static _add(e,n){e&&(typeof e.addEventListener=="function"?e.addEventListener("change",n):typeof e.addListener=="function"&&e.addListener(n))}static _remove(e,n){e&&(typeof e.removeEventListener=="function"?e.removeEventListener("change",n):typeof e.removeListener=="function"&&e.removeListener(n))}}Vn.registerFeatures({osThemeWatcher:Wl});const iw="__apexcharts_series_transforms__";globalThis[iw]||(globalThis[iw]={});function Q1e(){return globalThis[iw]}function Yc(t,e){if(!t||typeof t!="string"){console.warn("ApexCharts: registerSeriesTransform requires a non-empty name.");return}if(typeof e!="function"){console.warn(`ApexCharts: registerSeriesTransform("${t}") expects a function (series, w) => series.`);return}Q1e()[t]=e}const ow="__apexcharts_row_sources__";globalThis[ow]||(globalThis[ow]={});function eSe(){return globalThis[ow]}function f$(t,e){if(!t||typeof t!="string"){console.warn("ApexCharts: registerRowSource requires a non-empty name.");return}if(typeof e!="function"){console.warn(`ApexCharts: registerRowSource("${t}") expects a function (w, opts) => series.`);return}eSe()[t]=e}const YE=1e3;function kr(t,e){const n=t.length;if(n===0)return NaN;if(n===1)return t[0];const i=(n-1)*e,o=Math.floor(i),r=Math.ceil(i);return o===r?t[o]:t[o]+(t[r]-t[o])*(i-o)}function EN(t){const e=t.length;if(e<2)return 0;let n=0;for(let r=0;re/Math.max(1,Math.ceil(r));switch(n){case"sqrt":return{width:o(Math.sqrt(i)),rule:"sqrt"};case"rice":return{width:o(2*Math.cbrt(i)),rule:"rice"};case"scott":{const r=EN(t);return r>0?{width:3.49*r*Math.pow(i,-1/3),rule:"scott"}:{width:o(Math.log2(i)+1),rule:"sturges"}}case"fd":{const r=kr(t,.75)-kr(t,.25);return r>0?{width:2*r*Math.pow(i,-1/3),rule:"fd"}:{width:o(Math.log2(i)+1),rule:"sturges"}}case"auto":{const r=o(Math.log2(i)+1),a=kr(t,.75)-kr(t,.25);if(a<=0)return{width:r,rule:"sturges"};const s=2*a*Math.pow(i,-1/3);return sf-h);let i=n[0],o=n[n.length-1];const r=e.range;if(Array.isArray(r)&&r.length===2){const f=Number(r[0]),h=Number(r[1]);isFinite(f)&&isFinite(h)&&h>f&&(i=f,o=h)}if(!(o>i)){const f=Math.abs(i)>0?Math.abs(i)*.05:.5;return{edges:[i-f,i+f],binWidth:f*2,rule:"single",capped:!1}}const a=o-i;let s,l;if(typeof e.binWidth=="number"&&e.binWidth>0)s=e.binWidth,l="binWidth";else if(typeof e.bins=="number"&&e.bins>=1)s=a/Math.floor(e.bins),l="count";else{const f=tSe(n,a,typeof e.bins=="string"?e.bins:"auto");s=f.width,l=f.rule}(!isFinite(s)||s<=0)&&(s=a);let c=Math.ceil(a/s);(!isFinite(c)||c<1)&&(c=1);let u=!1;c>YE&&(c=YE,s=a/c,u=!0),s=a/c;const d=new Array(c+1);for(let f=0;f<=c;f++)d[f]=i+f*s;return d[c]=Math.max(d[c],o),{edges:d,binWidth:s,rule:l,capped:u}}function MN(t,e){const n=e.length-1;if(!(t>=e[0])||t>e[n])return-1;if(t===e[n])return n-1;const i=(e[n]-e[0])/n;if(i>0){let a=Math.floor((t-e[0])/i);return a<0&&(a=0),a>n-1&&(a=n-1),t=e[a+1]&&a++,a<0||a>n-1?-1:a}let o=0,r=n-1;for(;o<=r;){const a=o+r>>1;if(t=e[a+1])o=a+1;else return a}return-1}function iSe(t,e){const n=new Array(Math.max(0,e.length-1)).fill(0);for(let i=0;i=0&&n[o]++}return n}function oSe(t,e){const n=Math.max(0,e.length-1),i=new Array(n);for(let o=0;o=0&&i[r].push(t[o])}return i}function rSe(t,e={}){if(!Array.isArray(t)||t.length===0)return null;const n=t.slice().sort((u,d)=>u-d),i=kr(n,.25),o=kr(n,.5),r=kr(n,.75),a=r-i;let s=n[0],l=n[n.length-1],c=[];if(e.whiskers==="tukey"&&a>0){const u=i-1.5*a,d=r+1.5*a;let f=0;for(;f=0&&n[h]>d;)h--;f<=h&&(s=n[f],l=n[h],c=n.slice(0,f).concat(n.slice(h+1)))}return{summary:[s,i,o,r,l],outliers:c,iqr:a}}function aSe(t,e={}){if(!Array.isArray(t)||t.length===0)return null;const n=t.slice().sort((d,f)=>d-f),i=n.length;let o=e.bandwidth;if(!(typeof o=="number"&&o>0)){const d=EN(n),f=kr(n,.75)-kr(n,.25);o=.9*(f>0?Math.min(d,f/1.349):d)*Math.pow(i,-1/5)}if(!isFinite(o)||o<=0){const d=n[0],f=Math.abs(d)>0?Math.abs(d)*.001:.001;return{density:[[d-f,0],[d,1],[d+f,0]],bandwidth:f}}const r=Math.max(8,Math.floor(e.resolution||64)),a=n[0]-2*o,l=(n[i-1]+2*o-a)/(r-1),c=1/(i*o*Math.sqrt(2*Math.PI)),u=[];for(let d=0;do+=r)}const i=t.reduce((o,r)=>o+r,0);if(i<=0)return n;if(e.normalize==="relative")return n.map(o=>o/i*100);if(e.normalize==="density"){const o=e.binWidth;if(typeof o=="number"&&o>0)return n.map(r=>r/(i*o))}return n}function IN(t,e){var n;if(!t||typeof t!="object"||Array.isArray(t))return null;let i=null;if(Array.isArray(t.points)?i=t.points:Array.isArray((n=t.y)==null?void 0:n.points)?i=t.y.points:e&&Array.isArray(t.y)&&typeof t.y[0]=="number"&&(i=t.y),!i)return null;const o=[];for(let r=0;rvt(Ye({},p),{data:Array.isArray(p==null?void 0:p.data)?p.data.slice():p==null?void 0:p.data})));const r=o.histogramRawSeries,a=((n=i.plotOptions)==null?void 0:n.histogram)||{},s=r.map(p=>kN(p==null?void 0:p.data));let l=[];if(s.length===1)l=s[0];else for(const p of s)l=l.concat(p);const c=nSe(l,{bins:a.bins,binWidth:a.binWidth,range:a.range});if(!c)return e.histogramData={edges:[],binWidth:0,counts:[],rule:"",capped:!1},r;const{edges:u,binWidth:d}=c,f=s.map(p=>iSe(p,u));e.histogramData={edges:u,binWidth:d,counts:f,rule:c.rule,capped:c.capped};const h=o.collapsedSeriesIndices||[];return r.map((p,g)=>{if(h.indexOf(g)!==-1)return vt(Ye({},p),{data:[]});const m=sSe(f[g],{normalize:a.normalize,cumulative:a.cumulative,binWidth:d}),v=[];for(let b=0;b{if(!Array.isArray(r==null?void 0:r.data))return r;let a=!1;const s=r.data.map(l=>{if(Array.isArray(l==null?void 0:l.y)&&l.y.length===5&&!Ng.has(l))return l;const c=IN(l,!1);if(!c)return l;const u=rSe(c,{whiskers:o});if(!u)return l;a=!0;const d=vt(Ye({},l),{y:u.summary,points:c});return Ng.add(d),d});return a?vt(Ye({},r),{data:s}):r})}function uSe(t,e){var n,i;if(!Array.isArray(t))return t;const o=((i=(n=e.config.plotOptions)==null?void 0:n.violin)==null?void 0:i.kde)||{};return t.map(r=>{if(!Array.isArray(r==null?void 0:r.data))return r;let a=!1;const s=r.data.map(l=>{var c;if(Array.isArray((c=l==null?void 0:l.y)==null?void 0:c.density)&&l.y.density.length&&!Ng.has(l))return l;const u=IN(l,!0);if(!u)return l;const d=aSe(u,{bandwidth:o.bandwidth,resolution:o.resolution});if(!d)return l;a=!0;const f=vt(Ye({},l),{y:{density:d.density,points:u}});return Ng.add(f),f});return a?vt(Ye({},r),{data:s}):r})}const dSe=3e3;function fSe(t,e){let n=0,i=0;for(const l of t)n+=l.length,l.length>i&&(i=l.length);if(n<=e)return{clusters:t,stride:1,total:n,kept:n};const o=l=>{let c=0;for(const u of t)c+=Math.ceil(u.length/l);return c};let r=Math.max(2,Math.ceil(n/e));for(;re;)r++;let a=0;return{clusters:t.map(l=>{const c=[];for(let u=0;ua.rows),i);o.stride>1&&console.warn(`ApexCharts: rowSeries() thinned ${o.total} rows to ${o.kept} (every ${o.stride}${o.stride===2?"nd":o.stride===3?"rd":"th"} row) to stay under maxRows=${i}. Raise maxRows to draw more.`);const r=t.globals&&t.globals.colors||[];return e.map((a,s)=>{const l=r[a.realIndex]||r[0];return{name:a.name,data:o.clusters[s].map((c,u)=>Ye({id:`${a.realIndex}:${s}:${u}`,x:a.name,y:c},l?{fillColor:l}:{}))}})}function hSe(t,e){const n=t.globals,i=t.histogramData,o=n&&n.histogramRawSeries;if(!i||!Array.isArray(i.edges)||i.edges.length<2||!Array.isArray(o)||!o.length)return null;const r=n&&n.collapsedSeriesIndices||[],a=i.edges,s=[];return o.forEach((l,c)=>{var u;if(r.indexOf(c)!==-1)return;const d=oSe(kN(l&&l.data),a),f=t.seriesData&&((u=t.seriesData.seriesNames)==null?void 0:u[c])||(l==null?void 0:l.name);d.forEach((h,p)=>{const g=`${GE(a[p])}-${GE(a[p+1])}`;s.push({name:o.length>1&&f?`${f} ${g}`:g,realIndex:c,rows:h})})}),s.length?DN(t,s,e):null}function GE(t){if(!isFinite(t))return String(t);const e=Math.round(t);return Math.abs(t-e)<1e-6?String(e):String(Number(t.toFixed(2)))}function RN(t){return(e,n)=>{var i;const o=t(e);if(!Array.isArray(o)||!o.length)return null;const r=e.globals&&e.globals.collapsedSeriesIndices||[],a=e.globals&&((i=e.globals.categoryLabels)!=null&&i.length?e.globals.categoryLabels:e.globals.labels)||[],s=[];return o.forEach((l,c)=>{var u;if(r.indexOf(c)!==-1||!Array.isArray(l))return;const d=e.seriesData&&((u=e.seriesData.seriesNames)==null?void 0:u[c]);l.forEach((f,h)=>{const p=a[h]!=null?String(a[h]):`#${h+1}`;s.push({name:o.length>1&&d?`${d} ${p}`:p,realIndex:c,rows:Array.isArray(f)?f.slice():[]})})}),s.length?DN(e,s,n):null}}const pSe=RN(t=>{var e;return(e=t.candleData)==null?void 0:e.seriesBoxPoints}),gSe=RN(t=>{var e;return(e=t.violinData)==null?void 0:e.seriesViolinPoints});Yc("histogram",lSe);Yc("boxPlot",cSe);Yc("violin",uSe);f$("histogram",hSe);f$("boxPlot",pSe);f$("violin",gSe);class mSe{constructor(e,n){this.w=e,this.ctx=n}isActive(){return this.w.config.chart.requestedType==="waterfall"}drawConnectors(){var e,n;const i=this.w;if(!this.isActive())return;const o=(n=(e=i.config.plotOptions)==null?void 0:e.waterfall)==null?void 0:n.connectors;if(!o||o.show===!1)return;const r=i.dom.elGraphical,a=i.waterfallData&&i.waterfallData.geometry;if(!r||!a)return;this.removeConnectors();const s=new Be(i,this.ctx),l=s.group({class:"apexcharts-waterfall-connectors"}),c=o.color||i.config.grid.borderColor,u=o.strokeWidth==null?1:o.strokeWidth,d=o.strokeDashArray==null?3:o.strokeDashArray;let f=0;for(let p=0;p.5))continue;const w=v.horizontal?s.drawLine(v.levelEnd,v.slotEnd,v.levelEnd,b.slotStart,c,d,u):s.drawLine(v.slotEnd,v.levelEnd,b.slotStart,v.levelEnd,c,d,u);w.node.classList.add("apexcharts-waterfall-connector"),l.add(w),f++}}if(!f)return;l.attr("clip-path",`url(#gridRectBarMask${i.globals.cuid})`);const h=r.node.querySelector(".apexcharts-xaxis");h?r.node.insertBefore(l.node,h):r.add(l),this.holdUntilBarsLand(l)}removeConnectors(){const e=this.w.dom.elGraphical,n=e&&e.node.querySelector(".apexcharts-waterfall-connectors");n&&n.parentNode&&n.parentNode.removeChild(n)}holdUntilBarsLand(e){const n=this.w;Ot.isBrowser()&&n.globals.shouldAnimate&&!n.globals.animationEnded&&(e.node.classList.add("apexcharts-element-hidden"),n.globals.delayedElements.push({el:e.node,holdUntilComplete:!0}))}}function vSe(t,e,n){const i=n&&n[e]!==void 0?n[e]:e+1;return t==null?{x:i,y:null,isSubtotal:!1,isTotal:!1,rest:{}}:Array.isArray(t)?{x:t[0]!==void 0?t[0]:i,y:t[1],isSubtotal:!1,isTotal:!1,rest:{}}:typeof t=="object"?{x:t.x!==void 0?t.x:i,y:t.y,isSubtotal:t.isSubtotal===!0,isTotal:t.isTotal===!0,rest:t}:{x:i,y:t,isSubtotal:!1,isTotal:!1,rest:{}}}function bSe(t){for(let e=0;evt(Ye({},g),{data:Array.isArray(g==null?void 0:g.data)?g.data.slice():g==null?void 0:g.data})));const s=a.waterfallRawSeries,l=((i=(n=r.plotOptions)==null?void 0:n.waterfall)==null?void 0:i.colors)||{},c=(o=r.xaxis)==null?void 0:o.categories,u=a.collapsedSeriesIndices||[],d=[],f=[],h=[],p=s.map((g,m)=>{const v=Array.isArray(g==null?void 0:g.data)?g.data:[];if(u.indexOf(m)!==-1)return d[m]=[],f[m]=[],h[m]=[],vt(Ye({},g),{data:[]});if(bSe(v))return d[m]=v.map(y=>{const w=Array.isArray(y)?y[1]:y&&typeof y=="object"?y.y:y;if(!Array.isArray(w))return null;const x=Ee.parseNumber(w[0]),$=Ee.parseNumber(w[1]);return x===null||$===null?null:$-x}),f[m]=v.map(y=>{const w=Array.isArray(y)?y[1]:y&&typeof y=="object"?y.y:y,x=Array.isArray(w)?Ee.parseNumber(w[1]):null;return x===null?0:x}),h[m]=v.map(()=>null),g;const b=xSe(v,c,l);return d[m]=b.values,f[m]=b.cumulative,h[m]=b.kinds,vt(Ye({},g),{data:b.data})});return e.waterfallData={values:d,cumulative:f,kinds:h,geometry:[]},p}Yc("waterfall",wSe);Vn.registerFeatures({waterfall:mSe});function SSe(t,e,n){const i=n&&n[e]!==void 0?n[e]:e+1;return t==null?{x:i,y:null,rest:{}}:Array.isArray(t)?{x:t[0]!==void 0?t[0]:i,y:t[1],rest:{}}:typeof t=="object"?{x:t.x!==void 0?t.x:i,y:t.y,rest:t}:{x:i,y:t,rest:{}}}function CSe(t){for(let e=0;evt(Ye({},v),{data:Array.isArray(v==null?void 0:v.data)?v.data.slice():v==null?void 0:v.data})));const r=o.dumbbellRawSeries;if(r.some(v=>CSe(Array.isArray(v==null?void 0:v.data)?v.data:[])))return e.dumbbellData={form:"pairs",names:[],values:[],order:[],carrier:0,hidden:[]},t;const s=(n=i.xaxis)==null?void 0:n.categories,l=o.collapsedSeriesIndices||[],{xs:c,rows:u,byX:d}=$Se(r,s),f=[],h=[],p=[];for(let v=0;vw)&&(w=P,$=_))}if(y===null||w===null){h.push(null),g.push(vt(Ye({},u[v]),{x:c[v],y:null}));continue}h.push([x,$]),g.push(vt(Ye({},u[v]),{x:c[v],y:[y,w]}))}e.dumbbellData={form:"series",names:r.map((v,b)=>{var y;return(y=v==null?void 0:v.name)!=null?y:`Series ${b+1}`}),values:f,order:h,carrier:p.length?p[0]:0,hidden:r.map((v,b)=>b).filter(v=>l.indexOf(v)!==-1)};const m=e.dumbbellData.carrier;return r.map((v,b)=>vt(Ye({},v),{data:b===m&&p.length?g:[]}))}Yc("dumbbell",ASe);const vh=3;class _Se{constructor(e,n){this.w=e,this.ctx=n,this._hovered=-1}isActive(){return this.w.config.chart.requestedType==="streamgraph"}_yPx(e){var n;const i=this.w,o=i.globals,r=i.layout.gridHeight,a=o.maxY-o.minY;if(!a||!isFinite(a))return r/2;const s=(e-o.minY)/a;return(n=i.config.yaxis[0])!=null&&n.reversed?s*r:r-s*r}draw(){this.isActive()&&(this.clearDim(),this.bindHover(),this.drawLabels())}drawLabels(){var e,n,i,o,r,a,s;const l=this.w;if(!this.isActive())return;const c=(n=(e=l.config.plotOptions)==null?void 0:e.streamgraph)==null?void 0:n.labels;if(!c||c.show===!1)return;const u=l.dom.elGraphical,d=l.streamgraphData;if(!u||!d)return;this.removeLabels();const f=new Be(l,this.ctx),h=f.group({class:"apexcharts-streamgraph-labels"}),p=((i=c.style)==null?void 0:i.fontSize)||"auto",g=((o=c.style)==null?void 0:o.fontFamily)||l.config.chart.fontFamily,m=((r=c.style)==null?void 0:r.fontWeight)||600,v=c.minWidth==null?24:c.minWidth,b=[];for(let x=0;xp&&(p=S)}if(p<=0)return null;const g=this._resolveFontSize(n,p),m=String(l.names[e]);let v=g,b=a.getTextRects(m,`${v}px`,i,"",!0,o);if(py.width&&n==="auto"){const $=Math.floor(v*(y.width/b.width));if($1){const I=Math.abs(Number(d[Math.min($.r+1,f-1)])-Number(d[Math.max($.l-1,0)]));P=isFinite(I)?I:0}if(PO*2.2&&M.push(S+O/2+2,_-O/2-2);for(const I of M){let k=$.l,E=1/0;for(let R=$.l;R<=$.r;R++){const D=Math.abs(Number(d[R])-I);D=6)break}return x.length?{k:e,weight:p,candidates:x}:null}_runs(e,n,i){const o=[];let r=0;for(;r=n;)a++,e[a]>s&&(s=e[a]);o.push({l:r,r:a,maxT:s}),r=a+1}return o.sort((a,s)=>s.maxT-a.maxT)}_widestRun(e,n,i,o){let r=-1;for(const a of this._runs(e,i,o)){const s=Number(n[a.r])-Number(n[a.l]);isFinite(s)&&s>r&&(r=s)}return r>=0?{width:r}:null}_deconflict(e){const n=e.slice().sort((r,a)=>a.weight-r.weight),i=[],o=r=>!i.some(a=>r.lefta.box.left&&r.topa.box.top);for(const r of n)for(const a of r.candidates){const s={left:a.x-a.width/2,right:a.x+a.width/2,top:a.y-a.height/2,bottom:a.y+a.height/2};if(o(s)){i.push(vt(Ye({k:r.k},a),{box:s}));break}}return i}_autoBounds(){var e,n;const i=((n=(e=this.w.config.plotOptions)==null?void 0:e.streamgraph)==null?void 0:n.labels)||{};return{min:i.minFontSize==null?9:i.minFontSize,max:i.maxFontSize==null?30:i.maxFontSize}}_resolveFontSize(e,n){if(e!=="auto"){const r=parseFloat(e);return isFinite(r)&&r>0?r:12}const{min:i,max:o}=this._autoBounds();return Math.max(i,Math.min(o,Math.round(n*.36)))}_contrastOn(e){var n;const i=this.w,o=(n=i.globals.colors)==null?void 0:n[e],r=typeof o=="string"?Ee.parseHex(o):null;return r?Ee.relativeLuminance(r)>.45?"#000000":"#ffffff":i.config.chart.foreColor}removeLabels(){const e=this.w.dom.elGraphical,n=e&&e.node.querySelector(".apexcharts-streamgraph-labels");n&&n.parentNode&&n.parentNode.removeChild(n)}bindHover(){const e=this.w;if(!Ot.isBrowser()||this._hoverCfg().show===!1)return;const n=e.dom.baseEl&&e.dom.baseEl.querySelector(".apexcharts-svg");!n||n.__apexStreamHover||(n.__apexStreamHover=!0,n.addEventListener("mousemove",i=>{!this.isActive()||!this.w.streamgraphData||this._dim(this._bandAt(i))}),n.addEventListener("mouseleave",()=>{this._dim(-1)}))}_hoverCfg(){var e,n;return((n=(e=this.w.config.plotOptions)==null?void 0:e.streamgraph)==null?void 0:n.hover)||{}}_bandAt(e){const n=this.w,i=n.streamgraphData;if(!i||!i.order.length)return-1;const o=n.dom.baseEl&&n.dom.baseEl.querySelector(".apexcharts-svg");if(!o)return-1;const r=o.getBoundingClientRect(),a=n.globals.svgWidth?r.width/n.globals.svgWidth:1,s=so.screenXToPlotPx(n,e.clientX),l=(e.clientY-r.top)/(a||1)-n.layout.translateY;if(s<0||s>n.layout.gridWidth||l<0||l>n.layout.gridHeight)return-1;const c=n.globals.seriesXvalues[i.order[0]];if(!Array.isArray(c)||!c.length)return-1;const u=n.interact?n.interact.capturedDataPointIndex:-1;let d=-1;if(u>=0&&u=b&&l<=y)return g;const w=le<0||c===e;for(let l=0;l({j:o,v:t[o]instanceof Date?t[o].getTime():t[o]}));n.sort((o,r)=>o.v-r.v);const i=n.map(o=>o.j);for(let o=0;op&&(p=f[m],g=m);i[d]=h,o[d]=g}const r=e.slice().sort((u,d)=>o[u]-o[d]||u-d);let a=0,s=0;const l=[],c=[];for(let u=0;uvt(Ye({},O),{data:Array.isArray(O==null?void 0:O.data)?O.data.slice():O==null?void 0:O.data})));const a=r.streamgraphRawSeries;if(a.some(O=>ESe(Array.isArray(O==null?void 0:O.data)?O.data:[])))return e.streamgraphData=null,t;const s=((n=o.plotOptions)==null?void 0:n.streamgraph)||{},l=PSe.indexOf(s.offset)!==-1?s.offset:"wiggle",c=OSe.indexOf(s.order)!==-1?s.order:"inside-out",u=(i=o.xaxis)==null?void 0:i.categories,d=r.collapsedSeriesIndices||[],{xs:f,rows:h,grids:p}=MSe(a,u),g=ISe(f),m=g?g.map(O=>f[O]):f,v=g?g.map(O=>h[O]):h,b=m.length;let y=!1;const w=[];for(let O=0;OO.slice());for(let O=0;Onull),T=a.map(()=>null);for(let O=0;O{var I;return(I=O==null?void 0:O.name)!=null?I:`Series ${M+1}`}),xs:m,values:w,lows:P,highs:T,order:S,offset:l,hidden:a.map((O,M)=>M).filter(O=>d.indexOf(O)!==-1)},a.map((O,M)=>{const I=P[M],k=T[M];if(!I||!k)return vt(Ye({},O),{data:[]});const E=new Array(b);for(let R=0;R{if(typeof t!="function")return t;const o=t({series:e.seriesData.series,seriesIndex:n,dataPointIndex:i,w:e});return Number.isFinite(o)?o:0};function LN(t){return-Math.cos(t*Math.PI)/2+.5}function LSe(t,e,n,i){t=Math.min(Math.max(t,0),1),n=Math.min(Math.max(n,0),1);const o=3*t,r=3*(n-t)-o,a=1-o-r,s=3*e,l=3*(i-e)-s,c=1-s-l,u=h=>((a*h+r)*h+o)*h,d=h=>((c*h+l)*h+s)*h,f=h=>{let p=0,g=1,m=h;if(mg)return g;for(;pv?p=m:g=m,m=(p+g)/2}return m};return h=>h<=0?0:h>=1?1:d(f(h))}const Mi=new Map,FSe=t=>t;Mi.set("linear",FSe);Mi.set("easeInOutSine",LN);Mi.set("easeInSine",t=>1-Math.cos(t*Math.PI/2));Mi.set("easeOutSine",t=>Math.sin(t*Math.PI/2));Mi.set("easeInQuad",t=>t*t);Mi.set("easeOutQuad",t=>1-(1-t)*(1-t));Mi.set("easeInOutQuad",t=>t<.5?2*t*t:1-Math.pow(-2*t+2,2)/2);Mi.set("easeInCubic",t=>t*t*t);Mi.set("easeOutCubic",t=>1-Math.pow(1-t,3));Mi.set("easeInOutCubic",t=>t<.5?4*t*t*t:1-Math.pow(-2*t+2,3)/2);Mi.set("easeOutBack",t=>1+2.70158*Math.pow(t-1,3)+1.70158*Math.pow(t-1,2));Mi.set("easeInOutBack",t=>{const n=2.5949095;return t<.5?Math.pow(2*t,2)*((n+1)*2*t-n)/2:(Math.pow(2*t-2,2)*((n+1)*(t*2-2)+n)+2)/2});function NSe(t){return Array.isArray(t)&&t.length===4&&t.every(e=>typeof e=="number")}function BSe(t){return typeof t=="function"?KE(t):NSe(t)?LSe(t[0],t[1],t[2],t[3]):typeof t=="string"&&Mi.has(t)?KE(Mi.get(t)):LN}function KE(t){return e=>{const n=t(e);return typeof n=="number"&&isFinite(n)?n:e}}function zSe(t,e){const n=new Set(t.exits),i=[];let o=0;for(let r=0;rl[0]==="C"?[Number(l[5]),Number(l[6])]:[Number(l[1]),Number(l[2])]);for(const l of s)if(!isFinite(l[0])||!isFinite(l[1]))return null;return{body:o,closing:r,segType:a,anchors:s}}function as(t,e,n){return[t[0]+(e[0]-t[0])*n,t[1]+(e[1]-t[1])*n]}function HSe(t,e,n){const i=t,o=[e[1],e[2]],r=[e[3],e[4]],a=[e[5],e[6]],s=as(i,o,n),l=as(o,r,n),c=as(r,a,n),u=as(s,l,n),d=as(l,c,n),f=as(u,d,n);return{first:["C",s[0],s[1],u[0],u[1],f[0],f[1]],second:["C",d[0],d[1],c[0],c[1],a[0],a[1]],mid:f}}function WSe(t,e,n){const i=[e[1],e[2]],o=as(t,i,n);return{first:["L",o[0],o[1]],second:["L",i[0],i[1]],mid:o}}function qE(t,e){const{body:n,closing:i,segType:o,anchors:r}=t,a=r.length,s=e.length,l=f=>o==="C"?["C",f[0],f[1],f[0],f[1],f[0],f[1]]:["L",f[0],f[1]],c=[["M",r[0][0],r[0][1]]];let u=0;for(;uc.push(f.slice())),c}function ZE(t,e,n,i,o,r){const a=UE(t,i,r);if(!a)return null;const s=UE(e,o,r);if(!s||a.segType!==s.segType||(a.closing||s.closing)&&(!a.closing||!s.closing||a.closing[0][0]!==s.closing[0][0]))return null;const l=n.map(u=>u.oldJ),c=n.map(u=>u.newJ);return{from:tw(qE(a,l)),toInterp:tw(qE(s,c))}}function td(t){var e;const n=t.config.chart.animations;if(!n||n.enabled===!1||!n.dynamicAnimation||n.dynamicAnimation.enabled===!1)return!1;const i=(e=n.largeDatasetThreshold)!=null?e:0;return i>0&&t.globals.dataPoints>i?!1:!!(Ot.isBrowser()&&t.globals.dataChanged&&t.globals.shouldAnimate)}function Or(t,e,n){var i,o,r,a;if((i=t.axisFlags)!=null&&i.isXNumeric){const l=(r=(o=t.seriesData)==null?void 0:o.seriesX)==null?void 0:r[e];if(l&&l.length&&l[n]!=null)return"x:"+l[n]}const s=(a=t.globals.labels)==null?void 0:a[n];return s!=null&&String(s)!==""?"c:"+(Array.isArray(s)?s.join(" "):String(s)):"j:"+n}function jSe(t,e,n){var i,o;if(t.isXNumeric){const a=(i=t.seriesX)==null?void 0:i[e];if(a&&a.length&&a[n]!=null)return"x:"+a[n]}const r=(o=t.labels)==null?void 0:o[n];return r!=null&&String(r)!==""?"c:"+(Array.isArray(r)?r.join(" "):String(r)):"j:"+n}function VSe(t,e){const n=new Map;t.forEach((c,u)=>{n.has(c)||n.set(c,u)});const i=new Array(e.length),o=new Set;let r=-1,a=!0,s=t.length===e.length;e.forEach((c,u)=>{const d=n.has(c)&&!o.has(n.get(c))?n.get(c):-1;i[u]=d,d!==-1&&(o.add(d),d{const i=e.get(n)||0;return e.set(n,i+1),i===0?n:`${n}#${i}`})}function Tv(t,e,n=!1,i=!1){var o,r;if(!td(t))return null;const a=t.globals.prevStreamFrame;if(!a)return null;const s=(o=a.seriesY)==null?void 0:o[e],l=(r=t.seriesData.series)==null?void 0:r[e];if(!Array.isArray(s)||!Array.isArray(l)||!s.length||!l.length)return null;const c=JE(s.map((f,h)=>jSe(a,e,h))),u=JE(l.map((f,h)=>Or(t,e,h))),d=VSe(c,u);return!d.ordered&&!i||!d.changed&&!n?null:{join:d,oldKeys:c,newKeys:u}}function XSe(t){var e,n;const i=t.config.chart.animations;return BSe((n=(e=i.dynamicAnimation)==null?void 0:e.easing)!=null?n:i.easing)}function QE(t,e,n,i,o){const r=performance.now(),a=s=>{if(t.globals.isDestroyed)return;const l=Math.max(0,Math.min(1,(s-r)/e));i(n(l),l),l<1?We.requestAnimationFrame(a):o&&o()};We.requestAnimationFrame(a)}function eM(t,{elPointsMain:e,realIndex:n,speed:i}){var o,r,a,s;if(!(e!=null&&e.node))return!1;const l=Tv(t,n,!0);if(!l)return!1;const c=t.globals.prevStreamFrame;if(!c)return!1;const u=(o=c.xPixels)==null?void 0:o[n],d=(r=c.yPixels)==null?void 0:r[n];if(!u||!d)return!1;const f=e.node.querySelectorAll(".apexcharts-marker");if(!f.length)return!1;const h=((a=t.globals.seriesXvalues)==null?void 0:a[n])||[],p=((s=t.globals.seriesYvalues)==null?void 0:s[n])||[],g=XSe(t),m=Math.max(1,i||1);return e.node.classList.remove("apexcharts-element-hidden"),f.forEach(v=>{var b,y,w,x,$,S,_,P,T;const O=parseInt((y=(b=v.getAttribute("j"))!=null?b:v.getAttribute("rel"))!=null?y:"",10);if(!isFinite(O)||O<0||O>=l.join.toOld.length)return;const M=l.join.toOld[O],I=h[O]!=null&&p[O]!=null?[h[O],p[O]]:null;if(M===-1||!I){const z=v.style;z.opacity="0",QE(t,m,g,W=>{z.opacity=String(W)},()=>{z.opacity=""});return}const k=((w=u[M])!=null?w:NaN)-I[0],E=((x=d[M])!=null?x:NaN)-I[1];if(!isFinite(k)||!isFinite(E))return;const R=(_=(S=($=c.rPixels)==null?void 0:$[n])==null?void 0:S[M])!=null?_:NaN,D=parseFloat((T=(P=v.getAttribute("r"))!=null?P:v.getAttribute("default-marker-size"))!=null?T:""),F=isFinite(R)&&isFinite(D)&&D>0&&Math.abs(R-D)>.25;if(!(Math.abs(k)>=.5||Math.abs(E)>=.5)&&!F)return;const B=z=>{const W=k*(1-z),j=E*(1-z);if(F){const U=(R+(D-R)*z)/D;v.setAttribute("transform",`translate(${W+I[0]*(1-U)}, ${j+I[1]*(1-U)}) scale(${U})`)}else v.setAttribute("transform",`translate(${W}, ${j})`)};B(0),QE(t,m,g,B,()=>{v.removeAttribute("transform")})}),!0}function YSe(t,{type:e,realIndex:n,pathFromLine:i,pathFromArea:o,linePaths:r,areaPaths:a}){var s,l;const c=Tv(t,n);if(!c)return null;const{join:u,oldKeys:d,newKeys:f}=c,h=t.globals.prevStreamFrame;if(!h)return null;const p=(s=h.seriesY)==null?void 0:s[n],g=(l=t.seriesData.series)==null?void 0:l[n];if(p.length<2||g.length<2||p.some(b=>b===null)||g.some(b=>b===null))return null;const m=zSe(u,d.length),v={};return Array.isArray(r)&&r.length===1&&i&&(v.line=ZE(i,r[0],m,d.length,f.length,!1)),e==="area"&&Array.isArray(a)&&a.length===1&&o&&(v.area=ZE(o,a[0],m,d.length,f.length,!0)),!v.line&&!v.area?null:v}function GSe(t){const e=/^M\s*([+-]?[\d.eE]+)[\s,]+([+-]?[\d.eE]+)/.exec(t||"");if(!e)return null;const n=parseFloat(e[1]),i=parseFloat(e[2]);return isFinite(n)&&isFinite(i)?{x:n,y:i}:null}function KSe({w:t,elSeries:e,record:n,newKeys:i,isHorizontal:o,speed:r}){var a;if(!td(t)||!n||!Array.isArray(n.paths)||!(e!=null&&e.node))return;const s=new Set(i),l=n.paths.filter(d=>d&&d.d&&d.key!=null&&!s.has(d.key));if(!l.length)return;const c=new Be(t),u=(a=t.globals.colors)==null?void 0:a[parseInt(String(n.realIndex),10)];l.forEach(d=>{let f=d.fill||u||"#c8c8c8";String(f).indexOf("url(")===0&&(f=u||"#c8c8c8");const h=c.drawPath({d:d.d,stroke:"none",strokeWidth:0,fill:f,fillOpacity:1,classes:"apexcharts-bar-ghost"}),p=h.node;p.setAttribute("pointer-events","none"),h.attr("clip-path",`url(#gridRectBarMask${t.globals.cuid})`),e.node.insertBefore(p,e.node.firstChild);const g=GSe(d.d);let m=o?"left center":"center bottom";try{const x=p.getBBox();g&&x&&(o?m=Math.abs(g.x-x.x)<=Math.abs(g.x-(x.x+x.width))?"left center":"right center":m=Math.abs(g.y-(x.y+x.height))<=Math.abs(g.y-x.y)?"center bottom":"center top")}catch{}const v=p.style;v.transformBox="fill-box",v.transformOrigin=m;const b=Math.max(1,r||1),y=performance.now(),w=x=>{if(t.globals.isDestroyed||!p.parentNode)return;const $=Math.max(0,Math.min(1,(x-y)/b)),S=1-Math.pow(1-$,3),_=1-S;v.transform=o?`scaleX(${_})`:`scaleY(${_})`,v.opacity=String(1-S),$<1?We.requestAnimationFrame(w):p.parentNode.removeChild(p)};We.requestAnimationFrame(w)})}class USe{constructor(e){this.w=e.w,this.barCtx=e,this.totalFormatter=this.w.config.plotOptions.bar.dataLabels.total.formatter,this.totalFormatter||(this.totalFormatter=this.w.config.dataLabels.formatter)}handleBarDataLabels(e){var n,i;const{x:o,y:r,y1:a,y2:s,i:l,j:c,realIndex:u,columnGroupIndex:d,barHeight:f,barWidth:h,barXPosition:p,barYPosition:g,visibleSeries:m}=e,v=this.w,b=new Be(this.barCtx.w),y=v.waterfallData&&v.waterfallData.values,w=y&&y[u]&&y[u][c]!=null?y[u][c]:null,x=Array.isArray(this.barCtx.strokeWidth)?this.barCtx.strokeWidth[u]:this.barCtx.strokeWidth;let $,S;v.axisFlags.isXNumeric&&!v.globals.isBarHorizontal?($=o+h*(m+1),S=r+f*(m+1)-x):($=o+h*m,S=r+f*m);let _=null,P=null,T=o,O=r,M={};const I=v.config.dataLabels,k=this.barCtx.barOptions.dataLabels,E=this.barCtx.barOptions.dataLabels.total;typeof g<"u"&&(this.barCtx.isRangeBar||this.barCtx.isPyramid)&&(S=g,O=g),typeof p<"u"&&this.barCtx.isVerticalGroupedRangeBar&&($=p,T=p);const R=Bg(I.offsetX,v,u,c),D=Bg(I.offsetY,v,u,c);let F={width:0,height:0};if(v.config.dataLabels.enabled){const B=w!==null?w:v.seriesData.series[u][c];F=b.getTextRects(v.config.dataLabels.formatter?v.config.dataLabels.formatter(B,vt(Ye({},v),{seriesIndex:u,dataPointIndex:c,w:v})):v.formatters.yLabelFormatters[0](B),parseFloat(I.style.fontSize).toString(),I.style.fontFamily,void 0,!0,I.style.fontWeight)}const N={x:o,y:r,i:l,j:c,realIndex:u,columnGroupIndex:d,bcx:$,bcy:S,barHeight:f,barWidth:h,textRects:F,strokeWidth:x,dataLabelsX:T,dataLabelsY:O,dataLabelsConfig:I,barDataLabelsConfig:k,barTotalDataLabelsConfig:E,offX:R,offY:D};if(this.barCtx.isHorizontal?M=this.calculateBarsDataLabelsPosition(N):M=this.calculateColumnsDataLabelsPosition(N),w!==null&&this.barCtx.isHorizontal&&k.position==="center"){const B=(i=(n=v.waterfallData.geometry)==null?void 0:n[u])==null?void 0:i[c];B&&B.horizontal&&(M.dataLabelsX=(B.levelStart+B.levelEnd)/2+R)}return _=this.drawCalculatedDataLabels({x:M.dataLabelsX,y:M.dataLabelsY,val:w!==null?w:this.barCtx.isRangeBar?[a,s]:v.config.chart.stackType==="100%"?v.globals.seriesPercent[u][c]:v.seriesData.series[u][c],i:u,j:c,barWidth:h,barHeight:f,textRects:F,dataLabelsConfig:I}),v.config.chart.stacked&&E.enabled&&(P=this.drawTotalDataLabels({x:M.totalDataLabelsX,y:M.totalDataLabelsY,barWidth:h,barHeight:f,realIndex:u,j:c,textAnchor:M.totalDataLabelsAnchor,val:this.getStackedTotalDataLabel({realIndex:u,j:c}),rawVal:this.getStackedTotalValue({realIndex:u,j:c}),dataLabelsConfig:I,barTotalDataLabelsConfig:E})),{dataLabelsPos:M,dataLabels:_,totalDataLabels:P}}hasMultipleSeriesGroups(){return this.w.labelData.seriesGroups.length>1}getTotalGroupContext(e){if(!this.hasMultipleSeriesGroups())return null;const n=this.barCtx.barHelpers.getSeriesGroupIndex(e);return n<0?null:{groupIndex:n,group:this.w.labelData.seriesGroups[n]}}drawsStackedTotal(e){const n=this.barCtx.lastActiveBarSerieIndexByGroup,i=this.getTotalGroupContext(e);return i&&n&&n.length>i.groupIndex?n[i.groupIndex]===e:this.barCtx.lastActiveBarSerieIndex===e}getStackedTotalValue({realIndex:e,j:n}){const i=this.w,o=this.getTotalGroupContext(e),r=i.seriesData.stackedSeriesTotalsByGroups;return o&&r&&r[o.groupIndex]?r[o.groupIndex][n]:this.barCtx.stackedSeriesTotals[n]}getStackedTotalDataLabel({realIndex:e,j:n}){const i=this.w;let o=this.getStackedTotalValue({realIndex:e,j:n});return this.totalFormatter&&(o=this.totalFormatter(o,vt(Ye({},i),{seriesIndex:e,dataPointIndex:n,w:i}))),o}calculateColumnsDataLabelsPosition(e){const n=this.w;let{i,j:o,realIndex:r,y:a,bcx:s,barWidth:l,barHeight:c,textRects:u,dataLabelsX:d,dataLabelsY:f,dataLabelsConfig:h,barDataLabelsConfig:p,barTotalDataLabelsConfig:g,strokeWidth:m,offX:v,offY:b}=e,y,w;const x="middle",$=s;c=Math.abs(c);const S=n.config.plotOptions.bar.dataLabels.orientation==="vertical",{zeroEncounters:_}=this.barCtx.barHelpers.getZeroValueEncounters({i,j:o});s=s-m/2;const P=n.layout.gridWidth/n.globals.dataPoints;this.barCtx.isVerticalGroupedRangeBar?d+=l/2:(n.axisFlags.isXNumeric?d=s-l/2+v:d=s-P+l/2+v,!n.config.chart.stacked&&_>0&&n.config.plotOptions.bar.hideZeroBarsWhenGrouped&&(d-=l*_)),S&&(d=d+u.height/2-m/2-2);const T=n.seriesData.series[i][o]<0;let O=a;switch(this.barCtx.isReversed&&(O=a+(T?c:-c)),p.position){case"center":S?T?f=O-c/2+b:f=O+c/2-b:T?f=O-c/2+u.height/2+b:f=O+c/2+u.height/2-b;break;case"bottom":S?T?f=O-c+b:f=O+c-b:T?f=O-c+u.height+m+b:f=O+c-u.height/2+m-b;break;case"top":S?T?f=O+b:f=O-b:T?f=O-u.height/2-b:f=O+u.height+b;break}let M=O;const I=this.getTotalGroupContext(r);if((I?[I.group]:n.labelData.seriesGroups).forEach(E=>{var R;(R=this.barCtx[E.join(",")])==null||R.prevY.forEach(D=>{T?M=Math.max(D[o],M):M=Math.min(D[o],M)})}),this.drawsStackedTotal(r)&&g.enabled){const D=new Be(this.barCtx.w).getTextRects(this.getStackedTotalDataLabel({realIndex:r,j:o}),h.fontSize);T?y=M-D.height/2-b-g.offsetY+18:y=M+D.height+b+g.offsetY-18;const F=P;w=$+(n.axisFlags.isXNumeric?-l/2:l/2-F)+g.offsetX}return n.config.chart.stacked||(f<0?f=0+m:f+u.height/3>n.layout.gridHeight&&(f=n.layout.gridHeight-m)),{bcx:s,bcy:a,dataLabelsX:d,dataLabelsY:f,totalDataLabelsX:w,totalDataLabelsY:y,totalDataLabelsAnchor:x}}calculateBarsDataLabelsPosition(e){var n;const i=this.w;let{x:o,i:r,j:a,realIndex:s,bcy:l,barHeight:c,barWidth:u,textRects:d,dataLabelsX:f,strokeWidth:h,dataLabelsConfig:p,barDataLabelsConfig:g,barTotalDataLabelsConfig:m,offX:v,offY:b}=e;const y=i.layout.gridHeight/i.globals.dataPoints,{zeroEncounters:w}=this.barCtx.barHelpers.getZeroValueEncounters({i:r,j:a});u=Math.abs(u);let x;if(this.barCtx.isPyramid){const k=(n=d.centerOffset)!=null?n:0;x=l+c/2+b-k}else x=l-(this.barCtx.isRangeBar?0:y)+c/2+d.height/2+b-3;!i.config.chart.stacked&&w>0&&i.config.plotOptions.bar.hideZeroBarsWhenGrouped&&(x-=c*w);let $,S,_="start";const P=i.seriesData.series[r][a]<0;let T=o;if(this.barCtx.isReversed&&(T=o+(P?-u:u),_=P?"start":"end"),this.barCtx.isPyramid)f=i.layout.gridWidth/2+v;else switch(g.position){case"center":P?f=T+u/2-v:f=Math.max(d.width/2,T-u/2)+v;break;case"bottom":P?f=T+u-h-v:f=T-u+h+v;break;case"top":P?f=T-h-v:f=T-h+v;break}let O=T;const M=this.getTotalGroupContext(s);if((M?[M.group]:i.labelData.seriesGroups).forEach(k=>{var E;(E=this.barCtx[k.join(",")])==null||E.prevX.forEach(R=>{P?O=Math.min(R[a],O):O=Math.max(R[a],O)})}),this.drawsStackedTotal(s)&&m.enabled){const E=new Be(this.barCtx.w).getTextRects(this.getStackedTotalDataLabel({realIndex:s,j:a}),p.fontSize);P?($=O-h-v-m.offsetX,_="end"):$=O+v+m.offsetX+(this.barCtx.isReversed?-(u+h):h),S=x-d.height/2+E.height/2+m.offsetY+h,i.globals.barGroups.length>1&&!M&&(S=S-i.globals.barGroups.length/2*(c/2))}if(!i.config.chart.stacked){const k=P&&p.textAnchor!=="middle"?p.textAnchor==="start"?"end":"start":p.textAnchor;let E;g.orientation==="vertical"?E=d.height/2:k==="end"?E=d.width:k==="middle"?E=d.width/2:E=0;const D=(g.orientation==="vertical"?d.height:d.width)-E;f+D>i.layout.gridWidth-h&&(f=i.layout.gridWidth-D-h),f-E-1,w=(h.globals.collapsingSeriesIndices||[]).indexOf(o)>-1;if(w){const x=(u=h.globals.prevDataLabels)==null?void 0:u.get(`${o}::${Or(h,o,r)}`);x&&isFinite(x.val)&&(i=x.val)}if(c.enabled&&(!y||w)){b=m.group({class:"apexcharts-data-labels",transform:p});const x=h.config.dataLabels;((d=x.animate)!=null&&d.enabled||(f=x.countUp)!=null&&f.enabled)&&(b.node.setAttribute("data:dlKey",`${o}::${Or(h,o,r)}`),b.node.setAttribute("data:dlJ",String(r)),typeof i=="number"&&isFinite(i)&&b.node.setAttribute("data:dlVal",String(i)));let $="";typeof i<"u"&&($=v(i,vt(Ye({},h),{seriesIndex:o,dataPointIndex:r,w:h}))),!i&&h.config.plotOptions.bar.hideZeroBarsWhenGrouped&&($="");const S=h.seriesData.series[o][r]<0,_=h.config.plotOptions.bar.dataLabels.position;if(h.config.plotOptions.bar.dataLabels.orientation==="vertical"&&(_==="top"&&(S?c.textAnchor="end":c.textAnchor="start"),_==="center"&&(c.textAnchor="middle"),_==="bottom"&&(S?c.textAnchor="end":c.textAnchor="start")),this.barCtx.isRangeBar&&this.barCtx.barOptions.dataLabels.hideOverflowingLabels){const T=m.getTextRects($,parseFloat(c.style.fontSize).toString());lMath.abs(l)&&($=""):a.height/1.6>Math.abs(s)&&($=""));const P=Ye({},c);this.barCtx.isHorizontal&&i<0&&(c.textAnchor==="start"?P.textAnchor="end":c.textAnchor==="end"&&(P.textAnchor="start")),g.plotDataLabelsText({x:e,y:n,text:$,i:o,j:r,parent:b,dataLabelsConfig:P,alwaysDrawDataLabel:!0,offsetCorrection:!0})}return b}drawTotalDataLabels({x:e,y:n,val:i,rawVal:o,realIndex:r,j:a,textAnchor:s,barTotalDataLabelsConfig:l}){var c,u;const d=new Be(this.barCtx.w);let f;if(l.enabled&&typeof e<"u"&&typeof n<"u"&&this.drawsStackedTotal(r)){f=d.drawText({x:e,y:n,foreColor:l.style.color,text:i,textAnchor:s,fontFamily:l.style.fontFamily,fontSize:l.style.fontSize,fontWeight:l.style.fontWeight}),f.attr({class:"apexcharts-datalabel-total",cx:e,cy:n});const h=this.w.config.dataLabels;if((c=h.animate)!=null&&c.enabled||(u=h.countUp)!=null&&u.enabled){const{groupIndex:p}=this.barCtx.barHelpers.getGroupIndex(r);f.node.setAttribute("data:dlTotalKey",`${p}::${Or(this.w,r,a)}`),f.node.setAttribute("data:dlTotalSeries",String(r)),typeof o=="number"&&isFinite(o)&&f.node.setAttribute("data:dlTotalVal",String(o))}}return f}}function FN(t){var e,n,i,o,r,a,s;return((n=(e=t==null?void 0:t.config)==null?void 0:e.chart)==null?void 0:n.requestedType)!=="histogram"||((o=(i=t.config.plotOptions)==null?void 0:i.histogram)==null?void 0:o.overlap)===!1?!1:((s=(a=(r=t.seriesData)==null?void 0:r.series)==null?void 0:a.length)!=null?s:0)>1}let qSe=class{constructor(e){this.w=e.w,this.barCtx=e}initVariables(e){const n=this.w;this.barCtx.series=e,this.barCtx.totalItems=0,this.barCtx.seriesLen=0,this.barCtx.visibleI=-1,this.barCtx.visibleItems=1;for(let i=0;i0&&(this.barCtx.seriesLen=this.barCtx.seriesLen+1,this.barCtx.totalItems+=e[i].length),n.axisFlags.isXNumeric)for(let o=0;on.globals.minX&&n.seriesData.seriesX[i][o]i.map(o=>"none"))),this.barCtx.seriesLen===0&&(this.barCtx.seriesLen=1)}barSlotXSpan(){const e=this.w;if(this._slotXSpan!==void 0)return this._slotXSpan;let n=0;if(e.globals.dataPoints<=1){const i=e.globals.maxX-e.globals.minX;n=i>0?i/4:0}else if(n=this._unionMinXGap(),!(n>0)||!isFinite(n)){const i=e.globals.minXDiff;n=i>0&&isFinite(i)&&i!==.5?i:0}return this._slotXSpan=n,n}_unionMinXGap(){const n=this.w.seriesData.seriesX||[],i=[];for(let s=0;s0&&i.push(l)}if(!i.length)return 0;const o=new Array(i.length).fill(0);let r=NaN,a=1/0;for(;;){let s=1/0,l=-1;for(let c=0;c=u.length)continue;const d=u[o[c]];if(d!==d){o[c]++,c--;continue}d0&&c0&&p/h>0&&(a=p/h),l=a/f*parseInt(this.barCtx.barOptions.columnWidth,10)/100,l<1&&(l=1)}String(this.barCtx.barOptions.columnWidth).indexOf("%")===-1&&(l=parseInt(this.barCtx.barOptions.columnWidth,10)),c=n.layout.gridHeight-this.barCtx.baseLineY[this.barCtx.translationsIndex]-(this.barCtx.isReversed?n.layout.gridHeight:0)+(this.barCtx.isReversed?this.barCtx.baseLineY[this.barCtx.translationsIndex]*2:0),n.axisFlags.isXNumeric?i=this.barCtx.getBarXForNumericXAxis({x:i,j:0,realIndex:e,barWidth:l}).x:i=n.globals.padHorizontal+Ee.noExponents(a-l*this.barCtx.seriesLen)/2}return n.globals.barHeight=s,n.globals.barWidth=l,{x:i,y:o,yDivision:r,xDivision:a,barHeight:s,barWidth:l,zeroH:c,zeroW:u}}initializeStackedPrevVars(e){e.w.labelData.seriesGroups.forEach(i=>{e[i]||(e[i]={}),e[i].prevY=[],e[i].prevX=[],e[i].prevYF=[],e[i].prevXF=[],e[i].prevYVal=[],e[i].prevXVal=[]})}initializeStackedXYVars(e){e.w.labelData.seriesGroups.forEach(i=>{e[i]||(e[i]={}),e[i].xArrj=[],e[i].xArrjF=[],e[i].xArrjVal=[],e[i].yArrj=[],e[i].yArrjF=[],e[i].yArrjVal=[]})}getPathFillColor(e,n,i,o){var r;const a=this.w,s=new go(this.barCtx.w);let l=null;const c=this.barCtx.barOptions.distributed?i:n;let u=!1;this.barCtx.barOptions.colors.ranges.length>0&&this.barCtx.barOptions.colors.ranges.map(v=>{e[n][i]>=v.from&&e[n][i]<=v.to&&(l=v.color,u=!0)});const f=this.getDumbbellConnectorFill(n,i)||((r=a.config.series[n].data[i])==null?void 0:r.fill),h=this.barCtx.barOptions.isDumbbell?a.config.plotOptions.bar.dumbbell.connector:null;let p;return h&&h.color&&(l=h.color,p=h.opacity),{color:s.fillPath({seriesNumber:this.barCtx.barOptions.distributed?c:o,dataPointIndex:i,color:l,opacity:p,value:e[n][i],fillConfig:f,fillType:f!=null&&f.type?f.type:Array.isArray(a.config.fill.type)?a.config.fill.type[o]:a.config.fill.type}),useRangeColor:u}}getDumbbellConnectorFill(e,n){const i=this.w;if(!this.barCtx.barOptions.isDumbbell)return null;const o=i.dumbbellData;if(!o||o.form!=="series")return null;const r=i.config.plotOptions.bar.dumbbell.connector;if(r.color)return null;const a=o.order[n];if(!a)return null;const s=i.globals.colors[a[0]],l=i.globals.colors[a[1]];return!s||!l?null:{type:"gradient",gradient:{type:this.barCtx.isHorizontal?"horizontal":"vertical",gradientFrom:s,gradientTo:l,opacityFrom:r.opacity,opacityTo:r.opacity,stops:[0,100],inverseColors:!this.barCtx.isHorizontal}}}getStrokeWidth(e,n,i){let o=0;const r=this.w;return typeof this.barCtx.series[e][n]>"u"||this.barCtx.series[e][n]===null||r.config.chart.type==="bar"&&!this.barCtx.series[e][n]?this.barCtx.isNullValue=!0:this.barCtx.isNullValue=!1,r.config.stroke.show&&(this.barCtx.isNullValue||(o=Array.isArray(this.barCtx.strokeWidth)?this.barCtx.strokeWidth[i]:this.barCtx.strokeWidth)),o}getStackedSeriesIndices(e){const n=this.w,i=n.labelData.seriesGroups,o=n.globals.columnSeries?new Set(n.globals.columnSeries.i):null,r=l=>!o||o.has(l);if(!i||i.length<2){const l=Array.from({length:e},(c,u)=>u).filter(r);return l.length?[l]:[]}const a=Array.from({length:i.length},()=>[]),s=[];for(let l=0;l-1?a[c].push(l):s.push(l)}return s.length&&a.push(s),a.filter(l=>l.length>0)}createBorderRadiusArr(e){var n;const i=this.w,o=!this.w.config.chart.stacked||i.config.plotOptions.bar.borderRadius<=0,r=e.length,a=((n=e[0])==null?void 0:n.length)|0,s=Array.from({length:r},()=>Array(a).fill(o?"top":"none"));if(o)return s;const l=i.config.plotOptions.bar.borderRadiusWhenStacked==="last",c=l?"top":"both",u=l?"bottom":"both",d=l?"none":"bottom",f=l?"none":"top";for(const h of this.getStackedSeriesIndices(r))for(let p=0;p0?g.push(v):b<0&&m.push(v)}if(g.length>0&&m.length===0)if(g.length===1)s[g[0]][p]=c;else{const v=g[0],b=g[g.length-1];for(const y of g)s[y][p]=y===v?d:y===b?"top":"none"}else if(m.length>0&&g.length===0)if(m.length===1)s[m[0]][p]=u;else{const v=Math.min(...m),b=Math.max(...m);for(const y of m)s[y][p]=y===v?f:y===b?"bottom":"none"}else if(g.length>0&&m.length>0){const v=g[g.length-1];for(const y of g)s[y][p]=y===v?"top":"none";const b=Math.max(...m);for(const y of m)s[y][p]=y===b?"bottom":"none"}}return s}barBackground({j:e,i:n,x1:i,x2:o,y1:r,y2:a,elSeries:s}){const l=this.w,c=new Be(this.barCtx.w),d=new Xn(this.barCtx.w).getActiveConfigSeriesIndex();if(this.barCtx.barOptions.colors.backgroundBarColors.length>0&&d===n){e>=this.barCtx.barOptions.colors.backgroundBarColors.length&&(e%=this.barCtx.barOptions.colors.backgroundBarColors.length);const f=this.barCtx.barOptions.colors.backgroundBarColors[e],h=c.drawRect(typeof i<"u"?i:0,typeof r<"u"?r:0,typeof o<"u"?o:l.layout.gridWidth,typeof a<"u"?a:l.layout.gridHeight,this.barCtx.barOptions.colors.backgroundBarRadius,f,this.barCtx.barOptions.colors.backgroundBarOpacity);s.add(h),h.node.classList.add("apexcharts-backgroundBar")}}getColumnPaths({barWidth:e,barXPosition:n,y1:i,y2:o,strokeWidth:r,isReversed:a,series:s,seriesGroup:l,realIndex:c,i:u,j:d,w:f}){var h,p,g;const m=new Be(this.barCtx.w);r=Array.isArray(r)?r[c]:r,r||(r=0);let v=e,b=n;(h=f.config.series[c].data[d])!=null&&h.columnWidthOffset&&(b=n-f.config.series[c].data[d].columnWidthOffset/2,v=e+f.config.series[c].data[d].columnWidthOffset);const y=r/2,w=b+y,x=b+v-y,$=(s[u][d]>=0?1:-1)*(a?-1:1);i+=.001-y*$,o+=.001+y*$;const S=m.line(x,i),_=f.config.plotOptions.bar.borderRadiusApplication==="around"||this.arrBorderRadius[c][d]==="both"?" Z":" z",P=m.move(w,i)+m.line(w,o)+m.line(x,o)+S+_;let T=P;this.arrBorderRadius[c][d]!=="none"&&(T=m.roundPathCorners(T,f.config.plotOptions.bar.borderRadius));let O=null;const M=(g=(p=this.barCtx.ctx)==null?void 0:p.morphTypeChange)==null?void 0:g.getInitialPathFor(c,d);if(M?O=M:f.globals.previousPaths.length>0&&(O=this.barCtx.getPreviousPath(c,d,T,P)),O==null&&(O=m.move(w,i)+m.line(w,i)+S+S+S+S+S+m.line(w,i)+_),f.config.chart.stacked){let I=this.barCtx;I=this.barCtx[l],I.yArrj.push(o-y*$),I.yArrjF.push(Math.abs(i-o+r*$)),I.yArrjVal.push(this.barCtx.series[u][d])}return{pathTo:T,pathFrom:O,drawnBox:{x1:w,x2:x,y1:i,y2:o}}}getFunnelTrapezoidPaths({barYPosition:e,barHeight:n,series:i,i:o,j:r,realIndex:a,strokeWidth:s,w:l}){var c,u;const d=new Be(this.barCtx.w),f=l.layout.gridWidth/2,h=I=>Math.abs(I/this.barCtx.invertedYRatio)/2,p=h(i[o][r]),g=i[o].length-1,m=r===g,v=l.config.plotOptions.funnel.lastShape==="taper"?"taper":"flat";let b;m?b=v==="taper"?0:p:b=h(i[o][r+1]);const y=s/2,w=e+y,x=e+n-y,$=f-p,S=f+p,_=f-b,P=f+b,T=d.move($,w)+d.line(S,w)+d.line(P,x)+d.line(_,x)+" Z";let O=null;const M=(u=(c=this.barCtx.ctx)==null?void 0:c.morphTypeChange)==null?void 0:u.getInitialPathFor(a,r);return M?O=M:l.globals.previousPaths.length>0&&(O=this.barCtx.getPreviousPath(a,r,T)),O==null&&(O=d.move(f,w)+d.line(f,w)+d.line(f,x)+d.line(f,x)+" Z"),{pathTo:T,pathFrom:O,x:S,x1:$,barXPosition:f}}computePyramidLayout(e){const n=this.w,i=n.layout.gridHeight,o=n.layout.gridWidth,r=e.map(u=>Math.abs(Number(u)||0)),a=r.reduce((u,d)=>u+d,0);if(a===0||i<=0)return r.map(()=>({y:0,height:0,topHalf:0,bottomHalf:0}));const s=o/2;let l=0;const c=[];for(let u=0;u0&&(x=this.barCtx.getPreviousPath(r,a,w)),x==null&&(x=d.move(f,p)+d.line(f,p)+d.line(f,g)+d.line(f,g)+" Z"),{pathTo:w,pathFrom:x,x:v,x1:m,barXPosition:f}}getBarpaths({barYPosition:e,barHeight:n,x1:i,x2:o,strokeWidth:r,isReversed:a,series:s,seriesGroup:l,realIndex:c,i:u,j:d,w:f}){var h,p,g;const m=new Be(this.barCtx.w);r=Array.isArray(r)?r[c]:r,r||(r=0);let v=e,b=n;(h=f.config.series[c].data[d])!=null&&h.barHeightOffset&&(v=e-f.config.series[c].data[d].barHeightOffset/2,b=n+f.config.series[c].data[d].barHeightOffset);const y=r/2,w=v+y,x=v+b-y,$=(s[u][d]>=0?1:-1)*(a?-1:1);i+=.001+y*$,o+=.001-y*$;const S=this.barCtx.isFunnel,_=S?(i+o)/2:i,P=m.line(i,x),T=f.config.plotOptions.bar.borderRadiusApplication==="around"||this.arrBorderRadius[c][d]==="both"?" Z":" z",O=m.move(i,w)+m.line(o,w)+m.line(o,x)+P+T;let M=O;this.arrBorderRadius[c][d]!=="none"&&(M=m.roundPathCorners(M,f.config.plotOptions.bar.borderRadius));let I=null;const k=(g=(p=this.barCtx.ctx)==null?void 0:p.morphTypeChange)==null?void 0:g.getInitialPathFor(c,d);if(k?I=k:f.globals.previousPaths.length>0&&(I=this.barCtx.getPreviousPath(c,d,M,O)),I==null){const E=S?m.line(_,x):P;I=m.move(_,w)+m.line(_,w)+E+E+E+E+E+m.line(_,w)+T}if(f.config.chart.stacked){let E=this.barCtx;E=this.barCtx[l],E.xArrj.push(o+y*$),E.xArrjF.push(Math.abs(i-o-r*$)),E.xArrjVal.push(this.barCtx.series[u][d])}return{pathTo:M,pathFrom:I,drawnBox:{x1:i,x2:o,y1:w,y2:x}}}getXForValue(e,n,i=!0){let o=i?n:null;return typeof e<"u"&&e!==null&&(o=n+e/this.barCtx.invertedYRatio-(this.barCtx.isReversed?e/this.barCtx.invertedYRatio:0)*2),o}getYForValue(e,n,i,o=!0){let r=o?n:null;return typeof e<"u"&&e!==null&&(r=n-e/this.barCtx.yRatio[i]+(this.barCtx.isReversed?e/this.barCtx.yRatio[i]:0)*2),r}getGoalValues(e,n,i,o,r,a){const s=this.w,l=[],c=(u,d)=>{l.push({[e]:e==="x"?this.getXForValue(u,n,!1):this.getYForValue(u,i,a,!1),attrs:d})};if(s.seriesData.seriesGoals[o]&&s.seriesData.seriesGoals[o][r]&&Array.isArray(s.seriesData.seriesGoals[o][r])&&s.seriesData.seriesGoals[o][r].forEach(u=>{c(u.value,u)}),this.barCtx.barOptions.isDumbbell){const u=this.getDumbbellEnds(o,r);if(u.length){const d={strokeHeight:e==="x"?0:s.globals.markers.size[o],strokeWidth:e==="x"?s.globals.markers.size[o]:0,strokeDashArray:0,strokeLineCap:"round"};let f=0,h=0;for(let g=1;gu[h].value&&(h=g);const p=s.config.plotOptions.bar.dumbbell.dataLabels;u.forEach((g,m)=>{const v=vt(Ye({},d),{strokeColor:g.color});p.enabled&&(m===f||m===h)&&(v.label={text:this.getDumbbellLabelText(g.value,o,r,g.index),color:p.colorFromMarker?g.color:Array.isArray(p.style.colors)?p.style.colors[g.index]||p.style.colors[0]:p.style.colors,outward:m===f&&f!==h?-1:1}),c(g.value,v)})}}return l}getDumbbellEnds(e,n){const i=this.w,o=[],r=i.dumbbellData;if(r&&r.form==="series"){const l=r.values[n]||[];for(let c=0;cArray.isArray(a[e])?a[e][l]:a[e];return[{value:i.rangeData.seriesRangeStart[e][n],color:s(0),index:0},{value:i.rangeData.seriesRangeEnd[e][n],color:s(1),index:1}]}getDumbbellLabelText(e,n,i,o){const r=this.w,a=r.config.plotOptions.bar.dumbbell.dataLabels;if(typeof a.formatter=="function")return a.formatter(e,{seriesIndex:n,dataPointIndex:i,endpointIndex:o,w:r});const s=this.barCtx.isHorizontal?r.formatters.xLabelFormatter:r.formatters.yLabelFormatters[0];return typeof s=="function"?s(e,i,r):String(e)}drawGoalLine({barXPosition:e,barYPosition:n,goalX:i,goalY:o,barWidth:r,barHeight:a}){if(!(Array.isArray(i)&&i.length>0||Array.isArray(o)&&o.length>0))return null;const l=new Be(this.barCtx.w),c=l.group({class:"apexcharts-bar-goals-groups"});c.node.classList.add("apexcharts-element-hidden"),this.barCtx.w.globals.delayedElements.push({el:c.node}),c.attr("clip-path",`url(#gridRectMarkerMask${this.barCtx.w.globals.cuid})`);let u=null;return this.barCtx.isHorizontal?Array.isArray(i)&&i.forEach(d=>{if(d.x>=-1&&d.x<=l.w.layout.gridWidth+1){const f=typeof d.attrs.strokeHeight<"u"?d.attrs.strokeHeight:a/2,h=n+f+a/2;u=l.drawLine(d.x,h-f*2,d.x,h,d.attrs.strokeColor?d.attrs.strokeColor:void 0,d.attrs.strokeDashArray,d.attrs.strokeWidth?d.attrs.strokeWidth:2,d.attrs.strokeLineCap),c.add(u),d.attrs.label&&c.add(this.drawDumbbellLabel(d.attrs,{x:d.x,y:h-f,horizontal:!0,markerSize:d.attrs.strokeWidth||0}))}}):Array.isArray(o)&&o.forEach(d=>{if(d.y>=-1&&d.y<=l.w.layout.gridHeight+1){const f=typeof d.attrs.strokeWidth<"u"?d.attrs.strokeWidth:r/2,h=e+f+r/2;u=l.drawLine(h-f*2,d.y,h,d.y,d.attrs.strokeColor?d.attrs.strokeColor:void 0,d.attrs.strokeDashArray,d.attrs.strokeHeight?d.attrs.strokeHeight:2,d.attrs.strokeLineCap),c.add(u),d.attrs.label&&c.add(this.drawDumbbellLabel(d.attrs,{x:h-f,y:d.y,horizontal:!1,markerSize:d.attrs.strokeHeight||0}))}}),c}drawDumbbellLabel(e,n){const i=this.w,o=new Be(i),r=i.config.plotOptions.bar.dumbbell.dataLabels,a=n.markerSize/2+r.offset,s=e.label.outward;return o.drawText({x:n.x+(n.horizontal?a*s:0),y:n.y-(n.horizontal?0:a*s),text:e.label.text,textAnchor:n.horizontal?s<0?"end":"start":"middle",dominantBaseline:n.horizontal?"central":s<0?"hanging":"auto",foreColor:e.label.color,fontSize:r.style.fontSize,fontFamily:r.style.fontFamily,fontWeight:r.style.fontWeight,cssClass:"apexcharts-dumbbell-label"})}drawBarShadow({prevPaths:e,currPaths:n,color:i,realIndex:o,j:r}){const a=this.w,{x:s,x1:l,barYPosition:c}=e,{x:u,x1:d,barYPosition:f}=n,h=c+n.barHeight,p=new Be(this.barCtx.w),g=new Ee,m=p.move(l,h)+p.line(s,h)+p.line(u,f)+p.line(d,f)+p.line(l,h)+(a.config.plotOptions.bar.borderRadiusApplication==="around"||this.arrBorderRadius[o][r]==="both"?" Z":" z");return p.drawPath({d:m,fill:g.shadeColor(.5,Ee.rgb2hex(i)),stroke:"none",strokeWidth:0,fillOpacity:1,classes:"apexcharts-bar-shadow apexcharts-decoration-element"})}getZeroValueEncounters({i:e,j:n}){var i;const o=this.w;let r=0,a=0;return(o.config.plotOptions.bar.horizontal?o.seriesData.series.map((l,c)=>c):((i=o.globals.columnSeries)==null?void 0:i.i.map(l=>l))||[]).forEach(l=>{const c=o.globals.seriesPercent[l][n];c&&r++,li.indexOf(n.seriesData.seriesNames[e])>-1)}getGroupIndex(e){const n=this.w,i=n.labelData.seriesGroups.findIndex(a=>a.indexOf(n.seriesData.seriesNames[e])>-1),o=this.barCtx.columnGroupIndices;let r=o.indexOf(i);return r<0&&(o.push(i),r=o.length-1),{groupIndex:i,columnGroupIndex:r}}};class Bn{constructor(e,n,i){this.ctx=n,this.w=e,this.barOptions=e.config.plotOptions.bar,this.isHorizontal=this.barOptions.horizontal,this.strokeWidth=e.config.stroke.width,this.isNullValue=!1,this.isRangeBar=e.rangeData.seriesRange.length&&this.isHorizontal,this.isVerticalGroupedRangeBar=!e.globals.isBarHorizontal&&e.rangeData.seriesRange.length&&e.config.plotOptions.bar.rangeBarGroupRows,this.isFunnel=this.barOptions.isFunnel,this.isPyramid=this.barOptions.isPyramid,this.pyramidLayout=null,this.xyRatios=i,this.xRatio=0,this.yRatio=[],this.invertedXRatio=0,this.invertedYRatio=0,this.baseLineY=[],this.baseLineInvertedY=0,this.xyRatios!==null&&(this.xRatio=i.xRatio,this.yRatio=i.yRatio,this.invertedXRatio=i.invertedXRatio,this.invertedYRatio=i.invertedYRatio,this.baseLineY=i.baseLineY,this.baseLineInvertedY=i.baseLineInvertedY),this.yaxisIndex=0,this.translationsIndex=0,this.seriesLen=0,this.pathArr=[],this._prevKeyed=null,this._ltCache=null,this._layoutShiftCache=null,this._pathToInterp=null,this.series=[],this.elSeries=null,this.visibleI=0,this.isReversed=!1;const o=new Xn(this.w);this.lastActiveBarSerieIndex=o.getActiveConfigSeriesIndex("desc",["bar","column"]),this.lastActiveBarSerieIndexByGroup=o.getActiveConfigSeriesIndexByGroup(["bar","column"]),this.columnGroupIndices=[];const r=o.getBarSeriesIndices(),a=new No(this.w);this.stackedSeriesTotals=a.getStackedSeriesTotals(this.w.config.series.map((s,l)=>r.indexOf(l)===-1?l:-1).filter(s=>s!==-1)),this.barHelpers=new qSe(this)}draw(e,n){var i,o,r;const a=this.w,s=new Be(this.w),l=new No(this.w);e=l.getLogSeries(e),this.series=e,this.yRatio=l.getLogYRatios(this.yRatio),this.barHelpers.initVariables(e);const c=s.group({class:"apexcharts-bar-series apexcharts-plot-series"});a.config.dataLabels.enabled&&this.totalItems>this.barOptions.dataLabels.maxItems&&console.warn("WARNING: DataLabels are enabled but there are too many to display. This may cause performance issue when rendering - ApexCharts");for(let u=0,d=0;u0&&(this.visibleI=this.visibleI+1),this.yRatio.length>1&&(this.yaxisIndex=a.globals.seriesYAxisReverseMap[m],this.translationsIndex=m);const y=this.translationsIndex;this.isReversed=a.config.yaxis[this.yaxisIndex]&&a.config.yaxis[this.yaxisIndex].reversed,this.isPyramid&&(this.pyramidLayout=this.barHelpers.computePyramidLayout(e[u]));const w=this.barHelpers.initialPositions(m),{y:x,yDivision:$,zeroW:S,x:_,xDivision:P,zeroH:T}=w;let O=w.barHeight,M=w.barWidth;h=x,f=_,this.isHorizontal||g.push(f+(M??0)/2);const I=s.group({class:"apexcharts-datalabels","data:realIndex":m});a.globals.delayedElements.push({el:I.node,holdUntilComplete:!((i=a.config.dataLabels.animate)!=null&&i.enabled)&&this.isLengthTransition(m)}),I.node.classList.add("apexcharts-element-hidden");const k=s.group({class:"apexcharts-bar-goals-markers"}),E=s.group({class:"apexcharts-bar-shadows"});a.globals.delayedElements.push({el:E.node}),E.node.classList.add("apexcharts-element-hidden");for(let R=0;R0){const W=this.barHelpers.drawBarShadow({color:typeof B.color=="string"&&((r=B.color)==null?void 0:r.indexOf("url"))===-1?B.color:Ee.hexToRgba(a.globals.colors[u]),prevPaths:this.pathArr[this.pathArr.length-1],currPaths:F,realIndex:m,j:R});E.add(W),a.config.chart.dropShadow.enabled&&new uo(this.w).dropShadow(W,a.config.chart.dropShadow,m)}this.pathArr.push(F);const z=this.barHelpers.drawGoalLine({barXPosition:F.barXPosition,barYPosition:F.barYPosition,goalX:F.goalX,goalY:F.goalY,barHeight:O,barWidth:M});z&&k.add(z),h=F.y,f=F.x,R>0&&g.push(f+(M??0)/2),p.push(h),this.renderSeries(vt(Ye({realIndex:m,pathFill:B.color},B.useRangeColor?{lineFill:B.color}:{}),{j:R,i:u,columnGroupIndex:v,pathFrom:F.pathFrom,pathTo:F.pathTo,strokeWidth:D,elSeries:b,x:f,y:h,series:e,barHeight:Math.abs(F.barHeight?F.barHeight:O),barWidth:Math.abs(F.barWidth?F.barWidth:M),elDataLabelsWrap:I,elGoalsMarkers:k,elBarShadows:E,visibleSeries:this.visibleI,type:"bar"}))}if(a.globals.seriesXvalues[m]=g,a.globals.seriesYvalues[m]=p,a.globals.previousPaths.length>0){const R=[];for(let D=0;D0&&(K=X[ee],K||(K=""),typeof K=="function")?K({value:D.seriesData.series[ee][o],dataPointIndex:o,w:D}):K};const G=typeof D.globals.stroke.colors[e]=="function"?Q(e):D.globals.stroke.colors[e];i=this.barOptions.distributed?D.globals.stroke.colors[o]:G}const W=D.config.chart.animations,j=W.animateGradually,U=j&&j.enabled!==!1&&!(D.globals.dataChanged&&this.isLayoutShift(e));let V=0,q=0;if(U){const Q=D.globals.dataPoints||1,G=j.delay||0,ee=Math.min(G,W.speed*.5/Math.max(1,Q));q=c$({style:"sequential",index:o,baseDelay:ee}),D.config.chart.stacked&&!D.globals.dataChanged&&(q+=r*ee*.5),V=q/(G||1)}const J=new USe(this).handleBarDataLabels({x:d,y:f,y1:h,y2:p,i:r,j:o,series:g,realIndex:e,columnGroupIndex:a,barHeight:m,barWidth:v,barXPosition:b,barYPosition:y,visibleSeries:S});if(q>0){const Q=D.config.dataLabels;if((T=Q.animate)!=null&&T.enabled||(O=Q.countUp)!=null&&O.enabled){const G=String(Math.round(q));(I=(M=J.dataLabels)==null?void 0:M.node)==null||I.setAttribute("data:dlDelay",G),(E=(k=J.totalDataLabels)==null?void 0:k.node)==null||E.setAttribute("data:dlDelay",G)}}if(D.globals.isBarHorizontal||(J.dataLabelsPos.dataLabelsX+Math.max(v,D.globals.barPadForNumericAxis)<0||J.dataLabelsPos.dataLabelsX-Math.max(v,D.globals.barPadForNumericAxis)>D.layout.gridWidth)&&(B=!0),D.config.series[r].data[o]&&D.config.series[r].data[o].strokeColor&&(i=D.config.series[r].data[o].strokeColor),this.isNullValue&&D.globals.collapsingSeriesIndices.indexOf(e)===-1&&(n="none"),!B){const Q=((R=this.ctx.morphTypeChange)==null?void 0:R.isActive())===!0,G=Q?this.ctx.morphTypeChange.getSpeed():D.config.chart.animations.dynamicAnimation.speed,ee=Q&&this.ctx.morphTypeChange.claimsTargetMark(e,o);ee&&(s=l,V=0);const X=N.renderPaths({i:r,j:o,realIndex:e,pathFrom:s,pathTo:l,stroke:i,strokeWidth:c,strokeLineCap:D.config.stroke.lineCap,fill:n,pathToInterp:z,animationDelay:V,initialSpeed:D.config.chart.animations.speed,dataChangeSpeed:G,className:`apexcharts-${_}-area${P?` ${P}`:""}`,chartType:_,bindEventsOnPaths:!1});X.attr("clip-path",`url(#gridRectBarMask${D.globals.cuid})`),ee&&(X.node.setAttribute("opacity","0"),X.node.setAttribute("data-piece-hidden","1"));const K=D.config.forecastDataPoints;K.count>0&&o>=D.globals.dataPoints-K.count&&(X.node.setAttribute("stroke-dasharray",K.dashArray),X.node.setAttribute("stroke-width",K.strokeWidth),X.node.setAttribute("fill-opacity",K.fillOpacity)),typeof h<"u"&&typeof p<"u"&&(X.attr("data-range-y1",h),X.attr("data-range-y2",p)),new uo(this.w).setSelectionFilter(X,e,o),u.add(X),X.attr({cy:J.dataLabelsPos.bcy,cx:J.dataLabelsPos.bcx,j:o,val:D.seriesData.series[r][o],barHeight:m,barWidth:v,"data:pathKey":Or(D,e,o)}),N.kind==="canvas"&&(D.globals.barCanvasCoords||(D.globals.barCanvasCoords={}),D.globals.barCanvasCoords[e]||(D.globals.barCanvasCoords[e]={}),D.globals.barCanvasCoords[e][o]={cx:J.dataLabelsPos.bcx,cy:J.dataLabelsPos.bcy,barWidth:v}),J.dataLabels!==null&&w.add(J.dataLabels),J.totalDataLabels&&w.add(J.totalDataLabels),u.add(w),x&&u.add(x),$&&u.add($)}return u}drawBarPaths({indexes:e,barHeight:n,strokeWidth:i,zeroW:o,x:r,y:a,yDivision:s,elSeries:l}){const c=this.w,u=e.i,d=e.j;let f;if(c.axisFlags.isXNumeric)a=(c.seriesData.seriesX[u][d]-c.globals.minX)/this.invertedXRatio-n,f=a+n*this.visibleI;else if(c.config.plotOptions.bar.hideZeroBarsWhenGrouped){const{nonZeroColumns:v,zeroEncounters:b}=this.barHelpers.getZeroValueEncounters({i:u,j:d});v>0&&(n=this.seriesLen*n/v),f=a+n*this.visibleI,f-=n*b}else f=a+n*this.visibleI;const h=this.isFunnel&&c.config.plotOptions.funnel.shape==="trapezoid",p=this.isPyramid&&this.pyramidLayout?this.pyramidLayout[d]:null,g=!!p;if(p)f=p.y,n=p.height;else if(this.isFunnel&&!h){const v=o??0;o=v-(this.barHelpers.getXForValue(this.series[u][d],v)-v)/2}r=this.barHelpers.getXForValue(this.series[u][d],o??0);let m;return p?m=this.barHelpers.getPyramidPaths({barYPosition:f,barHeight:n,topHalf:p.topHalf,bottomHalf:p.bottomHalf,realIndex:e.realIndex,j:d,strokeWidth:i,w:c}):h?m=this.barHelpers.getFunnelTrapezoidPaths({barYPosition:f,barHeight:n,series:this.series,i:u,j:d,realIndex:e.realIndex,strokeWidth:i,w:c}):m=this.barHelpers.getBarpaths({barYPosition:f,barHeight:n,x1:o,x2:r,strokeWidth:i,isReversed:this.isReversed,series:this.series,realIndex:e.realIndex,i:u,j:d,w:c}),(h||g)&&(o=m.x1,r=m.x),!c.axisFlags.isXNumeric&&!g&&(a=a+s),g&&(a=f),this.barHelpers.barBackground({j:d,i:u,y1:f-n*this.visibleI,y2:n*this.seriesLen,elSeries:l}),{pathTo:m.pathTo,pathFrom:m.pathFrom,x1:o,x:r,y:a,goalX:this.barHelpers.getGoalValues("x",o,null,e.realIndex,d,0),barYPosition:f,barHeight:n}}drawColumnPaths({indexes:e,x:n,y:i,xDivision:o,barWidth:r,zeroH:a,strokeWidth:s,elSeries:l}){const c=this.w,u=e.realIndex,d=e.translationsIndex,f=e.i,h=e.j,p=e.bc;let g;if(c.axisFlags.isXNumeric){const v=this.getBarXForNumericXAxis({x:n,j:h,realIndex:u,barWidth:r});n=v.x,g=v.barXPosition}else if(c.config.plotOptions.bar.hideZeroBarsWhenGrouped){const{nonZeroColumns:v,zeroEncounters:b}=this.barHelpers.getZeroValueEncounters({i:f,j:h});v>0&&(r=this.seriesLen*r/v),g=n+r*this.visibleI,g-=r*b}else g=n+r*this.visibleI;i=this.barHelpers.getYForValue(this.series[f][h],a,d);const m=this.barHelpers.getColumnPaths({barXPosition:g,barWidth:r,y1:a,y2:i,strokeWidth:s,isReversed:this.isReversed,series:this.series,realIndex:u,i:f,j:h,w:c});return c.axisFlags.isXNumeric||(n=n+o),this.barHelpers.barBackground({bc:p,j:h,i:f,x1:g-s/2-r*this.visibleI,x2:r*this.seriesLen+s/2,elSeries:l}),{pathTo:m.pathTo,pathFrom:m.pathFrom,x:n,y:i,goalY:this.barHelpers.getGoalValues("y",null,a,u,h,d),barXPosition:g,barWidth:r}}getBarXForNumericXAxis({x:e,barWidth:n,realIndex:i,j:o}){const r=this.w;let a=i;return r.seriesData.seriesX[i].length||(a=r.globals.maxValsInArrayIndex),Ee.isNumber(r.seriesData.seriesX[a][o])&&(e=so.dataXToPx(r,r.seriesData.seriesX[a][o])-n*this.seriesLen/2),{barXPosition:e+(FN(r)?0:n*this.visibleI),x:e}}_prevRecord(e){const n=this.w;let i=null;for(let o=0;o0&&parseInt(r.realIndex,10)===parseInt(String(e),10)&&(i=r)}return i}_prevKeyedPaths(e){if(this._prevKeyed||(this._prevKeyed={}),this._prevKeyed[e]!==void 0)return this._prevKeyed[e];const n=this._prevRecord(e);let i=null;if(n&&n.paths.every(o=>o.key!=null)){const o=new Map;n.paths.forEach(r=>{o.set(r.key,r)}),i=o}return this._prevKeyed[e]=i,i}isLengthTransition(e){var n,i;if(this._ltCache||(this._ltCache={}),this._ltCache[e]!==void 0)return this._ltCache[e];const o=this.w;let r=!1;if(td(o)&&o.globals.previousPaths.length>0){const a=this._prevRecord(e),s=(i=(n=o.seriesData.series[e])==null?void 0:n.length)!=null?i:0;if(!a)r=s>0;else if(a.paths.length!==s)r=!0;else{const l=this._prevKeyedPaths(e);if(l){for(let c=0;c{const m=Bn.pathBox(g);return m?Math.min(m.maxX-m.minX,m.maxY-m.minY):0},p=u1:h(i)>1;if(us[0]),a=n.map(s=>s[1]);return{minX:Math.min(...r),maxX:Math.max(...r),minY:Math.min(...a),maxY:Math.max(...a),start:n[0],vertical:Math.abs(n[1][0]-n[0][0])Math.abs(g-m)<=Math.abs(g-v)?[m,v]:[v,m];let u,d,f,h;l?(u=Math.abs(s[0]-i)<=Math.abs(s[0]-o)?i:o,d=u===i?o:i,[f,h]=c(s[1],r,a)):(f=Math.abs(s[1]-r)<=Math.abs(s[1]-a)?r:a,h=f===r?a:r,[u,d]=c(s[0],i,o));const p=e.trim().endsWith("Z")?" Z":" z";return l?`M ${u} ${f} L ${u} ${h} L ${d} ${h} L ${d} ${f}${p}`:`M ${u} ${f} L ${d} ${f} L ${d} ${h} L ${u} ${h}${p}`}getPreviousFlip(e,n){const i=this.w,o=this._prevRecord(e);if(!o)return null;const r=this._prevKeyedPaths(e),a=r?r.get(Or(i,e,n)):o.paths[n];return a?!!a.flip:null}static pathCommandCount(e){if(!e)return 0;const n=e.match(/[A-Za-z]/g);return n?n.length:0}}class ZSe extends Bn{draw(e,n){const i=this.w;this.graphics=new Be(this.w),this.bar=new Bn(this.w,this.ctx,this.xyRatios);const o=new No(this.w);e=o.getLogSeries(e),this.yRatio=o.getLogYRatios(this.yRatio),this.barHelpers.initVariables(e),i.config.chart.stackType==="100%"&&(e=i.globals.comboCharts?n.map(d=>i.globals.seriesPercent[d]):i.globals.seriesPercent.slice()),this.series=e,this.barHelpers.initializeStackedPrevVars(this);const r=this.graphics.group({class:"apexcharts-bar-series apexcharts-plot-series"});let a=0,s=0;const l=i.config.chart.animations,c=l.enabled&&l.dynamicAnimation.enabled&&i.globals.previousPaths.length>0;let u=!1;for(let d=0,f=0;d1&&(this.yaxisIndex=i.globals.seriesYAxisReverseMap[h][0],b=h),this.isReversed=i.config.yaxis[this.yaxisIndex]&&i.config.yaxis[this.yaxisIndex].reversed;let y=this.graphics.group({class:"apexcharts-series",seriesName:Ee.escapeString(i.seriesData.seriesNames[h]),rel:d+1,"data:realIndex":h});Xn.addCollapsedClassToSeries(this.w,y,h);const w=this.graphics.group({class:"apexcharts-datalabels","data:realIndex":h});Xn.addCollapsedClassToSeries(this.w,w,h),(i.globals.collapsingSeriesIndices||[]).indexOf(h)>-1&&w.node.style.setProperty("--apexcharts-dl-exit",`${i.config.chart.animations.dynamicAnimation.speed}ms`);const x=this.graphics.group({class:"apexcharts-bar-goals-markers"}),$=this.initialPositions(a,s,void 0,void 0,void 0,void 0,b),{xDivision:S,yDivision:_,zeroH:P,zeroW:T}=$;let O=$.barHeight,M=$.barWidth;s=$.y,a=$.x,i.globals.barHeight=O,i.globals.barWidth=M,this.barHelpers.initializeStackedXYVars(this),this.groupCtx.prevY.length===1&&this.groupCtx.prevY[0].every(I=>isNaN(I))&&(this.groupCtx.prevY[0]=this.groupCtx.prevY[0].map(()=>P),this.groupCtx.prevYF[0]=this.groupCtx.prevYF[0].map(()=>0));for(let I=0;I0||this.barHelpers.arrBorderRadius[h][I]==="top"&&i.seriesData.series[h][I]<0,W=c&&!z&&this.getPreviousFlip(h,I);(z||W)&&(N=B),W&&(N+=" apexcharts-flip-held",u=!0),y=this.renderSeries(vt(Ye({realIndex:h,pathFill:F.color},F.useRangeColor?{lineFill:F.color}:{}),{j:I,i:d,columnGroupIndex:g,pathFrom:R.pathFrom,pathTo:R.pathTo,strokeWidth:k,elSeries:y,x:a,y:s,series:e,barHeight:O,barWidth:M,elDataLabelsWrap:w,elGoalsMarkers:x,type:"bar",visibleSeries:g,classes:N}))}i.globals.seriesXvalues[h]=m,i.globals.seriesYvalues[h]=v,this.groupCtx.prevY.push(this.groupCtx.yArrj),this.groupCtx.prevYF.push(this.groupCtx.yArrjF),this.groupCtx.prevYVal.push(this.groupCtx.yArrjVal),this.groupCtx.prevX.push(this.groupCtx.xArrj),this.groupCtx.prevXF.push(this.groupCtx.xArrjF),this.groupCtx.prevXVal.push(this.groupCtx.xArrjVal),r.add(y)}return u&&this.settleHeldMirrors(),r}settleHeldMirrors(){const e=this.w;if(!Ot.isBrowser())return;const n=e.config.chart.animations,i=(n.dynamicAnimation.speed||0)+(n.speed||0)+100;setTimeout(()=>{e.globals.isDestroyed||!Ee.elementExists(e.dom.baseEl)||e.dom.baseEl.querySelectorAll(".apexcharts-flip-held").forEach(o=>{o.classList.remove("apexcharts-flip-held","apexcharts-flip-y","apexcharts-flip-x")})},i)}initialPositions(e,n,i,o,r,a,s){const l=this.w;let c,u;if(this.isHorizontal){o=l.layout.gridHeight/l.globals.dataPoints;const f=l.config.plotOptions.bar.barHeight;String(f).indexOf("%")===-1?c=parseInt(f,10):c=o*parseInt(f,10)/100,a=l.globals.padHorizontal+(this.isReversed?l.layout.gridWidth-this.baseLineInvertedY:this.baseLineInvertedY),n=(o-c)/2}else{i=l.layout.gridWidth/l.globals.dataPoints,u=i;const f=l.config.plotOptions.bar.columnWidth,h=l.axisFlags.isXNumeric?this.barHelpers.barSlotXSpan():0;h>0?(i=h/this.xRatio,u=i*parseInt(this.barOptions.columnWidth,10)/100):u*=parseInt(f,10)/100,String(f).indexOf("%")===-1&&(u=parseInt(f,10)),this.isReversed?r=this.baseLineY[s]:r=l.layout.gridHeight-this.baseLineY[s],e=l.globals.padHorizontal+(i-u)/2}const d=l.globals.barGroups.length||1;return{x:e,y:n,yDivision:o,xDivision:i,barHeight:(c??0)/d,barWidth:(u??0)/d,zeroH:r,zeroW:a}}drawStackedBarPaths({indexes:e,barHeight:n,strokeWidth:i,zeroW:o,x:r,y:a,columnGroupIndex:s,seriesGroup:l,yDivision:c,elSeries:u}){var d,f,h,p,g;const m=this.w,v=a+s*n;let b;const y=e.i,w=e.j,x=e.realIndex,$=e.translationsIndex;let S=0;for(let T=0;T0){let T=o;this.groupCtx.prevXVal[_-1][w]<0?T=((d=this.series[y])==null?void 0:d[w])>=0?this.groupCtx.prevX[_-1][w]+S-(this.isReversed?S:0)*2:this.groupCtx.prevX[_-1][w]:this.groupCtx.prevXVal[_-1][w]>=0&&(T=((f=this.series[y])==null?void 0:f[w])>=0?this.groupCtx.prevX[_-1][w]:this.groupCtx.prevX[_-1][w]-S+(this.isReversed?S:0)*2),b=T}else b=o;((h=this.series[y])==null?void 0:h[w])===null?r=b:r=b+((p=this.series[y])==null?void 0:p[w])/this.invertedYRatio-(this.isReversed?((g=this.series[y])==null?void 0:g[w])/this.invertedYRatio:0)*2;const P=this.barHelpers.getBarpaths({barYPosition:v,barHeight:n,x1:b,x2:r,strokeWidth:i,isReversed:this.isReversed,series:this.series,realIndex:e.realIndex,seriesGroup:l,i:y,j:w,w:m});return this.barHelpers.barBackground({j:w,i:y,y1:v,y2:n,elSeries:u}),a=a+c,{pathTo:P.pathTo,pathFrom:P.pathFrom,goalX:this.barHelpers.getGoalValues("x",o,null,x,w,$),barXPosition:b,barYPosition:v,x:r,y:a}}drawStackedColumnPaths({indexes:e,x:n,y:i,xDivision:o,barWidth:r,zeroH:a,columnGroupIndex:s,seriesGroup:l,elSeries:c}){var u,d,f,h,p,g,m,v,b;const y=this.w,w=e.i,x=e.j,$=e.bc,S=e.realIndex,_=e.translationsIndex;if(y.axisFlags.isXNumeric){let k=y.seriesData.seriesX[S][x];k||(k=0),n=(k-y.globals.minX)/this.xRatio-r/2*y.globals.barGroups.length}const P=n+s*r;let T,O=0;for(let k=0;k0&&!y.axisFlags.isXNumeric||M>0&&y.axisFlags.isXNumeric&&y.seriesData.seriesX[S-1][x]===y.seriesData.seriesX[S][x]){let k,E;const R=Math.min(this.yRatio.length+1,S+1);if(this.groupCtx.prevY[M-1]!==void 0&&this.groupCtx.prevY[M-1].length){for(let D=1;D=0?E-O+(this.isReversed?O:0)*2:E;break}else if(((h=this.groupCtx.prevYVal[M-D])==null?void 0:h[x])>=0){k=((p=this.series[w])==null?void 0:p[x])>=0?E:E+O-(this.isReversed?O:0)*2;break}typeof k>"u"&&(k=y.layout.gridHeight),(g=this.groupCtx.prevYF[0])!=null&&g.every(D=>D===0)&&this.groupCtx.prevYF.slice(1,M).every(D=>D.every(F=>isNaN(F)))?T=a:T=k}else T=a;(m=this.series[w])!=null&&m[x]?i=T-((v=this.series[w])==null?void 0:v[x])/this.yRatio[_]+(this.isReversed?((b=this.series[w])==null?void 0:b[x])/this.yRatio[_]:0)*2:i=T;const I=this.barHelpers.getColumnPaths({barXPosition:P,barWidth:r,y1:T,y2:i,yRatio:this.yRatio[_],strokeWidth:this.strokeWidth,isReversed:this.isReversed,series:this.series,seriesGroup:l,realIndex:e.realIndex,i:w,j:x,w:y});return this.barHelpers.barBackground({bc:$,j:x,i:w,x1:P,x2:r,elSeries:c}),{pathTo:I.pathTo,pathFrom:I.pathFrom,goalY:this.barHelpers.getGoalValues("y",null,a,S,x,0),barXPosition:P,x:y.axisFlags.isXNumeric?n:n+o,y:i}}}function NN({w:t,points:e,seedA:n,seedB:i,center:o,halfExtent:r,alongFn:a,isHorizontal:s,options:l,clampAt:c,sideSign:u}){const d=l;if(!d||d.show===!1)return[];if(!e||!e.length)return[];const f=d.maxPoints||3e3,h=e.length>f?Math.ceil(e.length/f):1,p=d.size!=null?d.size:2.5,g=d.jitter!=null?d.jitter:.5,m=r*g,v=d.constrainToViolin!==!1&&typeof c=="function",b=d.shape==="square",y=d.colorScale,w=y&&Array.isArray(y.colors)&&y.colors.length>0,x=w?Math.max(2,y.steps||24):1,$=w&&y.min!=null?y.min:t.globals.minY,_=(w&&y.max!=null?y.max:t.globals.maxY)-$||1,P=w?new Array(x).fill(""):[""];for(let O=0;OF&&(k=F),k<-F&&(k=-F)}u&&(k=Math.abs(k)*u);const E=s?I:o+k,R=s?o+k:I,D=b?eCe(E,R,p):QSe(E,R,p);if(w){let F=(M-$)/_;F<0&&(F=0),F>1&&(F=1),P[Math.round(F*(x-1))]+=D}else P[0]+=D}if(!w)return P[0]?[{fill:null,d:P[0]}]:[];const T=[];for(let O=0;O{const m=r?e.globals.colors[g]:e.globals.colors[a],v=o.fillColor,b=v==="series"?m:v==="series-dark"?tM(m,.45):v||tM(m,.45);p.forEach(y=>{const w=t.drawPath({d:y.d,fill:y.fill!=null?y.fill:b,stroke:d>0?u:"none",strokeWidth:d,fillOpacity:c,classes:l});w.attr("data:realIndex",a),w.attr("j",g),w.attr("clip-path",`url(#gridRectBarMask${e.globals.cuid})`),w.node.style.pointerEvents="none",h.add(w)})}),n.add(h)}function tM(t,e){const n=Ee.parseHex(t);if(!n)return t;const i=Math.max(0,1-e);return`rgb(${Math.round(n[0]*i)},${Math.round(n[1]*i)},${Math.round(n[2]*i)})`}function JSe(t,e){if(!t.length)return"#000";if(t.length===1)return t[0];const n=Math.max(0,Math.min(1,e))*(t.length-1),i=Math.floor(n),o=n-i,r=Ee.parseHex(t[i])||[0,0,0],a=Ee.parseHex(t[Math.min(i+1,t.length-1)])||r,s=(l,c)=>Math.round(l+(c-l)*o);return`rgb(${s(r[0],a[0])},${s(r[1],a[1])},${s(r[2],a[2])})`}function rw(t){let e=(t^2654435769)>>>0;return e=Math.imul(e^e>>>16,73244475),e=Math.imul(e^e>>>16,73244475),((e^e>>>16)>>>0)/4294967296}function QSe(t,e,n){return`M ${t-n} ${e} a ${n} ${n} 0 1 0 ${2*n} 0 a ${n} ${n} 0 1 0 ${-2*n} 0 `}function eCe(t,e,n){return`M ${t-n} ${e-n} h ${2*n} v ${2*n} h ${-2*n} z `}class nM extends Bn{draw(e,n,i){var o;const r=this.w,a=new Be(this.w),s=r.globals.comboCharts?n:r.config.chart.type,l=new go(this.w);this.candlestickOptions=this.w.config.plotOptions.candlestick,this.boxOptions=this.w.config.plotOptions.boxPlot,this.isHorizontal=r.config.plotOptions.bar.horizontal,this.isOHLC=this.candlestickOptions&&this.candlestickOptions.type==="ohlc",this.coreUtils=new No(this.w),e=this.coreUtils.getLogSeries(e),this.series=e,this.yRatio=this.coreUtils.getLogYRatios(this.yRatio),this.barHelpers.initVariables(e);const c=a.group({class:`apexcharts-${s}-series apexcharts-plot-series`});for(let u=0;u0&&(this.visibleI=this.visibleI+1);let b=0;this.yRatio.length>1&&(this.yaxisIndex=r.globals.seriesYAxisReverseMap[g][0],b=g);const y=this.barHelpers.initialPositions(g),{y:w,barHeight:x,yDivision:$,zeroW:S,x:_,barWidth:P,xDivision:T,zeroH:O}=y;f=w,d=_,p.push(d+(P??0)/2);const M=a.group({class:"apexcharts-datalabels","data:realIndex":g}),I=a.group({class:"apexcharts-bar-goals-markers"}),k=this.isBoxPlot?this.boxOptions.points:null,E=[],R=r.layout.gridWidth,D=P??0;for(let F=0;F0&&p.push(d+(P??0)/2),h.push(f),B.culled)continue;const W=this.barHelpers.drawGoalLine({barXPosition:B.barXPosition,barYPosition:B.barYPosition,goalX:B.goalX,goalY:B.goalY,barHeight:x,barWidth:P});if(W&&I.add(W),B.pathTo.forEach((j,U)=>{const V=!this.isBoxPlot&&this.candlestickOptions.wick.useFillColor?B.color[U]:r.globals.stroke.colors[u],q=l.fillPath({seriesNumber:g,dataPointIndex:F,color:B.color[U],value:e[u][F]});this.renderSeries({realIndex:g,pathFill:q,lineFill:V,j:F,i:u,pathFrom:B.pathFrom,pathTo:j,strokeWidth:N,elSeries:v,x:d,y:f,series:e,columnGroupIndex:m,barHeight:x,barWidth:P,elDataLabelsWrap:M,elGoalsMarkers:I,visibleSeries:this.visibleI,type:r.config.chart.type})}),k&&k.show!==!1){const j=(o=r.candleData.seriesBoxPoints[g])==null?void 0:o[F];if(j&&j.length){const U=Q=>this.coreUtils.getLogValAtSeriesIndex(Q,g);let V,q,Y;if(this.isHorizontal){const Q=this.invertedYRatio,G=x??0,ee=S??0;V=B.barYPosition+G/2,q=G/2,Y=X=>ee+U(X)/Q}else{const Q=this.yRatio[b],G=P??0,ee=O??0;V=B.barXPosition+G/2,q=G/2,Y=X=>ee-U(X)/Q}const J=NN({w:r,points:j,seedA:g,seedB:F,center:V,halfExtent:q,alongFn:Y,isHorizontal:this.isHorizontal,options:k});J.length&&E.push({groups:J,j:F})}}}k&&BN({graphics:a,w:r,elSeries:v,pointsByCat:E,options:k,distributed:r.config.plotOptions.bar.distributed,realIndex:g,wrapClass:"apexcharts-boxPlot-points-wrap",pointClass:"apexcharts-boxPlot-points"}),r.globals.seriesXvalues[g]=p,r.globals.seriesYvalues[g]=h,c.add(v)}return c}drawVerticalBoxPaths({indexes:e,x:n,xDivision:i,barWidth:o,zeroH:r,strokeWidth:a,cullBounds:s=null}){var l,c,u,d;const f=this.w,h=new Be(this.w),p=e.i,g=e.j,{colors:m}=f.config.plotOptions.candlestick,{colors:v}=this.boxOptions,b=e.realIndex,y=F=>Array.isArray(F)?F[b]:F,w=y(m.upward),x=y(m.downward),$=this.yRatio[e.translationsIndex],S=this.getOHLCValue(b,g);let _=r,P=r,T=S.o"u"||((c=this.series[p])==null?void 0:c[g])===null?(O=r,M=r):(O=r-O/$,M=r-M/$,_=r-S.h/$,P=r-S.l/$,I=r-S.m/$),s&&(k+os.hi))return{pathTo:null,pathFrom:null,x:f.axisFlags.isXNumeric?n:n+i,y:M,barXPosition:k,color:T,culled:!0};let E;if(this.isOHLC){const F=k+o/2,N=r-S.o/$,B=r-S.c/$;E=[h.move(F,_)+h.line(F,P)+h.move(F,N)+h.line(k,N)+h.move(F,B)+h.line(k+o,B)]}else this.isBoxPlot?E=[h.move(k,O)+h.line(k+o/2,O)+h.line(k+o/2,_)+h.line(k+o/4,_)+h.line(k+o-o/4,_)+h.line(k+o/2,_)+h.line(k+o/2,O)+h.line(k+o,O)+h.line(k+o,I)+h.line(k,I)+h.line(k,O+a/2),h.move(k,I)+h.line(k+o,I)+h.line(k+o,M)+h.line(k+o/2,M)+h.line(k+o/2,P)+h.line(k+o-o/4,P)+h.line(k+o/4,P)+h.line(k+o/2,P)+h.line(k+o/2,M)+h.line(k,M)+h.line(k,I)+"z"]:E=[h.move(k,M)+h.line(k+o/2,M)+h.line(k+o/2,_)+h.line(k+o/2,M)+h.line(k+o,M)+h.line(k+o,O)+h.line(k+o/2,O)+h.line(k+o/2,P)+h.line(k+o/2,O)+h.line(k,O)+h.line(k,M-a/2)];let R=null;const D=(d=(u=this.ctx)==null?void 0:u.morphTypeChange)==null?void 0:d.getInitialPathFor(b,g);return D?R=D:f.globals.previousPaths.length>0&&(R=this.getPreviousPath(b,g,E[0])),R==null&&(R=h.move(k+o/2,O)+h.move(k,O)),f.axisFlags.isXNumeric||(n=n+i),{pathTo:E,pathFrom:R,x:n,y:M,goalY:this.barHelpers.getGoalValues("y",null,r,b,g,e.translationsIndex),barXPosition:k,color:T}}drawHorizontalBoxPaths({indexes:e,y:n,yDivision:i,barHeight:o,zeroW:r,strokeWidth:a}){var s,l,c,u;const d=this.w,f=new Be(this.w),h=e.i,p=e.j,g=e.realIndex,{colors:m}=d.config.plotOptions.candlestick,{colors:v}=this.boxOptions,b=E=>Array.isArray(E)?E[g]:E,y=this.invertedYRatio,w=this.getOHLCValue(g,p);let x=w.o"u"||((l=this.series[h])==null?void 0:l[p])===null?(_=r,P=r):(_=r+_/y,P=r+P/y,$=r+w.h/y,S=r+w.l/y,T=r+w.m/y);const M=[f.move(_,O)+f.line(_,O+o/2)+f.line($,O+o/2)+f.line($,O+o/2-o/4)+f.line($,O+o/2+o/4)+f.line($,O+o/2)+f.line(_,O+o/2)+f.line(_,O+o)+f.line(T,O+o)+f.line(T,O)+f.line(_+a/2,O),f.move(T,O)+f.line(T,O+o)+f.line(P,O+o)+f.line(P,O+o/2)+f.line(S,O+o/2)+f.line(S,O+o-o/4)+f.line(S,O+o/4)+f.line(S,O+o/2)+f.line(P,O+o/2)+f.line(P,O)+f.line(T,O)+"z"];let I=null;const k=(u=(c=this.ctx)==null?void 0:c.morphTypeChange)==null?void 0:u.getInitialPathFor(g,p);return k?I=k:d.globals.previousPaths.length>0&&(I=this.getPreviousPath(g,p,M[0])),I==null&&(I=f.move(_,O+o/2)+f.move(_,O)),d.axisFlags.isXNumeric||(n=n+i),{pathTo:M,pathFrom:I,x:P,y:n,goalX:this.barHelpers.getGoalValues("x",r,null,g,p,0),barYPosition:O,color:x}}getOHLCValue(e,n){const i=this.w,o=this.coreUtils,r=d=>d[e]&&d[e][n]!=null?o.getLogValAtSeriesIndex(d[e][n],e):0,a=r(i.candleData.seriesCandleH),s=r(i.candleData.seriesCandleO),l=r(i.candleData.seriesCandleM),c=r(i.candleData.seriesCandleC),u=r(i.candleData.seriesCandleL);return{o:this.isBoxPlot?a:s,h:this.isBoxPlot?s:a,m:l,l:this.isBoxPlot?c:u,c:this.isBoxPlot?u:c}}}const tCe=t=>{const e=nCe(t),n=t.length-1,i=1e-6,o=[];let r,a,s,l;for(let c=0;c9&&(l=s*3/Math.sqrt(l),e[c]=l*r,e[c+1]=l*a));for(let c=0;c<=n;c++)l=(t[Math.min(n,c+1)][0]-t[Math.max(0,c-1)][0])/(6*(1+e[c]*e[c])),o.push([l||0,e[c]*l||0]);return o},zN=t=>{let e="";for(let n=0;n4?(e+=`C${i[0]}, ${i[1]}`,e+=`, ${i[2]}, ${i[3]}`,e+=`, ${i[4]}, ${i[5]}`):o>2&&(e+=`S${i[0]}, ${i[1]}`,e+=`, ${i[2]}, ${i[3]}`)}return e},aw={points(t){const e=tCe(t),n=t[1],i=t[0],o=[],r=e[1],a=e[0];o.push(i,[i[0]+a[0],i[1]+a[1],n[0]-r[0],n[1]-r[1],n[0],n[1]]);for(let s=2,l=e.length;s1&&i[1].length<6){const o=i[0].length;i[1]=[i[0][o-2]*2-i[0][o-4],i[0][o-1]*2-i[0][o-3]].concat(i[1])}i[0]=i[0].slice(-2)}return i}};function sw(t,e){return(e[1]-t[1])/(e[0]-t[0])}function nCe(t){const e=[];let n=t[0],i=t[1],o=e[0]=sw(n,i),r=1;for(let a=t.length-1;r0&&(this.visibleI=this.visibleI+1);let v=0;this.yRatio.length>1&&(this.yaxisIndex=r.globals.seriesYAxisReverseMap[p][0],v=p);const b=this.barHelpers.initialPositions(p),{y,barHeight:w,yDivision:x,zeroW:$,x:S,barWidth:_,xDivision:P,zeroH:T}=b;d=y,u=S,h.push(u+(_??0)/2);const O=a.group({class:"apexcharts-datalabels","data:realIndex":p});this.seriesMaxWeight=0,this.normalize==="group"&&(r.violinData.seriesViolinDensity[p]||[]).forEach(k=>{k&&k.maxWeight>this.seriesMaxWeight&&(this.seriesMaxWeight=k.maxWeight)});const M=[];for(let I=0;I0&&h.push(E.center),f.push(E.alongRepresentative);const R=this.buildPointsSubPath({realIndex:p,j:I,center:E.center,halfExtent:E.halfExtent,alongFn:E.alongFn,density:E.density,maxWeight:E.maxWeight,cloudBase:E.cloudBase,cloudMaxPx:E.cloudMaxPx,rainCenter:E.rainCenter,rainHalfPx:E.rainHalfPx});R.length&&M.push({groups:R,j:I});const D=s.fillPath({seriesNumber:this.distributed?I:p,dataPointIndex:I,color:this.distributed?r.globals.colors[I]:void 0,value:e[c][I]});this.renderSeries({realIndex:p,pathFill:D,lineFill:r.globals.stroke.colors[p],j:I,i:c,pathFrom:E.pathFrom,pathTo:E.pathTo,strokeWidth:k,elSeries:m,x:u,y:d,series:e,columnGroupIndex:g,barHeight:w,barWidth:_,elDataLabelsWrap:O,visibleSeries:this.visibleI,type:"violin"});const F=m.node.querySelector(`path.apexcharts-violin-area[j='${I}']`);if(F&&isFinite(E.alongRepresentative)&&F.setAttribute(this.isHorizontal?"cx":"cy",`${E.alongRepresentative}`),E.boxPaths){const N=(o=this.boxOptions.strokeWidth)!=null?o:1;E.boxPaths.forEach(B=>{this.renderSeries({realIndex:p,pathFill:B.filled?this.boxOptions.fillColor||D:"none",lineFill:r.globals.stroke.colors[p],j:I,i:c,pathFrom:B.pathFrom,pathTo:B.pathTo,strokeWidth:N,elSeries:m,x:u,y:d,series:e,columnGroupIndex:g,barHeight:w,barWidth:_,elDataLabelsWrap:O,visibleSeries:this.visibleI,type:"violin",classes:"apexcharts-raincloud-box"})})}}BN({graphics:a,w:r,elSeries:m,pointsByCat:M,options:this.pointsOptions,distributed:this.distributed,realIndex:p,wrapClass:"apexcharts-violin-points-wrap",pointClass:"apexcharts-violin-points"}),r.globals.seriesXvalues[p]=h,r.globals.seriesYvalues[p]=f,l.add(m)}return l}drawVerticalViolin({indexes:e,x:n,xDivision:i,barWidth:o,zeroH:r}){var a,s,l,c,u,d,f;const h=this.w,{realIndex:p,j:g,translationsIndex:m}=e,v=this.yRatio[m];h.axisFlags.isXNumeric&&(n=(h.seriesData.seriesX[p][g]-h.globals.minX)/this.xRatio-o/2);const y=n+o*this.visibleI+o/2,w=o/2,x=this.getDensity(p,g),$=this.effectiveMaxWeight(x),S=I=>r-this.logVal(I,p)/v,_=rM({halfExtent:w,cloudSign:(a=this.cloudSign)!=null?a:0,rainSign:(s=this.rainSign)!=null?s:0,boxFrac:(l=this.boxFrac)!=null?l:0,rainFrac:(c=this.rainFrac)!=null?c:0}),P=y+_.cloudBaseOff,T=this.buildBodyPath({nodes:x.nodes,center:P,halfExtent:_.cloudMaxPx,maxWeight:$,vertical:!0,alongFn:S,collapsed:!1,sideSign:this.cloudSign});let O=null;const M=(d=(u=this.ctx)==null?void 0:u.morphTypeChange)==null?void 0:d.getInitialPathFor(p,g);return M?O=M:h.globals.previousPaths.length>0&&(O=this.getPreviousPath(p,g,T)),O==null&&(O=this.buildBodyPath({nodes:x.nodes,center:P,halfExtent:_.cloudMaxPx,maxWeight:$,vertical:!0,alongFn:S,collapsed:!0,sideSign:this.cloudSign})),h.axisFlags.isXNumeric||(n=n+i),{pathTo:T,pathFrom:O,x:n,y:r,center:y,halfExtent:w,alongFn:S,density:x,maxWeight:$,cloudBase:P,cloudMaxPx:_.cloudMaxPx,rainCenter:y+_.rainCenterOff,rainHalfPx:_.rainHalfPx,boxPaths:this.buildBoxSubPaths({realIndex:p,j:g,boxCenter:y+_.boxCenterOff,boxHalfPx:_.boxHalfPx,alongFn:S,vertical:!0}),alongRepresentative:S((f=this.series[e.i][g])!=null?f:0)}}drawHorizontalViolin({indexes:e,y:n,yDivision:i,barHeight:o,zeroW:r}){var a,s,l,c,u,d,f;const h=this.w,{realIndex:p,j:g}=e,m=this.invertedYRatio;h.axisFlags.isXNumeric&&(n=(h.seriesData.seriesX[p][g]-h.globals.minX)/this.invertedXRatio-o/2);const b=n+o*this.visibleI+o/2,y=o/2,w=this.getDensity(p,g),x=this.effectiveMaxWeight(w),$=M=>r+this.logVal(M,p)/m,S=rM({halfExtent:y,cloudSign:(a=this.cloudSign)!=null?a:0,rainSign:(s=this.rainSign)!=null?s:0,boxFrac:(l=this.boxFrac)!=null?l:0,rainFrac:(c=this.rainFrac)!=null?c:0}),_=b+S.cloudBaseOff,P=this.buildBodyPath({nodes:w.nodes,center:_,halfExtent:S.cloudMaxPx,maxWeight:x,vertical:!1,alongFn:$,collapsed:!1,sideSign:this.cloudSign});let T=null;const O=(d=(u=this.ctx)==null?void 0:u.morphTypeChange)==null?void 0:d.getInitialPathFor(p,g);return O?T=O:h.globals.previousPaths.length>0&&(T=this.getPreviousPath(p,g,P)),T==null&&(T=this.buildBodyPath({nodes:w.nodes,center:_,halfExtent:S.cloudMaxPx,maxWeight:x,vertical:!1,alongFn:$,collapsed:!0,sideSign:this.cloudSign})),h.axisFlags.isXNumeric||(n=n+i),{pathTo:P,pathFrom:T,x:r,y:n,center:b,halfExtent:y,alongFn:$,maxWeight:x,density:w,cloudBase:_,cloudMaxPx:S.cloudMaxPx,rainCenter:b+S.rainCenterOff,rainHalfPx:S.rainHalfPx,boxPaths:this.buildBoxSubPaths({realIndex:p,j:g,boxCenter:b+S.boxCenterOff,boxHalfPx:S.boxHalfPx,alongFn:$,vertical:!1}),alongRepresentative:$((f=this.series[e.i][g])!=null?f:0)}}getDensity(e,n){var i;const r=(i=this.w.violinData.seriesViolinDensity[e])==null?void 0:i[n];if(!r||!r.values.length)return{nodes:[],maxWeight:0};const a=r.values.map((c,u)=>u);a.sort((c,u)=>r.values[c]-r.values[u]);const s=[];let l=null;for(const c of a){const u=r.values[c];l!==null&&u===l||(s.push({v:u,w:r.weights[c]}),l=u)}return{nodes:s,maxWeight:r.maxWeight}}effectiveMaxWeight(e){return this.normalize==="group"&&this.seriesMaxWeight>0?this.seriesMaxWeight:e.maxWeight}buildBodyPath({nodes:e,center:n,halfExtent:i,maxWeight:o,vertical:r,alongFn:a,collapsed:s,sideSign:l=0}){const c=new Be(this.w);if(e.length===0){const h=a(0);return r?c.move(n,h)+c.line(n,h):c.move(h,n)+c.line(h,n)}const u=h=>{if(s||o<=0)return 0;const p=h/o*i*this.bandwidthScale;return Math.min(i,Math.max(0,p))},d=[],f=[];for(let h=0;hr(x)),v=(x,$)=>{const S=new Be(this.w),_=(I,k)=>a?[I,k]:[k,I],P=I=>I.map(([k,E],R)=>R===0?S.move(k,E):S.line(k,E)).join(""),T=i,O=P([_(T,f),_(T,h)])+P([_(T,g),_(T,m)])+P([_(T-x,f),_(T+x,f)])+P([_(T-x,m),_(T+x,m)]),M=P([_(T-$,h),_(T+$,h),_(T+$,g),_(T-$,g)])+"z"+P([_(T-$,p),_(T+$,p)]);return{whiskers:O,box:M}},b=v(d,o),y=v(0,0),w=(x,$)=>{let S=null;return c.globals.previousPaths.length>0&&(S=this.getPreviousPath(e,n,x)),S??$};return[{pathTo:b.whiskers,pathFrom:w(b.whiskers,y.whiskers),filled:!1},{pathTo:b.box,pathFrom:w(b.box,y.box),filled:!0}]}smoothSegment(e,n,i){const o=new Be(this.w),r=e[0];let a=i?o.line(r[0],r[1]):o.move(r[0],r[1]);if(e.length<3||!this.strictlyMonotonic(e,n)){for(let d=1;dn?[f,d]:[d,f]),c=aw.points(l),u=n?c.map(oCe):c;return a+=zN(u),a}strictlyMonotonic(e,n){const i=n?1:0;for(let o=1;othis.halfWidthAtValue(m,a,g,s),sideSign:h?0:this.cloudSign})}halfWidthAtValue(e,n,i,o){const{nodes:r}=n,a=o??n.maxWeight;if(!r.length||a<=0)return 0;const s=l=>Math.min(i,l/a*i*this.bandwidthScale);if(e<=r[0].v)return s(r[0].w);if(e>=r[r.length-1].v)return s(r[r.length-1].w);for(let l=1;l0&&i.colorScale.ranges.map(o=>{o.from<=0&&(n=!0)}),n}getShadeColor(e,n,i,o){const r=this.w;let a=1;const s=r.config.plotOptions[e].shadeIntensity,l=this.determineColor(e,n,i);r.globals.hasNegs||o?r.config.plotOptions[e].reverseNegativeShade?l.percent<0?a=l.percent/100*(s*1.25):a=(1-l.percent/100)*(s*1.25):l.percent<=0?a=1-(1+l.percent/100)*s:a=(1-l.percent/100)*s:(a=1-l.percent/100,e==="treemap"&&(a=(1-l.percent/100)*(s*1.25)));let c=l.color;const u=new Ee;if(r.config.plotOptions[e].enableShades)if(this.w.config.theme.mode==="dark"){const d=u.shadeColor(a*-1,l.color);c=Ee.hexToRgba(Ee.isColorHex(d)?d:Ee.rgb2hex(d),r.config.fill.opacity)}else{const d=u.shadeColor(a,l.color);c=Ee.hexToRgba(Ee.isColorHex(d)?d:Ee.rgb2hex(d),r.config.fill.opacity)}return{color:c,colorProps:l}}determineColor(e,n,i){const o=this.w,r=o.seriesData.series[n][i],a=o.config.plotOptions[e];let s=a.colorScale.inverse?i:n;a.distributed&&o.config.chart.type==="treemap"&&(s=i);let l=o.globals.colors[s],c=null,u,d;if(!a.distributed&&e==="heatmap")u=o.globals.minY,d=o.globals.maxY;else{const v=o.seriesData.series[n];u=v.length?v[0]:0,d=u;for(let b=1;bd&&(d=v[b])}const f=a.colorScale.min,h=a.colorScale.max;typeof f<"u"&&typeof h<"u"&&h>f?(u=f,d=h):typeof f<"u"&&(u=fo.globals.maxY?h:o.globals.maxY);const p=Math.abs(d)+Math.abs(u),g=Math.min(Math.max(r,u),d);let m=p===0?0:100*g/p;return a.colorScale.ranges.length>0&&a.colorScale.ranges.map(b=>{if(r>=b.from&&r<=b.to){l=b.color,c=b.foreColor?b.foreColor:null,u=b.from,d=b.to;const y=Math.abs(d)+Math.abs(u);m=y===0?0:100*r/y}}),{color:l,foreColor:c,percent:m}}calculateDataLabels({text:e,x:n,y:i,i:o,j:r,colorProps:a,fontSize:s}){const l=this.w,c=l.config.dataLabels,u=new Be(this.w),d=new Cc(this.w,this.ctx);let f=null;if(c.enabled){f=u.group({class:"apexcharts-data-labels"});const h=Bg(c.offsetX,l,o,r),p=Bg(c.offsetY,l,o,r),g=n+h,m=i+parseFloat(c.style.fontSize)/3+p;d.plotDataLabelsText({x:g,y:m,text:e,i:o,j:r,color:a.foreColor,parent:f,fontSize:s,dataLabelsConfig:c})}return f}}class rCe{constructor(e,n,i){this.ctx=n,this.w=e,this.xRatio=i.xRatio,this.yRatio=i.yRatio,this.dynamicAnim=this.w.config.chart.animations.dynamicAnimation,this.helpers=new HN(e,n),this.rectRadius=this.w.config.plotOptions.heatmap.radius,this.shape=this.w.config.plotOptions.heatmap.shape||"rect",this.strokeWidth=this.w.config.stroke.show?this.w.config.stroke.width:0}draw(e){var n,i;const o=this.w,r=new Be(this.w,this.ctx),a=r.group({class:"apexcharts-heatmap"}),s=o.layout.gridWidth/o.globals.dataPoints,l=o.layout.gridHeight/o.seriesData.series.length,c=(o.config.xaxis.type==="numeric"||o.config.xaxis.type==="datetime")&&o.axisFlags.isXNumeric&&this.xRatio>0;let u=s;if(c){const y=o.globals.minXDiff;u=Number.isFinite(y)&&y>0?y/this.xRatio:s}let d=this.shape;c&&d==="hexagon"&&(d="rect");const f=Ov(this.ctx,r),h=d==="rect"&&f!==r&&typeof f.drawRectCell=="function";d==="hexagon"?this.applyHexagonClipPath(a,r,s,l):a.attr("clip-path",`url(#gridRectMask${o.globals.cuid})`);const p=Array.isArray(o.config.fill.opacity)?(n=o.config.fill.opacity[0])!=null?n:1:(i=o.config.fill.opacity)!=null?i:1;let g=0,m=!1;this.negRange=this.helpers.checkColorRange();const v=e.slice();o.config.yaxis[0].reversed&&(m=!0,v.reverse());for(let y=m?0:v.length-1;m?y=0;m?y++:y--){const w=r.group({class:"apexcharts-series apexcharts-heatmap-series",seriesName:Ee.escapeString(o.seriesData.seriesNames[y]),rel:y+1,"data:realIndex":y});if(Xn.addCollapsedClassToSeries(this.w,w,y),h||r.setupEventDelegation(w,".apexcharts-heatmap-rect"),o.config.chart.dropShadow.enabled){const T=o.config.chart.dropShadow;new uo(this.w).dropShadow(w,T,y)}let x=0;const $=o.config.plotOptions.heatmap.shadeIntensity,S=Math.round(g/l),_=d==="hexagon"?(S%2===0?-1:1)*s/4:0;let P=0;for(let T=0;T=v[y].length)break;const O=c?u:s;if(c){const B=o.seriesData.seriesX[y]?o.seriesData.seriesX[y][P]:null;if(B==null||B!==B){P++;continue}x=(B-o.globals.minX)/this.xRatio-u/2}const M=this.helpers.getShadeColor(o.config.chart.type,y,P,this.negRange);let I=M.color;const k=M.colorProps;o.config.fill.type==="image"&&(I=new go(this.w).fillPath({seriesNumber:y,dataPointIndex:P,opacity:o.globals.hasNegs?k.percent<0?1-(1+k.percent/100):$+k.percent/100:k.percent/100,patternID:Ee.randomId(),width:o.config.fill.image.width?o.config.fill.image.width:O,height:o.config.fill.image.height?o.config.fill.image.height:l}));const E=this.rectRadius,R=o.config.plotOptions.heatmap.useFillColorAsStroke?I:o.globals.stroke.colors[0];if(h)f.drawRectCell(x,g,O,l,{fill:I,fillOpacity:p,stroke:R,strokeWidth:this.strokeWidth,radius:E,seriesIndex:y,dataPointIndex:P});else{const B=d==="rect",z=B?r.drawRect(x,g,O,l,E):r.drawPath({d:this.cellShapePath(d,x+_,g,O,l),stroke:R,strokeWidth:this.strokeWidth,fill:I,fillOpacity:1});if(z.attr({cx:x+_,cy:g}),z.node.classList.add("apexcharts-heatmap-rect"),w.add(z),z.attr({fill:I,i:y,index:y,j:P,val:e[y][P],"stroke-width":this.strokeWidth,stroke:R,color:I}),B||z.attr({width:O,height:l}),o.config.chart.animations.enabled&&!o.globals.dataChanged){let W=1;if(o.globals.resized||(W=o.config.chart.animations.speed),B)this.animateHeatMap(z,x,g,O,l,W,y,P);else{const j=new Gs(this.w);j.animatePop(z,{speed:W,delay:this.enterStaggerDelay(W,y,P),onComplete:()=>{j.animationCompleted(z)}})}}if(o.globals.dataChanged){let W=1;if(this.dynamicAnim.enabled&&o.globals.shouldAnimate){W=this.dynamicAnim.speed;let j=o.globals.previousPaths[y]&&o.globals.previousPaths[y][P]&&o.globals.previousPaths[y][P].color;j||(j="rgba(255, 255, 255, 0)"),this.animateHeatColor(z,Ee.isColorHex(j)?j:Ee.rgb2hex(j),Ee.isColorHex(I)?I:Ee.rgb2hex(I),W)}}}const D=o.config.dataLabels.formatter,F=D(o.seriesData.series[y][P],{value:o.seriesData.series[y][P],seriesIndex:y,dataPointIndex:P,w:o}),N=this.helpers.calculateDataLabels({text:F,x:x+_+O/2,y:g+l/2,i:y,j:P,colorProps:k,series:v});N!==null&&w.add(N),c||(x=x+s),P++}g=g+l,a.add(w)}const b=o.globals.yAxisScale[0].result.slice();return o.config.yaxis[0].reversed?b.unshift(""):b.push(""),o.globals.yAxisScale[0].result=b,a}animateHeatMap(e,n,i,o,r,a,s=0,l=0){const c=new Gs(this.w),u=this.enterStaggerDelay(a,s,l);c.animateRect(e,{x:n+o/2,y:i+r/2,width:0,height:0},{x:n,y:i,width:o,height:r},a,()=>{c.animationCompleted(e)},u)}enterStaggerDelay(e,n,i){const o=this.w,r=o.config.chart.animations.animateGradually;if(!r||r.enabled===!1)return 0;const a=(o.seriesData.series||[]).length||1,s=o.globals.dataPoints||1,l=a+s-2,c=Math.min(r.delay||0,e*.5/Math.max(1,l));return c$({style:"diagonal",index:i,row:n,col:i,baseDelay:c})}cellShapePath(e,n,i,o,r){const a=n+o/2,s=i+r/2;if(e==="circle"){const c=Math.min(o,r)/2;return`M ${a-c} ${s} a ${c} ${c} 0 1 0 ${c*2} 0 a ${c} ${c} 0 1 0 ${-c*2} 0 Z`}if(e==="diamond")return`M ${a} ${i} L ${n+o} ${s} L ${a} ${i+r} L ${n} ${s} Z`;const l=n+o;return`M ${a} ${i-r/6} L ${l} ${i+r/6} L ${l} ${i+r*5/6} L ${a} ${i+r*7/6} L ${n} ${i+r*5/6} L ${n} ${i+r/6} Z`}applyHexagonClipPath(e,n,i,o){const r=this.w,a=this.strokeWidth/2+2,s=`heatmapHexMask${r.globals.cuid}`,l=r.dom.elDefs.node,c=l.querySelector(`clipPath[id="${s}"]`);c&&c.parentNode&&c.parentNode.removeChild(c);const u=We.createElementNS(Fg,"clipPath");u.setAttribute("id",s),u.appendChild(n.drawRect(-i/4-a,-o/6-a,r.layout.gridWidth+i/2+a*2,r.layout.gridHeight+o/3+a*2,0,"#fff").node),l.appendChild(u),e.attr("clip-path",`url(#${s})`)}animateHeatColor(e,n,i,o){e.attr({fill:n}).animate(o).attr({fill:i})}}class aCe{constructor(e){this.w=e.w,this.lineCtx=e}sameValueSeriesFix(e,n){const i=this.w;if((i.config.fill.type==="gradient"||i.config.fill.type[e]==="gradient")&&new No(this.lineCtx.w).seriesHaveSameValues(e)){const r=n[e].slice();r[r.length-1]=r[r.length-1]+1e-6,n[e]=r}return n}calculatePoints({series:e,realIndex:n,x:i,y:o,i:r,j:a,prevY:s}){const l=this.w,c=[],u=[];let d=this.lineCtx.categoryAxisCorrection+l.config.markers.offsetX;return l.axisFlags.isXNumeric&&(d=(l.seriesData.seriesX[n][0]-l.globals.minX)/this.lineCtx.xRatio+l.config.markers.offsetX),a===0&&(c.push(d),u.push(Ee.isNumber(e[r][0])?s+l.config.markers.offsetY:null)),c.push(i+l.config.markers.offsetX),u.push(Ee.isNumber(e[r][a+1])?o+l.config.markers.offsetY:null),{x:c,y:u}}checkPreviousPaths({pathFromLine:e,pathFromArea:n,realIndex:i}){const o=this.w;for(let r=0;r0&&parseInt(a.realIndex,10)===parseInt(i,10)&&(a.type==="line"?(this.lineCtx.appendPathFrom=!1,e=o.globals.previousPaths[r].paths[0].d):a.type==="area"&&(this.lineCtx.appendPathFrom=!1,n=o.globals.previousPaths[r].paths[0].d,o.config.stroke.show&&o.globals.previousPaths[r].paths[1]&&(e=o.globals.previousPaths[r].paths[1].d)))}return{pathFromLine:e,pathFromArea:n}}determineFirstPrevY({i:e,realIndex:n,series:i,prevY:o,lineYPosition:r,translationsIndex:a}){var s,l,c;const u=this.w,d=u.config.chart.stacked&&!u.globals.comboCharts||u.config.chart.stacked&&u.globals.comboCharts&&(!this.w.config.chart.stackOnlyBar||((s=this.w.config.series[n])==null?void 0:s.type)==="bar"||((l=this.w.config.series[n])==null?void 0:l.type)==="column");if(typeof((c=i[e])==null?void 0:c[0])<"u"){if(d)if(e>0){const f=this.lineCtx.stackTopAt(n,0);r=f===void 0?this.lineCtx.zeroY:f}else r=this.lineCtx.zeroY;else r=this.lineCtx.zeroY;o=r-i[e][0]/this.lineCtx.yRatio[a]+(this.lineCtx.isReversed?i[e][0]/this.lineCtx.yRatio[a]:0)*2}else if(d&&e>0&&typeof i[e][0]>"u"){for(let f=e-1;f>=0;f--)if(i[f][0]!==null&&typeof i[f][0]<"u"){r=this.lineCtx.prevSeriesY[f][0],o=r;break}}return{prevY:o,lineYPosition:r}}}function sCe(t,e,n,i){var o;const r=t.globals,a=r.prevStreamFrame;if(!a||!r.dataChanged||!((o=t.axisFlags)!=null&&o.isXNumeric))return null;const s=a.seriesX[e],l=a.seriesY[e],c=t.seriesData.seriesX[e],u=t.seriesData.series[e];if(!s||!l||!c||!u||s.length<3||c.length<3)return null;let d=-1;for(let E=0;E.02||Math.abs(S)<.5)return null;let _=m,P=m;for(let E=m;E<=v;E++){const R=i[E];R==null||g[d+E]==null||(Ri[P]&&(P=E))}let T=1,O=0;const M=i[_],I=i[P];if(Math.abs(I-M)>1e-6?(T=(g[d+P]-g[d+_])/(I-M),O=g[d+_]-T*M):O=g[d+_]-M,!isFinite(T)||!isFinite(O)||T<.2||T>5)return null;const k=Math.floor((m+v)/2);if(k!==m&&k!==v&&n[k]!=null&&p[d+k]!=null){const E=$*n[k]+S;if(Math.abs(E-p[d+k])>1.5)return null;if(i[k]!=null&&g[d+k]!=null){const R=T*i[k]+O;if(Math.abs(R-g[d+k])>1.5)return null}}return r.streamScrolled=!0,{ax:$,bx:S,ay:T,by:O}}const lCe=/[+-]?(?:\d+\.?\d*|\.\d+)(?:e[+-]?\d+)?/gi;function aM(t,e){const{ax:n,bx:i,ay:o,by:r}=e,a=[],s=/([MmLlHhVvCcSsQqTtAaZz])([^MmLlHhVvCcSsQqTtAaZz]*)/g;let l;for(;(l=s.exec(t))!==null;){const c=l[1].toUpperCase(),u=(l[2].match(lCe)||[]).map(parseFloat);if(c==="Z"){a.push("z");continue}if(c==="H"){for(const f of u)a.push(`H ${n*f+i}`);continue}if(c==="V"){for(const f of u)a.push(`V ${o*f+r}`);continue}if(c==="A"){for(let f=0;f+61?h:0;this._initSerieVariables(e,f,h);const g=[],m=[],v=[];let b=a.globals.padHorizontal+this.categoryAxisCorrection;const y=1,w=[],x=[];Xn.addCollapsedClassToSeries(this.w,this.elSeries,h),a.axisFlags.isXNumeric&&a.seriesData.seriesX.length>0&&(b=(a.seriesData.seriesX[h][0]-a.globals.minX)/this.xRatio),v.push(b);const $=b;let S;const _=$;let P=this.zeroY,T=this.zeroY;const O=0;P=this.lineHelpers.determineFirstPrevY({i:f,realIndex:h,series:e,prevY:P,lineYPosition:O,translationsIndex:p}).prevY,a.config.stroke.curve==="monotoneCubic"&&e[f][0]===null?g.push(null):g.push(P);const I=P;let k;l==="rangeArea"&&(k=this.lineHelpers.determineFirstPrevY({i:f,realIndex:h,series:o,prevY:T,lineYPosition:O,translationsIndex:p}),T=k.prevY,S=T,m.push(g[0]!==null?T:null));const E=this._calculatePathsFrom({type:l,series:e,i:f,realIndex:h,translationsIndex:p,prevX:_,prevY:P,prevY2:T}),R=[g[0]],D=[m[0]],F={type:l,series:e,realIndex:h,translationsIndex:p,i:f,x:b,y,pX:$,pY:I,pathsFrom:E,linePaths:w,areaPaths:x,seriesIndex:i,lineYPosition:O,xArrj:v,yArrj:g,y2Arrj:m,seriesRangeEnd:o},N=this._iterateOverDataPoints(vt(Ye({},F),{iterations:l==="rangeArea"?e[f].length-1:void 0,isRangeStart:!0}));if(l==="rangeArea"){const B=this._calculatePathsFrom({series:o,i:f,realIndex:h,prevX:_,prevY:T}),z=this._iterateOverDataPoints(vt(Ye({},F),{series:o,xArrj:[b],yArrj:R,y2Arrj:D,pY:S,areaPaths:N.areaPaths,pathsFrom:B,iterations:o[f].length-1,isRangeStart:!1})),W=N.linePaths.length/2;for(let j=0;jNumber(f.node.getAttribute("zIndex"))-Number(h.node.getAttribute("zIndex"))),a.config.chart.stacked)for(let f=d.length-1;f>=0;f--)c.add(d[f]);else for(let f=0;f1&&(this.yaxisIndex=o.globals.seriesYAxisReverseMap[i],a=i),this.isReversed=o.config.yaxis[this.yaxisIndex]&&o.config.yaxis[this.yaxisIndex].reversed,this.zeroY=o.layout.gridHeight-this.baseLineY[a]-(this.isReversed?o.layout.gridHeight:0)+(this.isReversed?this.baseLineY[a]*2:0),this.areaBottomY=this.zeroY,(this.zeroY>o.layout.gridHeight||o.config.plotOptions.area.fillTo==="end")&&(this.areaBottomY=o.layout.gridHeight),this.categoryAxisCorrection=this.xDivision/2;const s=o.config.series[i];if(this.elSeries=r.group({class:"apexcharts-series",zIndex:typeof s.zIndex<"u"?s.zIndex:i,seriesName:Ee.escapeString(o.seriesData.seriesNames[i])}),this.elPointsMain=r.group({class:"apexcharts-series-markers-wrap","data:realIndex":i}),this.markers.resetSeriesWrapCache(),this._elLastPointsWrap=null,o.globals.hasNullValues){const c=this.markers.plotChartMarkers({pointsPos:{x:[0],y:[o.layout.gridHeight+o.globals.markers.largestSize]},seriesIndex:n,j:0,pSize:.1,alwaysDrawMarker:!0,isVirtualPoint:!0});c!==null&&this.elPointsMain.add(c)}this.elDataLabelsWrap=r.group({class:"apexcharts-datalabels","data:realIndex":i});const l=e[n].length===o.globals.dataPoints;this.elSeries.attr({"data:longestSeries":l,rel:n+1,"data:realIndex":i}),this.appendPathFrom=!0}_calculatePathsFrom({type:e,series:n,i,realIndex:o,translationsIndex:r,prevX:a,prevY:s,prevY2:l}){const c=this.w,u=new Be(this.w);let d,f,h,p;if(n[i][0]===null){for(let g=0;g0){const g=this.lineHelpers.checkPreviousPaths({pathFromLine:h,pathFromArea:p,realIndex:o});h=g.pathFromLine,p=g.pathFromArea}return{prevX:a,prevY:s,linePath:d,areaPath:f,pathFromLine:h,pathFromArea:p}}_stackKey(e,n){if(!this.w.axisFlags.isXNumeric)return n;const i=this.w.seriesData.seriesX[e];return i?i[n]:void 0}stackTopAt(e,n){const i=this._stackKey(e,n);if(i!=null)return this.prevSeriesYByX.get(i)}_recordStackTops(e,n){const i=this.w;if(Array.isArray(n)&&!(i.globals.collapsedSeriesIndices.indexOf(e)!==-1||i.globals.ancillaryCollapsedSeriesIndices.indexOf(e)!==-1))for(let o=0;o0&&e!=="rangeArea"){const _=f.globals.seriesXvalues[n][f.globals.seriesXvalues[n].length-b.count-1],P=h.drawRect(_,0,f.layout.gridWidth,f.layout.gridHeight,0);f.dom.elForecastMask.appendChild(P.node);const T=h.drawRect(0,0,_,f.layout.gridHeight,0);f.dom.elNonForecastMask.appendChild(T.node)}this.pointsChart?eM(f,{elPointsMain:this.elPointsMain,realIndex:n,speed:f.config.chart.animations.dynamicAnimation.speed}):(f.globals.delayedElements.push({el:this.elPointsMain.node,index:n}),eM(f,{elPointsMain:this.elPointsMain,realIndex:n,speed:f.config.chart.animations.dynamicAnimation.speed}),Tv(f,n)&&((r=this.elDataLabelsWrap)!=null&&r.node)&&(this.elDataLabelsWrap.node.classList.add("apexcharts-element-hidden"),f.globals.delayedElements.push({el:this.elDataLabelsWrap.node,holdUntilComplete:!0})));const y={i,realIndex:n,animationDelay:i,initialSpeed:f.config.chart.animations.speed,dataChangeSpeed:f.config.chart.animations.dynamicAnimation.speed,className:`apexcharts-${e}`},w=o.numericXY,x=e==="line"||e==="area",$=x&&o.linePaths.length>1?[o.linePaths.join(" ")]:o.linePaths,S=x&&o.areaPaths.length>1?[o.areaPaths.join(" ")]:o.areaPaths;if(e==="area"){const _=g.fillPath({seriesNumber:n});for(let P=0;P0&&e!=="rangeArea"){const I=p.renderPaths(O);I.node.setAttribute("stroke-dasharray",b.dashArray),b.strokeWidth&&I.node.setAttribute("stroke-width",b.strokeWidth),this.elSeries.add(I),I.attr("clip-path",`url(#forecastMask${f.globals.cuid})`),M.attr("clip-path",`url(#nonForecastMask${f.globals.cuid})`)}}}}_iterateOverDataPoints({type:e,series:n,iterations:i,realIndex:o,translationsIndex:r,i:a,x:s,y:l,pX:c,pY:u,pathsFrom:d,linePaths:f,areaPaths:h,seriesIndex:p,lineYPosition:g,xArrj:m,yArrj:v,y2Arrj:b,isRangeStart:y,seriesRangeEnd:w}){var x,$;const S=this.w,_=new Be(this.w),P=this.yRatio;let{prevY:T,linePath:O,areaPath:M,pathFromLine:I,pathFromArea:k}=d;const E=Ee.isNumber(S.globals.minYArr[o])?S.globals.minYArr[o]:S.globals.minY;i||(i=S.globals.dataPoints>1?S.globals.dataPoints-1:S.globals.dataPoints);const R=(j,U)=>U-j/P[r]+(this.isReversed?j/P[r]:0)*2;let D=l;const F=S.config.chart.stacked&&!S.globals.comboCharts||S.config.chart.stacked&&S.globals.comboCharts&&(!this.w.config.chart.stackOnlyBar||((x=this.w.config.series[o])==null?void 0:x.type)==="bar"||(($=this.w.config.series[o])==null?void 0:$.type)==="column");let N=S.config.stroke.curve;Array.isArray(N)&&(Array.isArray(p)?N=N[p[a]]:N=N[a]);let B=0,z;const W=this.pointsChart?this._scatterJitterPx(o):null;if(N==="straight"&&!this.pointsChart){const j=this._fastStraightPath({type:e,series:n,i:a,realIndex:o,translationsIndex:r,iterations:i,x:s,y:l,pX:c,pY:u,pathsFrom:d,linePaths:f,areaPaths:h,xArrj:m,yArrj:v,y2Arrj:b,stackSeries:F});if(j)return j}for(let j=0;j"u"||n[a][j+1]===null;if(S.axisFlags.isXNumeric){let Q=S.seriesData.seriesX[o][j+1];typeof S.seriesData.seriesX[o][j+1]>"u"&&(Q=S.seriesData.seriesX[o][i-1]),s=(Q-S.globals.minX)/this.xRatio}else s=s+this.xDivision;if(F)if(a>0&&S.globals.collapsedSeries.length{var X;for(let K=ee;K>=0;K--){const te=(X=p==null?void 0:p[K])!=null?X:K;if(S.globals.collapsedSeriesIndices.indexOf(te)===-1&&S.globals.ancillaryCollapsedSeriesIndices.indexOf(te)===-1)return K}return-1})(a-1)<0)g=this.zeroY;else{const ee=this.stackTopAt(o,j+1);g=ee===void 0?this.zeroY:ee}else g=this.zeroY;else g=this.zeroY;U?l=R(E,g):(l=R(n[a][j+1],g),e==="rangeArea"&&(D=R(w[a][j+1],g)));let V=s,q=l;if(W){const Q=o*100003+(j+1);W.x&&(V=s+(rw(Q*7919+13)-.5)*2*W.x),W.y&&(q=l+(rw(Q*6271+97)-.5)*2*W.y)}m.push(n[a][j+1]===null?null:V),U&&(S.config.stroke.curve==="smooth"||S.config.stroke.curve==="monotoneCubic")?(v.push(null),b.push(null)):(v.push(q),b.push(D));const Y=this.lineHelpers.calculatePoints({series:n,x:V,y:q,realIndex:o,i:a,j,prevY:T}),J=this._createPaths({type:e,series:n,i:a,j,x:s,y:l,y2:D,xArrj:m,yArrj:v,y2Arrj:b,pX:c,pY:u,pathState:B,segmentStartX:z,linePath:O,areaPath:M,linePaths:f,areaPaths:h,curve:N,isRangeStart:y});h=J.areaPaths,f=J.linePaths,c=J.pX,u=J.pY,B=J.pathState,z=J.segmentStartX,M=J.areaPath,O=J.linePath,this.appendPathFrom&&!S.globals.hasNullValues&&!(N==="monotoneCubic"&&e==="rangeArea")&&(I+=_.line(s,this.areaBottomY),k+=_.line(s,this.areaBottomY)),this.handleNullDataPoints(n,Y,a,j,o),this._handleMarkersAndLabels({type:e,pointsPos:Y,i:a,j,realIndex:o,isRangeStart:y})}return{yArrj:v,xArrj:m,pathFromArea:k,areaPaths:h,pathFromLine:I,linePaths:f,linePath:O,areaPath:M}}_handleMarkersAndLabels({type:e,pointsPos:n,isRangeStart:i,i:o,j:r,realIndex:a}){const s=this.w,l=new Cc(this.w,this.ctx);if(this.pointsChart)this.scatter.draw(this.elSeries,r,{realIndex:a,pointsPos:n,zRatio:this.zRatio,elParent:this.elPointsMain});else{!(!s.globals.dataChanged&&!s.globals.resized&&!s.globals.markers.batched)&&s.seriesData.series[o].length>1&&this.elPointsMain.node.classList.add("apexcharts-element-hidden");const d=this.markers.plotChartMarkers({pointsPos:n,seriesIndex:a,j:r+1});d!==null&&d!==this._elLastPointsWrap&&(this.elPointsMain.add(d),this._elLastPointsWrap=d)}const c=l.drawDataLabel({type:e,isRangeStart:i,pos:n,i:a,j:r+1});c!==null&&this.elDataLabelsWrap.add(c)}_scatterJitterPx(e){var n;const i=this.w,o=(n=i.config.plotOptions.scatter)==null?void 0:n.jitter;if(!o||!o.enabled||!o.x&&!o.y)return null;const r=i.axisFlags.isXNumeric&&this.xRatio?1/this.xRatio:this.xDivision,a=this.yRatio.length>1?e:0,s=this.yRatio[a]?1/this.yRatio[a]:0;return{x:(o.x||0)*r,y:(o.y||0)*s}}_fastStraightPath({type:e,series:n,i,realIndex:o,translationsIndex:r,iterations:a,x:s,y:l,pX:c,pY:u,pathsFrom:d,linePaths:f,areaPaths:h,xArrj:p,yArrj:g,y2Arrj:m,stackSeries:v}){const b=this.w;if(e!=="line"&&e!=="area"||b.globals.comboCharts||v||b.config.dataLabels.enabled||b.config.markers.discrete.length||b.globals.markers.size[o]>0)return null;const y=n[i],w=y.length;if(!a||w<2||w-1!==a)return null;for(let K=0;K<=a;K++){const te=y[K];if(te===null||typeof te>"u")return null}const x=b.axisFlags.isXNumeric,$=x?b.seriesData.seriesX[o]:null;if(x&&(!$||$.length"u"&&(b.globals.pointsArray[o]=[]);const U=b.globals.pointsArray[o],V=$?($[0]-M)/O+k:this.categoryAxisCorrection+k;U.push([V,d.prevY+E]);const q=z?new Array(a+1):[];z&&(q[0]="M "+c+" "+u);const Y=z&&R?new Array(a):null;let J=s,Q=c,G=u;for(let K=0;KI.map((E,R)=>[E,k[R]]).filter(E=>E[1]!==null),O=I=>{const k=[];let E=0;return I.forEach(R=>{R!==null?E++:E>0&&(k.push(E),E=0)}),E>0&&k.push(E),k},M=(I,k)=>{const E=O(I),R=[];for(let D=0,F=0;D1?aw.points(E):E;let D=[];S&&(_?b=E:D=b.reverse());let F=0,N=0;if(M(k,R).forEach(B=>{F++;const z=zN(B),W=N;N+=B.length;const j=N-1;_?g=x.move(E[W][0],E[W][1])+z:S?g=x.move(D[W][0],D[W][1])+x.line(E[W][0],E[W][1])+z+x.line(D[j][0],D[j][1]):(g=x.move(E[W][0],E[W][1])+z,m=g+x.line(E[j][0],$)+x.line(E[W][0],$)+"z",b.push(m)),v.push(g)}),S&&F>1&&!_){const B=v.slice(F).reverse();v.splice(F),B.forEach(z=>v.push(z))}h=0;break}}break}case"smooth":{const P=(r-d)*.35;if(n[i][o]===null)h=0;else switch(h){case 0:if(p=d,_?g=x.move(d,u[o])+x.line(d,f):g=x.move(d,f),m=x.move(d,f),n[i][o+1]===null||typeof n[i][o+1]>"u"){v.push(g),b.push(m);break}if(h=1,o=n[i].length-2&&(_&&(g+=x.curve(r,a,r,a,r,c)+x.move(r,c)),m+=x.curve(r,a,r,a,r,$)+x.line(p,$)+"z",v.push(g),b.push(m),h=-1)}break}d=r,f=a;break}default:{const P=(T,O,M)=>{let I="";switch(T){case"stepline":I=x.line(O,null,"H")+x.line(null,M,"V");break;case"linestep":I=x.line(null,M,"V")+x.line(O,null,"H");break;case"straight":I=x.line(O,M);break}return I};if(n[i][o]===null)h=0;else switch(h){case 0:if(p=d,_?g=x.move(d,u[o])+x.line(d,f):g=x.move(d,f),m=x.move(d,f),n[i][o+1]===null||typeof n[i][o+1]>"u"){v.push(g),b.push(m);break}if(h=1,o=n[i].length-2&&(_&&(g+=x.line(r,c)),m+=x.line(r,$)+x.line(p,$)+"z",v.push(g),b.push(m),h=-1)}break}d=r,f=a;break}}return{linePaths:v,areaPaths:b,pX:d,pY:f,pathState:h,segmentStartX:p,linePath:g,areaPath:m}}handleNullDataPoints(e,n,i,o,r){const a=this.w;if(e[i][o]===null&&a.config.markers.showNullDataPoints||e[i].length===1){let s=this.strokeWidth-a.config.markers.strokeWidth/2;s>0||(s=0);const l=this.markers.plotChartMarkers({pointsPos:n,seriesIndex:r,j:o+1,pSize:s,alwaysDrawMarker:!0});l!==null&&this.elPointsMain.add(l)}}}function WN(t,e){const{lines:n,lineHeight:i,anchor:o,elbow:r,labelX:a,labelY:s,side:l,connector:c,style:u,foreColor:d}=e,f=new Be(t),h=f.group({class:e.groupClass||"apexcharts-outer-label-group"});if(c.show){const b=`M ${o.x} ${o.y} L ${r.x} ${r.y} L ${a} ${s}`,y=f.drawPath({d:b,stroke:c.color,strokeWidth:c.width,fill:"none",strokeLinecap:"round"});y.node.classList.add(e.connectorClass||"apexcharts-outer-label-connector"),h.add(y)}const p=l==="right"?a+4:a-4,g=n.length,m=s-(g-1)*i/2,v=f.drawText({x:p,y:m,text:g===1?n[0]:n,textAnchor:l==="right"?"start":"end",fontSize:u.fontSize,fontFamily:u.fontFamily,fontWeight:u.fontWeight,foreColor:d,dominantBaseline:"central",cssClass:e.textClass||"apexcharts-outer-label"});if(g>1){const b=v.node.getElementsByTagName("tspan");for(let y=0;y{if(s==null||s==="")return;const l=`${s}`,c=i.getTextRects(l,o,n.fontFamily,"").width;a=Math.max(a,c>0?c:l.length*r*.58)}),a}function jN(t,e,n,i){const o=t.slice().sort((s,l)=>s.idealY-l.idealY);o.forEach(s=>{s.labelY=s.idealY});for(let s=1;s0)for(let s=o.length-1;s>=0;s--)o[s].labelY-=a,s{if(a===null||typeof a>"u"||a==="")return;const s=o.getTextRects(`${a}`,n||"12px",i,"");r=Math.max(r,s.width)}),r}drawExternalLabel(e){return WN(this.w,vt(Ye({},e),{groupClass:"apexcharts-pie-name-label-group",textClass:"apexcharts-pie-name-label",connectorClass:"apexcharts-pie-label-connector"}))}}const sM=Math.PI/180,lw=180/Math.PI;function h$(t,e,n,i){return{x:t+n*Math.cos((i-90)*sM),y:e+n*Math.sin((i-90)*sM)}}const tn=t=>`${t.x} ${t.y}`;function cw({cx:t,cy:e,rIn:n,rOut:i,a0:o,a1:r,r:a,spanDeg:s}){const l=(P,T)=>h$(t,e,P,T),c=a/i*lw,u=a/n*lw,d=l(i,o+c),f=l(i,r-c),h=s-2*c>180?1:0,p=l(i,r),g=l(i-a,r),m=l(i,o),v=l(i-a,o),b=l(n,r-u),y=l(n,o+u),w=s-2*u>180?1:0,x=l(n,r),$=l(n+a,r),S=l(n,o),_=l(n+a,o);return["M",tn(d),"A",i,i,0,h,1,tn(f),"Q",tn(p),tn(g),"L",tn($),"Q",tn(x),tn(b),"A",n,n,0,w,0,tn(y),"Q",tn(S),tn(_),"L",tn(v),"Q",tn(m),tn(d),"Z"].join(" ")}function uCe({cx:t,cy:e,rOut:n,a0:i,a1:o,r,spanDeg:a}){const s=(m,v)=>h$(t,e,m,v),l=r/n*lw,c=s(n,i+l),u=s(n,o-l),d=a-2*l>180?1:0,f=s(n,o),h=s(n-r,o),p=s(n,i),g=s(n-r,i);return["M",tn(c),"A",n,n,0,d,1,tn(u),"Q",tn(f),tn(h),"L",`${t} ${e}`,"L",tn(g),"Q",tn(p),tn(c),"Z"].join(" ")}function VN({cx:t,cy:e,rIn:n,rOut:i,a0:o,a1:r,spanDeg:a}){const s=(h,p)=>h$(t,e,h,p),l=a>180?1:0,c=s(i,o),u=s(i,r),d=s(n,r),f=s(n,o);return["M",tn(c),"A",i,i,0,l,1,tn(u),"L",tn(d),"A",n,n,0,l,0,tn(f),"Z"].join(" ")}const dCe="transform 320ms cubic-bezier(0.25, 0.8, 0.3, 1)",fCe="opacity 180ms ease-out";class fp{constructor(e,n){this.ctx=n,this.w=e,this.chartType=this.w.config.chart.type,this.initialAnim=this.w.config.chart.animations.enabled,this.dynamicAnim=this.initialAnim&&this.w.config.chart.animations.dynamicAnimation.enabled,this.animBeginArr=[0],this.animDur=0,this.donutDataLabels=this.w.config.plotOptions.pie.donut.labels,this.lineColorArr=e.globals.stroke.colors!==void 0?e.globals.stroke.colors:e.globals.colors,this.defaultSize=Math.min(e.layout.gridWidth,e.layout.gridHeight),this.centerY=e.layout.gridHeight/2,this.centerX=e.layout.gridWidth/2,e.config.chart.type==="radialBar"?this.fullAngle=360:this.fullAngle=Math.abs(e.config.plotOptions.pie.endAngle-e.config.plotOptions.pie.startAngle),this.initialAngle=e.config.plotOptions.pie.startAngle%this.fullAngle,e.globals.radialSize=this.defaultSize/2.05-e.config.stroke.width-(e.config.chart.sparkline.enabled?0:e.config.chart.dropShadow.blur),this.externalCfg=e.config.plotOptions.pie.dataLabels.external;const i=e.config.dataLabels.style;this.externalLabelStyle={fontSize:this.externalCfg.fontSize||i.fontSize,fontFamily:this.externalCfg.fontFamily||i.fontFamily,fontWeight:this.externalCfg.fontWeight||i.fontWeight},this.externalLabels=[],this.externalLabelMaxLines=1,this.externalLabelLineH=parseFloat(this.externalLabelStyle.fontSize)||12,e.globals.pieExternalLabelMarginY=0,this.showExternalLabels=this.externalCfg.show&&this.chartType!=="polarArea",this.showExternalLabels&&!e.globals.noData&&this.reserveExternalLabelSpace(),this.donutSize=e.globals.radialSize*parseInt(e.config.plotOptions.pie.donut.size,10)/100;const o=e.config.plotOptions.pie.customScale,r=e.layout.gridWidth/2,a=e.layout.gridHeight/2;this.translateX=r-r*o,this.translateY=a-a*o,this.dataLabelsGroup=new Be(this.w).group({class:"apexcharts-datalabels-group",transform:`translate(${this.translateX}, ${this.translateY}) scale(${o})`}),this.maxY=0,this.sliceLabels=[],this.sliceSizes=[],this.prevSliceSizes=[],this.sliceLabelGroups={},this.externalLabelGroups={},this.elHoverOutline=null,this.elHoverOutlinePath=null,this.hoverOutlineIndex=-1,this.prevSectorAngleArr=[]}getExternalLabelText(e){var n,i,o;const r=this.w,a=r.seriesData.seriesNames[e],s=this.externalCfg.formatter;return typeof s=="function"?s(a,{seriesIndex:e,percent:(i=(n=r.globals.seriesPercent)==null?void 0:n[e])==null?void 0:i[0],value:(o=r.globals.seriesTotals)==null?void 0:o[e],w:r}):a==null?"":`${a}`}getExternalLabelLines(e){const n=this.getExternalLabelText(e);return(Array.isArray(n)?n:`${n??""}`.split(` `)).map(o=>o==null?"":`${o}`)}reserveExternalLabelSpace(){const e=this.w,n=new dp(e),i=(e.seriesData.seriesNames||[]).map((f,h)=>this.getExternalLabelLines(h)),o=n.getMaxLabelWidth(i.flat(),{fontSize:this.externalLabelStyle.fontSize,fontFamily:this.externalLabelStyle.fontFamily});this.externalLabelMaxLines=i.reduce((f,h)=>Math.max(f,h.length),1),this.externalLabelLineH=Math.round((parseFloat(this.externalLabelStyle.fontSize)||12)*1.35);const r=this.externalCfg.connector,a=this.externalLabelMaxLines*this.externalLabelLineH,s=o+(r.length||0)+(r.gap||0)+12,l=a/2+(r.gap||0)+6,c=Math.min(e.globals.radialSize,e.layout.gridWidth/2-s,e.layout.gridHeight/2-l);e.globals.radialSize=Math.max(c,this.defaultSize*.15),e.globals.pieExternalLabelMarginY=l;const u=e.config.chart.height?String(e.config.chart.height):"",d=u!==""&&u!=="auto";this.centerY=d?e.layout.gridHeight/2:e.globals.radialSize+l}draw(e){var n;const i=this,o=this.w,r=new Be(this.w),a=r.group({class:"apexcharts-pie"});if(o.globals.noData)return a;let s=0;for(let p=0;p{this.maxY=Math.max(this.maxY,p)}),o.config.yaxis[0].max&&(this.maxY=o.config.yaxis[0].max),o.config.grid.position==="back"&&this.chartType==="polarArea"&&this.drawPolarElements(a);const u=o.globals.collapsedSeriesIndices||[];let d=1;if(this.chartType==="polarArea"){let p=0;for(let g=0;g-1?0:this.fullAngle/d,this.sliceSizes.push(o.globals.radialSize*e[p]/(this.maxY||1))):this.sliceSizes.push(o.globals.radialSize)}const f=((n=this.ctx.morphTypeChange)==null?void 0:n.isActive())===!0;if(o.globals.dataChanged&&!f)if(this.chartType==="polarArea"){const p=o.globals.previousPaths,g=o.globals.prevPolarAngles;if(Array.isArray(g)&&g.length===p.length)this.prevSectorAngleArr=g.slice();else for(let v=0;vo.globals.radialSize*Ee.negToZero(v)/(m||1))}else{let p=0;for(let m=0;m{h.add(p)}),c.attr({transform:`translate(${this.translateX}, ${this.translateY}) scale(${o.config.plotOptions.pie.customScale})`}),c.add(h),a.add(c),this.donutDataLabels.show){const p=this.initialAnim&&!o.globals.resized&&!o.globals.dataChanged&&this.animDur>0,g=this.renderInnerDataLabels(this.dataLabelsGroup,this.donutDataLabels,{hollowSize:this.donutSize,centerX:this.centerX,centerY:this.centerY,opacity:p?0:this.donutDataLabels.show});if(p){const m=this.dataLabelsGroup.node;m.style.transition="opacity 280ms ease-out",setTimeout(()=>{m.style.opacity="1"},this.animDur)}a.add(g)}return o.config.grid.position==="front"&&this.chartType==="polarArea"&&this.drawPolarElements(a),a}drawArcs(e,n){var i,o,r,a,s;const l=this.w,c=new uo(this.w),u=new Be(this.w),d=new go(this.w),f=u.group({class:"apexcharts-slices"});this.elHoverOutline=u.group({class:"apexcharts-pie-hover-outline"}),this.elHoverOutline.node.style.pointerEvents="none",this.elHoverOutline.node.style.opacity="0",l.config.chart.animations.enabled&&(this.elHoverOutline.node.style.transition=fCe),f.add(this.elHoverOutline);let h=this.initialAngle,p=this.initialAngle,g=this.initialAngle,m=this.initialAngle;this.strokeWidth=l.config.stroke.show?l.config.stroke.width:0;const v=((i=this.ctx.morphTypeChange)==null?void 0:i.isActive())===!0;for(let b=0;bD.animationCompleted(P)):D.animationCompleted(P)}else this.dynamicAnim&&l.globals.dataChanged?this.animatePaths(P,{size:this.sliceSizes[b],prevSize:S,endAngle:g,startAngle:h,prevStartAngle:p,prevEndAngle:m,animateStartingPos:!0,i:b,animBeginArr:this.animBeginArr,shouldSetPrevPaths:!0,dur:l.config.chart.animations.dynamicAnimation.speed}):this.animatePaths(P,{size:this.sliceSizes[b],endAngle:g,startAngle:h,i:b,totalItems:e.length-1,animBeginArr:this.animBeginArr,dur:k});if(this.getExpandOffset()>0?P.node.addEventListener("mouseup",this.pieClicked.bind(this,b)):b===0&&uo.drilldownBlocksSliceOffset(l)&&((s=this.ctx.drilldown)==null||s.warnSliceOffsetDisabled()),typeof l.interact.selectedDataPoints[0]<"u"&&l.interact.selectedDataPoints[0].indexOf(b)>-1)if(this.initialAnim&&!l.globals.resized&&!l.globals.dataChanged&&this.animDur>0){const E=this,R=b;setTimeout(()=>E.pieClicked(R,{animate:!1}),this.animDur)}else this.pieClicked(b,{animate:!1});if(l.config.dataLabels.enabled){const E=T.x,R=T.y;let D=100*w/this.fullAngle+"%";if(w!==0&&l.config.plotOptions.pie.dataLabels.minAngleToShowLabelR!=="")){const R=Ee.polarToCartesian(this.centerX,this.centerY,l.globals.radialSize,O),D=Ee.polarToCartesian(this.centerX,this.centerY,l.globals.radialSize+(this.externalCfg.connector.gap||0),O),F=D.x>=this.centerX,N=F?D.x+(this.externalCfg.connector.length||0):D.x-(this.externalCfg.connector.length||0);this.externalLabels.push({i:b,lines:E,anchor:R,elbow:D,side:F?"right":"left",labelX:N+parseFloat(this.externalCfg.offsetX||0),idealY:D.y+parseFloat(this.externalCfg.offsetY||0),connectorColor:this.externalCfg.connector.color||l.globals.colors[b],foreColor:this.externalCfg.color||l.config.chart.foreColor})}}}if(this.showExternalLabels&&this.externalLabels.length){this.placeExternalLabels();const b=Ot.isBrowser()&&(v||this.dynamicAnim&&l.globals.dataChanged||this.initialAnim&&!l.globals.resized&&!l.globals.dataChanged);this.externalLabels.forEach(y=>{const w=new dp(l).drawExternalLabel({lines:y.lines,lineHeight:this.externalLabelLineH,anchor:y.anchor,elbow:y.elbow,labelX:y.labelX,labelY:y.labelY,side:y.side,connector:{show:this.externalCfg.connector.show,width:this.externalCfg.connector.width,color:y.connectorColor},style:this.externalLabelStyle,foreColor:y.foreColor});b&&(w.node.classList.add("apexcharts-element-hidden"),l.globals.delayedElements.push({el:w.node})),this.externalLabelGroups[y.i]=w.node,f.add(w)})}return f}placeExternalLabels(){const e=this.w,n=this.externalLabelMaxLines*this.externalLabelLineH+2,i=this.centerY+e.globals.radialSize+e.globals.pieExternalLabelMarginY;["left","right"].forEach(o=>{jN(this.externalLabels.filter(r=>r.side===o),n,i)})}addListeners(e,n,i){const o=new Be(this.w,this.ctx);e.node.addEventListener("mouseenter",o.pathMouseEnter.bind(o,e)),e.node.addEventListener("mouseleave",o.pathMouseLeave.bind(o,e)),e.node.addEventListener("mouseleave",this.revertDataLabelsInner.bind(this)),typeof i=="number"&&(e.node.addEventListener("mouseenter",this.showHoverOutline.bind(this,i)),e.node.addEventListener("mouseleave",this.hideHoverOutline.bind(this))),e.node.addEventListener("mousedown",o.pathMouseDown.bind(o,e)),this.donutDataLabels.total.showAlways||(e.node.addEventListener("mouseenter",this.printDataLabelsInner.bind(this,e.node,n)),e.node.addEventListener("mousedown",this.printDataLabelsInner.bind(this,e.node,n)))}animatePaths(e,n){const i=this.w,o=this;let r=n.endAnglethis.fullAngle?n.endAngle=n.endAngle-(r+l):r+l{f=p+(o-p)*m,a.animateStartingPos&&(f=r+(o-r)*m,h=n-r+(i-(n-r))*m),d=s.getPiePath({me:s,startAngle:h,angle:f,size:g?a.prevSize+(u-a.prevSize)*m:u}),e.node.setAttribute("data:pathOrig",d),e.attr({d})}):(d=s.getPiePath({me:s,startAngle:h,angle:o,size:u}),a.isTrack||(l.globals.animationEnded=!0),e.node.setAttribute("data:pathOrig",d),e.attr({d,"stroke-width":s.strokeWidth}))}pieClicked(e,n){const i=this.w,o=this,r=!(n&&n.animate===!1),a=i.dom.Paper.findOne(`.apexcharts-${o.chartType.toLowerCase()}-slice-${e}`);if(!a)return;if(a.attr("data:pieClicked")==="true"){a.attr({"data:pieClicked":"false"}),this.revertDataLabelsInner(),this.offsetSlice(e,0,r);return}const s=i.dom.baseEl.getElementsByClassName("apexcharts-pie-area");Array.prototype.forEach.call(s,l=>{const c=l.getAttribute("data:pieClicked")==="true";l.setAttribute("data:pieClicked","false"),c&&this.offsetSlice(parseInt(l.getAttribute("j"),10),0,r)}),i.interact.capturedDataPointIndex=e,a.attr("data:pieClicked","true"),this.offsetSlice(e,this.getExpandOffset(),r)}getExpandOffset(){const e=this.w.config.plotOptions.pie;if(!e.expandOnClick||this.chartType==="polarArea"||uo.drilldownBlocksSliceOffset(this.w))return 0;const n=Number(e.expandOffset);return Number.isFinite(n)&&n>0?n:0}getSliceMovers(e){const n=this.w.dom.Paper.findOne(`.apexcharts-${this.chartType.toLowerCase()}-slice-${e}`);return[n?n.node:null,this.sliceLabelGroups[e],this.externalLabelGroups[e],this.hoverOutlineIndex===e&&this.elHoverOutlinePath?this.elHoverOutlinePath.node:null].filter(Boolean)}offsetSlice(e,n,i=!0){const o=this.w;if(!o.dom.Paper.findOne(`.apexcharts-${this.chartType.toLowerCase()}-slice-${e}`))return;const{dx:a,dy:s}=this.getSliceOffsetVector(e,n),l=`translate(${a} ${s})`,c=i&&o.config.chart.animations.enabled?dCe:"";this.getSliceMovers(e).forEach(u=>{u.style.transition=c,u.setAttribute("transform",l)})}getSliceOffsetVector(e,n){const i=this.w.dom.Paper.findOne(`.apexcharts-${this.chartType.toLowerCase()}-slice-${e}`),o=i?parseFloat(i.attr("data:angle")):NaN;if(!n||!Number.isFinite(o)||o>=this.fullAngle)return{dx:0,dy:0};const r=parseFloat(i.attr("data:startAngle")),a=Math.PI*(r+o/2-90)/180;return{dx:n*Math.cos(a),dy:n*Math.sin(a)}}showHoverOutline(e){const n=this.w;if(!uo.hoverOutlineOwnsHoverState(n)||!this.elHoverOutline)return;const i=this.getHoverOutlinePath(e);if(!i)return;const o=n.config.plotOptions.pie.hoverOutline,r=o.color||n.globals.colors[e];if(!this.elHoverOutlinePath){const l=new Be(n);this.elHoverOutlinePath=l.drawPath({d:i,fill:r,strokeWidth:0,classes:"apexcharts-pie-hover-outline-band"}),this.elHoverOutline.add(this.elHoverOutlinePath)}this.elHoverOutlinePath.attr({d:i,fill:r,"fill-opacity":o.opacity});const{dx:a,dy:s}=this.getSliceOffsetVector(e,this.isSliceOut(e)?this.getExpandOffset():0);this.elHoverOutlinePath.node.style.transition="",this.elHoverOutlinePath.node.setAttribute("transform",`translate(${a} ${s})`),this.hoverOutlineIndex=e,this.elHoverOutline.node.style.opacity="1"}hideHoverOutline(){this.elHoverOutline&&(this.elHoverOutline.node.style.opacity="0")}isSliceOut(e){const n=this.w.dom.Paper.findOne(`.apexcharts-${this.chartType.toLowerCase()}-slice-${e}`);return!!n&&n.attr("data:pieClicked")==="true"}getHoverOutlinePath(e){const n=this.w,i=n.config.plotOptions.pie.hoverOutline,o=n.dom.Paper.findOne(`.apexcharts-${this.chartType.toLowerCase()}-slice-${e}`);if(!o)return null;const r=parseFloat(o.attr("data:angle"));if(!Number.isFinite(r)||r<=0)return null;const a=this.sliceSizes[e],s=Number(i.size);if(!Number.isFinite(a)||!Number.isFinite(s)||s<=0)return null;const{startDeg:l,spanDeg:c}=this.getSliceExtent({me:this,startAngle:parseFloat(o.attr("data:startAngle")),angle:r,size:a});if(!(c>0))return null;const u=a+(this.strokeWidth||0)/2+(Number(i.gap)||0),d=u+s,f={cx:this.centerX,cy:this.centerY,rIn:u,rOut:d,a0:l,a1:l+c,spanDeg:c},h=Math.min(s/2,c*Math.PI/180/2*u);return h>.5?cw(vt(Ye({},f),{r:h})):VN(f)}getChangedPath(e,n,i){let o="";return this.dynamicAnim&&this.w.globals.dataChanged&&(o=this.getPiePath({me:this,startAngle:e,angle:n-e,size:typeof i=="number"?i:this.size})),o}getSliceExtent({me:e,startAngle:n,angle:i,size:o}){const r=this.w;let a=n,s=i+n;Math.ceil(s)>=this.fullAngle+this.w.config.plotOptions.pie.startAngle%this.fullAngle&&(s=this.fullAngle+this.w.config.plotOptions.pie.startAngle%this.fullAngle-.01);let l=s-a;const c=e.chartType==="pie"||e.chartType==="donut"||e.chartType==="polarArea",u=r.config.plotOptions.pie.spacing;if(c&&u>0&&l>0){const d=e.chartType==="donut"?(o+e.donutSize)/2:o,f=d>0?u/d*(180/Math.PI):0,h=Math.min(f/2,Math.max(0,l/2-.5));a+=h,l-=2*h}return s=a+l,Math.ceil(s)>this.fullAngle&&(s-=this.fullAngle),{startDeg:a,spanDeg:l,endDeg:s}}getPiePath({me:e,startAngle:n,angle:i,size:o}){let r;const a=this.w,s=new Be(this.w),{startDeg:l,spanDeg:c,endDeg:u}=this.getSliceExtent({me:e,startAngle:n,angle:i,size:o}),d=e.chartType==="pie"||e.chartType==="donut"||e.chartType==="polarArea",f=Math.PI*(l-90)/180,h=a.config.plotOptions.pie.borderRadius;if(h>0&&d){const S=this.getRoundedSlicePath({me:e,startDeg:l,spanDeg:c,size:o,borderRadius:h});if(S)return S}const p=Math.PI*(u-90)/180,g=e.centerX+o*Math.cos(f),m=e.centerY+o*Math.sin(f),v=e.centerX+o*Math.cos(p),b=e.centerY+o*Math.sin(p),y=Ee.polarToCartesian(e.centerX,e.centerY,e.donutSize,u),w=Ee.polarToCartesian(e.centerX,e.centerY,e.donutSize,l),x=c>180?1:0,$=["M",g,m,"A",o,o,0,x,1,v,b];return e.chartType==="donut"?r=[...$,"L",y.x,y.y,"A",e.donutSize,e.donutSize,0,x,0,w.x,w.y,"L",g,m,"z"].join(" "):e.chartType==="pie"||e.chartType==="polarArea"?r=[...$,"L",e.centerX,e.centerY,"L",g,m].join(" "):r=[...$].join(" "),s.roundPathCorners(r,this.strokeWidth*2)}getRoundedSlicePath({me:e,startDeg:n,spanDeg:i,size:o,borderRadius:r}){if(!(i>0))return null;const a=Math.PI/180,s=e.centerX,l=e.centerY,c=e.chartType==="donut",u=o,d=c?e.donutSize:0,f=i*a;let h=r;if(h=Math.min(h,f*u/2),c?(h=Math.min(h,f*d/2),h=Math.min(h,(u-d)/2)):h=Math.min(h,u/2),!(h>.5))return null;const p=n,g=n+i;return c?cw({cx:s,cy:l,rIn:d,rOut:u,a0:p,a1:g,r:h,spanDeg:i}):uCe({cx:s,cy:l,rOut:u,a0:p,a1:g,r:h,spanDeg:i})}drawPolarElements(e){const n=this.w,i=new vN(this.w),o=new Be(this.w),r=new dp(this.w),a=o.group(),s=o.group(),l=i.niceScale(0,Math.ceil(this.maxY),0),c=l.result.reverse(),u=l.result.length;this.maxY=l.niceMax;let d=n.globals.radialSize;const f=d/(u-1);for(let h=0;h1&&e.total.show&&(a=e.total.color);const s=r.dom.baseEl.querySelector(".apexcharts-datalabel-label"),l=r.dom.baseEl.querySelector(".apexcharts-datalabel-value"),c=e.value.formatter;i=c(i,r),!o&&typeof e.total.formatter=="function"&&(i=e.total.formatter(r));const u=n===e.total.label;if(n=this.donutDataLabels.total.label?e.name.formatter(n,u,r):"",s!==null&&(s.textContent=n),l!==null&&(l.textContent=i),s!==null){const d=s;d.style.fill=a}}printDataLabelsInner(e,n){const i=this.w,o=e.getAttribute("data:value"),r=i.seriesData.seriesNames[parseInt(e.parentNode.getAttribute("rel"),10)-1];i.seriesData.series.length>1&&this.printInnerLabels(n,r,o,e);const a=i.dom.baseEl.querySelector(".apexcharts-datalabels-group");if(a!==null){const s=a;s.style.opacity="1"}}drawSpokes(e){const n=this.w,i=new Be(this.w),o=n.config.plotOptions.polarArea.spokes;if(o.strokeWidth===0)return;const r=[],a=360/n.seriesData.series.length;for(let s=0;s{const c=i.drawLine(s.x,s.y,this.centerX,this.centerY,Array.isArray(o.connectorColors)?o.connectorColors[l]:o.connectorColors);e.add(c)})}revertDataLabelsInner(){const e=this.w;if(this.donutDataLabels.show){const n=e.dom.Paper.findOne(".apexcharts-datalabels-group"),i=this.renderInnerDataLabels(n,this.donutDataLabels,{hollowSize:this.donutSize,centerX:this.centerX,centerY:this.centerY,opacity:this.donutDataLabels.show});e.dom.Paper.findOne(".apexcharts-radialbar, .apexcharts-pie").add(i)}}}const hCe=5;class pCe{constructor(e,n){this.ctx=n,this.w=e,this.chartType=this.w.config.chart.type,this.initialAnim=this.w.config.chart.animations.enabled,this.dynamicAnim=this.initialAnim&&this.w.config.chart.animations.dynamicAnimation.enabled,this.animDur=0,this.graphics=new Be(this.w),this.lineColorArr=e.globals.stroke.colors!==void 0?e.globals.stroke.colors:e.globals.colors,this.defaultSize=e.globals.svgHeight{const m=p.length===n.globals.dataPoints,v=this.graphics.group().attr({class:"apexcharts-series","data:longestSeries":m,seriesName:Ee.escapeString(n.seriesData.seriesNames[g]),rel:g+1,"data:realIndex":g});this.dataRadiusOfPercent[g]=[],this.dataRadius[g]=[],this.angleArr[g]=[],p.forEach((x,$)=>{const S=Math.abs(this.maxValue-this.minValue);x=x-this.minValue,this.isLog&&(x=this.coreUtils.getLogVal(this.logBase,x,0)),this.dataRadiusOfPercent[g][$]=x/S,this.dataRadius[g][$]=this.dataRadiusOfPercent[g][$]*this.size,this.angleArr[g][$]=$*this.disAngle}),d=this.getDataPointsPos(this.dataRadius[g],this.angleArr[g]);const b=this.createPaths(d,{x:0,y:0});f=this.graphics.group({class:"apexcharts-series-markers-wrap apexcharts-element-hidden"}),h=this.graphics.group({class:"apexcharts-datalabels","data:realIndex":g}),n.globals.delayedElements.push({el:f.node,index:g});const y={i:g,realIndex:g,animationDelay:g,initialSpeed:n.config.chart.animations.speed,dataChangeSpeed:n.config.chart.animations.dynamicAnimation.speed,className:"apexcharts-radar",shouldClipToGrid:!1,bindEventsOnPaths:!1,stroke:n.globals.stroke.colors[g],strokeLineCap:n.config.stroke.lineCap};let w=null;n.globals.previousPaths.length>0&&(w=this.getPreviousPath(g));for(let x=0;x{const _=new _v(this.w,this.ctx).getMarkerConfig({cssClass:"apexcharts-marker",seriesIndex:g,dataPointIndex:$});_.pSize||(_.pSize=hCe,_.pointFillColor="transparent",_.pointStrokeColor="transparent",_.pointStrokeWidth=0);const P=this.graphics.drawMarker(d[$].x,d[$].y,_);P.attr("rel",$),P.attr("j",$),P.attr("index",g),P.node.setAttribute("default-marker-size",_.pSize);const T=this.graphics.group({class:"apexcharts-series-markers"});T&&T.add(P),f.add(T),v.add(f);const O=n.config.dataLabels;if(O.enabled){const M=O.formatter(n.seriesData.series[g][$],{seriesIndex:g,dataPointIndex:$,w:n});r.plotDataLabelsText({x:d[$].x,y:d[$].y,text:M,textAnchor:"middle",i:g,j:g,seriesIndex:g,dataPointIndex:$,parent:h,offsetCorrection:!1,dataLabelsConfig:Ye({},O)})}v.add(h)}),o.push(v)}),this.drawPolygons({parent:u}),n.config.xaxis.labels.show){const p=this.drawXAxisTexts();u.add(p)}return o.forEach(p=>{u.add(p)}),u.add(this.yaxisLabels),u}drawPolygons(e){const n=this.w,{parent:i}=e,o=new dp(this.w),r=n.globals.yAxisScale[0].result.reverse(),a=r.length,s=[],l=this.size/(a-1);for(let d=0;d{const h=Ee.getPolygonPos(d,this.dataPointsLen);let p="";h.forEach((g,m)=>{if(f===0){const v=this.graphics.drawLine(g.x,g.y,0,0,Array.isArray(this.polygons.connectorColors)?this.polygons.connectorColors[m]:this.polygons.connectorColors);u.push(v)}m===0&&this.yaxisLabelsTextsPos.push({x:g.x,y:g.y}),p+=g.x+","+g.y+" "}),c.push(p)}),c.forEach((d,f)=>{const h=this.polygons.strokeColors,p=this.polygons.strokeWidth,g=this.graphics.drawPolygon(d,Array.isArray(h)?h[f]:h,Array.isArray(p)?p[f]:p,n.globals.radarPolygons.fill.colors[f]);i.add(g)}),u.forEach(d=>{i.add(d)}),n.config.yaxis[0].show&&this.yaxisLabelsTextsPos.forEach((d,f)=>{const h=o.drawYAxisTexts(d.x,d.y,f,r[f]);this.yaxisLabels.add(h)})}drawXAxisTexts(){const e=this.w,n=e.config.xaxis.labels,i=this.graphics.group({class:"apexcharts-xaxis"}),o=Ee.getPolygonPos(this.size,this.dataPointsLen);return e.labelData.labels.forEach((r,a)=>{const s=e.config.xaxis.labels.formatter,l=new Cc(this.w,this.ctx);if(o[a]){const c=this.getTextPos(o[a],this.size),u=s(r,{seriesIndex:-1,dataPointIndex:a,w:e});l.plotDataLabelsText({x:c.newX,y:c.newY,text:u,textAnchor:c.textAnchor,i:a,j:a,parent:i,className:"apexcharts-xaxis-label",color:Array.isArray(n.style.colors)&&n.style.colors[a]?n.style.colors[a]:"#a8a8a8",dataLabelsConfig:Ye({textAnchor:c.textAnchor,dropShadow:{enabled:!1}},n),offsetCorrection:!1}).on("click",f=>{if(typeof e.config.chart.events.xAxisLabelClick=="function"){const h=Object.assign({},e,{labelIndex:a});e.config.chart.events.xAxisLabelClick(f,this.ctx,h)}})}}),i}createPaths(e,n){const i=[];let o=[];const r=[];let a=[];if(e.length){o=[this.graphics.move(n.x,n.y)],a=[this.graphics.move(n.x,n.y)];let s=this.graphics.move(e[0].x,e[0].y),l=this.graphics.move(e[0].x,e[0].y);e.forEach((c,u)=>{s+=this.graphics.line(c.x,c.y),l+=this.graphics.line(c.x,c.y),u===e.length-1&&(s+="Z",l+="Z")}),i.push(s),r.push(l)}return{linePathsFrom:o,linePathsTo:i,areaPathsFrom:a,areaPathsTo:r}}getTextPos(e,n){let o="middle",r=e.x,a=e.y;return Math.abs(e.x)>=10?e.x>0?(o="start",r+=10):e.x<0&&(o="end",r-=10):o="middle",Math.abs(e.y)>=n-10&&(e.y<0?a-=10:e.y>0&&(a+=10)),{textAnchor:o,newX:r,newY:a}}getPreviousPath(e){const n=this.w;let i=null;for(let o=0;o0&&parseInt(r.realIndex,10)===parseInt(String(e),10)&&typeof n.globals.previousPaths[o].paths[0]<"u"&&(i=n.globals.previousPaths[o].paths[0].d)}return i}getDataPointsPos(e,n,i=this.dataPointsLen){e=e||[],n=n||[];const o=[];for(let r=0;r0,h=f&&d.bandsStyle&&d.bandsStyle.hideTrackWhenPresent,p=d.shape==="needle";if(d.track.show&&!h){const b=this.drawTracks({size:c,centerX:l,centerY:s,colorArr:u,series:e});a.add(b)}if(f){const b=this.drawBands({size:c,centerX:l,centerY:s,series:e});a.add(b)}const g=this.drawArcs({size:c,centerX:l,centerY:s,colorArr:u,series:e,skipValueArc:p&&!((n=d.needle)!=null&&n.showValueArc)});if(d.ticks&&d.ticks.show){const b=this.drawTicks({size:c,centerX:l,centerY:s,series:e});if(this.initialAnim&&!i.globals.dataChanged&&!i.globals.resized&&Ot.isBrowser()&&i.globals.shouldAnimate){const w=b.node;w.style.opacity="0",w.style.transition="opacity 280ms ease-out";const x=i.config.chart.animations.speed||800;setTimeout(()=>{w.style.opacity="1"},x)}a.add(b)}if(p){const b=this.drawNeedle({size:c,centerX:l,centerY:s,series:e});a.add(b)}let m=360;i.config.plotOptions.radialBar.startAngle<0&&(m=this.totalAngle);const v=(360-m)/360;if(i.globals.radialSize=c-c*v,this.radialDataLabels.value.show){const b=Math.max(this.radialDataLabels.value.offsetY,this.radialDataLabels.name.offsetY);i.globals.radialSize+=b*v}return a.add(g.g),i.config.plotOptions.radialBar.hollow.position==="front"&&(g.g.add(g.elHollow),g.dataLabels&&g.g.add(g.dataLabels)),r.add(a),r}drawTracks(e){const n=this.w,i=new Be(this.w),o=i.group({class:"apexcharts-tracks"}),r=new uo(this.w),a=new go(this.w),s=this.getStrokeWidth(e);e.size=e.size-s/2;for(let l=0;l=360&&(h=360-Math.abs(this.startAngle)-.1);const p=i.drawPath({d:"",stroke:d,strokeWidth:s*parseInt(u.strokeWidth,10)/100,fill:"none",strokeOpacity:u.opacity,classes:"apexcharts-radialbar-area"});if(u.dropShadow.enabled){const g=u.dropShadow;r.dropShadow(p,g)}c.add(p),p.attr("id","apexcharts-radialbarTrack-"+l),this.animatePaths(p,{centerX:e.centerX,centerY:e.centerY,endAngle:h,startAngle:f,size:e.size,i:l,totalItems:2,animBeginArr:0,dur:0,isTrack:!0})}return o}drawArcs(e){var n;const i=this.w,o=new Be(this.w),r=new go(this.w),a=new uo(this.w),s=o.group(),l=this.getStrokeWidth(e);e.size=e.size-l/2;let c=i.config.plotOptions.radialBar.hollow.background;const u=e.size-l*e.series.length-this.margin*e.series.length-l*parseInt(i.config.plotOptions.radialBar.track.strokeWidth,10)/100/2,d=u-i.config.plotOptions.radialBar.hollow.margin;i.config.plotOptions.radialBar.hollow.image!==void 0&&(c=this.drawHollowImage(e,s,u,c));const f=this.drawHollow({size:d,centerX:e.centerX,centerY:e.centerY,fill:c||"transparent"});if(i.config.plotOptions.radialBar.hollow.dropShadow.enabled){const v=i.config.plotOptions.radialBar.hollow.dropShadow;a.dropShadow(f,v)}let h=1;!this.radialDataLabels.total.show&&i.seriesData.series.length>1&&(h=0);let p=null;if(this.radialDataLabels.show){const v=i.dom.Paper.findOne(".apexcharts-datalabels-group");p=this.renderInnerDataLabels(v,this.radialDataLabels,{hollowSize:u,centerX:e.centerX,centerY:e.centerY,opacity:h})}i.config.plotOptions.radialBar.hollow.position==="back"&&(s.add(f),p&&s.add(p));let g=!1;i.config.plotOptions.radialBar.inverseOrder&&(g=!0);const m=((n=this.ctx.morphTypeChange)==null?void 0:n.isActive())===!0;for(let v=g?e.series.length-1:0;g?v>=0:v{const q=Math.min(Math.max(V,S),_);return Math.max(0,(q-S)/P)},O=T(Ee.negToZero(e.series[v]));let M=Math.round(this.totalAngle*O)+this.startAngle,I;i.globals.dataChanged&&(x=this.startAngle,I=Math.round(this.totalAngle*T(Ee.negToZero(i.globals.previousPaths[v])))+x),Math.abs(M)+Math.abs(w)>360&&(M=M-.01),Math.abs(I)+Math.abs(x)>360&&(I=I-.01);const R=M-w,D=Array.isArray(i.config.stroke.dashArray)?i.config.stroke.dashArray[v]:i.config.stroke.dashArray,F=m?this.ctx.morphTypeChange.getInitialPathFor(v,0):null,N=m?this.ctx.morphTypeChange.getFromType():null,B=!!F&&(N==="bar"||N==="funnel"||N==="pyramid"||N==="pie"||N==="donut"||N==="polarArea"),z=o.drawPath({d:F||"",stroke:B||e.skipValueArc?"transparent":y,strokeWidth:B||e.skipValueArc?0:l,fill:B?y:"none",fillOpacity:i.config.fill.opacity,classes:"apexcharts-radialbar-area apexcharts-radialbar-slice-"+v,strokeDashArray:D}),W=w+R/2,j=Ee.polarToCartesian(e.centerX,e.centerY,e.size,W);if(Be.setAttrs(z.node,{"data:angle":R,"data:value":e.series[v],"data:cx":j.x,"data:cy":j.y}),i.config.chart.dropShadow.enabled){const V=i.config.chart.dropShadow;a.dropShadow(z,V,v)}if(a.setSelectionFilter(z,0,v),this.addListeners(z,this.radialDataLabels),b.add(z),z.attr({index:0,j:v}),this.barLabels.enabled){const V=Ee.polarToCartesian(e.centerX,e.centerY,e.size,w),q=this.barLabels.formatter(i.seriesData.seriesNames[v],{seriesIndex:v,w:i}),Y=["apexcharts-radialbar-label"];this.barLabels.onClick||Y.push("apexcharts-no-click");let J=this.barLabels.useSeriesColors?i.globals.colors[v]:i.config.chart.foreColor;J||(J=i.config.chart.foreColor);const Q=V.x+this.barLabels.offsetX,G=V.y+this.barLabels.offsetY,ee=o.drawText({x:Q,y:G,text:q,textAnchor:"end",dominantBaseline:"middle",fontFamily:this.barLabels.fontFamily,fontWeight:this.barLabels.fontWeight,fontSize:this.barLabels.fontSize,foreColor:J,cssClass:Y.join(" ")});ee.on("click",this.onBarLabelClick),ee.attr({rel:v+1}),w!==0&&ee.attr({"transform-origin":`${Q} ${G}`,transform:`rotate(${w} 0 0)`}),b.add(ee)}let U=0;if(this.initialAnim&&!i.globals.resized&&!i.globals.dataChanged&&(U=i.config.chart.animations.speed),i.globals.dataChanged&&(U=i.config.chart.animations.dynamicAnimation.speed),this.animDur=U/(e.series.length*1.2)+this.animDur,this.animBeginArr.push(this.animDur),m&&F){const V=this.ctx.morphTypeChange.getSpeed(),q=this.getPiePath({me:this,startAngle:w,angle:R,size:e.size});if(B){const Y=this.ctx.morphTypeChange.buildRingSegmentPath(e.centerX,e.centerY,e.size,l,w,w+R);z.animate(V).plot(Y,"polygons").after(function(){this.attr({d:q,fill:"none",stroke:e.skipValueArc?"transparent":y,"stroke-width":e.skipValueArc?0:l})})}else z.animate(V).plot(q,"polygons").attr({"stroke-width":l})}else this.animatePaths(z,{centerX:e.centerX,centerY:e.centerY,endAngle:M,startAngle:w,prevEndAngle:I,prevStartAngle:x,size:e.size,i:v,totalItems:2,animBeginArr:this.animBeginArr,dur:U,shouldSetPrevPaths:!0})}return{g:s,elHollow:f,dataLabels:p}}_angleAtValue(e){const n=this.w.config.plotOptions.radialBar,i=typeof n.min=="number"?n.min:0,o=typeof n.max=="number"?n.max:100,r=o===i?i+1:o,s=(Math.max(i,Math.min(r,Number(e)))-i)/(r-i);return this.startAngle+s*(this.endAngle-this.startAngle)}_describeArc(e,n,i,o,r){const a=Ee.polarToCartesian(e,n,i,r),s=Ee.polarToCartesian(e,n,i,o),l=r-o,c=Math.abs(l)>180?1:0;return`M ${a.x} ${a.y} A ${i} ${i} 0 ${c} 0 ${s.x} ${s.y}`}drawBands(e){const n=this.w,i=new Be(this.w),o=n.config.plotOptions.radialBar,r=o.bands||[],a=i.group({class:"apexcharts-gauge-bands"}),s=this.getStrokeWidth(e),l=e.size-s/2-s-this.margin,c=s*parseInt(o.bandsStyle.strokeWidth,10)/100,u=typeof o.min=="number"?o.min:0,d=typeof o.max=="number"?o.max:100,f=d===u?0:(o.bandsStyle.gap||0)*((this.endAngle-this.startAngle)/(d-u));for(let h=0;h{var x,$,S;const _=this._angleAtValue(b),P=(x=y.length)!=null?x:8,T=y.placement==="inside"?f-P:f,O=y.placement==="inside"?f:f+P,M=Ee.polarToCartesian(e.centerX,e.centerY,T,_),I=Ee.polarToCartesian(e.centerX,e.centerY,O,_),k=s.drawLine(M.x,M.y,I.x,I.y,y.color||(w?"#666":"#999"),0,y.width||(w?2:1));if(u.add(k),w&&(($=c.labels)!=null&&$.show)){const E=(y.placement==="inside"?T:O)+(y.placement==="inside"?-1:1)*((S=c.labels.offset)!=null?S:6),R=Ee.polarToCartesian(e.centerX,e.centerY,E,_),D=typeof c.labels.formatter=="function"?c.labels.formatter(b):String(b),F=s.drawText({x:R.x,y:R.y,text:D,textAnchor:"middle",dominantBaseline:"middle",fontFamily:c.labels.fontFamily,fontSize:c.labels.fontSize,fontWeight:c.labels.fontWeight,foreColor:c.labels.color,cssClass:"apexcharts-gauge-tick-label"});u.add(F)}};for(let b=0;b0)for(let x=1;x<=m;x++){const $=(b+x/(m+1))/(g-1),S=h+$*(p-h);v(S,c.minor||{},!1)}}return u}drawNeedle(e){var n,i,o,r,a;const s=this.w,l=new Be(this.w),u=s.config.plotOptions.radialBar.needle||{},d=l.group({class:"apexcharts-gauge-needle"});if(!e.series||e.series.length===0)return d;const f=this.getStrokeWidth(e),h=e.size-f/2-f-this.margin,p=typeof u.length=="string"&&u.length.endsWith("%")?h*parseInt(u.length,10)/100:Number(u.length||h*.85),g=(n=u.baseWidth)!=null?n:4,m=(i=u.tipWidth)!=null?i:1,v=u.color||"#333",b=e.centerX,y=Number((o=u.offsetY)!=null?o:0),w=e.centerY+y,x=`M ${b+g/2} ${w} A ${g/2} ${g/2} 0 0 1 ${b-g/2} ${w} L ${b-m/2} ${w-p} L ${b+m/2} ${w-p} Z`,$=l.drawPath({d:x,stroke:v,strokeWidth:0,fill:v,classes:"apexcharts-gauge-needle-shape"});d.add($);const S=Number(e.series[0]),_=this._angleAtValue(S),P=this.initialAnim&&!s.globals.dataChanged&&!s.globals.resized,T=this.ctx,O=typeof T._lastNeedleAngle=="number"?T._lastNeedleAngle:this.startAngle;if(T._lastNeedleAngle=_,Ot.isBrowser()&&s.globals.shouldAnimate&&(P||s.globals.dataChanged)&&O!==_){const I=d.node;I.setAttribute("transform-origin",`${b} ${w}`),I.setAttribute("transform",`rotate(${O})`);const k=((r=u.animation)==null?void 0:r.duration)&&Number(u.animation.duration)||u.animationSpeed&&Number(u.animationSpeed)||((a=s.config.chart.animations.dynamicAnimation)==null?void 0:a.speed)||s.config.chart.animations.speed||800,E=1.70158,R=E+1,N=P?W=>1+R*Math.pow(W-1,3)+E*Math.pow(W-1,2):W=>1-Math.pow(1-W,3);s.globals.radialNeedleRAF!=null&&(We.cancelAnimationFrame(s.globals.radialNeedleRAF),s.globals.radialNeedleRAF=null);const B=performance.now(),z=W=>{if(this.w.globals.isDestroyed){s.globals.radialNeedleRAF=null;return}const j=Math.max(0,Math.min(1,(W-B)/k)),U=O+(_-O)*N(j);I.setAttribute("transform",`rotate(${U})`),j<1?s.globals.radialNeedleRAF=We.requestAnimationFrame(z):s.globals.radialNeedleRAF=null};s.globals.radialNeedleRAF=We.requestAnimationFrame(z)}else d.attr({"transform-origin":`${b} ${w}`,transform:`rotate(${_})`});return d}drawHollow(e){var n;const i=new Be(this.w),o=this.w.config.plotOptions.radialBar.hollow,r=i.drawCircle(e.size*2),a={class:"apexcharts-radialbar-hollow",cx:e.centerX,cy:e.centerY,r:e.size,fill:e.fill};return(o.stroke||o.strokeDasharray)&&(a.stroke=o.stroke||"transparent",a["stroke-width"]=(n=o.strokeWidth)!=null?n:1,o.strokeDasharray&&(a["stroke-dasharray"]=o.strokeDasharray)),r.attr(a),r}drawHollowImage(e,n,i,o){const r=this.w,a=new go(this.w),s=Ee.randomId(),l=r.config.plotOptions.radialBar.hollow.image;if(r.config.plotOptions.radialBar.hollow.imageClipped)a.clippedImgArea({width:i,height:i,image:l,patternID:`pattern${r.globals.cuid}${s}`}),o=`url(#pattern${r.globals.cuid}${s})`;else{const c=r.config.plotOptions.radialBar.hollow.imageWidth,u=r.config.plotOptions.radialBar.hollow.imageHeight;if(c===void 0&&u===void 0){const d=r.dom.Paper.image(l,function(f){this.move(e.centerX-f.width/2+r.config.plotOptions.radialBar.hollow.imageOffsetX,e.centerY-f.height/2+r.config.plotOptions.radialBar.hollow.imageOffsetY)});n.add(d)}else{const d=r.dom.Paper.image(l,function(){this.move(e.centerX-c/2+r.config.plotOptions.radialBar.hollow.imageOffsetX,e.centerY-u/2+r.config.plotOptions.radialBar.hollow.imageOffsetY),this.size(c,u)});n.add(d)}}return o}getStrokeWidth(e){const n=this.w;return e.size*(100-parseInt(n.config.plotOptions.radialBar.hollow.size,10))/100/(e.series.length+1)-this.margin}onBarLabelClick(e){var n;const i=e.target,o=parseInt((n=i.getAttribute("rel"))!=null?n:"",10)-1,r=this.barLabels.onClick,a=this.w;r&&r(a.seriesData.seriesNames[o],{w:a,seriesIndex:o})}}class mCe extends Bn{draw(e,n){var i,o,r,a,s,l,c,u,d;const f=this.w,h=new Be(this.w);this.rangeBarOptions=this.w.config.plotOptions.rangeBar,this.series=e,this.seriesRangeStart=f.rangeData.seriesRangeStart,this.seriesRangeEnd=f.rangeData.seriesRangeEnd,this.barHelpers.initVariables(e);const p=h.group({class:"apexcharts-rangebar-series apexcharts-plot-series"});for(let g=0;g0&&(this.visibleI=this.visibleI+1);let x=0;this.yRatio.length>1&&(this.yaxisIndex=f.globals.seriesYAxisReverseMap[b][0],x=b);const $=this.barHelpers.initialPositions(b),{y:S,zeroW:_,x:P,zeroH:T}=$;let O=(i=$.barWidth)!=null?i:0,M=(o=$.barHeight)!=null?o:0;const I=(r=$.yDivision)!=null?r:0,k=(a=$.xDivision)!=null?a:0;v=S,m=P;const E=h.group({class:"apexcharts-datalabels","data:realIndex":b}),R=h.group({class:"apexcharts-rangebar-goals-markers"});for(let D=0;D"u")break;if(this.isHorizontal){j=v+M*this.visibleI;const J=(I-M*V)/2;if((c=(l=f.config.series[g].data)==null?void 0:l[D])!=null&&c.x){const Q=this.detectOverlappingBars({i:g,j:D,barYPosition:j,srty:J,barHeight:M,yDivision:I,initPositions:$});M=Q.barHeight,j=Q.barYPosition}z=this.drawRangeBarPaths(Ye({indexes:{i:g,j:D,realIndex:b},barHeight:M,barYPosition:j,zeroW:_,yDivision:I,y1:N,y2:B},U)),O=z.barWidth}else{f.axisFlags.isXNumeric&&(m=(f.seriesData.seriesX[g][D]-f.globals.minX)/this.xRatio-O/2),W=m+O*this.visibleI;const J=(k-O*V)/2;if((d=(u=f.config.series[g].data)==null?void 0:u[D])!=null&&d.x){const Q=this.detectOverlappingBars({i:g,j:D,barXPosition:W,srtx:J,barWidth:O,xDivision:k,initPositions:$});O=Q.barWidth,W=Q.barXPosition}z=this.drawRangeColumnPaths(Ye({indexes:{i:g,j:D,realIndex:b,translationsIndex:x},barWidth:O,barXPosition:W,zeroH:T,xDivision:k},U)),M=z.barHeight}const q=this.barHelpers.drawGoalLine({barXPosition:z.barXPosition,barYPosition:j,goalX:z.goalX,goalY:z.goalY,barHeight:M,barWidth:O});q&&R.add(q),v=z.y,m=z.x;const Y=this.barHelpers.getPathFillColor(e,g,D,b);this.renderSeries({realIndex:b,pathFill:Y.color,lineFill:Y.useRangeColor?Y.color:f.globals.stroke.colors[b],j:D,i:g,x:m,y:v,y1:N,y2:B,pathFrom:z.pathFrom,pathTo:z.pathTo,strokeWidth:F,elSeries:w,series:e,barHeight:M,barWidth:O,barXPosition:W,barYPosition:j,columnGroupIndex:y,elDataLabelsWrap:E,elGoalsMarkers:R,visibleSeries:this.visibleI,type:"rangebar"})}p.add(w)}return p}detectOverlappingBars({i:e,j:n,barYPosition:i,barXPosition:o,srty:r,srtx:a,barHeight:s,barWidth:l,yDivision:c,xDivision:u,initPositions:d}){var f,h,p,g;const m=this.w;let v=[];const b=(h=(f=m.globals.seriesRangeName)==null?void 0:f[e])==null?void 0:h[n],y=(g=(p=m.config.series[e].data)==null?void 0:p[n])==null?void 0:g.x,w=Array.isArray(y)?y.join(" "):y,x=m.labelData.labels.map(S=>Array.isArray(S)?S.join(" "):S).indexOf(w),$=m.rangeData.seriesRange[e].findIndex(S=>{var _;return S.x===w&&((_=S.overlaps)==null?void 0:_.size)>0});return this.isHorizontal?(m.config.plotOptions.bar.rangeBarGroupRows?i=r+c*x:i=r+s*this.visibleI+c*x,$>-1&&!m.config.plotOptions.bar.rangeBarOverlap&&(v=Array.from(m.rangeData.seriesRange[e][$].overlaps),v.indexOf(b)>-1&&(s=d.barHeight/v.length,i=s*this.visibleI+c*(100-parseInt(this.barOptions.barHeight,10))/100/2+s*(this.visibleI+v.indexOf(b))+c*x))):(x>-1&&!m.labelData.timescaleLabels.length&&(m.config.plotOptions.bar.rangeBarGroupRows?o=a+u*x:o=a+l*this.visibleI+u*x),$>-1&&!m.config.plotOptions.bar.rangeBarOverlap&&(v=Array.from(m.rangeData.seriesRange[e][$].overlaps),v.indexOf(b)>-1&&(l=d.barWidth/v.length,o=l*this.visibleI+u*(100-parseInt(this.barOptions.barWidth,10))/100/2+l*(this.visibleI+v.indexOf(b))+u*x))),{barYPosition:i,barXPosition:o,barHeight:s,barWidth:l}}drawRangeColumnPaths({indexes:e,x:n,xDivision:i,barWidth:o,barXPosition:r,zeroH:a}){var s,l;const c=this.w,{i:u,j:d,realIndex:f,translationsIndex:h}=e,p=this.yRatio[h],g=this.getRangeValue(f,d);let m=Math.min(g.start,g.end),v=Math.max(g.start,g.end);const b=!(typeof((s=this.series[u])==null?void 0:s[d])>"u"||((l=this.series[u])==null?void 0:l[d])===null);b?(m=a-m/p,v=a-v/p):m=a;const y=Math.abs(v-m),w=this.barHelpers.getColumnPaths({barXPosition:r,barWidth:o,y1:m,y2:v,strokeWidth:this.strokeWidth,series:this.seriesRangeEnd,realIndex:f,i:f,j:d,w:c});if(b){const x=w.drawnBox,$=g.end>=g.start;this.recordColumnGeometry(f,d,{slotStart:x.x1,slotEnd:x.x2,levelStart:$?x.y1:x.y2,levelEnd:$?x.y2:x.y1,horizontal:!1})}if(!c.axisFlags.isXNumeric)n=n+i;else{const x=this.getBarXForNumericXAxis({x:n,j:d,realIndex:f,barWidth:o});n=x.x,r=x.barXPosition}return{pathTo:w.pathTo,pathFrom:w.pathFrom,barHeight:y,x:n,y:g.start<0&&g.end<0?m:v,goalY:this.barHelpers.getGoalValues("y",null,a,f,d,h),barXPosition:r}}preventBarOverflow(e){const n=this.w;return e<0&&(e=0),e>n.layout.gridWidth&&(e=n.layout.gridWidth),e}drawRangeBarPaths({indexes:e,y:n,y1:i,y2:o,yDivision:r,barHeight:a,barYPosition:s,zeroW:l}){const c=this.w,{realIndex:u,j:d}=e,f=this.preventBarOverflow(l+i/this.invertedYRatio),h=this.preventBarOverflow(l+o/this.invertedYRatio),p=this.getRangeValue(u,d),g=Math.abs(h-f),m=this.barHelpers.getBarpaths({barYPosition:s,barHeight:a,x1:f,x2:h,strokeWidth:this.strokeWidth,series:this.seriesRangeEnd,i:u,realIndex:u,j:d,w:c});if(p.start!=null&&p.end!=null){const v=m.drawnBox;this.recordColumnGeometry(u,d,{slotStart:v.y1,slotEnd:v.y2,levelStart:v.x1,levelEnd:v.x2,horizontal:!0})}return c.axisFlags.isXNumeric||(n=n+r),{pathTo:m.pathTo,pathFrom:m.pathFrom,barWidth:g,x:p.start<0&&p.end<0?f:h,goalX:this.barHelpers.getGoalValues("x",l,null,u,d,0),y:n}}recordColumnGeometry(e,n,i){const o=this.w.waterfallData&&this.w.waterfallData.geometry;o&&(!isFinite(i.slotStart)||!isFinite(i.levelEnd)||(o[e]||(o[e]=[]),o[e][n]=i))}getRangeValue(e,n){const i=this.w;return{start:i.rangeData.seriesRangeStart[e][n],end:i.rangeData.seriesRangeEnd[e][n]}}}function uw(t,e){let n=0;for(let r=0;r=s}function cM(t,e,n,i,o,r,a,s){if(a>=s){const l=i/s;let c=r;for(let u=0;ud&&(d=p),f++;else{if(cM(r,s,l,c,e,n,i,o),i>=o){const g=c/o;e+=g,i-=g}else{const g=c/i;n+=g,o-=g}l=0,c=0,u=1/0,d=-1/0}}return l>0&&cM(r,s,l,c,e,n,i,o),r}function bCe(t,e,n){const i=t.length,o=new Array(i);for(let s=0;s=m||b*2>=v)&&(b=0);let y=Math.max(0,s(h,r,m,v)||0);y>0&&v-b*2-y0),r=i.header||(()=>0);for(let a=0;ao&&o.id===e)}function zg(t,e,n,i,o,r=null,a={}){var s,l,c;const u=e&&typeof e=="object",d=u&&(l=(s=e.x)!=null?s:e.name)!=null?l:"",f=Number(u?(c=e.y)!=null?c:e.value:e),h={name:String(d),value:isNaN(f)?null:f,color:u&&e.color?e.color:void 0,_key:`${o}/${n}:${d}`};if(i&&!h.color&&(h.color=i[n%i.length]),a.keepDatum&&(h._datum=e),u&&Array.isArray(e.children)&&e.children.length)h.children=e.children.map((p,g)=>zg(t,p,g,null,h._key,r,a));else if(u&&e.drilldown!=null&&a.expandDrilldown!==!1){const p=r||new Set;if(!p.has(e.drilldown)){const g=wCe(t,e.drilldown);if(g&&Array.isArray(g.data)&&g.data.length){const m=new Set(p);m.add(e.drilldown);const v=Array.isArray(g.colors)?g.colors:null;h.children=g.data.map((b,y)=>zg(t,b,y,v,h._key,m,a))}}}return h}function SCe(t,e={}){const n=t.config.series,i=n&&n[0],o=i&&Array.isArray(i.data)?i.data:n;return Array.isArray(o)?o.map((r,a)=>zg(t,r,a,null,"",null,e)):[]}function CCe(t,e,n={}){const i=e||t.config.series;return Array.isArray(i)?i.map((o,r)=>{var a,s;const l=o&&Array.isArray(o.data)?o.data:[],c=`${r}:${(a=o==null?void 0:o.name)!=null?a:""}`;return{name:String((s=o==null?void 0:o.name)!=null?s:""),value:null,color:(o==null?void 0:o.color)||void 0,_key:c,_seriesIndex:r,children:l.map((d,f)=>zg(t,d,f,null,c,null,n))}}):[]}function p$(t){t.children&&t.children.length&&(t.children.forEach(e=>p$(e)),(t.value==null||isNaN(t.value))&&(t.value=t.children.reduce((e,n)=>e+Math.max(0,n.value||0),0))),(t.value==null||isNaN(t.value))&&(t.value=0)}function nd(t){if(typeof t!="string")return"";const e=t.indexOf("/");return e===-1?"":t.slice(e)}function $Ce(t){const e=[];let n=0;return t.forEach((i,o)=>{const r=[],a=(s,l,c)=>{s._parent=c,s._depth=l,s._si=o,s._leaf=!(s.children&&s.children.length),l>n&&(n=l),s._leaf?(s._di=r.length,r.push(s)):(s._di=-1,s.children.forEach(u=>a(u,l+1,s)))};a(i,0,null),e.push(r)}),{leaves:e,maxDepth:n}}function ACe(t){const e=t.globals.treemapRoots;if(e&&e.length)return{roots:e,maxDepth:t.globals.treemapMaxDepth||1,nested:!0};const n=CCe(t,t.config.series,{keepDatum:!0,expandDrilldown:!1});n.forEach(p$);const{maxDepth:i}=$Ce(n);return{roots:n,maxDepth:i,nested:!1}}const _Ce=t=>(t[2]-t[0])*(t[3]-t[1]);class PCe{constructor(e,n){this.ctx=n,this.w=e,this.strokeWidth=this.w.config.stroke.width,this.helpers=new HN(e,n),this.dynamicAnim=this.w.config.chart.animations.dynamicAnimation,this.labels=[],this.roots=[],this.drawn=[],this.nested=!1,this.showParents=!1,this.scale=null,this._levelCache=null,this._total=null,this._avgLabelSize=null,this._tooltipEl=null,this._tipOwned=!1,this._morphLeafIndex=0}draw(e){var n;const i=this.w,o=new Be(this.w,this.ctx),r=new go(this.w),a=o.group({class:"apexcharts-treemap"});if(i.globals.noData)return a;e.forEach(m=>{m.map(v=>Math.abs(v))}),this.negRange=this.helpers.checkColorRange(),i.config.series.forEach((m,v)=>{m.data.forEach(b=>{Array.isArray(this.labels[v])||(this.labels[v]=[]),this.labels[v].push(b.x)})});const s=ACe(i);this.nested=s.nested,this.roots=s.roots,this.scale=CN(i);const l=s.roots.length===1?s.roots[0].children||[]:s.roots;this.drawn=l;const c=i.config.plotOptions.treemap.parents;this.showParents=c.show===!0||c.show!==!1&&this.nested;const u=this._resolveFocus(l),d=u?[u]:l;xCe.generateNested(d,i.layout.gridWidth,i.layout.gridHeight,{padding:(m,v,b,y)=>this.showParents?this._levelPadding(v,b,y):0,header:(m,v,b,y)=>this.showParents?this._levelHeader(m,v,b,y):0});const f=(n=this.ctx)==null?void 0:n.morphTypeChange,h=!!f&&typeof f.isActive=="function"&&f.isActive()&&typeof f.getInitialPathAt=="function";this._morphLeafIndex=0;const p=this._leavesBySeries(d,i.config.series.length),g=this.showParents?this._parentsBySeries(d,i.config.series.length):[];return p.forEach((m,v)=>{var b;const y=o.group({class:"apexcharts-series apexcharts-treemap-series",seriesName:Ee.escapeString(i.seriesData.seriesNames[v]),rel:v+1,"data:realIndex":v});if(o.setupEventDelegation(y,".apexcharts-treemap-rect"),i.config.chart.dropShadow.enabled){const O=i.config.chart.dropShadow;new uo(this.w).dropShadow(a,O,v)}const w=o.group({class:"apexcharts-data-labels"}),x={xMin:1/0,yMin:1/0,xMax:-1/0,yMax:-1/0};this.showParents&&(g[v]||[]).forEach(O=>{this._drawParent(y,O,v)});const $=i.config.chart.animations,S=$.animateGradually,_=S&&S.enabled!==!1,P=new Array(m.length).fill(0);if(_){const O=m.length||1,M=Math.min(S.delay||0,$.speed*.5/O);m.map((k,E)=>({j:E,area:k.rect?_Ce(k.rect):0})).sort((k,E)=>E.area-k.area).forEach((k,E)=>{P[k.j]=E*M})}m.forEach((O,M)=>{const I=O.rect;if(!I)return;const k=O._di,E=I[0],R=I[1],D=I[2],F=I[3];x.xMin=Math.min(x.xMin,E),x.yMin=Math.min(x.yMin,R),x.xMax=Math.max(x.xMax,D),x.yMax=Math.max(x.yMax,F);const N=this._leafColor(v,k),B=N.color,z=r.fillPath({color:B,seriesNumber:v,dataPointIndex:k}),W=h?this._morphSourceForLeaf(O):null,j=W?o.drawPath({d:this._tilePath(E,R,D,F),fill:"#fff",stroke:i.config.plotOptions.treemap.useFillColorAsStroke?B:i.globals.stroke.colors[v],strokeWidth:this.strokeWidth,fillOpacity:1}):o.drawRect(E,R,D-E,F-R,i.config.plotOptions.treemap.borderRadius,"#fff",1,this.strokeWidth,i.config.plotOptions.treemap.useFillColorAsStroke?B:i.globals.stroke.colors[v]);j.attr({cx:E,cy:R,index:v,i:v,j:k,width:D-E,height:F-R,fill:z}),j.node.classList.add("apexcharts-treemap-rect"),j.node.setAttribute("data:key",nd(O._key));let U={x:E+(D-E)/2,y:R+(F-R)/2,width:0,height:0};const V={x:E,y:R,width:D-E,height:F-R};if(W)this._morphTile(j,W,this._tilePath(E,R,D,F),this.ctx.morphTypeChange.getSpeed(),v,k);else if(i.config.chart.animations.enabled&&!i.globals.dataChanged){let J=1;i.globals.resized||(J=i.config.chart.animations.speed),this.animateTreemap(j,U,V,J,P[M]||0)}if(i.globals.dataChanged){let J=1;this.dynamicAnim.enabled&&i.globals.shouldAnimate&&(J=this.dynamicAnim.speed,i.globals.previousPaths[v]&&i.globals.previousPaths[v][k]&&i.globals.previousPaths[v][k].rect&&(U=i.globals.previousPaths[v][k].rect),this.animateTreemap(j,U,V,J))}let q=this.getFontSize(I);i.config.plotOptions.treemap.dataLabels.format==="truncate"&&(q=parseInt(String(i.config.dataLabels.style.fontSize),10));let Y=null;if(i.config.dataLabels.enabled&&this._labelCanShow(q,D-E,F-R)){let J=i.config.dataLabels.formatter(this.labels[v][k],{value:i.seriesData.series[v][k],seriesIndex:v,dataPointIndex:k,w:i});i.config.plotOptions.treemap.dataLabels.format==="truncate"&&(J=this.truncateLabels(String(J),q,E,R,D,F)),i.seriesData.series[v][k]&&(Y=this.helpers.calculateDataLabels({text:J,x:(E+D)/2,y:(R+F)/2+this.strokeWidth/2+q/3,i:v,j:k,colorProps:N,fontSize:q,series:e})),i.config.dataLabels.enabled&&Y&&this.rotateToFitLabel(Y,q,J,E,R,D,F)}y.add(j),Y!==null&&y.add(Y)});const T=i.config.plotOptions.treemap.seriesTitle;if(!this.showParents&&i.config.series.length>1&&T&&T.show){const O=i.config.series[v].name||"";if(O&&x.xMin<1/0&&x.yMin<1/0){const{offsetX:M,offsetY:I,borderColor:k,borderWidth:E,borderRadius:R,style:D}=T,F=D.color||i.config.chart.foreColor,N={left:D.padding.left,right:D.padding.right,top:D.padding.top,bottom:D.padding.bottom},B=o.getTextRects(O,D.fontSize,D.fontFamily),z=B.width+N.left+N.right,W=B.height+N.top+N.bottom,j=x.xMin+(M||0),U=x.yMin+(I||0),V=o.drawRect(j,U,z,W,R,D.background,1,E,k),q=o.drawText({x:j+N.left,y:U+N.top+((b=B==null?void 0:B.height)!=null?b:0)*.75,text:O,fontSize:D.fontSize,fontFamily:D.fontFamily,fontWeight:D.fontWeight,foreColor:F,cssClass:D.cssClass||""});y.add(V),y.add(q)}}y.add(w),a.add(y)}),this._renderBreadcrumb(),a}_levelCfg(e){if(this._levelCache||(this._levelCache=[]),this._levelCache[e])return this._levelCache[e];const n=this.w.config.plotOptions.treemap,i=n.parents||{},o=(n.levels||[])[e]||{},r=vt(Ye(Ye({},i),o),{header:vt(Ye(Ye({},i.header||{}),o.header||{}),{style:Ye(Ye({},(i.header||{}).style||{}),(o.header||{}).style||{})}),hover:Ye(Ye({},i.hover||{}),o.hover||{})});return this._levelCache[e]=r,r}_levelPadding(e,n,i){const o=this._levelCfg(e);return Number(o.padding)||0}_levelHeader(e,n,i,o){const a=this._levelCfg(n).header||{};if(a.show===!1)return 0;const s=Number(a.height);if(!Number.isFinite(s)||s<=0)return 0;const l=Number(a.minWidth)||40;return i{if(r.children&&r.children.length)r.children.forEach(o);else{const a=r._si||0;i[a]&&i[a].push(r)}};return e.forEach(o),i}_parentsBySeries(e,n){const i=new Array(Math.max(1,n));for(let r=0;r{if(!r.children||!r.children.length)return;const a=r._si||0;i[a]&&i[a].push(r),r.children.forEach(o)};return e.forEach(o),i.forEach(r=>r.sort((a,s)=>(a.depth||0)-(s.depth||0))),i}_leafColor(e,n){const i=this.w;if(this.scale){const o=wN(i,e,n);if(o!=null){const r=this.scale.at(o);return{color:r,foreColor:NE(r),colorProps:{color:r,foreColor:NE(r),percent:0}}}}return this.helpers.getShadeColor(i.config.chart.type,e,n,this.negRange)}_parentChrome(e){const n=this.w,i=this._levelCfg(e),o=n.config.theme.mode==="dark",a=(i.header||{}).style||{},s=Math.min(e,3),l=o?255:0,c=`${l},${l},${l}`;return{fill:i.fill||`rgba(${c},${(o?.04:.03)+s*.02})`,fillOpacity:i.fillOpacity==null?1:i.fillOpacity,borderColor:i.borderColor||`rgba(${c},${o?.18:.14})`,borderWidth:i.borderWidth==null?1:i.borderWidth,borderRadius:i.borderRadius==null?n.config.plotOptions.treemap.borderRadius:i.borderRadius,headerBg:a.background||`rgba(${c},${o?.1:.07})`,headerColor:a.color||(o?"#e8e8e8":n.config.chart.foreColor),headerFontSize:a.fontSize||"12px",headerFontFamily:a.fontFamily||n.config.chart.fontFamily,headerFontWeight:a.fontWeight==null?600:a.fontWeight,hoverColor:i.hover&&i.hover.color||(o?"rgba(255,255,255,0.85)":"rgba(0,0,0,0.7)"),hoverWidth:i.hover&&i.hover.width||2,hoverShow:!(i.hover&&i.hover.show===!1)}}_drawParent(e,n,i){var o;const r=n.rect;if(!r)return;const a=this.w,s=new Be(this.w,this.ctx),l=n.depth||0,c=this._levelCfg(l),u=this._parentChrome(l),d=r[0],f=r[1],h=r[2]-r[0],p=r[3]-r[1];if(h<=0||p<=0)return;const g=s.group({class:"apexcharts-treemap-parent","data:depth":l,"data:name":Ee.escapeString(n.name)}),m=nd(n._key),v=this._morphKeyed()?this.ctx.morphTypeChange.getInitialPathForKey(m):null,b=v?s.drawPath({d:this._tilePath(d,f,d+h,f+p),fill:u.fill,stroke:u.borderColor,strokeWidth:u.borderWidth,fillOpacity:u.fillOpacity}):s.drawRect(d,f,h,p,u.borderRadius,u.fill,u.fillOpacity,u.borderWidth,u.borderColor);b.node.classList.add("apexcharts-treemap-parent-rect"),b.node.setAttribute("data:key",m),b.node.setAttribute("data:depth",String(l)),v&&this._morphTile(b,v,this._tilePath(d,f,d+h,f+p),this.ctx.morphTypeChange.getSpeed(),i,l),g.add(b);const y=n.headerHeight||0;let w="";if(y>0){const x=c.header||{},$=s.drawRect(d,f,h,y,0,u.headerBg,1,0,"transparent");$.node.classList.add("apexcharts-treemap-parent-header"),g.add($);let S=String((o=n.name)!=null?o:"");typeof x.formatter=="function"?S=String(x.formatter(n.name,{value:n.value,depth:l,seriesIndex:i,node:n,w:a})):x.showValue&&(S=`${S} ${this._formatValue(n.value)}`),w=S;const _=Number(x.offsetX)||0,P=x.align||"left",T=6,O=Math.max(0,h-T*2-Math.abs(_)),M=parseFloat(String(u.headerFontSize))||12,I=s.getTextBasedOnMaxWidth({text:S,maxWidth:O,fontSize:M});if(I){let k=d+T+_,E="start";P==="center"?(k=d+h/2+_,E="middle"):P==="right"&&(k=d+h-T+_,E="end");const R=s.drawText({x:k,y:f+y/2+M/3+(Number(x.offsetY)||0),text:I,textAnchor:E,fontSize:u.headerFontSize,fontFamily:u.headerFontFamily,fontWeight:u.headerFontWeight,foreColor:u.headerColor,cssClass:`apexcharts-treemap-parent-label ${x.style&&x.style.cssClass||""}`});R.node.setAttribute("pointer-events","none"),g.add(R)}this._attachParentEvents($.node,n,u,b),this._makeParentAccessible($.node,n,u,b,w)}this._attachParentEvents(b.node,n,u,b),g.node.setAttribute("role","group"),g.node.setAttribute("aria-label",this._parentLabel(n,w)),e.add(g)}_parentLabel(e,n){const i=this._drawnTotal(),o=i>0?(e._area/i*100).toFixed(1):"0",r=this._countLeaves(e);return`${n&&String(n).trim()?String(n).replace(/\s+/g," ").trim():`${e.name}, ${this._formatValue(e._area)}`}, ${r} ${r===1?"item":"items"}, ${o}% of total`}_makeParentAccessible(e,n,i,o,r){!e||!e.setAttribute||this._zoomEnabled()&&(e.setAttribute("role","button"),e.setAttribute("tabindex","0"),e.setAttribute("aria-label",`${this._parentLabel(n,r)}. Zoom in`),e.setAttribute("aria-expanded","false"),!(!Ot.isBrowser()||!e.addEventListener)&&(e.addEventListener("focus",()=>{o.node.setAttribute("stroke",i.hoverColor),o.node.setAttribute("stroke-width",String(i.hoverWidth+1))}),e.addEventListener("blur",()=>{o.node.setAttribute("stroke",i.borderColor),o.node.setAttribute("stroke-width",String(i.borderWidth))}),e.addEventListener("keydown",a=>{a.key!=="Enter"&&a.key!==" "&&a.key!=="Spacebar"||(a.preventDefault(),this._zoomTo(n,!0))})))}_attachParentEvents(e,n,i,o){if(!Ot.isBrowser()||!e||!e.addEventListener)return;const r=this.w;i.hoverShow&&(e.addEventListener("mouseenter",()=>{o.node.setAttribute("stroke",i.hoverColor),o.node.setAttribute("stroke-width",String(i.hoverWidth))}),e.addEventListener("mouseleave",()=>{o.node.setAttribute("stroke",i.borderColor),o.node.setAttribute("stroke-width",String(i.borderWidth))})),r.config.tooltip.enabled&&(e.addEventListener("mouseenter",a=>this._showParentTooltip(a,n)),e.addEventListener("mousemove",a=>this._positionTooltip(a)),e.addEventListener("mouseleave",()=>this._hideParentTooltip())),this._zoomEnabled()&&(e.style.cursor="pointer",e.addEventListener("click",()=>this._zoomTo(n)))}_zoomEnabled(){const e=this.w,n=e.config.plotOptions.treemap.zoom;if(!n||!n.enabled||!this.showParents)return!1;const i=e.config.drilldown;return i&&i.enabled&&Array.isArray(i.series)&&i.series.length?(this._warnedZoomConflict||(this._warnedZoomConflict=!0,console.warn("ApexCharts treemap: `plotOptions.treemap.zoom` and the drilldown feature both navigate the hierarchy, so zoom is ignored here. Drop `drilldown.series` to zoom a nested treemap instead.")),!1):!0}_resolveFocus(e){const n=this.w.globals.treemapFocusKey;if(!n||!this._zoomEnabled())return null;let i=null;const o=r=>{if(!i){if(r._key===n){i=r;return}r.children&&r.children.forEach(o)}};return e.forEach(o),i&&i.children&&i.children.length?i:null}_zoomTo(e,n=!1){const i=this.w;if(!e||!e.children||!e.children.length)return;const o=i.globals.treemapFocusKey===e._key?null:e._key;i.globals.treemapFocusKey=o,this._hideParentTooltip();const r=this.ctx.update();!n||!r||typeof r.then!="function"||r.then(()=>{if(!Ot.isBrowser())return;const a=i.dom.baseEl.querySelector(".apexcharts-breadcrumb .apexcharts-breadcrumb-item");if(a&&a.focus){a.focus();return}const s=i.dom.baseEl.querySelector(".apexcharts-treemap-parent-header[tabindex]");s&&s.focus&&s.focus()})}_focusChain(){const e=[],n=new Set(this.drawn||[]);let i=this._resolveFocus(this.drawn||[]);for(;i&&(e.unshift(i),!n.has(i));)i=i._parent;return e}_breadcrumbCfg(){const e=this.w.config.plotOptions.treemap.zoom;return _N(this.w,e&&e.breadcrumb)}_renderBreadcrumb(){if(!Ot.isBrowser())return;const e=this.w;if(!e.dom.elWrap||(ON(e),!this._zoomEnabled()))return;const n=this._focusChain();if(!n.length)return;const i=N1e(e,{ariaLabel:"Treemap breadcrumb",config:this._breadcrumbCfg(),compact:!0,crumbs:[{label:"All",data:null}].concat(n.map(o=>({label:o.name,data:o}))),onNavigate:(o,r)=>{e.globals.treemapFocusKey=r.data?r.data._key:null,this._hideParentTooltip(),this.ctx.update()}});i&&(this._placeBreadcrumb(i),PN(e,i))}_placeBreadcrumb(e){var n,i;const o=this.w,r=o.layout.translateY||0,a=(i=(n=this.ctx)==null?void 0:n.dimensions)==null?void 0:i.dimHelpers,s=a?a.getTitleSubtitleCoords("title").height+a.getTitleSubtitleCoords("subtitle").height:0,l=e.getBoundingClientRect().height||AN;if(r-s>=l+1){e.style.top=`${r-l-1}px`;return}e.style.top=`${s}px`;const c=o.config.theme.mode==="dark";e.style.background=c?"rgba(20,24,30,0.82)":"rgba(255,255,255,0.86)",e.style.borderRadius="4px"}_showParentTooltip(e,n){const i=this.w,o=this._tip();if(!o)return;const r=this._drawnTotal(),a=n._parent?n._parent._area:r,s=r>0?(n._area/r*100).toFixed(1):"0.0",l=a>0?(n._area/a*100).toFixed(1):s,c=this.w.config.plotOptions.treemap.parents,u=c&&c.tooltip&&c.tooltip.formatter,d=this._countLeaves(n);let f;if(typeof u=="function")f=u({name:n.name,value:n._area,depth:n.depth||0,leafCount:d,percentOfParent:Number(l),percentOfTotal:Number(s),node:n,w:i});else{const h=this._parentChrome(n.depth||0).headerBg;f=`
${Ee.escapeString(n.name)}: ${this._formatValue(n._area)}
${d} items, ${l}% of parent, ${s}% of total
`}o.innerHTML=f,o.classList.add("apexcharts-active"),o.style.opacity="1",this._tipOwned=!0,this._positionTooltip(e)}_tip(){return this._tooltipEl||(this._tooltipEl=this.w.dom.baseEl.querySelector(".apexcharts-tooltip")),this._tooltipEl}_positionTooltip(e){const n=this._tip();if(!n||!this._tipOwned)return;const i=this.w.dom.elWrap.getBoundingClientRect(),o=n.offsetWidth,r=n.offsetHeight,a=12;let s=e.clientX-i.left+a;s+o>i.width&&(s=e.clientX-i.left-o-a),s=Math.max(0,Math.min(s,i.width-o));let l=e.clientY-i.top+a;l+r>i.height&&(l=e.clientY-i.top-r-a),l=Math.max(0,Math.min(l,i.height-r)),n.style.left=s+"px",n.style.top=l+"px"}_hideParentTooltip(){const e=this._tip();!e||!this._tipOwned||(this._tipOwned=!1,e.classList.remove("apexcharts-active"),e.style.opacity="0")}_drawnTotal(){return this._total==null&&(this._total=(this.drawn||[]).reduce((e,n)=>e+this._subtreeArea(n),0)),this._total||0}_subtreeArea(e){if(e._area!=null)return e._area;const n=e.children;if(n&&n.length){let o=0;for(let r=0;rn+this._countLeaves(i),0)}_formatValue(e){var n,i,o,r,a;const s=this.w,l=((i=(n=s.config.tooltip)==null?void 0:n.y)==null?void 0:i.formatter)||((a=(r=(o=s.config.yaxis)==null?void 0:o[0])==null?void 0:r.labels)==null?void 0:a.formatter);if(typeof l=="function")try{return String(l(e,{seriesIndex:0,dataPointIndex:0,w:s}))}catch{}return String(e)}_labelCanShow(e,n,i){if(!Number.isFinite(e)||e<=0)return!1;const o=this.w.config.plotOptions.treemap.dataLabels,r=o&&o.minFontSize!=null?Number(o.minFontSize):0;return e=e}_averageLabelSize(){if(this._avgLabelSize!=null)return this._avgLabelSize;function e(i){let o,r=0;if(Array.isArray(i[0]))for(o=0;oa-o&&c.width<=s-r){const u=l.rotateAroundCenter(e.node);e.node.setAttribute("transform",`rotate(-90 ${u.x} ${u.y}) translate(${c.height/3})`)}}truncateLabels(e,n,i,o,r,a){const s=new Be(this.w),c=s.getTextRects(e,String(n)).width+this.w.config.stroke.width+5>r-i&&a-o>r-i?a-o:r-i,u=s.getTextBasedOnMaxWidth({text:e,maxWidth:c,fontSize:n});return e.length!==u.length&&c/n<5?"":u}_morphKeyed(){var e;const n=(e=this.ctx)==null?void 0:e.morphTypeChange;return!!(n&&typeof n.hasKeyedMarks=="function"&&n.hasKeyedMarks()&&typeof n.getInitialPathForKey=="function")}_morphSourceForLeaf(e){var n;const i=(n=this.ctx)==null?void 0:n.morphTypeChange;if(!i||typeof i.getInitialPathAt!="function")return null;if(this._morphKeyed()){const o=i.getInitialPathForKey(nd(e._key));if(o)return o}return i.getInitialPathAt(this._morphLeafIndex++)}_tilePath(e,n,i,o){return`M ${e} ${n} L ${i} ${n} L ${i} ${o} L ${e} ${o} Z`}_morphTile(e,n,i,o,r,a){new Gs(this.w,this.ctx).morphSVG(e,r,a,"none",n,i,o,0)}animateTreemap(e,n,i,o,r=0){const a=new Gs(this.w);a.animateRect(e,n,i,o,()=>{a.animationCompleted(e)},r)}}const OCe=.05,TCe=.05,ECe=1/45;function uM(t,e,n,i){return{value:t,velocity:0,target:t,stiffness:e,damping:n}}function dM(t,e){if(e<=0)return hM(t);let n=e;for(;n>0;){const i=Math.min(n,ECe),o=-t.stiffness*(t.value-t.target)-t.damping*t.velocity;t.velocity+=o*i,t.value+=t.velocity*i,n-=i}return!!hM(t)&&(t.value=t.target,t.velocity=0,!0)}function fM(t,e){t.target=e}function hM(t){var e,n;const i=(e=t.restVelocity)!=null?e:OCe,o=(n=t.restDisplacement)!=null?n:TCe;return Math.abs(t.velocity)isFinite(i))||n[2]<=0||n[3]<=0?null:Object.freeze(vt(Ye({},t),{name:t.name||"anonymous",path:t.path.trim(),viewBox:n,fillRule:t.fillRule==="evenodd"?"evenodd":void 0}))}function RCe(t){return t&&DCe()[t]||null}const mM=Math.PI*(3-Math.sqrt(5));function E0(t){return 1-Math.pow(1-t,3)}function LCe(t){return e=>1+(t+1)*Math.pow(e-1,3)+t*Math.pow(e-1,2)}function FCe(t){return t<.5?4*t*t*t:1-Math.pow(-2*t+2,3)/2}const NCe=800,BCe=.25,bh=0,vM=1,M0=2;function zCe(t,e){const[n,i]=MCe(t),o=NCe/Math.max(1,e);return[n*o*o,i*o]}class HCe{constructor(e,n){this.ctx=n,this.w=e,this._lastDotR=1,this._gridTrack=null,this._gridDenom=1,this._scatterAxis=null,this._specCache=new Map,this._markWarned=null}draw(e){const n=this.w,i=new Be(n,this.ctx),o=i.group({class:"apexcharts-unit"});if(n.globals.noData||!Array.isArray(e)||e.length===0)return o;const r=n.config.plotOptions.unit,a=r.layout==="packed"?"packed":r.layout==="columns"?"columns":r.layout==="grid"?"grid":r.layout==="scatter"?"scatter":r.layout==="arc"?"arc":r.layout==="custom"?"custom":"grouped",s=r.transition,l=s==="flow",c=s==="identity",u=r.unitValue>0?r.unitValue:1;let d=e.map(O=>{const M=Math.abs(Ee.parseNumber(O))/u;return M>0?Math.max(1,Math.round(M)):0});d=this._applyMaxUnits(d,r.maxUnits);const f=d.reduce((O,M)=>O+M,0),h=a==="packed"?this._layoutPacked(d,r):a==="columns"?this._layoutColumns(d,r):a==="grid"?this._layoutGrid(d,r):a==="scatter"?this._layoutScatter(r):a==="arc"?this._layoutArc(d,r):a==="custom"?this._layoutCustom(d,r):this._layoutGrouped(d,r),p=a==="grid"&&!!(r.grid&&r.grid.split);p&&this._drawGridTrack(o,i,r),a==="scatter"&&this._drawScatterAxes(o,i);const g=this._lastDotR,m=this._shouldAnimate(),v=this.ctx&&this.ctx.morphTypeChange,b=m&&!!v&&typeof v.isActive=="function"&&v.isActive()&&typeof v.getInitialCenterFor=="function",y=b&&typeof v.getInitialSlotFor=="function",w=b&&typeof v.usesPieceTakeover=="function"&&v.usesPieceTakeover(),x=m&&!b&&this.ctx?this.ctx._unitPrevDots:null,$=new Map,S=[],_=n.seriesData.unitData||[],P=this._bubbleStats(_,r,g);let T=0;if(h.forEach(O=>{const M=n.globals.colors[O.i]||n.globals.colors[0]||"#008FFB",I=i.group({class:"apexcharts-series",seriesName:Ee.escapeString(n.seriesData.seriesNames[O.i]||`series-${O.i+1}`),rel:O.i+1,"data:realIndex":O.i}),k=b&&!y?v.getInitialCenterFor(O.i):null,E=O.dots.length,R=_[O.i];if(O.dots.forEach((D,F)=>{const N=D.j!=null?D.j:F,B=R?R[N]:void 0,z=B&&typeof B=="object"&&B.fillColor?B.fillColor:M,W=D.r!=null?D.r:P?this._radiusForValue(this._unitValueOf(B),P):g,j=this._markSpecFor(r,B,O.i,W),U=this._drawDot(i,r,W,z,O.i,N,j);I.add(U);let V;if(c){const q=B&&typeof B=="object"?B.id!=null?B.id:B.name:void 0;V=q!=null?`id:${q}`:`g:${T}`}else l?V=String(T):D.slot!=null?V=`slot:${D.slot}`:V=`${O.i}:${N}`;if(T++,$.set(V,{x:D.x,y:D.y,fill:z,r:W,spec:j}),w)this._place(U.node,j,D.x,D.y),U.node.setAttribute("opacity","0"),U.node.setAttribute("data-piece-hidden","1");else if(m){const q=x&&x.get(V),Y=q||(y?v.getInitialSlotFor(O.i,N,E):k),J=r.gather&&r.gather.enter||"burst",Q=p||J==="fade"||J==="rise",G=Y?Y.x:Q?D.x:O.cx,ee=Y?Y.y:J==="rise"&&!p?D.y+14:Q?D.y:O.cy;U.node.style.opacity=Y?"1":"0",this._place(U.node,j,G,ee),S.push({node:U.node,spec:j,x:D.x,y:D.y,cx0:G,cy0:ee,key:V,r0:q&&q.r!=null?q.r:W,r1:W,fill0:q?q.fill:z,fill1:z,delay:0,isEnter:!Y})}else this._place(U.node,j,D.x,D.y)}),(a==="grouped"||a==="columns"||p)&&r.clusterLabels&&r.clusterLabels.show&&d[O.i]>0){const D=p?this._gridDenom:f;this._drawClusterLabel(I,O,d[O.i],D,r,M)}o.add(I)}),this._outerLabelsOn(r)&&this._drawOuterLabels(o,h,d,f,r,m&&!x),x){const O=this._collectExits(x,$,r);if(O.length){const M=i.group({class:"apexcharts-unit-exits"});o.add(M),this._runExits(M,O,r)}}return this.ctx&&(this.ctx._unitPrevDots=$),this.ctx&&(!m||b)&&(this.ctx._unitSprings=null),m&&S.length?this._runGather(S):n.globals.animationEnded=!0,o}_applyMaxUnits(e,n){const i=e.reduce((r,a)=>r+a,0);if(!n||n<=0||i<=n)return e;const o=n/i;return console.warn(`[ApexCharts] unit chart: ${i} dots exceeds maxUnits (${n}); counts were scaled down proportionally. Raise plotOptions.unit.maxUnits or use plotOptions.unit.unitValue to represent more units per dot.`),e.map(r=>r>0?Math.max(1,Math.round(r*o)):0)}_layoutCustom(e,n){const i=this.w,o=i.layout.gridWidth,r=i.layout.gridHeight,a=e.reduce((v,b)=>v+b,0),s=this._resolveLayoutProvider(n);if(!s)return console.warn("[ApexCharts] unit chart: layout 'custom' needs plotOptions.unit.positions (a function, or the name of a layout registered with ApexCharts.registerUnitLayout). Falling back to 'grouped'."),this._layoutGrouped(e,n);const l=this._outerLabelsOn(n)?this._outerLabelGutter(e,n):0;this._lastOuterGutter=l;const c={x:l,y:0,width:Math.max(1,o-l*2),height:r},u=Math.sqrt(c.width*c.height/Math.PI),d=this._resolveStep(n,u,a);this._lastDotR=this._dotRadiusFromStep(d,n);const f=this._lastDotR,h=this._layoutObjects(e,f);let p;try{p=s(h,c)}catch(v){return console.warn("[ApexCharts] unit chart: the layout provider threw; falling back to 'grouped'.",v),this._layoutGrouped(e,n)}if(!Array.isArray(p))return console.warn("[ApexCharts] unit chart: the layout provider must return an array of {id, x, y}; falling back to 'grouped'."),this._layoutGrouped(e,n);const g=new Map;p.forEach(v=>{!v||!isFinite(v.x)||!isFinite(v.y)||g.set(String(v.id),{x:v.x,y:v.y,r:typeof v.r=="number"&&v.r>0?v.r:void 0})});const m=e.map((v,b)=>({i:b,cx:o/2,cy:r/2,outerR:f,dots:[]}));return h.forEach(v=>{const b=g.get(v.id);b&&m[v.seriesIndex].dots.push({x:b.x,y:b.y,r:b.r,j:v.dataPointIndex})}),m.forEach(v=>{if(!v.dots.length)return;let b=0,y=0;v.dots.forEach(x=>{b+=x.x,y+=x.y}),v.cx=b/v.dots.length,v.cy=y/v.dots.length;let w=0;v.dots.forEach(x=>{w=Math.max(w,Math.hypot(x.x-v.cx,x.y-v.cy))}),v.outerR=w+f}),m}_layoutObjects(e,n){const i=this.w,o=i.seriesData.unitData||[],r=i.seriesData.seriesNames||[],a=[];let s=0;return e.forEach((l,c)=>{var u;const d=o[c];for(let f=0;f_).filter(S=>e[S]>0),l=Math.max(1,s.length),c=new Array(e.length).fill(-1);s.forEach((S,_)=>c[S]=_);const u=o/l,d=r-a,f=Math.max(1,...e),h=Math.min(u,d)*.08,p=Math.max(4,Math.min(u,d)/2-h),g=this._resolveStep(n,p,f);this._lastDotR=this._dotRadiusFromStep(g,n);const m=this._lastDotR,v=a+d/2,b=e.map(S=>g*Math.sqrt(Math.max(1,S))+m),y=S=>c[S]>=0?u*(c[S]+.5):o/2;let w=e.map((S,_)=>y(_));const x=s.map(S=>b[S]);let $=!1;for(let S=1;ST+2*O,0)+S*(l-1);let P;if(_<=o){let T=(o-_)/2;P=x.map(O=>{const M=T+O;return T+=2*O+S,M})}else if(l===1)P=[o/2];else{const T=x[0],O=o-x[l-1];P=x.map((M,I)=>T+(O-T)*I/(l-1))}w=e.map((T,O)=>c[O]>=0?P[c[O]]:o/2)}return e.map((S,_)=>({i:_,cx:w[_],cy:v,outerR:b[_],dots:this._spiral(w[_],v,S,g,0)}))}_layoutPacked(e,n){const i=this.w,o=i.layout.gridWidth,r=i.layout.gridHeight,a=6,s=Math.max(1,e.reduce((g,m)=>g+m,0)),l=Math.max(4,Math.min(o,r-a)/2-Math.min(o,r)*.06),c=this._resolveStep(n,l,s);this._lastDotR=this._dotRadiusFromStep(c,n);const u=o/2,d=a+(r-a)/2,f=e.map((g,m)=>m);n.sortByGroup!==!1&&f.sort((g,m)=>e[g]-e[m]);const h=e.map((g,m)=>({i:m,cx:u,cy:d,outerR:c*Math.sqrt(s)+this._lastDotR,dots:[]}));let p=0;return f.forEach(g=>{for(let m=0;mI+k,0)),s=n.arc||{},l=typeof s.startAngle=="number"?s.startAngle:-90,c=typeof s.endAngle=="number"?s.endAngle:90,u=l*Math.PI/180,d=c*Math.PI/180,f=d-u||Math.PI,h=Math.max(0,Math.min(.95,typeof s.innerRadiusRatio=="number"?s.innerRadiusRatio:.4)),p=I=>Math.sin(I),g=I=>-Math.cos(I),m=this._arcBounds(u,d),v=Math.min(o,r)*.04,b=Math.max(1e-6,m.maxX-m.minX),y=Math.max(1e-6,m.maxY-m.minY),w=Math.max(4,Math.min((o-2*v)/b,(r-2*v)/y)),x=w*h,$=o/2-(m.minX+m.maxX)/2*w,S=r/2-(m.minY+m.maxY)/2*w,_=this._arcAllocate(a,x,w,f,n);this._lastDotR=_.dotR;const P=[];for(let I=0;I<_.R;I++){const k=_.radii[I],E=_.seatsPerRow[I];for(let R=0;RI.a-k.a);const T=e.map((I,k)=>({i:k,cx:$,cy:S,outerR:w,dots:[]}));let O=0,M=0;return P.forEach((I,k)=>{for(;O=e[O];)O++,M=0;O>=e.length||(T[O].dots.push({x:I.x,y:I.y,slot:k}),M++)}),T}_arcBounds(e,n){const i=u=>Math.sin(u),o=u=>-Math.cos(u),r=Math.min(e,n),a=Math.max(e,n),s=[0,i(e),i(n)],l=[0,o(e),o(n)],c=Math.PI/2;for(let u=Math.ceil(r/c);u*c<=a;u++)s.push(i(u*c)),l.push(o(u*c));return{minX:Math.min(...s),maxX:Math.max(...s),minY:Math.min(...l),maxY:Math.max(...l)}}_arcAllocate(e,n,i,o,r){const a=r.spacing>0?r.spacing:1.05,s=Math.abs(o)||Math.PI,l=this._fixedRadius(r),c=f=>{f=Math.max(1,Math.round(f));const h=[];for(let x=0;xx+$,0)||1,g=h.map(x=>e*x/p),m=g.map(x=>Math.floor(x));let v=e-m.reduce((x,$)=>x+$,0);for(g.map((x,$)=>({idx:$,frac:x-Math.floor(x)})).sort((x,$)=>$.frac-x.frac).forEach(x=>{v>0&&(m[x.idx]++,v--)});v>0;)m[f-1]++,v--;const b=f===1?i-n||i:(i-n)/(f-1);let y=1/0;for(let x=0;x=1)d=c(u);else if(l){const f=2*l*a;d=c((i-n)/f+1)}else{const f=Math.max(1,Math.min(40,Math.ceil(Math.sqrt(e))+6));d=c(1);for(let h=2;h<=f;h++){const p=c(h);p.dotR>d.dotR&&(d=p)}}return l&&(d.dotR=l),d}_layoutColumns(e,n){const i=this.w,o=i.layout.gridWidth,r=i.layout.gridHeight,a=!!(n.clusterLabels&&n.clusterLabels.show),s=a&&n.clusterLabels.position==="bottom",l=a&&!s?30:6,c=e.map((T,O)=>O).filter(T=>e[T]>0),u=Math.max(1,c.length),d=new Array(e.length).fill(-1);c.forEach((T,O)=>d[T]=O);const f=o/u,h=f*.62,p=Math.max(8,r*.04)+(s?30:0),g=Math.max(4,r-l-p),m=Math.max(1,...e),v=n.spacing>0?n.spacing:1,b=n.columns?n.columns.size:void 0;let y;n.shape!=="image"&&b==="auto"?y=null:n.shape!=="image"&&typeof b=="number"&&b>0?y=b:y=this._fixedRadius(n);let w=1,x=0;if(y){x=2*y*v,this._lastDotR=y;const T=Math.max(1,Math.floor(g/x)),O=Math.max(1,Math.floor(h/x));w=Math.max(1,Math.min(O,Math.ceil(m/T)))}else{let T=0;const O=Math.max(1,Math.min(40,Math.round(h/4)));for(let M=1;M<=O;M++){const I=Math.ceil(m/M),k=Math.min(h/M,g/I);k>T&&(T=k,w=M)}x=T,this._lastDotR=Math.max(1,x/(2*v))}const $=this._lastDotR,S=Math.ceil(m/w),_=Math.min(g,S*x),P=l+(g+_)/2;return e.map((T,O)=>{const M=d[O]>=0?f*(d[O]+.5):o/2,k=Math.ceil(Math.max(1,T)/w)*x,E=M-w*x/2+x/2,R=[];for(let D=0;D0?a.columns:10)),l=a.fillFrom==="top"?"top":"bottom",c=a.total>0?this._largestRemainder(e,Math.round(a.total)):e.slice(),u=c.reduce((P,T)=>P+T,0),d=Math.max(1,Math.ceil(Math.max(1,u)/s)),f=6,h=n.spacing>0?n.spacing:1,p=Math.max(4,o),g=Math.max(4,r-f),m=this._fixedRadius(n);let v=0;m?(v=2*m*h,this._lastDotR=m):(v=Math.min(p/s,g/d),this._lastDotR=Math.max(1,v/(2*h)));const b=s*v,y=d*v,w=(o-b)/2+v/2,x=f+(g-y)/2,$=P=>l==="bottom"?x+y-v/2-P*v:x+v/2+P*v,S=e.map((P,T)=>({i:T,cx:o/2,cy:f+g/2,outerR:Math.max(b,y)/2,dots:[]}));let _=0;for(let P=0;P0?a.columns:10)),l=a.fillFrom==="top"?"top":"bottom",c=Math.max(1,Math.round(a.total>0?a.total:100)),u=Math.max(1,Math.ceil(c/s)),d=e.map((R,D)=>D).filter(R=>e[R]>0),f=Math.max(1,d.length),h=a.max>0?a.max:Math.max(1,...e),p=Math.max(1,Math.round(a.tileColumns>0?a.tileColumns:Math.ceil(Math.sqrt(f)))),g=Math.max(1,Math.ceil(f/p)),m=!(n.clusterLabels&&n.clusterLabels.show===!1),v=m&&n.clusterLabels&&n.clusterLabels.position==="bottom",b=m&&!v?22:4,y=m&&v?22:4,w=o/p,x=r/g,$=Math.max(4,w*.86),S=Math.max(4,x-b-y),_=n.spacing>0?n.spacing:1,P=this._fixedRadius(n);let T=0;P?(T=2*P*_,this._lastDotR=P):(T=Math.min($/s,S/u),this._lastDotR=Math.max(1,T/(2*_)));const O=s*T,M=u*T,I=(R,D)=>l==="bottom"?R+M-T/2-D*T:R+T/2+D*T,k=[],E=[];return d.forEach((R,D)=>{const F=D%p,N=Math.floor(D/p),B=F*w,z=N*x,W=B+(w-O)/2+T/2,j=z+b+(S-M)/2,U=Y=>({x:W+Y%s*T,y:I(j,Math.floor(Y/s))});for(let Y=0;Y{let u;if(i.shape==="square"){const d=r*2;u=n.drawRect(0,0,d,d,i.borderRadius||0,s,1,0,"none"),u.node.setAttribute("fill",s),u.node.setAttribute("x",String(c.x-r)),u.node.setAttribute("y",String(c.y-r))}else u=n.drawCircle(r,{fill:s,"stroke-width":0,stroke:"none"}),u.node.setAttribute("fill",s),u.node.setAttribute("cx",String(c.x)),u.node.setAttribute("cy",String(c.y));u.node.classList.add("apexcharts-unit-track-cell"),l.add(u)}),e.add(l)}_layoutScatter(e){const n=this.w,i=e.scatter||{};if(i.y==="value")return this._layoutScatter2D(e);if(i.orientation==="vertical")return this._layoutScatterVertical(e);const o=n.layout.gridWidth,r=n.layout.gridHeight,a=n.seriesData.unitData||[],s=n.seriesData.seriesNames||[],l=V=>this._unitValueOf(V),c=this._scatterSizeStats(i,a),u=a.map(V=>Array.isArray(V)?V.map(l):[]),d=V=>V!=null&&isFinite(V),f=u.map((V,q)=>q).filter(V=>u[V].some(d)),h=Math.max(1,f.length);let p=1/0,g=-1/0;u.forEach(V=>V.forEach(q=>{q!=null&&isFinite(q)&&(qg&&(g=q))})),p===1/0&&(p=0,g=1);const m=Math.max(2,Math.round(i.tickAmount>0?i.tickAmount:5)),v=this._scatterValueDomain(i,p,g,m),b=v.min,y=v.max,w=y-b||1,x=i.laneLabelWidth!=null?Math.max(0,i.laneLabelWidth):h>1?92:8,$=30+(i.xTitle?20:0),S=x,_=o-8,P=10,T=r-$,O=Math.max(4,_-S),M=Math.max(4,T-P),I=V=>S+(V-b)/w*O,k=M/h,E=V=>P+k*(V+.5);let R=0;const D=this._fixedRadius(e);if(D)R=D;else{const V=Math.max(1,...f.map(q=>u[q].filter(d).length));R=Math.max(2,Math.min(6,k*.12,O/(2.5*Math.sqrt(V))))}this._lastDotR=R;const F=e.spacing>0?e.spacing:1,N=Math.max(.5,R*F),B=i.spread==="jitter",z=[],W=[],j=c?c.rMax:R;f.forEach((V,q)=>{const Y=E(q);W.push({i:V,cy:Y,name:s[V]||`series-${V+1}`});const Q=(a[V]||[]).map((G,ee)=>{const X=l(G),K={j:ee,px:I(d(X)?X:b),y:Y};return c&&(K.r=this._scatterRadius(G,c,R)),K});if(B){const G=Math.max(j,k/2-j);Q.forEach((ee,X)=>{const K=(X*9301+49297)%233280/233280;ee.y=Y+(K*2-1)*G})}else this._beeswarm(Q,Y,R,N,j);z.push({i:V,cx:(S+_)/2,cy:Y,outerR:k/2,dots:Q.map(G=>({x:G.px,y:G.y,r:G.r}))})});const U=v.ticks;return this._scatterAxis={mode:"1d",plotL:S,plotR:_,plotT:P,plotB:T,xMin:b,xMax:y,plotX:I,ticks:U,lanes:W,xTitle:i.xTitle,formatter:typeof i.xFormatter=="function"?i.xFormatter:null,gridlines:i.gridlines!==!1},z}_layoutScatterVertical(e){const n=this.w,i=e.scatter||{},o=n.layout.gridWidth,r=n.layout.gridHeight,a=n.seriesData.unitData||[],s=n.seriesData.seriesNames||[],l=V=>this._unitValueOf(V),c=this._scatterSizeStats(i,a),u=a.map(V=>Array.isArray(V)?V.map(l):[]),d=V=>V!=null&&isFinite(V),f=u.map((V,q)=>q).filter(V=>u[V].some(d)),h=Math.max(1,f.length);let p=1/0,g=-1/0;u.forEach(V=>V.forEach(q=>{q!=null&&isFinite(q)&&(qg&&(g=q))})),p===1/0&&(p=0,g=1);const m=Math.max(2,Math.round(i.tickAmount>0?i.tickAmount:5)),v=this._scatterValueDomain(i,p,g,m),b=v.min,y=v.max,w=y-b||1,x=46+(i.xTitle?18:0),$=h>1?26:10,S=x,_=o-10,P=10,T=r-$,O=Math.max(4,_-S),M=Math.max(4,T-P),I=V=>T-(V-b)/w*M,k=O/h,E=V=>S+k*(V+.5);let R=0;const D=this._fixedRadius(e);if(D)R=D;else{const V=Math.max(1,...f.map(q=>u[q].filter(d).length));R=Math.max(2,Math.min(6,k*.12,M/(2.5*Math.sqrt(V))))}this._lastDotR=R;const F=e.spacing>0?e.spacing:1,N=Math.max(.5,R*F),B=i.spread==="jitter",z=[],W=[],j=c?c.rMax:R;f.forEach((V,q)=>{const Y=E(q);W.push({i:V,cx:Y,name:s[V]||`series-${V+1}`});const Q=(a[V]||[]).map((G,ee)=>{const X=l(G),K={j:ee,py:I(d(X)?X:b),x:Y};return c&&(K.r=this._scatterRadius(G,c,R)),K});if(B){const G=Math.max(j,k/2-j);Q.forEach((ee,X)=>{const K=(X*9301+49297)%233280/233280;ee.x=Y+(K*2-1)*G})}else this._beeswarm(Q,Y,R,N,j,!0);z.push({i:V,cx:Y,cy:(P+T)/2,outerR:k/2,dots:Q.map(G=>({x:G.x,y:G.py,r:G.r}))})});const U=v.ticks;return this._scatterAxis={mode:"1d",orientation:"vertical",plotL:S,plotR:_,plotT:P,plotB:T,vMin:b,vMax:y,plotY:I,ticks:U,lanes:W,valueTitle:i.xTitle,formatter:typeof i.xFormatter=="function"?i.xFormatter:null,gridlines:i.gridlines!==!1},z}_layoutScatter2D(e){const n=this.w,i=n.layout.gridWidth,o=n.layout.gridHeight,r=e.scatter||{},a=n.seriesData.unitData||[],s=j=>typeof j=="number"&&isFinite(j),l=j=>j&&typeof j=="object"?j.x:null,c=j=>j&&typeof j=="object"?j.y!=null?j.y:j.value:null,u=a.map((j,U)=>U).filter(j=>(a[j]||[]).some(U=>s(l(U))&&s(c(U))));let d=1/0,f=-1/0,h=1/0,p=-1/0;a.forEach(j=>(j||[]).forEach(U=>{const V=l(U),q=c(U);s(V)&&s(q)&&(Vf&&(f=V),qp&&(p=q))})),d===1/0&&(d=0,f=1,h=0,p=1);const g=Math.max(2,Math.round(r.tickAmount>0?r.tickAmount:5)),m=Math.max(2,Math.round(r.yTickAmount>0?r.yTickAmount:5)),v=this._niceScale(r.xMin!=null?r.xMin:d,r.xMax!=null?r.xMax:f,g),b=this._niceScale(r.yMin!=null?r.yMin:h,r.yMax!=null?r.yMax:p,m),y=r.xMin!=null?r.xMin:v.min,w=r.xMax!=null?r.xMax:v.max,x=r.yMin!=null?r.yMin:b.min,$=r.yMax!=null?r.yMax:b.max,S=w-y||1,_=$-x||1,P=46+(r.yTitle?18:0),T=30+(r.xTitle?20:0),O=P,M=i-12,I=10,k=o-T,E=Math.max(4,M-O),R=Math.max(4,k-I),D=j=>O+(j-y)/S*E,F=j=>k-(j-x)/_*R,N=this._scatterSizeStats(r,a),B=this._fixedRadius(e)||5;this._lastDotR=B;const z=[];u.forEach(j=>{const V=(a[j]||[]).map(q=>{const Y=l(q),J=c(q);return{x:D(s(Y)?Y:y),y:F(s(J)?J:x),r:N?this._scatterRadius(q,N,B):void 0}});z.push({i:j,cx:(O+M)/2,cy:(I+k)/2,outerR:R/2,dots:V})});const W=(j,U,V,q,Y,J)=>{const Q=[];if(Y)for(let G=0;G(c||[]).forEach(u=>{const d=u&&typeof u=="object"?u[a]:null;typeof d=="number"&&isFinite(d)&&(dl&&(l=d))})),s===1/0?null:{zmin:s,zmax:l,rMin:o,rMax:r,field:a}}_scatterRadius(e,n,i){if(!n)return i;const o=e&&typeof e=="object"?e[n.field]:null;if(typeof o!="number"||!isFinite(o))return n.rMin;const r=n.zmax>n.zmin?(o-n.zmin)/(n.zmax-n.zmin):1,a=Math.max(0,Math.min(1,r)),s=n.rMin*n.rMin,l=n.rMax*n.rMax;return Math.sqrt(s+a*(l-s))}_beeswarm(e,n,i,o,r,a=!1){const s=a?"py":"px",l=a?"x":"y",c=e.slice().sort((f,h)=>f[s]-h[s]),u=[],d=r??i;c.forEach(f=>{const h=f.r!=null?f.r:i;let p=0;for(let g=0;g<2e3;g++){const m=g===0?0:Math.ceil(g/2)*o*(g%2?1:-1),v=n+m;let b=!0;for(let y=u.length-1;y>=0;y--){const w=u[y],x=f[s]-w.f;if(x>h+d)break;const $=h+w.r,S=v-w.s;if(x*x+S*S<$*$){b=!1;break}}if(b){p=m;break}}f[l]=n+p,u.push({f:f[s],s:f[l],r:h})})}_scatterValueDomain(e,n,i,o){const r=(l,c,u)=>{const d=[];for(let f=l;f<=c+u*.5;f+=u)d.push(Math.abs(f)l||(c=l+1);const u=(c-l)/Math.max(1,o-1);return nc&&(c+=Math.ceil((i-c)/u)*u),{min:l,max:c,ticks:r(l,c,u)}}const a=this._niceScale(n,i,o),s=a.spacing||(a.max-a.min)/Math.max(1,o-1);return{min:a.min,max:a.max,ticks:r(a.min,a.max,s)}}_niceScale(e,n,i){const o=e;let r=n;r>o||(r=o+1);const a=this._niceNum(r-o,!1),s=this._niceNum(a/Math.max(1,i-1),!0);return{min:Math.floor(o/s)*s,max:Math.ceil(r/s)*s,spacing:s}}_niceNum(e,n){const i=e>0?e:1,o=Math.floor(Math.log(i)/Math.LN10),r=i/Math.pow(10,o);let a;return n?a=r<1.5?1:r<3?2:r<7?5:10:a=r<=1?1:r<=2?2:r<=5?5:10,a*Math.pow(10,o)}_drawScatterAxes(e,n){const i=this.w;if(!Ot.isBrowser())return;const o=this._scatterAxis;if(!o)return;const r="http://www.w3.org/2000/svg",a=n.group({class:"apexcharts-unit-axis"}),s=i.config.grid&&i.config.grid.borderColor||"rgba(128,128,128,0.18)",l="rgba(128,128,128,0.5)",c=i.config.xaxis&&i.config.xaxis.labels&&i.config.xaxis.labels.style&&i.config.xaxis.labels.style.colors,u=Array.isArray(c)?c[0]:c,d=u||"rgba(120,130,140,0.9)",f=(p,g,m,v,b)=>{const y=We.createElementNS(r,"line");y.setAttribute("x1",String(p)),y.setAttribute("y1",String(g)),y.setAttribute("x2",String(m)),y.setAttribute("y2",String(v)),y.setAttribute("stroke",b),y.setAttribute("shape-rendering","crispEdges"),a.node.appendChild(y)},h=(p,g,m,v,b,y,w,x)=>{const $=We.createElementNS(r,"text");$.setAttribute("class",x),$.setAttribute("x",String(g)),$.setAttribute("y",String(m)),$.setAttribute("text-anchor",v),$.setAttribute("dominant-baseline","middle"),$.setAttribute("font-size",`${y}px`),$.setAttribute("font-family",i.config.chart.fontFamily||"inherit"),$.setAttribute("font-weight",String(w)),$.setAttribute("fill",b),$.textContent=p,a.node.appendChild($)};if(o.mode==="2d"){if(o.yTicks.forEach(p=>{const g=o.plotY(p);o.gridlines&&f(o.plotL,g,o.plotR,g,s);const m=o.yFormatter?String(o.yFormatter(p)):this._formatTick(p);h(m,o.plotL-8,g,"end",d,11,400,"apexcharts-unit-tick")}),o.xTicks.forEach(p=>{const g=o.plotX(p);o.gridlines&&f(g,o.plotT,g,o.plotB,s);const m=o.xFormatter?String(o.xFormatter(p)):this._formatTick(p);h(m,g,o.plotB+14,"middle",d,11,400,"apexcharts-unit-tick")}),f(o.plotL,o.plotB,o.plotR,o.plotB,l),f(o.plotL,o.plotT,o.plotL,o.plotB,l),o.xTitle&&h(String(o.xTitle),(o.plotL+o.plotR)/2,o.plotB+32,"middle",d,12,600,"apexcharts-unit-axis-title"),o.yTitle){const p=We.createElementNS(r,"text");p.setAttribute("class","apexcharts-unit-axis-title");const g=14,m=(o.plotT+o.plotB)/2;p.setAttribute("x",String(g)),p.setAttribute("y",String(m)),p.setAttribute("text-anchor","middle"),p.setAttribute("font-size","12px"),p.setAttribute("font-family",i.config.chart.fontFamily||"inherit"),p.setAttribute("font-weight","600"),p.setAttribute("fill",d),p.setAttribute("transform",`rotate(-90 ${g} ${m})`),p.textContent=String(o.yTitle),a.node.appendChild(p)}e.add(a);return}if(o.orientation==="vertical"){if(o.ticks.forEach(p=>{const g=o.plotY(p);o.gridlines&&f(o.plotL,g,o.plotR,g,s);const m=o.formatter?String(o.formatter(p)):this._formatTick(p);h(m,o.plotL-8,g,"end",d,11,400,"apexcharts-unit-tick")}),f(o.plotL,o.plotT,o.plotL,o.plotB,l),o.valueTitle){const p=We.createElementNS(r,"text");p.setAttribute("class","apexcharts-unit-axis-title");const g=14,m=(o.plotT+o.plotB)/2;p.setAttribute("x",String(g)),p.setAttribute("y",String(m)),p.setAttribute("text-anchor","middle"),p.setAttribute("font-size","12px"),p.setAttribute("font-family",i.config.chart.fontFamily||"inherit"),p.setAttribute("font-weight","600"),p.setAttribute("fill",d),p.setAttribute("transform",`rotate(-90 ${g} ${m})`),p.textContent=String(o.valueTitle),a.node.appendChild(p)}o.lanes.forEach(p=>{const g=u||i.globals.colors[p.i]||i.globals.colors[0]||"#008FFB";h(p.name,p.cx,o.plotB+16,"middle",g,12,600,"apexcharts-unit-lane-label")}),e.add(a);return}o.ticks.forEach((p,g)=>{const m=o.plotX(p);o.gridlines&&f(m,o.plotT,m,o.plotB,s);const v=o.formatter?String(o.formatter(p)):this._formatTick(p),b=g===0?"start":g===o.ticks.length-1?"end":"middle";h(v,m,o.plotB+14,b,d,11,400,"apexcharts-unit-tick")}),f(o.plotL,o.plotB,o.plotR,o.plotB,l),o.xTitle&&h(String(o.xTitle),(o.plotL+o.plotR)/2,o.plotB+32,"middle",d,12,600,"apexcharts-unit-axis-title"),o.plotL>12&&o.lanes.forEach(p=>{const g=u||i.globals.colors[p.i]||i.globals.colors[0]||"#008FFB";h(p.name,o.plotL-8,p.cy,"end",g,12,600,"apexcharts-unit-lane-label")}),e.add(a)}_formatTick(e){if(!isFinite(e))return"";const n=Math.abs(e);return n>=1e6?`${+(e/1e6).toFixed(1)}M`:n>=1e4?`${+(e/1e3).toFixed(1)}k`:Number.isInteger(e)?String(e):String(+e.toFixed(2))}_largestRemainder(e,n){const i=e.reduce((u,d)=>u+d,0);if(i<=0||n<=0)return e.map(()=>0);const o=e.map(u=>u/i*n),r=o.map(u=>Math.floor(u)),a=r.reduce((u,d)=>u+d,0),s=Math.max(0,n-a),l=o.map((u,d)=>({i:d,frac:u-Math.floor(u)})).sort((u,d)=>d.frac-u.frac),c=r.slice();for(let u=0;u0?e.sizeByValue.maxRadius:null:typeof e.size=="number"&&e.size>0?e.size:null}_bubbleActive(e){const n=e.sizeByValue;return!!(n&&n.enabled&&e.shape!=="image"&&e.shape!=="square")}_unitValueOf(e){if(typeof e=="number")return e;if(e&&typeof e=="object"){const n=e.value!=null?e.value:e.y;return typeof n=="number"?n:null}return null}_radiusForValue(e,n){if(e==null||!isFinite(e))return n.minR;const i=n.max>n.min?(e-n.min)/(n.max-n.min):1,o=Math.max(0,Math.min(1,i));if(n.scale==="linear")return n.minR+o*(n.maxR-n.minR);const r=n.minR*n.minR,a=n.maxR*n.maxR;return Math.sqrt(r+o*(a-r))}_bubbleStats(e,n,i){if(!this._bubbleActive(n))return null;let o=1/0,r=-1/0;if(e.forEach(c=>{c&&c.forEach(u=>{const d=this._unitValueOf(u);d!=null&&isFinite(d)&&(dr&&(r=d))})}),o===1/0||r0?e.spacing:1,r=this._fixedRadius(e);return r?2*r*o:n/(Math.sqrt(Math.max(1,i))+.5)}_dotRadiusFromStep(e,n){const i=n.spacing>0?n.spacing:1,o=this._fixedRadius(n);return o||Math.max(1,e/(2*i))}_isCorner(e){return e.shape==="square"||e.shape==="image"}_halfExtent(e,n){if(e.shape==="image"&&e.image)return{hx:(e.image.width||20)/2,hy:(e.image.height||20)/2};const i=n??this._lastDotR;return{hx:i,hy:i}}_place(e,n,i,o){const r=n;r.pk===M0?e.setAttribute("transform","translate("+(i-r.ox)+","+(o-r.oy)+r.tail):r.pk===vM?(e.setAttribute("x",String(i-r.hx)),e.setAttribute("y",String(o-r.hy))):(e.setAttribute("cx",String(i)),e.setAttribute("cy",String(o)))}_baseSpec(e,n){const i=n??this._lastDotR;if(!this._isCorner(e))return{pk:bh,r:i};const{hx:o,hy:r}=this._halfExtent(e,i);return{pk:vM,hx:o,hy:r,r:i}}_resolveMark(e){if(e==null)return null;if(typeof e=="object")return gM(e);if(typeof e!="string"||!e)return null;const n=e.trim();if(n[0]==="M"||n[0]==="m")return gM(n);const i=RCe(n);return i||(this._markWarned||(this._markWarned=new Set),this._markWarned.has(n)||(this._markWarned.add(n),console.warn(`[ApexCharts] unit chart: no mark named "${n}" is registered. Register one with ApexCharts.registerUnitMark("${n}", pathData), or import a catalog from 'apexcharts/pictograms'.`)),null)}_glyphSpec(e,n,i){const o=Math.round(n*10)/10,r=e.name+"|"+e.path.length+"|"+o,a=this._specCache.get(r);if(a)return a;const s=e.viewBox||[0,0,100,100],l=Math.max(0,Math.min(.9,i.padding||0)),c=typeof i.scale=="number"&&i.scale>0?i.scale:1,u=2*o*(1-l)*c,d=i.fit==="width"?u/s[2]:i.fit==="height"?u/s[3]:u/Math.max(s[2],s[3]),f=Object.freeze({pk:M0,mark:e,d:e.path,fillRule:e.fillRule,s:d,ox:(s[0]+s[2]/2)*d,oy:(s[1]+s[3]/2)*d,tail:") scale("+d+")",r:o});return this._specCache.set(r,f),f}_markSpecFor(e,n,i,o){if(e.shape!=="pictogram")return this._baseSpec(e,o);const r=e.pictogram||{},a=n&&typeof n=="object"?n.mark:void 0,s=Array.isArray(r.mark)?r.mark[i%r.mark.length]:r.mark,l=this._resolveMark(a??s);return l?this._glyphSpec(l,o,r):this._baseSpec(vt(Ye({},e),{shape:r.fallback==="square"?"square":"circle"}),o)}_drawDot(e,n,i,o,r,a,s){const l=this.w,c=l.config.stroke.show?l.config.stroke.width:0,u=Array.isArray(l.globals.stroke.colors)&&l.globals.stroke.colors[r]||"none",d=typeof l.config.fill.opacity=="number"?l.config.fill.opacity:1;let f;if(s&&s.pk===M0)f=l.dom.Paper.path(s.d),f.node.setAttribute("fill",o),s.fillRule==="evenodd"&&f.node.setAttribute("fill-rule","evenodd"),d<1&&f.node.setAttribute("fill-opacity",String(d)),f.node.setAttribute("data:r",String(s.r));else if(n.shape==="image"&&n.image&&n.image.src){const h=n.image.width||20,p=n.image.height||20;f=l.dom.Paper.image(n.image.src),f.node.setAttribute("width",String(h)),f.node.setAttribute("height",String(p)),f.node.setAttribute("preserveAspectRatio","xMidYMid meet"),n.image.tint&&f.node.setAttribute("filter",`url(#${this._tintFilter(o)})`)}else if(n.shape==="square"){const h=i*2;f=e.drawRect(0,0,h,h,n.borderRadius||0,o,1,c,u),f.node.setAttribute("fill",o),d<1&&f.node.setAttribute("fill-opacity",String(d))}else f=e.drawCircle(i,{fill:o,"stroke-width":c,stroke:u}),f.node.setAttribute("fill",o),d<1&&f.node.setAttribute("fill-opacity",String(d));return f.node.classList.add("apexcharts-unit-area"),f.node.setAttribute("i",String(r)),f.node.setAttribute("j",String(a)),f}_tintFilter(e){const n=this.w,i="http://www.w3.org/2000/svg",o=String(e).replace(/[^a-zA-Z0-9]/g,""),r=`apexcharts-unit-tint-${n.globals.chartID}-${o}`,a=n.dom.Paper.node;if(a.querySelector(`#${r}`))return r;let s=a.querySelector("defs");s||(s=We.createElementNS(i,"defs"),a.insertBefore(s,a.firstChild));const l=We.createElementNS(i,"filter");l.setAttribute("id",r),l.setAttribute("x","0%"),l.setAttribute("y","0%"),l.setAttribute("width","100%"),l.setAttribute("height","100%");const c=We.createElementNS(i,"feFlood");c.setAttribute("flood-color",e),c.setAttribute("result","flood");const u=We.createElementNS(i,"feComposite");return u.setAttribute("in","flood"),u.setAttribute("in2","SourceAlpha"),u.setAttribute("operator","in"),l.appendChild(c),l.appendChild(u),s.appendChild(l),r}_placeDot(e,n,i,o,r){this._place(e,r||this._baseSpec(n),i,o)}_rgb(e){if(typeof e!="string")return null;let n=e.trim();if(n[0]==="#"){n.length===4&&(n="#"+n[1]+n[1]+n[2]+n[2]+n[3]+n[3]);const o=parseInt(n.slice(1,7),16);return isNaN(o)?null:[o>>16&255,o>>8&255,o&255]}const i=n.match(/rgba?\(([^)]+)\)/);if(i){const o=i[1].split(",").map(r=>parseFloat(r));if(o.length>=3&&o.every(r=>!isNaN(r)))return[o[0],o[1],o[2]]}return null}_shouldAnimate(){const e=this.w,n=e.config.chart.animations;return!(!Ot.isBrowser()||!n||n.enabled===!1||e.globals.shouldAnimate===!1||e.globals.resized&&!e.globals.dataChanged||n.respectReducedMotion&&u$())}_seedSprings(e,n,i){const[o,r]=zCe(n.spring,i),a=this.ctx?this.ctx._unitSprings:null,s=new Map;for(let l=0;l1?p/(a-1)*r:0;const s=i.gather||{},l=s.motion||"auto";l==="spring"||l==="auto"&&(!s.easing||s.easing==="outCubic")?this._seedSprings(e,s,o):this.ctx&&(this.ctx._unitSprings=null);for(let p=0;p{if(this.w.globals.isDestroyed){this.w.globals.unitGatherRAF=null,this.w.globals.animationEnded=!0;return}const g=Math.min(BCe,Math.max(0,(p-f)/1e3));f=p;let m=!0;for(let v=0;v=0&&!b.released&&(fM(b.sx,b.x),fM(b.sy,b.y),b.released=!0);const _=dM(b.sx,g),P=dM(b.sy,g);(!b.released||!_||!P)&&(m=!1),$=b.sx.value,S=b.sy.value}else{const _=u(w);$=b.cx0+(b.x-b.cx0)*_,S=b.cy0+(b.y-b.cy0)*_}if(this._place(b.node,b.spec,$,S),b.isEnter&&(b.node.style.opacity=String(Math.min(1,w*2.5))),b._c0&&b._c1){const _=Math.round(b._c0[0]+(b._c1[0]-b._c0[0])*x),P=Math.round(b._c0[1]+(b._c1[1]-b._c0[1])*x),T=Math.round(b._c0[2]+(b._c1[2]-b._c0[2])*x);b.node.setAttribute("fill",`rgb(${_},${P},${T})`)}b.spec.pk===bh&&b.r0!=null&&b.r1!=null&&b.r0!==b.r1&&b.node.setAttribute("r",String(b.r0+(b.r1-b.r0)*x)),w<1&&(m=!1)}if(m){for(let v=0;v=o))break;return r}_runExits(e,n,i){const o=this.w,r=new Be(o,this.ctx),a=this._lastDotR,s=o.layout.gridWidth/2,l=o.layout.gridHeight/2,c=i.layout==="grid"||i.layout==="scatter"||i.layout==="arc"||i.layout==="custom"?0:.35,u=[];if(n.forEach(p=>{const g=p.r!=null?p.r:a,m=p.spec||this._baseSpec(i,g),v=this._drawDot(r,i,g,p.fill,0,0,m);v.node.classList.add("apexcharts-unit-exit"),this._place(v.node,m,p.x,p.y),e.add(v),u.push({node:v.node,x0:p.x,y0:p.y,spec:m})}),!this._shouldAnimate()){u.forEach(p=>p.node.remove());return}const d=Math.max(1,o.config.chart.animations.speed||800);this.w.globals.unitExitRAF!=null&&(We.cancelAnimationFrame(this.w.globals.unitExitRAF),this.w.globals.unitExitRAF=null);const f=performance.now(),h=p=>{if(this.w.globals.isDestroyed){this.w.globals.unitExitRAF=null;return}const g=Math.max(0,Math.min(1,(p-f)/d)),m=E0(g);for(let v=0;v0?n/i*100:0,l=o.clusterLabels,c=typeof l.formatter=="function"?l.formatter(a,{seriesIndex:e,value:n,percent:s,w:r}):`${a} ${s.toFixed(1)}%`;return String(c).split(` -`)}_outerLabelGutter(e,n){const i=this.w,o=n.clusterLabels,r=o.external.connector||{},a=e.reduce((f,h)=>f+h,0),s=[];if(e.forEach((f,h)=>{f>0&&s.push(...this._outerLabelLines(h,f,a,n))}),!s.length)return 0;const l=cCe(i,s,{fontSize:o.fontSize,fontFamily:o.fontFamily||i.config.chart.fontFamily}),c=r.gap!=null?r.gap:8,u=r.length!=null?r.length:22,d=l+c+u+8+Math.abs(parseFloat(o.external.offsetX)||0);return Math.min(d,i.layout.gridWidth*.25)}_drawOuterLabels(e,n,i,o,r,a){const s=this.w;if(!Ot.isBrowser())return;const l=r.clusterLabels,c=l.external,u=c.connector||{},d=u.gap!=null?u.gap:8,f=u.length!=null?u.length:22,h=parseFloat(c.offsetX)||0,p=parseFloat(c.offsetY)||0,g=s.layout.gridWidth,m=s.layout.gridHeight,v=this._lastDotR,b=n.filter(I=>I.dots.length>0);if(!b.length)return;let y=0,w=0;if(b.length>1){const I=b.map(E=>E.cx),k=b.map(E=>E.cy);y=Math.max(...I)-Math.min(...I),w=Math.max(...k)-Math.min(...k)}const x=y>w,$=parseFloat(l.fontSize)||13,S=Math.round($*1.35),_=[];if(b.slice().sort((I,k)=>I.cy-k.cy).forEach((I,k)=>{const E=this._outerLabelLines(I.i,i[I.i],o,r);if(!E.some(W=>W!==""))return;const R=x?I.cx>=g/2?"right":"left":k%2===0?"right":"left",D=R==="right"?1:-1;let F=I.dots[0],N=-1/0;I.dots.forEach(W=>{const j=D*W.x-.75*Math.abs(W.y-I.cy);j>N&&(N=j,F=W)});const B={x:F.x+D*(F.r||v),y:F.y},z={x:B.x+D*d,y:B.y};_.push({i:I.i,lines:E,anchor:B,elbow:z,labelX:z.x+D*f+h,idealY:B.y+p,labelY:B.y+p,side:R})}),!_.length)return;const T=_.reduce((I,k)=>Math.max(I,k.lines.length),1)*S,O=T/2;["left","right"].forEach(I=>{jN(_.filter(k=>k.side===I),T+2,m-O,O)});const M=new Be(s,this.ctx).group({class:"apexcharts-unit-outer-labels"});if(a){const I=Math.max(1,s.config.chart.animations.speed||800);M.node.classList.add("apexcharts-unit-label-delay"),M.node.style.animationDelay=`${Math.min(I*.45,600)/1e3}s`}_.forEach(I=>{const k=s.globals.colors[I.i]||s.globals.colors[0]||"#008FFB";M.add(WN(s,{lines:I.lines,lineHeight:S,anchor:I.anchor,elbow:I.elbow,labelX:I.labelX,labelY:I.labelY,side:I.side,connector:{show:u.show!==!1,width:u.width!=null?u.width:1.5,color:u.color||k},style:{fontSize:l.fontSize,fontFamily:l.fontFamily||s.config.chart.fontFamily,fontWeight:l.fontWeight},foreColor:l.color||s.config.chart.foreColor,groupClass:"apexcharts-unit-outer-label-group",textClass:"apexcharts-unit-outer-label",connectorClass:"apexcharts-unit-label-connector"}))}),e.add(M)}_drawClusterLabel(e,n,i,o,r,a){const s=this.w;if(!Ot.isBrowser())return;const l="http://www.w3.org/2000/svg",c=s.seriesData.seriesNames[n.i]||`series-${n.i+1}`,u=o>0?i/o*100:0,d=r.clusterLabels,f=parseFloat(d.fontSize)||13;let h;typeof d.formatter=="function"?h=d.formatter(c,{seriesIndex:n.i,value:i,percent:u,w:s}):h=`${c} (${u.toFixed(1)}%)`;const p=typeof h=="string"?h:String(h),g=We.createElementNS(l,"text");g.setAttribute("class","apexcharts-unit-label"),g.setAttribute("text-anchor","middle"),g.setAttribute("font-size",`${f}px`),g.setAttribute("font-family",d.fontFamily||s.config.chart.fontFamily||"inherit"),g.setAttribute("font-weight",String(d.fontWeight||600)),g.setAttribute("fill",d.color||a);const m=d.position==="bottom",v=n.outerR+f*.6+3+(d.offsetY||0),b=p.length*f*.55;if(!m&&!n.flat&&d.curved!==!1&&b<=Math.PI*v*.95){const w=n.cy,x=n.cx-v,$=n.cx+v,S=`M ${x} ${w} A ${v} ${v} 0 0 1 ${$} ${w}`,_=`apexcharts-unit-label-${s.globals.chartID}-${n.i}`,P=We.createElementNS(l,"path");P.setAttribute("id",_),P.setAttribute("d",S),P.setAttribute("fill","none"),P.setAttribute("stroke","none");const T=We.createElementNS(l,"textPath");T.setAttribute("href",`#${_}`),T.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",`#${_}`),T.setAttribute("startOffset","50%"),T.textContent=p,g.appendChild(T),e.node.appendChild(P)}else{g.setAttribute("x",String(n.cx));const w=m?n.cy+n.outerR+f+6+(d.offsetY||0):n.cy-n.outerR-6-(d.offsetY||0);g.setAttribute("y",String(w)),g.textContent=p}e.node.appendChild(g)}}const yh=Math.PI/180,bM=180/Math.PI,I0="http://www.w3.org/2000/svg",$l="http://www.w3.org/1999/xhtml",du=(t,e,n)=>t+(e-t)*n;class WCe{constructor(e,n){this.ctx=n,this.w=e;const i=e.config;this.cfg=i.plotOptions.sunburst,this.strokeWidth=i.stroke.show?i.stroke.width:0,this.strokeColor=Array.isArray(i.stroke.colors)?i.stroke.colors[0]:i.stroke.colors||"#fff",this.startAngle=this.cfg.startAngle,this.endAngle=this.cfg.endAngle,this.maxDepth=0,this.centerX=0,this.centerY=0,this.maxRadius=0,this.total=1,this._focusMaxDepth=0,this._focus=null,this._zoomGen=0,this._roots=[],this._nodesAll=[],this._innerR=()=>0,this._outerR=()=>0,this._tooltipEl=null,this._lblSeq=0,this._morphLeafIndex=0,this._graphics=null,this._ringsG=null,this._labelsG=null}draw(e){const n=this.w,i=new Be(this.w);this._graphics=i;const o=i.group({class:"apexcharts-sunburst"});if(n.globals.noData||!e||!e.length)return o;const r=n.layout.gridWidth,a=n.layout.gridHeight;if(this.centerX=r/2+(this.cfg.offsetX||0),this.centerY=a/2+(this.cfg.offsetY||0),this.maxRadius=Math.min(r,a)/2.05-this.strokeWidth-(n.config.chart.sparkline.enabled?0:n.config.chart.dropShadow.blur),this.maxRadius<5||(this._roots=this._buildHierarchy(),!this._roots.length))return o;this._roots.forEach(u=>this._fillValues(u)),this._validateStrict(),this._nodesAll=[];const s=n.globals.colors||[];this._roots.forEach((u,d)=>{this._colorPass(u,u.color||s[d%s.length]||"#008FFB")}),this.total=this._roots.reduce((u,d)=>u+Math.max(0,d.value),0)||1,this._ringsG=i.group({class:"apexcharts-sunburst-rings"}),this._labelsG=i.group({class:"apexcharts-sunburst-labels"}),o.add(this._ringsG),o.add(this._labelsG),this._focus=null,this._relayout(this._focus);const l=n.config.chart.animations;let c="none";return l.enabled&&(n.globals.dataChanged?l.dynamicAnimation.enabled&&(c="update"):n.globals.resized||(c="intro")),this._applyLayout(c),this._renderBreadcrumb(),o}_buildHierarchy(){return SCe(this.w)}_fillValues(e){p$(e)}_validateStrict(){if(this.cfg.partition!=="strict")return;let e=!1;const n=i=>{if(i.children&&i.children.length){const o=i.children.reduce((r,a)=>r+Math.max(0,a.value||0),0);!e&&i.value!=null&&Math.abs(o-i.value)>.5&&(console.warn(`ApexCharts sunburst: partition 'strict' but "${i.name}" (${i.value}) != sum of its children (${o}). Angles are normalized to fill the wedge.`),e=!0),i.children.forEach(n)}};this._roots.forEach(n)}_colorPass(e,n){e._color=e.color||n,this._nodesAll.push(e),e.children&&e.children.forEach(i=>this._colorPass(i,i.color||this._lighten(e._color,this.cfg.tint)))}_relayout(e){if(this._nodesAll.forEach(a=>{a._show=!1}),this._focusMaxDepth=0,e)this._placeVis(e,0,this.startAngle,this.endAngle,e._parent);else{const a=this._roots.reduce((l,c)=>l+Math.max(0,c.value),0)||1;let s=this.startAngle;this._roots.forEach(l=>{const c=(this.endAngle-this.startAngle)*Math.max(0,l.value)/a;this._placeVis(l,0,s,s+c,null),s+=c})}const n=this._parseSize(this.cfg.innerSize,this.maxRadius),i=this._focusMaxDepth+1,o=(this.maxRadius-n)/i,r=i>1?1:0;this._innerR=a=>n+a*o+(a>0?r/2:0),this._outerR=a=>n+(a+1)*o-r/2,this._nodesAll.forEach(a=>{a._show&&(a._iR=this._innerR(a._vDepth),a._oR=a._leaf&&this.cfg.leaf==="extend"&&a._vDepththis._focusMaxDepth&&(this._focusMaxDepth=n),!e._leaf){const a=e.children.reduce((l,c)=>l+Math.max(0,c.value),0)||1;let s=i;e.children.forEach(l=>{const c=(o-i)*Math.max(0,l.value)/a;this._placeVis(l,n+1,s,s+c,e),s+=c})}}_applyLayout(e){var n;const o=this.w.config.chart.animations,r=o.enabled?e==="none"?0:e==="update"?o.dynamicAnimation.speed||350:o.speed||500:0,a=++this._zoomGen,s=(n=this.ctx)==null?void 0:n.morphTypeChange,l=!!s&&typeof s.isActive=="function"&&s.isActive()&&typeof s.getInitialPathAt=="function",c=l?s.getSpeed():0;this._morphLeafIndex=0;const u=e==="update"?this.ctx._sunburstPrevGeoms:null;this._nodesAll.forEach(f=>{if(f._show){const h={a0:f._a0,a1:f._a1,iR:f._iR,oR:f._oR};f._el||(f._el=this._createArcEl(f));const p=l?this._morphSourceFor(f):null;if(p&&c>0)this._morphArcFrom(f,p,h,c,a);else if((e==="intro"||l)&&r>0)this._sweepArc(f,h,l?c:r,a);else{let g,m=!1;if(f._cur)g=f._cur;else if(u&&u.get(f._key))g=u.get(f._key);else{const v=(h.a0+h.a1)/2;g={a0:v,a1:v,iR:h.iR,oR:h.iR},m=!0}this._animateArc(f,g,h,r,!1,m,a)}}else if(f._el&&f._cur){const h=(f._cur.a0+f._cur.a1)/2,p={a0:h,a1:h,iR:f._cur.iR,oR:f._cur.iR};this._animateArc(f,f._cur,p,r,!0,!1,a)}});const d=new Map;this._nodesAll.forEach(f=>{f._show&&d.set(f._key,{a0:f._a0,a1:f._a1,iR:f._iR,oR:f._oR})}),this.ctx._sunburstPrevGeoms=d,this._renderLabels(r)}_morphSourceFor(e){const n=this.ctx,i=n&&n.morphTypeChange;return i?typeof i.hasKeyedMarks=="function"&&i.hasKeyedMarks()&&typeof i.getInitialPathForKey=="function"?i.getInitialPathForKey(nd(e._key)):e.children&&e.children.length?null:i.getInitialPathAt(this._morphLeafIndex++):null}_morphArcFrom(e,n,i,o,r){const a=e._el,s=this._arcPath(i.iR,i.oR,i.a0,i.a1,this.cfg.borderRadius);a.node.style.display="",a.attr({d:n,opacity:1}),e._cur=i,this._zoomGen===r&&new Gs(this.w,this.ctx).morphSVG(a,0,null,e._color,n,s,o,0)}_sweepArc(e,n,i,o){const r=e._el,a=this.cfg.borderRadius,s=this.startAngle,l=this.endAngle;r.node.style.display="",r.attr({d:"",opacity:1}),r.animate(i).during(c=>{if(this._zoomGen!==o)return;const u=s+(l-s)*c;if(u<=n.a0+.01){r.attr({d:""});return}const d=Math.min(n.a1,u);r.attr({d:this._arcPath(n.iR,n.oR,n.a0,d,a)}),e._cur={a0:n.a0,a1:d,iR:n.iR,oR:n.oR}}).after(()=>{this._zoomGen===o&&(e._cur=n)})}_createArcEl(e){const n=this._graphics.drawPath({d:"",fill:e._color,stroke:this.strokeColor,strokeWidth:this.strokeWidth,fillOpacity:1,classes:"apexcharts-sunburst-arc"}),i=n.node;return i.setAttribute("data:name",e.name),i.setAttribute("data:value",String(e.value)),i.setAttribute("data:key",nd(e._key)),i.setAttribute("data:leaf",String(!(e.children&&e.children.length))),this._attachTooltip(i,e),Ot.isBrowser()&&(i.addEventListener("click",()=>this._zoomTo(e)),i.style.cursor="pointer"),this._ringsG.add(n),n}_animateArc(e,n,i,o,r,a,s){const l=e._el,c=this.cfg.borderRadius;if(l.attr({fill:e._color}),o===0){l.attr({d:this._arcPath(i.iR,i.oR,i.a0,i.a1,c),opacity:r?0:1}),l.node.style.display=r?"none":"",e._cur=r?null:i;return}l.node.style.display="";const u=r?Number(l.attr("opacity"))||1:a?0:1,d=r?0:1;l.attr({opacity:u}),l.animate(o).during(f=>{if(this._zoomGen!==s)return;const h=du(n.a0,i.a0,f),p=du(n.a1,i.a1,f),g=du(n.iR,i.iR,f),m=du(n.oR,i.oR,f);l.attr({d:this._arcPath(g,m,h,p,c),opacity:du(u,d,f)}),e._cur={a0:h,a1:p,iR:g,oR:m}}).after(()=>{this._zoomGen===s&&(r?(l.node.style.display="none",e._cur=null):e._cur=i)})}_renderLabels(e){const n=this._labelsG;for(;n.node.firstChild;)n.node.removeChild(n.node.firstChild);this.cfg.dataLabels.show&&(this._nodesAll.forEach(i=>{i._show&&(i._a1-i._a00?(n.attr({opacity:0}),n.animate(250,e).attr({opacity:1})):n.attr({opacity:1}))}_renderCurvedLabel(e){if(!Ot.isBrowser())return;const n=this.cfg.dataLabels.style,i=this.w,o=(e._iR+e._oR)/2,r=(e._a0+e._a1)/2,a=r>90&&r<270,s=Math.min(o>0?4/o*bM:0,(e._a1-e._a0)/2),l=a?e._a1-s:e._a0+s,c=a?e._a0+s:e._a1-s,u=this._ptAt(o,l),d=this._ptAt(o,c),f=Math.abs(c-l)>180?1:0,h=a?0:1,p=`apx-sb-lbl-${i.globals.cuid}-${this._lblSeq++}`,g=We.createElementNS(I0,"path");g.setAttribute("id",p),g.setAttribute("d",`M ${u.x} ${u.y} A ${o} ${o} 0 ${f} ${h} ${d.x} ${d.y}`),g.setAttribute("fill","none"),g.setAttribute("stroke","none");const m=n.colors,v=(Array.isArray(m)?m[0]:m)||"#fff",b=We.createElementNS(I0,"text");b.setAttribute("font-size",n.fontSize||"12px"),n.fontFamily&&b.setAttribute("font-family",n.fontFamily),b.setAttribute("font-weight",String(n.fontWeight||400)),b.setAttribute("fill",v),b.setAttribute("dominant-baseline","central"),b.style.pointerEvents="none";const y=We.createElementNS(I0,"textPath");y.setAttribute("href","#"+p),y.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href","#"+p),y.setAttribute("startOffset","50%"),y.setAttribute("text-anchor","middle"),y.textContent=this._truncate(e.name,o,e._a1-e._a0,n.fontSize),b.appendChild(y),this._labelsG.node.appendChild(g),this._labelsG.node.appendChild(b)}_truncate(e,n,i,o){const r=n*i*yh-8,a=(parseFloat(o)||12)*.58,s=Math.floor(r/a);return s>=e.length?e:s<=1?"":e.slice(0,Math.max(1,s-1))+"…"}_zoomTo(e){if(this.cfg.zoomOnClick===!1)return;const n=e===this._focus?e._parent||null:e;n!==this._focus&&(this._focus=n&&!(n.children&&n.children.length)?n._parent||null:n,this._relayout(this._focus),this._applyLayout("zoom"),this._renderBreadcrumb())}_focusChain(){const e=[];let n=this._focus;for(;n;)e.unshift(n),n=n._parent;return e}_renderBreadcrumb(){if(!Ot.isBrowser())return;const n=this.w.dom.elWrap;if(!n)return;const i=n.querySelector(".apexcharts-breadcrumb");if(i&&i.parentNode&&i.parentNode.removeChild(i),!this._focus)return;const o=We.createElementNS($l,"nav");o.setAttribute("class","apexcharts-breadcrumb"),o.setAttribute("aria-label","Sunburst breadcrumb"),o.style.position="absolute",o.style.top="0px",o.style.left="0px";const r=[{name:"All",node:null}].concat(this._focusChain().map(a=>({name:a.name,node:a})));r.forEach((a,s)=>{if(s>0){const c=We.createElementNS($l,"span");c.setAttribute("class","apexcharts-breadcrumb-separator"),c.textContent=" / ",o.appendChild(c)}if(s===r.length-1){const c=We.createElementNS($l,"span");c.setAttribute("class","apexcharts-breadcrumb-item apexcharts-breadcrumb-current"),c.textContent=a.name,o.appendChild(c)}else{const c=We.createElementNS($l,"button");if(c.setAttribute("type","button"),c.setAttribute("class","apexcharts-breadcrumb-item"),s===0){const d=We.createElementNS($l,"span");d.setAttribute("class","apexcharts-breadcrumb-arrow"),d.textContent="←",c.appendChild(d)}const u=We.createElementNS($l,"span");u.setAttribute("class","apexcharts-breadcrumb-label"),u.textContent=a.name,c.appendChild(u),c.addEventListener("click",()=>{this._focus=a.node,this._relayout(this._focus),this._applyLayout("zoom"),this._renderBreadcrumb()}),o.appendChild(c)}}),n.appendChild(o),this._avoidChromeOverlap(o)}_avoidChromeOverlap(e){PN(this.w,e)}_ptAt(e,n){return{x:this.centerX+e*Math.cos((n-90)*yh),y:this.centerY+e*Math.sin((n-90)*yh)}}_arcPath(e,n,i,o,r){if(n<=e+.01)return"";let a=o-i;const s=this.cfg.spacing;if(s>0&&a>0&&n>0){const f=s/n*bM,h=Math.min(f/2,Math.max(0,a/2-.25));i+=h,o-=h,a=o-i}if(a<=0)return"";const l=a*yh,c=this.centerX,u=this.centerY;let d=r;return d=Math.min(d,l*e/2,l*n/2,(n-e)/2),d>.5?cw({cx:c,cy:u,rIn:e,rOut:n,a0:i,a1:o,r:d,spanDeg:a}):VN({cx:c,cy:u,rIn:e,rOut:n,a0:i,a1:o,spanDeg:a})}_tip(){return this._tooltipEl||(this._tooltipEl=this.w.dom.baseEl.querySelector(".apexcharts-tooltip")),this._tooltipEl}_attachTooltip(e,n){!this.w.config.tooltip.enabled||!Ot.isBrowser()||(e.addEventListener("mouseenter",i=>this._showTooltip(i,n)),e.addEventListener("mousemove",i=>this._positionTooltip(i)),e.addEventListener("mouseleave",()=>this._hideTooltip()))}_showTooltip(e,n){const i=this._tip();if(!i)return;const o=this.w,r=(n.value/this.total*100).toFixed(1),a=n._parent?n._parent.value:this.total,s=a>0?(n.value/a*100).toFixed(1):r,l=o.config.tooltip.fillSeriesColor?`background-color:${n._color};`:"";i.innerHTML=`
${n.name}: ${n.value} (${s}% of parent, ${r}% of total)
`,i.classList.add("apexcharts-active"),i.style.opacity="1",this._positionTooltip(e)}_positionTooltip(e){const n=this._tip();if(!n)return;const i=this.w.dom.elWrap.getBoundingClientRect(),o=n.offsetWidth,r=n.offsetHeight,a=12;let s=e.clientX-i.left+a;s+o>i.width&&(s=e.clientX-i.left-o-a),s=Math.max(0,Math.min(s,i.width-o));let l=e.clientY-i.top+a;l+r>i.height&&(l=e.clientY-i.top-r-a),l=Math.max(0,Math.min(l,i.height-r)),n.style.left=s+"px",n.style.top=l+"px"}_hideTooltip(){const e=this._tip();e&&(e.classList.remove("apexcharts-active"),e.style.opacity="0")}_parseSize(e,n){if(typeof e=="number")return e;const i=String(e).trim();if(i.endsWith("%"))return parseFloat(i)/100*n;const o=parseFloat(i);return isNaN(o)?.15*n:o}_lighten(e,n){if(typeof e!="string"||e[0]!=="#")return e;let i=e.slice(1);if(i.length===3&&(i=i.split("").map(l=>l+l).join("")),i.length!==6)return e;const o=parseInt(i,16);if(isNaN(o))return e;let r=o>>16&255,a=o>>8&255,s=o&255;return r=Math.round(r+(255-r)*n),a=Math.round(a+(255-a)*n),s=Math.round(s+(255-s)*n),"#"+((1<<24)+(r<<16)+(a<<8)+s).toString(16).slice(1)}}Vn.use({line:uu,area:uu,scatter:uu,bubble:uu,rangeArea:uu,bar:Bn,column:Bn,barStacked:ZSe,rangeBar:mCe,candlestick:nM,boxPlot:nM,violin:iCe,pie:fp,donut:fp,polarArea:fp,radialBar:gCe,radar:pCe,heatmap:rCe,treemap:PCe,unit:HCe,sunburst:WCe});Object.defineProperty(Vn,"__internals",{value:Qwe,enumerable:!1,writable:!1,configurable:!1});const yM=["animationEnd","beforeMount","mounted","updated","click","mouseMove","mouseLeave","legendClick","markerClick","selection","dataPointSelection","dataPointMouseEnter","dataPointMouseLeave","beforeZoom","beforeResetZoom","zoomed","scrolled","brushScrolled"],Hg=oe({name:"apexchart",props:{options:{type:Object},type:{type:String},series:{type:Array,required:!0},width:{default:"100%"},height:{default:"auto"}},emits:yM,setup(t,{emit:e}){const n=ae(null),i=ae(null),o=k=>k&&typeof k=="object"&&!Array.isArray(k)&&k!=null,r=(k,E)=>{typeof Object.assign!="function"&&function(){Object.assign=function(D){if(D==null)throw new TypeError("Cannot convert undefined or null to object");let F=Object(D);for(let N=1;N{o(E[D])?D in k?R[D]=r(k[D],E[D]):Object.assign(R,{[D]:E[D]}):Object.assign(R,{[D]:E[D]})}),R},a=k=>JSON.parse(JSON.stringify(k)),s=async()=>{if(await pt(),i.value)return;const k={chart:{type:t.type||t.options.chart&&t.options.chart.type||"line",height:t.height,width:t.width,events:{}},series:a(t.series)},E=t.options.chart?t.options.chart.events:null;yM.forEach(D=>{let F=(...N)=>e(D,...N);k.chart.events[D]=(...N)=>{F(...N),E&&E.hasOwnProperty(D)&&E[D](...N)}});const R=r(t.options,k);return i.value=new Vn(n.value,R),i.value.render()},l=()=>(c(),s()),c=()=>{i.value.destroy(),i.value=null},u=(k,E)=>i.value.updateSeries(k,E),d=(k,E,R,D)=>i.value.updateOptions(k,E,R,D),f=k=>i.value.toggleSeries(k),h=k=>{i.value.showSeries(k)},p=k=>{i.value.hideSeries(k)},g=(k,E)=>i.value.appendSeries(k,E),m=()=>{i.value.resetSeries()},v=(k,E)=>{i.value.toggleDataPointSelection(k,E)},b=k=>i.value.appendData(k),y=(k,E)=>i.value.zoomX(k,E),w=k=>i.value.dataURI(k),x=k=>i.value.setLocale(k),$=(k,E)=>{i.value.addXaxisAnnotation(k,E)},S=(k,E)=>{i.value.addYaxisAnnotation(k,E)},_=(k,E)=>{i.value.addPointAnnotation(k,E)},P=(k,E)=>{i.value.removeAnnotation(k,E)},T=()=>{i.value.clearAnnotations()};Gd(()=>{window.ApexCharts=Vn}),qe(()=>{n.value=Cn().proxy.$el,s()}),at(()=>{i.value&&c()});const O=fo(t);let M=null;const I=k=>{M||(M={options:!1,series:!1},pt(()=>{const E=M;if(M=null,!i.value){s();return}if(E.options&&E.series){const R=a(t.options);R.series=a(t.series),i.value.updateOptions(R)}else E.options?i.value.updateOptions(a(t.options)):E.series&&i.value.updateSeries(a(t.series))})),M[k]=!0};return ye(O.options,()=>{I("options")}),ye(O.series,()=>{I("series")},{deep:!0}),ye(O.type,()=>{l()}),ye(O.width,()=>{l()}),ye(O.height,()=>{l()}),{chart:i,init:s,refresh:l,destroy:c,updateOptions:d,updateSeries:u,toggleSeries:f,showSeries:h,hideSeries:p,resetSeries:m,zoomX:y,toggleDataPointSelection:v,appendData:b,appendSeries:g,addXaxisAnnotation:$,addYaxisAnnotation:S,addPointAnnotation:_,removeAnnotation:P,clearAnnotations:T,setLocale:x,dataURI:w}},render(){return sr("div",{class:"vue-apexcharts"})}}),jCe=(t,e)=>{const n=t.__vccOpts||t;for(const[i,o]of e)n[i]=o;return n},VCe=oe({name:"apexchart-server",props:{type:{type:String,default:"line"},width:{type:[Number,String],default:400},height:{type:[Number,String],default:300},series:{type:Array,default:()=>[]},options:{type:Object,default:()=>({})},className:{type:String,default:""}},setup(t){const e=ae("");return QI(async()=>{try{const{default:n}=await ze(async()=>{const{default:o}=await import("./apexcharts.ssr.esm-fe46cd2d-9CakV-nF.js");return{default:o}},[]),i=Object.assign({},t.options,{chart:Object.assign({},t.options.chart,{type:t.type,width:t.width,height:t.height}),series:t.series});e.value=await n.renderToHTML(i,{width:t.width,height:t.height})}catch(n){console.error("Failed to render ApexChart on server:",n)}}),{chartHTML:e}}}),XCe=["innerHTML"];function YCe(t,e,n,i,o,r){return zi(),ns("div",{innerHTML:t.chartHTML,class:Xd(t.className)},null,10,XCe)}const xM=jCe(VCe,[["render",YCe]]),wM=oe({name:"apexchart-hydrate",props:{clientOptions:{type:Object,default:()=>({})},selector:{type:String,default:"[data-apexcharts-hydrate]"}},setup(t){let e=[];qe(async()=>{try{const{default:n}=await ze(async()=>{const{default:i}=await import("./apexcharts.ssr.esm-fe46cd2d-9CakV-nF.js");return{default:i}},[]);e=n.hydrateAll(t.selector,t.clientOptions)}catch(n){console.error("Failed to hydrate ApexCharts:",n)}}),at(()=>{e.forEach(n=>{n&&n.destroy&&n.destroy()}),e=[]})},render(){return null}}),GCe=t=>{t.component(Hg.name,Hg),t.component(xM.name,xM),t.component(wM.name,wM)};Hg.install=GCe;const KCe={items_per_page:"/ صفحه",jump_to:"برو به",jump_to_confirm:"تایید",page:"",prev_page:"صفحه قبلی",next_page:"صفحه بعدی",prev_5:"۵ صفحه قبلی",next_5:"۵ صفحه بعدی",prev_3:"۳ صفحه قبلی",next_3:"۳ صفحه بعدی"},UCe={locale:"fa_IR",today:"امروز",now:"اکنون",backToToday:"بازگشت به روز",ok:"باشه",clear:"پاک کردن",month:"ماه",year:"سال",timeSelect:"انتخاب زمان",dateSelect:"انتخاب تاریخ",monthSelect:"یک ماه را انتخاب کنید",yearSelect:"یک سال را انتخاب کنید",decadeSelect:"یک دهه را انتخاب کنید",yearFormat:"YYYY",dateFormat:"M/D/YYYY",dayFormat:"D",dateTimeFormat:"M/D/YYYY HH:mm:ss",monthBeforeYear:!0,previousMonth:"ماه قبل (PageUp)",nextMonth:"ماه بعد (PageDown)",previousYear:"سال قبل (Control + left)",nextYear:"سال بعد (Control + right)",previousDecade:"دهه قبل",nextDecade:"دهه بعد",previousCentury:"قرن قبل",nextCentury:"قرن بعد"},GN={placeholder:"انتخاب زمان",rangePlaceholder:["زمان شروع","زمان پایان"]},SM={lang:A({placeholder:"انتخاب تاریخ",yearPlaceholder:"انتخاب سال",quarterPlaceholder:"انتخاب فصل",monthPlaceholder:"انتخاب ماه",weekPlaceholder:"انتخاب هفته",rangePlaceholder:["تاریخ شروع","تاریخ پایان"],rangeYearPlaceholder:["سال شروع","سال پایان"],rangeMonthPlaceholder:["ماه شروع","ماه پایان"],rangeWeekPlaceholder:["هفته شروع","هفته پایان"]},UCe),timePickerLocale:A({},GN)},Fi="${label} از نوع ${type} معتبر نیست",qCe={locale:"fa",Pagination:KCe,DatePicker:SM,TimePicker:GN,Calendar:SM,global:{placeholder:"لطفاً انتخاب کنید"},Table:{filterTitle:"منوی فیلتر",filterConfirm:"تایید",filterReset:"پاک کردن",filterEmptyText:"بدون فیلتر",emptyText:"بدون داده",selectAll:"انتخاب صفحه‌ی کنونی",selectInvert:"معکوس کردن انتخاب‌ها در صفحه ی کنونی",selectNone:"انتخاب هیچکدام",selectionAll:"انتخاب همه داده‌ها",sortTitle:"مرتب سازی",expand:"باز شدن ردیف",collapse:"بستن ردیف",triggerDesc:"ترتیب نزولی",triggerAsc:"ترتیب صعودی",cancelSort:"لغوِ ترتیبِ داده شده"},Modal:{okText:"تایید",cancelText:"لغو",justOkText:"تایید"},Popconfirm:{okText:"تایید",cancelText:"لغو"},Transfer:{titles:["",""],searchPlaceholder:"جستجو",itemUnit:"عدد",itemsUnit:"عدد",remove:"حذف",selectCurrent:"انتخاب صفحه فعلی",removeCurrent:"پاک کردن انتخاب‌های صفحه فعلی",selectAll:"انتخاب همه",removeAll:"پاک کردن همه انتخاب‌ها",selectInvert:"معکوس کردن انتخاب‌ها در صفحه ی کنونی"},Upload:{uploading:"در حال آپلود...",removeFile:"حذف فایل",uploadError:"خطا در آپلود",previewFile:"مشاهده‌ی فایل",downloadFile:"دریافت فایل"},Empty:{description:"داده‌ای موجود نیست"},Icon:{icon:"آیکن"},Text:{edit:"ویرایش",copy:"کپی",copied:"کپی شد",expand:"توسعه"},PageHeader:{back:"برگشت"},Form:{optional:"(اختیاری)",defaultValidateMessages:{default:"خطا در ${label}",required:"فیلد ${label} اجباریست",enum:"${label} باید یکی از [${enum}] باشد",whitespace:"${label} نمیتواند خالی باشد",date:{format:"ساختار تاریخ در ${label} نامعتبر است",parse:"${label} قابل تبدیل به تاریخ نیست",invalid:"${label} تاریخی نا معتبر است"},types:{string:Fi,method:Fi,array:Fi,object:Fi,number:Fi,date:Fi,boolean:Fi,integer:Fi,float:Fi,regexp:Fi,email:Fi,url:Fi,hex:Fi},string:{len:"${label} باید ${len} کاراکتر باشد",min:"${label} باید حداقل ${min} کاراکتر باشد",max:"${label} باید حداکثر ${max} کاراکتر باشد",range:"${label} باید بین ${min}-${max} کاراکتر باشد"},number:{len:"${label} باید برابر ${len}",min:"${label} حداقل میتواند ${min} باشد",max:"${label} حداکثر میتواند ${max} باشد",range:"${label} باید بین ${min}-${max} باشد"},array:{len:"تعداد ${label} باید ${len} باشد.",min:"تعداد ${label} حداقل باید ${min} باشد",max:"تعداد ${label} حداکثر باید ${max} باشد",range:"مقدار ${label} باید بین ${min}-${max} باشد"},pattern:{mismatch:"الگوی ${label} با ${pattern} برابری نمی‌کند"}}},Image:{preview:"نمایش"}},id={disableCustomizer:!1,disableThemeTour:!0,footerType:"hidden",hideScrollToTop:!1,mainLayoutType:"vertical",navbarColor:"#fff",navbarType:"floating",routerTransition:"zoom-fade",rtl:!0,sidebarCollapsed:!1,theme:"light",userInfoLocalStorageKey:"userInfo"},ZCe={name:"تهران تاج",nameEn:"Tehran Taj",appTitle:"طلای تهران تاج",adminTitle:"تهران تاج — پنل مدیریت",siteUrl:"https://bnk.montzar.ir"},KN="admin-panel:sidebarCollapsed";function JCe(){if(typeof window>"u")return id.sidebarCollapsed;try{const t=window.localStorage.getItem(KN);return t===null?id.sidebarCollapsed:t==="1"}catch{return id.sidebarCollapsed}}const QCe=Nk("layout",{state:()=>({windowWidth:typeof window<"u"?window.innerWidth:0,scrollY:0,theme:id.theme,isSidebarActive:!0,sidebarCollapsed:JCe(),mobileNavOpen:!1}),getters:{isSmallScreen:t=>t.windowWidth<992,isMobile:t=>t.windowWidth<576},actions:{updateWindowWidth(t){this.windowWidth=t},updateWindowScrollY(t){this.scrollY=t},setMobileNavOpen(t){this.mobileNavOpen=t},toggleSidebar(t){this.isSidebarActive=t??!this.isSidebarActive},setSidebarCollapsed(t){if(this.sidebarCollapsed=t,!(typeof window>"u"))try{window.localStorage.setItem(KN,t?"1":"0")}catch{}}}}),e$e=5*60*1e3,CM=219;function t$e(){const t=ae(null),e=ae(!1),n=L(()=>{const s=t.value;return s?(s.history??[]).filter(l=>l.build>CM&&l.build<=s.build):[]});async function i(){if(!t.value)try{const s=await fetch(`/version.json?t=${Date.now()}`,{cache:"no-store"});if(!s.ok)return;const l=await s.json();typeof l.build=="number"&&l.build>CM&&(t.value=l)}catch{}}async function o(){var s,l;e.value=!0;try{const c=await((l=(s=navigator.serviceWorker)==null?void 0:s.getRegistrations)==null?void 0:l.call(s));c&&await Promise.all(c.map(u=>u.unregister()))}catch{}try{if("caches"in window){const c=await caches.keys();await Promise.all(c.map(u=>caches.delete(u)))}}catch{}window.location.reload()}let r;const a=()=>{document.visibilityState==="visible"&&i()};return qe(()=>{i(),r=setInterval(i,e$e),document.addEventListener("visibilitychange",a)}),at(()=>{r&&clearInterval(r),document.removeEventListener("visibilitychange",a)}),{available:t,changes:n,updating:e,applyUpdate:o,check:i}}const n$e={class:"list"},i$e={key:1,class:"lead"},o$e=oe({__name:"AppUpdateGate",setup(t){const{available:e,changes:n,updating:i,applyUpdate:o}=t$e();return(r,a)=>{const s=Iu("a-tag"),l=Iu("a-button"),c=Iu("a-modal");return zi(),cc(c,{open:!!Lt(e),closable:!1,"mask-closable":!1,keyboard:!1,"z-index":2e3,width:"420px",centered:""},{title:ss(()=>[a[0]||(a[0]=Tn(" نسخه‌ی تازه‌ی پنل آماده است ",-1)),Lt(e)?(zi(),cc(s,{key:0,class:"ms-2",color:"blue"},{default:ss(()=>[Tn("نسخه‌ی "+V0(Lt(e).version),1)]),_:1})):xk("",!0)]),footer:ss(()=>[C(l,{type:"primary",block:"",loading:Lt(i),onClick:Lt(o)},{default:ss(()=>[...a[2]||(a[2]=[Tn("به‌روزرسانی",-1)])]),_:1},8,["loading","onClick"])]),default:ss(()=>[Lt(n).length?(zi(),ns(Ge,{key:0},[a[1]||(a[1]=Yl("p",{class:"lead"},"در این نسخه:",-1)),Yl("ul",n$e,[(zi(!0),ns(Ge,null,V$(Lt(n),u=>(zi(),ns(Ge,{key:u.build},[(zi(!0),ns(Ge,null,V$(u.notes,(d,f)=>(zi(),ns("li",{key:u.build+"-"+f},V0(d),1))),128))],64))),128))])],64)):(zi(),ns("p",i$e,"بهبودها و رفع اشکال‌ها.")),a[3]||(a[3]=Yl("p",{class:"hint"},"کار ذخیره‌نشده‌ای اگر در صفحه دارید، پیش از به‌روزرسانی ثبتش کنید.",-1))]),_:1},8,["open"])}}}),r$e=(t,e)=>{const n=t.__vccOpts||t;for(const[i,o]of e)n[i]=o;return n},a$e=r$e(o$e,[["__scopeId","data-v-12784d02"]]);function BPe(){return!1}function s$e(t){const e="/",n=e.endsWith("/")?e:`${e}/`;return`${window.location.origin}${n}${t.replace(/^\//,"")}`}const $c="token",UN="user",l$e=oe({__name:"App",setup(t){const e={colorPrimary:"#1c2d56",colorLink:"#1DA57A",borderRadius:6,controlHeight:36,colorPrimaryBg:"#eef1f8",colorPrimaryBgHover:"#e1e6f2",colorPrimaryBorder:"#c5cde0",colorPrimaryBorderHover:"#9ea9c6"},n=QCe(),i=ae([]);function o(l){l==="dark"?(document.body.className.match("theme-semi-dark")&&document.body.classList.remove("theme-semi-dark"),document.body.classList.add("theme-dark")):l==="semi-dark"?(document.body.className.match("theme-dark")&&document.body.classList.remove("theme-dark"),document.body.classList.add("theme-semi-dark")):(document.body.className.match("theme-dark")&&document.body.classList.remove("theme-dark"),document.body.className.match("theme-semi-dark")&&document.body.classList.remove("theme-semi-dark"))}function r(l){i.value.push(l)}function a(){n.updateWindowWidth(window.innerWidth),document.documentElement.style.setProperty("--vh",`${window.innerHeight*.01}px`)}function s(){n.updateWindowScrollY(window.scrollY)}return ye(()=>n.theme,l=>o(l)),document.documentElement.setAttribute("dir","rtl"),qe(()=>{const l=localStorage.getItem(UN),c=l?JSON.parse(l):void 0,u=localStorage.getItem("login")||void 0;c&&u&&(Vr.open({message:`${c&&c.name?c.name:" کاربر "} عزیز `,placement:"topLeft",description:`به ${ZCe.name} خوش آمدید`,style:{color:"var(--primary-color)",marginLeft:"20px"}}),localStorage.removeItem("login")),o(id.theme),n.updateWindowWidth(window.innerWidth);const d=window.innerHeight*.01;document.documentElement.style.setProperty("--vh",`${d}px`),window.addEventListener("resize",a),window.addEventListener("scroll",s)}),Yn(()=>{window.removeEventListener("resize",a),window.removeEventListener("scroll",s)}),(l,c)=>{const u=Iu("router-view"),d=Iu("a-config-provider");return zi(),cc(d,{locale:Lt(qCe),direction:"rtl",theme:{token:e}},{default:ss(()=>[Yl("div",{id:"app",class:Xd(i.value)},[C(u,{onSetAppClasses:r}),C(a$e)],2)]),_:1},8,["locale","theme"])}}});/*! +`)}_outerLabelGutter(e,n){const i=this.w,o=n.clusterLabels,r=o.external.connector||{},a=e.reduce((f,h)=>f+h,0),s=[];if(e.forEach((f,h)=>{f>0&&s.push(...this._outerLabelLines(h,f,a,n))}),!s.length)return 0;const l=cCe(i,s,{fontSize:o.fontSize,fontFamily:o.fontFamily||i.config.chart.fontFamily}),c=r.gap!=null?r.gap:8,u=r.length!=null?r.length:22,d=l+c+u+8+Math.abs(parseFloat(o.external.offsetX)||0);return Math.min(d,i.layout.gridWidth*.25)}_drawOuterLabels(e,n,i,o,r,a){const s=this.w;if(!Ot.isBrowser())return;const l=r.clusterLabels,c=l.external,u=c.connector||{},d=u.gap!=null?u.gap:8,f=u.length!=null?u.length:22,h=parseFloat(c.offsetX)||0,p=parseFloat(c.offsetY)||0,g=s.layout.gridWidth,m=s.layout.gridHeight,v=this._lastDotR,b=n.filter(I=>I.dots.length>0);if(!b.length)return;let y=0,w=0;if(b.length>1){const I=b.map(E=>E.cx),k=b.map(E=>E.cy);y=Math.max(...I)-Math.min(...I),w=Math.max(...k)-Math.min(...k)}const x=y>w,$=parseFloat(l.fontSize)||13,S=Math.round($*1.35),_=[];if(b.slice().sort((I,k)=>I.cy-k.cy).forEach((I,k)=>{const E=this._outerLabelLines(I.i,i[I.i],o,r);if(!E.some(W=>W!==""))return;const R=x?I.cx>=g/2?"right":"left":k%2===0?"right":"left",D=R==="right"?1:-1;let F=I.dots[0],N=-1/0;I.dots.forEach(W=>{const j=D*W.x-.75*Math.abs(W.y-I.cy);j>N&&(N=j,F=W)});const B={x:F.x+D*(F.r||v),y:F.y},z={x:B.x+D*d,y:B.y};_.push({i:I.i,lines:E,anchor:B,elbow:z,labelX:z.x+D*f+h,idealY:B.y+p,labelY:B.y+p,side:R})}),!_.length)return;const T=_.reduce((I,k)=>Math.max(I,k.lines.length),1)*S,O=T/2;["left","right"].forEach(I=>{jN(_.filter(k=>k.side===I),T+2,m-O,O)});const M=new Be(s,this.ctx).group({class:"apexcharts-unit-outer-labels"});if(a){const I=Math.max(1,s.config.chart.animations.speed||800);M.node.classList.add("apexcharts-unit-label-delay"),M.node.style.animationDelay=`${Math.min(I*.45,600)/1e3}s`}_.forEach(I=>{const k=s.globals.colors[I.i]||s.globals.colors[0]||"#008FFB";M.add(WN(s,{lines:I.lines,lineHeight:S,anchor:I.anchor,elbow:I.elbow,labelX:I.labelX,labelY:I.labelY,side:I.side,connector:{show:u.show!==!1,width:u.width!=null?u.width:1.5,color:u.color||k},style:{fontSize:l.fontSize,fontFamily:l.fontFamily||s.config.chart.fontFamily,fontWeight:l.fontWeight},foreColor:l.color||s.config.chart.foreColor,groupClass:"apexcharts-unit-outer-label-group",textClass:"apexcharts-unit-outer-label",connectorClass:"apexcharts-unit-label-connector"}))}),e.add(M)}_drawClusterLabel(e,n,i,o,r,a){const s=this.w;if(!Ot.isBrowser())return;const l="http://www.w3.org/2000/svg",c=s.seriesData.seriesNames[n.i]||`series-${n.i+1}`,u=o>0?i/o*100:0,d=r.clusterLabels,f=parseFloat(d.fontSize)||13;let h;typeof d.formatter=="function"?h=d.formatter(c,{seriesIndex:n.i,value:i,percent:u,w:s}):h=`${c} (${u.toFixed(1)}%)`;const p=typeof h=="string"?h:String(h),g=We.createElementNS(l,"text");g.setAttribute("class","apexcharts-unit-label"),g.setAttribute("text-anchor","middle"),g.setAttribute("font-size",`${f}px`),g.setAttribute("font-family",d.fontFamily||s.config.chart.fontFamily||"inherit"),g.setAttribute("font-weight",String(d.fontWeight||600)),g.setAttribute("fill",d.color||a);const m=d.position==="bottom",v=n.outerR+f*.6+3+(d.offsetY||0),b=p.length*f*.55;if(!m&&!n.flat&&d.curved!==!1&&b<=Math.PI*v*.95){const w=n.cy,x=n.cx-v,$=n.cx+v,S=`M ${x} ${w} A ${v} ${v} 0 0 1 ${$} ${w}`,_=`apexcharts-unit-label-${s.globals.chartID}-${n.i}`,P=We.createElementNS(l,"path");P.setAttribute("id",_),P.setAttribute("d",S),P.setAttribute("fill","none"),P.setAttribute("stroke","none");const T=We.createElementNS(l,"textPath");T.setAttribute("href",`#${_}`),T.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",`#${_}`),T.setAttribute("startOffset","50%"),T.textContent=p,g.appendChild(T),e.node.appendChild(P)}else{g.setAttribute("x",String(n.cx));const w=m?n.cy+n.outerR+f+6+(d.offsetY||0):n.cy-n.outerR-6-(d.offsetY||0);g.setAttribute("y",String(w)),g.textContent=p}e.node.appendChild(g)}}const yh=Math.PI/180,bM=180/Math.PI,I0="http://www.w3.org/2000/svg",$l="http://www.w3.org/1999/xhtml",du=(t,e,n)=>t+(e-t)*n;class WCe{constructor(e,n){this.ctx=n,this.w=e;const i=e.config;this.cfg=i.plotOptions.sunburst,this.strokeWidth=i.stroke.show?i.stroke.width:0,this.strokeColor=Array.isArray(i.stroke.colors)?i.stroke.colors[0]:i.stroke.colors||"#fff",this.startAngle=this.cfg.startAngle,this.endAngle=this.cfg.endAngle,this.maxDepth=0,this.centerX=0,this.centerY=0,this.maxRadius=0,this.total=1,this._focusMaxDepth=0,this._focus=null,this._zoomGen=0,this._roots=[],this._nodesAll=[],this._innerR=()=>0,this._outerR=()=>0,this._tooltipEl=null,this._lblSeq=0,this._morphLeafIndex=0,this._graphics=null,this._ringsG=null,this._labelsG=null}draw(e){const n=this.w,i=new Be(this.w);this._graphics=i;const o=i.group({class:"apexcharts-sunburst"});if(n.globals.noData||!e||!e.length)return o;const r=n.layout.gridWidth,a=n.layout.gridHeight;if(this.centerX=r/2+(this.cfg.offsetX||0),this.centerY=a/2+(this.cfg.offsetY||0),this.maxRadius=Math.min(r,a)/2.05-this.strokeWidth-(n.config.chart.sparkline.enabled?0:n.config.chart.dropShadow.blur),this.maxRadius<5||(this._roots=this._buildHierarchy(),!this._roots.length))return o;this._roots.forEach(u=>this._fillValues(u)),this._validateStrict(),this._nodesAll=[];const s=n.globals.colors||[];this._roots.forEach((u,d)=>{this._colorPass(u,u.color||s[d%s.length]||"#008FFB")}),this.total=this._roots.reduce((u,d)=>u+Math.max(0,d.value),0)||1,this._ringsG=i.group({class:"apexcharts-sunburst-rings"}),this._labelsG=i.group({class:"apexcharts-sunburst-labels"}),o.add(this._ringsG),o.add(this._labelsG),this._focus=null,this._relayout(this._focus);const l=n.config.chart.animations;let c="none";return l.enabled&&(n.globals.dataChanged?l.dynamicAnimation.enabled&&(c="update"):n.globals.resized||(c="intro")),this._applyLayout(c),this._renderBreadcrumb(),o}_buildHierarchy(){return SCe(this.w)}_fillValues(e){p$(e)}_validateStrict(){if(this.cfg.partition!=="strict")return;let e=!1;const n=i=>{if(i.children&&i.children.length){const o=i.children.reduce((r,a)=>r+Math.max(0,a.value||0),0);!e&&i.value!=null&&Math.abs(o-i.value)>.5&&(console.warn(`ApexCharts sunburst: partition 'strict' but "${i.name}" (${i.value}) != sum of its children (${o}). Angles are normalized to fill the wedge.`),e=!0),i.children.forEach(n)}};this._roots.forEach(n)}_colorPass(e,n){e._color=e.color||n,this._nodesAll.push(e),e.children&&e.children.forEach(i=>this._colorPass(i,i.color||this._lighten(e._color,this.cfg.tint)))}_relayout(e){if(this._nodesAll.forEach(a=>{a._show=!1}),this._focusMaxDepth=0,e)this._placeVis(e,0,this.startAngle,this.endAngle,e._parent);else{const a=this._roots.reduce((l,c)=>l+Math.max(0,c.value),0)||1;let s=this.startAngle;this._roots.forEach(l=>{const c=(this.endAngle-this.startAngle)*Math.max(0,l.value)/a;this._placeVis(l,0,s,s+c,null),s+=c})}const n=this._parseSize(this.cfg.innerSize,this.maxRadius),i=this._focusMaxDepth+1,o=(this.maxRadius-n)/i,r=i>1?1:0;this._innerR=a=>n+a*o+(a>0?r/2:0),this._outerR=a=>n+(a+1)*o-r/2,this._nodesAll.forEach(a=>{a._show&&(a._iR=this._innerR(a._vDepth),a._oR=a._leaf&&this.cfg.leaf==="extend"&&a._vDepththis._focusMaxDepth&&(this._focusMaxDepth=n),!e._leaf){const a=e.children.reduce((l,c)=>l+Math.max(0,c.value),0)||1;let s=i;e.children.forEach(l=>{const c=(o-i)*Math.max(0,l.value)/a;this._placeVis(l,n+1,s,s+c,e),s+=c})}}_applyLayout(e){var n;const o=this.w.config.chart.animations,r=o.enabled?e==="none"?0:e==="update"?o.dynamicAnimation.speed||350:o.speed||500:0,a=++this._zoomGen,s=(n=this.ctx)==null?void 0:n.morphTypeChange,l=!!s&&typeof s.isActive=="function"&&s.isActive()&&typeof s.getInitialPathAt=="function",c=l?s.getSpeed():0;this._morphLeafIndex=0;const u=e==="update"?this.ctx._sunburstPrevGeoms:null;this._nodesAll.forEach(f=>{if(f._show){const h={a0:f._a0,a1:f._a1,iR:f._iR,oR:f._oR};f._el||(f._el=this._createArcEl(f));const p=l?this._morphSourceFor(f):null;if(p&&c>0)this._morphArcFrom(f,p,h,c,a);else if((e==="intro"||l)&&r>0)this._sweepArc(f,h,l?c:r,a);else{let g,m=!1;if(f._cur)g=f._cur;else if(u&&u.get(f._key))g=u.get(f._key);else{const v=(h.a0+h.a1)/2;g={a0:v,a1:v,iR:h.iR,oR:h.iR},m=!0}this._animateArc(f,g,h,r,!1,m,a)}}else if(f._el&&f._cur){const h=(f._cur.a0+f._cur.a1)/2,p={a0:h,a1:h,iR:f._cur.iR,oR:f._cur.iR};this._animateArc(f,f._cur,p,r,!0,!1,a)}});const d=new Map;this._nodesAll.forEach(f=>{f._show&&d.set(f._key,{a0:f._a0,a1:f._a1,iR:f._iR,oR:f._oR})}),this.ctx._sunburstPrevGeoms=d,this._renderLabels(r)}_morphSourceFor(e){const n=this.ctx,i=n&&n.morphTypeChange;return i?typeof i.hasKeyedMarks=="function"&&i.hasKeyedMarks()&&typeof i.getInitialPathForKey=="function"?i.getInitialPathForKey(nd(e._key)):e.children&&e.children.length?null:i.getInitialPathAt(this._morphLeafIndex++):null}_morphArcFrom(e,n,i,o,r){const a=e._el,s=this._arcPath(i.iR,i.oR,i.a0,i.a1,this.cfg.borderRadius);a.node.style.display="",a.attr({d:n,opacity:1}),e._cur=i,this._zoomGen===r&&new Gs(this.w,this.ctx).morphSVG(a,0,null,e._color,n,s,o,0)}_sweepArc(e,n,i,o){const r=e._el,a=this.cfg.borderRadius,s=this.startAngle,l=this.endAngle;r.node.style.display="",r.attr({d:"",opacity:1}),r.animate(i).during(c=>{if(this._zoomGen!==o)return;const u=s+(l-s)*c;if(u<=n.a0+.01){r.attr({d:""});return}const d=Math.min(n.a1,u);r.attr({d:this._arcPath(n.iR,n.oR,n.a0,d,a)}),e._cur={a0:n.a0,a1:d,iR:n.iR,oR:n.oR}}).after(()=>{this._zoomGen===o&&(e._cur=n)})}_createArcEl(e){const n=this._graphics.drawPath({d:"",fill:e._color,stroke:this.strokeColor,strokeWidth:this.strokeWidth,fillOpacity:1,classes:"apexcharts-sunburst-arc"}),i=n.node;return i.setAttribute("data:name",e.name),i.setAttribute("data:value",String(e.value)),i.setAttribute("data:key",nd(e._key)),i.setAttribute("data:leaf",String(!(e.children&&e.children.length))),this._attachTooltip(i,e),Ot.isBrowser()&&(i.addEventListener("click",()=>this._zoomTo(e)),i.style.cursor="pointer"),this._ringsG.add(n),n}_animateArc(e,n,i,o,r,a,s){const l=e._el,c=this.cfg.borderRadius;if(l.attr({fill:e._color}),o===0){l.attr({d:this._arcPath(i.iR,i.oR,i.a0,i.a1,c),opacity:r?0:1}),l.node.style.display=r?"none":"",e._cur=r?null:i;return}l.node.style.display="";const u=r?Number(l.attr("opacity"))||1:a?0:1,d=r?0:1;l.attr({opacity:u}),l.animate(o).during(f=>{if(this._zoomGen!==s)return;const h=du(n.a0,i.a0,f),p=du(n.a1,i.a1,f),g=du(n.iR,i.iR,f),m=du(n.oR,i.oR,f);l.attr({d:this._arcPath(g,m,h,p,c),opacity:du(u,d,f)}),e._cur={a0:h,a1:p,iR:g,oR:m}}).after(()=>{this._zoomGen===s&&(r?(l.node.style.display="none",e._cur=null):e._cur=i)})}_renderLabels(e){const n=this._labelsG;for(;n.node.firstChild;)n.node.removeChild(n.node.firstChild);this.cfg.dataLabels.show&&(this._nodesAll.forEach(i=>{i._show&&(i._a1-i._a00?(n.attr({opacity:0}),n.animate(250,e).attr({opacity:1})):n.attr({opacity:1}))}_renderCurvedLabel(e){if(!Ot.isBrowser())return;const n=this.cfg.dataLabels.style,i=this.w,o=(e._iR+e._oR)/2,r=(e._a0+e._a1)/2,a=r>90&&r<270,s=Math.min(o>0?4/o*bM:0,(e._a1-e._a0)/2),l=a?e._a1-s:e._a0+s,c=a?e._a0+s:e._a1-s,u=this._ptAt(o,l),d=this._ptAt(o,c),f=Math.abs(c-l)>180?1:0,h=a?0:1,p=`apx-sb-lbl-${i.globals.cuid}-${this._lblSeq++}`,g=We.createElementNS(I0,"path");g.setAttribute("id",p),g.setAttribute("d",`M ${u.x} ${u.y} A ${o} ${o} 0 ${f} ${h} ${d.x} ${d.y}`),g.setAttribute("fill","none"),g.setAttribute("stroke","none");const m=n.colors,v=(Array.isArray(m)?m[0]:m)||"#fff",b=We.createElementNS(I0,"text");b.setAttribute("font-size",n.fontSize||"12px"),n.fontFamily&&b.setAttribute("font-family",n.fontFamily),b.setAttribute("font-weight",String(n.fontWeight||400)),b.setAttribute("fill",v),b.setAttribute("dominant-baseline","central"),b.style.pointerEvents="none";const y=We.createElementNS(I0,"textPath");y.setAttribute("href","#"+p),y.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href","#"+p),y.setAttribute("startOffset","50%"),y.setAttribute("text-anchor","middle"),y.textContent=this._truncate(e.name,o,e._a1-e._a0,n.fontSize),b.appendChild(y),this._labelsG.node.appendChild(g),this._labelsG.node.appendChild(b)}_truncate(e,n,i,o){const r=n*i*yh-8,a=(parseFloat(o)||12)*.58,s=Math.floor(r/a);return s>=e.length?e:s<=1?"":e.slice(0,Math.max(1,s-1))+"…"}_zoomTo(e){if(this.cfg.zoomOnClick===!1)return;const n=e===this._focus?e._parent||null:e;n!==this._focus&&(this._focus=n&&!(n.children&&n.children.length)?n._parent||null:n,this._relayout(this._focus),this._applyLayout("zoom"),this._renderBreadcrumb())}_focusChain(){const e=[];let n=this._focus;for(;n;)e.unshift(n),n=n._parent;return e}_renderBreadcrumb(){if(!Ot.isBrowser())return;const n=this.w.dom.elWrap;if(!n)return;const i=n.querySelector(".apexcharts-breadcrumb");if(i&&i.parentNode&&i.parentNode.removeChild(i),!this._focus)return;const o=We.createElementNS($l,"nav");o.setAttribute("class","apexcharts-breadcrumb"),o.setAttribute("aria-label","Sunburst breadcrumb"),o.style.position="absolute",o.style.top="0px",o.style.left="0px";const r=[{name:"All",node:null}].concat(this._focusChain().map(a=>({name:a.name,node:a})));r.forEach((a,s)=>{if(s>0){const c=We.createElementNS($l,"span");c.setAttribute("class","apexcharts-breadcrumb-separator"),c.textContent=" / ",o.appendChild(c)}if(s===r.length-1){const c=We.createElementNS($l,"span");c.setAttribute("class","apexcharts-breadcrumb-item apexcharts-breadcrumb-current"),c.textContent=a.name,o.appendChild(c)}else{const c=We.createElementNS($l,"button");if(c.setAttribute("type","button"),c.setAttribute("class","apexcharts-breadcrumb-item"),s===0){const d=We.createElementNS($l,"span");d.setAttribute("class","apexcharts-breadcrumb-arrow"),d.textContent="←",c.appendChild(d)}const u=We.createElementNS($l,"span");u.setAttribute("class","apexcharts-breadcrumb-label"),u.textContent=a.name,c.appendChild(u),c.addEventListener("click",()=>{this._focus=a.node,this._relayout(this._focus),this._applyLayout("zoom"),this._renderBreadcrumb()}),o.appendChild(c)}}),n.appendChild(o),this._avoidChromeOverlap(o)}_avoidChromeOverlap(e){PN(this.w,e)}_ptAt(e,n){return{x:this.centerX+e*Math.cos((n-90)*yh),y:this.centerY+e*Math.sin((n-90)*yh)}}_arcPath(e,n,i,o,r){if(n<=e+.01)return"";let a=o-i;const s=this.cfg.spacing;if(s>0&&a>0&&n>0){const f=s/n*bM,h=Math.min(f/2,Math.max(0,a/2-.25));i+=h,o-=h,a=o-i}if(a<=0)return"";const l=a*yh,c=this.centerX,u=this.centerY;let d=r;return d=Math.min(d,l*e/2,l*n/2,(n-e)/2),d>.5?cw({cx:c,cy:u,rIn:e,rOut:n,a0:i,a1:o,r:d,spanDeg:a}):VN({cx:c,cy:u,rIn:e,rOut:n,a0:i,a1:o,spanDeg:a})}_tip(){return this._tooltipEl||(this._tooltipEl=this.w.dom.baseEl.querySelector(".apexcharts-tooltip")),this._tooltipEl}_attachTooltip(e,n){!this.w.config.tooltip.enabled||!Ot.isBrowser()||(e.addEventListener("mouseenter",i=>this._showTooltip(i,n)),e.addEventListener("mousemove",i=>this._positionTooltip(i)),e.addEventListener("mouseleave",()=>this._hideTooltip()))}_showTooltip(e,n){const i=this._tip();if(!i)return;const o=this.w,r=(n.value/this.total*100).toFixed(1),a=n._parent?n._parent.value:this.total,s=a>0?(n.value/a*100).toFixed(1):r,l=o.config.tooltip.fillSeriesColor?`background-color:${n._color};`:"";i.innerHTML=`
${n.name}: ${n.value} (${s}% of parent, ${r}% of total)
`,i.classList.add("apexcharts-active"),i.style.opacity="1",this._positionTooltip(e)}_positionTooltip(e){const n=this._tip();if(!n)return;const i=this.w.dom.elWrap.getBoundingClientRect(),o=n.offsetWidth,r=n.offsetHeight,a=12;let s=e.clientX-i.left+a;s+o>i.width&&(s=e.clientX-i.left-o-a),s=Math.max(0,Math.min(s,i.width-o));let l=e.clientY-i.top+a;l+r>i.height&&(l=e.clientY-i.top-r-a),l=Math.max(0,Math.min(l,i.height-r)),n.style.left=s+"px",n.style.top=l+"px"}_hideTooltip(){const e=this._tip();e&&(e.classList.remove("apexcharts-active"),e.style.opacity="0")}_parseSize(e,n){if(typeof e=="number")return e;const i=String(e).trim();if(i.endsWith("%"))return parseFloat(i)/100*n;const o=parseFloat(i);return isNaN(o)?.15*n:o}_lighten(e,n){if(typeof e!="string"||e[0]!=="#")return e;let i=e.slice(1);if(i.length===3&&(i=i.split("").map(l=>l+l).join("")),i.length!==6)return e;const o=parseInt(i,16);if(isNaN(o))return e;let r=o>>16&255,a=o>>8&255,s=o&255;return r=Math.round(r+(255-r)*n),a=Math.round(a+(255-a)*n),s=Math.round(s+(255-s)*n),"#"+((1<<24)+(r<<16)+(a<<8)+s).toString(16).slice(1)}}Vn.use({line:uu,area:uu,scatter:uu,bubble:uu,rangeArea:uu,bar:Bn,column:Bn,barStacked:ZSe,rangeBar:mCe,candlestick:nM,boxPlot:nM,violin:iCe,pie:fp,donut:fp,polarArea:fp,radialBar:gCe,radar:pCe,heatmap:rCe,treemap:PCe,unit:HCe,sunburst:WCe});Object.defineProperty(Vn,"__internals",{value:Qwe,enumerable:!1,writable:!1,configurable:!1});const yM=["animationEnd","beforeMount","mounted","updated","click","mouseMove","mouseLeave","legendClick","markerClick","selection","dataPointSelection","dataPointMouseEnter","dataPointMouseLeave","beforeZoom","beforeResetZoom","zoomed","scrolled","brushScrolled"],Hg=oe({name:"apexchart",props:{options:{type:Object},type:{type:String},series:{type:Array,required:!0},width:{default:"100%"},height:{default:"auto"}},emits:yM,setup(t,{emit:e}){const n=ae(null),i=ae(null),o=k=>k&&typeof k=="object"&&!Array.isArray(k)&&k!=null,r=(k,E)=>{typeof Object.assign!="function"&&function(){Object.assign=function(D){if(D==null)throw new TypeError("Cannot convert undefined or null to object");let F=Object(D);for(let N=1;N{o(E[D])?D in k?R[D]=r(k[D],E[D]):Object.assign(R,{[D]:E[D]}):Object.assign(R,{[D]:E[D]})}),R},a=k=>JSON.parse(JSON.stringify(k)),s=async()=>{if(await pt(),i.value)return;const k={chart:{type:t.type||t.options.chart&&t.options.chart.type||"line",height:t.height,width:t.width,events:{}},series:a(t.series)},E=t.options.chart?t.options.chart.events:null;yM.forEach(D=>{let F=(...N)=>e(D,...N);k.chart.events[D]=(...N)=>{F(...N),E&&E.hasOwnProperty(D)&&E[D](...N)}});const R=r(t.options,k);return i.value=new Vn(n.value,R),i.value.render()},l=()=>(c(),s()),c=()=>{i.value.destroy(),i.value=null},u=(k,E)=>i.value.updateSeries(k,E),d=(k,E,R,D)=>i.value.updateOptions(k,E,R,D),f=k=>i.value.toggleSeries(k),h=k=>{i.value.showSeries(k)},p=k=>{i.value.hideSeries(k)},g=(k,E)=>i.value.appendSeries(k,E),m=()=>{i.value.resetSeries()},v=(k,E)=>{i.value.toggleDataPointSelection(k,E)},b=k=>i.value.appendData(k),y=(k,E)=>i.value.zoomX(k,E),w=k=>i.value.dataURI(k),x=k=>i.value.setLocale(k),$=(k,E)=>{i.value.addXaxisAnnotation(k,E)},S=(k,E)=>{i.value.addYaxisAnnotation(k,E)},_=(k,E)=>{i.value.addPointAnnotation(k,E)},P=(k,E)=>{i.value.removeAnnotation(k,E)},T=()=>{i.value.clearAnnotations()};Gd(()=>{window.ApexCharts=Vn}),qe(()=>{n.value=Cn().proxy.$el,s()}),at(()=>{i.value&&c()});const O=fo(t);let M=null;const I=k=>{M||(M={options:!1,series:!1},pt(()=>{const E=M;if(M=null,!i.value){s();return}if(E.options&&E.series){const R=a(t.options);R.series=a(t.series),i.value.updateOptions(R)}else E.options?i.value.updateOptions(a(t.options)):E.series&&i.value.updateSeries(a(t.series))})),M[k]=!0};return ye(O.options,()=>{I("options")}),ye(O.series,()=>{I("series")},{deep:!0}),ye(O.type,()=>{l()}),ye(O.width,()=>{l()}),ye(O.height,()=>{l()}),{chart:i,init:s,refresh:l,destroy:c,updateOptions:d,updateSeries:u,toggleSeries:f,showSeries:h,hideSeries:p,resetSeries:m,zoomX:y,toggleDataPointSelection:v,appendData:b,appendSeries:g,addXaxisAnnotation:$,addYaxisAnnotation:S,addPointAnnotation:_,removeAnnotation:P,clearAnnotations:T,setLocale:x,dataURI:w}},render(){return sr("div",{class:"vue-apexcharts"})}}),jCe=(t,e)=>{const n=t.__vccOpts||t;for(const[i,o]of e)n[i]=o;return n},VCe=oe({name:"apexchart-server",props:{type:{type:String,default:"line"},width:{type:[Number,String],default:400},height:{type:[Number,String],default:300},series:{type:Array,default:()=>[]},options:{type:Object,default:()=>({})},className:{type:String,default:""}},setup(t){const e=ae("");return QI(async()=>{try{const{default:n}=await ze(async()=>{const{default:o}=await import("./apexcharts.ssr.esm-fe46cd2d-9CakV-nF.js");return{default:o}},[]),i=Object.assign({},t.options,{chart:Object.assign({},t.options.chart,{type:t.type,width:t.width,height:t.height}),series:t.series});e.value=await n.renderToHTML(i,{width:t.width,height:t.height})}catch(n){console.error("Failed to render ApexChart on server:",n)}}),{chartHTML:e}}}),XCe=["innerHTML"];function YCe(t,e,n,i,o,r){return zi(),ns("div",{innerHTML:t.chartHTML,class:Xd(t.className)},null,10,XCe)}const xM=jCe(VCe,[["render",YCe]]),wM=oe({name:"apexchart-hydrate",props:{clientOptions:{type:Object,default:()=>({})},selector:{type:String,default:"[data-apexcharts-hydrate]"}},setup(t){let e=[];qe(async()=>{try{const{default:n}=await ze(async()=>{const{default:i}=await import("./apexcharts.ssr.esm-fe46cd2d-9CakV-nF.js");return{default:i}},[]);e=n.hydrateAll(t.selector,t.clientOptions)}catch(n){console.error("Failed to hydrate ApexCharts:",n)}}),at(()=>{e.forEach(n=>{n&&n.destroy&&n.destroy()}),e=[]})},render(){return null}}),GCe=t=>{t.component(Hg.name,Hg),t.component(xM.name,xM),t.component(wM.name,wM)};Hg.install=GCe;const KCe={items_per_page:"/ صفحه",jump_to:"برو به",jump_to_confirm:"تایید",page:"",prev_page:"صفحه قبلی",next_page:"صفحه بعدی",prev_5:"۵ صفحه قبلی",next_5:"۵ صفحه بعدی",prev_3:"۳ صفحه قبلی",next_3:"۳ صفحه بعدی"},UCe={locale:"fa_IR",today:"امروز",now:"اکنون",backToToday:"بازگشت به روز",ok:"باشه",clear:"پاک کردن",month:"ماه",year:"سال",timeSelect:"انتخاب زمان",dateSelect:"انتخاب تاریخ",monthSelect:"یک ماه را انتخاب کنید",yearSelect:"یک سال را انتخاب کنید",decadeSelect:"یک دهه را انتخاب کنید",yearFormat:"YYYY",dateFormat:"M/D/YYYY",dayFormat:"D",dateTimeFormat:"M/D/YYYY HH:mm:ss",monthBeforeYear:!0,previousMonth:"ماه قبل (PageUp)",nextMonth:"ماه بعد (PageDown)",previousYear:"سال قبل (Control + left)",nextYear:"سال بعد (Control + right)",previousDecade:"دهه قبل",nextDecade:"دهه بعد",previousCentury:"قرن قبل",nextCentury:"قرن بعد"},GN={placeholder:"انتخاب زمان",rangePlaceholder:["زمان شروع","زمان پایان"]},SM={lang:A({placeholder:"انتخاب تاریخ",yearPlaceholder:"انتخاب سال",quarterPlaceholder:"انتخاب فصل",monthPlaceholder:"انتخاب ماه",weekPlaceholder:"انتخاب هفته",rangePlaceholder:["تاریخ شروع","تاریخ پایان"],rangeYearPlaceholder:["سال شروع","سال پایان"],rangeMonthPlaceholder:["ماه شروع","ماه پایان"],rangeWeekPlaceholder:["هفته شروع","هفته پایان"]},UCe),timePickerLocale:A({},GN)},Fi="${label} از نوع ${type} معتبر نیست",qCe={locale:"fa",Pagination:KCe,DatePicker:SM,TimePicker:GN,Calendar:SM,global:{placeholder:"لطفاً انتخاب کنید"},Table:{filterTitle:"منوی فیلتر",filterConfirm:"تایید",filterReset:"پاک کردن",filterEmptyText:"بدون فیلتر",emptyText:"بدون داده",selectAll:"انتخاب صفحه‌ی کنونی",selectInvert:"معکوس کردن انتخاب‌ها در صفحه ی کنونی",selectNone:"انتخاب هیچکدام",selectionAll:"انتخاب همه داده‌ها",sortTitle:"مرتب سازی",expand:"باز شدن ردیف",collapse:"بستن ردیف",triggerDesc:"ترتیب نزولی",triggerAsc:"ترتیب صعودی",cancelSort:"لغوِ ترتیبِ داده شده"},Modal:{okText:"تایید",cancelText:"لغو",justOkText:"تایید"},Popconfirm:{okText:"تایید",cancelText:"لغو"},Transfer:{titles:["",""],searchPlaceholder:"جستجو",itemUnit:"عدد",itemsUnit:"عدد",remove:"حذف",selectCurrent:"انتخاب صفحه فعلی",removeCurrent:"پاک کردن انتخاب‌های صفحه فعلی",selectAll:"انتخاب همه",removeAll:"پاک کردن همه انتخاب‌ها",selectInvert:"معکوس کردن انتخاب‌ها در صفحه ی کنونی"},Upload:{uploading:"در حال آپلود...",removeFile:"حذف فایل",uploadError:"خطا در آپلود",previewFile:"مشاهده‌ی فایل",downloadFile:"دریافت فایل"},Empty:{description:"داده‌ای موجود نیست"},Icon:{icon:"آیکن"},Text:{edit:"ویرایش",copy:"کپی",copied:"کپی شد",expand:"توسعه"},PageHeader:{back:"برگشت"},Form:{optional:"(اختیاری)",defaultValidateMessages:{default:"خطا در ${label}",required:"فیلد ${label} اجباریست",enum:"${label} باید یکی از [${enum}] باشد",whitespace:"${label} نمیتواند خالی باشد",date:{format:"ساختار تاریخ در ${label} نامعتبر است",parse:"${label} قابل تبدیل به تاریخ نیست",invalid:"${label} تاریخی نا معتبر است"},types:{string:Fi,method:Fi,array:Fi,object:Fi,number:Fi,date:Fi,boolean:Fi,integer:Fi,float:Fi,regexp:Fi,email:Fi,url:Fi,hex:Fi},string:{len:"${label} باید ${len} کاراکتر باشد",min:"${label} باید حداقل ${min} کاراکتر باشد",max:"${label} باید حداکثر ${max} کاراکتر باشد",range:"${label} باید بین ${min}-${max} کاراکتر باشد"},number:{len:"${label} باید برابر ${len}",min:"${label} حداقل میتواند ${min} باشد",max:"${label} حداکثر میتواند ${max} باشد",range:"${label} باید بین ${min}-${max} باشد"},array:{len:"تعداد ${label} باید ${len} باشد.",min:"تعداد ${label} حداقل باید ${min} باشد",max:"تعداد ${label} حداکثر باید ${max} باشد",range:"مقدار ${label} باید بین ${min}-${max} باشد"},pattern:{mismatch:"الگوی ${label} با ${pattern} برابری نمی‌کند"}}},Image:{preview:"نمایش"}},id={disableCustomizer:!1,disableThemeTour:!0,footerType:"hidden",hideScrollToTop:!1,mainLayoutType:"vertical",navbarColor:"#fff",navbarType:"floating",routerTransition:"zoom-fade",rtl:!0,sidebarCollapsed:!1,theme:"light",userInfoLocalStorageKey:"userInfo"},ZCe={name:"تهران تاج",nameEn:"Tehran Taj",appTitle:"طلای تهران تاج",adminTitle:"تهران تاج — پنل مدیریت",siteUrl:"https://bnk.montzar.ir"},KN="admin-panel:sidebarCollapsed";function JCe(){if(typeof window>"u")return id.sidebarCollapsed;try{const t=window.localStorage.getItem(KN);return t===null?id.sidebarCollapsed:t==="1"}catch{return id.sidebarCollapsed}}const QCe=Nk("layout",{state:()=>({windowWidth:typeof window<"u"?window.innerWidth:0,scrollY:0,theme:id.theme,isSidebarActive:!0,sidebarCollapsed:JCe(),mobileNavOpen:!1}),getters:{isSmallScreen:t=>t.windowWidth<992,isMobile:t=>t.windowWidth<576},actions:{updateWindowWidth(t){this.windowWidth=t},updateWindowScrollY(t){this.scrollY=t},setMobileNavOpen(t){this.mobileNavOpen=t},toggleSidebar(t){this.isSidebarActive=t??!this.isSidebarActive},setSidebarCollapsed(t){if(this.sidebarCollapsed=t,!(typeof window>"u"))try{window.localStorage.setItem(KN,t?"1":"0")}catch{}}}}),e$e=5*60*1e3,CM=220;function t$e(){const t=ae(null),e=ae(!1),n=L(()=>{const s=t.value;return s?(s.history??[]).filter(l=>l.build>CM&&l.build<=s.build):[]});async function i(){if(!t.value)try{const s=await fetch(`/version.json?t=${Date.now()}`,{cache:"no-store"});if(!s.ok)return;const l=await s.json();typeof l.build=="number"&&l.build>CM&&(t.value=l)}catch{}}async function o(){var s,l;e.value=!0;try{const c=await((l=(s=navigator.serviceWorker)==null?void 0:s.getRegistrations)==null?void 0:l.call(s));c&&await Promise.all(c.map(u=>u.unregister()))}catch{}try{if("caches"in window){const c=await caches.keys();await Promise.all(c.map(u=>caches.delete(u)))}}catch{}window.location.reload()}let r;const a=()=>{document.visibilityState==="visible"&&i()};return qe(()=>{i(),r=setInterval(i,e$e),document.addEventListener("visibilitychange",a)}),at(()=>{r&&clearInterval(r),document.removeEventListener("visibilitychange",a)}),{available:t,changes:n,updating:e,applyUpdate:o,check:i}}const n$e={class:"list"},i$e={key:1,class:"lead"},o$e=oe({__name:"AppUpdateGate",setup(t){const{available:e,changes:n,updating:i,applyUpdate:o}=t$e();return(r,a)=>{const s=Iu("a-tag"),l=Iu("a-button"),c=Iu("a-modal");return zi(),cc(c,{open:!!Lt(e),closable:!1,"mask-closable":!1,keyboard:!1,"z-index":2e3,width:"420px",centered:""},{title:ss(()=>[a[0]||(a[0]=Tn(" نسخه‌ی تازه‌ی پنل آماده است ",-1)),Lt(e)?(zi(),cc(s,{key:0,class:"ms-2",color:"blue"},{default:ss(()=>[Tn("نسخه‌ی "+V0(Lt(e).version),1)]),_:1})):xk("",!0)]),footer:ss(()=>[C(l,{type:"primary",block:"",loading:Lt(i),onClick:Lt(o)},{default:ss(()=>[...a[2]||(a[2]=[Tn("به‌روزرسانی",-1)])]),_:1},8,["loading","onClick"])]),default:ss(()=>[Lt(n).length?(zi(),ns(Ge,{key:0},[a[1]||(a[1]=Yl("p",{class:"lead"},"در این نسخه:",-1)),Yl("ul",n$e,[(zi(!0),ns(Ge,null,V$(Lt(n),u=>(zi(),ns(Ge,{key:u.build},[(zi(!0),ns(Ge,null,V$(u.notes,(d,f)=>(zi(),ns("li",{key:u.build+"-"+f},V0(d),1))),128))],64))),128))])],64)):(zi(),ns("p",i$e,"بهبودها و رفع اشکال‌ها.")),a[3]||(a[3]=Yl("p",{class:"hint"},"کار ذخیره‌نشده‌ای اگر در صفحه دارید، پیش از به‌روزرسانی ثبتش کنید.",-1))]),_:1},8,["open"])}}}),r$e=(t,e)=>{const n=t.__vccOpts||t;for(const[i,o]of e)n[i]=o;return n},a$e=r$e(o$e,[["__scopeId","data-v-12784d02"]]);function BPe(){return!1}function s$e(t){const e="/",n=e.endsWith("/")?e:`${e}/`;return`${window.location.origin}${n}${t.replace(/^\//,"")}`}const $c="token",UN="user",l$e=oe({__name:"App",setup(t){const e={colorPrimary:"#1c2d56",colorLink:"#1DA57A",borderRadius:6,controlHeight:36,colorPrimaryBg:"#eef1f8",colorPrimaryBgHover:"#e1e6f2",colorPrimaryBorder:"#c5cde0",colorPrimaryBorderHover:"#9ea9c6"},n=QCe(),i=ae([]);function o(l){l==="dark"?(document.body.className.match("theme-semi-dark")&&document.body.classList.remove("theme-semi-dark"),document.body.classList.add("theme-dark")):l==="semi-dark"?(document.body.className.match("theme-dark")&&document.body.classList.remove("theme-dark"),document.body.classList.add("theme-semi-dark")):(document.body.className.match("theme-dark")&&document.body.classList.remove("theme-dark"),document.body.className.match("theme-semi-dark")&&document.body.classList.remove("theme-semi-dark"))}function r(l){i.value.push(l)}function a(){n.updateWindowWidth(window.innerWidth),document.documentElement.style.setProperty("--vh",`${window.innerHeight*.01}px`)}function s(){n.updateWindowScrollY(window.scrollY)}return ye(()=>n.theme,l=>o(l)),document.documentElement.setAttribute("dir","rtl"),qe(()=>{const l=localStorage.getItem(UN),c=l?JSON.parse(l):void 0,u=localStorage.getItem("login")||void 0;c&&u&&(Vr.open({message:`${c&&c.name?c.name:" کاربر "} عزیز `,placement:"topLeft",description:`به ${ZCe.name} خوش آمدید`,style:{color:"var(--primary-color)",marginLeft:"20px"}}),localStorage.removeItem("login")),o(id.theme),n.updateWindowWidth(window.innerWidth);const d=window.innerHeight*.01;document.documentElement.style.setProperty("--vh",`${d}px`),window.addEventListener("resize",a),window.addEventListener("scroll",s)}),Yn(()=>{window.removeEventListener("resize",a),window.removeEventListener("scroll",s)}),(l,c)=>{const u=Iu("router-view"),d=Iu("a-config-provider");return zi(),cc(d,{locale:Lt(qCe),direction:"rtl",theme:{token:e}},{default:ss(()=>[Yl("div",{id:"app",class:Xd(i.value)},[C(u,{onSetAppClasses:r}),C(a$e)],2)]),_:1},8,["locale","theme"])}}});/*! * vue-router v4.6.4 * (c) 2025 Eduardo San Martin Morote * @license MIT @@ -2474,7 +2474,7 @@ ${s.toFixed(1)}%`;return String(c).split(` * vue-router v4.6.4 * (c) 2025 Eduardo San Martin Morote * @license MIT - */let j$e=()=>location.protocol+"//"+location.host;function r8(t,e){const{pathname:n,search:i,hash:o}=e,r=t.indexOf("#");if(r>-1){let a=o.includes(t.slice(r))?t.slice(r).length:1,s=o.slice(a);return s[0]!=="/"&&(s="/"+s),AM(s,"")}return AM(n,t)+i+o}function V$e(t,e,n,i){let o=[],r=[],a=null;const s=({state:f})=>{const h=r8(t,location),p=n.value,g=e.value;let m=0;if(f){if(n.value=h,e.value=f,a&&a===p){a=null;return}m=g?f.position-g.position:0}else i(h);o.forEach(v=>{v(n.value,p,{delta:m,type:gw.pop,direction:m?m>0?R0.forward:R0.back:R0.unknown})})};function l(){a=n.value}function c(f){o.push(f);const h=()=>{const p=o.indexOf(f);p>-1&&o.splice(p,1)};return r.push(h),h}function u(){if(document.visibilityState==="hidden"){const{history:f}=window;if(!f.state)return;f.replaceState(Ht({},f.state,{scroll:Ev()}),"")}}function d(){for(const f of r)f();r=[],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:l,listen:c,destroy:d}}function EM(t,e,n,i=!1,o=!1){return{back:t,current:e,forward:n,replaced:i,position:window.history.length,scroll:o?Ev():null}}function X$e(t){const{history:e,location:n}=window,i={value:r8(t,n)},o={value:e.state};o.value||r(i.value,{back:null,current:i.value,forward:null,position:e.length-1,replaced:!0,scroll:null},!0);function r(l,c,u){const d=t.indexOf("#"),f=d>-1?(n.host&&document.querySelector("base")?t:t.slice(d))+l:j$e()+t+l;try{e[u?"replaceState":"pushState"](c,"",f),o.value=c}catch(h){console.error(h),n[u?"replace":"assign"](f)}}function a(l,c){r(l,Ht({},e.state,EM(o.value.back,l,o.value.forward,!0),c,{position:o.value.position}),!0),i.value=l}function s(l,c){const u=Ht({},o.value,e.state,{forward:l,scroll:Ev()});r(u.current,u,!0),r(l,Ht({},EM(i.value,l,null),{position:u.position+1},c),!1),i.value=l}return{location:i,state:o,push:s,replace:a}}function Y$e(t){t=T$e(t);const e=X$e(t),n=V$e(t,e.state,e.location,e.replace);function i(r,a=!0){a||n.pauseListeners(),history.go(r)}const o=Ht({location:"",base:t,go:i,createHref:M$e.bind(null,t)},e,n);return Object.defineProperty(o,"location",{enumerable:!0,get:()=>e.location.value}),Object.defineProperty(o,"state",{enumerable:!0,get:()=>e.state.value}),o}let ys=function(t){return t[t.Static=0]="Static",t[t.Param=1]="Param",t[t.Group=2]="Group",t}({});var An=function(t){return t[t.Static=0]="Static",t[t.Param=1]="Param",t[t.ParamRegExp=2]="ParamRegExp",t[t.ParamRegExpEnd=3]="ParamRegExpEnd",t[t.EscapeNext=4]="EscapeNext",t}(An||{});const G$e={type:ys.Static,value:""},K$e=/[a-zA-Z0-9_]/;function U$e(t){if(!t)return[[]];if(t==="/")return[[G$e]];if(!t.startsWith("/"))throw new Error(`Invalid path "${t}"`);function e(h){throw new Error(`ERR (${n})/"${c}": ${h}`)}let n=An.Static,i=n;const o=[];let r;function a(){r&&o.push(r),r=[]}let s=0,l,c="",u="";function d(){c&&(n===An.Static?r.push({type:ys.Static,value:c}):n===An.Param||n===An.ParamRegExp||n===An.ParamRegExpEnd?(r.length>1&&(l==="*"||l==="+")&&e(`A repeatable param (${c}) must be alone in its segment. eg: '/:ids+.`),r.push({type:ys.Param,value:c,regexp:u,repeatable:l==="*"||l==="+",optional:l==="*"||l==="?"})):e("Invalid state to consume buffer"),c="")}function f(){c+=l}for(;se.length?e.length===1&&e[0]===ui.Static+ui.Segment?1:-1:0}function a8(t,e){let n=0;const i=t.score,o=e.score;for(;n0&&e[e.length-1]<0}const eAe={strict:!1,end:!0,sensitive:!1};function tAe(t,e,n){const i=J$e(U$e(t.path),n),o=Ht(i,{record:t,parent:e,children:[],alias:[]});return e&&!o.record.aliasOf==!e.record.aliasOf&&e.children.push(o),o}function nAe(t,e){const n=[],i=new Map;e=$M(eAe,e);function o(d){return i.get(d)}function r(d,f,h){const p=!h,g=DM(d);g.aliasOf=h&&h.record;const m=$M(e,d),v=[g];if("alias"in d){const w=typeof d.alias=="string"?[d.alias]:d.alias;for(const x of w)v.push(DM(Ht({},g,{components:h?h.record.components:g.components,path:x,aliasOf:h?h.record:g})))}let b,y;for(const w of v){const{path:x}=w;if(f&&x[0]!=="/"){const $=f.record.path,S=$[$.length-1]==="/"?"":"/";w.path=f.record.path+(x&&S+x)}if(b=tAe(w,f,m),h?h.alias.push(b):(y=y||b,y!==b&&y.alias.push(b),p&&d.name&&!RM(b)&&a(d.name)),s8(b)&&l(b),g.children){const $=g.children;for(let S=0;S<$.length;S++)r($[S],b,h&&h.children[S])}h=h||b}return y?()=>{a(y)}:od}function a(d){if(i8(d)){const f=i.get(d);f&&(i.delete(d),n.splice(n.indexOf(f),1),f.children.forEach(a),f.alias.forEach(a))}else{const f=n.indexOf(d);f>-1&&(n.splice(f,1),d.record.name&&i.delete(d.record.name),d.children.forEach(a),d.alias.forEach(a))}}function s(){return n}function l(d){const f=rAe(d,n);n.splice(f,0,d),d.record.name&&!RM(d)&&i.set(d.record.name,d)}function c(d,f){let h,p={},g,m;if("name"in d&&d.name){if(h=i.get(d.name),!h)throw _c(an.MATCHER_NOT_FOUND,{location:d});m=h.record.name,p=Ht(kM(f.params,h.keys.filter(y=>!y.optional).concat(h.parent?h.parent.keys.filter(y=>y.optional):[]).map(y=>y.name)),d.params&&kM(d.params,h.keys.map(y=>y.name))),g=h.stringify(p)}else if(d.path!=null)g=d.path,h=n.find(y=>y.re.test(g)),h&&(p=h.parse(g),m=h.record.name);else{if(h=f.name?i.get(f.name):n.find(y=>y.re.test(f.path)),!h)throw _c(an.MATCHER_NOT_FOUND,{location:d,currentLocation:f});m=h.record.name,p=Ht({},f.params,d.params),g=h.stringify(p)}const v=[];let b=h;for(;b;)v.unshift(b.record),b=b.parent;return{name:m,path:g,params:p,matched:v,meta:oAe(v)}}t.forEach(d=>r(d));function u(){n.length=0,i.clear()}return{addRoute:r,resolve:c,removeRoute:a,clearRoutes:u,getRoutes:s,getRecordMatcher:o}}function kM(t,e){const n={};for(const i of e)i in t&&(n[i]=t[i]);return n}function DM(t){const e={path:t.path,redirect:t.redirect,name:t.name,meta:t.meta||{},aliasOf:t.aliasOf,beforeEnter:t.beforeEnter,props:iAe(t),children:t.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:"components"in t?t.components||null:t.component&&{default:t.component}};return Object.defineProperty(e,"mods",{value:{}}),e}function iAe(t){const e={},n=t.props||!1;if("component"in t)e.default=n;else for(const i in t.components)e[i]=typeof n=="object"?n[i]:n;return e}function RM(t){for(;t;){if(t.record.aliasOf)return!0;t=t.parent}return!1}function oAe(t){return t.reduce((e,n)=>Ht(e,n.meta),{})}function rAe(t,e){let n=0,i=e.length;for(;n!==i;){const r=n+i>>1;a8(t,e[r])<0?i=r:n=r+1}const o=aAe(t);return o&&(i=e.lastIndexOf(o,i-1)),i}function aAe(t){let e=t;for(;e=e.parent;)if(s8(e)&&a8(t,e)===0)return e}function s8({record:t}){return!!(t.name||t.components&&Object.keys(t.components).length||t.redirect)}function LM(t){const e=Je(Mv),n=Je(m$),i=L(()=>{const l=Lt(t.to);return e.resolve(l)}),o=L(()=>{const{matched:l}=i.value,{length:c}=l,u=l[c-1],d=n.matched;if(!u||!d.length)return-1;const f=d.findIndex(Ac.bind(null,u));if(f>-1)return f;const h=FM(l[c-2]);return c>1&&FM(u)===h&&d[d.length-1].path!==h?d.findIndex(Ac.bind(null,l[c-2])):f}),r=L(()=>o.value>-1&&dAe(n.params,i.value.params)),a=L(()=>o.value>-1&&o.value===n.matched.length-1&&n8(n.params,i.value.params));function s(l={}){if(uAe(l)){const c=e[Lt(t.replace)?"replace":"push"](Lt(t.to)).catch(od);return t.viewTransition&&typeof document<"u"&&"startViewTransition"in document&&document.startViewTransition(()=>c),c}return Promise.resolve()}return{route:i,href:L(()=>i.value.href),isActive:r,isExactActive:a,navigate:s}}function sAe(t){return t.length===1?t[0]:t}const lAe=oe({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:LM,setup(t,{slots:e}){const n=$t(LM(t)),{options:i}=Je(Mv),o=L(()=>({[NM(t.activeClass,i.linkActiveClass,"router-link-active")]:n.isActive,[NM(t.exactActiveClass,i.linkExactActiveClass,"router-link-exact-active")]:n.isExactActive}));return()=>{const r=e.default&&sAe(e.default(n));return t.custom?r:sr("a",{"aria-current":n.isExactActive?t.ariaCurrentValue:null,href:n.href,onClick:n.navigate,class:o.value},r)}}}),cAe=lAe;function uAe(t){if(!(t.metaKey||t.altKey||t.ctrlKey||t.shiftKey)&&!t.defaultPrevented&&!(t.button!==void 0&&t.button!==0)){if(t.currentTarget&&t.currentTarget.getAttribute){const e=t.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(e))return}return t.preventDefault&&t.preventDefault(),!0}}function dAe(t,e){for(const n in e){const i=e[n],o=t[n];if(typeof i=="string"){if(i!==o)return!1}else if(!Bo(o)||o.length!==i.length||i.some((r,a)=>r.valueOf()!==o[a].valueOf()))return!1}return!0}function FM(t){return t?t.aliasOf?t.aliasOf.path:t.path:""}const NM=(t,e,n)=>t??e??n,fAe=oe({name:"RouterView",inheritAttrs:!1,props:{name:{type:String,default:"default"},route:Object},compatConfig:{MODE:3},setup(t,{attrs:e,slots:n}){const i=Je(vw),o=L(()=>t.route||i.value),r=Je(TM,0),a=L(()=>{let c=Lt(r);const{matched:u}=o.value;let d;for(;(d=u[c])&&!d.components;)c++;return c}),s=L(()=>o.value.matched[a.value]);ot(TM,L(()=>a.value+1)),ot(H$e,s),ot(vw,o);const l=ae();return ye(()=>[l.value,s.value,t.name],([c,u,d],[f,h,p])=>{u&&(u.instances[d]=c,h&&h!==u&&c&&c===f&&(u.leaveGuards.size||(u.leaveGuards=h.leaveGuards),u.updateGuards.size||(u.updateGuards=h.updateGuards))),c&&u&&(!h||!Ac(u,h)||!f)&&(u.enterCallbacks[d]||[]).forEach(g=>g(c))},{flush:"post"}),()=>{const c=o.value,u=t.name,d=s.value,f=d&&d.components[u];if(!f)return BM(n.default,{Component:f,route:c});const h=d.props[u],p=h?h===!0?c.params:typeof h=="function"?h(c):h:null,m=sr(f,Ht({},p,e,{onVnodeUnmounted:v=>{v.component.isUnmounted&&(d.instances[u]=null)},ref:l}));return BM(n.default,{Component:m,route:c})||m}}});function BM(t,e){if(!t)return null;const n=t(e);return n.length===1?n[0]:n}const hAe=fAe;function pAe(t){const e=nAe(t.routes,t),n=t.parseQuery||B$e,i=t.stringifyQuery||OM,o=t.history,r=fu(),a=fu(),s=fu(),l=ie(oa);let c=oa;Rl&&t.scrollBehavior&&"scrollRestoration"in history&&(history.scrollRestoration="manual");const u=k0.bind(null,Y=>""+Y),d=k0.bind(null,S$e),f=k0.bind(null,Hd);function h(Y,J){let Q,G;return i8(Y)?(Q=e.getRecordMatcher(Y),G=J):G=Y,e.addRoute(G,Q)}function p(Y){const J=e.getRecordMatcher(Y);J&&e.removeRoute(J)}function g(){return e.getRoutes().map(Y=>Y.record)}function m(Y){return!!e.getRecordMatcher(Y)}function v(Y,J){if(J=Ht({},J||l.value),typeof Y=="string"){const te=D0(n,Y,J.path),ue=e.resolve({path:te.path},J),se=o.createHref(te.fullPath);return Ht(te,ue,{params:f(ue.params),hash:Hd(te.hash),redirectedFrom:void 0,href:se})}let Q;if(Y.path!=null)Q=Ht({},Y,{path:D0(n,Y.path,J.path).path});else{const te=Ht({},Y.params);for(const ue in te)te[ue]==null&&delete te[ue];Q=Ht({},Y,{params:d(te)}),J.params=d(J.params)}const G=e.resolve(Q,J),ee=Y.hash||"";G.params=u(f(G.params));const X=A$e(i,Ht({},Y,{hash:y$e(ee),path:G.path})),K=o.createHref(X);return Ht({fullPath:X,hash:ee,query:i===OM?z$e(Y.query):Y.query||{}},G,{redirectedFrom:void 0,href:K})}function b(Y){return typeof Y=="string"?D0(n,Y,l.value.path):Ht({},Y)}function y(Y,J){if(c!==Y)return _c(an.NAVIGATION_CANCELLED,{from:J,to:Y})}function w(Y){return S(Y)}function x(Y){return w(Ht(b(Y),{replace:!0}))}function $(Y,J){const Q=Y.matched[Y.matched.length-1];if(Q&&Q.redirect){const{redirect:G}=Q;let ee=typeof G=="function"?G(Y,J):G;return typeof ee=="string"&&(ee=ee.includes("?")||ee.includes("#")?ee=b(ee):{path:ee},ee.params={}),Ht({query:Y.query,hash:Y.hash,params:ee.path!=null?{}:Y.params},ee)}}function S(Y,J){const Q=c=v(Y),G=l.value,ee=Y.state,X=Y.force,K=Y.replace===!0,te=$(Q,G);if(te)return S(Ht(b(te),{state:typeof te=="object"?Ht({},ee,te.state):ee,force:X,replace:K}),J||Q);const ue=Q;ue.redirectedFrom=J;let se;return!X&&_$e(i,G,Q)&&(se=_c(an.NAVIGATION_DUPLICATED,{to:ue,from:G}),z(G,G,!0,!1)),(se?Promise.resolve(se):T(ue,G)).catch(re=>vr(re)?vr(re,an.NAVIGATION_GUARD_REDIRECT)?re:B(re):F(re,ue,G)).then(re=>{if(re){if(vr(re,an.NAVIGATION_GUARD_REDIRECT))return S(Ht({replace:K},b(re.to),{state:typeof re.to=="object"?Ht({},ee,re.to.state):ee,force:X}),J||ue)}else re=M(ue,G,!0,K,ee);return O(ue,G,re),re})}function _(Y,J){const Q=y(Y,J);return Q?Promise.reject(Q):Promise.resolve()}function P(Y){const J=U.values().next().value;return J&&typeof J.runWithContext=="function"?J.runWithContext(Y):Y()}function T(Y,J){let Q;const[G,ee,X]=W$e(Y,J);Q=L0(G.reverse(),"beforeRouteLeave",Y,J);for(const te of G)te.leaveGuards.forEach(ue=>{Q.push(ha(ue,Y,J))});const K=_.bind(null,Y,J);return Q.push(K),q(Q).then(()=>{Q=[];for(const te of r.list())Q.push(ha(te,Y,J));return Q.push(K),q(Q)}).then(()=>{Q=L0(ee,"beforeRouteUpdate",Y,J);for(const te of ee)te.updateGuards.forEach(ue=>{Q.push(ha(ue,Y,J))});return Q.push(K),q(Q)}).then(()=>{Q=[];for(const te of X)if(te.beforeEnter)if(Bo(te.beforeEnter))for(const ue of te.beforeEnter)Q.push(ha(ue,Y,J));else Q.push(ha(te.beforeEnter,Y,J));return Q.push(K),q(Q)}).then(()=>(Y.matched.forEach(te=>te.enterCallbacks={}),Q=L0(X,"beforeRouteEnter",Y,J,P),Q.push(K),q(Q))).then(()=>{Q=[];for(const te of a.list())Q.push(ha(te,Y,J));return Q.push(K),q(Q)}).catch(te=>vr(te,an.NAVIGATION_CANCELLED)?te:Promise.reject(te))}function O(Y,J,Q){s.list().forEach(G=>P(()=>G(Y,J,Q)))}function M(Y,J,Q,G,ee){const X=y(Y,J);if(X)return X;const K=J===oa,te=Rl?history.state:{};Q&&(G||K?o.replace(Y.fullPath,Ht({scroll:K&&te&&te.scroll},ee)):o.push(Y.fullPath,ee)),l.value=Y,z(Y,J,Q,K),B()}let I;function k(){I||(I=o.listen((Y,J,Q)=>{if(!V.listening)return;const G=v(Y),ee=$(G,V.currentRoute.value);if(ee){S(Ht(ee,{replace:!0,force:!0}),G).catch(od);return}c=G;const X=l.value;Rl&&D$e(PM(X.fullPath,Q.delta),Ev()),T(G,X).catch(K=>vr(K,an.NAVIGATION_ABORTED|an.NAVIGATION_CANCELLED)?K:vr(K,an.NAVIGATION_GUARD_REDIRECT)?(S(Ht(b(K.to),{force:!0}),G).then(te=>{vr(te,an.NAVIGATION_ABORTED|an.NAVIGATION_DUPLICATED)&&!Q.delta&&Q.type===gw.pop&&o.go(-1,!1)}).catch(od),Promise.reject()):(Q.delta&&o.go(-Q.delta,!1),F(K,G,X))).then(K=>{K=K||M(G,X,!1),K&&(Q.delta&&!vr(K,an.NAVIGATION_CANCELLED)?o.go(-Q.delta,!1):Q.type===gw.pop&&vr(K,an.NAVIGATION_ABORTED|an.NAVIGATION_DUPLICATED)&&o.go(-1,!1)),O(G,X,K)}).catch(od)}))}let E=fu(),R=fu(),D;function F(Y,J,Q){B(Y);const G=R.list();return G.length?G.forEach(ee=>ee(Y,J,Q)):console.error(Y),Promise.reject(Y)}function N(){return D&&l.value!==oa?Promise.resolve():new Promise((Y,J)=>{E.add([Y,J])})}function B(Y){return D||(D=!Y,k(),E.list().forEach(([J,Q])=>Y?Q(Y):J()),E.reset()),Y}function z(Y,J,Q,G){const{scrollBehavior:ee}=t;if(!Rl||!ee)return Promise.resolve();const X=!Q&&R$e(PM(Y.fullPath,0))||(G||!Q)&&history.state&&history.state.scroll||null;return pt().then(()=>ee(Y,J,X)).then(K=>K&&k$e(K)).catch(K=>F(K,Y,J))}const W=Y=>o.go(Y);let j;const U=new Set,V={currentRoute:l,listening:!0,addRoute:h,removeRoute:p,clearRoutes:e.clearRoutes,hasRoute:m,getRoutes:g,resolve:v,options:t,push:w,replace:x,go:W,back:()=>W(-1),forward:()=>W(1),beforeEach:r.add,beforeResolve:a.add,afterEach:s.add,onError:R.add,isReady:N,install(Y){Y.component("RouterLink",cAe),Y.component("RouterView",hAe),Y.config.globalProperties.$router=V,Object.defineProperty(Y.config.globalProperties,"$route",{enumerable:!0,get:()=>Lt(l)}),Rl&&!j&&l.value===oa&&(j=!0,w(o.location).catch(G=>{}));const J={};for(const G in oa)Object.defineProperty(J,G,{get:()=>l.value[G],enumerable:!0});Y.provide(Mv,V),Y.provide(m$,kI(J)),Y.provide(vw,l);const Q=Y.unmount;U.add(Y),Y.unmount=function(){U.delete(Y),U.size<1&&(c=oa,I&&I(),I=null,l.value=oa,j=!1,D=!1),Q()}}};function q(Y){return Y.reduce((J,Q)=>J.then(()=>P(Q)),Promise.resolve())}return V}function zPe(){return Je(Mv)}function HPe(t){return Je(m$)}const gAe=[{path:"/",name:"dashboard",redirect:"/dashboard/ecommerce"},{path:"/dashboard/analytics",name:"dashboard-analytics",component:()=>ze(()=>import("./Dashboard-DWJ-7hU1.js"),__vite__mapDeps([0,1,2,3,4,5])),meta:{rule:"editor",role:"dashboard.view"}},{path:"/my-data",name:"my-data",component:()=>ze(()=>import("./myData-Dl1l_agX.js"),__vite__mapDeps([6,7])),meta:{rule:"editor"}},{path:"/dashboard/ecommerce",name:"dashboard-ecommerce",component:()=>ze(()=>import("./Dashboard-DWJ-7hU1.js"),__vite__mapDeps([0,1,2,3,4,5])),meta:{rule:"admin",role:"dashboard.view"}},{path:"/config/manage/const",component:()=>ze(()=>import("./Const-BbvgiNia.js"),__vite__mapDeps([8,9,10,11])),meta:{breadcrumb:[{title:"خانه",url:"/"},{title:"مدیریت ثابت ها",active:!0}],pageTitle:"مدیریت ثابت ها",rule:"editor",role:"config.statics",parent:"manage",no_scroll:!0}},{path:"/config/manage/wallet",component:()=>ze(()=>import("./wallet-DXWKA2NQ.js"),__vite__mapDeps([12,13])),meta:{breadcrumb:[{title:"خانه",url:"/"},{title:"مدیریت کیف پول",active:!0}],pageTitle:"مدیریت کیف پول",rule:"editor",role:"config.wallet",superAdminOnly:!0,parent:"manage",no_scroll:!0}},{path:"/config/manage/accounting",component:()=>ze(()=>import("./accounting-CXNK39dF.js"),__vite__mapDeps([14,2,15,16,17])),meta:{breadcrumb:[{title:"خانه",url:"/"},{title:"اتصال حسابداری",active:!0}],pageTitle:"اتصال حسابداری",rule:"editor",role:"config.accounting",parent:"manage",no_scroll:!0}},{path:"/config/manage/wage",component:()=>ze(()=>import("./wage-BgO7d8Zq.js"),__vite__mapDeps([18,2,19])),meta:{breadcrumb:[{title:"خانه",url:"/"},{title:"اجرت",active:!0}],pageTitle:"اجرت",rule:"editor",role:"config.wage",parent:"manage",no_scroll:!0}},{path:"/config/manage/report",component:()=>ze(()=>import("./report-BZwqp4wm.js"),__vite__mapDeps([20,21])),meta:{breadcrumb:[{title:"خانه",url:"/"},{title:"گزارش",active:!0}],pageTitle:"گزارش",rule:"editor",role:"config.report",parent:"manage",no_scroll:!0}},{path:"/apps/product/",redirect:"/apps/product/list",name:"product"},{path:"/product/change/percent",component:()=>ze(()=>import("./ChangePercent-2MR1RuUp.js"),[]),meta:{rule:"editor",role:"product.percent",parent:"product",no_scroll:!0}},{path:"/apps/product/add",component:()=>ze(()=>import("./AddProduct-CvfafZ03.js"),__vite__mapDeps([22,10,23,24])),meta:{rule:"editor",role:"product.create",parent:"product",no_scroll:!0}},{path:"/apps/product/edit/:id/:variant_id?",name:"product-edit",component:()=>ze(()=>import("./EditProduct-3lcOmFDK.js"),__vite__mapDeps([25,22,10,23,24])),meta:{rule:"editor",role:"product.list.edit",parent:"product",no_scroll:!0}},{path:"/apps/product/list",name:"product-list",component:()=>ze(()=>import("./ProductList-GHlxqjVF.js"),__vite__mapDeps([26,27,1,2,28,29,30,31,9,32])),meta:{rule:"editor",role:"product.list",parent:"product",no_scroll:!0}},{path:"/category",redirect:"/category/list",name:"category"},{path:"/category/add/:id?",name:"category-add",component:()=>ze(()=>import("./Add-CdH53yqV.js"),__vite__mapDeps([33,34,35,36,10])),meta:{rule:"editor",role:"collection.create",parent:"category",no_scroll:!0}},{path:"/category/edit/:id",component:()=>ze(()=>import("./Edit-BJ5-os70.js"),__vite__mapDeps([37,34,35,36,10])),name:"category-edit",meta:{rule:"editor",role:"collection.list.edit",parent:"category",no_scroll:!0}},{path:"/category/list",name:"category-list",component:()=>ze(()=>import("./List-166e0qeN.js"),__vite__mapDeps([38,27,1,2,28,29,39,34,35,36,10,9])),meta:{rule:"editor",role:"collection.list",parent:"category",no_scroll:!0}},{path:"/add/findoc",component:()=>ze(()=>import("./addFinDoc-kdexvNXV.js"),__vite__mapDeps([40,41,35,36])),meta:{rule:"editor",role:"document.create"}},{path:"/edit/findoc/:id",component:()=>ze(()=>import("./addFinDoc-kdexvNXV.js"),__vite__mapDeps([40,41,35,36])),meta:{rule:"editor",role:"document.list.edit"}},{path:"/order",redirect:"/order/list",name:"order"},{path:"/order/list",component:()=>ze(()=>import("./List-CLqbrntB.js"),__vite__mapDeps([42,27,1,2,28,29,43,44,45,46,3,4,23,47,48,49,50])),meta:{rule:"editor",role:"order.list",superAdminOnly:!0,parent:"order",no_scroll:!0}},{path:"/order/omde-list",component:()=>ze(()=>import("./OmdeList-D3y3JuDv.js"),__vite__mapDeps([51,27,1,2,28,29,43,44,45,46,3,4,23,47,48,49,52])),meta:{rule:"editor",role:"order.omde",parent:"order",no_scroll:!0}},{path:"/order/make",component:()=>ze(()=>import("./MakeOrder-D_SjEFcs.js"),__vite__mapDeps([53,27,1,2,28,29,43,44,45,46,3,4,23,47,48,49,54])),meta:{rule:"editor",role:"order.makeOrder",parent:"order",no_scroll:!0}},{path:"/order/create",component:()=>ze(()=>import("./create-BCbtKbMi.js"),__vite__mapDeps([55,27,1,2,28,29,31,7,56])),meta:{rule:"editor",role:"order.create",superAdminOnly:!0,parent:"order",no_scroll:!0}},{path:"/order/tamin-list",component:()=>ze(()=>import("./TaminList-m6Vqk25d.js"),__vite__mapDeps([57,27,1,2,28,29,43,44,45,46,3,4,23,47,48,49,58])),meta:{rule:"editor",role:"order.tamin",parent:"order",no_scroll:!0}},{path:"/major/promotion/list",component:()=>ze(()=>import("./promotion_list-RkmZV5Nb.js"),__vite__mapDeps([59,27,1,2,28,29,39,60,61,35,36,62,63,64])),meta:{rule:"editor",role:"offers.list",no_scroll:!0}},{path:"/major/promotion/add",component:()=>ze(()=>import("./promotion_add_edit-jiuK4lfb.js"),__vite__mapDeps([65,60,61,35,36,62])),meta:{rule:"editor",role:"offers.create",no_scroll:!0}},{path:"/major/promotion/edit/:id",component:()=>ze(()=>import("./promotion_add_edit-jiuK4lfb.js"),__vite__mapDeps([65,60,61,35,36,62])),meta:{rule:"editor",role:"offers.list.edit",no_scroll:!0}},{path:"/major/promotion/tak/add",component:()=>ze(()=>import("./promotion_tak_add_edit-DA_k0I4c.js"),__vite__mapDeps([66,63,61,35,36,62])),meta:{rule:"editor",role:"offers.create.tak",superAdminOnly:!0,no_scroll:!0}},{path:"/major/promotion/tak/edit/:id",component:()=>ze(()=>import("./promotion_tak_add_edit-DA_k0I4c.js"),__vite__mapDeps([66,63,61,35,36,62])),meta:{rule:"editor",role:"offers.list.tak.edit",superAdminOnly:!0,no_scroll:!0}},{path:"/major/promotion/autopromotion",component:()=>ze(()=>import("./autopromotion-WLX8YCc1.js"),[]),meta:{rule:"editor",role:"offers.autopromotion",no_scroll:!0}},{path:"/major/offersIgnore",component:()=>ze(()=>import("./offersIgnore-add-edit-Cmton9Iz.js"),__vite__mapDeps([67,27,1,2,28,29,68])),meta:{rule:"editor",role:"offersIgnore"}},{path:"/comments",name:"comments",component:()=>ze(()=>import("./Comments-DvxFdxEP.js"),__vite__mapDeps([69,70,27,1,2,28,29,43,44,45,46,3,4,23,47,48,49,71])),meta:{breadcrumb:[{title:"خانه",url:"/"},{title:"دیدگاه ها",active:!0}],pageTitle:"دیدگاه ها",rule:"editor",role:"comment",no_scroll:!0}},{path:"/sms/create",name:"create_sms",component:()=>ze(()=>import("./create-Bz_jl_71.js"),__vite__mapDeps([72,27,1,2,28,29,73])),meta:{breadcrumb:[{title:"خانه",url:"/"},{title:"ارسال پیامک",active:!0}],pageTitle:"ارسال پیامک",rule:"editor",role:"sms.create",no_scroll:!0}},{path:"/notify",name:"notify",component:()=>ze(()=>import("./user-DmSbNUqc.js"),__vite__mapDeps([74,27,1,2,28,29,75])),meta:{breadcrumb:[{title:"خانه",url:"/"},{title:"لیست نوتیفیکیشن های دریافتی",active:!0}],pageTitle:"لیست نوتیفیکیشن های ذریافتی",rule:"editor",role:"notify.me",no_scroll:!0}},{path:"/notify/create",name:"create_notify",component:()=>ze(()=>import("./create-DSDeteBR.js"),[]),meta:{breadcrumb:[{title:"خانه",url:"/"},{title:"ارسال نوتیفیکیشن",active:!0}],pageTitle:"ارسال نوتیفیکیشن",rule:"editor",role:"notify.create",no_scroll:!0}},{path:"/wallet",name:"wallet",component:()=>ze(()=>import("./wallet-DkHAMmjF.js"),__vite__mapDeps([76,27,1,2,28,29])),meta:{breadcrumb:[{title:"خانه",url:"/"},{title:"لیست کیف پول های شارژ شده",active:!0}],pageTitle:"لیست کیف پول های شارژ شده",rule:"editor",role:"wallet",no_scroll:!0}},{path:"/reagent/edit/:id",name:"reagent-edit",component:()=>ze(()=>import("./EditReagent-DwXyXJ1x.js"),__vite__mapDeps([77,78,79,10,48,80,81,49,46,82])),meta:{rule:"editor",role:"persons.list.sellers.edit",parent:"product",no_scroll:!0}},{path:"/reagent/add",name:"reagent-add",component:()=>ze(()=>import("./EditReagent-DwXyXJ1x.js"),__vite__mapDeps([77,78,79,10,48,80,81,49,46,82])),meta:{rule:"editor",role:"persons.create",parent:"product",no_scroll:!0}},{path:"/reagent/view/:id",name:"reagent-view",component:()=>ze(()=>import("./AgentDetail-JeRg2GEi.js"),__vite__mapDeps([83,1,2,84])),meta:{rule:"editor",role:"persons.list.sellers.view",parent:"product",no_scroll:!0}},{path:"/bulkCustomer/edit/:id",name:"bulkCustomer-edit",component:()=>ze(()=>import("./EditBulkCustomer-DHEdY76M.js"),__vite__mapDeps([85,86,35,36,10,79,87,2,88,48,80,81,46,16])),meta:{rule:"editor",role:"persons.list.client.omde.edit",parent:"product",no_scroll:!0}},{path:"/bulkCustomer/view/:id",name:"bulkCustomer-view",component:()=>ze(()=>import("./ViewOmdeCustomer-n6uGE_JK.js"),__vite__mapDeps([89,90,1,2,81,48,91])),meta:{rule:"editor",role:"persons.list.client.omde.view",parent:"product",no_scroll:!0}},{path:"/singleCustomer/edit/:id",name:"singleCustomer-edit",component:()=>ze(()=>import("./EditSingleCustomer-DTV5ZFem.js"),__vite__mapDeps([92,93,79,87,2,88,48,94])),meta:{rule:"editor",role:"persons.list.client.single.edit",superAdminOnly:!0,parent:"product",no_scroll:!0}},{path:"/singleCustomer/view/:id",name:"singleCustomer-view",component:()=>ze(()=>import("./ViewSingleCustomer-DmXKmHGI.js"),__vite__mapDeps([95,90,1,2,81,48,91])),meta:{rule:"editor",role:"persons.list.client.single.view",superAdminOnly:!0,parent:"product",no_scroll:!0}},{path:"/customer/omde-list",name:"omde-list-customer",component:()=>ze(()=>import("./OmdeList-aVLywWtp.js"),__vite__mapDeps([96,97,2,27,1,28,29,39,30,86,35,36,10,79,87,88,48,80,81,46,16,45,98])),meta:{breadcrumb:[{title:"خانه",url:"/"},{title:"مشتریان عمده",active:!0}],pageTitle:"مشتریان عمده",rule:"editor",role:"persons.list.client.omde"}},{path:"/customer/omde-non-verified-list",name:"omde-non-verified-list",component:()=>ze(()=>import("./OmdeNonVerifiedList-CRSC0a38.js"),__vite__mapDeps([99,97,2,27,1,28,29,39,30,86,35,36,10,79,87,88,48,80,81,46,16,45,98])),meta:{breadcrumb:[{title:"خانه",url:"/"},{title:"مشتریان در انتظار",active:!0}],pageTitle:"مشتریان در انتظار",rule:"editor",role:"persons.list.client.omde"}},{path:"/customer/banker-list",name:"banker-list",component:()=>ze(()=>import("./BankerList-D669FBjo.js"),__vite__mapDeps([100,97,2,27,1,28,29,39,30,86,35,36,10,79,87,88,48,80,81,46,16,45,98])),meta:{breadcrumb:[{title:"خانه",url:"/"},{title:"لیست بنکداران",active:!0}],pageTitle:"لیست بنکداران",rule:"editor",role:"persons.list.client.omde",superAdminOnly:!0}},{path:"/customer/shopkeeper-list",name:"shopkeeper-list",component:()=>ze(()=>import("./ShopkeeperList-BEzGdfo_.js"),__vite__mapDeps([101,97,2,27,1,28,29,39,30,86,35,36,10,79,87,88,48,80,81,46,16,45,98])),meta:{breadcrumb:[{title:"خانه",url:"/"},{title:"لیست مغازه داران حضوری",active:!0}],pageTitle:"لیست مغازه داران حضوری",rule:"editor",role:"persons.list.client.omde",superAdminOnly:!0}},{path:"/customer/omde-archived-list",name:"omde-archived-list",component:()=>ze(()=>import("./OmdeArchivedList-4HZ0YAiM.js"),__vite__mapDeps([102,97,2,27,1,28,29,39,30,86,35,36,10,79,87,88,48,80,81,46,16,45,98])),meta:{breadcrumb:[{title:"خانه",url:"/"},{title:"مشتریان بایگانی",active:!0}],pageTitle:"مشتریان بایگانی",rule:"editor",role:"persons.list.client.omde"}},{path:"/customer/reagent-list",name:"raegentList",component:()=>ze(()=>import("./ReagentList-C0dDuwVE.js"),__vite__mapDeps([103,27,1,2,28,29,43,44,45,46,3,4,23,47,48,49,39])),meta:{breadcrumb:[{title:"خانه",url:"/"},{title:"کارشناسان فروش",active:!0}],pageTitle:"کارشناسان فروش",role:"persons.list.sellers",rule:"editor"}},{path:"/customer/add",name:"add-customer",component:()=>ze(()=>import("./AddCustomer-DnqegEEB.js"),__vite__mapDeps([104,86,35,36,10,79,87,2,88,48,80,81,46,16,78,49,82,93,94,105])),meta:{breadcrumb:[{title:"خانه",url:"/"},{title:"مشتریان"},{title:"افزودن مشتری",active:!0}],pageTitle:"افزودن مشتری",role:"persons.create",rule:"editor"}},{path:"/customer/list",name:"list-customer",component:()=>ze(()=>import("./SingleCustomer-B9GIcC68.js"),__vite__mapDeps([106,27,1,2,28,29,4,107])),meta:{breadcrumb:[{title:"خانه",url:"/"},{title:"مشتریان"}],pageTitle:"لیست مشتریان",role:"persons.list.client.single",superAdminOnly:!0,rule:"editor"}},{path:"/report/order_item",name:"report_order_item",component:()=>ze(()=>import("./order_item-7Q53VUbN.js"),__vite__mapDeps([108,87,2,88,1,109])),meta:{role:"report.order.item",rule:"editor"}},{path:"/report/product",name:"report_product",component:()=>ze(()=>import("./product-C5P80aHW.js"),__vite__mapDeps([110,87,2,88,111])),meta:{role:"report.product",rule:"editor"}},{path:"/finical/list",name:"finical_list",component:()=>ze(()=>import("./list-BUpibcCs.js"),__vite__mapDeps([112,27,1,2,28,29,39,41,35,36,9])),meta:{role:"document.list",rule:"editor"}},{path:"/user/list",component:()=>ze(()=>import("./ListUser-V5KZlNnL.js"),__vite__mapDeps([113,27,1,2,28,29,39,114,35,36,115,9])),meta:{breadcrumb:[{title:"خانه",url:"/"},{title:"لیست مدیران",active:!0}],pageTitle:"لیست مدیران",role:"user.list",rule:"editor",parent:"user",no_scroll:!0}},{path:"/user/create",component:()=>ze(()=>import("./UserCreate-B0hNHwjp.js"),__vite__mapDeps([114,35,36,115])),meta:{breadcrumb:[{title:"خانه",url:"/"},{title:"افزودن کاربر",active:!0}],pageTitle:"افزودن کاربر",role:"user.create",rule:"editor",parent:"user",no_scroll:!0}},{path:"/user/edit/:id",component:()=>ze(()=>import("./UserEdit-lnrPwbCv.js"),__vite__mapDeps([116,114,35,36,115])),meta:{breadcrumb:[{title:"خانه",url:"/"},{title:"ویرایش نوع کاربر",active:!0}],pageTitle:"ویرایش نوع کاربر",rule:"editor",role:"user.list.edit",parent:"user",no_scroll:!0}},{path:"/permission",component:()=>ze(()=>import("./Permission-ChUHkDie.js"),__vite__mapDeps([117,7,118])),meta:{breadcrumb:[{title:"خانه",url:"/"},{title:"دسترسی ها",active:!0}],pageTitle:"دسترسی ها",rule:"editor",role:"user.permission",parent:"permission",no_scroll:!0}},{path:"/city/create",component:()=>ze(()=>import("./createCity-IOL5uAp-.js"),__vite__mapDeps([119,120,35,36,79])),meta:{breadcrumb:[{title:"خانه",url:"/"},{title:"افزودن شهر",active:!0}],pageTitle:"افزودن شهر",rule:"editor",role:"cities.create",parent:"city",no_scroll:!0}},{path:"/city/list",component:()=>ze(()=>import("./cityList-CLAq_V2X.js"),__vite__mapDeps([121,27,1,2,28,29,39,120,35,36,79,9])),meta:{breadcrumb:[{title:"خانه",url:"/"},{title:"لیست شهر ها",active:!0}],pageTitle:"لیست شهر ها",rule:"editor",role:"cities.list",parent:"city",no_scroll:!0}},{path:"/statics",name:"statics",component:()=>ze(()=>import("./index-DbpLOoM-.js"),__vite__mapDeps([122,1,2])),meta:{breadcrumb:[{title:"خانه",url:"/"},{title:"آمار",active:!0}],pageTitle:"آمار",rule:"editor",role:"statics",no_scroll:!0}},{path:"/newsletters",name:"newsletters",component:()=>ze(()=>import("./newsletters-ChrvxoA6.js"),__vite__mapDeps([123,27,1,2,28,29,124])),meta:{breadcrumb:[{title:"خانه",url:"/"},{title:"خبرنامه",active:!0}],pageTitle:"خبرنامه",rule:"editor",no_scroll:!0}},{path:"/branch/add",name:"add-branch",component:()=>ze(()=>import("./AddBranches-DymI7uEo.js"),__vite__mapDeps([125,126,35,36])),meta:{breadcrumb:[{title:"خانه",url:"/"},{title:"شعب"},{title:"افزودن شعب",active:!0}],pageTitle:"افزودن شعب",role:"branch.create",superAdminOnly:!0,rule:"editor"}},{path:"/branch/edit/:id",name:"edit-branch",component:()=>ze(()=>import("./EditBranches-VJ6QXuC9.js"),__vite__mapDeps([127,126,35,36])),meta:{pageTitle:"ویرایش شعب",role:"branch.create",superAdminOnly:!0,rule:"editor"}},{path:"/branch/list",name:"list-branch",component:()=>ze(()=>import("./ListBranches-C7SXu9cB.js"),__vite__mapDeps([128,129,27,1,2,28,29,39,126,35,36])),meta:{breadcrumb:[{title:"خانه",url:"/"},{title:"شعب"},{title:"لیست شعب",active:!0}],pageTitle:"لیست شعب",role:"branch.list",superAdminOnly:!0,rule:"editor"}},{path:"/workshop/add",name:"add-workshop",component:()=>ze(()=>import("./AddWorkshop-DudIwgDB.js"),__vite__mapDeps([130,131,35,36])),meta:{breadcrumb:[{title:"خانه",url:"/"},{title:"کارگاه"},{title:"افزودن کارگاه",active:!0}],pageTitle:"افزودن کارگاه",role:"workshop.create",superAdminOnly:!0,rule:"editor"}},{path:"/workshop/edit/:id",name:"edit-workshop",component:()=>ze(()=>import("./EditWorkshop-CCAz5Q3q.js"),__vite__mapDeps([132,131,35,36])),meta:{pageTitle:"ویرایش کارگاه",role:"workshop.create",superAdminOnly:!0,rule:"editor"}},{path:"/workshop/list",name:"list-workshop",component:()=>ze(()=>import("./ListWorkshop-BIaGADxA.js"),__vite__mapDeps([133,129,27,1,2,28,29,39,131,35,36])),meta:{breadcrumb:[{title:"خانه",url:"/"},{title:"کارگاه"},{title:"لیست کارگاه ها",active:!0}],pageTitle:"لیست کارگاه ها",role:"workshop.list",superAdminOnly:!0,rule:"editor"}},{path:"/invoice/add",name:"add-invoice",component:()=>ze(()=>import("./AddInvoice-DdE29E9r.js"),__vite__mapDeps([134,35,36,27,1,2,28,29,135])),meta:{breadcrumb:[{title:"خانه",url:"/"},{title:"فاکتور انتقال"},{title:"افزودن فاکتور",active:!0}],pageTitle:"افزودن فاکتور",role:"invoice.create",rule:"editor"}},{path:"/invoice/edit/:id",name:"edit-invoice",component:()=>ze(()=>import("./EditInvoice-Z14oksL0.js"),__vite__mapDeps([136,134,35,36,27,1,2,28,29,135])),meta:{pageTitle:"ویرایش فاکتورها",role:"invoice.create",rule:"editor"}},{path:"/invoice/list",name:"list-invoice",component:()=>ze(()=>import("./ListInvoice-C0gF64PN.js"),__vite__mapDeps([137,27,1,2,28,29,39,134,35,36,135,9,138])),meta:{breadcrumb:[{title:"خانه",url:"/"},{title:"فاکتورانتقال"},{title:"لیست فاکتورها",active:!0}],pageTitle:"لیست فاکتورها",role:"invoice.list",rule:"editor"}}],mAe=[{path:"/auth/login",name:"page-login",component:()=>ze(()=>import("./Login-CsyZWAYt.js"),__vite__mapDeps([139,70,7,47,16,15,140])),meta:{rule:"editor"}},{path:"/reg",name:"reg",component:()=>ze(()=>import("./reg-CieCn523.js"),__vite__mapDeps([141,142])),meta:{rule:"editor"}}];function l8(t,e){return function(){return t.apply(e,arguments)}}const{toString:vAe}=Object.prototype,{getPrototypeOf:Ma}=Object,{iterator:yf,toStringTag:c8}=Symbol,Wd=(({hasOwnProperty:t})=>(e,n)=>t.call(e,n))(Object.prototype),u8=t=>typeof t=="string"&&(t==="__proto__"||t==="constructor"||t==="prototype"),d8=(t,e,n)=>t===Object.prototype||!n&&e===null,bAe=t=>{if(!Object.isExtensible(t))return!1;const e=Object.getOwnPropertyNames(t);return Object.getOwnPropertySymbols&&e.push(...Object.getOwnPropertySymbols(t)),e.every(n=>{if(u8(n))return!1;const i=Object.getOwnPropertyDescriptor(t,n);return!!i&&i.configurable&&i.writable===!0})},jd=(t,e)=>{let n=t;const i=[];for(;n!=null;){if(i.indexOf(n)!==-1)return!1;i.push(n);const o=Ma(n);if(d8(n,o,n===t))return!1;if(Wd(n,e))return!0;n=o}return!1},yAe=(t,e)=>t!=null&&jd(t,e)?t[e]:void 0,xAe=t=>{if(t==null||typeof t!="object"&&typeof t!="function")return t;const e=Ma(t);if(e===null&&bAe(t))return t;const n=Object.create(null),i=Object.create(null),o=[];let r=t;for(;r!=null&&o.indexOf(r)===-1;){o.push(r);const a=r===t?e:Ma(r);if(d8(r,a,r===t))break;const s=Object.getOwnPropertyNames(r);Object.getOwnPropertySymbols&&s.push(...Object.getOwnPropertySymbols(r));for(const l of s)u8(l)||Wd(i,l)||(n[l]=t[l],i[l]=!0);r=a}return n},v$=(t=>e=>{const n=vAe.call(e);return t[n]||(t[n]=n.slice(8,-1).toLowerCase())})(Object.create(null)),So=t=>(t=t.toLowerCase(),e=>v$(e)===t),Iv=t=>e=>typeof e===t,{isArray:Ks}=Array,Us=Iv("undefined");function Gc(t){return t!==null&&!Us(t)&&t.constructor!==null&&!Us(t.constructor)&&Oi(t.constructor.isBuffer)&&t.constructor.isBuffer(t)}const f8=So("ArrayBuffer");function wAe(t){let e;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?e=ArrayBuffer.isView(t):e=t&&t.buffer&&f8(t.buffer),e}const SAe=Iv("string"),Oi=Iv("function"),h8=Iv("number"),Kc=t=>t!==null&&typeof t=="object",CAe=t=>t===!0||t===!1,hp=t=>{if(!Kc(t))return!1;const e=Ma(t);return(e===null||e===Object.prototype||Ma(e)===null)&&!jd(t,c8)&&!jd(t,yf)},$Ae=t=>{if(!Kc(t)||Gc(t))return!1;try{return Object.keys(t).length===0&&Object.getPrototypeOf(t)===Object.prototype}catch{return!1}},AAe=So("Date"),_Ae=So("File"),PAe=t=>!!(t&&typeof t.uri<"u"),OAe=t=>t&&typeof t.getParts<"u",TAe=So("Blob"),EAe=So("FileList"),MAe=So("Set"),IAe=t=>Kc(t)&&Oi(t.pipe);function kAe(){return typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{}}const zM=kAe(),HM=typeof zM.FormData<"u"?zM.FormData:void 0,DAe=t=>{if(!t)return!1;if(HM&&t instanceof HM)return!0;const e=Ma(t);if(!e||e===Object.prototype||!Oi(t.append))return!1;const n=v$(t);return n==="formdata"||n==="object"&&Oi(t.toString)&&t.toString()==="[object FormData]"},RAe=So("URLSearchParams"),[LAe,FAe,NAe,BAe]=["ReadableStream","Request","Response","Headers"].map(So),zAe=t=>t.trim?t.trim():t.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function xf(t,e,{allOwnKeys:n=!1}={}){if(t===null||typeof t>"u")return;let i,o;if(typeof t!="object"&&(t=[t]),Ks(t))for(i=0,o=t.length;i0;)if(o=n[i],e===o.toLowerCase())return o;return null}const xs=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,g8=t=>!Us(t)&&t!==xs;function bw(...t){const{caseless:e,skipUndefined:n}=g8(this)&&this||{},i={},o=(r,a)=>{if(a==="__proto__"||a==="constructor"||a==="prototype")return;const s=e&&typeof a=="string"&&p8(i,a)||a,l=Wd(i,s)?i[s]:void 0;hp(l)&&hp(r)?i[s]=bw(l,r):hp(r)?i[s]=bw({},r):Ks(r)?i[s]=r.slice():(!n||!Us(r))&&(i[s]=r)};for(let r=0,a=t.length;r(xf(e,(o,r)=>{n&&Oi(o)?Object.defineProperty(t,r,{__proto__:null,value:l8(o,n),writable:!0,enumerable:!0,configurable:!0}):Object.defineProperty(t,r,{__proto__:null,value:o,writable:!0,enumerable:!0,configurable:!0})},{allOwnKeys:i}),t),WAe=t=>(t.charCodeAt(0)===65279&&(t=t.slice(1)),t),jAe=(t,e,n,i)=>{t.prototype=Object.create(e.prototype,i),Object.defineProperty(t.prototype,"constructor",{__proto__:null,value:t,writable:!0,enumerable:!1,configurable:!0}),Object.defineProperty(t,"super",{__proto__:null,value:e.prototype}),n&&Object.assign(t.prototype,n)},VAe=(t,e,n,i)=>{let o,r,a;const s={};if(e=e||{},t==null)return e;do{for(o=Object.getOwnPropertyNames(t),r=o.length;r-- >0;)a=o[r],(!i||i(a,t,e))&&!s[a]&&(e[a]=t[a],s[a]=!0);t=n!==!1&&Ma(t)}while(t&&(!n||n(t,e))&&t!==Object.prototype);return e},XAe=(t,e,n)=>{t=String(t),(n===void 0||n>t.length)&&(n=t.length),n-=e.length;const i=t.indexOf(e,n);return i!==-1&&i===n},YAe=t=>{if(!t)return null;if(Ks(t))return t;let e=t.length;if(!h8(e))return null;const n=new Array(e);for(;e-- >0;)n[e]=t[e];return n},GAe=(t=>e=>t&&e instanceof t)(typeof Uint8Array<"u"&&Ma(Uint8Array)),KAe=(t,e)=>{const i=(t&&t[yf]).call(t);let o;for(;(o=i.next())&&!o.done;){const r=o.value;e.call(t,r[0],r[1])}},UAe=(t,e)=>{let n;const i=[];for(;(n=t.exec(e))!==null;)i.push(n);return i},qAe=So("HTMLFormElement"),ZAe=t=>t.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(n,i,o){return i.toUpperCase()+o}),{propertyIsEnumerable:JAe}=Object.prototype,QAe=So("RegExp"),m8=(t,e)=>{const n=Object.getOwnPropertyDescriptors(t),i={};xf(n,(o,r)=>{let a;(a=e(o,r,t))!==!1&&(i[r]=a||o)}),Object.defineProperties(t,i)},e_e=t=>{m8(t,(e,n)=>{if(Oi(t)&&["arguments","caller","callee"].includes(n))return!1;const i=t[n];if(Oi(i)){if(e.enumerable=!1,"writable"in e){e.writable=!1;return}e.set||(e.set=()=>{throw Error("Can not rewrite read-only method '"+n+"'")})}})},t_e=(t,e)=>{const n={},i=o=>{o.forEach(r=>{n[r]=!0})};return Ks(t)?i(t):i(String(t).split(e)),n},n_e=()=>{},i_e=(t,e)=>t!=null&&Number.isFinite(t=+t)?t:e;function o_e(t){return!!(t&&Oi(t.append)&&t[c8]==="FormData"&&t[yf])}const r_e=t=>{const e=new WeakSet,n=i=>{if(Kc(i)){if(e.has(i))return;if(Gc(i))return i;if(!("toJSON"in i)){e.add(i);let o;if(MAe(i)){o=[];for(const r of i){const a=n(r);!Us(a)&&o.push(a)}}else o=Ks(i)?[]:{},xf(i,(r,a)=>{const s=n(r);!Us(s)&&(o[a]=s)});return e.delete(i),o}}return i};return n(t)},a_e=So("AsyncFunction"),s_e=t=>t&&(Kc(t)||Oi(t))&&Oi(t.then)&&Oi(t.catch),v8=((t,e)=>t?setImmediate:e?((n,i)=>(xs.addEventListener("message",({source:o,data:r})=>{o===xs&&r===n&&i.length&&i.shift()()},!1),o=>{i.push(o),xs.postMessage(n,"*")}))(`axios@${Math.random()}`,[]):n=>setTimeout(n))(typeof setImmediate=="function",Oi(xs.postMessage)),l_e=typeof queueMicrotask<"u"?queueMicrotask.bind(xs):typeof process<"u"&&process.nextTick||v8,b8=t=>t!=null&&Oi(t[yf]),c_e=t=>t!=null&&jd(t,yf)&&b8(t),me={isArray:Ks,isArrayBuffer:f8,isBuffer:Gc,isFormData:DAe,isArrayBufferView:wAe,isString:SAe,isNumber:h8,isBoolean:CAe,isObject:Kc,isPlainObject:hp,isEmptyObject:$Ae,isReadableStream:LAe,isRequest:FAe,isResponse:NAe,isHeaders:BAe,isUndefined:Us,isDate:AAe,isFile:_Ae,isReactNativeBlob:PAe,isReactNative:OAe,isBlob:TAe,isRegExp:QAe,isFunction:Oi,isStream:IAe,isURLSearchParams:RAe,isTypedArray:GAe,isFileList:EAe,forEach:xf,merge:bw,extend:HAe,trim:zAe,stripBOM:WAe,inherits:jAe,toFlatObject:VAe,kindOf:v$,kindOfTest:So,endsWith:XAe,toArray:YAe,forEachEntry:KAe,matchAll:UAe,isHTMLForm:qAe,hasOwnProperty:Wd,hasOwnProp:Wd,hasOwnInPrototypeChain:jd,getSafeProp:yAe,toSafeFlatObject:xAe,reduceDescriptors:m8,freezeMethods:e_e,toObjectSet:t_e,toCamelCase:ZAe,noop:n_e,toFiniteNumber:i_e,findKey:p8,global:xs,isContextDefined:g8,isSpecCompliantForm:o_e,toJSONObject:r_e,isAsyncFn:a_e,isThenable:s_e,setImmediate:v8,asap:l_e,isIterable:b8,isSafeIterable:c_e},u_e=me.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),d_e=t=>{const e={};let n,i,o;return t&&t.split(` + */let j$e=()=>location.protocol+"//"+location.host;function r8(t,e){const{pathname:n,search:i,hash:o}=e,r=t.indexOf("#");if(r>-1){let a=o.includes(t.slice(r))?t.slice(r).length:1,s=o.slice(a);return s[0]!=="/"&&(s="/"+s),AM(s,"")}return AM(n,t)+i+o}function V$e(t,e,n,i){let o=[],r=[],a=null;const s=({state:f})=>{const h=r8(t,location),p=n.value,g=e.value;let m=0;if(f){if(n.value=h,e.value=f,a&&a===p){a=null;return}m=g?f.position-g.position:0}else i(h);o.forEach(v=>{v(n.value,p,{delta:m,type:gw.pop,direction:m?m>0?R0.forward:R0.back:R0.unknown})})};function l(){a=n.value}function c(f){o.push(f);const h=()=>{const p=o.indexOf(f);p>-1&&o.splice(p,1)};return r.push(h),h}function u(){if(document.visibilityState==="hidden"){const{history:f}=window;if(!f.state)return;f.replaceState(Ht({},f.state,{scroll:Ev()}),"")}}function d(){for(const f of r)f();r=[],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:l,listen:c,destroy:d}}function EM(t,e,n,i=!1,o=!1){return{back:t,current:e,forward:n,replaced:i,position:window.history.length,scroll:o?Ev():null}}function X$e(t){const{history:e,location:n}=window,i={value:r8(t,n)},o={value:e.state};o.value||r(i.value,{back:null,current:i.value,forward:null,position:e.length-1,replaced:!0,scroll:null},!0);function r(l,c,u){const d=t.indexOf("#"),f=d>-1?(n.host&&document.querySelector("base")?t:t.slice(d))+l:j$e()+t+l;try{e[u?"replaceState":"pushState"](c,"",f),o.value=c}catch(h){console.error(h),n[u?"replace":"assign"](f)}}function a(l,c){r(l,Ht({},e.state,EM(o.value.back,l,o.value.forward,!0),c,{position:o.value.position}),!0),i.value=l}function s(l,c){const u=Ht({},o.value,e.state,{forward:l,scroll:Ev()});r(u.current,u,!0),r(l,Ht({},EM(i.value,l,null),{position:u.position+1},c),!1),i.value=l}return{location:i,state:o,push:s,replace:a}}function Y$e(t){t=T$e(t);const e=X$e(t),n=V$e(t,e.state,e.location,e.replace);function i(r,a=!0){a||n.pauseListeners(),history.go(r)}const o=Ht({location:"",base:t,go:i,createHref:M$e.bind(null,t)},e,n);return Object.defineProperty(o,"location",{enumerable:!0,get:()=>e.location.value}),Object.defineProperty(o,"state",{enumerable:!0,get:()=>e.state.value}),o}let ys=function(t){return t[t.Static=0]="Static",t[t.Param=1]="Param",t[t.Group=2]="Group",t}({});var An=function(t){return t[t.Static=0]="Static",t[t.Param=1]="Param",t[t.ParamRegExp=2]="ParamRegExp",t[t.ParamRegExpEnd=3]="ParamRegExpEnd",t[t.EscapeNext=4]="EscapeNext",t}(An||{});const G$e={type:ys.Static,value:""},K$e=/[a-zA-Z0-9_]/;function U$e(t){if(!t)return[[]];if(t==="/")return[[G$e]];if(!t.startsWith("/"))throw new Error(`Invalid path "${t}"`);function e(h){throw new Error(`ERR (${n})/"${c}": ${h}`)}let n=An.Static,i=n;const o=[];let r;function a(){r&&o.push(r),r=[]}let s=0,l,c="",u="";function d(){c&&(n===An.Static?r.push({type:ys.Static,value:c}):n===An.Param||n===An.ParamRegExp||n===An.ParamRegExpEnd?(r.length>1&&(l==="*"||l==="+")&&e(`A repeatable param (${c}) must be alone in its segment. eg: '/:ids+.`),r.push({type:ys.Param,value:c,regexp:u,repeatable:l==="*"||l==="+",optional:l==="*"||l==="?"})):e("Invalid state to consume buffer"),c="")}function f(){c+=l}for(;se.length?e.length===1&&e[0]===ui.Static+ui.Segment?1:-1:0}function a8(t,e){let n=0;const i=t.score,o=e.score;for(;n0&&e[e.length-1]<0}const eAe={strict:!1,end:!0,sensitive:!1};function tAe(t,e,n){const i=J$e(U$e(t.path),n),o=Ht(i,{record:t,parent:e,children:[],alias:[]});return e&&!o.record.aliasOf==!e.record.aliasOf&&e.children.push(o),o}function nAe(t,e){const n=[],i=new Map;e=$M(eAe,e);function o(d){return i.get(d)}function r(d,f,h){const p=!h,g=DM(d);g.aliasOf=h&&h.record;const m=$M(e,d),v=[g];if("alias"in d){const w=typeof d.alias=="string"?[d.alias]:d.alias;for(const x of w)v.push(DM(Ht({},g,{components:h?h.record.components:g.components,path:x,aliasOf:h?h.record:g})))}let b,y;for(const w of v){const{path:x}=w;if(f&&x[0]!=="/"){const $=f.record.path,S=$[$.length-1]==="/"?"":"/";w.path=f.record.path+(x&&S+x)}if(b=tAe(w,f,m),h?h.alias.push(b):(y=y||b,y!==b&&y.alias.push(b),p&&d.name&&!RM(b)&&a(d.name)),s8(b)&&l(b),g.children){const $=g.children;for(let S=0;S<$.length;S++)r($[S],b,h&&h.children[S])}h=h||b}return y?()=>{a(y)}:od}function a(d){if(i8(d)){const f=i.get(d);f&&(i.delete(d),n.splice(n.indexOf(f),1),f.children.forEach(a),f.alias.forEach(a))}else{const f=n.indexOf(d);f>-1&&(n.splice(f,1),d.record.name&&i.delete(d.record.name),d.children.forEach(a),d.alias.forEach(a))}}function s(){return n}function l(d){const f=rAe(d,n);n.splice(f,0,d),d.record.name&&!RM(d)&&i.set(d.record.name,d)}function c(d,f){let h,p={},g,m;if("name"in d&&d.name){if(h=i.get(d.name),!h)throw _c(an.MATCHER_NOT_FOUND,{location:d});m=h.record.name,p=Ht(kM(f.params,h.keys.filter(y=>!y.optional).concat(h.parent?h.parent.keys.filter(y=>y.optional):[]).map(y=>y.name)),d.params&&kM(d.params,h.keys.map(y=>y.name))),g=h.stringify(p)}else if(d.path!=null)g=d.path,h=n.find(y=>y.re.test(g)),h&&(p=h.parse(g),m=h.record.name);else{if(h=f.name?i.get(f.name):n.find(y=>y.re.test(f.path)),!h)throw _c(an.MATCHER_NOT_FOUND,{location:d,currentLocation:f});m=h.record.name,p=Ht({},f.params,d.params),g=h.stringify(p)}const v=[];let b=h;for(;b;)v.unshift(b.record),b=b.parent;return{name:m,path:g,params:p,matched:v,meta:oAe(v)}}t.forEach(d=>r(d));function u(){n.length=0,i.clear()}return{addRoute:r,resolve:c,removeRoute:a,clearRoutes:u,getRoutes:s,getRecordMatcher:o}}function kM(t,e){const n={};for(const i of e)i in t&&(n[i]=t[i]);return n}function DM(t){const e={path:t.path,redirect:t.redirect,name:t.name,meta:t.meta||{},aliasOf:t.aliasOf,beforeEnter:t.beforeEnter,props:iAe(t),children:t.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:"components"in t?t.components||null:t.component&&{default:t.component}};return Object.defineProperty(e,"mods",{value:{}}),e}function iAe(t){const e={},n=t.props||!1;if("component"in t)e.default=n;else for(const i in t.components)e[i]=typeof n=="object"?n[i]:n;return e}function RM(t){for(;t;){if(t.record.aliasOf)return!0;t=t.parent}return!1}function oAe(t){return t.reduce((e,n)=>Ht(e,n.meta),{})}function rAe(t,e){let n=0,i=e.length;for(;n!==i;){const r=n+i>>1;a8(t,e[r])<0?i=r:n=r+1}const o=aAe(t);return o&&(i=e.lastIndexOf(o,i-1)),i}function aAe(t){let e=t;for(;e=e.parent;)if(s8(e)&&a8(t,e)===0)return e}function s8({record:t}){return!!(t.name||t.components&&Object.keys(t.components).length||t.redirect)}function LM(t){const e=Je(Mv),n=Je(m$),i=L(()=>{const l=Lt(t.to);return e.resolve(l)}),o=L(()=>{const{matched:l}=i.value,{length:c}=l,u=l[c-1],d=n.matched;if(!u||!d.length)return-1;const f=d.findIndex(Ac.bind(null,u));if(f>-1)return f;const h=FM(l[c-2]);return c>1&&FM(u)===h&&d[d.length-1].path!==h?d.findIndex(Ac.bind(null,l[c-2])):f}),r=L(()=>o.value>-1&&dAe(n.params,i.value.params)),a=L(()=>o.value>-1&&o.value===n.matched.length-1&&n8(n.params,i.value.params));function s(l={}){if(uAe(l)){const c=e[Lt(t.replace)?"replace":"push"](Lt(t.to)).catch(od);return t.viewTransition&&typeof document<"u"&&"startViewTransition"in document&&document.startViewTransition(()=>c),c}return Promise.resolve()}return{route:i,href:L(()=>i.value.href),isActive:r,isExactActive:a,navigate:s}}function sAe(t){return t.length===1?t[0]:t}const lAe=oe({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:LM,setup(t,{slots:e}){const n=$t(LM(t)),{options:i}=Je(Mv),o=L(()=>({[NM(t.activeClass,i.linkActiveClass,"router-link-active")]:n.isActive,[NM(t.exactActiveClass,i.linkExactActiveClass,"router-link-exact-active")]:n.isExactActive}));return()=>{const r=e.default&&sAe(e.default(n));return t.custom?r:sr("a",{"aria-current":n.isExactActive?t.ariaCurrentValue:null,href:n.href,onClick:n.navigate,class:o.value},r)}}}),cAe=lAe;function uAe(t){if(!(t.metaKey||t.altKey||t.ctrlKey||t.shiftKey)&&!t.defaultPrevented&&!(t.button!==void 0&&t.button!==0)){if(t.currentTarget&&t.currentTarget.getAttribute){const e=t.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(e))return}return t.preventDefault&&t.preventDefault(),!0}}function dAe(t,e){for(const n in e){const i=e[n],o=t[n];if(typeof i=="string"){if(i!==o)return!1}else if(!Bo(o)||o.length!==i.length||i.some((r,a)=>r.valueOf()!==o[a].valueOf()))return!1}return!0}function FM(t){return t?t.aliasOf?t.aliasOf.path:t.path:""}const NM=(t,e,n)=>t??e??n,fAe=oe({name:"RouterView",inheritAttrs:!1,props:{name:{type:String,default:"default"},route:Object},compatConfig:{MODE:3},setup(t,{attrs:e,slots:n}){const i=Je(vw),o=L(()=>t.route||i.value),r=Je(TM,0),a=L(()=>{let c=Lt(r);const{matched:u}=o.value;let d;for(;(d=u[c])&&!d.components;)c++;return c}),s=L(()=>o.value.matched[a.value]);ot(TM,L(()=>a.value+1)),ot(H$e,s),ot(vw,o);const l=ae();return ye(()=>[l.value,s.value,t.name],([c,u,d],[f,h,p])=>{u&&(u.instances[d]=c,h&&h!==u&&c&&c===f&&(u.leaveGuards.size||(u.leaveGuards=h.leaveGuards),u.updateGuards.size||(u.updateGuards=h.updateGuards))),c&&u&&(!h||!Ac(u,h)||!f)&&(u.enterCallbacks[d]||[]).forEach(g=>g(c))},{flush:"post"}),()=>{const c=o.value,u=t.name,d=s.value,f=d&&d.components[u];if(!f)return BM(n.default,{Component:f,route:c});const h=d.props[u],p=h?h===!0?c.params:typeof h=="function"?h(c):h:null,m=sr(f,Ht({},p,e,{onVnodeUnmounted:v=>{v.component.isUnmounted&&(d.instances[u]=null)},ref:l}));return BM(n.default,{Component:m,route:c})||m}}});function BM(t,e){if(!t)return null;const n=t(e);return n.length===1?n[0]:n}const hAe=fAe;function pAe(t){const e=nAe(t.routes,t),n=t.parseQuery||B$e,i=t.stringifyQuery||OM,o=t.history,r=fu(),a=fu(),s=fu(),l=ie(oa);let c=oa;Rl&&t.scrollBehavior&&"scrollRestoration"in history&&(history.scrollRestoration="manual");const u=k0.bind(null,Y=>""+Y),d=k0.bind(null,S$e),f=k0.bind(null,Hd);function h(Y,J){let Q,G;return i8(Y)?(Q=e.getRecordMatcher(Y),G=J):G=Y,e.addRoute(G,Q)}function p(Y){const J=e.getRecordMatcher(Y);J&&e.removeRoute(J)}function g(){return e.getRoutes().map(Y=>Y.record)}function m(Y){return!!e.getRecordMatcher(Y)}function v(Y,J){if(J=Ht({},J||l.value),typeof Y=="string"){const te=D0(n,Y,J.path),ue=e.resolve({path:te.path},J),se=o.createHref(te.fullPath);return Ht(te,ue,{params:f(ue.params),hash:Hd(te.hash),redirectedFrom:void 0,href:se})}let Q;if(Y.path!=null)Q=Ht({},Y,{path:D0(n,Y.path,J.path).path});else{const te=Ht({},Y.params);for(const ue in te)te[ue]==null&&delete te[ue];Q=Ht({},Y,{params:d(te)}),J.params=d(J.params)}const G=e.resolve(Q,J),ee=Y.hash||"";G.params=u(f(G.params));const X=A$e(i,Ht({},Y,{hash:y$e(ee),path:G.path})),K=o.createHref(X);return Ht({fullPath:X,hash:ee,query:i===OM?z$e(Y.query):Y.query||{}},G,{redirectedFrom:void 0,href:K})}function b(Y){return typeof Y=="string"?D0(n,Y,l.value.path):Ht({},Y)}function y(Y,J){if(c!==Y)return _c(an.NAVIGATION_CANCELLED,{from:J,to:Y})}function w(Y){return S(Y)}function x(Y){return w(Ht(b(Y),{replace:!0}))}function $(Y,J){const Q=Y.matched[Y.matched.length-1];if(Q&&Q.redirect){const{redirect:G}=Q;let ee=typeof G=="function"?G(Y,J):G;return typeof ee=="string"&&(ee=ee.includes("?")||ee.includes("#")?ee=b(ee):{path:ee},ee.params={}),Ht({query:Y.query,hash:Y.hash,params:ee.path!=null?{}:Y.params},ee)}}function S(Y,J){const Q=c=v(Y),G=l.value,ee=Y.state,X=Y.force,K=Y.replace===!0,te=$(Q,G);if(te)return S(Ht(b(te),{state:typeof te=="object"?Ht({},ee,te.state):ee,force:X,replace:K}),J||Q);const ue=Q;ue.redirectedFrom=J;let se;return!X&&_$e(i,G,Q)&&(se=_c(an.NAVIGATION_DUPLICATED,{to:ue,from:G}),z(G,G,!0,!1)),(se?Promise.resolve(se):T(ue,G)).catch(re=>vr(re)?vr(re,an.NAVIGATION_GUARD_REDIRECT)?re:B(re):F(re,ue,G)).then(re=>{if(re){if(vr(re,an.NAVIGATION_GUARD_REDIRECT))return S(Ht({replace:K},b(re.to),{state:typeof re.to=="object"?Ht({},ee,re.to.state):ee,force:X}),J||ue)}else re=M(ue,G,!0,K,ee);return O(ue,G,re),re})}function _(Y,J){const Q=y(Y,J);return Q?Promise.reject(Q):Promise.resolve()}function P(Y){const J=U.values().next().value;return J&&typeof J.runWithContext=="function"?J.runWithContext(Y):Y()}function T(Y,J){let Q;const[G,ee,X]=W$e(Y,J);Q=L0(G.reverse(),"beforeRouteLeave",Y,J);for(const te of G)te.leaveGuards.forEach(ue=>{Q.push(ha(ue,Y,J))});const K=_.bind(null,Y,J);return Q.push(K),q(Q).then(()=>{Q=[];for(const te of r.list())Q.push(ha(te,Y,J));return Q.push(K),q(Q)}).then(()=>{Q=L0(ee,"beforeRouteUpdate",Y,J);for(const te of ee)te.updateGuards.forEach(ue=>{Q.push(ha(ue,Y,J))});return Q.push(K),q(Q)}).then(()=>{Q=[];for(const te of X)if(te.beforeEnter)if(Bo(te.beforeEnter))for(const ue of te.beforeEnter)Q.push(ha(ue,Y,J));else Q.push(ha(te.beforeEnter,Y,J));return Q.push(K),q(Q)}).then(()=>(Y.matched.forEach(te=>te.enterCallbacks={}),Q=L0(X,"beforeRouteEnter",Y,J,P),Q.push(K),q(Q))).then(()=>{Q=[];for(const te of a.list())Q.push(ha(te,Y,J));return Q.push(K),q(Q)}).catch(te=>vr(te,an.NAVIGATION_CANCELLED)?te:Promise.reject(te))}function O(Y,J,Q){s.list().forEach(G=>P(()=>G(Y,J,Q)))}function M(Y,J,Q,G,ee){const X=y(Y,J);if(X)return X;const K=J===oa,te=Rl?history.state:{};Q&&(G||K?o.replace(Y.fullPath,Ht({scroll:K&&te&&te.scroll},ee)):o.push(Y.fullPath,ee)),l.value=Y,z(Y,J,Q,K),B()}let I;function k(){I||(I=o.listen((Y,J,Q)=>{if(!V.listening)return;const G=v(Y),ee=$(G,V.currentRoute.value);if(ee){S(Ht(ee,{replace:!0,force:!0}),G).catch(od);return}c=G;const X=l.value;Rl&&D$e(PM(X.fullPath,Q.delta),Ev()),T(G,X).catch(K=>vr(K,an.NAVIGATION_ABORTED|an.NAVIGATION_CANCELLED)?K:vr(K,an.NAVIGATION_GUARD_REDIRECT)?(S(Ht(b(K.to),{force:!0}),G).then(te=>{vr(te,an.NAVIGATION_ABORTED|an.NAVIGATION_DUPLICATED)&&!Q.delta&&Q.type===gw.pop&&o.go(-1,!1)}).catch(od),Promise.reject()):(Q.delta&&o.go(-Q.delta,!1),F(K,G,X))).then(K=>{K=K||M(G,X,!1),K&&(Q.delta&&!vr(K,an.NAVIGATION_CANCELLED)?o.go(-Q.delta,!1):Q.type===gw.pop&&vr(K,an.NAVIGATION_ABORTED|an.NAVIGATION_DUPLICATED)&&o.go(-1,!1)),O(G,X,K)}).catch(od)}))}let E=fu(),R=fu(),D;function F(Y,J,Q){B(Y);const G=R.list();return G.length?G.forEach(ee=>ee(Y,J,Q)):console.error(Y),Promise.reject(Y)}function N(){return D&&l.value!==oa?Promise.resolve():new Promise((Y,J)=>{E.add([Y,J])})}function B(Y){return D||(D=!Y,k(),E.list().forEach(([J,Q])=>Y?Q(Y):J()),E.reset()),Y}function z(Y,J,Q,G){const{scrollBehavior:ee}=t;if(!Rl||!ee)return Promise.resolve();const X=!Q&&R$e(PM(Y.fullPath,0))||(G||!Q)&&history.state&&history.state.scroll||null;return pt().then(()=>ee(Y,J,X)).then(K=>K&&k$e(K)).catch(K=>F(K,Y,J))}const W=Y=>o.go(Y);let j;const U=new Set,V={currentRoute:l,listening:!0,addRoute:h,removeRoute:p,clearRoutes:e.clearRoutes,hasRoute:m,getRoutes:g,resolve:v,options:t,push:w,replace:x,go:W,back:()=>W(-1),forward:()=>W(1),beforeEach:r.add,beforeResolve:a.add,afterEach:s.add,onError:R.add,isReady:N,install(Y){Y.component("RouterLink",cAe),Y.component("RouterView",hAe),Y.config.globalProperties.$router=V,Object.defineProperty(Y.config.globalProperties,"$route",{enumerable:!0,get:()=>Lt(l)}),Rl&&!j&&l.value===oa&&(j=!0,w(o.location).catch(G=>{}));const J={};for(const G in oa)Object.defineProperty(J,G,{get:()=>l.value[G],enumerable:!0});Y.provide(Mv,V),Y.provide(m$,kI(J)),Y.provide(vw,l);const Q=Y.unmount;U.add(Y),Y.unmount=function(){U.delete(Y),U.size<1&&(c=oa,I&&I(),I=null,l.value=oa,j=!1,D=!1),Q()}}};function q(Y){return Y.reduce((J,Q)=>J.then(()=>P(Q)),Promise.resolve())}return V}function zPe(){return Je(Mv)}function HPe(t){return Je(m$)}const gAe=[{path:"/",name:"dashboard",redirect:"/dashboard/ecommerce"},{path:"/dashboard/analytics",name:"dashboard-analytics",component:()=>ze(()=>import("./Dashboard-D29XNQ4P.js"),__vite__mapDeps([0,1,2,3,4,5])),meta:{rule:"editor",role:"dashboard.view"}},{path:"/my-data",name:"my-data",component:()=>ze(()=>import("./myData-DPVKtj6d.js"),__vite__mapDeps([6,7])),meta:{rule:"editor"}},{path:"/dashboard/ecommerce",name:"dashboard-ecommerce",component:()=>ze(()=>import("./Dashboard-D29XNQ4P.js"),__vite__mapDeps([0,1,2,3,4,5])),meta:{rule:"admin",role:"dashboard.view"}},{path:"/config/manage/const",component:()=>ze(()=>import("./Const-CwYj-wS4.js"),__vite__mapDeps([8,9,10,11])),meta:{breadcrumb:[{title:"خانه",url:"/"},{title:"مدیریت ثابت ها",active:!0}],pageTitle:"مدیریت ثابت ها",rule:"editor",role:"config.statics",parent:"manage",no_scroll:!0}},{path:"/config/manage/wallet",component:()=>ze(()=>import("./wallet-R5LsWnVf.js"),__vite__mapDeps([12,13])),meta:{breadcrumb:[{title:"خانه",url:"/"},{title:"مدیریت کیف پول",active:!0}],pageTitle:"مدیریت کیف پول",rule:"editor",role:"config.wallet",superAdminOnly:!0,parent:"manage",no_scroll:!0}},{path:"/config/manage/accounting",component:()=>ze(()=>import("./accounting-Bbumy49K.js"),__vite__mapDeps([14,2,15,16,17])),meta:{breadcrumb:[{title:"خانه",url:"/"},{title:"اتصال حسابداری",active:!0}],pageTitle:"اتصال حسابداری",rule:"editor",role:"config.accounting",parent:"manage",no_scroll:!0}},{path:"/config/manage/wage",component:()=>ze(()=>import("./wage-CnYyduGf.js"),__vite__mapDeps([18,2,19])),meta:{breadcrumb:[{title:"خانه",url:"/"},{title:"اجرت",active:!0}],pageTitle:"اجرت",rule:"editor",role:"config.wage",parent:"manage",no_scroll:!0}},{path:"/config/manage/report",component:()=>ze(()=>import("./report-BNLBN5x0.js"),__vite__mapDeps([20,21])),meta:{breadcrumb:[{title:"خانه",url:"/"},{title:"گزارش",active:!0}],pageTitle:"گزارش",rule:"editor",role:"config.report",parent:"manage",no_scroll:!0}},{path:"/apps/product/",redirect:"/apps/product/list",name:"product"},{path:"/product/change/percent",component:()=>ze(()=>import("./ChangePercent-DA97Ix9U.js"),__vite__mapDeps([22,23])),meta:{rule:"editor",role:"product.percent",parent:"product",no_scroll:!0}},{path:"/apps/product/add",component:()=>ze(()=>import("./AddProduct-DUZcRoso.js"),__vite__mapDeps([24,10,25,26])),meta:{rule:"editor",role:"product.create",parent:"product",no_scroll:!0}},{path:"/apps/product/edit/:id/:variant_id?",name:"product-edit",component:()=>ze(()=>import("./EditProduct-Db-gCITq.js"),__vite__mapDeps([27,24,10,25,26])),meta:{rule:"editor",role:"product.list.edit",parent:"product",no_scroll:!0}},{path:"/apps/product/list",name:"product-list",component:()=>ze(()=>import("./ProductList-Cvdk4j7I.js"),__vite__mapDeps([28,29,1,2,30,31,32,33,9,34])),meta:{rule:"editor",role:"product.list",parent:"product",no_scroll:!0}},{path:"/category",redirect:"/category/list",name:"category"},{path:"/category/add/:id?",name:"category-add",component:()=>ze(()=>import("./Add-BB2qAVCI.js"),__vite__mapDeps([35,36,23,37,38,10])),meta:{rule:"editor",role:"collection.create",parent:"category",no_scroll:!0}},{path:"/category/edit/:id",component:()=>ze(()=>import("./Edit-C6iXEE0n.js"),__vite__mapDeps([39,36,23,37,38,10])),name:"category-edit",meta:{rule:"editor",role:"collection.list.edit",parent:"category",no_scroll:!0}},{path:"/category/list",name:"category-list",component:()=>ze(()=>import("./List-SPeRezZh.js"),__vite__mapDeps([40,29,1,2,30,31,41,36,23,37,38,10,9])),meta:{rule:"editor",role:"collection.list",parent:"category",no_scroll:!0}},{path:"/add/findoc",component:()=>ze(()=>import("./addFinDoc-sT3KrSUV.js"),__vite__mapDeps([42,43,23,37,38])),meta:{rule:"editor",role:"document.create"}},{path:"/edit/findoc/:id",component:()=>ze(()=>import("./addFinDoc-sT3KrSUV.js"),__vite__mapDeps([42,43,23,37,38])),meta:{rule:"editor",role:"document.list.edit"}},{path:"/order",redirect:"/order/list",name:"order"},{path:"/order/list",component:()=>ze(()=>import("./List-BRVkWgnF.js"),__vite__mapDeps([44,29,1,2,30,31,45,46,47,48,3,4,25,49,50,51,52])),meta:{rule:"editor",role:"order.list",superAdminOnly:!0,parent:"order",no_scroll:!0}},{path:"/order/omde-list",component:()=>ze(()=>import("./OmdeList-DFLQsm-6.js"),__vite__mapDeps([53,29,1,2,30,31,45,46,47,48,3,4,25,49,50,51,54])),meta:{rule:"editor",role:"order.omde",parent:"order",no_scroll:!0}},{path:"/order/make",component:()=>ze(()=>import("./MakeOrder-DEb98dwZ.js"),__vite__mapDeps([55,29,1,2,30,31,45,46,47,48,3,4,25,49,50,51,56])),meta:{rule:"editor",role:"order.makeOrder",parent:"order",no_scroll:!0}},{path:"/order/create",component:()=>ze(()=>import("./create-jCm_K0UT.js"),__vite__mapDeps([57,23,29,1,2,30,31,33,7,58])),meta:{rule:"editor",role:"order.create",superAdminOnly:!0,parent:"order",no_scroll:!0}},{path:"/order/tamin-list",component:()=>ze(()=>import("./TaminList-WWoJ26yi.js"),__vite__mapDeps([59,29,1,2,30,31,45,46,47,48,3,4,25,49,50,51,60])),meta:{rule:"editor",role:"order.tamin",parent:"order",no_scroll:!0}},{path:"/major/promotion/list",component:()=>ze(()=>import("./promotion_list-BpomTa7C.js"),__vite__mapDeps([61,29,1,2,30,31,41,62,63,23,37,38,64,65,66])),meta:{rule:"editor",role:"offers.list",no_scroll:!0}},{path:"/major/promotion/add",component:()=>ze(()=>import("./promotion_add_edit-BRbwsORn.js"),__vite__mapDeps([67,62,63,23,37,38,64])),meta:{rule:"editor",role:"offers.create",no_scroll:!0}},{path:"/major/promotion/edit/:id",component:()=>ze(()=>import("./promotion_add_edit-BRbwsORn.js"),__vite__mapDeps([67,62,63,23,37,38,64])),meta:{rule:"editor",role:"offers.list.edit",no_scroll:!0}},{path:"/major/promotion/tak/add",component:()=>ze(()=>import("./promotion_tak_add_edit-Bc-tQJWp.js"),__vite__mapDeps([68,65,63,23,37,38,64])),meta:{rule:"editor",role:"offers.create.tak",superAdminOnly:!0,no_scroll:!0}},{path:"/major/promotion/tak/edit/:id",component:()=>ze(()=>import("./promotion_tak_add_edit-Bc-tQJWp.js"),__vite__mapDeps([68,65,63,23,37,38,64])),meta:{rule:"editor",role:"offers.list.tak.edit",superAdminOnly:!0,no_scroll:!0}},{path:"/major/promotion/autopromotion",component:()=>ze(()=>import("./autopromotion-ngLMgEP5.js"),[]),meta:{rule:"editor",role:"offers.autopromotion",no_scroll:!0}},{path:"/major/offersIgnore",component:()=>ze(()=>import("./offersIgnore-add-edit-4VqJNFTd.js"),__vite__mapDeps([69,29,1,2,30,31,70])),meta:{rule:"editor",role:"offersIgnore"}},{path:"/comments",name:"comments",component:()=>ze(()=>import("./Comments-BDyc7xFA.js"),__vite__mapDeps([71,72,29,1,2,30,31,45,46,47,48,3,4,25,49,50,51,73])),meta:{breadcrumb:[{title:"خانه",url:"/"},{title:"دیدگاه ها",active:!0}],pageTitle:"دیدگاه ها",rule:"editor",role:"comment",no_scroll:!0}},{path:"/sms/create",name:"create_sms",component:()=>ze(()=>import("./create-n0rRDFYE.js"),__vite__mapDeps([74,29,1,2,30,31,75])),meta:{breadcrumb:[{title:"خانه",url:"/"},{title:"ارسال پیامک",active:!0}],pageTitle:"ارسال پیامک",rule:"editor",role:"sms.create",no_scroll:!0}},{path:"/notify",name:"notify",component:()=>ze(()=>import("./user-D29KoPC1.js"),__vite__mapDeps([76,29,1,2,30,31,77])),meta:{breadcrumb:[{title:"خانه",url:"/"},{title:"لیست نوتیفیکیشن های دریافتی",active:!0}],pageTitle:"لیست نوتیفیکیشن های ذریافتی",rule:"editor",role:"notify.me",no_scroll:!0}},{path:"/notify/create",name:"create_notify",component:()=>ze(()=>import("./create-o6ZX-3sE.js"),[]),meta:{breadcrumb:[{title:"خانه",url:"/"},{title:"ارسال نوتیفیکیشن",active:!0}],pageTitle:"ارسال نوتیفیکیشن",rule:"editor",role:"notify.create",no_scroll:!0}},{path:"/wallet",name:"wallet",component:()=>ze(()=>import("./wallet-CPY--I3Y.js"),__vite__mapDeps([78,29,1,2,30,31])),meta:{breadcrumb:[{title:"خانه",url:"/"},{title:"لیست کیف پول های شارژ شده",active:!0}],pageTitle:"لیست کیف پول های شارژ شده",rule:"editor",role:"wallet",no_scroll:!0}},{path:"/reagent/edit/:id",name:"reagent-edit",component:()=>ze(()=>import("./EditReagent-Dlp0pEGi.js"),__vite__mapDeps([79,80,81,10,50,82,83,51,48,84])),meta:{rule:"editor",role:"persons.list.sellers.edit",parent:"product",no_scroll:!0}},{path:"/reagent/add",name:"reagent-add",component:()=>ze(()=>import("./EditReagent-Dlp0pEGi.js"),__vite__mapDeps([79,80,81,10,50,82,83,51,48,84])),meta:{rule:"editor",role:"persons.create",parent:"product",no_scroll:!0}},{path:"/reagent/view/:id",name:"reagent-view",component:()=>ze(()=>import("./AgentDetail-CTcXAMW4.js"),__vite__mapDeps([85,1,2,86])),meta:{rule:"editor",role:"persons.list.sellers.view",parent:"product",no_scroll:!0}},{path:"/bulkCustomer/edit/:id",name:"bulkCustomer-edit",component:()=>ze(()=>import("./EditBulkCustomer-BshDOCb8.js"),__vite__mapDeps([87,88,23,37,38,10,81,89,2,90,50,82,83,48,16])),meta:{rule:"editor",role:"persons.list.client.omde.edit",parent:"product",no_scroll:!0}},{path:"/bulkCustomer/view/:id",name:"bulkCustomer-view",component:()=>ze(()=>import("./ViewOmdeCustomer-DFToMqq3.js"),__vite__mapDeps([91,92,1,2,83,50,93])),meta:{rule:"editor",role:"persons.list.client.omde.view",parent:"product",no_scroll:!0}},{path:"/singleCustomer/edit/:id",name:"singleCustomer-edit",component:()=>ze(()=>import("./EditSingleCustomer-DaVDehIn.js"),__vite__mapDeps([94,95,81,89,2,90,50,96])),meta:{rule:"editor",role:"persons.list.client.single.edit",superAdminOnly:!0,parent:"product",no_scroll:!0}},{path:"/singleCustomer/view/:id",name:"singleCustomer-view",component:()=>ze(()=>import("./ViewSingleCustomer-CaDBHZh8.js"),__vite__mapDeps([97,92,1,2,83,50,93])),meta:{rule:"editor",role:"persons.list.client.single.view",superAdminOnly:!0,parent:"product",no_scroll:!0}},{path:"/customer/omde-list",name:"omde-list-customer",component:()=>ze(()=>import("./OmdeList-CzOQlZG1.js"),__vite__mapDeps([98,99,2,29,1,30,31,41,32,88,23,37,38,10,81,89,90,50,82,83,48,16,47,100])),meta:{breadcrumb:[{title:"خانه",url:"/"},{title:"مشتریان عمده",active:!0}],pageTitle:"مشتریان عمده",rule:"editor",role:"persons.list.client.omde"}},{path:"/customer/omde-non-verified-list",name:"omde-non-verified-list",component:()=>ze(()=>import("./OmdeNonVerifiedList-Dmyix5RU.js"),__vite__mapDeps([101,99,2,29,1,30,31,41,32,88,23,37,38,10,81,89,90,50,82,83,48,16,47,100])),meta:{breadcrumb:[{title:"خانه",url:"/"},{title:"مشتریان در انتظار",active:!0}],pageTitle:"مشتریان در انتظار",rule:"editor",role:"persons.list.client.omde"}},{path:"/customer/banker-list",name:"banker-list",component:()=>ze(()=>import("./BankerList-BVO4ofYV.js"),__vite__mapDeps([102,99,2,29,1,30,31,41,32,88,23,37,38,10,81,89,90,50,82,83,48,16,47,100])),meta:{breadcrumb:[{title:"خانه",url:"/"},{title:"لیست بنکداران",active:!0}],pageTitle:"لیست بنکداران",rule:"editor",role:"persons.list.client.omde",superAdminOnly:!0}},{path:"/customer/shopkeeper-list",name:"shopkeeper-list",component:()=>ze(()=>import("./ShopkeeperList-BhINz1-X.js"),__vite__mapDeps([103,99,2,29,1,30,31,41,32,88,23,37,38,10,81,89,90,50,82,83,48,16,47,100])),meta:{breadcrumb:[{title:"خانه",url:"/"},{title:"لیست مغازه داران حضوری",active:!0}],pageTitle:"لیست مغازه داران حضوری",rule:"editor",role:"persons.list.client.omde",superAdminOnly:!0}},{path:"/customer/omde-archived-list",name:"omde-archived-list",component:()=>ze(()=>import("./OmdeArchivedList-DVwW0GQo.js"),__vite__mapDeps([104,99,2,29,1,30,31,41,32,88,23,37,38,10,81,89,90,50,82,83,48,16,47,100])),meta:{breadcrumb:[{title:"خانه",url:"/"},{title:"مشتریان بایگانی",active:!0}],pageTitle:"مشتریان بایگانی",rule:"editor",role:"persons.list.client.omde"}},{path:"/customer/reagent-list",name:"raegentList",component:()=>ze(()=>import("./ReagentList-B_8NugUa.js"),__vite__mapDeps([105,29,1,2,30,31,45,46,47,48,3,4,25,49,50,51,41])),meta:{breadcrumb:[{title:"خانه",url:"/"},{title:"کارشناسان فروش",active:!0}],pageTitle:"کارشناسان فروش",role:"persons.list.sellers",rule:"editor"}},{path:"/customer/add",name:"add-customer",component:()=>ze(()=>import("./AddCustomer-Bfimekhg.js"),__vite__mapDeps([106,88,23,37,38,10,81,89,2,90,50,82,83,48,16,80,51,84,95,96,107])),meta:{breadcrumb:[{title:"خانه",url:"/"},{title:"مشتریان"},{title:"افزودن مشتری",active:!0}],pageTitle:"افزودن مشتری",role:"persons.create",rule:"editor"}},{path:"/customer/list",name:"list-customer",component:()=>ze(()=>import("./SingleCustomer-CZrbY03b.js"),__vite__mapDeps([108,29,1,2,30,31,4,109])),meta:{breadcrumb:[{title:"خانه",url:"/"},{title:"مشتریان"}],pageTitle:"لیست مشتریان",role:"persons.list.client.single",superAdminOnly:!0,rule:"editor"}},{path:"/report/order_item",name:"report_order_item",component:()=>ze(()=>import("./order_item-CUVkIral.js"),__vite__mapDeps([110,89,2,90,1,111])),meta:{role:"report.order.item",rule:"editor"}},{path:"/report/product",name:"report_product",component:()=>ze(()=>import("./product-DIBhEedA.js"),__vite__mapDeps([112,89,2,90,113])),meta:{role:"report.product",rule:"editor"}},{path:"/finical/list",name:"finical_list",component:()=>ze(()=>import("./list-C8ypErFY.js"),__vite__mapDeps([114,29,1,2,30,31,41,43,23,37,38,9])),meta:{role:"document.list",rule:"editor"}},{path:"/user/list",component:()=>ze(()=>import("./ListUser-6vbYcmi4.js"),__vite__mapDeps([115,29,1,2,30,31,41,116,37,38,117,9])),meta:{breadcrumb:[{title:"خانه",url:"/"},{title:"لیست مدیران",active:!0}],pageTitle:"لیست مدیران",role:"user.list",rule:"editor",parent:"user",no_scroll:!0}},{path:"/user/create",component:()=>ze(()=>import("./UserCreate-CjovLfJM.js"),__vite__mapDeps([116,37,38,117])),meta:{breadcrumb:[{title:"خانه",url:"/"},{title:"افزودن کاربر",active:!0}],pageTitle:"افزودن کاربر",role:"user.create",rule:"editor",parent:"user",no_scroll:!0}},{path:"/user/edit/:id",component:()=>ze(()=>import("./UserEdit-QMU2tuNB.js"),__vite__mapDeps([118,116,37,38,117])),meta:{breadcrumb:[{title:"خانه",url:"/"},{title:"ویرایش نوع کاربر",active:!0}],pageTitle:"ویرایش نوع کاربر",rule:"editor",role:"user.list.edit",parent:"user",no_scroll:!0}},{path:"/permission",component:()=>ze(()=>import("./Permission-CXDQqW2j.js"),__vite__mapDeps([119,7,120])),meta:{breadcrumb:[{title:"خانه",url:"/"},{title:"دسترسی ها",active:!0}],pageTitle:"دسترسی ها",rule:"editor",role:"user.permission",parent:"permission",no_scroll:!0}},{path:"/city/create",component:()=>ze(()=>import("./createCity-Dfoq0Y3F.js"),__vite__mapDeps([121,122,37,38,81])),meta:{breadcrumb:[{title:"خانه",url:"/"},{title:"افزودن شهر",active:!0}],pageTitle:"افزودن شهر",rule:"editor",role:"cities.create",parent:"city",no_scroll:!0}},{path:"/city/list",component:()=>ze(()=>import("./cityList-Cc1Z6hFj.js"),__vite__mapDeps([123,29,1,2,30,31,41,122,37,38,81,9])),meta:{breadcrumb:[{title:"خانه",url:"/"},{title:"لیست شهر ها",active:!0}],pageTitle:"لیست شهر ها",rule:"editor",role:"cities.list",parent:"city",no_scroll:!0}},{path:"/statics",name:"statics",component:()=>ze(()=>import("./index-DLK4s3ft.js"),__vite__mapDeps([124,23,1,2])),meta:{breadcrumb:[{title:"خانه",url:"/"},{title:"آمار",active:!0}],pageTitle:"آمار",rule:"editor",role:"statics",no_scroll:!0}},{path:"/newsletters",name:"newsletters",component:()=>ze(()=>import("./newsletters-O6c9pnMf.js"),__vite__mapDeps([125,29,1,2,30,31,126])),meta:{breadcrumb:[{title:"خانه",url:"/"},{title:"خبرنامه",active:!0}],pageTitle:"خبرنامه",rule:"editor",no_scroll:!0}},{path:"/branch/add",name:"add-branch",component:()=>ze(()=>import("./AddBranches-DWxalK1k.js"),__vite__mapDeps([127,128,23,37,38])),meta:{breadcrumb:[{title:"خانه",url:"/"},{title:"شعب"},{title:"افزودن شعب",active:!0}],pageTitle:"افزودن شعب",role:"branch.create",superAdminOnly:!0,rule:"editor"}},{path:"/branch/edit/:id",name:"edit-branch",component:()=>ze(()=>import("./EditBranches-PcMrPvLE.js"),__vite__mapDeps([129,128,23,37,38])),meta:{pageTitle:"ویرایش شعب",role:"branch.create",superAdminOnly:!0,rule:"editor"}},{path:"/branch/list",name:"list-branch",component:()=>ze(()=>import("./ListBranches-HWP1sgoA.js"),__vite__mapDeps([130,131,29,1,2,30,31,41,128,23,37,38])),meta:{breadcrumb:[{title:"خانه",url:"/"},{title:"شعب"},{title:"لیست شعب",active:!0}],pageTitle:"لیست شعب",role:"branch.list",superAdminOnly:!0,rule:"editor"}},{path:"/workshop/add",name:"add-workshop",component:()=>ze(()=>import("./AddWorkshop-BApQPfNS.js"),__vite__mapDeps([132,133,37,38])),meta:{breadcrumb:[{title:"خانه",url:"/"},{title:"کارگاه"},{title:"افزودن کارگاه",active:!0}],pageTitle:"افزودن کارگاه",role:"workshop.create",superAdminOnly:!0,rule:"editor"}},{path:"/workshop/edit/:id",name:"edit-workshop",component:()=>ze(()=>import("./EditWorkshop-DfzVUJen.js"),__vite__mapDeps([134,133,37,38])),meta:{pageTitle:"ویرایش کارگاه",role:"workshop.create",superAdminOnly:!0,rule:"editor"}},{path:"/workshop/list",name:"list-workshop",component:()=>ze(()=>import("./ListWorkshop-BqcYfnRu.js"),__vite__mapDeps([135,131,29,1,2,30,31,41,133,37,38])),meta:{breadcrumb:[{title:"خانه",url:"/"},{title:"کارگاه"},{title:"لیست کارگاه ها",active:!0}],pageTitle:"لیست کارگاه ها",role:"workshop.list",superAdminOnly:!0,rule:"editor"}},{path:"/invoice/add",name:"add-invoice",component:()=>ze(()=>import("./AddInvoice-CkuDWq78.js"),__vite__mapDeps([136,23,37,38,29,1,2,30,31,137])),meta:{breadcrumb:[{title:"خانه",url:"/"},{title:"فاکتور انتقال"},{title:"افزودن فاکتور",active:!0}],pageTitle:"افزودن فاکتور",role:"invoice.create",rule:"editor"}},{path:"/invoice/edit/:id",name:"edit-invoice",component:()=>ze(()=>import("./EditInvoice-BIXjPtQa.js"),__vite__mapDeps([138,136,23,37,38,29,1,2,30,31,137])),meta:{pageTitle:"ویرایش فاکتورها",role:"invoice.create",rule:"editor"}},{path:"/invoice/list",name:"list-invoice",component:()=>ze(()=>import("./ListInvoice-Kc7ntcss.js"),__vite__mapDeps([139,29,1,2,30,31,41,136,23,37,38,137,9,140])),meta:{breadcrumb:[{title:"خانه",url:"/"},{title:"فاکتورانتقال"},{title:"لیست فاکتورها",active:!0}],pageTitle:"لیست فاکتورها",role:"invoice.list",rule:"editor"}}],mAe=[{path:"/auth/login",name:"page-login",component:()=>ze(()=>import("./Login-C0DeEoWB.js"),__vite__mapDeps([141,72,7,49,16,15,142])),meta:{rule:"editor"}},{path:"/reg",name:"reg",component:()=>ze(()=>import("./reg-vVyzwPVS.js"),__vite__mapDeps([143,144])),meta:{rule:"editor"}}];function l8(t,e){return function(){return t.apply(e,arguments)}}const{toString:vAe}=Object.prototype,{getPrototypeOf:Ma}=Object,{iterator:yf,toStringTag:c8}=Symbol,Wd=(({hasOwnProperty:t})=>(e,n)=>t.call(e,n))(Object.prototype),u8=t=>typeof t=="string"&&(t==="__proto__"||t==="constructor"||t==="prototype"),d8=(t,e,n)=>t===Object.prototype||!n&&e===null,bAe=t=>{if(!Object.isExtensible(t))return!1;const e=Object.getOwnPropertyNames(t);return Object.getOwnPropertySymbols&&e.push(...Object.getOwnPropertySymbols(t)),e.every(n=>{if(u8(n))return!1;const i=Object.getOwnPropertyDescriptor(t,n);return!!i&&i.configurable&&i.writable===!0})},jd=(t,e)=>{let n=t;const i=[];for(;n!=null;){if(i.indexOf(n)!==-1)return!1;i.push(n);const o=Ma(n);if(d8(n,o,n===t))return!1;if(Wd(n,e))return!0;n=o}return!1},yAe=(t,e)=>t!=null&&jd(t,e)?t[e]:void 0,xAe=t=>{if(t==null||typeof t!="object"&&typeof t!="function")return t;const e=Ma(t);if(e===null&&bAe(t))return t;const n=Object.create(null),i=Object.create(null),o=[];let r=t;for(;r!=null&&o.indexOf(r)===-1;){o.push(r);const a=r===t?e:Ma(r);if(d8(r,a,r===t))break;const s=Object.getOwnPropertyNames(r);Object.getOwnPropertySymbols&&s.push(...Object.getOwnPropertySymbols(r));for(const l of s)u8(l)||Wd(i,l)||(n[l]=t[l],i[l]=!0);r=a}return n},v$=(t=>e=>{const n=vAe.call(e);return t[n]||(t[n]=n.slice(8,-1).toLowerCase())})(Object.create(null)),So=t=>(t=t.toLowerCase(),e=>v$(e)===t),Iv=t=>e=>typeof e===t,{isArray:Ks}=Array,Us=Iv("undefined");function Gc(t){return t!==null&&!Us(t)&&t.constructor!==null&&!Us(t.constructor)&&Oi(t.constructor.isBuffer)&&t.constructor.isBuffer(t)}const f8=So("ArrayBuffer");function wAe(t){let e;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?e=ArrayBuffer.isView(t):e=t&&t.buffer&&f8(t.buffer),e}const SAe=Iv("string"),Oi=Iv("function"),h8=Iv("number"),Kc=t=>t!==null&&typeof t=="object",CAe=t=>t===!0||t===!1,hp=t=>{if(!Kc(t))return!1;const e=Ma(t);return(e===null||e===Object.prototype||Ma(e)===null)&&!jd(t,c8)&&!jd(t,yf)},$Ae=t=>{if(!Kc(t)||Gc(t))return!1;try{return Object.keys(t).length===0&&Object.getPrototypeOf(t)===Object.prototype}catch{return!1}},AAe=So("Date"),_Ae=So("File"),PAe=t=>!!(t&&typeof t.uri<"u"),OAe=t=>t&&typeof t.getParts<"u",TAe=So("Blob"),EAe=So("FileList"),MAe=So("Set"),IAe=t=>Kc(t)&&Oi(t.pipe);function kAe(){return typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{}}const zM=kAe(),HM=typeof zM.FormData<"u"?zM.FormData:void 0,DAe=t=>{if(!t)return!1;if(HM&&t instanceof HM)return!0;const e=Ma(t);if(!e||e===Object.prototype||!Oi(t.append))return!1;const n=v$(t);return n==="formdata"||n==="object"&&Oi(t.toString)&&t.toString()==="[object FormData]"},RAe=So("URLSearchParams"),[LAe,FAe,NAe,BAe]=["ReadableStream","Request","Response","Headers"].map(So),zAe=t=>t.trim?t.trim():t.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function xf(t,e,{allOwnKeys:n=!1}={}){if(t===null||typeof t>"u")return;let i,o;if(typeof t!="object"&&(t=[t]),Ks(t))for(i=0,o=t.length;i0;)if(o=n[i],e===o.toLowerCase())return o;return null}const xs=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,g8=t=>!Us(t)&&t!==xs;function bw(...t){const{caseless:e,skipUndefined:n}=g8(this)&&this||{},i={},o=(r,a)=>{if(a==="__proto__"||a==="constructor"||a==="prototype")return;const s=e&&typeof a=="string"&&p8(i,a)||a,l=Wd(i,s)?i[s]:void 0;hp(l)&&hp(r)?i[s]=bw(l,r):hp(r)?i[s]=bw({},r):Ks(r)?i[s]=r.slice():(!n||!Us(r))&&(i[s]=r)};for(let r=0,a=t.length;r(xf(e,(o,r)=>{n&&Oi(o)?Object.defineProperty(t,r,{__proto__:null,value:l8(o,n),writable:!0,enumerable:!0,configurable:!0}):Object.defineProperty(t,r,{__proto__:null,value:o,writable:!0,enumerable:!0,configurable:!0})},{allOwnKeys:i}),t),WAe=t=>(t.charCodeAt(0)===65279&&(t=t.slice(1)),t),jAe=(t,e,n,i)=>{t.prototype=Object.create(e.prototype,i),Object.defineProperty(t.prototype,"constructor",{__proto__:null,value:t,writable:!0,enumerable:!1,configurable:!0}),Object.defineProperty(t,"super",{__proto__:null,value:e.prototype}),n&&Object.assign(t.prototype,n)},VAe=(t,e,n,i)=>{let o,r,a;const s={};if(e=e||{},t==null)return e;do{for(o=Object.getOwnPropertyNames(t),r=o.length;r-- >0;)a=o[r],(!i||i(a,t,e))&&!s[a]&&(e[a]=t[a],s[a]=!0);t=n!==!1&&Ma(t)}while(t&&(!n||n(t,e))&&t!==Object.prototype);return e},XAe=(t,e,n)=>{t=String(t),(n===void 0||n>t.length)&&(n=t.length),n-=e.length;const i=t.indexOf(e,n);return i!==-1&&i===n},YAe=t=>{if(!t)return null;if(Ks(t))return t;let e=t.length;if(!h8(e))return null;const n=new Array(e);for(;e-- >0;)n[e]=t[e];return n},GAe=(t=>e=>t&&e instanceof t)(typeof Uint8Array<"u"&&Ma(Uint8Array)),KAe=(t,e)=>{const i=(t&&t[yf]).call(t);let o;for(;(o=i.next())&&!o.done;){const r=o.value;e.call(t,r[0],r[1])}},UAe=(t,e)=>{let n;const i=[];for(;(n=t.exec(e))!==null;)i.push(n);return i},qAe=So("HTMLFormElement"),ZAe=t=>t.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(n,i,o){return i.toUpperCase()+o}),{propertyIsEnumerable:JAe}=Object.prototype,QAe=So("RegExp"),m8=(t,e)=>{const n=Object.getOwnPropertyDescriptors(t),i={};xf(n,(o,r)=>{let a;(a=e(o,r,t))!==!1&&(i[r]=a||o)}),Object.defineProperties(t,i)},e_e=t=>{m8(t,(e,n)=>{if(Oi(t)&&["arguments","caller","callee"].includes(n))return!1;const i=t[n];if(Oi(i)){if(e.enumerable=!1,"writable"in e){e.writable=!1;return}e.set||(e.set=()=>{throw Error("Can not rewrite read-only method '"+n+"'")})}})},t_e=(t,e)=>{const n={},i=o=>{o.forEach(r=>{n[r]=!0})};return Ks(t)?i(t):i(String(t).split(e)),n},n_e=()=>{},i_e=(t,e)=>t!=null&&Number.isFinite(t=+t)?t:e;function o_e(t){return!!(t&&Oi(t.append)&&t[c8]==="FormData"&&t[yf])}const r_e=t=>{const e=new WeakSet,n=i=>{if(Kc(i)){if(e.has(i))return;if(Gc(i))return i;if(!("toJSON"in i)){e.add(i);let o;if(MAe(i)){o=[];for(const r of i){const a=n(r);!Us(a)&&o.push(a)}}else o=Ks(i)?[]:{},xf(i,(r,a)=>{const s=n(r);!Us(s)&&(o[a]=s)});return e.delete(i),o}}return i};return n(t)},a_e=So("AsyncFunction"),s_e=t=>t&&(Kc(t)||Oi(t))&&Oi(t.then)&&Oi(t.catch),v8=((t,e)=>t?setImmediate:e?((n,i)=>(xs.addEventListener("message",({source:o,data:r})=>{o===xs&&r===n&&i.length&&i.shift()()},!1),o=>{i.push(o),xs.postMessage(n,"*")}))(`axios@${Math.random()}`,[]):n=>setTimeout(n))(typeof setImmediate=="function",Oi(xs.postMessage)),l_e=typeof queueMicrotask<"u"?queueMicrotask.bind(xs):typeof process<"u"&&process.nextTick||v8,b8=t=>t!=null&&Oi(t[yf]),c_e=t=>t!=null&&jd(t,yf)&&b8(t),me={isArray:Ks,isArrayBuffer:f8,isBuffer:Gc,isFormData:DAe,isArrayBufferView:wAe,isString:SAe,isNumber:h8,isBoolean:CAe,isObject:Kc,isPlainObject:hp,isEmptyObject:$Ae,isReadableStream:LAe,isRequest:FAe,isResponse:NAe,isHeaders:BAe,isUndefined:Us,isDate:AAe,isFile:_Ae,isReactNativeBlob:PAe,isReactNative:OAe,isBlob:TAe,isRegExp:QAe,isFunction:Oi,isStream:IAe,isURLSearchParams:RAe,isTypedArray:GAe,isFileList:EAe,forEach:xf,merge:bw,extend:HAe,trim:zAe,stripBOM:WAe,inherits:jAe,toFlatObject:VAe,kindOf:v$,kindOfTest:So,endsWith:XAe,toArray:YAe,forEachEntry:KAe,matchAll:UAe,isHTMLForm:qAe,hasOwnProperty:Wd,hasOwnProp:Wd,hasOwnInPrototypeChain:jd,getSafeProp:yAe,toSafeFlatObject:xAe,reduceDescriptors:m8,freezeMethods:e_e,toObjectSet:t_e,toCamelCase:ZAe,noop:n_e,toFiniteNumber:i_e,findKey:p8,global:xs,isContextDefined:g8,isSpecCompliantForm:o_e,toJSONObject:r_e,isAsyncFn:a_e,isThenable:s_e,setImmediate:v8,asap:l_e,isIterable:b8,isSafeIterable:c_e},u_e=me.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),d_e=t=>{const e={};let n,i,o;return t&&t.split(` `).forEach(function(a){o=a.indexOf(":"),n=a.substring(0,o).trim().toLowerCase(),i=a.substring(o+1).trim();const s=me.hasOwnProp(e,n);!n||s&&me.hasOwnProp(u_e,n)||(n==="set-cookie"?s?e[n].push(i):e[n]=[i]:e[n]=s?e[n]+", "+i:i)}),e};function f_e(t){let e=0,n=t.length;for(;ee;){const i=t.charCodeAt(n-1);if(i!==9&&i!==32)break;n-=1}return e===0&&n===t.length?t:t.slice(e,n)}const h_e=new RegExp("[\\u0000-\\u0008\\u000a-\\u001f\\u007f]+","g"),p_e=new RegExp("[^\\u0009\\u0020-\\u007e\\u0080-\\u00ff]+","g");function b$(t,e){return me.isArray(t)?t.map(n=>b$(n,e)):f_e(String(t).replace(e,""))}const g_e=t=>b$(t,h_e),m_e=t=>b$(t,p_e);function y8(t){const e=Object.create(null);return me.forEach(t.toJSON(),(n,i)=>{e[i]=m_e(n)}),e}const WM=Symbol("internals");function hu(t){return t&&String(t).trim().toLowerCase()}function pp(t){return t===!1||t==null?t:me.isArray(t)?t.map(pp):g_e(String(t))}function v_e(t){const e=Object.create(null),n=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let i;for(;i=n.exec(t);)e[i[1]]=i[2];return e}const b_e=/^[!#$%&'*+\-.^_`|~0-9A-Za-z]+$/;function F0(t){let e=0,n=t.length;for(;ee;){const i=t.charCodeAt(n-1);if(i!==9&&i!==32)break;n-=1}return e===0&&n===t.length?t:t.slice(e,n)}function y_e(t){const e=t.length-1;if(e<1||t.charCodeAt(0)!==34||t.charCodeAt(e)!==34)return t;let n="";for(let i=1;i=e))return t;n+=t[i]}return n}function x_e(t){const e=Object.create(null),n=String(t);let i=0,o=!1,r=!1;function a(s){const l=F0(n.slice(i,s)),c=l.indexOf("=");if(c<1)return;const u=F0(l.slice(0,c));if(!b_e.test(u))return;const d=u.toLowerCase();if(d==="__proto__"||d==="constructor"||d==="prototype")return;const f=F0(l.slice(c+1));e[d]=y_e(f)}for(let s=0;s/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(t.trim());function N0(t,e,n,i,o){if(me.isFunction(i))return i.call(this,e,n);if(o&&(e=n),!!me.isString(e)){if(me.isString(i))return e.indexOf(i)!==-1;if(me.isRegExp(i))return i.test(e)}}function S_e(t){return t.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(e,n,i)=>n.toUpperCase()+i)}function C_e(t,e){const n=me.toCamelCase(" "+e);["get","set","has"].forEach(i=>{Object.defineProperty(t,i+n,{__proto__:null,value:function(o,r,a){return this[i].call(this,e,o,r,a)},configurable:!0})})}let ti=class{constructor(e){e&&this.set(e)}set(e,n,i){const o=this;function r(s,l,c){const u=hu(l);if(!u)return;const d=me.findKey(o,u);(!d||o[d]===void 0||c===!0||c===void 0&&o[d]!==!1)&&(o[d||l]=pp(s))}const a=(s,l)=>me.forEach(s,(c,u)=>r(c,u,l));if(me.isPlainObject(e)||e instanceof this.constructor)a(e,n);else if(me.isString(e)&&(e=e.trim())&&!w_e(e))a(d_e(e),n);else if(me.isObject(e)&&me.isSafeIterable(e)){let s=Object.create(null),l,c;for(const u of e){if(!me.isArray(u))throw new TypeError("Object iterator must return a key-value pair");c=u[0],me.hasOwnProp(s,c)?(l=s[c],s[c]=me.isArray(l)?[...l,u[1]]:[l,u[1]]):s[c]=u[1]}a(s,n)}else e!=null&&r(n,e,i);return this}get(e,n){if(e=hu(e),e){const i=me.findKey(this,e);if(i){const o=this[i];if(!n)return o;if(n===!0)return v_e(o);if(me.isFunction(n))return n.call(this,o,i);if(me.isRegExp(n))return n.exec(o);throw new TypeError("parser must be boolean|regexp|function")}}}has(e,n){if(e=hu(e),e){const i=me.findKey(this,e);return!!(i&&this[i]!==void 0&&(!n||N0(this,this[i],i,n)))}return!1}delete(e,n){const i=this;let o=!1;function r(a){if(a=hu(a),a){const s=me.findKey(i,a);s&&(!n||N0(i,i[s],s,n))&&(delete i[s],o=!0)}}return me.isArray(e)?e.forEach(r):r(e),o}clear(e){const n=Object.keys(this);let i=n.length,o=!1;for(;i--;){const r=n[i];(!e||N0(this,this[r],r,e,!0))&&(delete this[r],o=!0)}return o}normalize(e){const n=this,i={};return me.forEach(this,(o,r)=>{const a=me.findKey(i,r);if(a){n[a]=pp(o),delete n[r];return}const s=e?S_e(r):String(r).trim();s!==r&&delete n[r],n[s]=pp(o),i[s]=!0}),this}concat(...e){return this.constructor.concat(this,...e)}toJSON(e){const n=Object.create(null);return me.forEach(this,(i,o)=>{i!=null&&i!==!1&&(n[o]=e&&me.isArray(i)?i.join(", "):i)}),n}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([e,n])=>e+": "+n).join(` `)}getSetCookie(){const e=this.get("set-cookie");return me.isArray(e)?e:e==null||e===!1?[]:[e]}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(e){return e instanceof this?e:new this(e)}static parseParameters(e){return x_e(e)}static concat(e,...n){const i=new this(e);return n.forEach(o=>i.set(o)),i}static accessor(e){const i=(this[WM]=this[WM]={accessors:{}}).accessors,o=this.prototype;function r(a){const s=hu(a);i[s]||(C_e(o,a),i[s]=!0)}return me.isArray(e)?e.forEach(r):r(e),this}};ti.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);me.reduceDescriptors(ti.prototype,({value:t},e)=>{let n=e[0].toUpperCase()+e.slice(1);return{get:()=>t,set(i){this[n]=i}}});me.freezeMethods(ti);const Wg="[REDACTED ****]";function $_e(t){if(me.hasOwnProp(t,"toJSON"))return!0;let e=Object.getPrototypeOf(t);for(;e&&e!==Object.prototype;){if(me.hasOwnProp(e,"toJSON"))return!0;e=Object.getPrototypeOf(e)}return!1}function A_e(t,e){const n=new Set(e.map(r=>String(r).toLowerCase())),i=[],o=r=>{if(r===null||typeof r!="object"||me.isBuffer(r))return r;if(i.indexOf(r)!==-1)return;r instanceof ti&&(r=r.toJSON()),i.push(r);let a;if(me.isArray(r))a=[],r.forEach((s,l)=>{const c=o(s);me.isUndefined(c)||(a[l]=c)});else{if(!me.isPlainObject(r)&&$_e(r))return i.pop(),r;a=Object.create(null);for(const[s,l]of Object.entries(r)){const c=n.has(s.toLowerCase())?Wg:o(l);me.isUndefined(c)||(a[s]=c)}}return i.pop(),a};return o(t)}function jM(t){try{return String(t)}catch{return""}}function __e(t){return t.errors.map(n=>{try{return n&&n.message?jM(n.message):jM(n)}catch{return""}}).filter(Boolean).join("; ")||t.name||"AggregateError"}let He=class x8 extends Error{static from(e,n,i,o,r,a){let s=e.message;!s&&me.isArray(e.errors)&&e.errors.length&&(s=__e(e));const l=new x8(s,n||e.code,i,o,r);return Object.defineProperty(l,"cause",{__proto__:null,value:e,writable:!0,enumerable:!1,configurable:!0}),l.name=e.name,e.status!=null&&l.status==null&&(l.status=e.status),a&&Object.assign(l,a),l}constructor(e,n,i,o,r){super(e),Object.defineProperty(this,"message",{__proto__:null,value:e,enumerable:!0,writable:!0,configurable:!0}),this.name="AxiosError",this.isAxiosError=!0,n&&(this.code=n),i&&(this.config=i),o&&(this.request=o),r&&(this.response=r,this.status=r.status)}toJSON(){const e=this.config,n=e&&me.hasOwnProp(e,"redact")?e.redact:void 0,i=me.isArray(n)&&n.length>0?A_e(e,n):me.toJSONObject(e);return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:i,code:this.code,status:this.status}}};He.ERR_BAD_OPTION_VALUE="ERR_BAD_OPTION_VALUE";He.ERR_BAD_OPTION="ERR_BAD_OPTION";He.ECONNABORTED="ECONNABORTED";He.ETIMEDOUT="ETIMEDOUT";He.ECONNREFUSED="ECONNREFUSED";He.ERR_NETWORK="ERR_NETWORK";He.ERR_FR_TOO_MANY_REDIRECTS="ERR_FR_TOO_MANY_REDIRECTS";He.ERR_DEPRECATED="ERR_DEPRECATED";He.ERR_BAD_RESPONSE="ERR_BAD_RESPONSE";He.ERR_BAD_REQUEST="ERR_BAD_REQUEST";He.ERR_CANCELED="ERR_CANCELED";He.ERR_NOT_SUPPORT="ERR_NOT_SUPPORT";He.ERR_INVALID_URL="ERR_INVALID_URL";He.ERR_FORM_DATA_DEPTH_EXCEEDED="ERR_FORM_DATA_DEPTH_EXCEEDED";const P_e=null,w8=100;function yw(t){return me.isPlainObject(t)||me.isArray(t)}function S8(t){return me.endsWith(t,"[]")?t.slice(0,-2):t}function B0(t,e,n){return t?t.concat(e).map(function(o,r){return o=S8(o),!n&&r?"["+o+"]":o}).join(n?".":""):e}function O_e(t){return me.isArray(t)&&!t.some(yw)}const T_e=me.toFlatObject(me,{},null,function(e){return/^is[A-Z]/.test(e)});function kv(t,e,n){if(!me.isObject(t))throw new TypeError("target must be an object");e=e||new FormData;const i=(b,y)=>{const w=me.getSafeProp(n,b);return me.isUndefined(w)?y:w},o=i("metaTokens",!0),r=i("visitor")||g,a=i("dots",!1),s=i("indexes",!1),l=i("Blob")||typeof Blob<"u"&&Blob,c=i("maxDepth",w8),u=l&&me.isSpecCompliantForm(e),d=[];if(!me.isFunction(r))throw new TypeError("visitor must be a function");function f(b){if(b===null)return"";if(me.isDate(b))return b.toISOString();if(me.isBoolean(b))return b.toString();if(!u&&me.isBlob(b))throw new He("Blob is not supported. Use a Buffer instead.");if(me.isArrayBuffer(b)||me.isTypedArray(b)){if(u&&typeof l=="function")return new l([b]);throw new He("Blob is not supported. Use a Buffer instead.",He.ERR_NOT_SUPPORT)}return b}function h(b){if(b>c)throw new He("Object is too deeply nested ("+b+" levels). Max depth: "+c,He.ERR_FORM_DATA_DEPTH_EXCEEDED)}function p(b,y){if(c===1/0)return JSON.stringify(b);const w=[];return JSON.stringify(b,function($,S){if(!me.isObject(S))return S;for(;w.length&&w[w.length-1]!==this;)w.pop();return w.push(S),h(y+w.length-1),S})}function g(b,y,w){let x=b;if(me.isReactNative(e)&&me.isReactNativeBlob(b))return e.append(B0(w,y,a),f(b)),!1;if(b&&!w&&typeof b=="object"){if(me.endsWith(y,"{}"))y=o?y:y.slice(0,-2),b=p(b,1);else if(me.isArray(b)&&O_e(b)||(me.isFileList(b)||me.endsWith(y,"[]"))&&(x=me.toArray(b)))return y=S8(y),x.forEach(function(S,_){!(me.isUndefined(S)||S===null)&&e.append(s===!0?B0([y],_,a):s===null?y:y+"[]",f(S))}),!1}return yw(b)?!0:(e.append(B0(w,y,a),f(b)),!1)}const m=Object.assign(T_e,{defaultVisitor:g,convertValue:f,isVisitable:yw});function v(b,y,w=0){if(!me.isUndefined(b)){if(h(w),d.indexOf(b)!==-1)throw new Error("Circular reference detected in "+y.join("."));d.push(b),me.forEach(b,function($,S){(!(me.isUndefined($)||$===null)&&r.call(e,$,me.isString(S)?S.trim():S,y,m))===!0&&v($,y?y.concat(S):[S],w+1)}),d.pop()}}if(!me.isObject(t))throw new TypeError("data must be an object");return v(t),e}function VM(t){const e={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+"};return encodeURIComponent(t).replace(/[!'()~]|%20/g,function(i){return e[i]})}function y$(t,e){this._pairs=[],t&&kv(t,this,e)}const C8=y$.prototype;C8.append=function(e,n){this._pairs.push([e,n])};C8.toString=function(e){const n=e?i=>e.call(this,i,VM):VM;return this._pairs.map(function(o){return n(o[0])+"="+n(o[1])},"").join("&")};function E_e(t){return encodeURIComponent(t).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+")}function $8(t,e,n){if(!e)return t;t=t||"";const i=me.isFunction(n)?{serialize:n}:n,o=me.getSafeProp(i,"encode")||E_e,r=me.getSafeProp(i,"serialize");let a;if(r?a=r(e,i):a=me.isURLSearchParams(e)?e.toString():new y$(e,i).toString(o),a){const s=t.indexOf("#");s!==-1&&(t=t.slice(0,s)),t+=(t.indexOf("?")===-1?"?":"&")+a}return t}const pu=Symbol("internals");function A8(t){return t?t.length:0}function XM(t){if(t)for(;t.length&&t[t.length-1]===null;)t.pop()}function gu(t,e){const n=t.handlers,i=A8(n);n!==e.handlersRef?(e.handlersRef=n,e.handlerEntries.clear()):i!==e.handlersLength&&(i?e.handlerEntries.forEach(function(r,a){n[r.index]!==r.handler&&e.handlerEntries.delete(a)}):e.handlerEntries.clear()),e.handlersLength=i}class YM{constructor(){this.handlers=[],this[pu]={handlersRef:this.handlers,handlersLength:this.handlers.length,handlerEntries:new Map,iterationDepth:0,nextId:0}}use(e,n,i){const o={fulfilled:e,rejected:n,synchronous:i?i.synchronous:!1,runWhen:i?i.runWhen:null},r=this[pu];this.handlers==null&&(this.handlers=[]),gu(this,r);const a=r.nextId++;return this.handlers.push(o),r.handlerEntries.set(a,{handler:o,index:this.handlers.length-1}),r.handlersLength=this.handlers.length,a}eject(e){const n=this[pu];gu(this,n);const i=n.handlerEntries.get(e);if(i){if(n.handlerEntries.delete(e),this.handlers[i.index]!==i.handler)return;this.handlers[i.index]=null,n.iterationDepth||(XM(this.handlers),n.handlersLength=this.handlers.length)}}clear(){this.handlers&&(this.handlers=[],gu(this,this[pu]))}forEach(e){const n=this[pu];gu(this,n),n.iterationDepth++;try{me.forEach(this.handlers,function(o){o!==null&&e(o)})}finally{--n.iterationDepth||(gu(this,n),XM(this.handlers),n.handlersLength=A8(this.handlers))}}}const x$={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1,legacyInterceptorReqResOrdering:!0,advertiseZstdAcceptEncoding:!1,validateStatusUndefinedResolves:!0},M_e=typeof URLSearchParams<"u"?URLSearchParams:y$,I_e=typeof FormData<"u"?FormData:null,k_e=typeof Blob<"u"?Blob:null,D_e={isBrowser:!0,classes:{URLSearchParams:M_e,FormData:I_e,Blob:k_e},protocols:["http","https","file","blob","url","data"]},w$=typeof window<"u"&&typeof document<"u",xw=typeof navigator=="object"&&navigator||void 0,R_e=w$&&(!xw||["ReactNative","NativeScript","NS"].indexOf(xw.product)<0),L_e=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",F_e=w$&&window.location.href||"http://localhost",N_e=Object.freeze(Object.defineProperty({__proto__:null,hasBrowserEnv:w$,hasStandardBrowserEnv:R_e,hasStandardBrowserWebWorkerEnv:L_e,navigator:xw,origin:F_e},Symbol.toStringTag,{value:"Module"})),Ln={...N_e,...D_e};function B_e(t,e){return kv(t,new Ln.classes.URLSearchParams,{visitor:function(n,i,o,r){return Ln.isNode&&me.isBuffer(n)?(this.append(i,n.toString("base64")),!1):r.defaultVisitor.apply(this,arguments)},...e})}const GM=w8;function _8(t){if(t>GM)throw new He("FormData field is too deeply nested ("+t+" levels). Max depth: "+GM,He.ERR_FORM_DATA_DEPTH_EXCEEDED)}function z_e(t){const e=[],n=/[^.[\]]+|\[([^.[\]]*)]/g;let i;for(;(i=n.exec(t))!==null;)_8(e.length),e.push(i[0]==="[]"?"":i[1]||i[0]);return e}function H_e(t){const e={},n=Object.keys(t);let i;const o=n.length;let r;for(i=0;i=n.length;return a=!a&&me.isArray(o)?o.length:a,l?(me.hasOwnProp(o,a)?o[a]=me.isArray(o[a])?o[a].concat(i):[o[a],i]:o[a]=i,!s):((!me.hasOwnProp(o,a)||!me.isObject(o[a]))&&(o[a]=[]),e(n,i,o[a],r)&&me.isArray(o[a])&&(o[a]=H_e(o[a])),!s)}if(me.isFormData(t)&&me.isFunction(t.entries)){const n={};return me.forEachEntry(t,(i,o)=>{e(z_e(i),o,n,0)}),n}return null}const O8=Object.freeze(["get","delete","head","options","post","put","patch","purge","link","unlink","query"]),Al=(t,e)=>t!=null&&me.hasOwnProp(t,e)?t[e]:void 0;function W_e(t,e,n){if(me.isString(t))try{return(e||JSON.parse)(t),me.trim(t)}catch(i){if(i.name!=="SyntaxError")throw i}return(n||JSON.stringify)(t)}const wf={transitional:x$,adapter:["xhr","http","fetch"],transformRequest:[function(e,n){const i=n.getContentType()||"",o=i.indexOf("application/json")>-1,r=me.isObject(e);if(r&&me.isHTMLForm(e)&&(e=new FormData(e)),me.isFormData(e))return o?JSON.stringify(P8(e)):e;if(me.isArrayBuffer(e)||me.isBuffer(e)||me.isStream(e)||me.isFile(e)||me.isBlob(e)||me.isReadableStream(e))return e;if(me.isArrayBufferView(e))return e.buffer;if(me.isURLSearchParams(e))return n.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),e.toString();let s;if(r){const l=Al(this,"formSerializer");if(i.indexOf("application/x-www-form-urlencoded")>-1)return B_e(e,l).toString();if((s=me.isFileList(e))||i.indexOf("multipart/form-data")>-1){const c=Al(this,"env"),u=c&&c.FormData;return kv(s?{"files[]":e}:e,u&&new u,l)}}return r||o?(n.setContentType("application/json",!1),W_e(e)):e}],transformResponse:[function(e){const n=Al(this,"transitional")||wf.transitional,i=n&&n.forcedJSONParsing,o=Al(this,"responseType"),r=o==="json";if(me.isResponse(e)||me.isReadableStream(e))return e;if(e&&me.isString(e)&&(i&&!o||r)){const s=!(n&&n.silentJSONParsing)&&r;try{return JSON.parse(e,Al(this,"parseReviver"))}catch(l){if(s)throw l.name==="SyntaxError"?He.from(l,He.ERR_BAD_RESPONSE,this,null,Al(this,"response")):l}}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:Ln.classes.FormData,Blob:Ln.classes.Blob},validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};me.forEach(O8,t=>{wf.headers[t]={}});function z0(t,e){const n=this||wf,i=e||n,o=ti.from(i.headers);let r=i.data;return me.forEach(t,function(s){r=s.call(n,r,o.normalize(),e?e.status:void 0)}),o.normalize(),r}function T8(t){return!!(t&&t.__CANCEL__)}let Sf=class extends He{constructor(e,n,i){super(e??"canceled",He.ERR_CANCELED,n,i),this.name="CanceledError",this.__CANCEL__=!0}};function E8(t,e,n){const i=n.config.validateStatus;!n.status||!i||i(n.status)?t(n):e(new He("Request failed with status code "+n.status,n.status>=400&&n.status<500?He.ERR_BAD_REQUEST:He.ERR_BAD_RESPONSE,n.config,n.request,n))}const j_e=/[\t\n\r]/g;function M8(t){if(typeof t!="string")return t;let e=0;for(;e{n=d,o=null,r&&(clearTimeout(r),r=null),t(...u)};return[(...u)=>{const d=Date.now(),f=d-n;f>=i?a(u,d):(o=u,r||(r=setTimeout(()=>{r=null,a(o)},i-f)))},()=>o&&a(o),(...u)=>a(u)]}const jg=(t,e,n=3)=>{let i=0;const o=V_e(50,250);return X_e(r=>{if(!r||!me.isNumber(r.loaded))return;const a=r.loaded,s=r.lengthComputable?r.total:void 0,l=Math.max(0,s!=null?Math.min(a,s):a),c=Math.max(0,l-i),u=o(c);i=Math.max(i,l);const d={loaded:l,total:s,progress:s?l/s:void 0,bytes:c,rate:u||void 0,estimated:u&&s?(s-l)/u:void 0,event:r,lengthComputable:s!=null,[e?"download":"upload"]:!0};t(d)},n)},KM=(t,e)=>{const n=t!=null;return[i=>e[0]({lengthComputable:n,total:t,loaded:i}),e[1]]},UM=(t,e=me.asap)=>(...n)=>e(()=>t(...n)),Y_e=Ln.hasStandardBrowserEnv?((t,e)=>n=>(n=new URL(n,Ln.origin),t.protocol===n.protocol&&t.host===n.host&&(e||t.port===n.port)))(new URL(Ln.origin),Ln.navigator&&/(msie|trident)/i.test(Ln.navigator.userAgent)):()=>!0,G_e=Ln.hasStandardBrowserEnv?{write(t,e,n,i,o,r,a){if(typeof document>"u")return;const s=[`${t}=${encodeURIComponent(e)}`];me.isNumber(n)&&s.push(`expires=${new Date(n).toUTCString()}`),me.isString(i)&&s.push(`path=${i}`),me.isString(o)&&s.push(`domain=${o}`),r===!0&&s.push("secure"),me.isString(a)&&s.push(`SameSite=${a}`),document.cookie=s.join("; ")},read(t){if(typeof document>"u")return null;const e=document.cookie.split(";");for(let n=0;n0&&t.charCodeAt(n-1)===47;)n--;return t.slice(0,n)+"/"+e.replace(/^\/+/,"")}const q_e=/^https?:(?!\/\/)/i;function Z_e(t){return t&&t.replace(/(^|&)([^=&]*=)?[^&]+/g,(e,n,i="")=>`${n}${i}${Wg}`)}function J_e(t){const e=t.replace(/^(https?:\/{0,2})[^/?#]*@/i,`$1${Wg}@`),n=e.indexOf("#"),o=(n===-1?e:e.slice(0,n)).replace(/([?&][^=&#]*=)[^&#]*/g,`$1${Wg}`);return n===-1?o:`${o}#${Z_e(e.slice(n+1))}`}function qM(t,e){if(typeof t=="string"){const n=M8(t);if(q_e.test(n))throw new He(`Invalid URL ${JSON.stringify(J_e(n))}: missing "//" after protocol`,He.ERR_INVALID_URL,e)}}function I8(t,e,n,i){qM(e,i);let o=!K_e(e);return t&&(o||n===!1)?(qM(t,i),U_e(t,e)):e}const ZM=t=>t instanceof ti?{...t}:t,Q_e=t=>Object.getOwnPropertySymbols&&Object.getOwnPropertyDescriptor?Object.keys(t).concat(Object.getOwnPropertySymbols(t).filter(e=>Object.getOwnPropertyDescriptor(t,e).enumerable)):Object.keys(t);function qs(t,e){t=t||{},e=e||{};const n=Object.create(null);Object.defineProperty(n,"hasOwnProperty",{__proto__:null,value:Object.prototype.hasOwnProperty,enumerable:!1,writable:!0,configurable:!0});function i(u,d,f,h){return me.isPlainObject(u)&&me.isPlainObject(d)?me.merge.call({caseless:h},u,d):me.isPlainObject(d)?me.merge({},d):me.isArray(d)?d.slice():d}function o(u,d,f,h){if(me.isUndefined(d)){if(!me.isUndefined(u))return i(void 0,u,f,h)}else return i(u,d,f,h)}function r(u,d){if(!me.isUndefined(d))return i(void 0,d)}function a(u,d){if(me.isUndefined(d)){if(!me.isUndefined(u))return i(void 0,u)}else return i(void 0,d)}function s(u){const d=me.hasOwnProp(e,"transitional")?e.transitional:void 0;if(!me.isUndefined(d))if(me.isPlainObject(d)){if(me.hasOwnProp(d,u))return d[u]}else return;const f=me.hasOwnProp(t,"transitional")?t.transitional:void 0;if(me.isPlainObject(f)&&me.hasOwnProp(f,u))return f[u]}function l(u,d,f){if(me.hasOwnProp(e,f))return i(u,d);if(me.hasOwnProp(t,f))return i(void 0,u)}const c={url:r,method:r,data:r,baseURL:a,transformRequest:a,transformResponse:a,paramsSerializer:a,timeout:a,timeoutErrorMessage:a,withCredentials:a,withXSRFToken:a,adapter:a,responseType:a,xsrfCookieName:a,xsrfHeaderName:a,onUploadProgress:a,onDownloadProgress:a,decompress:a,maxContentLength:a,maxBodyLength:a,beforeRedirect:a,transport:a,httpAgent:a,httpsAgent:a,cancelToken:a,socketPath:a,allowedSocketPaths:a,responseEncoding:a,validateStatus:l,headers:(u,d,f)=>o(ZM(u),ZM(d),f,!0)};return me.forEach(Q_e({...t,...e}),function(d){if(d==="__proto__"||d==="constructor"||d==="prototype")return;const f=me.hasOwnProp(c,d)?c[d]:o,h=me.hasOwnProp(t,d)?t[d]:void 0,p=me.hasOwnProp(e,d)?e[d]:void 0,g=f(h,p,d);me.isUndefined(g)&&f!==l||(n[d]=g)}),me.hasOwnProp(e,"validateStatus")&&me.isUndefined(e.validateStatus)&&s("validateStatusUndefinedResolves")===!1&&(me.hasOwnProp(t,"validateStatus")?n.validateStatus=i(void 0,t.validateStatus):delete n.validateStatus),n}const e2e=["content-type","content-length"];function t2e(t,e,n){if(n!=="content-only"){t.set(e);return}Object.entries(e||{}).forEach(([i,o])=>{e2e.includes(i.toLowerCase())&&t.set(i,o)})}const n2e=t=>encodeURIComponent(t).replace(/%([0-9A-F]{2})/gi,(e,n)=>String.fromCharCode(parseInt(n,16)));function k8(t){const e=qs({},t),n=f=>me.hasOwnProp(e,f)?e[f]:void 0,i=n("data");let o=n("withXSRFToken");const r=n("xsrfHeaderName"),a=n("xsrfCookieName");let s=n("headers");const l=n("auth"),c=n("baseURL"),u=n("allowAbsoluteUrls"),d=n("url");if(e.headers=s=ti.from(s),e.url=$8(I8(c,d,u,e),n("params"),n("paramsSerializer")),l){const f=me.getSafeProp(l,"username")||"",h=me.getSafeProp(l,"password")||"";try{s.set("Authorization","Basic "+btoa(f+":"+(h?n2e(h):"")))}catch(p){throw He.from(p,He.ERR_BAD_OPTION_VALUE,t)}}if(me.isFormData(i)){const f=me.getSafeProp(i,"getHeaders");Ln.hasStandardBrowserEnv||Ln.hasStandardBrowserWebWorkerEnv||me.isReactNative(i)?s.setContentType(void 0):me.isFunction(f)&&t2e(s,f.call(i),n("formDataHeaderPolicy"))}if(Ln.hasStandardBrowserEnv&&(me.isFunction(o)&&(o=o(e)),o===!0||o==null&&Y_e(e.url))){const h=r&&a&&G_e.read(a);h&&s.set(r,h)}return e}const i2e=typeof XMLHttpRequest<"u",o2e=i2e&&function(t){return new Promise(function(n,i){const o=k8(t);let r=o.data;const a=ti.from(o.headers).normalize();let{responseType:s,onUploadProgress:l,onDownloadProgress:c}=o,u,d,f,h,p,g;function m(){h&&h(),p&&p(),o.cancelToken&&o.cancelToken.unsubscribe(u),o.signal&&o.signal.removeEventListener("abort",u)}let v=new XMLHttpRequest;v.open(o.method.toUpperCase(),o.url,!0),v.timeout=o.timeout;function b(w){if(!v)return;if(v.status===0&&(H0(M8(o.url))||H0(Ln.origin))!=="file"&&!(v.responseURL&&v.responseURL.startsWith("file:"))){i(new He("Request aborted",He.ECONNABORTED,t,v)),m(),v=null;return}try{w?g&&g(w):p&&p()}catch(_){setTimeout(()=>{throw _})}if(!v)return;const x=ti.from("getAllResponseHeaders"in v&&v.getAllResponseHeaders()),S={data:!s||s==="text"||s==="json"?v.responseText:v.response,status:v.status,statusText:v.statusText,headers:x,config:t,request:v};E8(function(P){n(P),m()},function(P){i(P),m()},S),v=null}"onloadend"in v?v.onloadend=b:v.onreadystatechange=function(){!v||v.readyState!==4||v.status===0&&!(v.responseURL&&v.responseURL.startsWith("file:"))||setTimeout(b)},v.onabort=function(){v&&(i(new He("Request aborted",He.ECONNABORTED,t,v)),m(),v=null)},v.onerror=function(x){const $=x&&x.message?x.message:"Network Error",S=new He($,He.ERR_NETWORK,t,v);S.event=x||null,i(S),m(),v=null},v.ontimeout=function(){let x=o.timeout?"timeout of "+o.timeout+"ms exceeded":"timeout exceeded";const $=o.transitional||x$;o.timeoutErrorMessage&&(x=o.timeoutErrorMessage),i(new He(x,$.clarifyTimeoutError?He.ETIMEDOUT:He.ECONNABORTED,t,v)),m(),v=null},r===void 0&&a.setContentType(null),"setRequestHeader"in v&&me.forEach(y8(a),function(x,$){v.setRequestHeader($,x)}),me.isUndefined(o.withCredentials)||(v.withCredentials=!!o.withCredentials),s&&s!=="json"&&(v.responseType=o.responseType),c&&([f,p,g]=jg(c,!0),v.addEventListener("progress",f)),l&&v.upload&&([d,h]=jg(l),v.upload.addEventListener("progress",d),v.upload.addEventListener("loadend",h)),(o.cancelToken||o.signal)&&(u=w=>{v&&(i(!w||w.type?new Sf(null,t,v):w),v.abort(),m(),v=null)},o.cancelToken&&o.cancelToken.subscribe(u),o.signal&&(o.signal.aborted?u():o.signal.addEventListener("abort",u)));const y=H0(o.url);if(y&&!Ln.protocols.includes(y)){i(new He("Unsupported protocol "+y+":",He.ERR_BAD_REQUEST,t)),m();return}v.send(r||null)})},r2e=(t,e)=>{if(t=t?t.filter(Boolean):[],!e&&!t.length)return;const n=new AbortController;let i=!1;const o=function(l){if(!i){i=!0,a();const c=l instanceof Error?l:this.reason;n.abort(c instanceof He?c:new Sf(c instanceof Error?c.message:c))}};let r=e&&setTimeout(()=>{r=null,o(new He(`timeout of ${e}ms exceeded`,He.ETIMEDOUT))},e);const a=()=>{t&&(r&&clearTimeout(r),r=null,t.forEach(l=>{l.unsubscribe?l.unsubscribe(o):l.removeEventListener("abort",o)}),t=null)};t.forEach(l=>{if(!i){if(l.aborted){o.call(l);return}l.addEventListener("abort",o,{once:!0})}});const{signal:s}=n;return s.unsubscribe=()=>me.asap(a),s},a2e=function*(t,e){let n=t.byteLength;if(n{const o=s2e(t,e);let r=0,a,s=l=>{a||(a=!0,i&&i(l))};return new ReadableStream({async pull(l){try{const{done:c,value:u}=await o.next();if(c){s(),l.close();return}let d=u.byteLength;if(n){let f=r+=d;n(f)}l.enqueue(new Uint8Array(u))}catch(c){throw s(c),c}},cancel(l){return s(l),o.return()}},{highWaterMark:2})},QM=t=>t>=48&&t<=57||t>=65&&t<=70||t>=97&&t<=102,D8=(t,e,n)=>e+2t<=57?t-48:(t&223)-55,c2e=t=>t>=65&&t<=90||t>=97&&t<=122||t>=48&&t<=57||t===43||t===47||t===45||t===95,u2e=t=>t===9||t===10||t===12||t===13||t===32,d2e=t=>{const e=Math.floor(t/4),n=t%4;return e*3+(n===2?1:n===3?2:0)},f2e=t=>{const e=t.length;let n=0;return e>0&&t.charCodeAt(e-1)===61&&(n++,e>1&&t.charCodeAt(e-2)===61&&n++),Math.floor((e-n)*3/4)},h2e=t=>{const e=t.length;let n=0,i=0,o=!1;for(let r=0;r0){o=!0;continue}n++}}return o||i>2||i>0&&(n+i)%4!==0||n%4===1?f2e(t):d2e(n)},p2e=(t,e)=>{if(!t||typeof t!="string"||!t.startsWith("data:"))return 0;const n=t.indexOf(",");if(n<0)return 0;const i=t.slice(5,n),o=t.slice(n+1);if(/;base64/i.test(i))return e(o);let a=0;for(let s=0,l=o.length;s=55296&&c<=56319&&s+1=56320&&u<=57343?(a+=4,s++):a+=3}else a+=3}return a};function g2e(t){const e=typeof t=="string"?t.indexOf("#"):-1;return p2e(e===-1?t:t.slice(0,e),h2e)}const S$="1.20.0",tI=64*1024,m2e={cache:"default",redirect:"follow",referrer:"about:client",referrerPolicy:"",mode:"cors",integrity:"",keepalive:!1,priority:"auto",window:null},{isFunction:xh}=me,v2e=t=>encodeURIComponent(t).replace(/%([0-9A-F]{2})/gi,(e,n)=>String.fromCharCode(parseInt(n,16))),nI=t=>{if(!me.isString(t))return t;try{return decodeURIComponent(t)}catch{return t}},iI=(t,...e)=>{try{return!!t(...e)}catch{return!1}},b2e=t=>{const e=t.indexOf("://");let n=t;return e!==-1&&(n=n.slice(e+3)),n.includes("@")||n.includes(":")},y2e=t=>{const e=me.global!==void 0&&me.global!==null?me.global:globalThis,{ReadableStream:n,TextEncoder:i}=e;t=me.merge.call({skipUndefined:!0},{Request:e.Request,Response:e.Response},t);const{fetch:o,Request:r,Response:a}=t,s=o?xh(o):typeof fetch=="function",l=xh(r),c=xh(a);if(!s)return!1;const u=s&&xh(n),d=s&&(typeof i=="function"?(v=>b=>v.encode(b))(new i):async v=>new Uint8Array(await new r(v).arrayBuffer())),f=l&&u&&iI(()=>{let v=!1;const b=new r(Ln.origin,{body:new n,method:"POST",get duplex(){return v=!0,"half"}}),y=b.headers.has("Content-Type");return b.body!=null&&b.body.cancel(),v&&!y}),h=c&&u&&iI(()=>me.isReadableStream(new a("").body)),p={stream:h&&(v=>v.body)};s&&["text","arrayBuffer","blob","formData","stream"].forEach(v=>{!p[v]&&(p[v]=(b,y)=>{let w=b&&b[v];if(w)return w.call(b);throw new He(`Response type '${v}' is not supported`,He.ERR_NOT_SUPPORT,y)})});const g=async v=>{if(v==null)return 0;if(me.isBlob(v))return v.size;if(me.isSpecCompliantForm(v))return(await new r(Ln.origin,{method:"POST",body:v}).arrayBuffer()).byteLength;if(me.isArrayBufferView(v)||me.isArrayBuffer(v))return v.byteLength;if(me.isURLSearchParams(v)&&(v=v+""),me.isString(v))return(await d(v)).byteLength},m=async(v,b)=>{const y=me.toFiniteNumber(v.getContentLength());return y??g(b)};return async v=>{let{url:b,method:y,data:w,signal:x,cancelToken:$,timeout:S,onDownloadProgress:_,onUploadProgress:P,responseType:T,headers:O,withCredentials:M="same-origin",fetchOptions:I,maxContentLength:k,maxBodyLength:E,maxRedirects:R}=k8(v);const D=me.isNumber(k)&&k>-1,F=me.isNumber(E)&&E>-1,N=Y=>me.hasOwnProp(v,Y)?v[Y]:void 0;let B=o||fetch;T=T?(T+"").toLowerCase():"text";let z=r2e([x,$&&$.toAbortSignal()],S),W=null;const j=z&&z.unsubscribe&&(()=>{z.unsubscribe()});let U,V=null;const q=()=>new He("Request body larger than maxBodyLength limit",He.ERR_BAD_REQUEST,v,W);try{let Y;const J=N("auth");if(J){const ne=me.getSafeProp(J,"username")||"",le=me.getSafeProp(J,"password")||"";Y={username:ne,password:le}}if(b2e(b)){const ne=new URL(b,Ln.origin);if(!Y&&(ne.username||ne.password)){const le=nI(ne.username),he=nI(ne.password);Y={username:le,password:he}}(ne.username||ne.password)&&(ne.username="",ne.password="",b=ne.href)}if(Y&&(O.delete("authorization"),O.set("Authorization","Basic "+btoa(v2e((Y.username||"")+":"+(Y.password||""))))),D&&typeof b=="string"&&b.startsWith("data:")&&g2e(b)>k)throw new He("maxContentLength size of "+k+" exceeded",He.ERR_BAD_RESPONSE,v,W);if(F&&y!=="get"&&y!=="head"){const ne=await g(w);if(typeof ne=="number"&&isFinite(ne)&&(U=ne,ne>E))throw q()}const Q=F&&(me.isReadableStream(w)||me.isStream(w)),G=(ne,le,he)=>JM(ne,tI,pe=>{if(F&&pe>E)throw V=q();le&&le(pe)},he);if(f&&y!=="get"&&y!=="head"&&(P||Q)){if(U=U??await m(O,w),U!==0||Q){let ne=new r(b,{method:"POST",body:w,duplex:"half"}),le;if(me.isFormData(w)&&(le=ne.headers.get("content-type"))&&O.setContentType(le),ne.body){const[he,pe]=P&&KM(U,jg(UM(P)))||[];w=G(ne.body,he,pe)}}}else if(Q&&!l&&u&&y!=="get"&&y!=="head")w=G(w);else if(Q&&l&&!f&&y!=="get"&&y!=="head")throw new He("Stream request bodies are not supported by the current fetch implementation",He.ERR_NOT_SUPPORT,v,W);me.isString(M)||(M=M?"include":"omit");const ee=l&&"credentials"in r.prototype;if(me.isFormData(w)){const ne=O.getContentType();ne&&/^multipart\/form-data/i.test(ne)&&!/boundary=/i.test(ne)&&O.delete("content-type")}O.set("User-Agent","axios/"+S$,!1);const X=I==null?I:Object.assign(Object.create(null),I);X&&(delete X.body,delete X.headers,delete X.method,delete X.signal,delete X.duplex,delete X.credentials);const K=Object.assign(Object.create(null),X,{signal:z,method:y.toUpperCase(),headers:y8(O.normalize()),body:w,duplex:"half",credentials:ee?M:void 0});l&&(me.forEach(m2e,(ne,le)=>{K[le]===void 0&&(K[le]=ne)}),K.signal===void 0&&(K.signal=null),K.body===void 0&&(K.body=null)),R===0&&(K.redirect="manual",X&&(X.redirect="manual")),W=l&&new r(b,K);let te=await(l?B(W,X):B(b,K));const ue=ti.from(te.headers);if(D){const ne=me.toFiniteNumber(ue.getContentLength());if(ne!=null&&ne>k)throw new He("maxContentLength size of "+k+" exceeded",He.ERR_BAD_RESPONSE,v,W)}const se=h&&(T==="stream"||T==="response");if(h&&te.body&&(_||D||se&&j)){const ne={};["status","statusText","headers"].forEach($e=>{ne[$e]=te[$e]});const le=me.toFiniteNumber(ue.getContentLength()),[he,pe]=_&&KM(le,jg(UM(_),!0))||[];let ge=0;const be=$e=>{if(D&&(ge=$e,ge>k))throw new He("maxContentLength size of "+k+" exceeded",He.ERR_BAD_RESPONSE,v,W);he&&he($e)};te=new a(JM(te.body,tI,be,()=>{pe&&pe(),j&&j()}),ne)}T=T||"text";let re=await p[me.findKey(p,T)||"text"](te,v);if(D&&!h&&!se){let ne;if(re!=null&&(typeof re.byteLength=="number"?ne=re.byteLength:typeof re.size=="number"?ne=re.size:typeof re=="string"&&(ne=typeof i=="function"?new i().encode(re).byteLength:re.length)),typeof ne=="number"&&ne>k)throw new He("maxContentLength size of "+k+" exceeded",He.ERR_BAD_RESPONSE,v,W)}return!se&&j&&j(),await new Promise((ne,le)=>{E8(ne,le,{data:re,headers:ti.from(te.headers),status:te.status,statusText:te.statusText,config:v,request:W})})}catch(Y){if(j&&j(),z&&z.aborted&&z.reason instanceof He){const J=z.reason;throw J.config=v,W&&(J.request=W),Y!==J&&Object.defineProperty(J,"cause",{__proto__:null,value:Y,writable:!0,enumerable:!1,configurable:!0}),J}if(V)throw W&&!V.request&&(V.request=W),V;if(Y instanceof He)throw W&&!Y.request&&(Y.request=W),Y;if(Y&&Y.name==="TypeError"&&/Load failed|fetch/i.test(Y.message)){const J=new He("Network Error",He.ERR_NETWORK,v,W,Y&&Y.response);throw Object.defineProperty(J,"cause",{__proto__:null,value:Y.cause||Y,writable:!0,enumerable:!1,configurable:!0}),J}throw He.from(Y,Y&&Y.code,v,W,Y&&Y.response)}}},x2e=new Map,R8=t=>{let e=t&&t.env||{};const{fetch:n,Request:i,Response:o}=e,r=[i,o,n];let a=r.length,s=a,l,c,u=x2e;for(;s--;)l=r[s],c=u.get(l),c===void 0&&u.set(l,c=s?new Map:y2e(e)),u=c;return c};R8();const C$={http:P_e,xhr:o2e,fetch:{get:R8}};me.forEach(C$,(t,e)=>{if(t){try{Object.defineProperty(t,"name",{__proto__:null,value:e})}catch{}Object.defineProperty(t,"adapterName",{__proto__:null,value:e})}});const oI=t=>`- ${t}`,w2e=t=>me.isFunction(t)||t===null||t===!1;function S2e(t,e){t=me.isArray(t)?t:[t];const{length:n}=t;let i,o;const r={};for(let a=0;a`adapter ${l} `+(c===!1?"is not supported by the environment":"is not available in the build"));let s=n?a.length>1?`since : `+a.map(oI).join(` @@ -2482,4 +2482,4 @@ ${s.toFixed(1)}%`;return String(c).split(` `);a=s===-1?"":r.slice(s+1)}if(!i.stack)i.stack=a;else if(a){const s=a.indexOf(` `),l=s===-1?-1:a.indexOf(` `,s+1),c=l===-1?"":a.slice(l+1);String(i.stack).endsWith(c)||(i.stack+=` -`+a)}}catch{}throw i}}_request(e,n){typeof e=="string"?(n=n||{},n.url=e):n=e||{},n=qs(this.defaults,n);const{transitional:i,paramsSerializer:o,headers:r}=n;i!==void 0&&gp.assertOptions(i,{silentJSONParsing:Un.transitional(Un.boolean),forcedJSONParsing:Un.transitional(Un.boolean),clarifyTimeoutError:Un.transitional(Un.boolean),legacyInterceptorReqResOrdering:Un.transitional(Un.boolean),advertiseZstdAcceptEncoding:Un.transitional(Un.boolean),validateStatusUndefinedResolves:Un.transitional(Un.boolean)},!1),o!=null&&(me.isFunction(o)?n.paramsSerializer={serialize:o}:gp.assertOptions(o,{encode:Un.function,serialize:Un.function},!0)),n.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?n.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:n.allowAbsoluteUrls=!0),gp.assertOptions(n,{baseUrl:Un.spelling("baseURL"),withXsrfToken:Un.spelling("withXSRFToken")},!0),n.method=(me.getSafeProp(n,"method")||me.getSafeProp(this.defaults,"method")||"get").toLowerCase();let a=r&&me.merge(r.common,r[n.method]);r&&me.forEach(O8.concat("common"),p=>{delete r[p]}),n.headers=ti.concat(a,r);const s=[];let l=!0;this.interceptors.request.forEach(function(g){if(typeof g.runWhen=="function"&&g.runWhen(n)===!1)return;l=l&&g.synchronous;const m=n.transitional||x$;m&&m.legacyInterceptorReqResOrdering?s.unshift(g.fulfilled,g.rejected):s.push(g.fulfilled,g.rejected)});const c=[];this.interceptors.response.forEach(function(g){c.push(g.fulfilled,g.rejected)});let u,d=0,f;if(!l){const p=[j0.bind(this),void 0];for(p.unshift(...s),p.push(...c),f=p.length,u=Promise.resolve(n);dj0.call(this,h)))}catch(v){u=Promise.reject(v)}break}}if(!u)try{u=j0.call(this,h)}catch(p){u=Promise.reject(p)}for(d=0,f=c.length;d{if(!i._listeners)return;let r=i._listeners.length;for(;r-- >0;)i._listeners[r](o);i._listeners=null}),this.promise.then=o=>{let r;const a=new Promise(s=>{i.subscribe(s),r=s}).then(o);return a.cancel=function(){i.unsubscribe(r)},a},e(function(r,a,s){i.reason||(i.reason=new Sf(r,a,s),n(i.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(e){if(this.reason){e(this.reason);return}this._listeners?this._listeners.push(e):this._listeners=[e]}unsubscribe(e){if(!this._listeners)return;const n=this._listeners.indexOf(e);n!==-1&&this._listeners.splice(n,1)}toAbortSignal(){const e=new AbortController,n=i=>{e.abort(i)};return this.subscribe(n),e.signal.unsubscribe=()=>this.unsubscribe(n),e.signal}static source(){let e;return{token:new F8(function(o){e=o}),cancel:e}}};function A2e(t){return function(n){return t.apply(null,n)}}function _2e(t){return me.isObject(t)&&t.isAxiosError===!0}const mp={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,ContentTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,UnprocessableContent:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511,WebServerReturnsAnUnknownError:520,WebServerIsDown:521,ConnectionTimedOut:522,OriginIsUnreachable:523,TimeoutOccurred:524,SslHandshakeFailed:525,InvalidSslCertificate:526};Object.entries(mp).forEach(([t,e])=>{mp[e]===void 0&&(mp[e]=t)});function N8(t){const e=new Is(t),n=l8(Is.prototype.request,e);return me.extend(n,Is.prototype,e,{allOwnKeys:!0}),me.extend(n,e,null,{allOwnKeys:!0}),n.create=function(o){return N8(qs(t,o))},n}const bn=N8(wf);bn.Axios=Is;bn.CanceledError=Sf;bn.CancelToken=$2e;bn.isCancel=T8;bn.VERSION=S$;bn.toFormData=kv;bn.AxiosError=He;bn.Cancel=bn.CanceledError;bn.all=function(e){return Promise.all(e)};bn.spread=A2e;bn.isAxiosError=_2e;bn.mergeConfig=qs;bn.AxiosHeaders=ti;bn.formToJSON=t=>P8(me.isHTMLForm(t)?new FormData(t):t);bn.getAdapter=L8.getAdapter;bn.HttpStatusCode=mp;bn.default=bn;const{Axios:XPe,AxiosError:YPe,CanceledError:GPe,isCancel:KPe,CancelToken:UPe,VERSION:qPe,all:ZPe,Cancel:JPe,isAxiosError:QPe,spread:eOe,toFormData:tOe,AxiosHeaders:nOe,HttpStatusCode:iOe,formToJSON:oOe,getAdapter:rOe,mergeConfig:aOe,create:sOe}=bn;function P2e(t){return t.replace(/^\/+/,"")}const O2e={"file/create":"admin/files/create","admin-login":"admin/auth/login","users/show":"admin/auth/me","single-order":"admin/orders/list","single/order-sts/edit":"admin/orders/status","major/order/table":"admin/orders/wholesale/list","order-tamin":"admin/orders/tamin/list","order-sts/edit":"admin/orders/status","delete-order":"admin/orders/delete","get-custom-orders":"admin/pre-orders/list",customer:"admin/customers-omde/list",banker:"admin/customers-omde/banker/list",shopkeeper:"admin/customers-omde/shopkeeper/list","major/verify/table":"admin/customers-omde/non-verified/list","major/archive/table":"admin/customers-omde/archived/list",reagent:"admin/customers-omde/reagent/list","customer/toggle-active":"admin/customers-omde/toggle-active","customer/toggle-sts":"admin/customers-omde/toggle-sts","major/verify":"admin/customers-omde/verify","single-customer":"admin/customers-omde/single/list",single:"admin/customers-omde/single","customer/create":"admin/customers-omde/create","query/reagent":"admin/customers-omde/query/reagent","wallet/charge":"admin/customers-omde/wallet/charge","comment/table":"admin/comments/list","comment/sts":"admin/comments/sts",comment:"admin/comments",order:"admin/orders/create","order/type":"admin/orders/type-options","add/variant":"admin/products/variants/create","product/variant":"admin/products/by-ids",products:"admin/products/list","product/create":"admin/products/create","get/variants":"admin/products/variants/list","change/percent/count":"admin/products/change-percent/count","change/all":"admin/products/change-percent/apply","cash/table":"admin/documents/list",cash:"admin/documents","query/customer":"admin/documents/query/customer","wallet/table":"admin/documents/wallet/list","wallet/config":"admin/documents/wallet/config","wallet/birthday/config":"admin/documents/wallet/birthday/config","product/variant/promotion":"admin/promotions","major/promotion":"admin/promotions/list",autopromotion:"admin/promotions/auto",ignore:"admin/promotions/exclusions",users:"admin/users","users/list":"admin/users/list","const/__list__ut":"admin/users/types",const:"admin/users/types","roles/create":"admin/users/roles","branch/product":"admin/invoices","branch/product/table":"admin/invoices/list","branch/list":"admin/invoices/branch-list",branch:"admin/branches","branch/table":"admin/branches/list",workshop:"admin/workshops","user/list":"admin/branches/user-list",cities:"admin/misc/cities",sms:"admin/misc/sms","sms/table":"admin/misc/sms/list",notify:"admin/misc/notify","notify/table":"admin/misc/notify/list","notify/customer":"admin/misc/notify/customer",ddf:"admin/misc/newsletter/list","fashion/table":"admin/misc/newsletter/list","log/list/customer":"admin/misc/log/customers","dashboard/link":"admin/misc/dashboard-links","get-analytics":"admin/dashboard/omde","get-analytics-tak":"admin/dashboard/tak","dashboard/overview":"admin/dashboard/overview","brand/create":"admin/misc/brands","ciny/create":"admin/categories/collections","cities/list":"admin/cities/list","report/order-item":"admin/dashboard/report/order-item","report/product":"admin/dashboard/report/product","workshop/table":"admin/workshops/list",brand:"admin/products/brands",category:"admin/categories/list","category/":"admin/categories",ciny:"admin/categories/collections/list"},T2e=[{test:/^cities\/get-percent-aux\/(.+)$/,to:t=>`admin/misc/cities/percent-aux/${t[1]}`},{test:/^cities\/get-percent\/(.+)$/,to:t=>`admin/misc/cities/percent/${t[1]}`},{test:/^cities\/(.+)$/,to:t=>`admin/misc/cities/${t[1]}`},{test:/^const\/(.+)$/,to:t=>`admin/misc/const/${t[1]}`},{test:/^brand\/(.+)$/,to:t=>`admin/misc/brands/${t[1]}`},{test:/^log\/ago\/(.+)$/,to:t=>`admin/misc/log/customer/${t[1]}`},{test:/^notify\/read\/(.+)$/,to:t=>`admin/misc/notify/read/${t[1]}`},{test:/^notify\/(.+)$/,to:t=>`admin/misc/notify/${t[1]}`},{test:/^single\/(.+)$/,to:t=>`admin/customers-omde/${t[1]}`},{test:/^custom-order\/(.+)$/,to:t=>`admin/pre-orders/${t[1]}`},{test:/^get-custom-order\/(.+)$/,to:t=>`admin/pre-orders/${t[1]}`},{test:/^major\/archive\/(.+)$/,to:t=>`admin/customers-omde/archive/${t[1]}`},{test:/^major\/dashboard\/(.+)$/,to:t=>`admin/customers-omde/dashboard/${t[1]}`},{test:/^comment\/(.+)$/,to:t=>`admin/comments/${t[1]}`},{test:/^customer\/(.+)$/,to:t=>`admin/customers-omde/${t[1]}`},{test:/^delete\/product\/(.+)$/,to:t=>`admin/products/delete/${t[1]}`},{test:/^product\/show\/(.+)$/,to:t=>`admin/products/${t[1]}`},{test:/^product\/update\/(.+)$/,to:t=>`admin/products/${t[1]}`},{test:/^product\/(.+)\/variant$/,to:t=>`admin/products/${t[1]}/variants`},{test:/^category\/(.+)$/,to:t=>`admin/categories/${t[1]}`},{test:/^ciny\/(.+)$/,to:t=>`admin/categories/collections/${t[1]}`},{test:/^cash\/confirem\/(.+)$/,to:t=>`admin/documents/${t[1]}/confirm`},{test:/^cash\/(.+)$/,to:t=>`admin/documents/${t[1]}`},{test:/^product\/variant\/promotion\/(.+)$/,to:t=>`admin/promotions/${t[1]}`},{test:/^major\/promotion\/(.+)$/,to:t=>`admin/promotions/${t[1]}`},{test:/^ignore\/(.+)$/,to:t=>`admin/promotions/exclusions/${t[1]}`},{test:/^roles\/(\d+)\/(.+)$/,to:t=>`admin/users/types/${t[1]}/roles/${t[2]}`},{test:/^roles\/(.+)$/,to:t=>`admin/users/types/${t[1]}/roles`},{test:/^users\/(.+)$/,to:t=>`admin/users/${t[1]}`},{test:/^branch\/product\/(.+)$/,to:t=>`admin/invoices/${t[1]}`},{test:/^branch\/active\/(.+)$/,to:t=>`admin/branches/active/${t[1]}`},{test:/^workshop\/active\/(.+)$/,to:t=>`admin/workshops/active/${t[1]}`},{test:/^branch\/(.+)$/,to:t=>`admin/branches/${t[1]}`},{test:/^workshop\/(.+)$/,to:t=>`admin/workshops/${t[1]}`}];function E2e(t){if(/^https?:\/\//i.test(t))return t;const[e,n]=P2e(t).split("?"),i=O2e[e];if(i)return n?`${i}?${n}`:i;for(const{test:o,to:r}of T2e){const a=e.match(o);if(a){const s=r(a);return n?`${s}?${n}`:s}}return n?`${e}?${n}`:e}const M2e="/api/",B8={"Content-Type":"application/json",Accept:"application/json"},aI=localStorage.getItem($c);aI&&(B8.Authorization="Bearer "+aI);const Cf=bn.create({baseURL:M2e,headers:B8});Cf.interceptors.request.use(t=>{t.url&&(t.url=E2e(t.url));const e=localStorage.getItem($c);return e?t.headers.Authorization="Bearer "+e:delete t.headers.Authorization,t.data instanceof FormData&&delete t.headers["Content-Type"],localStorage.getItem("debug")==="1"&&(t.headers["X-Debug"]="1"),t},t=>Promise.reject(t));let sI=!1;Cf.interceptors.response.use(t=>{var n;const e=(n=t.data)==null?void 0:n.debug;return e&&localStorage.getItem("debug")==="1"&&(console.groupCollapsed(`[DEBUG] ${t.config.url}`),console.log(e),Array.isArray(e.by_kind)&&console.table(e.by_kind),console.groupEnd()),t},t=>{var e;return((e=t==null?void 0:t.response)==null?void 0:e.status)===401&&!sI&&(window.location.pathname.endsWith("/auth/login")||(sI=!0,localStorage.removeItem($c),window.location.assign("/auth/login"))),Promise.reject(t)});function I2e(t){const e=[...t],n=[];for(;e.length>1;)e.pop(),n.push(e.join("."));return n}function k2e(t){let e=[...t];return t.forEach(n=>{const i=n.split(".");i.length>1&&(e=[...new Set([...e,...I2e(i)])])}),e}const z8=Nk("users",{state:()=>({cityFilters:{},userInfo:void 0,roles:void 0,isSuperAdmin:!1}),getters:{hasPermission:t=>e=>{const n=t.roles;if(n)return n.includes(e)}},actions:{setCities(t){t.forEach(e=>{this.cityFilters[e.id]=e.title})},async getCities(){try{const t=await Cf.post("cities/list");this.setCities(t.data.rows)}catch(t){console.log(t)}},setUserInfo(t){this.userInfo=t},deleteUserInfo(){this.userInfo={}},getRoles(t){this.roles=k2e(t)},setSuperAdmin(t){this.isSuperAdmin=t===!0},deleteRoles(){this.roles=void 0,this.isSuperAdmin=!1}}}),$$=pAe({history:Y$e("/"),scrollBehavior(){return{left:0,top:0}},routes:[{path:"",component:()=>ze(()=>import("./Main-DE7EPCye.js"),__vite__mapDeps([143,70,44,28,45,46,3,4,23,47,48,49,7,16,144])),children:gAe},{path:"",component:()=>ze(()=>import("./FullPage-C6nxZM2C.js"),[]),children:[...mAe,{path:"/auth/iam/callback",name:"iam-callback",component:()=>ze(()=>import("./IamCallback-BqXFuRfL.js"),__vite__mapDeps([145,7])),meta:{rule:"editor"}},{path:"/pages/error-404",name:"page-error-404",component:()=>ze(()=>import("./Error404-CBtpcCz_.js"),__vite__mapDeps([146,147])),meta:{rule:"editor"}},{path:"/pages/error-500",name:"page-error-500",component:()=>ze(()=>import("./Error500-DfUulvTr.js"),__vite__mapDeps([148,149])),meta:{rule:"editor"}},{path:"/pages/not-authorized",name:"page-not-authorized",component:()=>ze(()=>import("./NotAuthorized-DqBj3zAX.js"),__vite__mapDeps([150,151])),meta:{rule:"editor"}},{path:"/pages/maintenance",name:"page-maintenance",component:()=>ze(()=>import("./Maintenance-3Xkj-5w0.js"),__vite__mapDeps([152,153])),meta:{rule:"editor"}}]},{path:"/:pathMatch(.*)*",redirect:"/pages/error-404"}]});$$.afterEach(()=>{const t=document.getElementById("loading-bg");t&&(t.style.display="none")});const D2e=["/auth/login","/auth/forgot-password","/auth/register","/reg","/auth/iam/callback"];async function R2e(){const t=z8();if(t.roles)return t.roles;try{const{data:e}=await Cf.get("users/show");t.getRoles(e.permission),t.setSuperAdmin(e.is_super_admin),delete e.permission,delete e.ut,e.api_token&&localStorage.setItem($c,e.api_token),localStorage.setItem(UN,JSON.stringify(e))}catch(e){console.log(e)}return t.roles}let ww=!1;function L2e(){return sessionStorage.getItem("gb_admin_iam_sso_skip")==="1"?(sessionStorage.removeItem("gb_admin_iam_sso_skip"),ww=!0,!0):ww}$$.beforeEach(async t=>{var n;if(!localStorage.getItem($c)&&t.path!=="/auth/iam/callback"&&!L2e()){ww=!0,sessionStorage.removeItem("gb_admin_iam_sso_checked");try{const{data:i}=await Cf.get("admin/auth/sso/start",{params:{redirect_uri:s$e("auth/iam/callback")}});if(i!=null&&i.enabled&&i.authorize_url)return window.location.assign(i.authorize_url),!1}catch{}}if(D2e.indexOf(t.path)>-1)return!0;if(localStorage.getItem($c)){const i=await R2e();return i?(n=t.meta)!=null&&n.superAdminOnly&&!z8().isSuperAdmin?{name:"page-not-authorized"}:i&&t.meta&&t.meta.role&&!i.includes(t.meta.role)?t.name==="dashboard-ecommerce"||t.name==="dashboard-analytics"?{name:"my-data"}:{name:"page-not-authorized"}:!0:{path:"/auth/login"}}return{path:"/auth/login"}});const $f=kk(l$e);$f.use(wH());$f.use(U0e);$f.use($$);$f.use(Hg);$f.mount("#app");export{ai as $,wC as A,$w as B,sv as C,Bm as D,jC as E,Ge as F,xv as G,gA as H,ut as I,Hs as J,zm as K,si as L,Wo as M,On as N,at as O,FS as P,yi as Q,hf as R,cv as S,ga as T,Obe as U,Hm as V,Ic as W,BPe as X,Nk as Y,rl as Z,r$e as _,cc as a,s$e as a0,$c as a1,UN as a2,bv as a3,Na as a4,Ba as a5,KC as a6,H2e as a7,sr as a8,Tt as a9,Rs as aa,PD as ab,A as ac,z9 as ad,k9 as ae,B9 as af,M9 as ag,TD as ah,Yr as ai,z2e as aj,qS as ak,W2e as al,xC as am,ns as b,C as c,oe as d,V$ as e,Tn as f,B2e as g,Lt as h,xk as i,ZCe as j,HPe as k,zPe as l,ae as m,ye as n,zi as o,Yl as p,Xd as q,Iu as r,L as s,V0 as t,z8 as u,QCe as v,ss as w,qe as x,Cf as y,$t as z}; +`+a)}}catch{}throw i}}_request(e,n){typeof e=="string"?(n=n||{},n.url=e):n=e||{},n=qs(this.defaults,n);const{transitional:i,paramsSerializer:o,headers:r}=n;i!==void 0&&gp.assertOptions(i,{silentJSONParsing:Un.transitional(Un.boolean),forcedJSONParsing:Un.transitional(Un.boolean),clarifyTimeoutError:Un.transitional(Un.boolean),legacyInterceptorReqResOrdering:Un.transitional(Un.boolean),advertiseZstdAcceptEncoding:Un.transitional(Un.boolean),validateStatusUndefinedResolves:Un.transitional(Un.boolean)},!1),o!=null&&(me.isFunction(o)?n.paramsSerializer={serialize:o}:gp.assertOptions(o,{encode:Un.function,serialize:Un.function},!0)),n.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?n.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:n.allowAbsoluteUrls=!0),gp.assertOptions(n,{baseUrl:Un.spelling("baseURL"),withXsrfToken:Un.spelling("withXSRFToken")},!0),n.method=(me.getSafeProp(n,"method")||me.getSafeProp(this.defaults,"method")||"get").toLowerCase();let a=r&&me.merge(r.common,r[n.method]);r&&me.forEach(O8.concat("common"),p=>{delete r[p]}),n.headers=ti.concat(a,r);const s=[];let l=!0;this.interceptors.request.forEach(function(g){if(typeof g.runWhen=="function"&&g.runWhen(n)===!1)return;l=l&&g.synchronous;const m=n.transitional||x$;m&&m.legacyInterceptorReqResOrdering?s.unshift(g.fulfilled,g.rejected):s.push(g.fulfilled,g.rejected)});const c=[];this.interceptors.response.forEach(function(g){c.push(g.fulfilled,g.rejected)});let u,d=0,f;if(!l){const p=[j0.bind(this),void 0];for(p.unshift(...s),p.push(...c),f=p.length,u=Promise.resolve(n);dj0.call(this,h)))}catch(v){u=Promise.reject(v)}break}}if(!u)try{u=j0.call(this,h)}catch(p){u=Promise.reject(p)}for(d=0,f=c.length;d{if(!i._listeners)return;let r=i._listeners.length;for(;r-- >0;)i._listeners[r](o);i._listeners=null}),this.promise.then=o=>{let r;const a=new Promise(s=>{i.subscribe(s),r=s}).then(o);return a.cancel=function(){i.unsubscribe(r)},a},e(function(r,a,s){i.reason||(i.reason=new Sf(r,a,s),n(i.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(e){if(this.reason){e(this.reason);return}this._listeners?this._listeners.push(e):this._listeners=[e]}unsubscribe(e){if(!this._listeners)return;const n=this._listeners.indexOf(e);n!==-1&&this._listeners.splice(n,1)}toAbortSignal(){const e=new AbortController,n=i=>{e.abort(i)};return this.subscribe(n),e.signal.unsubscribe=()=>this.unsubscribe(n),e.signal}static source(){let e;return{token:new F8(function(o){e=o}),cancel:e}}};function A2e(t){return function(n){return t.apply(null,n)}}function _2e(t){return me.isObject(t)&&t.isAxiosError===!0}const mp={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,ContentTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,UnprocessableContent:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511,WebServerReturnsAnUnknownError:520,WebServerIsDown:521,ConnectionTimedOut:522,OriginIsUnreachable:523,TimeoutOccurred:524,SslHandshakeFailed:525,InvalidSslCertificate:526};Object.entries(mp).forEach(([t,e])=>{mp[e]===void 0&&(mp[e]=t)});function N8(t){const e=new Is(t),n=l8(Is.prototype.request,e);return me.extend(n,Is.prototype,e,{allOwnKeys:!0}),me.extend(n,e,null,{allOwnKeys:!0}),n.create=function(o){return N8(qs(t,o))},n}const bn=N8(wf);bn.Axios=Is;bn.CanceledError=Sf;bn.CancelToken=$2e;bn.isCancel=T8;bn.VERSION=S$;bn.toFormData=kv;bn.AxiosError=He;bn.Cancel=bn.CanceledError;bn.all=function(e){return Promise.all(e)};bn.spread=A2e;bn.isAxiosError=_2e;bn.mergeConfig=qs;bn.AxiosHeaders=ti;bn.formToJSON=t=>P8(me.isHTMLForm(t)?new FormData(t):t);bn.getAdapter=L8.getAdapter;bn.HttpStatusCode=mp;bn.default=bn;const{Axios:XPe,AxiosError:YPe,CanceledError:GPe,isCancel:KPe,CancelToken:UPe,VERSION:qPe,all:ZPe,Cancel:JPe,isAxiosError:QPe,spread:eOe,toFormData:tOe,AxiosHeaders:nOe,HttpStatusCode:iOe,formToJSON:oOe,getAdapter:rOe,mergeConfig:aOe,create:sOe}=bn;function P2e(t){return t.replace(/^\/+/,"")}const O2e={"file/create":"admin/files/create","admin-login":"admin/auth/login","users/show":"admin/auth/me","single-order":"admin/orders/list","single/order-sts/edit":"admin/orders/status","major/order/table":"admin/orders/wholesale/list","order-tamin":"admin/orders/tamin/list","order-sts/edit":"admin/orders/status","delete-order":"admin/orders/delete","get-custom-orders":"admin/pre-orders/list",customer:"admin/customers-omde/list",banker:"admin/customers-omde/banker/list",shopkeeper:"admin/customers-omde/shopkeeper/list","major/verify/table":"admin/customers-omde/non-verified/list","major/archive/table":"admin/customers-omde/archived/list",reagent:"admin/customers-omde/reagent/list","customer/toggle-active":"admin/customers-omde/toggle-active","customer/toggle-sts":"admin/customers-omde/toggle-sts","major/verify":"admin/customers-omde/verify","single-customer":"admin/customers-omde/single/list",single:"admin/customers-omde/single","customer/create":"admin/customers-omde/create","query/reagent":"admin/customers-omde/query/reagent","wallet/charge":"admin/customers-omde/wallet/charge","comment/table":"admin/comments/list","comment/sts":"admin/comments/sts",comment:"admin/comments",order:"admin/orders/create","order/type":"admin/orders/type-options","add/variant":"admin/products/variants/create","product/variant":"admin/products/by-ids",products:"admin/products/list","product/create":"admin/products/create","get/variants":"admin/products/variants/list","change/percent/count":"admin/products/change-percent/count","change/all":"admin/products/change-percent/apply","cash/table":"admin/documents/list",cash:"admin/documents","query/customer":"admin/documents/query/customer","wallet/table":"admin/documents/wallet/list","wallet/config":"admin/documents/wallet/config","wallet/birthday/config":"admin/documents/wallet/birthday/config","product/variant/promotion":"admin/promotions","major/promotion":"admin/promotions/list",autopromotion:"admin/promotions/auto",ignore:"admin/promotions/exclusions",users:"admin/users","users/list":"admin/users/list","const/__list__ut":"admin/users/types",const:"admin/users/types","roles/create":"admin/users/roles","branch/product":"admin/invoices","branch/product/table":"admin/invoices/list","branch/list":"admin/invoices/branch-list",branch:"admin/branches","branch/table":"admin/branches/list",workshop:"admin/workshops","user/list":"admin/branches/user-list",cities:"admin/misc/cities",sms:"admin/misc/sms","sms/table":"admin/misc/sms/list",notify:"admin/misc/notify","notify/table":"admin/misc/notify/list","notify/customer":"admin/misc/notify/customer",ddf:"admin/misc/newsletter/list","fashion/table":"admin/misc/newsletter/list","log/list/customer":"admin/misc/log/customers","dashboard/link":"admin/misc/dashboard-links","get-analytics":"admin/dashboard/omde","get-analytics-tak":"admin/dashboard/tak","dashboard/overview":"admin/dashboard/overview","brand/create":"admin/misc/brands","ciny/create":"admin/categories/collections","cities/list":"admin/cities/list","report/order-item":"admin/dashboard/report/order-item","report/product":"admin/dashboard/report/product","workshop/table":"admin/workshops/list",brand:"admin/products/brands",category:"admin/categories/list","category/":"admin/categories",ciny:"admin/categories/collections/list"},T2e=[{test:/^cities\/get-percent-aux\/(.+)$/,to:t=>`admin/misc/cities/percent-aux/${t[1]}`},{test:/^cities\/get-percent\/(.+)$/,to:t=>`admin/misc/cities/percent/${t[1]}`},{test:/^cities\/(.+)$/,to:t=>`admin/misc/cities/${t[1]}`},{test:/^const\/(.+)$/,to:t=>`admin/misc/const/${t[1]}`},{test:/^brand\/(.+)$/,to:t=>`admin/misc/brands/${t[1]}`},{test:/^log\/ago\/(.+)$/,to:t=>`admin/misc/log/customer/${t[1]}`},{test:/^notify\/read\/(.+)$/,to:t=>`admin/misc/notify/read/${t[1]}`},{test:/^notify\/(.+)$/,to:t=>`admin/misc/notify/${t[1]}`},{test:/^single\/(.+)$/,to:t=>`admin/customers-omde/${t[1]}`},{test:/^custom-order\/(.+)$/,to:t=>`admin/pre-orders/${t[1]}`},{test:/^get-custom-order\/(.+)$/,to:t=>`admin/pre-orders/${t[1]}`},{test:/^major\/archive\/(.+)$/,to:t=>`admin/customers-omde/archive/${t[1]}`},{test:/^major\/dashboard\/(.+)$/,to:t=>`admin/customers-omde/dashboard/${t[1]}`},{test:/^comment\/(.+)$/,to:t=>`admin/comments/${t[1]}`},{test:/^customer\/(.+)$/,to:t=>`admin/customers-omde/${t[1]}`},{test:/^delete\/product\/(.+)$/,to:t=>`admin/products/delete/${t[1]}`},{test:/^product\/show\/(.+)$/,to:t=>`admin/products/${t[1]}`},{test:/^product\/update\/(.+)$/,to:t=>`admin/products/${t[1]}`},{test:/^product\/(.+)\/variant$/,to:t=>`admin/products/${t[1]}/variants`},{test:/^category\/(.+)$/,to:t=>`admin/categories/${t[1]}`},{test:/^ciny\/(.+)$/,to:t=>`admin/categories/collections/${t[1]}`},{test:/^cash\/confirem\/(.+)$/,to:t=>`admin/documents/${t[1]}/confirm`},{test:/^cash\/(.+)$/,to:t=>`admin/documents/${t[1]}`},{test:/^product\/variant\/promotion\/(.+)$/,to:t=>`admin/promotions/${t[1]}`},{test:/^major\/promotion\/(.+)$/,to:t=>`admin/promotions/${t[1]}`},{test:/^ignore\/(.+)$/,to:t=>`admin/promotions/exclusions/${t[1]}`},{test:/^roles\/(\d+)\/(.+)$/,to:t=>`admin/users/types/${t[1]}/roles/${t[2]}`},{test:/^roles\/(.+)$/,to:t=>`admin/users/types/${t[1]}/roles`},{test:/^users\/(.+)$/,to:t=>`admin/users/${t[1]}`},{test:/^branch\/product\/(.+)$/,to:t=>`admin/invoices/${t[1]}`},{test:/^branch\/active\/(.+)$/,to:t=>`admin/branches/active/${t[1]}`},{test:/^workshop\/active\/(.+)$/,to:t=>`admin/workshops/active/${t[1]}`},{test:/^branch\/(.+)$/,to:t=>`admin/branches/${t[1]}`},{test:/^workshop\/(.+)$/,to:t=>`admin/workshops/${t[1]}`}];function E2e(t){if(/^https?:\/\//i.test(t))return t;const[e,n]=P2e(t).split("?"),i=O2e[e];if(i)return n?`${i}?${n}`:i;for(const{test:o,to:r}of T2e){const a=e.match(o);if(a){const s=r(a);return n?`${s}?${n}`:s}}return n?`${e}?${n}`:e}const M2e="/api/",B8={"Content-Type":"application/json",Accept:"application/json"},aI=localStorage.getItem($c);aI&&(B8.Authorization="Bearer "+aI);const Cf=bn.create({baseURL:M2e,headers:B8});Cf.interceptors.request.use(t=>{t.url&&(t.url=E2e(t.url));const e=localStorage.getItem($c);return e?t.headers.Authorization="Bearer "+e:delete t.headers.Authorization,t.data instanceof FormData&&delete t.headers["Content-Type"],localStorage.getItem("debug")==="1"&&(t.headers["X-Debug"]="1"),t},t=>Promise.reject(t));let sI=!1;Cf.interceptors.response.use(t=>{var n;const e=(n=t.data)==null?void 0:n.debug;return e&&localStorage.getItem("debug")==="1"&&(console.groupCollapsed(`[DEBUG] ${t.config.url}`),console.log(e),Array.isArray(e.by_kind)&&console.table(e.by_kind),console.groupEnd()),t},t=>{var e;return((e=t==null?void 0:t.response)==null?void 0:e.status)===401&&!sI&&(window.location.pathname.endsWith("/auth/login")||(sI=!0,localStorage.removeItem($c),window.location.assign("/auth/login"))),Promise.reject(t)});function I2e(t){const e=[...t],n=[];for(;e.length>1;)e.pop(),n.push(e.join("."));return n}function k2e(t){let e=[...t];return t.forEach(n=>{const i=n.split(".");i.length>1&&(e=[...new Set([...e,...I2e(i)])])}),e}const z8=Nk("users",{state:()=>({cityFilters:{},userInfo:void 0,roles:void 0,isSuperAdmin:!1}),getters:{hasPermission:t=>e=>{const n=t.roles;if(n)return n.includes(e)}},actions:{setCities(t){t.forEach(e=>{this.cityFilters[e.id]=e.title})},async getCities(){try{const t=await Cf.post("cities/list");this.setCities(t.data.rows)}catch(t){console.log(t)}},setUserInfo(t){this.userInfo=t},deleteUserInfo(){this.userInfo={}},getRoles(t){this.roles=k2e(t)},setSuperAdmin(t){this.isSuperAdmin=t===!0},deleteRoles(){this.roles=void 0,this.isSuperAdmin=!1}}}),$$=pAe({history:Y$e("/"),scrollBehavior(){return{left:0,top:0}},routes:[{path:"",component:()=>ze(()=>import("./Main-XjZjVgvH.js"),__vite__mapDeps([145,72,46,30,47,48,3,4,25,49,50,51,7,16,146])),children:gAe},{path:"",component:()=>ze(()=>import("./FullPage-BQwDeh1b.js"),[]),children:[...mAe,{path:"/auth/iam/callback",name:"iam-callback",component:()=>ze(()=>import("./IamCallback-sHw34Y_i.js"),__vite__mapDeps([147,7])),meta:{rule:"editor"}},{path:"/pages/error-404",name:"page-error-404",component:()=>ze(()=>import("./Error404-BQoXkfid.js"),__vite__mapDeps([148,149])),meta:{rule:"editor"}},{path:"/pages/error-500",name:"page-error-500",component:()=>ze(()=>import("./Error500-uPAg0OcA.js"),__vite__mapDeps([150,151])),meta:{rule:"editor"}},{path:"/pages/not-authorized",name:"page-not-authorized",component:()=>ze(()=>import("./NotAuthorized-DZ45zTfA.js"),__vite__mapDeps([152,153])),meta:{rule:"editor"}},{path:"/pages/maintenance",name:"page-maintenance",component:()=>ze(()=>import("./Maintenance-axbA62Hp.js"),__vite__mapDeps([154,155])),meta:{rule:"editor"}}]},{path:"/:pathMatch(.*)*",redirect:"/pages/error-404"}]});$$.afterEach(()=>{const t=document.getElementById("loading-bg");t&&(t.style.display="none")});const D2e=["/auth/login","/auth/forgot-password","/auth/register","/reg","/auth/iam/callback"];async function R2e(){const t=z8();if(t.roles)return t.roles;try{const{data:e}=await Cf.get("users/show");t.getRoles(e.permission),t.setSuperAdmin(e.is_super_admin),delete e.permission,delete e.ut,e.api_token&&localStorage.setItem($c,e.api_token),localStorage.setItem(UN,JSON.stringify(e))}catch(e){console.log(e)}return t.roles}let ww=!1;function L2e(){return sessionStorage.getItem("gb_admin_iam_sso_skip")==="1"?(sessionStorage.removeItem("gb_admin_iam_sso_skip"),ww=!0,!0):ww}$$.beforeEach(async t=>{var n;if(!localStorage.getItem($c)&&t.path!=="/auth/iam/callback"&&!L2e()){ww=!0,sessionStorage.removeItem("gb_admin_iam_sso_checked");try{const{data:i}=await Cf.get("admin/auth/sso/start",{params:{redirect_uri:s$e("auth/iam/callback")}});if(i!=null&&i.enabled&&i.authorize_url)return window.location.assign(i.authorize_url),!1}catch{}}if(D2e.indexOf(t.path)>-1)return!0;if(localStorage.getItem($c)){const i=await R2e();return i?(n=t.meta)!=null&&n.superAdminOnly&&!z8().isSuperAdmin?{name:"page-not-authorized"}:i&&t.meta&&t.meta.role&&!i.includes(t.meta.role)?t.name==="dashboard-ecommerce"||t.name==="dashboard-analytics"?{name:"my-data"}:{name:"page-not-authorized"}:!0:{path:"/auth/login"}}return{path:"/auth/login"}});const $f=kk(l$e);$f.use(wH());$f.use(U0e);$f.use($$);$f.use(Hg);$f.mount("#app");export{rl as $,wC as A,$w as B,sv as C,Bm as D,jC as E,Ge as F,xv as G,gA as H,ut as I,Hs as J,zm as K,si as L,Wo as M,On as N,at as O,FS as P,yi as Q,hf as R,cv as S,ga as T,Obe as U,Hm as V,Ic as W,BPe as X,z2e as Y,Nk as Z,r$e as _,cc as a,ai as a0,s$e as a1,$c as a2,UN as a3,bv as a4,Na as a5,Ba as a6,KC as a7,H2e as a8,sr as a9,Tt as aa,Rs as ab,PD as ac,A as ad,z9 as ae,k9 as af,B9 as ag,M9 as ah,TD as ai,Yr as aj,qS as ak,W2e as al,xC as am,ns as b,C as c,oe as d,V$ as e,Tn as f,B2e as g,Lt as h,xk as i,ZCe as j,HPe as k,zPe as l,ae as m,ye as n,zi as o,Yl as p,Xd as q,Iu as r,L as s,V0 as t,z8 as u,QCe as v,ss as w,qe as x,Cf as y,$t as z}; diff --git a/apps/admin-panel/dist/assets/index-DLK4s3ft.js b/apps/admin-panel/dist/assets/index-DLK4s3ft.js new file mode 100644 index 0000000..326da5f --- /dev/null +++ b/apps/admin-panel/dist/assets/index-DLK4s3ft.js @@ -0,0 +1 @@ +import{o as V}from"./select--BgT6D7O.js";import{b as T}from"./filters-CoNJlguG.js";import{d as z,x as F,y as m,a as p,w as t,m as c,r as o,o as r,c as n,p as S,b as f,e as D,f as v,t as u,F as g,h as E,i as L}from"./index-CpVArufm.js";import"./index-DjZc5EYL.js";const M={class:"grid-2"},G=z({__name:"index",setup(O){const i=c(!1),_=c([]),l=c(void 0),d=c([]),x=[{title:"عملیات",dataIndex:"action"},{title:"جزئیات",dataIndex:"detail"},{title:"تاریخ",dataIndex:"caj"}];function y(e,s){return V(s).includes(e)}async function b(){if(!l.value){d.value=[];return}try{i.value=!0;const{data:e}=await m.get(`log/ago/${l.value}`);d.value=e}catch(e){console.log(e)}finally{i.value=!1}}return F(async()=>{try{const{data:e}=await m.get("log/list/customer");_.value=e}catch(e){console.log(e)}}),(e,s)=>{const h=o("a-select-option"),w=o("a-select"),k=o("a-form-item"),C=o("a-form"),j=o("a-table"),B=o("a-card"),I=o("a-spin");return r(),p(I,{spinning:i.value},{default:t(()=>[n(B,{title:"آمار",class:"page-card table-scroll"},{default:t(()=>[n(C,{layout:"vertical"},{default:t(()=>[S("div",M,[n(k,{label:"مشتری"},{default:t(()=>[n(w,{value:l.value,"onUpdate:value":s[0]||(s[0]=a=>l.value=a),"show-search":"","allow-clear":"",placeholder:"انتخاب کنید","filter-option":y,onChange:b},{default:t(()=>[(r(!0),f(g,null,D(_.value,a=>(r(),p(h,{key:a.id,value:a.id},{default:t(()=>[v(u(a.name)+" - "+u(a.mobile),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1})])]),_:1}),n(j,{"data-source":d.value,columns:x,pagination:{pageSize:20},size:"small","row-key":"id"},{bodyCell:t(({column:a,record:N})=>[a.dataIndex==="caj"?(r(),f(g,{key:0},[v(u(E(T)(N.caj)),1)],64)):L("",!0)]),_:1},8,["data-source"])]),_:1})]),_:1},8,["spinning"])}}});export{G as default}; diff --git a/apps/admin-panel/dist/assets/index-DbpLOoM-.js b/apps/admin-panel/dist/assets/index-DbpLOoM-.js deleted file mode 100644 index dd24008..0000000 --- a/apps/admin-panel/dist/assets/index-DbpLOoM-.js +++ /dev/null @@ -1 +0,0 @@ -import{b as V}from"./filters-BPYO-DKN.js";import{d as S,x as z,y as f,a as v,w as t,m as i,r as o,o as d,c as l,p as F,b as g,e as T,f as y,t as m,F as x,h as D,i as E}from"./index-CJij4X3l.js";import"./index-CKg-8s_Z.js";const L={class:"grid-2"},q=S({__name:"index",setup(M){const u=i(!1),p=i([]),s=i(void 0),_=i([]),h=[{title:"عملیات",dataIndex:"action"},{title:"جزئیات",dataIndex:"detail"},{title:"تاریخ",dataIndex:"caj"}];function b(e,n){var c,r;return String(((r=(c=n==null?void 0:n.children)==null?void 0:c[0])==null?void 0:r.children)??"").includes(e)}async function w(){if(!s.value){_.value=[];return}try{u.value=!0;const{data:e}=await f.get(`log/ago/${s.value}`);_.value=e}catch(e){console.log(e)}finally{u.value=!1}}return z(async()=>{try{const{data:e}=await f.get("log/list/customer");p.value=e}catch(e){console.log(e)}}),(e,n)=>{const c=o("a-select-option"),r=o("a-select"),k=o("a-form-item"),C=o("a-form"),j=o("a-table"),B=o("a-card"),I=o("a-spin");return d(),v(I,{spinning:u.value},{default:t(()=>[l(B,{title:"آمار",class:"page-card table-scroll"},{default:t(()=>[l(C,{layout:"vertical"},{default:t(()=>[F("div",L,[l(k,{label:"مشتری"},{default:t(()=>[l(r,{value:s.value,"onUpdate:value":n[0]||(n[0]=a=>s.value=a),"show-search":"","allow-clear":"",placeholder:"انتخاب کنید","filter-option":b,onChange:w},{default:t(()=>[(d(!0),g(x,null,T(p.value,a=>(d(),v(c,{key:a.id,value:a.id},{default:t(()=>[y(m(a.name)+" - "+m(a.mobile),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1})])]),_:1}),l(j,{"data-source":_.value,columns:h,pagination:{pageSize:20},size:"small","row-key":"id"},{bodyCell:t(({column:a,record:N})=>[a.dataIndex==="caj"?(d(),g(x,{key:0},[y(m(D(V)(N.caj)),1)],64)):E("",!0)]),_:1},8,["data-source"])]),_:1})]),_:1},8,["spinning"])}}});export{q as default}; diff --git a/apps/admin-panel/dist/assets/index-CKg-8s_Z.js b/apps/admin-panel/dist/assets/index-DjZc5EYL.js similarity index 99% rename from apps/admin-panel/dist/assets/index-CKg-8s_Z.js rename to apps/admin-panel/dist/assets/index-DjZc5EYL.js index 663e051..bece98c 100644 --- a/apps/admin-panel/dist/assets/index-CKg-8s_Z.js +++ b/apps/admin-panel/dist/assets/index-DjZc5EYL.js @@ -1,4 +1,4 @@ -import{a4 as yo,a5 as Mo}from"./index-CJij4X3l.js";function Do(n){throw new Error('Could not dynamically require "'+n+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var as={exports:{}};(function(n,o){(function(u,l){n.exports=l()})(yo,function(){var u;function l(){return u.apply(null,arguments)}function h(e){u=e}function _(e){return e instanceof Array||Object.prototype.toString.call(e)==="[object Array]"}function p(e){return e!=null&&Object.prototype.toString.call(e)==="[object Object]"}function c(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function T(e){if(Object.getOwnPropertyNames)return Object.getOwnPropertyNames(e).length===0;var t;for(t in e)if(c(e,t))return!1;return!0}function F(e){return e===void 0}function C(e){return typeof e=="number"||Object.prototype.toString.call(e)==="[object Number]"}function I(e){return e instanceof Date||Object.prototype.toString.call(e)==="[object Date]"}function me(e,t){var r=[],s,a=e.length;for(s=0;s>>0,s;for(s=0;s0)for(r=0;r>>0,s;for(s=0;s0)for(r=0;r=0;return(i?r?"+":"":"-")+Math.pow(10,Math.max(0,a)).toString().substr(1)+s}var pt=/(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|N{1,5}|YYYYYY|YYYYY|YYYY|YY|y{2,4}|yo?|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g,Ve=/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,Yt={},pe={};function M(e,t,r,s){var a=s;typeof s=="string"&&(a=function(){return this[s]()}),e&&(pe[e]=a),t&&(pe[t[0]]=function(){return B(a.apply(this,arguments),t[1],t[2])}),r&&(pe[r]=function(){return this.localeData().ordinal(a.apply(this,arguments),e)})}function ps(e){return e.match(/\[[\s\S]/)?e.replace(/^\[|\]$/g,""):e.replace(/\\/g,"")}function Ys(e){var t=e.match(pt),r,s;for(r=0,s=t.length;r=0&&Ve.test(e);)e=e.replace(Ve,s),Ve.lastIndex=0,r-=1;return e}var ws={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"};function gs(e){var t=this._longDateFormat[e],r=this._longDateFormat[e.toUpperCase()];return t||!r?t:(this._longDateFormat[e]=r.match(pt).map(function(s){return s==="MMMM"||s==="MM"||s==="DD"||s==="dddd"?s.slice(1):s}).join(""),this._longDateFormat[e])}var ks="Invalid date";function Ss(){return this._invalidDate}var vs="%d",Os=/\d{1,2}/;function Ts(e){return this._ordinal.replace("%d",e)}var js={future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",w:"a week",ww:"%d weeks",M:"a month",MM:"%d months",y:"a year",yy:"%d years"};function bs(e,t,r,s){var a=this._relativeTime[r];return q(a)?a(e,t,r,s):a.replace(/%d/i,e)}function xs(e,t){var r=this._relativeTime[e>0?"future":"past"];return q(r)?r(t):r.replace(/%s/i,t)}var ar={D:"date",dates:"date",date:"date",d:"day",days:"day",day:"day",e:"weekday",weekdays:"weekday",weekday:"weekday",E:"isoWeekday",isoweekdays:"isoWeekday",isoweekday:"isoWeekday",DDD:"dayOfYear",dayofyears:"dayOfYear",dayofyear:"dayOfYear",h:"hour",hours:"hour",hour:"hour",ms:"millisecond",milliseconds:"millisecond",millisecond:"millisecond",m:"minute",minutes:"minute",minute:"minute",M:"month",months:"month",month:"month",Q:"quarter",quarters:"quarter",quarter:"quarter",s:"second",seconds:"second",second:"second",gg:"weekYear",weekyears:"weekYear",weekyear:"weekYear",GG:"isoWeekYear",isoweekyears:"isoWeekYear",isoweekyear:"isoWeekYear",w:"week",weeks:"week",week:"week",W:"isoWeek",isoweeks:"isoWeek",isoweek:"isoWeek",y:"year",years:"year",year:"year"};function V(e){return typeof e=="string"?ar[e]||ar[e.toLowerCase()]:void 0}function wt(e){var t={},r,s;for(s in e)c(e,s)&&(r=V(s),r&&(t[r]=e[s]));return t}var Ps={date:9,day:11,weekday:11,isoWeekday:11,dayOfYear:4,hour:13,millisecond:16,minute:14,month:8,quarter:7,second:15,weekYear:1,isoWeekYear:1,week:5,isoWeek:5,year:1};function Ls(e){var t=[],r;for(r in e)c(e,r)&&t.push({unit:r,priority:Ps[r]});return t.sort(function(s,a){return s.priority-a.priority}),t}var nr=/\d/,H=/\d\d/,ir=/\d{3}/,gt=/\d{4}/,ze=/[+-]?\d{6}/,j=/\d\d?/,or=/\d\d\d\d?/,lr=/\d\d\d\d\d\d?/,Ze=/\d{1,3}/,kt=/\d{1,4}/,$e=/[+-]?\d{1,6}/,Ye=/\d+/,Je=/[+-]?\d+/,Ns=/Z|[+-]\d\d:?\d\d/gi,qe=/Z|[+-]\d\d(?::?\d\d)?/gi,Fs=/[+-]?\d+(\.\d{1,3})?/,be=/[0-9]{0,256}['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFF07\uFF10-\uFFEF]{1,256}|[\u0600-\u06FF\/]{1,256}(\s*?[\u0600-\u06FF]{1,256}){1,2}/i,we=/^[1-9]\d?/,St=/^([1-9]\d|\d)/,Be;Be={};function y(e,t,r){Be[e]=q(t)?t:function(s,a){return s&&r?r:t}}function Ws(e,t){return c(Be,e)?Be[e](t._strict,t._locale):new RegExp(Rs(e))}function Rs(e){return K(e.replace("\\","").replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,function(t,r,s,a,i){return r||s||a||i}))}function K(e){return e.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}function G(e){return e<0?Math.ceil(e)||0:Math.floor(e)}function g(e){var t=+e,r=0;return t!==0&&isFinite(t)&&(r=G(t)),r}var vt={};function O(e,t){var r,s=t,a;for(typeof e=="string"&&(e=[e]),C(t)&&(s=function(i,d){d[t]=g(i)}),a=e.length,r=0;r68?1900:2e3)};var ur=ge("FullYear",!0);function Hs(){return Qe(this.year())}function ge(e,t){return function(r){return r!=null?(dr(this,e,r),l.updateOffset(this,t),this):Le(this,e)}}function Le(e,t){if(!e.isValid())return NaN;var r=e._d,s=e._isUTC;switch(t){case"Milliseconds":return s?r.getUTCMilliseconds():r.getMilliseconds();case"Seconds":return s?r.getUTCSeconds():r.getSeconds();case"Minutes":return s?r.getUTCMinutes():r.getMinutes();case"Hours":return s?r.getUTCHours():r.getHours();case"Date":return s?r.getUTCDate():r.getDate();case"Day":return s?r.getUTCDay():r.getDay();case"Month":return s?r.getUTCMonth():r.getMonth();case"FullYear":return s?r.getUTCFullYear():r.getFullYear();default:return NaN}}function dr(e,t,r){var s,a,i,d,m;if(!(!e.isValid()||isNaN(r))){switch(s=e._d,a=e._isUTC,t){case"Milliseconds":return void(a?s.setUTCMilliseconds(r):s.setMilliseconds(r));case"Seconds":return void(a?s.setUTCSeconds(r):s.setSeconds(r));case"Minutes":return void(a?s.setUTCMinutes(r):s.setMinutes(r));case"Hours":return void(a?s.setUTCHours(r):s.setHours(r));case"Date":return void(a?s.setUTCDate(r):s.setDate(r));case"FullYear":break;default:return}i=r,d=e.month(),m=e.date(),m=m===29&&d===1&&!Qe(i)?28:m,a?s.setUTCFullYear(i,d,m):s.setFullYear(i,d,m)}}function As(e){return e=V(e),q(this[e])?this[e]():this}function Es(e,t){if(typeof e=="object"){e=wt(e);var r=Ls(e),s,a=r.length;for(s=0;s=0?(m=new Date(e+400,t,r,s,a,i,d),isFinite(m.getFullYear())&&m.setFullYear(e)):m=new Date(e,t,r,s,a,i,d),m}function Ne(e){var t,r;return e<100&&e>=0?(r=Array.prototype.slice.call(arguments),r[0]=e+400,t=new Date(Date.UTC.apply(null,r)),isFinite(t.getUTCFullYear())&&t.setUTCFullYear(e)):t=new Date(Date.UTC.apply(null,arguments)),t}function Xe(e,t,r){var s=7+t-r,a=(7+Ne(e,0,s).getUTCDay()-t)%7;return-a+s-1}function yr(e,t,r,s,a){var i=(7+r-s)%7,d=Xe(e,s,a),m=1+7*(t-1)+i+d,D,k;return m<=0?(D=e-1,k=Pe(D)+m):m>Pe(e)?(D=e+1,k=m-Pe(e)):(D=e,k=m),{year:D,dayOfYear:k}}function Fe(e,t,r){var s=Xe(e.year(),t,r),a=Math.floor((e.dayOfYear()-s-1)/7)+1,i,d;return a<1?(d=e.year()-1,i=a+re(d,t,r)):a>re(e.year(),t,r)?(i=a-re(e.year(),t,r),d=e.year()+1):(d=e.year(),i=a),{week:i,year:d}}function re(e,t,r){var s=Xe(e,t,r),a=Xe(e+1,t,r);return(Pe(e)-s+a)/7}M("w",["ww",2],"wo","week"),M("W",["WW",2],"Wo","isoWeek"),y("w",j,we),y("ww",j,H),y("W",j,we),y("WW",j,H),xe(["w","ww","W","WW"],function(e,t,r,s){t[s.substr(0,1)]=g(e)});function ta(e){return Fe(e,this._week.dow,this._week.doy).week}var ra={dow:0,doy:6};function sa(){return this._week.dow}function aa(){return this._week.doy}function na(e){var t=this.localeData().week(this);return e==null?t:this.add((e-t)*7,"d")}function ia(e){var t=Fe(this,1,4).week;return e==null?t:this.add((e-t)*7,"d")}M("d",0,"do","day"),M("dd",0,0,function(e){return this.localeData().weekdaysMin(this,e)}),M("ddd",0,0,function(e){return this.localeData().weekdaysShort(this,e)}),M("dddd",0,0,function(e){return this.localeData().weekdays(this,e)}),M("e",0,0,"weekday"),M("E",0,0,"isoWeekday"),y("d",j),y("e",j),y("E",j),y("dd",function(e,t){return t.weekdaysMinRegex(e)}),y("ddd",function(e,t){return t.weekdaysShortRegex(e)}),y("dddd",function(e,t){return t.weekdaysRegex(e)}),xe(["dd","ddd","dddd"],function(e,t,r,s){var a=r._locale.weekdaysParse(e,s,r._strict);a!=null?t.d=a:w(r).invalidWeekday=e}),xe(["d","e","E"],function(e,t,r,s){t[s]=g(e)});function oa(e,t){return typeof e!="string"?e:isNaN(e)?(e=t.weekdaysParse(e),typeof e=="number"?e:null):parseInt(e,10)}function la(e,t){return typeof e=="string"?t.weekdaysParse(e)%7||7:isNaN(e)?null:e}function Tt(e,t){return e.slice(t,7).concat(e.slice(0,t))}var ua="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),Mr="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),da="Su_Mo_Tu_We_Th_Fr_Sa".split("_"),fa=be,ha=be,ca=be;function _a(e,t){var r=_(this._weekdays)?this._weekdays:this._weekdays[e&&e!==!0&&this._weekdays.isFormat.test(t)?"format":"standalone"];return e===!0?Tt(r,this._week.dow):e?r[e.day()]:r}function ma(e){return e===!0?Tt(this._weekdaysShort,this._week.dow):e?this._weekdaysShort[e.day()]:this._weekdaysShort}function ya(e){return e===!0?Tt(this._weekdaysMin,this._week.dow):e?this._weekdaysMin[e.day()]:this._weekdaysMin}function Ma(e,t,r){var s,a,i,d=e.toLocaleLowerCase();if(!this._weekdaysParse)for(this._weekdaysParse=[],this._shortWeekdaysParse=[],this._minWeekdaysParse=[],s=0;s<7;++s)i=J([2e3,1]).day(s),this._minWeekdaysParse[s]=this.weekdaysMin(i,"").toLocaleLowerCase(),this._shortWeekdaysParse[s]=this.weekdaysShort(i,"").toLocaleLowerCase(),this._weekdaysParse[s]=this.weekdays(i,"").toLocaleLowerCase();return r?t==="dddd"?(a=N.call(this._weekdaysParse,d),a!==-1?a:null):t==="ddd"?(a=N.call(this._shortWeekdaysParse,d),a!==-1?a:null):(a=N.call(this._minWeekdaysParse,d),a!==-1?a:null):t==="dddd"?(a=N.call(this._weekdaysParse,d),a!==-1||(a=N.call(this._shortWeekdaysParse,d),a!==-1)?a:(a=N.call(this._minWeekdaysParse,d),a!==-1?a:null)):t==="ddd"?(a=N.call(this._shortWeekdaysParse,d),a!==-1||(a=N.call(this._weekdaysParse,d),a!==-1)?a:(a=N.call(this._minWeekdaysParse,d),a!==-1?a:null)):(a=N.call(this._minWeekdaysParse,d),a!==-1||(a=N.call(this._weekdaysParse,d),a!==-1)?a:(a=N.call(this._shortWeekdaysParse,d),a!==-1?a:null))}function Da(e,t,r){var s,a,i;if(this._weekdaysParseExact)return Ma.call(this,e,t,r);for(this._weekdaysParse||(this._weekdaysParse=[],this._minWeekdaysParse=[],this._shortWeekdaysParse=[],this._fullWeekdaysParse=[]),s=0;s<7;s++){if(a=J([2e3,1]).day(s),r&&!this._fullWeekdaysParse[s]&&(this._fullWeekdaysParse[s]=new RegExp("^"+this.weekdays(a,"").replace(".","\\.?")+"$","i"),this._shortWeekdaysParse[s]=new RegExp("^"+this.weekdaysShort(a,"").replace(".","\\.?")+"$","i"),this._minWeekdaysParse[s]=new RegExp("^"+this.weekdaysMin(a,"").replace(".","\\.?")+"$","i")),this._weekdaysParse[s]||(i="^"+this.weekdays(a,"")+"|^"+this.weekdaysShort(a,"")+"|^"+this.weekdaysMin(a,""),this._weekdaysParse[s]=new RegExp(i.replace(".",""),"i")),r&&t==="dddd"&&this._fullWeekdaysParse[s].test(e))return s;if(r&&t==="ddd"&&this._shortWeekdaysParse[s].test(e))return s;if(r&&t==="dd"&&this._minWeekdaysParse[s].test(e))return s;if(!r&&this._weekdaysParse[s].test(e))return s}}function pa(e){if(!this.isValid())return e!=null?this:NaN;var t=Le(this,"Day");return e!=null?(e=oa(e,this.localeData()),this.add(e-t,"d")):t}function Ya(e){if(!this.isValid())return e!=null?this:NaN;var t=(this.day()+7-this.localeData()._week.dow)%7;return e==null?t:this.add(e-t,"d")}function wa(e){if(!this.isValid())return e!=null?this:NaN;if(e!=null){var t=la(e,this.localeData());return this.day(this.day()%7?t:t-7)}else return this.day()||7}function ga(e){return this._weekdaysParseExact?(c(this,"_weekdaysRegex")||jt.call(this),e?this._weekdaysStrictRegex:this._weekdaysRegex):(c(this,"_weekdaysRegex")||(this._weekdaysRegex=fa),this._weekdaysStrictRegex&&e?this._weekdaysStrictRegex:this._weekdaysRegex)}function ka(e){return this._weekdaysParseExact?(c(this,"_weekdaysRegex")||jt.call(this),e?this._weekdaysShortStrictRegex:this._weekdaysShortRegex):(c(this,"_weekdaysShortRegex")||(this._weekdaysShortRegex=ha),this._weekdaysShortStrictRegex&&e?this._weekdaysShortStrictRegex:this._weekdaysShortRegex)}function Sa(e){return this._weekdaysParseExact?(c(this,"_weekdaysRegex")||jt.call(this),e?this._weekdaysMinStrictRegex:this._weekdaysMinRegex):(c(this,"_weekdaysMinRegex")||(this._weekdaysMinRegex=ca),this._weekdaysMinStrictRegex&&e?this._weekdaysMinStrictRegex:this._weekdaysMinRegex)}function jt(){function e(U,oe){return oe.length-U.length}var t=[],r=[],s=[],a=[],i,d,m,D,k;for(i=0;i<7;i++)d=J([2e3,1]).day(i),m=K(this.weekdaysMin(d,"")),D=K(this.weekdaysShort(d,"")),k=K(this.weekdays(d,"")),t.push(m),r.push(D),s.push(k),a.push(m),a.push(D),a.push(k);t.sort(e),r.sort(e),s.sort(e),a.sort(e),this._weekdaysRegex=new RegExp("^("+a.join("|")+")","i"),this._weekdaysShortRegex=this._weekdaysRegex,this._weekdaysMinRegex=this._weekdaysRegex,this._weekdaysStrictRegex=new RegExp("^("+s.join("|")+")","i"),this._weekdaysShortStrictRegex=new RegExp("^("+r.join("|")+")","i"),this._weekdaysMinStrictRegex=new RegExp("^("+t.join("|")+")","i")}function bt(){return this.hours()%12||12}function va(){return this.hours()||24}M("H",["HH",2],0,"hour"),M("h",["hh",2],0,bt),M("k",["kk",2],0,va),M("hmm",0,0,function(){return""+bt.apply(this)+B(this.minutes(),2)}),M("hmmss",0,0,function(){return""+bt.apply(this)+B(this.minutes(),2)+B(this.seconds(),2)}),M("Hmm",0,0,function(){return""+this.hours()+B(this.minutes(),2)}),M("Hmmss",0,0,function(){return""+this.hours()+B(this.minutes(),2)+B(this.seconds(),2)});function Dr(e,t){M(e,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),t)})}Dr("a",!0),Dr("A",!1);function pr(e,t){return t._meridiemParse}y("a",pr),y("A",pr),y("H",j,St),y("h",j,we),y("k",j,we),y("HH",j,H),y("hh",j,H),y("kk",j,H),y("hmm",or),y("hmmss",lr),y("Hmm",or),y("Hmmss",lr),O(["H","HH"],W),O(["k","kk"],function(e,t,r){var s=g(e);t[W]=s===24?0:s}),O(["a","A"],function(e,t,r){r._isPm=r._locale.isPM(e),r._meridiem=e}),O(["h","hh"],function(e,t,r){t[W]=g(e),w(r).bigHour=!0}),O("hmm",function(e,t,r){var s=e.length-2;t[W]=g(e.substr(0,s)),t[Z]=g(e.substr(s)),w(r).bigHour=!0}),O("hmmss",function(e,t,r){var s=e.length-4,a=e.length-2;t[W]=g(e.substr(0,s)),t[Z]=g(e.substr(s,2)),t[te]=g(e.substr(a)),w(r).bigHour=!0}),O("Hmm",function(e,t,r){var s=e.length-2;t[W]=g(e.substr(0,s)),t[Z]=g(e.substr(s))}),O("Hmmss",function(e,t,r){var s=e.length-4,a=e.length-2;t[W]=g(e.substr(0,s)),t[Z]=g(e.substr(s,2)),t[te]=g(e.substr(a))});function Oa(e){return(e+"").toLowerCase().charAt(0)==="p"}var Ta=/[ap]\.?m?\.?/i,ja=ge("Hours",!0);function ba(e,t,r){return e>11?r?"pm":"PM":r?"am":"AM"}var Yr={calendar:Ms,longDateFormat:ws,invalidDate:ks,ordinal:vs,dayOfMonthOrdinalParse:Os,relativeTime:js,months:Gs,monthsShort:fr,week:ra,weekdays:ua,weekdaysMin:da,weekdaysShort:Mr,meridiemParse:Ta},P={},We={},Re;function xa(e,t){var r,s=Math.min(e.length,t.length);for(r=0;r0;){if(a=Ke(i.slice(0,r).join("-")),a)return a;if(s&&s.length>=r&&xa(i,s)>=r-1)break;r--}t++}return Re}function La(e){return!!(e&&e.match("^[^/\\\\]*$"))}function Ke(e){var t=null,r;if(P[e]===void 0&&n&&n.exports&&La(e))try{t=Re._abbr,r=Do,r("./locale/"+e),de(t)}catch{P[e]=null}return P[e]}function de(e,t){var r;return e&&(F(t)?r=se(e):r=xt(e,t),r?Re=r:typeof console<"u"&&console.warn&&console.warn("Locale "+e+" not found. Did you forget to load it?")),Re._abbr}function xt(e,t){if(t!==null){var r,s=Yr;if(t.abbr=e,P[e]!=null)rr("defineLocaleOverride","use moment.updateLocale(localeName, config) to change an existing locale. moment.defineLocale(localeName, config) should only be used for creating a new locale See http://momentjs.com/guides/#/warnings/define-locale/ for more info."),s=P[e]._config;else if(t.parentLocale!=null)if(P[t.parentLocale]!=null)s=P[t.parentLocale]._config;else if(r=Ke(t.parentLocale),r!=null)s=r._config;else return We[t.parentLocale]||(We[t.parentLocale]=[]),We[t.parentLocale].push({name:e,config:t}),null;return P[e]=new Mt(yt(s,t)),We[e]&&We[e].forEach(function(a){xt(a.name,a.config)}),de(e),P[e]}else return delete P[e],null}function Na(e,t){if(t!=null){var r,s,a=Yr;P[e]!=null&&P[e].parentLocale!=null?P[e].set(yt(P[e]._config,t)):(s=Ke(e),s!=null&&(a=s._config),t=yt(a,t),s==null&&(t.abbr=e),r=new Mt(t),r.parentLocale=P[e],P[e]=r),de(e)}else P[e]!=null&&(P[e].parentLocale!=null?(P[e]=P[e].parentLocale,e===de()&&de(e)):P[e]!=null&&delete P[e]);return P[e]}function se(e){var t;if(e&&e._locale&&e._locale._abbr&&(e=e._locale._abbr),!e)return Re;if(!_(e)){if(t=Ke(e),t)return t;e=[e]}return Pa(e)}function Fa(){return Dt(P)}function Pt(e){var t,r=e._a;return r&&w(e).overflow===-2&&(t=r[ee]<0||r[ee]>11?ee:r[Q]<1||r[Q]>Ot(r[R],r[ee])?Q:r[W]<0||r[W]>24||r[W]===24&&(r[Z]!==0||r[te]!==0||r[ye]!==0)?W:r[Z]<0||r[Z]>59?Z:r[te]<0||r[te]>59?te:r[ye]<0||r[ye]>999?ye:-1,w(e)._overflowDayOfYear&&(tQ)&&(t=Q),w(e)._overflowWeeks&&t===-1&&(t=Us),w(e)._overflowWeekday&&t===-1&&(t=Is),w(e).overflow=t),e}var Wa=/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/,Ra=/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d|))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/,Ca=/Z|[+-]\d\d(?::?\d\d)?/,et=[["YYYYYY-MM-DD",/[+-]\d{6}-\d\d-\d\d/],["YYYY-MM-DD",/\d{4}-\d\d-\d\d/],["GGGG-[W]WW-E",/\d{4}-W\d\d-\d/],["GGGG-[W]WW",/\d{4}-W\d\d/,!1],["YYYY-DDD",/\d{4}-\d{3}/],["YYYY-MM",/\d{4}-\d\d/,!1],["YYYYYYMMDD",/[+-]\d{10}/],["YYYYMMDD",/\d{8}/],["GGGG[W]WWE",/\d{4}W\d{3}/],["GGGG[W]WW",/\d{4}W\d{2}/,!1],["YYYYDDD",/\d{7}/],["YYYYMM",/\d{6}/,!1],["YYYY",/\d{4}/,!1]],Lt=[["HH:mm:ss.SSSS",/\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss,SSSS",/\d\d:\d\d:\d\d,\d+/],["HH:mm:ss",/\d\d:\d\d:\d\d/],["HH:mm",/\d\d:\d\d/],["HHmmss.SSSS",/\d\d\d\d\d\d\.\d+/],["HHmmss,SSSS",/\d\d\d\d\d\d,\d+/],["HHmmss",/\d\d\d\d\d\d/],["HHmm",/\d\d\d\d/],["HH",/\d\d/]],Ua=/^\/?Date\((-?\d+)/i,Ia=/^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|([+-]\d{4}))$/,Ha={UT:0,GMT:0,EDT:-4*60,EST:-5*60,CDT:-5*60,CST:-6*60,MDT:-6*60,MST:-7*60,PDT:-7*60,PST:-8*60};function gr(e){var t,r,s=e._i,a=Wa.exec(s)||Ra.exec(s),i,d,m,D,k=et.length,U=Lt.length;if(a){for(w(e).iso=!0,t=0,r=k;tPe(d)||e._dayOfYear===0)&&(w(e)._overflowDayOfYear=!0),r=Ne(d,0,e._dayOfYear),e._a[ee]=r.getUTCMonth(),e._a[Q]=r.getUTCDate()),t=0;t<3&&e._a[t]==null;++t)e._a[t]=s[t]=a[t];for(;t<7;t++)e._a[t]=s[t]=e._a[t]==null?t===2?1:0:e._a[t];e._a[W]===24&&e._a[Z]===0&&e._a[te]===0&&e._a[ye]===0&&(e._nextDay=!0,e._a[W]=0),e._d=(e._useUTC?Ne:ea).apply(null,s),i=e._useUTC?e._d.getUTCDay():e._d.getDay(),e._tzm!=null&&e._d.setUTCMinutes(e._d.getUTCMinutes()-e._tzm),e._nextDay&&(e._a[W]=24),e._w&&typeof e._w.d<"u"&&e._w.d!==i&&(w(e).weekdayMismatch=!0)}}function Ja(e){var t,r,s,a,i,d,m,D,k;t=e._w,t.GG!=null||t.W!=null||t.E!=null?(i=1,d=4,r=ke(t.GG,e._a[R],Fe(b(),1,4).year),s=ke(t.W,1),a=ke(t.E,1),(a<1||a>7)&&(D=!0)):(i=e._locale._week.dow,d=e._locale._week.doy,k=Fe(b(),i,d),r=ke(t.gg,e._a[R],k.year),s=ke(t.w,k.week),t.d!=null?(a=t.d,(a<0||a>6)&&(D=!0)):t.e!=null?(a=t.e+i,(t.e<0||t.e>6)&&(D=!0)):a=i),s<1||s>re(r,i,d)?w(e)._overflowWeeks=!0:D!=null?w(e)._overflowWeekday=!0:(m=yr(r,s,a,i,d),e._a[R]=m.year,e._dayOfYear=m.dayOfYear)}l.ISO_8601=function(){},l.RFC_2822=function(){};function Ft(e){if(e._f===l.ISO_8601){gr(e);return}if(e._f===l.RFC_2822){kr(e);return}e._a=[],w(e).empty=!0;var t=""+e._i,r,s,a,i,d,m=t.length,D=0,k,U;for(a=sr(e._f,e._locale).match(pt)||[],U=a.length,r=0;r0&&w(e).unusedInput.push(d),t=t.slice(t.indexOf(s)+s.length),D+=s.length),pe[i]?(s?w(e).empty=!1:w(e).unusedTokens.push(i),Cs(i,s,e)):e._strict&&!s&&w(e).unusedTokens.push(i);w(e).charsLeftOver=m-D,t.length>0&&w(e).unusedInput.push(t),e._a[W]<=12&&w(e).bigHour===!0&&e._a[W]>0&&(w(e).bigHour=void 0),w(e).parsedDateParts=e._a.slice(0),w(e).meridiem=e._meridiem,e._a[W]=qa(e._locale,e._a[W],e._meridiem),k=w(e).era,k!==null&&(e._a[R]=e._locale.erasConvertYear(k,e._a[R])),Nt(e),Pt(e)}function qa(e,t,r){var s;return r==null?t:e.meridiemHour!=null?e.meridiemHour(t,r):(e.isPM!=null&&(s=e.isPM(r),s&&t<12&&(t+=12),!s&&t===12&&(t=0)),t)}function Ba(e){var t,r,s,a,i,d,m=!1,D=e._f.length;if(D===0){w(e).invalidFormat=!0,e._d=new Date(NaN);return}for(a=0;athis?this:e:Ee()});function Or(e,t){var r,s;if(t.length===1&&_(t[0])&&(t=t[0]),!t.length)return b();for(r=t[0],s=1;sthis.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()}function Dn(){if(!F(this._isDSTShifted))return this._isDSTShifted;var e={},t;return mt(e,this),e=Sr(e),e._a?(t=e._isUTC?J(e._a):b(e._a),this._isDSTShifted=this.isValid()&&un(e._a,t.toArray())>0):this._isDSTShifted=!1,this._isDSTShifted}function pn(){return this.isValid()?!this._isUTC:!1}function Yn(){return this.isValid()?this._isUTC:!1}function jr(){return this.isValid()?this._isUTC&&this._offset===0:!1}var wn=/^(-|\+)?(?:(\d*)[. ])?(\d+):(\d+)(?::(\d+)(\.\d*)?)?$/,gn=/^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/;function $(e,t){var r=e,s=null,a,i,d;return rt(e)?r={ms:e._milliseconds,d:e._days,M:e._months}:C(e)||!isNaN(+e)?(r={},t?r[t]=+e:r.milliseconds=+e):(s=wn.exec(e))?(a=s[1]==="-"?-1:1,r={y:0,d:g(s[Q])*a,h:g(s[W])*a,m:g(s[Z])*a,s:g(s[te])*a,ms:g(Wt(s[ye]*1e3))*a}):(s=gn.exec(e))?(a=s[1]==="-"?-1:1,r={y:Me(s[2],a),M:Me(s[3],a),w:Me(s[4],a),d:Me(s[5],a),h:Me(s[6],a),m:Me(s[7],a),s:Me(s[8],a)}):r==null?r={}:typeof r=="object"&&("from"in r||"to"in r)&&(d=kn(b(r.from),b(r.to)),r={},r.ms=d.milliseconds,r.M=d.months),i=new tt(r),rt(e)&&c(e,"_locale")&&(i._locale=e._locale),rt(e)&&c(e,"_isValid")&&(i._isValid=e._isValid),i}$.fn=tt.prototype,$.invalid=ln;function Me(e,t){var r=e&&parseFloat(e.replace(",","."));return(isNaN(r)?0:r)*t}function br(e,t){var r={};return r.months=t.month()-e.month()+(t.year()-e.year())*12,e.clone().add(r.months,"M").isAfter(t)&&--r.months,r.milliseconds=+t-+e.clone().add(r.months,"M"),r}function kn(e,t){var r;return e.isValid()&&t.isValid()?(t=Ct(t,e),e.isBefore(t)?r=br(e,t):(r=br(t,e),r.milliseconds=-r.milliseconds,r.months=-r.months),r):{milliseconds:0,months:0}}function xr(e,t){return function(r,s){var a,i;return s!==null&&!isNaN(+s)&&(rr(t,"moment()."+t+"(period, number) is deprecated. Please use moment()."+t+"(number, period). See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info."),i=r,r=s,s=i),a=$(r,s),Pr(this,a,e),this}}function Pr(e,t,r,s){var a=t._milliseconds,i=Wt(t._days),d=Wt(t._months);e.isValid()&&(s=s??!0,d&&cr(e,Le(e,"Month")+d*r),i&&dr(e,"Date",Le(e,"Date")+i*r),a&&e._d.setTime(e._d.valueOf()+a*r),s&&l.updateOffset(e,i||d))}var Sn=xr(1,"add"),vn=xr(-1,"subtract");function Lr(e){return typeof e=="string"||e instanceof String}function On(e){return z(e)||I(e)||Lr(e)||C(e)||jn(e)||Tn(e)||e===null||e===void 0}function Tn(e){var t=p(e)&&!T(e),r=!1,s=["years","year","y","months","month","M","days","day","d","dates","date","D","hours","hour","h","minutes","minute","m","seconds","second","s","milliseconds","millisecond","ms"],a,i,d=s.length;for(a=0;ar.valueOf():r.valueOf()9999?Ge(r,t?"YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYYYY-MM-DD[T]HH:mm:ss.SSSZ"):q(Date.prototype.toISOString)?t?this.toDate().toISOString():new Date(this.valueOf()+this.utcOffset()*60*1e3).toISOString().replace("Z",Ge(r,"Z")):Ge(r,t?"YYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYY-MM-DD[T]HH:mm:ss.SSSZ")}function En(){if(!this.isValid())return"moment.invalid(/* "+this._i+" */)";var e="moment",t="",r,s,a,i;return this.isLocal()||(e=this.utcOffset()===0?"moment.utc":"moment.parseZone",t="Z"),r="["+e+'("]',s=0<=this.year()&&this.year()<=9999?"YYYY":"YYYYYY",a="-MM-DD[T]HH:mm:ss.SSS",i=t+'[")]',this.format(r+s+a+i)}function Vn(e){e||(e=this.isUtc()?l.defaultFormatUtc:l.defaultFormat);var t=Ge(this,e);return this.localeData().postformat(t)}function Gn(e,t){return this.isValid()&&(z(e)&&e.isValid()||b(e).isValid())?$({to:this,from:e}).locale(this.locale()).humanize(!t):this.localeData().invalidDate()}function zn(e){return this.from(b(),e)}function Zn(e,t){return this.isValid()&&(z(e)&&e.isValid()||b(e).isValid())?$({from:this,to:e}).locale(this.locale()).humanize(!t):this.localeData().invalidDate()}function $n(e){return this.to(b(),e)}function Nr(e){var t;return e===void 0?this._locale._abbr:(t=se(e),t!=null&&(this._locale=t),this)}var Fr=E("moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.",function(e){return e===void 0?this.localeData():this.locale(e)});function Wr(){return this._locale}var at=1e3,Se=60*at,nt=60*Se,Rr=(365*400+97)*24*nt;function ve(e,t){return(e%t+t)%t}function Cr(e,t,r){return e<100&&e>=0?new Date(e+400,t,r)-Rr:new Date(e,t,r).valueOf()}function Ur(e,t,r){return e<100&&e>=0?Date.UTC(e+400,t,r)-Rr:Date.UTC(e,t,r)}function Jn(e){var t,r;if(e=V(e),e===void 0||e==="millisecond"||!this.isValid())return this;switch(r=this._isUTC?Ur:Cr,e){case"year":t=r(this.year(),0,1);break;case"quarter":t=r(this.year(),this.month()-this.month()%3,1);break;case"month":t=r(this.year(),this.month(),1);break;case"week":t=r(this.year(),this.month(),this.date()-this.weekday());break;case"isoWeek":t=r(this.year(),this.month(),this.date()-(this.isoWeekday()-1));break;case"day":case"date":t=r(this.year(),this.month(),this.date());break;case"hour":t=this._d.valueOf(),t-=ve(t+(this._isUTC?0:this.utcOffset()*Se),nt);break;case"minute":t=this._d.valueOf(),t-=ve(t,Se);break;case"second":t=this._d.valueOf(),t-=ve(t,at);break}return this._d.setTime(t),l.updateOffset(this,!0),this}function qn(e){var t,r;if(e=V(e),e===void 0||e==="millisecond"||!this.isValid())return this;switch(r=this._isUTC?Ur:Cr,e){case"year":t=r(this.year()+1,0,1)-1;break;case"quarter":t=r(this.year(),this.month()-this.month()%3+3,1)-1;break;case"month":t=r(this.year(),this.month()+1,1)-1;break;case"week":t=r(this.year(),this.month(),this.date()-this.weekday()+7)-1;break;case"isoWeek":t=r(this.year(),this.month(),this.date()-(this.isoWeekday()-1)+7)-1;break;case"day":case"date":t=r(this.year(),this.month(),this.date()+1)-1;break;case"hour":t=this._d.valueOf(),t+=nt-ve(t+(this._isUTC?0:this.utcOffset()*Se),nt)-1;break;case"minute":t=this._d.valueOf(),t+=Se-ve(t,Se)-1;break;case"second":t=this._d.valueOf(),t+=at-ve(t,at)-1;break}return this._d.setTime(t),l.updateOffset(this,!0),this}function Bn(){return this._d.valueOf()-(this._offset||0)*6e4}function Qn(){return Math.floor(this.valueOf()/1e3)}function Xn(){return new Date(this.valueOf())}function Kn(){var e=this;return[e.year(),e.month(),e.date(),e.hour(),e.minute(),e.second(),e.millisecond()]}function ei(){var e=this;return{years:e.year(),months:e.month(),date:e.date(),hours:e.hours(),minutes:e.minutes(),seconds:e.seconds(),milliseconds:e.milliseconds()}}function ti(){return this.isValid()?this.toISOString():null}function ri(){return ct(this)}function si(){return ue({},w(this))}function ai(){return w(this).overflow}function ni(){return{input:this._i,format:this._f,locale:this._locale,isUTC:this._isUTC,strict:this._strict}}M("N",0,0,"eraAbbr"),M("NN",0,0,"eraAbbr"),M("NNN",0,0,"eraAbbr"),M("NNNN",0,0,"eraName"),M("NNNNN",0,0,"eraNarrow"),M("y",["y",1],"yo","eraYear"),M("y",["yy",2],0,"eraYear"),M("y",["yyy",3],0,"eraYear"),M("y",["yyyy",4],0,"eraYear"),y("N",It),y("NN",It),y("NNN",It),y("NNNN",yi),y("NNNNN",Mi),O(["N","NN","NNN","NNNN","NNNNN"],function(e,t,r,s){var a=r._locale.erasParse(e,s,r._strict);a?w(r).era=a:w(r).invalidEra=e}),y("y",Ye),y("yy",Ye),y("yyy",Ye),y("yyyy",Ye),y("yo",Di),O(["y","yy","yyy","yyyy"],R),O(["yo"],function(e,t,r,s){var a;r._locale._eraYearOrdinalRegex&&(a=e.match(r._locale._eraYearOrdinalRegex)),r._locale.eraYearOrdinalParse?t[R]=r._locale.eraYearOrdinalParse(e,a):t[R]=parseInt(e,10)});function ii(e,t){var r,s,a,i=this._eras||se("en")._eras;for(r=0,s=i.length;r=0)return i[s]}function li(e,t){var r=e.since<=e.until?1:-1;return t===void 0?l(e.since).year():l(e.since).year()+(t-e.offset)*r}function ui(){var e,t,r,s=this.localeData().eras();for(e=0,t=s.length;ei&&(t=i),vi.call(this,e,t,r,s,a))}function vi(e,t,r,s,a){var i=yr(e,t,r,s,a),d=Ne(i.year,0,i.dayOfYear);return this.year(d.getUTCFullYear()),this.month(d.getUTCMonth()),this.date(d.getUTCDate()),this}M("Q",0,"Qo","quarter"),y("Q",nr),O("Q",function(e,t){t[ee]=(g(e)-1)*3});function Oi(e){return e==null?Math.ceil((this.month()+1)/3):this.month((e-1)*3+this.month()%3)}M("D",["DD",2],"Do","date"),y("D",j,we),y("DD",j,H),y("Do",function(e,t){return e?t._dayOfMonthOrdinalParse||t._ordinalParse:t._dayOfMonthOrdinalParseLenient}),O(["D","DD"],Q),O("Do",function(e,t){t[Q]=g(e.match(j)[0])});var Hr=ge("Date",!0);M("DDD",["DDDD",3],"DDDo","dayOfYear"),y("DDD",Ze),y("DDDD",ir),O(["DDD","DDDD"],function(e,t,r){r._dayOfYear=g(e)});function Ti(e){var t=Math.round((this.clone().startOf("day")-this.clone().startOf("year"))/864e5)+1;return e==null?t:this.add(e-t,"d")}M("m",["mm",2],0,"minute"),y("m",j,St),y("mm",j,H),O(["m","mm"],Z);var ji=ge("Minutes",!1);M("s",["ss",2],0,"second"),y("s",j,St),y("ss",j,H),O(["s","ss"],te);var bi=ge("Seconds",!1);M("S",0,0,function(){return~~(this.millisecond()/100)}),M(0,["SS",2],0,function(){return~~(this.millisecond()/10)}),M(0,["SSS",3],0,"millisecond"),M(0,["SSSS",4],0,function(){return this.millisecond()*10}),M(0,["SSSSS",5],0,function(){return this.millisecond()*100}),M(0,["SSSSSS",6],0,function(){return this.millisecond()*1e3}),M(0,["SSSSSSS",7],0,function(){return this.millisecond()*1e4}),M(0,["SSSSSSSS",8],0,function(){return this.millisecond()*1e5}),M(0,["SSSSSSSSS",9],0,function(){return this.millisecond()*1e6}),y("S",Ze,nr),y("SS",Ze,H),y("SSS",Ze,ir);var fe,Ar;for(fe="SSSS";fe.length<=9;fe+="S")y(fe,Ye);function xi(e,t){t[ye]=g(("0."+e)*1e3)}for(fe="S";fe.length<=9;fe+="S")O(fe,xi);Ar=ge("Milliseconds",!1),M("z",0,0,"zoneAbbr"),M("zz",0,0,"zoneName");function Pi(){return this._isUTC?"UTC":""}function Li(){return this._isUTC?"Coordinated Universal Time":""}var f=je.prototype;f.add=Sn,f.calendar=Pn,f.clone=Ln,f.diff=In,f.endOf=qn,f.format=Vn,f.from=Gn,f.fromNow=zn,f.to=Zn,f.toNow=$n,f.get=As,f.invalidAt=ai,f.isAfter=Nn,f.isBefore=Fn,f.isBetween=Wn,f.isSame=Rn,f.isSameOrAfter=Cn,f.isSameOrBefore=Un,f.isValid=ri,f.lang=Fr,f.locale=Nr,f.localeData=Wr,f.max=tn,f.min=en,f.parsingFlags=si,f.set=Es,f.startOf=Jn,f.subtract=vn,f.toArray=Kn,f.toObject=ei,f.toDate=Xn,f.toISOString=An,f.inspect=En,typeof Symbol<"u"&&Symbol.for!=null&&(f[Symbol.for("nodejs.util.inspect.custom")]=function(){return"Moment<"+this.format()+">"}),f.toJSON=ti,f.toString=Hn,f.unix=Qn,f.valueOf=Bn,f.creationData=ni,f.eraName=ui,f.eraNarrow=di,f.eraAbbr=fi,f.eraYear=hi,f.year=ur,f.isLeapYear=Hs,f.weekYear=pi,f.isoWeekYear=Yi,f.quarter=f.quarters=Oi,f.month=_r,f.daysInMonth=Qs,f.week=f.weeks=na,f.isoWeek=f.isoWeeks=ia,f.weeksInYear=ki,f.weeksInWeekYear=Si,f.isoWeeksInYear=wi,f.isoWeeksInISOWeekYear=gi,f.date=Hr,f.day=f.days=pa,f.weekday=Ya,f.isoWeekday=wa,f.dayOfYear=Ti,f.hour=f.hours=ja,f.minute=f.minutes=ji,f.second=f.seconds=bi,f.millisecond=f.milliseconds=Ar,f.utcOffset=fn,f.utc=cn,f.local=_n,f.parseZone=mn,f.hasAlignedHourOffset=yn,f.isDST=Mn,f.isLocal=pn,f.isUtcOffset=Yn,f.isUtc=jr,f.isUTC=jr,f.zoneAbbr=Pi,f.zoneName=Li,f.dates=E("dates accessor is deprecated. Use date instead.",Hr),f.months=E("months accessor is deprecated. Use month instead",_r),f.years=E("years accessor is deprecated. Use year instead",ur),f.zone=E("moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/",hn),f.isDSTShifted=E("isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information",Dn);function Ni(e){return b(e*1e3)}function Fi(){return b.apply(null,arguments).parseZone()}function Er(e){return e}var v=Mt.prototype;v.calendar=Ds,v.longDateFormat=gs,v.invalidDate=Ss,v.ordinal=Ts,v.preparse=Er,v.postformat=Er,v.relativeTime=bs,v.pastFuture=xs,v.set=ys,v.eras=ii,v.erasParse=oi,v.erasConvertYear=li,v.erasAbbrRegex=_i,v.erasNameRegex=ci,v.erasNarrowRegex=mi,v.months=$s,v.monthsShort=Js,v.monthsParse=Bs,v.monthsRegex=Ks,v.monthsShortRegex=Xs,v.week=ta,v.firstDayOfYear=aa,v.firstDayOfWeek=sa,v.weekdays=_a,v.weekdaysMin=ya,v.weekdaysShort=ma,v.weekdaysParse=Da,v.weekdaysRegex=ga,v.weekdaysShortRegex=ka,v.weekdaysMinRegex=Sa,v.isPM=Oa,v.meridiem=ba;function ot(e,t,r,s){var a=se(),i=J().set(s,t);return a[r](i,e)}function Vr(e,t,r){if(C(e)&&(t=e,e=void 0),e=e||"",t!=null)return ot(e,t,r,"month");var s,a=[];for(s=0;s<12;s++)a[s]=ot(e,s,r,"month");return a}function At(e,t,r,s){typeof e=="boolean"?(C(t)&&(r=t,t=void 0),t=t||""):(t=e,r=t,e=!1,C(t)&&(r=t,t=void 0),t=t||"");var a=se(),i=e?a._week.dow:0,d,m=[];if(r!=null)return ot(t,(r+i)%7,s,"day");for(d=0;d<7;d++)m[d]=ot(t,(d+i)%7,s,"day");return m}function Wi(e,t){return Vr(e,t,"months")}function Ri(e,t){return Vr(e,t,"monthsShort")}function Ci(e,t,r){return At(e,t,r,"weekdays")}function Ui(e,t,r){return At(e,t,r,"weekdaysShort")}function Ii(e,t,r){return At(e,t,r,"weekdaysMin")}de("en",{eras:[{since:"0001-01-01",until:1/0,offset:1,name:"Anno Domini",narrow:"AD",abbr:"AD"},{since:"0000-12-31",until:-1/0,offset:1,name:"Before Christ",narrow:"BC",abbr:"BC"}],dayOfMonthOrdinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(e){var t=e%10,r=g(e%100/10)===1?"th":t===1?"st":t===2?"nd":t===3?"rd":"th";return e+r}}),l.lang=E("moment.lang is deprecated. Use moment.locale instead.",de),l.langData=E("moment.langData is deprecated. Use moment.localeData instead.",se);var ae=Math.abs;function Hi(){var e=this._data;return this._milliseconds=ae(this._milliseconds),this._days=ae(this._days),this._months=ae(this._months),e.milliseconds=ae(e.milliseconds),e.seconds=ae(e.seconds),e.minutes=ae(e.minutes),e.hours=ae(e.hours),e.months=ae(e.months),e.years=ae(e.years),this}function Gr(e,t,r,s){var a=$(t,r);return e._milliseconds+=s*a._milliseconds,e._days+=s*a._days,e._months+=s*a._months,e._bubble()}function Ai(e,t){return Gr(this,e,t,1)}function Ei(e,t){return Gr(this,e,t,-1)}function zr(e){return e<0?Math.floor(e):Math.ceil(e)}function Vi(){var e=this._milliseconds,t=this._days,r=this._months,s=this._data,a,i,d,m,D;return e>=0&&t>=0&&r>=0||e<=0&&t<=0&&r<=0||(e+=zr(Et(r)+t)*864e5,t=0,r=0),s.milliseconds=e%1e3,a=G(e/1e3),s.seconds=a%60,i=G(a/60),s.minutes=i%60,d=G(i/60),s.hours=d%24,t+=G(d/24),D=G(Zr(t)),r+=D,t-=zr(Et(D)),m=G(r/12),r%=12,s.days=t,s.months=r,s.years=m,this}function Zr(e){return e*4800/146097}function Et(e){return e*146097/4800}function Gi(e){if(!this.isValid())return NaN;var t,r,s=this._milliseconds;if(e=V(e),e==="month"||e==="quarter"||e==="year")switch(t=this._days+s/864e5,r=this._months+Zr(t),e){case"month":return r;case"quarter":return r/3;case"year":return r/12}else switch(t=this._days+Math.round(Et(this._months)),e){case"week":return t/7+s/6048e5;case"day":return t+s/864e5;case"hour":return t*24+s/36e5;case"minute":return t*1440+s/6e4;case"second":return t*86400+s/1e3;case"millisecond":return Math.floor(t*864e5)+s;default:throw new Error("Unknown unit "+e)}}function ne(e){return function(){return this.as(e)}}var $r=ne("ms"),zi=ne("s"),Zi=ne("m"),$i=ne("h"),Ji=ne("d"),qi=ne("w"),Bi=ne("M"),Qi=ne("Q"),Xi=ne("y"),Ki=$r;function eo(){return $(this)}function to(e){return e=V(e),this.isValid()?this[e+"s"]():NaN}function De(e){return function(){return this.isValid()?this._data[e]:NaN}}var ro=De("milliseconds"),so=De("seconds"),ao=De("minutes"),no=De("hours"),io=De("days"),oo=De("months"),lo=De("years");function uo(){return G(this.days()/7)}var ie=Math.round,Oe={ss:44,s:45,m:45,h:22,d:26,w:null,M:11};function fo(e,t,r,s,a){return a.relativeTime(t||1,!!r,e,s)}function ho(e,t,r,s){var a=$(e).abs(),i=ie(a.as("s")),d=ie(a.as("m")),m=ie(a.as("h")),D=ie(a.as("d")),k=ie(a.as("M")),U=ie(a.as("w")),oe=ie(a.as("y")),he=i<=r.ss&&["s",i]||i0,he[4]=s,fo.apply(null,he)}function co(e){return e===void 0?ie:typeof e=="function"?(ie=e,!0):!1}function _o(e,t){return Oe[e]===void 0?!1:t===void 0?Oe[e]:(Oe[e]=t,e==="s"&&(Oe.ss=t-1),!0)}function mo(e,t){if(!this.isValid())return this.localeData().invalidDate();var r=!1,s=Oe,a,i;return typeof e=="object"&&(t=e,e=!1),typeof e=="boolean"&&(r=e),typeof t=="object"&&(s=Object.assign({},Oe,t),t.s!=null&&t.ss==null&&(s.ss=t.s-1)),a=this.localeData(),i=ho(this,!r,s,a),r&&(i=a.pastFuture(+this,i)),a.postformat(i)}var Vt=Math.abs;function Te(e){return(e>0)-(e<0)||+e}function lt(){if(!this.isValid())return this.localeData().invalidDate();var e=Vt(this._milliseconds)/1e3,t=Vt(this._days),r=Vt(this._months),s,a,i,d,m=this.asSeconds(),D,k,U,oe;return m?(s=G(e/60),a=G(s/60),e%=60,s%=60,i=G(r/12),r%=12,d=e?e.toFixed(3).replace(/\.?0+$/,""):"",D=m<0?"-":"",k=Te(this._months)!==Te(m)?"-":"",U=Te(this._days)!==Te(m)?"-":"",oe=Te(this._milliseconds)!==Te(m)?"-":"",D+"P"+(i?k+i+"Y":"")+(r?k+r+"M":"")+(t?U+t+"D":"")+(a||s||e?"T":"")+(a?oe+a+"H":"")+(s?oe+s+"M":"")+(e?oe+d+"S":"")):"P0D"}var S=tt.prototype;S.isValid=on,S.abs=Hi,S.add=Ai,S.subtract=Ei,S.as=Gi,S.asMilliseconds=$r,S.asSeconds=zi,S.asMinutes=Zi,S.asHours=$i,S.asDays=Ji,S.asWeeks=qi,S.asMonths=Bi,S.asQuarters=Qi,S.asYears=Xi,S.valueOf=Ki,S._bubble=Vi,S.clone=eo,S.get=to,S.milliseconds=ro,S.seconds=so,S.minutes=ao,S.hours=no,S.days=io,S.weeks=uo,S.months=oo,S.years=lo,S.humanize=mo,S.toISOString=lt,S.toString=lt,S.toJSON=lt,S.locale=Nr,S.localeData=Wr,S.toIsoString=E("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",lt),S.lang=Fr,M("X",0,0,"unix"),M("x",0,0,"valueOf"),y("x",Je),y("X",Fs),O("X",function(e,t,r){r._d=new Date(parseFloat(e)*1e3)}),O("x",function(e,t,r){r._d=new Date(g(e))});//! moment.js diff --git a/apps/admin-panel/dist/assets/list-BUpibcCs.js b/apps/admin-panel/dist/assets/list-BUpibcCs.js deleted file mode 100644 index 7f93e64..0000000 --- a/apps/admin-panel/dist/assets/list-BUpibcCs.js +++ /dev/null @@ -1 +0,0 @@ -import{a as X,b as t,X as M}from"./model-tqsMDjkK.js";import{_ as j}from"./ListPageHeader.vue_vue_type_script_setup_true_lang-D07Lc14a.js";import{_ as A}from"./addFinDoc.vue_vue_type_script_setup_true_lang-BXXIemK7.js";import{d as I,u as P,b as U,c as l,w as o,m as g,r as f,o as i,h as p,a as s,W as G,p as y,i as k,$ as H,E as J,G as L,f as b,y as W,J as T}from"./index-CJij4X3l.js";import{u as q}from"./useDeleteHandler-DuEp06Uq.js";import"./filters-BPYO-DKN.js";import"./index-CKg-8s_Z.js";import"./SettingOutlined-BJxMXy1I.js";import"./BaseFormModal.vue_vue_type_style_index_0_lang-YLHOAWTN.js";function z(){const e=new X("admin/documents/list","لیست اسناد");return e.add(new t("id","شماره سفارش").filterNumber()),e.add(new t("type_str","نوع سند").filterText()),e.add(new t("price","پول").filterDate().noSort()),e.add(new t("value","وزن نهایی (گرم)").filterDate().noSort()),e.add(new t("to","به").filterText().hidden()),e.add(new t("customer.name","نام و نام خانوادگی مشتری").filterText()),e.add(new t("note","توضیحات").filterText()),e.add(new t("ayar","عیار").filterNumber().noSort()),e.add(new t("lab","آزمایشگاه").filterText().noSort()),e.add(new t("recive_date","تاریخ دریافت").filterDate().noSort()),e.add(new t("account_name","نام حساب").filterText().hidden()),e.add(new t("bank_name","بانک").filterText().hidden()),e.add(new t("caj","تاریخ ثبت").filterDate().noSort()),e.add(new t("uaj","بروزرسانی").hidden().filterDate().noSort()),e.add(new t("confirmed","وضعیت تایید سند").renderSlot("confirmed").noSort().filterSelect({0:"تایید نشده",1:"تایید شده"})),e.add(new t("price_per_gram","مظنه").hidden().filterText().noSort()),e.add(new t("original_value","وزن طلای داده شده").hidden().filterText().noSort()),e.add(new t("ang","انگ").hidden().filterText().noSort()),e.add(new t("opt","عملیات").noSort().renderSlot("opt")),e}const F={id:"page-user-list"},ae=I({__name:"list",setup(e){const $=P(),_=a=>!!$.hasPermission(a),h=z(),x=g(null),S=g(!1),v=g(!1),w=g(void 0);function D(){w.value=void 0,v.value=!0}function B(a){w.value=a,v.value=!0}async function C(a){var n,m,u;try{S.value=!0,await W.post(`cash/confirem/${a.id}`),T.success("تغییرات با موفقیت ثبت شد"),(n=x.value)==null||n.fetch()}catch(d){console.log(d),T.error(((u=(m=d==null?void 0:d.response)==null?void 0:m.data)==null?void 0:u.message)??"خطا در ثبت تغییرات")}finally{S.value=!1}}const{remove:N}=q({onSuccess:()=>{var a;return(a=x.value)==null?void 0:a.fetch()},successMessage:"سند حذف شد",fallbackErrorMessage:"خطا در حذف سند"});function E(a){return N(`cash/${a.id}`)}return(a,n)=>{const m=f("a-tag"),u=f("a-popconfirm"),d=f("a-tooltip"),O=f("a-card"),V=f("a-spin");return i(),U("div",F,[l(V,{spinning:S.value},{default:o(()=>[l(O,{title:"لیست اسناد مالی",class:"page-card"},{default:o(()=>[l(M,{ref_key:"tbl",ref:x,model:p(h),"mobile-cards":""},{add:o(()=>[l(j,{rid:"document.create","add-label":"ثبت سند مالی",onAdd:D})]),confirmed:o(({text:r})=>[r===1?(i(),s(m,{key:0,color:"green"},{default:o(()=>[...n[2]||(n[2]=[b("تایید شده",-1)])]),_:1})):(i(),s(m,{key:1},{default:o(()=>[...n[3]||(n[3]=[b("تایید نشده",-1)])]),_:1}))]),opt:o(({record:r})=>[!r.confirmed&&_("document.list.confirm")?(i(),s(d,{key:0,title:"تایید سند"},{default:o(()=>[l(u,{placement:"top","ok-text":"بله","cancel-text":"خیر",onConfirm:c=>C(r)},{title:o(()=>[...n[4]||(n[4]=[y("p",null,"آیا سند تایید شود ؟",-1)])]),default:o(()=>[l(p(G),{class:"cursor-pointer mx-1 text-success"})]),_:1},8,["onConfirm"])]),_:2},1024)):k("",!0),r.confirmed&&_("document.list.deny")?(i(),s(d,{key:1,title:"رد کردن سند"},{default:o(()=>[l(u,{placement:"top","ok-text":"بله","cancel-text":"خیر",onConfirm:c=>C(r)},{title:o(()=>[...n[5]||(n[5]=[y("p",null,"آیا سند رد شود ؟",-1)])]),default:o(()=>[l(p(H),{class:"cursor-pointer mx-1 text-danger"})]),_:1},8,["onConfirm"])]),_:2},1024)):k("",!0),_("document.list.edit")?(i(),s(d,{key:2,title:"ویرایش"},{default:o(()=>[l(p(J),{class:"cursor-pointer mx-1 text-primary",onClick:c=>B(r.id)},null,8,["onClick"])]),_:2},1024)):k("",!0),_("document.list.remove")?(i(),s(d,{key:3,title:"حذف"},{default:o(()=>[l(u,{placement:"top","ok-text":"بله","cancel-text":"خیر",onConfirm:c=>E(r)},{title:o(()=>[...n[6]||(n[6]=[y("p",null,"آیا مطمئن به حذف سند مورد نظر هستید ؟",-1)])]),default:o(()=>[l(p(L),{class:"cursor-pointer mx-1 text-danger"})]),_:1},8,["onConfirm"])]),_:2},1024)):k("",!0)]),_:1},8,["model"]),(i(),s(A,{key:w.value??"new",open:v.value,id:w.value,"onUpdate:open":n[0]||(n[0]=r=>v.value=r),onSuccess:n[1]||(n[1]=r=>{var c;return(c=x.value)==null?void 0:c.fetch()})},null,8,["open","id"]))]),_:1})]),_:1},8,["spinning"])])}}});export{ae as default}; diff --git a/apps/admin-panel/dist/assets/list-C8ypErFY.js b/apps/admin-panel/dist/assets/list-C8ypErFY.js new file mode 100644 index 0000000..7468670 --- /dev/null +++ b/apps/admin-panel/dist/assets/list-C8ypErFY.js @@ -0,0 +1 @@ +import{a as X,b as t,X as M}from"./model-mwiDYd1J.js";import{_ as j}from"./ListPageHeader.vue_vue_type_script_setup_true_lang-YlEXklTr.js";import{_ as A}from"./addFinDoc.vue_vue_type_script_setup_true_lang-C7dUyRNk.js";import{d as I,u as P,b as U,c as l,w as o,m as g,r as f,o as d,h as p,a as s,W as G,p as y,i as k,a0 as H,E as J,G as L,f as b,y as W,J as T}from"./index-CpVArufm.js";import{u as q}from"./useDeleteHandler-K9FWNrnm.js";import"./filters-CoNJlguG.js";import"./index-DjZc5EYL.js";import"./SettingOutlined-E4OknxY2.js";import"./select--BgT6D7O.js";import"./BaseFormModal.vue_vue_type_style_index_0_lang-B4iVMhZt.js";function z(){const e=new X("admin/documents/list","لیست اسناد");return e.add(new t("id","شماره سفارش").filterNumber()),e.add(new t("type_str","نوع سند").filterText()),e.add(new t("price","پول").filterDate().noSort()),e.add(new t("value","وزن نهایی (گرم)").filterDate().noSort()),e.add(new t("to","به").filterText().hidden()),e.add(new t("customer.name","نام و نام خانوادگی مشتری").filterText()),e.add(new t("note","توضیحات").filterText()),e.add(new t("ayar","عیار").filterNumber().noSort()),e.add(new t("lab","آزمایشگاه").filterText().noSort()),e.add(new t("recive_date","تاریخ دریافت").filterDate().noSort()),e.add(new t("account_name","نام حساب").filterText().hidden()),e.add(new t("bank_name","بانک").filterText().hidden()),e.add(new t("caj","تاریخ ثبت").filterDate().noSort()),e.add(new t("uaj","بروزرسانی").hidden().filterDate().noSort()),e.add(new t("confirmed","وضعیت تایید سند").renderSlot("confirmed").noSort().filterSelect({0:"تایید نشده",1:"تایید شده"})),e.add(new t("price_per_gram","مظنه").hidden().filterText().noSort()),e.add(new t("original_value","وزن طلای داده شده").hidden().filterText().noSort()),e.add(new t("ang","انگ").hidden().filterText().noSort()),e.add(new t("opt","عملیات").noSort().renderSlot("opt")),e}const F={id:"page-user-list"},re=I({__name:"list",setup(e){const h=P(),_=a=>!!h.hasPermission(a),$=z(),x=g(null),S=g(!1),v=g(!1),w=g(void 0);function D(){w.value=void 0,v.value=!0}function B(a){w.value=a,v.value=!0}async function C(a){var n,m,u;try{S.value=!0,await W.post(`cash/confirem/${a.id}`),T.success("تغییرات با موفقیت ثبت شد"),(n=x.value)==null||n.fetch()}catch(i){console.log(i),T.error(((u=(m=i==null?void 0:i.response)==null?void 0:m.data)==null?void 0:u.message)??"خطا در ثبت تغییرات")}finally{S.value=!1}}const{remove:N}=q({onSuccess:()=>{var a;return(a=x.value)==null?void 0:a.fetch()},successMessage:"سند حذف شد",fallbackErrorMessage:"خطا در حذف سند"});function E(a){return N(`cash/${a.id}`)}return(a,n)=>{const m=f("a-tag"),u=f("a-popconfirm"),i=f("a-tooltip"),O=f("a-card"),V=f("a-spin");return d(),U("div",F,[l(V,{spinning:S.value},{default:o(()=>[l(O,{title:"لیست اسناد مالی",class:"page-card"},{default:o(()=>[l(M,{ref_key:"tbl",ref:x,model:p($),"mobile-cards":""},{add:o(()=>[l(j,{rid:"document.create","add-label":"ثبت سند مالی",onAdd:D})]),confirmed:o(({text:r})=>[r===1?(d(),s(m,{key:0,color:"green"},{default:o(()=>[...n[2]||(n[2]=[b("تایید شده",-1)])]),_:1})):(d(),s(m,{key:1},{default:o(()=>[...n[3]||(n[3]=[b("تایید نشده",-1)])]),_:1}))]),opt:o(({record:r})=>[!r.confirmed&&_("document.list.confirm")?(d(),s(i,{key:0,title:"تایید سند"},{default:o(()=>[l(u,{placement:"top","ok-text":"بله","cancel-text":"خیر",onConfirm:c=>C(r)},{title:o(()=>[...n[4]||(n[4]=[y("p",null,"آیا سند تایید شود ؟",-1)])]),default:o(()=>[l(p(G),{class:"cursor-pointer mx-1 text-success"})]),_:1},8,["onConfirm"])]),_:2},1024)):k("",!0),r.confirmed&&_("document.list.deny")?(d(),s(i,{key:1,title:"رد کردن سند"},{default:o(()=>[l(u,{placement:"top","ok-text":"بله","cancel-text":"خیر",onConfirm:c=>C(r)},{title:o(()=>[...n[5]||(n[5]=[y("p",null,"آیا سند رد شود ؟",-1)])]),default:o(()=>[l(p(H),{class:"cursor-pointer mx-1 text-danger"})]),_:1},8,["onConfirm"])]),_:2},1024)):k("",!0),_("document.list.edit")?(d(),s(i,{key:2,title:"ویرایش"},{default:o(()=>[l(p(J),{class:"cursor-pointer mx-1 text-primary",onClick:c=>B(r.id)},null,8,["onClick"])]),_:2},1024)):k("",!0),_("document.list.remove")?(d(),s(i,{key:3,title:"حذف"},{default:o(()=>[l(u,{placement:"top","ok-text":"بله","cancel-text":"خیر",onConfirm:c=>E(r)},{title:o(()=>[...n[6]||(n[6]=[y("p",null,"آیا مطمئن به حذف سند مورد نظر هستید ؟",-1)])]),default:o(()=>[l(p(L),{class:"cursor-pointer mx-1 text-danger"})]),_:1},8,["onConfirm"])]),_:2},1024)):k("",!0)]),_:1},8,["model"]),(d(),s(A,{key:w.value??"new",open:v.value,id:w.value,"onUpdate:open":n[0]||(n[0]=r=>v.value=r),onSuccess:n[1]||(n[1]=r=>{var c;return(c=x.value)==null?void 0:c.fetch()})},null,8,["open","id"]))]),_:1})]),_:1},8,["spinning"])])}}});export{re as default}; diff --git a/apps/admin-panel/dist/assets/model-BYVpc9QD.css b/apps/admin-panel/dist/assets/model-BYVpc9QD.css deleted file mode 100644 index b06b035..0000000 --- a/apps/admin-panel/dist/assets/model-BYVpc9QD.css +++ /dev/null @@ -1 +0,0 @@ -.x-table__toolbar[data-v-e767d7dc]{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.x-table__search-group[data-v-e767d7dc]{display:flex;align-items:center;gap:24px;flex-wrap:nowrap}.x-table__actions[data-v-e767d7dc]{display:flex;align-items:center;gap:8px;flex-wrap:nowrap}.x-table__action--active[data-v-e767d7dc]{color:#1677ff}.x-table__add[data-v-e767d7dc]{display:flex}.x-table__filters[data-v-e767d7dc]{background:#fafafa;border:1px solid #f0f0f0;border-radius:6px;padding:12px;margin-bottom:12px}.x-table__filter-row[data-v-e767d7dc]{display:flex;gap:8px;margin-bottom:8px;flex-wrap:wrap}.x-table__filter-actions[data-v-e767d7dc]{display:flex;gap:8px}.refresh-btn[data-v-e767d7dc]{transition:all .15s ease}.x-table__search[data-v-e767d7dc]{max-width:260px}.x-table__sort[data-v-e767d7dc]{width:150px}.x-table__cards[data-v-e767d7dc]{display:flex;flex-direction:column;gap:12px}.x-table__cards[data-v-e767d7dc] .ant-spin-container{display:flex;flex-direction:column;gap:10px;min-height:80px}.x-card[data-v-e767d7dc]{border:1px solid #eef0f3;border-radius:10px;background:#fff;overflow:hidden}.x-card__head[data-v-e767d7dc]{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px;background:#fafbfc;border-bottom:1px solid #eef0f3}.x-card__title[data-v-e767d7dc]{display:flex;align-items:center;gap:8px;min-width:0}.x-card__id[data-v-e767d7dc]{flex-shrink:0;font-size:11px;color:#8a909c;background:#eef0f3;border-radius:4px;padding:1px 6px;direction:ltr}.x-card__name[data-v-e767d7dc]{font-weight:600;color:#1c2d56;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.x-card__actions[data-v-e767d7dc]{flex-shrink:0;font-size:16px}.x-card--selected[data-v-e767d7dc]{border-color:#91caff}.x-card--selected .x-card__head[data-v-e767d7dc]{background:#f0f7ff}.x-card__media[data-v-e767d7dc]{flex-shrink:0;display:inline-flex}.x-card__media[data-v-e767d7dc] img{width:44px!important;height:44px!important;object-fit:cover!important;border-radius:6px}.x-table__select-all[data-v-e767d7dc]{font-size:12px;color:#8a909c}.x-card__body[data-v-e767d7dc]{margin:0;padding:4px 12px}.x-card__row[data-v-e767d7dc]{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:7px 0;font-size:13px}.x-card__row+.x-card__row[data-v-e767d7dc]{border-top:1px dashed #f0f0f0}.x-card__row dt[data-v-e767d7dc]{color:#8a909c;flex-shrink:0}.x-card__row dd[data-v-e767d7dc]{margin:0;color:#333;text-align:left;min-width:0;word-break:break-word}.x-card__row dd[data-v-e767d7dc] .ant-tag{margin:0}.x-table__card-pager[data-v-e767d7dc]{display:flex;align-items:center;justify-content:space-between;gap:8px}.x-table__card-total[data-v-e767d7dc]{font-size:12px;color:#8a909c}@media (max-width: 575px){.x-table__toolbar[data-v-e767d7dc]{flex-wrap:wrap;gap:8px;margin-bottom:10px}.x-table__search-group[data-v-e767d7dc]{display:contents}.x-table__search[data-v-e767d7dc]{max-width:none;flex:1 1 100%}.x-table__actions[data-v-e767d7dc]{gap:2px}.x-table__sort[data-v-e767d7dc]{width:130px}.x-table__add[data-v-e767d7dc]{margin-inline-start:auto}.x-table__filters[data-v-e767d7dc]{padding:10px}.x-table__filter-row[data-v-e767d7dc]{display:grid;grid-template-columns:1fr 1fr;padding-bottom:8px;border-bottom:1px dashed #e8e8e8}.x-table__filter-row[data-v-e767d7dc]>*{width:100%!important}.x-table__filter-row[data-v-e767d7dc]>:nth-child(n+3){grid-column:1 / -1}.x-table__filter-actions[data-v-e767d7dc]>*{flex:1}} diff --git a/apps/admin-panel/dist/assets/model-DB3OrB0q.css b/apps/admin-panel/dist/assets/model-DB3OrB0q.css new file mode 100644 index 0000000..3744bb5 --- /dev/null +++ b/apps/admin-panel/dist/assets/model-DB3OrB0q.css @@ -0,0 +1 @@ +.x-table__toolbar[data-v-ccf08e7e]{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.x-table__search-group[data-v-ccf08e7e]{display:flex;align-items:center;gap:24px;flex-wrap:nowrap}.x-table__actions[data-v-ccf08e7e]{display:flex;align-items:center;gap:8px;flex-wrap:nowrap}.x-table__action--active[data-v-ccf08e7e]{color:#1677ff}.x-table__add[data-v-ccf08e7e]{display:flex}.x-table__filters[data-v-ccf08e7e]{background:#fafafa;border:1px solid #f0f0f0;border-radius:6px;padding:12px;margin-bottom:12px}.x-table__filter-row[data-v-ccf08e7e]{display:flex;gap:8px;margin-bottom:8px;flex-wrap:wrap}.x-table__filter-actions[data-v-ccf08e7e]{display:flex;gap:8px}.refresh-btn[data-v-ccf08e7e]{transition:all .15s ease}.x-table__search[data-v-ccf08e7e]{max-width:260px}.x-table__sort[data-v-ccf08e7e]{width:150px}.x-table__cards[data-v-ccf08e7e]{display:flex;flex-direction:column;gap:12px}.x-table__cards[data-v-ccf08e7e] .ant-spin-container{display:flex;flex-direction:column;gap:10px;min-height:80px}.x-card[data-v-ccf08e7e]{border:1px solid #eef0f3;border-radius:10px;background:#fff;overflow:hidden}.x-card__head[data-v-ccf08e7e]{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px;background:#fafbfc;border-bottom:1px solid #eef0f3}.x-card__title[data-v-ccf08e7e]{display:flex;align-items:center;gap:8px;min-width:0}.x-card__id[data-v-ccf08e7e]{flex-shrink:0;font-size:11px;color:#8a909c;background:#eef0f3;border-radius:4px;padding:1px 6px;direction:ltr}.x-card__name[data-v-ccf08e7e]{font-weight:600;color:#1c2d56;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.x-card__actions[data-v-ccf08e7e]{flex-shrink:0;font-size:16px}.x-card--selected[data-v-ccf08e7e]{border-color:#91caff}.x-card--selected .x-card__head[data-v-ccf08e7e]{background:#f0f7ff}.x-card__media[data-v-ccf08e7e]{flex-shrink:0;display:inline-flex}.x-card__media[data-v-ccf08e7e] img{width:44px!important;height:44px!important;object-fit:cover!important;border-radius:6px}.x-table__select-all[data-v-ccf08e7e]{font-size:12px;color:#8a909c}.x-card__body[data-v-ccf08e7e]{margin:0;padding:4px 12px}.x-card__row[data-v-ccf08e7e]{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:7px 0;font-size:13px}.x-card__row+.x-card__row[data-v-ccf08e7e]{border-top:1px dashed #f0f0f0}.x-card__row dt[data-v-ccf08e7e]{color:#8a909c;flex-shrink:0}.x-card__row dd[data-v-ccf08e7e]{margin:0;color:#333;text-align:left;min-width:0;word-break:break-word}.x-card__row dd[data-v-ccf08e7e] .ant-tag{margin:0}.x-table__card-pager[data-v-ccf08e7e]{display:flex;align-items:center;justify-content:space-between;gap:8px}.x-table__card-total[data-v-ccf08e7e]{font-size:12px;color:#8a909c}@media (max-width: 575px){.x-table__toolbar[data-v-ccf08e7e]{flex-wrap:wrap;gap:8px;margin-bottom:10px}.x-table__search-group[data-v-ccf08e7e]{display:contents}.x-table__search[data-v-ccf08e7e]{max-width:none;flex:1 1 100%}.x-table__actions[data-v-ccf08e7e]{gap:2px}.x-table__sort[data-v-ccf08e7e]{width:130px}.x-table__add[data-v-ccf08e7e]{margin-inline-start:auto}.x-table__filters[data-v-ccf08e7e]{padding:10px}.x-table__filter-row[data-v-ccf08e7e]{display:grid;grid-template-columns:1fr 1fr;padding-bottom:8px;border-bottom:1px dashed #e8e8e8}.x-table__filter-row[data-v-ccf08e7e]>*{width:100%!important}.x-table__filter-row[data-v-ccf08e7e]>:nth-child(n+3){grid-column:1 / -1}.x-table__filter-actions[data-v-ccf08e7e]>*{flex:1}} diff --git a/apps/admin-panel/dist/assets/model-mwiDYd1J.js b/apps/admin-panel/dist/assets/model-mwiDYd1J.js new file mode 100644 index 0000000..092d2e9 --- /dev/null +++ b/apps/admin-panel/dist/assets/model-mwiDYd1J.js @@ -0,0 +1 @@ +import{c,I as ve,d as Re,v as Ee,x as Le,o,b as h,q as Q,p as w,a as k,i as m,w as p,f as C,h as $,F,e as H,a7 as Ae,a8 as M,t as P,s as f,m as N,z as ue,y as Xe,r as y,_ as Ye}from"./index-CpVArufm.js";import{g as de}from"./filters-CoNJlguG.js";import{S as Ke}from"./SettingOutlined-E4OknxY2.js";var Qe={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M880.1 154H143.9c-24.5 0-39.8 26.7-27.5 48L349 597.4V838c0 17.7 14.2 32 31.8 32h262.4c17.6 0 31.8-14.3 31.8-32V597.4L907.7 202c12.2-21.3-3.1-48-27.6-48zM603.4 798H420.6V642h182.9v156zm9.6-236.6l-9.5 16.6h-183l-9.5-16.6L212.7 226h598.6L613 561.4z"}}]},name:"filter",theme:"outlined"};function ce(r){for(var a=1;a[]},mobileCards:{type:Boolean,default:!1}},emits:["query","update:modelValue"],setup(r,{expose:a,emit:u}){const d=r,g=Ee(),Y=f(()=>d.mobileCards&&g.isMobile),R=u,pe=f(()=>d.hasSelection?{selectedRowKeys:d.modelValue.map(e=>e.id),onChange:(e,t)=>{R("update:modelValue",t)}}:void 0),S=N([]),T=N(!1),z=N(!1),O=N(void 0),E=N("asc"),s=ue({search:void 0,filters:[],total:0,limit:10,page:1}),J={emptyText:"هیج رکوردی یافت نشد."},fe=[{value:"=",label:"برابر"},{value:"!=",label:"نامساوی"},{value:"like",label:"شامل"},{value:">",label:"بزرگتر"},{value:">=",label:"بزرگتر مساوی"},{value:"<",label:"کوچکتر"},{value:"<=",label:"کوچکتر مساوی"},{value:"between",label:"بین"}],U=f(()=>d.model?ue(d.model).cols:[]),D=f(()=>U.value.filter(e=>e.show)),_e=f(()=>U.value.filter(e=>e.filtered).map(e=>({value:e.__fkey??e.key,label:e.title}))),me=f(()=>{if(!O.value)return;const e=U.value.find(t=>t.key===O.value);return`${E.value==="asc"?"+":"-"}${(e==null?void 0:e.__fkey)??O.value}`}),ye=f(()=>D.value.map(e=>{var t;return{key:e.key,title:e.title,dataIndex:e.dataIndex.includes(".")?e.dataIndex.split("."):e.dataIndex,sorter:e.__sorter,width:e.width,__slot:(t=e.scopedSlots)==null?void 0:t.customRender,__date:e.filterType==="date"}}));function Z(e){return e.__slot}const ge=["opt","op","action"],j=f(()=>D.value.map(e=>{var t;return{key:e.key,title:e.title,path:e.dataIndex.split("."),slot:(t=e.scopedSlots)==null?void 0:t.customRender,date:e.filterType==="date"}})),q=f(()=>j.value.find(e=>ge.includes(e.key)&&e.slot)),L=f(()=>j.value.find(e=>e.key==="id")),B=f(()=>j.value.find(e=>e.slot==="image")),ee=f(()=>{const e=j.value.filter(n=>n!==q.value&&n!==L.value&&n!==B.value),t=e.find(n=>n.key==="name"||n.key==="title");if(t)return[t];const i=e.find(n=>n.key==="fname");return i?[i,...e.filter(n=>n.key==="lname")]:e.slice(0,1)}),te=f(()=>j.value.filter(e=>e!==q.value&&e!==L.value&&e!==B.value&&!ee.value.includes(e)));function A(e){return d.modelValue.some(t=>t.id===e.id)}function be(e,t){const i=d.modelValue.filter(n=>n.id!==e.id);R("update:modelValue",t?[...i,e]:i)}const le=f(()=>S.value.length>0&&S.value.every(A)),ke=f(()=>S.value.some(A));function xe(e){const t=new Set(S.value.map(n=>n.id)),i=d.modelValue.filter(n=>!t.has(n.id));R("update:modelValue",e?[...i,...S.value]:i)}function I(e,t){return t.path.reduce((i,n)=>i&&typeof i=="object"?i[n]:void 0,e)}function ae(e,t){const i=I(e,t);return i==null||i===""?"-":t.date?de(i):i}const ie=f(()=>D.value.filter(e=>e.__sorter).flatMap(e=>[{value:`${e.key}|asc`,label:`${e.title} ↑`},{value:`${e.key}|desc`,label:`${e.title} ↓`}])),Se=f(()=>O.value?`${O.value}|${E.value}`:void 0);function we(e){if(e){const[t,i]=e.split("|");O.value=t,E.value=i}else O.value=void 0;s.page=1,V()}function Oe(e,t){var i;s.page=e,s.limit=t,V(),(i=document.getElementById("content-area"))==null||i.scrollTo({top:0,behavior:"smooth"})}function se(e){if(e)return U.value.find(t=>(t.__fkey??t.key)===e)}function ne(e){const t=se(e);if(!((t==null?void 0:t.filterType)!=="select"||!t.filterItems))return Object.entries(t.filterItems).map(([i,n])=>({value:i,label:n}))}function Ce(e){var t;return((t=se(e))==null?void 0:t.filterType)==="date"}const Fe=f(()=>{var e;return(e=d.model)!=null&&e._hidePagination?!1:{current:s.page,pageSize:s.limit,total:s.total,showSizeChanger:!0}});function Ve(e){var b;const t={};D.value.forEach(x=>{t[x.key]=x.title});const i=D.value.map(x=>x.key),n={search:s.search,filters:s.filters.filter(x=>x.field&&x.op),total:s.total,limit:s.limit,page:s.page,order:me.value,select:i,titles:t,report_title:(b=d.model)==null?void 0:b.title};return e?{...n,op:e}:n}async function V(e){var t,i,n;if(d.model)try{T.value=!0;const{data:b}=await Xe.post(d.model.url,Ve(e));S.value=b.rows,s.total=((t=b.query)==null?void 0:t.total)??0,s.page=((i=b.query)==null?void 0:i.page)??s.page,s.limit=((n=b.query)==null?void 0:n.limit)??s.limit,R("query",b.query)}catch(b){throw console.log(b),b}finally{T.value=!1}}function $e(e){s.search=e,s.page=1,V()}function Pe(){z.value=!z.value,z.value&&s.filters.length===0&&oe()}function oe(){s.filters.push({id:parseFloat(`${s.filters.length}.${Math.floor(Math.random()*1e3)}`)})}function Te(e){s.filters.splice(e,1)}function ze(){z.value=!1,s.page=1,V()}function Ie(e,t,i){s.page=e.current??1,s.limit=e.pageSize??s.limit,i!=null&&i.columnKey&&i.order?(O.value=String(i.columnKey),E.value=i.order==="ascend"?"asc":"desc"):O.value=void 0,V()}return Le(()=>{var e;for(const t of((e=d.model)==null?void 0:e.defaultFilters)??[])s.filters.push({id:Math.random(),...t});V()}),a({fetch:V}),(e,t)=>{const i=y("a-input-search"),n=y("a-button"),b=y("a-badge"),x=y("a-tooltip"),K=y("a-checkbox"),Me=y("a-menu-item"),Ue=y("a-menu"),De=y("a-dropdown"),X=y("a-select"),je=y("a-date-picker"),re=y("a-input"),qe=y("a-empty"),Be=y("a-spin"),He=y("a-pagination"),Ne=y("a-table");return o(),h("div",{class:Q(["x-table",{"x-table--cards":Y.value}])},[w("div",Ze,[w("div",et,[r.model._hideSearch?m("",!0):(o(),k(i,{key:0,value:s.search,"onUpdate:value":t[0]||(t[0]=l=>s.search=l),class:"x-table__search",placeholder:"جستجو","allow-clear":"",onSearch:$e},null,8,["value"])),w("div",tt,[r.model._noFilters?m("",!0):(o(),k(b,{key:0,count:s.filters.length},{default:p(()=>[c(n,{type:"text",class:Q({"x-table__action--active":z.value}),onClick:Pe},{icon:p(()=>[c($(W))]),default:p(()=>[t[3]||(t[3]=C(" فیلتر ",-1))]),_:1},8,["class"])]),_:1},8,["count"])),c(x,{title:"چاپ"},{default:p(()=>[c(n,{type:"text",shape:"circle"},{icon:p(()=>[c($(G))]),_:1})]),_:1}),c(De,{trigger:["click"]},{overlay:p(()=>[c(Ue,null,{default:p(()=>[(o(!0),h(F,null,H(U.value,l=>(o(),k(Me,{key:l.key},{default:p(()=>[c(K,{checked:l.show,"onUpdate:checked":v=>l.show=v},{default:p(()=>[C(P(l.title),1)]),_:2},1032,["checked","onUpdate:checked"])]),_:2},1024))),128))]),_:1})]),default:p(()=>[c(x,{title:"ستون‌ها"},{default:p(()=>[c(n,{type:"text",shape:"circle"},{icon:p(()=>[c($(Ke))]),_:1})]),_:1})]),_:1}),c(x,{title:"بارگذاری مجدد"},{default:p(()=>[c(n,{class:"refresh-btn",type:"text",shape:"circle",loading:T.value,onClick:t[1]||(t[1]=l=>V())},{icon:p(()=>[c($(Ae))]),_:1},8,["loading"])]),_:1}),Y.value&&ie.value.length?(o(),k(X,{key:1,value:Se.value,class:"x-table__sort",size:"small",placeholder:"مرتب‌سازی","allow-clear":"",options:ie.value,onChange:we},null,8,["value","options"])):m("",!0)])]),e.$slots.add?(o(),h("div",lt,[M(e.$slots,"add",{},void 0,!0)])):m("",!0)]),z.value?(o(),h("div",at,[(o(!0),h(F,null,H(s.filters,(l,v)=>(o(),h("div",{key:l.id,class:"x-table__filter-row"},[c(X,{value:l.field,"onUpdate:value":_=>l.field=_,placeholder:"ستون",style:{width:"180px"},options:_e.value},null,8,["value","onUpdate:value","options"]),c(X,{value:l.op,"onUpdate:value":_=>l.op=_,placeholder:"شرط",style:{width:"130px"},options:fe},null,8,["value","onUpdate:value"]),ne(l.field)?(o(),k(X,{key:0,value:l.value,"onUpdate:value":_=>l.value=_,placeholder:"مقدار",style:{width:"200px"},options:ne(l.field)},null,8,["value","onUpdate:value","options"])):Ce(l.field)?(o(),k(je,{key:1,value:l.value,"onUpdate:value":_=>l.value=_,placeholder:"مقدار",style:{width:"200px"},"value-format":"YYYY-MM-DD"},null,8,["value","onUpdate:value"])):(o(),k(re,{key:2,value:l.value,"onUpdate:value":_=>l.value=_,placeholder:"مقدار",style:{width:"200px"}},null,8,["value","onUpdate:value"])),l.op==="between"?(o(),k(re,{key:3,value:l.value2,"onUpdate:value":_=>l.value2=_,placeholder:"تا",style:{width:"200px"}},null,8,["value","onUpdate:value"])):m("",!0),c(n,{danger:"",onClick:_=>Te(v)},{default:p(()=>[...t[4]||(t[4]=[C("حذف",-1)])]),_:1},8,["onClick"])]))),128)),w("div",it,[c(n,{onClick:oe},{default:p(()=>[...t[5]||(t[5]=[C("افزودن فیلتر",-1)])]),_:1}),c(n,{type:"primary",onClick:ze},{default:p(()=>[...t[6]||(t[6]=[C("اعمال",-1)])]),_:1})])])):m("",!0),Y.value?(o(),h("div",st,[c(Be,{spinning:T.value},{default:p(()=>[!S.value.length&&!T.value?(o(),k(qe,{key:0,description:J.emptyText},null,8,["description"])):m("",!0),r.hasSelection&&S.value.length?(o(),k(K,{key:1,class:"x-table__select-all",checked:le.value,indeterminate:ke.value&&!le.value,onChange:t[2]||(t[2]=l=>xe(l.target.checked))},{default:p(()=>[...t[7]||(t[7]=[C(" انتخاب همه در این صفحه ",-1)])]),_:1},8,["checked","indeterminate"])):m("",!0),(o(!0),h(F,null,H(S.value,l=>(o(),h("div",{key:String(l.id),class:Q(["x-card",{"x-card--selected":r.hasSelection&&A(l)}])},[w("div",nt,[w("div",ot,[r.hasSelection?(o(),k(K,{key:0,checked:A(l),onChange:v=>be(l,v.target.checked)},null,8,["checked","onChange"])):m("",!0),B.value?(o(),h("span",rt,[M(e.$slots,B.value.slot,{text:I(l,B.value),record:l},void 0,!0)])):m("",!0),L.value?(o(),h("span",ut,"#"+P(I(l,L.value)),1)):m("",!0),w("span",dt,[(o(!0),h(F,null,H(ee.value,v=>(o(),h(F,{key:v.key},[v.slot?M(e.$slots,v.slot,{text:I(l,v),record:l},void 0,!0,0):(o(),h(F,{key:1},[C(P(ae(l,v)),1)],64))],64))),128))])]),q.value?(o(),h("div",ct,[M(e.$slots,q.value.slot,{text:I(l,q.value),record:l},void 0,!0)])):m("",!0)]),te.value.length?(o(),h("dl",ht,[(o(!0),h(F,null,H(te.value,v=>(o(),h("div",{key:v.key,class:"x-card__row"},[w("dt",null,P(v.title),1),w("dd",null,[v.slot?M(e.$slots,v.slot,{text:I(l,v),record:l},void 0,!0,0):(o(),h(F,{key:1},[C(P(ae(l,v)),1)],64))])]))),128))])):m("",!0)],2))),128))]),_:3},8,["spinning"]),!r.model._hidePagination&&s.total>0?(o(),h("div",vt,[w("span",pt,P(s.total)+" مورد",1),c(He,{size:"small","show-less-items":"",current:s.page,"page-size":s.limit,total:s.total,"show-size-changer":!1,onChange:Oe},null,8,["current","page-size","total"])])):m("",!0)])):(o(),k(Ne,{key:2,columns:ye.value,"data-source":S.value,loading:T.value,pagination:Fe.value,locale:J,"row-selection":pe.value,"row-key":"id",size:$(g).isMobile?"small":"middle",scroll:$(g).isSmallScreen?{x:"max-content"}:void 0,bordered:"",onChange:Ie},{bodyCell:p(({column:l,record:v,text:_})=>[Z(l)?M(e.$slots,Z(l),{text:_,record:v},void 0,!0,0):l.__date?(o(),h(F,{key:1},[C(P($(de)(_)),1)],64)):m("",!0)]),_:3},8,["columns","data-source","loading","pagination","row-selection","size","scroll"]))],2)}}}),gt=Ye(ft,[["__scopeId","data-v-ccf08e7e"]]);class bt{constructor(a,u){this.show=!0,this.__sorter=!0,this.filtered=!1,this.key=a,this.title=u,this.dataIndex=a,a==="id"&&(this.show=!1)}__filter(){this.filtered=!0,this.scopedSlots||(this.scopedSlots={}),this.scopedSlots.filterDropdown=`${this.key}_filterDropdown`,this.scopedSlots.filterIcon=`${this.key}_filterIcon`}filterKey(a){return this.__fkey=a,this}renderSlot(a){return this.scopedSlots||(this.scopedSlots={}),this.scopedSlots.customRender=a,this}filterText(){return this.__filter(),this.filterType="default",this}filterSwitch(){return this.__filter(),this.filterType="switch",this}filterQuery(a){return this.__filter(),this.filterType="query",this.filterAction=a,this}filterDate(){return this.__filter(),this.filterType="date",this}filterNumber(){return this.__filter(),this.filterType="number",this}filterSelect(a){return this.__filter(),this.filterType="select",this.filterItems=a,this}noSort(){return this.__sorter=!1,this}hidden(){return this.show=!1,this}setWidth(a){return this.width=a,this}}class kt{constructor(a,u){this.cols=[],this._hidePagination=!1,this._hideSearch=!1,this._noFilters=!1,this.url=a,this.title=u}add(a){return this.cols.push(a),this}addDefaultFilter(a){return this.defaultFilters||(this.defaultFilters=[]),this.defaultFilters.push(a),this}hidePagination(){return this._hidePagination=!0,this}hideSearch(){return this._hideSearch=!0,this}noFilters(){return this._noFilters=!0,this}getSortFields(){return this.cols.filter(a=>a.__sorter)}}export{gt as X,kt as a,bt as b}; diff --git a/apps/admin-panel/dist/assets/model-tqsMDjkK.js b/apps/admin-panel/dist/assets/model-tqsMDjkK.js deleted file mode 100644 index 6277f24..0000000 --- a/apps/admin-panel/dist/assets/model-tqsMDjkK.js +++ /dev/null @@ -1 +0,0 @@ -import{c,I as ve,d as Re,v as Ee,x as Le,o,b as h,q as Q,p as w,a as k,i as m,w as p,f as O,h as $,F as C,e as B,a6 as Ae,a7 as M,t as P,s as f,m as H,z as ue,y as Xe,r as y,_ as Ye}from"./index-CJij4X3l.js";import{g as de}from"./filters-BPYO-DKN.js";import{S as Ke}from"./SettingOutlined-BJxMXy1I.js";var Qe={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M880.1 154H143.9c-24.5 0-39.8 26.7-27.5 48L349 597.4V838c0 17.7 14.2 32 31.8 32h262.4c17.6 0 31.8-14.3 31.8-32V597.4L907.7 202c12.2-21.3-3.1-48-27.6-48zM603.4 798H420.6V642h182.9v156zm9.6-236.6l-9.5 16.6h-183l-9.5-16.6L212.7 226h598.6L613 561.4z"}}]},name:"filter",theme:"outlined"};function ce(r){for(var a=1;a[]},mobileCards:{type:Boolean,default:!1}},emits:["query","update:modelValue"],setup(r,{expose:a,emit:u}){const d=r,g=Ee(),Y=f(()=>d.mobileCards&&g.isMobile),N=u,pe=f(()=>d.hasSelection?{selectedRowKeys:d.modelValue.map(e=>e.id),onChange:(e,t)=>{N("update:modelValue",t)}}:void 0),S=H([]),T=H(!1),z=H(!1),F=H(void 0),R=H("asc"),s=ue({search:void 0,filters:[],total:0,limit:10,page:1}),J={emptyText:"هیج رکوردی یافت نشد."},fe=[{value:"=",label:"برابر"},{value:"!=",label:"نامساوی"},{value:"like",label:"شامل"},{value:">",label:"بزرگتر"},{value:">=",label:"بزرگتر مساوی"},{value:"<",label:"کوچکتر"},{value:"<=",label:"کوچکتر مساوی"},{value:"between",label:"بین"}],E=f(()=>d.model?ue(d.model).cols:[]),U=f(()=>E.value.filter(e=>e.show)),_e=f(()=>E.value.filter(e=>e.filtered).map(e=>({value:e.__fkey??e.key,label:e.title}))),me=f(()=>F.value?`${R.value==="asc"?"+":"-"}${F.value}`:void 0),ye=f(()=>U.value.map(e=>{var t;return{key:e.key,title:e.title,dataIndex:e.dataIndex.includes(".")?e.dataIndex.split("."):e.dataIndex,sorter:e.__sorter,width:e.width,__slot:(t=e.scopedSlots)==null?void 0:t.customRender,__date:e.filterType==="date"}}));function Z(e){return e.__slot}const ge=["opt","op","action"],D=f(()=>U.value.map(e=>{var t;return{key:e.key,title:e.title,path:e.dataIndex.split("."),slot:(t=e.scopedSlots)==null?void 0:t.customRender,date:e.filterType==="date"}})),j=f(()=>D.value.find(e=>ge.includes(e.key)&&e.slot)),L=f(()=>D.value.find(e=>e.key==="id")),q=f(()=>D.value.find(e=>e.slot==="image")),ee=f(()=>{const e=D.value.filter(n=>n!==j.value&&n!==L.value&&n!==q.value),t=e.find(n=>n.key==="name"||n.key==="title");if(t)return[t];const i=e.find(n=>n.key==="fname");return i?[i,...e.filter(n=>n.key==="lname")]:e.slice(0,1)}),te=f(()=>D.value.filter(e=>e!==j.value&&e!==L.value&&e!==q.value&&!ee.value.includes(e)));function A(e){return d.modelValue.some(t=>t.id===e.id)}function be(e,t){const i=d.modelValue.filter(n=>n.id!==e.id);N("update:modelValue",t?[...i,e]:i)}const le=f(()=>S.value.length>0&&S.value.every(A)),ke=f(()=>S.value.some(A));function xe(e){const t=new Set(S.value.map(n=>n.id)),i=d.modelValue.filter(n=>!t.has(n.id));N("update:modelValue",e?[...i,...S.value]:i)}function I(e,t){return t.path.reduce((i,n)=>i&&typeof i=="object"?i[n]:void 0,e)}function ae(e,t){const i=I(e,t);return i==null||i===""?"-":t.date?de(i):i}const ie=f(()=>U.value.filter(e=>e.__sorter).flatMap(e=>[{value:`${e.key}|asc`,label:`${e.title} ↑`},{value:`${e.key}|desc`,label:`${e.title} ↓`}])),Se=f(()=>F.value?`${F.value}|${R.value}`:void 0);function we(e){if(e){const[t,i]=e.split("|");F.value=t,R.value=i}else F.value=void 0;s.page=1,V()}function Oe(e,t){var i;s.page=e,s.limit=t,V(),(i=document.getElementById("content-area"))==null||i.scrollTo({top:0,behavior:"smooth"})}function se(e){if(e)return E.value.find(t=>(t.__fkey??t.key)===e)}function ne(e){const t=se(e);if(!((t==null?void 0:t.filterType)!=="select"||!t.filterItems))return Object.entries(t.filterItems).map(([i,n])=>({value:i,label:n}))}function Ce(e){var t;return((t=se(e))==null?void 0:t.filterType)==="date"}const Fe=f(()=>{var e;return(e=d.model)!=null&&e._hidePagination?!1:{current:s.page,pageSize:s.limit,total:s.total,showSizeChanger:!0}});function Ve(e){var b;const t={};U.value.forEach(x=>{t[x.key]=x.title});const i=U.value.map(x=>x.key),n={search:s.search,filters:s.filters.filter(x=>x.field&&x.op),total:s.total,limit:s.limit,page:s.page,order:me.value,select:i,titles:t,report_title:(b=d.model)==null?void 0:b.title};return e?{...n,op:e}:n}async function V(e){var t,i,n;if(d.model)try{T.value=!0;const{data:b}=await Xe.post(d.model.url,Ve(e));S.value=b.rows,s.total=((t=b.query)==null?void 0:t.total)??0,s.page=((i=b.query)==null?void 0:i.page)??s.page,s.limit=((n=b.query)==null?void 0:n.limit)??s.limit,N("query",b.query)}catch(b){throw console.log(b),b}finally{T.value=!1}}function $e(e){s.search=e,s.page=1,V()}function Pe(){z.value=!z.value,z.value&&s.filters.length===0&&oe()}function oe(){s.filters.push({id:parseFloat(`${s.filters.length}.${Math.floor(Math.random()*1e3)}`)})}function Te(e){s.filters.splice(e,1)}function ze(){z.value=!1,s.page=1,V()}function Ie(e,t,i){s.page=e.current??1,s.limit=e.pageSize??s.limit,i!=null&&i.columnKey&&i.order?(F.value=String(i.columnKey),R.value=i.order==="ascend"?"asc":"desc"):F.value=void 0,V()}return Le(()=>{var e;for(const t of((e=d.model)==null?void 0:e.defaultFilters)??[])s.filters.push({id:Math.random(),...t});V()}),a({fetch:V}),(e,t)=>{const i=y("a-input-search"),n=y("a-button"),b=y("a-badge"),x=y("a-tooltip"),K=y("a-checkbox"),Me=y("a-menu-item"),Ue=y("a-menu"),De=y("a-dropdown"),X=y("a-select"),je=y("a-date-picker"),re=y("a-input"),qe=y("a-empty"),Be=y("a-spin"),He=y("a-pagination"),Ne=y("a-table");return o(),h("div",{class:Q(["x-table",{"x-table--cards":Y.value}])},[w("div",Ze,[w("div",et,[r.model._hideSearch?m("",!0):(o(),k(i,{key:0,value:s.search,"onUpdate:value":t[0]||(t[0]=l=>s.search=l),class:"x-table__search",placeholder:"جستجو","allow-clear":"",onSearch:$e},null,8,["value"])),w("div",tt,[r.model._noFilters?m("",!0):(o(),k(b,{key:0,count:s.filters.length},{default:p(()=>[c(n,{type:"text",class:Q({"x-table__action--active":z.value}),onClick:Pe},{icon:p(()=>[c($(W))]),default:p(()=>[t[3]||(t[3]=O(" فیلتر ",-1))]),_:1},8,["class"])]),_:1},8,["count"])),c(x,{title:"چاپ"},{default:p(()=>[c(n,{type:"text",shape:"circle"},{icon:p(()=>[c($(G))]),_:1})]),_:1}),c(De,{trigger:["click"]},{overlay:p(()=>[c(Ue,null,{default:p(()=>[(o(!0),h(C,null,B(E.value,l=>(o(),k(Me,{key:l.key},{default:p(()=>[c(K,{checked:l.show,"onUpdate:checked":v=>l.show=v},{default:p(()=>[O(P(l.title),1)]),_:2},1032,["checked","onUpdate:checked"])]),_:2},1024))),128))]),_:1})]),default:p(()=>[c(x,{title:"ستون‌ها"},{default:p(()=>[c(n,{type:"text",shape:"circle"},{icon:p(()=>[c($(Ke))]),_:1})]),_:1})]),_:1}),c(x,{title:"بارگذاری مجدد"},{default:p(()=>[c(n,{class:"refresh-btn",type:"text",shape:"circle",loading:T.value,onClick:t[1]||(t[1]=l=>V())},{icon:p(()=>[c($(Ae))]),_:1},8,["loading"])]),_:1}),Y.value&&ie.value.length?(o(),k(X,{key:1,value:Se.value,class:"x-table__sort",size:"small",placeholder:"مرتب‌سازی","allow-clear":"",options:ie.value,onChange:we},null,8,["value","options"])):m("",!0)])]),e.$slots.add?(o(),h("div",lt,[M(e.$slots,"add",{},void 0,!0)])):m("",!0)]),z.value?(o(),h("div",at,[(o(!0),h(C,null,B(s.filters,(l,v)=>(o(),h("div",{key:l.id,class:"x-table__filter-row"},[c(X,{value:l.field,"onUpdate:value":_=>l.field=_,placeholder:"ستون",style:{width:"180px"},options:_e.value},null,8,["value","onUpdate:value","options"]),c(X,{value:l.op,"onUpdate:value":_=>l.op=_,placeholder:"شرط",style:{width:"130px"},options:fe},null,8,["value","onUpdate:value"]),ne(l.field)?(o(),k(X,{key:0,value:l.value,"onUpdate:value":_=>l.value=_,placeholder:"مقدار",style:{width:"200px"},options:ne(l.field)},null,8,["value","onUpdate:value","options"])):Ce(l.field)?(o(),k(je,{key:1,value:l.value,"onUpdate:value":_=>l.value=_,placeholder:"مقدار",style:{width:"200px"},"value-format":"YYYY-MM-DD"},null,8,["value","onUpdate:value"])):(o(),k(re,{key:2,value:l.value,"onUpdate:value":_=>l.value=_,placeholder:"مقدار",style:{width:"200px"}},null,8,["value","onUpdate:value"])),l.op==="between"?(o(),k(re,{key:3,value:l.value2,"onUpdate:value":_=>l.value2=_,placeholder:"تا",style:{width:"200px"}},null,8,["value","onUpdate:value"])):m("",!0),c(n,{danger:"",onClick:_=>Te(v)},{default:p(()=>[...t[4]||(t[4]=[O("حذف",-1)])]),_:1},8,["onClick"])]))),128)),w("div",it,[c(n,{onClick:oe},{default:p(()=>[...t[5]||(t[5]=[O("افزودن فیلتر",-1)])]),_:1}),c(n,{type:"primary",onClick:ze},{default:p(()=>[...t[6]||(t[6]=[O("اعمال",-1)])]),_:1})])])):m("",!0),Y.value?(o(),h("div",st,[c(Be,{spinning:T.value},{default:p(()=>[!S.value.length&&!T.value?(o(),k(qe,{key:0,description:J.emptyText},null,8,["description"])):m("",!0),r.hasSelection&&S.value.length?(o(),k(K,{key:1,class:"x-table__select-all",checked:le.value,indeterminate:ke.value&&!le.value,onChange:t[2]||(t[2]=l=>xe(l.target.checked))},{default:p(()=>[...t[7]||(t[7]=[O(" انتخاب همه در این صفحه ",-1)])]),_:1},8,["checked","indeterminate"])):m("",!0),(o(!0),h(C,null,B(S.value,l=>(o(),h("div",{key:String(l.id),class:Q(["x-card",{"x-card--selected":r.hasSelection&&A(l)}])},[w("div",nt,[w("div",ot,[r.hasSelection?(o(),k(K,{key:0,checked:A(l),onChange:v=>be(l,v.target.checked)},null,8,["checked","onChange"])):m("",!0),q.value?(o(),h("span",rt,[M(e.$slots,q.value.slot,{text:I(l,q.value),record:l},void 0,!0)])):m("",!0),L.value?(o(),h("span",ut,"#"+P(I(l,L.value)),1)):m("",!0),w("span",dt,[(o(!0),h(C,null,B(ee.value,v=>(o(),h(C,{key:v.key},[v.slot?M(e.$slots,v.slot,{text:I(l,v),record:l},void 0,!0,0):(o(),h(C,{key:1},[O(P(ae(l,v)),1)],64))],64))),128))])]),j.value?(o(),h("div",ct,[M(e.$slots,j.value.slot,{text:I(l,j.value),record:l},void 0,!0)])):m("",!0)]),te.value.length?(o(),h("dl",ht,[(o(!0),h(C,null,B(te.value,v=>(o(),h("div",{key:v.key,class:"x-card__row"},[w("dt",null,P(v.title),1),w("dd",null,[v.slot?M(e.$slots,v.slot,{text:I(l,v),record:l},void 0,!0,0):(o(),h(C,{key:1},[O(P(ae(l,v)),1)],64))])]))),128))])):m("",!0)],2))),128))]),_:3},8,["spinning"]),!r.model._hidePagination&&s.total>0?(o(),h("div",vt,[w("span",pt,P(s.total)+" مورد",1),c(He,{size:"small","show-less-items":"",current:s.page,"page-size":s.limit,total:s.total,"show-size-changer":!1,onChange:Oe},null,8,["current","page-size","total"])])):m("",!0)])):(o(),k(Ne,{key:2,columns:ye.value,"data-source":S.value,loading:T.value,pagination:Fe.value,locale:J,"row-selection":pe.value,"row-key":"id",size:$(g).isMobile?"small":"middle",scroll:$(g).isSmallScreen?{x:"max-content"}:void 0,bordered:"",onChange:Ie},{bodyCell:p(({column:l,record:v,text:_})=>[Z(l)?M(e.$slots,Z(l),{text:_,record:v},void 0,!0,0):l.__date?(o(),h(C,{key:1},[O(P($(de)(_)),1)],64)):m("",!0)]),_:3},8,["columns","data-source","loading","pagination","row-selection","size","scroll"]))],2)}}}),gt=Ye(ft,[["__scopeId","data-v-e767d7dc"]]);class bt{constructor(a,u){this.show=!0,this.__sorter=!0,this.filtered=!1,this.key=a,this.title=u,this.dataIndex=a,a==="id"&&(this.show=!1)}__filter(){this.filtered=!0,this.scopedSlots||(this.scopedSlots={}),this.scopedSlots.filterDropdown=`${this.key}_filterDropdown`,this.scopedSlots.filterIcon=`${this.key}_filterIcon`}filterKey(a){return this.__fkey=a,this}renderSlot(a){return this.scopedSlots||(this.scopedSlots={}),this.scopedSlots.customRender=a,this}filterText(){return this.__filter(),this.filterType="default",this}filterSwitch(){return this.__filter(),this.filterType="switch",this}filterQuery(a){return this.__filter(),this.filterType="query",this.filterAction=a,this}filterDate(){return this.__filter(),this.filterType="date",this}filterNumber(){return this.__filter(),this.filterType="number",this}filterSelect(a){return this.__filter(),this.filterType="select",this.filterItems=a,this}noSort(){return this.__sorter=!1,this}hidden(){return this.show=!1,this}setWidth(a){return this.width=a,this}}class kt{constructor(a,u){this.cols=[],this._hidePagination=!1,this._hideSearch=!1,this._noFilters=!1,this.url=a,this.title=u}add(a){return this.cols.push(a),this}addDefaultFilter(a){return this.defaultFilters||(this.defaultFilters=[]),this.defaultFilters.push(a),this}hidePagination(){return this._hidePagination=!0,this}hideSearch(){return this._hideSearch=!0,this}noFilters(){return this._noFilters=!0,this}getSortFields(){return this.cols.filter(a=>a.__sorter)}}export{gt as X,kt as a,bt as b}; diff --git a/apps/admin-panel/dist/assets/myData-Dl1l_agX.js b/apps/admin-panel/dist/assets/myData-DPVKtj6d.js similarity index 88% rename from apps/admin-panel/dist/assets/myData-Dl1l_agX.js rename to apps/admin-panel/dist/assets/myData-DPVKtj6d.js index 7cea961..0beea8a 100644 --- a/apps/admin-panel/dist/assets/myData-Dl1l_agX.js +++ b/apps/admin-panel/dist/assets/myData-DPVKtj6d.js @@ -1 +1 @@ -import{u as x}from"./auth-N_TMNrPz.js";import{d as v,x as y,y as h,a as b,w as t,m as g,r as u,o as w,c as s,f as n,t as c,s as m}from"./index-CJij4X3l.js";const B=v({__name:"myData",setup(C){const d=x(),_=g(null),o=m(()=>_.value??d.user),i=m(()=>{var a,r;return(r=(a=o.value)==null?void 0:a.user_type)==null?void 0:r.title});return y(async()=>{try{const{data:a}=await h.get("admin/users/me");_.value=a}catch(a){console.log(a)}}),(a,r)=>{const l=u("a-descriptions-item"),p=u("a-descriptions"),f=u("a-card");return w(),b(f,{title:"اطلاعات کاربری",class:"page-card"},{default:t(()=>[s(p,{column:{xxl:3,xl:3,lg:3,md:2,sm:2,xs:1}},{default:t(()=>[s(l,{label:"نام"},{default:t(()=>{var e;return[n(c(((e=o.value)==null?void 0:e.fname)||"-"),1)]}),_:1}),s(l,{label:"نام خانوادگی"},{default:t(()=>{var e;return[n(c(((e=o.value)==null?void 0:e.lname)||"-"),1)]}),_:1}),s(l,{label:"شماره تلفن"},{default:t(()=>{var e;return[n(c(((e=o.value)==null?void 0:e.mobile)||"-"),1)]}),_:1}),s(l,{label:"نوع کاربری"},{default:t(()=>[n(c(i.value||"آنلاین"),1)]),_:1})]),_:1})]),_:1})}}});export{B as default}; +import{u as x}from"./auth-taL2eAff.js";import{d as v,x as y,y as h,a as b,w as t,m as g,r as u,o as w,c as s,f as n,t as c,s as m}from"./index-CpVArufm.js";const B=v({__name:"myData",setup(C){const d=x(),_=g(null),o=m(()=>_.value??d.user),i=m(()=>{var a,r;return(r=(a=o.value)==null?void 0:a.user_type)==null?void 0:r.title});return y(async()=>{try{const{data:a}=await h.get("admin/users/me");_.value=a}catch(a){console.log(a)}}),(a,r)=>{const l=u("a-descriptions-item"),p=u("a-descriptions"),f=u("a-card");return w(),b(f,{title:"اطلاعات کاربری",class:"page-card"},{default:t(()=>[s(p,{column:{xxl:3,xl:3,lg:3,md:2,sm:2,xs:1}},{default:t(()=>[s(l,{label:"نام"},{default:t(()=>{var e;return[n(c(((e=o.value)==null?void 0:e.fname)||"-"),1)]}),_:1}),s(l,{label:"نام خانوادگی"},{default:t(()=>{var e;return[n(c(((e=o.value)==null?void 0:e.lname)||"-"),1)]}),_:1}),s(l,{label:"شماره تلفن"},{default:t(()=>{var e;return[n(c(((e=o.value)==null?void 0:e.mobile)||"-"),1)]}),_:1}),s(l,{label:"نوع کاربری"},{default:t(()=>[n(c(i.value||"آنلاین"),1)]),_:1})]),_:1})]),_:1})}}});export{B as default}; diff --git a/apps/admin-panel/dist/assets/newsletters-ChrvxoA6.js b/apps/admin-panel/dist/assets/newsletters-O6c9pnMf.js similarity index 79% rename from apps/admin-panel/dist/assets/newsletters-ChrvxoA6.js rename to apps/admin-panel/dist/assets/newsletters-O6c9pnMf.js index d08eca4..da7d200 100644 --- a/apps/admin-panel/dist/assets/newsletters-ChrvxoA6.js +++ b/apps/admin-panel/dist/assets/newsletters-O6c9pnMf.js @@ -1 +1 @@ -import{a as l,b as t,X as c}from"./model-tqsMDjkK.js";import{d,a as i,w as a,r as m,o as _,c as p,p as f,t as u,h as w,m as b,_ as x}from"./index-CJij4X3l.js";import"./filters-BPYO-DKN.js";import"./index-CKg-8s_Z.js";import"./SettingOutlined-BJxMXy1I.js";function h(){const e=new l("admin/misc/newsletter/list","لیست خبرنامه");return e.add(new t("name","نام").filterKey("email").filterText()),e.add(new t("mobile","شماره موبایل").filterNumber()),e.add(new t("op","عملیات").noSort().renderSlot("actions")),e}const N={class:"muted"},X=d({__name:"newsletters",setup(e){const s=h(),o=b(null);return(k,y)=>{const r=m("a-card");return _(),i(r,{title:"لیست خبرنامه",class:"page-card"},{default:a(()=>[p(c,{ref_key:"newsletter",ref:o,model:w(s),"mobile-cards":""},{actions:a(({record:n})=>[f("span",N,u(n.email??"-"),1)]),_:1},8,["model"])]),_:1})}}}),v=x(X,[["__scopeId","data-v-c5c2159a"]]);export{v as default}; +import{a as l,b as t,X as c}from"./model-mwiDYd1J.js";import{d,a as i,w as a,r as m,o as _,c as p,p as f,t as u,h as w,m as b,_ as x}from"./index-CpVArufm.js";import"./filters-CoNJlguG.js";import"./index-DjZc5EYL.js";import"./SettingOutlined-E4OknxY2.js";function h(){const e=new l("admin/misc/newsletter/list","لیست خبرنامه");return e.add(new t("name","نام").filterKey("email").filterText()),e.add(new t("mobile","شماره موبایل").filterNumber()),e.add(new t("op","عملیات").noSort().renderSlot("actions")),e}const N={class:"muted"},X=d({__name:"newsletters",setup(e){const s=h(),o=b(null);return(k,y)=>{const r=m("a-card");return _(),i(r,{title:"لیست خبرنامه",class:"page-card"},{default:a(()=>[p(c,{ref_key:"newsletter",ref:o,model:w(s),"mobile-cards":""},{actions:a(({record:n})=>[f("span",N,u(n.email??"-"),1)]),_:1},8,["model"])]),_:1})}}}),v=x(X,[["__scopeId","data-v-c5c2159a"]]);export{v as default}; diff --git a/apps/admin-panel/dist/assets/offersIgnore-add-edit-Cmton9Iz.js b/apps/admin-panel/dist/assets/offersIgnore-add-edit-4VqJNFTd.js similarity index 96% rename from apps/admin-panel/dist/assets/offersIgnore-add-edit-Cmton9Iz.js rename to apps/admin-panel/dist/assets/offersIgnore-add-edit-4VqJNFTd.js index edcba3c..6fd9edb 100644 --- a/apps/admin-panel/dist/assets/offersIgnore-add-edit-Cmton9Iz.js +++ b/apps/admin-panel/dist/assets/offersIgnore-add-edit-4VqJNFTd.js @@ -1 +1 @@ -import{a as y,b as d,X as w}from"./model-tqsMDjkK.js";import{d as Q,x as W,b as c,p as u,c as n,w as s,m as p,y as I,J as b,r as m,o as f,F as v,e as F,t as r,h,i as x,f as V,_ as Y}from"./index-CJij4X3l.js";import"./filters-BPYO-DKN.js";import"./index-CKg-8s_Z.js";import"./SettingOutlined-BJxMXy1I.js";const Z={id:"page-user-view",class:"page-card"},ee={id:"user-data"},te={class:"grid-4"},le=["src"],ae={class:"mt-5"},ne={class:"grid-4 items-end"},oe="/img/no-items.png",se=Q({__name:"offersIgnore-add-edit",setup(ue){const _=p(!1),C=p(!1),S={1:"محصولات",2:"دسته بندی",3:"مشتری",4:"برند"},i=p(1),T=p(1),l=p([]),U=p([]),j=R(),A=$(),J=q(),M=z();function R(){const e=new y("admin/products/list","محصولات");return e.add(new d("id","کد").filterNumber()),e.add(new d("ProductImage","تصویر").renderSlot("image").noSort()),e.add(new d("title","نام محصول").filterText()),e.add(new d("product_code","کد محصول").filterText()),e}function $(){const e=new y("admin/categories/list","دسته بندی");return e.add(new d("id","کد").filterNumber()),e.add(new d("title","عنوان دسته").filterText()),e.add(new d("type_str","نوع نمایش").noSort()),e}function q(){const e=new y("admin/customers-omde/list","مشتریان");return e.add(new d("id","کد").filterNumber()),e.add(new d("name","نام و نام خانوادگی").filterText()),e.add(new d("mobile","موبایل").filterText().noSort()),e}function z(){const e=new y("admin/products/brands-table","برندها");return e.add(new d("id","کد").filterNumber()),e.add(new d("title","عنوان برند").filterText()),e}function B(e){return U.value.filter(t=>t.type===e).map(t=>t.item_id)}function k(e){const t=B(e);l.value=t.map(o=>({id:o}))}async function G(){var e,t;try{_.value=!0,await I.post("ignore",{type:i.value,item_id:l.value.map(o=>o.id)}),b.success("عملیات با موفقیت انجام شد"),await N(),k(i.value)}catch(o){console.log(o),b.error(((t=(e=o==null?void 0:o.response)==null?void 0:e.data)==null?void 0:t.message)??"خطا در ثبت اطلاعات.")}finally{_.value=!1}}async function H(){var e,t;try{C.value=!0,await I.delete(`ignore/${T.value}`),b.success("حذف شد"),await N(),k(i.value)}catch(o){b.error(((t=(e=o==null?void 0:o.response)==null?void 0:e.data)==null?void 0:t.message)??"خطا در حذف")}finally{C.value=!1}}async function N(){try{_.value=!0;const{data:e}=await I.get("ignore");U.value=e,l.value=B(1).map(t=>({id:t}))}catch(e){console.log(e),b.error("خطا در دریافت اطلاعات")}finally{_.value=!1}}return W(N),(e,t)=>{const o=m("a-select-option"),X=m("a-select"),L=m("a-form-item"),P=m("a-button"),D=m("a-card"),K=m("a-form"),E=m("a-spin"),O=m("a-popconfirm");return f(),c("div",Z,[u("div",ee,[n(E,{spinning:_.value},{default:s(()=>[n(K,{layout:"vertical"},{default:s(()=>[n(D,{title:"تعریف تخفیف",class:"mb-base mb-10"},{default:s(()=>[u("div",te,[n(L,{label:"نوع استثناء"},{default:s(()=>[n(X,{value:i.value,"onUpdate:value":t[0]||(t[0]=a=>i.value=a),onChange:k},{default:s(()=>[(f(),c(v,null,F(S,(a,g)=>n(o,{key:g,value:Number(g)},{default:s(()=>[V(r(a),1)]),_:2},1032,["value"])),64))]),_:1},8,["value"])]),_:1})]),i.value===1?(f(),c(v,{key:0},[u("h6",null,"تعداد "+r(l.value.length)+" محصول انتخاب شده است",1),n(w,{ref:"tblProducts",modelValue:l.value,"onUpdate:modelValue":t[1]||(t[1]=a=>l.value=a),model:h(j),"has-selection":!0,"mobile-cards":""},{image:s(({record:a})=>[u("img",{width:"90px",height:"90px",style:{"object-fit":"scale-down"},src:a.thumb&&a.thumb.full?a.thumb.full:oe},null,8,le)]),_:1},8,["modelValue","model"]),u("h6",null,"تعداد "+r(l.value.length)+" محصول انتخاب شده است",1)],64)):x("",!0),i.value===2?(f(),c(v,{key:1},[u("h6",null,"تعداد "+r(l.value.length)+" دسته بندی انتخاب شده است",1),n(w,{ref:"tblCategory",modelValue:l.value,"onUpdate:modelValue":t[2]||(t[2]=a=>l.value=a),model:h(A),"has-selection":!0,"mobile-cards":""},null,8,["modelValue","model"]),u("h6",null,"تعداد "+r(l.value.length)+" دسته بندی انتخاب شده است",1)],64)):x("",!0),i.value===3?(f(),c(v,{key:2},[u("h6",null,"تعداد "+r(l.value.length)+" مشتری انتخاب شده است",1),n(w,{ref:"tblCustomer",modelValue:l.value,"onUpdate:modelValue":t[3]||(t[3]=a=>l.value=a),model:h(J),"has-selection":!0,"mobile-cards":""},null,8,["modelValue","model"]),u("h6",null,"تعداد "+r(l.value.length)+" مشتری انتخاب شده است",1)],64)):x("",!0),i.value===4?(f(),c(v,{key:3},[u("h6",null,"تعداد "+r(l.value.length)+" برند انتخاب شده است",1),n(w,{ref:"tblBrand",modelValue:l.value,"onUpdate:modelValue":t[4]||(t[4]=a=>l.value=a),model:h(M),"has-selection":!0,"mobile-cards":""},null,8,["modelValue","model"]),u("h6",null,"تعداد "+r(l.value.length)+" برند انتخاب شده است",1)],64)):x("",!0),u("div",ae,[n(P,{type:"primary",class:"mr-4 form-submit",onClick:G},{default:s(()=>[...t[6]||(t[6]=[V("ثبت",-1)])]),_:1})])]),_:1})]),_:1})]),_:1},8,["spinning"]),n(E,{spinning:C.value},{default:s(()=>[n(D,{title:"حذف نوع استثناء"},{default:s(()=>[u("div",ne,[n(L,{label:"نوع"},{default:s(()=>[n(X,{value:T.value,"onUpdate:value":t[5]||(t[5]=a=>T.value=a)},{default:s(()=>[(f(),c(v,null,F(S,(a,g)=>n(o,{key:g,value:Number(g)},{default:s(()=>[V(r(a),1)]),_:2},1032,["value"])),64))]),_:1},8,["value"])]),_:1}),n(O,{title:"آیا مطمئن هستید؟","ok-text":"بله","cancel-text":"خیر",onConfirm:H},{default:s(()=>[n(P,{danger:""},{default:s(()=>[...t[7]||(t[7]=[V("حذف",-1)])]),_:1})]),_:1})])]),_:1})]),_:1},8,["spinning"])])])}}}),fe=Y(se,[["__scopeId","data-v-44cb9944"]]);export{fe as default}; +import{a as y,b as d,X as w}from"./model-mwiDYd1J.js";import{d as Q,x as W,b as c,p as u,c as n,w as s,m as p,y as I,J as b,r as m,o as f,F as v,e as F,t as r,h,i as x,f as V,_ as Y}from"./index-CpVArufm.js";import"./filters-CoNJlguG.js";import"./index-DjZc5EYL.js";import"./SettingOutlined-E4OknxY2.js";const Z={id:"page-user-view",class:"page-card"},ee={id:"user-data"},te={class:"grid-4"},le=["src"],ae={class:"mt-5"},ne={class:"grid-4 items-end"},oe="/img/no-items.png",se=Q({__name:"offersIgnore-add-edit",setup(ue){const _=p(!1),C=p(!1),S={1:"محصولات",2:"دسته بندی",3:"مشتری",4:"برند"},i=p(1),T=p(1),l=p([]),U=p([]),j=R(),A=$(),J=q(),M=z();function R(){const e=new y("admin/products/list","محصولات");return e.add(new d("id","کد").filterNumber()),e.add(new d("ProductImage","تصویر").renderSlot("image").noSort()),e.add(new d("title","نام محصول").filterText()),e.add(new d("product_code","کد محصول").filterText()),e}function $(){const e=new y("admin/categories/list","دسته بندی");return e.add(new d("id","کد").filterNumber()),e.add(new d("title","عنوان دسته").filterText()),e.add(new d("type_str","نوع نمایش").noSort()),e}function q(){const e=new y("admin/customers-omde/list","مشتریان");return e.add(new d("id","کد").filterNumber()),e.add(new d("name","نام و نام خانوادگی").filterText()),e.add(new d("mobile","موبایل").filterText().noSort()),e}function z(){const e=new y("admin/products/brands-table","برندها");return e.add(new d("id","کد").filterNumber()),e.add(new d("title","عنوان برند").filterText()),e}function B(e){return U.value.filter(t=>t.type===e).map(t=>t.item_id)}function k(e){const t=B(e);l.value=t.map(o=>({id:o}))}async function G(){var e,t;try{_.value=!0,await I.post("ignore",{type:i.value,item_id:l.value.map(o=>o.id)}),b.success("عملیات با موفقیت انجام شد"),await N(),k(i.value)}catch(o){console.log(o),b.error(((t=(e=o==null?void 0:o.response)==null?void 0:e.data)==null?void 0:t.message)??"خطا در ثبت اطلاعات.")}finally{_.value=!1}}async function H(){var e,t;try{C.value=!0,await I.delete(`ignore/${T.value}`),b.success("حذف شد"),await N(),k(i.value)}catch(o){b.error(((t=(e=o==null?void 0:o.response)==null?void 0:e.data)==null?void 0:t.message)??"خطا در حذف")}finally{C.value=!1}}async function N(){try{_.value=!0;const{data:e}=await I.get("ignore");U.value=e,l.value=B(1).map(t=>({id:t}))}catch(e){console.log(e),b.error("خطا در دریافت اطلاعات")}finally{_.value=!1}}return W(N),(e,t)=>{const o=m("a-select-option"),X=m("a-select"),L=m("a-form-item"),P=m("a-button"),D=m("a-card"),K=m("a-form"),E=m("a-spin"),O=m("a-popconfirm");return f(),c("div",Z,[u("div",ee,[n(E,{spinning:_.value},{default:s(()=>[n(K,{layout:"vertical"},{default:s(()=>[n(D,{title:"تعریف تخفیف",class:"mb-base mb-10"},{default:s(()=>[u("div",te,[n(L,{label:"نوع استثناء"},{default:s(()=>[n(X,{value:i.value,"onUpdate:value":t[0]||(t[0]=a=>i.value=a),onChange:k},{default:s(()=>[(f(),c(v,null,F(S,(a,g)=>n(o,{key:g,value:Number(g)},{default:s(()=>[V(r(a),1)]),_:2},1032,["value"])),64))]),_:1},8,["value"])]),_:1})]),i.value===1?(f(),c(v,{key:0},[u("h6",null,"تعداد "+r(l.value.length)+" محصول انتخاب شده است",1),n(w,{ref:"tblProducts",modelValue:l.value,"onUpdate:modelValue":t[1]||(t[1]=a=>l.value=a),model:h(j),"has-selection":!0,"mobile-cards":""},{image:s(({record:a})=>[u("img",{width:"90px",height:"90px",style:{"object-fit":"scale-down"},src:a.thumb&&a.thumb.full?a.thumb.full:oe},null,8,le)]),_:1},8,["modelValue","model"]),u("h6",null,"تعداد "+r(l.value.length)+" محصول انتخاب شده است",1)],64)):x("",!0),i.value===2?(f(),c(v,{key:1},[u("h6",null,"تعداد "+r(l.value.length)+" دسته بندی انتخاب شده است",1),n(w,{ref:"tblCategory",modelValue:l.value,"onUpdate:modelValue":t[2]||(t[2]=a=>l.value=a),model:h(A),"has-selection":!0,"mobile-cards":""},null,8,["modelValue","model"]),u("h6",null,"تعداد "+r(l.value.length)+" دسته بندی انتخاب شده است",1)],64)):x("",!0),i.value===3?(f(),c(v,{key:2},[u("h6",null,"تعداد "+r(l.value.length)+" مشتری انتخاب شده است",1),n(w,{ref:"tblCustomer",modelValue:l.value,"onUpdate:modelValue":t[3]||(t[3]=a=>l.value=a),model:h(J),"has-selection":!0,"mobile-cards":""},null,8,["modelValue","model"]),u("h6",null,"تعداد "+r(l.value.length)+" مشتری انتخاب شده است",1)],64)):x("",!0),i.value===4?(f(),c(v,{key:3},[u("h6",null,"تعداد "+r(l.value.length)+" برند انتخاب شده است",1),n(w,{ref:"tblBrand",modelValue:l.value,"onUpdate:modelValue":t[4]||(t[4]=a=>l.value=a),model:h(M),"has-selection":!0,"mobile-cards":""},null,8,["modelValue","model"]),u("h6",null,"تعداد "+r(l.value.length)+" برند انتخاب شده است",1)],64)):x("",!0),u("div",ae,[n(P,{type:"primary",class:"mr-4 form-submit",onClick:G},{default:s(()=>[...t[6]||(t[6]=[V("ثبت",-1)])]),_:1})])]),_:1})]),_:1})]),_:1},8,["spinning"]),n(E,{spinning:C.value},{default:s(()=>[n(D,{title:"حذف نوع استثناء"},{default:s(()=>[u("div",ne,[n(L,{label:"نوع"},{default:s(()=>[n(X,{value:T.value,"onUpdate:value":t[5]||(t[5]=a=>T.value=a)},{default:s(()=>[(f(),c(v,null,F(S,(a,g)=>n(o,{key:g,value:Number(g)},{default:s(()=>[V(r(a),1)]),_:2},1032,["value"])),64))]),_:1},8,["value"])]),_:1}),n(O,{title:"آیا مطمئن هستید؟","ok-text":"بله","cancel-text":"خیر",onConfirm:H},{default:s(()=>[n(P,{danger:""},{default:s(()=>[...t[7]||(t[7]=[V("حذف",-1)])]),_:1})]),_:1})])]),_:1})]),_:1},8,["spinning"])])])}}}),fe=Y(se,[["__scopeId","data-v-44cb9944"]]);export{fe as default}; diff --git a/apps/admin-panel/dist/assets/order_item-7Q53VUbN.js b/apps/admin-panel/dist/assets/order_item-CUVkIral.js similarity index 91% rename from apps/admin-panel/dist/assets/order_item-7Q53VUbN.js rename to apps/admin-panel/dist/assets/order_item-CUVkIral.js index 851c7f0..581dff4 100644 --- a/apps/admin-panel/dist/assets/order_item-7Q53VUbN.js +++ b/apps/admin-panel/dist/assets/order_item-CUVkIral.js @@ -1 +1 @@ -import{D as x}from"./DateInput-DgUF2he7.js";import{j as z}from"./filters-BPYO-DKN.js";import{d as B,x as D,b as f,c as e,w as t,m as i,y as b,r as n,z as E,o as v,p as h,f as d,t as u,i as w,F,h as O,J as S,_ as T}from"./index-CJij4X3l.js";import"./index-CKg-8s_Z.js";const $={id:"page-user-list"},q={class:"grid-4 filter-grid"},J={key:0,class:"summary"},M=B({__name:"order_item",setup(A){const _=i(!1),g=i([]),r=i(void 0),l=E({start_date:void 0,end_date:void 0}),I=[{title:"شماره سفارش",dataIndex:"order_number"},{title:"مشتری",dataIndex:"customer"},{title:"محصول",dataIndex:"product"},{title:"تنوع",dataIndex:"variant"},{title:"تعداد",dataIndex:"qty"},{title:"وزن واحد",dataIndex:"w"},{title:"وزن کل",dataIndex:"total_w"},{title:"تاریخ",dataIndex:"caj"}];async function y(){try{_.value=!0;const{data:o}=await b.get("report/order-item",{params:l});g.value=o.rows,r.value=o.summary}catch(o){console.log(o)}finally{_.value=!1}}const m=i(!1);async function V(){try{m.value=!0;const{data:o}=await b.get("admin/report/order-items",{params:l,responseType:"blob"}),a=URL.createObjectURL(o),s=document.createElement("a");s.href=a,s.download=`report-${l.start_date??"all"}-${l.end_date??"all"}.xlsx`,s.click(),URL.revokeObjectURL(a)}catch(o){console.log(o),S.error("خطا در دریافت فایل")}finally{m.value=!1}}return D(y),(o,a)=>{const s=n("a-button"),k=n("a-space"),j=n("a-form-item"),C=n("a-form"),p=n("a-tag"),U=n("a-table"),L=n("a-card"),N=n("a-spin");return v(),f("div",$,[e(N,{spinning:_.value},{default:t(()=>[e(L,{title:"گزارش تجمیعی سفارشات و اسناد مالی",class:"page-card table-scroll"},{default:t(()=>[e(C,{layout:"vertical"},{default:t(()=>[h("div",q,[e(x,{modelValue:l.start_date,"onUpdate:modelValue":a[0]||(a[0]=c=>l.start_date=c),label:"از تاریخ"},null,8,["modelValue"]),e(x,{modelValue:l.end_date,"onUpdate:modelValue":a[1]||(a[1]=c=>l.end_date=c),label:"تا تاریخ"},null,8,["modelValue"]),e(j,{label:" "},{default:t(()=>[e(k,null,{default:t(()=>[e(s,{type:"primary",onClick:y},{default:t(()=>[...a[2]||(a[2]=[d("اعمال",-1)])]),_:1}),e(s,{loading:m.value,onClick:V},{default:t(()=>[...a[3]||(a[3]=[d("دریافت فایل اکسل",-1)])]),_:1},8,["loading"])]),_:1})]),_:1})])]),_:1}),r.value?(v(),f("div",J,[e(p,{color:"blue"},{default:t(()=>[d("تعداد سفارش: "+u(r.value.order_count),1)]),_:1}),e(p,{color:"blue"},{default:t(()=>[d("تعداد آیتم: "+u(r.value.item_count),1)]),_:1}),e(p,{color:"green"},{default:t(()=>[d("مجموع وزن: "+u(r.value.total_weight)+" گرم",1)]),_:1})])):w("",!0),e(U,{class:"mt-4",size:"small","data-source":g.value,columns:I,pagination:{pageSize:20},"row-key":"order_id"},{bodyCell:t(({column:c,record:R})=>[c.dataIndex==="caj"?(v(),f(F,{key:0},[d(u(O(z)(R.caj)),1)],64)):w("",!0)]),_:1},8,["data-source"])]),_:1})]),_:1},8,["spinning"])])}}}),Q=T(M,[["__scopeId","data-v-44526675"]]);export{Q as default}; +import{D as x}from"./DateInput-0_1fMgrR.js";import{j as z}from"./filters-CoNJlguG.js";import{d as B,x as D,b as f,c as e,w as t,m as i,y as b,r as n,z as E,o as v,p as h,f as d,t as u,i as w,F,h as O,J as S,_ as T}from"./index-CpVArufm.js";import"./index-DjZc5EYL.js";const $={id:"page-user-list"},q={class:"grid-4 filter-grid"},J={key:0,class:"summary"},M=B({__name:"order_item",setup(A){const _=i(!1),g=i([]),r=i(void 0),l=E({start_date:void 0,end_date:void 0}),I=[{title:"شماره سفارش",dataIndex:"order_number"},{title:"مشتری",dataIndex:"customer"},{title:"محصول",dataIndex:"product"},{title:"تنوع",dataIndex:"variant"},{title:"تعداد",dataIndex:"qty"},{title:"وزن واحد",dataIndex:"w"},{title:"وزن کل",dataIndex:"total_w"},{title:"تاریخ",dataIndex:"caj"}];async function y(){try{_.value=!0;const{data:o}=await b.get("report/order-item",{params:l});g.value=o.rows,r.value=o.summary}catch(o){console.log(o)}finally{_.value=!1}}const m=i(!1);async function V(){try{m.value=!0;const{data:o}=await b.get("admin/report/order-items",{params:l,responseType:"blob"}),a=URL.createObjectURL(o),s=document.createElement("a");s.href=a,s.download=`report-${l.start_date??"all"}-${l.end_date??"all"}.xlsx`,s.click(),URL.revokeObjectURL(a)}catch(o){console.log(o),S.error("خطا در دریافت فایل")}finally{m.value=!1}}return D(y),(o,a)=>{const s=n("a-button"),k=n("a-space"),j=n("a-form-item"),C=n("a-form"),p=n("a-tag"),U=n("a-table"),L=n("a-card"),N=n("a-spin");return v(),f("div",$,[e(N,{spinning:_.value},{default:t(()=>[e(L,{title:"گزارش تجمیعی سفارشات و اسناد مالی",class:"page-card table-scroll"},{default:t(()=>[e(C,{layout:"vertical"},{default:t(()=>[h("div",q,[e(x,{modelValue:l.start_date,"onUpdate:modelValue":a[0]||(a[0]=c=>l.start_date=c),label:"از تاریخ"},null,8,["modelValue"]),e(x,{modelValue:l.end_date,"onUpdate:modelValue":a[1]||(a[1]=c=>l.end_date=c),label:"تا تاریخ"},null,8,["modelValue"]),e(j,{label:" "},{default:t(()=>[e(k,null,{default:t(()=>[e(s,{type:"primary",onClick:y},{default:t(()=>[...a[2]||(a[2]=[d("اعمال",-1)])]),_:1}),e(s,{loading:m.value,onClick:V},{default:t(()=>[...a[3]||(a[3]=[d("دریافت فایل اکسل",-1)])]),_:1},8,["loading"])]),_:1})]),_:1})])]),_:1}),r.value?(v(),f("div",J,[e(p,{color:"blue"},{default:t(()=>[d("تعداد سفارش: "+u(r.value.order_count),1)]),_:1}),e(p,{color:"blue"},{default:t(()=>[d("تعداد آیتم: "+u(r.value.item_count),1)]),_:1}),e(p,{color:"green"},{default:t(()=>[d("مجموع وزن: "+u(r.value.total_weight)+" گرم",1)]),_:1})])):w("",!0),e(U,{class:"mt-4",size:"small","data-source":g.value,columns:I,pagination:{pageSize:20},"row-key":"order_id"},{bodyCell:t(({column:c,record:R})=>[c.dataIndex==="caj"?(v(),f(F,{key:0},[d(u(O(z)(R.caj)),1)],64)):w("",!0)]),_:1},8,["data-source"])]),_:1})]),_:1},8,["spinning"])])}}}),Q=T(M,[["__scopeId","data-v-44526675"]]);export{Q as default}; diff --git a/apps/admin-panel/dist/assets/product-C5P80aHW.js b/apps/admin-panel/dist/assets/product-DIBhEedA.js similarity index 89% rename from apps/admin-panel/dist/assets/product-C5P80aHW.js rename to apps/admin-panel/dist/assets/product-DIBhEedA.js index dd3791b..d406706 100644 --- a/apps/admin-panel/dist/assets/product-C5P80aHW.js +++ b/apps/admin-panel/dist/assets/product-DIBhEedA.js @@ -1 +1 @@ -import{D as _}from"./DateInput-DgUF2he7.js";import{d as k,x as C,b as m,c as t,w as o,m as c,y as N,r as a,z,o as p,p as B,f,t as D,i as S,_ as U}from"./index-CJij4X3l.js";import"./index-CKg-8s_Z.js";const E={id:"page-user-list"},M={class:"grid-4 filter-grid"},T={key:0,class:"summary"},h=k({__name:"product",setup(j){const l=c(!1),i=c([]),d=c(void 0),n=z({start_date:void 0,end_date:void 0}),v=[{title:"نام محصول",dataIndex:"title"},{title:"تعداد فروش رفته",dataIndex:"total"},{title:"وزن فروش رفته",dataIndex:"w"},{title:"تعداد سفارش",dataIndex:"order_count"}];async function u(){try{l.value=!0;const{data:s}=await N.get("report/product",{params:n});i.value=s.rows,d.value=s.summary}catch(s){console.log(s)}finally{l.value=!1}}return C(u),(s,e)=>{const g=a("a-button"),y=a("a-form-item"),x=a("a-form"),b=a("a-tag"),V=a("a-table"),w=a("a-card"),I=a("a-spin");return p(),m("div",E,[t(I,{spinning:l.value},{default:o(()=>[t(w,{title:"گزارش محصولات",class:"page-card table-scroll"},{default:o(()=>[t(x,{layout:"vertical"},{default:o(()=>[B("div",M,[t(_,{modelValue:n.start_date,"onUpdate:modelValue":e[0]||(e[0]=r=>n.start_date=r),label:"از تاریخ"},null,8,["modelValue"]),t(_,{modelValue:n.end_date,"onUpdate:modelValue":e[1]||(e[1]=r=>n.end_date=r),label:"تا تاریخ"},null,8,["modelValue"]),t(y,{label:" "},{default:o(()=>[t(g,{type:"primary",onClick:u},{default:o(()=>[...e[2]||(e[2]=[f("اعمال",-1)])]),_:1})]),_:1})])]),_:1}),d.value?(p(),m("div",T,[t(b,{color:"blue"},{default:o(()=>[f("تعداد محصول: "+D(d.value.product_count),1)]),_:1})])):S("",!0),t(V,{class:"mt-4",size:"small","data-source":i.value,columns:v,pagination:{pageSize:20},"row-key":"id"},null,8,["data-source"])]),_:1})]),_:1},8,["spinning"])])}}}),G=U(h,[["__scopeId","data-v-6ed1013a"]]);export{G as default}; +import{D as _}from"./DateInput-0_1fMgrR.js";import{d as k,x as C,b as m,c as t,w as o,m as c,y as N,r as a,z,o as p,p as B,f,t as D,i as S,_ as U}from"./index-CpVArufm.js";import"./index-DjZc5EYL.js";const E={id:"page-user-list"},M={class:"grid-4 filter-grid"},T={key:0,class:"summary"},h=k({__name:"product",setup(j){const l=c(!1),i=c([]),d=c(void 0),n=z({start_date:void 0,end_date:void 0}),v=[{title:"نام محصول",dataIndex:"title"},{title:"تعداد فروش رفته",dataIndex:"total"},{title:"وزن فروش رفته",dataIndex:"w"},{title:"تعداد سفارش",dataIndex:"order_count"}];async function u(){try{l.value=!0;const{data:s}=await N.get("report/product",{params:n});i.value=s.rows,d.value=s.summary}catch(s){console.log(s)}finally{l.value=!1}}return C(u),(s,e)=>{const g=a("a-button"),y=a("a-form-item"),x=a("a-form"),b=a("a-tag"),V=a("a-table"),w=a("a-card"),I=a("a-spin");return p(),m("div",E,[t(I,{spinning:l.value},{default:o(()=>[t(w,{title:"گزارش محصولات",class:"page-card table-scroll"},{default:o(()=>[t(x,{layout:"vertical"},{default:o(()=>[B("div",M,[t(_,{modelValue:n.start_date,"onUpdate:modelValue":e[0]||(e[0]=r=>n.start_date=r),label:"از تاریخ"},null,8,["modelValue"]),t(_,{modelValue:n.end_date,"onUpdate:modelValue":e[1]||(e[1]=r=>n.end_date=r),label:"تا تاریخ"},null,8,["modelValue"]),t(y,{label:" "},{default:o(()=>[t(g,{type:"primary",onClick:u},{default:o(()=>[...e[2]||(e[2]=[f("اعمال",-1)])]),_:1})]),_:1})])]),_:1}),d.value?(p(),m("div",T,[t(b,{color:"blue"},{default:o(()=>[f("تعداد محصول: "+D(d.value.product_count),1)]),_:1})])):S("",!0),t(V,{class:"mt-4",size:"small","data-source":i.value,columns:v,pagination:{pageSize:20},"row-key":"id"},null,8,["data-source"])]),_:1})]),_:1},8,["spinning"])])}}}),G=U(h,[["__scopeId","data-v-6ed1013a"]]);export{G as default}; diff --git a/apps/admin-panel/dist/assets/productListModel-Dqg_dJPi.js b/apps/admin-panel/dist/assets/productListModel-Ht1NntTk.js similarity index 92% rename from apps/admin-panel/dist/assets/productListModel-Dqg_dJPi.js rename to apps/admin-panel/dist/assets/productListModel-Ht1NntTk.js index ea0d32a..bdd2077 100644 --- a/apps/admin-panel/dist/assets/productListModel-Dqg_dJPi.js +++ b/apps/admin-panel/dist/assets/productListModel-Ht1NntTk.js @@ -1 +1 @@ -import{a as o,b as e}from"./model-tqsMDjkK.js";function n(d=!0){const t=new o("admin/products/list","لیست محصولات");return t.add(new e("id","کد").filterNumber()),t.add(new e("ProductImage","تصویر محصول").renderSlot("image").noSort()),t.add(new e("title","نام محصول").filterText()),t.add(new e("brand.title","برند").filterText()),t.add(new e("category.collection.title","دسته بندی").filterText()),t.add(new e("product_code","کد محصول").filterText()),d&&t.add(new e("show_type","نوع نمایش").filterSelect({1:"سایت",2:"گوشی",3:"سایت و گوشی"}).renderSlot("show_type")),t.add(new e("accounting_stock","حسابداری / نمایش").renderSlot("accounting").noSort()),t.add(new e("action","عملیات").renderSlot("op").noSort()),t}export{n as b}; +import{a as o,b as e}from"./model-mwiDYd1J.js";function n(d=!0){const t=new o("admin/products/list","لیست محصولات");return t.add(new e("id","کد").filterNumber()),t.add(new e("ProductImage","تصویر محصول").renderSlot("image").noSort()),t.add(new e("title","نام محصول").filterText()),t.add(new e("brand.title","برند").filterText()),t.add(new e("category.collection.title","دسته بندی").filterText()),t.add(new e("product_code","کد محصول").filterText()),d&&t.add(new e("show_type","نوع نمایش").filterSelect({1:"سایت",2:"گوشی",3:"سایت و گوشی"}).renderSlot("show_type")),t.add(new e("accounting_stock","حسابداری / نمایش").renderSlot("accounting").noSort()),t.add(new e("action","عملیات").renderSlot("op").noSort()),t}export{n as b}; diff --git a/apps/admin-panel/dist/assets/promotion_add_edit-BRbwsORn.js b/apps/admin-panel/dist/assets/promotion_add_edit-BRbwsORn.js new file mode 100644 index 0000000..4503874 --- /dev/null +++ b/apps/admin-panel/dist/assets/promotion_add_edit-BRbwsORn.js @@ -0,0 +1 @@ +import{_ as o}from"./promotion_add_edit.vue_vue_type_script_setup_true_lang-DaCHq3Nj.js";import"./PromotionForm-B6PGO9Ts.js";import"./index-CpVArufm.js";import"./select--BgT6D7O.js";import"./BaseFormModal.vue_vue_type_style_index_0_lang-B4iVMhZt.js";export{o as default}; diff --git a/apps/admin-panel/dist/assets/promotion_add_edit-jiuK4lfb.js b/apps/admin-panel/dist/assets/promotion_add_edit-jiuK4lfb.js deleted file mode 100644 index c0254de..0000000 --- a/apps/admin-panel/dist/assets/promotion_add_edit-jiuK4lfb.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as o}from"./promotion_add_edit.vue_vue_type_script_setup_true_lang-ChhS006A.js";import"./PromotionForm-DL-pNvym.js";import"./index-CJij4X3l.js";import"./BaseFormModal.vue_vue_type_style_index_0_lang-YLHOAWTN.js";export{o as default}; diff --git a/apps/admin-panel/dist/assets/promotion_add_edit.vue_vue_type_script_setup_true_lang-ChhS006A.js b/apps/admin-panel/dist/assets/promotion_add_edit.vue_vue_type_script_setup_true_lang-DaCHq3Nj.js similarity index 72% rename from apps/admin-panel/dist/assets/promotion_add_edit.vue_vue_type_script_setup_true_lang-ChhS006A.js rename to apps/admin-panel/dist/assets/promotion_add_edit.vue_vue_type_script_setup_true_lang-DaCHq3Nj.js index 8b60c2b..caf29d1 100644 --- a/apps/admin-panel/dist/assets/promotion_add_edit.vue_vue_type_script_setup_true_lang-ChhS006A.js +++ b/apps/admin-panel/dist/assets/promotion_add_edit.vue_vue_type_script_setup_true_lang-DaCHq3Nj.js @@ -1 +1 @@ -import{P as p}from"./PromotionForm-DL-pNvym.js";import{d as s,a as i,o as r}from"./index-CJij4X3l.js";const d=s({__name:"promotion_add_edit",props:{open:{type:Boolean},id:{}},emits:["update:open","success"],setup(o){return(n,e)=>(r(),i(p,{title:"تعریف تخفیف","allow-customer-scope":!0,open:o.open,id:o.id,"onUpdate:open":e[0]||(e[0]=t=>n.$emit("update:open",t)),onSuccess:e[1]||(e[1]=t=>n.$emit("success"))},null,8,["open","id"]))}});export{d as _}; +import{P as p}from"./PromotionForm-B6PGO9Ts.js";import{d as s,a as i,o as r}from"./index-CpVArufm.js";const d=s({__name:"promotion_add_edit",props:{open:{type:Boolean},id:{}},emits:["update:open","success"],setup(o){return(n,e)=>(r(),i(p,{title:"تعریف تخفیف","allow-customer-scope":!0,open:o.open,id:o.id,"onUpdate:open":e[0]||(e[0]=t=>n.$emit("update:open",t)),onSuccess:e[1]||(e[1]=t=>n.$emit("success"))},null,8,["open","id"]))}});export{d as _}; diff --git a/apps/admin-panel/dist/assets/promotion_list-BpomTa7C.js b/apps/admin-panel/dist/assets/promotion_list-BpomTa7C.js new file mode 100644 index 0000000..bcbdc04 --- /dev/null +++ b/apps/admin-panel/dist/assets/promotion_list-BpomTa7C.js @@ -0,0 +1 @@ +import{a as O,b as s,X as U}from"./model-mwiDYd1J.js";import{_ as C}from"./ListPageHeader.vue_vue_type_script_setup_true_lang-YlEXklTr.js";import{_ as I}from"./promotion_add_edit.vue_vue_type_script_setup_true_lang-DaCHq3Nj.js";import{_ as G}from"./promotion_tak_add_edit.vue_vue_type_script_setup_true_lang-BukTCIkf.js";import{d as J,u as L,b as M,c as u,w as n,r as w,o as r,h as p,a as l,E as R,i as b,G as q,p as A,f as g,t as D,m as x,y as z,J as B,_ as F}from"./index-CpVArufm.js";import{j as E}from"./filters-CoNJlguG.js";import"./SettingOutlined-E4OknxY2.js";import"./PromotionForm-B6PGO9Ts.js";import"./select--BgT6D7O.js";import"./BaseFormModal.vue_vue_type_style_index_0_lang-B4iVMhZt.js";import"./index-DjZc5EYL.js";function H(){const a=new O("admin/promotions/list","لیست تخفیف ها");return a.add(new s("id","کد").filterNumber()),a.add(new s("title","نام پروموشن").filterText()),a.add(new s("promotion_type_str","نوع پروموشن").noSort()),a.add(new s("platform","پلتفرم نمایش ").noSort()),a.add(new s("status","وضعیت").renderSlot("sts").noSort()),a.add(new s("start","تاریخ شروع").renderSlot("startDate").noSort()),a.add(new s("end","تاریخ پایان ").renderSlot("endDate").noSort()),a.add(new s("action","عملیات").renderSlot("op").noSort()),a}const K={id:"page-user-list"},Q={class:"list-page-header-row"},W=J({__name:"promotion_list",setup(a){const v=L(),k=o=>!!v.hasPermission(o),N=H(),y=x(null),d=x(!1),m=x(void 0),S=x(void 0);function $(o){S.value=o,m.value=void 0,d.value=!0}function V(o){return v.isSuperAdmin&&k("offers.list.tak.edit")&&o.type_customer===1||k("offers.list.edit")&&o.type_customer===2}function P(o){return v.isSuperAdmin&&k("offers.list.tak.remove")&&o.type_customer===1||k("offers.list.remove")&&o.type_customer===2}function T(o){S.value=o.type_customer===1?"tak":"omde",m.value=o.id,d.value=!0}async function X(o){var e,f,c;try{await z.delete(`major/promotion/${o.id}`),B.success("تخفیف حذف شد"),(e=y.value)==null||e.fetch()}catch(_){B.error(((c=(f=_==null?void 0:_.response)==null?void 0:f.data)==null?void 0:c.message)??"خطا در حذف تخفیف")}}return(o,e)=>{const f=w("a-tag"),c=w("a-tooltip"),_=w("a-popconfirm"),j=w("a-card");return r(),M("div",K,[u(j,{title:"لیست تخفیف ها",class:"page-card"},{default:n(()=>[u(U,{ref_key:"tbl",ref:y,model:p(N),"mobile-cards":""},{add:n(()=>[A("div",Q,[u(C,{rid:"offers.create","add-label":"افزودن تخفیف عمده",onAdd:e[0]||(e[0]=t=>$("omde"))}),p(v).isSuperAdmin?(r(),l(C,{key:0,rid:"offers.create.tak","add-label":"افزودن تخفیف تک",onAdd:e[1]||(e[1]=t=>$("tak"))})):b("",!0)])]),sts:n(({record:t})=>[t.status===1?(r(),l(f,{key:0,color:"green"},{default:n(()=>[...e[6]||(e[6]=[g("فعال",-1)])]),_:1})):(r(),l(f,{key:1,color:"red"},{default:n(()=>[...e[7]||(e[7]=[g("غیر فعال",-1)])]),_:1}))]),startDate:n(({text:t})=>[g(D(t?p(E)(t):"-"),1)]),endDate:n(({text:t})=>[g(D(t?p(E)(t):"-"),1)]),op:n(({record:t})=>[V(t)?(r(),l(c,{key:0,title:"ویرایش"},{default:n(()=>[u(p(R),{class:"cursor-pointer mx-1 text-primary",onClick:i=>T(t)},null,8,["onClick"])]),_:2},1024)):b("",!0),P(t)?(r(),l(c,{key:1,title:"حذف"},{default:n(()=>[u(_,{placement:"top","ok-text":"بله","cancel-text":"خیر",onConfirm:i=>X(t)},{title:n(()=>[...e[8]||(e[8]=[A("p",null,"آیا مطمئن به حذف تخفیف مورد نظر هستید ؟",-1)])]),default:n(()=>[u(p(q),{class:"cursor-pointer mx-1 text-danger"})]),_:1},8,["onConfirm"])]),_:2},1024)):b("",!0)]),_:1},8,["model"]),S.value==="omde"?(r(),l(I,{key:m.value??"new",open:d.value,id:m.value,"onUpdate:open":e[2]||(e[2]=t=>d.value=t),onSuccess:e[3]||(e[3]=t=>{var i;return(i=y.value)==null?void 0:i.fetch()})},null,8,["open","id"])):S.value==="tak"?(r(),l(G,{key:m.value??"new",open:d.value,id:m.value,"onUpdate:open":e[4]||(e[4]=t=>d.value=t),onSuccess:e[5]||(e[5]=t=>{var i;return(i=y.value)==null?void 0:i.fetch()})},null,8,["open","id"])):b("",!0)]),_:1})])}}}),le=F(W,[["__scopeId","data-v-25a20ef5"]]);export{le as default}; diff --git a/apps/admin-panel/dist/assets/promotion_list-RkmZV5Nb.js b/apps/admin-panel/dist/assets/promotion_list-RkmZV5Nb.js deleted file mode 100644 index 1a467de..0000000 --- a/apps/admin-panel/dist/assets/promotion_list-RkmZV5Nb.js +++ /dev/null @@ -1 +0,0 @@ -import{a as O,b as s,X as U}from"./model-tqsMDjkK.js";import{_ as C}from"./ListPageHeader.vue_vue_type_script_setup_true_lang-D07Lc14a.js";import{_ as I}from"./promotion_add_edit.vue_vue_type_script_setup_true_lang-ChhS006A.js";import{_ as G}from"./promotion_tak_add_edit.vue_vue_type_script_setup_true_lang-Dr6DW2X2.js";import{d as J,u as L,b as M,c as m,w as n,r as w,o as r,h as p,a as l,E as R,i as b,G as q,p as A,f as g,t as D,m as x,y as z,J as B,_ as F}from"./index-CJij4X3l.js";import{j as E}from"./filters-BPYO-DKN.js";import"./SettingOutlined-BJxMXy1I.js";import"./PromotionForm-DL-pNvym.js";import"./BaseFormModal.vue_vue_type_style_index_0_lang-YLHOAWTN.js";import"./index-CKg-8s_Z.js";function H(){const a=new O("admin/promotions/list","لیست تخفیف ها");return a.add(new s("id","کد").filterNumber()),a.add(new s("title","نام پروموشن").filterText()),a.add(new s("promotion_type_str","نوع پروموشن").noSort()),a.add(new s("platform","پلتفرم نمایش ").noSort()),a.add(new s("status","وضعیت").renderSlot("sts").noSort()),a.add(new s("start","تاریخ شروع").renderSlot("startDate").noSort()),a.add(new s("end","تاریخ پایان ").renderSlot("endDate").noSort()),a.add(new s("action","عملیات").renderSlot("op").noSort()),a}const K={id:"page-user-list"},Q={class:"list-page-header-row"},W=J({__name:"promotion_list",setup(a){const v=L(),k=o=>!!v.hasPermission(o),N=H(),y=x(null),d=x(!1),u=x(void 0),S=x(void 0);function $(o){S.value=o,u.value=void 0,d.value=!0}function V(o){return v.isSuperAdmin&&k("offers.list.tak.edit")&&o.type_customer===1||k("offers.list.edit")&&o.type_customer===2}function P(o){return v.isSuperAdmin&&k("offers.list.tak.remove")&&o.type_customer===1||k("offers.list.remove")&&o.type_customer===2}function T(o){S.value=o.type_customer===1?"tak":"omde",u.value=o.id,d.value=!0}async function X(o){var e,f,c;try{await z.delete(`major/promotion/${o.id}`),B.success("تخفیف حذف شد"),(e=y.value)==null||e.fetch()}catch(_){B.error(((c=(f=_==null?void 0:_.response)==null?void 0:f.data)==null?void 0:c.message)??"خطا در حذف تخفیف")}}return(o,e)=>{const f=w("a-tag"),c=w("a-tooltip"),_=w("a-popconfirm"),j=w("a-card");return r(),M("div",K,[m(j,{title:"لیست تخفیف ها",class:"page-card"},{default:n(()=>[m(U,{ref_key:"tbl",ref:y,model:p(N),"mobile-cards":""},{add:n(()=>[A("div",Q,[m(C,{rid:"offers.create","add-label":"افزودن تخفیف عمده",onAdd:e[0]||(e[0]=t=>$("omde"))}),p(v).isSuperAdmin?(r(),l(C,{key:0,rid:"offers.create.tak","add-label":"افزودن تخفیف تک",onAdd:e[1]||(e[1]=t=>$("tak"))})):b("",!0)])]),sts:n(({record:t})=>[t.status===1?(r(),l(f,{key:0,color:"green"},{default:n(()=>[...e[6]||(e[6]=[g("فعال",-1)])]),_:1})):(r(),l(f,{key:1,color:"red"},{default:n(()=>[...e[7]||(e[7]=[g("غیر فعال",-1)])]),_:1}))]),startDate:n(({text:t})=>[g(D(t?p(E)(t):"-"),1)]),endDate:n(({text:t})=>[g(D(t?p(E)(t):"-"),1)]),op:n(({record:t})=>[V(t)?(r(),l(c,{key:0,title:"ویرایش"},{default:n(()=>[m(p(R),{class:"cursor-pointer mx-1 text-primary",onClick:i=>T(t)},null,8,["onClick"])]),_:2},1024)):b("",!0),P(t)?(r(),l(c,{key:1,title:"حذف"},{default:n(()=>[m(_,{placement:"top","ok-text":"بله","cancel-text":"خیر",onConfirm:i=>X(t)},{title:n(()=>[...e[8]||(e[8]=[A("p",null,"آیا مطمئن به حذف تخفیف مورد نظر هستید ؟",-1)])]),default:n(()=>[m(p(q),{class:"cursor-pointer mx-1 text-danger"})]),_:1},8,["onConfirm"])]),_:2},1024)):b("",!0)]),_:1},8,["model"]),S.value==="omde"?(r(),l(I,{key:u.value??"new",open:d.value,id:u.value,"onUpdate:open":e[2]||(e[2]=t=>d.value=t),onSuccess:e[3]||(e[3]=t=>{var i;return(i=y.value)==null?void 0:i.fetch()})},null,8,["open","id"])):S.value==="tak"?(r(),l(G,{key:u.value??"new",open:d.value,id:u.value,"onUpdate:open":e[4]||(e[4]=t=>d.value=t),onSuccess:e[5]||(e[5]=t=>{var i;return(i=y.value)==null?void 0:i.fetch()})},null,8,["open","id"])):b("",!0)]),_:1})])}}}),ie=F(W,[["__scopeId","data-v-25a20ef5"]]);export{ie as default}; diff --git a/apps/admin-panel/dist/assets/promotion_tak_add_edit-Bc-tQJWp.js b/apps/admin-panel/dist/assets/promotion_tak_add_edit-Bc-tQJWp.js new file mode 100644 index 0000000..c8638fb --- /dev/null +++ b/apps/admin-panel/dist/assets/promotion_tak_add_edit-Bc-tQJWp.js @@ -0,0 +1 @@ +import{_ as o}from"./promotion_tak_add_edit.vue_vue_type_script_setup_true_lang-BukTCIkf.js";import"./PromotionForm-B6PGO9Ts.js";import"./index-CpVArufm.js";import"./select--BgT6D7O.js";import"./BaseFormModal.vue_vue_type_style_index_0_lang-B4iVMhZt.js";export{o as default}; diff --git a/apps/admin-panel/dist/assets/promotion_tak_add_edit-DA_k0I4c.js b/apps/admin-panel/dist/assets/promotion_tak_add_edit-DA_k0I4c.js deleted file mode 100644 index aa6c994..0000000 --- a/apps/admin-panel/dist/assets/promotion_tak_add_edit-DA_k0I4c.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as o}from"./promotion_tak_add_edit.vue_vue_type_script_setup_true_lang-Dr6DW2X2.js";import"./PromotionForm-DL-pNvym.js";import"./index-CJij4X3l.js";import"./BaseFormModal.vue_vue_type_style_index_0_lang-YLHOAWTN.js";export{o as default}; diff --git a/apps/admin-panel/dist/assets/promotion_tak_add_edit.vue_vue_type_script_setup_true_lang-Dr6DW2X2.js b/apps/admin-panel/dist/assets/promotion_tak_add_edit.vue_vue_type_script_setup_true_lang-BukTCIkf.js similarity index 72% rename from apps/admin-panel/dist/assets/promotion_tak_add_edit.vue_vue_type_script_setup_true_lang-Dr6DW2X2.js rename to apps/admin-panel/dist/assets/promotion_tak_add_edit.vue_vue_type_script_setup_true_lang-BukTCIkf.js index 35682c6..62aea1d 100644 --- a/apps/admin-panel/dist/assets/promotion_tak_add_edit.vue_vue_type_script_setup_true_lang-Dr6DW2X2.js +++ b/apps/admin-panel/dist/assets/promotion_tak_add_edit.vue_vue_type_script_setup_true_lang-BukTCIkf.js @@ -1 +1 @@ -import{P as s}from"./PromotionForm-DL-pNvym.js";import{d as p,a as i,o as a}from"./index-CJij4X3l.js";const d=p({__name:"promotion_tak_add_edit",props:{open:{type:Boolean},id:{}},emits:["update:open","success"],setup(o){return(n,e)=>(a(),i(s,{title:"تعریف تخفیف تک","allow-customer-scope":!1,open:o.open,id:o.id,"onUpdate:open":e[0]||(e[0]=t=>n.$emit("update:open",t)),onSuccess:e[1]||(e[1]=t=>n.$emit("success"))},null,8,["open","id"]))}});export{d as _}; +import{P as s}from"./PromotionForm-B6PGO9Ts.js";import{d as p,a as i,o as a}from"./index-CpVArufm.js";const d=p({__name:"promotion_tak_add_edit",props:{open:{type:Boolean},id:{}},emits:["update:open","success"],setup(o){return(n,e)=>(a(),i(s,{title:"تعریف تخفیف تک","allow-customer-scope":!1,open:o.open,id:o.id,"onUpdate:open":e[0]||(e[0]=t=>n.$emit("update:open",t)),onSuccess:e[1]||(e[1]=t=>n.$emit("success"))},null,8,["open","id"]))}});export{d as _}; diff --git a/apps/admin-panel/dist/assets/reg-CieCn523.js b/apps/admin-panel/dist/assets/reg-vVyzwPVS.js similarity index 97% rename from apps/admin-panel/dist/assets/reg-CieCn523.js rename to apps/admin-panel/dist/assets/reg-vVyzwPVS.js index 3f08081..c05d222 100644 --- a/apps/admin-panel/dist/assets/reg-CieCn523.js +++ b/apps/admin-panel/dist/assets/reg-vVyzwPVS.js @@ -1 +1 @@ -import{d as y,b as x,c as l,w as s,m as z,r as m,o as U,H as k,p as w,f as h,z as b,y as C,J as c,_ as E}from"./index-CJij4X3l.js";const j={class:"reg-page"},B={class:"grid-3"},N=y({__name:"reg",setup(O){const i=z(!1),e=b({fname:"",lname:"",mobile:"",store_name:"",phone:"",pasazh_name:"",zone:"",address:""}),n=b({});async function _(){var f,a,u,r,d,p;if(Object.keys(n).forEach(o=>delete n[o]),e.fname||(n.fname="لطفا نام را وارد کنید"),e.lname||(n.lname="لطفا نام خانوادگی را وارد کنید"),e.mobile||(n.mobile="لطفا شماره تلفن همراه را وارد کنید"),!Object.keys(n).length)try{i.value=!0,await C.post("customer/create",{...e,name:`${e.fname} ${e.lname}`.trim()}),c.success("اطلاعات با موفقیت ثبت شد."),Object.keys(e).forEach(o=>e[o]="")}catch(o){const v=(r=(u=(a=(f=o==null?void 0:o.response)==null?void 0:f.data)==null?void 0:a.errors)==null?void 0:u.mobile)==null?void 0:r[0];c.error(v??((p=(d=o==null?void 0:o.response)==null?void 0:d.data)==null?void 0:p.message)??"خطا در ثبت اطلاعات.")}finally{i.value=!1}}return(f,a)=>{const u=m("a-input"),r=m("a-form-item"),d=m("a-textarea"),p=m("a-button"),o=m("a-form"),v=m("a-card"),g=m("a-spin");return U(),x("div",j,[l(g,{spinning:i.value},{default:s(()=>[l(v,{title:"ثبت مشتری جدید (اطلاعات فروشنده)",class:"reg-card"},{default:s(()=>[l(o,{layout:"vertical",onSubmit:k(_,["prevent"])},{default:s(()=>[w("div",B,[l(r,{label:"نام ","validate-status":n.fname?"error":"",help:n.fname},{default:s(()=>[l(u,{value:e.fname,"onUpdate:value":a[0]||(a[0]=t=>e.fname=t)},null,8,["value"])]),_:1},8,["validate-status","help"]),l(r,{label:"نام خانوادگی","validate-status":n.lname?"error":"",help:n.lname},{default:s(()=>[l(u,{value:e.lname,"onUpdate:value":a[1]||(a[1]=t=>e.lname=t)},null,8,["value"])]),_:1},8,["validate-status","help"]),l(r,{label:"شماره تلفن همراه","validate-status":n.mobile?"error":"",help:n.mobile},{default:s(()=>[l(u,{value:e.mobile,"onUpdate:value":a[2]||(a[2]=t=>e.mobile=t)},null,8,["value"])]),_:1},8,["validate-status","help"]),l(r,{label:"نام مغازه"},{default:s(()=>[l(u,{value:e.store_name,"onUpdate:value":a[3]||(a[3]=t=>e.store_name=t)},null,8,["value"])]),_:1}),l(r,{label:"تلفن"},{default:s(()=>[l(u,{value:e.phone,"onUpdate:value":a[4]||(a[4]=t=>e.phone=t)},null,8,["value"])]),_:1}),l(r,{label:"نام پاساژ"},{default:s(()=>[l(u,{value:e.pasazh_name,"onUpdate:value":a[5]||(a[5]=t=>e.pasazh_name=t)},null,8,["value"])]),_:1}),l(r,{label:"منطقه"},{default:s(()=>[l(u,{value:e.zone,"onUpdate:value":a[6]||(a[6]=t=>e.zone=t)},null,8,["value"])]),_:1})]),l(r,{label:"آدرس"},{default:s(()=>[l(d,{value:e.address,"onUpdate:value":a[7]||(a[7]=t=>e.address=t),"auto-size":{minRows:2,maxRows:4}},null,8,["value"])]),_:1}),l(p,{type:"primary",size:"large",loading:i.value,onClick:_},{default:s(()=>[...a[8]||(a[8]=[h(" ثبت ",-1)])]),_:1},8,["loading"])]),_:1})]),_:1})]),_:1},8,["spinning"])])}}}),R=E(N,[["__scopeId","data-v-42a558f2"]]);export{R as default}; +import{d as y,b as x,c as l,w as s,m as z,r as m,o as U,H as k,p as w,f as h,z as b,y as C,J as c,_ as E}from"./index-CpVArufm.js";const j={class:"reg-page"},B={class:"grid-3"},N=y({__name:"reg",setup(O){const i=z(!1),e=b({fname:"",lname:"",mobile:"",store_name:"",phone:"",pasazh_name:"",zone:"",address:""}),n=b({});async function _(){var f,a,u,r,d,p;if(Object.keys(n).forEach(o=>delete n[o]),e.fname||(n.fname="لطفا نام را وارد کنید"),e.lname||(n.lname="لطفا نام خانوادگی را وارد کنید"),e.mobile||(n.mobile="لطفا شماره تلفن همراه را وارد کنید"),!Object.keys(n).length)try{i.value=!0,await C.post("customer/create",{...e,name:`${e.fname} ${e.lname}`.trim()}),c.success("اطلاعات با موفقیت ثبت شد."),Object.keys(e).forEach(o=>e[o]="")}catch(o){const v=(r=(u=(a=(f=o==null?void 0:o.response)==null?void 0:f.data)==null?void 0:a.errors)==null?void 0:u.mobile)==null?void 0:r[0];c.error(v??((p=(d=o==null?void 0:o.response)==null?void 0:d.data)==null?void 0:p.message)??"خطا در ثبت اطلاعات.")}finally{i.value=!1}}return(f,a)=>{const u=m("a-input"),r=m("a-form-item"),d=m("a-textarea"),p=m("a-button"),o=m("a-form"),v=m("a-card"),g=m("a-spin");return U(),x("div",j,[l(g,{spinning:i.value},{default:s(()=>[l(v,{title:"ثبت مشتری جدید (اطلاعات فروشنده)",class:"reg-card"},{default:s(()=>[l(o,{layout:"vertical",onSubmit:k(_,["prevent"])},{default:s(()=>[w("div",B,[l(r,{label:"نام ","validate-status":n.fname?"error":"",help:n.fname},{default:s(()=>[l(u,{value:e.fname,"onUpdate:value":a[0]||(a[0]=t=>e.fname=t)},null,8,["value"])]),_:1},8,["validate-status","help"]),l(r,{label:"نام خانوادگی","validate-status":n.lname?"error":"",help:n.lname},{default:s(()=>[l(u,{value:e.lname,"onUpdate:value":a[1]||(a[1]=t=>e.lname=t)},null,8,["value"])]),_:1},8,["validate-status","help"]),l(r,{label:"شماره تلفن همراه","validate-status":n.mobile?"error":"",help:n.mobile},{default:s(()=>[l(u,{value:e.mobile,"onUpdate:value":a[2]||(a[2]=t=>e.mobile=t)},null,8,["value"])]),_:1},8,["validate-status","help"]),l(r,{label:"نام مغازه"},{default:s(()=>[l(u,{value:e.store_name,"onUpdate:value":a[3]||(a[3]=t=>e.store_name=t)},null,8,["value"])]),_:1}),l(r,{label:"تلفن"},{default:s(()=>[l(u,{value:e.phone,"onUpdate:value":a[4]||(a[4]=t=>e.phone=t)},null,8,["value"])]),_:1}),l(r,{label:"نام پاساژ"},{default:s(()=>[l(u,{value:e.pasazh_name,"onUpdate:value":a[5]||(a[5]=t=>e.pasazh_name=t)},null,8,["value"])]),_:1}),l(r,{label:"منطقه"},{default:s(()=>[l(u,{value:e.zone,"onUpdate:value":a[6]||(a[6]=t=>e.zone=t)},null,8,["value"])]),_:1})]),l(r,{label:"آدرس"},{default:s(()=>[l(d,{value:e.address,"onUpdate:value":a[7]||(a[7]=t=>e.address=t),"auto-size":{minRows:2,maxRows:4}},null,8,["value"])]),_:1}),l(p,{type:"primary",size:"large",loading:i.value,onClick:_},{default:s(()=>[...a[8]||(a[8]=[h(" ثبت ",-1)])]),_:1},8,["loading"])]),_:1})]),_:1})]),_:1},8,["spinning"])])}}}),R=E(N,[["__scopeId","data-v-42a558f2"]]);export{R as default}; diff --git a/apps/admin-panel/dist/assets/report-BZwqp4wm.js b/apps/admin-panel/dist/assets/report-BNLBN5x0.js similarity index 91% rename from apps/admin-panel/dist/assets/report-BZwqp4wm.js rename to apps/admin-panel/dist/assets/report-BNLBN5x0.js index 0724d2a..d9f2825 100644 --- a/apps/admin-panel/dist/assets/report-BZwqp4wm.js +++ b/apps/admin-panel/dist/assets/report-BNLBN5x0.js @@ -1 +1 @@ -import{d,x as i,y as p,a as r,w as m,m as u,r as n,o as a,b as s,F as k,e as y,t as f,_ as h}from"./index-CJij4X3l.js";const g={key:1,class:"links"},v=["href"],x=d({__name:"report",setup(b){const t=u([]);return i(async()=>{try{const{data:e}=await p.get("dashboard/link");t.value=Array.isArray(e)?e:[]}catch(e){console.log(e)}}),(e,w)=>{const c=n("a-empty"),l=n("a-card");return a(),r(l,{title:"مدیریت گزارشات",class:"page-card"},{default:m(()=>[t.value.length===0?(a(),r(c,{key:0,description:"هنوز لینکی تعریف نشده است"})):(a(),s("div",g,[(a(!0),s(k,null,y(t.value,(o,_)=>(a(),s("a",{key:_,href:o.url,target:"_blank",class:"link-card"},f(o.title),9,v))),128))]))]),_:1})}}}),C=h(x,[["__scopeId","data-v-e88c54db"]]);export{C as default}; +import{d,x as i,y as p,a as r,w as m,m as u,r as n,o as a,b as s,F as k,e as y,t as f,_ as h}from"./index-CpVArufm.js";const g={key:1,class:"links"},v=["href"],x=d({__name:"report",setup(b){const t=u([]);return i(async()=>{try{const{data:e}=await p.get("dashboard/link");t.value=Array.isArray(e)?e:[]}catch(e){console.log(e)}}),(e,w)=>{const c=n("a-empty"),l=n("a-card");return a(),r(l,{title:"مدیریت گزارشات",class:"page-card"},{default:m(()=>[t.value.length===0?(a(),r(c,{key:0,description:"هنوز لینکی تعریف نشده است"})):(a(),s("div",g,[(a(!0),s(k,null,y(t.value,(o,_)=>(a(),s("a",{key:_,href:o.url,target:"_blank",class:"link-card"},f(o.title),9,v))),128))]))]),_:1})}}}),C=h(x,[["__scopeId","data-v-e88c54db"]]);export{C as default}; diff --git a/apps/admin-panel/dist/assets/select--BgT6D7O.js b/apps/admin-panel/dist/assets/select--BgT6D7O.js new file mode 100644 index 0000000..efaffad --- /dev/null +++ b/apps/admin-panel/dist/assets/select--BgT6D7O.js @@ -0,0 +1 @@ +function n(r){const c=typeof(r==null?void 0:r.children)=="function"?r.children():r==null?void 0:r.children,e=Array.isArray(c)?c[0]:c;return typeof e=="string"?e:String((e==null?void 0:e.children)??"")}export{n as o}; diff --git a/apps/admin-panel/dist/assets/singleCustomer-CKKhHCBR.js b/apps/admin-panel/dist/assets/singleCustomer-DCfVboVT.js similarity index 92% rename from apps/admin-panel/dist/assets/singleCustomer-CKKhHCBR.js rename to apps/admin-panel/dist/assets/singleCustomer-DCfVboVT.js index 1001d11..efeac76 100644 --- a/apps/admin-panel/dist/assets/singleCustomer-CKKhHCBR.js +++ b/apps/admin-panel/dist/assets/singleCustomer-DCfVboVT.js @@ -1 +1 @@ -import{d as $,x as S,y as c,a as V,w as r,k as D,m as x,z as C,r as d,o as I,c as s,p as l,h as p,t as R,V as j,f as _,W as q,H as B,l as E,J as k,_ as N}from"./index-CJij4X3l.js";import{_ as M}from"./CityTreeSelect.vue_vue_type_script_setup_true_lang-7y8zYJ_W.js";import{D as z}from"./DateInput-DgUF2he7.js";import{U as F}from"./UserOutlined-yq90mQcC.js";const H={class:"pf-layout pf-layout--single"},J={class:"pf-main"},Q={class:"pf-section"},T={class:"pf-section__head"},W={class:"pf-section__icon"},A={class:"pf-grid-2"},G={class:"pf-actions"},K={class:"pf-actions__hint"},v="لطفا مقدار را وارد کنید",L=$({__name:"singleCustomer",setup(P){const w=D(),y=E(),u=w.params.id,m=x(!1),h=x([]),t=C({fname:"",lname:"",phone:"",city_id:void 0,birth_day:""}),n=C({});async function b(){var a,e;if(Object.keys(n).forEach(o=>delete n[o]),t.fname||(n.fname=v),t.lname||(n.lname=v),t.phone||(n.phone=v),!Object.keys(n).length)try{m.value=!0;const o={...t,name:`${t.fname} ${t.lname}`.trim(),mobile:t.phone};u?await c.put(`single/${u}`,o):await c.post("single",o),k.info("اطلاعات با موفقیت به ثبت رسید."),y.go(-1)}catch(o){k.error(((e=(a=o==null?void 0:o.response)==null?void 0:a.data)==null?void 0:e.message)??"خطا در ثبت اطلاعات.")}finally{m.value=!1}}return S(async()=>{try{const{data:a}=await c.post("cities/list");h.value=a.rows??[]}catch(a){console.log(a)}if(u)try{const{data:a}=await c.get(`customer/${u}`);Object.assign(t,{fname:a.fname??"",lname:a.lname??"",phone:a.mobile??"",city_id:a.city_id??void 0,birth_day:a.birth_day??""})}catch(a){console.log(a)}}),(a,e)=>{const o=d("a-input"),f=d("a-form-item"),g=d("a-button"),U=d("a-form"),O=d("a-spin");return I(),V(O,{spinning:m.value},{default:r(()=>[s(U,{layout:"vertical",class:"pf-form",onSubmit:B(b,["prevent"])},{default:r(()=>[l("div",H,[l("div",J,[l("section",Q,[l("div",T,[l("span",W,[s(p(F))]),l("div",null,[l("h3",null,R(p(u)?"ویرایش مشتری":"افزودن مشتری"),1),e[6]||(e[6]=l("p",null,"مشخصات مشتری تک",-1))])]),l("div",A,[s(f,{label:"نام ",required:"","validate-status":n.fname?"error":"",help:n.fname},{default:r(()=>[s(o,{value:t.fname,"onUpdate:value":e[0]||(e[0]=i=>t.fname=i)},null,8,["value"])]),_:1},8,["validate-status","help"]),s(f,{label:"نام خانوادگی",required:"","validate-status":n.lname?"error":"",help:n.lname},{default:r(()=>[s(o,{value:t.lname,"onUpdate:value":e[1]||(e[1]=i=>t.lname=i)},null,8,["value"])]),_:1},8,["validate-status","help"]),s(f,{label:"شماره تلفن همراه",required:"","validate-status":n.phone?"error":"",help:n.phone},{default:r(()=>[s(o,{value:t.phone,"onUpdate:value":e[2]||(e[2]=i=>t.phone=i),class:"ltr-input",inputmode:"tel",placeholder:"09xxxxxxxxx"},null,8,["value"])]),_:1},8,["validate-status","help"]),s(z,{"model-value":t.birth_day||void 0,label:"تاریخ تولد","onUpdate:modelValue":e[3]||(e[3]=i=>t.birth_day=i??"")},null,8,["model-value"]),s(f,{label:"شهر",class:"pf-span-all mb-0"},{default:r(()=>[s(M,{value:t.city_id,"onUpdate:value":e[4]||(e[4]=i=>t.city_id=i),cities:h.value},null,8,["value","cities"])]),_:1})])])])]),l("div",G,[l("span",K,[s(p(j)),e[7]||(e[7]=_(" فیلدهای ستاره‌دار الزامی هستند.",-1))]),s(g,{onClick:e[5]||(e[5]=i=>p(y).go(-1))},{default:r(()=>[...e[8]||(e[8]=[_("انصراف",-1)])]),_:1}),s(g,{type:"primary",class:"form-submit",loading:m.value,onClick:b},{icon:r(()=>[s(p(q))]),default:r(()=>[e[9]||(e[9]=_(" ثبت اطلاعات ",-1))]),_:1},8,["loading"])])]),_:1})]),_:1},8,["spinning"])}}}),te=N(L,[["__scopeId","data-v-e6b495e6"]]);export{te as S}; +import{d as $,x as S,y as c,a as V,w as r,k as D,m as x,z as C,r as d,o as I,c as s,p as l,h as p,t as R,V as j,f as _,W as q,H as B,l as E,J as k,_ as N}from"./index-CpVArufm.js";import{_ as M}from"./CityTreeSelect.vue_vue_type_script_setup_true_lang-BtBj3fof.js";import{D as z}from"./DateInput-0_1fMgrR.js";import{U as F}from"./UserOutlined-DeX82IP7.js";const H={class:"pf-layout pf-layout--single"},J={class:"pf-main"},Q={class:"pf-section"},T={class:"pf-section__head"},W={class:"pf-section__icon"},A={class:"pf-grid-2"},G={class:"pf-actions"},K={class:"pf-actions__hint"},v="لطفا مقدار را وارد کنید",L=$({__name:"singleCustomer",setup(P){const w=D(),y=E(),u=w.params.id,m=x(!1),h=x([]),t=C({fname:"",lname:"",phone:"",city_id:void 0,birth_day:""}),n=C({});async function b(){var a,e;if(Object.keys(n).forEach(o=>delete n[o]),t.fname||(n.fname=v),t.lname||(n.lname=v),t.phone||(n.phone=v),!Object.keys(n).length)try{m.value=!0;const o={...t,name:`${t.fname} ${t.lname}`.trim(),mobile:t.phone};u?await c.put(`single/${u}`,o):await c.post("single",o),k.info("اطلاعات با موفقیت به ثبت رسید."),y.go(-1)}catch(o){k.error(((e=(a=o==null?void 0:o.response)==null?void 0:a.data)==null?void 0:e.message)??"خطا در ثبت اطلاعات.")}finally{m.value=!1}}return S(async()=>{try{const{data:a}=await c.post("cities/list");h.value=a.rows??[]}catch(a){console.log(a)}if(u)try{const{data:a}=await c.get(`customer/${u}`);Object.assign(t,{fname:a.fname??"",lname:a.lname??"",phone:a.mobile??"",city_id:a.city_id??void 0,birth_day:a.birth_day??""})}catch(a){console.log(a)}}),(a,e)=>{const o=d("a-input"),f=d("a-form-item"),g=d("a-button"),U=d("a-form"),O=d("a-spin");return I(),V(O,{spinning:m.value},{default:r(()=>[s(U,{layout:"vertical",class:"pf-form",onSubmit:B(b,["prevent"])},{default:r(()=>[l("div",H,[l("div",J,[l("section",Q,[l("div",T,[l("span",W,[s(p(F))]),l("div",null,[l("h3",null,R(p(u)?"ویرایش مشتری":"افزودن مشتری"),1),e[6]||(e[6]=l("p",null,"مشخصات مشتری تک",-1))])]),l("div",A,[s(f,{label:"نام ",required:"","validate-status":n.fname?"error":"",help:n.fname},{default:r(()=>[s(o,{value:t.fname,"onUpdate:value":e[0]||(e[0]=i=>t.fname=i)},null,8,["value"])]),_:1},8,["validate-status","help"]),s(f,{label:"نام خانوادگی",required:"","validate-status":n.lname?"error":"",help:n.lname},{default:r(()=>[s(o,{value:t.lname,"onUpdate:value":e[1]||(e[1]=i=>t.lname=i)},null,8,["value"])]),_:1},8,["validate-status","help"]),s(f,{label:"شماره تلفن همراه",required:"","validate-status":n.phone?"error":"",help:n.phone},{default:r(()=>[s(o,{value:t.phone,"onUpdate:value":e[2]||(e[2]=i=>t.phone=i),class:"ltr-input",inputmode:"tel",placeholder:"09xxxxxxxxx"},null,8,["value"])]),_:1},8,["validate-status","help"]),s(z,{"model-value":t.birth_day||void 0,label:"تاریخ تولد","onUpdate:modelValue":e[3]||(e[3]=i=>t.birth_day=i??"")},null,8,["model-value"]),s(f,{label:"شهر",class:"pf-span-all mb-0"},{default:r(()=>[s(M,{value:t.city_id,"onUpdate:value":e[4]||(e[4]=i=>t.city_id=i),cities:h.value},null,8,["value","cities"])]),_:1})])])])]),l("div",G,[l("span",K,[s(p(j)),e[7]||(e[7]=_(" فیلدهای ستاره‌دار الزامی هستند.",-1))]),s(g,{onClick:e[5]||(e[5]=i=>p(y).go(-1))},{default:r(()=>[...e[8]||(e[8]=[_("انصراف",-1)])]),_:1}),s(g,{type:"primary",class:"form-submit",loading:m.value,onClick:b},{icon:r(()=>[s(p(q))]),default:r(()=>[e[9]||(e[9]=_(" ثبت اطلاعات ",-1))]),_:1},8,["loading"])])]),_:1})]),_:1},8,["spinning"])}}}),te=N(L,[["__scopeId","data-v-e6b495e6"]]);export{te as S}; diff --git a/apps/admin-panel/dist/assets/useDeleteHandler-DuEp06Uq.js b/apps/admin-panel/dist/assets/useDeleteHandler-K9FWNrnm.js similarity index 86% rename from apps/admin-panel/dist/assets/useDeleteHandler-DuEp06Uq.js rename to apps/admin-panel/dist/assets/useDeleteHandler-K9FWNrnm.js index 4423b3b..5566dfe 100644 --- a/apps/admin-panel/dist/assets/useDeleteHandler-DuEp06Uq.js +++ b/apps/admin-panel/dist/assets/useDeleteHandler-K9FWNrnm.js @@ -1 +1 @@ -import{y as r,J as f,N as m}from"./index-CJij4X3l.js";function g(o){const{onSuccess:n,successMessage:i="با موفقیت حذف شد",successType:u="success",fallbackErrorMessage:l="خطا در حذف"}=o;async function d(a,e){var t,c;try{(e==null?void 0:e.method)==="post"?await r.post(a):await r.delete(a),f[u](i),await n()}catch(s){m.error({title:((c=(t=s==null?void 0:s.response)==null?void 0:t.data)==null?void 0:c.message)??l,okText:"بستن"})}}return{remove:d}}export{g as u}; +import{y as r,J as f,N as m}from"./index-CpVArufm.js";function g(o){const{onSuccess:n,successMessage:i="با موفقیت حذف شد",successType:u="success",fallbackErrorMessage:l="خطا در حذف"}=o;async function d(a,e){var t,c;try{(e==null?void 0:e.method)==="post"?await r.post(a):await r.delete(a),f[u](i),await n()}catch(s){m.error({title:((c=(t=s==null?void 0:s.response)==null?void 0:t.data)==null?void 0:c.message)??l,okText:"بستن"})}}return{remove:d}}export{g as u}; diff --git a/apps/admin-panel/dist/assets/user-DmSbNUqc.js b/apps/admin-panel/dist/assets/user-D29KoPC1.js similarity index 93% rename from apps/admin-panel/dist/assets/user-DmSbNUqc.js rename to apps/admin-panel/dist/assets/user-D29KoPC1.js index 8d4fe38..0dff18f 100644 --- a/apps/admin-panel/dist/assets/user-DmSbNUqc.js +++ b/apps/admin-panel/dist/assets/user-D29KoPC1.js @@ -1 +1 @@ -import{a as E,b as f,X as D}from"./model-tqsMDjkK.js";import{d as J,a as v,w as t,r as n,o as r,c as a,h as w,R as M,b as y,f as l,t as c,F as x,i as O,m as b,y as g,J as C,_ as U}from"./index-CJij4X3l.js";import"./filters-BPYO-DKN.js";import"./index-CKg-8s_Z.js";import"./SettingOutlined-BJxMXy1I.js";function j(){const d=new E("admin/misc/notify/list","لیست نوتیفیکیشن های دریافتی");return d.add(new f("id","شماره")),d.add(new f("title","عنوان")),d.add(new f("text","متن").noSort()),d.add(new f("opt","عملیات").noSort().renderSlot("opt")),d.noFilters(),d}const q={key:0},A=J({__name:"user",setup(d){const I=j(),S=b(null),m=b(!1),o=b(void 0),$=[{title:"مشتری",dataIndex:"customer"},{title:"وضعیت",dataIndex:"is_read"}];async function z(u){const{data:e}=await g.get(`notify/${u.id}`);o.value=e,m.value=!0}async function N(u){var e,_;try{await g.get(`notify/read/${u.id}`),u.is_read=!0,o.value&&(o.value.read_count+=1),C.success("علامت‌گذاری شد")}catch(s){C.error(((_=(e=s==null?void 0:s.response)==null?void 0:e.data)==null?void 0:_.message)??"خطا")}}return(u,e)=>{const _=n("a-tooltip"),s=n("a-descriptions-item"),X=n("a-descriptions"),B=n("a-tag"),k=n("a-button"),F=n("a-table"),R=n("a-empty"),T=n("a-modal"),V=n("a-card");return r(),v(V,{title:"لیست نوتیفیکیشن های دریافتی",class:"page-card"},{default:t(()=>[a(D,{ref_key:"tbl",ref:S,model:w(I),"mobile-cards":""},{opt:t(({record:i})=>[a(_,{title:"مشاهده"},{default:t(()=>[a(w(M),{class:"cursor-pointer mx-1 text-primary",onClick:p=>z(i)},null,8,["onClick"])]),_:2},1024)]),_:1},8,["model"]),a(T,{open:m.value,"onUpdate:open":e[1]||(e[1]=i=>m.value=i),title:"مشاهده نوتیفیکیشن",width:"60%","wrap-class-name":"detail-modal"},{footer:t(()=>[a(k,{onClick:e[0]||(e[0]=i=>m.value=!1)},{default:t(()=>[...e[4]||(e[4]=[l("بستن",-1)])]),_:1})]),default:t(()=>[o.value?(r(),y("div",q,[a(X,{bordered:"",size:"small",column:1},{default:t(()=>[a(s,{label:"عنوان"},{default:t(()=>[l(c(o.value.title),1)]),_:1}),a(s,{label:"متن"},{default:t(()=>[l(c(o.value.body),1)]),_:1}),a(s,{label:"ارسال کننده"},{default:t(()=>[l(c(o.value.sender??"-"),1)]),_:1}),a(s,{label:"خوانده شده"},{default:t(()=>[l(c(o.value.read_count)+" از "+c(o.value.total_count),1)]),_:1})]),_:1}),a(F,{class:"mt-4",size:"small","data-source":o.value.recipients,columns:$,pagination:{pageSize:10},"row-key":"id"},{bodyCell:t(({column:i,record:p})=>[i.dataIndex==="is_read"?(r(),y(x,{key:0},[p.is_read?(r(),v(B,{key:0,color:"green"},{default:t(()=>[...e[2]||(e[2]=[l("خوانده شده",-1)])]),_:1})):(r(),v(k,{key:1,size:"small",onClick:G=>N(p)},{default:t(()=>[...e[3]||(e[3]=[l("علامت‌گذاری",-1)])]),_:1},8,["onClick"]))],64)):i.dataIndex==="customer"?(r(),y(x,{key:1},[l(c(p.customer.name),1)],64)):O("",!0)]),_:1},8,["data-source"])])):(r(),v(R,{key:1}))]),_:1},8,["open"])]),_:1})}}}),W=U(A,[["__scopeId","data-v-59aa3738"]]);export{W as default}; +import{a as E,b as f,X as D}from"./model-mwiDYd1J.js";import{d as J,a as v,w as t,r as n,o as r,c as a,h as w,R as M,b as y,f as l,t as c,F as x,i as O,m as b,y as g,J as C,_ as U}from"./index-CpVArufm.js";import"./filters-CoNJlguG.js";import"./index-DjZc5EYL.js";import"./SettingOutlined-E4OknxY2.js";function j(){const d=new E("admin/misc/notify/list","لیست نوتیفیکیشن های دریافتی");return d.add(new f("id","شماره")),d.add(new f("title","عنوان")),d.add(new f("text","متن").noSort()),d.add(new f("opt","عملیات").noSort().renderSlot("opt")),d.noFilters(),d}const q={key:0},A=J({__name:"user",setup(d){const I=j(),S=b(null),m=b(!1),o=b(void 0),$=[{title:"مشتری",dataIndex:"customer"},{title:"وضعیت",dataIndex:"is_read"}];async function z(u){const{data:e}=await g.get(`notify/${u.id}`);o.value=e,m.value=!0}async function N(u){var e,_;try{await g.get(`notify/read/${u.id}`),u.is_read=!0,o.value&&(o.value.read_count+=1),C.success("علامت‌گذاری شد")}catch(s){C.error(((_=(e=s==null?void 0:s.response)==null?void 0:e.data)==null?void 0:_.message)??"خطا")}}return(u,e)=>{const _=n("a-tooltip"),s=n("a-descriptions-item"),X=n("a-descriptions"),B=n("a-tag"),k=n("a-button"),F=n("a-table"),R=n("a-empty"),T=n("a-modal"),V=n("a-card");return r(),v(V,{title:"لیست نوتیفیکیشن های دریافتی",class:"page-card"},{default:t(()=>[a(D,{ref_key:"tbl",ref:S,model:w(I),"mobile-cards":""},{opt:t(({record:i})=>[a(_,{title:"مشاهده"},{default:t(()=>[a(w(M),{class:"cursor-pointer mx-1 text-primary",onClick:p=>z(i)},null,8,["onClick"])]),_:2},1024)]),_:1},8,["model"]),a(T,{open:m.value,"onUpdate:open":e[1]||(e[1]=i=>m.value=i),title:"مشاهده نوتیفیکیشن",width:"60%","wrap-class-name":"detail-modal"},{footer:t(()=>[a(k,{onClick:e[0]||(e[0]=i=>m.value=!1)},{default:t(()=>[...e[4]||(e[4]=[l("بستن",-1)])]),_:1})]),default:t(()=>[o.value?(r(),y("div",q,[a(X,{bordered:"",size:"small",column:1},{default:t(()=>[a(s,{label:"عنوان"},{default:t(()=>[l(c(o.value.title),1)]),_:1}),a(s,{label:"متن"},{default:t(()=>[l(c(o.value.body),1)]),_:1}),a(s,{label:"ارسال کننده"},{default:t(()=>[l(c(o.value.sender??"-"),1)]),_:1}),a(s,{label:"خوانده شده"},{default:t(()=>[l(c(o.value.read_count)+" از "+c(o.value.total_count),1)]),_:1})]),_:1}),a(F,{class:"mt-4",size:"small","data-source":o.value.recipients,columns:$,pagination:{pageSize:10},"row-key":"id"},{bodyCell:t(({column:i,record:p})=>[i.dataIndex==="is_read"?(r(),y(x,{key:0},[p.is_read?(r(),v(B,{key:0,color:"green"},{default:t(()=>[...e[2]||(e[2]=[l("خوانده شده",-1)])]),_:1})):(r(),v(k,{key:1,size:"small",onClick:G=>N(p)},{default:t(()=>[...e[3]||(e[3]=[l("علامت‌گذاری",-1)])]),_:1},8,["onClick"]))],64)):i.dataIndex==="customer"?(r(),y(x,{key:1},[l(c(p.customer.name),1)],64)):O("",!0)]),_:1},8,["data-source"])])):(r(),v(R,{key:1}))]),_:1},8,["open"])]),_:1})}}}),W=U(A,[["__scopeId","data-v-59aa3738"]]);export{W as default}; diff --git a/apps/admin-panel/dist/assets/wage-BgO7d8Zq.js b/apps/admin-panel/dist/assets/wage-CnYyduGf.js similarity index 99% rename from apps/admin-panel/dist/assets/wage-BgO7d8Zq.js rename to apps/admin-panel/dist/assets/wage-CnYyduGf.js index c9db89a..77906cb 100644 --- a/apps/admin-panel/dist/assets/wage-BgO7d8Zq.js +++ b/apps/admin-panel/dist/assets/wage-CnYyduGf.js @@ -1 +1 @@ -import{m as We}from"./index-CKg-8s_Z.js";import{d as Ae,u as Le,n as Me,x as De,b,c as s,w as o,a as h,m as $,y as K,J as Q,r as c,z as X,o as m,p as l,f as d,t as r,i as k,F as C,e as S,q as G,s as y,_ as Ve}from"./index-CJij4X3l.js";const Ye={key:0,class:"wage page-card"},Fe={class:"status"},Ee={class:"formula","aria-live":"polite"},He={key:0,class:"formula__op"},Re={key:0,class:"chip chip--zero"},Ie={key:1,class:"formula__limits"},Je={class:"term__head"},Ke={class:"term__label"},Qe={class:"hint"},Xe={key:0,class:"term__body"},Ze={class:"term"},et={class:"term__body"},tt={class:"limits"},at={class:"limit"},lt={class:"limit"},st={class:"limit"},nt={class:"sample"},ot={key:1,class:"cmp"},ut={key:2,class:"hint warn"},it={class:"hist__meta"},rt={class:"hint"},mt=Ae({__name:"wage",setup(dt){const ge=Le(),ye=e=>!!ge.hasPermission(e),O=$(!1),W=$(!1),i=$(null),n=X({version:1,variantCoef:"1",customerCoef:"1",promotionCoef:"1",promotionPick:"max",constant:"0",min:null,max:null,decimals:null}),f=X({rashWeightGrams:10,quantity:1,variantPercent:7,customerPercent:3,promotionPercent:0}),w=$(null),U=$(""),P=$(!1),A=(e,t)=>{var g,p;const v=(p=(g=e==null?void 0:e.response)==null?void 0:g.data)==null?void 0:p.message;return Array.isArray(v)?v.join("، "):v??t},Z=e=>e===null?null:Number(e),j=e=>e==null||Number.isNaN(e)?"0":String(e),ee=X({variant:1,customer:1,promotion:1});function L(e){const t=`${e}Coef`,v=y({get:()=>Number(n[t])!==0,set:p=>{p||(ee[e]=Number(n[t])||1),n[t]=p?String(ee[e]||1):"0"}}),g=y({get:()=>Number(n[t]),set:p=>n[t]=j(p)});return{enabled:v,coef:g}}const ke=[{key:"variant",label:"اجرت مدل",sign:"+",help:"اجرتی که روی هر مدل (واریانت) کالا ثبت شده است.",...L("variant")},{key:"customer",label:"درصد اختصاصی مشتری",sign:"+",help:"درصدی که روی پرونده‌ی هر مشتری ثبت شده (معمولاً ۳).",...L("customer")},{key:"promotion",label:"تخفیف فعال",sign:"−",help:"تخفیف‌های فعالِ مربوط به همان کالا، دسته‌بندی یا برند. سیستم قدیم فقط بیشترین را کم می‌کرد.",...L("promotion")}],te=y({get:()=>Number(n.constant),set:e=>n.constant=j(e)}),M=y({get:()=>n.min!==null,set:e=>n.min=e?n.min??"0":null}),D=y({get:()=>n.max!==null,set:e=>n.max=e?n.max??"20":null}),V=y({get:()=>n.decimals!==null,set:e=>n.decimals=e?n.decimals??2:null}),ae=y({get:()=>Z(n.min),set:e=>n.min=j(e)}),le=y({get:()=>Z(n.max),set:e=>n.max=j(e)}),se=y({get:()=>n.decimals,set:e=>n.decimals=e??0}),_=e=>String(e).replace(/\d/g,t=>"۰۱۲۳۴۵۶۷۸۹"[Number(t)]).replace(".","٫"),Y=e=>Number(e)===1?"":`${_(e)} × `;function ne(e){const t=[];return Number(e.variantCoef)&&t.push({key:"variant",sign:"+",text:`${Y(e.variantCoef)}اجرت مدل`}),Number(e.customerCoef)&&t.push({key:"customer",sign:"+",text:`${Y(e.customerCoef)}درصد مشتری`}),Number(e.promotionCoef)&&t.push({key:"promotion",sign:"−",text:`${Y(e.promotionCoef)}${e.promotionPick==="max"?"بیشترین تخفیف":"جمع تخفیف‌ها"}`}),Number(e.constant)&&t.push({key:"constant",sign:Number(e.constant)<0?"−":"+",text:`${_(Math.abs(Number(e.constant)))}٪`}),t}const oe=y(()=>ne(n));function ue(e){const t=[];return e.min!==null&&t.push(`حداقل ${_(e.min)}٪`),e.max!==null&&t.push(`حداکثر ${_(e.max)}٪`),e.decimals!==null&&t.push(`گرد تا ${_(e.decimals)} رقم اعشار`),t.join(" · ")}const ie=y(()=>ue(n));function re(e){const v=ne(e).map((p,R)=>`${R>0||p.sign==="−"?` ${p.sign} `:""}${p.text}`).join("")||"۰",g=ue(e);return`اجرت نهایی = ${v}${g?` (${g})`:""}`}const me=e=>`${_(e.rashWeightGrams)} گرم × ${_(e.quantity)}، اجرت مدل ${_(e.variantPercent)}٪، مشتری ${_(e.customerPercent)}٪، تخفیف ${_(e.promotionPercent)}٪`,N=e=>`${_(Number(e))}٪`,T=e=>`${_(Number(e))} گرم`,de=e=>e?_(We(e).format("jYYYY/jM/jD HH:mm")):"",xe=[{key:"v",label:"سهم اجرت مدل",fmt:e=>N(e.variantTerm)},{key:"c",label:"سهم درصد مشتری",fmt:e=>N(e.customerTerm)},{key:"p",label:"سهم تخفیف (کم می‌شود)",fmt:e=>N(e.promotionTerm)},{key:"k",label:"مقدار ثابت",fmt:e=>N(e.constant)},{key:"b",label:"قبل از محدودیت",fmt:e=>N(e.beforeLimits)},{key:"f",label:"اجرت نهایی",fmt:e=>N(e.finalPercent),strong:!0},{key:"w",label:"اجرت به گرم",fmt:e=>T(e.wageGrams)},{key:"t",label:"وزن کل فاکتور",fmt:e=>T(e.totalGrams),strong:!0}],ce=(e,t)=>["variantCoef","customerCoef","promotionCoef","constant","min","max"].every(v=>(e[v]===null?null:Number(e[v]))===(t[v]===null?null:Number(t[v])))&&e.promotionPick===t.promotionPick&&e.decimals===t.decimals,B=y(()=>!!i.value&&!ce(n,i.value.formula)),we=e=>!!i.value&&ce(e,i.value.legacy),pe=y(()=>B.value&&P.value&&!U.value&&!!w.value);function q(e){Object.assign(n,{...e})}function F(e){Object.assign(f,{rashWeightGrams:Number(e.rashWeightGrams),quantity:Number(e.quantity),variantPercent:Number(e.variantPercent),customerPercent:Number(e.customerPercent),promotionPercent:Number(e.promotionPercent)})}async function Ne(){O.value=!0;try{const{data:e}=await K.get("admin/pricing/wage-formula");i.value=e,q(e.formula),F(e.sample),P.value=!1}catch(e){Q.error(A(e,"خطا در دریافت فرمول اجرت"))}finally{O.value=!1}}let E=0,H=null;async function ve(){const e=++E;try{const{data:t}=await K.post("admin/pricing/wage-formula/preview",{formula:{...n},sample:{...f}});if(e!==E)return;w.value=t,U.value=""}catch(t){if(e!==E)return;U.value=A(t,"محاسبه‌ی نمونه انجام نشد")}}Me([()=>({...n}),()=>({...f})],()=>{P.value=!1,H&&clearTimeout(H),H=setTimeout(ve,250)},{deep:!0});function he(){i.value&&q(i.value.legacy)}function Pe(){i.value&&q(i.value.formula)}function $e(){i.value&&F(i.value.sample)}async function Ce(){W.value=!0;try{const{data:e}=await K.put("admin/pricing/wage-formula",{formula:{...n},sample:{...f}});i.value=e,q(e.formula),F(e.sample),P.value=!1,Q.success("فرمول اجرت ثبت شد و از همین حالا اعمال می‌شود")}catch(e){Q.error(A(e,"خطا در ثبت فرمول"))}finally{W.value=!1}}return De(async()=>{await Ne(),await ve()}),(e,t)=>{const v=c("a-tag"),g=c("a-card"),p=c("a-button"),R=c("a-switch"),x=c("a-input-number"),fe=c("a-radio-button"),Ue=c("a-radio-group"),Te=c("a-divider"),z=c("a-checkbox"),be=c("a-col"),I=c("a-alert"),Ge=c("a-popconfirm"),je=c("a-row"),J=c("a-descriptions-item"),Be=c("a-descriptions"),qe=c("a-collapse-panel"),ze=c("a-collapse"),Se=c("a-spin"),Oe=c("a-result");return ye("config.wage")?(m(),b("div",Ye,[s(Se,{spinning:O.value},{default:o(()=>[s(g,{class:"mb-4",bordered:!1},{default:o(()=>{var a;return[l("div",Fe,[t[15]||(t[15]=l("div",null,[l("div",{class:"status__title"},"فرمول اجرت سفارش‌های اپلیکیشن"),l("div",{class:"hint"}," اجرتی که مشتری در اپ می‌بیند و اجرتی که روی فاکتور می‌آید، هر دو با همین فرمول در سرور حساب می‌شوند. اجرتی که اپراتور در پنل برای یک سفارش دستی وارد می‌کند، دست نمی‌خورد. ")],-1)),(a=i.value)!=null&&a.isLegacyDefault?(m(),h(v,{key:0,color:"blue"},{default:o(()=>[...t[14]||(t[14]=[d("فرمول سیستم قدیم (پیش‌فرض)",-1)])]),_:1})):i.value?(m(),h(v,{key:1,color:"green"},{default:o(()=>{var u;return[d(" تأییدشده در "+r(de(i.value.approvedAt))+" — "+r((u=i.value.approvedBy)==null?void 0:u.name),1)]}),_:1})):k("",!0)])]}),_:1}),s(je,{gutter:[16,16]},{default:o(()=>[s(be,{xs:24,xl:12},{default:o(()=>[s(g,{title:"ساختار فرمول"},{extra:o(()=>[s(p,{size:"small",disabled:we(n),onClick:he},{default:o(()=>[...t[16]||(t[16]=[d("بازگشت به فرمول سیستم قدیم",-1)])]),_:1},8,["disabled"])]),default:o(()=>[l("div",Ee,[t[17]||(t[17]=l("span",{class:"formula__lhs"},"اجرت نهایی =",-1)),(m(!0),b(C,null,S(oe.value,(a,u)=>(m(),b(C,{key:a.key},[u>0||a.sign==="−"?(m(),b("span",He,r(a.sign),1)):k("",!0),l("span",{class:G(["chip",`chip--${a.key}`])},r(a.text),3)],64))),128)),oe.value.length?k("",!0):(m(),b("span",Re,"۰")),ie.value?(m(),b("div",Ie,r(ie.value),1)):k("",!0)]),(m(),b(C,null,S(ke,a=>l("div",{class:"term",key:a.key},[l("div",Je,[s(R,{checked:a.enabled.value,"onUpdate:checked":u=>a.enabled.value=u,size:"small"},null,8,["checked","onUpdate:checked"]),l("span",Ke,r(a.label),1),l("span",{class:G(["chip chip--sm",`chip--${a.key}`])},r(a.sign),3)]),l("div",Qe,r(a.help),1),a.enabled.value?(m(),b("div",Xe,[t[20]||(t[20]=l("span",null,"ضریب",-1)),s(x,{value:a.coef.value,"onUpdate:value":u=>a.coef.value=u,step:.1,min:-10,max:10,class:"num"},null,8,["value","onUpdate:value"]),a.key==="promotion"?(m(),h(Ue,{key:0,value:n.promotionPick,"onUpdate:value":t[0]||(t[0]=u=>n.promotionPick=u),size:"small","button-style":"solid"},{default:o(()=>[s(fe,{value:"max"},{default:o(()=>[...t[18]||(t[18]=[d("بیشترین تخفیف",-1)])]),_:1}),s(fe,{value:"sum"},{default:o(()=>[...t[19]||(t[19]=[d("جمع تخفیف‌ها",-1)])]),_:1})]),_:1},8,["value"])):k("",!0)])):k("",!0)])),64)),l("div",Ze,[t[21]||(t[21]=l("div",{class:"term__head"},[l("span",{class:"term__label"},"مقدار ثابت (درصد)"),l("span",{class:"chip chip--sm chip--constant"},"±")],-1)),t[22]||(t[22]=l("div",{class:"hint"},"به همه‌ی اجرت‌ها اضافه می‌شود؛ عدد منفی کم می‌کند. صفر یعنی بی‌اثر.",-1)),l("div",et,[s(x,{value:te.value,"onUpdate:value":t[1]||(t[1]=a=>te.value=a),step:.1,min:-100,max:100,class:"num","addon-after":"٪"},null,8,["value"])])]),s(Te,{orientation:"right",class:"divider"},{default:o(()=>[...t[23]||(t[23]=[d("محدودیت و گرد کردن",-1)])]),_:1}),l("div",tt,[l("div",at,[s(z,{checked:M.value,"onUpdate:checked":t[2]||(t[2]=a=>M.value=a)},{default:o(()=>[...t[24]||(t[24]=[d("حداقل اجرت",-1)])]),_:1},8,["checked"]),s(x,{value:ae.value,"onUpdate:value":t[3]||(t[3]=a=>ae.value=a),disabled:!M.value,step:.5,class:"num","addon-after":"٪"},null,8,["value","disabled"])]),l("div",lt,[s(z,{checked:D.value,"onUpdate:checked":t[4]||(t[4]=a=>D.value=a)},{default:o(()=>[...t[25]||(t[25]=[d("حداکثر اجرت",-1)])]),_:1},8,["checked"]),s(x,{value:le.value,"onUpdate:value":t[5]||(t[5]=a=>le.value=a),disabled:!D.value,step:.5,class:"num","addon-after":"٪"},null,8,["value","disabled"])]),l("div",st,[s(z,{checked:V.value,"onUpdate:checked":t[6]||(t[6]=a=>V.value=a)},{default:o(()=>[...t[26]||(t[26]=[d("گرد کردن",-1)])]),_:1},8,["checked"]),s(x,{value:se.value,"onUpdate:value":t[7]||(t[7]=a=>se.value=a),disabled:!V.value,min:0,max:4,precision:0,class:"num","addon-after":"رقم اعشار"},null,8,["value","disabled"])])])]),_:1})]),_:1}),s(be,{xs:24,xl:12},{default:o(()=>[s(g,{title:"نمونه — نتیجه را قبل از ثبت ببینید"},{extra:o(()=>[s(p,{size:"small",type:"link",disabled:!i.value,onClick:$e},{default:o(()=>[...t[27]||(t[27]=[d("نمونه‌ی ثبت‌شده",-1)])]),_:1},8,["disabled"])]),default:o(()=>{var a;return[l("div",nt,[l("label",null,[t[28]||(t[28]=d("وزن خام",-1)),s(x,{value:f.rashWeightGrams,"onUpdate:value":t[8]||(t[8]=u=>f.rashWeightGrams=u),min:0,step:.1,class:"num","addon-after":"گرم"},null,8,["value"])]),l("label",null,[t[29]||(t[29]=d("تعداد",-1)),s(x,{value:f.quantity,"onUpdate:value":t[9]||(t[9]=u=>f.quantity=u),min:1,max:1e3,precision:0,class:"num"},null,8,["value"])]),l("label",null,[t[30]||(t[30]=d("اجرت مدل",-1)),s(x,{value:f.variantPercent,"onUpdate:value":t[10]||(t[10]=u=>f.variantPercent=u),step:.5,class:"num","addon-after":"٪"},null,8,["value"])]),l("label",null,[t[31]||(t[31]=d("درصد مشتری",-1)),s(x,{value:f.customerPercent,"onUpdate:value":t[11]||(t[11]=u=>f.customerPercent=u),step:.5,class:"num","addon-after":"٪"},null,8,["value"])]),l("label",null,[t[32]||(t[32]=d("تخفیف فعال",-1)),s(x,{value:f.promotionPercent,"onUpdate:value":t[12]||(t[12]=u=>f.promotionPercent=u),min:0,max:100,step:.5,class:"num","addon-after":"٪"},null,8,["value"])])]),U.value?(m(),h(I,{key:0,type:"error","show-icon":"",class:"mb-4",message:U.value},null,8,["message"])):k("",!0),w.value?(m(),b("table",ot,[l("thead",null,[l("tr",null,[t[33]||(t[33]=l("th",null,null,-1)),t[34]||(t[34]=l("th",null,"فرمول فعلی",-1)),l("th",{class:G({changed:B.value})},r(B.value?"پیش‌نویس شما":"پیش‌نویس (بدون تغییر)"),3)])]),l("tbody",null,[(m(),b(C,null,S(xe,u=>l("tr",{key:u.key,class:G({strong:u.strong})},[l("td",null,r(u.label),1),l("td",null,r(u.fmt(w.value.current)),1),l("td",{class:G({diff:u.fmt(w.value.current)!==u.fmt(w.value.draft)})},r(u.fmt(w.value.draft)),3)],2)),64))])])):k("",!0),(a=w.value)!=null&&a.draft.limitedBy?(m(),b("div",ut," در پیش‌نویس، "+r(w.value.draft.limitedBy==="min"?"حداقل":"حداکثر")+" اجرت روی نتیجه اثر گذاشت. ",1)):k("",!0)]}),_:1}),s(g,{class:"mt-4",title:"تأیید و ثبت"},{default:o(()=>[B.value?(m(),b(C,{key:1},[s(I,{type:"warning","show-icon":"",class:"mb-4",message:"تا «تأیید و ثبت» نزنید هیچ چیزی عوض نمی‌شود.",description:"بعد از ثبت، همه‌ی سفارش‌های جدید اپ و اجرتی که اپ نشان می‌دهد با فرمول جدید حساب می‌شوند. سفارش‌های ثبت‌شده‌ی قبلی تغییری نمی‌کنند."}),s(z,{checked:P.value,"onUpdate:checked":t[13]||(t[13]=a=>P.value=a),class:"mb-4"},{default:o(()=>[...t[35]||(t[35]=[d(" نتیجه‌ی نمونه را بررسی کردم و درست است. ",-1)])]),_:1},8,["checked"]),l("div",null,[s(Ge,{title:"فرمول جدید از همین حالا برای سفارش‌های اپ اعمال شود؟","ok-text":"بله، ثبت شود","cancel-text":"انصراف",disabled:!pe.value,onConfirm:Ce},{default:o(()=>[s(p,{type:"primary",disabled:!pe.value,loading:W.value},{default:o(()=>[...t[36]||(t[36]=[d("تأیید و ثبت فرمول",-1)])]),_:1},8,["disabled","loading"])]),_:1},8,["disabled"]),s(p,{class:"ms",onClick:Pe},{default:o(()=>[...t[37]||(t[37]=[d("لغو تغییرات",-1)])]),_:1})])],64)):(m(),h(I,{key:0,type:"info","show-icon":"",message:"تغییری نسبت به فرمول فعلی نداده‌اید.",class:"mb-4"}))]),_:1})]),_:1})]),_:1}),i.value?(m(),h(g,{key:0,class:"mt-4",title:"نمونه‌ی مرجعِ فرمول فعلی"},{default:o(()=>[t[38]||(t[38]=l("div",{class:"hint mb-4"}," این نمونه همراه فرمول فعلی ثبت شده است؛ هر کس فرمول را ببیند می‌داند با چه عددی بررسی و تأیید شده. ",-1)),s(Be,{size:"small",bordered:"",column:{xs:1,md:3}},{default:o(()=>[s(J,{label:"فرمول"},{default:o(()=>[d(r(re(i.value.formula)),1)]),_:1}),s(J,{label:"نمونه"},{default:o(()=>[d(r(me(i.value.sample)),1)]),_:1}),s(J,{label:"نتیجه"},{default:o(()=>[d(" اجرت "+r(N(i.value.result.finalPercent))+" — "+r(T(i.value.result.wageGrams))+" اجرت، "+r(T(i.value.result.totalGrams))+" وزن کل ",1)]),_:1})]),_:1}),i.value.history.length?(m(),h(ze,{key:0,ghost:"",class:"mt-4"},{default:o(()=>[s(qe,{key:"h",header:`نسخه‌های قبلی (${i.value.history.length})`},{default:o(()=>[(m(!0),b(C,null,S(i.value.history,(a,u)=>{var _e;return m(),b("div",{key:u,class:"hist"},[l("div",it,r(de(a.approvedAt))+" — "+r((_e=a.approvedBy)==null?void 0:_e.name),1),l("div",null,r(re(a.formula)),1),l("div",rt,r(me(a.sample))+" ← اجرت "+r(N(a.result.finalPercent))+"، وزن کل "+r(T(a.result.totalGrams)),1)])}),128))]),_:1},8,["header"])]),_:1})):k("",!0)]),_:1})):k("",!0)]),_:1},8,["spinning"])])):(m(),h(Oe,{key:1,status:"403",title:"دسترسی ندارید","sub-title":"این صفحه دسترسی «اجرت» می‌خواهد."}))}}}),vt=Ve(mt,[["__scopeId","data-v-3caccb79"]]);export{vt as default}; +import{m as We}from"./index-DjZc5EYL.js";import{d as Ae,u as Le,n as Me,x as De,b,c as s,w as o,a as h,m as $,y as K,J as Q,r as c,z as X,o as m,p as l,f as d,t as r,i as k,F as C,e as S,q as G,s as y,_ as Ve}from"./index-CpVArufm.js";const Ye={key:0,class:"wage page-card"},Fe={class:"status"},Ee={class:"formula","aria-live":"polite"},He={key:0,class:"formula__op"},Re={key:0,class:"chip chip--zero"},Ie={key:1,class:"formula__limits"},Je={class:"term__head"},Ke={class:"term__label"},Qe={class:"hint"},Xe={key:0,class:"term__body"},Ze={class:"term"},et={class:"term__body"},tt={class:"limits"},at={class:"limit"},lt={class:"limit"},st={class:"limit"},nt={class:"sample"},ot={key:1,class:"cmp"},ut={key:2,class:"hint warn"},it={class:"hist__meta"},rt={class:"hint"},mt=Ae({__name:"wage",setup(dt){const ge=Le(),ye=e=>!!ge.hasPermission(e),O=$(!1),W=$(!1),i=$(null),n=X({version:1,variantCoef:"1",customerCoef:"1",promotionCoef:"1",promotionPick:"max",constant:"0",min:null,max:null,decimals:null}),f=X({rashWeightGrams:10,quantity:1,variantPercent:7,customerPercent:3,promotionPercent:0}),w=$(null),U=$(""),P=$(!1),A=(e,t)=>{var g,p;const v=(p=(g=e==null?void 0:e.response)==null?void 0:g.data)==null?void 0:p.message;return Array.isArray(v)?v.join("، "):v??t},Z=e=>e===null?null:Number(e),j=e=>e==null||Number.isNaN(e)?"0":String(e),ee=X({variant:1,customer:1,promotion:1});function L(e){const t=`${e}Coef`,v=y({get:()=>Number(n[t])!==0,set:p=>{p||(ee[e]=Number(n[t])||1),n[t]=p?String(ee[e]||1):"0"}}),g=y({get:()=>Number(n[t]),set:p=>n[t]=j(p)});return{enabled:v,coef:g}}const ke=[{key:"variant",label:"اجرت مدل",sign:"+",help:"اجرتی که روی هر مدل (واریانت) کالا ثبت شده است.",...L("variant")},{key:"customer",label:"درصد اختصاصی مشتری",sign:"+",help:"درصدی که روی پرونده‌ی هر مشتری ثبت شده (معمولاً ۳).",...L("customer")},{key:"promotion",label:"تخفیف فعال",sign:"−",help:"تخفیف‌های فعالِ مربوط به همان کالا، دسته‌بندی یا برند. سیستم قدیم فقط بیشترین را کم می‌کرد.",...L("promotion")}],te=y({get:()=>Number(n.constant),set:e=>n.constant=j(e)}),M=y({get:()=>n.min!==null,set:e=>n.min=e?n.min??"0":null}),D=y({get:()=>n.max!==null,set:e=>n.max=e?n.max??"20":null}),V=y({get:()=>n.decimals!==null,set:e=>n.decimals=e?n.decimals??2:null}),ae=y({get:()=>Z(n.min),set:e=>n.min=j(e)}),le=y({get:()=>Z(n.max),set:e=>n.max=j(e)}),se=y({get:()=>n.decimals,set:e=>n.decimals=e??0}),_=e=>String(e).replace(/\d/g,t=>"۰۱۲۳۴۵۶۷۸۹"[Number(t)]).replace(".","٫"),Y=e=>Number(e)===1?"":`${_(e)} × `;function ne(e){const t=[];return Number(e.variantCoef)&&t.push({key:"variant",sign:"+",text:`${Y(e.variantCoef)}اجرت مدل`}),Number(e.customerCoef)&&t.push({key:"customer",sign:"+",text:`${Y(e.customerCoef)}درصد مشتری`}),Number(e.promotionCoef)&&t.push({key:"promotion",sign:"−",text:`${Y(e.promotionCoef)}${e.promotionPick==="max"?"بیشترین تخفیف":"جمع تخفیف‌ها"}`}),Number(e.constant)&&t.push({key:"constant",sign:Number(e.constant)<0?"−":"+",text:`${_(Math.abs(Number(e.constant)))}٪`}),t}const oe=y(()=>ne(n));function ue(e){const t=[];return e.min!==null&&t.push(`حداقل ${_(e.min)}٪`),e.max!==null&&t.push(`حداکثر ${_(e.max)}٪`),e.decimals!==null&&t.push(`گرد تا ${_(e.decimals)} رقم اعشار`),t.join(" · ")}const ie=y(()=>ue(n));function re(e){const v=ne(e).map((p,R)=>`${R>0||p.sign==="−"?` ${p.sign} `:""}${p.text}`).join("")||"۰",g=ue(e);return`اجرت نهایی = ${v}${g?` (${g})`:""}`}const me=e=>`${_(e.rashWeightGrams)} گرم × ${_(e.quantity)}، اجرت مدل ${_(e.variantPercent)}٪، مشتری ${_(e.customerPercent)}٪، تخفیف ${_(e.promotionPercent)}٪`,N=e=>`${_(Number(e))}٪`,T=e=>`${_(Number(e))} گرم`,de=e=>e?_(We(e).format("jYYYY/jM/jD HH:mm")):"",xe=[{key:"v",label:"سهم اجرت مدل",fmt:e=>N(e.variantTerm)},{key:"c",label:"سهم درصد مشتری",fmt:e=>N(e.customerTerm)},{key:"p",label:"سهم تخفیف (کم می‌شود)",fmt:e=>N(e.promotionTerm)},{key:"k",label:"مقدار ثابت",fmt:e=>N(e.constant)},{key:"b",label:"قبل از محدودیت",fmt:e=>N(e.beforeLimits)},{key:"f",label:"اجرت نهایی",fmt:e=>N(e.finalPercent),strong:!0},{key:"w",label:"اجرت به گرم",fmt:e=>T(e.wageGrams)},{key:"t",label:"وزن کل فاکتور",fmt:e=>T(e.totalGrams),strong:!0}],ce=(e,t)=>["variantCoef","customerCoef","promotionCoef","constant","min","max"].every(v=>(e[v]===null?null:Number(e[v]))===(t[v]===null?null:Number(t[v])))&&e.promotionPick===t.promotionPick&&e.decimals===t.decimals,B=y(()=>!!i.value&&!ce(n,i.value.formula)),we=e=>!!i.value&&ce(e,i.value.legacy),pe=y(()=>B.value&&P.value&&!U.value&&!!w.value);function q(e){Object.assign(n,{...e})}function F(e){Object.assign(f,{rashWeightGrams:Number(e.rashWeightGrams),quantity:Number(e.quantity),variantPercent:Number(e.variantPercent),customerPercent:Number(e.customerPercent),promotionPercent:Number(e.promotionPercent)})}async function Ne(){O.value=!0;try{const{data:e}=await K.get("admin/pricing/wage-formula");i.value=e,q(e.formula),F(e.sample),P.value=!1}catch(e){Q.error(A(e,"خطا در دریافت فرمول اجرت"))}finally{O.value=!1}}let E=0,H=null;async function ve(){const e=++E;try{const{data:t}=await K.post("admin/pricing/wage-formula/preview",{formula:{...n},sample:{...f}});if(e!==E)return;w.value=t,U.value=""}catch(t){if(e!==E)return;U.value=A(t,"محاسبه‌ی نمونه انجام نشد")}}Me([()=>({...n}),()=>({...f})],()=>{P.value=!1,H&&clearTimeout(H),H=setTimeout(ve,250)},{deep:!0});function he(){i.value&&q(i.value.legacy)}function Pe(){i.value&&q(i.value.formula)}function $e(){i.value&&F(i.value.sample)}async function Ce(){W.value=!0;try{const{data:e}=await K.put("admin/pricing/wage-formula",{formula:{...n},sample:{...f}});i.value=e,q(e.formula),F(e.sample),P.value=!1,Q.success("فرمول اجرت ثبت شد و از همین حالا اعمال می‌شود")}catch(e){Q.error(A(e,"خطا در ثبت فرمول"))}finally{W.value=!1}}return De(async()=>{await Ne(),await ve()}),(e,t)=>{const v=c("a-tag"),g=c("a-card"),p=c("a-button"),R=c("a-switch"),x=c("a-input-number"),fe=c("a-radio-button"),Ue=c("a-radio-group"),Te=c("a-divider"),z=c("a-checkbox"),be=c("a-col"),I=c("a-alert"),Ge=c("a-popconfirm"),je=c("a-row"),J=c("a-descriptions-item"),Be=c("a-descriptions"),qe=c("a-collapse-panel"),ze=c("a-collapse"),Se=c("a-spin"),Oe=c("a-result");return ye("config.wage")?(m(),b("div",Ye,[s(Se,{spinning:O.value},{default:o(()=>[s(g,{class:"mb-4",bordered:!1},{default:o(()=>{var a;return[l("div",Fe,[t[15]||(t[15]=l("div",null,[l("div",{class:"status__title"},"فرمول اجرت سفارش‌های اپلیکیشن"),l("div",{class:"hint"}," اجرتی که مشتری در اپ می‌بیند و اجرتی که روی فاکتور می‌آید، هر دو با همین فرمول در سرور حساب می‌شوند. اجرتی که اپراتور در پنل برای یک سفارش دستی وارد می‌کند، دست نمی‌خورد. ")],-1)),(a=i.value)!=null&&a.isLegacyDefault?(m(),h(v,{key:0,color:"blue"},{default:o(()=>[...t[14]||(t[14]=[d("فرمول سیستم قدیم (پیش‌فرض)",-1)])]),_:1})):i.value?(m(),h(v,{key:1,color:"green"},{default:o(()=>{var u;return[d(" تأییدشده در "+r(de(i.value.approvedAt))+" — "+r((u=i.value.approvedBy)==null?void 0:u.name),1)]}),_:1})):k("",!0)])]}),_:1}),s(je,{gutter:[16,16]},{default:o(()=>[s(be,{xs:24,xl:12},{default:o(()=>[s(g,{title:"ساختار فرمول"},{extra:o(()=>[s(p,{size:"small",disabled:we(n),onClick:he},{default:o(()=>[...t[16]||(t[16]=[d("بازگشت به فرمول سیستم قدیم",-1)])]),_:1},8,["disabled"])]),default:o(()=>[l("div",Ee,[t[17]||(t[17]=l("span",{class:"formula__lhs"},"اجرت نهایی =",-1)),(m(!0),b(C,null,S(oe.value,(a,u)=>(m(),b(C,{key:a.key},[u>0||a.sign==="−"?(m(),b("span",He,r(a.sign),1)):k("",!0),l("span",{class:G(["chip",`chip--${a.key}`])},r(a.text),3)],64))),128)),oe.value.length?k("",!0):(m(),b("span",Re,"۰")),ie.value?(m(),b("div",Ie,r(ie.value),1)):k("",!0)]),(m(),b(C,null,S(ke,a=>l("div",{class:"term",key:a.key},[l("div",Je,[s(R,{checked:a.enabled.value,"onUpdate:checked":u=>a.enabled.value=u,size:"small"},null,8,["checked","onUpdate:checked"]),l("span",Ke,r(a.label),1),l("span",{class:G(["chip chip--sm",`chip--${a.key}`])},r(a.sign),3)]),l("div",Qe,r(a.help),1),a.enabled.value?(m(),b("div",Xe,[t[20]||(t[20]=l("span",null,"ضریب",-1)),s(x,{value:a.coef.value,"onUpdate:value":u=>a.coef.value=u,step:.1,min:-10,max:10,class:"num"},null,8,["value","onUpdate:value"]),a.key==="promotion"?(m(),h(Ue,{key:0,value:n.promotionPick,"onUpdate:value":t[0]||(t[0]=u=>n.promotionPick=u),size:"small","button-style":"solid"},{default:o(()=>[s(fe,{value:"max"},{default:o(()=>[...t[18]||(t[18]=[d("بیشترین تخفیف",-1)])]),_:1}),s(fe,{value:"sum"},{default:o(()=>[...t[19]||(t[19]=[d("جمع تخفیف‌ها",-1)])]),_:1})]),_:1},8,["value"])):k("",!0)])):k("",!0)])),64)),l("div",Ze,[t[21]||(t[21]=l("div",{class:"term__head"},[l("span",{class:"term__label"},"مقدار ثابت (درصد)"),l("span",{class:"chip chip--sm chip--constant"},"±")],-1)),t[22]||(t[22]=l("div",{class:"hint"},"به همه‌ی اجرت‌ها اضافه می‌شود؛ عدد منفی کم می‌کند. صفر یعنی بی‌اثر.",-1)),l("div",et,[s(x,{value:te.value,"onUpdate:value":t[1]||(t[1]=a=>te.value=a),step:.1,min:-100,max:100,class:"num","addon-after":"٪"},null,8,["value"])])]),s(Te,{orientation:"right",class:"divider"},{default:o(()=>[...t[23]||(t[23]=[d("محدودیت و گرد کردن",-1)])]),_:1}),l("div",tt,[l("div",at,[s(z,{checked:M.value,"onUpdate:checked":t[2]||(t[2]=a=>M.value=a)},{default:o(()=>[...t[24]||(t[24]=[d("حداقل اجرت",-1)])]),_:1},8,["checked"]),s(x,{value:ae.value,"onUpdate:value":t[3]||(t[3]=a=>ae.value=a),disabled:!M.value,step:.5,class:"num","addon-after":"٪"},null,8,["value","disabled"])]),l("div",lt,[s(z,{checked:D.value,"onUpdate:checked":t[4]||(t[4]=a=>D.value=a)},{default:o(()=>[...t[25]||(t[25]=[d("حداکثر اجرت",-1)])]),_:1},8,["checked"]),s(x,{value:le.value,"onUpdate:value":t[5]||(t[5]=a=>le.value=a),disabled:!D.value,step:.5,class:"num","addon-after":"٪"},null,8,["value","disabled"])]),l("div",st,[s(z,{checked:V.value,"onUpdate:checked":t[6]||(t[6]=a=>V.value=a)},{default:o(()=>[...t[26]||(t[26]=[d("گرد کردن",-1)])]),_:1},8,["checked"]),s(x,{value:se.value,"onUpdate:value":t[7]||(t[7]=a=>se.value=a),disabled:!V.value,min:0,max:4,precision:0,class:"num","addon-after":"رقم اعشار"},null,8,["value","disabled"])])])]),_:1})]),_:1}),s(be,{xs:24,xl:12},{default:o(()=>[s(g,{title:"نمونه — نتیجه را قبل از ثبت ببینید"},{extra:o(()=>[s(p,{size:"small",type:"link",disabled:!i.value,onClick:$e},{default:o(()=>[...t[27]||(t[27]=[d("نمونه‌ی ثبت‌شده",-1)])]),_:1},8,["disabled"])]),default:o(()=>{var a;return[l("div",nt,[l("label",null,[t[28]||(t[28]=d("وزن خام",-1)),s(x,{value:f.rashWeightGrams,"onUpdate:value":t[8]||(t[8]=u=>f.rashWeightGrams=u),min:0,step:.1,class:"num","addon-after":"گرم"},null,8,["value"])]),l("label",null,[t[29]||(t[29]=d("تعداد",-1)),s(x,{value:f.quantity,"onUpdate:value":t[9]||(t[9]=u=>f.quantity=u),min:1,max:1e3,precision:0,class:"num"},null,8,["value"])]),l("label",null,[t[30]||(t[30]=d("اجرت مدل",-1)),s(x,{value:f.variantPercent,"onUpdate:value":t[10]||(t[10]=u=>f.variantPercent=u),step:.5,class:"num","addon-after":"٪"},null,8,["value"])]),l("label",null,[t[31]||(t[31]=d("درصد مشتری",-1)),s(x,{value:f.customerPercent,"onUpdate:value":t[11]||(t[11]=u=>f.customerPercent=u),step:.5,class:"num","addon-after":"٪"},null,8,["value"])]),l("label",null,[t[32]||(t[32]=d("تخفیف فعال",-1)),s(x,{value:f.promotionPercent,"onUpdate:value":t[12]||(t[12]=u=>f.promotionPercent=u),min:0,max:100,step:.5,class:"num","addon-after":"٪"},null,8,["value"])])]),U.value?(m(),h(I,{key:0,type:"error","show-icon":"",class:"mb-4",message:U.value},null,8,["message"])):k("",!0),w.value?(m(),b("table",ot,[l("thead",null,[l("tr",null,[t[33]||(t[33]=l("th",null,null,-1)),t[34]||(t[34]=l("th",null,"فرمول فعلی",-1)),l("th",{class:G({changed:B.value})},r(B.value?"پیش‌نویس شما":"پیش‌نویس (بدون تغییر)"),3)])]),l("tbody",null,[(m(),b(C,null,S(xe,u=>l("tr",{key:u.key,class:G({strong:u.strong})},[l("td",null,r(u.label),1),l("td",null,r(u.fmt(w.value.current)),1),l("td",{class:G({diff:u.fmt(w.value.current)!==u.fmt(w.value.draft)})},r(u.fmt(w.value.draft)),3)],2)),64))])])):k("",!0),(a=w.value)!=null&&a.draft.limitedBy?(m(),b("div",ut," در پیش‌نویس، "+r(w.value.draft.limitedBy==="min"?"حداقل":"حداکثر")+" اجرت روی نتیجه اثر گذاشت. ",1)):k("",!0)]}),_:1}),s(g,{class:"mt-4",title:"تأیید و ثبت"},{default:o(()=>[B.value?(m(),b(C,{key:1},[s(I,{type:"warning","show-icon":"",class:"mb-4",message:"تا «تأیید و ثبت» نزنید هیچ چیزی عوض نمی‌شود.",description:"بعد از ثبت، همه‌ی سفارش‌های جدید اپ و اجرتی که اپ نشان می‌دهد با فرمول جدید حساب می‌شوند. سفارش‌های ثبت‌شده‌ی قبلی تغییری نمی‌کنند."}),s(z,{checked:P.value,"onUpdate:checked":t[13]||(t[13]=a=>P.value=a),class:"mb-4"},{default:o(()=>[...t[35]||(t[35]=[d(" نتیجه‌ی نمونه را بررسی کردم و درست است. ",-1)])]),_:1},8,["checked"]),l("div",null,[s(Ge,{title:"فرمول جدید از همین حالا برای سفارش‌های اپ اعمال شود؟","ok-text":"بله، ثبت شود","cancel-text":"انصراف",disabled:!pe.value,onConfirm:Ce},{default:o(()=>[s(p,{type:"primary",disabled:!pe.value,loading:W.value},{default:o(()=>[...t[36]||(t[36]=[d("تأیید و ثبت فرمول",-1)])]),_:1},8,["disabled","loading"])]),_:1},8,["disabled"]),s(p,{class:"ms",onClick:Pe},{default:o(()=>[...t[37]||(t[37]=[d("لغو تغییرات",-1)])]),_:1})])],64)):(m(),h(I,{key:0,type:"info","show-icon":"",message:"تغییری نسبت به فرمول فعلی نداده‌اید.",class:"mb-4"}))]),_:1})]),_:1})]),_:1}),i.value?(m(),h(g,{key:0,class:"mt-4",title:"نمونه‌ی مرجعِ فرمول فعلی"},{default:o(()=>[t[38]||(t[38]=l("div",{class:"hint mb-4"}," این نمونه همراه فرمول فعلی ثبت شده است؛ هر کس فرمول را ببیند می‌داند با چه عددی بررسی و تأیید شده. ",-1)),s(Be,{size:"small",bordered:"",column:{xs:1,md:3}},{default:o(()=>[s(J,{label:"فرمول"},{default:o(()=>[d(r(re(i.value.formula)),1)]),_:1}),s(J,{label:"نمونه"},{default:o(()=>[d(r(me(i.value.sample)),1)]),_:1}),s(J,{label:"نتیجه"},{default:o(()=>[d(" اجرت "+r(N(i.value.result.finalPercent))+" — "+r(T(i.value.result.wageGrams))+" اجرت، "+r(T(i.value.result.totalGrams))+" وزن کل ",1)]),_:1})]),_:1}),i.value.history.length?(m(),h(ze,{key:0,ghost:"",class:"mt-4"},{default:o(()=>[s(qe,{key:"h",header:`نسخه‌های قبلی (${i.value.history.length})`},{default:o(()=>[(m(!0),b(C,null,S(i.value.history,(a,u)=>{var _e;return m(),b("div",{key:u,class:"hist"},[l("div",it,r(de(a.approvedAt))+" — "+r((_e=a.approvedBy)==null?void 0:_e.name),1),l("div",null,r(re(a.formula)),1),l("div",rt,r(me(a.sample))+" ← اجرت "+r(N(a.result.finalPercent))+"، وزن کل "+r(T(a.result.totalGrams)),1)])}),128))]),_:1},8,["header"])]),_:1})):k("",!0)]),_:1})):k("",!0)]),_:1},8,["spinning"])])):(m(),h(Oe,{key:1,status:"403",title:"دسترسی ندارید","sub-title":"این صفحه دسترسی «اجرت» می‌خواهد."}))}}}),vt=Ve(mt,[["__scopeId","data-v-3caccb79"]]);export{vt as default}; diff --git a/apps/admin-panel/dist/assets/wallet-DkHAMmjF.js b/apps/admin-panel/dist/assets/wallet-CPY--I3Y.js similarity index 82% rename from apps/admin-panel/dist/assets/wallet-DkHAMmjF.js rename to apps/admin-panel/dist/assets/wallet-CPY--I3Y.js index f922be4..93cbfd7 100644 --- a/apps/admin-panel/dist/assets/wallet-DkHAMmjF.js +++ b/apps/admin-panel/dist/assets/wallet-CPY--I3Y.js @@ -1 +1 @@ -import{a as w,b as t,X as h}from"./model-tqsMDjkK.js";import{d as k,u as y,b as r,a as N,w as o,i as T,r as v,o as s,c as x,p as B,F as i,f as n,t as l,h as c,q as C,m as S}from"./index-CJij4X3l.js";import{a as g,b as V}from"./filters-BPYO-DKN.js";import"./SettingOutlined-BJxMXy1I.js";import"./index-CKg-8s_Z.js";function X(){const e=new w("admin/documents/wallet/list","لیست کیف پول های شارژ شده");return e.add(new t("id","شماره")),e.add(new t("customer.name","نام مشتری").filterKey("customer.fullName").filterText()),e.add(new t("order.id","شماره سفارش").filterText()),e.add(new t("value","میزان شارژ").renderSlot("value")),e.add(new t("expire_at","تاریخ انقضا").noSort().renderSlot("time")),e.noFilters(),e}const z=k({__name:"wallet",setup(e){const m=y(),u=d=>!!m.hasPermission(d),p=X(),f=S(null);return(d,F)=>{const _=v("a-card");return s(),r("div",null,[u("wallet.percent")?(s(),N(_,{key:0,title:"لیست کیف پول های شارژ شده",class:"page-card"},{default:o(()=>[x(h,{ref_key:"tbl",ref:f,model:c(p),"mobile-cards":""},{time:o(({text:a})=>[n(l(a?c(V)(a):""),1)]),value:o(({text:a,record:b})=>[B("span",{class:C({"text-danger":a<0,"text-success":a>0})},[b.transaction_type==1?(s(),r(i,{key:0},[n(l(Math.abs(Number(a)))+" گرم ",1)],64)):(s(),r(i,{key:1},[n(l(c(g)(Math.abs(Number(a)))),1)],64))],2)]),_:1},8,["model"])]),_:1})):T("",!0)])}}});export{z as default}; +import{a as w,b as t,X as h}from"./model-mwiDYd1J.js";import{d as k,u as y,b as r,a as N,w as o,i as T,r as v,o as s,c as x,p as B,F as i,f as n,t as l,h as c,q as C,m as S}from"./index-CpVArufm.js";import{a as g,b as V}from"./filters-CoNJlguG.js";import"./SettingOutlined-E4OknxY2.js";import"./index-DjZc5EYL.js";function X(){const e=new w("admin/documents/wallet/list","لیست کیف پول های شارژ شده");return e.add(new t("id","شماره")),e.add(new t("customer.name","نام مشتری").filterKey("customer.fullName").filterText()),e.add(new t("order.id","شماره سفارش").filterText()),e.add(new t("value","میزان شارژ").renderSlot("value")),e.add(new t("expire_at","تاریخ انقضا").noSort().renderSlot("time")),e.noFilters(),e}const z=k({__name:"wallet",setup(e){const m=y(),u=d=>!!m.hasPermission(d),p=X(),f=S(null);return(d,F)=>{const _=v("a-card");return s(),r("div",null,[u("wallet.percent")?(s(),N(_,{key:0,title:"لیست کیف پول های شارژ شده",class:"page-card"},{default:o(()=>[x(h,{ref_key:"tbl",ref:f,model:c(p),"mobile-cards":""},{time:o(({text:a})=>[n(l(a?c(V)(a):""),1)]),value:o(({text:a,record:b})=>[B("span",{class:C({"text-danger":a<0,"text-success":a>0})},[b.transaction_type==1?(s(),r(i,{key:0},[n(l(Math.abs(Number(a)))+" گرم ",1)],64)):(s(),r(i,{key:1},[n(l(c(g)(Math.abs(Number(a)))),1)],64))],2)]),_:1},8,["model"])]),_:1})):T("",!0)])}}});export{z as default}; diff --git a/apps/admin-panel/dist/assets/wallet-DXWKA2NQ.js b/apps/admin-panel/dist/assets/wallet-R5LsWnVf.js similarity index 98% rename from apps/admin-panel/dist/assets/wallet-DXWKA2NQ.js rename to apps/admin-panel/dist/assets/wallet-R5LsWnVf.js index 2c331bd..87d9cbf 100644 --- a/apps/admin-panel/dist/assets/wallet-DXWKA2NQ.js +++ b/apps/admin-panel/dist/assets/wallet-R5LsWnVf.js @@ -1 +1 @@ -import{d as V,u as P,x as S,y as _,b as I,a as M,w as r,i as R,z as f,r as c,o as k,c as t,H as j,p as C,f as O,m as W,J as m,_ as z}from"./index-CJij4X3l.js";const D={class:"grid-2"},H={class:"grid-2"},b="لطفا مقدار را وارد کنید",J=V({__name:"wallet",setup(Q){const U=P(),B=i=>!!U.hasPermission(i),p=W(!1),l=f({expire:void 0,percent:void 0}),s=f({birthday_expire:void 0,birthday_credit:void 0}),o=f({}),d=f({});async function v(){var i,e;if(Object.keys(o).forEach(a=>delete o[a]),(l.expire===void 0||l.expire===null)&&(o.expire=b),(l.percent===void 0||l.percent===null)&&(o.percent=b),!Object.keys(o).length)try{p.value=!0,await _.post("wallet/config",{expire:l.expire,percent:l.percent}),m.success("تغییرات ثبت شد")}catch(a){m.error(((e=(i=a==null?void 0:a.response)==null?void 0:i.data)==null?void 0:e.message)??"خطا در ثبت تغییرات")}finally{p.value=!1}}async function y(){var i,e;if(Object.keys(d).forEach(a=>delete d[a]),(s.birthday_expire===void 0||s.birthday_expire===null)&&(d.birthday_expire=b),(s.birthday_credit===void 0||s.birthday_credit===null)&&(d.birthday_credit=b),!Object.keys(d).length)try{p.value=!0,await _.post("wallet/birthday/config",{birthday_expire:s.birthday_expire,birthday_credit:s.birthday_credit}),m.success("تغییرات ثبت شد")}catch(a){m.error(((e=(i=a==null?void 0:a.response)==null?void 0:i.data)==null?void 0:e.message)??"خطا در ثبت تغییرات")}finally{p.value=!1}}return S(async()=>{try{const[i,e]=await Promise.all([_.get("wallet/config"),_.get("wallet/birthday/config")]);Object.assign(l,i.data??{}),Object.assign(s,e.data??{})}catch(i){console.log(i)}}),(i,e)=>{const a=c("a-input-number"),u=c("a-form-item"),h=c("a-button"),x=c("a-form"),g=c("a-spin"),w=c("a-tab-pane"),E=c("a-tabs"),N=c("a-card");return k(),I("div",null,[B("config.wallet")?(k(),M(N,{key:0,title:"مدیریت کیف پول",class:"page-card"},{default:r(()=>[t(E,{"default-active-key":"1"},{default:r(()=>[t(w,{key:"2",tab:"تاریخ تولد","force-render":""},{default:r(()=>[t(g,{spinning:p.value,tip:"لطفا کمی تامل کنید"},{default:r(()=>[t(x,{layout:"vertical",onSubmit:j(y,["prevent"])},{default:r(()=>[C("div",D,[t(u,{label:"انقضا (روز)","validate-status":d.birthday_expire?"error":"",help:d.birthday_expire},{default:r(()=>[t(a,{value:s.birthday_expire,"onUpdate:value":e[0]||(e[0]=n=>s.birthday_expire=n),class:"w-full",min:0},null,8,["value"])]),_:1},8,["validate-status","help"]),t(u,{label:"میزان (تومان)","validate-status":d.birthday_credit?"error":"",help:d.birthday_credit},{default:r(()=>[t(a,{value:s.birthday_credit,"onUpdate:value":e[1]||(e[1]=n=>s.birthday_credit=n),class:"w-full",min:0},null,8,["value"])]),_:1},8,["validate-status","help"])]),t(h,{type:"primary",class:"mb-4 mt-4 mr-4 form-submit",onClick:y},{default:r(()=>[...e[4]||(e[4]=[O("ارسال",-1)])]),_:1})]),_:1})]),_:1},8,["spinning"])]),_:1}),t(w,{key:"1",tab:"پس از خرید","force-render":""},{default:r(()=>[t(g,{spinning:p.value,tip:"لطفا کمی تامل کنید"},{default:r(()=>[t(x,{layout:"vertical",onSubmit:j(v,["prevent"])},{default:r(()=>[C("div",H,[t(u,{label:"انقضا (روز)","validate-status":o.expire?"error":"",help:o.expire},{default:r(()=>[t(a,{value:l.expire,"onUpdate:value":e[2]||(e[2]=n=>l.expire=n),class:"w-full",min:0},null,8,["value"])]),_:1},8,["validate-status","help"]),t(u,{label:"درصد","validate-status":o.percent?"error":"",help:o.percent},{default:r(()=>[t(a,{value:l.percent,"onUpdate:value":e[3]||(e[3]=n=>l.percent=n),class:"w-full",min:0,max:100,formatter:n=>`${n}%`,parser:n=>n.replace("%","")},null,8,["value","formatter","parser"])]),_:1},8,["validate-status","help"])]),t(h,{type:"primary",class:"mb-4 mt-4 mr-4 form-submit",onClick:v},{default:r(()=>[...e[5]||(e[5]=[O("ارسال",-1)])]),_:1})]),_:1})]),_:1},8,["spinning"])]),_:1})]),_:1})]),_:1})):R("",!0)])}}}),$=z(J,[["__scopeId","data-v-a5976b08"]]);export{$ as default}; +import{d as V,u as P,x as S,y as _,b as I,a as M,w as r,i as R,z as f,r as c,o as k,c as t,H as j,p as C,f as O,m as W,J as m,_ as z}from"./index-CpVArufm.js";const D={class:"grid-2"},H={class:"grid-2"},b="لطفا مقدار را وارد کنید",J=V({__name:"wallet",setup(Q){const U=P(),B=i=>!!U.hasPermission(i),p=W(!1),l=f({expire:void 0,percent:void 0}),s=f({birthday_expire:void 0,birthday_credit:void 0}),o=f({}),d=f({});async function v(){var i,e;if(Object.keys(o).forEach(a=>delete o[a]),(l.expire===void 0||l.expire===null)&&(o.expire=b),(l.percent===void 0||l.percent===null)&&(o.percent=b),!Object.keys(o).length)try{p.value=!0,await _.post("wallet/config",{expire:l.expire,percent:l.percent}),m.success("تغییرات ثبت شد")}catch(a){m.error(((e=(i=a==null?void 0:a.response)==null?void 0:i.data)==null?void 0:e.message)??"خطا در ثبت تغییرات")}finally{p.value=!1}}async function y(){var i,e;if(Object.keys(d).forEach(a=>delete d[a]),(s.birthday_expire===void 0||s.birthday_expire===null)&&(d.birthday_expire=b),(s.birthday_credit===void 0||s.birthday_credit===null)&&(d.birthday_credit=b),!Object.keys(d).length)try{p.value=!0,await _.post("wallet/birthday/config",{birthday_expire:s.birthday_expire,birthday_credit:s.birthday_credit}),m.success("تغییرات ثبت شد")}catch(a){m.error(((e=(i=a==null?void 0:a.response)==null?void 0:i.data)==null?void 0:e.message)??"خطا در ثبت تغییرات")}finally{p.value=!1}}return S(async()=>{try{const[i,e]=await Promise.all([_.get("wallet/config"),_.get("wallet/birthday/config")]);Object.assign(l,i.data??{}),Object.assign(s,e.data??{})}catch(i){console.log(i)}}),(i,e)=>{const a=c("a-input-number"),u=c("a-form-item"),h=c("a-button"),x=c("a-form"),g=c("a-spin"),w=c("a-tab-pane"),E=c("a-tabs"),N=c("a-card");return k(),I("div",null,[B("config.wallet")?(k(),M(N,{key:0,title:"مدیریت کیف پول",class:"page-card"},{default:r(()=>[t(E,{"default-active-key":"1"},{default:r(()=>[t(w,{key:"2",tab:"تاریخ تولد","force-render":""},{default:r(()=>[t(g,{spinning:p.value,tip:"لطفا کمی تامل کنید"},{default:r(()=>[t(x,{layout:"vertical",onSubmit:j(y,["prevent"])},{default:r(()=>[C("div",D,[t(u,{label:"انقضا (روز)","validate-status":d.birthday_expire?"error":"",help:d.birthday_expire},{default:r(()=>[t(a,{value:s.birthday_expire,"onUpdate:value":e[0]||(e[0]=n=>s.birthday_expire=n),class:"w-full",min:0},null,8,["value"])]),_:1},8,["validate-status","help"]),t(u,{label:"میزان (تومان)","validate-status":d.birthday_credit?"error":"",help:d.birthday_credit},{default:r(()=>[t(a,{value:s.birthday_credit,"onUpdate:value":e[1]||(e[1]=n=>s.birthday_credit=n),class:"w-full",min:0},null,8,["value"])]),_:1},8,["validate-status","help"])]),t(h,{type:"primary",class:"mb-4 mt-4 mr-4 form-submit",onClick:y},{default:r(()=>[...e[4]||(e[4]=[O("ارسال",-1)])]),_:1})]),_:1})]),_:1},8,["spinning"])]),_:1}),t(w,{key:"1",tab:"پس از خرید","force-render":""},{default:r(()=>[t(g,{spinning:p.value,tip:"لطفا کمی تامل کنید"},{default:r(()=>[t(x,{layout:"vertical",onSubmit:j(v,["prevent"])},{default:r(()=>[C("div",H,[t(u,{label:"انقضا (روز)","validate-status":o.expire?"error":"",help:o.expire},{default:r(()=>[t(a,{value:l.expire,"onUpdate:value":e[2]||(e[2]=n=>l.expire=n),class:"w-full",min:0},null,8,["value"])]),_:1},8,["validate-status","help"]),t(u,{label:"درصد","validate-status":o.percent?"error":"",help:o.percent},{default:r(()=>[t(a,{value:l.percent,"onUpdate:value":e[3]||(e[3]=n=>l.percent=n),class:"w-full",min:0,max:100,formatter:n=>`${n}%`,parser:n=>n.replace("%","")},null,8,["value","formatter","parser"])]),_:1},8,["validate-status","help"])]),t(h,{type:"primary",class:"mb-4 mt-4 mr-4 form-submit",onClick:v},{default:r(()=>[...e[5]||(e[5]=[O("ارسال",-1)])]),_:1})]),_:1})]),_:1},8,["spinning"])]),_:1})]),_:1})]),_:1})):R("",!0)])}}}),$=z(J,[["__scopeId","data-v-a5976b08"]]);export{$ as default}; diff --git a/apps/admin-panel/dist/index.html b/apps/admin-panel/dist/index.html index 1f126e0..aeab34a 100644 --- a/apps/admin-panel/dist/index.html +++ b/apps/admin-panel/dist/index.html @@ -6,7 +6,7 @@ تهران تاج — پنل مدیریت - + diff --git a/apps/admin-panel/dist/version.json b/apps/admin-panel/dist/version.json index ff767dc..d70b3fc 100644 --- a/apps/admin-panel/dist/version.json +++ b/apps/admin-panel/dist/version.json @@ -1,9 +1,9 @@ { "app": "admin-panel", - "build": 219, - "version": "1.219", - "commit": "5204544", - "builtAt": "2026-10-28T12:54:03.726Z", + "build": 220, + "version": "1.220", + "commit": "959a272", + "builtAt": "2026-10-29T14:36:55.387Z", "history": [ { "build": 187, diff --git a/apps/admin-panel/src/components/x-table/XTable.vue b/apps/admin-panel/src/components/x-table/XTable.vue index 1554ff1..4462285 100644 --- a/apps/admin-panel/src/components/x-table/XTable.vue +++ b/apps/admin-panel/src/components/x-table/XTable.vue @@ -303,9 +303,13 @@ const filterableOptions = computed(() => ); /** legacy `order` computed: '+field' / '-field' */ -const order = computed(() => - sort.value ? `${sortDirection.value === 'asc' ? '+' : '-'}${sort.value}` : undefined, -); +const order = computed(() => { + if (!sort.value) return undefined; + // A column may be keyed by the reference's name for it; its filter key, when it + // has one, is the real field it stands for, so that is what is sorted on. + const col = cols.value.find((c) => c.key === sort.value); + return `${sortDirection.value === 'asc' ? '+' : '-'}${col?.__fkey ?? sort.value}`; +}); const antColumns = computed(() => visibleCols.value.map((c) => ({ diff --git a/apps/admin-panel/src/utils/select.ts b/apps/admin-panel/src/utils/select.ts new file mode 100644 index 0000000..de82adf --- /dev/null +++ b/apps/admin-panel/src/utils/select.ts @@ -0,0 +1,14 @@ +/** + * The text of a slot-style ``, for a custom `filter-option`. + * + * ant-design-vue 4 hands `filterOption` the option's default slot as a + * function, not as an array of vnodes (the shape the legacy filters indexed + * into), so `option.children[0].children` is always undefined and a typed + * search matched nothing. This calls the slot first. + */ +export function optionText(option: any): string { + const children = typeof option?.children === 'function' ? option.children() : option?.children; + const first = Array.isArray(children) ? children[0] : children; + if (typeof first === 'string') return first; + return String(first?.children ?? ''); +} diff --git a/apps/admin-panel/src/views/apps/category/Add.vue b/apps/admin-panel/src/views/apps/category/Add.vue index c0ad617..9acf85a 100644 --- a/apps/admin-panel/src/views/apps/category/Add.vue +++ b/apps/admin-panel/src/views/apps/category/Add.vue @@ -136,6 +136,7 @@ + diff --git a/apps/user-app-v2/dist/sw.js b/apps/user-app-v2/dist/sw.js index 4abe65c..1a942f9 100644 --- a/apps/user-app-v2/dist/sw.js +++ b/apps/user-app-v2/dist/sw.js @@ -1,2 +1,2 @@ try{self["workbox:core:7.4.0"]&&_()}catch{}const T=(a,...e)=>{let t=a;return e.length>0&&(t+=` :: ${JSON.stringify(e)}`),t},x=T;class l extends Error{constructor(e,t){const s=x(e,t);super(s),this.name=e,this.details=t}}const f={googleAnalytics:"googleAnalytics",precache:"precache-v2",prefix:"workbox",runtime:"runtime",suffix:typeof registration<"u"?registration.scope:""},C=a=>[f.prefix,a,f.suffix].filter(e=>e&&e.length>0).join("-"),N=a=>{for(const e of Object.keys(f))a(e)},U={updateDetails:a=>{N(e=>{typeof a[e]=="string"&&(f[e]=a[e])})},getGoogleAnalyticsName:a=>a||C(f.googleAnalytics),getPrecacheName:a=>a||C(f.precache),getPrefix:()=>f.prefix,getRuntimeName:a=>a||C(f.runtime),getSuffix:()=>f.suffix};function k(a,e){const t=e();return a.waitUntil(t),t}try{self["workbox:precaching:7.4.0"]&&_()}catch{}const E="__WB_REVISION__";function I(a){if(!a)throw new l("add-to-cache-list-unexpected-type",{entry:a});if(typeof a=="string"){const n=new URL(a,location.href);return{cacheKey:n.href,url:n.href}}const{revision:e,url:t}=a;if(!t)throw new l("add-to-cache-list-unexpected-type",{entry:a});if(!e){const n=new URL(t,location.href);return{cacheKey:n.href,url:n.href}}const s=new URL(t,location.href),r=new URL(t,location.href);return s.searchParams.set(E,e),{cacheKey:s.href,url:r.href}}class O{constructor(){this.updatedURLs=[],this.notUpdatedURLs=[],this.handlerWillStart=async({request:e,state:t})=>{t&&(t.originalRequest=e)},this.cachedResponseWillBeUsed=async({event:e,state:t,cachedResponse:s})=>{if(e.type==="install"&&t&&t.originalRequest&&t.originalRequest instanceof Request){const r=t.originalRequest.url;s?this.notUpdatedURLs.push(r):this.updatedURLs.push(r)}return s}}}class M{constructor({precacheController:e}){this.cacheKeyWillBeUsed=async({request:t,params:s})=>{const r=(s==null?void 0:s.cacheKey)||this._precacheController.getCacheKeyForURL(t.url);return r?new Request(r,{headers:t.headers}):t},this._precacheController=e}}let p;function W(){if(p===void 0){const a=new Response("");if("body"in a)try{new Response(a.body),p=!0}catch{p=!1}p=!1}return p}async function A(a,e){let t=null;if(a.url&&(t=new URL(a.url).origin),t!==self.location.origin)throw new l("cross-origin-copy-response",{origin:t});const s=a.clone(),n={headers:new Headers(s.headers),status:s.status,statusText:s.statusText},c=W()?s.body:await s.blob();return new Response(c,n)}const q=a=>new URL(String(a),location.href).href.replace(new RegExp(`^${location.origin}`),"");function P(a,e){const t=new URL(a);for(const s of e)t.searchParams.delete(s);return t.href}async function S(a,e,t,s){const r=P(e.url,t);if(e.url===r)return a.match(e,s);const n=Object.assign(Object.assign({},s),{ignoreSearch:!0}),c=await a.keys(e,n);for(const i of c){const o=P(i.url,t);if(r===o)return a.match(i,s)}}class D{constructor(){this.promise=new Promise((e,t)=>{this.resolve=e,this.reject=t})}}const j=new Set;async function H(){for(const a of j)await a()}function F(a){return new Promise(e=>setTimeout(e,a))}try{self["workbox:strategies:7.4.0"]&&_()}catch{}function m(a){return typeof a=="string"?new Request(a):a}class B{constructor(e,t){this._cacheKeys={},Object.assign(this,t),this.event=t.event,this._strategy=e,this._handlerDeferred=new D,this._extendLifetimePromises=[],this._plugins=[...e.plugins],this._pluginStateMap=new Map;for(const s of this._plugins)this._pluginStateMap.set(s,{});this.event.waitUntil(this._handlerDeferred.promise)}async fetch(e){const{event:t}=this;let s=m(e);if(s.mode==="navigate"&&t instanceof FetchEvent&&t.preloadResponse){const c=await t.preloadResponse;if(c)return c}const r=this.hasCallback("fetchDidFail")?s.clone():null;try{for(const c of this.iterateCallbacks("requestWillFetch"))s=await c({request:s.clone(),event:t})}catch(c){if(c instanceof Error)throw new l("plugin-error-request-will-fetch",{thrownErrorMessage:c.message})}const n=s.clone();try{let c;c=await fetch(s,s.mode==="navigate"?void 0:this._strategy.fetchOptions);for(const i of this.iterateCallbacks("fetchDidSucceed"))c=await i({event:t,request:n,response:c});return c}catch(c){throw r&&await this.runCallbacks("fetchDidFail",{error:c,event:t,originalRequest:r.clone(),request:n.clone()}),c}}async fetchAndCachePut(e){const t=await this.fetch(e),s=t.clone();return this.waitUntil(this.cachePut(e,s)),t}async cacheMatch(e){const t=m(e);let s;const{cacheName:r,matchOptions:n}=this._strategy,c=await this.getCacheKey(t,"read"),i=Object.assign(Object.assign({},n),{cacheName:r});s=await caches.match(c,i);for(const o of this.iterateCallbacks("cachedResponseWillBeUsed"))s=await o({cacheName:r,matchOptions:n,cachedResponse:s,request:c,event:this.event})||void 0;return s}async cachePut(e,t){const s=m(e);await F(0);const r=await this.getCacheKey(s,"write");if(!t)throw new l("cache-put-with-no-response",{url:q(r.url)});const n=await this._ensureResponseSafeToCache(t);if(!n)return!1;const{cacheName:c,matchOptions:i}=this._strategy,o=await self.caches.open(c),h=this.hasCallback("cacheDidUpdate"),g=h?await S(o,r.clone(),["__WB_REVISION__"],i):null;try{await o.put(r,h?n.clone():n)}catch(u){if(u instanceof Error)throw u.name==="QuotaExceededError"&&await H(),u}for(const u of this.iterateCallbacks("cacheDidUpdate"))await u({cacheName:c,oldResponse:g,newResponse:n.clone(),request:r,event:this.event});return!0}async getCacheKey(e,t){const s=`${e.url} | ${t}`;if(!this._cacheKeys[s]){let r=e;for(const n of this.iterateCallbacks("cacheKeyWillBeUsed"))r=m(await n({mode:t,request:r,event:this.event,params:this.params}));this._cacheKeys[s]=r}return this._cacheKeys[s]}hasCallback(e){for(const t of this._strategy.plugins)if(e in t)return!0;return!1}async runCallbacks(e,t){for(const s of this.iterateCallbacks(e))await s(t)}*iterateCallbacks(e){for(const t of this._strategy.plugins)if(typeof t[e]=="function"){const s=this._pluginStateMap.get(t);yield n=>{const c=Object.assign(Object.assign({},n),{state:s});return t[e](c)}}}waitUntil(e){return this._extendLifetimePromises.push(e),e}async doneWaiting(){for(;this._extendLifetimePromises.length;){const e=this._extendLifetimePromises.splice(0),s=(await Promise.allSettled(e)).find(r=>r.status==="rejected");if(s)throw s.reason}}destroy(){this._handlerDeferred.resolve(null)}async _ensureResponseSafeToCache(e){let t=e,s=!1;for(const r of this.iterateCallbacks("cacheWillUpdate"))if(t=await r({request:this.request,response:t,event:this.event})||void 0,s=!0,!t)break;return s||t&&t.status!==200&&(t=void 0),t}}class ${constructor(e={}){this.cacheName=U.getRuntimeName(e.cacheName),this.plugins=e.plugins||[],this.fetchOptions=e.fetchOptions,this.matchOptions=e.matchOptions}handle(e){const[t]=this.handleAll(e);return t}handleAll(e){e instanceof FetchEvent&&(e={event:e,request:e.request});const t=e.event,s=typeof e.request=="string"?new Request(e.request):e.request,r="params"in e?e.params:void 0,n=new B(this,{event:t,request:s,params:r}),c=this._getResponse(n,s,t),i=this._awaitComplete(c,n,s,t);return[c,i]}async _getResponse(e,t,s){await e.runCallbacks("handlerWillStart",{event:s,request:t});let r;try{if(r=await this._handle(t,e),!r||r.type==="error")throw new l("no-response",{url:t.url})}catch(n){if(n instanceof Error){for(const c of e.iterateCallbacks("handlerDidError"))if(r=await c({error:n,event:s,request:t}),r)break}if(!r)throw n}for(const n of e.iterateCallbacks("handlerWillRespond"))r=await n({event:s,request:t,response:r});return r}async _awaitComplete(e,t,s,r){let n,c;try{n=await e}catch{}try{await t.runCallbacks("handlerDidRespond",{event:r,request:s,response:n}),await t.doneWaiting()}catch(i){i instanceof Error&&(c=i)}if(await t.runCallbacks("handlerDidComplete",{event:r,request:s,response:n,error:c}),t.destroy(),c)throw c}}class d extends ${constructor(e={}){e.cacheName=U.getPrecacheName(e.cacheName),super(e),this._fallbackToNetwork=e.fallbackToNetwork!==!1,this.plugins.push(d.copyRedirectedCacheableResponsesPlugin)}async _handle(e,t){const s=await t.cacheMatch(e);return s||(t.event&&t.event.type==="install"?await this._handleInstall(e,t):await this._handleFetch(e,t))}async _handleFetch(e,t){let s;const r=t.params||{};if(this._fallbackToNetwork){const n=r.integrity,c=e.integrity,i=!c||c===n;s=await t.fetch(new Request(e,{integrity:e.mode!=="no-cors"?c||n:void 0})),n&&i&&e.mode!=="no-cors"&&(this._useDefaultCacheabilityPluginIfNeeded(),await t.cachePut(e,s.clone()))}else throw new l("missing-precache-entry",{cacheName:this.cacheName,url:e.url});return s}async _handleInstall(e,t){this._useDefaultCacheabilityPluginIfNeeded();const s=await t.fetch(e);if(!await t.cachePut(e,s.clone()))throw new l("bad-precaching-response",{url:e.url,status:s.status});return s}_useDefaultCacheabilityPluginIfNeeded(){let e=null,t=0;for(const[s,r]of this.plugins.entries())r!==d.copyRedirectedCacheableResponsesPlugin&&(r===d.defaultPrecacheCacheabilityPlugin&&(e=s),r.cacheWillUpdate&&t++);t===0?this.plugins.push(d.defaultPrecacheCacheabilityPlugin):t>1&&e!==null&&this.plugins.splice(e,1)}}d.defaultPrecacheCacheabilityPlugin={async cacheWillUpdate({response:a}){return!a||a.status>=400?null:a}};d.copyRedirectedCacheableResponsesPlugin={async cacheWillUpdate({response:a}){return a.redirected?await A(a):a}};class G{constructor({cacheName:e,plugins:t=[],fallbackToNetwork:s=!0}={}){this._urlsToCacheKeys=new Map,this._urlsToCacheModes=new Map,this._cacheKeysToIntegrities=new Map,this._strategy=new d({cacheName:U.getPrecacheName(e),plugins:[...t,new M({precacheController:this})],fallbackToNetwork:s}),this.install=this.install.bind(this),this.activate=this.activate.bind(this)}get strategy(){return this._strategy}precache(e){this.addToCacheList(e),this._installAndActiveListenersAdded||(self.addEventListener("install",this.install),self.addEventListener("activate",this.activate),this._installAndActiveListenersAdded=!0)}addToCacheList(e){const t=[];for(const s of e){typeof s=="string"?t.push(s):s&&s.revision===void 0&&t.push(s.url);const{cacheKey:r,url:n}=I(s),c=typeof s!="string"&&s.revision?"reload":"default";if(this._urlsToCacheKeys.has(n)&&this._urlsToCacheKeys.get(n)!==r)throw new l("add-to-cache-list-conflicting-entries",{firstEntry:this._urlsToCacheKeys.get(n),secondEntry:r});if(typeof s!="string"&&s.integrity){if(this._cacheKeysToIntegrities.has(r)&&this._cacheKeysToIntegrities.get(r)!==s.integrity)throw new l("add-to-cache-list-conflicting-integrities",{url:n});this._cacheKeysToIntegrities.set(r,s.integrity)}if(this._urlsToCacheKeys.set(n,r),this._urlsToCacheModes.set(n,c),t.length>0){const i=`Workbox is precaching URLs without revision info: ${t.join(", ")} -This is generally NOT safe. Learn more at https://bit.ly/wb-precache`;console.warn(i)}}}install(e){return k(e,async()=>{const t=new O;this.strategy.plugins.push(t);for(const[n,c]of this._urlsToCacheKeys){const i=this._cacheKeysToIntegrities.get(c),o=this._urlsToCacheModes.get(n),h=new Request(n,{integrity:i,cache:o,credentials:"same-origin"});await Promise.all(this.strategy.handleAll({params:{cacheKey:c},request:h,event:e}))}const{updatedURLs:s,notUpdatedURLs:r}=t;return{updatedURLs:s,notUpdatedURLs:r}})}activate(e){return k(e,async()=>{const t=await self.caches.open(this.strategy.cacheName),s=await t.keys(),r=new Set(this._urlsToCacheKeys.values()),n=[];for(const c of s)r.has(c.url)||(await t.delete(c),n.push(c.url));return{deletedURLs:n}})}getURLsToCacheKeys(){return this._urlsToCacheKeys}getCachedURLs(){return[...this._urlsToCacheKeys.keys()]}getCacheKeyForURL(e){const t=new URL(e,location.href);return this._urlsToCacheKeys.get(t.href)}getIntegrityForCacheKey(e){return this._cacheKeysToIntegrities.get(e)}async matchPrecache(e){const t=e instanceof Request?e.url:e,s=this.getCacheKeyForURL(t);if(s)return(await self.caches.open(this.strategy.cacheName)).match(s)}createHandlerBoundToURL(e){const t=this.getCacheKeyForURL(e);if(!t)throw new l("non-precached-url",{url:e});return s=>(s.request=new Request(e),s.params=Object.assign({cacheKey:t},s.params),this.strategy.handle(s))}}let b;const K=()=>(b||(b=new G),b);try{self["workbox:routing:7.4.0"]&&_()}catch{}const v="GET",R=a=>a&&typeof a=="object"?a:{handle:a};class w{constructor(e,t,s=v){this.handler=R(t),this.match=e,this.method=s}setCatchHandler(e){this.catchHandler=R(e)}}class V extends w{constructor(e,t,s){const r=({url:n})=>{const c=e.exec(n.href);if(c&&!(n.origin!==location.origin&&c.index!==0))return c.slice(1)};super(r,t,s)}}class Q{constructor(){this._routes=new Map,this._defaultHandlerMap=new Map}get routes(){return this._routes}addFetchListener(){self.addEventListener("fetch",e=>{const{request:t}=e,s=this.handleRequest({request:t,event:e});s&&e.respondWith(s)})}addCacheListener(){self.addEventListener("message",e=>{if(e.data&&e.data.type==="CACHE_URLS"){const{payload:t}=e.data,s=Promise.all(t.urlsToCache.map(r=>{typeof r=="string"&&(r=[r]);const n=new Request(...r);return this.handleRequest({request:n,event:e})}));e.waitUntil(s),e.ports&&e.ports[0]&&s.then(()=>e.ports[0].postMessage(!0))}})}handleRequest({request:e,event:t}){const s=new URL(e.url,location.href);if(!s.protocol.startsWith("http"))return;const r=s.origin===location.origin,{params:n,route:c}=this.findMatchingRoute({event:t,request:e,sameOrigin:r,url:s});let i=c&&c.handler;const o=e.method;if(!i&&this._defaultHandlerMap.has(o)&&(i=this._defaultHandlerMap.get(o)),!i)return;let h;try{h=i.handle({url:s,request:e,event:t,params:n})}catch(u){h=Promise.reject(u)}const g=c&&c.catchHandler;return h instanceof Promise&&(this._catchHandler||g)&&(h=h.catch(async u=>{if(g)try{return await g.handle({url:s,request:e,event:t,params:n})}catch(L){L instanceof Error&&(u=L)}if(this._catchHandler)return this._catchHandler.handle({url:s,request:e,event:t});throw u})),h}findMatchingRoute({url:e,sameOrigin:t,request:s,event:r}){const n=this._routes.get(s.method)||[];for(const c of n){let i;const o=c.match({url:e,sameOrigin:t,request:s,event:r});if(o)return i=o,(Array.isArray(i)&&i.length===0||o.constructor===Object&&Object.keys(o).length===0||typeof o=="boolean")&&(i=void 0),{route:c,params:i}}return{}}setDefaultHandler(e,t=v){this._defaultHandlerMap.set(t,R(e))}setCatchHandler(e){this._catchHandler=R(e)}registerRoute(e){this._routes.has(e.method)||this._routes.set(e.method,[]),this._routes.get(e.method).push(e)}unregisterRoute(e){if(!this._routes.has(e.method))throw new l("unregister-route-but-not-found-with-method",{method:e.method});const t=this._routes.get(e.method).indexOf(e);if(t>-1)this._routes.get(e.method).splice(t,1);else throw new l("unregister-route-route-not-registered")}}let y;const z=()=>(y||(y=new Q,y.addFetchListener(),y.addCacheListener()),y);function J(a,e,t){let s;if(typeof a=="string"){const n=new URL(a,location.href),c=({url:i})=>i.href===n.href;s=new w(c,e,t)}else if(a instanceof RegExp)s=new V(a,e,t);else if(typeof a=="function")s=new w(a,e,t);else if(a instanceof w)s=a;else throw new l("unsupported-route-type",{moduleName:"workbox-routing",funcName:"registerRoute",paramName:"capture"});return z().registerRoute(s),s}function X(a,e=[]){for(const t of[...a.searchParams.keys()])e.some(s=>s.test(t))&&a.searchParams.delete(t);return a}function*Y(a,{ignoreURLParametersMatching:e=[/^utm_/,/^fbclid$/],directoryIndex:t="index.html",cleanURLs:s=!0,urlManipulation:r}={}){const n=new URL(a,location.href);n.hash="",yield n.href;const c=X(n,e);if(yield c.href,t&&c.pathname.endsWith("/")){const i=new URL(c.href);i.pathname+=t,yield i.href}if(s){const i=new URL(c.href);i.pathname+=".html",yield i.href}if(r){const i=r({url:n});for(const o of i)yield o.href}}class Z extends w{constructor(e,t){const s=({request:r})=>{const n=e.getURLsToCacheKeys();for(const c of Y(r.url,t)){const i=n.get(c);if(i){const o=e.getIntegrityForCacheKey(i);return{cacheKey:i,integrity:o}}}};super(s,e.strategy)}}function ee(a){const e=K(),t=new Z(e,a);J(t)}function te(a){K().precache(a)}function se(a,e){te(a),ee(e)}self.addEventListener("message",a=>{a.data&&a.data.type==="SKIP_WAITING"&&self.skipWaiting()});se([{"revision":"3a862e96815adc7eb3a82cd992c59995","url":"index.html"},{"revision":null,"url":"assets/workbox-window.prod.es5-BqEJf4Xk.js"},{"revision":null,"url":"assets/usePagedProducts-CQhfR9Yx.js"},{"revision":null,"url":"assets/TransactionsView-QJUT0Agr.css"},{"revision":null,"url":"assets/TransactionsView-BMWfe7_D.js"},{"revision":null,"url":"assets/SectionHead-CvKB7By7.js"},{"revision":null,"url":"assets/SectionHead-CDGrZss6.css"},{"revision":null,"url":"assets/SearchView-CF-TYwrT.js"},{"revision":null,"url":"assets/SearchView-B8CO_3LB.css"},{"revision":null,"url":"assets/SearchInput-DEfgrsbu.css"},{"revision":null,"url":"assets/SearchInput-CvqnREPV.js"},{"revision":null,"url":"assets/ReportView-DFtAMFYJ.js"},{"revision":null,"url":"assets/ReportView-BrhJZMTH.css"},{"revision":null,"url":"assets/RateStrip-BeFld7sY.js"},{"revision":null,"url":"assets/RateStrip-B00WoPCp.css"},{"revision":null,"url":"assets/raf-nDFcuFT6.js"},{"revision":null,"url":"assets/ProfileView-CRrMEcnO.css"},{"revision":null,"url":"assets/ProfileView-Bv3BZktW.js"},{"revision":null,"url":"assets/ProductCard-D6-KxSf7.css"},{"revision":null,"url":"assets/ProductCard-aZrPdL37.js"},{"revision":null,"url":"assets/PageBar-DNaPusPm.js"},{"revision":null,"url":"assets/PageBar-DJWT4eaj.css"},{"revision":null,"url":"assets/OrdersView-DwH-CdbT.js"},{"revision":null,"url":"assets/OrdersView-DNKGvr4J.css"},{"revision":null,"url":"assets/NotificationsView-BYJ2kMU3.css"},{"revision":null,"url":"assets/NotificationsView-B5erqT9Y.js"},{"revision":null,"url":"assets/NewestView-CRqVtDuM.css"},{"revision":null,"url":"assets/NewestView-Ck-kfDLs.js"},{"revision":null,"url":"assets/LoginRegisterView-DIgrvcKn.css"},{"revision":null,"url":"assets/LoginRegisterView-BxGfq6Qb.js"},{"revision":null,"url":"assets/KeyCode-Dl7BYvJp.js"},{"revision":null,"url":"assets/index-FX8mzrjV.js"},{"revision":null,"url":"assets/index-CQtdsSs3.js"},{"revision":null,"url":"assets/index-CN-v7uYp.js"},{"revision":null,"url":"assets/index-C3cFbOta.css"},{"revision":null,"url":"assets/IamCallback-DlXOWqWp.js"},{"revision":null,"url":"assets/HomeView-DSTuecmb.css"},{"revision":null,"url":"assets/HomeView-CmQuuH6B.js"},{"revision":null,"url":"assets/FormItemContext-DbjT2GfY.js"},{"revision":null,"url":"assets/filters-C_cKdZcl.js"},{"revision":null,"url":"assets/FavoritesView-G8Eq8gge.js"},{"revision":null,"url":"assets/FavoritesView-BNvXFK2Z.css"},{"revision":null,"url":"assets/DashboardView-DjinhUjZ.css"},{"revision":null,"url":"assets/DashboardView-CBcbShu-.js"},{"revision":null,"url":"assets/CustomerChoiceView-TztEX5yz.js"},{"revision":null,"url":"assets/CustomerChoiceView-DB7yiqRu.css"},{"revision":null,"url":"assets/CompleteProfileView-hH_R3jUX.css"},{"revision":null,"url":"assets/CompleteProfileView-DupW6p4B.js"},{"revision":null,"url":"assets/CollectionView-BFYcJaFU.js"},{"revision":null,"url":"assets/CollectionView-Bfngyqms.css"},{"revision":null,"url":"assets/classCallCheck-DJjGN2cU.js"},{"revision":null,"url":"assets/ChildOrdersView-D6xgBGGQ.css"},{"revision":null,"url":"assets/ChildOrdersView-BF3rQgcj.js"},{"revision":null,"url":"assets/catalogStore-KIY-JJk-.js"},{"revision":null,"url":"assets/CartView-CyRqcM3j.css"},{"revision":null,"url":"assets/CartView-B1YZE1vT.js"},{"revision":null,"url":"assets/AppPullRefresh-DmpEfa19.css"},{"revision":null,"url":"assets/AppPullRefresh-D5o9arkH.js"},{"revision":null,"url":"assets/AppearanceView-X-VnjBQ6.css"},{"revision":null,"url":"assets/AppearanceView-C5Q3kWiJ.js"},{"revision":"4a6c858f7bf9105f8066ef3a53d711cb","url":"favicon.ico"},{"revision":"20f4680d54cc9ea71eba4ec3744084ac","url":"icon-192.png"},{"revision":"31319ea1f5911eed925072cfbab70d3d","url":"icon-512.png"},{"revision":"51e106ad6ff484a45660e4005febddcd","url":"manifest.webmanifest"}]); +This is generally NOT safe. Learn more at https://bit.ly/wb-precache`;console.warn(i)}}}install(e){return k(e,async()=>{const t=new O;this.strategy.plugins.push(t);for(const[n,c]of this._urlsToCacheKeys){const i=this._cacheKeysToIntegrities.get(c),o=this._urlsToCacheModes.get(n),h=new Request(n,{integrity:i,cache:o,credentials:"same-origin"});await Promise.all(this.strategy.handleAll({params:{cacheKey:c},request:h,event:e}))}const{updatedURLs:s,notUpdatedURLs:r}=t;return{updatedURLs:s,notUpdatedURLs:r}})}activate(e){return k(e,async()=>{const t=await self.caches.open(this.strategy.cacheName),s=await t.keys(),r=new Set(this._urlsToCacheKeys.values()),n=[];for(const c of s)r.has(c.url)||(await t.delete(c),n.push(c.url));return{deletedURLs:n}})}getURLsToCacheKeys(){return this._urlsToCacheKeys}getCachedURLs(){return[...this._urlsToCacheKeys.keys()]}getCacheKeyForURL(e){const t=new URL(e,location.href);return this._urlsToCacheKeys.get(t.href)}getIntegrityForCacheKey(e){return this._cacheKeysToIntegrities.get(e)}async matchPrecache(e){const t=e instanceof Request?e.url:e,s=this.getCacheKeyForURL(t);if(s)return(await self.caches.open(this.strategy.cacheName)).match(s)}createHandlerBoundToURL(e){const t=this.getCacheKeyForURL(e);if(!t)throw new l("non-precached-url",{url:e});return s=>(s.request=new Request(e),s.params=Object.assign({cacheKey:t},s.params),this.strategy.handle(s))}}let b;const K=()=>(b||(b=new G),b);try{self["workbox:routing:7.4.0"]&&_()}catch{}const v="GET",R=a=>a&&typeof a=="object"?a:{handle:a};class w{constructor(e,t,s=v){this.handler=R(t),this.match=e,this.method=s}setCatchHandler(e){this.catchHandler=R(e)}}class V extends w{constructor(e,t,s){const r=({url:n})=>{const c=e.exec(n.href);if(c&&!(n.origin!==location.origin&&c.index!==0))return c.slice(1)};super(r,t,s)}}class Q{constructor(){this._routes=new Map,this._defaultHandlerMap=new Map}get routes(){return this._routes}addFetchListener(){self.addEventListener("fetch",e=>{const{request:t}=e,s=this.handleRequest({request:t,event:e});s&&e.respondWith(s)})}addCacheListener(){self.addEventListener("message",e=>{if(e.data&&e.data.type==="CACHE_URLS"){const{payload:t}=e.data,s=Promise.all(t.urlsToCache.map(r=>{typeof r=="string"&&(r=[r]);const n=new Request(...r);return this.handleRequest({request:n,event:e})}));e.waitUntil(s),e.ports&&e.ports[0]&&s.then(()=>e.ports[0].postMessage(!0))}})}handleRequest({request:e,event:t}){const s=new URL(e.url,location.href);if(!s.protocol.startsWith("http"))return;const r=s.origin===location.origin,{params:n,route:c}=this.findMatchingRoute({event:t,request:e,sameOrigin:r,url:s});let i=c&&c.handler;const o=e.method;if(!i&&this._defaultHandlerMap.has(o)&&(i=this._defaultHandlerMap.get(o)),!i)return;let h;try{h=i.handle({url:s,request:e,event:t,params:n})}catch(u){h=Promise.reject(u)}const g=c&&c.catchHandler;return h instanceof Promise&&(this._catchHandler||g)&&(h=h.catch(async u=>{if(g)try{return await g.handle({url:s,request:e,event:t,params:n})}catch(L){L instanceof Error&&(u=L)}if(this._catchHandler)return this._catchHandler.handle({url:s,request:e,event:t});throw u})),h}findMatchingRoute({url:e,sameOrigin:t,request:s,event:r}){const n=this._routes.get(s.method)||[];for(const c of n){let i;const o=c.match({url:e,sameOrigin:t,request:s,event:r});if(o)return i=o,(Array.isArray(i)&&i.length===0||o.constructor===Object&&Object.keys(o).length===0||typeof o=="boolean")&&(i=void 0),{route:c,params:i}}return{}}setDefaultHandler(e,t=v){this._defaultHandlerMap.set(t,R(e))}setCatchHandler(e){this._catchHandler=R(e)}registerRoute(e){this._routes.has(e.method)||this._routes.set(e.method,[]),this._routes.get(e.method).push(e)}unregisterRoute(e){if(!this._routes.has(e.method))throw new l("unregister-route-but-not-found-with-method",{method:e.method});const t=this._routes.get(e.method).indexOf(e);if(t>-1)this._routes.get(e.method).splice(t,1);else throw new l("unregister-route-route-not-registered")}}let y;const z=()=>(y||(y=new Q,y.addFetchListener(),y.addCacheListener()),y);function J(a,e,t){let s;if(typeof a=="string"){const n=new URL(a,location.href),c=({url:i})=>i.href===n.href;s=new w(c,e,t)}else if(a instanceof RegExp)s=new V(a,e,t);else if(typeof a=="function")s=new w(a,e,t);else if(a instanceof w)s=a;else throw new l("unsupported-route-type",{moduleName:"workbox-routing",funcName:"registerRoute",paramName:"capture"});return z().registerRoute(s),s}function X(a,e=[]){for(const t of[...a.searchParams.keys()])e.some(s=>s.test(t))&&a.searchParams.delete(t);return a}function*Y(a,{ignoreURLParametersMatching:e=[/^utm_/,/^fbclid$/],directoryIndex:t="index.html",cleanURLs:s=!0,urlManipulation:r}={}){const n=new URL(a,location.href);n.hash="",yield n.href;const c=X(n,e);if(yield c.href,t&&c.pathname.endsWith("/")){const i=new URL(c.href);i.pathname+=t,yield i.href}if(s){const i=new URL(c.href);i.pathname+=".html",yield i.href}if(r){const i=r({url:n});for(const o of i)yield o.href}}class Z extends w{constructor(e,t){const s=({request:r})=>{const n=e.getURLsToCacheKeys();for(const c of Y(r.url,t)){const i=n.get(c);if(i){const o=e.getIntegrityForCacheKey(i);return{cacheKey:i,integrity:o}}}};super(s,e.strategy)}}function ee(a){const e=K(),t=new Z(e,a);J(t)}function te(a){K().precache(a)}function se(a,e){te(a),ee(e)}self.addEventListener("message",a=>{a.data&&a.data.type==="SKIP_WAITING"&&self.skipWaiting()});se([{"revision":"d9278c48f8a7f6c8ffd63b75bbde8431","url":"index.html"},{"revision":null,"url":"assets/workbox-window.prod.es5-BqEJf4Xk.js"},{"revision":null,"url":"assets/usePagedProducts-Dfd2dvnx.js"},{"revision":null,"url":"assets/TransactionsView-QJUT0Agr.css"},{"revision":null,"url":"assets/TransactionsView-IbI6E-sw.js"},{"revision":null,"url":"assets/SingleImageUploader-Cogbl9FI.js"},{"revision":null,"url":"assets/SingleImageUploader-BaDxKXWS.css"},{"revision":null,"url":"assets/SectionHead-YsBbRh09.js"},{"revision":null,"url":"assets/SectionHead-CDGrZss6.css"},{"revision":null,"url":"assets/SearchView-DRQJDTDf.js"},{"revision":null,"url":"assets/SearchView-B8CO_3LB.css"},{"revision":null,"url":"assets/SearchInput-DosQYiNS.js"},{"revision":null,"url":"assets/SearchInput-DEfgrsbu.css"},{"revision":null,"url":"assets/ReportView-CSkjz93w.js"},{"revision":null,"url":"assets/ReportView-BrhJZMTH.css"},{"revision":null,"url":"assets/RateStrip-BM0cz1ET.js"},{"revision":null,"url":"assets/RateStrip-B00WoPCp.css"},{"revision":null,"url":"assets/raf-nDFcuFT6.js"},{"revision":null,"url":"assets/ProfileView-CRrMEcnO.css"},{"revision":null,"url":"assets/ProfileView-CQEqt_G8.js"},{"revision":null,"url":"assets/ProductCard-Rxk1Fz5I.js"},{"revision":null,"url":"assets/ProductCard-D6-KxSf7.css"},{"revision":null,"url":"assets/PageBar-HEcoSwjE.js"},{"revision":null,"url":"assets/PageBar-DJWT4eaj.css"},{"revision":null,"url":"assets/OrdersView-DKHth8-i.css"},{"revision":null,"url":"assets/OrdersView-ChZr4TeF.js"},{"revision":null,"url":"assets/NotificationsView-C1OS_0OW.js"},{"revision":null,"url":"assets/NotificationsView-BYJ2kMU3.css"},{"revision":null,"url":"assets/NewestView-CRqVtDuM.css"},{"revision":null,"url":"assets/NewestView-BMWSaz4F.js"},{"revision":null,"url":"assets/MakeOrderView-C9rL7TjE.css"},{"revision":null,"url":"assets/MakeOrderView-BbkmtdQq.js"},{"revision":null,"url":"assets/MakeOrderStatusView-KNj-VY0s.js"},{"revision":null,"url":"assets/MakeOrderStatusView-CTreLH8h.css"},{"revision":null,"url":"assets/LoginRegisterView-YXS01jJu.js"},{"revision":null,"url":"assets/LoginRegisterView-DIgrvcKn.css"},{"revision":null,"url":"assets/KeyCode-CJkaCAgc.js"},{"revision":null,"url":"assets/isEqual-4qLLVpCV.js"},{"revision":null,"url":"assets/index-C6v9FxiB.js"},{"revision":null,"url":"assets/index-C3cFbOta.css"},{"revision":null,"url":"assets/index-BRKIhLwl.js"},{"revision":null,"url":"assets/index-6E0fX61D.js"},{"revision":null,"url":"assets/IamCallback-CJv82M1_.js"},{"revision":null,"url":"assets/HomeView-DSTuecmb.css"},{"revision":null,"url":"assets/HomeView-DkQixCVq.js"},{"revision":null,"url":"assets/FormItemContext-i27DxbTo.js"},{"revision":null,"url":"assets/filters-CmtC5ctw.js"},{"revision":null,"url":"assets/FavoritesView-D4uhWzf6.js"},{"revision":null,"url":"assets/FavoritesView-BNvXFK2Z.css"},{"revision":null,"url":"assets/DashboardView-IvrrMCbI.css"},{"revision":null,"url":"assets/DashboardView-0i6dxLCl.js"},{"revision":null,"url":"assets/CustomerChoiceView-k6dxoQeC.js"},{"revision":null,"url":"assets/CustomerChoiceView-BAraArtK.css"},{"revision":null,"url":"assets/CompleteProfileView-dA-JFzJ8.css"},{"revision":null,"url":"assets/CompleteProfileView-C7JLf-Nm.js"},{"revision":null,"url":"assets/CollectionView-Ccz1xfLj.js"},{"revision":null,"url":"assets/CollectionView-Bfngyqms.css"},{"revision":null,"url":"assets/classCallCheck-BINKwNli.js"},{"revision":null,"url":"assets/ChildOrdersView-VI9JoZBd.js"},{"revision":null,"url":"assets/ChildOrdersView-C_bGdhOX.css"},{"revision":null,"url":"assets/catalogStore-DqM2POWt.js"},{"revision":null,"url":"assets/CartView-BXG2gOP6.js"},{"revision":null,"url":"assets/CartView-Bhmq-OS2.css"},{"revision":null,"url":"assets/AppPullRefresh-DmpEfa19.css"},{"revision":null,"url":"assets/AppPullRefresh-B0f-tYJA.js"},{"revision":null,"url":"assets/AppearanceView-X-VnjBQ6.css"},{"revision":null,"url":"assets/AppearanceView-DbutwzY3.js"},{"revision":"4a6c858f7bf9105f8066ef3a53d711cb","url":"favicon.ico"},{"revision":"20f4680d54cc9ea71eba4ec3744084ac","url":"icon-192.png"},{"revision":"31319ea1f5911eed925072cfbab70d3d","url":"icon-512.png"},{"revision":"51e106ad6ff484a45660e4005febddcd","url":"manifest.webmanifest"}]); diff --git a/apps/user-app-v2/dist/version.json b/apps/user-app-v2/dist/version.json index c4ca4ad..8f98448 100644 --- a/apps/user-app-v2/dist/version.json +++ b/apps/user-app-v2/dist/version.json @@ -1,9 +1,9 @@ { "app": "user-app-v2", - "build": 219, - "version": "1.219", - "commit": "5204544", - "builtAt": "2026-10-28T12:54:55.503Z", + "build": 220, + "version": "1.220", + "commit": "959a272", + "builtAt": "2026-10-29T14:37:56.345Z", "history": [ { "build": 191, diff --git a/apps/user-app-v2/src/api/client.ts b/apps/user-app-v2/src/api/client.ts index e63453a..da29386 100644 --- a/apps/user-app-v2/src/api/client.ts +++ b/apps/user-app-v2/src/api/client.ts @@ -337,6 +337,15 @@ export interface ExpertCustomer { phone: string | null; store_name: string | null; pasazh_name: string | null; + /** What «ویرایش مشتری» opens with. */ + fname: string; + lname: string; + address: string | null; + zone: string | null; + city_id: string | null; + national_code: string | null; + /** Gregorian YYYY-MM-DD, or null. */ + birth_date: string | null; gram_level: string; remain: string; rial_remain: string; @@ -344,6 +353,47 @@ export interface ExpertCustomer { createdAt: string; } +/** The contact details an expert may change on one of their customers — never the percent or credit. */ +export interface ExpertCustomerEdit { + fname: string; + lname: string; + mobile?: string; + phone?: string | null; + address?: string | null; + store_name?: string | null; + pasazh_name?: string | null; + national_code?: string | null; + birth_date?: string | null; +} + +/** One «سفارش ساخت» request as the customer sees it. */ +export interface PreOrderRow { + id: string; + status: string; + /** The reference's label: ثبت سفارش، تایید ادمین، تایید کارگاه، … */ + sts_str_fa: string; + /** 1–5 on the tracker; 0 = cancelled. */ + step: number; + color: string | null; + size: string | null; + color_mina: string | null; + color_stone: string | null; + sum: number; + description: string | null; + image: string | null; + createdAt: string; +} + +export interface PreOrderInput { + color: string; + size?: string; + color_mina?: string; + color_stone?: string; + sum: number; + file_id?: string | null; + description?: string; +} + /** One row of "سفارش مشتریان". */ export interface ExpertChildOrder { id: string; @@ -592,6 +642,30 @@ export const api = { '/expert/child-orders', { method: 'POST', body: JSON.stringify({ page, search: search ?? null }) }, ), + /** + * The expert's real weight for each piece of an order in their hands, and + * optionally «ثبت نهایی» (hand it to the customer). Only raw weights travel: + * the making charge, the totals and the debt are the server's to compute. + * Mirrors legacy PUT /order/child/{id}. + */ + /** Switch one of the expert's customers off or on (legacy customer/toggle-active). */ + toggleExpertCustomer: (customerId: string) => + request<{ id: string; active: number }>(`/expert/customers/${encodeURIComponent(customerId)}/toggle-active`, { method: 'POST' }), + /** Correct a customer's contact details (legacy customer/update). */ + updateExpertCustomer: (customerId: string, body: ExpertCustomerEdit) => + request<{ id: string; name: string; mobile: string }>(`/expert/customers/${encodeURIComponent(customerId)}`, { + method: 'PUT', + body: JSON.stringify(body), + }), + // ── «سفارش ساخت» (legacy create-custom-order / get-custom-orders) ── + createPreOrder: (body: PreOrderInput) => + request('/customer/me/pre-orders', { method: 'POST', body: JSON.stringify(body) }), + getMyPreOrders: () => request<{ rows: PreOrderRow[] }>('/customer/me/pre-orders'), + adjustExpertChildOrder: (orderId: string, items: { id: string; rash_weight: number }[], finalSubmit: boolean) => + request<{ id: string; status: string }>(`/expert/child-orders/${encodeURIComponent(orderId)}`, { + method: 'PUT', + body: JSON.stringify({ items, final_submit: finalSubmit }), + }), // ── complete_profile ───────────────────────────────────────────────── // Ports POST /major/complete (henza_server Major/CustomerController::complete) diff --git a/apps/user-app-v2/src/components/product/CartItem.vue b/apps/user-app-v2/src/components/product/CartItem.vue index fb4e0b9..cd4ccc6 100644 --- a/apps/user-app-v2/src/components/product/CartItem.vue +++ b/apps/user-app-v2/src/components/product/CartItem.vue @@ -4,9 +4,12 @@ hairline borders, wine accent. Ported originally from legacy henza_pwa/src/components/product/cartItem.vue. - Dropped there and still absent: the "اجرت ریالی" (Rial wage) block, which - displayed `selectedVariant.rial_pay` — no such per-variant Rial field exists - anywhere in our domain model, so there is nothing honest to show. + The "اجرت ریالی" (Rial wage) block of legacy's cart line is back: it shows + `selectedVariant.rial_pay`, which the catalog serves from the variant's + `rialWage` and which the server copies onto the order line (OrdersService), + where it becomes rial debt on delivery. An earlier note here claimed no such + field existed; that was wrong, and the customer was charged a figure the cart + never showed. All cart behaviour is unchanged: quantity increment/decrement, remove at qty 1, and the note affordance that opens the parent's drawer. @@ -26,6 +29,7 @@
{{ selectedVariant?.rashWeightGrams }} گرم اجرت {{ wageLabel }}٪ + اجرت ریالی {{ price(rialWage) }} ریال
@@ -76,6 +80,7 @@ import { computed } from 'vue' import Icon from '../icon/Icon.vue' import { useProduct } from '../../composables/useProduct' import { useCartStore, type CartItem } from '../../stores/cartStore' +import { price } from '../../utils/filters' const props = defineProps<{ value: CartItem }>() const emit = defineEmits<{ (e: 'note', value: number): void }>() @@ -98,6 +103,9 @@ const decrement = () => { const { image, title, selectedVariant, wage } = useProduct(props.value.product, cart.variant(props.value)) +/** The variant's fixed rial making charge, per unit. */ +const rialWage = computed(() => Number(selectedVariant.value?.rial_pay ?? 0) || 0) + const wageLabel = computed(() => { const w = wage.value if (w == null) return '' diff --git a/apps/user-app-v2/src/router/index.ts b/apps/user-app-v2/src/router/index.ts index 8e577a6..d7dae43 100644 --- a/apps/user-app-v2/src/router/index.ts +++ b/apps/user-app-v2/src/router/index.ts @@ -40,6 +40,10 @@ export const router = createRouter({ }, { path: '/profile', name: 'profileData', component: () => import('../views/user/ProfileView.vue'), meta: { requiresAuth: true } }, { path: '/favorites', name: 'favoritesList', component: () => import('../views/user/FavoritesView.vue'), meta: { requiresAuth: true } }, + // «سفارش ساخت» — ask for a piece to be made, and follow the request. + // Reference paths and names kept (henza_pwa router/index.ts:113-128). + { path: '/makeOrder', name: 'makeOrderList', component: () => import('../views/user/MakeOrderView.vue'), meta: { requiresAuth: true } }, + { path: '/makeOrder_status', name: 'makeOrderStatus', component: () => import('../views/user/MakeOrderStatusView.vue'), meta: { requiresAuth: true } }, // Theme + reduced motion. Device preferences, so no requiresAuth. { path: '/settings/appearance', name: 'appearanceSettings', component: () => import('../views/user/AppearanceView.vue') }, // D21 — the sales expert's two screens. Reference paths and names kept diff --git a/apps/user-app-v2/src/stores/cartStore.ts b/apps/user-app-v2/src/stores/cartStore.ts index 3541a18..db65961 100644 --- a/apps/user-app-v2/src/stores/cartStore.ts +++ b/apps/user-app-v2/src/stores/cartStore.ts @@ -145,6 +145,18 @@ export const useCartStore = defineStore('cart', { }, 0) .toFixed(2) }, + /** + * The fixed rial making charge («اجرت ریالی») of the whole cart, in rial: + * each variant's `rial_pay` × quantity. This is what the server copies onto + * the order lines (OrdersService) and what becomes rial debt on delivery, + * so the cart shows it beside the weight. + */ + totalRial(): number { + return this.items.reduce((sum, item) => { + const v = this.variant(item) + return sum + (v?.rial_pay ? Number(v.rial_pay) * item.qty : 0) + }, 0) + }, clear() { this.items = [] persist(this.items) diff --git a/apps/user-app-v2/src/views/CartView.vue b/apps/user-app-v2/src/views/CartView.vue index 6c86f79..104372e 100644 --- a/apps/user-app-v2/src/views/CartView.vue +++ b/apps/user-app-v2/src/views/CartView.vue @@ -85,6 +85,9 @@ {{ cart.total() }} گرم + + + اجرت ریالی {{ price(cart.totalRial()) }} ریال +
@@ -146,6 +149,7 @@ import CartItem from '../components/product/CartItem.vue' import { useCartStore, type CartItem as CartItemType } from '../stores/cartStore' import { useSessionStore } from '../stores/session' import { api } from '../api/client' +import { price } from '../utils/filters' import { useCatalogStore } from '../stores/catalogStore' import { KEYS, useQueryCache } from '../stores/queryCache' @@ -441,6 +445,16 @@ onMounted(async () => { font-weight: 800; color: @ink; } +.cart__totalRial { + font-size: 11.5px; + font-weight: 700; + color: @inkSoft; +} +.cart__totalRial i { + font-style: normal; + font-weight: 600; + color: @inkFaint; +} .cart__totalValue i { font-style: normal; font-size: 11px; diff --git a/apps/user-app-v2/src/views/expert/ChildOrdersView.vue b/apps/user-app-v2/src/views/expert/ChildOrdersView.vue index 65d67e6..121ed14 100644 --- a/apps/user-app-v2/src/views/expert/ChildOrdersView.vue +++ b/apps/user-app-v2/src/views/expert/ChildOrdersView.vue @@ -16,11 +16,15 @@ returns orders at that status (`where('sts', 5)`, ApiMobileController:766) - the card is tappable, as the reference's was (:29) - Deliberately NOT ported: the reference's edit-order drawer behind that tap - (toEditOrder -> PUT /order/child/{id}) recalculated an order's weights and - prices from values the CLIENT sent. Bringing that across during a delivery - would put a money path in the app with no server-side recomputation; the tap - opens a read-only summary instead. Recorded in D21/DELIVERY.md. + The reference's edit-order drawer behind that tap (toEditOrder -> + PUT /order/child/{id}) is back, in a form that keeps the reason it was held + back: it used to recalculate an order's weights and prices from values the + CLIENT sent. Here the expert enters ONLY the real raw weight of each piece; + the server applies the making charge the order was placed at, recomputes the + totals and the customer's debt, and refuses anyone but the expert the order + belongs to (OrdersService.expertAdjust). The figures shown under each field + are a preview of that formula, not what is saved. «ثبت نهایی» hands the order + to the customer. Scope is the server's: every row belongs to a customer this expert referred. No id travels from the client. @@ -133,6 +137,37 @@
تحویل مسئول فروش
+ + +

وزن واقعی هر عدد (گرم)

+
+
+ {{ d.title }} + {{ d.qty }} عدد · اجرت {{ d.netPercent }}٪ +
+ +
+ {{ grams(preview(d)) }} g + ({{ d.qty }} × {{ grams(unitPreview(d)) }}) +
+
+
+ جمع وزن پس از ثبت + {{ grams(previewTotal) }} گرم +
+

{{ saveError }}

+
+ + +
+

+ آیا مطمئن به ثبت نهایی هستید؟ پس از آن سفارش تحویل مشتری می‌شود. + + +

+ @@ -140,8 +175,8 @@ @@ -405,6 +533,80 @@ onMounted(load) } /* Secondary now that "enter the account" is the primary action here. */ +.cch__actions { + display: flex; + gap: 10px; + margin-top: 10px; +} + +.cch__act { + flex: 1; + padding: 12px; + border: 1px solid @wine; + border-radius: 14px; + background: transparent; + color: @wine; + font-family: inherit; + font-size: 13.5px; + font-weight: 700; + cursor: pointer; + + &.is-danger { + border-color: @red; + color: @red; + } + + &:disabled { + opacity: 0.5; + cursor: default; + } +} + +.cch__confirm { + display: flex; + align-items: center; + gap: 10px; + margin: 12px 0 0; + font-size: 13px; + color: @inkSoft; +} + +.cch__link { + border: none; + background: transparent; + color: @inkFaint; + font-family: inherit; + font-size: 12.5px; + cursor: pointer; +} + +.cch__field { + display: flex; + flex-direction: column; + gap: 5px; + padding: 8px 0; + font-size: 12.5px; + color: @inkSoft; +} + +.cch__field input, +.cch__field textarea { + width: 100%; + padding: 10px 12px; + border: 1px solid @hairline; + border-radius: 12px; + background: transparent; + color: @ink; + font-family: inherit; + font-size: 14px; +} + +.cch__error { + margin: 8px 0 0; + font-size: 12.5px; + color: @red; +} + .cch__close { margin-top: 10px; width: 100%; diff --git a/apps/user-app-v2/src/views/user/DashboardView.vue b/apps/user-app-v2/src/views/user/DashboardView.vue index c0857a4..c3676e7 100644 --- a/apps/user-app-v2/src/views/user/DashboardView.vue +++ b/apps/user-app-v2/src/views/user/DashboardView.vue @@ -195,6 +195,18 @@ mcode, so every signed-in customer sees it and the server scopes it to their token. --> + + + + + @@ -286,6 +306,7 @@ import { brand } from '../../brand' import { computed, nextTick, onActivated, onMounted, reactive, ref } from 'vue' import { useRouter } from 'vue-router' +import { Drawer } from 'ant-design-vue' import AppPullRefresh from '../../components/ui/AppPullRefresh.vue' import Icon from '../../components/icon/Icon.vue' import PageBar from '../../components/ui/PageBar.vue' @@ -344,6 +365,15 @@ function goToDetails(id: number) { if (id === 4) router.push({ name: 'ChildOrder' }) if (id === 5) router.push({ name: 'customerChoice' }) if (id === 6) router.push({ name: 'report' }) + if (id === 7) makeOrderChoice.value = true +} + +// «سفارش ساخت»: the reference opened a two-button dialog — place a request, or +// see the ones already placed. +const makeOrderChoice = ref(false) +function chooseMakeOrder(name: 'makeOrderList' | 'makeOrderStatus') { + makeOrderChoice.value = false + router.push({ name }) } async function logOut() { @@ -802,4 +832,28 @@ onMounted(async () => { .dash__rate { margin-top: 12px; } + +.dash__choice { + display: flex; + flex-direction: column; + gap: 10px; + padding: 20px 16px 24px; +} + +.dash__choiceBtn { + padding: 15px; + border: 1px solid @wine; + border-radius: 14px; + background: @wine; + color: #fff; + font-family: inherit; + font-size: 15px; + font-weight: 700; + cursor: pointer; +} + +.dash__choiceBtn.is-quiet { + background: transparent; + color: @wine; +} diff --git a/apps/user-app-v2/src/views/user/MakeOrderStatusView.vue b/apps/user-app-v2/src/views/user/MakeOrderStatusView.vue new file mode 100644 index 0000000..dcd63da --- /dev/null +++ b/apps/user-app-v2/src/views/user/MakeOrderStatusView.vue @@ -0,0 +1,237 @@ + + + + + + diff --git a/apps/user-app-v2/src/views/user/MakeOrderView.vue b/apps/user-app-v2/src/views/user/MakeOrderView.vue new file mode 100644 index 0000000..1c546f3 --- /dev/null +++ b/apps/user-app-v2/src/views/user/MakeOrderView.vue @@ -0,0 +1,197 @@ + +