@fastybird/smart-panel-admin 1.1.0-alpha.2 → 1.1.0-alpha.20
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-I-oSc4A8.js} +1 -1
- package/dist/assets/{card-add-form-hQfcolyj.js → card-add-form-CwVNfOa0.js} +1 -1
- package/dist/assets/{card-edit-form-BPs9Aljn.js → card-edit-form-CSyu6tst.js} +1 -1
- package/dist/assets/{checkbox-DKrpi0d7.js → checkbox-CtqO8Xm5.js} +1 -1
- package/dist/assets/{clamp-BIBuaymK.js → clamp-_tCsf9IO.js} +1 -1
- package/dist/assets/{col-Brj0AIcp.js → col-CQn4VXnk.js} +1 -1
- package/dist/assets/{collapse-CcS8OeLM.js → collapse-hdC45R5w.js} +1 -1
- package/dist/assets/{common-CEAYa_VX.js → common-D4Z2wgrj.js} +24 -24
- package/dist/assets/components-2Mgp_aM2.js +1 -0
- package/dist/assets/components-C29cEP3E.js +1 -0
- package/dist/assets/components-ChpIwZ2c.js +1 -0
- package/dist/assets/components-CzhROY3R.js +1 -0
- package/dist/assets/components-D6u7Ijb4.js +1 -0
- package/dist/assets/components-DMv2ePKp.js +8 -0
- package/dist/assets/components-DOu6SAYU.js +1 -0
- package/dist/assets/components-EQDhXTcZ.js +2 -0
- package/dist/assets/components-d5kPKt7X.js +6 -0
- package/dist/assets/components-exNTKYiX.js +1 -0
- package/dist/assets/composables-2NuyfNXO.js +1 -0
- package/dist/assets/{composables-CO2f80jd.js → composables-B3z1DCa7.js} +1 -1
- package/dist/assets/composables-BVhAEToZ.js +1 -0
- package/dist/assets/{composables-DIjPmeHV.js → composables-BgJl3zKR.js} +1 -1
- package/dist/assets/composables-CF8Jf15i.js +1 -0
- package/dist/assets/composables-CPxmcJSb2.js +1 -0
- package/dist/assets/composables-CYT0Ry4D.js +1 -0
- package/dist/assets/{composables-o5wEPPAf.js → composables-Cpk78oG1.js} +1 -1
- package/dist/assets/composables-D2O7i4W5.js +1 -0
- package/dist/assets/composables-DLFP4TLA.js +1 -0
- package/dist/assets/{composables-D5CRUz8s.js → composables-DeXiqZuU.js} +1 -1
- package/dist/assets/config-DAgVgX46.js +2 -0
- package/dist/assets/{dashboard-CQWK08VY.js → dashboard-YUP0xrqH.js} +2 -2
- package/dist/assets/dashboard.types-CkyEAwdv.js +1 -0
- package/dist/assets/{data-source-edit-form-Ba0Rox_i.js → data-source-edit-form-BlyvQ5Mk.js} +1 -1
- package/dist/assets/{descriptions-Bk8rb6i3.js → descriptions-BHa0Pjk7.js} +1 -1
- package/dist/assets/devices-CtyyospS.js +2 -0
- package/dist/assets/{devices-virtual.constants-Ckcs-m8t.js → devices-virtual.constants-D0L6zhgQ.js} +1 -1
- package/dist/assets/devices.constants-DHQemX04.js +1 -0
- package/dist/assets/{dialog-BKnLpTNm.js → dialog-4clb5GeY.js} +1 -1
- package/dist/assets/{drawer-Bv6YcfZX.js → drawer-Dnlv6Zc7.js} +1 -1
- package/dist/assets/form-Wa6uIXea.js +12 -0
- package/dist/assets/index-BjcVMorB.js +11 -0
- package/dist/assets/index-CV45di_J.css +1 -0
- package/dist/assets/input-number-Cqu-p2BC.js +1 -0
- package/dist/assets/integration-config-dialog-DWcOAIcd.js +1 -0
- package/dist/assets/{keys-BYonWGX0.js → keys-BMDz3FOI.js} +1 -1
- package/dist/assets/{keys-DghNVBR5.js → keys-DMEIfK2a.js} +1 -1
- package/dist/assets/{layout-config-Cjya-WMb.js → layout-config-TRoVTCgx.js} +1 -1
- package/dist/assets/{layout-default-CS5XwxjF.js → layout-default-CUOZ4MAi.js} +1 -1
- package/dist/assets/{layout-lock-CoJt4ng5.js → layout-lock-C-s1eZ35.js} +1 -1
- package/dist/assets/layout-profile-CMTEn6TJ.js +1 -0
- package/dist/assets/{layout-profile-DaySzWNs.js → layout-profile-D1uL3lv-.js} +1 -1
- package/dist/assets/layout-sign-0Gx0uVg6.js +1 -0
- package/dist/assets/{layout-sign-BR-IRKTg.js → layout-sign-MILHx4Av.js} +1 -1
- package/dist/assets/{list-data-sources-adjust-C1BWaGAY.js → list-data-sources-adjust-BRhmPWJF.js} +1 -1
- package/dist/assets/{list-locations-B_k17JmN.js → list-locations-CE_JzOaE.js} +1 -1
- package/dist/assets/{list-users-Dtqpo3YK.js → list-users-1kC5_j5X.js} +1 -1
- package/dist/assets/logs-entries.transformers-Bp2zoFAY.js +1 -0
- package/dist/assets/{mcp.exceptions-DqhuYDrK.js → mcp.exceptions-cay0WaYC.js} +1 -1
- package/dist/assets/notifications.exceptions-Deqj0F89.js +1 -0
- package/dist/assets/{omit-DRbsINX4.js → omit-Dl8Tg7dR.js} +1 -1
- package/dist/assets/{page-configure-Bt3Zbbmn.js → page-configure-Dn69RQ5P.js} +1 -1
- package/dist/assets/{page-configure-CVQE_kOC.js → page-configure-Dz17Sp3H.js} +1 -1
- package/dist/assets/{pagination-CFSm62Hu.js → pagination-BFOA9Lqt.js} +1 -1
- package/dist/assets/{radio-Cmy69XUu.js → radio-DvF3ArlX.js} +1 -1
- package/dist/assets/{scene-add-form-CyeR3pxj.js → scene-add-form-telggkNn.js} +1 -1
- package/dist/assets/{scene-edit-form-dBV9baT5.js → scene-edit-form-D6fUKT6Q.js} +1 -1
- package/dist/assets/schemas.utils-fK_cgNcT.js +1 -0
- package/dist/assets/select-CTZp3DyT.js +1 -0
- package/dist/assets/{select-data-source-plugin-CgTE90rj.js → select-data-source-plugin-BMvwgPrL.js} +1 -1
- package/dist/assets/{slider-B7Mhws2_.js → slider-CaVuBQD9.js} +1 -1
- package/dist/assets/{spaces-DUnXUSuq.js → spaces-DVdwHxsH.js} +2 -2
- package/dist/assets/spaces-home-control.constants-BgmjmN0q.js +1 -0
- package/dist/assets/{steps-ChWGGNoh.js → steps-DuddYjrb.js} +1 -1
- package/dist/assets/system-BmVtHSSn.js +2 -0
- package/dist/assets/{table-CP4k6PuT.js → table-CeNNpGH7.js} +1 -1
- package/dist/assets/{tabs-BlmPldJW.js → tabs-CXWSFwGj.js} +1 -1
- package/dist/assets/{tile-detail-BbYkd7G4.js → tile-detail-DrEapGjL.js} +1 -1
- package/dist/assets/{tile-edit-form-DiShECn4.js → tile-edit-form-CCaFW-XS.js} +1 -1
- package/dist/assets/types-CE88rjDb.js +1 -0
- package/dist/assets/types-gvL9TxC-.js +1 -0
- package/dist/assets/{use-dialog-BFPWhCwQ.js → use-dialog-Dy1ldJel.js} +1 -1
- package/dist/assets/{use-ordered-children-CbAW48y2.js → use-ordered-children-DEKYVxDi.js} +1 -1
- package/dist/assets/{useBuddyChat-BQeijZgm.js → useBuddyChat-BAy2-Ry5.js} +1 -1
- package/dist/assets/{useConfigModule-l8zp4LY1.js → useConfigModule-CJHOZRLY.js} +1 -1
- package/dist/assets/{useDataSources-CI2pLb0w.js → useDataSources-XOQc7nLH.js} +1 -1
- package/dist/assets/{useDevicesPlugins-IYuPoZmZ.js → useDevicesPlugins-DEYJEOHX.js} +1 -1
- package/dist/assets/useEventBus-CPELSGhQ.js +1 -0
- package/dist/assets/useExtensions-ChNl1Nvt.js +1 -0
- package/dist/assets/useGeolocation-Corncs7O.js +2 -0
- package/dist/assets/useLocation-BpcB0mED.js +1 -0
- package/dist/assets/{useMcpClients-D44DSCoV.js → useMcpClients-DLp6nlKS.js} +1 -1
- package/dist/assets/{useModule-CGQr8Yht.js → useModule-BzC-HPHF.js} +1 -1
- package/dist/assets/{useModules-BqwGbI5l.js → useModules-C_VhvJHC.js} +1 -1
- package/dist/assets/{useNumberFormat-CLztaSFk.js → useNumberFormat-BR5R6xq8.js} +1 -1
- package/dist/assets/{usePage-D3Y3z-Z-.js → usePage-CafNhHit.js} +1 -1
- package/dist/assets/{usePersonalTokens-DwMWVRNS.js → usePersonalTokens-CzAHNnO2.js} +1 -1
- package/dist/assets/{usePlugin-DQ16ENWC.js → usePlugin-CQedVYWO.js} +1 -1
- package/dist/assets/{usePlugins-BAUrRkxK.js → usePlugins-CLZiBdYY.js} +1 -1
- package/dist/assets/useSpaces-CPYe_mwZ.js +1 -0
- package/dist/assets/{useUuid-B2AwaEQg.js → useUuid-D7PWqngt.js} +1 -1
- package/dist/assets/{view-buddy-chat-DpaYzexP.js → view-buddy-chat-BedBKSKL.js} +1 -1
- package/dist/assets/{view-card-add-BcIFVzzf.js → view-card-add-pt5m96qu.js} +1 -1
- package/dist/assets/view-card-edit-DXjl5oBU.js +1 -0
- package/dist/assets/{view-channel-vLXMY5of.js → view-channel-64nczy-k.js} +1 -1
- package/dist/assets/{view-channel-add-D9FB9I0d.js → view-channel-add-LCuEsNGM.js} +1 -1
- package/dist/assets/{view-channel-edit-BMC2n_jY.js → view-channel-edit-VfS9LNDh.js} +1 -1
- package/dist/assets/{view-channel-property-add-DMGQZ9QS.js → view-channel-property-add-DuQwYddG.js} +1 -1
- package/dist/assets/view-channel-property-edit-D0tBEGc6.js +1 -0
- package/dist/assets/view-channels-DVajMl_q.js +1 -0
- package/dist/assets/view-config-module-edit-B5Bac46h.js +1 -0
- package/dist/assets/{view-config-modules-Culfv_bK.js → view-config-modules-Bay5nICT.js} +1 -1
- package/dist/assets/view-config-plugin-edit-C7tkLRb8.js +1 -0
- package/dist/assets/{view-config-plugins-CK0vdPmj.js → view-config-plugins-Cb7qeQ6t.js} +1 -1
- package/dist/assets/view-data-source-add-BwwcOapn.js +1 -0
- package/dist/assets/{view-data-source-add-_7ip7mrf.js → view-data-source-add-C-YsEqNf.js} +1 -1
- package/dist/assets/{view-data-source-edit-CoUrprKG.js → view-data-source-edit-3a7uStGk.js} +1 -1
- package/dist/assets/{view-data-source-edit-DrlMJPDn.js → view-data-source-edit-Bjpg7BqJ.js} +1 -1
- package/dist/assets/view-device-BaGiuvzW.js +1 -0
- package/dist/assets/view-device-add-BtVlgtjS.js +1 -0
- package/dist/assets/view-device-control-BeeMDcA5.js +1 -0
- package/dist/assets/{view-device-edit-DoQRQB09.js → view-device-edit-BihbDRAo.js} +1 -1
- package/dist/assets/{view-devices-_LNxDPyf.js → view-devices-BXx_kR8z.js} +1 -1
- package/dist/assets/{view-devices-wizard-DNVtEru3.js → view-devices-wizard-ChTErg-2.js} +1 -1
- package/dist/assets/{view-display-pQhEo0QJ.js → view-display-BPX9RiY5.js} +1 -1
- package/dist/assets/{view-display-edit-KWE_nXux.js → view-display-edit-C1nr56vB.js} +1 -1
- package/dist/assets/{view-display-tokens-BkuVjpd3.js → view-display-tokens-ChsaJMyS.js} +1 -1
- package/dist/assets/{view-displays-CHfrmtje.js → view-displays-DvlfLyrG.js} +1 -1
- package/dist/assets/view-extension-detail-D17kM3Vm.js +1 -0
- package/dist/assets/{view-extensions-BEUE9DZM.js → view-extensions-DrR-zIpE.js} +1 -1
- package/dist/assets/view-location-BOJ0Uja9.js +1 -0
- package/dist/assets/{view-location-add-CR2vX0YA.js → view-location-add-B_PB1oaL.js} +1 -1
- package/dist/assets/view-location-edit-DYuz_sYs.js +1 -0
- package/dist/assets/view-locations-dclVguNJ.js +1 -0
- package/dist/assets/{view-lock-screen-CvMhzPRT.js → view-lock-screen-C9W836P_.js} +1 -1
- package/dist/assets/view-mcp-clients-CxGgawX9.js +1 -0
- package/dist/assets/{view-mcp-oauth-consent-CdSzhX8Z.js → view-mcp-oauth-consent-B2aQFOBm.js} +1 -1
- package/dist/assets/view-mcp-oauth-management-xnTPjJ36.js +1 -0
- package/dist/assets/view-notifications-BKBYRF9F.js +1 -0
- package/dist/assets/view-onboarding-BHdDgVMj.js +1 -0
- package/dist/assets/{view-page-Zu_2hwIi.js → view-page-DJwQBf8C.js} +1 -1
- package/dist/assets/view-page-add-CMkgrgRF.js +1 -0
- package/dist/assets/view-page-configure-JhXEhrod.js +1 -0
- package/dist/assets/view-page-configure-ho3B4Gtr.js +1 -0
- package/dist/assets/view-page-data-source-add-CnP1yn09.js +1 -0
- package/dist/assets/{view-page-data-source-edit-DQu21ar1.js → view-page-data-source-edit-D5WExoYy.js} +1 -1
- package/dist/assets/{view-page-edit-CWXaQZak.js → view-page-edit-ubc81fqj.js} +1 -1
- package/dist/assets/{view-page-plugin-Cfto42Wh.js → view-page-plugin-CtxG2AwO.js} +1 -1
- package/dist/assets/{view-pages-BBiRpjJE.js → view-pages-CZR6c3uY.js} +1 -1
- package/dist/assets/view-profile-general-CFUrEtJy.js +1 -0
- package/dist/assets/view-profile-security-CM-xrNiL.js +1 -0
- package/dist/assets/{view-remote-access-DtZM_sYV.js → view-remote-access-DMcIAtbJ.js} +1 -1
- package/dist/assets/{view-scene-add-LFcdVTaN.js → view-scene-add-H5f00zTk.js} +1 -1
- package/dist/assets/{view-scene-edit-fX-u8fib.js → view-scene-edit-BYUTky-m.js} +1 -1
- package/dist/assets/{view-scenes-DWbfoSPZ.js → view-scenes-eWQiAb02.js} +1 -1
- package/dist/assets/{view-sign-in-CZRERL0Y.js → view-sign-in-D31IT93n.js} +1 -1
- package/dist/assets/{view-sign-up-CrUHPweO.js → view-sign-up-BFvb0t1U.js} +1 -1
- package/dist/assets/view-simulator-device-wizard-CQcBfgMn.js +1 -0
- package/dist/assets/{view-space-add-BWXeqKGe.js → view-space-add-DLF9C3Az.js} +1 -1
- package/dist/assets/{view-space-configure-DpiLxtMc.js → view-space-configure-LA94Bfj9.js} +1 -1
- package/dist/assets/{view-space-edit-uz1TPncu.js → view-space-edit-CVBH6AaO.js} +1 -1
- package/dist/assets/{view-space-plugin-8dCIw60l.js → view-space-plugin-DALFumLq.js} +1 -1
- package/dist/assets/view-spaces-BpplLq0s.js +1 -0
- package/dist/assets/{view-spaces-wizard-BKBTNd3t.js → view-spaces-wizard-DTzT5Ajh.js} +1 -1
- package/dist/assets/{view-stats-sqy4OQw5.js → view-stats-DmijN6dE.js} +1 -1
- package/dist/assets/view-system-backups-DzGLs86e.js +1 -0
- package/dist/assets/{view-system-info-SAJnQgbZ.js → view-system-info-Cm7gO8w8.js} +1 -1
- package/dist/assets/{view-system-log-detail-De0uz6BL.js → view-system-log-detail-BhmwpL6q.js} +1 -1
- package/dist/assets/{view-system-logs-B0eMqnft.js → view-system-logs-9RhBvJ1C.js} +1 -1
- package/dist/assets/view-tile-DvsHTEes.js +1 -0
- package/dist/assets/{view-tile-add-BXX2-rGD.js → view-tile-add-ChtKYIGF.js} +1 -1
- package/dist/assets/{view-tile-add-Cn7SJEqT.js → view-tile-add-DNOx9gjy.js} +1 -1
- package/dist/assets/view-tile-data-source-add-C4DB5pJI.js +1 -0
- package/dist/assets/{view-tile-data-source-edit-CdWGlpDC.js → view-tile-data-source-edit-BgVjSqCX.js} +1 -1
- package/dist/assets/view-tile-edit-C-qWFXGR.js +1 -0
- package/dist/assets/{view-tile-edit-XzR_OQfI.js → view-tile-edit-CLNWeo9W.js} +1 -1
- package/dist/assets/{view-tile-edit-D80VgTdu.js → view-tile-edit-pikK5iSE.js} +1 -1
- package/dist/assets/{view-user-add-MWHxy3nf.js → view-user-add-CITnz-HU.js} +1 -1
- package/dist/assets/{view-user-edit-BJeiBIOb.js → view-user-edit-CdKYi6nv.js} +1 -1
- package/dist/assets/{view-users-DKrdtOjY.js → view-users-Dz1RKiyE.js} +1 -1
- package/dist/assets/view-virtual-device-wizard-DLi2AyTF.js +1 -0
- package/dist/assets/weather-BzXvq8lZ.js +2 -0
- package/dist/assets/weather-forecast.transformers-vk4s_2pl.js +1 -0
- package/dist/index.html +96 -96
- package/package.json +1 -1
- package/dist/assets/components-1l-XQ9JU.js +0 -6
- package/dist/assets/components-B4a-3cag.js +0 -1
- package/dist/assets/components-BqvPyJ09.js +0 -2
- package/dist/assets/components-CDS0rEqD.js +0 -1
- package/dist/assets/components-CGY9a3zE.js +0 -1
- package/dist/assets/components-CofHdxQO.js +0 -1
- package/dist/assets/components-DJ-PhAdU.js +0 -1
- package/dist/assets/components-Dg_-11L_.js +0 -1
- package/dist/assets/components-niPBJezT.js +0 -1
- package/dist/assets/components-v7BtnQr-.js +0 -8
- package/dist/assets/composables-BiL7NDB2.js +0 -1
- 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/devices-Cx9K7dqW.js +0 -2
- package/dist/assets/devices.constants-HX5whDWr.js +0 -1
- package/dist/assets/form-CYGBQyZI.js +0 -12
- package/dist/assets/index-CRKyZO94.js +0 -9
- package/dist/assets/index-E5bAVcL9.css +0 -1
- 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/system-DVGufF5G.js +0 -2
- package/dist/assets/types-BFzk34Iy.js +0 -1
- package/dist/assets/types-jnyNKIzd.js +0 -1
- package/dist/assets/useEventBus-C7h8fK0M.js +0 -1
- package/dist/assets/useExtensions-mIxpx3RO.js +0 -1
- package/dist/assets/useGeolocation-DlU1KRo-.js +0 -2
- 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-property-edit-DZPQoC26.js +0 -1
- package/dist/assets/view-channels-Bo16Lq4L.js +0 -1
- package/dist/assets/view-config-module-edit-BFQDbwC6.js +0 -1
- package/dist/assets/view-config-plugin-edit-DX364xd_.js +0 -1
- package/dist/assets/view-data-source-add-Bzb-61aK.js +0 -1
- package/dist/assets/view-device-B6vGkfF5.js +0 -1
- package/dist/assets/view-device-add-BjIlyY6E.js +0 -1
- package/dist/assets/view-device-control-DdEXyVpn.js +0 -1
- package/dist/assets/view-extension-detail-BzdALouU.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-add-CKANfB0w.js +0 -1
- package/dist/assets/view-page-configure-C-eA0dC4.js +0 -1
- package/dist/assets/view-page-configure-C5n0g4eO.js +0 -1
- package/dist/assets/view-page-data-source-add-7ItspGgj.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-DO1CpTZ7.js +0 -1
- package/dist/assets/view-spaces-BlGL7Tsw.js +0 -1
- package/dist/assets/view-system-backups-DRhdTizI.js +0 -1
- package/dist/assets/view-tile-CdKYi0pR.js +0 -1
- package/dist/assets/view-tile-data-source-add-pxfcE43r.js +0 -1
- package/dist/assets/view-tile-edit-rO9uSt8e.js +0 -1
- package/dist/assets/view-virtual-device-wizard-CCj2n1FE.js +0 -1
- package/dist/assets/weather-DMmOelu3.js +0 -2
- package/dist/assets/weather-forecast.transformers-BKEpj85v.js +0 -1
|
@@ -1 +1 @@
|
|
|
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
|
+
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{Mt as re,Nr as ie,Qr as ae,ai as V,ei as H,gr as oe,hr as se,ii as U,k as W,m as G,p as ce,qr as K,ri as le,x as ue}from"./common-D4Z2wgrj.js";import{t as de}from"./alert-I-oSc4A8.js";import{t as fe}from"./radio-DvF3ArlX.js";import{t as pe}from"./dialog-4clb5GeY.js";import{t as me}from"./empty-DvXiCUNF.js";import{n as he,t as ge}from"./steps-DuddYjrb.js";import{t as _e}from"./directive-D42ORGRu.js";import{t as ve}from"./usePlugins-CLZiBdYY.js";import{i as ye}from"./config.constants-17QBQ_kF.js";import{t as be}from"./integration-config-dialog-DWcOAIcd.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:{...V.effect,default:`light`},teleported:V.teleported,persistent:V.persistent,width:{type:[String,Number],default:150},virtualTriggering:U.virtualTriggering,virtualRef:U.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(le),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(ae),{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(W),{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=ce(),p=ue(),m=p.getStore(se),g=p.getStore(oe),b=p.getStore(re),{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),V=v(!1),H=v(void 0),U=v(void 0),W=v(void 0),G=v(void 0),K=ee(new Set),le=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(!H.value)return!0;let e=w.value.find(e=>e.type===H.value);return!!e&&!e.configured}if(e===`voice`){if(U.value){let e=O.value.find(e=>e.type===U.value);if(e&&!e.configured)return!0}if(W.value){let e=M.value.find(e=>e.type===W.value);if(e&&!e.configured)return!0}return!1}if(e===`messaging`){if(G.value){let e=F.value.find(e=>e.type===G.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=>K.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===H.value)),Ne=r(()=>Me.value?.name??``),Pe=r(()=>F.value.find(e=>e.type===G.value)?.name??``),Fe=r(()=>{let e=[];if(U.value){let t=O.value.find(e=>e.type===U.value)?.name;t&&e.push(`TTS: ${t}`)}if(W.value){let t=M.value.find(e=>e.type===W.value)?.name;t&&e.push(`STT: ${t}`)}return e.join(`, `)}),Ie=async(e,t)=>{K.add(e);try{await b.update({type:e,data:{enabled:t}}),await E(),t?(H.value=e,$(e)):H.value===e&&(H.value=void 0)}catch{}finally{K.delete(e)}},Le=async(e,t)=>{K.add(e);try{await b.update({type:e,data:{enabled:t}}),await ne(),t?(U.value=e,$(e)):U.value===e&&(U.value=void 0)}catch{}finally{K.delete(e)}},Re=async(e,t)=>{K.add(e);try{await b.update({type:e,data:{enabled:t}}),await N(),t?(W.value=e,$(e)):W.value===e&&(W.value=void 0)}catch{}finally{K.delete(e)}},ze=async(e,t)=>{K.add(e);try{await b.update({type:e,data:{enabled:t}}),await L(),t?(G.value=e,$(e)):G.value===e&&(G.value=void 0)}catch{}finally{K.delete(e)}},Be=(e,t)=>{xe.value=e,q.value=t,le.value=!0},Ve=()=>{E(),ne(),N(),L()},$=async e=>{if(!g.findByType(e))try{await g.get({type:e})}catch{}},Yt=async(e=!1)=>{V.value=!0;try{let t={type:`buddy-module`,enabled:!0};return H.value&&(t.provider=H.value),e&&(t.voiceEnabled=!!(U.value||W.value),t.ttsPlugin=U.value??`none`,t.sttPlugin=W.value??`none`),await m.edit({data:t}),!0}catch(e){return d.error(e instanceof Error?e.message:l(`buddyModule.wizard.saveError`)),!1}finally{V.value=!1}},Xt=()=>{B.value<J.value.length-1&&B.value++},Zt=()=>{B.value>0&&B.value--},Qt=()=>{Y.value===`voice`?(U.value=void 0,W.value=void 0):Y.value===`messaging`&&(G.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`&&(H.value=e.type),t&&(U.value=t.type),n&&(W.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,H.value=void 0,U.value=void 0,W.value=void 0,G.value=void 0,V.value=!1,le.value=!1,K.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:V.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(ae),{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:H.value,"onUpdate:modelValue":a[0]||=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`,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(ie),{"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(ae),{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:U.value,"onUpdate:modelValue":a[1]||=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`,ot,[n(`div`,st,P(r.name),1),r.description?(_(),e(`div`,ct,P(r.description),1)):j(``,!0)])],10,at),f(k(ie),{"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:W.value,"onUpdate:modelValue":a[2]||=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`,_t,[n(`div`,vt,P(r.name),1),r.description?(_(),e(`div`,yt,P(r.description),1)):j(``,!0)])],10,gt),f(k(ie),{"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(ae),{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:G.value,"onUpdate:modelValue":a[3]||=e=>G.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&&(G.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(ie),{"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,[H.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&&G.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:le.value,"onUpdate:visible":a[4]||=e=>le.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(K),{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(ae),{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(H),{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=ce(),{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 +1 @@
|
|
|
1
|
-
import{Er as e,ji as t}from"./icon-with-child-CgZMNB3F.js";import{
|
|
1
|
+
import{Er as e,ji as t}from"./icon-with-child-CgZMNB3F.js";import{hr as n,la as r,x as i}from"./common-D4Z2wgrj.js";var a=({type:a})=>{let o=i().getStore(n),{data:s,semaphore:c}=r(o),l=e(()=>t(a));return{configModule:e(()=>o.findByType(l.value)),isLoading:e(()=>{let e=l.value;return e in s.value?!1:c.value.fetching.item.includes(e)}),fetchConfigModule:async()=>{await o.get({type:l.value})}}};export{a as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{Er as e}from"./icon-with-child-CgZMNB3F.js";import{
|
|
1
|
+
import{Er as e}from"./icon-with-child-CgZMNB3F.js";import{la as t,x as n}from"./common-D4Z2wgrj.js";import{r}from"./config-DAgVgX46.js";import{r as i}from"./usePlugins-CLZiBdYY.js";import{t as a}from"./dist-DJgPCOr0.js";import{r as o,t as s}from"./keys-DgS2vm-E.js";var c=()=>{let t=i(),{enabled:n}=r(),o=[`tileAddForm`,`tileEditForm`,`tilePreview`],s=[`tileSchema`,`tileAddFormSchema`,`tileEditFormSchema`,`tileCreateReqSchema`,`tileUpdateReqSchema`],c=e(()=>t.getPlugins().filter(e=>e.modules===void 0||e.modules.includes(`dashboard-module`)?(e.elements??[]).some(e=>{if(!(e.modules===void 0||e.modules.includes(`dashboard-module`)))return!1;let t=o.length===0||!!e.components&&o.some(t=>e.components&&t in e.components),n=s.length===0||!!e.schemas&&s.some(t=>e.schemas&&t in e.schemas);return t||n}):!1));return{plugins:c,options:e(()=>a(c.value.flatMap(e=>(e.elements??[]).filter(e=>e.modules===void 0||e.modules.includes(`dashboard-module`)).map(t=>({value:t.type,label:t.name?.trim()?t.name:e.name,disabled:!n(e.type)}))),[e=>e.label],[`asc`])),getByPluginType:e=>c.value.find(t=>t.type===e),getByType:e=>c.value.find(t=>(t.elements??[]).some(t=>t.type===e&&(t.modules===void 0||t.modules.includes(`dashboard-module`)))),getElement:e=>{for(let t of c.value){let n=(t.elements??[]).find(t=>t.type===e&&(t.modules===void 0||t.modules.includes(`dashboard-module`)));if(n)return n}}}},l=r=>{let{id:i}=r,a=n().getStore(o),{data:s,semaphore:c}=t(a);return{tile:e(()=>i===null?null:i in s.value?s.value[i]:null),isLoading:e(()=>c.value.fetching.item.includes(i)?!0:(i in s.value?s.value[i]:null)===null&&r.parentId?c.value.fetching.items.includes(r.parentId):!1),fetchTile:async()=>{(i in s.value?s.value[i]:null)?.draft||await a.get({id:i,parent:r.parent&&r.parentId?{type:r.parent,id:r.parentId}:void 0})}}},u=({type:t})=>{let{getByType:n}=c(),r=e(()=>n(t));return{plugin:r,element:e(()=>(r.value?.elements??[]).find(e=>e.type===t&&(e.modules===void 0||e.modules.includes(`dashboard-module`))))}},d=r=>{let i=n().getStore(s),{firstLoad:a,semaphore:o}=t(i);return{dataSources:e(()=>i.findForParent(r.parent,r.parentId)),areLoading:e(()=>o.value.fetching.items.includes(r.parentId)?!0:!a.value.includes(r.parentId)&&o.value.fetching.items.includes(r.parentId)),loaded:e(()=>a.value.includes(r.parentId)),fetchDataSources:async()=>{await i.fetch({parent:{type:r.parent,id:r.parentId}})}}};export{c as i,u as n,l as r,d as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{Er as e}from"./icon-with-child-CgZMNB3F.js";import"./common-
|
|
1
|
+
import{Er as e}from"./icon-with-child-CgZMNB3F.js";import"./common-D4Z2wgrj.js";import{r as t}from"./config-DAgVgX46.js";import{r as n}from"./usePlugins-CLZiBdYY.js";import{t as r}from"./dist-DJgPCOr0.js";import"./devices.constants-DHQemX04.js";var i=()=>{let i=n(),{enabled:a}=t(),o=[`deviceAddForm`,`deviceEditForm`,`deviceWizardAdapter`],s=[`deviceAddForm`,`deviceEditForm`],c=[`deviceSchema`,`deviceAddFormSchema`,`deviceEditFormSchema`,`deviceCreateReqSchema`,`deviceUpdateReqSchema`],l=[`wizard`],u=e(()=>i.getPlugins().filter(e=>e.modules===void 0||e.modules.includes(`devices-module`)?l.some(t=>e.routes&&t in e.routes)?!0:(e.elements??[]).some(e=>{if(!(e.modules===void 0||e.modules.includes(`devices-module`)))return!1;let t=o.length===0||!!e.components&&o.some(t=>e.components&&t in e.components),n=c.length===0||!!e.schemas&&c.some(t=>e.schemas&&t in e.schemas);return t||n}):!1)),d=e(()=>r(u.value.flatMap(e=>(e.elements??[]).filter(e=>e.modules===void 0||e.modules.includes(`devices-module`)).filter(e=>{if(e.components?.deviceWizardAdapter&&!e.components.deviceAddForm)return!1;let t=!!e.components&&s.some(t=>e.components&&t in e.components),n=!!e.schemas&&c.some(t=>e.schemas&&t in e.schemas);return t||n}).map(t=>({value:t.type,label:t.name?.trim()?t.name:e.name,disabled:!a(e.type)}))),[e=>e.label],[`asc`])),f=e(()=>r(u.value.filter(e=>(e.elements??[]).some(e=>(e.modules===void 0||e.modules.includes(`devices-module`))&&!!e.components?.deviceWizardAdapter)).map(e=>({value:e.type,label:e.name,description:e.description,disabled:!a(e.type)})),[e=>e.label],[`asc`])),p=e(()=>r(u.value.flatMap(e=>{let t=e.routes?.wizard;return t?[{value:e.type,...t,disabled:!a(e.type)}]:[]}),[e=>e.label],[`asc`])),m=e=>u.value.find(t=>t.type===e);return{plugins:u,options:d,wizardOptions:f,wizardRouteOptions:p,getByPluginType:m,getByName:m,getByType:e=>u.value.find(t=>(t.elements??[]).some(t=>t.type===e&&(t.modules===void 0||t.modules.includes(`devices-module`)))),getElement:e=>{for(let t of u.value){let n=(t.elements??[]).find(t=>t.type===e&&(t.modules===void 0||t.modules.includes(`devices-module`)));if(n)return n}}}};export{i as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{V as e}from"./common-D4Z2wgrj.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};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{Er as e}from"./icon-with-child-CgZMNB3F.js";import{Mt as t,jn as n,la as r,x as i}from"./common-D4Z2wgrj.js";var a=()=>{let a=i().getStore(t),{data:o,semaphore:s}=r(a);return{extensions:e(()=>Object.values(o.value)),modules:e(()=>Object.values(o.value).filter(e=>e.kind===n.module)),plugins:e(()=>Object.values(o.value).filter(e=>e.kind===n.plugin)),areLoading:e(()=>s.value.fetching.items),fetchExtensions:async()=>{await a.fetch()}}};export{a as t};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/leaflet-src-AD9ZoK5_.js","assets/rolldown-runtime-QTnfLwEv.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{r as e}from"./rolldown-runtime-QTnfLwEv.js";import{$r as t,Ar as n,Bi as r,Dr as i,Er as a,Gr as o,H as s,Hr as c,Ki as l,Li as u,Lr as d,Mi as f,Mr as p,Mt as m,Nr as h,Or as g,Pr as _,Qr as v,R as ee,Si as y,Ui as b,Vr as x,Wi as S,Xr as C,Yr as w,bi as T,bt as te,ci as E,cn as ne,ei as re,gn as D,ji as O,jr as ie,kr as ae,kt as oe,ln as k,oi as se,on as ce,pr as A,qi as le,r as j,rn as ue,ti as M,ui as N,ut as de,vi as P,xr as fe,yr as pe,zr as F}from"./icon-with-child-CgZMNB3F.js";import{Ci as me,Ki as he,Ni as ge,Qr as _e,aa as ve,ai as I,ei as ye,ia as be,m as L,oa as R,ra as xe,ri as Se,ti as Ce,y as z}from"./common-D4Z2wgrj.js";var we=ne({...Ce,valueKey:{type:String,default:`value`},modelValue:{type:[String,Number],default:``},debounce:{type:Number,default:300},placement:{type:k(String),values:[`top`,`top-start`,`top-end`,`bottom`,`bottom-start`,`bottom-end`],default:`bottom-start`},fetchSuggestions:{type:k([Function,Array]),default:f},popperClass:I.popperClass,popperStyle:I.popperStyle,triggerOnFocus:{type:Boolean,default:!0},selectWhenUnmatched:Boolean,hideLoading:Boolean,teleported:I.teleported,appendTo:I.appendTo,highlightFirstItem:Boolean,fitInputWidth:Boolean,loopNavigation:{type:Boolean,default:!0}}),B={[ve]:e=>b(e)||D(e),[be]:e=>b(e)||D(e),[xe]:e=>b(e)||D(e),focus:e=>e instanceof FocusEvent,blur:e=>e instanceof FocusEvent,clear:()=>!0,select:e=>r(e)},Te=[`aria-expanded`,`aria-owns`],Ee={key:0},De=[`id`,`aria-selected`,`onClick`],Oe=`ElAutocomplete`,ke=te(_({name:Oe,inheritAttrs:!1,__name:`autocomplete`,props:we,emits:B,setup(e,{expose:t,emit:r}){let c=e,d=r,f=a(()=>he(c,Object.keys(Ce))),_=se(),b=ee(),C=m(`autocomplete`),T=y(),te=y(),E=y(),ne=y(),D=!1,k=!1,A=y([]),j=y(-1),P=y(``),F=y(!1),I=y(!1),L=y(!1),z=oe(),we=a(()=>_.style),B=a(()=>(A.value.length>0||L.value)&&F.value),ke=a(()=>!c.hideLoading&&L.value),Ae=a(()=>T.value?Array.from(T.value.$el.querySelectorAll(`input`)):[]),je=()=>{B.value&&(P.value=`${T.value.$el.offsetWidth}px`)},Me=()=>{j.value=-1},Ne=async e=>{if(I.value)return;let t=e=>{L.value=!1,!I.value&&(u(e)?(A.value=e,j.value=c.highlightFirstItem?0:-1):ce(Oe,`autocomplete suggestions must be an array`))};if(L.value=!0,u(c.fetchSuggestions))t(c.fetchSuggestions);else{let n=await c.fetchSuggestions(e,t);u(n)&&t(n)}},Pe=ue(Ne,a(()=>c.debounce)),Fe=e=>{let t=!!e;if(d(be,e),d(ve,e),I.value=!1,F.value||=t,!c.triggerOnFocus&&!e){I.value=!0,A.value=[];return}Pe(e)},Ie=e=>{b.value||(e.target?.tagName!==`INPUT`||Ae.value.includes(document.activeElement))&&(F.value=!0)},Le=e=>{d(xe,e)},Re=e=>{if(k)k=!1;else{F.value=!0,d(`focus`,e);let t=c.modelValue??``;c.triggerOnFocus&&!D&&Pe(String(t))}},ze=e=>{setTimeout(()=>{if(E.value?.isFocusInsideContent()){k=!0;return}F.value&&V(),d(`blur`,e)})},Be=()=>{F.value=!1,d(ve,``),d(`clear`)},Ve=async()=>{T.value?.isComposing||(B.value&&j.value>=0&&j.value<A.value.length?W(A.value[j.value]):(c.selectWhenUnmatched&&(d(`select`,{value:c.modelValue}),A.value=[],j.value=-1),F.value=!0,Pe(String(c.modelValue))))},He=e=>{B.value&&(e.preventDefault(),e.stopPropagation(),V())},V=()=>{F.value=!1},H=()=>{T.value?.focus()},U=()=>{T.value?.blur()},W=async e=>{d(be,e[c.valueKey]),d(ve,e[c.valueKey]),d(`select`,e),A.value=[],j.value=-1},G=e=>{if(!B.value||L.value)return;if(e<0){if(!c.loopNavigation){j.value=-1;return}e=A.value.length-1}e>=A.value.length&&(e=c.loopNavigation?0:A.value.length-1);let[t,n]=Ue(),r=n[e],i=t.scrollTop,{offsetTop:a,scrollHeight:o}=r;a+o>i+t.clientHeight&&(t.scrollTop=a+o-t.clientHeight),a<i&&(t.scrollTop=a),j.value=e,T.value?.ref?.setAttribute(`aria-activedescendant`,`${z.value}-item-${j.value}`)},Ue=()=>{let e=te.value.querySelector(`.${C.be(`suggestion`,`wrap`)}`);return[e,e.querySelectorAll(`.${C.be(`suggestion`,`list`)} li`)]},We=ge(ne,e=>{if(E.value?.isFocusInsideContent())return;let t=k;k=!1,B.value&&(t?ze(new FocusEvent(`blur`,e)):V())}),K=e=>{switch(me(e)){case R.up:e.preventDefault(),G(j.value-1);break;case R.down:e.preventDefault(),G(j.value+1);break;case R.enter:case R.numpadEnter:e.preventDefault(),Ve();break;case R.tab:V();break;case R.esc:He(e);break;case R.home:e.preventDefault(),G(0);break;case R.end:e.preventDefault(),G(A.value.length-1);break;case R.pageUp:e.preventDefault(),G(Math.max(0,j.value-10));break;case R.pageDown:e.preventDefault(),G(Math.min(A.value.length-1,j.value+10));break}};return o(()=>{We?.()}),w(()=>{let e=T.value?.ref;e&&([{key:`role`,value:`textbox`},{key:`aria-autocomplete`,value:`list`},{key:`aria-controls`,value:z.value},{key:`aria-activedescendant`,value:`${z.value}-item-${j.value}`}].forEach(({key:t,value:n})=>e.setAttribute(t,n)),D=e.hasAttribute(`readonly`))}),t({highlightedIndex:j,activated:F,loading:L,inputRef:T,popperRef:E,suggestions:A,handleSelect:W,handleKeyEnter:Ve,focus:H,blur:U,close:V,highlight:G,getData:Ne}),(t,r)=>(v(),g(O(Se),{ref_key:`popperRef`,ref:E,visible:B.value,placement:e.placement,"fallback-placements":[`bottom-start`,`top-start`],"popper-class":[O(C).e(`popper`),e.popperClass],"popper-style":e.popperStyle,teleported:e.teleported,"append-to":e.appendTo,"gpu-acceleration":!1,pure:``,"manual-mode":``,effect:`light`,trigger:`click`,transition:`${O(C).namespace.value}-zoom-in-top`,persistent:``,role:`listbox`,onBeforeShow:je,onHide:Me},{content:N(()=>[i(`div`,{ref_key:`regionRef`,ref:te,class:S([O(C).b(`suggestion`),O(C).is(`loading`,ke.value)]),style:l({[e.fitInputWidth?`width`:`minWidth`]:P.value,outline:`none`}),role:`region`},[t.$slots.header?(v(),n(`div`,{key:0,class:S(O(C).be(`suggestion`,`header`)),onClick:r[0]||=pe(()=>{},[`stop`])},[M(t.$slots,`header`)],2)):ae(`v-if`,!0),h(O(_e),{id:O(z),tag:`ul`,"wrap-class":O(C).be(`suggestion`,`wrap`),"view-class":O(C).be(`suggestion`,`list`),role:`listbox`},{default:N(()=>[ke.value?(v(),n(`li`,Ee,[M(t.$slots,`loading`,{},()=>[h(O(s),{class:S(O(C).is(`loading`))},{default:N(()=>[h(O(de))]),_:1},8,[`class`])])])):(v(!0),n(fe,{key:1},re(A.value,(r,i)=>(v(),n(`li`,{id:`${O(z)}-item-${i}`,key:i,class:S({highlighted:j.value===i}),role:`option`,"aria-selected":j.value===i,onClick:e=>W(r)},[M(t.$slots,`default`,{item:r},()=>[p(le(r[e.valueKey]),1)])],10,De))),128))]),_:3},8,[`id`,`wrap-class`,`view-class`]),t.$slots.footer?(v(),n(`div`,{key:1,class:S(O(C).be(`suggestion`,`footer`)),onClick:r[1]||=pe(()=>{},[`stop`])},[M(t.$slots,`footer`)],2)):ae(`v-if`,!0)],6)]),default:N(()=>[i(`div`,{ref_key:`listboxRef`,ref:ne,class:S([O(C).b(),t.$attrs.class]),style:l(we.value),role:`combobox`,"aria-haspopup":`listbox`,"aria-expanded":B.value,"aria-owns":O(z)},[h(O(ye),x({ref_key:`inputRef`,ref:T},x(f.value,t.$attrs),{"model-value":e.modelValue,disabled:O(b),onInput:Fe,onChange:Le,onFocus:Re,onBlur:ze,onClear:Be,onKeydown:K,onMousedown:Ie}),ie({_:2},[t.$slots.prepend?{name:`prepend`,fn:N(()=>[M(t.$slots,`prepend`)]),key:`0`}:void 0,t.$slots.append?{name:`append`,fn:N(()=>[M(t.$slots,`append`)]),key:`1`}:void 0,t.$slots.prefix?{name:`prefix`,fn:N(()=>[M(t.$slots,`prefix`)]),key:`2`}:void 0,t.$slots.suffix?{name:`suffix`,fn:N(()=>[M(t.$slots,`suffix`)]),key:`3`}:void 0]),1040,[`model-value`,`disabled`])],14,Te)]),_:3},8,[`visible`,`placement`,`popper-class`,`popper-style`,`teleported`,`append-to`,`transition`]))}})),Ae=`devices-homey`,je=`devices-homey-plugin`,Me=`devices-homey`,Ne=1e3,Pe=6e4,Fe=3e4,Ie=36e5,Le=`weather-open-meteo`,Re=`weather-open-meteo-plugin`,ze=`weather-open-meteo`,Be=(e,t)=>{for(let n of Object.keys(t))e.on(n,t[n])},Ve=e=>{for(let t of Object.keys(e)){let n=e[t];n&&V(n.cancel)&&n.cancel()}},He=e=>!e||typeof e.charAt!=`function`?e:e.charAt(0).toUpperCase()+e.slice(1),V=e=>typeof e==`function`,H=(e,t,n)=>{for(let r in n){let i=`set`+He(r);e[i]?E(()=>n[r],(t,n)=>{e[i](t,n)}):t[i]&&E(()=>n[r],e=>{t[i](e)})}},U=(e,t,n={})=>{let r={...n};for(let n in e){let i=t[n],a=e[n];i&&(i&&i.custom===!0||a!==void 0&&(r[n]=a))}return r},W=e=>{let t={},n={};for(let r in e)if(r.startsWith(`on`)&&!r.startsWith(`onUpdate`)&&r!==`onReady`){let n=r.slice(2).toLocaleLowerCase();t[n]=e[r]}else n[r]=e[r];return{listeners:t,attrs:n}},G=async e=>{let t=await Promise.all([z(()=>import(`./marker-icon-2x-DCPDGz3Q.js`),[]),z(()=>import(`./marker-icon-CXGCKJng.js`),[]),z(()=>import(`./marker-shadow-hzqDve8V.js`),[])]);delete e.Default.prototype._getIconUrl,e.Default.mergeOptions({iconRetinaUrl:t[0].default,iconUrl:t[1].default,shadowUrl:t[2].default})},Ue=e=>{let n=y((...t)=>console.warn(`Method ${e} has been invoked without being replaced`)),r=(...e)=>n.value(...e);return r.wrapped=n,t(e,r),r},We=(e,t)=>e.wrapped.value=t,K=typeof self==`object`&&self.self===self&&self||typeof global==`object`&&global.global===global&&global||globalThis,q=e=>{let t=F(e);if(t===void 0)throw Error(`Attempt to inject ${e.description} before it was provided.`);return t},J=Symbol(`useGlobalLeaflet`),Y=Symbol(`addLayer`),Ge=Symbol(`removeLayer`),Ke=Symbol(`registerControl`),qe=Symbol(`registerLayerControl`),Je=Symbol(`canSetParentHtml`),Ye=Symbol(`setParentHtml`),Xe=Symbol(`setIcon`),Ze=Symbol(`bindPopup`),Qe=Symbol(`bindTooltip`),$e=Symbol(`unbindPopup`),et=Symbol(`unbindTooltip`),tt={options:{type:Object,default:()=>({}),custom:!0}},nt=e=>({options:e.options,methods:{}}),X={...tt,pane:{type:String},attribution:{type:String},name:{type:String,custom:!0},layerType:{type:String,custom:!0},visible:{type:Boolean,custom:!0,default:!0}},Z=(e,n,r)=>{let i=q(Y),a=q(Ge),{options:o,methods:s}=nt(e),c=U(e,X,o),l=()=>i({leafletObject:n.value}),u=()=>a({leafletObject:n.value}),d={...s,setAttribution(t){u(),n.value.options.attribution=t,e.visible&&l()},setName(){u(),e.visible&&l()},setLayerType(){u(),e.visible&&l()},setVisible(e){n.value&&(e?l():u())},bindPopup(e){if(!n.value||!V(n.value.bindPopup)){console.warn(`Attempt to bind popup before bindPopup method available on layer.`);return}n.value.bindPopup(e)},bindTooltip(e){if(!n.value||!V(n.value.bindTooltip)){console.warn(`Attempt to bind tooltip before bindTooltip method available on layer.`);return}n.value.bindTooltip(e)},unbindTooltip(){n.value&&(V(n.value.closeTooltip)&&n.value.closeTooltip(),V(n.value.unbindTooltip)&&n.value.unbindTooltip())},unbindPopup(){n.value&&(V(n.value.closePopup)&&n.value.closePopup(),V(n.value.unbindPopup)&&n.value.unbindPopup())},updateVisibleProp(e){r.emit(`update:visible`,e)}};return t(Ze,d.bindPopup),t(Qe,d.bindTooltip),t($e,d.unbindPopup),t(et,d.unbindTooltip),C(()=>{d.unbindPopup(),d.unbindTooltip(),u()}),{options:c,methods:d}},Q=(e,t)=>{if(e&&t.default)return d(`div`,{style:{display:`none`}},t.default())},rt={...X,interactive:{type:Boolean,default:void 0},bubblingMouseEvents:{type:Boolean,default:void 0}},it=(e,t,n)=>{let{options:r,methods:i}=Z(e,t,n);return{options:U(e,rt,r),methods:i}},at={...rt,stroke:{type:Boolean,default:void 0},color:{type:String},weight:{type:Number},opacity:{type:Number},lineCap:{type:String},lineJoin:{type:String},dashArray:{type:String},dashOffset:{type:String},fill:{type:Boolean,default:void 0},fillColor:{type:String},fillOpacity:{type:Number},fillRule:{type:String},className:{type:String}},ot=(e,t,n)=>{let{options:r,methods:i}=it(e,t,n),a=U(e,at,r),s=q(Ge),c={...i,setStroke(e){t.value.setStyle({stroke:e})},setColor(e){t.value.setStyle({color:e})},setWeight(e){t.value.setStyle({weight:e})},setOpacity(e){t.value.setStyle({opacity:e})},setLineCap(e){t.value.setStyle({lineCap:e})},setLineJoin(e){t.value.setStyle({lineJoin:e})},setDashArray(e){t.value.setStyle({dashArray:e})},setDashOffset(e){t.value.setStyle({dashOffset:e})},setFill(e){t.value.setStyle({fill:e})},setFillColor(e){t.value.setStyle({fillColor:e})},setFillOpacity(e){t.value.setStyle({fillOpacity:e})},setFillRule(e){t.value.setStyle({fillRule:e})},setClassName(e){t.value.setStyle({className:e})}};return o(()=>{s({leafletObject:t.value})}),{options:a,methods:c}},st={...at,radius:{type:Number},latLng:{type:[Object,Array],required:!0,custom:!0}},ct=(e,t,n)=>{let{options:r,methods:i}=ot(e,t,n);return{options:U(e,st,r),methods:{...i,setRadius(e){t.value.setRadius(e)},setLatLng(e){t.value.setLatLng(e)}}}},lt={...st,radius:{type:Number}},ut=(e,t,n)=>{let{options:r,methods:i}=ct(e,t,n);return{options:U(e,lt,r),methods:{...i}}};_({name:`LCircle`,props:lt,setup(e,t){let n=y(),r=y(!1),i=F(J),a=q(Y),{options:o,methods:s}=ut(e,n,t);return w(async()=>{let{circle:l}=i?K.L:await z(()=>import(`./leaflet-src.esm-DCg_Me6F.js`),[]);n.value=P(l(e.latLng,o));let{listeners:u}=W(t.attrs);n.value.on(u),H(s,n.value,e),a({...e,...s,leafletObject:n.value}),r.value=!0,c(()=>t.emit(`ready`,n.value))}),{ready:r,leafletObject:n}},render(){return Q(this.ready,this.$slots)}}),_({name:`LCircleMarker`,props:st,setup(e,t){let n=y(),r=y(!1),i=F(J),a=q(Y),{options:o,methods:s}=ct(e,n,t);return w(async()=>{let{circleMarker:l}=i?K.L:await z(()=>import(`./leaflet-src.esm-DCg_Me6F.js`),[]);n.value=P(l(e.latLng,o));let{listeners:u}=W(t.attrs);n.value.on(u),H(s,n.value,e),a({...e,...s,leafletObject:n.value}),r.value=!0,c(()=>t.emit(`ready`,n.value))}),{ready:r,leafletObject:n}},render(){return Q(this.ready,this.$slots)}});var $={...tt,position:{type:String}},dt=(e,t)=>{let{options:n,methods:r}=nt(e),i=U(e,$,n),a={...r,setPosition(e){t.value&&t.value.setPosition(e)}};return C(()=>{t.value&&t.value.remove()}),{options:i,methods:a}},ft=e=>e.default?d(`div`,{ref:`root`},e.default()):null;_({name:`LControl`,props:{...$,disableClickPropagation:{type:Boolean,custom:!0,default:!0},disableScrollPropagation:{type:Boolean,custom:!0,default:!1}},setup(e,t){let n=y(),r=y(),i=F(J),a=q(Ke),{options:o,methods:s}=dt(e,n);return w(async()=>{let{Control:l,DomEvent:u}=i?K.L:await z(()=>import(`./leaflet-src.esm-DCg_Me6F.js`),[]),d=l.extend({onAdd(){return r.value}});n.value=P(new d(o)),H(s,n.value,e),a({leafletObject:n.value}),e.disableClickPropagation&&r.value&&u.disableClickPropagation(r.value),e.disableScrollPropagation&&r.value&&u.disableScrollPropagation(r.value),c(()=>t.emit(`ready`,n.value))}),{root:r,leafletObject:n}},render(){return ft(this.$slots)}});var pt={...$,prefix:{type:String}},mt=(e,t)=>{let{options:n,methods:r}=dt(e,t);return{options:U(e,pt,n),methods:{...r,setPrefix(e){t.value.setPrefix(e)}}}};_({name:`LControlAttribution`,props:pt,setup(e,t){let n=y(),r=F(J),i=q(Ke),{options:a,methods:o}=mt(e,n);return w(async()=>{let{control:s}=r?K.L:await z(()=>import(`./leaflet-src.esm-DCg_Me6F.js`),[]);n.value=P(s.attribution(a)),H(o,n.value,e),i({leafletObject:n.value}),c(()=>t.emit(`ready`,n.value))}),{leafletObject:n}},render(){return null}});var ht={...$,collapsed:{type:Boolean,default:void 0},autoZIndex:{type:Boolean,default:void 0},hideSingleBase:{type:Boolean,default:void 0},sortLayers:{type:Boolean,default:void 0},sortFunction:{type:Function}},gt=(e,t)=>{let{options:n}=dt(e,t);return{options:U(e,ht,n),methods:{addLayer(e){e.layerType===`base`?t.value.addBaseLayer(e.leafletObject,e.name):e.layerType===`overlay`&&t.value.addOverlay(e.leafletObject,e.name)},removeLayer(e){t.value.removeLayer(e.leafletObject)}}}};_({name:`LControlLayers`,props:ht,setup(e,t){let n=y(),r=F(J),i=q(qe),{options:a,methods:o}=gt(e,n);return w(async()=>{let{control:s}=r?K.L:await z(()=>import(`./leaflet-src.esm-DCg_Me6F.js`),[]);n.value=P(s.layers(void 0,void 0,a)),H(o,n.value,e),i({...e,...o,leafletObject:n.value}),c(()=>t.emit(`ready`,n.value))}),{leafletObject:n}},render(){return null}});var _t={...$,maxWidth:{type:Number},metric:{type:Boolean,default:void 0},imperial:{type:Boolean,default:void 0},updateWhenIdle:{type:Boolean,default:void 0}},vt=(e,t)=>{let{options:n,methods:r}=dt(e,t);return{options:U(e,_t,n),methods:r}};_({name:`LControlScale`,props:_t,setup(e,t){let n=y(),r=F(J),i=q(Ke),{options:a,methods:o}=vt(e,n);return w(async()=>{let{control:s}=r?K.L:await z(()=>import(`./leaflet-src.esm-DCg_Me6F.js`),[]);n.value=P(s.scale(a)),H(o,n.value,e),i({leafletObject:n.value}),c(()=>t.emit(`ready`,n.value))}),{leafletObject:n}},render(){return null}});var yt={...$,zoomInText:{type:String},zoomInTitle:{type:String},zoomOutText:{type:String},zoomOutTitle:{type:String}},bt=(e,t)=>{let{options:n,methods:r}=dt(e,t);return{options:U(e,yt,n),methods:r}};_({name:`LControlZoom`,props:yt,setup(e,t){let n=y(),r=F(J),i=q(Ke),{options:a,methods:o}=bt(e,n);return w(async()=>{let{control:s}=r?K.L:await z(()=>import(`./leaflet-src.esm-DCg_Me6F.js`),[]);n.value=P(s.zoom(a)),H(o,n.value,e),i({leafletObject:n.value}),c(()=>t.emit(`ready`,n.value))}),{leafletObject:n}},render(){return null}});var xt={...X},St=(e,n,r)=>{let{options:i,methods:a}=Z(e,n,r),o=U(e,xt,i),s={...a,addLayer(e){n.value.addLayer(e.leafletObject)},removeLayer(e){n.value.removeLayer(e.leafletObject)}};return t(Y,s.addLayer),t(Ge,s.removeLayer),{options:o,methods:s}},Ct={...xt},wt=(e,t,n)=>{let{options:r,methods:i}=St(e,t,n);return{options:U(e,Ct,r),methods:{...i}}};_({props:Ct,setup(e,t){let n=y(),r=y(!1),i=F(J),a=q(Y),{methods:o,options:s}=wt(e,n,t);return w(async()=>{let{featureGroup:l}=i?K.L:await z(()=>import(`./leaflet-src.esm-DCg_Me6F.js`),[]);n.value=P(l(void 0,s));let{listeners:u}=W(t.attrs);n.value.on(u),H(o,n.value,e),a({...e,...o,leafletObject:n.value}),r.value=!0,c(()=>t.emit(`ready`,n.value))}),{ready:r,leafletObject:n}},render(){return Q(this.ready,this.$slots)}});var Tt={...xt,geojson:{type:[Object,Array],custom:!0},optionsStyle:{type:Function,custom:!0}},Et=(e,t,n)=>{let{options:r,methods:i}=St(e,t,n),a=U(e,Tt,r);return Object.prototype.hasOwnProperty.call(e,`optionsStyle`)&&(a.style=e.optionsStyle),{options:a,methods:{...i,setGeojson(e){t.value.clearLayers(),t.value.addData(e)},setOptionsStyle(e){t.value.setStyle(e)},getGeoJSONData(){return t.value.toGeoJSON()},getBounds(){return t.value.getBounds()}}}};_({props:Tt,setup(e,t){let n=y(),r=y(!1),i=F(J),a=q(Y),{methods:o,options:s}=Et(e,n,t);return w(async()=>{let{geoJSON:l}=i?K.L:await z(()=>import(`./leaflet-src.esm-DCg_Me6F.js`),[]);n.value=P(l(e.geojson,s));let{listeners:u}=W(t.attrs);n.value.on(u),H(o,n.value,e),a({...e,...o,leafletObject:n.value}),r.value=!0,c(()=>t.emit(`ready`,n.value))}),{ready:r,leafletObject:n}},render(){return Q(this.ready,this.$slots)}});var Dt={...X,opacity:{type:Number},zIndex:{type:Number},tileSize:{type:[Number,Array,Object]},noWrap:{type:Boolean,default:void 0},minZoom:{type:Number},maxZoom:{type:Number},className:{type:String}},Ot=(e,t,n)=>{let{options:r,methods:i}=Z(e,t,n),a=U(e,Dt,r),o={...i,setTileComponent(){var e;(e=t.value)==null||e.redraw()}};return C(()=>{t.value.off()}),{options:a,methods:o}},kt=(e,t,n,r)=>e.extend({initialize(e){this.tileComponents={},this.on(`tileunload`,this._unloadTile),n.setOptions(this,e)},createTile(e){let n=this._tileCoordsToKey(e);return this.tileComponents[n]=t.create(`div`),A(d({setup:r,props:[`coords`]},{coords:e}),this.tileComponents[n]),this.tileComponents[n]},_unloadTile(e){let t=this._tileCoordsToKey(e.coords);this.tileComponents[t]&&(this.tileComponents[t].innerHTML=``,this.tileComponents[t]=void 0)}});_({props:{...Dt,childRender:{type:Function,required:!0}},setup(e,t){let n=y(),r=y(null),i=y(!1),a=F(J),o=q(Y),{options:s,methods:l}=Ot(e,n,t);return w(async()=>{let{GridLayer:r,DomUtil:u,Util:d}=a?K.L:await z(()=>import(`./leaflet-src.esm-DCg_Me6F.js`),[]),f=kt(r,u,d,e.childRender);n.value=P(new f(s));let{listeners:p}=W(t.attrs);n.value.on(p),H(l,n.value,e),o({...e,...l,leafletObject:n.value}),i.value=!0,c(()=>t.emit(`ready`,n.value))}),{root:r,ready:i,leafletObject:n}},render(){return this.ready?d(`div`,{style:{display:`none`},ref:`root`}):null}});var At={iconUrl:{type:String},iconRetinaUrl:{type:String},iconSize:{type:[Object,Array]},iconAnchor:{type:[Object,Array]},popupAnchor:{type:[Object,Array]},tooltipAnchor:{type:[Object,Array]},shadowUrl:{type:String},shadowRetinaUrl:{type:String},shadowSize:{type:[Object,Array]},shadowAnchor:{type:[Object,Array]},bgPos:{type:[Object,Array]},className:{type:String}};_({name:`LIcon`,props:{...At,...tt},setup(e,t){let n=y(),r=F(J),i=q(Je),a=q(Ye),o=q(Xe),s,l,u,d,f,p=(n,r,c)=>{let p=n&&n.innerHTML;if(!r){c&&f&&i()&&a(p);return}let{listeners:m}=W(t.attrs);f&&l(f,m);let{options:h}=nt(e),g=U(e,At,h);p&&(g.html=p),f=g.html?u(g):d(g),s(f,m),o(f)},m=()=>{c(()=>p(n.value,!0,!1))},h=()=>{c(()=>p(n.value,!1,!0))},g={setIconUrl:m,setIconRetinaUrl:m,setIconSize:m,setIconAnchor:m,setPopupAnchor:m,setTooltipAnchor:m,setShadowUrl:m,setShadowRetinaUrl:m,setShadowAnchor:m,setBgPos:m,setClassName:m,setHtml:m};return w(async()=>{let{DomEvent:t,divIcon:i,icon:a}=r?K.L:await z(()=>import(`./leaflet-src.esm-DCg_Me6F.js`),[]);s=t.on,l=t.off,u=i,d=a,H(g,{},e),new MutationObserver(h).observe(n.value,{attributes:!0,childList:!0,characterData:!0,subtree:!0}),m()}),{root:n}},render(){return d(`div`,{ref:`root`},this.$slots.default?this.$slots.default():void 0)}});var jt={...X,opacity:{type:Number},alt:{type:String},interactive:{type:Boolean,default:void 0},crossOrigin:{type:Boolean,default:void 0},errorOverlayUrl:{type:String},zIndex:{type:Number},className:{type:String},url:{type:String,required:!0,custom:!0},bounds:{type:[Array,Object],required:!0,custom:!0}},Mt=(e,t,n)=>{let{options:r,methods:i}=Z(e,t,n);return{options:U(e,jt,r),methods:{...i,setOpacity(e){return t.value.setOpacity(e)},setUrl(e){return t.value.setUrl(e)},setBounds(e){return t.value.setBounds(e)},getBounds(){return t.value.getBounds()},getElement(){return t.value.getElement()},bringToFront(){return t.value.bringToFront()},bringToBack(){return t.value.bringToBack()},setZIndex(e){return t.value.setZIndex(e)}}}};_({name:`LImageOverlay`,props:jt,setup(e,t){let n=y(),r=y(!1),i=F(J),a=q(Y),{options:o,methods:s}=Mt(e,n,t);return w(async()=>{let{imageOverlay:l}=i?K.L:await z(()=>import(`./leaflet-src.esm-DCg_Me6F.js`),[]);n.value=P(l(e.url,e.bounds,o));let{listeners:u}=W(t.attrs);n.value.on(u),H(s,n.value,e),a({...e,...s,leafletObject:n.value}),r.value=!0,c(()=>t.emit(`ready`,n.value))}),{ready:r,leafletObject:n}},render(){return Q(this.ready,this.$slots)}}),_({props:xt,setup(e,t){let n=y(),r=y(!1),i=F(J),a=q(Y),{methods:o}=St(e,n,t);return w(async()=>{let{layerGroup:s}=i?K.L:await z(()=>import(`./leaflet-src.esm-DCg_Me6F.js`),[]);n.value=P(s(void 0,e.options));let{listeners:l}=W(t.attrs);n.value.on(l),H(o,n.value,e),a({...e,...o,leafletObject:n.value}),r.value=!0,c(()=>t.emit(`ready`,n.value))}),{ready:r,leafletObject:n}},render(){return Q(this.ready,this.$slots)}});function Nt(e,t,n){var r,i,a;t===void 0&&(t=50),n===void 0&&(n={});var o=(r=n.isImmediate)!=null&&r,s=(i=n.callback)!=null&&i,c=n.maxWait,l=Date.now(),u=[];function d(){if(c!==void 0){var e=Date.now()-l;if(e+t>=c)return c-e}return t}var f=function(){var t=[].slice.call(arguments),n=this;return new Promise(function(r,i){var c=o&&a===void 0;if(a!==void 0&&clearTimeout(a),a=setTimeout(function(){if(a=void 0,l=Date.now(),!o){var r=e.apply(n,t);s&&s(r),u.forEach(function(e){return(0,e.resolve)(r)}),u=[]}},d()),c){var f=e.apply(n,t);return s&&s(f),r(f)}u.push({resolve:r,reject:i})})};return f.cancel=function(e){a!==void 0&&clearTimeout(a),u.forEach(function(t){return(0,t.reject)(e)}),u=[]},f}var Pt={...tt,center:{type:[Object,Array]},bounds:{type:[Array,Object]},maxBounds:{type:[Array,Object]},zoom:{type:Number},minZoom:{type:Number},maxZoom:{type:Number},paddingBottomRight:{type:[Object,Array]},paddingTopLeft:{type:Object},padding:{type:Object},worldCopyJump:{type:Boolean,default:void 0},crs:{type:[String,Object]},maxBoundsViscosity:{type:Number},inertia:{type:Boolean,default:void 0},inertiaDeceleration:{type:Number},inertiaMaxSpeed:{type:Number},easeLinearity:{type:Number},zoomAnimation:{type:Boolean,default:void 0},zoomAnimationThreshold:{type:Number},fadeAnimation:{type:Boolean,default:void 0},markerZoomAnimation:{type:Boolean,default:void 0},noBlockingAnimations:{type:Boolean,default:void 0},useGlobalLeaflet:{type:Boolean,default:!0,custom:!0}},Ft=_({inheritAttrs:!1,emits:[`ready`,`update:zoom`,`update:center`,`update:bounds`],props:Pt,setup(n,r){let i=y(),s=T({ready:!1,layersToAdd:[],layersInControl:[]}),{options:l}=nt(n),u=U(n,Pt,l),{listeners:d,attrs:f}=W(r.attrs),p=Ue(Y),m=Ue(Ge),h=Ue(Ke),g=Ue(qe);t(J,n.useGlobalLeaflet);let _=a(()=>{let e={};return n.noBlockingAnimations&&(e.animate=!1),e}),v=a(()=>{let e=_.value;return n.padding&&(e.padding=n.padding),n.paddingTopLeft&&(e.paddingTopLeft=n.paddingTopLeft),n.paddingBottomRight&&(e.paddingBottomRight=n.paddingBottomRight),e}),ee={moveend:Nt(e=>{s.leafletRef&&(r.emit(`update:zoom`,s.leafletRef.getZoom()),r.emit(`update:center`,s.leafletRef.getCenter()),r.emit(`update:bounds`,s.leafletRef.getBounds()))}),overlayadd(e){let t=s.layersInControl.find(t=>t.name===e.name);t&&t.updateVisibleProp(!0)},overlayremove(e){let t=s.layersInControl.find(t=>t.name===e.name);t&&t.updateVisibleProp(!1)}};w(async()=>{n.useGlobalLeaflet&&(K.L=K.L||await z(()=>import(`./leaflet-src-AD9ZoK5_.js`).then(t=>e(t.default)),__vite__mapDeps([0,1])));let{map:t,CRS:a,Icon:o,latLngBounds:l,latLng:f,stamp:y}=n.useGlobalLeaflet?K.L:await z(()=>import(`./leaflet-src.esm-DCg_Me6F.js`),[]);try{u.beforeMapMount&&await u.beforeMapMount()}catch(e){console.error(`The following error occurred running the provided beforeMapMount hook ${e.message}`)}await G(o);let b=typeof u.crs==`string`?a[u.crs]:u.crs;u.crs=b||a.EPSG3857;let x={addLayer(e){e.layerType!==void 0&&(s.layerControl===void 0?s.layersToAdd.push(e):s.layersInControl.find(t=>y(t.leafletObject)===y(e.leafletObject))||(s.layerControl.addLayer(e),s.layersInControl.push(e))),e.visible!==!1&&s.leafletRef.addLayer(e.leafletObject)},removeLayer(e){e.layerType!==void 0&&(s.layerControl===void 0?s.layersToAdd=s.layersToAdd.filter(t=>t.name!==e.name):(s.layerControl.removeLayer(e.leafletObject),s.layersInControl=s.layersInControl.filter(t=>y(t.leafletObject)!==y(e.leafletObject)))),s.leafletRef.removeLayer(e.leafletObject)},registerLayerControl(e){s.layerControl=e,s.layersToAdd.forEach(e=>{s.layerControl.addLayer(e)}),s.layersToAdd=[],h(e)},registerControl(e){s.leafletRef.addControl(e.leafletObject)},setZoom(e){e!==s.leafletRef.getZoom()&&s.leafletRef.setZoom(e,_.value)},setCrs(e){let t=s.leafletRef.getBounds();s.leafletRef.options.crs=e,s.leafletRef.fitBounds(t,{animate:!1,padding:[0,0]})},fitBounds(e){s.leafletRef.fitBounds(e,v.value)},setBounds(e){if(!e)return;let t=l(e);t.isValid()&&!(s.lastSetBounds||s.leafletRef.getBounds()).equals(t,0)&&(s.lastSetBounds=t,s.leafletRef.fitBounds(t))},setCenter(e){if(e==null)return;let t=f(e),n=s.lastSetCenter||s.leafletRef.getCenter();(n.lat!==t.lat||n.lng!==t.lng)&&(s.lastSetCenter=t,s.leafletRef.panTo(t,_.value))}};We(p,x.addLayer),We(m,x.removeLayer),We(h,x.registerControl),We(g,x.registerLayerControl),s.leafletRef=P(t(i.value,u)),H(x,s.leafletRef,n),Be(s.leafletRef,ee),Be(s.leafletRef,d),s.ready=!0,c(()=>r.emit(`ready`,s.leafletRef))}),o(()=>{Ve(ee),s.leafletRef&&(s.leafletRef.off(),s.leafletRef.remove())});let b=a(()=>s.leafletRef);return{root:i,ready:a(()=>s.ready),leafletObject:b,attrs:f}},render({attrs:e}){return e.style||={},e.style.width||(e.style.width=`100%`),e.style.height||(e.style.height=`100%`),d(`div`,{...e,ref:`root`},this.ready&&this.$slots.default?this.$slots.default():{})}}),It=[`Symbol(Comment)`,`Symbol(Text)`],Lt=[`LTooltip`,`LPopup`],Rt={...X,draggable:{type:Boolean,default:void 0},icon:{type:[Object]},zIndexOffset:{type:Number},latLng:{type:[Object,Array],custom:!0,required:!0}},zt=(e,t,n)=>{let{options:r,methods:i}=Z(e,t,n);return{options:U(e,Rt,r),methods:{...i,setDraggable(e){t.value.dragging&&(e?t.value.dragging.enable():t.value.dragging.disable())},latLngSync(e){n.emit(`update:latLng`,e.latlng),n.emit(`update:lat-lng`,e.latlng)},setLatLng(e){if(e!=null&&t.value){let n=t.value.getLatLng();(!n||!n.equals(e))&&t.value.setLatLng(e)}}}}},Bt=(e,t)=>{let n=t.slots.default&&t.slots.default();return n&&n.length&&n.some(Vt)};function Vt(e){return!(It.includes(e.type.toString())||Lt.includes(e.type.name))}var Ht=_({name:`LMarker`,props:Rt,setup(e,n){let r=y(),i=y(!1),a=F(J),s=q(Y);t(Je,()=>{var e;return!!((e=r.value)!=null&&e.getElement())}),t(Ye,e=>{let t=V(r.value?.getElement)&&r.value?.getElement();t&&(t.innerHTML=e)}),t(Xe,e=>r.value?.setIcon&&r.value.setIcon(e));let{options:l,methods:u}=zt(e,r,n),d={moveHandler:Nt(u.latLngSync)};return w(async()=>{let{marker:t,divIcon:o}=a?K.L:await z(()=>import(`./leaflet-src.esm-DCg_Me6F.js`),[]);Bt(l,n)&&(l.icon=o({className:``})),r.value=P(t(e.latLng,l));let{listeners:f}=W(n.attrs);r.value.on(f),r.value.on(`move`,d.moveHandler),H(u,r.value,e),s({...e,...u,leafletObject:r.value}),i.value=!0,c(()=>n.emit(`ready`,r.value))}),o(()=>Ve(d)),{ready:i,leafletObject:r}},render(){return Q(this.ready,this.$slots)}}),Ut={...at,smoothFactor:{type:Number},noClip:{type:Boolean,default:void 0},latLngs:{type:Array,required:!0,custom:!0}},Wt=(e,t,n)=>{let{options:r,methods:i}=ot(e,t,n);return{options:U(e,Ut,r),methods:{...i,setSmoothFactor(e){t.value.setStyle({smoothFactor:e})},setNoClip(e){t.value.setStyle({noClip:e})},addLatLng(e){t.value.addLatLng(e)}}}},Gt={...Ut},Kt=(e,t,n)=>{let{options:r,methods:i}=Wt(e,t,n);return{options:U(e,Gt,r),methods:{...i,toGeoJSON(e){return t.value.toGeoJSON(e)}}}};_({name:`LPolygon`,props:Gt,setup(e,t){let n=y(),r=y(!1),i=F(J),a=q(Y),{options:o,methods:s}=Kt(e,n,t);return w(async()=>{let{polygon:l}=i?K.L:await z(()=>import(`./leaflet-src.esm-DCg_Me6F.js`),[]);n.value=P(l(e.latLngs,o));let{listeners:u}=W(t.attrs);n.value.on(u),H(s,n.value,e),a({...e,...s,leafletObject:n.value}),r.value=!0,c(()=>t.emit(`ready`,n.value))}),{ready:r,leafletObject:n}},render(){return Q(this.ready,this.$slots)}}),_({name:`LPolyline`,props:Ut,setup(e,t){let n=y(),r=y(!1),i=F(J),a=q(Y),{options:o,methods:s}=Wt(e,n,t);return w(async()=>{let{polyline:l}=i?K.L:await z(()=>import(`./leaflet-src.esm-DCg_Me6F.js`),[]);n.value=P(l(e.latLngs,o));let{listeners:u}=W(t.attrs);n.value.on(u),H(s,n.value,e),a({...e,...s,leafletObject:n.value}),r.value=!0,c(()=>t.emit(`ready`,n.value))}),{ready:r,leafletObject:n}},render(){return Q(this.ready,this.$slots)}});var qt={...tt,content:{type:String,default:null}},Jt=(e,t)=>{let{options:n,methods:r}=nt(e);return{options:n,methods:{...r,setContent(e){t.value&&e!=null&&t.value.setContent(e)}}}},Yt=e=>e.default?d(`div`,{ref:`root`},e.default()):null,Xt={...qt,latLng:{type:[Object,Array],default:()=>[]}},Zt=(e,t)=>{let{options:n,methods:r}=Jt(e,t);return{options:n,methods:r}};_({name:`LPopup`,props:Xt,setup(e,t){let n=y(),r=y(null),i=F(J),a=q(Ze),s=q($e),{options:l,methods:u}=Zt(e,n);return w(async()=>{let{popup:o}=i?K.L:await z(()=>import(`./leaflet-src.esm-DCg_Me6F.js`),[]);n.value=P(o(l)),e.latLng!==void 0&&n.value.setLatLng(e.latLng),H(u,n.value,e);let{listeners:s}=W(t.attrs);n.value.on(s),n.value.setContent(e.content||r.value||``),a(n.value),c(()=>t.emit(`ready`,n.value))}),o(()=>{s()}),{root:r,leafletObject:n}},render(){return Yt(this.$slots)}});var Qt={...Gt,latLngs:{...Gt.latLngs,required:!1},bounds:{type:Object,custom:!0}},$t=(e,t,n)=>{let{options:r,methods:i}=Kt(e,t,n);return{options:U(e,Qt,r),methods:{...i,setBounds(e){t.value.setBounds(e)},setLatLngs(e){t.value.setBounds(e)}}}};_({name:`LRectangle`,props:Qt,setup(e,t){let n=y(),r=y(!1),i=F(J),a=q(Y),{options:o,methods:s}=$t(e,n,t);return w(async()=>{let{rectangle:l,latLngBounds:u}=i?K.L:await z(()=>import(`./leaflet-src.esm-DCg_Me6F.js`),[]),d=e.bounds?u(e.bounds):u(e.latLngs||[]);n.value=P(l(d,o));let{listeners:f}=W(t.attrs);n.value.on(f),H(s,n.value,e),a({...e,...s,leafletObject:n.value}),r.value=!0,c(()=>t.emit(`ready`,n.value))}),{ready:r,leafletObject:n}},render(){return Q(this.ready,this.$slots)}});var en={...Dt,tms:{type:Boolean,default:void 0},subdomains:{type:[String,Array],validator:e=>typeof e==`string`?!0:Array.isArray(e)?e.every(e=>typeof e==`string`):!1},detectRetina:{type:Boolean,default:void 0},url:{type:String,required:!0,custom:!0}},tn=(e,t,n)=>{let{options:r,methods:i}=Ot(e,t,n);return{options:U(e,en,r),methods:{...i}}},nn=_({props:en,setup(e,t){let n=y(),r=F(J),i=q(Y),{options:a,methods:o}=tn(e,n,t);return w(async()=>{let{tileLayer:s}=r?K.L:await z(()=>import(`./leaflet-src.esm-DCg_Me6F.js`),[]);n.value=P(s(e.url,a));let{listeners:l}=W(t.attrs);n.value.on(l),H(o,n.value,e),i({...e,...o,leafletObject:n.value}),c(()=>t.emit(`ready`,n.value))}),{leafletObject:n}},render(){return null}}),rn={...qt},an=(e,t)=>{let{options:n,methods:r}=Jt(e,t),i=q(et);return o(()=>{i()}),{options:n,methods:r}};_({name:`LTooltip`,props:rn,setup(e,t){let n=y(),r=y(null),i=F(J),a=q(Qe),{options:o,methods:s}=an(e,n);return w(async()=>{let{tooltip:l}=i?K.L:await z(()=>import(`./leaflet-src.esm-DCg_Me6F.js`),[]);n.value=P(l(o)),H(s,n.value,e);let{listeners:u}=W(t.attrs);n.value.on(u),n.value.setContent(e.content||r.value||``),a(n.value),c(()=>t.emit(`ready`,n.value))}),{root:r,leafletObject:n}},render(){return Yt(this.$slots)}});var on={...en,layers:{type:String,required:!0},styles:{type:String},format:{type:String},transparent:{type:Boolean,default:void 0},version:{type:String},crs:{type:Object},uppercase:{type:Boolean,default:void 0}},sn=(e,t,n)=>{let{options:r,methods:i}=tn(e,t,n);return{options:U(e,on,r),methods:{...i}}};_({props:on,setup(e,t){let n=y(),r=F(J),i=q(Y),{options:a,methods:o}=sn(e,n,t);return w(async()=>{let{tileLayer:s}=r?K.L:await z(()=>import(`./leaflet-src.esm-DCg_Me6F.js`),[]);n.value=P(s.wms(e.url,a));let{listeners:l}=W(t.attrs);n.value.on(l),H(o,n.value,e),i({...e,...o,leafletObject:n.value}),c(()=>t.emit(`ready`,n.value))}),{leafletObject:n}},render(){return null}});var cn=()=>{let e=L(),t=y(!1);return{searchCities:async n=>{if(!n||n.length<2)return[];t.value=!0;try{let{data:t,response:r}=await e.client.GET(`/${j}/${Le}/geolocation/city-to-coordinates`,{params:{query:{city:n}}});return r.ok&&t&&t.data||[]}catch{return[]}finally{t.value=!1}},isSearching:t}};export{Re as a,Ae as c,Ie as d,Ne as f,nn as i,Me as l,ke as m,Ft as n,ze as o,Fe as p,Ht as r,je as s,cn as t,Pe as u};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{Er as e}from"./icon-with-child-CgZMNB3F.js";import{bt as t,ct as n,ft as r,gt as i,ht as a,la as o,st as s,t as c,u as l,x as u,yt as d}from"./common-D4Z2wgrj.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:a(),temperatureMin:a().nullable(),temperatureMax:a().nullable(),feelsLike:a(),pressure:a(),humidity:a(),weather:i({code:a(),main:d(),description:d(),icon:d()}),wind:i({speed:a(),deg:a(),gust:a().nullable()}),clouds:a(),rain:a().nullable(),snow:a().nullable(),sunrise:t([d().datetime({offset:!0}),n()]).transform(e=>e instanceof Date?e:new Date(e)),sunset:t([d().datetime({offset:!0}),n()]).transform(e=>e instanceof Date?e:new Date(e)),dayTime:t([d().datetime({offset:!0}),n()]).transform(e=>e instanceof Date?e:new Date(e))});i({getting:s()}),i({data:r({})}),i({data:i({temperature:a(),temperatureMin:a().nullable(),temperatureMax:a().nullable(),feelsLike:a(),pressure:a(),humidity:a(),weather:i({code:a(),main:d(),description:d(),icon:d()}),wind:i({speed:a(),deg:a(),gust:a().nullable()}),clouds:a(),rain:a().nullable(),snow:a().nullable(),sunrise:t([d().datetime({offset:!0}),n()]).transform(e=>e instanceof Date?e:new Date(e)),sunset:t([d().datetime({offset:!0}),n()]).transform(e=>e instanceof Date?e:new Date(e)),dayTime:t([d().datetime({offset:!0}),n()]).transform(e=>e instanceof Date?e:new Date(e))})}),i({temperature:a(),temperature_min:a().nullable().optional(),temperature_max:a().nullable().optional(),feels_like:a(),pressure:a(),humidity:a(),weather:i({code:a(),main:d(),description:d(),icon:d()}),wind:i({speed:a(),deg:a(),gust:a().nullable()}),clouds:a(),rain:a().nullable(),snow:a().nullable(),sunrise:d(),sunset:d(),day_time:d()});var y=e=>{let t=v.safeParse(l(e));if(!t.success)throw c.error(`Schema validation failed with:`,t.error),new _(`Failed to validate received weather day data.`);return t.data},b=({id:t})=>{let n=u().getStore(f),{semaphore:r}=o(n),i=e(()=>{let e=n.findById(t.value);return e&&!e.draft?e:null});return{location:i,isLoading:e(()=>i.value===null?n.getting(t.value)||r.value.fetching.items:!1),fetchLocation:async()=>{await n.get({id:t.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 +1 @@
|
|
|
1
|
-
import"./rolldown-runtime-QTnfLwEv.js";import{Ar as e,D as t,Mr as n,Nr as r,Or as i,Pr as a,Qr as o,Si as s,T as c,ci as l,ji as u,k as d,qi as f,ui as p,xr as m,yr as h}from"./icon-with-child-CgZMNB3F.js";import{
|
|
1
|
+
import"./rolldown-runtime-QTnfLwEv.js";import{Ar as e,D as t,Mr as n,Nr as r,Or as i,Pr as a,Qr as o,Si as s,T as c,ci as l,ji as u,k as d,qi as f,ui as p,xr as m,yr as h}from"./icon-with-child-CgZMNB3F.js";import{ei as g,gt as _,ht as v,m as y,ot as b,p as x,pt as S,st as C,u as w,yt as T}from"./common-D4Z2wgrj.js";import{t as E}from"./alert-I-oSc4A8.js";import{t as D}from"./dialog-4clb5GeY.js";import{i as O,n as k,t as A}from"./mcp.exceptions-cay0WaYC.js";var j=e=>{let t=e.pathname.match(/^(\/api\/hassio_ingress\/[^/]+)/),n=t?t[1]:``;return`${e.origin}${n}/api/v1/modules/mcp`},M=(e,t)=>e.every(e=>t.includes(e)),N=e=>e.credentialRevoked?`revoked`:e.credentialExpiresAt!==null&&new Date(e.credentialExpiresAt).getTime()<=Date.now()?`expired`:e.enabled?`active`:`disabled`,P=a({name:`McpClientActions`,__name:`mcp-client-actions`,props:{client:{}},emits:[`edit`,`rotate`,`revoke`,`delete`],setup(i,{emit:a}){let s=a,{t:l}=c();return(a,c)=>(o(),e(m,null,[r(u(d),{size:`small`,plain:``,title:u(l)(`mcpModule.actions.edit`),"data-test-id":`edit-mcp-client`,onClick:c[0]||=h(e=>s(`edit`,i.client),[`stop`])},{icon:p(()=>[r(u(t),{icon:`mdi:pencil`})]),_:1},8,[`title`]),r(u(d),{size:`small`,plain:``,class:`ml-1!`,"data-test-id":`rotate-mcp-client`,onClick:c[1]||=h(e=>s(`rotate`,i.client),[`stop`])},{icon:p(()=>[r(u(t),{icon:`mdi:autorenew`})]),default:p(()=>[n(` `+f(u(l)(`mcpModule.actions.rotate`)),1)]),_:1}),r(u(d),{size:`small`,type:`warning`,plain:``,class:`ml-1!`,disabled:i.client.credentialRevoked,"data-test-id":`revoke-mcp-client`,onClick:c[2]||=h(e=>s(`revoke`,i.client),[`stop`])},{icon:p(()=>[r(u(t),{icon:`mdi:key-remove`})]),default:p(()=>[n(` `+f(u(l)(`mcpModule.actions.revoke`)),1)]),_:1},8,[`disabled`]),r(u(d),{size:`small`,type:`warning`,plain:``,class:`ml-1!`,title:u(l)(`mcpModule.actions.delete`),"data-test-id":`delete-mcp-client`,onClick:c[3]||=h(e=>s(`delete`,i.client),[`stop`])},{icon:p(()=>[r(u(t),{icon:`mdi:trash`})]),_:1},8,[`title`])],64))}}),F=a({name:`McpTokenDialog`,__name:`mcp-token-dialog`,props:{modelValue:{type:Boolean},token:{},clientName:{}},emits:[`update:model-value`,`closed`],setup(e,{emit:a}){let m=e,h=a,{t:_}=c(),v=x(),y=s(!1),b=async()=>{try{await navigator.clipboard.writeText(m.token),y.value=!0}catch{v.error(_(`mcpModule.messages.copyFailed`))}},S=()=>{h(`update:model-value`,!1),h(`closed`)};return l(()=>m.token,()=>{y.value=!1}),(a,s)=>(o(),i(u(D),{"model-value":e.modelValue,title:u(_)(`mcpModule.token.title`),"close-on-click-modal":!1,"close-on-press-escape":!1,width:`min(640px, 94vw)`,onClose:S},{footer:p(()=>[r(u(d),{onClick:b},{default:p(()=>[r(u(t),{icon:`mdi:content-copy`}),n(` `+f(y.value?u(_)(`mcpModule.token.copied`):u(_)(`mcpModule.token.copy`)),1)]),_:1}),r(u(d),{type:`primary`,onClick:S},{default:p(()=>[n(f(u(_)(`mcpModule.actions.done`)),1)]),_:1})]),default:p(()=>[r(u(E),{type:`warning`,title:u(_)(`mcpModule.token.warningTitle`),description:u(_)(`mcpModule.token.warningDescription`,{name:e.clientName}),closable:!1,"show-icon":``,class:`mb-4`},null,8,[`title`,`description`]),r(u(g),{"model-value":e.token,readonly:``,type:`textarea`,rows:5,name:`oneTimeToken`},null,8,[`model-value`])]),_:1},8,[`model-value`,`title`]))}}),I=T().datetime({offset:!0}).nullable().default(null),L=_({id:T().uuid(),name:T().trim().min(1).max(100),description:T().max(500).nullable().default(null),enabled:C(),capabilities:b(S(O)),createdById:T().uuid().nullable().optional(),tokenId:T().uuid().nullable().optional(),credentialExpiresAt:I,credentialRevoked:C().default(!0),lastUsedAt:I,createdAt:T().datetime({offset:!0}),updatedAt:I}),R=_({name:T().trim().min(1).max(100),description:T().trim().max(500).nullable().default(null),capabilities:b(S(O)),expiresInDays:v().int().min(1).max(k).default(90)}),z=_({name:T().trim().min(1).max(100),description:T().trim().max(500).nullable().default(null),enabled:C(),capabilities:b(S(O))}),B=_({expiresInDays:v().int().min(1).max(k).default(90)}),V=_({client:L,token:T().min(1)}),H=_({id:T().uuid(),name:T(),description:T().nullable(),enabled:C(),capabilities:b(S(O)),created_by_id:T().nullable(),token_id:T().nullable(),credential_expires_at:T().nullable(),credential_revoked:C(),last_used_at:T().nullable(),created_at:T(),updated_at:T().nullable()}),U=(e,t,n,r)=>{let i=t.safeParse(e);if(!i.success)throw new A(`Received ${r} does not match the API contract.`);let a=n.safeParse(w(i.data));if(!a.success)throw new A(`Failed to validate received ${r}.`);return a.data},W=e=>U(e,H,L,`MCP client`),G=`/modules/mcp/clients`,K=`/modules/mcp/clients/{id}`,q=`/modules/mcp/clients/{id}/rotate`,J=`/modules/mcp/clients/{id}/revoke`,Y=()=>{let e=y(),t=s([]),n=s(!1),r=s(null),i=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,loading:n,error:r,fetchClients:async()=>{n.value=!0,r.value=null;try{let{data:n,response:r}=await e.client.GET(G,{});if(!n)throw new A(`Failed to load MCP clients.`,r.status);return t.value=n.data.map(e=>W(e)),t.value}catch(e){throw r.value=e instanceof Error?e:Error(`Failed to load MCP clients.`),r.value}finally{n.value=!1}},createClient:async t=>{let n=R.parse(t),{data:r,response:a}=await e.client.POST(G,{body:{data:{name:n.name,description:n.description,capabilities:n.capabilities,expires_in_days:n.expiresInDays}}});if(!r)throw new A(`Failed to create MCP client.`,a.status);let o=V.parse(w(r.data));return i(o.client),o},updateClient:async(t,n)=>{let r=z.parse(n),{data:a,response:o}=await e.client.PATCH(K,{params:{path:{id:t}},body:{data:r}});if(!a)throw new A(`Failed to update MCP client.`,o.status);return i(W(a.data))},rotateClient:async(t,n)=>{let r=B.parse(n),{data:a,response:o}=await e.client.POST(q,{params:{path:{id:t}},body:{data:{expires_in_days:r.expiresInDays}}});if(!a)throw new A(`Failed to rotate MCP client credential.`,o.status);let s=V.parse(w(a.data));return i(s.client),s},revokeClient:async t=>{let{data:n,response:r}=await e.client.POST(J,{params:{path:{id:t}}});if(!n)throw new A(`Failed to revoke MCP client.`,r.status);return i(W(n.data))},deleteClient:async n=>{let{response:r}=await e.client.DELETE(K,{params:{path:{id:n}}});if(!r.ok)throw new A(`Failed to delete MCP client.`,r.status);t.value=t.value.filter(e=>e.id!==n)}}};export{N as a,M as i,F as n,j as o,P as r,Y as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{Er as e,ji as t}from"./icon-with-child-CgZMNB3F.js";import"./common-
|
|
1
|
+
import{Er as e,ji as t}from"./icon-with-child-CgZMNB3F.js";import"./common-D4Z2wgrj.js";import{t as n}from"./useModules-C_VhvJHC.js";import{n as r}from"./config.constants-17QBQ_kF.js";var i=({name:i})=>{let{getByName:a}=n(),o=e(()=>t(i)),s=e(()=>a(o.value));return{module:s,element:e(()=>s.value?.elements?.find(e=>e.type===r))}};export{i as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{Er as e,Rr as t,zr as n}from"./icon-with-child-CgZMNB3F.js";import"./common-
|
|
1
|
+
import{Er as e,Rr as t,zr as n}from"./icon-with-child-CgZMNB3F.js";import"./common-D4Z2wgrj.js";import{t as r}from"./dist-DJgPCOr0.js";import{n as i,r as a}from"./config.constants-17QBQ_kF.js";var o=Symbol(`FB-App-ModulesManager`),s=class{modules=new Map;addModule(e,t){this.modules.set(e,t)}getModule(e){if(!this.modules.has(e))throw Error(`Module is not registered`);return this.modules.get(e)}getModules(){return Array.from(this.modules.values())}},c=e=>{if(e&&e._context&&e._context.provides&&e._context.provides[o])return e._context.provides[o];if(t()){let e=n(o,void 0);if(e)return e}throw Error(`A modules manager has not been provided.`)},l=(e,t)=>{e.provide(o,t)},u=()=>{let t=c(),n=e(()=>r(t.getModules().filter(e=>e.modules?.includes(a)),[e=>e.name],[`asc`]));return{modules:n,options:e(()=>n.value.map(e=>({value:e.type,label:e.name}))),getByName:e=>n.value.find(t=>t.type===e),getElement:e=>n.value.find(t=>t.type===e)?.elements?.find(e=>e.type===i)}};export{l as i,s as n,c as r,u as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{Er as e}from"./icon-with-child-CgZMNB3F.js";import{
|
|
1
|
+
import{Er as e}from"./icon-with-child-CgZMNB3F.js";import{br as t,hr as n,x as r}from"./common-D4Z2wgrj.js";var i=e=>{switch(e){case`comma_dot`:return`en-US`;case`dot_comma`:return`de-DE`;case`space_comma`:return`fr-FR`;case`none`:return`en-US`}},a=(e,t={},n)=>{let r=n?i(n):navigator.language||`en-US`,a={style:`decimal`,...t};return n===`none`&&(a.useGrouping=!1),new Intl.NumberFormat(r,a).format(e)},o=(e,t=2,n)=>e==null?`—`:`${a(e,{minimumFractionDigits:0,maximumFractionDigits:t},n)}%`,s=e=>t(typeof e==`string`?new Date(e):e),c=()=>{let t=r().getStore(n),i=e(()=>{let e=t.findByType(`system-module`);if(e&&`numberFormat`in e)return e.numberFormat});return{numberFormat:i,format:(e,t)=>a(e,t??{},i.value),formatPct:(e,t)=>o(e,t,i.value)}};export{s as n,c as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{Er as e}from"./icon-with-child-CgZMNB3F.js";import{
|
|
1
|
+
import{Er as e}from"./icon-with-child-CgZMNB3F.js";import{la as t,x as n}from"./common-D4Z2wgrj.js";import{n as r}from"./keys-DgS2vm-E.js";var i=({id:i})=>{let a=n().getStore(r),{data:o,semaphore:s}=t(a);return{page:e(()=>i===null?null:o.value[i]??null),isLoading:e(()=>s.value.fetching.item.includes(i)?!0:(o.value[i]??null)===null&&s.value.fetching.items),fetchPage:async()=>{(o.value[i]??null)?.draft||await a.get({id:i})}}};export{i as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{Si as e,n as t}from"./icon-with-child-CgZMNB3F.js";import{
|
|
1
|
+
import{Si as e,n as t}from"./icon-with-child-CgZMNB3F.js";import{m as n}from"./common-D4Z2wgrj.js";import{r}from"./auth.constants-BM6DNCoE.js";var i=()=>{let i=n(),a=e([]),o=e(!1),s=async()=>{o.value=!0;try{let e=`/${t}/${r}/tokens`,{data:n}=await i.client.GET(e,{});n?.data&&(a.value=n.data.filter(e=>!e.revoked&&e.owner_type===`user`))}catch{}finally{o.value=!1}};return{tokens:a,loading:o,fetchTokens:s,createToken:async e=>{try{let n=`/${t}/${r}/tokens/personal`,{data:a}=await i.client.POST(n,{body:{data:e}});if(a?.data){let e=a.data;return await s(),e}}catch{}return null},revokeToken:async e=>{try{let n=`/${t}/${r}/tokens/{id}`;return await i.client.PATCH(n,{params:{path:{id:e}},body:{data:{type:`long-live`,revoked:!0}}}),await s(),!0}catch{return!1}},deleteToken:async e=>{try{let n=`/${t}/${r}/tokens/{id}`;return await i.client.DELETE(n,{params:{path:{id:e}}}),await s(),!0}catch{return!1}}}};export{i as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{Er as e,ji as t}from"./icon-with-child-CgZMNB3F.js";import{
|
|
1
|
+
import{Er as e,ji as t}from"./icon-with-child-CgZMNB3F.js";import{Mt as n,gr as r,la as i,x as a}from"./common-D4Z2wgrj.js";import{t as o}from"./usePlugins-CLZiBdYY.js";import{i as s}from"./config.constants-17QBQ_kF.js";var c=({type:o})=>{let s=a(),c=s.getStore(r),l=s.getStore(n),{data:u,semaphore:d}=i(c),f=e(()=>t(o)),p=e(()=>c.findByType(f.value));return{configPlugin:p,isLoading:e(()=>{let e=f.value;return e in u.value?!1:d.value.fetching.item.includes(e)}),fetchConfigPlugin:async()=>{try{await c.get({type:f.value})}catch{if(!p.value)try{let e=l.findByType(f.value);c.set({data:{type:f.value,enabled:e?.enabled??!1}})}catch{}}}}},l=({name:n})=>{let{getByName:r}=o(),i=e(()=>t(n)),a=e(()=>r(i.value));return{plugin:a,element:e(()=>a.value?.elements?.find(e=>e.type===s))}};export{c as n,l as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{Er as e,Rr as t,zr as n}from"./icon-with-child-CgZMNB3F.js";import"./common-
|
|
1
|
+
import{Er as e,Rr as t,zr as n}from"./icon-with-child-CgZMNB3F.js";import"./common-D4Z2wgrj.js";import{t as r}from"./dist-DJgPCOr0.js";import{i,r as a}from"./config.constants-17QBQ_kF.js";var o=Symbol(`FB-App-PluginsManager`),s=class{plugins=new Map;addPlugin(e,t){this.plugins.set(e,t)}getPlugin(e){if(!this.plugins.has(e))throw Error(`Plugin is not registered`);return this.plugins.get(e)}getPlugins(){return Array.from(this.plugins.values())}},c=e=>{if(e&&e._context&&e._context.provides&&e._context.provides[o])return e._context.provides[o];if(t()){let e=n(o,void 0);if(e)return e}throw Error(`A plugins manager has not been provided.`)},l=(e,t)=>{e.provide(o,t)},u=()=>{let t=c(),n=e(()=>r(t.getPlugins().filter(e=>e.modules?.includes(a)),[e=>e.name],[`asc`]));return{plugins:n,options:e(()=>n.value.map(e=>({value:e.type,label:e.name}))),getByName:e=>n.value.find(t=>t.type===e),getElement:e=>n.value.find(t=>t.type===e)?.elements?.find(e=>e.type===i)}};export{l as i,s as n,c as r,u as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{Er as e,Si as t,n}from"./icon-with-child-CgZMNB3F.js";import{J as r,Jn as i,ca as a,dt as o,gt as s,ht as c,la as l,lt as u,m as d,o as f,ot as p,pt as m,st as h,x as g,yt as _}from"./common-D4Z2wgrj.js";import{C as v,a as y,f as b,g as x,n as S,v as C}from"./keys-BMDz3FOI.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=s({range:m(y).optional(),showProduction:h().optional()}),D=u(`type`,[s({type:o(C.ENERGY),order:c().int().min(0),settings:E})]),O=s({id:_().uuid(),name:_().min(1),description:_().nullable(),type:m(x),icon:_().nullable(),displayOrder:c().int().min(0),statusWidgets:p(D).nullable(),createdAt:r(),updatedAt:r().nullable(),draft:h().default(!1)}),k=s({name:_().min(1,`Name is required`),description:_().nullable().optional(),type:m(x).optional(),icon:_().nullable().optional(),displayOrder:c().int().min(0).optional(),statusWidgets:p(D).nullable().optional()}),A=s({name:_().min(1).optional(),description:_().nullable().optional(),type:m(x).optional(),icon:_().nullable().optional(),displayOrder:c().int().min(0).optional(),statusWidgets:p(D).nullable().optional()});s({ids:p(_().uuid()).nonempty()});var j=s({succeeded:p(_()),failed:p(s({id:_(),reason:_()}))}),M=e=>{switch(e){case i.room:return x.ROOM;case i.zone:return x.ZONE;case i.master:return x.MASTER;case i.entry:return x.ENTRY;case i.signage_info_panel:return x.SIGNAGE_INFO_PANEL;default:return x.ROOM}},N=e=>{switch(e){case x.ROOM:return i.room;case x.ZONE:return i.zone;case x.MASTER:return i.master;case x.ENTRY:return i.entry;case x.SIGNAGE_INFO_PANEL:return i.signage_info_panel;default:return i.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=a(`spaces_module-spaces`,()=>{let e=d(),r=t({}),i=t(H()),a=t(!1),o=()=>a.value,s=()=>i.value.fetching.items||i.value.fetching.item.length>0,c=e=>r.value[e]??null,l=()=>Object.values(r.value).sort((e,t)=>e.displayOrder-t.displayOrder||e.name.localeCompare(t.name)),u=async()=>{if(i.value.fetching.items)return l();i.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 o=[],s=new Set;for(let e of t.data??[]){let t=R(e);r.value[t.id]=t,s.add(t.id),o.push(t)}for(let e of Object.keys(r.value))s.has(e)||delete r.value[e];return a.value=!0,o}finally{i.value.fetching.items=!1}},p=async t=>{if(i.value.fetching.item.includes(t.id)){let e=c(t.id);if(e)return e;throw new T(`Space not found`)}i.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{i.value.fetching.item=i.value.fetching.item.filter(e=>e!==t.id)}},m=async t=>{let a=t.id??f().toString();i.value.creating.push(a);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{i.value.creating=i.value.creating.filter(e=>e!==a)}},h=async t=>{if(i.value.updating.includes(t.id))throw new T(`Space is already being updated`);if(!c(t.id))throw new T(`Space not found`);i.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{i.value.updating=i.value.updating.filter(e=>e!==t.id)}},g=async e=>{let t=c(e.id);if(!t)throw new T(`Space not found`);if(t.draft){let n=e.id,i=await m({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(i.value.deleting.includes(t.id))throw new T(`Space is already being deleted`);let a=c(t.id);if(!a)throw new T(`Space not found`);i.value.deleting.push(t.id);try{if(!a.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{i.value.deleting=i.value.deleting.filter(e=>e!==t.id)}},v=async t=>{let r=[],a=[];for(let e of t.ids){let t=c(e);t&&(t.draft?r:a).push(e)}for(let e of r)x({id:e});if(a.length===0)return{succeeded:r,failed:[]};i.value.deleting.push(...a);try{let{data:t,error:i}=await e.client.POST(`/${n}/${b}/spaces/bulk-remove`,{body:{data:{ids:a}}});if(i||!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{i.value.deleting=i.value.deleting.filter(e=>!a.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:()=>o()||l().length>0,refresh:()=>u(),data:r,semaphore:i,firstLoad:a,firstLoadFinished:o,fetching:s,findById:c,findAll:l,fetch:u,get:p,add:m,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=g().getStore(S),{firstLoad:n}=l(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 +1 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{o as e}from"./common-D4Z2wgrj.js";var t=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/i;function n(e){return typeof e==`string`&&t.test(e)}function r(e){if(!n(e))throw TypeError(`Invalid UUID`);return parseInt(e.slice(14,15),16)}var i=()=>({generate:()=>e(),validate:e=>n(e)&&r(e)===4});export{i as t};
|
|
@@ -1 +1 @@
|
|
|
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 ee,T as te,Wr as ne,ci as re,di as u,ji as d,k as f,kr as p,qi as m,ui as h,x as ie,xr as ae}from"./icon-with-child-CgZMNB3F.js";import{t as oe}from"./vue-meta.esm-browser.min-C5z7o_np.js";import{
|
|
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 ee,T as te,Wr as ne,ci as re,di as u,ji as d,k as f,kr as p,qi as m,ui as h,x as ie,xr as ae}from"./icon-with-child-CgZMNB3F.js";import{t as oe}from"./vue-meta.esm-browser.min-C5z7o_np.js";import{Dr as g,Er as _,Tr as v,h as y,pr as se,yr as ce}from"./common-D4Z2wgrj.js";import{t as b}from"./card-C50YgvLJ.js";import{n as le,r as ue,s as de,t as x}from"./useBuddyChat-BAy2-Ry5.js";import{t as S}from"./directive-D42ORGRu.js";import{l as C}from"./config.constants-17QBQ_kF.js";import{t as w}from"./useSpaces-CPYe_mwZ.js";var T={class:`uppercase`},E=[`element-loading-text`],D={class:`flex items-center justify-between`},O={class:`font-bold`},k={class:`flex items-center gap-2`},A={class:`font-bold`},j={key:0,class:`text-sm text-[var(--el-text-color-secondary)]`},M={key:3,class:`flex items-center justify-center grow-1 min-h-0 lt-sm:mx-1 sm:mx-2 lt-sm:my-1 sm:my-2`},N={class:`flex flex-col items-center gap-4 py-4`},P={class:`text-lg font-semibold m-0`},F={class:`text-[var(--el-text-color-secondary)] m-0`},I=c({name:`ViewBuddyChat`,__name:`view-buddy-chat`,setup(c){let I=ie(),{t:L}=te();oe({title:L(`buddyModule.meta.chat.title`)});let{isMDDevice:R}=ce(),{enabled:z,loaded:B,fetchConfigModules:V}=se(),H=r(()=>!B.value||z(`buddy-module`)),U=r(()=>B.value&&z(`buddy-module`)),fe={name:C.CONFIG_MODULE_EDIT,params:{module:de}},{spaces:W,fetchSpaces:pe}=w(),G=r(()=>W.value.map(e=>({id:e.id,name:e.name}))),{conversations:K,activeConversationId:me,activeConversation:q,messages:he,hasActiveConversation:ge,isLoadingConversations:_e,isLoadingMessages:ve,isSending:ye,isProviderNotConfigured:J,providerStatuses:be,selectedProviderStatus:xe,isTtsConfigured:Se,playingMessageId:Ce,audioLoading:we,fetchConversations:Te,fetchProviderStatuses:Ee,fetchTtsProviderStatuses:De,createConversation:Y,selectConversation:X,sendMessage:Oe,deleteConversation:ke,playMessageAudio:Ae,stopAudio:je}=x(),Me=r(()=>q.value?q.value.title||L(`buddyModule.texts.newConversation`):L(`buddyModule.texts.noActiveConversation`)),Z=r(()=>{let e=q.value?.space_id;return e?G.value.find(t=>t.id===e)?.name??null:null}),Ne=async()=>{await Y()},Q=async()=>{await Promise.all([pe(),Ee(),De(),Te()]);let e=K.value[0];e?await X(e.id):J.value||await Y()},$=ee(!1);return ne(async()=>{B.value||await V(),U.value&&(await Q(),$.value=!0)}),re(U,async e=>{e&&!$.value&&(await Q(),$.value=!0)}),(r,c)=>(l(),e(ae,null,[d(R)?p(``,!0):(l(),s(d(v),{key:0,teleport:``},{icon:h(()=>[o(d(t),{icon:`mdi:robot-happy`,class:`w[20px] h[20px]`})]),title:h(()=>[a(m(d(L)(`buddyModule.headings.chat`)),1)]),subtitle:h(()=>[a(m(d(L)(`buddyModule.subHeadings.chat`)),1)]),_:1})),d(R)?p(``,!0):(l(),s(d(_),{key:1,align:d(g).LEFT,teleport:``,small:``,onClick:c[0]||=e=>d(I).push(`/`)},{icon:h(()=>[o(d(i),{size:24},{default:h(()=>[o(d(t),{icon:`mdi:chevron-left`})]),_:1})]),default:h(()=>[n(`span`,T,m(d(L)(`buddyModule.buttons.back.title`)),1)]),_:1},8,[`align`])),o(d(y),{heading:d(L)(`buddyModule.headings.chat`),"sub-heading":d(L)(`buddyModule.subHeadings.chat`),icon:`mdi:robot-happy`},null,8,[`heading`,`sub-heading`]),H.value?u((l(),e(`div`,{key:2,"element-loading-text":d(L)(`buddyModule.texts.loadingConversations`),class:`flex overflow-hidden grow-1 min-h-0 lt-sm:mx-1 sm:mx-2 lt-sm:my-1 sm:my-2 gap-4`},[o(d(b),{shadow:`never`,class:`w-[250px] shrink-0 flex flex-col`,"body-class":`p-0! flex-1 min-h-0 overflow-hidden`},{header:h(()=>[n(`div`,D,[n(`span`,O,m(d(L)(`buddyModule.headings.chats`)),1),o(d(f),{type:`primary`,size:`small`,onClick:Ne},{default:h(()=>[o(d(i),{class:`mr-1`},{default:h(()=>[o(d(t),{icon:`mdi:plus`})]),_:1}),a(` `+m(d(L)(`buddyModule.buttons.newChat.title`)),1)]),_:1})])]),default:h(()=>[o(ue,{conversations:d(K),"active-id":d(me),spaces:G.value,onSelect:d(X),onDelete:d(ke)},null,8,[`conversations`,`active-id`,`spaces`,`onSelect`,`onDelete`])]),_:1}),o(d(b),{shadow:`never`,class:`flex-1 min-h-0 flex flex-col`,"body-class":`p-0! flex-1 min-h-0 flex flex-col`},{header:h(()=>[n(`div`,k,[n(`span`,A,m(Me.value),1),Z.value?(l(),e(`span`,j,` · `+m(Z.value),1)):p(``,!0)])]),default:h(()=>[o(le,{messages:d(he),"is-sending":d(ye),"is-loading-messages":d(ve),"has-active-conversation":d(ge),"is-provider-not-configured":d(J),"selected-provider":d(xe),"provider-statuses":d(be),"is-tts-configured":d(Se),"playing-message-id":d(Ce),"audio-loading":d(we),onSend:d(Oe),onPlayAudio:d(Ae),onStopAudio:d(je),onWizardCompleted:Q},null,8,[`messages`,`is-sending`,`is-loading-messages`,`has-active-conversation`,`is-provider-not-configured`,`selected-provider`,`provider-statuses`,`is-tts-configured`,`playing-message-id`,`audio-loading`,`onSend`,`onPlayAudio`,`onStopAudio`])]),_:1})],8,E)),[[d(S),d(_e)]]):(l(),e(`div`,M,[o(d(b),{shadow:`never`,class:`max-w-md text-center`},{default:h(()=>[n(`div`,N,[o(d(i),{size:48,color:`var(--el-text-color-secondary)`},{default:h(()=>[o(d(t),{icon:`mdi:robot-off`})]),_:1}),n(`h3`,P,m(d(L)(`buddyModule.texts.moduleDisabled`)),1),n(`p`,F,m(d(L)(`buddyModule.texts.moduleDisabledHint`)),1),o(d(f),{type:`primary`,onClick:c[1]||=e=>d(I).push(fe)},{default:h(()=>[o(d(i),{class:`mr-1`},{default:h(()=>[o(d(t),{icon:`mdi:cog`})]),_:1}),a(` `+m(d(L)(`buddyModule.buttons.goToSettings.title`)),1)]),_:1})])]),_:1})]))],64))}});export{I as default};
|
|
@@ -1 +1 @@
|
|
|
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,ji as p,jr as m,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{
|
|
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,ji as p,jr as m,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{Dr as S,Er as C,Qr as w,Tr as T,jr as E,vr as D,yr as O}from"./common-D4Z2wgrj.js";import{t as k}from"./useUuid-D7PWqngt.js";import{d as A,f as j}from"./keys-DgS2vm-E.js";import"./dashboard-YUP0xrqH.js";import{t as M}from"./card-add-form-CwVNfOa0.js";import{o as N}from"./pages-cards.contants-DcS0YOKq.js";var te={class:`uppercase`},P={class:`flex flex-col overflow-hidden h-full`},F={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)`}},I={class:`p-2`},L=c({name:`ViewPageCardAdd`,__name:`view-card-add`,props:{pageId:{},page:{},remoteFormChanged:{type:Boolean}},emits:[`update:remote-form-changed`],setup(c,{emit:L}){let R=c,z=L,B=y(),{t:V}=ee();x({title:V(`pagesCardsPlugin.meta.pages.addCard.title`)});let{generate:H}=k(),{isMDDevice:U,isLGDevice:W}=O(),G=H(),K=u(!1),q=u(A.NONE),J=u(!1),Y=u(!1),X=r(()=>{let e=[];return e.push({label:V(`dashboardModule.breadcrumbs.pages.list`),route:B.resolve({name:j.PAGES})}),e.push({label:V(`dashboardModule.breadcrumbs.pages.detail`,{page:R.page?.title}),route:B.resolve({name:j.PAGE,params:{id:R.page?.id}})}),e.push({label:V(`pagesCardsPlugin.breadcrumbs.pages.configure`,{page:R.page?.title}),route:B.resolve({name:N.PAGE,params:{id:R.page?.id}})}),e.push({label:V(`pagesCardsPlugin.breadcrumbs.pages.addCard`,{page:R.page?.title}),route:B.resolve({name:N.PAGE_ADD_CARD,params:{id:R.page?.id}})}),e});d(()=>{z(`update:remote-form-changed`,Y.value)});let Z=()=>{E.confirm(V(`pagesCardsPlugin.texts.misc.confirmDiscard`),V(`pagesCardsPlugin.headings.misc.discard`),{confirmButtonText:V(`pagesCardsPlugin.buttons.yes.title`),cancelButtonText:V(`pagesCardsPlugin.buttons.no.title`),type:`warning`}).then(()=>{W.value?B.replace({name:N.PAGE,params:{id:R.page?.id}}):B.push({name:N.PAGE,params:{id:R.page?.id}})}).catch(()=>{})},Q=()=>{K.value=!0},$=()=>{W.value?B.replace({name:N.PAGE,params:{id:R.page?.id}}):B.push({name:N.PAGE,params:{id:R.page?.id}})};return f(()=>q.value,e=>{e===A.OK&&(W.value?B.replace({name:N.PAGE,params:{id:R.page?.id}}):B.push({name:N.PAGE,params:{id:R.page?.id}}))}),f(()=>Y.value,e=>{z(`update:remote-form-changed`,e)}),(r,c)=>(l(),e(b,null,[o(p(T),{teleport:``},{icon:v(()=>[o(p(t),{icon:`mdi:card-plus-outline`,class:`w[20px] h[20px]`})]),title:v(()=>[a(_(p(V)(`pagesCardsPlugin.headings.pages.addCard`)),1)]),subtitle:v(()=>[a(_(p(V)(`pagesCardsPlugin.subHeadings.pages.addCard`)),1)]),_:1}),p(U)?g(``,!0):(l(),s(p(C),{key:0,align:p(S).LEFT,teleport:``,small:``,onClick:c[0]||=()=>Y.value?Z():$()},{icon:v(()=>[o(p(i),{size:24},{default:v(()=>[o(p(t),{icon:`mdi:chevron-left`})]),_:1})]),_:1},8,[`align`])),p(U)?g(``,!0):(l(),s(p(C),{key:1,align:p(S).RIGHT,teleport:``,small:``,onClick:Q},{default:v(()=>[n(`span`,te,_(p(V)(`pagesCardsPlugin.buttons.add.title`)),1)]),_:1},8,[`align`])),o(p(D),{items:X.value},null,8,[`items`]),n(`div`,P,[o(p(w),{class:`grow-1 p-2 md:px-4`},{default:v(()=>[o(M,{id:p(G),"remote-form-submit":K.value,"onUpdate:remoteFormSubmit":c[1]||=e=>K.value=e,"remote-form-result":q.value,"onUpdate:remoteFormResult":c[2]||=e=>q.value=e,"remote-form-reset":J.value,"onUpdate:remoteFormReset":c[3]||=e=>J.value=e,"remote-form-changed":Y.value,"onUpdate:remoteFormChanged":c[4]||=e=>Y.value=e,page:R.page},null,8,[`id`,`remote-form-submit`,`remote-form-result`,`remote-form-reset`,`remote-form-changed`,`page`])]),_:1}),p(U)?(l(),e(`div`,F,[n(`div`,I,[Y.value?(l(),s(p(h),{key:0,link:``,class:`mr-2`,onClick:Z},{default:v(()=>[a(_(p(V)(`pagesCardsPlugin.buttons.discard.title`)),1)]),_:1})):g(``,!0),Y.value?g(``,!0):(l(),s(p(h),{key:1,link:``,class:`mr-2`,onClick:$},{default:v(()=>[a(_(p(V)(`pagesCardsPlugin.buttons.close.title`)),1)]),_:1})),o(p(h),{loading:q.value===p(A).WORKING,disabled:q.value!==p(A).NONE,type:`primary`,class:`order-2`,onClick:Q},m({default:v(()=>[a(` `+_(p(V)(`pagesCardsPlugin.buttons.add.title`)),1)]),_:2},[q.value===p(A).OK||q.value===p(A).ERROR?{name:`icon`,fn:v(()=>[q.value===p(A).OK?(l(),s(p(t),{key:0,icon:`mdi:check-circle`})):q.value===p(A).ERROR?(l(),s(p(t),{key:1,icon:`mdi:cross-circle`})):g(``,!0)]),key:`0`}:void 0]),1032,[`loading`,`disabled`])])])):g(``,!0)])],64))}});export{L as default};
|
|
@@ -0,0 +1 @@
|
|
|
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,ji as p,jr as re,k as m,kr as h,qi as g,ui as _,x as v,xr as y}from"./icon-with-child-CgZMNB3F.js";import{t as b}from"./vue-meta.esm-browser.min-C5z7o_np.js";import{Dr as x,Er as S,Qr as ie,Tr as ae,jr as C,la as w,p as T,vr as oe,x as E,yr as se}from"./common-D4Z2wgrj.js";import{t as ce}from"./directive-D42ORGRu.js";import{t as le}from"./useUuid-D7PWqngt.js";import{a as D,d as O,f as k,i as ue}from"./keys-DgS2vm-E.js";import"./dashboard-YUP0xrqH.js";import{t as A}from"./keys-ctR4af6H.js";import{t as j}from"./card-edit-form-CSyu6tst.js";import{o as M}from"./pages-cards.contants-DcS0YOKq.js";var N=({id:e,pageId:t})=>{let n=E().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 E=c,A=w,R=v(),{t:z}=ee(),B=T();b({title:z(`pagesCardsPlugin.meta.pages.editCard.title`)});let{validate:V}=le(),{isMDDevice:H,isLGDevice:U}=se(),{card:W,isLoading:G,fetchCard:de}=N({id:E.id,pageId:E.page.id}),K=u(!1);if(!V(E.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:E.page?.title}),route:R.resolve({name:k.PAGE,params:{id:E.page?.id}})}),e.push({label:z(`pagesCardsPlugin.breadcrumbs.pages.configure`,{page:E.page?.title}),route:R.resolve({name:M.PAGE,params:{id:E.page?.id}})}),e.push({label:z(`pagesCardsPlugin.breadcrumbs.pages.editCard`,{page:E.page?.title}),route:R.resolve({name:M.PAGE_EDIT_CARD,params:{id:E.page?.id,cardId:W.value?.id}})}),e}),Z=()=>{C.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:E.page?.id}}):R.push({name:M.PAGE,params:{id:E.page?.id}})}).catch(()=>{})},Q=()=>{q.value=!0},$=()=>{U.value?R.replace({name:M.PAGE,params:{id:E.page?.id}}):R.push({name:M.PAGE,params:{id:E.page?.id}})};return te(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)})}),ne(()=>{A(`update:remote-form-changed`,X.value)}),d(()=>G.value,e=>{if(!e&&W.value===null&&!K.value)throw new D(`Card not found`)}),d(()=>W.value,e=>{if(e!==null)K.value=!0;else if(K.value&&!G.value)B.warning(z(`pagesCardsPlugin.messages.cards.deletedWhileEditing`),{duration:0}),E.page?.id?U.value?R.replace({name:M.PAGE,params:{id:E.page.id}}):R.push({name:M.PAGE,params:{id:E.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`)}),d(()=>J.value,e=>{e===O.OK&&(U.value?R.replace({name:M.PAGE,params:{id:E.page?.id}}):R.push({name:M.PAGE,params:{id:E.page?.id}}))}),d(()=>X.value,e=>{A(`update:remote-form-changed`,e)}),(r,c)=>(l(),e(y,null,[o(p(ae),{teleport:``},{icon:_(()=>[o(p(t),{icon:`mdi:card-text-outline`,class:`w[20px] h[20px]`})]),title:_(()=>[a(g(p(z)(`pagesCardsPlugin.headings.pages.editCard`)),1)]),subtitle:_(()=>[a(g(p(z)(`pagesCardsPlugin.subHeadings.pages.editCard`)),1)]),_:1}),p(H)?h(``,!0):(l(),s(p(S),{key:0,align:p(x).LEFT,teleport:``,small:``,onClick:c[0]||=()=>X.value?Z():$()},{icon:_(()=>[o(p(i),{size:24},{default:_(()=>[o(p(t),{icon:`mdi:chevron-left`})]),_:1})]),_:1},8,[`align`])),p(H)?h(``,!0):(l(),s(p(S),{key:1,align:p(x).RIGHT,teleport:``,small:``,onClick:Q},{default:_(()=>[n(`span`,P,g(p(z)(`pagesCardsPlugin.buttons.update.title`)),1)]),_:1},8,[`align`])),o(p(oe),{items:fe.value},null,8,[`items`]),f((l(),e(`div`,{"element-loading-text":p(z)(`pagesCardsPlugin.texts.cards.loadingCard`),class:`flex flex-col overflow-hidden h-full`},[p(W)===null?h(``,!0):(l(),s(p(ie),{key:0,class:`grow-1 p-2 md:px-4`},{default:_(()=>[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:p(W),page:E.page},null,8,[`remote-form-submit`,`remote-form-result`,`remote-form-reset`,`remote-form-changed`,`card`,`page`])]),_:1})),p(H)?(l(),e(`div`,I,[n(`div`,L,[X.value?(l(),s(p(m),{key:0,link:``,class:`mr-2`,onClick:Z},{default:_(()=>[a(g(p(z)(`pagesCardsPlugin.buttons.discard.title`)),1)]),_:1})):h(``,!0),X.value?h(``,!0):(l(),s(p(m),{key:1,link:``,class:`mr-2`,onClick:$},{default:_(()=>[a(g(p(z)(`pagesCardsPlugin.buttons.close.title`)),1)]),_:1})),o(p(m),{loading:J.value===p(O).WORKING,disabled:J.value!==p(O).NONE||!X.value,type:`primary`,class:`order-2`,onClick:Q},re({default:_(()=>[a(` `+g(p(z)(`pagesCardsPlugin.buttons.update.title`)),1)]),_:2},[J.value===p(O).OK||J.value===p(O).ERROR?{name:`icon`,fn:_(()=>[J.value===p(O).OK?(l(),s(p(t),{key:0,icon:`mdi:check-circle`})):J.value===p(O).ERROR?(l(),s(p(t),{key:1,icon:`mdi:cross-circle`})):h(``,!0)]),key:`0`}:void 0]),1032,[`loading`,`disabled`])])])):h(``,!0)],8,F)),[[p(ce),p(G)||p(W)===null]])],64))}});export{R as default};
|
|
@@ -1 +1 @@
|
|
|
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,Sr as ee,T as d,Wr as f,Yr as te,_i as p,b as ne,ci as m,ii as h,ji as g,k as _,kr as v,ni as re,qi as y,ui as b,x as ie,xr as x}from"./icon-with-child-CgZMNB3F.js";import{t as ae}from"./vue-meta.esm-browser.min-C5z7o_np.js";import{
|
|
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,Sr as ee,T as d,Wr as f,Yr as te,_i as p,b as ne,ci as m,ii as h,ji as g,k as _,kr as v,ni as re,qi as y,ui as b,x as ie,xr as x}from"./icon-with-child-CgZMNB3F.js";import{t as ae}from"./vue-meta.esm-browser.min-C5z7o_np.js";import{Dr as S,Er as C,Or as oe,Tr as se,g as ce,h as le,j as ue,jr as de,p as fe,vr as pe,yr as me}from"./common-D4Z2wgrj.js";import{t as he}from"./drawer-Dnlv6Zc7.js";import{d as ge,f as _e}from"./components-D6u7Ijb4.js";import{t as ve}from"./useUuid-D7PWqngt.js";import{o as w}from"./devices.constants-DHQemX04.js";import{H as ye,O as be,S as xe,x as Se,z as Ce}from"./composables-2NuyfNXO.js";var we={class:`uppercase`},Te={class:`flex items-center`},T={key:2,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`},E={class:`flex flex-col h-full`},D=c({name:`ViewChannel`,__name:`view-channel`,props:{id:{},propertyId:{}},setup(c){let D=c,O=ne(),k=ie(),{t:A}=d(),{meta:Ee}=ae({}),j=fe(),{validate:De}=ve(),{isMDDevice:M,isLGDevice:N}=me(),{channel:P,isLoading:F,fetchChannel:Oe}=Ce({id:D.id}),I=u(!1),L=u(!1),{canAddAnotherProperty:R}=be({id:D.id}),{properties:ke,propertiesPaginated:Ae,totalRows:je,filters:z,filtersActive:B,sortBy:V,sortDir:H,paginateSize:U,paginatePage:W,areLoading:Me,fetchProperties:Ne,resetFilter:Pe}=xe({channelId:D.id}),Fe=Se();De(D.id)||(L.value=!0);let G=u(!1),K=u(!1),q=u(!1),J=u(!1),Y=r(()=>O.name===w.CHANNEL),Ie=r(()=>[{label:A(`devicesModule.breadcrumbs.channels.list`),route:k.resolve({name:w.CHANNELS})},{label:A(`devicesModule.breadcrumbs.channels.detail`,{channel:P.value?.name}),route:k.resolve({name:w.CHANNEL})}]),X=e=>{q.value?(K.value=!1,q.value=!1,e?.()):J.value?de.confirm(A(`devicesModule.texts.misc.confirmDiscard`),A(`devicesModule.headings.misc.discard`),{confirmButtonText:A(`devicesModule.buttons.yes.title`),cancelButtonText:A(`devicesModule.buttons.no.title`),type:`warning`}).then(()=>{N.value?k.replace({name:w.CHANNEL,params:{id:D.id}}):k.push({name:w.CHANNEL,params:{id:D.id}}),e?.()}).catch(()=>{}):(N.value?k.replace({name:w.CHANNEL,params:{id:D.id}}):k.push({name:w.CHANNEL,params:{id:D.id}}),e?.())},Le=()=>{N.value?k.replace({name:w.CHANNEL_EDIT,params:{id:D.id}}):k.push({name:w.CHANNEL_EDIT,params:{id:D.id}})},Z=()=>{N.value?k.replace({name:w.CHANNEL_ADD_PROPERTY,params:{id:D.id}}):k.push({name:w.CHANNEL_ADD_PROPERTY,params:{id:D.id}})},Re=e=>{N.value?k.replace({name:w.CHANNEL_EDIT_PROPERTY,params:{id:D.id,propertyId:e}}):k.push({name:w.CHANNEL_EDIT_PROPERTY,params:{id:D.id,propertyId:e}})},ze=e=>{Fe.remove(e)},Q=()=>{Pe()},$=()=>{N.value?k.replace({name:w.CHANNELS}):k.push({name:w.CHANNELS})},Be=()=>{K.value=!0,q.value=!0};return f(()=>{L.value||(Oe().then(()=>{if(!F.value&&P.value===null&&!I.value){L.value=!0;return}P.value!==null&&(I.value=!0),Ne().catch(()=>{j.error(A(`devicesModule.messages.channelsProperties.notLoadedForChannel`))})}).catch(e=>{e instanceof ye&&e.code===404||j.error(A(`devicesModule.messages.channels.notLoaded`)),L.value=!0}),K.value=O.matched.find(e=>e.name===w.CHANNEL_EDIT||e.name===w.CHANNEL_ADD_PROPERTY||e.name===w.CHANNEL_EDIT_PROPERTY)!==void 0)}),te(()=>{G.value=!0}),m(()=>O.path,()=>{K.value=O.matched.find(e=>e.name===w.CHANNEL_EDIT||e.name===w.CHANNEL_ADD_PROPERTY||e.name===w.CHANNEL_EDIT_PROPERTY)!==void 0}),m(()=>F.value,e=>{!e&&P.value===null&&!I.value&&(L.value=!0)}),m(()=>P.value,e=>{e===null?I.value&&!F.value?(j.warning(A(`devicesModule.messages.channels.deletedWhileEditing`),{duration:0}),N.value?k.replace({name:w.CHANNELS}):k.push({name:w.CHANNELS})):!F.value&&e===null&&!I.value&&(L.value=!0):(I.value=!0,Ee.title=A(`devicesModule.meta.channels.detail.title`,{channel:P.value?.name}))}),(r,c)=>{let u=re(`router-view`);return l(),e(x,null,[L.value?v(``,!0):(l(),e(x,{key:0},[o(g(pe),{items:Ie.value},null,8,[`items`]),!g(M)&&Y.value?(l(),s(g(se),{key:0,teleport:``},{icon:b(()=>[o(g(t),{icon:`mdi:chip`,class:`w[20px] h[20px]`})]),title:b(()=>[a(y(g(A)(`devicesModule.headings.channels.detail`,{channel:g(P)?.name})),1)]),subtitle:b(()=>[a(y(g(A)(`devicesModule.subHeadings.channels.detail`,{channel:g(P)?.name})),1)]),_:1})):v(``,!0),g(M)?v(``,!0):(l(),s(g(C),{key:1,align:g(S).LEFT,teleport:``,small:``,onClick:$},{icon:b(()=>[o(g(i),{size:24},{default:b(()=>[o(g(t),{icon:`mdi:chevron-left`})]),_:1})]),_:1},8,[`align`])),!g(M)&&Y.value&&g(R)?(l(),s(g(C),{key:2,align:g(S).RIGHT,teleport:``,small:``,onClick:Z},{default:b(()=>[n(`span`,we,y(g(A)(`devicesModule.buttons.add.title`)),1)]),_:1},8,[`align`])):v(``,!0),o(g(le),{heading:g(A)(`devicesModule.headings.channels.detail`,{channel:g(P)?.name}),"sub-heading":g(A)(`devicesModule.subHeadings.channels.detail`,{channel:g(P)?.name}),icon:`mdi:chip`},{extra:b(()=>[n(`div`,Te,[o(g(_),{type:`primary`,plain:``,class:`px-4! ml-2!`,disabled:!g(R),onClick:Z},{icon:b(()=>[o(g(t),{icon:`mdi:plus`})]),default:b(()=>[a(` `+y(g(A)(`devicesModule.buttons.addProperty.title`)),1)]),_:1},8,[`disabled`]),o(g(_),{plain:``,class:`px-4! ml-2!`,onClick:Le},{icon:b(()=>[o(g(t),{icon:`mdi:pencil`})]),_:1})])]),_:1},8,[`heading`,`sub-heading`])],64)),L.value?(l(),s(g(ue),{key:1,icon:`mdi:chip`,message:g(A)(`devicesModule.messages.channels.notFound`),"button-label":g(A)(`devicesModule.buttons.back.title`),onBack:$},null,8,[`message`,`button-label`])):Y.value||g(N)?(l(),e(`div`,T,[o(g(_e),{filters:g(z),"onUpdate:filters":c[0]||=e=>p(z)?z.value=e:null,"sort-by":g(V),"onUpdate:sortBy":c[1]||=e=>p(V)?V.value=e:null,"sort-dir":g(H),"onUpdate:sortDir":c[2]||=e=>p(H)?H.value=e:null,"paginate-size":g(U),"onUpdate:paginateSize":c[3]||=e=>p(U)?U.value=e:null,"paginate-page":g(W),"onUpdate:paginatePage":c[4]||=e=>p(W)?W.value=e:null,items:g(Ae),"all-items":g(ke),"total-rows":g(je),loading:g(Me),"filters-active":g(B),onEdit:Re,onRemove:ze,onAdjustList:Be,onResetFilters:Q},null,8,[`filters`,`sort-by`,`sort-dir`,`paginate-size`,`paginate-page`,`items`,`all-items`,`total-rows`,`loading`,`filters-active`])])):(l(),s(u,{key:D.id},{default:b(({Component:e})=>[(l(),s(h(e),{channel:g(P)},null,8,[`channel`]))]),_:1})),g(N)?(l(),s(g(he),{key:4,modelValue:K.value,"onUpdate:modelValue":c[8]||=e=>K.value=e,"show-close":!1,size:q.value?`300px`:`40%`,"with-header":!1,"before-close":X},{default:b(()=>[n(`div`,E,[o(g(oe),{"menu-button-hidden":``},{"button-right":b(()=>[o(g(C),{align:g(S).RIGHT,class:`mr-2`,onClick:c[5]||=()=>X()},{icon:b(()=>[o(g(i),null,{default:b(()=>[o(g(t),{icon:`mdi:close`})]),_:1})]),_:1},8,[`align`])]),_:1}),K.value?(l(),e(x,{key:0},[q.value?(l(),s(g(ge),{key:0,filters:g(z),"onUpdate:filters":c[6]||=e=>p(z)?z.value=e:null,"filters-active":g(B),onResetFilters:Q},null,8,[`filters`,`filters-active`])):(l(),s(g(ce),{key:1},{icon:b(()=>[o(g(t),{icon:`mdi:tune`})]),message:b(()=>[a(y(g(A)(`devicesModule.messages.misc.requestError`)),1)]),default:b(()=>[(l(),s(ee,null,{default:b(()=>[(l(),s(u,{key:D.id},{default:b(({Component:e})=>[(l(),s(h(e),{"remote-form-changed":J.value,"onUpdate:remoteFormChanged":c[7]||=e=>J.value=e,channel:g(P)},null,40,[`remote-form-changed`,`channel`]))]),_:1}))]),_:1}))]),_:1}))],64)):v(``,!0)])]),_:1},8,[`modelValue`,`size`])):v(``,!0)],64)}}});export{D as default};
|