@fastybird/smart-panel-admin 1.1.0-alpha.3 → 1.1.0-alpha.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/{alert-B_504iE8.js → alert-BQTYQnER.js} +1 -1
- package/dist/assets/{card-add-form-hQfcolyj.js → card-add-form-Ck6-mLod.js} +1 -1
- package/dist/assets/{card-edit-form-BPs9Aljn.js → card-edit-form-DxlxRWrN.js} +1 -1
- package/dist/assets/{checkbox-DKrpi0d7.js → checkbox-Ct1KW9j2.js} +1 -1
- package/dist/assets/{clamp-BIBuaymK.js → clamp-Bz8nCcc6.js} +1 -1
- package/dist/assets/{col-Brj0AIcp.js → col-UcL8KWuz.js} +1 -1
- package/dist/assets/{collapse-CcS8OeLM.js → collapse-BMAQOZL8.js} +1 -1
- package/dist/assets/{common-CEAYa_VX.js → common-BlrTsYp4.js} +24 -24
- package/dist/assets/{components-CDS0rEqD.js → components-BCl_vqkh.js} +1 -1
- package/dist/assets/{components-DKCuWF26.js → components-BRoDURXE.js} +2 -2
- package/dist/assets/components-C80SHFcG.js +1 -0
- package/dist/assets/{components-B4a-3cag.js → components-C9BfAORH.js} +1 -1
- package/dist/assets/components-C_amdP0v.js +1 -0
- package/dist/assets/components-DAga4if7.js +2 -0
- package/dist/assets/components-DO_OG1j4.js +1 -0
- package/dist/assets/{components-CofHdxQO.js → components-SsYNmgAe.js} +1 -1
- package/dist/assets/components-bPVD__Pw.js +1 -0
- package/dist/assets/components-tSwiG4en.js +8 -0
- package/dist/assets/composables-2m9ra6Gg.js +1 -0
- package/dist/assets/composables-B1UgF1fo.js +1 -0
- package/dist/assets/{composables-o5wEPPAf.js → composables-B6mqSg_E.js} +1 -1
- package/dist/assets/{composables-CO2f80jd.js → composables-BRwonHAV.js} +1 -1
- package/dist/assets/composables-CS735TVh.js +1 -0
- package/dist/assets/composables-DhW08g2b2.js +1 -0
- package/dist/assets/composables-MOgrFVd2.js +1 -0
- package/dist/assets/composables-PXUNt-tc.js +1 -0
- package/dist/assets/{composables-DIjPmeHV.js → composables-TDMgkeOk.js} +1 -1
- package/dist/assets/{composables-D5CRUz8s.js → composables-Xla74SYE.js} +1 -1
- package/dist/assets/{composables-BiL7NDB2.js → composables-fXtWAsME.js} +1 -1
- package/dist/assets/config-DB5uU6lv.js +2 -0
- package/dist/assets/{dashboard-CQWK08VY.js → dashboard-LB4cuZv7.js} +2 -2
- package/dist/assets/dashboard.types-CmAH61tA.js +1 -0
- package/dist/assets/{data-source-edit-form-Ba0Rox_i.js → data-source-edit-form-B8ccwrVQ.js} +1 -1
- package/dist/assets/{descriptions-Bk8rb6i3.js → descriptions-D8nHSu3F.js} +1 -1
- package/dist/assets/{devices-DPaIRKfd.js → devices-B6BgB4Yw.js} +2 -2
- package/dist/assets/{devices-virtual.constants-Ckcs-m8t.js → devices-virtual.constants-Dti7rDJR.js} +1 -1
- package/dist/assets/{dialog-BKnLpTNm.js → dialog-BICM2Xbe.js} +1 -1
- package/dist/assets/{drawer-Bv6YcfZX.js → drawer-DJgGmol9.js} +1 -1
- package/dist/assets/form-PoOFmumT.js +12 -0
- package/dist/assets/index-gO_aD3ZM.js +10 -0
- package/dist/assets/{index-E5bAVcL9.css → index-qxTMOQVp.css} +1 -1
- package/dist/assets/input-number-DKFs6rPn.js +1 -0
- package/dist/assets/integration-config-dialog-BXTlbFkD.js +1 -0
- package/dist/assets/{keys-BYonWGX0.js → keys-J7s06zUV.js} +1 -1
- package/dist/assets/{layout-config-Cjya-WMb.js → layout-config-B6OpZGeM.js} +1 -1
- package/dist/assets/{layout-default-CS5XwxjF.js → layout-default-D1wGN9VG.js} +1 -1
- package/dist/assets/{layout-lock-CoJt4ng5.js → layout-lock-BVVq9YJ4.js} +1 -1
- package/dist/assets/layout-profile-D-1_a6Dd.js +1 -0
- package/dist/assets/{layout-profile-DaySzWNs.js → layout-profile-N3XqNTf3.js} +1 -1
- package/dist/assets/layout-sign-CvbjLRd2.js +1 -0
- package/dist/assets/{layout-sign-BR-IRKTg.js → layout-sign-Di4Hq0yu.js} +1 -1
- package/dist/assets/{list-data-sources-adjust-C1BWaGAY.js → list-data-sources-adjust-C_E-PVZZ.js} +1 -1
- package/dist/assets/{list-locations-B_k17JmN.js → list-locations-CZ9eQzKS.js} +1 -1
- package/dist/assets/{list-users-Dtqpo3YK.js → list-users-B5PiiD7k.js} +1 -1
- package/dist/assets/logs-entries.transformers-HHWOxKN-.js +1 -0
- package/dist/assets/{mcp.exceptions-DqhuYDrK.js → mcp.exceptions-BPGtzQ-L.js} +1 -1
- package/dist/assets/notifications.exceptions-CwBj-Vvh.js +1 -0
- package/dist/assets/{omit-DRbsINX4.js → omit-CLxUr8_o.js} +1 -1
- package/dist/assets/{page-configure-Bt3Zbbmn.js → page-configure-CAdm7vAk.js} +1 -1
- package/dist/assets/{page-configure-CVQE_kOC.js → page-configure-DB7q7mTf.js} +1 -1
- package/dist/assets/{pagination-CFSm62Hu.js → pagination-BCuLYs_W.js} +1 -1
- package/dist/assets/{radio-Cmy69XUu.js → radio-Bogyjga1.js} +1 -1
- package/dist/assets/{scene-add-form-CyeR3pxj.js → scene-add-form-CvhKyMmg.js} +1 -1
- package/dist/assets/{scene-edit-form-dBV9baT5.js → scene-edit-form-CqDsd82P.js} +1 -1
- package/dist/assets/schemas.utils-BHZ0MJE0.js +1 -0
- package/dist/assets/select-DTgGke01.js +1 -0
- package/dist/assets/{select-data-source-plugin-CgTE90rj.js → select-data-source-plugin-B5L75geT.js} +1 -1
- package/dist/assets/{slider-B7Mhws2_.js → slider-PaPkGT-_.js} +1 -1
- package/dist/assets/{spaces-DUnXUSuq.js → spaces-BrIV4DRc.js} +2 -2
- package/dist/assets/spaces-home-control.constants-DDgSTbk_.js +1 -0
- package/dist/assets/{steps-ChWGGNoh.js → steps-Cw7-fEld.js} +1 -1
- package/dist/assets/{system-DcykQsKX.js → system-CitR2a_O.js} +2 -2
- package/dist/assets/{table-CP4k6PuT.js → table-BXf7N0rb.js} +1 -1
- package/dist/assets/tabs-bVTlvkzX.js +1 -0
- package/dist/assets/{tile-detail-BbYkd7G4.js → tile-detail-DnXnJ-BI.js} +1 -1
- package/dist/assets/{tile-edit-form-DiShECn4.js → tile-edit-form-D1S6rZb5.js} +1 -1
- package/dist/assets/types-BrtPl24B.js +1 -0
- package/dist/assets/types-DvlsZ8qQ.js +1 -0
- package/dist/assets/{use-dialog-BFPWhCwQ.js → use-dialog-aFWpVYsw.js} +1 -1
- package/dist/assets/{use-ordered-children-CbAW48y2.js → use-ordered-children-CYVizl7x.js} +1 -1
- package/dist/assets/useBuddyChat-DvQPgsIX.js +1 -0
- package/dist/assets/{useConfigModule-l8zp4LY1.js → useConfigModule-C2d2v37P.js} +1 -1
- package/dist/assets/{useDataSources-CI2pLb0w.js → useDataSources-sR_x_yyt.js} +1 -1
- package/dist/assets/{useDevicesPlugins-IYuPoZmZ.js → useDevicesPlugins-BA5bjG9l.js} +1 -1
- package/dist/assets/useEventBus-BH4WQ_nq.js +1 -0
- package/dist/assets/useExtensions-QH0QtLKU.js +1 -0
- package/dist/assets/{useGeolocation-DlU1KRo-.js → useGeolocation-Dpq2oORG.js} +1 -1
- package/dist/assets/useLocation-CghMA-vm.js +1 -0
- package/dist/assets/{useMcpClients-D44DSCoV.js → useMcpClients-Dkh8Ey61.js} +1 -1
- package/dist/assets/{useModule-CGQr8Yht.js → useModule-CRJ6yZnq.js} +1 -1
- package/dist/assets/{useModules-BqwGbI5l.js → useModules-Ww3v2LZk.js} +1 -1
- package/dist/assets/{useNumberFormat-CLztaSFk.js → useNumberFormat-DG8-VSSE.js} +1 -1
- package/dist/assets/{usePage-D3Y3z-Z-.js → usePage-iMNf9o87.js} +1 -1
- package/dist/assets/{usePersonalTokens-DwMWVRNS.js → usePersonalTokens-B0Qdlw56.js} +1 -1
- package/dist/assets/{usePlugin-DQ16ENWC.js → usePlugin-BeF6k5Xa.js} +1 -1
- package/dist/assets/{usePlugins-BAUrRkxK.js → usePlugins-DvfAfej3.js} +1 -1
- package/dist/assets/useSpaces-2SKsqV-l.js +1 -0
- package/dist/assets/{useUuid-B2AwaEQg.js → useUuid-BiNKWprF.js} +1 -1
- package/dist/assets/{view-buddy-chat-DpaYzexP.js → view-buddy-chat-Dp5GC0Gs.js} +1 -1
- package/dist/assets/{view-card-add-BcIFVzzf.js → view-card-add-B_HQdgId.js} +1 -1
- package/dist/assets/view-card-edit-PY_ojb6G.js +1 -0
- package/dist/assets/{view-channel-KMBt7x1r.js → view-channel-VBR36Rbn.js} +1 -1
- package/dist/assets/view-channel-add-Vj566gBN.js +1 -0
- package/dist/assets/{view-channel-edit-DMGNRzXp.js → view-channel-edit-B3dwrzPj.js} +1 -1
- package/dist/assets/{view-channel-property-add-D6wgVVAD.js → view-channel-property-add-nMpqJ0Ob.js} +1 -1
- package/dist/assets/view-channel-property-edit-BxQMuL7w.js +1 -0
- package/dist/assets/{view-channels-BAfnLqdq.js → view-channels-BDRx9dSg.js} +1 -1
- package/dist/assets/{view-config-module-edit-BFQDbwC6.js → view-config-module-edit-_CR9FYc1.js} +1 -1
- package/dist/assets/{view-config-modules-Culfv_bK.js → view-config-modules-m17c1Itw.js} +1 -1
- package/dist/assets/{view-config-plugin-edit-DX364xd_.js → view-config-plugin-edit-uZ2b1wem.js} +1 -1
- package/dist/assets/{view-config-plugins-CK0vdPmj.js → view-config-plugins-D1v4d8_H.js} +1 -1
- package/dist/assets/{view-data-source-add-Bzb-61aK.js → view-data-source-add-D7uUH5Uc.js} +1 -1
- package/dist/assets/view-data-source-add-JOqY3Ax9.js +1 -0
- package/dist/assets/view-data-source-edit-BItu4eum.js +1 -0
- package/dist/assets/view-data-source-edit-DEg93Qr3.js +1 -0
- package/dist/assets/view-device-BH42AyJU.js +1 -0
- package/dist/assets/view-device-add-5gzFbap_.js +1 -0
- package/dist/assets/view-device-control-D1iHL-PG.js +1 -0
- package/dist/assets/{view-device-edit-C3s_k0Qb.js → view-device-edit-jFFmHSh7.js} +1 -1
- package/dist/assets/{view-devices-By3K8mW3.js → view-devices-DCZ2e0z0.js} +1 -1
- package/dist/assets/{view-devices-wizard-x1o4hu_X.js → view-devices-wizard-o_kZHPNb.js} +1 -1
- package/dist/assets/{view-display-pQhEo0QJ.js → view-display-5Hn5sWPZ.js} +1 -1
- package/dist/assets/{view-display-edit-KWE_nXux.js → view-display-edit-BNQYxXpt.js} +1 -1
- package/dist/assets/{view-display-tokens-BkuVjpd3.js → view-display-tokens-DJ_IGOcy.js} +1 -1
- package/dist/assets/{view-displays-CHfrmtje.js → view-displays-e9KUJJUz.js} +1 -1
- package/dist/assets/{view-extension-detail-ol0GG8Op.js → view-extension-detail-Bz2Qf-lB.js} +1 -1
- package/dist/assets/{view-extensions-DVIU3WDc.js → view-extensions-DLkGlWmU.js} +1 -1
- package/dist/assets/view-location-DRXUqln5.js +1 -0
- package/dist/assets/{view-location-add-CR2vX0YA.js → view-location-add-BNyDqhTZ.js} +1 -1
- package/dist/assets/view-location-edit-CM1DPwNX.js +1 -0
- package/dist/assets/view-locations-BN8GPdnZ.js +1 -0
- package/dist/assets/{view-lock-screen-CvMhzPRT.js → view-lock-screen-1Vwm2jGy.js} +1 -1
- package/dist/assets/view-mcp-clients-f9t--2J2.js +1 -0
- package/dist/assets/{view-mcp-oauth-consent-CdSzhX8Z.js → view-mcp-oauth-consent-B8khqeda.js} +1 -1
- package/dist/assets/view-mcp-oauth-management-D3c2vSnl.js +1 -0
- package/dist/assets/view-notifications-VJb9gFIy.js +1 -0
- package/dist/assets/view-onboarding-FDxjKhsz.js +1 -0
- package/dist/assets/{view-page-add-CKANfB0w.js → view-page-add-BDPt_b8F.js} +1 -1
- package/dist/assets/{view-page-configure-C-eA0dC4.js → view-page-configure-BPWn7Ny3.js} +1 -1
- package/dist/assets/view-page-configure-DvDNUd1u.js +1 -0
- package/dist/assets/{view-page-data-source-add-7ItspGgj.js → view-page-data-source-add-QHJueyUu.js} +1 -1
- package/dist/assets/view-page-data-source-edit-Cu3WiaWl.js +1 -0
- package/dist/assets/{view-page-edit-CWXaQZak.js → view-page-edit-D5aq17tK.js} +1 -1
- package/dist/assets/{view-page-Zu_2hwIi.js → view-page-oG5xdZtl.js} +1 -1
- package/dist/assets/{view-page-plugin-Cfto42Wh.js → view-page-plugin-YDjLQCR5.js} +1 -1
- package/dist/assets/{view-pages-BBiRpjJE.js → view-pages-Cm3BDGCm.js} +1 -1
- package/dist/assets/view-profile-general-BwtoezLV.js +1 -0
- package/dist/assets/view-profile-security-D6Wg35cz.js +1 -0
- package/dist/assets/{view-remote-access-DtZM_sYV.js → view-remote-access-DXMycWj6.js} +1 -1
- package/dist/assets/{view-scene-add-LFcdVTaN.js → view-scene-add-BztY0D7W.js} +1 -1
- package/dist/assets/{view-scene-edit-fX-u8fib.js → view-scene-edit-CLSlT_wP.js} +1 -1
- package/dist/assets/{view-scenes-DWbfoSPZ.js → view-scenes-B2biNvGx.js} +1 -1
- package/dist/assets/{view-sign-in-CZRERL0Y.js → view-sign-in-BDqoekQL.js} +1 -1
- package/dist/assets/{view-sign-up-CrUHPweO.js → view-sign-up-RJHv9boO.js} +1 -1
- package/dist/assets/view-simulator-device-wizard-B8aQTt-A.js +1 -0
- package/dist/assets/{view-space-add-BWXeqKGe.js → view-space-add-D17l50VQ.js} +1 -1
- package/dist/assets/{view-space-configure-DpiLxtMc.js → view-space-configure-CdcttTaV.js} +1 -1
- package/dist/assets/view-space-edit-v7oroJrp.js +1 -0
- package/dist/assets/{view-space-plugin-8dCIw60l.js → view-space-plugin-CfGxgpkq.js} +1 -1
- package/dist/assets/{view-spaces-BlGL7Tsw.js → view-spaces-CsxjOkle.js} +1 -1
- package/dist/assets/{view-spaces-wizard-BKBTNd3t.js → view-spaces-wizard-BPirZ9Aa.js} +1 -1
- package/dist/assets/{view-stats-DAvsMByk.js → view-stats-ClftjuyH.js} +1 -1
- package/dist/assets/{view-system-backups-BUw9L8nZ.js → view-system-backups-DLn57ltm.js} +1 -1
- package/dist/assets/{view-system-info-Dzmb0cpQ.js → view-system-info-DPiJJavB.js} +1 -1
- package/dist/assets/{view-system-log-detail-BfYGDRhq.js → view-system-log-detail-Bc0omAj2.js} +1 -1
- package/dist/assets/{view-system-logs-DyxQDzUR.js → view-system-logs-CCSGcjci.js} +1 -1
- package/dist/assets/{view-tile-CdKYi0pR.js → view-tile-CB1KgK-5.js} +1 -1
- package/dist/assets/{view-tile-add-Cn7SJEqT.js → view-tile-add-Bpwl35uX.js} +1 -1
- package/dist/assets/{view-tile-add-BXX2-rGD.js → view-tile-add-Ct5UPyHj.js} +1 -1
- package/dist/assets/{view-tile-data-source-add-pxfcE43r.js → view-tile-data-source-add-BsUJ65SR.js} +1 -1
- package/dist/assets/view-tile-data-source-edit-CfH2RQMK.js +1 -0
- package/dist/assets/{view-tile-edit-D80VgTdu.js → view-tile-edit-6Pt1jA5V.js} +1 -1
- package/dist/assets/view-tile-edit-Cu1iNWgN.js +1 -0
- package/dist/assets/view-tile-edit-DLOgjyK4.js +1 -0
- package/dist/assets/{view-user-add-MWHxy3nf.js → view-user-add-BPixnli9.js} +1 -1
- package/dist/assets/{view-user-edit-BJeiBIOb.js → view-user-edit-BxxSMKU4.js} +1 -1
- package/dist/assets/view-users-BftTio_a.js +1 -0
- package/dist/assets/view-virtual-device-wizard-BJUEmNEu.js +1 -0
- package/dist/assets/weather-CUmy8DMg.js +2 -0
- package/dist/assets/weather-forecast.transformers-CBGYqemp.js +1 -0
- package/dist/index.html +93 -93
- package/package.json +1 -1
- package/dist/assets/components-BqvPyJ09.js +0 -2
- package/dist/assets/components-CGY9a3zE.js +0 -1
- package/dist/assets/components-CtSAjzWY.js +0 -1
- package/dist/assets/components-Dg_-11L_.js +0 -1
- package/dist/assets/components-Dula1I7c.js +0 -1
- package/dist/assets/components-v7BtnQr-.js +0 -8
- package/dist/assets/composables-CRIJLd1I.js +0 -1
- package/dist/assets/composables-CdLuPMLl.js +0 -1
- package/dist/assets/composables-CuDyfiS0.js +0 -1
- package/dist/assets/composables-DNfuP9v9.js +0 -1
- package/dist/assets/composables-DrSNDrtP.js +0 -1
- package/dist/assets/composables-ZUeIfONp.js +0 -1
- package/dist/assets/config-CIAUSdP7.js +0 -2
- package/dist/assets/dashboard.types-FCvSt30R.js +0 -1
- package/dist/assets/form-CYGBQyZI.js +0 -12
- package/dist/assets/index-DsUh3vY9.js +0 -9
- package/dist/assets/input-number-DcR-vPr4.js +0 -1
- package/dist/assets/integration-config-dialog-CfcgPh5F.js +0 -1
- package/dist/assets/layout-profile-BH6_ndbj.js +0 -1
- package/dist/assets/layout-sign-lJc9My5g.js +0 -1
- package/dist/assets/logs-entries.transformers-CZw7f53p.js +0 -1
- package/dist/assets/notifications.exceptions-CTWKr2hv.js +0 -1
- package/dist/assets/schemas.utils-DPM2Btj1.js +0 -1
- package/dist/assets/select-BE-J6w_y.js +0 -1
- package/dist/assets/spaces-home-control.constants-DR2Pcn9V.js +0 -1
- package/dist/assets/tabs-BlmPldJW.js +0 -1
- package/dist/assets/types-BFzk34Iy.js +0 -1
- package/dist/assets/types-jnyNKIzd.js +0 -1
- package/dist/assets/useBuddyChat-BQeijZgm.js +0 -1
- package/dist/assets/useEventBus-C7h8fK0M.js +0 -1
- package/dist/assets/useExtensions-mIxpx3RO.js +0 -1
- package/dist/assets/useLocation-CKsKAhov.js +0 -1
- package/dist/assets/useSpaces-dSwttzjs.js +0 -1
- package/dist/assets/view-card-edit-BbS-QIUa.js +0 -1
- package/dist/assets/view-channel-add-CkU6QiFM.js +0 -1
- package/dist/assets/view-channel-property-edit-BX81I2m7.js +0 -1
- package/dist/assets/view-data-source-add-_7ip7mrf.js +0 -1
- package/dist/assets/view-data-source-edit-CoUrprKG.js +0 -1
- package/dist/assets/view-data-source-edit-DrlMJPDn.js +0 -1
- package/dist/assets/view-device-DaO5gtKC.js +0 -1
- package/dist/assets/view-device-add-CBukVLds.js +0 -1
- package/dist/assets/view-device-control-DaFqVxUq.js +0 -1
- package/dist/assets/view-location-Cv4_QxT3.js +0 -1
- package/dist/assets/view-location-edit-CPXCB6Ty.js +0 -1
- package/dist/assets/view-locations-DYzQbnuC.js +0 -1
- package/dist/assets/view-mcp-clients-CXdQQbgy.js +0 -1
- package/dist/assets/view-mcp-oauth-management-u-zf8VgR.js +0 -1
- package/dist/assets/view-notifications-Cg2TL1DH.js +0 -1
- package/dist/assets/view-onboarding-DTDmluyn.js +0 -1
- package/dist/assets/view-page-configure-C5n0g4eO.js +0 -1
- package/dist/assets/view-page-data-source-edit-DQu21ar1.js +0 -1
- package/dist/assets/view-profile-general-D_6x0Tyu.js +0 -1
- package/dist/assets/view-profile-security-BgZi5Vkz.js +0 -1
- package/dist/assets/view-simulator-device-wizard-1NlmPIqF.js +0 -1
- package/dist/assets/view-space-edit-uz1TPncu.js +0 -1
- package/dist/assets/view-tile-data-source-edit-CdWGlpDC.js +0 -1
- package/dist/assets/view-tile-edit-XzR_OQfI.js +0 -1
- package/dist/assets/view-tile-edit-rO9uSt8e.js +0 -1
- package/dist/assets/view-users-DKrdtOjY.js +0 -1
- package/dist/assets/view-virtual-device-wizard-JqYK7YnI.js +0 -1
- package/dist/assets/weather-dPU3SxIP.js +0 -2
- package/dist/assets/weather-forecast.transformers-BKEpj85v.js +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import"./rolldown-runtime-QTnfLwEv.js";import{Ar as e,D as t,Dr as n,Er as r,F as i,Ft as a,Gr as o,H as s,Hr as c,Ki as l,Mr as u,Mt as d,Nr as f,Nt as p,O as m,Or as h,Pr as g,Qr as _,Si as v,T as y,Vr as b,Wi as x,Wr as S,Xr as C,bi as ee,bt as w,ci as T,cn as E,di as te,ei as D,gt as O,ii as ne,ji as k,k as A,kr as j,n as M,q as N,qi as P,ti as F,ui as I,vr as L,x as R,xr as z,yr as B}from"./icon-with-child-CgZMNB3F.js";import{$r as re,Jr as ie,O as V,Ur as H,Xr as U,b as ae,dr as oe,ei as W,f as se,fr as ce,jt as le,kr as ue,p as G,ti as K}from"./common-CEAYa_VX.js";import{t as de}from"./alert-B_504iE8.js";import{t as fe}from"./radio-Cmy69XUu.js";import{t as pe}from"./dialog-BKnLpTNm.js";import{t as me}from"./empty-DvXiCUNF.js";import{n as he,t as ge}from"./steps-ChWGGNoh.js";import{t as _e}from"./directive-D42ORGRu.js";import{t as ve}from"./usePlugins-BAUrRkxK.js";import{i as ye}from"./config.constants-17QBQ_kF.js";import{t as be}from"./integration-config-dialog-CfcgPh5F.js";var xe=w(g({name:`ElPopconfirm`,__name:`popconfirm`,props:E({title:String,confirmButtonText:String,cancelButtonText:String,confirmButtonType:{type:String,values:i,default:`primary`},cancelButtonType:{type:String,values:i,default:`text`},icon:{type:N,default:()=>O},iconColor:{type:String,default:`#f90`},hideIcon:Boolean,hideAfter:{type:Number,default:200},effect:{...K.effect,default:`light`},teleported:K.teleported,persistent:K.persistent,width:{type:[String,Number],default:150},virtualTriggering:W.virtualTriggering,virtualRef:W.virtualRef}),emits:{confirm:e=>e instanceof MouseEvent,cancel:e=>e instanceof MouseEvent},setup(e,{expose:t,emit:i}){let o=e,c=i,{t:m}=p(),g=d(`popconfirm`),y=v(),S=v(),C=r(()=>k(y)?.popperRef),ee=()=>{S.value?.focus?.()},w=()=>{y.value?.onClose?.()},T=r(()=>({width:a(o.width)})),E=e=>{c(`confirm`,e),w()},te=e=>{c(`cancel`,e),w()},D=r(()=>o.confirmButtonText||m(`el.popconfirm.confirmButtonText`)),O=r(()=>o.cancelButtonText||m(`el.popconfirm.cancelButtonText`));return t({popperRef:C,hide:w}),(t,r)=>(_(),h(k(re),b({ref_key:`tooltipRef`,ref:y,trigger:`click`,effect:e.effect},t.$attrs,{"virtual-triggering":e.virtualTriggering,"virtual-ref":e.virtualRef,"popper-class":`${k(g).namespace.value}-popover`,"popper-style":T.value,teleported:e.teleported,"fallback-placements":[`bottom`,`top`,`right`,`left`],"hide-after":e.hideAfter,persistent:e.persistent,loop:``,onShow:ee}),{content:I(()=>[n(`div`,{ref_key:`rootRef`,ref:S,tabindex:`-1`,class:x(k(g).b())},[n(`div`,{class:x(k(g).e(`main`))},[!e.hideIcon&&e.icon?(_(),h(k(s),{key:0,class:x(k(g).e(`icon`)),style:l({color:e.iconColor})},{default:I(()=>[(_(),h(ne(e.icon)))]),_:1},8,[`class`,`style`])):j(`v-if`,!0),u(` `+P(e.title),1)],2),n(`div`,{class:x(k(g).e(`action`))},[F(t.$slots,`actions`,{confirm:E,cancel:te},()=>[f(k(A),{size:`small`,type:e.cancelButtonType===`text`?``:e.cancelButtonType,text:e.cancelButtonType===`text`,onClick:te},{default:I(()=>[u(P(O.value),1)]),_:1},8,[`type`,`text`]),f(k(A),{size:`small`,type:e.confirmButtonType===`text`?``:e.confirmButtonType,text:e.confirmButtonType===`text`,onClick:E},{default:I(()=>[u(P(D.value),1)]),_:1},8,[`type`,`text`])])],2)],2)]),default:I(()=>[t.$slots.reference?F(t.$slots,`reference`,{key:0}):j(`v-if`,!0)]),_:3},16,[`effect`,`virtual-triggering`,`virtual-ref`,`popper-class`,`popper-style`,`teleported`,`hide-after`,`persistent`]))}})),q=`buddy`,Se=`buddy-module`,Ce=function(e){return e.BUDDY=`buddy_module-chat`,e}({}),J=`none`,we=`none`,Y=`none`,Te=v([]),Ee=v(!1),De=v(!1),Oe=()=>{let e=G();return{providerStatuses:Te,providerStatusesFetched:Ee,providerFetchFailed:De,fetchProviderStatuses:async()=>{De.value=!1;try{let{data:t,error:n}=await e.client.GET(`/${M}/${q}/providers`);if(n||!t){De.value=!0;return}Te.value=t.data}catch{De.value=!0}finally{Ee.value=!0}}}},X=new Map,Z=e=>(X.has(e)||X.set(e,{statuses:v([]),fetched:v(!1),failed:v(!1)}),X.get(e)),Q=e=>{let t=G(),n=Z(e),r=e===`stt`?`/${M}/${q}/providers/stt`:`/${M}/${q}/providers/tts`;return{providerStatuses:n.statuses,providerStatusesFetched:n.fetched,providerFetchFailed:n.failed,fetchProviderStatuses:async()=>{n.failed.value=!1;try{let{data:e,error:i}=await t.client.GET(r);if(i||!e){n.failed.value=!0;return}n.statuses.value=e.data}catch{n.failed.value=!0}finally{n.fetched.value=!0}}}},ke=()=>{let{providerStatuses:e,providerStatusesFetched:t,providerFetchFailed:n,fetchProviderStatuses:r}=Q(`stt`);return{sttProviderStatuses:e,sttProviderStatusesFetched:t,sttProviderFetchFailed:n,fetchSttProviderStatuses:r}},Ae=()=>{let{providerStatuses:e,providerStatusesFetched:t,providerFetchFailed:n,fetchProviderStatuses:r}=Q(`tts`);return{ttsProviderStatuses:e,ttsProviderStatusesFetched:t,ttsProviderFetchFailed:n,fetchTtsProviderStatuses:r}},je=[`onClick`],Me={class:`grow-1 min-w-0`},Ne={class:`text-sm truncate`},Pe={class:`text-xs text-[var(--el-text-color-secondary)] mt-0.5`},Fe={key:0,class:`text-xs text-[var(--el-text-color-placeholder)] mt-0.5 truncate`},Ie=g({name:`BuddyConversationList`,__name:`buddy-conversation-list`,props:{conversations:{},activeId:{},spaces:{}},emits:[`select`,`delete`],setup(r,{emit:i}){let a=r,o=e=>e?a.spaces.find(t=>t.id===e)?.name??null:null,c=i,{t:l}=y(),u=v(Date.now()),d=setInterval(()=>{u.value=Date.now()},6e4);C(()=>clearInterval(d));let p=e=>{let t=new Date(e),n=u.value-t.getTime(),r=Math.floor(n/6e4),i=Math.floor(n/36e5),a=Math.floor(n/864e5);return r<1?l(`buddyModule.texts.justNow`):r<60?l(`buddyModule.texts.minutesAgo`,{n:r}):i<24?l(`buddyModule.texts.hoursAgo`,{n:i}):l(`buddyModule.texts.daysAgo`,{n:a})};return(i,a)=>(_(),h(k(ie),{class:`h-full`},{default:I(()=>[(_(!0),e(z,null,D(r.conversations,i=>(_(),e(`div`,{key:i.id,class:x([`group flex items-center gap-2 px-3 py-2 cursor-pointer hover:bg-[var(--el-fill-color-light)]`,{"bg-[var(--el-fill-color)]":i.id===r.activeId}]),onClick:e=>c(`select`,i.id)},[n(`div`,Me,[n(`div`,Ne,P(i.title||k(l)(`buddyModule.texts.newConversation`)),1),n(`div`,Pe,P(p(i.updated_at)),1),i.space_id?(_(),e(`div`,Fe,P(o(i.space_id)||k(l)(`buddyModule.texts.noSpace`)),1)):j(``,!0)]),f(k(xe),{title:k(l)(`buddyModule.texts.confirmDelete`),"confirm-button-text":k(l)(`buddyModule.buttons.delete.title`),"cancel-button-text":k(l)(`buddyModule.buttons.cancel.title`),onConfirm:e=>c(`delete`,i.id)},{reference:I(()=>[f(k(A),{class:`opacity-0 group-hover:opacity-100`,size:`small`,text:``,onClick:a[0]||=B(()=>{},[`stop`])},{default:I(()=>[f(k(s),null,{default:I(()=>[f(k(t),{icon:`mdi:delete-outline`})]),_:1})]),_:1})]),_:1},8,[`title`,`confirm-button-text`,`cancel-button-text`,`onConfirm`])],10,je))),128))]),_:1}))}}),Le={key:1,class:`text-sm whitespace-pre-wrap`},Re=g({name:`BuddyMessageBubble`,__name:`buddy-message-bubble`,props:{message:{},showSpeaker:{type:Boolean,default:!1},isPlaying:{type:Boolean,default:!1},isLoadingAudio:{type:Boolean,default:!1}},emits:[`play`,`stop`],setup(i,{emit:a}){let o=i,c=a,l=r(()=>o.message.role===`user`),u=r(()=>new Date(o.message.created_at).toLocaleTimeString([],{hour:`2-digit`,minute:`2-digit`})),d=r(()=>o.isPlaying?`mdi:stop-circle-outline`:`mdi:volume-high`),p=()=>{o.isPlaying||o.isLoadingAudio?c(`stop`):c(`play`,o.message.id)};return(r,a)=>(_(),e(`div`,{class:x([`flex mb-3`,l.value?`justify-end`:`justify-start`])},[n(`div`,{class:x([`max-w-[80%] rounded-lg px-3 py-2`,l.value?`bg-[var(--el-color-primary)] text-white`:`bg-[var(--el-fill-color-light)]`])},[l.value?(_(),e(`div`,Le,P(i.message.content),1)):(_(),h(k(V),{key:0,content:i.message.content,class:`text-sm`},null,8,[`content`])),n(`div`,{class:x([`flex items-center gap-1 text-xs mt-1 opacity-60`,l.value?`justify-end`:`justify-start`])},[n(`span`,null,P(u.value),1),i.showSpeaker?(_(),e(`button`,{key:0,class:`inline-flex items-center justify-center w-[18px] h-[18px] p-0 border-none bg-transparent cursor-pointer opacity-70 hover:opacity-100`,onClick:p},[i.isLoadingAudio?(_(),h(k(s),{key:0,class:`is-loading`,size:14},{default:I(()=>[f(k(t),{icon:`mdi:loading`})]),_:1})):(_(),h(k(s),{key:1,size:14},{default:I(()=>[f(k(t),{icon:d.value},null,8,[`icon`])]),_:1}))])):j(``,!0)],2)],2)],2))}}),ze=v([]),Be=v(!1),Ve=v(!1),He=()=>{let e=G();return{messagingProviderStatuses:ze,messagingProviderStatusesFetched:Be,messagingProviderFetchFailed:Ve,fetchMessagingProviderStatuses:async()=>{Ve.value=!1;try{let{data:t,error:n}=await e.client.GET(`/${M}/${q}/providers/messaging`);if(n||!t){Ve.value=!0;return}ze.value=t.data}catch{Ve.value=!0}finally{Be.value=!0}}}},Ue={class:`min-h-[200px]`},We={key:0,class:`text-center py-8`},Ge={key:1,class:`flex flex-col gap-3`},Ke={class:`flex items-center gap-3 p-3`},qe=[`onClick`],Je={class:`flex-1 min-w-0`},Ye={class:`font-medium`},Xe={key:0,class:`text-xs text-[var(--el-text-color-secondary)] ml-2`},Ze={key:0,class:`text-xs text-gray-500 truncate`},Qe={key:0,class:`border-t border-primary/20 px-3 py-2 flex items-center justify-between gap-2`},$e={class:`flex items-center gap-2 text-xs min-w-0`},et={class:`text-green-600`},tt={class:`text-orange-600`},nt={class:`m-0 mb-2`},rt={class:`flex flex-col gap-3 mb-4`},it={class:`flex items-center gap-3 p-3`},at=[`onClick`],ot={class:`flex-1 min-w-0`},st={class:`font-medium`},ct={key:0,class:`text-xs text-gray-500 truncate`},lt={key:0,class:`border-t border-primary/20 px-3 py-2 flex items-center justify-between gap-2`},ut={class:`flex items-center gap-2 text-xs min-w-0`},dt={class:`text-green-600`},ft={class:`text-orange-600`},pt={class:`m-0 mb-2`},mt={class:`flex flex-col gap-3`},ht={class:`flex items-center gap-3 p-3`},gt=[`onClick`],_t={class:`flex-1 min-w-0`},vt={class:`font-medium`},yt={key:0,class:`text-xs text-gray-500 truncate`},bt={key:0,class:`border-t border-primary/20 px-3 py-2 flex items-center justify-between gap-2`},xt={class:`flex items-center gap-2 text-xs min-w-0`},St={class:`text-green-600`},Ct={class:`text-orange-600`},wt={class:`flex flex-col gap-3`},Tt={class:`flex items-center gap-3 p-3`},Et=[`onClick`],Dt={class:`flex-1 min-w-0`},Ot={class:`font-medium`},kt={key:0,class:`text-xs text-gray-500 truncate`},At={key:0,class:`border-t border-primary/20 px-3 py-2 flex items-center justify-between gap-2`},jt={class:`flex items-center gap-2 text-xs min-w-0`},Mt={class:`text-green-600`},Nt={class:`text-orange-600`},Pt={key:3,class:`flex flex-col items-center text-center py-8 px-4`},Ft={class:`text-2xl font-bold mb-4`},It={class:`flex flex-col gap-3 max-w-sm w-full`},Lt={key:0,class:`flex items-center gap-3 p-3 rounded-lg bg-green-50`},Rt={key:1,class:`flex items-center gap-3 p-3 rounded-lg bg-gray-50`},zt={class:`text-gray-400`},Bt={key:2,class:`flex items-center gap-3 p-3 rounded-lg bg-green-50`},Vt={key:3,class:`flex items-center gap-3 p-3 rounded-lg bg-gray-50`},Ht={class:`text-gray-400`},Ut={key:4,class:`flex items-center gap-3 p-3 rounded-lg bg-green-50`},Wt={key:5,class:`flex items-center gap-3 p-3 rounded-lg bg-gray-50`},Gt={class:`text-gray-400`},Kt={class:`flex justify-between`},qt={key:1},Jt={class:`flex gap-2`},$=g({name:`BuddySetupWizard`,__name:`buddy-setup-wizard`,props:{visible:{type:Boolean}},emits:[`update:visible`,`completed`],setup(i,{emit:a}){let o=i,c=a,{t:l}=y(),d=se(),p=ae(),m=p.getStore(oe),g=p.getStore(ce),b=p.getStore(le),{getByName:C}=ve(),{providerStatuses:w,fetchProviderStatuses:E}=Oe(),{ttsProviderStatuses:O,fetchTtsProviderStatuses:ne}=Ae(),{sttProviderStatuses:M,fetchSttProviderStatuses:N}=ke(),{messagingProviderStatuses:F,fetchMessagingProviderStatuses:L}=He(),R=v(!1),B=v(0),re=v(!1),V=v(void 0),H=v(void 0),U=v(void 0),W=v(void 0),G=ee(new Set),K=v(!1),xe=v(``),q=v(``),Se=r(()=>O.value.length>0||M.value.length>0),Ce=r(()=>F.value.length>0),J=r(()=>{let e=[`provider`];return Se.value&&e.push(`voice`),Ce.value&&e.push(`messaging`),e.push(`done`),e}),we=r(()=>J.value.join(`,`)),Y=r(()=>J.value[B.value]??`done`);T(J,e=>{let t=e.length-1;B.value>t&&(B.value=t)});let Te=r(()=>{let e=Y.value;return e===`voice`||e===`messaging`}),Ee=r(()=>{let e=Y.value;if(e===`provider`){if(!V.value)return!0;let e=w.value.find(e=>e.type===V.value);return!!e&&!e.configured}if(e===`voice`){if(H.value){let e=O.value.find(e=>e.type===H.value);if(e&&!e.configured)return!0}if(U.value){let e=M.value.find(e=>e.type===U.value);if(e&&!e.configured)return!0}return!1}if(e===`messaging`){if(W.value){let e=F.value.find(e=>e.type===W.value);if(e&&!e.configured)return!0}return!1}return!1}),De={"buddy-openai-plugin":`mdi:creation`,"buddy-openai-codex-plugin":`mdi:code-braces`,"buddy-claude-plugin":`mdi:head-snowflake`,"buddy-claude-setup-token-plugin":`mdi:key-variant`,"buddy-ollama-plugin":`mdi:server`,"buddy-elevenlabs-plugin":`mdi:waveform`,"buddy-system-tts-plugin":`mdi:text-to-speech`,"buddy-stt-whisper-local-plugin":`mdi:microphone`,"buddy-voiceai-plugin":`mdi:account-voice`,"buddy-telegram-plugin":`mdi:send`,"buddy-whatsapp-plugin":`mdi:chat`,"buddy-discord-plugin":`mdi:forum`},X=e=>De[e]??`mdi:robot`,Z=e=>G.has(e),Q=e=>b.findByType(e)?.canToggleEnabled??!0,je=e=>{let t=C(e);return t?!!(t.elements?.find(e=>e.type===ye))?.components?.pluginConfigEditForm:!1},Me=r(()=>w.value.find(e=>e.type===V.value)),Ne=r(()=>Me.value?.name??``),Pe=r(()=>F.value.find(e=>e.type===W.value)?.name??``),Fe=r(()=>{let e=[];if(H.value){let t=O.value.find(e=>e.type===H.value)?.name;t&&e.push(`TTS: ${t}`)}if(U.value){let t=M.value.find(e=>e.type===U.value)?.name;t&&e.push(`STT: ${t}`)}return e.join(`, `)}),Ie=async(e,t)=>{G.add(e);try{await b.update({type:e,data:{enabled:t}}),await E(),t?(V.value=e,$(e)):V.value===e&&(V.value=void 0)}catch{}finally{G.delete(e)}},Le=async(e,t)=>{G.add(e);try{await b.update({type:e,data:{enabled:t}}),await ne(),t?(H.value=e,$(e)):H.value===e&&(H.value=void 0)}catch{}finally{G.delete(e)}},Re=async(e,t)=>{G.add(e);try{await b.update({type:e,data:{enabled:t}}),await N(),t?(U.value=e,$(e)):U.value===e&&(U.value=void 0)}catch{}finally{G.delete(e)}},ze=async(e,t)=>{G.add(e);try{await b.update({type:e,data:{enabled:t}}),await L(),t?(W.value=e,$(e)):W.value===e&&(W.value=void 0)}catch{}finally{G.delete(e)}},Be=(e,t)=>{xe.value=e,q.value=t,K.value=!0},Ve=()=>{E(),ne(),N(),L()},$=async e=>{if(!g.findByType(e))try{await g.get({type:e})}catch{}},Yt=async(e=!1)=>{re.value=!0;try{let t={type:`buddy-module`,enabled:!0};return V.value&&(t.provider=V.value),e&&(t.voiceEnabled=!!(H.value||U.value),t.ttsPlugin=H.value??`none`,t.sttPlugin=U.value??`none`),await m.edit({data:t}),!0}catch(e){return d.error(e instanceof Error?e.message:l(`buddyModule.wizard.saveError`)),!1}finally{re.value=!1}},Xt=()=>{B.value<J.value.length-1&&B.value++},Zt=()=>{B.value>0&&B.value--},Qt=()=>{Y.value===`voice`?(H.value=void 0,U.value=void 0):Y.value===`messaging`&&(W.value=void 0),Xt()},$t=()=>{Xt()},en=async()=>{await Yt(!0)&&(c(`update:visible`,!1),c(`completed`))},tn=async()=>{R.value=!0;try{await Promise.all([b.fetch(),E(),ne(),N(),L()]);let e=w.value.find(e=>e.selected)??w.value.find(e=>e.enabled),t=O.value.find(e=>e.selected)??O.value.find(e=>e.enabled),n=M.value.find(e=>e.selected)??M.value.find(e=>e.enabled);e&&e.type!==`none`&&(V.value=e.type),t&&(H.value=t.type),n&&(U.value=n.type);let r=[];e&&e.type!==`none`&&r.push($(e.type)),t&&r.push($(t.type)),n&&r.push($(n.type)),await Promise.all(r)}finally{R.value=!1}};return T(()=>o.visible,e=>{e&&(B.value=0,V.value=void 0,H.value=void 0,U.value=void 0,W.value=void 0,re.value=!1,K.value=!1,G.clear(),tn())}),S(()=>{o.visible&&tn()}),(r,a)=>(_(),h(k(pe),{"model-value":i.visible,title:k(l)(`buddyModule.wizard.title`),width:`640px`,"close-on-click-modal":!1,"onUpdate:modelValue":a[5]||=e=>c(`update:visible`,e)},{footer:I(()=>[n(`div`,Kt,[B.value>0?(_(),h(k(A),{key:0,onClick:Zt},{default:I(()=>[u(P(k(l)(`buddyModule.wizard.buttons.back`)),1)]),_:1})):(_(),e(`div`,qt)),n(`div`,Jt,[Te.value?(_(),h(k(A),{key:0,onClick:Qt},{default:I(()=>[u(P(k(l)(`buddyModule.wizard.buttons.skip`)),1)]),_:1})):j(``,!0),Y.value===`done`?(_(),h(k(A),{key:1,type:`primary`,onClick:en},{default:I(()=>[u(P(k(l)(`buddyModule.wizard.buttons.startChatting`)),1)]),_:1})):(_(),h(k(A),{key:2,type:`primary`,disabled:Ee.value,loading:re.value,onClick:$t},{default:I(()=>[u(P(k(l)(`buddyModule.wizard.buttons.next`)),1)]),_:1},8,[`disabled`,`loading`]))])])]),default:I(()=>[R.value?j(``,!0):(_(),h(k(he),{key:we.value,active:B.value,"finish-status":`success`,"align-center":``,class:`mb-6`},{default:I(()=>[(_(!0),e(z,null,D(J.value,e=>(_(),h(k(ge),{key:e,title:k(l)(`buddyModule.wizard.steps.${e}`)},null,8,[`title`]))),128))]),_:1},8,[`active`])),Y.value===`provider`?(_(),h(k(de),{key:1,type:`info`,title:k(l)(`buddyModule.wizard.providerDescription`),closable:!1,"show-icon":``,class:`mb-4!`},null,8,[`title`])):Y.value===`voice`?(_(),h(k(de),{key:2,type:`info`,title:k(l)(`buddyModule.wizard.voiceDescription`),closable:!1,"show-icon":``,class:`mb-4!`},null,8,[`title`])):Y.value===`messaging`?(_(),h(k(de),{key:3,type:`info`,title:k(l)(`buddyModule.wizard.messagingDescription`),closable:!1,"show-icon":``,class:`mb-4!`},null,8,[`title`])):j(``,!0),te((_(),e(`div`,Ue,[Y.value===`provider`?(_(),h(k(ie),{key:0,"max-height":`40vh`},{default:I(()=>[k(w).length===0&&!R.value?(_(),e(`div`,We,[f(k(me),{description:k(l)(`buddyModule.wizard.noProvidersAvailable`)},null,8,[`description`])])):(_(),e(`div`,Ge,[(_(!0),e(z,null,D(k(w),r=>(_(),e(`div`,{key:r.type,class:x([`rounded-lg border transition-all duration-300`,r.enabled?`border-primary bg-primary/5`:`border-gray-200`])},[n(`div`,Ke,[f(k(fe),{modelValue:V.value,"onUpdate:modelValue":a[0]||=e=>V.value=e,value:r.type,disabled:!r.enabled,class:`mr-0! shrink-0`},null,8,[`modelValue`,`value`,`disabled`]),n(`div`,{class:x([`flex items-center gap-3 flex-1 min-w-0`,r.enabled?`cursor-pointer`:``]),onClick:e=>r.enabled&&(V.value=r.type)},[f(k(s),{size:32,class:x([`shrink-0`,r.enabled?`text-primary`:`text-gray-400`])},{default:I(()=>[f(k(t),{icon:X(r.type)},null,8,[`icon`])]),_:2},1032,[`class`]),n(`div`,Je,[n(`div`,Ye,[u(P(r.name)+` `,1),r.default_model?(_(),e(`span`,Xe,P(r.default_model),1)):j(``,!0)]),r.description?(_(),e(`div`,Ze,P(r.description),1)):j(``,!0)])],10,qe),f(k(ue),{"model-value":r.enabled,disabled:!Q(r.type)||Z(r.type),loading:Z(r.type),"onUpdate:modelValue":e=>Ie(r.type,!!e)},null,8,[`model-value`,`disabled`,`loading`,`onUpdate:modelValue`])]),r.enabled?(_(),e(`div`,Qe,[n(`div`,$e,[r.configured?(_(),e(z,{key:0},[f(k(s),{size:14,class:`text-green-500`},{default:I(()=>[f(k(t),{icon:`mdi:check-circle`})]),_:1}),n(`span`,et,P(k(l)(`buddyModule.wizard.configured`)),1)],64)):(_(),e(z,{key:1},[f(k(s),{size:14,class:`text-orange-500`},{default:I(()=>[f(k(t),{icon:`mdi:alert-circle-outline`})]),_:1}),n(`span`,tt,P(k(l)(`buddyModule.wizard.configRequired`)),1)],64))]),je(r.type)?(_(),h(k(A),{key:0,size:`small`,text:``,type:`primary`,onClick:e=>Be(r.type,r.name)},{default:I(()=>[f(k(s),{size:14,class:`mr-1`},{default:I(()=>[f(k(t),{icon:`mdi:cog-outline`})]),_:1}),u(` `+P(k(l)(`buddyModule.wizard.buttons.configure`)),1)]),_:1},8,[`onClick`])):j(``,!0)])):j(``,!0)],2))),128))]))]),_:1})):j(``,!0),Y.value===`voice`?(_(),h(k(ie),{key:1,"max-height":`40vh`},{default:I(()=>[n(`h4`,nt,P(k(l)(`buddyModule.wizard.ttsHeading`)),1),n(`div`,rt,[(_(!0),e(z,null,D(k(O),r=>(_(),e(`div`,{key:r.type,class:x([`rounded-lg border transition-all duration-300`,r.enabled?`border-primary bg-primary/5`:`border-gray-200`])},[n(`div`,it,[f(k(fe),{modelValue:H.value,"onUpdate:modelValue":a[1]||=e=>H.value=e,value:r.type,disabled:!r.enabled,class:`mr-0! shrink-0`},null,8,[`modelValue`,`value`,`disabled`]),n(`div`,{class:x([`flex items-center gap-3 flex-1 min-w-0`,r.enabled?`cursor-pointer`:``]),onClick:e=>r.enabled&&(H.value=r.type)},[f(k(s),{size:32,class:x([`shrink-0`,r.enabled?`text-primary`:`text-gray-400`])},{default:I(()=>[f(k(t),{icon:X(r.type)},null,8,[`icon`])]),_:2},1032,[`class`]),n(`div`,ot,[n(`div`,st,P(r.name),1),r.description?(_(),e(`div`,ct,P(r.description),1)):j(``,!0)])],10,at),f(k(ue),{"model-value":r.enabled,disabled:!Q(r.type)||Z(r.type),loading:Z(r.type),"onUpdate:modelValue":e=>Le(r.type,!!e)},null,8,[`model-value`,`disabled`,`loading`,`onUpdate:modelValue`])]),r.enabled?(_(),e(`div`,lt,[n(`div`,ut,[r.configured?(_(),e(z,{key:0},[f(k(s),{size:14,class:`text-green-500`},{default:I(()=>[f(k(t),{icon:`mdi:check-circle`})]),_:1}),n(`span`,dt,P(k(l)(`buddyModule.wizard.configured`)),1)],64)):(_(),e(z,{key:1},[f(k(s),{size:14,class:`text-orange-500`},{default:I(()=>[f(k(t),{icon:`mdi:alert-circle-outline`})]),_:1}),n(`span`,ft,P(k(l)(`buddyModule.wizard.configRequired`)),1)],64))]),je(r.type)?(_(),h(k(A),{key:0,size:`small`,text:``,type:`primary`,onClick:e=>Be(r.type,r.name)},{default:I(()=>[f(k(s),{size:14,class:`mr-1`},{default:I(()=>[f(k(t),{icon:`mdi:cog-outline`})]),_:1}),u(` `+P(k(l)(`buddyModule.wizard.buttons.configure`)),1)]),_:1},8,[`onClick`])):j(``,!0)])):j(``,!0)],2))),128))]),n(`h4`,pt,P(k(l)(`buddyModule.wizard.sttHeading`)),1),n(`div`,mt,[(_(!0),e(z,null,D(k(M),r=>(_(),e(`div`,{key:r.type,class:x([`rounded-lg border transition-all duration-300`,r.enabled?`border-primary bg-primary/5`:`border-gray-200`])},[n(`div`,ht,[f(k(fe),{modelValue:U.value,"onUpdate:modelValue":a[2]||=e=>U.value=e,value:r.type,disabled:!r.enabled,class:`mr-0! shrink-0`},null,8,[`modelValue`,`value`,`disabled`]),n(`div`,{class:x([`flex items-center gap-3 flex-1 min-w-0`,r.enabled?`cursor-pointer`:``]),onClick:e=>r.enabled&&(U.value=r.type)},[f(k(s),{size:32,class:x([`shrink-0`,r.enabled?`text-primary`:`text-gray-400`])},{default:I(()=>[f(k(t),{icon:X(r.type)},null,8,[`icon`])]),_:2},1032,[`class`]),n(`div`,_t,[n(`div`,vt,P(r.name),1),r.description?(_(),e(`div`,yt,P(r.description),1)):j(``,!0)])],10,gt),f(k(ue),{"model-value":r.enabled,disabled:!Q(r.type)||Z(r.type),loading:Z(r.type),"onUpdate:modelValue":e=>Re(r.type,!!e)},null,8,[`model-value`,`disabled`,`loading`,`onUpdate:modelValue`])]),r.enabled?(_(),e(`div`,bt,[n(`div`,xt,[r.configured?(_(),e(z,{key:0},[f(k(s),{size:14,class:`text-green-500`},{default:I(()=>[f(k(t),{icon:`mdi:check-circle`})]),_:1}),n(`span`,St,P(k(l)(`buddyModule.wizard.configured`)),1)],64)):(_(),e(z,{key:1},[f(k(s),{size:14,class:`text-orange-500`},{default:I(()=>[f(k(t),{icon:`mdi:alert-circle-outline`})]),_:1}),n(`span`,Ct,P(k(l)(`buddyModule.wizard.configRequired`)),1)],64))]),je(r.type)?(_(),h(k(A),{key:0,size:`small`,text:``,type:`primary`,onClick:e=>Be(r.type,r.name)},{default:I(()=>[f(k(s),{size:14,class:`mr-1`},{default:I(()=>[f(k(t),{icon:`mdi:cog-outline`})]),_:1}),u(` `+P(k(l)(`buddyModule.wizard.buttons.configure`)),1)]),_:1},8,[`onClick`])):j(``,!0)])):j(``,!0)],2))),128))])]),_:1})):j(``,!0),Y.value===`messaging`?(_(),h(k(ie),{key:2,"max-height":`40vh`},{default:I(()=>[n(`div`,wt,[(_(!0),e(z,null,D(k(F),r=>(_(),e(`div`,{key:r.type,class:x([`rounded-lg border transition-all duration-300`,r.enabled?`border-primary bg-primary/5`:`border-gray-200`])},[n(`div`,Tt,[f(k(fe),{modelValue:W.value,"onUpdate:modelValue":a[3]||=e=>W.value=e,value:r.type,disabled:!r.enabled,class:`mr-0! shrink-0`},null,8,[`modelValue`,`value`,`disabled`]),n(`div`,{class:x([`flex items-center gap-3 flex-1 min-w-0`,r.enabled?`cursor-pointer`:``]),onClick:e=>r.enabled&&(W.value=r.type)},[f(k(s),{size:32,class:x([`shrink-0`,r.enabled?`text-primary`:`text-gray-400`])},{default:I(()=>[f(k(t),{icon:X(r.type)},null,8,[`icon`])]),_:2},1032,[`class`]),n(`div`,Dt,[n(`div`,Ot,P(r.name),1),r.description?(_(),e(`div`,kt,P(r.description),1)):j(``,!0)])],10,Et),f(k(ue),{"model-value":r.enabled,disabled:!Q(r.type)||Z(r.type),loading:Z(r.type),"onUpdate:modelValue":e=>ze(r.type,!!e)},null,8,[`model-value`,`disabled`,`loading`,`onUpdate:modelValue`])]),r.enabled?(_(),e(`div`,At,[n(`div`,jt,[r.configured?(_(),e(z,{key:0},[f(k(s),{size:14,class:`text-green-500`},{default:I(()=>[f(k(t),{icon:`mdi:check-circle`})]),_:1}),n(`span`,Mt,P(k(l)(`buddyModule.wizard.configured`)),1)],64)):(_(),e(z,{key:1},[f(k(s),{size:14,class:`text-orange-500`},{default:I(()=>[f(k(t),{icon:`mdi:alert-circle-outline`})]),_:1}),n(`span`,Nt,P(k(l)(`buddyModule.wizard.configRequired`)),1)],64))]),je(r.type)?(_(),h(k(A),{key:0,size:`small`,text:``,type:`primary`,onClick:e=>Be(r.type,r.name)},{default:I(()=>[f(k(s),{size:14,class:`mr-1`},{default:I(()=>[f(k(t),{icon:`mdi:cog-outline`})]),_:1}),u(` `+P(k(l)(`buddyModule.wizard.buttons.configure`)),1)]),_:1},8,[`onClick`])):j(``,!0)])):j(``,!0)],2))),128))])]),_:1})):j(``,!0),Y.value===`done`?(_(),e(`div`,Pt,[f(k(s),{size:80,class:`mb-6 text-green-500`},{default:I(()=>[f(k(t),{icon:`mdi:check-circle-outline`})]),_:1}),n(`h2`,Ft,P(k(l)(`buddyModule.wizard.doneTitle`)),1),f(k(de),{type:`info`,title:k(l)(`buddyModule.wizard.doneDescription`),closable:!1,"show-icon":``,class:`mb-8! max-w-md`},null,8,[`title`]),n(`div`,It,[V.value?(_(),e(`div`,Lt,[f(k(s),{size:20,class:`text-green-500 shrink-0`},{default:I(()=>[f(k(t),{icon:`mdi:check`})]),_:1}),n(`span`,null,P(k(l)(`buddyModule.wizard.summaryLlm`,{name:Ne.value})),1)])):(_(),e(`div`,Rt,[f(k(s),{size:20,class:`text-gray-400 shrink-0`},{default:I(()=>[f(k(t),{icon:`mdi:minus`})]),_:1}),n(`span`,zt,P(k(l)(`buddyModule.wizard.summaryLlmSkipped`)),1)])),Se.value&&Fe.value?(_(),e(`div`,Bt,[f(k(s),{size:20,class:`text-green-500 shrink-0`},{default:I(()=>[f(k(t),{icon:`mdi:check`})]),_:1}),n(`span`,null,P(k(l)(`buddyModule.wizard.summaryVoice`,{summary:Fe.value})),1)])):Se.value?(_(),e(`div`,Vt,[f(k(s),{size:20,class:`text-gray-400 shrink-0`},{default:I(()=>[f(k(t),{icon:`mdi:minus`})]),_:1}),n(`span`,Ht,P(k(l)(`buddyModule.wizard.summaryVoiceSkipped`)),1)])):j(``,!0),Ce.value&&W.value?(_(),e(`div`,Ut,[f(k(s),{size:20,class:`text-green-500 shrink-0`},{default:I(()=>[f(k(t),{icon:`mdi:check`})]),_:1}),n(`span`,null,P(k(l)(`buddyModule.wizard.summaryMessaging`,{name:Pe.value})),1)])):Ce.value?(_(),e(`div`,Wt,[f(k(s),{size:20,class:`text-gray-400 shrink-0`},{default:I(()=>[f(k(t),{icon:`mdi:minus`})]),_:1}),n(`span`,Gt,P(k(l)(`buddyModule.wizard.summaryMessagingSkipped`)),1)])):j(``,!0)])])):j(``,!0)])),[[k(_e),R.value]]),f(be,{visible:K.value,"onUpdate:visible":a[4]||=e=>K.value=e,"plugin-type":xe.value,"plugin-name":q.value,onSaved:Ve},null,8,[`visible`,`plugin-type`,`plugin-name`])]),_:1},8,[`model-value`,`title`]))}}),Yt={class:`flex flex-col h-full`},Xt={key:0,class:`flex items-center justify-center h-full`},Zt={class:`max-w-md w-full`},Qt={class:`flex gap-2`},$t={class:`flex gap-2`},en={class:`flex gap-2`},tn={key:3,class:`mt-4 px-4`},nn={class:`text-sm text-[var(--el-text-color-secondary)] mb-2`},rn={class:`flex flex-col gap-1`},an={key:1,class:`flex items-center justify-center h-full`},on={key:1,class:`flex justify-start mb-3`},sn={class:`bg-[var(--el-fill-color-light)] rounded-lg px-3 py-2`},cn={class:`flex items-center gap-2 text-sm text-[var(--el-text-color-secondary)]`},ln={class:`flex items-end gap-2 p-3 b-t b-t-solid b-t-[var(--el-border-color-light)]`},un=g({name:`BuddyChatArea`,__name:`buddy-chat-area`,props:{messages:{},isSending:{type:Boolean},isLoadingMessages:{type:Boolean},hasActiveConversation:{type:Boolean},isProviderNotConfigured:{type:Boolean},selectedProvider:{},providerStatuses:{},isTtsConfigured:{type:Boolean},playingMessageId:{},audioLoading:{type:Boolean}},emits:[`send`,`play-audio`,`stop-audio`,`wizard-completed`],setup(i,{emit:a}){let o=i,l=a,{t:d}=y(),p=R(),g=v(``),b=v(null),x=v(!1),S=r(()=>o.providerStatuses.filter(e=>!e.selected)),C=()=>{c(()=>{c(()=>{let e=b.value?.wrapRef;e&&e.scrollTo({top:e.scrollHeight,behavior:`smooth`})})})},ee=()=>{let e=g.value.trim();!e||o.isSending||(g.value=``,l(`send`,e))};return T(()=>o.messages.length,()=>{C()}),T(()=>o.isSending,e=>{e&&C()}),(r,a)=>(_(),e(`div`,Yt,[i.isProviderNotConfigured?(_(),e(`div`,Xt,[n(`div`,Zt,[i.selectedProvider?i.selectedProvider.enabled?(_(),h(k(m),{key:2,icon:`warning`,title:k(d)(`buddyModule.texts.providerMissingConfig`,{name:i.selectedProvider.name}),"sub-title":k(d)(`buddyModule.texts.providerMissingConfigHint`)},{extra:I(()=>[n(`div`,en,[f(k(A),{type:`primary`,onClick:a[4]||=e=>x.value=!0},{default:I(()=>[f(k(s),{class:`mr-1`},{default:I(()=>[f(k(t),{icon:`mdi:magic-staff`})]),_:1}),u(` `+P(k(d)(`buddyModule.buttons.setupWizard.title`)),1)]),_:1}),f(k(A),{onClick:a[5]||=e=>k(p).push(`/config/plugins/${i.selectedProvider.type}`)},{default:I(()=>[u(P(k(d)(`buddyModule.buttons.configure.title`)),1)]),_:1})])]),_:1},8,[`title`,`sub-title`])):(_(),h(k(m),{key:1,icon:`warning`,title:k(d)(`buddyModule.texts.providerNotEnabled`,{name:i.selectedProvider.name}),"sub-title":k(d)(`buddyModule.texts.providerNotEnabledHint`)},{extra:I(()=>[n(`div`,$t,[f(k(A),{type:`primary`,onClick:a[2]||=e=>x.value=!0},{default:I(()=>[f(k(s),{class:`mr-1`},{default:I(()=>[f(k(t),{icon:`mdi:magic-staff`})]),_:1}),u(` `+P(k(d)(`buddyModule.buttons.setupWizard.title`)),1)]),_:1}),f(k(A),{onClick:a[3]||=e=>k(p).push(`/config/plugins/${i.selectedProvider.type}`)},{default:I(()=>[u(P(k(d)(`buddyModule.buttons.configure.title`)),1)]),_:1})])]),_:1},8,[`title`,`sub-title`])):(_(),h(k(m),{key:0,icon:`warning`,title:k(d)(`buddyModule.texts.noProviderSelected`),"sub-title":k(d)(`buddyModule.texts.noProviderSelectedHint`)},{extra:I(()=>[n(`div`,Qt,[f(k(A),{type:`primary`,onClick:a[0]||=e=>x.value=!0},{default:I(()=>[f(k(s),{class:`mr-1`},{default:I(()=>[f(k(t),{icon:`mdi:magic-staff`})]),_:1}),u(` `+P(k(d)(`buddyModule.buttons.setupWizard.title`)),1)]),_:1}),f(k(A),{onClick:a[1]||=e=>k(p).push(`/config/modules/buddy-module`)},{default:I(()=>[u(P(k(d)(`buddyModule.buttons.configure.title`)),1)]),_:1})])]),_:1},8,[`title`,`sub-title`])),S.value.length>0?(_(),e(`div`,tn,[n(`div`,nn,P(k(d)(`buddyModule.texts.availableProviders`)),1),n(`div`,rn,[(_(!0),e(z,null,D(S.value,t=>(_(),e(`div`,{key:t.type,class:`flex items-center justify-between text-sm py-1`},[n(`span`,null,P(t.name),1),f(k(H),{type:t.configured?`success`:`info`,size:`small`},{default:I(()=>[u(P(t.configured?k(d)(`buddyModule.texts.configured`):k(d)(`buddyModule.texts.notConfigured`)),1)]),_:2},1032,[`type`])]))),128))])])):j(``,!0)])])):!i.hasActiveConversation&&!i.isLoadingMessages?(_(),e(`div`,an,[f(k(me),{description:k(d)(`buddyModule.texts.emptyChat`)},null,8,[`description`])])):(_(),e(z,{key:2},[f(k(ie),{ref_key:`scrollbarRef`,ref:b,class:`grow-1 p-4`},{default:I(()=>[n(`div`,null,[i.messages.length===0&&!i.isLoadingMessages?(_(),h(k(me),{key:0,description:k(d)(`buddyModule.texts.startConversation`)},null,8,[`description`])):j(``,!0),(_(!0),e(z,null,D(i.messages,e=>(_(),h(Re,{key:e.id,message:e,"show-speaker":i.isTtsConfigured&&e.role===`assistant`,"is-playing":i.playingMessageId===e.id&&!i.audioLoading,"is-loading-audio":i.playingMessageId===e.id&&i.audioLoading,onPlay:a[6]||=e=>l(`play-audio`,e),onStop:a[7]||=e=>l(`stop-audio`)},null,8,[`message`,`show-speaker`,`is-playing`,`is-loading-audio`]))),128)),i.isSending?(_(),e(`div`,on,[n(`div`,sn,[n(`div`,cn,[f(k(s),{class:`is-loading`},{default:I(()=>[f(k(t),{icon:`mdi:loading`})]),_:1}),u(` `+P(k(d)(`buddyModule.texts.thinking`)),1)])])])):j(``,!0)])]),_:1},512),n(`div`,ln,[f(k(U),{modelValue:g.value,"onUpdate:modelValue":a[8]||=e=>g.value=e,type:`textarea`,autosize:{minRows:1,maxRows:6},resize:`none`,placeholder:k(d)(`buddyModule.fields.message.placeholder`),disabled:i.isSending,onKeydown:L(B(ee,[`exact`,`prevent`]),[`enter`])},null,8,[`modelValue`,`placeholder`,`disabled`,`onKeydown`]),f(k(A),{type:`primary`,disabled:!g.value.trim()||i.isSending,onClick:ee},{default:I(()=>[f(k(s),null,{default:I(()=>[f(k(t),{icon:`mdi:send`})]),_:1})]),_:1},8,[`disabled`])])],64)),f($,{visible:x.value,"onUpdate:visible":a[9]||=e=>x.value=e,onCompleted:a[10]||=e=>l(`wizard-completed`)},null,8,[`visible`])]))}}),dn=()=>{let{t:e}=y(),t=G(),n=se(),{providerStatuses:i,providerStatusesFetched:a,fetchProviderStatuses:s}=Oe(),{ttsProviderStatuses:l,ttsProviderStatusesFetched:u,fetchTtsProviderStatuses:d}=Ae(),f=v([]),p=v(null),m=v([]),h=v(!1),g=v(!1),_=v(!1),b=r(()=>i.value.find(e=>e.selected)),x=r(()=>{if(!a.value)return!1;if(i.value.length===0)return!0;let e=b.value;return!e||!e.enabled||!e.configured}),S=r(()=>f.value.find(e=>e.id===p.value)),C=r(()=>p.value!==null),ee=async()=>{h.value=!0;try{let{data:r,error:i,response:a}=await t.client.GET(`/${M}/${q}/conversations`);if(i||!r){a?.status!==503&&n.error(e(`buddyModule.messages.errors.loadConversations`));return}f.value=r.data}catch(t){n.error(t instanceof Error?t.message:e(`buddyModule.messages.errors.loadConversations`))}finally{h.value=!1}},w=async r=>{try{let{data:i,error:a,response:o}=await t.client.POST(`/${M}/${q}/conversations`,{body:{data:{title:r??void 0}}});if(a||!i){o?.status!==503&&n.error(e(`buddyModule.messages.errors.createConversation`));return}let s=i.data;return f.value.unshift(s),p.value=s.id,m.value=[],s}catch(t){n.error(t instanceof Error?t.message:e(`buddyModule.messages.errors.createConversation`))}},T=async(r,i)=>{i||(g.value=!0);try{let{data:a,error:o,response:s}=await t.client.GET(`/${M}/${q}/conversations/{id}/messages`,{params:{path:{id:r}}});if(o||!a){!i&&s?.status!==503&&n.error(e(`buddyModule.messages.errors.loadMessages`));return}p.value===r&&(m.value=a.data)}catch(t){i||n.error(t instanceof Error?t.message:e(`buddyModule.messages.errors.loadMessages`))}finally{i||(g.value=!1)}},E=e=>T(e,!1),te=e=>T(e,!0),D=async e=>{p.value=e,await E(e)},O=async r=>{if(!p.value||!r.trim())return;let i=p.value,a=`pending_${Date.now()}`,o={id:a,conversation_id:i,role:`user`,content:r.trim(),created_at:new Date().toISOString()};m.value.push(o),_.value=!0,await c();try{let{error:o,response:s}=await t.client.POST(`/${M}/${q}/conversations/{id}/messages`,{params:{path:{id:i}},body:{data:{content:r.trim()}}});if(o){m.value=m.value.filter(e=>e.id!==a),n.error(s?.status===503?e(`buddyModule.messages.errors.providerUnavailable`):e(`buddyModule.messages.errors.sendMessage`));return}p.value===i&&(await E(i),m.value=m.value.filter(e=>e.id!==a));let c=f.value.find(e=>e.id===i);c&&(c.updated_at=new Date().toISOString(),f.value.sort((e,t)=>new Date(t.updated_at).getTime()-new Date(e.updated_at).getTime()))}catch(t){m.value=m.value.filter(e=>e.id!==a),n.error(t instanceof Error?t.message:e(`buddyModule.messages.errors.sendMessage`))}finally{_.value=!1}},ne=async r=>{try{let{error:i}=await t.client.DELETE(`/${M}/${q}/conversations/{id}`,{params:{path:{id:r}}});if(i){n.error(e(`buddyModule.messages.errors.deleteConversation`));return}if(f.value=f.value.filter(e=>e.id!==r),p.value===r){p.value=null,m.value=[];let e=f.value[0];if(e)try{await D(e.id)}catch{}}}catch(t){n.error(t instanceof Error?t.message:e(`buddyModule.messages.errors.deleteConversation`))}},k=r(()=>u.value?l.value.some(e=>e.selected&&e.configured):!1),A=v(null),j=v(!1),N=null,P=null,F=()=>{N&&=(N.onended=null,N.onerror=null,N.pause(),null),P&&=(URL.revokeObjectURL(P),null),A.value=null,j.value=!1},I=null,L=0;return o(()=>{F()}),{conversations:f,activeConversationId:p,messages:m,activeConversation:S,hasActiveConversation:C,isLoadingConversations:h,isLoadingMessages:g,isSending:_,isProviderNotConfigured:x,providerStatuses:i,selectedProviderStatus:b,isTtsConfigured:k,playingMessageId:A,audioLoading:j,fetchConversations:ee,fetchProviderStatuses:s,fetchTtsProviderStatuses:d,createConversation:w,selectConversation:D,refreshMessages:te,sendMessage:O,deleteConversation:ne,playMessageAudio:async r=>{F(),I&&=(I.abort(),null);let i=p.value;if(!i)return;j.value=!0,A.value=r;let a=++L,o=new AbortController;I=o;try{let{data:s,error:c}=await t.client.GET(`/${M}/${q}/conversations/{id}/messages/{messageId}/audio`,{params:{path:{id:i,messageId:r}},signal:o.signal,parseAs:`blob`});if(a!==L)return;if(c||!s)throw Error(`Failed to fetch audio`);P=URL.createObjectURL(s),N=new Audio(P),N.onended=()=>F(),N.onerror=()=>{n.error(e(`buddyModule.messages.errors.audioPlayback`)),F()},j.value=!1,I=null,await N.play()}catch(t){if(t instanceof DOMException&&t.name===`AbortError`)return;a===L&&(n.error(e(`buddyModule.messages.errors.audioPlayback`)),F())}},stopAudio:F}};export{ke as a,q as c,Y as d,we as f,Ae as i,J as l,un as n,Oe as o,Ie as r,Se as s,dn as t,Ce as u};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{B as e}from"./common-CEAYa_VX.js";var t=()=>{let t=e();return{eventBus:t,register:(e,n)=>{t.on(e,n)},unregister:(e,n)=>{t.off(e,n)},emit:(e,n)=>{t.emit(e,n)}}};export{t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{Er as e}from"./icon-with-child-CgZMNB3F.js";import{An as t,aa as n,b as r,jt as i}from"./common-CEAYa_VX.js";var a=()=>{let a=r().getStore(i),{data:o,semaphore:s}=n(a);return{extensions:e(()=>Object.values(o.value)),modules:e(()=>Object.values(o.value).filter(e=>e.kind===t.module)),plugins:e(()=>Object.values(o.value).filter(e=>e.kind===t.plugin)),areLoading:e(()=>s.value.fetching.items),fetchExtensions:async()=>{await a.fetch()}}};export{a as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{Er as e}from"./icon-with-child-CgZMNB3F.js";import{aa as t,b as n,dt as r,ht as i,l as a,mt as o,ot as s,st as c,t as l,vt as u,yt as d}from"./common-CEAYa_VX.js";var f=Symbol(`FB-Module-Weather-Locations`),p=Symbol(`FB-Module-Weather-WeatherDay`),m=Symbol(`FB-Module-Weather-WeatherForecast`),h=class extends Error{exception;constructor(e,t=null){super(e),this.name=`WeatherException`,this.exception=t}},g=class extends h{code;constructor(e,t=null,n=null){super(e,n),this.name=`WeatherApiException`,this.code=t}},_=class extends h{constructor(e,t=null){super(e,t),this.name=`WeatherValidationException`}},v=i({temperature:o(),temperatureMin:o().nullable(),temperatureMax:o().nullable(),feelsLike:o(),pressure:o(),humidity:o(),weather:i({code:o(),main:u(),description:u(),icon:u()}),wind:i({speed:o(),deg:o(),gust:o().nullable()}),clouds:o(),rain:o().nullable(),snow:o().nullable(),sunrise:d([u().datetime({offset:!0}),c()]).transform(e=>e instanceof Date?e:new Date(e)),sunset:d([u().datetime({offset:!0}),c()]).transform(e=>e instanceof Date?e:new Date(e)),dayTime:d([u().datetime({offset:!0}),c()]).transform(e=>e instanceof Date?e:new Date(e))});i({getting:s()}),i({data:r({})}),i({data:i({temperature:o(),temperatureMin:o().nullable(),temperatureMax:o().nullable(),feelsLike:o(),pressure:o(),humidity:o(),weather:i({code:o(),main:u(),description:u(),icon:u()}),wind:i({speed:o(),deg:o(),gust:o().nullable()}),clouds:o(),rain:o().nullable(),snow:o().nullable(),sunrise:d([u().datetime({offset:!0}),c()]).transform(e=>e instanceof Date?e:new Date(e)),sunset:d([u().datetime({offset:!0}),c()]).transform(e=>e instanceof Date?e:new Date(e)),dayTime:d([u().datetime({offset:!0}),c()]).transform(e=>e instanceof Date?e:new Date(e))})}),i({temperature:o(),temperature_min:o().nullable().optional(),temperature_max:o().nullable().optional(),feels_like:o(),pressure:o(),humidity:o(),weather:i({code:o(),main:u(),description:u(),icon:u()}),wind:i({speed:o(),deg:o(),gust:o().nullable()}),clouds:o(),rain:o().nullable(),snow:o().nullable(),sunrise:u(),sunset:u(),day_time:u()});var y=e=>{let t=v.safeParse(a(e));if(!t.success)throw l.error(`Schema validation failed with:`,t.error),new _(`Failed to validate received weather day data.`);return t.data},b=({id:r})=>{let i=n().getStore(f),{semaphore:a}=t(i),o=e(()=>{let e=i.findById(r.value);return e&&!e.draft?e:null});return{location:o,isLoading:e(()=>o.value===null?i.getting(r.value)||a.value.fetching.items:!1),fetchLocation:async()=>{await i.get({id:r.value})}}};export{h as a,m as c,g as i,f as l,y as n,_ as o,v as r,p as s,b as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{Er as e,Si as t,n}from"./icon-with-child-CgZMNB3F.js";import{Wn as r,a as i,aa as a,at as o,b as s,ct as c,ft as l,ht as u,ia as d,mt as f,ot as p,p as m,q as h,ut as g,vt as _}from"./common-CEAYa_VX.js";import{C as v,a as y,f as b,g as x,n as S,v as C}from"./keys-BYonWGX0.js";var w=class extends Error{exception;constructor(e,t=null){super(e),this.name=`SpacesException`,this.exception=t}},T=class extends w{code;constructor(e,t=null,n=null){super(e,n),this.name=`SpacesApiException`,this.code=t}},E=u({range:l(y).optional(),showProduction:p().optional()}),D=c(`type`,[u({type:g(C.ENERGY),order:f().int().min(0),settings:E})]),O=u({id:_().uuid(),name:_().min(1),description:_().nullable(),type:l(x),icon:_().nullable(),displayOrder:f().int().min(0),statusWidgets:o(D).nullable(),createdAt:h(),updatedAt:h().nullable(),draft:p().default(!1)}),k=u({name:_().min(1,`Name is required`),description:_().nullable().optional(),type:l(x).optional(),icon:_().nullable().optional(),displayOrder:f().int().min(0).optional(),statusWidgets:o(D).nullable().optional()}),A=u({name:_().min(1).optional(),description:_().nullable().optional(),type:l(x).optional(),icon:_().nullable().optional(),displayOrder:f().int().min(0).optional(),statusWidgets:o(D).nullable().optional()});u({ids:o(_().uuid()).nonempty()});var j=u({succeeded:o(_()),failed:o(u({id:_(),reason:_()}))}),M=e=>{switch(e){case r.room:return x.ROOM;case r.zone:return x.ZONE;case r.master:return x.MASTER;case r.entry:return x.ENTRY;case r.signage_info_panel:return x.SIGNAGE_INFO_PANEL;default:return x.ROOM}},N=e=>{switch(e){case x.ROOM:return r.room;case x.ZONE:return r.zone;case x.MASTER:return r.master;case x.ENTRY:return r.entry;case x.SIGNAGE_INFO_PANEL:return r.signage_info_panel;default:return r.room}},P=e=>e||null,F=e=>{if(e!==void 0)return e===null?null:e},I=e=>!e||!Array.isArray(e)?null:e.map(e=>({type:e.type,order:e.order,settings:{...e.settings.range===void 0?{}:{range:e.settings.range},...e.settings.show_production===void 0?{}:{showProduction:e.settings.show_production}}})),L=e=>{if(e!==void 0)return e===null?null:e.map(e=>({type:e.type,order:e.order,settings:{...e.settings.range===void 0?{}:{range:e.settings.range},...e.settings.showProduction===void 0?{}:{show_production:e.settings.showProduction}}}))},R=e=>({id:e.id,name:e.name,description:e.description??null,type:M(e.type),category:P(e.category??void 0),icon:e.icon??null,displayOrder:e.display_order??0,parentId:e.parent_id??null,suggestionsEnabled:e.suggestions_enabled??!0,statusWidgets:I(e.status_widgets),createdAt:new Date(e.created_at),updatedAt:e.updated_at?new Date(e.updated_at):null,draft:!1}),z=e=>e===void 0||e===x.ROOM||e===x.ZONE,B=e=>{let t={name:e.name,description:e.description??void 0,type:N(e.type),icon:e.icon??void 0,display_order:e.displayOrder,parent_id:e.parentId??void 0};return z(e.type)&&(`category`in e&&(t.category=F(e.category)??void 0),`suggestionsEnabled`in e&&(t.suggestions_enabled=e.suggestionsEnabled),`statusWidgets`in e&&(t.status_widgets=L(e.statusWidgets))),t},V=e=>{let t={name:e.name,description:e.description,type:N(e.type),icon:e.icon,display_order:e.displayOrder};return z(e.type)&&(`category`in e&&(t.category=F(e.category)),`suggestionsEnabled`in e&&(t.suggestions_enabled=e.suggestionsEnabled),`statusWidgets`in e&&(t.status_widgets=L(e.statusWidgets))),`parentId`in e&&(t.parent_id=e.parentId??null),t},H=()=>({fetching:{items:!1,item:[]},creating:[],updating:[],deleting:[]}),U=d(`spaces_module-spaces`,()=>{let e=m(),r=t({}),a=t(H()),o=t(!1),s=()=>o.value,c=()=>a.value.fetching.items||a.value.fetching.item.length>0,l=e=>r.value[e]??null,u=()=>Object.values(r.value).sort((e,t)=>e.displayOrder-t.displayOrder||e.name.localeCompare(t.name)),d=async()=>{if(a.value.fetching.items)return u();a.value.fetching.items=!0;try{let{data:t,error:i}=await e.client.GET(`/${n}/${b}/spaces`);if(i||!t)throw new T(`Failed to fetch spaces`);let a=[],s=new Set;for(let e of t.data??[]){let t=R(e);r.value[t.id]=t,s.add(t.id),a.push(t)}for(let e of Object.keys(r.value))s.has(e)||delete r.value[e];return o.value=!0,a}finally{a.value.fetching.items=!1}},f=async t=>{if(a.value.fetching.item.includes(t.id)){let e=l(t.id);if(e)return e;throw new T(`Space not found`)}a.value.fetching.item.push(t.id);try{let{data:i,error:a}=await e.client.GET(`/${n}/${b}/spaces/{id}`,{params:{path:{id:t.id}}});if(a||!i)throw new T(`Space not found`);let o=R(i.data);return r.value[o.id]=o,o}finally{a.value.fetching.item=a.value.fetching.item.filter(e=>e!==t.id)}},p=async t=>{let o=t.id??i().toString();a.value.creating.push(o);try{let{data:i,error:a}=await e.client.POST(`/${n}/${b}/spaces`,{body:{data:B(t.data)}});if(a||!i)throw new T(`Failed to create space`);let o=R(i.data);return r.value[o.id]=o,o}finally{a.value.creating=a.value.creating.filter(e=>e!==o)}},h=async t=>{if(a.value.updating.includes(t.id))throw new T(`Space is already being updated`);if(!l(t.id))throw new T(`Space not found`);a.value.updating.push(t.id);try{let{data:i,error:a}=await e.client.PATCH(`/${n}/${b}/spaces/{id}`,{params:{path:{id:t.id}},body:{data:V(t.data)}});if(a||!i)throw new T(`Failed to update space`);let o=R(i.data);return r.value[o.id]=o,o}finally{a.value.updating=a.value.updating.filter(e=>e!==t.id)}},g=async e=>{let t=l(e.id);if(!t)throw new T(`Space not found`);if(t.draft){let n=e.id,i=await p({id:n,data:{name:t.name,description:t.description,type:t.type,category:t.category,icon:t.icon,displayOrder:t.displayOrder}});return i.id!==n&&delete r.value[n],i}return h({id:e.id,data:{name:t.name,description:t.description,type:t.type,category:t.category,icon:t.icon,displayOrder:t.displayOrder}})},_=async t=>{if(a.value.deleting.includes(t.id))throw new T(`Space is already being deleted`);let i=l(t.id);if(!i)throw new T(`Space not found`);a.value.deleting.push(t.id);try{if(!i.draft){let{error:r}=await e.client.DELETE(`/${n}/${b}/spaces/{id}`,{params:{path:{id:t.id}}});if(r)throw new T(`Failed to delete space`)}delete r.value[t.id]}finally{a.value.deleting=a.value.deleting.filter(e=>e!==t.id)}},v=async t=>{let r=[],i=[];for(let e of t.ids){let t=l(e);t&&(t.draft?r:i).push(e)}for(let e of r)x({id:e});if(i.length===0)return{succeeded:r,failed:[]};a.value.deleting.push(...i);try{let{data:t,error:a}=await e.client.POST(`/${n}/${b}/spaces/bulk-remove`,{body:{data:{ids:i}}});if(a||!t)throw new T(`Received unexpected response`);let o=j.parse(t.data);for(let e of o.succeeded)x({id:e});return{succeeded:[...r,...o.succeeded],failed:o.failed}}catch(e){throw new T(`Failed to remove spaces`,null,e)}finally{a.value.deleting=a.value.deleting.filter(e=>!i.includes(e))}},y=e=>{let t=r.value[e.id];t&&(r.value[e.id]={...t,...e.data})},x=e=>{delete r.value[e.id]};return{isLoaded:()=>s()||u().length>0,refresh:()=>d(),data:r,semaphore:a,firstLoad:o,firstLoadFinished:s,fetching:c,findById:l,findAll:u,fetch:d,get:f,add:p,edit:h,save:g,remove:_,bulkRemove:v,set:y,unset:x,onEvent:e=>{let t=R(e.data);r.value[t.id]=t}}}),W=e=>U(e),G=()=>{let t=s().getStore(S),{firstLoad:n}=a(t);return{spaces:e(()=>t.findAll()),roomSpaces:e(()=>t.findAll().filter(e=>e.type===x.ROOM)),zoneSpaces:e(()=>t.findAll().filter(e=>e.type===x.ZONE)),floorZoneSpaces:e(()=>t.findAll().filter(e=>e.type===x.ZONE&&v(e.category))),fetching:e(()=>t.fetching()),firstLoadFinished:e(()=>n.value),fetchSpaces:async()=>t.fetch(),findById:e=>t.findById(e)}};export{R as a,O as c,N as i,D as l,W as n,k as o,M as r,A as s,G as t,T as u};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import"./rolldown-runtime-QTnfLwEv.js";import{Ar as e,D as t,Dr as n,Er as r,H as i,Mr as a,Nr as o,Or as s,Pr as c,Qr as l,Si as u,T as d,Wr as ee,Yr as te,ci as f,di as p,ji as m,jr as ne,k as h,kr as g,qi as _,ui as v,x as y,xr as b}from"./icon-with-child-CgZMNB3F.js";import{t as re}from"./vue-meta.esm-browser.min-C5z7o_np.js";import{Cr as x,Dr as S,Jr as ie,Sr as C,aa as w,b as T,f as E,hr as ae,mr as oe,xr as se}from"./common-CEAYa_VX.js";import{t as ce}from"./directive-D42ORGRu.js";import{t as le}from"./useUuid-B2AwaEQg.js";import{a as D,d as O,f as k,i as ue}from"./keys-DgS2vm-E.js";import"./dashboard-CQWK08VY.js";import{t as A}from"./keys-ctR4af6H.js";import{t as j}from"./card-edit-form-BPs9Aljn.js";import{o as M}from"./pages-cards.contants-DcS0YOKq.js";var N=({id:e,pageId:t})=>{let n=T().getStore(A),{data:i,semaphore:a}=w(n);return{card:r(()=>e===null?null:i.value[e]??null),isLoading:r(()=>a.value.fetching.item.includes(e)?!0:(i.value[e]??null)===null&&a.value.fetching.items.includes(t)),fetchCard:async()=>{(i.value[e]??null)?.draft||await n.get({id:e,pageId:t})}}},P={class:`uppercase`},F=[`element-loading-text`],I={key:1,class:`flex flex-row gap-2 justify-end items-center b-t b-t-solid shadow-top z-10 w-full h-[3rem]`,style:{"background-color":`var(--el-drawer-bg-color)`}},L={class:`p-2`},R=c({name:`ViewPageCardEdit`,__name:`view-card-edit`,props:{pageId:{},page:{},id:{},remoteFormChanged:{type:Boolean}},emits:[`update:remote-form-changed`],setup(c,{emit:w}){let T=c,A=w,R=y(),{t:z}=d(),B=E();re({title:z(`pagesCardsPlugin.meta.pages.editCard.title`)});let{validate:V}=le(),{isMDDevice:H,isLGDevice:U}=ae(),{card:W,isLoading:G,fetchCard:de}=N({id:T.id,pageId:T.page.id}),K=u(!1);if(!V(T.id))throw Error(`Element identifier is not valid`);let q=u(!1),J=u(O.NONE),Y=u(!1),X=u(!1),fe=r(()=>{let e=[];return e.push({label:z(`dashboardModule.breadcrumbs.pages.list`),route:R.resolve({name:k.PAGES})}),e.push({label:z(`dashboardModule.breadcrumbs.pages.detail`,{page:T.page?.title}),route:R.resolve({name:k.PAGE,params:{id:T.page?.id}})}),e.push({label:z(`pagesCardsPlugin.breadcrumbs.pages.configure`,{page:T.page?.title}),route:R.resolve({name:M.PAGE,params:{id:T.page?.id}})}),e.push({label:z(`pagesCardsPlugin.breadcrumbs.pages.editCard`,{page:T.page?.title}),route:R.resolve({name:M.PAGE_EDIT_CARD,params:{id:T.page?.id,cardId:W.value?.id}})}),e}),Z=()=>{S.confirm(z(`pagesCardsPlugin.texts.misc.confirmDiscard`),z(`pagesCardsPlugin.headings.misc.discard`),{confirmButtonText:z(`pagesCardsPlugin.buttons.yes.title`),cancelButtonText:z(`pagesCardsPlugin.buttons.no.title`),type:`warning`}).then(()=>{U.value?R.replace({name:M.PAGE,params:{id:T.page?.id}}):R.push({name:M.PAGE,params:{id:T.page?.id}})}).catch(()=>{})},Q=()=>{q.value=!0},$=()=>{U.value?R.replace({name:M.PAGE,params:{id:T.page?.id}}):R.push({name:M.PAGE,params:{id:T.page?.id}})};return ee(async()=>{de().then(()=>{if(W.value!==null&&(K.value=!0),!G.value&&W.value===null&&!K.value)throw new D(`Card not found`)}).catch(e=>{if(e instanceof D)throw e;let t=e;throw t instanceof ue&&t.code===404?new D(`Card not found`):new D(`Something went wrong`,t)})}),te(()=>{A(`update:remote-form-changed`,X.value)}),f(()=>G.value,e=>{if(!e&&W.value===null&&!K.value)throw new D(`Card not found`)}),f(()=>W.value,e=>{if(e!==null)K.value=!0;else if(K.value&&!G.value)B.warning(z(`pagesCardsPlugin.messages.cards.deletedWhileEditing`),{duration:0}),T.page?.id?U.value?R.replace({name:M.PAGE,params:{id:T.page.id}}):R.push({name:M.PAGE,params:{id:T.page.id}}):U.value?R.replace({name:k.PAGES}):R.push({name:k.PAGES});else if(!G.value&&e===null&&!K.value)throw new D(`Card not found`)}),f(()=>J.value,e=>{e===O.OK&&(U.value?R.replace({name:M.PAGE,params:{id:T.page?.id}}):R.push({name:M.PAGE,params:{id:T.page?.id}}))}),f(()=>X.value,e=>{A(`update:remote-form-changed`,e)}),(r,c)=>(l(),e(b,null,[o(m(se),{teleport:``},{icon:v(()=>[o(m(t),{icon:`mdi:card-text-outline`,class:`w[20px] h[20px]`})]),title:v(()=>[a(_(m(z)(`pagesCardsPlugin.headings.pages.editCard`)),1)]),subtitle:v(()=>[a(_(m(z)(`pagesCardsPlugin.subHeadings.pages.editCard`)),1)]),_:1}),m(H)?g(``,!0):(l(),s(m(C),{key:0,align:m(x).LEFT,teleport:``,small:``,onClick:c[0]||=()=>X.value?Z():$()},{icon:v(()=>[o(m(i),{size:24},{default:v(()=>[o(m(t),{icon:`mdi:chevron-left`})]),_:1})]),_:1},8,[`align`])),m(H)?g(``,!0):(l(),s(m(C),{key:1,align:m(x).RIGHT,teleport:``,small:``,onClick:Q},{default:v(()=>[n(`span`,P,_(m(z)(`pagesCardsPlugin.buttons.update.title`)),1)]),_:1},8,[`align`])),o(m(oe),{items:fe.value},null,8,[`items`]),p((l(),e(`div`,{"element-loading-text":m(z)(`pagesCardsPlugin.texts.cards.loadingCard`),class:`flex flex-col overflow-hidden h-full`},[m(W)===null?g(``,!0):(l(),s(m(ie),{key:0,class:`grow-1 p-2 md:px-4`},{default:v(()=>[o(j,{"remote-form-submit":q.value,"onUpdate:remoteFormSubmit":c[1]||=e=>q.value=e,"remote-form-result":J.value,"onUpdate:remoteFormResult":c[2]||=e=>J.value=e,"remote-form-reset":Y.value,"onUpdate:remoteFormReset":c[3]||=e=>Y.value=e,"remote-form-changed":X.value,"onUpdate:remoteFormChanged":c[4]||=e=>X.value=e,card:m(W),page:T.page},null,8,[`remote-form-submit`,`remote-form-result`,`remote-form-reset`,`remote-form-changed`,`card`,`page`])]),_:1})),m(H)?(l(),e(`div`,I,[n(`div`,L,[X.value?(l(),s(m(h),{key:0,link:``,class:`mr-2`,onClick:Z},{default:v(()=>[a(_(m(z)(`pagesCardsPlugin.buttons.discard.title`)),1)]),_:1})):g(``,!0),X.value?g(``,!0):(l(),s(m(h),{key:1,link:``,class:`mr-2`,onClick:$},{default:v(()=>[a(_(m(z)(`pagesCardsPlugin.buttons.close.title`)),1)]),_:1})),o(m(h),{loading:J.value===m(O).WORKING,disabled:J.value!==m(O).NONE||!X.value,type:`primary`,class:`order-2`,onClick:Q},ne({default:v(()=>[a(` `+_(m(z)(`pagesCardsPlugin.buttons.update.title`)),1)]),_:2},[J.value===m(O).OK||J.value===m(O).ERROR?{name:`icon`,fn:v(()=>[J.value===m(O).OK?(l(),s(m(t),{key:0,icon:`mdi:check-circle`})):J.value===m(O).ERROR?(l(),s(m(t),{key:1,icon:`mdi:cross-circle`})):g(``,!0)]),key:`0`}:void 0]),1032,[`loading`,`disabled`])])])):g(``,!0)],8,F)),[[m(ce),m(G)||m(W)===null]])],64))}});export{R as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import"./rolldown-runtime-QTnfLwEv.js";import{Ar as e,D as t,Dr as n,Er as r,H as ee,Mr as i,Nr as a,Or as o,Pr as s,Qr as c,Si as l,T as te,Yr as ne,b as re,ci as u,ii as d,ji as f,jr as ie,k as p,kr as m,qi as h,ui as g,x as ae,xr as _}from"./icon-with-child-CgZMNB3F.js";import{t as v}from"./vue-meta.esm-browser.min-C5z7o_np.js";import{Cr as y,Dr as b,Jr as oe,Pr as x,Sr as S,hr as C,mr as w,xr as T}from"./common-CEAYa_VX.js";import{t as E}from"./alert-B_504iE8.js";import{u as se,w as D}from"./components-CtSAjzWY.js";import{t as ce}from"./useUuid-B2AwaEQg.js";import{t as le}from"./common.constants-C6QiEtuS.js";import{a as O,o as k}from"./devices.constants-HX5whDWr.js";import{B as ue}from"./composables-BiL7NDB2.js";var de={class:`uppercase`},fe={class:`flex flex-col overflow-hidden h-full`},A={key:0,class:`flex flex-row gap-2 justify-end items-center b-t b-t-solid shadow-top z-10 w-full h-[3rem]`,style:{"background-color":`var(--el-drawer-bg-color)`}},j={class:`p-2`},M=[`id`],N=s({name:`ViewChannelAdd`,__name:`view-channel-add`,props:{device:{},remoteFormChanged:{type:Boolean}},emits:[`update:remote-form-changed`],setup(s,{emit:N}){let P=s,F=N,I=re(),L=ae(),{t:R}=te();v({title:R(`devicesModule.meta.channels.add.title`)});let{generate:z}=ce(),{isMDDevice:B,isLGDevice:V}=C(),H=z(),{plugins:U}=ue(),W=l(!1),G=l(O.NONE),K=l(!1),q=l(!1),J=l(void 0),pe=r(()=>{let e=P.device?.type;return e?U.value.find(t=>(t.elements??[]).some(t=>t.type===e)):U.value.find(e=>(e.elements??[]).some(e=>e.type===J.value))}),Y=r(()=>{let e=P.device?.type??J.value;return(pe.value?.elements??[]).find(t=>t.type===e)}),X=r(()=>I.matched.find(e=>e.name===k.DEVICE)!==void 0),me=r(()=>{let e=[];return X.value?(e.push({label:R(`devicesModule.breadcrumbs.devices.list`),route:L.resolve({name:k.DEVICES})}),e.push({label:R(`devicesModule.breadcrumbs.devices.detail`,{device:P.device?.name}),route:L.resolve({name:k.DEVICE,params:{id:P.device?.id}})}),e.push({label:R(`devicesModule.breadcrumbs.channels.add`),route:L.resolve({name:k.DEVICE_ADD_CHANNEL,params:{id:P.device?.id}})})):(e.push({label:R(`devicesModule.breadcrumbs.channels.list`),route:L.resolve({name:k.CHANNELS})}),e.push({label:R(`devicesModule.breadcrumbs.channels.add`),route:L.resolve({name:k.CHANNELS_ADD})})),e}),Z=()=>{b.confirm(R(`devicesModule.texts.misc.confirmDiscard`),R(`devicesModule.headings.misc.discard`),{confirmButtonText:R(`devicesModule.buttons.yes.title`),cancelButtonText:R(`devicesModule.buttons.no.title`),type:`warning`}).then(()=>{X.value?V.value?L.replace({name:k.DEVICE,params:{id:P.device?.id}}):L.push({name:k.DEVICE,params:{id:P.device?.id}}):V.value?L.replace({name:k.CHANNELS}):L.push({name:k.CHANNELS})}).catch(()=>{})},Q=()=>{W.value=!0},$=()=>{X.value?V.value?L.replace({name:k.DEVICE,params:{id:P.device?.id}}):L.push({name:k.DEVICE,params:{id:P.device?.id}}):V.value?L.replace({name:k.CHANNELS}):L.push({name:k.CHANNELS})};return ne(()=>{F(`update:remote-form-changed`,q.value)}),u(()=>G.value,e=>{e===O.OK&&(X.value?V.value?L.replace({name:k.DEVICE,params:{id:P.device?.id}}):L.push({name:k.DEVICE,params:{id:P.device?.id}}):V.value?L.replace({name:k.CHANNELS}):L.push({name:k.CHANNELS}))}),u(()=>q.value,e=>{F(`update:remote-form-changed`,e)}),(r,s)=>(c(),e(_,null,[a(f(T),{teleport:``},{icon:g(()=>[a(f(t),{icon:`mdi:chip`,class:`w[20px] h[20px]`})]),title:g(()=>[i(h(f(R)(`devicesModule.headings.channels.add`)),1)]),subtitle:g(()=>[i(h(f(R)(`devicesModule.subHeadings.channels.add`)),1)]),_:1}),f(B)?m(``,!0):(c(),o(f(S),{key:0,align:f(y).LEFT,teleport:``,small:``,onClick:s[0]||=()=>q.value?Z():$()},{icon:g(()=>[a(f(ee),{size:24},{default:g(()=>[a(f(t),{icon:`mdi:chevron-left`})]),_:1})]),_:1},8,[`align`])),f(B)?m(``,!0):(c(),o(f(S),{key:1,align:f(y).RIGHT,teleport:``,small:``,onClick:Q},{default:g(()=>[n(`span`,de,h(f(R)(`devicesModule.buttons.save.title`)),1)]),_:1},8,[`align`])),a(f(w),{items:me.value},null,8,[`items`]),n(`div`,fe,[a(f(oe),{class:`grow-1 p-2 md:px-4`},{default:g(()=>[P.device?m(``,!0):(c(),e(_,{key:0},[a(se,{modelValue:J.value,"onUpdate:modelValue":s[1]||=e=>J.value=e},null,8,[`modelValue`]),a(f(x))],64)),J.value?(c(),e(_,{key:1},[Y.value?.components?.channelAddForm===void 0?(c(),o(f(D),{key:1,id:f(H),"remote-form-submit":W.value,"onUpdate:remoteFormSubmit":s[6]||=e=>W.value=e,"remote-form-result":G.value,"onUpdate:remoteFormResult":s[7]||=e=>G.value=e,"remote-form-reset":K.value,"onUpdate:remoteFormReset":s[8]||=e=>K.value=e,"remote-form-changed":q.value,"onUpdate:remoteFormChanged":s[9]||=e=>q.value=e,type:J.value,device:P.device},null,8,[`id`,`remote-form-submit`,`remote-form-result`,`remote-form-reset`,`remote-form-changed`,`type`,`device`])):(c(),o(d(Y.value?.components?.channelAddForm),{key:0,id:f(H),"remote-form-submit":W.value,"onUpdate:remoteFormSubmit":s[2]||=e=>W.value=e,"remote-form-result":G.value,"onUpdate:remoteFormResult":s[3]||=e=>G.value=e,"remote-form-reset":K.value,"onUpdate:remoteFormReset":s[4]||=e=>K.value=e,"remote-form-changed":q.value,"onUpdate:remoteFormChanged":s[5]||=e=>q.value=e,type:J.value,device:P.device},null,40,[`id`,`remote-form-submit`,`remote-form-result`,`remote-form-reset`,`remote-form-changed`,`type`,`device`]))],64)):P.device?(c(),e(_,{key:2},[Y.value?.components?.channelAddForm===void 0?(c(),o(f(D),{key:1,id:f(H),"remote-form-submit":W.value,"onUpdate:remoteFormSubmit":s[14]||=e=>W.value=e,"remote-form-result":G.value,"onUpdate:remoteFormResult":s[15]||=e=>G.value=e,"remote-form-reset":K.value,"onUpdate:remoteFormReset":s[16]||=e=>K.value=e,"remote-form-changed":q.value,"onUpdate:remoteFormChanged":s[17]||=e=>q.value=e,type:P.device.type,device:P.device},null,8,[`id`,`remote-form-submit`,`remote-form-result`,`remote-form-reset`,`remote-form-changed`,`type`,`device`])):(c(),o(d(Y.value?.components?.channelAddForm),{key:0,id:f(H),"remote-form-submit":W.value,"onUpdate:remoteFormSubmit":s[10]||=e=>W.value=e,"remote-form-result":G.value,"onUpdate:remoteFormResult":s[11]||=e=>G.value=e,"remote-form-reset":K.value,"onUpdate:remoteFormReset":s[12]||=e=>K.value=e,"remote-form-changed":q.value,"onUpdate:remoteFormChanged":s[13]||=e=>q.value=e,type:P.device.type,device:P.device},null,40,[`id`,`remote-form-submit`,`remote-form-result`,`remote-form-reset`,`remote-form-changed`,`type`,`device`]))],64)):(c(),o(f(E),{key:3,title:f(R)(`devicesModule.headings.channels.selectPlugin`),description:f(R)(`devicesModule.texts.channels.selectPlugin`),closable:!1,"show-icon":``,type:`info`},null,8,[`title`,`description`]))]),_:1}),f(B)?(c(),e(`div`,A,[n(`div`,j,[q.value?(c(),o(f(p),{key:0,link:``,class:`mr-2`,onClick:Z},{default:g(()=>[i(h(f(R)(`devicesModule.buttons.discard.title`)),1)]),_:1})):m(``,!0),q.value?m(``,!0):(c(),o(f(p),{key:1,link:``,class:`mr-2`,onClick:$},{default:g(()=>[i(h(f(R)(`devicesModule.buttons.close.title`)),1)]),_:1})),n(`div`,{id:f(le),class:`order-2 inline-block [&>*:first-child:not(:only-child)]:hidden`},[a(f(p),{loading:G.value===f(O).WORKING,disabled:G.value!==f(O).NONE,type:`primary`,onClick:Q},ie({default:g(()=>[i(` `+h(f(R)(`devicesModule.buttons.save.title`)),1)]),_:2},[G.value===f(O).OK||G.value===f(O).ERROR?{name:`icon`,fn:g(()=>[G.value===f(O).OK?(c(),o(f(t),{key:0,icon:`mdi:check-circle`})):G.value===f(O).ERROR?(c(),o(f(t),{key:1,icon:`mdi:cross-circle`})):m(``,!0)]),key:`0`}:void 0]),1032,[`loading`,`disabled`])],8,M)])])):m(``,!0)])],64))}});export{N as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import"./rolldown-runtime-QTnfLwEv.js";import{Ar as e,D as t,Dr as n,Er as r,H as ee,Mr as i,Nr as a,Or as o,Pr as s,Qr as c,Si as l,T as u,Wr as te,Yr as d,b as ne,ci as f,di as re,ii as ie,ji as p,jr as m,k as h,kr as g,qi as _,ui as v,x as ae,xr as y}from"./icon-with-child-CgZMNB3F.js";import{t as oe}from"./vue-meta.esm-browser.min-C5z7o_np.js";import{Cr as b,Dr as se,Jr as x,Sr as S,f as ce,hr as le,mr as ue,xr as de}from"./common-CEAYa_VX.js";import{p as fe}from"./components-CtSAjzWY.js";import{t as pe}from"./directive-D42ORGRu.js";import{t as me}from"./useUuid-B2AwaEQg.js";import{t as he}from"./common.constants-C6QiEtuS.js";import{a as C,o as w}from"./devices.constants-HX5whDWr.js";import{H as T,U as E,V as ge,b as _e,w as ve,z as ye}from"./composables-BiL7NDB2.js";var be={class:`uppercase`},xe=[`element-loading-text`],Se={key:1,class:`flex flex-row gap-2 justify-end items-center b-t b-t-solid shadow-top z-10 w-full h-[3rem]`,style:{"background-color":`var(--el-drawer-bg-color)`}},Ce={class:`p-2`},D=[`id`],O=s({name:`ViewChannelPropertyEdit`,__name:`view-channel-property-edit`,props:{id:{},channelId:{},channel:{},device:{},remoteFormChanged:{type:Boolean}},emits:[`update:remote-form-changed`],setup(s,{emit:O}){let k=s,A=O,j=ne(),M=ae(),{t:N}=u(),{meta:we}=oe({}),P=ce(),{validate:F}=me(),{isMDDevice:I,isLGDevice:L}=le(),{channel:R,isLoading:z,fetchChannel:Te}=ye({id:k.channelId}),{property:B,isLoading:V,fetchProperty:Ee}=ve({channelId:k.channelId,id:k.id}),H=l(!1),U=l(!1),{icon:De}=_e({id:k.id});if(!F(k.channelId))throw Error(`Channel identifier is not valid`);if(!F(k.id))throw Error(`Channel property identifier is not valid`);let{plugins:Oe}=ge(),W=l(!1),G=l(C.NONE),K=l(!1),q=l(!1),J=r(()=>j.matched.find(e=>e.name===w.DEVICE)!==void 0),Y=r(()=>j.matched.find(e=>e.name===w.CHANNEL)!==void 0),ke=r(()=>Oe.value.find(e=>(e.elements??[]).some(e=>e.type===B.value?.type))),X=r(()=>(ke.value?.elements??[]).find(e=>e.type===B.value?.type)),Ae=r(()=>{let e=[];return J.value?(e.push({label:N(`devicesModule.breadcrumbs.devices.list`),route:M.resolve({name:w.DEVICES})}),e.push({label:N(`devicesModule.breadcrumbs.devices.detail`,{device:k.device?.name}),route:M.resolve({name:w.DEVICE,params:{id:k.device?.id}})}),e.push({label:N(`devicesModule.breadcrumbs.channels.edit`,{channel:R.value?.name}),route:M.resolve({name:w.DEVICE_EDIT_CHANNEL,params:{channelId:k.channelId,id:k.device?.id}})}),e.push({label:N(`devicesModule.breadcrumbs.channelsProperties.edit`),route:M.resolve({name:w.DEVICE_CHANNEL_EDIT_PROPERTY,params:{propertyId:k.id,channelId:k.channelId,id:k.device?.id}})})):(e.push({label:N(`devicesModule.breadcrumbs.channels.list`),route:M.resolve({name:w.CHANNELS})}),e.push({label:N(`devicesModule.breadcrumbs.channels.detail`,{channel:R.value?.name}),route:M.resolve({name:w.CHANNEL,params:{id:k.channelId}})}),e.push({label:N(`devicesModule.breadcrumbs.channelsProperties.edit`),route:M.resolve({name:w.CHANNEL_EDIT_PROPERTY,params:{propertyId:k.id,id:k.channelId}})})),e}),Z=()=>{se.confirm(N(`devicesModule.texts.misc.confirmDiscard`),N(`devicesModule.headings.misc.discard`),{confirmButtonText:N(`devicesModule.buttons.yes.title`),cancelButtonText:N(`devicesModule.buttons.no.title`),type:`warning`}).then(()=>{Y.value?L.value?M.replace({name:w.CHANNEL,params:{id:k.channelId}}):M.push({name:w.CHANNEL,params:{id:k.channelId}}):J.value?L.value?M.replace({name:w.DEVICE,params:{id:R.value?.device}}):M.push({name:w.DEVICE,params:{id:R.value?.device}}):L.value?M.replace({name:w.CHANNELS}):M.push({name:w.CHANNELS})}).catch(()=>{})},Q=()=>{W.value=!0},$=()=>{Y.value?L.value?M.replace({name:w.CHANNEL,params:{id:k.channelId}}):M.push({name:w.CHANNEL,params:{id:k.channelId}}):J.value?L.value?M.replace({name:w.DEVICE,params:{id:R.value?.device}}):M.push({name:w.DEVICE,params:{id:R.value?.device}}):L.value?M.replace({name:w.CHANNELS}):M.push({name:w.CHANNELS})};return te(async()=>{Te().then(()=>{if(R.value!==null&&(H.value=!0),!z.value&&R.value===null&&!H.value)throw new E(`Channel property not found`);Ee().then(()=>{if(B.value!==null&&(U.value=!0),!V.value&&B.value===null&&!U.value)throw new E(`Channel property not found`)}).catch(e=>{let t=e;throw t instanceof T&&t.code===404?new E(`Channel property not found`):new E(`Something went wrong`,t)})}).catch(e=>{let t=e;throw t instanceof T&&t.code===404?new E(`Channel not found`):new E(`Something went wrong`,t)})}),d(()=>{A(`update:remote-form-changed`,q.value)}),f(()=>G.value,e=>{e===C.OK&&(Y.value?L.value?M.replace({name:w.CHANNEL,params:{id:k.channelId}}):M.push({name:w.CHANNEL,params:{id:k.channelId}}):J.value&&(L.value?M.replace({name:w.DEVICE,params:{id:R.value?.device}}):M.push({name:w.DEVICE,params:{id:R.value?.device}})))}),f(()=>z.value,e=>{if(!e&&R.value===null&&!H.value)throw new E(`Channel not found`)}),f(()=>V.value,e=>{if(!e&&B.value===null&&!U.value)throw new E(`Channel property not found`)}),f(()=>R.value,e=>{if(e!==null)H.value=!0;else if(H.value&&!z.value)P.warning(N(`devicesModule.messages.channels.deletedWhileEditing`),{duration:0}),L.value?M.replace({name:w.CHANNELS}):M.push({name:w.CHANNELS});else if(!z.value&&e===null&&!H.value)throw new E(`Channel not found`)}),f(()=>B.value,e=>{if(e!==null)U.value=!0,we.title=N(`devicesModule.meta.channelsProperties.edit.title`,{channel:R.value?.name,property:B.value?.name??N(`devicesModule.categories.channelsProperties.${B.value?.category}`)});else if(U.value&&!V.value)P.warning(N(`devicesModule.messages.channelsProperties.deletedWhileEditing`),{duration:0}),Y.value?L.value?M.replace({name:w.CHANNEL,params:{id:k.channelId}}):M.push({name:w.CHANNEL,params:{id:k.channelId}}):J.value&&R.value?.device?L.value?M.replace({name:w.DEVICE,params:{id:R.value.device}}):M.push({name:w.DEVICE,params:{id:R.value.device}}):L.value?M.replace({name:w.CHANNELS}):M.push({name:w.CHANNELS});else if(!V.value&&e===null&&!U.value)throw new E(`Channel property not found`)}),f(()=>q.value,e=>{A(`update:remote-form-changed`,e)}),(r,s)=>(c(),e(y,null,[a(p(de),{teleport:``},m({icon:v(()=>[a(p(t),{icon:p(De),class:`w[20px] h[20px]`},null,8,[`icon`])]),title:v(()=>[i(_(p(B)?.name??p(N)(`devicesModule.categories.channelsProperties.${p(B)?.category}`)),1)]),_:2},[p(B)?.name===null?void 0:{name:`subtitle`,fn:v(()=>[i(_(p(N)(`devicesModule.categories.channelsProperties.${p(B)?.category}`)),1)]),key:`0`}]),1024),p(I)?g(``,!0):(c(),o(p(S),{key:0,align:p(b).LEFT,teleport:``,small:``,onClick:s[0]||=()=>q.value?Z():$()},{icon:v(()=>[a(p(ee),{size:24},{default:v(()=>[a(p(t),{icon:`mdi:chevron-left`})]),_:1})]),_:1},8,[`align`])),p(I)?g(``,!0):(c(),o(p(S),{key:1,align:p(b).RIGHT,teleport:``,small:``,onClick:Q},{default:v(()=>[n(`span`,be,_(p(N)(`devicesModule.buttons.save.title`)),1)]),_:1},8,[`align`])),a(p(ue),{items:Ae.value},null,8,[`items`]),re((c(),e(`div`,{"element-loading-text":p(z)?p(N)(`devicesModule.texts.channels.loadingChannel`):p(N)(`devicesModule.texts.channelsProperties.loadingProperty`),class:`flex flex-col overflow-hidden h-full`},[p(B)===null?g(``,!0):(c(),o(p(x),{key:0,class:`grow-1 p-2 md:px-4`},{default:v(()=>[X.value?.components?.channelPropertyEditForm===void 0?(c(),o(p(fe),{key:1,"remote-form-submit":W.value,"onUpdate:remoteFormSubmit":s[5]||=e=>W.value=e,"remote-form-result":G.value,"onUpdate:remoteFormResult":s[6]||=e=>G.value=e,"remote-form-reset":K.value,"onUpdate:remoteFormReset":s[7]||=e=>K.value=e,"remote-form-changed":q.value,"onUpdate:remoteFormChanged":s[8]||=e=>q.value=e,property:p(B)},null,8,[`remote-form-submit`,`remote-form-result`,`remote-form-reset`,`remote-form-changed`,`property`])):(c(),o(ie(X.value?.components?.channelPropertyEditForm),{key:0,"remote-form-submit":W.value,"onUpdate:remoteFormSubmit":s[1]||=e=>W.value=e,"remote-form-result":G.value,"onUpdate:remoteFormResult":s[2]||=e=>G.value=e,"remote-form-reset":K.value,"onUpdate:remoteFormReset":s[3]||=e=>K.value=e,"remote-form-changed":q.value,"onUpdate:remoteFormChanged":s[4]||=e=>q.value=e,property:p(B)},null,40,[`remote-form-submit`,`remote-form-result`,`remote-form-reset`,`remote-form-changed`,`property`]))]),_:1})),p(I)?(c(),e(`div`,Se,[n(`div`,Ce,[q.value?(c(),o(p(h),{key:0,link:``,class:`mr-2`,onClick:Z},{default:v(()=>[i(_(p(N)(`devicesModule.buttons.discard.title`)),1)]),_:1})):g(``,!0),q.value?g(``,!0):(c(),o(p(h),{key:1,link:``,class:`mr-2`,onClick:$},{default:v(()=>[i(_(p(N)(`devicesModule.buttons.close.title`)),1)]),_:1})),n(`div`,{id:p(he),class:`order-2 inline-block [&>*:first-child:not(:only-child)]:hidden`},[a(p(h),{loading:G.value===p(C).WORKING,disabled:p(z)||p(V)||G.value!==p(C).NONE||!q.value,type:`primary`,onClick:Q},m({default:v(()=>[i(` `+_(p(N)(`devicesModule.buttons.save.title`)),1)]),_:2},[G.value===p(C).OK||G.value===p(C).ERROR?{name:`icon`,fn:v(()=>[G.value===p(C).OK?(c(),o(p(t),{key:0,icon:`mdi:check-circle`})):G.value===p(C).ERROR?(c(),o(p(t),{key:1,icon:`mdi:cross-circle`})):g(``,!0)]),key:`0`}:void 0]),1032,[`loading`,`disabled`])],8,D)])])):g(``,!0)],8,xe)),[[p(pe),p(z)||p(V)||p(B)===null]])],64))}});export{O as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import"./rolldown-runtime-QTnfLwEv.js";import{Ar as e,D as t,Dr as n,Er as r,H as i,Mr as a,Nr as o,Or as s,Pr as c,Qr as l,Si as u,T as ee,Yr as d,ci as f,ii as te,ji as p,jr as m,k as h,kr as g,qi as _,ui as v,x as ne,xr as y}from"./icon-with-child-CgZMNB3F.js";import{t as b}from"./vue-meta.esm-browser.min-C5z7o_np.js";import{Cr as x,Dr as S,Jr as C,Pr as w,Sr as T,hr as re,mr as ie,xr as ae}from"./common-CEAYa_VX.js";import{t as oe}from"./alert-B_504iE8.js";import{t as se}from"./useUuid-B2AwaEQg.js";import{d as E,f as D}from"./keys-DgS2vm-E.js";import"./dashboard-CQWK08VY.js";import{f as ce}from"./types-jnyNKIzd.js";import{r as le}from"./composables-CRIJLd1I.js";import{n as ue,t as de}from"./select-data-source-plugin-CgTE90rj.js";import{o as O}from"./pages-cards.contants-DcS0YOKq.js";var k={class:`uppercase`},A={class:`flex flex-col overflow-hidden h-full`},j={key:0,class:`flex flex-row gap-2 justify-end items-center b-t b-t-solid shadow-top z-10 w-full h-[3rem]`,style:{"background-color":`var(--el-drawer-bg-color)`}},M={class:`p-2`},N=c({name:`ViewCardsPageDataSourceAdd`,__name:`view-data-source-add`,props:{pageId:{},page:{},remoteFormChanged:{type:Boolean}},emits:[`update:remote-form-changed`],setup(c,{emit:N}){let P=c,F=N,I=ne(),{t:L}=ee();b({title:L(`pagesCardsPlugin.meta.pages.addDataSource.title`)});let{generate:R}=se(),{isMDDevice:z,isLGDevice:B}=re(),{plugins:V}=ce(),H=R(),U=u(!1),W=u(E.NONE),G=u(!1),K=u(!1),q=u(void 0),fe=r(()=>V.value.find(e=>(e.elements??[]).some(e=>e.type===q.value))),J=r(()=>(fe.value?.elements??[]).find(e=>e.type===q.value)),Y=r(()=>J.value?.schemas?.dataSourceAddFormSchema??le),X=r(()=>{let e=[];return e.push({label:L(`dashboardModule.breadcrumbs.pages.list`),route:I.resolve({name:D.PAGES})}),e.push({label:L(`dashboardModule.breadcrumbs.pages.detail`,{page:P.page?.title}),route:I.resolve({name:D.PAGE,params:{id:P.page?.id}})}),e.push({label:L(`pagesCardsPlugin.breadcrumbs.pages.configure`,{page:P.page?.title}),route:I.resolve({name:O.PAGE,params:{id:P.page?.id}})}),e.push({label:L(`pagesCardsPlugin.breadcrumbs.pages.addDataSource`,{page:P.page?.title}),route:I.resolve({name:O.PAGE_ADD_DATA_SOURCE,params:{id:P.page?.id}})}),e});d(()=>{F(`update:remote-form-changed`,K.value)});let Z=()=>{S.confirm(L(`pagesCardsPlugin.texts.misc.confirmDiscard`),L(`pagesCardsPlugin.headings.misc.discard`),{confirmButtonText:L(`pagesCardsPlugin.buttons.yes.title`),cancelButtonText:L(`pagesCardsPlugin.buttons.no.title`),type:`warning`}).then(()=>{B.value?I.replace({name:O.PAGE,params:{id:P.page?.id}}):I.push({name:O.PAGE,params:{id:P.page?.id}})}).catch(()=>{})},Q=()=>{U.value=!0},$=()=>{B.value?I.replace({name:O.PAGE,params:{id:P.page?.id}}):I.push({name:O.PAGE,params:{id:P.page?.id}})};return f(()=>W.value,e=>{e===E.OK&&(B.value?I.replace({name:O.PAGE,params:{id:P.page?.id}}):I.push({name:O.PAGE,params:{id:P.page?.id}}))}),f(()=>K.value,e=>{F(`update:remote-form-changed`,e)}),(r,c)=>(l(),e(y,null,[o(p(ae),{teleport:``},{icon:v(()=>[o(p(t),{icon:`mdi:database-cog-outline`,class:`w[20px] h[20px]`})]),title:v(()=>[a(_(p(L)(`pagesCardsPlugin.headings.pages.addDataSource`)),1)]),subtitle:v(()=>[a(_(p(L)(`pagesCardsPlugin.subHeadings.pages.addDataSource`)),1)]),_:1}),p(z)?g(``,!0):(l(),s(p(T),{key:0,align:p(x).LEFT,teleport:``,small:``,onClick:c[0]||=()=>K.value?Z():$()},{icon:v(()=>[o(p(i),{size:24},{default:v(()=>[o(p(t),{icon:`mdi:chevron-left`})]),_:1})]),_:1},8,[`align`])),p(z)?g(``,!0):(l(),s(p(T),{key:1,align:p(x).RIGHT,teleport:``,small:``,onClick:Q},{default:v(()=>[n(`span`,k,_(p(L)(`pagesCardsPlugin.buttons.add.title`)),1)]),_:1},8,[`align`])),o(p(ie),{items:X.value},null,8,[`items`]),n(`div`,A,[o(p(C),{class:`grow-1 p-2 md:px-4`},{default:v(()=>[o(p(de),{modelValue:q.value,"onUpdate:modelValue":c[1]||=e=>q.value=e},null,8,[`modelValue`]),o(p(w)),q.value?(l(),e(y,{key:0},[J.value?.components?.dataSourceAddForm===void 0?(l(),s(p(ue),{key:1,id:p(H),"remote-form-submit":U.value,"onUpdate:remoteFormSubmit":c[6]||=e=>U.value=e,"remote-form-result":W.value,"onUpdate:remoteFormResult":c[7]||=e=>W.value=e,"remote-form-reset":G.value,"onUpdate:remoteFormReset":c[8]||=e=>G.value=e,"remote-form-changed":K.value,"onUpdate:remoteFormChanged":c[9]||=e=>K.value=e,type:q.value,parent:`page`,"parent-id":P.page.id,schema:Y.value,"only-draft":``},null,8,[`id`,`remote-form-submit`,`remote-form-result`,`remote-form-reset`,`remote-form-changed`,`type`,`parent-id`,`schema`])):(l(),s(te(J.value?.components?.dataSourceAddForm),{key:0,id:p(H),"remote-form-submit":U.value,"onUpdate:remoteFormSubmit":c[2]||=e=>U.value=e,"remote-form-result":W.value,"onUpdate:remoteFormResult":c[3]||=e=>W.value=e,"remote-form-reset":G.value,"onUpdate:remoteFormReset":c[4]||=e=>G.value=e,"remote-form-changed":K.value,"onUpdate:remoteFormChanged":c[5]||=e=>K.value=e,parent:`page`,"parent-id":P.page.id,schema:Y.value,"only-draft":``},null,40,[`id`,`remote-form-submit`,`remote-form-result`,`remote-form-reset`,`remote-form-changed`,`parent-id`,`schema`]))],64)):(l(),s(p(oe),{key:1,title:p(L)(`dashboardModule.headings.dataSources.selectPlugin`),description:p(L)(`dashboardModule.texts.dataSources.selectPlugin`),closable:!1,"show-icon":``,type:`info`},null,8,[`title`,`description`]))]),_:1}),p(z)?(l(),e(`div`,j,[n(`div`,M,[K.value?(l(),s(p(h),{key:0,link:``,class:`mr-2`,onClick:Z},{default:v(()=>[a(_(p(L)(`pagesCardsPlugin.buttons.discard.title`)),1)]),_:1})):g(``,!0),K.value?g(``,!0):(l(),s(p(h),{key:1,link:``,class:`mr-2`,onClick:$},{default:v(()=>[a(_(p(L)(`pagesCardsPlugin.buttons.close.title`)),1)]),_:1})),o(p(h),{loading:W.value===p(E).WORKING,disabled:W.value!==p(E).NONE,type:`primary`,class:`order-2`,onClick:Q},m({default:v(()=>[a(` `+_(p(L)(`pagesCardsPlugin.buttons.add.title`)),1)]),_:2},[W.value===p(E).OK||W.value===p(E).ERROR?{name:`icon`,fn:v(()=>[W.value===p(E).OK?(l(),s(p(t),{key:0,icon:`mdi:check-circle`})):W.value===p(E).ERROR?(l(),s(p(t),{key:1,icon:`mdi:cross-circle`})):g(``,!0)]),key:`0`}:void 0]),1032,[`loading`,`disabled`])])])):g(``,!0)])],64))}});export{N as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import"./rolldown-runtime-QTnfLwEv.js";import{Ar as e,D as t,Dr as n,Er as r,H as i,Mr as a,Nr as o,Or as s,Pr as c,Qr as l,Si as u,T as ee,Wr as te,Yr as ne,ci as d,di as f,ii as p,ji as m,jr as re,k as h,kr as g,qi as _,ui as v,x as y,xr as b}from"./icon-with-child-CgZMNB3F.js";import{t as x}from"./vue-meta.esm-browser.min-C5z7o_np.js";import{Cr as S,Dr as ie,Jr as ae,Sr as C,f as oe,hr as se,mr as ce,xr as le}from"./common-CEAYa_VX.js";import{t as ue}from"./directive-D42ORGRu.js";import{t as de}from"./useUuid-B2AwaEQg.js";import{a as w,d as T,f as E,i as fe}from"./keys-DgS2vm-E.js";import"./dashboard-CQWK08VY.js";import{f as pe}from"./types-jnyNKIzd.js";import{a as me,i as D}from"./composables-CRIJLd1I.js";import{t as O}from"./data-source-edit-form-Ba0Rox_i.js";import{o as k}from"./pages-cards.contants-DcS0YOKq.js";var A={class:`uppercase`},j=[`element-loading-text`],M={key:1,class:`flex flex-row gap-2 justify-end items-center b-t b-t-solid shadow-top z-10 w-full h-[3rem]`,style:{"background-color":`var(--el-drawer-bg-color)`}},N={class:`p-2`},P=c({name:`ViewCardsPageDataSourceEdit`,__name:`view-data-source-edit`,props:{pageId:{},page:{},id:{},remoteFormChanged:{type:Boolean}},emits:[`update:remote-form-changed`],setup(c,{emit:P}){let F=c,I=P,L=y(),{t:R}=ee(),he=oe();x({title:R(`pagesCardsPlugin.meta.pages.editDataSource.title`)});let{validate:ge}=de(),{isMDDevice:z,isLGDevice:B}=se(),{dataSource:V,isLoading:H,fetchDataSource:_e}=me({id:F.id,parent:`page`,parentId:F.page.id}),U=u(!1);if(!ge(F.id))throw Error(`Element identifier is not valid`);let{plugins:ve}=pe(),W=u(!1),G=u(T.NONE),K=u(!1),q=u(!1),ye=r(()=>ve.value.find(e=>(e.elements??[]).some(e=>e.type===V.value?.type))),J=r(()=>(ye.value?.elements??[]).find(e=>e.type===V.value?.type)),Y=r(()=>J.value?.schemas?.dataSourceEditFormSchema??D),X=r(()=>{let e=[];return e.push({label:R(`dashboardModule.breadcrumbs.pages.list`),route:L.resolve({name:E.PAGES})}),e.push({label:R(`dashboardModule.breadcrumbs.pages.detail`,{page:F.page?.title}),route:L.resolve({name:E.PAGE,params:{id:F.page?.id}})}),e.push({label:R(`pagesCardsPlugin.breadcrumbs.pages.configure`,{page:F.page?.title}),route:L.resolve({name:k.PAGE,params:{id:F.page?.id}})}),e.push({label:R(`pagesCardsPlugin.breadcrumbs.pages.editDataSource`,{page:F.page?.title}),route:L.resolve({name:k.PAGE_EDIT_DATA_SOURCE,params:{id:F.page?.id,dataSourceId:V.value?.id}})}),e}),Z=()=>{ie.confirm(R(`pagesCardsPlugin.texts.misc.confirmDiscard`),R(`pagesCardsPlugin.headings.misc.discard`),{confirmButtonText:R(`pagesCardsPlugin.buttons.yes.title`),cancelButtonText:R(`pagesCardsPlugin.buttons.no.title`),type:`warning`}).then(()=>{B.value?L.replace({name:k.PAGE,params:{id:F.page?.id}}):L.push({name:k.PAGE,params:{id:F.page?.id}})}).catch(()=>{})},Q=()=>{W.value=!0},$=()=>{B.value?L.replace({name:k.PAGE,params:{id:F.page?.id}}):L.push({name:k.PAGE,params:{id:F.page?.id}})};return te(async()=>{_e().then(()=>{if(V.value!==null&&(U.value=!0),!H.value&&V.value===null&&!U.value)throw new w(`Data source not found`)}).catch(e=>{if(e instanceof w)throw e;let t=e;throw t instanceof fe&&t.code===404?new w(`Data source not found`):new w(`Something went wrong`,t)})}),ne(()=>{I(`update:remote-form-changed`,q.value)}),d(()=>H.value,e=>{if(!e&&V.value===null&&!U.value)throw new w(`Data source not found`)}),d(()=>V.value,e=>{if(e!==null)U.value=!0;else if(U.value&&!H.value)he.warning(R(`pagesCardsPlugin.messages.dataSources.deletedWhileEditing`),{duration:0}),F.page?.id?B.value?L.replace({name:k.PAGE,params:{id:F.page.id}}):L.push({name:k.PAGE,params:{id:F.page.id}}):B.value?L.replace({name:E.PAGES}):L.push({name:E.PAGES});else if(!H.value&&e===null&&!U.value)throw new w(`Data source not found`)}),d(()=>G.value,e=>{e===T.OK&&(B.value?L.replace({name:k.PAGE,params:{id:F.page?.id}}):L.push({name:k.PAGE,params:{id:F.page?.id}}))}),d(()=>q.value,e=>{I(`update:remote-form-changed`,e)}),(r,c)=>(l(),e(b,null,[o(m(le),{teleport:``},{icon:v(()=>[o(m(t),{icon:`mdi:database-cog-outline`,class:`w[20px] h[20px]`})]),title:v(()=>[a(_(m(R)(`pagesCardsPlugin.headings.pages.editDataSource`)),1)]),subtitle:v(()=>[a(_(m(R)(`pagesCardsPlugin.subHeadings.pages.editDataSource`)),1)]),_:1}),m(z)?g(``,!0):(l(),s(m(C),{key:0,align:m(S).LEFT,teleport:``,small:``,onClick:c[0]||=()=>q.value?Z():$()},{icon:v(()=>[o(m(i),{size:24},{default:v(()=>[o(m(t),{icon:`mdi:chevron-left`})]),_:1})]),_:1},8,[`align`])),m(z)?g(``,!0):(l(),s(m(C),{key:1,align:m(S).RIGHT,teleport:``,small:``,onClick:Q},{default:v(()=>[n(`span`,A,_(m(R)(`pagesCardsPlugin.buttons.update.title`)),1)]),_:1},8,[`align`])),o(m(ce),{items:X.value},null,8,[`items`]),f((l(),e(`div`,{"element-loading-text":m(R)(`pagesCardsPlugin.texts.dataSources.loadingDataSource`),class:`flex flex-col overflow-hidden h-full`},[m(V)===null?g(``,!0):(l(),s(m(ae),{key:0,class:`grow-1 p-2 md:px-4`},{default:v(()=>[J.value?.components?.dataSourceEditForm===void 0?(l(),s(m(O),{key:1,"remote-form-submit":W.value,"onUpdate:remoteFormSubmit":c[5]||=e=>W.value=e,"remote-form-result":G.value,"onUpdate:remoteFormResult":c[6]||=e=>G.value=e,"remote-form-reset":K.value,"onUpdate:remoteFormReset":c[7]||=e=>K.value=e,"remote-form-changed":q.value,"onUpdate:remoteFormChanged":c[8]||=e=>q.value=e,"data-source":m(V),schema:Y.value,"only-draft":``},null,8,[`remote-form-submit`,`remote-form-result`,`remote-form-reset`,`remote-form-changed`,`data-source`,`schema`])):(l(),s(p(J.value?.components?.dataSourceEditForm),{key:0,"remote-form-submit":W.value,"onUpdate:remoteFormSubmit":c[1]||=e=>W.value=e,"remote-form-result":G.value,"onUpdate:remoteFormResult":c[2]||=e=>G.value=e,"remote-form-reset":K.value,"onUpdate:remoteFormReset":c[3]||=e=>K.value=e,"remote-form-changed":q.value,"onUpdate:remoteFormChanged":c[4]||=e=>q.value=e,"data-source":m(V),schema:Y.value,"only-draft":``},null,40,[`remote-form-submit`,`remote-form-result`,`remote-form-reset`,`remote-form-changed`,`data-source`,`schema`]))]),_:1})),m(z)?(l(),e(`div`,M,[n(`div`,N,[q.value?(l(),s(m(h),{key:0,link:``,class:`mr-2`,onClick:Z},{default:v(()=>[a(_(m(R)(`pagesCardsPlugin.buttons.discard.title`)),1)]),_:1})):g(``,!0),q.value?g(``,!0):(l(),s(m(h),{key:1,link:``,class:`mr-2`,onClick:$},{default:v(()=>[a(_(m(R)(`pagesCardsPlugin.buttons.close.title`)),1)]),_:1})),o(m(h),{loading:G.value===m(T).WORKING,disabled:G.value!==m(T).NONE||!q.value,type:`primary`,class:`order-2`,onClick:Q},re({default:v(()=>[a(` `+_(m(R)(`pagesCardsPlugin.buttons.update.title`)),1)]),_:2},[G.value===m(T).OK||G.value===m(T).ERROR?{name:`icon`,fn:v(()=>[G.value===m(T).OK?(l(),s(m(t),{key:0,icon:`mdi:check-circle`})):G.value===m(T).ERROR?(l(),s(m(t),{key:1,icon:`mdi:cross-circle`})):g(``,!0)]),key:`0`}:void 0]),1032,[`loading`,`disabled`])])])):g(``,!0)],8,j)),[[m(ue),m(H)||m(V)===null]])],64))}});export{P as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import"./rolldown-runtime-QTnfLwEv.js";import{Ar as e,D as t,Dr as n,Er as r,H as i,Mr as a,Nr as o,Or as s,Pr as c,Qr as l,Si as u,T as ee,Wr as te,Yr as ne,ci as d,di as f,ii as p,ji as m,jr as re,k as h,kr as g,qi as _,ui as v,x as y,xr as b}from"./icon-with-child-CgZMNB3F.js";import{t as x}from"./vue-meta.esm-browser.min-C5z7o_np.js";import{Cr as S,Dr as ie,Jr as ae,Sr as C,f as oe,hr as se,mr as ce,xr as le}from"./common-CEAYa_VX.js";import{t as ue}from"./directive-D42ORGRu.js";import{t as de}from"./useUuid-B2AwaEQg.js";import{a as w,d as T,f as E,i as fe}from"./keys-DgS2vm-E.js";import"./dashboard-CQWK08VY.js";import{f as pe}from"./types-jnyNKIzd.js";import{a as me,i as D}from"./composables-CRIJLd1I.js";import{t as O}from"./data-source-edit-form-Ba0Rox_i.js";import{r as k}from"./pages-tiles.constants-BzKCg6RC.js";var A={class:`uppercase`},j=[`element-loading-text`],M={key:1,class:`flex flex-row gap-2 justify-end items-center b-t b-t-solid shadow-top z-10 w-full h-[3rem]`,style:{"background-color":`var(--el-drawer-bg-color)`}},N={class:`p-2`},P=c({name:`ViewPageDataSourceEdit`,__name:`view-data-source-edit`,props:{pageId:{},page:{},id:{},remoteFormChanged:{type:Boolean}},emits:[`update:remote-form-changed`],setup(c,{emit:P}){let F=c,I=P,L=y(),{t:R}=ee(),he=oe();x({title:R(`pagesTilesPlugin.meta.pages.editDataSource.title`)});let{validate:ge}=de(),{isMDDevice:z,isLGDevice:B}=se(),{dataSource:V,isLoading:H,fetchDataSource:_e}=me({id:F.id,parent:`page`,parentId:F.page.id}),U=u(!1);if(!ge(F.id))throw Error(`Element identifier is not valid`);let{plugins:ve}=pe(),W=u(!1),G=u(T.NONE),K=u(!1),q=u(!1),ye=r(()=>ve.value.find(e=>(e.elements??[]).some(e=>e.type===V.value?.type))),J=r(()=>(ye.value?.elements??[]).find(e=>e.type===V.value?.type)),Y=r(()=>J.value?.schemas?.dataSourceEditFormSchema??D),X=r(()=>{let e=[];return e.push({label:R(`dashboardModule.breadcrumbs.pages.list`),route:L.resolve({name:E.PAGES})}),e.push({label:R(`dashboardModule.breadcrumbs.pages.detail`,{page:F.page?.title}),route:L.resolve({name:E.PAGE,params:{id:F.page?.id}})}),e.push({label:R(`pagesTilesPlugin.breadcrumbs.pages.configure`,{page:F.page?.title}),route:L.resolve({name:k.PAGE,params:{id:F.page?.id}})}),e.push({label:R(`pagesTilesPlugin.breadcrumbs.pages.editDataSource`,{page:F.page?.title}),route:L.resolve({name:k.PAGE_EDIT_DATA_SOURCE,params:{id:F.page?.id,dataSourceId:V.value?.id}})}),e}),Z=()=>{ie.confirm(R(`pagesTilesPlugin.texts.misc.confirmDiscard`),R(`pagesTilesPlugin.headings.misc.discard`),{confirmButtonText:R(`pagesTilesPlugin.buttons.yes.title`),cancelButtonText:R(`pagesTilesPlugin.buttons.no.title`),type:`warning`}).then(()=>{B.value?L.replace({name:k.PAGE,params:{id:F.page?.id}}):L.push({name:k.PAGE,params:{id:F.page?.id}})}).catch(()=>{})},Q=()=>{W.value=!0},$=()=>{B.value?L.replace({name:k.PAGE,params:{id:F.page?.id}}):L.push({name:k.PAGE,params:{id:F.page?.id}})};return te(async()=>{_e().then(()=>{if(V.value!==null&&(U.value=!0),!H.value&&V.value===null&&!U.value)throw new w(`Data source not found`)}).catch(e=>{let t=e;throw t instanceof fe&&t.code===404?new w(`Data source not found`):new w(`Something went wrong`,t)})}),ne(()=>{I(`update:remote-form-changed`,q.value)}),d(()=>H.value,e=>{if(!e&&V.value===null&&!U.value)throw new w(`Data source not found`)}),d(()=>V.value,e=>{if(e!==null)U.value=!0;else if(U.value&&!H.value)he.warning(R(`pagesTilesPlugin.messages.dataSources.deletedWhileEditing`),{duration:0}),F.page?.id?B.value?L.replace({name:k.PAGE,params:{id:F.page.id}}):L.push({name:k.PAGE,params:{id:F.page.id}}):B.value?L.replace({name:E.PAGES}):L.push({name:E.PAGES});else if(!H.value&&e===null&&!U.value)throw new w(`Data source not found`)}),d(()=>q.value,e=>{I(`update:remote-form-changed`,e)}),(r,c)=>(l(),e(b,null,[o(m(le),{teleport:``},{icon:v(()=>[o(m(t),{icon:`mdi:database-cog-outline`,class:`w[20px] h[20px]`})]),title:v(()=>[a(_(m(R)(`pagesTilesPlugin.headings.pages.editDataSource`)),1)]),subtitle:v(()=>[a(_(m(R)(`pagesTilesPlugin.subHeadings.pages.editDataSource`)),1)]),_:1}),m(z)?g(``,!0):(l(),s(m(C),{key:0,align:m(S).LEFT,teleport:``,small:``,onClick:c[0]||=()=>q.value?Z():$()},{icon:v(()=>[o(m(i),{size:24},{default:v(()=>[o(m(t),{icon:`mdi:chevron-left`})]),_:1})]),_:1},8,[`align`])),m(z)?g(``,!0):(l(),s(m(C),{key:1,align:m(S).RIGHT,teleport:``,small:``,onClick:Q},{default:v(()=>[n(`span`,A,_(m(R)(`pagesTilesPlugin.buttons.update.title`)),1)]),_:1},8,[`align`])),o(m(ce),{items:X.value},null,8,[`items`]),f((l(),e(`div`,{"element-loading-text":m(R)(`pagesTilesPlugin.texts.dataSources.loadingDataSource`),class:`flex flex-col overflow-hidden h-full`},[m(V)===null?g(``,!0):(l(),s(m(ae),{key:0,class:`grow-1 p-2 md:px-4`},{default:v(()=>[J.value?.components?.dataSourceEditForm===void 0?(l(),s(m(O),{key:1,"remote-form-submit":W.value,"onUpdate:remoteFormSubmit":c[5]||=e=>W.value=e,"remote-form-result":G.value,"onUpdate:remoteFormResult":c[6]||=e=>G.value=e,"remote-form-reset":K.value,"onUpdate:remoteFormReset":c[7]||=e=>K.value=e,"remote-form-changed":q.value,"onUpdate:remoteFormChanged":c[8]||=e=>q.value=e,"data-source":m(V),schema:Y.value,"only-draft":``},null,8,[`remote-form-submit`,`remote-form-result`,`remote-form-reset`,`remote-form-changed`,`data-source`,`schema`])):(l(),s(p(J.value?.components?.dataSourceEditForm),{key:0,"remote-form-submit":W.value,"onUpdate:remoteFormSubmit":c[1]||=e=>W.value=e,"remote-form-result":G.value,"onUpdate:remoteFormResult":c[2]||=e=>G.value=e,"remote-form-reset":K.value,"onUpdate:remoteFormReset":c[3]||=e=>K.value=e,"remote-form-changed":q.value,"onUpdate:remoteFormChanged":c[4]||=e=>q.value=e,"data-source":m(V),schema:Y.value,"only-draft":``},null,40,[`remote-form-submit`,`remote-form-result`,`remote-form-reset`,`remote-form-changed`,`data-source`,`schema`]))]),_:1})),m(z)?(l(),e(`div`,M,[n(`div`,N,[q.value?(l(),s(m(h),{key:0,link:``,class:`mr-2`,onClick:Z},{default:v(()=>[a(_(m(R)(`pagesTilesPlugin.buttons.discard.title`)),1)]),_:1})):g(``,!0),q.value?g(``,!0):(l(),s(m(h),{key:1,link:``,class:`mr-2`,onClick:$},{default:v(()=>[a(_(m(R)(`pagesTilesPlugin.buttons.close.title`)),1)]),_:1})),o(m(h),{loading:G.value===m(T).WORKING,disabled:G.value!==m(T).NONE||!q.value,type:`primary`,class:`order-2`,onClick:Q},re({default:v(()=>[a(` `+_(m(R)(`pagesTilesPlugin.buttons.update.title`)),1)]),_:2},[G.value===m(T).OK||G.value===m(T).ERROR?{name:`icon`,fn:v(()=>[G.value===m(T).OK?(l(),s(m(t),{key:0,icon:`mdi:check-circle`})):G.value===m(T).ERROR?(l(),s(m(t),{key:1,icon:`mdi:cross-circle`})):g(``,!0)]),key:`0`}:void 0]),1032,[`loading`,`disabled`])])])):g(``,!0)],8,j)),[[m(ue),m(H)||m(V)===null]])],64))}});export{P as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import"./rolldown-runtime-QTnfLwEv.js";import{Ar as e,D as t,Dr as n,E as r,Er as i,H as ee,Mr as a,Mt as o,Nr as s,O as c,Or as l,Pr as u,Qr as d,Si as f,Sr as te,T as ne,Wi as p,Wr as re,Yr as m,b as h,ci as g,di as _,ei as v,ii as y,ji as b,k as x,kr as S,ni as C,qi as w,r as T,t as E,ui as D,x as O,xr as k}from"./icon-with-child-CgZMNB3F.js";import{t as A}from"./vue-meta.esm-browser.min-C5z7o_np.js";import{A as j,Cr as M,Dr as N,Jr as P,Mr as F,Nr as I,On as L,Or as R,Sr as z,Ur as B,b as ie,f as ae,g as V,h as oe,hr as se,jr as ce,m as le,mr as ue,n as H,on as de,p as U,un as W,wr as fe,xr as pe}from"./common-CEAYa_VX.js";import{n as G,t as me}from"./table-CP4k6PuT.js";import{t as K}from"./alert-B_504iE8.js";import{r as q,t as J}from"./select-BE-J6w_y.js";import{t as he}from"./card-C50YgvLJ.js";import{t as ge}from"./dialog-BKnLpTNm.js";import{t as _e}from"./drawer-Bv6YcfZX.js";import{E as ve,T as ye,a as be,o as xe}from"./components-CtSAjzWY.js";import{t as Y}from"./link-mE1gaRBg.js";import{n as Se,t as Ce}from"./tabs-BlmPldJW.js";import{t as we}from"./directive-D42ORGRu.js";import{t as Te}from"./useUuid-B2AwaEQg.js";import{t as X}from"./dist-DJgPCOr0.js";import{a as Ee,n as De,r as Oe}from"./keys-DghNVBR5.js";import{o as Z}from"./devices.constants-HX5whDWr.js";import{a as Q,n as $}from"./devices-DPaIRKfd.js";import{H as ke,I as Ae,R as je,d as Me,h as Ne,i as Pe,j as Fe,n as Ie,t as Le,x as Re}from"./composables-BiL7NDB2.js";import{n as ze}from"./devices-virtual.constants-Ckcs-m8t.js";var Be={class:`flex flex-wrap items-center gap-2`},Ve=u({name:`VirtualDeviceRemapDialog`,__name:`virtual-device-remap-dialog`,props:{propertyId:{}},emits:[`close`,`remapped`],setup(t,{expose:r,emit:ee}){let o=t,c=ee,{t:u}=ne(),te=U(),p=V(),m=ae(),h=ie(),_=h.getStore(Ee),y=h.getStore(Oe),C=h.getStore(De),E=f(!0),O=f(null),A=f(null),j=f(null),M=f(null),N=f(!1),P=f(!1),F=f(null),I=0,z=i(()=>C.findById(o.propertyId)??void 0),B=i(()=>z.value?y.findById(z.value.channel)??void 0:void 0),oe=i(()=>B.value?_.findById(B.value.device)??void 0:void 0),se=i(()=>z.value?z.value.name??u(`devicesModule.categories.channelsProperties.${z.value.category}`):``),ce=i(()=>u(`devicesVirtualPlugin.remap.title`,{property:se.value})),le=i(()=>X(_.findAll().filter(e=>!e.draft&&(!e.hidden||e.hiddenBy===de.system)&&e.type!==`virtual`),[e=>e.name],[`asc`]).map(e=>({value:e.id,label:e.name}))),ue=i(()=>O.value===null?[]:X(y.findForDevice(O.value),[e=>e.name],[`asc`]).map(e=>({value:e.id,label:e.name}))),W=i(()=>A.value===null?[]:X(C.findForChannel(A.value),[e=>e.name??e.category],[`asc`]).map(e=>({value:e.id,label:e.name??u(`devicesModule.categories.channelsProperties.${e.category}`)}))),fe=i(()=>z.value!==void 0&&j.value!==null&&M.value===null&&!N.value&&!P.value),pe=async e=>{try{await y.fetch({deviceId:e})}catch(e){p.error(`Failed to load remap source channels`,e)}},G=async e=>{try{await C.fetch({channelId:e})}catch(e){p.error(`Failed to load remap source properties`,e)}},me=async e=>{if(!z.value||!B.value||!oe.value){M.value=u(`devicesVirtualPlugin.wizard.mapping.errors.checkFailed`);return}let t=++I;N.value=!0,M.value=null;try{let{data:n,error:r}=await te.client.POST(`/${T}/${ze}/devices/compatibility`,{body:{data:{category:oe.value.category,candidates:[{spec_channel:B.value.category,spec_property:z.value.category,source_property:e}]}}});if(t!==I)return;let i=n?.data?.[0];if(!i){M.value=r?H(r,u(`devicesVirtualPlugin.wizard.mapping.errors.checkFailed`)):u(`devicesVirtualPlugin.wizard.mapping.errors.checkFailed`);return}M.value=i.compatible?null:i.reason??u(`devicesVirtualPlugin.wizard.mapping.errors.incompatible`)}catch(e){if(t!==I)return;p.error(`Virtual device remap compatibility check failed`,e),M.value=u(`devicesVirtualPlugin.wizard.mapping.errors.checkFailed`)}finally{t===I&&(N.value=!1)}},he=async e=>{if(j.value=e,M.value=null,e===null){I++,N.value=!1;return}await me(e)},_e=e=>{A.value=null,j.value=null,M.value=null,I++,N.value=!1,e!==null&&pe(e).catch(e=>p.error(`Failed to load remap source channels`,e))},ve=e=>{j.value=null,M.value=null,I++,N.value=!1,e!==null&&G(e).catch(e=>p.error(`Failed to load remap source properties`,e))},ye=e=>{he(e).catch(e=>p.error(`Failed to select remap source property`,e))},be=async()=>{if(!fe.value||!z.value||j.value===null)return;P.value=!0,F.value=null;let e=z.value,t=j.value,n=C.findById(t),r={type:e.type,...n?{dataType:n.dataType,format:n.format??null,step:n.step??null,invalid:n.invalid??null}:{dataType:e.dataType,format:e.format,step:e.step},sourceProperty:t};try{await C.edit({id:e.id,channelId:e.channel,data:r}),m.success(u(`devicesVirtualPlugin.remap.success`,{property:se.value})),c(`remapped`,{propertyId:e.id,sourceProperty:t})}catch(e){p.error(`Failed to remap virtual device property`,e),F.value=e instanceof Error?e.message:u(`devicesVirtualPlugin.remap.errors.updateFailed`),m.error(F.value)}finally{P.value=!1}},xe=()=>{P.value||c(`close`)};return g(E,e=>{e||xe()}),re(()=>{_.fetch({hidden:L.all}).catch(e=>p.error(`Failed to load remap source devices`,e))}),r({property:z,sourceDevicesOptions:le,channelsOptions:ue,propertiesOptions:W,selection:j,error:M,checking:N,canConfirm:fe,confirming:P,confirmError:F,selectSource:he,onPickDevice:_e,onPickChannel:ve,onPickProperty:ye,confirm:be,onClose:xe}),(t,r)=>(d(),l(b(ge),{modelValue:E.value,"onUpdate:modelValue":r[3]||=e=>E.value=e,title:ce.value,class:`max-w-[600px]`,"close-on-click-modal":!P.value,"close-on-press-escape":!P.value,"show-close":!P.value,"data-test-id":`remap-dialog`},{footer:D(()=>[s(b(x),{disabled:P.value,"data-test-id":`remap-cancel`,onClick:xe},{default:D(()=>[a(w(b(u)(`devicesModule.buttons.cancel.title`)),1)]),_:1},8,[`disabled`]),s(b(x),{type:`primary`,disabled:!fe.value,loading:P.value,"data-test-id":`remap-confirm`,onClick:be},{default:D(()=>[a(w(b(u)(`devicesVirtualPlugin.remap.confirm`)),1)]),_:1},8,[`disabled`,`loading`])]),default:D(()=>[z.value?(d(),e(k,{key:1},[s(b(R),{size:`small`,type:`info`,class:`block mb-3`},{default:D(()=>[a(w(b(u)(`devicesVirtualPlugin.remap.description`)),1)]),_:1}),n(`div`,Be,[s(b(q),{modelValue:O.value,"onUpdate:modelValue":[r[0]||=e=>O.value=e,_e],placeholder:b(u)(`devicesVirtualPlugin.wizard.mapping.source.devicePlaceholder`),name:`remap-device`,filterable:``,clearable:``,class:`w-60`},{default:D(()=>[(d(!0),e(k,null,v(le.value,e=>(d(),l(b(J),{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`]),s(b(q),{modelValue:A.value,"onUpdate:modelValue":[r[1]||=e=>A.value=e,ve],placeholder:b(u)(`devicesVirtualPlugin.wizard.mapping.source.channelPlaceholder`),name:`remap-channel`,disabled:!O.value,filterable:``,clearable:``,class:`w-60`},{default:D(()=>[(d(!0),e(k,null,v(ue.value,e=>(d(),l(b(J),{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`,`disabled`]),s(b(q),{modelValue:j.value,"onUpdate:modelValue":[r[2]||=e=>j.value=e,ye],placeholder:b(u)(`devicesVirtualPlugin.wizard.mapping.source.propertyPlaceholder`),name:`remap-property`,disabled:!A.value,loading:N.value,filterable:``,clearable:``,class:`w-60`},{default:D(()=>[(d(!0),e(k,null,v(W.value,e=>(d(),l(b(J),{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`,`disabled`,`loading`])]),M.value?(d(),l(b(R),{key:0,size:`small`,type:`danger`,class:`block mt-2`,"data-test-id":`remap-error`},{default:D(()=>[a(w(M.value),1)]),_:1})):S(``,!0),F.value?(d(),l(b(K),{key:1,type:`error`,title:F.value,closable:!1,"show-icon":``,class:`mt-2`,"data-test-id":`remap-confirm-error`},null,8,[`title`])):S(``,!0)],64)):(d(),l(b(K),{key:0,type:`error`,title:b(u)(`devicesVirtualPlugin.remap.errors.propertyGone`),closable:!1,"show-icon":``,"data-test-id":`remap-property-gone`},null,8,[`title`]))]),_:1},8,[`modelValue`,`title`,`close-on-click-modal`,`close-on-press-escape`,`show-close`]))}}),He={class:`flex items-center gap-2`},Ue={key:0,class:`space-y-2 mb-3`},We={key:2,class:`list-none p-0 m-0 space-y-1`,"data-test-id":`sources-list`},Ge=u({name:`VirtualDeviceSources`,__name:`virtual-device-sources`,props:{device:{}},setup(r,{expose:ee}){let o=r,{t:c}=ne(),u=O(),te=U(),p=V(),m=ie(),h=m.getStore(Oe),y=m.getStore(De),C=f([]),E=f(!1),A=f(null),j=f(null),M=i(()=>h.findForDevice(o.device.id)),N=i(()=>M.value.flatMap(e=>y.findForChannel(e.id).filter(e=>e.valueOrigin===W.source&&e.sourceProperty===null).map(t=>({action:`remap`,propertyId:t.id,specChannel:e.category,specProperty:t.category})))),P=e=>c(`devicesVirtualPlugin.sources.warning.title`,{channel:c(`devicesModule.categories.channels.${e.specChannel}`),property:c(`devicesModule.categories.channelsProperties.${e.specProperty}`)}),F=0,I=async()=>{let e=++F;E.value=!0,A.value=null;try{let{data:t,error:n}=await te.client.GET(`/${T}/${ze}/devices/{id}/source-devices`,{params:{path:{id:o.device.id}}});if(e!==F)return;if(!t){A.value=n?H(n,c(`devicesVirtualPlugin.sources.loadFailed`)):c(`devicesVirtualPlugin.sources.loadFailed`);return}C.value=t.data.map(e=>$(e,Q))}catch(t){p.error(`Failed to load virtual device source devices`,t),e===F&&(A.value=c(`devicesVirtualPlugin.sources.loadFailed`))}finally{e===F&&(E.value=!1)}},L=()=>{I().catch(e=>p.error(`Failed to retry loading virtual device source devices`,e))},z=()=>{j.value=null,I().catch(e=>p.error(`Failed to reload virtual device source devices after a remap`,e))};g(i(()=>M.value.flatMap(e=>y.findForChannel(e.id).map(e=>`${e.id}:${e.sourceProperty??``}`)).sort().join(`|`)),(e,t)=>{t===void 0||e===t||I().catch(e=>p.error(`Failed to reload virtual device source devices after its links changed`,e))});let B=e=>{u.push({name:Z.DEVICE,params:{id:e}}).catch(e=>p.error(`Failed to open source device`,e))},ae=e=>{j.value=e};return re(()=>{h.fetch({deviceId:o.device.id}).catch(e=>p.error(`Failed to load virtual device channels`,e)),I().catch(e=>p.error(`Failed to load virtual device source devices`,e))}),ee({warnings:N,sourceDevices:C,loading:E,loadError:A,remapTarget:j,onRemap:ae,onRetry:L,fetchSourceDevices:I}),(r,i)=>(d(),e(k,null,[s(b(he),{class:`mt-2`,shadow:`never`,"data-test-id":`virtual-device-sources`},{header:D(()=>[n(`div`,He,[s(b(t),{icon:`mdi:source-branch`}),n(`strong`,null,w(b(c)(`devicesVirtualPlugin.sources.heading`)),1)])]),default:D(()=>[s(b(R),{size:`small`,type:`info`,class:`block mb-3`},{default:D(()=>[a(w(b(c)(`devicesVirtualPlugin.sources.description`)),1)]),_:1}),N.value.length>0?(d(),e(`div`,Ue,[(d(!0),e(k,null,v(N.value,e=>(d(),l(b(K),{key:e.propertyId,type:`warning`,title:P(e),description:b(c)(`devicesVirtualPlugin.sources.warning.description`),closable:!1,"show-icon":``,"data-test-id":`source-warning-${e.propertyId}`},{default:D(()=>[s(b(x),{size:`small`,type:`warning`,plain:``,"data-test-id":`remap-${e.propertyId}`,onClick:t=>ae(e)},{default:D(()=>[a(w(b(c)(`devicesVirtualPlugin.sources.warning.remap`)),1)]),_:1},8,[`data-test-id`,`onClick`])]),_:2},1032,[`title`,`description`,`data-test-id`]))),128))])):S(``,!0),_((d(),e(`div`,null,[A.value?(d(),l(b(K),{key:0,type:`error`,title:A.value,closable:!1,"show-icon":``,"data-test-id":`sources-error`},{default:D(()=>[s(b(x),{size:`small`,"data-test-id":`sources-retry`,onClick:L},{default:D(()=>[a(w(b(c)(`devicesVirtualPlugin.sources.retry`)),1)]),_:1})]),_:1},8,[`title`])):!E.value&&C.value.length===0?(d(),l(b(R),{key:1,size:`small`,type:`info`,"data-test-id":`sources-empty`},{default:D(()=>[a(w(b(c)(`devicesVirtualPlugin.sources.empty`)),1)]),_:1})):(d(),e(`ul`,We,[(d(!0),e(k,null,v(C.value,n=>(d(),e(`li`,{key:n.id},[s(b(Y),{type:`primary`,underline:!1,onClick:e=>B(n.id)},{default:D(()=>[s(b(t),{icon:`mdi:devices`,class:`mr-1`}),a(` `+w(n.name),1)]),_:2},1032,[`onClick`])]))),128))]))])),[[b(we),E.value]])]),_:1}),j.value?(d(),l(Ve,{key:0,"property-id":j.value.propertyId,onClose:i[0]||=e=>j.value=null,onRemapped:z},null,8,[`property-id`])):S(``,!0)],64))}}),Ke={class:`uppercase`},qe={class:`flex items-center`},Je={class:`flex items-center gap-2 px-4`},Ye={class:`flex items-center gap-2 px-4`},Xe={key:1,class:`text-gray-400`},Ze={class:`flex items-center gap-2 px-4`},Qe={class:`flex flex-col h-full`},$e=r(u({name:`ViewDevice`,__name:`view-device`,props:{id:{},channelId:{},propertyId:{}},setup(r){let u=r,_=h(),T=O(),{t:L}=ne(),{meta:ie}=A({}),V=ae(),H=o(`view-device`),{validate:de}=Te(),{isMDDevice:U,isLGDevice:W}=se(),K=i(()=>u.id),{device:q,isLoading:J,fetchDevice:ge}=Ne({id:K}),{issues:Y,fetchValidation:we}=Pe({id:K}),X=Le({deviceId:i(()=>u.id)}),{alertCount:Ee,hasAlerts:De,fetchLogs:Oe}=X,Q=f(!1),$=f(!1),{canAddAnotherChannel:ze}=Me({id:K}),{channels:Be,fetchChannels:Ve}=je({deviceId:K}),{controls:He,fetchControls:Ue}=Ie({deviceId:K}),We=Ae(),$e=Re();de(u.id)||($.value=!0);let et=f(!1),tt=f(!1),nt=f(!1),rt=f(`overview`),it=f(!1);g(Y,e=>{rt.value===`validation`&&e.length===0&&(rt.value=`overview`)}),g(rt,e=>{e!==`logs`&&it.value&&(it.value=!1,X.live.value=!1)});let at=i(()=>_.name===Z.DEVICE),ot=i(()=>q.value?Fe[q.value.category]??[]:[]),st=i(()=>Be.value.slice().sort((e,t)=>{let n=ot.value.indexOf(e.category),r=ot.value.indexOf(t.category);return n===r?e.name.localeCompare(t.name):(n===-1?2**53-1:n)-(r===-1?2**53-1:r)})),ct=i(()=>[{label:L(`devicesModule.breadcrumbs.devices.list`),route:T.resolve({name:Z.DEVICES})},{label:L(`devicesModule.breadcrumbs.devices.detail`,{device:q.value?.name}),route:T.resolve({name:Z.DEVICE,params:{id:u.id}})}]),lt=e=>{nt.value?N.confirm(L(`devicesModule.texts.misc.confirmDiscard`),L(`devicesModule.headings.misc.discard`),{confirmButtonText:L(`devicesModule.buttons.yes.title`),cancelButtonText:L(`devicesModule.buttons.no.title`),type:`warning`}).then(()=>{W.value?T.replace({name:Z.DEVICE,params:{id:u.id}}):T.push({name:Z.DEVICE,params:{id:u.id}}),e?.()}).catch(()=>{}):(W.value?T.replace({name:Z.DEVICE,params:{id:u.id}}):T.push({name:Z.DEVICE,params:{id:u.id}}),e?.())},ut=()=>{W.value?T.replace({name:Z.DEVICE_EDIT,params:{id:u.id}}):T.push({name:Z.DEVICE_EDIT,params:{id:u.id}})},dt=()=>{W.value?T.replace({name:Z.DEVICE_CONTROL,params:{id:u.id}}):T.push({name:Z.DEVICE_CONTROL,params:{id:u.id}})},ft=()=>{W.value?T.replace({name:Z.DEVICE_ADD_CHANNEL,params:{id:u.id}}):T.push({name:Z.DEVICE_ADD_CHANNEL,params:{id:u.id}})},pt=e=>{W.value?T.replace({name:Z.DEVICE_EDIT_CHANNEL,params:{id:u.id,channelId:e}}):T.push({name:Z.DEVICE_EDIT_CHANNEL,params:{id:u.id,channelId:e}})},mt=e=>{We.remove(e)},ht=e=>{W.value?T.replace({name:Z.DEVICE_CHANNEL_ADD_PROPERTY,params:{id:u.id,channelId:e}}):T.push({name:Z.DEVICE_CHANNEL_ADD_PROPERTY,params:{id:u.id,channelId:e}})},gt=(e,t)=>{W.value?T.replace({name:Z.DEVICE_CHANNEL_EDIT_PROPERTY,params:{id:u.id,channelId:e,propertyId:t}}):T.push({name:Z.DEVICE_CHANNEL_EDIT_PROPERTY,params:{id:u.id,channelId:e,propertyId:t}})},_t=(e,t)=>{$e.remove(t)},vt=()=>{W.value?T.replace({name:Z.DEVICES}):T.push({name:Z.DEVICES})},yt=0,bt=()=>{let e=++yt;$.value=!1,Q.value=!1,ge().then(()=>{if(e===yt){if(!J.value&&q.value===null&&!Q.value){$.value=!0;return}q.value!==null&&(Q.value=!0),Ve().catch(()=>{V.error(L(`devicesModule.messages.channels.notLoadedForDevice`))}),we().catch(()=>{}),Ue().catch(()=>{}),Oe().catch(()=>{})}}).catch(t=>{e===yt&&(t instanceof ke&&t.code===404||V.error(L(`devicesModule.messages.devices.notLoaded`)),$.value=!0)})};return re(()=>{tt.value=_.matched.find(e=>e.name===Z.DEVICE_EDIT||e.name===Z.DEVICE_CONTROL||e.name===Z.DEVICE_ADD_CHANNEL||e.name===Z.DEVICE_EDIT_CHANNEL||e.name===Z.DEVICE_CHANNEL_ADD_PROPERTY||e.name===Z.DEVICE_CHANNEL_EDIT_PROPERTY)!==void 0}),g(K,()=>{bt()},{immediate:!0}),m(()=>{et.value=!0}),g(()=>_.path,()=>{tt.value=_.matched.find(e=>e.name===Z.DEVICE_EDIT||e.name===Z.DEVICE_CONTROL||e.name===Z.DEVICE_ADD_CHANNEL||e.name===Z.DEVICE_EDIT_CHANNEL||e.name===Z.DEVICE_CHANNEL_ADD_PROPERTY||e.name===Z.DEVICE_CHANNEL_EDIT_PROPERTY)!==void 0}),g(()=>J.value,e=>{!e&&q.value===null&&!Q.value&&($.value=!0)}),g(()=>q.value,e=>{e===null?Q.value&&!J.value?(V.warning(L(`devicesModule.messages.devices.deletedWhileEditing`),{duration:0}),W.value?T.replace({name:Z.DEVICES}):T.push({name:Z.DEVICES})):!J.value&&e===null&&!Q.value&&($.value=!0):(Q.value=!0,ie.title=L(`devicesModule.meta.devices.detail.title`,{device:q.value?.name}))}),g(()=>_.path,()=>{_.matched.find(e=>e.name===Z.DEVICE_ADD_CHANNEL)!==void 0&&!ze&&(V.info(L(`devicesModule.messages.channels.noMoreAllowed`)),W.value?T.replace({name:Z.DEVICE,params:{id:u.id}}):T.push({name:Z.DEVICE,params:{id:u.id}}))}),(r,i)=>{let o=C(`router-view`);return d(),e(k,null,[$.value?S(``,!0):(d(),e(k,{key:0},[s(b(ue),{items:ct.value},null,8,[`items`]),!b(U)&&at.value?(d(),l(b(pe),{key:0,teleport:``},{icon:D(()=>[s(b(t),{icon:`mdi:devices`,class:`w[20px] h[20px]`})]),title:D(()=>[a(w(b(L)(`devicesModule.headings.devices.detail`,{device:b(q)?.name})),1)]),subtitle:D(()=>[a(w(b(L)(`devicesModule.subHeadings.devices.detail`,{device:b(q)?.name})),1)]),_:1})):S(``,!0),b(U)?S(``,!0):(d(),l(b(z),{key:1,align:b(M).LEFT,teleport:``,small:``,onClick:vt},{icon:D(()=>[s(b(ee),{size:24},{default:D(()=>[s(b(t),{icon:`mdi:chevron-left`})]),_:1})]),_:1},8,[`align`])),!b(U)&&at.value&&b(ze)?(d(),l(b(z),{key:2,align:b(M).RIGHT,teleport:``,small:``,onClick:ft},{default:D(()=>[n(`span`,Ke,w(b(L)(`devicesModule.buttons.add.title`)),1)]),_:1},8,[`align`])):S(``,!0),s(b(le),{heading:b(L)(`devicesModule.headings.devices.detail`,{device:b(q)?.name}),"sub-heading":b(L)(`devicesModule.subHeadings.devices.detail`,{device:b(q)?.name}),icon:`mdi:devices`},{extra:D(()=>[n(`div`,qe,[s(b(x),{type:`primary`,plain:``,class:`px-4! ml-2!`,disabled:!b(ze),onClick:ft},{icon:D(()=>[s(b(t),{icon:`mdi:plus`})]),default:D(()=>[a(` `+w(b(L)(`devicesModule.buttons.addChannel.title`)),1)]),_:1},8,[`disabled`]),s(b(x),{plain:``,class:`px-4! ml-2!`,onClick:ut},{icon:D(()=>[s(b(t),{icon:`mdi:pencil`})]),_:1}),s(b(x),{plain:``,class:`px-4! ml-2!`,onClick:dt},{icon:D(()=>[s(b(t),{icon:`mdi:tune-variant`})]),_:1}),b(He).length===0?S(``,!0):(d(),l(b(ce),{key:0,trigger:`click`},{dropdown:D(()=>[s(b(I),null,{default:D(()=>[(d(!0),e(k,null,v(b(He),e=>(d(),l(b(F),{key:e.id},{icon:D(()=>[s(b(t),{icon:`mdi:pencil`})]),default:D(()=>[a(` `+w(e.name),1)]),_:2},1024))),128))]),_:1})]),default:D(()=>[s(b(x),{plain:``,class:`px-4! ml-2!`},{icon:D(()=>[s(b(t),{icon:`mdi:cog`})]),_:1})]),_:1}))])]),_:1},8,[`heading`,`sub-heading`])],64)),$.value?(d(),l(b(j),{key:1,icon:`mdi:devices`,message:b(L)(`devicesModule.messages.devices.notFound`),"button-label":b(L)(`devicesModule.buttons.back.title`),onBack:vt},null,8,[`message`,`button-label`])):at.value||b(W)?(d(),e(`div`,{key:2,class:p([`flex flex-col flex-1 min-h-0 lt-sm:mx-1 sm:mx-2 mb-2`,[b(H).b()]])},[b(q)?(d(),l(b(xe),{key:0,device:b(q)},null,8,[`device`])):S(``,!0),b(q)&&b(q).type===b(`virtual`)?(d(),l(Ge,{key:b(q).id,device:b(q)},null,8,[`device`])):S(``,!0),s(b(Se),{modelValue:rt.value,"onUpdate:modelValue":i[1]||=e=>rt.value=e,class:p([`flex-1 min-h-0 flex flex-col mt-2`,b(H).e(`tabs`)])},{default:D(()=>[s(b(Ce),{name:`overview`,class:`h-full overflow-hidden`},{label:D(()=>[n(`div`,Je,[s(b(t),{icon:`mdi:information-outline`}),a(` `+w(b(L)(`devicesModule.labels.overview`)),1)])]),default:D(()=>[s(b(P),{class:`h-full`},{default:D(()=>[st.value?(d(),l(b(ve),{key:0,direction:`vertical`,size:`large`,class:p([`w-full mb-2`,[b(H).e(`channels-list`)]]),fill:``},{default:D(()=>[(d(!0),e(k,null,v(st.value,e=>(d(),l(b(ye),{key:e.id,channel:e,onChannelEdit:pt,onChannelRemove:mt,onPropertyAdd:ht,onPropertyEdit:gt,onPropertyRemove:_t},null,8,[`channel`]))),128))]),_:1},8,[`class`])):(d(),l(b(he),{key:1,"body-class":`flex flex-row justify-center`},{default:D(()=>[s(b(c),{class:`h-full max-w-[700px]`},{icon:D(()=>[s(b(E),{size:80},{primary:D(()=>[s(b(t),{icon:`mdi:chip`})]),secondary:D(()=>[s(b(t),{icon:`mdi:timer-sand-empty`})]),_:1})]),title:D(()=>[s(b(R),{class:`block`},{default:D(()=>[a(w(b(L)(`devicesModule.texts.devices.noChannels`)),1)]),_:1}),s(b(x),{type:`primary`,plain:``,class:`mt-4`,onClick:ft},{icon:D(()=>[s(b(t),{icon:`mdi:plus`})]),default:D(()=>[a(` `+w(b(L)(`devicesModule.buttons.addChannel.title`)),1)]),_:1})]),_:1})]),_:1}))]),_:1})]),_:1}),b(Y).length>0?(d(),l(b(Ce),{key:0,name:`validation`,class:`h-full overflow-hidden`},{label:D(()=>[n(`div`,Ye,[s(b(t),{icon:`mdi:alert-circle-outline`}),a(` `+w(b(L)(`devicesModule.labels.validation`))+` `,1),s(b(B),{type:`danger`,size:`small`},{default:D(()=>[a(w(b(Y).length),1)]),_:1})])]),default:D(()=>[s(b(P),{class:`h-full`},{default:D(()=>[s(b(me),{data:b(Y),size:`small`,class:`w-full`},{default:D(()=>[s(b(G),{label:b(L)(`devicesModule.validation.table.severity`),prop:`severity`,width:100},{default:D(e=>[s(b(B),{type:e.row.severity===`error`?`danger`:`warning`,size:`small`},{default:D(()=>[a(w(e.row.severity===`error`?b(L)(`devicesModule.validation.severity.error`):b(L)(`devicesModule.validation.severity.warning`)),1)]),_:2},1032,[`type`])]),_:1},8,[`label`]),s(b(G),{label:b(L)(`devicesModule.validation.table.type`),prop:`type`,width:150},{default:D(e=>[a(w(b(L)(`devicesModule.validation.issueTypes.${e.row.type}`,e.row.type)),1)]),_:1},8,[`label`]),s(b(G),{label:b(L)(`devicesModule.validation.table.message`),prop:`message`},null,8,[`label`]),s(b(G),{label:b(L)(`devicesModule.validation.table.channel`),prop:`channelCategory`,width:150},{default:D(t=>[t.row.channelCategory?(d(),e(k,{key:0},[a(w(b(L)(`devicesModule.categories.channels.${t.row.channelCategory}`,t.row.channelCategory)),1)],64)):(d(),e(`span`,Xe,` - `))]),_:1},8,[`label`])]),_:1},8,[`data`])]),_:1})]),_:1})):S(``,!0),s(b(Ce),{name:`logs`,class:`h-full overflow-hidden`},{label:D(()=>[n(`div`,Ze,[s(b(t),{icon:`mdi:console`}),a(` `+w(b(L)(`devicesModule.labels.logs`))+` `,1),b(De)?(d(),l(b(B),{key:0,type:`danger`,size:`small`},{default:D(()=>[a(w(b(Ee)),1)]),_:1})):S(``,!0)])]),default:D(()=>[b(q)?(d(),l(b(be),{key:0,live:it.value,"onUpdate:live":i[0]||=e=>it.value=e,"device-id":b(q).id,logs:b(X).logs,"has-more":b(X).hasMore,"is-loading":b(X).isLoading,"live-ref":b(X).live,"fetch-logs":b(X).fetchLogs,"load-more-logs":b(X).loadMoreLogs,"refresh-logs":b(X).refreshLogs},null,8,[`live`,`device-id`,`logs`,`has-more`,`is-loading`,`live-ref`,`fetch-logs`,`load-more-logs`,`refresh-logs`])):S(``,!0)]),_:1})]),_:1},8,[`modelValue`,`class`])],2)):(d(),l(o,{key:`${u.id}-${b(q)?.id}`},{default:D(({Component:e})=>[(d(),l(y(e),{device:b(q)},null,8,[`device`]))]),_:1})),b(W)?(d(),l(b(_e),{key:4,modelValue:tt.value,"onUpdate:modelValue":i[4]||=e=>tt.value=e,"show-close":!1,size:`40%`,"with-header":!1,"before-close":lt},{default:D(()=>[n(`div`,Qe,[s(b(fe),{"menu-button-hidden":``},{"button-right":D(()=>[s(b(z),{align:b(M).RIGHT,class:`mr-2`,onClick:i[2]||=()=>lt()},{icon:D(()=>[s(b(ee),null,{default:D(()=>[s(b(t),{icon:`mdi:close`})]),_:1})]),_:1},8,[`align`])]),_:1}),tt.value?(d(),l(b(oe),{key:0},{icon:D(()=>[s(b(t),{icon:`mdi:devices`})]),message:D(()=>[a(w(b(L)(`devicesModule.messages.misc.requestError`)),1)]),default:D(()=>[(d(),l(te,null,{default:D(()=>[(d(),l(o,{key:`${u.id}-${b(q)?.id}`},{default:D(({Component:e})=>[(d(),l(y(e),{"remote-form-changed":nt.value,"onUpdate:remoteFormChanged":i[3]||=e=>nt.value=e,device:b(q)},null,40,[`remote-form-changed`,`device`]))]),_:1}))]),_:1}))]),_:1})):S(``,!0)])]),_:1},8,[`modelValue`])):S(``,!0)],64)}}}),[[`__scopeId`,`data-v-0573eded`]]);export{$e as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import"./rolldown-runtime-QTnfLwEv.js";import{Ar as e,D as t,Dr as n,Er as r,H as ee,Mr as i,Nr as a,Or as o,Pr as s,Qr as c,Si as l,T as u,Yr as d,ci as f,ii as p,ji as m,jr as h,k as g,kr as _,qi as v,ui as y,x as te,xr as b}from"./icon-with-child-CgZMNB3F.js";import{t as ne}from"./vue-meta.esm-browser.min-C5z7o_np.js";import{Cr as x,Dr as re,Jr as ie,Pr as S,Sr as C,hr as w,mr as T,xr as E}from"./common-CEAYa_VX.js";import{t as D}from"./alert-B_504iE8.js";import{l as ae,n as oe}from"./components-CtSAjzWY.js";import{t as se}from"./useUuid-B2AwaEQg.js";import{t as ce}from"./common.constants-C6QiEtuS.js";import{a as O,o as k}from"./devices.constants-HX5whDWr.js";import"./composables-BiL7NDB2.js";import{t as A}from"./useDevicesPlugins-IYuPoZmZ.js";var j={class:`uppercase`},M={class:`flex flex-col overflow-hidden h-full`},N={key:0,class:`flex flex-row gap-2 justify-end items-center b-t b-t-solid shadow-top z-10 w-full h-[3rem]`,style:{"background-color":`var(--el-drawer-bg-color)`}},P={class:`p-2`},F=[`id`],I=s({name:`ViewDeviceAdd`,__name:`view-device-add`,props:{remoteFormChanged:{type:Boolean}},emits:[`update:remote-form-changed`],setup(s,{emit:I}){let L=I,R=te(),{t:z}=u();ne({title:z(`devicesModule.meta.devices.add.title`)});let{generate:B}=se(),{isMDDevice:V,isLGDevice:H}=w(),U=B(),{plugins:W}=A(),G=l(!1),K=l(O.NONE),q=l(!1),J=l(!1),Y=l(void 0),le=r(()=>W.value.find(e=>(e.elements??[]).some(e=>e.type===Y.value))),X=r(()=>(le.value?.elements??[]).find(e=>e.type===Y.value)),ue=r(()=>[{label:z(`devicesModule.breadcrumbs.devices.list`),route:R.resolve({name:k.DEVICES})},{label:z(`devicesModule.breadcrumbs.devices.add`),route:R.resolve({name:k.DEVICES_ADD})}]),Z=()=>{re.confirm(z(`devicesModule.texts.misc.confirmDiscard`),z(`devicesModule.headings.misc.discard`),{confirmButtonText:z(`devicesModule.buttons.yes.title`),cancelButtonText:z(`devicesModule.buttons.no.title`),type:`warning`}).then(()=>{H.value?R.replace({name:k.DEVICES}):R.push({name:k.DEVICES})}).catch(()=>{})},Q=()=>{G.value=!0},$=()=>{H.value?R.replace({name:k.DEVICES}):R.push({name:k.DEVICES})};return d(()=>{L(`update:remote-form-changed`,J.value)}),f(()=>K.value,e=>{e===O.OK&&(H.value?R.replace({name:k.DEVICES}):R.push({name:k.DEVICES}))}),f(()=>J.value,e=>{L(`update:remote-form-changed`,e)}),(r,s)=>(c(),e(b,null,[a(m(E),{teleport:``},{icon:y(()=>[a(m(t),{icon:`mdi:devices`,class:`w[20px] h[20px]`})]),title:y(()=>[i(v(m(z)(`devicesModule.headings.devices.add`)),1)]),subtitle:y(()=>[i(v(m(z)(`devicesModule.subHeadings.devices.add`)),1)]),_:1}),m(V)?_(``,!0):(c(),o(m(C),{key:0,align:m(x).LEFT,teleport:``,small:``,onClick:s[0]||=()=>J.value?Z():$()},{icon:y(()=>[a(m(ee),{size:24},{default:y(()=>[a(m(t),{icon:`mdi:chevron-left`})]),_:1})]),_:1},8,[`align`])),m(V)?_(``,!0):(c(),o(m(C),{key:1,align:m(x).RIGHT,teleport:``,small:``,onClick:Q},{default:y(()=>[n(`span`,j,v(m(z)(`devicesModule.buttons.save.title`)),1)]),_:1},8,[`align`])),a(m(T),{items:ue.value},null,8,[`items`]),n(`div`,M,[a(m(ie),{class:`grow-1 p-2 md:px-4`},{default:y(()=>[a(oe,{modelValue:Y.value,"onUpdate:modelValue":s[1]||=e=>Y.value=e},null,8,[`modelValue`]),a(m(S)),Y.value?(c(),e(b,{key:0},[X.value?.components?.deviceAddForm===void 0?(c(),o(m(ae),{key:1,id:m(U),"remote-form-submit":G.value,"onUpdate:remoteFormSubmit":s[6]||=e=>G.value=e,"remote-form-result":K.value,"onUpdate:remoteFormResult":s[7]||=e=>K.value=e,"remote-form-reset":q.value,"onUpdate:remoteFormReset":s[8]||=e=>q.value=e,"remote-form-changed":J.value,"onUpdate:remoteFormChanged":s[9]||=e=>J.value=e,type:Y.value},null,8,[`id`,`remote-form-submit`,`remote-form-result`,`remote-form-reset`,`remote-form-changed`,`type`])):(c(),o(p(X.value?.components?.deviceAddForm),{key:0,id:m(U),"remote-form-submit":G.value,"onUpdate:remoteFormSubmit":s[2]||=e=>G.value=e,"remote-form-result":K.value,"onUpdate:remoteFormResult":s[3]||=e=>K.value=e,"remote-form-reset":q.value,"onUpdate:remoteFormReset":s[4]||=e=>q.value=e,"remote-form-changed":J.value,"onUpdate:remoteFormChanged":s[5]||=e=>J.value=e,type:Y.value},null,40,[`id`,`remote-form-submit`,`remote-form-result`,`remote-form-reset`,`remote-form-changed`,`type`]))],64)):(c(),o(m(D),{key:1,title:m(z)(`devicesModule.headings.devices.selectPlugin`),description:m(z)(`devicesModule.texts.devices.selectPlugin`),closable:!1,"show-icon":``,type:`info`},null,8,[`title`,`description`]))]),_:1}),m(V)?(c(),e(`div`,N,[n(`div`,P,[J.value?(c(),o(m(g),{key:0,link:``,class:`mr-2`,onClick:Z},{default:y(()=>[i(v(m(z)(`devicesModule.buttons.discard.title`)),1)]),_:1})):_(``,!0),J.value?_(``,!0):(c(),o(m(g),{key:1,link:``,class:`mr-2`,onClick:$},{default:y(()=>[i(v(m(z)(`devicesModule.buttons.close.title`)),1)]),_:1})),n(`div`,{id:m(ce),class:`order-2 inline-block [&>*:first-child:not(:only-child)]:hidden`},[a(m(g),{loading:K.value===m(O).WORKING,disabled:K.value!==m(O).NONE,type:`primary`,onClick:Q},h({default:y(()=>[i(` `+v(m(z)(`devicesModule.buttons.save.title`)),1)]),_:2},[K.value===m(O).OK||K.value===m(O).ERROR?{name:`icon`,fn:y(()=>[K.value===m(O).OK?(c(),o(m(t),{key:0,icon:`mdi:check-circle`})):K.value===m(O).ERROR?(c(),o(m(t),{key:1,icon:`mdi:cross-circle`})):_(``,!0)]),key:`0`}:void 0]),1032,[`loading`,`disabled`])],8,F)])])):_(``,!0)])],64))}});export{I as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import"./rolldown-runtime-QTnfLwEv.js";import{Ar as e,D as t,Dr as n,Er as r,H as i,Mr as a,Nr as o,Or as s,Pr as c,Qr as l,Si as u,T as d,Wr as f,b as p,ci as m,di as h,ji as g,k as _,kr as v,qi as y,ui as b,x,xr as ee}from"./icon-with-child-CgZMNB3F.js";import{t as S}from"./vue-meta.esm-browser.min-C5z7o_np.js";import{Cr as C,Sr as te,f as ne,hr as re,mr as w,xr as T}from"./common-CEAYa_VX.js";import{s as E}from"./components-CtSAjzWY.js";import{t as D}from"./directive-D42ORGRu.js";import{t as O}from"./useUuid-B2AwaEQg.js";import{o as k}from"./devices.constants-HX5whDWr.js";import{H as A,U as j,f as M,r as N}from"./composables-BiL7NDB2.js";var P=[`element-loading-text`],F={key:1,class:`flex flex-row gap-2 justify-end items-center b-t b-t-solid shadow-top z-10 w-full h-[3rem]`,style:{"background-color":`var(--el-drawer-bg-color)`}},I={class:`p-2`},L=c({name:`ViewDeviceControl`,__name:`view-device-control`,props:{id:{},device:{},remoteFormChanged:{type:Boolean}},setup(c){let L=c,R=p(),z=x(),{t:B}=d(),{meta:V}=S({}),H=ne(),{validate:U}=O(),{isMDDevice:W,isLGDevice:G}=re(),K=N({id:L.id}),{device:q,isLoading:J,arePropertiesLoaded:Y,fetchDevice:X,fetchChannels:ie,fetchProperties:ae}=K,{icon:oe}=M({id:L.id}),Z=u(!1);if(!U(L.id))throw Error(`Device identifier is not valid`);let Q=r(()=>R.matched.find(e=>e.name===k.DEVICE)!==void 0),se=r(()=>{let e=[{label:B(`devicesModule.breadcrumbs.devices.list`),route:z.resolve({name:k.DEVICES})}];return Q.value&&e.push({label:B(`devicesModule.breadcrumbs.devices.detail`,{device:q.value?.name}),route:z.resolve({name:k.DEVICE,params:{id:L.id}})}),e.push({label:B(`devicesModule.breadcrumbs.devices.control`,{device:q.value?.name}),route:z.resolve({name:k.DEVICE_CONTROL,params:{id:L.id}})}),e}),$=()=>{Q.value?G.value?z.replace({name:k.DEVICE,params:{id:L.id}}):z.push({name:k.DEVICE,params:{id:L.id}}):G.value?z.replace({name:k.DEVICES}):z.push({name:k.DEVICES})};return f(async()=>{X().then(async()=>{if(!J.value&&q.value===null&&!Z.value)throw new j(`Device not found`);q.value!==null&&(Z.value=!0),await ie(),await ae()}).catch(e=>{let t=e;throw t instanceof A&&t.code===404?new j(`Device not found`):t instanceof j?t:new j(`Something went wrong`,t)})}),m(()=>J.value,e=>{if(!e&&q.value===null&&!Z.value)throw new j(`Device not found`)}),m(()=>q.value,e=>{if(e!==null)Z.value=!0,V.title=B(`devicesModule.meta.devices.control.title`,{device:q.value?.name});else if(Z.value&&!J.value)H.warning(B(`devicesModule.messages.devices.deletedWhileEditing`),{duration:0}),G.value?z.replace({name:k.DEVICES}):z.push({name:k.DEVICES});else if(!J.value&&e===null&&!Z.value)throw new j(`Device not found`)}),(r,c)=>(l(),e(ee,null,[o(g(T),{teleport:``},{icon:b(()=>[o(g(t),{icon:g(oe),class:`w[20px] h[20px]`},null,8,[`icon`])]),title:b(()=>[a(y(g(B)(`devicesModule.headings.devices.control`,{device:g(q)?.name})),1)]),subtitle:b(()=>[a(y(g(B)(`devicesModule.subHeadings.devices.control`,{device:g(q)?.name})),1)]),_:1}),g(W)?v(``,!0):(l(),s(g(te),{key:0,align:g(C).LEFT,teleport:``,small:``,onClick:$},{icon:b(()=>[o(g(i),{size:24},{default:b(()=>[o(g(t),{icon:`mdi:chevron-left`})]),_:1})]),_:1},8,[`align`])),o(g(w),{items:se.value},null,8,[`items`]),h((l(),e(`div`,{"element-loading-text":g(B)(`devicesModule.texts.devices.loadingDevice`),class:`flex flex-col overflow-hidden h-full`},[g(q)!==null&&g(Y)?(l(),s(g(E),{key:0,"device-control":g(K)},null,8,[`device-control`])):v(``,!0),g(W)?(l(),e(`div`,F,[n(`div`,I,[o(g(_),{link:``,class:`mr-2`,onClick:$},{default:b(()=>[a(y(g(B)(`devicesModule.buttons.close.title`)),1)]),_:1})])])):v(``,!0)],8,P)),[[g(D),g(J)||g(q)===null]])],64))}});export{L as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import"./rolldown-runtime-QTnfLwEv.js";import{Ar as e,D as t,Dr as n,Er as r,H as i,Mr as a,Nr as o,O as s,Or as c,Pr as l,Qr as u,Si as d,Sr as f,T as p,Wr as m,Yr as h,b as g,ci as _,ei as v,ii as y,ji as b,k as x,kr as S,n as C,ni as w,qi as T,t as ee,ui as E,x as te,xr as D}from"./icon-with-child-CgZMNB3F.js";import{t as ne}from"./vue-meta.esm-browser.min-C5z7o_np.js";import{A as re,Cr as O,Dr as ie,Jr as k,Or as A,Sr as j,at as M,g as N,h as ae,hr as oe,ht as P,l as F,m as se,mr as ce,mt as I,p as L,st as R,t as z,vt as B,wr as le,xr as ue,yt as V}from"./common-CEAYa_VX.js";import{t as de}from"./skeleton-DkyCzTs7.js";import{t as H}from"./card-C50YgvLJ.js";import{t as fe}from"./drawer-Bv6YcfZX.js";import"./config-CIAUSdP7.js";import{t as U}from"./useNumberFormat-CLztaSFk.js";import{t as W}from"./useConfigModule-l8zp4LY1.js";import{i as G,n as K,o as q,t as pe}from"./useLocation-CKsKAhov.js";import{a as J,o as Y,r as X}from"./weather.constants-_S0I_w_Q.js";import{t as Z}from"./weather-icon-BogpHIOS.js";import{t as Q}from"./weather-forecast.transformers-BKEpj85v.js";var me={class:`grid m-0`},he={class:`b-b b-b-solid b-r b-r-solid py-3 px-2 flex items-center justify-end`,style:{background:`var(--el-fill-color-light)`}},ge={class:`col-start-2 b-b b-b-solid m-0 p-2 flex items-center min-w-[8rem]`},_e={class:`b-b b-b-solid b-r b-r-solid py-3 px-2 flex items-center justify-end`,style:{background:`var(--el-fill-color-light)`}},ve={class:`col-start-2 b-b b-b-solid m-0 p-2 flex items-center min-w-[8rem]`},ye={class:`flex items-center gap-2`},be={class:`b-b b-b-solid b-r b-r-solid py-3 px-2 flex items-center justify-end`,style:{background:`var(--el-fill-color-light)`}},xe={class:`col-start-2 b-b b-b-solid m-0 p-2 flex items-center min-w-[8rem]`},Se={class:`b-b b-b-solid b-r b-r-solid py-3 px-2 flex items-center justify-end`,style:{background:`var(--el-fill-color-light)`}},Ce={class:`col-start-2 b-b b-b-solid m-0 p-2 flex items-center min-w-[8rem]`},we={class:`b-b b-b-solid b-r b-r-solid py-3 px-2 flex items-center justify-end`,style:{background:`var(--el-fill-color-light)`}},Te={class:`col-start-2 b-b b-b-solid m-0 p-2 flex items-center min-w-[8rem]`},Ee={class:`b-r b-r-solid py-3 px-2 flex items-center justify-end`,style:{background:`var(--el-fill-color-light)`}},De={class:`col-start-2 m-0 p-2 flex items-center min-w-[8rem]`},Oe=l({name:`LocationDetail`,__name:`location-detail`,props:{location:{},current:{}},setup(s){let c=s,{t:l}=p(),{configModule:d}=W({type:J}),{format:f}=U(),m=r(()=>d.value?.unit===`fahrenheit`?`°F`:`°C`),h=r(()=>{let e=c.location.type;return e.startsWith(`openweathermap`)?`OpenWeatherMap`:e}),g=r(()=>Z(c.current.weather.code,c.current.sunrise,c.current.sunset));return(r,s)=>(u(),e(`dl`,me,[n(`dt`,he,T(b(l)(`weatherModule.texts.locationDetail.provider`)),1),n(`dd`,ge,[o(b(A),null,{default:E(()=>[a(T(h.value),1)]),_:1})]),n(`dt`,_e,T(b(l)(`weatherModule.texts.locationDetail.temperature`)),1),n(`dd`,ve,[n(`div`,ye,[o(b(i),{size:32},{default:E(()=>[o(b(t),{icon:g.value},null,8,[`icon`])]),_:1}),o(b(A),{class:`text-xl font-bold`},{default:E(()=>[a(T(b(f)(c.current.temperature,{maximumFractionDigits:1}))+T(m.value),1)]),_:1}),o(b(A),{class:`text-gray-500`},{default:E(()=>[a(T(b(l)(`weatherModule.texts.locationDetail.feelsLike`,{temp:`${b(f)(c.current.feelsLike,{maximumFractionDigits:1})}${m.value}`})),1)]),_:1})])]),n(`dt`,be,T(b(l)(`weatherModule.texts.locationDetail.conditions`)),1),n(`dd`,xe,[o(b(A),null,{default:E(()=>[a(T(c.current.weather.description),1)]),_:1})]),n(`dt`,Se,T(b(l)(`weatherModule.texts.locationDetail.humidity`)),1),n(`dd`,Ce,[o(b(A),null,{default:E(()=>[a(T(c.current.humidity)+`% `,1)]),_:1})]),n(`dt`,we,T(b(l)(`weatherModule.texts.locationDetail.wind`)),1),n(`dd`,Te,[o(b(A),null,{default:E(()=>[a(T(b(f)(c.current.wind.speed,{maximumFractionDigits:1}))+` m/s `,1)]),_:1})]),n(`dt`,Ee,T(b(l)(`weatherModule.texts.locationDetail.pressure`)),1),n(`dd`,De,[o(b(A),null,{default:E(()=>[a(T(c.current.pressure)+` hPa `,1)]),_:1})])]))}}),ke={class:`grid grid-cols-2 sm:grid-cols-3 md:grid-cols-4 lg:grid-cols-7 gap-4`},Ae={class:`font-medium mb-2`},je={class:`mt-2 flex justify-center gap-2`},Me={class:`font-bold`},Ne={class:`text-gray-400`},Pe={class:`text-xs text-gray-500 mt-1 truncate`},Fe=l({name:`LocationForecast`,__name:`location-forecast`,props:{forecast:{}},setup(a){let s=a,{configModule:l}=W({type:J}),{format:d}=U(),f=r(()=>l.value?.unit===`fahrenheit`?`F`:`C`),p=e=>new Intl.DateTimeFormat(void 0,{weekday:`short`}).format(e),m=e=>e==null?`-`:d(e,{maximumFractionDigits:0});return(r,a)=>(u(),e(`div`,ke,[(u(!0),e(D,null,v(s.forecast,(e,r)=>(u(),c(b(H),{key:r,shadow:`hover`,"body-class":`p-3! text-center`},{default:E(()=>[n(`div`,Ae,T(p(e.dayTime)),1),o(b(i),{size:40},{default:E(()=>[o(b(t),{icon:b(Z)(e.weather.code,e.sunrise,e.sunset)},null,8,[`icon`])]),_:2},1024),n(`div`,je,[n(`span`,Me,T(m(e.temperature.max))+`°`+T(f.value),1),n(`span`,Ne,T(m(e.temperature.min))+`°`+T(f.value),1)]),n(`div`,Pe,T(e.weather.description),1)]),_:2},1024))),128))]))}}),Ie={class:`flex gap-3 pb-2`},Le={class:`text-xs text-gray-500`},Re={class:`font-bold text-sm`},ze={class:`text-xs text-gray-400`},Be=l({name:`LocationHourlyForecast`,__name:`location-hourly-forecast`,props:{hourlyForecast:{},sunrise:{},sunset:{}},setup(a){let s=a,{configModule:l}=W({type:J}),{format:d}=U(),f=r(()=>l.value?.unit===`fahrenheit`?`F`:`C`),p=e=>new Intl.DateTimeFormat(void 0,{hour:`numeric`,minute:`2-digit`}).format(e),m=e=>d(e,{maximumFractionDigits:0});return(r,a)=>(u(),c(b(k),null,{default:E(()=>[n(`div`,Ie,[(u(!0),e(D,null,v(s.hourlyForecast,(r,a)=>(u(),e(`div`,{key:a,class:`flex flex-col items-center gap-1 min-w-[4rem] text-center`},[n(`div`,Le,T(p(r.dateTime)),1),o(b(i),{size:28},{default:E(()=>[o(b(t),{icon:b(Z)(r.weather.code,s.sunrise,s.sunset,r.dateTime)},null,8,[`icon`])]),_:2},1024),n(`div`,Re,T(m(r.temperature))+`°`+T(f.value),1),n(`div`,ze,T(r.humidity)+`% `,1)]))),128))])]),_:1}))}}),Ve=M(P({temperature:I(),feelsLike:I(),pressure:I(),humidity:I(),weather:P({code:I(),main:B(),description:B(),icon:B()}),wind:P({speed:I(),deg:I(),gust:I().nullable()}),clouds:I(),rain:I().nullable().default(null),snow:I().nullable().default(null),dateTime:V([B().datetime({offset:!0}),R()]).transform(e=>e instanceof Date?e:new Date(e))}));P({temperature:I(),feels_like:I(),pressure:I(),humidity:I(),weather:P({code:I(),main:B(),description:B(),icon:B()}),wind:P({speed:I(),deg:I(),gust:I().nullable()}),clouds:I(),rain:I().nullable().optional(),snow:I().nullable().optional(),date_time:B()});var $=e=>{let t=Ve.safeParse(e.map(e=>F(e)));if(!t.success)throw z.error(`Schema validation failed with:`,t.error),new q(`Failed to validate received weather hourly forecast data.`);return t.data},He=()=>{let e=L(),t=N(),n=d(null),i=d(!1),a=d(!1);return{weather:r(()=>n.value),isLoading:i,hasError:a,fetchLocationWeather:async r=>{if(!i.value){i.value=!0,a.value=!1;try{let{data:i,error:a,response:o}=await e.client.GET(`/${C}/${Y}/weather/{locationId}`,{params:{path:{locationId:r}}});if(i!==void 0&&i.data){let e=i.data;if(e.current&&e.forecast){let r=K(e.current),i=Q(e.forecast),a=null;if(e.hourly_forecast&&Array.isArray(e.hourly_forecast)&&e.hourly_forecast.length>0)try{a=$(e.hourly_forecast)}catch{t.warn(`[WEATHER] Failed to transform hourly forecast, skipping`)}n.value={current:r,forecast:i,hourlyForecast:a};return}}let s=`Failed to fetch location weather.`;throw a&&(s=a.message??s),new G(s,o?.status??500)}catch(e){if(a.value=!0,e instanceof G)throw e;t.error(`[WEATHER] Failed to fetch location weather`,e)}finally{i.value=!1}}}}},Ue={class:`flex items-center`},We={key:3,class:`grow-1 flex flex-col lt-sm:mx-1 sm:mx-2 lt-sm:mb-1 sm:mb-2`},Ge={key:5,class:`flex flex-col items-center justify-center w-full h-full`},Ke={class:`flex items-center`},qe={class:`ml-2 font-medium`},Je={class:`flex items-center`},Ye={class:`ml-2 font-medium`},Xe={class:`flex flex-col h-full`},Ze=l({name:`ViewLocation`,__name:`view-location`,props:{id:{}},setup(l){let v=l,C=g(),A=te(),{t:M}=p();ne({title:M(`weatherModule.meta.locations.detail.title`)});let{isMDDevice:N,isLGDevice:P}=oe(),{location:F,isLoading:I,fetchLocation:L}=pe({id:r(()=>v.id)}),{weather:R,isLoading:z,hasError:B,fetchLocationWeather:V}=He(),U=d(!1),W=d(!1),G=d(!1),K=r(()=>C.name===X.WEATHER_LOCATION),q=r(()=>[{label:M(`weatherModule.breadcrumbs.locations`),route:A.resolve({name:X.WEATHER_LOCATIONS})},{label:M(`weatherModule.breadcrumbs.locationDetail`,{location:F.value?.name}),route:A.resolve({name:X.WEATHER_LOCATION,params:{id:v.id}})}]),J=e=>{G.value?ie.confirm(M(`weatherModule.messages.confirmDiscard`),M(`weatherModule.headings.discard`),{confirmButtonText:M(`weatherModule.buttons.yes.title`),cancelButtonText:M(`weatherModule.buttons.no.title`),type:`warning`}).then(()=>{P.value?A.replace({name:X.WEATHER_LOCATION,params:{id:v.id}}):A.push({name:X.WEATHER_LOCATION,params:{id:v.id}}),e?.()}).catch(()=>{}):(P.value?A.replace({name:X.WEATHER_LOCATION,params:{id:v.id}}):A.push({name:X.WEATHER_LOCATION,params:{id:v.id}}),e?.())},Y=()=>{P.value?A.replace({name:X.WEATHER_LOCATIONS}):A.push({name:X.WEATHER_LOCATIONS})},Z=()=>{P.value?A.replace({name:X.WEATHER_LOCATION_DETAIL_EDIT,params:{id:v.id}}):A.push({name:X.WEATHER_LOCATION_DETAIL_EDIT,params:{id:v.id}})},Q=async()=>{await V(v.id)};return m(async()=>{await L(),await V(v.id).catch(()=>{}),W.value=C.matched.find(e=>e.name===X.WEATHER_LOCATION_DETAIL_EDIT)!==void 0}),h(()=>{U.value=!0}),_(()=>v.id,async(e,t)=>{e!==t&&U.value&&(await L(),await V(e).catch(()=>{}))}),_(()=>C.path,()=>{W.value=C.matched.find(e=>e.name===X.WEATHER_LOCATION_DETAIL_EDIT)!==void 0}),(r,l)=>{let d=w(`router-view`);return u(),e(D,null,[o(b(ce),{items:q.value},null,8,[`items`]),!b(N)&&K.value?(u(),c(b(ue),{key:0,teleport:``},{icon:E(()=>[o(b(t),{icon:`mdi:map-marker`,class:`w[20px] h[20px]`})]),title:E(()=>[a(T(b(M)(`weatherModule.headings.locationDetail`,{location:b(F)?.name})),1)]),subtitle:E(()=>[a(T(b(M)(`weatherModule.subHeadings.locationDetail`,{location:b(F)?.name})),1)]),_:1})):S(``,!0),b(N)?S(``,!0):(u(),c(b(j),{key:1,align:b(O).LEFT,teleport:``,small:``,onClick:Y},{icon:E(()=>[o(b(i),{size:24},{default:E(()=>[o(b(t),{icon:`mdi:chevron-left`})]),_:1})]),_:1},8,[`align`])),!b(N)&&K.value&&b(F)?(u(),c(b(j),{key:2,align:b(O).RIGHT,teleport:``,small:``,onClick:Z},{icon:E(()=>[o(b(i),{size:24},{default:E(()=>[o(b(t),{icon:`mdi:pencil`})]),_:1})]),_:1},8,[`align`])):S(``,!0),o(b(se),{heading:b(M)(`weatherModule.headings.locationDetail`,{location:b(F)?.name}),"sub-heading":b(M)(`weatherModule.subHeadings.locationDetail`,{location:b(F)?.name}),icon:`mdi:map-marker`},{extra:E(()=>[n(`div`,Ue,[b(F)?(u(),c(b(x),{key:0,plain:``,class:`px-4! ml-2!`,onClick:Z},{icon:E(()=>[o(b(t),{icon:`mdi:pencil`})]),_:1})):S(``,!0)])]),_:1},8,[`heading`,`sub-heading`]),b(I)||b(z)?(u(),e(`div`,We,[o(b(H),{class:`mt-2`},{default:E(()=>[o(b(de),{rows:5,animated:``})]),_:1})])):b(F)?b(B)||!b(R)?(u(),e(`div`,Ge,[o(b(s),null,{icon:E(()=>[o(b(ee),{size:80},{primary:E(()=>[o(b(t),{icon:`mdi:weather-cloudy`})]),secondary:E(()=>[o(b(t),{icon:`mdi:alert-circle`})]),_:1})]),title:E(()=>[a(T(b(M)(`weatherModule.texts.weatherError`)),1)]),"sub-title":E(()=>[a(T(b(M)(`weatherModule.texts.weatherErrorDescription`)),1)]),extra:E(()=>[o(b(x),{type:`primary`,onClick:Q},{default:E(()=>[a(T(b(M)(`weatherModule.buttons.retry.title`)),1)]),_:1})]),_:1})])):(K.value||b(P))&&b(F)&&b(R)?(u(),c(b(k),{key:6,class:`grow-1 flex flex-col lt-sm:mx-1 sm:mx-2 lt-sm:mb-1 sm:mb-2`},{default:E(()=>[o(b(H),{class:`mt-2`,"body-class":`p-0!`},{default:E(()=>[o(Oe,{location:b(F),current:b(R).current},null,8,[`location`,`current`])]),_:1}),b(R).hourlyForecast&&b(R).hourlyForecast.length>0?(u(),c(b(H),{key:0,class:`mt-4`},{header:E(()=>[n(`div`,Ke,[o(b(i),{size:20},{default:E(()=>[o(b(t),{icon:`mdi:clock-outline`})]),_:1}),n(`span`,qe,T(b(M)(`weatherModule.headings.hourlyForecast`)),1)])]),default:E(()=>[o(Be,{"hourly-forecast":b(R).hourlyForecast,sunrise:b(R).current?.sunrise,sunset:b(R).current?.sunset},null,8,[`hourly-forecast`,`sunrise`,`sunset`])]),_:1})):S(``,!0),o(b(H),{class:`mt-4 mb-2`},{header:E(()=>[n(`div`,Je,[o(b(i),{size:20},{default:E(()=>[o(b(t),{icon:`mdi:calendar-week`})]),_:1}),n(`span`,Ye,T(b(M)(`weatherModule.headings.forecast`)),1)])]),default:E(()=>[o(Fe,{forecast:b(R).forecast},null,8,[`forecast`])]),_:1})]),_:1})):b(F)&&b(R)?(u(),c(d,{key:v.id},{default:E(({Component:e})=>[(u(),c(y(e)))]),_:1})):S(``,!0):(u(),c(b(re),{key:4,icon:`mdi:map-marker`,message:b(M)(`weatherModule.messages.locations.notFound`),"button-label":b(M)(`weatherModule.buttons.back.title`),onBack:Y},null,8,[`message`,`button-label`])),b(P)?(u(),c(b(fe),{key:8,modelValue:W.value,"onUpdate:modelValue":l[2]||=e=>W.value=e,"show-close":!1,size:`40%`,"with-header":!1,"before-close":J},{default:E(()=>[n(`div`,Xe,[o(b(le),{"menu-button-hidden":``},{"button-right":E(()=>[o(b(j),{align:b(O).RIGHT,class:`mr-2`,onClick:l[0]||=()=>J()},{icon:E(()=>[o(b(i),null,{default:E(()=>[o(b(t),{icon:`mdi:close`})]),_:1})]),_:1},8,[`align`])]),_:1}),W.value?(u(),c(b(ae),{key:0},{icon:E(()=>[o(b(t),{icon:`mdi:map-marker`})]),message:E(()=>[a(T(b(M)(`weatherModule.messages.requestError`)),1)]),default:E(()=>[(u(),c(f,null,{default:E(()=>[(u(),c(d,{key:v.id},{default:E(({Component:e})=>[(u(),c(y(e),{"remote-form-changed":G.value,"onUpdate:remoteFormChanged":l[1]||=e=>G.value=e},null,40,[`remote-form-changed`]))]),_:1}))]),_:1}))]),_:1})):S(``,!0)])]),_:1},8,[`modelValue`])):S(``,!0)],64)}}});export{Ze as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import"./rolldown-runtime-QTnfLwEv.js";import{Ar as e,D as t,Dr as n,Er as r,H as i,Mr as a,Nr as o,Or as s,Pr as c,Qr as l,Si as u,T as ee,Wr as te,Yr as ne,b as re,ci as d,ii as ie,ji as f,jr as p,k as m,kr as h,qi as g,ui as _,x as ae,xr as v}from"./icon-with-child-CgZMNB3F.js";import{t as y}from"./vue-meta.esm-browser.min-C5z7o_np.js";import{Cr as b,Dr as oe,Jr as se,Sr as x,f as ce,hr as S,mr as C,xr as w}from"./common-CEAYa_VX.js";import{t as T}from"./skeleton-DkyCzTs7.js";import{t as le}from"./alert-B_504iE8.js";import{a as E,i as ue,t as de}from"./useLocation-CKsKAhov.js";import{n as fe}from"./composables-DrSNDrtP.js";import{n as D,r as O}from"./weather.constants-_S0I_w_Q.js";import"./composables-DNfuP9v9.js";var k={class:`uppercase`},A={class:`flex flex-col overflow-hidden h-full`},j={key:0,class:`flex flex-row gap-2 justify-end items-center b-t b-t-solid shadow-top z-10 w-full h-[3rem]`,style:{"background-color":`var(--el-drawer-bg-color)`}},M={class:`p-2`},N=c({name:`ViewLocationEdit`,__name:`view-location-edit`,props:{id:{},remoteFormChanged:{type:Boolean}},emits:[`update:remote-form-changed`],setup(c,{emit:N}){let P=c,F=N,I=re(),L=ae(),{t:R}=ee(),z=ce();y({title:R(`weatherModule.meta.locations.edit.title`)});let{isMDDevice:B,isLGDevice:V}=S(),H=r(()=>I.matched.find(e=>e.name===O.WEATHER_LOCATION)!==void 0),{location:U,isLoading:W,fetchLocation:pe}=de({id:r(()=>P.id)}),G=u(!1),{getElement:me}=fe(),K=r(()=>{if(U.value)return me(U.value.type)?.components?.locationEditForm}),he=r(()=>!!K.value),q=u(!1),J=u(D.NONE),Y=u(!1),X=u(!1),ge=r(()=>{let e=[{label:R(`weatherModule.breadcrumbs.locations`),route:L.resolve({name:O.WEATHER_LOCATIONS})}];return H.value?(e.push({label:R(`weatherModule.breadcrumbs.locationDetail`,{location:U.value?.name}),route:L.resolve({name:O.WEATHER_LOCATION,params:{id:P.id}})}),e.push({label:R(`weatherModule.breadcrumbs.editLocation`),route:L.resolve({name:O.WEATHER_LOCATION_DETAIL_EDIT,params:{id:P.id}})})):e.push({label:R(`weatherModule.breadcrumbs.editLocation`),route:L.resolve({name:O.WEATHER_LOCATION_EDIT,params:{id:P.id}})}),e}),Z=()=>{oe.confirm(R(`weatherModule.messages.confirmDiscard`),R(`weatherModule.headings.discard`),{confirmButtonText:R(`weatherModule.buttons.yes.title`),cancelButtonText:R(`weatherModule.buttons.no.title`),type:`warning`}).then(()=>{H.value?V.value?L.replace({name:O.WEATHER_LOCATION,params:{id:P.id}}):L.push({name:O.WEATHER_LOCATION,params:{id:P.id}}):V.value?L.replace({name:O.WEATHER_LOCATIONS}):L.push({name:O.WEATHER_LOCATIONS})}).catch(()=>{})},Q=()=>{q.value=!0},$=()=>{H.value?V.value?L.replace({name:O.WEATHER_LOCATION,params:{id:P.id}}):L.push({name:O.WEATHER_LOCATION,params:{id:P.id}}):V.value?L.replace({name:O.WEATHER_LOCATIONS}):L.push({name:O.WEATHER_LOCATIONS})};return te(()=>{pe().then(()=>{if(U.value!==null&&(G.value=!0),!W.value&&U.value===null&&!G.value)throw new E(`Location not found`)}).catch(e=>{let t=e;throw t instanceof ue&&t.code===404?new E(`Location not found`):t instanceof E?t:new E(`Something went wrong`,t)})}),ne(()=>{F(`update:remote-form-changed`,X.value)}),d(()=>J.value,e=>{e===D.OK&&(H.value?V.value?L.replace({name:O.WEATHER_LOCATION,params:{id:P.id}}):L.push({name:O.WEATHER_LOCATION,params:{id:P.id}}):V.value?L.replace({name:O.WEATHER_LOCATIONS}):L.push({name:O.WEATHER_LOCATIONS}))}),d(()=>X.value,e=>{F(`update:remote-form-changed`,e)}),d(()=>W.value,e=>{if(!e&&U.value===null&&!G.value)throw new E(`Location not found`)}),d(()=>U.value,e=>{if(e!==null)G.value=!0;else if(G.value&&!W.value)z.warning(R(`weatherModule.messages.locations.deletedWhileEditing`),{duration:0}),V.value?L.replace({name:O.WEATHER_LOCATIONS}):L.push({name:O.WEATHER_LOCATIONS});else if(!W.value&&e===null&&!G.value)throw new E(`Location not found`)}),(r,c)=>(l(),e(v,null,[o(f(w),{teleport:``},{icon:_(()=>[o(f(t),{icon:`mdi:map-marker`,class:`w[32px] h[32px]`})]),title:_(()=>[a(g(f(R)(`weatherModule.headings.editLocation`)),1)]),subtitle:_(()=>[a(g(f(U)?.name??f(R)(`weatherModule.subHeadings.editLocation`)),1)]),_:1}),f(B)?h(``,!0):(l(),s(f(x),{key:0,align:f(b).LEFT,teleport:``,small:``,onClick:c[0]||=()=>X.value?Z():$()},{icon:_(()=>[o(f(i),{size:24},{default:_(()=>[o(f(t),{icon:`mdi:chevron-left`})]),_:1})]),_:1},8,[`align`])),f(B)?h(``,!0):(l(),s(f(x),{key:1,align:f(b).RIGHT,teleport:``,small:``,onClick:Q},{default:_(()=>[n(`span`,k,g(f(R)(`weatherModule.buttons.save.title`)),1)]),_:1},8,[`align`])),o(f(C),{items:ge.value},null,8,[`items`]),n(`div`,A,[o(f(se),{class:`grow-1 p-2 md:px-4`},{default:_(()=>[f(U)?(l(),e(v,{key:0},[he.value?(l(),s(ie(K.value),{key:0,"remote-form-submit":q.value,"onUpdate:remoteFormSubmit":c[1]||=e=>q.value=e,"remote-form-result":J.value,"onUpdate:remoteFormResult":c[2]||=e=>J.value=e,"remote-form-reset":Y.value,"onUpdate:remoteFormReset":c[3]||=e=>Y.value=e,"remote-form-changed":X.value,"onUpdate:remoteFormChanged":c[4]||=e=>X.value=e,location:f(U)},null,40,[`remote-form-submit`,`remote-form-result`,`remote-form-reset`,`remote-form-changed`,`location`])):(l(),s(f(le),{key:1,title:f(R)(`weatherModule.headings.unsupportedProvider`),description:f(R)(`weatherModule.texts.unsupportedProvider`,{provider:f(U).type}),closable:!1,"show-icon":``,type:`warning`},null,8,[`title`,`description`]))],64)):f(W)?(l(),s(f(T),{key:1,rows:5})):h(``,!0)]),_:1}),f(B)&&f(U)?(l(),e(`div`,j,[n(`div`,M,[X.value?(l(),s(f(m),{key:0,link:``,class:`mr-2`,onClick:Z},{default:_(()=>[a(g(f(R)(`weatherModule.buttons.discard.title`)),1)]),_:1})):h(``,!0),X.value?h(``,!0):(l(),s(f(m),{key:1,link:``,class:`mr-2`,onClick:$},{default:_(()=>[a(g(f(R)(`weatherModule.buttons.cancel.title`)),1)]),_:1})),o(f(m),{loading:J.value===f(D).WORKING,disabled:J.value!==f(D).NONE||!X.value,type:`primary`,class:`order-2`,onClick:Q},p({default:_(()=>[a(` `+g(f(R)(`weatherModule.buttons.save.title`)),1)]),_:2},[J.value===f(D).OK||J.value===f(D).ERROR?{name:`icon`,fn:_(()=>[J.value===f(D).OK?(l(),s(f(t),{key:0,icon:`mdi:check-circle`})):J.value===f(D).ERROR?(l(),s(f(t),{key:1,icon:`mdi:cross-circle`})):h(``,!0)]),key:`0`}:void 0]),1032,[`loading`,`disabled`])])])):h(``,!0)])],64))}});export{N as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import"./rolldown-runtime-QTnfLwEv.js";import{Ar as e,D as t,Dr as n,E as r,Er as i,H as a,Mr as o,Mt as s,Nr as c,Or as l,Pr as u,Qr as d,Si as f,Sr as p,T as m,Wi as h,Wr as g,Yr as ee,_i as _,b as v,ci as y,ei as b,ii as x,ji as S,k as C,kr as w,ni as te,qi as T,ui as E,x as ne,xr as D}from"./icon-with-child-CgZMNB3F.js";import{t as re}from"./vue-meta.esm-browser.min-C5z7o_np.js";import{Cr as O,Dr as ie,Jr as k,Or as A,Sr as j,h as ae,hr as oe,m as se,mr as ce,vr as M,wr as le,xr as N}from"./common-CEAYa_VX.js";import{n as P,t as F}from"./checkbox-DKrpi0d7.js";import{n as I,r as L}from"./radio-Cmy69XUu.js";import{n as R,t as z}from"./collapse-CcS8OeLM.js";import{t as ue}from"./drawer-Bv6YcfZX.js";import"./config-CIAUSdP7.js";import{t as de}from"./useConfigModule-l8zp4LY1.js";import{a as fe}from"./useLocation-CKsKAhov.js";import{h as pe,m as me,n as B,p as he}from"./composables-DrSNDrtP.js";import{a as ge,r as V}from"./weather.constants-_S0I_w_Q.js";import{t as _e}from"./list-locations-B_k17JmN.js";var H={class:`px-2`},U={class:`px-5 py-2 text-center`},ve=r(u({name:`ListLocationsAdjust`,__name:`list-locations-adjust`,props:{filters:{},filtersActive:{type:Boolean}},emits:[`update:filters`,`reset-filters`],setup(r,{emit:i}){let a=r,u=i,{t:p}=m(),g=s(`list-locations-adjust`),{options:ee}=B(),_=f([`types`,`primary`]),v=M(a,`filters`,u);return(r,i)=>(d(),e(D,null,[c(S(N),{teleport:``},{icon:E(()=>[c(S(t),{icon:`mdi:filter`})]),title:E(()=>[o(T(S(p)(`weatherModule.headings.adjustFilters`)),1)]),subtitle:E(()=>[o(T(S(p)(`weatherModule.subHeadings.adjustFilters`)),1)]),_:1}),n(`div`,{class:h([[S(g).b()],`flex flex-col h-full w-full overflow-hidden`])},[c(S(k),{class:`flex-grow`},{default:E(()=>[c(S(z),{modelValue:_.value,"onUpdate:modelValue":i[2]||=e=>_.value=e},{default:E(()=>[c(S(R),{name:`types`,class:h([S(g).e(`filter-item`)])},{title:E(()=>[c(S(A),{class:`!px-2`},{default:E(()=>[o(T(S(p)(`weatherModule.filters.locations.types.title`)),1)]),_:1})]),default:E(()=>[c(S(P),{modelValue:S(v).types,"onUpdate:modelValue":i[0]||=e=>S(v).types=e,class:`flex flex-col px-4`},{default:E(()=>[(d(!0),e(D,null,b(S(ee),e=>(d(),l(S(F),{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`])]),_:1},8,[`class`]),c(S(R),{name:`primary`,class:h([S(g).e(`filter-item`)])},{title:E(()=>[c(S(A),{class:`!px-2`},{default:E(()=>[o(T(S(p)(`weatherModule.filters.locations.primary.title`)),1)]),_:1})]),default:E(()=>[n(`div`,H,[c(S(L),{modelValue:S(v).primary,"onUpdate:modelValue":i[1]||=e=>S(v).primary=e},{default:E(()=>[c(S(I),{label:S(p)(`weatherModule.filters.locations.primary.values.primary`),value:`primary`},null,8,[`label`]),c(S(I),{label:S(p)(`weatherModule.filters.locations.primary.values.secondary`),value:`secondary`},null,8,[`label`]),c(S(I),{label:S(p)(`weatherModule.filters.locations.primary.values.all`),value:`all`},null,8,[`label`])]),_:1},8,[`modelValue`])])]),_:1},8,[`class`])]),_:1},8,[`modelValue`])]),_:1}),n(`div`,U,[c(S(C),{disabled:!a.filtersActive,onClick:i[3]||=e=>u(`reset-filters`)},{icon:E(()=>[c(S(t),{icon:`mdi:filter-remove`})]),default:E(()=>[o(` `+T(S(p)(`weatherModule.buttons.reset.title`)),1)]),_:1},8,[`disabled`])])],2)],64))}}),[[`__scopeId`,`data-v-876522d1`]]),ye={class:`uppercase`},be={class:`uppercase`},xe={class:`flex items-center`},Se={key:3,class:`grow-1 flex flex-col gap-2 lt-sm:mx-1 sm:mx-2 lt-sm:mb-1 sm:mb-2 overflow-hidden mt-2`},Ce={class:`flex flex-col h-full`},W=u({name:`ViewLocations`,__name:`view-locations`,props:{id:{}},setup(r){let s=r,u=v(),h=ne(),{t:b}=m();re({title:b(`weatherModule.meta.locations.list.title`)});let{isMDDevice:k,isLGDevice:A}=oe(),{fetchLocations:M,locations:P,locationsPaginated:F,totalRows:I,filters:L,filtersActive:R,sortBy:z,sortDir:B,paginateSize:H,paginatePage:U,areLoading:W,resetFilter:we,primaryLocationId:Te}=pe(),G=he(),{weatherByLocation:K,fetchCompleted:q,fetchLocationsWeather:J}=me(),{configModule:Ee}=de({type:ge}),De=i(()=>Ee.value?.unit===`fahrenheit`?`fahrenheit`:`celsius`),Oe=f(!1),Y=f(!1),X=f(!1),Z=f(!1),Q=i(()=>u.name===V.WEATHER_LOCATIONS),ke=i(()=>[{label:b(`weatherModule.breadcrumbs.locations`),route:h.resolve({name:V.WEATHER_LOCATIONS})}]),Ae=e=>{X.value?(Y.value=!1,X.value=!1,e?.()):Z.value?ie.confirm(b(`weatherModule.messages.confirmDiscard`),b(`weatherModule.headings.discard`),{confirmButtonText:b(`weatherModule.buttons.yes.title`),cancelButtonText:b(`weatherModule.buttons.no.title`),type:`warning`}).then(()=>{A.value?h.replace({name:V.WEATHER_LOCATIONS}):h.push({name:V.WEATHER_LOCATIONS}),e?.()}).catch(()=>{}):(A.value?h.replace({name:V.WEATHER_LOCATIONS}):h.push({name:V.WEATHER_LOCATIONS}),e?.())},je=e=>{h.push({name:V.WEATHER_LOCATION,params:{id:e}})},Me=e=>{A.value?h.replace({name:V.WEATHER_LOCATION_EDIT,params:{id:e}}):h.push({name:V.WEATHER_LOCATION_EDIT,params:{id:e}})},Ne=()=>{A.value?h.replace({name:V.WEATHER_LOCATION_ADD}):h.push({name:V.WEATHER_LOCATION_ADD})},Pe=e=>{G.remove(e)},Fe=(e,t)=>{switch(e){case`delete`:G.bulkRemove(t);break}},$=()=>{we()},Ie=()=>{Y.value=!0,X.value=!0};return g(()=>{M().catch(e=>{throw new fe(`Something went wrong`,e)}),J().catch(e=>{console.warn(`[WEATHER] Failed to fetch locations weather:`,e)}),Y.value=u.matched.find(e=>e.name===V.WEATHER_LOCATION_ADD||e.name===V.WEATHER_LOCATION_EDIT)!==void 0}),ee(()=>{Oe.value=!0}),y(()=>u.path,()=>{Y.value=u.matched.find(e=>e.name===V.WEATHER_LOCATION_ADD||e.name===V.WEATHER_LOCATION_EDIT)!==void 0}),y(P,e=>{!q.value||e.length===0||e.some(e=>!e.draft&&!(e.id in K.value))&&J().catch(e=>{console.warn(`[WEATHER] Failed to re-fetch locations weather:`,e)})},{deep:!0}),(r,i)=>{let u=te(`router-view`);return d(),e(D,null,[c(S(ce),{items:ke.value},null,8,[`items`]),!S(k)&&Q.value?(d(),l(S(N),{key:0,teleport:``},{icon:E(()=>[c(S(t),{icon:`mdi:map-marker-multiple`,class:`w[20px] h[20px]`})]),title:E(()=>[o(T(S(b)(`weatherModule.headings.locations`)),1)]),subtitle:E(()=>[o(T(S(b)(`weatherModule.subHeadings.locations`)),1)]),_:1})):w(``,!0),!S(k)&&Q.value?(d(),l(S(j),{key:1,align:S(O).LEFT,teleport:``,small:``,onClick:i[0]||=e=>S(h).push(`/`)},{icon:E(()=>[c(S(a),{size:24},{default:E(()=>[c(S(t),{icon:`mdi:chevron-left`})]),_:1})]),default:E(()=>[n(`span`,ye,T(S(b)(`application.buttons.home.title`)),1)]),_:1},8,[`align`])):w(``,!0),!S(k)&&Q.value?(d(),l(S(j),{key:2,align:S(O).RIGHT,teleport:``,small:``,onClick:Ne},{default:E(()=>[n(`span`,be,T(S(b)(`weatherModule.buttons.add.title`)),1)]),_:1},8,[`align`])):w(``,!0),c(S(se),{heading:S(b)(`weatherModule.headings.locations`),"sub-heading":S(b)(`weatherModule.subHeadings.locations`),icon:`mdi:map-marker-multiple`},{extra:E(()=>[n(`div`,xe,[c(S(C),{type:`primary`,plain:``,class:`px-4! ml-2!`,onClick:Ne},{icon:E(()=>[c(S(t),{icon:`mdi:plus`})]),default:E(()=>[o(` `+T(S(b)(`weatherModule.buttons.add.title`)),1)]),_:1})])]),_:1},8,[`heading`,`sub-heading`]),Q.value||S(A)?(d(),e(`div`,Se,[c(_e,{filters:S(L),"onUpdate:filters":i[1]||=e=>_(L)?L.value=e:null,"sort-by":S(z),"onUpdate:sortBy":i[2]||=e=>_(z)?z.value=e:null,"sort-dir":S(B),"onUpdate:sortDir":i[3]||=e=>_(B)?B.value=e:null,"paginate-size":S(H),"onUpdate:paginateSize":i[4]||=e=>_(H)?H.value=e:null,"paginate-page":S(U),"onUpdate:paginatePage":i[5]||=e=>_(U)?U.value=e:null,items:S(F),"all-items":S(P),"total-rows":S(I),loading:S(W),"filters-active":S(R),"primary-location-id":S(Te),"weather-by-location":S(K),"weather-fetch-completed":S(q),"temperature-unit":De.value,onDetail:je,onEdit:Me,onRemove:Pe,onAdjustList:Ie,onResetFilters:$,onBulkAction:Fe},null,8,[`filters`,`sort-by`,`sort-dir`,`paginate-size`,`paginate-page`,`items`,`all-items`,`total-rows`,`loading`,`filters-active`,`primary-location-id`,`weather-by-location`,`weather-fetch-completed`,`temperature-unit`])])):(d(),l(u,{key:s.id},{default:E(({Component:e})=>[(d(),l(x(e)))]),_:1})),S(A)?(d(),l(S(ue),{key:5,modelValue:Y.value,"onUpdate:modelValue":i[9]||=e=>Y.value=e,"show-close":!1,size:X.value?`300px`:`40%`,"with-header":!1,"before-close":Ae},{default:E(()=>[n(`div`,Ce,[c(S(le),{"menu-button-hidden":``},{"button-right":E(()=>[c(S(j),{align:S(O).RIGHT,class:`mr-2`,onClick:i[6]||=()=>Ae()},{icon:E(()=>[c(S(a),null,{default:E(()=>[c(S(t),{icon:`mdi:close`})]),_:1})]),_:1},8,[`align`])]),_:1}),Y.value?(d(),e(D,{key:0},[X.value?(d(),l(ve,{key:0,filters:S(L),"onUpdate:filters":i[7]||=e=>_(L)?L.value=e:null,"filters-active":S(R),onResetFilters:$},null,8,[`filters`,`filters-active`])):(d(),l(S(ae),{key:1},{icon:E(()=>[c(S(t),{icon:`mdi:map-marker`})]),message:E(()=>[o(T(S(b)(`weatherModule.messages.requestError`)),1)]),default:E(()=>[(d(),l(p,null,{default:E(()=>[(d(),l(u,{key:s.id},{default:E(({Component:e})=>[(d(),l(x(e),{"remote-form-changed":Z.value,"onUpdate:remoteFormChanged":i[8]||=e=>Z.value=e},null,40,[`remote-form-changed`]))]),_:1}))]),_:1}))]),_:1}))],64)):w(``,!0)])]),_:1},8,[`modelValue`,`size`])):w(``,!0)],64)}}});export{W as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import"./rolldown-runtime-QTnfLwEv.js";import{Ar as e,D as t,Dr as n,E as r,Er as i,Gr as a,H as o,Ki as s,Mr as c,Nr as l,O as u,Or as d,Pr as f,Qr as p,Si as m,T as h,Yr as g,_i as _,bi as v,ci as y,di as ee,ei as b,ji as x,k as S,kr as C,qi as w,t as T,ui as E,xr as D,yr as O}from"./icon-with-child-CgZMNB3F.js";import{Cr as k,Dr as A,Jr as te,Or as j,Pr as ne,Sr as re,Ur as M,Xr as ie,at as ae,d as oe,f as se,ft as ce,hr as le,ht as N,j as ue,kr as de,m as fe,o as P,qr as F,rt as I,vr as L,vt as pe,wr as me,xr as he}from"./common-CEAYa_VX.js";import{n as R,t as ge}from"./table-CP4k6PuT.js";import{n as z,t as _e}from"./form-CYGBQyZI.js";import{t as B}from"./alert-B_504iE8.js";import{t as ve}from"./input-number-DcR-vPr4.js";import{r as ye,t as be}from"./select-BE-J6w_y.js";import{t as xe}from"./card-C50YgvLJ.js";import{n as Se,t as Ce}from"./checkbox-DKrpi0d7.js";import{n as V,r as H}from"./radio-Cmy69XUu.js";import{t as we}from"./dialog-BKnLpTNm.js";import{t as Te}from"./drawer-Bv6YcfZX.js";import{t as U}from"./pagination-CFSm62Hu.js";import{t as W}from"./directive-D42ORGRu.js";import{t as G}from"./dist-DJgPCOr0.js";import{t as Ee}from"./useConfigModule-l8zp4LY1.js";import{i as De,n as Oe,r as ke}from"./mcp.exceptions-DqhuYDrK.js";import{a as K,i as Ae,n as je,o as Me,r as q,t as Ne}from"./useMcpClients-D44DSCoV.js";var Pe=oe(),J={class:`flex w-full`},Y=f({name:`McpClientsFilter`,__name:`mcp-clients-filter`,props:{filters:{},filtersActive:{type:Boolean},selectedCount:{},bulkActions:{}},emits:[`update:filters`,`reset-filters`,`bulk-action`],setup(n,{emit:r}){let i=n,a=r,{t:s}=h(),c=Object.values(De),u=L(i,`filters`,a);return y(()=>u.value.search,e=>{e===``&&(u.value.search=void 0)}),(n,r)=>(p(),e(`div`,J,[l(x(_e),{inline:!0,model:x(u),class:`grow-1`},{default:E(()=>[l(x(ie),{modelValue:x(u).search,"onUpdate:modelValue":r[0]||=e=>x(u).search=e,placeholder:x(s)(`mcpModule.clients.searchPlaceholder`),class:`max-w[280px] p-1`,clearable:``,"data-test-id":`search-mcp-clients`},{suffix:E(()=>[l(x(o),null,{default:E(()=>[l(x(t),{icon:`mdi:magnify`})]),_:1})]),_:1},8,[`modelValue`,`placeholder`]),l(x(ne),{direction:`vertical`}),l(x(z),{label:x(s)(`mcpModule.clients.columns.status`),class:`p-1 m-0!`},{default:E(()=>[l(x(H),{modelValue:x(u).status,"onUpdate:modelValue":r[1]||=e=>x(u).status=e,"data-test-id":`filter-mcp-clients-status`},{default:E(()=>[l(x(V),{label:x(s)(`mcpModule.status.active`),value:`active`},null,8,[`label`]),l(x(V),{label:x(s)(`mcpModule.status.revoked`),value:`revoked`},null,8,[`label`]),l(x(V),{label:x(s)(`mcpModule.status.expired`),value:`expired`},null,8,[`label`]),l(x(V),{label:x(s)(`mcpModule.clients.filterAll`),value:`all`},null,8,[`label`])]),_:1},8,[`modelValue`])]),_:1},8,[`label`]),l(x(ne),{direction:`vertical`}),l(x(z),{label:x(s)(`mcpModule.clientForm.capabilities`),class:`p-1 m-0!`},{default:E(()=>[l(x(ye),{modelValue:x(u).capabilities,"onUpdate:modelValue":r[2]||=e=>x(u).capabilities=e,placeholder:x(s)(`mcpModule.clients.filterAll`),class:`min-w[180px]`,multiple:``,"collapse-tags":``,clearable:``,"data-test-id":`filter-mcp-clients-capabilities`},{default:E(()=>[(p(!0),e(D,null,b(x(c),e=>(p(),d(x(be),{key:e,label:x(s)(`mcpModule.capabilities.${e}.title`),value:e},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])]),_:1},8,[`label`])]),_:1},8,[`model`]),l(x(ue),{"selected-count":i.selectedCount,actions:i.bulkActions,onAction:r[3]||=e=>a(`bulk-action`,e)},null,8,[`selected-count`,`actions`]),i.filtersActive?(p(),d(x(S),{key:0,plain:``,class:`px-2! mt-1 mr-1`,title:x(s)(`mcpModule.actions.resetFilters`),"data-test-id":`reset-mcp-clients-filters`,onClick:r[4]||=e=>a(`reset-filters`)},{default:E(()=>[l(x(t),{icon:`mdi:filter-off`})]),_:1},8,[`title`])):C(``,!0)]))}}),X={key:0,class:`h-full w-full leading-normal`},Fe={key:1,class:`h-full w-full leading-normal`},Z={key:2,class:`h-full w-full leading-normal`},Ie={class:`font-600`},Q={class:`flex flex-wrap gap-1`},Le={key:0},Re=f({name:`McpClientsTable`,__name:`mcp-clients-table`,props:{items:{},totalRows:{},sortBy:{},sortDir:{},loading:{type:Boolean},filtersActive:{type:Boolean},tableHeight:{}},emits:[`edit`,`rotate`,`revoke`,`delete`,`reset-filters`,`selected-changes`,`update:sort-by`,`update:sort-dir`],setup(r,{emit:i}){let a=r,o=i,{t:f}=h(),{isMDDevice:m}=le(),g=e=>{switch(K(e)){case`revoked`:case`expired`:return`danger`;case`disabled`:return`warning`;default:return`success`}},_=e=>e?new Intl.DateTimeFormat(void 0,{dateStyle:`medium`,timeStyle:`short`}).format(new Date(e)):f(`mcpModule.clients.never`),v=({prop:e,order:t})=>{o(`update:sort-by`,e),o(`update:sort-dir`,t===null?null:t===`descending`?`desc`:`asc`)},y=e=>{o(`selected-changes`,e)},k=e=>{o(`edit`,e)};return(r,i)=>ee((p(),d(x(ge),{"element-loading-text":x(f)(`mcpModule.clients.loading`),data:a.items,"default-sort":a.sortBy!==void 0&&a.sortDir!==null?{prop:a.sortBy,order:a.sortDir===`desc`?`descending`:`ascending`}:void 0,"table-layout":`fixed`,"row-key":`id`,class:`flex-grow`,style:s({maxHeight:a.tableHeight+`px`}),"max-height":a.tableHeight,onSortChange:v,onSelectionChange:y,onRowClick:k},{empty:E(()=>[a.loading?(p(),e(`div`,X,[l(x(u),{class:`h-full w-full`},{icon:E(()=>[l(x(T),{size:80},{primary:E(()=>[l(x(t),{icon:`mdi:robot-outline`})]),secondary:E(()=>[l(x(t),{icon:`mdi:database-refresh`})]),_:1})]),_:1})])):a.filtersActive?(p(),e(`div`,Fe,[l(x(u),{class:`h-full w-full`},{icon:E(()=>[l(x(T),{size:80},{primary:E(()=>[l(x(t),{icon:`mdi:robot-outline`})]),secondary:E(()=>[l(x(t),{icon:`mdi:filter-remove`})]),_:1})]),title:E(()=>[c(w(x(f)(`mcpModule.clients.noFilteredResults`)),1)]),extra:E(()=>[l(x(S),{plain:``,onClick:i[0]||=e=>o(`reset-filters`)},{default:E(()=>[c(w(x(f)(`mcpModule.actions.resetFilters`)),1)]),_:1})]),_:1})])):(p(),e(`div`,Z,[l(x(u),{class:`h-full w-full`},{icon:E(()=>[l(x(T),{size:80},{primary:E(()=>[l(x(t),{icon:`mdi:robot-outline`})]),secondary:E(()=>[l(x(t),{icon:`mdi:information`})]),_:1})]),title:E(()=>[c(w(x(f)(`mcpModule.clients.empty`)),1)]),_:1})]))]),default:E(()=>[x(m)?(p(),d(x(R),{key:0,type:`selection`,fixed:``,width:30})):C(``,!0),l(x(R),{width:60,align:`center`},{default:E(()=>[l(x(F),{size:32},{default:E(()=>[l(x(t),{icon:`mdi:robot-outline`,class:`w[20px] h[20px]`})]),_:1})]),_:1}),l(x(R),{label:x(f)(`mcpModule.clients.columns.name`),prop:`name`,sortable:`custom`,"sort-orders":[`ascending`,`descending`],"min-width":200},{default:E(e=>[n(`div`,Ie,w(e.row.name),1),l(x(j),{size:`small`,truncated:``},{default:E(()=>[c(w(e.row.description||x(f)(`mcpModule.clients.noDescription`)),1)]),_:2},1024)]),_:1},8,[`label`]),l(x(R),{label:x(f)(`mcpModule.clients.columns.status`),prop:`status`,sortable:`custom`,"sort-orders":[`ascending`,`descending`],width:130},{default:E(e=>[l(x(M),{type:g(e.row)},{default:E(()=>[c(w(x(f)(`mcpModule.status.${x(K)(e.row)}`)),1)]),_:2},1032,[`type`])]),_:1},8,[`label`]),l(x(R),{label:x(f)(`mcpModule.clients.columns.capabilities`),"min-width":180},{default:E(t=>[n(`div`,Q,[(p(!0),e(D,null,b(t.row.capabilities,e=>(p(),d(x(M),{key:e,type:`info`},{default:E(()=>[c(w(x(f)(`mcpModule.capabilities.${e}.title`)),1)]),_:2},1024))),128)),t.row.capabilities.length===0?(p(),e(`span`,Le,w(x(f)(`mcpModule.clients.none`)),1)):C(``,!0)])]),_:1},8,[`label`]),x(m)?(p(),d(x(R),{key:1,label:x(f)(`mcpModule.clients.columns.expires`),prop:`expires`,sortable:`custom`,"sort-orders":[`ascending`,`descending`],width:180},{default:E(e=>[c(w(_(e.row.credentialExpiresAt)),1)]),_:1},8,[`label`])):C(``,!0),x(m)?(p(),d(x(R),{key:2,label:x(f)(`mcpModule.clients.columns.lastUsed`),prop:`lastUsed`,sortable:`custom`,"sort-orders":[`ascending`,`descending`],width:180},{default:E(e=>[c(w(_(e.row.lastUsedAt)),1)]),_:1},8,[`label`])):C(``,!0),l(x(R),{width:320,align:`right`,fixed:`right`},{default:E(e=>[n(`div`,{onClick:i[5]||=O(()=>{},[`stop`])},[l(q,{client:e.row,onEdit:i[1]||=e=>o(`edit`,e),onRotate:i[2]||=e=>o(`rotate`,e),onRevoke:i[3]||=e=>o(`revoke`,e),onDelete:i[4]||=e=>o(`delete`,e)},null,8,[`client`])])]),_:1})]),_:1},8,[`element-loading-text`,`data`,`default-sort`,`style`,`max-height`])),[[x(W),a.loading]])}}),ze=f({name:`ListMcpClients`,__name:`list-mcp-clients`,props:{items:{},filters:{},totalRows:{},sortBy:{},sortDir:{},paginateSize:{},paginatePage:{},loading:{type:Boolean},filtersActive:{type:Boolean}},emits:[`edit`,`rotate`,`revoke`,`delete`,`reset-filters`,`update:filters`,`bulk-action`,`update:paginate-size`,`update:paginate-page`,`update:sort-by`,`update:sort-dir`,`selected-changes`],setup(t,{emit:r}){let o=t,s=r,{t:c}=h(),{isMDDevice:u}=le(),d=L(o,`filters`,s),f=m([]),v=i(()=>[{key:`enable`,label:c(`application.bulkActions.enable`),icon:`mdi:check-circle-outline`,type:`success`},{key:`disable`,label:c(`application.bulkActions.disable`),icon:`mdi:close-circle-outline`,type:`warning`},{key:`revoke`,label:c(`mcpModule.actions.revoke`),icon:`mdi:key-remove`,type:`warning`},{key:`delete`,label:c(`application.bulkActions.delete`),icon:`mdi:trash`,type:`danger`}]),ee=e=>{s(`bulk-action`,e,f.value)},b=null,S=m(null),C=m(null),w=m(o.sortBy),T=m(o.sortDir),O=m(o.paginatePage),k=m(o.paginateSize),A=m(250),te=e=>{s(`update:paginate-size`,e)},j=e=>{s(`update:paginate-page`,e)},ne=e=>{f.value=e,s(`selected-changes`,e)};return g(()=>{if(!S.value)return;let e=()=>{A.value=S.value.clientHeight-(C.value?.clientHeight??0)};typeof window<`u`&&`ResizeObserver`in window&&(b=new ResizeObserver(e),b.observe(S.value)),e()}),a(()=>{b&&S.value&&b.unobserve(S.value)}),y(()=>w.value,e=>{s(`update:sort-by`,e)}),y(()=>T.value,e=>{s(`update:sort-dir`,e)}),y(()=>o.paginatePage,e=>{O.value=e}),y(()=>o.paginateSize,e=>{k.value=e}),(t,r)=>(p(),e(D,null,[l(x(xe),{shadow:`never`,class:`px-1 py-2 shrink-0`,"body-class":`p-0!`},{default:E(()=>[l(Y,{filters:x(d),"onUpdate:filters":r[0]||=e=>_(d)?d.value=e:null,"filters-active":o.filtersActive,"selected-count":f.value.length,"bulk-actions":v.value,onResetFilters:r[1]||=e=>s(`reset-filters`),onBulkAction:ee},null,8,[`filters`,`filters-active`,`selected-count`,`bulk-actions`])]),_:1}),n(`div`,{ref_key:`wrapper`,ref:S,class:`flex-grow overflow-hidden`},[l(x(xe),{shadow:`never`,class:`max-h-full flex flex-col overflow-hidden box-border`,"body-class":`p-0! max-h-full overflow-hidden flex flex-col`},{default:E(()=>[l(Re,{"sort-by":w.value,"onUpdate:sortBy":r[2]||=e=>w.value=e,"sort-dir":T.value,"onUpdate:sortDir":r[3]||=e=>T.value=e,items:o.items,"total-rows":o.totalRows,loading:o.loading,"filters-active":o.filtersActive,"table-height":A.value,onEdit:r[4]||=e=>s(`edit`,e),onRotate:r[5]||=e=>s(`rotate`,e),onRevoke:r[6]||=e=>s(`revoke`,e),onDelete:r[7]||=e=>s(`delete`,e),onResetFilters:r[8]||=e=>s(`reset-filters`),onSelectedChanges:ne},null,8,[`sort-by`,`sort-dir`,`items`,`total-rows`,`loading`,`filters-active`,`table-height`]),n(`div`,{ref_key:`paginator`,ref:C,class:`flex justify-center w-full py-4`},[l(x(U),{"current-page":O.value,"onUpdate:currentPage":r[9]||=e=>O.value=e,"page-size":k.value,"onUpdate:pageSize":r[10]||=e=>k.value=e,layout:x(u)?`total, sizes, prev, pager, next, jumper`:`total, sizes, prev, pager, next`,total:o.totalRows,onSizeChange:te,onCurrentChange:j},null,8,[`current-page`,`page-size`,`layout`,`total`])],512)]),_:1})],512)],64))}}),Be=N({search:pe().optional(),status:I([`all`,`active`,`revoked`,`expired`]).default(`all`),enabled:I([`all`,`enabled`,`disabled`]).default(`all`),capabilities:ae(ce(De))}),$={search:void 0,status:`all`,enabled:`all`,capabilities:[]},Ve={by:`name`,dir:`asc`},He=e=>{let{filters:t,sort:n,pagination:r,reset:a}=P({key:`${ke}:clients:list`,filters:{schema:Be,defaults:$},sort:{defaults:[Ve]},pagination:{defaults:{page:1,size:10}},syncQuery:!0,version:1}),o=i(()=>t.value.search!==$.search||t.value.status!==$.status||t.value.enabled!==$.enabled||!(0,Pe.isEqual)(t.value.capabilities,$.capabilities)),s=m(r.value.size||10),c=m(r.value.page||1),l=m(n.value.length>0?n.value[0]?.by:void 0),u=m(n.value.length>0?n.value[0]?.dir??null:null),d=e=>{let n=t.value.search?.trim().toLowerCase();return!(n!==void 0&&n!==``&&!`${e.name} ${e.description??``}`.toLowerCase().includes(n)||t.value.status!==`all`&&K(e)!==t.value.status||t.value.enabled!==`all`&&e.enabled!==(t.value.enabled===`enabled`)||t.value.capabilities.length>0&&!t.value.capabilities.some(t=>e.capabilities.includes(t)))},f=e=>{switch(l.value){case`status`:return K(e);case`expires`:return e.credentialExpiresAt===null?2**53-1:new Date(e.credentialExpiresAt).getTime();case`lastUsed`:return e.lastUsedAt===null?0:new Date(e.lastUsedAt).getTime();default:return e.name}},p=i(()=>G(e.value.filter(d),[e=>f(e)],[u.value===`desc`?`desc`:`asc`])),h=i(()=>{let e=(c.value-1)*s.value;return p.value.slice(e,e+s.value)}),g=i(()=>p.value.length);return y(()=>r.value,e=>{c.value=e.page??1,s.value=e.size??10},{deep:!0}),y(()=>c.value,e=>{r.value.page=e}),y(()=>s.value,e=>{r.value.size=e}),y(()=>n.value,e=>{l.value=e.length>0?e[0]?.by:void 0,u.value=e.length>0?e[0]?.dir??null:null}),y(()=>u.value,e=>{n.value=l.value===void 0||e===null?[]:[{by:l.value,dir:e}]}),y(()=>l.value,e=>{n.value=e===void 0||u.value===null?[]:[{by:e,dir:u.value}]}),y(()=>g.value,e=>{let t=Math.max(1,Math.ceil(e/s.value));c.value>t&&(c.value=t,r.value={...r.value,page:t})}),{clients:p,clientsPaginated:h,totalRows:g,filters:t,filtersActive:o,sortBy:l,sortDir:u,paginateSize:s,paginatePage:c,resetFilter:a}},Ue={class:`mcp-clients-page`},We={class:`font-600`},Ge={class:`flex flex-col h-full`},Ke={"data-test-id":`drawer-heading-title`},qe={"data-test-id":`drawer-heading-subtitle`},Je={class:`flex flex-row gap-2 justify-end items-center b-t b-t-solid shadow-top z-10 w-full h-[3rem]`,style:{"background-color":`var(--el-drawer-bg-color)`}},Ye={class:`p-2`},Xe=r(f({name:`ViewMcpClients`,__name:`view-mcp-clients`,setup(r){let{t:a}=h(),s=se(),{isLGDevice:u}=le(),{clients:f,loading:y,error:ee,fetchClients:T,createClient:O,updateClient:j,rotateClient:ne,revokeClient:M,deleteClient:ae}=Ne(),{clientsPaginated:oe,totalRows:ce,filters:N,filtersActive:ue,sortBy:P,sortDir:F,paginateSize:I,paginatePage:L,resetFilter:pe}=He(f),{configModule:R,fetchConfigModule:ge}=Ee({type:ke}),ye=Object.values(De),be=Me(window.location),V=i(()=>R.value?.capabilities??[]),H=m(!1),U=m(!1),W=m(!1),G=m(!1),K=m(null),q=m(null),J=m(),Y=m(90),X=m(``),Fe=m(``),Z=v({name:``,description:``,enabled:!0,capabilities:[],expiresInDays:90}),Ie=v({name:[{required:!0,message:a(`mcpModule.clientForm.nameRequired`),trigger:`change`}],expiresInDays:[{required:!0,type:`number`,min:1,max:Oe,message:a(`mcpModule.clientForm.expiryRequired`)}]}),Q=()=>({name:Z.name,description:Z.description,enabled:Z.enabled,capabilities:[...Z.capabilities],expiresInDays:Z.expiresInDays}),Le=m(Q()),Re=i(()=>!(0,Pe.isEqual)(Q(),Le.value)),Be=()=>{K.value=null,Z.name=``,Z.description=``,Z.enabled=!0,Z.capabilities=[],Z.expiresInDays=90,J.value?.clearValidate(),Le.value=Q()},$=async e=>{if(Re.value)try{await A.confirm(a(`mcpModule.confirm.discard`),a(`mcpModule.headings.discard`),{confirmButtonText:a(`mcpModule.actions.yes`),cancelButtonText:a(`mcpModule.actions.no`),type:`warning`})}catch{return}H.value=!1,e?.()},Ve=()=>{Be(),H.value=!0},Xe=e=>{K.value=e,Z.name=e.name,Z.description=e.description??``,Z.enabled=e.enabled,Z.capabilities=[...e.capabilities],Le.value=Q(),H.value=!0},Ze=(e,t)=>{X.value=e,Fe.value=t,W.value=!0},Qe=()=>{X.value=``,Fe.value=``},$e=async()=>{if(await J.value?.validate()){if(!Ae(Z.capabilities,V.value)){s.error(a(`mcpModule.messages.capabilitiesOutsideCeiling`));return}G.value=!0;try{if(K.value)await j(K.value.id,{name:Z.name,description:Z.description||null,enabled:Z.enabled,capabilities:Z.capabilities}),s.success(a(`mcpModule.messages.updated`));else{let e=await O({name:Z.name,description:Z.description||null,capabilities:Z.capabilities,expiresInDays:Z.expiresInDays});Ze(e.token,e.client.name),s.success(a(`mcpModule.messages.created`))}H.value=!1}catch{s.error(a(K.value?`mcpModule.messages.updateFailed`:`mcpModule.messages.createFailed`))}finally{G.value=!1}}},et=e=>{q.value=e,Y.value=90,U.value=!0},tt=async()=>{if(q.value){G.value=!0;try{let e=await ne(q.value.id,{expiresInDays:Y.value});U.value=!1,Ze(e.token,e.client.name),s.success(a(`mcpModule.messages.rotated`))}catch{s.error(a(`mcpModule.messages.rotateFailed`))}finally{G.value=!1}}},nt=async(e,t)=>{if(t.length===0)return;if(e===`revoke`||e===`delete`)try{await A.confirm(a(e===`revoke`?`mcpModule.confirm.bulkRevoke`:`mcpModule.confirm.bulkDelete`,{count:t.length}),a(e===`revoke`?`mcpModule.actions.revoke`:`mcpModule.actions.delete`),{type:`warning`,confirmButtonText:a(e===`revoke`?`mcpModule.actions.revoke`:`mcpModule.actions.delete`),cancelButtonText:a(`mcpModule.actions.cancel`)})}catch{return}let n=(await Promise.allSettled(t.map(t=>{switch(e){case`enable`:return j(t.id,{name:t.name,description:t.description,enabled:!0,capabilities:t.capabilities});case`disable`:return j(t.id,{name:t.name,description:t.description,enabled:!1,capabilities:t.capabilities});case`revoke`:return M(t.id);default:return ae(t.id)}}))).filter(e=>e.status===`rejected`).length;n>0?s.error(a(`mcpModule.messages.bulkFailed`,{count:n})):s.success(a(`mcpModule.messages.bulkSucceeded`,{count:t.length}))},rt=async e=>{try{await A.confirm(a(`mcpModule.confirm.revoke`,{name:e.name}),a(`mcpModule.actions.revoke`),{type:`warning`,confirmButtonText:a(`mcpModule.actions.revoke`),cancelButtonText:a(`mcpModule.actions.cancel`)}),await M(e.id),s.success(a(`mcpModule.messages.revoked`))}catch(e){e!==`cancel`&&e!==`close`&&s.error(a(`mcpModule.messages.revokeFailed`))}},it=async e=>{try{await A.confirm(a(`mcpModule.confirm.delete`,{name:e.name}),a(`mcpModule.actions.delete`),{type:`error`,confirmButtonText:a(`mcpModule.actions.delete`),cancelButtonText:a(`mcpModule.actions.cancel`)}),await ae(e.id),s.success(a(`mcpModule.messages.deleted`))}catch(e){e!==`cancel`&&e!==`close`&&s.error(a(`mcpModule.messages.deleteFailed`))}},at=async()=>{try{await navigator.clipboard.writeText(be),s.success(a(`mcpModule.messages.endpointCopied`))}catch{s.error(a(`mcpModule.messages.copyFailed`))}};return g(async()=>{await Promise.allSettled([T(),ge()])}),(r,i)=>(p(),e(D,null,[l(x(fe),{heading:x(a)(`mcpModule.clients.title`),"sub-heading":x(a)(`mcpModule.clients.subtitle`),icon:`mdi:robot-outline`},{extra:E(()=>[l(x(S),{type:`primary`,plain:``,class:`px-4!`,"data-test-id":`create-mcp-client`,onClick:Ve},{icon:E(()=>[l(x(t),{icon:`mdi:plus`})]),default:E(()=>[c(` `+w(x(a)(`mcpModule.actions.add`)),1)]),_:1})]),_:1},8,[`heading`,`sub-heading`]),n(`div`,Ue,[l(x(B),{type:`info`,title:x(a)(`mcpModule.clients.securityTitle`),description:x(a)(`mcpModule.clients.securityDescription`),closable:!1,"show-icon":``},null,8,[`title`,`description`]),l(x(xe),{shadow:`never`},{header:E(()=>[n(`div`,We,w(x(a)(`mcpModule.config.endpoint.title`)),1)]),default:E(()=>[l(x(ie),{"model-value":x(be),readonly:``,name:`endpoint`},{append:E(()=>[l(x(S),{"aria-label":x(a)(`mcpModule.actions.copyEndpoint`),onClick:at},{default:E(()=>[l(x(t),{icon:`mdi:content-copy`})]),_:1},8,[`aria-label`])]),_:1},8,[`model-value`])]),_:1}),x(ee)?(p(),d(x(B),{key:0,type:`error`,title:x(a)(`mcpModule.messages.loadFailed`),closable:!1,"show-icon":``},null,8,[`title`])):C(``,!0),l(ze,{filters:x(N),"onUpdate:filters":i[0]||=e=>_(N)?N.value=e:null,"sort-by":x(P),"onUpdate:sortBy":i[1]||=e=>_(P)?P.value=e:null,"sort-dir":x(F),"onUpdate:sortDir":i[2]||=e=>_(F)?F.value=e:null,"paginate-size":x(I),"onUpdate:paginateSize":i[3]||=e=>_(I)?I.value=e:null,"paginate-page":x(L),"onUpdate:paginatePage":i[4]||=e=>_(L)?L.value=e:null,items:x(oe),"total-rows":x(ce),loading:x(y),"filters-active":x(ue),onEdit:Xe,onRotate:et,onRevoke:rt,onDelete:it,onResetFilters:x(pe),onBulkAction:nt},null,8,[`filters`,`sort-by`,`sort-dir`,`paginate-size`,`paginate-page`,`items`,`total-rows`,`loading`,`filters-active`,`onResetFilters`])]),l(x(Te),{modelValue:H.value,"onUpdate:modelValue":i[12]||=e=>H.value=e,"show-close":!1,"with-header":!1,size:x(u)?`40%`:`100%`,"before-close":$,"data-test-id":`mcp-client-form-drawer`,onClosed:Be},{default:E(()=>[n(`div`,Ge,[l(x(me),{"menu-button-hidden":``},{heading:E(()=>[l(x(he),null,{icon:E(()=>[l(x(t),{icon:`mdi:robot-outline`})]),title:E(()=>[n(`span`,Ke,w(K.value?x(a)(`mcpModule.clientForm.editTitle`):x(a)(`mcpModule.clientForm.createTitle`)),1)]),subtitle:E(()=>[n(`span`,qe,w(x(a)(`mcpModule.clientForm.formSubtitle`)),1)]),_:1})]),"button-right":E(()=>[l(x(re),{align:x(k).RIGHT,class:`mr-2`,onClick:i[5]||=()=>$()},{icon:E(()=>[l(x(o),null,{default:E(()=>[l(x(t),{icon:`mdi:close`})]),_:1})]),_:1},8,[`align`])]),_:1}),l(x(te),{class:`grow-1 p-2 md:px-4`},{default:E(()=>[l(x(_e),{ref_key:`clientFormEl`,ref:J,model:Z,rules:Ie,"label-position":`top`},{default:E(()=>[l(x(z),{label:x(a)(`mcpModule.clientForm.name`),prop:`name`},{default:E(()=>[l(x(ie),{modelValue:Z.name,"onUpdate:modelValue":i[6]||=e=>Z.name=e,maxlength:`100`,name:`clientName`},null,8,[`modelValue`])]),_:1},8,[`label`]),l(x(z),{label:x(a)(`mcpModule.clientForm.description`),prop:`description`},{default:E(()=>[l(x(ie),{modelValue:Z.description,"onUpdate:modelValue":i[7]||=e=>Z.description=e,type:`textarea`,maxlength:`500`,"show-word-limit":``,name:`clientDescription`},null,8,[`modelValue`])]),_:1},8,[`label`]),K.value?(p(),d(x(z),{key:0,label:x(a)(`mcpModule.clientForm.enabled`),prop:`enabled`},{default:E(()=>[l(x(de),{modelValue:Z.enabled,"onUpdate:modelValue":i[8]||=e=>Z.enabled=e,name:`clientEnabled`},null,8,[`modelValue`])]),_:1},8,[`label`])):C(``,!0),l(x(z),{label:x(a)(`mcpModule.clientForm.capabilities`),prop:`capabilities`},{default:E(()=>[l(x(Se),{modelValue:Z.capabilities,"onUpdate:modelValue":i[9]||=e=>Z.capabilities=e},{default:E(()=>[(p(!0),e(D,null,b(x(ye),e=>(p(),d(x(Ce),{key:e,value:e,disabled:!V.value.includes(e)&&!Z.capabilities.includes(e)},{default:E(()=>[c(w(x(a)(`mcpModule.capabilities.${e}.title`)),1)]),_:2},1032,[`value`,`disabled`]))),128))]),_:1},8,[`modelValue`]),l(x(B),{class:`mt-1`,type:`info`,description:x(a)(`mcpModule.clientForm.ceilingHint`),closable:!1,"show-icon":``,"data-test-id":`mcp-client-capability-ceiling-hint`},null,8,[`description`])]),_:1},8,[`label`]),K.value?C(``,!0):(p(),d(x(z),{key:1,label:x(a)(`mcpModule.clientForm.expiresInDays`),prop:`expiresInDays`},{default:E(()=>[l(x(ve),{modelValue:Z.expiresInDays,"onUpdate:modelValue":i[10]||=e=>Z.expiresInDays=e,min:1,max:x(Oe),name:`expiresInDays`},null,8,[`modelValue`,`max`])]),_:1},8,[`label`]))]),_:1},8,[`model`,`rules`])]),_:1}),n(`div`,Je,[n(`div`,Ye,[l(x(S),{link:``,class:`mr-2`,"data-test-id":`cancel-mcp-client-form`,onClick:i[11]||=()=>$()},{default:E(()=>[c(w(Re.value?x(a)(`mcpModule.actions.discard`):x(a)(`mcpModule.actions.close`)),1)]),_:1}),l(x(S),{type:`primary`,loading:G.value,disabled:G.value||!Re.value,"data-test-id":`save-mcp-client-form`,onClick:$e},{default:E(()=>[c(w(x(a)(`mcpModule.actions.save`)),1)]),_:1},8,[`loading`,`disabled`])])])])]),_:1},8,[`modelValue`,`size`]),l(x(we),{modelValue:U.value,"onUpdate:modelValue":i[15]||=e=>U.value=e,title:x(a)(`mcpModule.rotate.title`),width:`min(480px, 94vw)`},{footer:E(()=>[l(x(S),{onClick:i[14]||=e=>U.value=!1},{default:E(()=>[c(w(x(a)(`mcpModule.actions.cancel`)),1)]),_:1}),l(x(S),{type:`warning`,loading:G.value,onClick:tt},{default:E(()=>[c(w(x(a)(`mcpModule.actions.rotate`)),1)]),_:1},8,[`loading`])]),default:E(()=>[l(x(B),{type:`warning`,description:x(a)(`mcpModule.rotate.warning`),closable:!1,"show-icon":``,class:`mb-4`},null,8,[`description`]),l(x(_e),{"label-position":`top`},{default:E(()=>[l(x(z),{label:x(a)(`mcpModule.clientForm.expiresInDays`)},{default:E(()=>[l(x(ve),{modelValue:Y.value,"onUpdate:modelValue":i[13]||=e=>Y.value=e,min:1,max:x(Oe)},null,8,[`modelValue`,`max`])]),_:1},8,[`label`])]),_:1})]),_:1},8,[`modelValue`,`title`]),l(je,{modelValue:W.value,"onUpdate:modelValue":i[16]||=e=>W.value=e,token:X.value,"client-name":Fe.value,onClosed:Qe},null,8,[`modelValue`,`token`,`client-name`])],64))}}),[[`__scopeId`,`data-v-d447fc1c`]]);export{Xe as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import"./rolldown-runtime-QTnfLwEv.js";import{Ar as e,D as t,Dr as n,E as r,Er as i,H as a,Lr as o,Mr as s,Nr as c,O as l,Or as u,Pr as d,Qr as f,Si as p,T as ee,Yr as te,b as ne,bi as re,ci as ie,di as ae,ei as m,ji as h,jr as g,k as _,kr as v,qi as y,t as oe,ui as b,x as se,xr as x}from"./icon-with-child-CgZMNB3F.js";import{Cr as ce,Dr as le,Jr as ue,Or as de,Sr as fe,Ur as pe,Xr as me,at as S,d as he,f as ge,ft as _e,hr as ve,ht as C,l as w,m as ye,mt as be,o as xe,ot as T,p as Se,vr as Ce,vt as E,wr as we,xr as Te}from"./common-CEAYa_VX.js";import{n as D,t as Ee}from"./table-CP4k6PuT.js";import{n as De,t as Oe}from"./form-CYGBQyZI.js";import{t as O}from"./alert-B_504iE8.js";import{r as ke,t as Ae}from"./select-BE-J6w_y.js";import{t as k}from"./card-C50YgvLJ.js";import{n as je,t as Me}from"./checkbox-DKrpi0d7.js";import{t as Ne}from"./drawer-Bv6YcfZX.js";import{n as Pe,t as A}from"./tabs-BlmPldJW.js";import{t as Fe}from"./directive-D42ORGRu.js";import{a as j,r as Ie,t as M}from"./mcp.exceptions-DqhuYDrK.js";var Le=he(),Re={class:`flex min-w-0 flex-wrap items-center gap-2 px-1 py-2`},ze=d({name:`McpOAuthTabFilter`,__name:`mcp-oauth-tab-filter`,props:{filters:{},filtersActive:{type:Boolean},searchPlaceholder:{},statusOptions:{},testId:{}},emits:[`update:filters`,`reset-filters`],setup(r,{emit:i}){let o=r,s=i,{t:l}=ee(),d=Ce(o,`filters`,s);return ie(()=>d.value.search,e=>{e===``&&(d.value.search=void 0)}),(r,i)=>(f(),e(`div`,Re,[c(h(me),{modelValue:h(d).search,"onUpdate:modelValue":i[0]||=e=>h(d).search=e,placeholder:o.searchPlaceholder,class:`max-w[280px] min-w-0`,clearable:``,"data-test-id":`search-${o.testId}`},{suffix:b(()=>[c(h(a),null,{default:b(()=>[c(h(t),{icon:`mdi:magnify`})]),_:1})]),_:1},8,[`modelValue`,`placeholder`,`data-test-id`]),o.statusOptions.length>0?(f(),u(h(ke),{key:0,modelValue:h(d).status,"onUpdate:modelValue":i[1]||=e=>h(d).status=e,class:`max-w[200px]`,"data-test-id":`filter-${o.testId}-status`},{default:b(()=>[c(h(Ae),{label:h(l)(`mcpModule.clients.filterAll`),value:`all`},null,8,[`label`]),(f(!0),e(x,null,m(o.statusOptions,e=>(f(),u(h(Ae),{key:e.value,label:h(l)(e.label),value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`data-test-id`])):v(``,!0),i[3]||=n(`div`,{class:`grow-1`},null,-1),o.filtersActive?(f(),u(h(_),{key:1,plain:``,class:`px-2!`,title:h(l)(`mcpModule.actions.resetFilters`),"data-test-id":`reset-${o.testId}-filters`,onClick:i[2]||=e=>s(`reset-filters`)},{default:b(()=>[c(h(t),{icon:`mdi:filter-off`})]),_:1},8,[`title`,`data-test-id`])):v(``,!0)]))}}),Be={class:`h-full w-full leading-normal`},Ve=d({name:`McpTableEmpty`,__name:`mcp-table-empty`,props:{icon:{},loading:{type:Boolean},failed:{type:Boolean},filtersActive:{type:Boolean},emptyLabel:{}},emits:[`retry`,`reset-filters`],setup(n,{emit:r}){let a=n,o=r,{t:d}=ee(),p=i(()=>a.loading?`mdi:database-refresh`:a.failed?`mdi:alert-circle`:a.filtersActive?`mdi:filter-multiple`:`mdi:information`),te=i(()=>a.failed?d(`mcpModule.messages.loadFailed`):a.filtersActive?d(`mcpModule.clients.noFilteredResults`):d(a.emptyLabel));return(n,r)=>(f(),e(`div`,Be,[c(h(l),{class:`h-full w-full`},g({icon:b(()=>[c(h(oe),{size:80},{primary:b(()=>[c(h(t),{icon:a.icon},null,8,[`icon`])]),secondary:b(()=>[c(h(t),{icon:p.value},null,8,[`icon`])]),_:1})]),_:2},[a.loading?void 0:{name:`title`,fn:b(()=>[c(h(de),{class:`block`},{default:b(()=>[s(y(te.value),1)]),_:1})]),key:`0`},!a.loading&&(a.failed||a.filtersActive)?{name:`extra`,fn:b(()=>[a.failed?(f(),u(h(_),{key:0,type:`primary`,plain:``,"data-test-id":`mcp-table-retry`,onClick:r[0]||=e=>o(`retry`)},{icon:b(()=>[c(h(t),{icon:`mdi:refresh`})]),default:b(()=>[s(` `+y(h(d)(`mcpModule.actions.retry`)),1)]),_:1})):(f(),u(h(_),{key:1,type:`primary`,plain:``,"data-test-id":`mcp-table-reset-filters`,onClick:r[1]||=e=>o(`reset-filters`)},{icon:b(()=>[c(h(t),{icon:`mdi:filter-off`})]),default:b(()=>[s(` `+y(h(d)(`mcpModule.actions.resetFilters`)),1)]),_:1}))]),key:`1`}:void 0]),1024)]))}}),N=E().datetime({offset:!0}),P=N.nullable().default(null),F=_e(j),I=C({id:E().uuid(),clientId:E().min(1),name:E().trim().min(1).max(100),redirectUris:S(E().url()).min(1),maximumScopes:S(F),enabled:T(),createdAt:N,updatedAt:P}).transform(({clientId:e,...t})=>({...t,clientIdentifier:e})),L=C({id:E().uuid(),clientId:E().uuid(),clientName:E().min(1),approvedById:E().uuid().nullable(),approvedScopes:S(F),expiresAt:N,revokedAt:P,active:T(),createdAt:N}),R=C({id:E().uuid(),clientId:E().uuid(),clientName:E().min(1),grantId:E().uuid(),refreshFamilyId:E().uuid().nullable(),scopes:S(F),expiresAt:N}),z=C({id:E().uuid(),clientId:E().uuid(),clientName:E().min(1),grantId:E().uuid(),expiresAt:N,activeTokenCount:be().int().min(0)}),He=C({name:E().trim().min(1).max(100),redirectUris:S(E().url()).min(1),maximumScopes:S(F).min(1)}),B=He.partial(),V=C({approvedScopes:S(F).min(1)}),H=C({id:E().uuid(),client_id:E().min(1),name:E(),redirect_uris:S(E()),maximum_scopes:S(F),enabled:T(),created_at:E(),updated_at:E().nullable()}),Ue=C({id:E().uuid(),client_id:E(),client_name:E(),approved_by_id:E().nullable(),approved_scopes:S(F),expires_at:E(),revoked_at:E().nullable(),active:T(),created_at:E()}),We=C({id:E().uuid(),client_id:E(),client_name:E(),grant_id:E(),refresh_family_id:E().nullable(),scopes:S(F),expires_at:E()}),Ge=C({id:E().uuid(),client_id:E(),client_name:E(),grant_id:E(),expires_at:E(),active_token_count:be()}),U=(e,t,n,r)=>{let i=t.safeParse(e);if(!i.success)throw new M(`Received ${r} does not match the API contract.`);let a=n.safeParse(w(i.data));if(!a.success)throw new M(`Failed to validate received ${r}.`);return a.data},W=e=>U(e,H,I,`OAuth client`),G=e=>U(e,Ue,L,`OAuth grant`),Ke=e=>U(e,We,R,`OAuth access token`),qe=e=>U(e,Ge,z,`OAuth refresh family`),K=`/modules/mcp/oauth`,q=`${K}/clients`,Je=`${K}/clients/{id}`,Ye=`${K}/clients/{id}/revoke`,Xe=`${K}/grants`,Ze=`${K}/grants/{id}`,Qe=`${K}/grants/{id}/revoke`,$e=`${K}/access-tokens`,et=`${K}/access-tokens/{id}/revoke`,tt=`${K}/refresh-families`,nt=`${K}/refresh-families/{id}/revoke`,J=`${K}/revoke-all`,rt=()=>{let e=Se(),t=p([]),n=p([]),r=p([]),i=p([]),a=p(!1),o=p(null),s=async()=>{a.value=!0,o.value=null;try{let[a,o,s,c]=await Promise.all([e.client.GET(q,{}),e.client.GET(Xe,{}),e.client.GET($e,{}),e.client.GET(tt,{})]);if(!a.data||!o.data||!s.data||!c.data){let e=[a,o,s,c].find(e=>!e.data)?.response.status;throw new M(`Failed to load MCP OAuth authorization data.`,e)}t.value=a.data.data.map(W),n.value=o.data.data.map(G),r.value=s.data.data.map(Ke),i.value=c.data.data.map(qe)}catch(e){throw o.value=e instanceof Error?e:Error(`Failed to load MCP OAuth authorization data.`),o.value}finally{a.value=!1}},c=e=>{let n=t.value.findIndex(t=>t.id===e.id);return n>=0?t.value[n]=e:t.value.unshift(e),e};return{clients:t,grants:n,accessTokens:r,refreshFamilies:i,loading:a,error:o,fetchAll:s,createClient:async t=>{let n=He.parse(t),{data:r,response:i}=await e.client.POST(q,{body:{data:{name:n.name,redirect_uris:n.redirectUris,maximum_scopes:n.maximumScopes}}});if(!r)throw new M(`Failed to create MCP OAuth client.`,i.status);return c(W(r.data))},updateClient:async(t,n)=>{let r=B.parse(n),{data:i,response:a}=await e.client.PATCH(Je,{params:{path:{id:t}},body:{data:{...r.name===void 0?{}:{name:r.name},...r.redirectUris===void 0?{}:{redirect_uris:r.redirectUris},...r.maximumScopes===void 0?{}:{maximum_scopes:r.maximumScopes}}}});if(!i)throw new M(`Failed to update MCP OAuth client.`,a.status);return c(W(i.data))},revokeClient:async t=>{let{data:a,response:o}=await e.client.POST(Ye,{params:{path:{id:t}}});if(!a)throw new M(`Failed to disable MCP OAuth client.`,o.status);let s=c(W(a.data));return n.value=n.value.map(e=>e.clientId===t?{...e,active:!1,revokedAt:e.revokedAt??new Date().toISOString()}:e),r.value=r.value.filter(e=>e.clientId!==t),i.value=i.value.filter(e=>e.clientId!==t),s},revokeGrant:async t=>{let{data:a,response:o}=await e.client.POST(Qe,{params:{path:{id:t}}});if(!a)throw new M(`Failed to revoke MCP OAuth grant.`,o.status);let s=G(a.data);return n.value=n.value.map(e=>e.id===t?s:e),r.value=r.value.filter(e=>e.grantId!==t),i.value=i.value.filter(e=>e.grantId!==t),s},updateGrant:async(t,r)=>{let i=V.parse(r),{data:a,response:o}=await e.client.PATCH(Ze,{params:{path:{id:t}},body:{data:{approved_scopes:i.approvedScopes}}});if(!a)throw new M(`Failed to update MCP OAuth grant.`,o.status);let s=G(a.data);return n.value=n.value.map(e=>e.id===t?s:e),s},revokeAccessToken:async t=>{let{response:n}=await e.client.POST(et,{params:{path:{id:t}}});if(!n.ok)throw new M(`Failed to revoke MCP OAuth access token.`,n.status);r.value=r.value.filter(e=>e.id!==t)},revokeRefreshFamily:async t=>{let{response:n}=await e.client.POST(nt,{params:{path:{id:t}}});if(!n.ok)throw new M(`Failed to revoke MCP OAuth refresh family.`,n.status);i.value=i.value.filter(e=>e.id!==t),r.value=r.value.filter(e=>e.refreshFamilyId!==t)},revokeAll:async()=>{let{data:t,response:a}=await e.client.POST(J,{});if(!t?.data.revoked)throw new M(`Failed to revoke all MCP OAuth authorization.`,a.status);let o=new Date().toISOString();n.value=n.value.map(e=>({...e,active:!1,revokedAt:e.revokedAt??o})),r.value=[],i.value=[]}}},it=C({search:E().optional(),status:E().default(`all`)}),at={search:void 0,status:`all`},ot=({key:e,items:t,searchable:n,sortable:r,defaultSortBy:a,statusOf:o})=>{let{filters:s,sort:c,reset:l}=xe({key:`${Ie}:oauth:${e}`,filters:{schema:it,defaults:at},sort:{defaults:[{by:a,dir:`asc`}]},syncQuery:!0,version:1}),u=i(()=>s.value.search!==at.search||s.value.status!==at.status),d=p(c.value.length>0?c.value[0]?.by:a),f=p(c.value.length>0?c.value[0]?.dir??null:`asc`),ee=e=>{let t=s.value.search?.trim().toLowerCase();return!(t!==void 0&&t!==``&&!n(e).filter(e=>typeof e==`string`).join(` `).toLowerCase().includes(t)||o!==void 0&&s.value.status!==`all`&&o(e)!==s.value.status)},te=i(()=>{let e=t.value.filter(ee),n=typeof d.value==`string`?r[d.value]:void 0;if(n===void 0||f.value===null)return e;let i=f.value===`desc`?-1:1;return[...e].sort((e,t)=>{let r=n(e),a=n(t);return typeof r==`number`&&typeof a==`number`?(r-a)*i:String(r).localeCompare(String(a),void 0,{sensitivity:`base`})*i})});return ie(()=>c.value,e=>{d.value=e.length>0?e[0]?.by:void 0,f.value=e.length>0?e[0]?.dir??null:null}),ie([d,f],()=>{c.value=d.value===void 0||f.value===null?[]:[{by:d.value,dir:f.value}]}),{items:te,filters:s,filtersActive:u,sortBy:d,sortDir:f,resetFilter:l}},st={class:`mcp-oauth-page`},ct={class:`mcp-oauth-details`},lt={class:`flex flex-col h-full`},ut={"data-test-id":`drawer-heading-title`},dt={"data-test-id":`drawer-heading-subtitle`},ft={class:`redirect-list`},pt={class:`flex flex-row gap-2 justify-end items-center b-t b-t-solid shadow-top z-10 w-full h-[3rem]`,style:{"background-color":`var(--el-drawer-bg-color)`}},mt={class:`p-2`},ht={class:`flex flex-col h-full`},gt={"data-test-id":`drawer-heading-title`},_t={"data-test-id":`drawer-heading-subtitle`},vt={class:`flex flex-row gap-2 justify-end items-center b-t b-t-solid shadow-top z-10 w-full h-[3rem]`,style:{"background-color":`var(--el-drawer-bg-color)`}},yt={class:`p-2`},bt=r(d({name:`ViewMcpOAuthManagement`,__name:`view-mcp-oauth-management`,setup(r){let{t:l}=ee(),g=ge(),{isLGDevice:oe}=ve(),{clients:de,grants:S,accessTokens:he,refreshFamilies:_e,loading:C,error:w,fetchAll:be,createClient:xe,updateClient:T,updateGrant:Se,revokeClient:Ce,revokeGrant:E,revokeAccessToken:ke,revokeRefreshFamily:Ae,revokeAll:Ie}=rt(),M=ne(),Re=se(),Be=p(typeof M.query.tab==`string`&&[`clients`,`grants`,`accessTokens`,`refreshFamilies`].includes(M.query.tab)?M.query.tab:`clients`);ie(Be,e=>{Re.replace({query:{...M.query,tab:e}})});let N=p(!1),P=p(!1),F=p(!1),I=p(null),L=p(null),R=p(),z=p(),He=Object.values(j),B=p([]),V=re({name:``,redirectUris:[``],maximumScopes:[j.READ]}),H=re({approvedScopes:[j.READ]}),Ue=i(()=>V.maximumScopes.includes(j.WRITE)||V.maximumScopes.includes(j.TRIGGER)),We=i(()=>H.approvedScopes.includes(j.WRITE)||H.approvedScopes.includes(j.TRIGGER)),Ge=re({name:[{required:!0,message:l(`mcpModule.oauthManagement.nameRequired`),trigger:`change`}],redirectUris:[{validator:(e,t,n)=>t.length>0&&t.every(e=>e.trim().length>0)?n():n(Error(l(`mcpModule.oauthManagement.redirectRequired`))),trigger:`change`}],maximumScopes:[{type:`array`,min:1,required:!0,message:l(`mcpModule.oauthManagement.scopesRequired`),trigger:`change`}]}),U=re({approvedScopes:[{type:`array`,min:1,required:!0,message:l(`mcpModule.oauthManagement.grantScopesRequired`),trigger:`change`}]}),W=d({name:`ScopeTags`,props:{scopes:{type:Array,required:!0}},setup:e=>()=>o(`div`,{class:`scope-tags`},e.scopes.map(e=>o(pe,{key:e,type:`info`,size:`small`},()=>l(`mcpModule.oauthManagement.scope.${e}`))))}),G=()=>({name:V.name,redirectUris:[...V.redirectUris],maximumScopes:[...V.maximumScopes]}),Ke=p(G()),qe=i(()=>!(0,Le.isEqual)(G(),Ke.value)),K=()=>{I.value=null,V.name=``,V.redirectUris=[``],V.maximumScopes=[j.READ],R.value?.clearValidate(),Ke.value=G()},q=async e=>{if(qe.value)try{await le.confirm(l(`mcpModule.confirm.discard`),l(`mcpModule.headings.discard`),{confirmButtonText:l(`mcpModule.actions.yes`),cancelButtonText:l(`mcpModule.actions.no`),type:`warning`})}catch{return}N.value=!1,e?.()},Je=()=>{K(),N.value=!0},Ye=e=>{I.value=e,V.name=e.name,V.redirectUris=[...e.redirectUris],V.maximumScopes=[...e.maximumScopes],Ke.value=G(),N.value=!0},Xe=p([...H.approvedScopes]),Ze=i(()=>!(0,Le.isEqual)([...H.approvedScopes],Xe.value)),Qe=()=>{L.value=null,B.value=[],H.approvedScopes=[j.READ],z.value?.clearValidate(),Xe.value=[...H.approvedScopes]},$e=async e=>{if(Ze.value)try{await le.confirm(l(`mcpModule.confirm.discard`),l(`mcpModule.headings.discard`),{confirmButtonText:l(`mcpModule.actions.yes`),cancelButtonText:l(`mcpModule.actions.no`),type:`warning`})}catch{return}P.value=!1,e?.()},et=e=>{L.value=e,B.value=[...e.approvedScopes],H.approvedScopes=[...e.approvedScopes],Xe.value=[...H.approvedScopes],P.value=!0},tt=async()=>{if(await R.value?.validate()){F.value=!0;try{let e={name:V.name,redirectUris:V.redirectUris.map(e=>e.trim()),maximumScopes:[...V.maximumScopes]};I.value?(await T(I.value.id,e),g.success(l(`mcpModule.oauthManagement.messages.updated`))):(await xe(e),g.success(l(`mcpModule.oauthManagement.messages.created`))),N.value=!1}catch{g.error(l(I.value?`mcpModule.oauthManagement.messages.updateFailed`:`mcpModule.oauthManagement.messages.createFailed`))}finally{F.value=!1}}},nt=async()=>{if(!(!L.value||!await z.value?.validate())){F.value=!0;try{await Se(L.value.id,{approvedScopes:[...H.approvedScopes]}),g.success(l(`mcpModule.oauthManagement.messages.grantUpdated`)),P.value=!1}catch{g.error(l(`mcpModule.oauthManagement.messages.grantUpdateFailed`))}finally{F.value=!1}}},J=async(e,t,n)=>{try{await le.confirm(e,l(`mcpModule.actions.revoke`),{type:`warning`,confirmButtonText:l(`mcpModule.actions.revoke`),cancelButtonText:l(`mcpModule.actions.cancel`)}),await t(),g.success(l(n))}catch(e){e!==`cancel`&&e!==`close`&&g.error(l(`mcpModule.oauthManagement.messages.revokeFailed`))}},it=e=>J(l(`mcpModule.oauthManagement.confirm.client`,{name:e.name}),()=>Ce(e.id),`mcpModule.oauthManagement.messages.clientRevoked`),at=e=>J(l(`mcpModule.oauthManagement.confirm.grant`,{name:e.clientName}),()=>E(e.id),`mcpModule.oauthManagement.messages.grantRevoked`),bt=e=>J(l(`mcpModule.oauthManagement.confirm.accessToken`,{name:e.clientName}),()=>ke(e.id),`mcpModule.oauthManagement.messages.accessTokenRevoked`),xt=e=>J(l(`mcpModule.oauthManagement.confirm.refreshFamily`,{name:e.clientName}),()=>Ae(e.id),`mcpModule.oauthManagement.messages.refreshFamilyRevoked`),St=()=>J(l(`mcpModule.oauthManagement.confirm.all`),()=>Ie(),`mcpModule.oauthManagement.messages.allRevoked`),Ct=e=>e.revokedAt?{key:`revoked`,type:`danger`}:new Date(e.expiresAt).getTime()<=Date.now()?{key:`expired`,type:`danger`}:e.active?{key:`active`,type:`success`}:{key:`inactive`,type:`warning`},wt=e=>e.revokedAt===null&&new Date(e.expiresAt).getTime()>Date.now(),Tt=e=>e.active,Y=()=>{be().catch(()=>{})},Et=e=>{if(!(e.sortBy.value===void 0||e.sortDir.value===null))return{prop:e.sortBy.value,order:e.sortDir.value===`desc`?`descending`:`ascending`}},Dt=(e,{prop:t,order:n})=>{e.sortBy.value=n===null?void 0:t,e.sortDir.value=n===null?null:n===`descending`?`desc`:`asc`},Ot=e=>new Intl.DateTimeFormat(void 0,{dateStyle:`medium`,timeStyle:`short`}).format(new Date(e)),X=ot({key:`clients`,items:de,searchable:e=>[e.name,e.clientIdentifier],sortable:{name:e=>e.name,createdAt:e=>new Date(e.createdAt).getTime()},defaultSortBy:`name`,statusOf:e=>e.enabled?`enabled`:`disabled`}),Z=ot({key:`grants`,items:S,searchable:e=>[e.clientName],sortable:{clientName:e=>e.clientName,expiresAt:e=>new Date(e.expiresAt).getTime(),createdAt:e=>new Date(e.createdAt).getTime()},defaultSortBy:`clientName`,statusOf:e=>Ct(e).key}),Q=ot({key:`accessTokens`,items:he,searchable:e=>[e.clientName],sortable:{clientName:e=>e.clientName,expiresAt:e=>new Date(e.expiresAt).getTime()},defaultSortBy:`clientName`,statusOf:e=>new Date(e.expiresAt).getTime()<=Date.now()?`expired`:`active`}),$=ot({key:`refreshFamilies`,items:_e,searchable:e=>[e.clientName],sortable:{clientName:e=>e.clientName,expiresAt:e=>new Date(e.expiresAt).getTime(),activeTokenCount:e=>e.activeTokenCount},defaultSortBy:`clientName`}),kt=[{value:`active`,label:`mcpModule.oauthManagement.status.active`},{value:`inactive`,label:`mcpModule.oauthManagement.status.inactive`},{value:`expired`,label:`mcpModule.oauthManagement.status.expired`},{value:`revoked`,label:`mcpModule.oauthManagement.status.revoked`}],At=[{value:`active`,label:`mcpModule.oauthManagement.status.active`},{value:`expired`,label:`mcpModule.oauthManagement.status.expired`}],jt=[{value:`enabled`,label:`mcpModule.oauthManagement.status.enabled`},{value:`disabled`,label:`mcpModule.oauthManagement.status.disabled`}];return te(()=>void be().catch(()=>void 0)),(r,i)=>(f(),e(x,null,[c(h(ye),{heading:h(l)(`mcpModule.oauthManagement.title`),"sub-heading":h(l)(`mcpModule.oauthManagement.subtitle`),icon:`mdi:shield-key-outline`},{extra:b(()=>[c(h(_),{type:`danger`,plain:``,class:`px-4!`,"data-test-id":`revoke-all-mcp-oauth`,onClick:St},{icon:b(()=>[c(h(t),{icon:`mdi:shield-remove-outline`})]),default:b(()=>[s(` `+y(h(l)(`mcpModule.oauthManagement.revokeAll`)),1)]),_:1}),c(h(_),{type:`primary`,plain:``,class:`px-4! ml-2!`,"data-test-id":`create-mcp-oauth-client`,onClick:Je},{icon:b(()=>[c(h(t),{icon:`mdi:plus`})]),default:b(()=>[s(` `+y(h(l)(`mcpModule.actions.add`)),1)]),_:1})]),_:1},8,[`heading`,`sub-heading`]),n(`div`,st,[c(h(O),{type:`info`,title:h(l)(`mcpModule.oauthManagement.securityTitle`),description:h(l)(`mcpModule.oauthManagement.securityDescription`),closable:!1,"show-icon":``},null,8,[`title`,`description`]),c(h(Pe),{modelValue:Be.value,"onUpdate:modelValue":i[8]||=e=>Be.value=e,class:`grow-1 overflow-hidden flex-1`},{default:b(()=>[c(h(A),{name:`clients`,label:h(l)(`mcpModule.oauthManagement.tabs.clients`),class:`h-full overflow-hidden flex flex-col gap-2`},{default:b(()=>[c(h(k),{shadow:`never`,class:`px-1 py-2 shrink-0`,"body-class":`p-0!`},{default:b(()=>[c(ze,{filters:h(X).filters.value,"onUpdate:filters":i[0]||=e=>h(X).filters.value=e,"filters-active":h(X).filtersActive.value,"search-placeholder":h(l)(`mcpModule.oauthManagement.searchPlaceholder`),"status-options":jt,"test-id":`mcp-oauth-clients`,onResetFilters:h(X).resetFilter},null,8,[`filters`,`filters-active`,`search-placeholder`,`onResetFilters`])]),_:1}),c(h(k),{shadow:`never`,"body-class":`p-0!`},{default:b(()=>[ae((f(),u(h(Ee),{data:h(X).items.value,"default-sort":Et(h(X)),"row-key":`id`,onSortChange:i[1]||=e=>Dt(h(X),e)},{empty:b(()=>[c(Ve,{icon:`mdi:application-cog`,loading:h(C),failed:h(w)!==null,"filters-active":h(X).filtersActive.value,"empty-label":`mcpModule.oauthManagement.empty.clients`,onRetry:Y,onResetFilters:h(X).resetFilter},null,8,[`loading`,`failed`,`filters-active`,`onResetFilters`])]),default:b(()=>[c(h(D),{type:`expand`},{default:b(t=>[n(`div`,ct,[n(`div`,null,[n(`strong`,null,y(h(l)(`mcpModule.oauthManagement.clientId`))+`:`,1),s(` `+y(t.row.clientIdentifier),1)]),n(`div`,null,[n(`strong`,null,y(h(l)(`mcpModule.oauthManagement.redirectUris`))+`:`,1)]),n(`ul`,null,[(f(!0),e(x,null,m(t.row.redirectUris,t=>(f(),e(`li`,{key:t},y(t),1))),128))])])]),_:1}),c(h(D),{prop:`name`,sortable:`custom`,"sort-orders":[`ascending`,`descending`],label:h(l)(`mcpModule.oauthManagement.columns.client`),"min-width":`180`},null,8,[`label`]),c(h(D),{label:h(l)(`mcpModule.oauthManagement.columns.status`),width:`120`},{default:b(e=>[c(h(pe),{type:e.row.enabled?`success`:`warning`},{default:b(()=>[s(y(h(l)(`mcpModule.oauthManagement.status.${e.row.enabled?`active`:`disabled`}`)),1)]),_:2},1032,[`type`])]),_:1},8,[`label`]),c(h(D),{label:h(l)(`mcpModule.oauthManagement.columns.scopes`),"min-width":`250`},{default:b(e=>[c(h(W),{scopes:e.row.maximumScopes},null,8,[`scopes`])]),_:1},8,[`label`]),c(h(D),{fixed:`right`,label:h(l)(`mcpModule.oauthManagement.columns.actions`),width:`190`},{default:b(e=>[c(h(_),{size:`small`,onClick:t=>Ye(e.row)},{default:b(()=>[s(y(h(l)(`mcpModule.actions.edit`)),1)]),_:1},8,[`onClick`]),c(h(_),{size:`small`,type:`danger`,plain:``,disabled:!e.row.enabled,onClick:t=>it(e.row)},{default:b(()=>[s(y(h(l)(`mcpModule.actions.revoke`)),1)]),_:1},8,[`disabled`,`onClick`])]),_:1},8,[`label`])]),_:1},8,[`data`,`default-sort`])),[[h(Fe),h(C)]])]),_:1})]),_:1},8,[`label`]),c(h(A),{name:`grants`,label:h(l)(`mcpModule.oauthManagement.tabs.grants`),class:`h-full overflow-hidden flex flex-col gap-2`},{default:b(()=>[c(h(k),{shadow:`never`,class:`px-1 py-2 shrink-0`,"body-class":`p-0!`},{default:b(()=>[c(ze,{filters:h(Z).filters.value,"onUpdate:filters":i[2]||=e=>h(Z).filters.value=e,"filters-active":h(Z).filtersActive.value,"search-placeholder":h(l)(`mcpModule.oauthManagement.searchPlaceholder`),"status-options":kt,"test-id":`mcp-oauth-grants`,onResetFilters:h(Z).resetFilter},null,8,[`filters`,`filters-active`,`search-placeholder`,`onResetFilters`])]),_:1}),c(h(k),{shadow:`never`,"body-class":`p-0!`},{default:b(()=>[ae((f(),u(h(Ee),{data:h(Z).items.value,"default-sort":Et(h(Z)),"row-key":`id`,onSortChange:i[3]||=e=>Dt(h(Z),e)},{empty:b(()=>[c(Ve,{icon:`mdi:key-chain`,loading:h(C),failed:h(w)!==null,"filters-active":h(Z).filtersActive.value,"empty-label":`mcpModule.oauthManagement.empty.grants`,onRetry:Y,onResetFilters:h(Z).resetFilter},null,8,[`loading`,`failed`,`filters-active`,`onResetFilters`])]),default:b(()=>[c(h(D),{prop:`clientName`,sortable:`custom`,"sort-orders":[`ascending`,`descending`],label:h(l)(`mcpModule.oauthManagement.columns.client`),"min-width":`170`},null,8,[`label`]),c(h(D),{label:h(l)(`mcpModule.oauthManagement.columns.status`),width:`120`},{default:b(e=>[c(h(pe),{type:Ct(e.row).type},{default:b(()=>[s(y(h(l)(`mcpModule.oauthManagement.status.${Ct(e.row).key}`)),1)]),_:2},1032,[`type`])]),_:1},8,[`label`]),c(h(D),{label:h(l)(`mcpModule.oauthManagement.columns.scopes`),"min-width":`250`},{default:b(e=>[c(h(W),{scopes:e.row.approvedScopes},null,8,[`scopes`])]),_:1},8,[`label`]),c(h(D),{label:h(l)(`mcpModule.oauthManagement.columns.expires`),width:`190`},{default:b(e=>[s(y(Ot(e.row.expiresAt)),1)]),_:1},8,[`label`]),c(h(D),{fixed:`right`,label:h(l)(`mcpModule.oauthManagement.columns.actions`),width:`190`},{default:b(e=>[c(h(_),{size:`small`,disabled:!Tt(e.row),onClick:t=>et(e.row)},{default:b(()=>[s(y(h(l)(`mcpModule.actions.edit`)),1)]),_:1},8,[`disabled`,`onClick`]),c(h(_),{size:`small`,type:`danger`,plain:``,disabled:!wt(e.row),onClick:t=>at(e.row)},{default:b(()=>[s(y(h(l)(`mcpModule.actions.revoke`)),1)]),_:1},8,[`disabled`,`onClick`])]),_:1},8,[`label`])]),_:1},8,[`data`,`default-sort`])),[[h(Fe),h(C)]])]),_:1})]),_:1},8,[`label`]),c(h(A),{name:`accessTokens`,label:h(l)(`mcpModule.oauthManagement.tabs.accessTokens`),class:`h-full overflow-hidden flex flex-col gap-2`},{default:b(()=>[c(h(k),{shadow:`never`,class:`px-1 py-2 shrink-0`,"body-class":`p-0!`},{default:b(()=>[c(ze,{filters:h(Q).filters.value,"onUpdate:filters":i[4]||=e=>h(Q).filters.value=e,"filters-active":h(Q).filtersActive.value,"search-placeholder":h(l)(`mcpModule.oauthManagement.searchPlaceholder`),"status-options":At,"test-id":`mcp-oauth-accessTokens`,onResetFilters:h(Q).resetFilter},null,8,[`filters`,`filters-active`,`search-placeholder`,`onResetFilters`])]),_:1}),c(h(k),{shadow:`never`,"body-class":`p-0!`},{default:b(()=>[ae((f(),u(h(Ee),{data:h(Q).items.value,"default-sort":Et(h(Q)),"row-key":`id`,onSortChange:i[5]||=e=>Dt(h(Q),e)},{empty:b(()=>[c(Ve,{icon:`mdi:key`,loading:h(C),failed:h(w)!==null,"filters-active":h(Q).filtersActive.value,"empty-label":`mcpModule.oauthManagement.empty.accessTokens`,onRetry:Y,onResetFilters:h(Q).resetFilter},null,8,[`loading`,`failed`,`filters-active`,`onResetFilters`])]),default:b(()=>[c(h(D),{prop:`clientName`,sortable:`custom`,"sort-orders":[`ascending`,`descending`],label:h(l)(`mcpModule.oauthManagement.columns.client`),"min-width":`170`},null,8,[`label`]),c(h(D),{label:h(l)(`mcpModule.oauthManagement.columns.scopes`),"min-width":`250`},{default:b(e=>[c(h(W),{scopes:e.row.scopes},null,8,[`scopes`])]),_:1},8,[`label`]),c(h(D),{label:h(l)(`mcpModule.oauthManagement.columns.expires`),width:`190`},{default:b(e=>[s(y(Ot(e.row.expiresAt)),1)]),_:1},8,[`label`]),c(h(D),{fixed:`right`,label:h(l)(`mcpModule.oauthManagement.columns.actions`),width:`120`},{default:b(e=>[c(h(_),{size:`small`,type:`danger`,plain:``,onClick:t=>bt(e.row)},{default:b(()=>[s(y(h(l)(`mcpModule.actions.revoke`)),1)]),_:1},8,[`onClick`])]),_:1},8,[`label`])]),_:1},8,[`data`,`default-sort`])),[[h(Fe),h(C)]])]),_:1})]),_:1},8,[`label`]),c(h(A),{name:`refreshFamilies`,label:h(l)(`mcpModule.oauthManagement.tabs.refreshFamilies`),class:`h-full overflow-hidden flex flex-col gap-2`},{default:b(()=>[c(h(k),{shadow:`never`,class:`px-1 py-2 shrink-0`,"body-class":`p-0!`},{default:b(()=>[c(ze,{filters:h($).filters.value,"onUpdate:filters":i[6]||=e=>h($).filters.value=e,"filters-active":h($).filtersActive.value,"search-placeholder":h(l)(`mcpModule.oauthManagement.searchPlaceholder`),"status-options":[],"test-id":`mcp-oauth-refreshFamilies`,onResetFilters:h($).resetFilter},null,8,[`filters`,`filters-active`,`search-placeholder`,`onResetFilters`])]),_:1}),c(h(k),{shadow:`never`,"body-class":`p-0!`},{default:b(()=>[ae((f(),u(h(Ee),{data:h($).items.value,"default-sort":Et(h($)),"row-key":`id`,onSortChange:i[7]||=e=>Dt(h($),e)},{empty:b(()=>[c(Ve,{icon:`mdi:key-link`,loading:h(C),failed:h(w)!==null,"filters-active":h($).filtersActive.value,"empty-label":`mcpModule.oauthManagement.empty.refreshFamilies`,onRetry:Y,onResetFilters:h($).resetFilter},null,8,[`loading`,`failed`,`filters-active`,`onResetFilters`])]),default:b(()=>[c(h(D),{prop:`clientName`,sortable:`custom`,"sort-orders":[`ascending`,`descending`],label:h(l)(`mcpModule.oauthManagement.columns.client`),"min-width":`180`},null,8,[`label`]),c(h(D),{prop:`activeTokenCount`,sortable:`custom`,"sort-orders":[`ascending`,`descending`],label:h(l)(`mcpModule.oauthManagement.columns.activeTokens`),width:`140`},null,8,[`label`]),c(h(D),{label:h(l)(`mcpModule.oauthManagement.columns.expires`),width:`190`},{default:b(e=>[s(y(Ot(e.row.expiresAt)),1)]),_:1},8,[`label`]),c(h(D),{fixed:`right`,label:h(l)(`mcpModule.oauthManagement.columns.actions`),width:`120`},{default:b(e=>[c(h(_),{size:`small`,type:`danger`,plain:``,onClick:t=>xt(e.row)},{default:b(()=>[s(y(h(l)(`mcpModule.actions.revoke`)),1)]),_:1},8,[`onClick`])]),_:1},8,[`label`])]),_:1},8,[`data`,`default-sort`])),[[h(Fe),h(C)]])]),_:1})]),_:1},8,[`label`])]),_:1},8,[`modelValue`])]),c(h(Ne),{modelValue:N.value,"onUpdate:modelValue":i[14]||=e=>N.value=e,"show-close":!1,"with-header":!1,size:h(oe)?`40%`:`100%`,"before-close":q,"data-test-id":`mcp-oauth-client-form-drawer`,onClosed:K},{default:b(()=>[n(`div`,lt,[c(h(we),{"menu-button-hidden":``},{heading:b(()=>[c(h(Te),null,{icon:b(()=>[c(h(t),{icon:`mdi:shield-key-outline`})]),title:b(()=>[n(`span`,ut,y(I.value?h(l)(`mcpModule.oauthManagement.editClient`):h(l)(`mcpModule.oauthManagement.createClient`)),1)]),subtitle:b(()=>[n(`span`,dt,y(h(l)(`mcpModule.oauthManagement.clientFormSubtitle`)),1)]),_:1})]),"button-right":b(()=>[c(h(fe),{align:h(ce).RIGHT,class:`mr-2`,onClick:i[9]||=()=>q()},{icon:b(()=>[c(h(a),null,{default:b(()=>[c(h(t),{icon:`mdi:close`})]),_:1})]),_:1},8,[`align`])]),_:1}),c(h(ue),{class:`grow-1 p-2 md:px-4`},{default:b(()=>[c(h(Oe),{ref_key:`clientFormEl`,ref:R,model:V,rules:Ge,"label-position":`top`},{default:b(()=>[c(h(De),{label:h(l)(`mcpModule.oauthManagement.name`),prop:`name`},{default:b(()=>[c(h(me),{modelValue:V.name,"onUpdate:modelValue":i[10]||=e=>V.name=e,maxlength:`100`},null,8,[`modelValue`])]),_:1},8,[`label`]),c(h(De),{label:h(l)(`mcpModule.oauthManagement.redirectUris`),prop:`redirectUris`},{default:b(()=>[n(`div`,ft,[(f(!0),e(x,null,m(V.redirectUris,(n,r)=>(f(),e(`div`,{key:r,class:`redirect-row`},[c(h(me),{modelValue:V.redirectUris[r],"onUpdate:modelValue":e=>V.redirectUris[r]=e},null,8,[`modelValue`,`onUpdate:modelValue`]),c(h(_),{"aria-label":h(l)(`mcpModule.actions.removeOrigin`),disabled:V.redirectUris.length===1,onClick:e=>V.redirectUris.splice(r,1)},{default:b(()=>[c(h(t),{icon:`mdi:delete-outline`})]),_:1},8,[`aria-label`,`disabled`,`onClick`])]))),128)),c(h(_),{onClick:i[11]||=e=>V.redirectUris.push(``)},{default:b(()=>[c(h(t),{icon:`mdi:plus`}),s(` `+y(h(l)(`mcpModule.oauthManagement.addRedirect`)),1)]),_:1})])]),_:1},8,[`label`]),c(h(De),{label:h(l)(`mcpModule.oauthManagement.columns.scopes`),prop:`maximumScopes`},{default:b(()=>[c(h(je),{modelValue:V.maximumScopes,"onUpdate:modelValue":i[12]||=e=>V.maximumScopes=e},{default:b(()=>[(f(!0),e(x,null,m(h(He),e=>(f(),u(h(Me),{key:e,value:e},{default:b(()=>[s(y(h(l)(`mcpModule.oauthManagement.scope.${e}`)),1)]),_:2},1032,[`value`]))),128))]),_:1},8,[`modelValue`])]),_:1},8,[`label`]),Ue.value?(f(),u(h(O),{key:0,type:`warning`,description:h(l)(`mcpModule.oauthManagement.physicalWarning`),closable:!1,"show-icon":``},null,8,[`description`])):v(``,!0)]),_:1},8,[`model`,`rules`])]),_:1}),n(`div`,pt,[n(`div`,mt,[c(h(_),{link:``,class:`mr-2`,"data-test-id":`cancel-mcp-oauth-client-form`,onClick:i[13]||=()=>q()},{default:b(()=>[s(y(qe.value?h(l)(`mcpModule.actions.discard`):h(l)(`mcpModule.actions.close`)),1)]),_:1}),c(h(_),{type:`primary`,loading:F.value,disabled:F.value||!qe.value,"data-test-id":`save-mcp-oauth-client-form`,onClick:tt},{default:b(()=>[s(y(h(l)(`mcpModule.actions.save`)),1)]),_:1},8,[`loading`,`disabled`])])])])]),_:1},8,[`modelValue`,`size`]),c(h(Ne),{modelValue:P.value,"onUpdate:modelValue":i[18]||=e=>P.value=e,"show-close":!1,"with-header":!1,size:h(oe)?`40%`:`100%`,"before-close":$e,"data-test-id":`mcp-oauth-grant-form-drawer`,onClosed:Qe},{default:b(()=>[n(`div`,ht,[c(h(we),{"menu-button-hidden":``},{heading:b(()=>[c(h(Te),null,{icon:b(()=>[c(h(t),{icon:`mdi:shield-key-outline`})]),title:b(()=>[n(`span`,gt,y(h(l)(`mcpModule.oauthManagement.editGrant`)),1)]),subtitle:b(()=>[n(`span`,_t,y(h(l)(`mcpModule.oauthManagement.grantFormSubtitle`)),1)]),_:1})]),"button-right":b(()=>[c(h(fe),{align:h(ce).RIGHT,class:`mr-2`,onClick:i[15]||=()=>$e()},{icon:b(()=>[c(h(a),null,{default:b(()=>[c(h(t),{icon:`mdi:close`})]),_:1})]),_:1},8,[`align`])]),_:1}),c(h(ue),{class:`grow-1 p-2 md:px-4`},{default:b(()=>[c(h(Oe),{ref_key:`grantFormEl`,ref:z,model:H,rules:U,"label-position":`top`},{default:b(()=>[c(h(De),{label:h(l)(`mcpModule.oauthManagement.columns.scopes`),prop:`approvedScopes`},{default:b(()=>[c(h(je),{modelValue:H.approvedScopes,"onUpdate:modelValue":i[16]||=e=>H.approvedScopes=e},{default:b(()=>[(f(!0),e(x,null,m(B.value,e=>(f(),u(h(Me),{key:e,value:e,disabled:e===h(j).OFFLINE_ACCESS},{default:b(()=>[s(y(h(l)(`mcpModule.oauthManagement.scope.${e}`)),1)]),_:2},1032,[`value`,`disabled`]))),128))]),_:1},8,[`modelValue`])]),_:1},8,[`label`]),We.value?(f(),u(h(O),{key:0,type:`warning`,description:h(l)(`mcpModule.oauthManagement.physicalWarning`),closable:!1,"show-icon":``},null,8,[`description`])):v(``,!0),c(h(O),{type:`info`,description:h(l)(`mcpModule.oauthManagement.grantReductionNotice`),closable:!1,"show-icon":``},null,8,[`description`])]),_:1},8,[`model`,`rules`])]),_:1}),n(`div`,vt,[n(`div`,yt,[c(h(_),{link:``,class:`mr-2`,"data-test-id":`cancel-mcp-oauth-grant-form`,onClick:i[17]||=()=>$e()},{default:b(()=>[s(y(Ze.value?h(l)(`mcpModule.actions.discard`):h(l)(`mcpModule.actions.close`)),1)]),_:1}),c(h(_),{type:`primary`,loading:F.value,disabled:F.value||!Ze.value,"data-test-id":`save-mcp-oauth-grant-form`,onClick:nt},{default:b(()=>[s(y(h(l)(`mcpModule.actions.save`)),1)]),_:1},8,[`loading`,`disabled`])])])])]),_:1},8,[`modelValue`,`size`])],64))}}),[[`__scopeId`,`data-v-d5710efe`]]);export{bt as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import"./rolldown-runtime-QTnfLwEv.js";import{Ar as e,D as t,Dr as n,Er as r,H as i,Mr as a,Nr as o,Or as s,Pr as c,Qr as l,Si as u,T as d,Wr as f,_i as p,ci as m,ji as h,kr as g,qi as _,ui as v,x as ee,xr as te}from"./icon-with-child-CgZMNB3F.js";import{t as y}from"./vue-meta.esm-browser.min-C5z7o_np.js";import{Cr as b,K as x,Rt as S,Sr as C,Tt as w,hr as T,m as ne,mr as re,wr as ie,xr as E}from"./common-CEAYa_VX.js";import{t as ae}from"./drawer-Bv6YcfZX.js";import{a as oe,n as D,o as se,s as ce}from"./notifications.exceptions-CTWKr2hv.js";var O={class:`uppercase`},k={class:`grow-1 flex flex-col gap-2 lt-sm:mx-1 sm:mx-2 lt-sm:mb-1 sm:mb-2 overflow-hidden mt-2`},A={class:`flex flex-col h-full`},j=c({name:`ViewNotifications`,__name:`view-notifications`,setup(c){let j=ee(),{t:M}=d();y({title:M(`notificationsModule.meta.notifications.list.title`)});let{isMDDevice:N,isLGDevice:P}=T(),{notifications:F,hasMore:I,areLoading:L,filters:R,filtersActive:z,fetchNotifications:B,loadMoreNotifications:V,resetFilters:H}=x(),{markRead:U,markAllRead:le,dismiss:W,remove:ue,bulkMarkUnread:de,bulkDismiss:fe,bulkRemove:pe}=S(),G=u(null),K=u(!1),q=u(!1),J=r(()=>F.value.find(e=>e.id===G.value)??null),me=r(()=>[{label:M(`notificationsModule.breadcrumbs.notifications.list`),route:j.resolve({name:w.NOTIFICATIONS})}]),he=e=>{G.value=e,K.value=!0},ge=()=>{V().catch(e=>{throw new D(`Something went wrong`,e)})},Y=()=>{H()},X=()=>{q.value=!0},_e=(e,t)=>{U(e,t).then(()=>{if(R.value.unread&&t)return B()}).catch(e=>{throw new D(`Something went wrong`,e)})},Z=e=>F.value.find(t=>t.id===e)?.dismissedAt?.getTime()??null,Q=e=>{let t=Z(e);W(e,!0).then(()=>{if(R.value.status===`active`&&Z(e)!==t)return B()}).catch(e=>{throw new D(`Something went wrong`,e)})},$=e=>{ue(e).catch(e=>{throw new D(`Something went wrong`,e)})},ve=e=>typeof e==`boolean`?e:e===`mutated`,ye=async(e,t)=>{let n;switch(e){case`mark-read`:n=await le(t);break;case`mark-unread`:n=await de(t);break;case`dismiss`:n=await fe(t);break;case`delete`:n=await pe(t);break;default:return}ve(n)&&await B()},be=(e,t)=>{ye(e,t).catch(e=>{throw new D(`Something went wrong`,e)})};return m(J,e=>{e===null&&(K.value=!1)}),m(K,e=>{e||(G.value=null)}),f(()=>{B().catch(e=>{throw new D(`Something went wrong`,e)})}),(r,c)=>(l(),e(te,null,[o(h(re),{items:me.value},null,8,[`items`]),h(N)?g(``,!0):(l(),s(h(E),{key:0,teleport:``},{icon:v(()=>[o(h(t),{icon:`mdi:bell-outline`,class:`w-[20px] h-[20px]`})]),title:v(()=>[a(_(h(M)(`notificationsModule.headings.notifications.list`)),1)]),subtitle:v(()=>[a(_(h(M)(`notificationsModule.subHeadings.notifications.list`)),1)]),_:1})),h(N)?g(``,!0):(l(),s(h(C),{key:1,align:h(b).LEFT,teleport:``,small:``,onClick:c[0]||=e=>h(j).push(`/`)},{icon:v(()=>[o(h(i),{size:24},{default:v(()=>[o(h(t),{icon:`mdi:chevron-left`})]),_:1})]),default:v(()=>[n(`span`,O,_(h(M)(`application.buttons.home.title`)),1)]),_:1},8,[`align`])),o(h(ne),{heading:h(M)(`notificationsModule.headings.notifications.list`),"sub-heading":h(M)(`notificationsModule.subHeadings.notifications.list`),icon:`mdi:bell-outline`},null,8,[`heading`,`sub-heading`]),n(`div`,k,[o(h(se),{filters:h(R),"onUpdate:filters":c[1]||=e=>p(R)?R.value=e:null,items:h(F),"filters-active":h(z),"has-more":h(I),loading:h(L),onDetail:he,onDismiss:Q,onRemove:$,onLoadMore:ge,onResetFilters:Y,onAdjustList:X,onBulkAction:be},null,8,[`filters`,`items`,`filters-active`,`has-more`,`loading`])]),o(h(ae),{modelValue:q.value,"onUpdate:modelValue":c[4]||=e=>q.value=e,title:h(M)(`notificationsModule.headings.notifications.adjustFilters`),"show-close":!1,"with-header":!1,size:h(P)?`300px`:`100%`},{default:v(()=>[n(`div`,A,[o(h(ie),{"menu-button-hidden":``},{heading:v(()=>[o(h(E),null,{icon:v(()=>[o(h(t),{icon:`mdi:filter`})]),title:v(()=>[a(_(h(M)(`notificationsModule.headings.notifications.adjustFilters`)),1)]),subtitle:v(()=>[a(_(h(M)(`notificationsModule.subHeadings.notifications.adjustFilters`)),1)]),_:1})]),"button-right":v(()=>[o(h(C),{align:h(b).RIGHT,class:`mr-2`,"aria-label":h(M)(`notificationsModule.buttons.close.title`),onClick:c[2]||=e=>q.value=!1},{icon:v(()=>[o(h(i),null,{default:v(()=>[o(h(t),{icon:`mdi:close`})]),_:1})]),_:1},8,[`align`,`aria-label`])]),_:1}),q.value?(l(),s(h(oe),{key:0,filters:h(R),"onUpdate:filters":c[3]||=e=>p(R)?R.value=e:null,"filters-active":h(z),onResetFilters:Y},null,8,[`filters`,`filters-active`])):g(``,!0)])]),_:1},8,[`modelValue`,`title`,`size`]),o(h(ce),{modelValue:K.value,"onUpdate:modelValue":c[5]||=e=>K.value=e,notification:J.value,onMarkRead:_e,onDismiss:Q,onRemove:$},null,8,[`modelValue`,`notification`])],64))}});export{j as default};
|