@camera.ui/server 2.2.8 → 2.3.0
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/LICENSE.md +8 -1
- package/dist/interface/assets/{404-BYV0u5qE.js → 404-C0X5UBF4.js} +1 -1
- package/dist/interface/assets/About-Ctp_u5qK.js +1 -0
- package/dist/interface/assets/Assistant-Bj2bAUHD.css +1 -0
- package/dist/interface/assets/Assistant-CDrBV_mg.js +1 -0
- package/dist/interface/assets/Automation-Dp6V80Iz.js +3 -0
- package/dist/interface/assets/{Automation-BSicfOGF.css → Automation-R5o9sXYY.css} +1 -1
- package/dist/interface/assets/{AutomationImport-Iu-K82Os.js → AutomationImport-DKgg7atE.js} +2 -2
- package/dist/interface/assets/AutomationStore-CU-m5VC8.js +2 -0
- package/dist/interface/assets/{AutomationStoreDetail-BbvLRJ5u.js → AutomationStoreDetail-CiyIs8Iu.js} +2 -2
- package/dist/interface/assets/Automations-Dljh-sWu.js +2 -0
- package/dist/interface/assets/Camera-0p0P_mbp.css +1 -0
- package/dist/interface/assets/Camera-Bvovab-8.js +2 -0
- package/dist/interface/assets/{CameraConsole-JBD3ZmJ6.js → CameraConsole-D_Fv-MAi.js} +1 -1
- package/dist/interface/assets/{Cameras-R5mJGMK9.js → Cameras-Cq7Gw-fk.js} +2 -2
- package/dist/interface/assets/{Camview-DH6_8CxH.css → Camview-Bs2VvmUS.css} +1 -1
- package/dist/interface/assets/Camview-CP6PA20C.js +1 -0
- package/dist/interface/assets/{CertificateUpload-B9S4EOQs.js → CertificateUpload-DjzNMFc3.js} +1 -1
- package/dist/interface/assets/{Config-CbFl5Wcp.js → Config-Dl2TlyFe.js} +1 -1
- package/dist/interface/assets/{ConfigActionAssistant-DIOh6-np.js → ConfigActionAssistant-DCkJ_Iqq.js} +1 -1
- package/dist/interface/assets/ConfigActionCameraControl-2pzl59gR.js +1 -0
- package/dist/interface/assets/{ConfigActionDelay-B9i4YZjy.js → ConfigActionDelay-BAp1dr0N.js} +1 -1
- package/dist/interface/assets/{ConfigActionHttp-DFtxAa3U.js → ConfigActionHttp-_kqgEuun.js} +1 -1
- package/dist/interface/assets/{ConfigActionImageInput-CuTH4Nw2.js → ConfigActionImageInput-BgtACnCm.js} +1 -1
- package/dist/interface/assets/{ConfigActionMqtt-B9SfWP-G.js → ConfigActionMqtt-z7UzccW5.js} +1 -1
- package/dist/interface/assets/{ConfigActionNotification-BGMIByJT.js → ConfigActionNotification-bhbb5AqU.js} +1 -1
- package/dist/interface/assets/{ConfigActionNotificationControl-Cz72szMd.js → ConfigActionNotificationControl-BbvX8MFu.js} +1 -1
- package/dist/interface/assets/{ConfigActionOutput-BG6DoIRe.js → ConfigActionOutput-DdgSg3FU.js} +1 -1
- package/dist/interface/assets/{ConfigActionPlugin-B5oRSE9n.js → ConfigActionPlugin-DGjZd1L0.js} +1 -1
- package/dist/interface/assets/ConfigActionSensor-DmImWFAo.js +1 -0
- package/dist/interface/assets/{ConfigActionSnapshot-Di-uxMrg.js → ConfigActionSnapshot-hVHSfdtS.js} +1 -1
- package/dist/interface/assets/{ConfigActionVariable-BBpUti5A.js → ConfigActionVariable-BIpruwsx.js} +1 -1
- package/dist/interface/assets/{ConfigConditionIfElse-DjOKPXQw.js → ConfigConditionIfElse-DRSpsoR4.js} +1 -1
- package/dist/interface/assets/{ConfigConditionSensorState-BzvvZvD0.js → ConfigConditionSensorState-C2SNARH7.js} +1 -1
- package/dist/interface/assets/{ConfigConditionSwitch-DQvdfUxR.js → ConfigConditionSwitch-4SbQcU7N.js} +1 -1
- package/dist/interface/assets/{ConfigConditionTime-BqOElX5C.js → ConfigConditionTime-ESX3shbg.js} +1 -1
- package/dist/interface/assets/{ConfigSensorValueInput-BT-0LhSH.js → ConfigSensorValueInput-CTUdAA-R.js} +1 -1
- package/dist/interface/assets/{ConfigTriggerDetection-1OkudUah.js → ConfigTriggerDetection-BRr6ixxQ.js} +1 -1
- package/dist/interface/assets/{ConfigTriggerGeofence-HGatk3C5.js → ConfigTriggerGeofence-D-xRMGrT.js} +1 -1
- package/dist/interface/assets/{ConfigTriggerManual-DpRr_vVq.js → ConfigTriggerManual-aXD6k1qa.js} +1 -1
- package/dist/interface/assets/{ConfigTriggerMqtt-C_MId3BY.js → ConfigTriggerMqtt-pjHW4yOL.js} +1 -1
- package/dist/interface/assets/{ConfigTriggerSchedule-BmwDqd6N.js → ConfigTriggerSchedule-CYOt57qg.js} +1 -1
- package/dist/interface/assets/{ConfigTriggerSensor-Rgx8q4g8.js → ConfigTriggerSensor-BwJ_cAqd.js} +1 -1
- package/dist/interface/assets/{ConfigTriggerSystem-4VsHPmbn.js → ConfigTriggerSystem-DBXIrjzU.js} +1 -1
- package/dist/interface/assets/{ConfigTriggerWebhook-Bs7zEfY0.js → ConfigTriggerWebhook-CccBmMCb.js} +1 -1
- package/dist/interface/assets/Console-DWAaz1C6.js +1 -0
- package/dist/interface/assets/CuiAssistantConversation-B3xEiNNt.js +5 -0
- package/dist/interface/assets/{CuiAssistantConversation-BmBhwrNh.css → CuiAssistantConversation-C5ca1lgX.css} +1 -1
- package/dist/interface/assets/CuiAutomationRunsDialog-CfylVPLI.js +1 -0
- package/dist/interface/assets/CuiBottomSheet-ACN23VLS.js +1 -0
- package/dist/interface/assets/{CuiBottomSheet-Dd3uOtnC.js → CuiBottomSheet-DEVNeDqa.js} +1 -1
- package/dist/interface/assets/CuiCameraPipCard-rR_FW9zq.js +1 -0
- package/dist/interface/assets/CuiCameraRecordings-CnorhPhf.js +1 -0
- package/dist/interface/assets/CuiCameraShares-BxUgedC_.js +1 -0
- package/dist/interface/assets/{CuiCameraTable-C7WLZ2pA.js → CuiCameraTable-C3GB4Q2y.js} +2 -2
- package/dist/interface/assets/CuiCameraTable-MHfnZSyK.js +1 -0
- package/dist/interface/assets/CuiChartTable-TAzZgetO.js +1 -0
- package/dist/interface/assets/{CuiConsole-CkZML0iY.js → CuiConsole-Cf5lOCE1.js} +2 -2
- package/dist/interface/assets/{CuiDataTable-BFIhx1D3.js → CuiDataTable-DfjXa0C1.js} +1 -1
- package/dist/interface/assets/CuiLightControl-ChK-SvJp.js +1 -0
- package/dist/interface/assets/CuiList-C4fxd9lD.js +1 -0
- package/dist/interface/assets/CuiPluginCard-DMpANIQj.js +2 -0
- package/dist/interface/assets/CuiPluginCategoryChip-BKxJMid7.js +1 -0
- package/dist/interface/assets/{CuiPluginOAuthButton-BQZkTcgo.js → CuiPluginOAuthButton-DnQ838JJ.js} +2 -2
- package/dist/interface/assets/{CuiPluginTrustBadge-DbqdfdaL.js → CuiPluginTrustBadge-DyYDUWV6.js} +1 -1
- package/dist/interface/assets/{CuiQRCode-2WsWJQFi.js → CuiQRCode-S9fPi0_l.js} +1 -1
- package/dist/interface/assets/CuiSchema-DScmDQsh.js +1 -0
- package/dist/interface/assets/CuiTopNavbarItem-CT10aAlO.js +1 -0
- package/dist/interface/assets/Faces-Coy-tUVM.js +1 -0
- package/dist/interface/assets/FirstSteps-CrMJC049.js +1 -0
- package/dist/interface/assets/Floorplan-Bj_mVrxp.js +1 -0
- package/dist/interface/assets/{Floorplan-Ci63Zd8W.css → Floorplan-CT5TrMSD.css} +1 -1
- package/dist/interface/assets/Instances-B_mpKAng.js +1 -0
- package/dist/interface/assets/{Logs-DMehPk0t.js → Logs-fY1dpQk4.js} +2 -2
- package/dist/interface/assets/Menu-Bgi-NLdg.js +1 -0
- package/dist/interface/assets/Metrics-DnMeIrkf.css +1 -0
- package/dist/interface/assets/Metrics-k9KACiwh.js +12 -0
- package/dist/interface/assets/OAuthDeviceFlow-xTh83xmc.js +1 -0
- package/dist/interface/assets/Plugin-BB7x7UHw.css +1 -0
- package/dist/interface/assets/Plugin-VWq7sONB.js +1 -0
- package/dist/interface/assets/{PluginConsole-D1BRQCO9.js → PluginConsole-LnnDOVBL.js} +2 -2
- package/dist/interface/assets/PluginDetail-CKD9sbDx.js +2 -0
- package/dist/interface/assets/{PluginSchema-B9VsBHOU.js → PluginSchema-BnB0_6Sk.js} +1 -1
- package/dist/interface/assets/PluginSearch-BoBZLLbr.js +1 -0
- package/dist/interface/assets/PluginSearch-kGhweU1J.js +2 -0
- package/dist/interface/assets/{PluginUpdateProgress-uj0XPV-_.js → PluginUpdateProgress-DMx0QlgE.js} +1 -1
- package/dist/interface/assets/{Plugins-CPx9Hszm.js → Plugins-Ekmr6aVa.js} +1 -1
- package/dist/interface/assets/RecentEventsFilter-StLJNuks.js +1 -0
- package/dist/interface/assets/Recordings-8PqxJOI3.css +1 -0
- package/dist/interface/assets/Recordings-Bvkuk_TV.js +1 -0
- package/dist/interface/assets/SensorEdit-CAf9Nb01.js +1 -0
- package/dist/interface/assets/SensorHistory-il8bDErX.js +1 -0
- package/dist/interface/assets/Sensors-sxQ6HLKo.js +2 -0
- package/dist/interface/assets/Settings-Bu0G7Ebx.js +1 -0
- package/dist/interface/assets/{Settings-D7495zbV.css → Settings-DtCSaLPb.css} +1 -1
- package/dist/interface/assets/SettingsAccount-8OZJLQi-.js +1 -0
- package/dist/interface/assets/SettingsAccount-bSfFi9YH.js +1 -0
- package/dist/interface/assets/SettingsAppearance-CnvN_Tzr.js +1 -0
- package/dist/interface/assets/SettingsAppearance-EvPWgF4c.js +1 -0
- package/dist/interface/assets/SettingsAssistant-B6s6pHCx.js +1 -0
- package/dist/interface/assets/SettingsBackup-Dd2FaUcN.js +1 -0
- package/dist/interface/assets/SettingsList-SvCO_gfG.js +1 -0
- package/dist/interface/assets/SettingsMqtt-BXBzHX84.js +1 -0
- package/dist/interface/assets/SettingsNotifications-CV-jJwFV.js +1 -0
- package/dist/interface/assets/SettingsPermissions-GchFaWjz.js +1 -0
- package/dist/interface/assets/SettingsRecordings-C4Ch_jmV.js +1 -0
- package/dist/interface/assets/SettingsRemote-OZHDJKSq.js +2 -0
- package/dist/interface/assets/SettingsSystem-BJlHXwVs.js +2 -0
- package/dist/interface/assets/SettingsUsers-RGOkOzx0.js +1 -0
- package/dist/interface/assets/Terminal-DX-ECC91.js +4 -0
- package/dist/interface/assets/Training-B8my7vka.js +1 -0
- package/dist/interface/assets/Training-D1DDjCCD.css +1 -0
- package/dist/interface/assets/Updates-DmavyhAn.js +2 -0
- package/dist/interface/assets/{VariableInput-CcILik4M.js → VariableInput-DQJle67Y.js} +1 -1
- package/dist/interface/assets/{VariableSuggestions-Bj0HdrYW.js → VariableSuggestions-D8V739dF.js} +1 -1
- package/dist/interface/assets/{VersionsHandler-BA8Lcysg.js → VersionsHandler-B41TJhgY.js} +1 -1
- package/dist/interface/assets/{VirtualSensorCreate-DvHyw7I2.js → VirtualSensorCreate-MfLh-LpH.js} +1 -1
- package/dist/interface/assets/Workers-CafDeRhH.js +2 -0
- package/dist/interface/assets/api-By0v6EeA.css +2 -0
- package/dist/interface/assets/api-D1iULsSy.js +4 -0
- package/dist/interface/assets/{api-CKbL5jC7.js → api-DbUdfXO_.js} +1 -1
- package/dist/interface/assets/{assistant-CwmHp5bB.js → assistant-7hqP6OpA.js} +1 -1
- package/dist/interface/assets/{auth-AfZrkJ2f.js → auth-CDxrn7fe.js} +1 -1
- package/dist/interface/assets/{automations-DOCG0q8-.js → automations-CTTQlGCW.js} +1 -1
- package/dist/interface/assets/{cameraSources-mHEz9ROa.js → cameraSources-MOiE_1-W.js} +1 -1
- package/dist/interface/assets/cloudHandoff-CJzFH7CW.js +1 -0
- package/dist/interface/assets/{config-AG0SnOiY.js → config-6EiGxiYm.js} +1 -1
- package/dist/interface/assets/eventLabels-idFWh3Y_.js +1 -0
- package/dist/interface/assets/{flowSchema-B0d3VjU7.js → flowSchema-Dp_-p9WA.js} +1 -1
- package/dist/interface/assets/{intercomService-DG3EeZ6s.js → intercomService-BQYzjnAi.js} +1 -1
- package/dist/interface/assets/main-0oXl_8v7.js +3 -0
- package/dist/interface/assets/main-CdvAniEp.css +1 -0
- package/dist/interface/assets/mqtt-ChvXxMhR.js +1 -0
- package/dist/interface/assets/{notifications-8FH4ApEz.js → notifications-CbL-1oMs.js} +1 -1
- package/dist/interface/assets/{plugins-2JLUEMYc.js → plugins-lsoAntRQ.js} +1 -1
- package/dist/interface/assets/{rooms-DoAfzA8W.js → rooms-P8WrRIco.js} +1 -1
- package/dist/interface/assets/sensorIcons-BRTtoaHX.js +1 -0
- package/dist/interface/assets/{sensorSlots-biaL-O8E.js → sensorSlots-BTj-IM7z.js} +1 -1
- package/dist/interface/assets/{sensors-DyAMdS-H.js → sensors-Dxc7HgjZ.js} +1 -1
- package/dist/interface/assets/{server-BDRUGj61.js → server-DlK8gUoE.js} +1 -1
- package/dist/interface/assets/{theme-CLxrnR60.js → theme-BOppzzar.js} +1 -1
- package/dist/interface/assets/types-CeruGCb8.js +1 -0
- package/dist/interface/assets/{types-8JXzkoC8.js → types-J1Drrxo1.js} +1 -1
- package/dist/interface/assets/types-U4AuTNLR.js +1 -0
- package/dist/interface/assets/ungrouped-ING_JAuK.js +1 -0
- package/dist/interface/assets/{updates-F-veEP1I.js → updates-DtVp84Y0.js} +1 -1
- package/dist/interface/assets/{useAppVersion-BjUQmB7M.js → useAppVersion-BGgCk5GD.js} +1 -1
- package/dist/interface/assets/{useAssistantActions-CNEJol4o.js → useAssistantActions-C13O5EHU.js} +1 -1
- package/dist/interface/assets/useBackupRestore-vrhmc9i-.js +1 -0
- package/dist/interface/assets/{useCameraOptions-D_oduve2.js → useCameraOptions-CI1baRmm.js} +1 -1
- package/dist/interface/assets/{useKeyboardInset-CPWSVYlA.js → useKeyboardInset-CvgJp091.js} +1 -1
- package/dist/interface/assets/{useLogsSocket-B_jXUqv8.js → useLogsSocket-Bf0BI8ET.js} +1 -1
- package/dist/interface/assets/{useNavLayout-DEngIIeU.js → useNavLayout-6zM1Y-7B.js} +1 -1
- package/dist/interface/assets/{usePermissions-DAO92InI.js → usePermissions-DZitFsBQ.js} +1 -1
- package/dist/interface/assets/{usePluginUpdates-CJi8Y_wl.js → usePluginUpdates-VZdpJ_Ax.js} +1 -1
- package/dist/interface/assets/{usePushRegistration-j9WCeFbv.js → usePushRegistration-vcbMrTxZ.js} +1 -1
- package/dist/interface/assets/{useServerRestart-BVks5tuC.js → useServerRestart-DrpuNbIu.js} +1 -1
- package/dist/interface/assets/{useStreamStatus-DQ0NSyU8.js → useStreamStatus-l3Pfk1H4.js} +1 -1
- package/dist/interface/assets/{useTabSwipe-CVq7EcIY.js → useTabSwipe-BSpi25WV.js} +1 -1
- package/dist/interface/assets/{useUpdateChannel-C0fjDvNP.js → useUpdateChannel-kAl-5UNY.js} +1 -1
- package/dist/interface/assets/{useUpdatesSocket-DXKF9hzc.js → useUpdatesSocket-CaFz_fEb.js} +1 -1
- package/dist/interface/assets/{useUserOptions-UjMeAL5n.js → useUserOptions-BKteXnmU.js} +1 -1
- package/dist/interface/assets/vendor-cameraui-K1Nw4PvF.js +2326 -0
- package/dist/interface/assets/vendor-core-CJdfpB0I.js +1 -0
- package/dist/interface/assets/{vendor-primevue-Zx6t06A4.js → vendor-primevue-DoA2Rwcb.js} +871 -871
- package/dist/interface/assets/walk-B8FNhXuj.js +1 -0
- package/dist/interface/ha/{404-D5gfy0Cd.js → 404-RtgPpD9N.js} +1 -1
- package/dist/interface/ha/{About-JzlpCzBN.js → About-0PRv9bU0.js} +4 -4
- package/dist/interface/ha/{Assistant-DgOfGesf.js → Assistant-DbwxVfpl.js} +1021 -1021
- package/dist/interface/ha/{Automation-BDaWYiBu.js → Automation-D3HomdH7.js} +159 -155
- package/dist/interface/ha/{AutomationImport-BNB_PJ9R.js → AutomationImport-nQUUvZcv.js} +6 -6
- package/dist/interface/ha/{AutomationStore-_TeOt1wz.js → AutomationStore-BXDD92wZ.js} +8 -8
- package/dist/interface/ha/{AutomationStoreDetail-jjIEZoRi.js → AutomationStoreDetail-BYeq7FID.js} +19 -19
- package/dist/interface/ha/{Automations-DM6FEVOw.js → Automations-CJlGqmSP.js} +74 -74
- package/dist/interface/ha/Camera-Ai4BxVh_.js +747 -0
- package/dist/interface/ha/{CameraConsole-BoVql05l.js → CameraConsole-UMNOX3dE.js} +4 -4
- package/dist/interface/ha/{Cameras-cQBGvXq7.js → Cameras-BW-AEXYi.js} +266 -266
- package/dist/interface/ha/{Camview-mkG5FXZM.js → Camview-jikpVEE0.js} +195 -194
- package/dist/interface/ha/{Config-BNPDzo_h.js → Config-BOxwBH2D.js} +111 -111
- package/dist/interface/ha/{ConfigActionAssistant-C-8P3DYz.js → ConfigActionAssistant--3iWk9sq.js} +4 -4
- package/dist/interface/ha/{ConfigActionCameraControl-x1ksGL7m.js → ConfigActionCameraControl-DbVXWTeA.js} +3 -3
- package/dist/interface/ha/{ConfigActionHttp-DzCJp85z.js → ConfigActionHttp-Du3n2Yj0.js} +2 -2
- package/dist/interface/ha/{ConfigActionImageInput-C5C5U_2z.js → ConfigActionImageInput-BrJrTZTY.js} +4 -4
- package/dist/interface/ha/{ConfigActionMqtt-T29xb75r.js → ConfigActionMqtt-DZd1BNUt.js} +4 -4
- package/dist/interface/ha/{ConfigActionNotification-BcnyilF9.js → ConfigActionNotification-CJWW10gt.js} +3 -3
- package/dist/interface/ha/{ConfigActionNotificationControl-D3wIVKuU.js → ConfigActionNotificationControl-Bl41AVv1.js} +2 -2
- package/dist/interface/ha/{ConfigActionOutput-hD-yVczw.js → ConfigActionOutput-OTj7Lwgq.js} +1 -1
- package/dist/interface/ha/{ConfigActionPlugin-Bz1O-O4Q.js → ConfigActionPlugin-B790PEk0.js} +8 -8
- package/dist/interface/ha/{ConfigActionSensor-FOz-PYl_.js → ConfigActionSensor-BG3jZxge.js} +5 -5
- package/dist/interface/ha/{ConfigActionSnapshot-CmxEOuK1.js → ConfigActionSnapshot-fGmLl6jb.js} +2 -2
- package/dist/interface/ha/{ConfigActionVariable-BCvkrdCh.js → ConfigActionVariable-CK3vYDsr.js} +1 -1
- package/dist/interface/ha/{ConfigConditionIfElse-icfTG9OA.js → ConfigConditionIfElse-DyFLGg3y.js} +3 -3
- package/dist/interface/ha/{ConfigConditionSensorState-ClUAsm0d.js → ConfigConditionSensorState-BUTfeFO2.js} +7 -7
- package/dist/interface/ha/{ConfigConditionSwitch-C8AMCkn6.js → ConfigConditionSwitch-iDG_ubif.js} +5 -5
- package/dist/interface/ha/{ConfigSensorValueInput-ChvDQzGd.js → ConfigSensorValueInput-BmRIGUKB.js} +5 -5
- package/dist/interface/ha/{ConfigTriggerDetection-aUSyaClu.js → ConfigTriggerDetection-DyPQGt9M.js} +24 -24
- package/dist/interface/ha/{ConfigTriggerGeofence-DsJeJWP4.js → ConfigTriggerGeofence-CGE-bH_t.js} +6 -6
- package/dist/interface/ha/{ConfigTriggerMqtt-CsAxA7QZ.js → ConfigTriggerMqtt-CM3KZqBc.js} +1 -1
- package/dist/interface/ha/{ConfigTriggerSensor-CTxr9cfU.js → ConfigTriggerSensor-DoHMcwP4.js} +1 -1
- package/dist/interface/ha/{ConfigTriggerSystem-C8UEfpfs.js → ConfigTriggerSystem-BYKbW4Zr.js} +2 -2
- package/dist/interface/ha/{ConfigTriggerWebhook-frEE-SCB.js → ConfigTriggerWebhook-5PBAadG8.js} +2 -2
- package/dist/interface/ha/{Console-A3VtbsLg.js → Console-BEXzl4p1.js} +7 -7
- package/dist/interface/ha/{CuiAutomationRunsDialog-BlJvhBiX.js → CuiAutomationRunsDialog-DkK_ar5G.js} +3 -3
- package/dist/interface/ha/{CuiBottomSheet-Cu-t3H0Z.js → CuiBottomSheet-CYNvQV4T.js} +2 -2
- package/dist/interface/ha/{CuiCameraRecordings-R5ArEmqJ.js → CuiCameraRecordings-DYjecmE_.js} +30 -48
- package/dist/interface/ha/{CuiCameraShares-B9pfRkM4.js → CuiCameraShares-C0H60nZS.js} +7 -7
- package/dist/interface/ha/{CuiCameraTable-CKjGKaMC.js → CuiCameraTable-CQNMyBaq.js} +5 -5
- package/dist/interface/ha/{CuiChartTable-BxWjRe-k.js → CuiChartTable-Bhv1p9zj.js} +1161 -1161
- package/dist/interface/ha/{CuiConsole-C5fzsR7t.js → CuiConsole-DtXorGF5.js} +20 -20
- package/dist/interface/ha/{CuiDataTable-BOdQDY8J.js → CuiDataTable-Cy8EjCk9.js} +7 -7
- package/dist/interface/ha/{CuiList-CU2NJ1K6.js → CuiList-DnW6Q5m2.js} +1 -1
- package/dist/interface/ha/{CuiPluginCard-BT71RRAD.js → CuiPluginCard-B4SCUblV.js} +125 -125
- package/dist/interface/ha/{CuiPluginOAuthButton-moh9uS7G.js → CuiPluginOAuthButton-BKg9SftQ.js} +5 -5
- package/dist/interface/ha/{CuiPluginTrustBadge-F_pVWkPJ.js → CuiPluginTrustBadge-CEtUJhCJ.js} +1 -1
- package/dist/interface/ha/{CuiQRCode-BNuj-nJ4.js → CuiQRCode-gp-9hqyk.js} +7 -7
- package/dist/interface/ha/{CuiSchema-Cb_8Ks-I.js → CuiSchema-CYpr_dD7.js} +161 -161
- package/dist/interface/ha/{CuiTopNavbarItem-BGzrrTls.js → CuiTopNavbarItem-CM-1oPxf.js} +1 -1
- package/dist/interface/ha/Faces-pa60ySng.js +1575 -0
- package/dist/interface/ha/{FirstSteps-BFX0-EEi.js → FirstSteps-D42yZm7R.js} +68 -68
- package/dist/interface/ha/{Floorplan-D6MGqSJT.js → Floorplan-BvE546pE.js} +512 -511
- package/dist/interface/ha/{Instances-CHzIUyyA.js → Instances-CAGCyfbB.js} +64 -64
- package/dist/interface/ha/{Logs-DZKM3dWv.js → Logs-RB3Ba8WM.js} +12 -12
- package/dist/interface/ha/{Menu-BQz4dfQi.js → Menu-hAnHu_jq.js} +17 -17
- package/dist/interface/ha/{Metrics-CdpWJ1mm.js → Metrics-ChYTebkX.js} +94 -93
- package/dist/interface/ha/{OAuthDeviceFlow-DUELtx3X.js → OAuthDeviceFlow-C05pH-9o.js} +3 -3
- package/dist/interface/ha/{Plugin-5bbTF0Rv.js → Plugin-D7XwcXkW.js} +647 -439
- package/dist/interface/ha/{PluginConsole-C__0lzsS.js → PluginConsole-DphEIOlL.js} +4 -4
- package/dist/interface/ha/{PluginDetail-Blrktk9W.js → PluginDetail-DfMl-yCl.js} +9 -9
- package/dist/interface/ha/{PluginSearch-BKbdwHQ1.js → PluginSearch-BPN4Opg5.js} +34 -34
- package/dist/interface/ha/{PluginUpdateProgress-IsNiecu3.js → PluginUpdateProgress-ByJ0R5sW.js} +3 -3
- package/dist/interface/ha/{Plugins-CC2Dwlx5.js → Plugins-BhKmjjNn.js} +59 -59
- package/dist/interface/ha/{RecentEventsFilter-9ZkDHD1g.js → RecentEventsFilter-BkLMlGVJ.js} +5 -6
- package/dist/interface/ha/Recordings-BaU7M1OW.js +1836 -0
- package/dist/interface/ha/{SensorEdit-Bi2Yx_ji.js → SensorEdit-DWxcCJ0F.js} +88 -88
- package/dist/interface/ha/{SensorHistory-sqG_6eav.js → SensorHistory-DuA9E9wT.js} +2 -2
- package/dist/interface/ha/{Sensors-DLtOh1p4.js → Sensors-CVpIHcgG.js} +438 -435
- package/dist/interface/ha/{Settings-DI3_zenm.js → Settings-BO2eBGEn.js} +61 -61
- package/dist/interface/ha/{SettingsAccount-pS86Qyr-.js → SettingsAccount-BQZZfoSM.js} +255 -255
- package/dist/interface/ha/{SettingsAppearance-tS3bubKQ.js → SettingsAppearance-B_yGl89u.js} +16 -16
- package/dist/interface/ha/{SettingsAssistant-LejCRXsF.js → SettingsAssistant-kMOixl9g.js} +501 -501
- package/dist/interface/ha/{SettingsBackup-CkhD1Kze.js → SettingsBackup-BpG-W4j-.js} +24 -24
- package/dist/interface/ha/{SettingsList-bibwvPSM.js → SettingsList-Btnkzu94.js} +6 -6
- package/dist/interface/ha/{SettingsMqtt-DSt0B4Qg.js → SettingsMqtt-C4DX9cNC.js} +23 -23
- package/dist/interface/ha/{SettingsNotifications-BF7ajNwE.js → SettingsNotifications-DI6ImggH.js} +6 -6
- package/dist/interface/ha/{SettingsPermissions-Jh0FuIF7.js → SettingsPermissions-BCDyCFcb.js} +2 -2
- package/dist/interface/ha/{SettingsRecordings-BTIdncxg.js → SettingsRecordings-Bq5NkJhd.js} +10 -10
- package/dist/interface/ha/{SettingsRemote-Cba4P1-O.js → SettingsRemote-CtncaPIA.js} +308 -308
- package/dist/interface/ha/{SettingsSystem-_Nnh2ZF5.js → SettingsSystem-BJXuA7xA.js} +11 -11
- package/dist/interface/ha/{SettingsUsers-BfHFoxJi.js → SettingsUsers-BF0rDluv.js} +91 -91
- package/dist/interface/ha/{Terminal-Dv_7oWmS.js → Terminal-kTCe2jP3.js} +11 -11
- package/dist/interface/ha/Training-BM2Xb8Ef.js +1754 -0
- package/dist/interface/ha/{Updates-BHl5H7zE.js → Updates-Cv1EY_T0.js} +6 -6
- package/dist/interface/ha/{VariableInput-DtLo7-Nw.js → VariableInput-BO2zZu4N.js} +1 -1
- package/dist/interface/ha/{VersionsHandler-CF0DSeol.js → VersionsHandler-CRnT9-K7.js} +10 -10
- package/dist/interface/ha/{VirtualSensorCreate-C907EgIz.js → VirtualSensorCreate-6dVRxPjw.js} +8 -8
- package/dist/interface/ha/{Workers-Dz1d9gEQ.js → Workers-MHia86lu.js} +97 -97
- package/dist/interface/ha/{api-DUqpDJ2N.js → api-CH_Y8Hee.js} +17459 -14633
- package/dist/interface/ha/{api-gId1nlMj.js → api-DylRa66V.js} +3 -3
- package/dist/interface/ha/{assistant-BaR65gIY.js → assistant-smRQYA6p.js} +53 -53
- package/dist/interface/ha/{auth-Btsz_KxO.js → auth-BXj5Fm6s.js} +38 -38
- package/dist/interface/ha/{automationBlueprint-CuO3iOiM.js → automationBlueprint-DGjftXFC.js} +4 -4
- package/dist/interface/ha/cameraui-cards.js +1 -1
- package/dist/interface/ha/{cards-DWhezIPP.js → cards-E0zw1UVg.js} +114 -113
- package/dist/interface/ha/{config-BKStpoEQ.js → config-dG_DA6XL.js} +16 -16
- package/dist/interface/ha/{dist-CM7R4_Gj.js → dist-BQf9ANPx.js} +77 -77
- package/dist/interface/ha/{dist-BIngHzHx.js → dist-euRmladF.js} +4 -4
- package/dist/interface/ha/{eventIcons-BFNUgeGr.js → eventLabels-B5GrM5jO.js} +291 -233
- package/dist/interface/ha/{intercomService-B7HkLs6z.js → intercomService-BtJ_zUNd.js} +250 -264
- package/dist/interface/ha/{mqtt-ajcSmTB-.js → mqtt-CP3vVkRJ.js} +12 -12
- package/dist/interface/ha/{notifications-Cf9dXHEO.js → notifications-CZNwSXTg.js} +22 -22
- package/dist/interface/ha/{pinia-DIKO5lnE.js → pinia-CVnHHb-s.js} +533 -501
- package/dist/interface/ha/{plugins-ml823dJV.js → plugins--eatOIaI.js} +66 -66
- package/dist/interface/ha/{protocol-BB4jdtUC-DW3jl2tV.js → protocol-BB4jdtUC-BhEwymva.js} +129 -48
- package/dist/interface/ha/{rooms-C5gUErBi.js → rooms-D5E6K75d.js} +8 -8
- package/dist/interface/ha/{server-dArenpJI.js → server-D1BqEY7i.js} +31 -31
- package/dist/interface/ha/{types-DYymuACA.js → types-CWogEoya.js} +36 -36
- package/dist/interface/ha/ungrouped-Ch4UX4dy.js +58 -0
- package/dist/interface/ha/{updates-D5sFzGtC.js → updates-B48Owi1w.js} +28 -28
- package/dist/interface/ha/{useAppVersion-C5x3Ap4_.js → useAppVersion-D95sKTJR.js} +2 -2
- package/dist/interface/ha/{useAssistantActions-S1FrNe9b.js → useAssistantActions-kDwiO-u5.js} +1 -1
- package/dist/interface/ha/{useKeyboardInset-Cj0T2AFX.js → useKeyboardInset-C2R51vsC.js} +1 -1
- package/dist/interface/ha/{useLogsSocket-DtvfQlPh.js → useLogsSocket-BzNWa2y2.js} +1 -1
- package/dist/interface/ha/{useNavLayout-HSFBA4JV.js → useNavLayout-228cwwqA.js} +19 -19
- package/dist/interface/ha/{usePermissions-DaE_wFch.js → usePermissions-CfA5x7Df.js} +1 -1
- package/dist/interface/ha/{useServerRestart-Ci0SppGW.js → useServerRestart-B0c40zs5.js} +1 -1
- package/dist/interface/ha/{useTabSwipe-CPKkRmaH.js → useTabSwipe-CfZg5hWj.js} +2 -2
- package/dist/interface/ha/{useUpdateChannel-CXHHovK3.js → useUpdateChannel-DQxI7FrD.js} +2 -2
- package/dist/interface/ha/{useUpdatesSocket-DVST2YXV.js → useUpdatesSocket-B8LqBBd3.js} +1 -1
- package/dist/interface/ha/{useUserOptions-BYcYI6QA.js → useUserOptions-dZf6ejlz.js} +1 -1
- package/dist/interface/ha/walk-CsSXaeJw.js +33 -0
- package/dist/interface/index.html +35 -36
- package/dist/interface/sw.js +1 -1
- package/dist/interface/workbox-5f52ac45.js +1 -0
- package/dist/server/package.json +11 -11
- package/dist/server/requirements.txt +2 -2
- package/dist/server/src/_camera_ui_tools/camera_ui_sdk/__init__.py +22 -0
- package/dist/server/src/_camera_ui_tools/camera_ui_sdk/camera/config.py +4 -0
- package/dist/server/src/_camera_ui_tools/camera_ui_sdk/plugin/__init__.py +10 -0
- package/dist/server/src/_camera_ui_tools/camera_ui_sdk/plugin/contract.py +6 -0
- package/dist/server/src/_camera_ui_tools/camera_ui_sdk/plugin/interfaces.py +92 -4
- package/dist/server/src/_camera_ui_tools/camera_ui_sdk/sensor/__init__.py +16 -0
- package/dist/server/src/_camera_ui_tools/camera_ui_sdk/sensor/base.py +4 -0
- package/dist/server/src/_camera_ui_tools/camera_ui_sdk/sensor/face_embedder.py +1 -1
- package/dist/server/src/_camera_ui_tools/camera_ui_sdk/sensor/object.py +3 -3
- package/dist/server/src/_camera_ui_tools/camera_ui_sdk/sensor/person_embedder.py +65 -0
- package/dist/server/src/_camera_ui_tools/camera_ui_sdk/sensor/segmenter.py +81 -0
- package/dist/server/src/api/database/index.d.ts +2 -1
- package/dist/server/src/api/database/index.js +31 -7
- package/dist/server/src/api/database/index.js.map +1 -1
- package/dist/server/src/api/database/migrations/v2-2-9.d.ts +3 -0
- package/dist/server/src/api/database/migrations/v2-2-9.js +28 -0
- package/dist/server/src/api/database/migrations/v2-2-9.js.map +1 -0
- package/dist/server/src/api/database/record-schemas.d.ts +1 -1
- package/dist/server/src/api/database/types.d.ts +17 -1
- package/dist/server/src/api/schemas/assistant.schema.d.ts +1 -1
- package/dist/server/src/api/schemas/cameras.schema.d.ts +140 -76
- package/dist/server/src/api/schemas/cameras.schema.js +4 -2
- package/dist/server/src/api/schemas/cameras.schema.js.map +1 -1
- package/dist/server/src/api/schemas/training.schema.d.ts +15 -3
- package/dist/server/src/api/schemas/training.schema.js +4 -1
- package/dist/server/src/api/schemas/training.schema.js.map +1 -1
- package/dist/server/src/api/websocket/nsp/worker-perf.js +2 -0
- package/dist/server/src/api/websocket/nsp/worker-perf.js.map +1 -1
- package/dist/server/src/api/websocket/types.d.ts +1 -0
- package/dist/server/src/assistant/search.d.ts +17 -0
- package/dist/server/src/assistant/search.js +10 -2
- package/dist/server/src/assistant/search.js.map +1 -1
- package/dist/server/src/assistant/tools/plugins.js +7 -3
- package/dist/server/src/assistant/tools/plugins.js.map +1 -1
- package/dist/server/src/assistant/types.d.ts +2 -0
- package/dist/server/src/automations/actions/plugin.js +5 -9
- package/dist/server/src/automations/actions/plugin.js.map +1 -1
- package/dist/server/src/automations/pluginMethodRegistry.d.ts +6 -0
- package/dist/server/src/automations/pluginMethodRegistry.js +39 -0
- package/dist/server/src/automations/pluginMethodRegistry.js.map +1 -1
- package/dist/server/src/automations/segment-picture.d.ts +16 -0
- package/dist/server/src/automations/segment-picture.js +152 -0
- package/dist/server/src/automations/segment-picture.js.map +1 -0
- package/dist/server/src/camera/decoder/detection-coordinator.d.ts +5 -2
- package/dist/server/src/camera/decoder/detection-coordinator.js +45 -22
- package/dist/server/src/camera/decoder/detection-coordinator.js.map +1 -1
- package/dist/server/src/camera/decoder/detection-pipeline.d.ts +30 -2
- package/dist/server/src/camera/decoder/detection-pipeline.js +81 -21
- package/dist/server/src/camera/decoder/detection-pipeline.js.map +1 -1
- package/dist/server/src/camera/decoder/event-manager.d.ts +12 -2
- package/dist/server/src/camera/decoder/event-manager.js +77 -75
- package/dist/server/src/camera/decoder/event-manager.js.map +1 -1
- package/dist/server/src/camera/decoder/event-trace.d.ts +41 -1
- package/dist/server/src/camera/decoder/event-trace.js +63 -8
- package/dist/server/src/camera/decoder/event-trace.js.map +1 -1
- package/dist/server/src/camera/decoder/face-tracks.d.ts +26 -0
- package/dist/server/src/camera/decoder/face-tracks.js +199 -0
- package/dist/server/src/camera/decoder/face-tracks.js.map +1 -0
- package/dist/server/src/camera/decoder/frame-scaler.d.ts +3 -1
- package/dist/server/src/camera/decoder/frame-scaler.js +36 -8
- package/dist/server/src/camera/decoder/frame-scaler.js.map +1 -1
- package/dist/server/src/camera/decoder/nvr-sink.d.ts +6 -0
- package/dist/server/src/camera/decoder/nvr-sink.js +1 -1
- package/dist/server/src/camera/decoder/nvr-sink.js.map +1 -1
- package/dist/server/src/camera/decoder/perf-tracker.d.ts +2 -0
- package/dist/server/src/camera/decoder/perf-tracker.js +4 -0
- package/dist/server/src/camera/decoder/perf-tracker.js.map +1 -1
- package/dist/server/src/camera/decoder/ptz/autotracker.d.ts +6 -1
- package/dist/server/src/camera/decoder/ptz/autotracker.js +107 -25
- package/dist/server/src/camera/decoder/ptz/autotracker.js.map +1 -1
- package/dist/server/src/camera/decoder/secondary-stage.d.ts +10 -8
- package/dist/server/src/camera/decoder/secondary-stage.js +145 -125
- package/dist/server/src/camera/decoder/secondary-stage.js.map +1 -1
- package/dist/server/src/camera/decoder/training-sink.d.ts +5 -2
- package/dist/server/src/camera/decoder/training-sink.js +30 -6
- package/dist/server/src/camera/decoder/training-sink.js.map +1 -1
- package/dist/server/src/camera/decoder/types.d.ts +6 -2
- package/dist/server/src/camera/decoder/types.js +4 -2
- package/dist/server/src/camera/decoder/types.js.map +1 -1
- package/dist/server/src/manager/trainingCandidateManager.d.ts +2 -1
- package/dist/server/src/manager/trainingCandidateManager.js +25 -3
- package/dist/server/src/manager/trainingCandidateManager.js.map +1 -1
- package/dist/server/src/manager/trainingSubmission.d.ts +5 -0
- package/dist/server/src/manager/trainingSubmission.js +73 -0
- package/dist/server/src/manager/trainingSubmission.js.map +1 -0
- package/dist/server/src/manager/types.d.ts +8 -2
- package/dist/server/src/manager/types.js.map +1 -1
- package/dist/server/src/plugins/runtime/python/proxy/sensor.py +2 -0
- package/dist/server/src/remote/api/routes/train.d.ts +44 -3
- package/dist/server/src/remote/api/routes/train.js +2 -2
- package/dist/server/src/remote/api/routes/train.js.map +1 -1
- package/dist/server/src/rpc/interfaces/core.d.ts +6 -2
- package/dist/server/src/rpc/interfaces/detection.d.ts +20 -3
- package/dist/server/src/rpc/server.d.ts +2 -0
- package/dist/server/src/rpc/server.js +8 -5
- package/dist/server/src/rpc/server.js.map +1 -1
- package/dist/server/src/sensors/registry.d.ts +1 -0
- package/dist/server/src/sensors/registry.js +20 -11
- package/dist/server/src/sensors/registry.js.map +1 -1
- package/dist/server/src/sensors/types.d.ts +1 -0
- package/dist/server/src/sensors/types.js +3 -0
- package/dist/server/src/sensors/types.js.map +1 -1
- package/dist/server/src/services/config/index.d.ts +1 -0
- package/dist/server/src/services/config/index.js +2 -0
- package/dist/server/src/services/config/index.js.map +1 -1
- package/dist/server/src/utils/image.d.ts +6 -0
- package/dist/server/src/utils/image.js +58 -22
- package/dist/server/src/utils/image.js.map +1 -1
- package/npm-shrinkwrap.json +115 -74
- package/package.json +11 -11
- package/dist/interface/assets/About-DBOS1rfw.js +0 -1
- package/dist/interface/assets/Assistant-BQ6Ld-bt.css +0 -1
- package/dist/interface/assets/Assistant-BRcHj8hq.js +0 -1
- package/dist/interface/assets/Automation-C0Emde7z.js +0 -3
- package/dist/interface/assets/AutomationStore-C2G0Bk8c.js +0 -2
- package/dist/interface/assets/Automations-D-vfqRnZ.js +0 -2
- package/dist/interface/assets/Camera-BpurrgAr.js +0 -2
- package/dist/interface/assets/Camera-D0B7yyVD.css +0 -1
- package/dist/interface/assets/Camview-IbOVRx20.js +0 -1
- package/dist/interface/assets/ConfigActionCameraControl-Bw_egtpP.js +0 -1
- package/dist/interface/assets/ConfigActionSensor-BErRRYfl.js +0 -1
- package/dist/interface/assets/Console-oCuuVKET.js +0 -1
- package/dist/interface/assets/CuiAssistantConversation-Bsyxau9v.js +0 -5
- package/dist/interface/assets/CuiAutomationRunsDialog-sRh_K6JI.js +0 -1
- package/dist/interface/assets/CuiBottomSheet-DWoSHzC7.js +0 -1
- package/dist/interface/assets/CuiCameraPipCard-D6REm8uT.js +0 -1
- package/dist/interface/assets/CuiCameraRecordings-C2tvrbbw.js +0 -1
- package/dist/interface/assets/CuiCameraShares-jrrUEHoZ.js +0 -1
- package/dist/interface/assets/CuiCameraTable-BOzTWLwd.js +0 -1
- package/dist/interface/assets/CuiChartTable-BYrIX7LV.js +0 -1
- package/dist/interface/assets/CuiLightControl-DitIWqUr.js +0 -1
- package/dist/interface/assets/CuiList-BewTNr2X.js +0 -1
- package/dist/interface/assets/CuiPluginCard-Bd2HFduI.js +0 -2
- package/dist/interface/assets/CuiPluginCategoryChip-DlzOwRgc.js +0 -1
- package/dist/interface/assets/CuiSchema-BL0QZmP2.js +0 -1
- package/dist/interface/assets/CuiTopNavbarItem-Ti2TueU1.js +0 -1
- package/dist/interface/assets/Faces-DARrGLXf.js +0 -1
- package/dist/interface/assets/FirstSteps-DBYPBvGr.js +0 -1
- package/dist/interface/assets/Floorplan-BaZvzoyv.js +0 -1
- package/dist/interface/assets/Instances-r0xReURi.js +0 -1
- package/dist/interface/assets/Menu-C34RRyLd.js +0 -1
- package/dist/interface/assets/Metrics-BjoC71_O.js +0 -12
- package/dist/interface/assets/Metrics-DsHBab6t.css +0 -1
- package/dist/interface/assets/OAuthDeviceFlow-CdZxelf2.js +0 -1
- package/dist/interface/assets/Plugin-Qr_Q_Qfi.css +0 -1
- package/dist/interface/assets/Plugin-npx7CnwV.js +0 -1
- package/dist/interface/assets/PluginDetail-nwTrJmO6.js +0 -2
- package/dist/interface/assets/PluginSearch-CP2kQWKf.js +0 -1
- package/dist/interface/assets/PluginSearch-WEvbKMRs.js +0 -2
- package/dist/interface/assets/RecentEventsFilter-D5VSH2K1.js +0 -1
- package/dist/interface/assets/Recordings-BEKAn6QK.css +0 -1
- package/dist/interface/assets/Recordings-De6Zcv0M.js +0 -1
- package/dist/interface/assets/SensorEdit-SD_oHBRo.js +0 -1
- package/dist/interface/assets/SensorHistory-SxiLOloa.js +0 -1
- package/dist/interface/assets/Sensors-Djl64M-W.js +0 -2
- package/dist/interface/assets/Settings-CAf2reGs.js +0 -1
- package/dist/interface/assets/SettingsAccount-BGj5Ni91.js +0 -1
- package/dist/interface/assets/SettingsAccount-Dy6WC8ql.js +0 -1
- package/dist/interface/assets/SettingsAppearance-BGFhMlRk.js +0 -1
- package/dist/interface/assets/SettingsAppearance-DQzQmVzE.js +0 -1
- package/dist/interface/assets/SettingsAssistant-BwYVyuN3.js +0 -1
- package/dist/interface/assets/SettingsBackup-CVExGnOo.js +0 -1
- package/dist/interface/assets/SettingsList-vo7sz_MY.js +0 -1
- package/dist/interface/assets/SettingsMqtt-B1CuOcML.js +0 -1
- package/dist/interface/assets/SettingsNotifications-CCQ6eiq8.js +0 -1
- package/dist/interface/assets/SettingsPermissions-BlOf6HEy.js +0 -1
- package/dist/interface/assets/SettingsRecordings-7tTBg6m1.js +0 -1
- package/dist/interface/assets/SettingsRemote-DBgKmIdv.js +0 -2
- package/dist/interface/assets/SettingsSystem-DaFMsZpN.js +0 -2
- package/dist/interface/assets/SettingsUsers-DXACwVPi.js +0 -1
- package/dist/interface/assets/Terminal-DtGqlHbk.js +0 -4
- package/dist/interface/assets/Training-C-ToeAl4.css +0 -1
- package/dist/interface/assets/Training-Ca11D1Vj.js +0 -1
- package/dist/interface/assets/Updates-yenwuqnD.js +0 -2
- package/dist/interface/assets/Workers-Dyo44zxe.js +0 -2
- package/dist/interface/assets/api-CHQlxVtZ.css +0 -2
- package/dist/interface/assets/api-CLazgL-g.js +0 -4
- package/dist/interface/assets/cloudHandoff-zJCrDmwk.js +0 -1
- package/dist/interface/assets/eventIcons-C3JWChgS.js +0 -1
- package/dist/interface/assets/eventLabels-BsPoPWS9.js +0 -1
- package/dist/interface/assets/main-CGY9cVyi.css +0 -1
- package/dist/interface/assets/main-DkHV6YgB.js +0 -3
- package/dist/interface/assets/mqtt-DE2VbNdt.js +0 -1
- package/dist/interface/assets/sensorIcons-BntiOPX7.js +0 -1
- package/dist/interface/assets/types-B4LLKzDW.js +0 -1
- package/dist/interface/assets/types-a7Nw-P-m.js +0 -1
- package/dist/interface/assets/ungrouped-BoAbb9w3.js +0 -1
- package/dist/interface/assets/ungrouped-ChmBvcXp.css +0 -1
- package/dist/interface/assets/useBackupRestore-Biqn_lhh.js +0 -1
- package/dist/interface/assets/vendor-cameraui-GmMRyJ2R.js +0 -2326
- package/dist/interface/assets/vendor-core-BeAannbA.js +0 -1
- package/dist/interface/ha/Camera-sH9fRv18.js +0 -670
- package/dist/interface/ha/Faces-CsM5VO8Q.js +0 -1441
- package/dist/interface/ha/Recordings-B1XsJrzs.js +0 -1539
- package/dist/interface/ha/Training-CaSFA5oH.js +0 -1699
- package/dist/interface/ha/eventLabels-B4C1_4vT.js +0 -42
- package/dist/interface/ha/ungrouped-BHLAySWP.js +0 -1312
- package/dist/interface/workbox-778a14ff.js +0 -1
package/LICENSE.md
CHANGED
|
@@ -19,4 +19,11 @@ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
|
|
19
19
|
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
|
20
20
|
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
|
21
21
|
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
|
22
|
-
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
22
|
+
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
23
|
+
|
|
24
|
+
---
|
|
25
|
+
|
|
26
|
+
The compiled web interface in `dist/interface` bundles `@camera.ui/nvr`, which
|
|
27
|
+
is proprietary and not covered by the MIT License above. All rights to it are
|
|
28
|
+
reserved; it may not be copied, modified or redistributed without written
|
|
29
|
+
permission. Its full terms are in the LICENSE.md of `@camera.ui/nvr`.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{Xt as e}from"./vendor-cameraui-K1Nw4PvF.js";import{u as t}from"./api-D1iULsSy.js";import{$n as n,Bn as r,Cr as i,In as a,cn as o,dn as s,gn as c,sr as l,vn as u,w as d,yr as f}from"./vendor-Df81FCJz.js";import{t as p}from"./home-DPdzRxcM.js";var m={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function h(e,t){return a(),s(`svg`,m,[...t[0]||=[o(`path`,{fill:`currentColor`,d:`m4 10l-.707.707L2.586 10l.707-.707zm17 8a1 1 0 1 1-2 0zM8.293 15.707l-5-5l1.414-1.414l5 5zm-5-6.414l5-5l1.414 1.414l-5 5zM4 9h10v2H4zm17 7v2h-2v-2zm-7-7a7 7 0 0 1 7 7h-2a5 5 0 0 0-5-5z`},null,-1)]])}var g=l({name:`lets-icons-back`,render:h}),_={class:`relative flex items-center justify-center draggable-region`},v={class:`container mx-auto px-6 relative z-10`},y={class:`text-center`},b={class:`text-8xl font-bold mb-4 relative flex items-center justify-center`},x={class:`relative w-24 h-24 mx-2 group`},S={class:`relative z-1 scale-150 non-draggable-region`},C={class:`text-muted max-w-md mx-auto mb-8`},w={class:`flex items-center justify-center gap-4`},T={class:`text-white`},E=u({__name:`404`,setup(l){return(l,u)=>{let m=p,h=e,E=r(`RouterLink`),D=g;return a(),s(`div`,_,[o(`div`,v,[o(`div`,y,[o(`h1`,b,[u[1]||=o(`span`,null,`4`,-1),o(`div`,x,[o(`div`,S,[c(f(d),{src:f(t)(`logo_animated.svg`),width:`95px`,height:`80px`,title:`camera.ui`,"aria-label":`camera.ui`,class:`transform transition-transform duration-300 group-hover:scale-110`},null,8,[`src`])])]),u[2]||=o(`span`,null,`4`,-1)]),u[3]||=o(`h2`,{class:`text-3xl font-semibold mb-4`},`Oops!`,-1),o(`p`,C,i(l.$t(`views.404.error_message`)),1),o(`div`,w,[c(E,{to:`/`},{default:n(()=>[c(h,{class:`cui-button flex items-center gap-2 non-draggable-region`},{default:n(()=>[c(m,{class:`text-white`}),o(`span`,T,i(l.$t(`components.form.button.home`)),1)]),_:1})]),_:1}),c(h,{severity:`secondary`,label:l.$t(`components.form.button.back`),class:`cui-button non-draggable-region`,onClick:u[0]||=e=>l.$router.back()},{icon:n(()=>[c(D,{class:`text-muted`})]),_:1},8,[`label`])])])])])}}});export{E as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{Xt as e,at as t}from"./vendor-cameraui-K1Nw4PvF.js";import{Bn as n,H as r}from"./api-D1iULsSy.js";import{$n as i,Cr as a,In as o,cn as s,dn as c,gn as l,hn as u,ln as d,sn as f,un as p,vn as m,yr as h}from"./vendor-Df81FCJz.js";import{L as g}from"./vendor-primevue-DoA2Rwcb.js";import{t as _}from"./api-DbUdfXO_.js";import{t as v}from"./useAppVersion-BGgCk5GD.js";import{t as y}from"./back-filled-CJoz7Gkl.js";var b={class:`flex flex-col`},x={key:0,class:`page-title`},S={class:`flex flex-col w-full gap-6`},C={class:`card-title`},w={class:`flex flex-col gap-2`},T={key:0,class:`flex flex-row items-center justify-between`},E={class:`text-sm`},D={class:`text-sm font-bold`},O={key:0,class:`text-muted font-normal`},k={class:`flex flex-row items-center justify-between`},A={class:`text-sm`},j={class:`text-sm font-bold`},M=m({__name:`About`,setup(m){let M=new _,{smBreakpoint:N}=n(),{appVersion:P,nativeVersion:F,refreshAppVersion:I}=v(),{data:L}=M.apiInfoQuery(),R=f(()=>L.value?.version??``);return I(),(n,f)=>{let m=y,_=e,v=r,M=g,I=t;return o(),c(`div`,b,[h(N)?p(``,!0):(o(),c(`h1`,x,a(n.$t(`views.about.title`)),1)),l(v,{position:`left`},{default:i(()=>[l(_,{severity:`secondary`,text:``,class:`cui-button p-2 text-color non-draggable-region`,onClick:f[0]||=e=>n.$router.push(`/menu`)},{icon:i(()=>[l(m,{class:`w-6 h-6`})]),_:1})]),_:1}),s(`div`,S,[s(`div`,null,[s(`span`,C,a(n.$t(`views.about.versions`)),1),l(I,{class:`cui-card h-auto!`,pt:{content:{class:`flex flex-col justify-center`}}},{content:i(()=>[s(`div`,w,[h(P)?(o(),c(`div`,T,[s(`span`,E,a(n.$t(`views.about.version_app`)),1),s(`span`,D,[u(` v`+a(h(P)),1),h(F)&&h(F)!==h(P)?(o(),c(`span`,O,` (`+a(h(F))+`)`,1)):p(``,!0)])])):p(``,!0),h(P)?(o(),d(M,{key:1})):p(``,!0),s(`div`,k,[s(`span`,A,a(n.$t(`views.about.version_server`)),1),s(`span`,j,a(h(R)?`v${h(R)}`:`—`),1)])])]),_:1})])])])}}});export{M as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.cui-assistant-sidebar[data-v-c3b7f26f]{background:var(--subnavbar-background);border-right-style:solid;border-right-color:var(--border-color);height:100%}.cui-assistant-new[data-v-c3b7f26f]{background:var(--card-background);border:1px solid var(--border-color-inner);box-shadow:var(--shadow-sm);transition:border-color .14s,background .14s}.cui-assistant-new[data-v-c3b7f26f]:hover{border-color:var(--p-primary-color);background:color-mix(in srgb, var(--p-primary-color) 9%, transparent)}.cui-assistant-search[data-v-c3b7f26f],.cui-assistant-search[data-v-c3b7f26f]:enabled:hover{box-shadow:none;background:0 0;border-color:#0000}.cui-assistant-search[data-v-c3b7f26f]:enabled:hover{border-color:var(--border-color-inner)}.cui-assistant-search[data-v-c3b7f26f]:enabled:focus{background:var(--card-background);border-color:var(--p-primary-color);box-shadow:none}.cui-assistant-item[data-v-c3b7f26f]{color:var(--text-color-faded)}.cui-assistant-item[data-v-c3b7f26f]:hover{background:var(--subnavbar-item-hover-background)}.cui-assistant-item.active[data-v-c3b7f26f]{background:var(--subnavbar-item-active-background);color:var(--text-color);font-weight:500}.cui-assistant-item.active[data-v-c3b7f26f]:before{content:"";background:var(--p-primary-color);border-radius:2px;width:2px;position:absolute;top:9px;bottom:9px;left:3px}.cui-assistant-item-delete[data-v-c3b7f26f]:hover{color:var(--text-danger-color)}.cui-assistant-sidebar-foot[data-v-c3b7f26f]{border-top:1px solid var(--border-color)}.cui-assistant-hero-icon[data-v-681e7aa2]{background:var(--chip-background)}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{J as e,Xt as t,Yt as n,ai as r,hr as i,nn as ee}from"./vendor-cameraui-K1Nw4PvF.js";import{Bn as a,H as o,In as s,R as c,Vn as l,_ as u,dn as d,kr as f,m as p}from"./api-D1iULsSy.js";import{$n as m,Cr as h,In as g,Jn as _,On as v,Pn as y,Rn as b,Sr as x,Xn as S,an as te,br as ne,cn as C,dn as w,dr as T,er as E,gn as D,hn as O,ln as k,nn as re,or as ie,rn as A,sn as j,sr as M,un as N,vn as P,yr as F}from"./vendor-Df81FCJz.js";import{i as ae}from"./alert-outline-B4ZZowEj.js";import{l as oe,p as se,u as ce}from"./vendor-core-CJdfpB0I.js";import{G as I,W as L}from"./vendor-primevue-DoA2Rwcb.js";import{i as le,t as ue}from"./assistant-7hqP6OpA.js";import{n as de,t as fe}from"./CuiAssistantConversation-B3xEiNNt.js";import{t as pe}from"./plus-BJb7U4bN.js";import{t as me}from"./history-D-FlZdKD.js";import{t as R}from"./search-D75YW08B.js";import{t as he}from"./back-filled-CJoz7Gkl.js";var z={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function ge(e,t){return g(),w(`svg`,z,[...t[0]||=[C(`path`,{fill:`currentColor`,d:`M20 4H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2m0 14H9V6h11Z`},null,-1)]])}var _e=M({name:`mdi-dock-left`,render:ge}),ve={class:`flex items-center gap-2 px-3 pt-3 pb-1`},ye={class:`pl-1 text-sm font-semibold text-color`},B={key:0,class:`flex justify-center py-6`},V={key:1,class:`px-4 py-6 text-[13px] text-muted`},H={key:2,class:`flex min-h-0 flex-1 flex-col overflow-y-auto px-2 pb-3`},U={class:`cui-assistant-group px-2 pt-3.5 pb-1 text-[11.5px] font-medium text-muted`},W=[`onClick`],G={class:`min-w-0 flex-1 truncate`},K={key:3,class:`cui-assistant-sidebar-foot px-3 pt-2`},be=s(P({__name:`CuiAssistantSidebar`,props:{threads:{},activeId:{},isOpen:{type:Boolean},isOverlay:{type:Boolean},loading:{type:Boolean,default:!1},collapsible:{type:Boolean,default:!0}},emits:[`select`,`create`,`delete`,`deleteAll`,`close`],setup(i,{emit:a}){let o=i,s=a,{topbarOffset:u}=l(),d=_(`sidebarRef`),f=T(``),p=j(()=>o.isOpen?288:0),v=j(()=>{let e=f.value.trim().toLowerCase(),t=o.threads.filter(t=>!e||t.title.toLowerCase().includes(e)).sort((e,t)=>t.updatedAt-e.updatedAt),n=[`today`,`yesterday`,`week`,`month`,`older`],r=new Map;for(let e of t){let t=y(e.updatedAt);r.set(t,[...r.get(t)??[],e])}return n.filter(e=>r.has(e)).map(e=>({key:e,threads:r.get(e)}))});function y(e){let t=e=>new Date(e.getFullYear(),e.getMonth(),e.getDate()).getTime(),n=Math.round((t(new Date)-t(new Date(e)))/864e5);return n<=0?`today`:n===1?`yesterday`:n<=7?`week`:n<=30?`month`:`older`}return r(d,e=>{o.isOpen&&o.isOverlay&&(e.target.closest(`#assistant-sidebar-toggle`)||s(`close`))}),(r,a)=>{let o=_e,l=t,_=pe,y=R,S=L,te=e,T=I,j=n,M=c,P=ee;return g(),w(`nav`,{ref_key:`sidebarRef`,ref:d,class:`cui-assistant-sidebar fixed transition-all duration-200 overflow-hidden md:!pl-0 pl-safe flex flex-col z-4`,style:x({width:`${F(p)}px`,borderRightWidth:i.isOpen?`1px`:`0px`,paddingBottom:`calc(var(--safe-area-inset-top) + ${F(u)}px + var(--cui-bottom-bar) + var(--cui-bottom-gap))`})},[C(`div`,{class:`flex h-full min-h-0 flex-col`,style:x({width:`${F(288)}px`})},[C(`div`,ve,[C(`span`,ye,h(r.$t(`views.assistant.conversations`)),1),i.collapsible?E((g(),k(l,{key:0,type:`button`,severity:`secondary`,text:``,rounded:``,class:`cui-icon-md ml-auto shrink-0`,onClick:a[0]||=e=>s(`close`)},{icon:m(()=>[D(o,{width:`100%`,height:`100%`})]),_:1})),[[P,{value:r.$t(`views.assistant.hide_sidebar`)},void 0,{bottom:!0}]]):N(``,!0)]),C(`button`,{type:`button`,class:`cui-assistant-new mx-3 my-2 flex cursor-pointer items-center gap-2 rounded-[10px] px-3 py-2 text-sm font-medium text-color`,onClick:a[1]||=e=>s(`create`)},[D(_,{class:`w-4 h-4 text-primary`}),O(` `+h(r.$t(`views.assistant.new_conversation`)),1)]),D(T,{class:`mx-3 mb-1`},{default:m(()=>[D(S,null,{default:m(()=>[D(y,{class:`w-4 h-4`})]),_:1}),D(te,{modelValue:F(f),"onUpdate:modelValue":a[2]||=e=>ie(f)?f.value=e:null,placeholder:r.$t(`views.assistant.search_placeholder`),class:`cui-assistant-search w-full text-sm`},null,8,[`modelValue`,`placeholder`])]),_:1}),i.loading?(g(),w(`div`,B,[D(j,{class:`w-[24px] h-[24px] m-0`,"stroke-width":`5`})])):F(v).length?(g(),w(`div`,H,[(g(!0),w(A,null,b(F(v),e=>(g(),w(A,{key:e.key},[C(`span`,U,h(r.$t(`views.assistant.group_${e.key}`)),1),(g(!0),w(A,null,b(e.threads,e=>(g(),w(`div`,{key:e.id,class:ne([`cui-assistant-item group relative flex items-center gap-2 rounded-md py-1.5 pl-3 pr-2 text-[13.5px] cursor-pointer select-none`,{active:e.id===i.activeId}]),onClick:t=>s(`select`,e.id)},[C(`span`,G,h(e.title),1),E((g(),k(l,{type:`button`,severity:`secondary`,text:``,rounded:``,class:`cui-assistant-item-delete cui-icon-sm shrink-0 opacity-0 group-hover:opacity-100 focus:opacity-100`,onClick:re(t=>s(`delete`,e.id),[`stop`])},{icon:m(()=>[D(M,{width:`100%`,height:`100%`})]),_:1},8,[`onClick`])),[[P,{value:r.$t(`views.assistant.delete_conversation`)},void 0,{left:!0}]])],10,W))),128))],64))),128))])):(g(),w(`div`,V,h(F(f)?r.$t(`views.assistant.no_matches`):r.$t(`views.assistant.no_conversations`)),1)),i.threads.length?(g(),w(`div`,K,[D(l,{type:`button`,severity:`danger`,text:``,class:`cui-button-small w-full`,label:r.$t(`views.assistant.delete_all_conversations`),onClick:a[3]||=e=>s(`deleteAll`)},null,8,[`label`])])):N(``,!0)],4)],4)}}}),[[`__scopeId`,`data-v-c3b7f26f`]]),xe={class:`font-semibold text-xl truncate`},Se={class:`w-full h-full relative`},Ce={key:0,class:`w-full flex flex-row h-[calc(40px+1rem)] py-2 items-center fixed z-10`},we={class:`relative z-2 page-title !m-0`},Te={key:1,class:`relative z-2 ml-3 truncate text-[13.5px] text-muted max-w-[46ch]`},Ee={key:1,class:`fixed right-0 z-10 h-[calc(40px+1rem)] py-2 pr-safe-offset-2 flex items-center`},De={key:0,class:`flex flex-1 items-center justify-center`},Oe={key:1,class:`flex flex-1 flex-col items-center justify-center gap-5 px-6 text-center`},ke={class:`cui-assistant-hero-icon flex h-16 w-16 items-center justify-center rounded-full`},Ae={class:`max-w-md`},je={class:`text-lg font-semibold text-color`},Me={class:`mt-1 text-sm text-muted`},q=s(P({__name:`Assistant`,setup(e){let r=new ue,s=oe(),c=ce(),{t:l}=i(),{smBreakpoint:b,mdBreakpoint:O,xlBreakpoint:re}=a(),{openTextDialog:ie}=d(),A=f(`/notifications`),M=de(),P=u(),{user:I}=se(P),{data:L,isLoading:R}=r.getAssistantInfoQuery(),{data:z,isLoading:ge}=r.listThreadsQuery(),ve=r.deleteThreadMutation(),ye=r.deleteAllThreadsMutation(),B=_(`conversationRef`),V=T(Z()),H=T([]),U=T({}),W=T(null),G=T(typeof s.query.prompt==`string`?s.query.prompt:void 0),K=T(!1),q=T(re.value?`opened`:`closed`),Ne=T(!1),J=j(()=>L.value?.status.state??`disabled`),Pe=j(()=>!L.value&&R.value),Fe=j(()=>I.value?.role===`admin`||I.value?.role===`master`),Ie=j(()=>(L.value?.tools??[]).filter(e=>e.approval)),Y=j(()=>q.value===`opened`),Le=j(()=>z.value?.find(e=>e.id===V.value)?.title??``),X=j(()=>O.value),Re=j(()=>O.value||J.value!==`ready`?`0px`:Y.value?`288px`:`0px`),ze=j(()=>[l(`views.assistant.suggestion_today`),l(`views.assistant.suggestion_week`),l(`views.assistant.suggestion_offline`),l(`views.assistant.suggestion_sensors`),l(`views.assistant.suggestion_tools`)]);function Z(){return p()}function Be(){q.value=q.value===`opened`?`closed`:`opened`}function Q(){q.value=`closed`}function $(){H.value=[],U.value={},W.value=null,G.value=void 0,V.value=Z(),X.value&&Q()}async function Ve(e){if(X.value&&Q(),e!==V.value){K.value=!0;try{let t=await le(e);H.value=t.messages,U.value=t.attachments,W.value=t.modelId??null,G.value=void 0,V.value=e}finally{K.value=!1}}}async function He(e){await ve.mutateAsync(e).catch(()=>void 0),e===V.value&&$()}async function Ue(e){H.value=e.messages,U.value=e.attachments,W.value=e.modelId??null,G.value=void 0,V.value=e._id,await r.queryClient.refetchQueries({queryKey:[`assistant`,`threads`],exact:!0})}function We(){ie({data:{title:l(`views.assistant.delete_all_conversations`),contentText:l(`views.assistant.delete_all_confirm`),confirmText:l(`components.form.button.remove`),confirmButtonProps:{severity:`danger`}},onConfirm:async()=>{await ye.mutateAsync(),$()}})}async function Ge(e){try{await Ve(e)}catch{V.value=e}}async function Ke(){await r.queryClient.refetchQueries({queryKey:[`assistant`,`threads`],exact:!0})}async function qe(e){if(await r.queryClient.refetchQueries({queryKey:[`assistant`,`threads`],exact:!0}),e.threadId!==V.value)return;let t=await le(e.threadId).catch(()=>void 0);t&&B.value?.refreshFromStore(t)}function Je(){let e=z.value?.some(e=>e.id===V.value),t={...s.query,thread:e?V.value:void 0};t.thread!==s.query.thread&&c.replace({query:t})}return S([V,z],Je),y(async()=>{M.close(),A.on(`assistant-thread`,e=>qe(e));let e=typeof s.query.thread==`string`?s.query.thread:void 0;s.query.prompt!==void 0&&c.replace({query:{...s.query,prompt:void 0}}),e&&!G.value&&await Ge(e),await v(),Ne.value=!0}),(e,r)=>{let i=o,a=he,s=t,c=me,l=pe,u=be,d=_e,f=n,p=ae,_=fe,v=ee;return g(),w(`div`,null,[D(i,{position:`center`},{default:m(()=>[C(`span`,xe,h(e.$t(`views.assistant.title`)),1)]),_:1}),D(i,{position:`left`},{default:m(()=>[D(s,{severity:`secondary`,text:``,class:`cui-button p-2 text-color non-draggable-region`,onClick:r[0]||=t=>e.$router.push(`/menu`)},{icon:m(()=>[D(a,{class:`w-6 h-6`})]),_:1}),D(s,{id:`assistant-sidebar-toggle`,severity:`secondary`,class:`cui-button p-2 text-color`,text:``,rounded:``,onClick:Be},{icon:m(()=>[D(c,{width:`100%`,height:`100%`})]),_:1})]),_:1}),D(i,{position:`right`},{default:m(()=>[D(s,{severity:`secondary`,class:`cui-button p-2 text-color`,text:``,rounded:``,disabled:F(J)!==`ready`,onClick:$},{icon:m(()=>[D(l,{width:`100%`,height:`100%`})]),_:1},8,[`disabled`])]),_:1}),F(J)===`ready`?(g(),k(u,{key:0,threads:F(z)??[],"active-id":F(V),loading:F(ge),"is-open":F(Y),"is-overlay":F(X),onSelect:Ve,onCreate:$,onDelete:He,onDeleteAll:We,onClose:Q},null,8,[`threads`,`active-id`,`loading`,`is-open`,`is-overlay`])):N(``,!0),(g(),k(te,{to:`#container`,defer:``},[F(Y)&&F(X)?(g(),w(`div`,{key:0,class:`fixed top-0 left-0 right-0 bottom-0 w-full h-full bg-black/50 z-1`,onClick:Q})):N(``,!0)])),C(`main`,{class:`relative w-full h-full`,style:x({paddingLeft:F(Re),transition:F(Ne)?`padding-left 200ms`:void 0})},[C(`div`,Se,[F(b)?N(``,!0):(g(),w(`div`,Ce,[r[3]||=C(`div`,{class:`ml-2`},null,-1),!F(Y)&&F(J)===`ready`?E((g(),k(s,{key:0,id:`assistant-sidebar-toggle`,severity:`secondary`,class:`mr-2 cui-icon-lg relative z-2`,text:``,rounded:``,onClick:Be},{icon:m(()=>[D(d,{width:`100%`,height:`100%`})]),_:1})),[[v,{value:e.$t(`views.assistant.show_sidebar`)},void 0,{bottom:!0}]]):N(``,!0),C(`h1`,we,h(e.$t(`views.assistant.title`)),1),F(Le)?(g(),w(`span`,Te,h(F(Le)),1)):N(``,!0),r[4]||=C(`div`,{class:`gradient-blur rotate-180 !h-[70px]`},[C(`div`),C(`div`),C(`div`),C(`div`),C(`div`),C(`div`)],-1)])),!F(b)&&F(J)===`ready`?(g(),w(`div`,Ee,[E((g(),k(s,{severity:`secondary`,text:``,rounded:``,class:`cui-icon-lg relative z-2`,onClick:$},{icon:m(()=>[D(l,{width:`100%`,height:`100%`})]),_:1})),[[v,{value:e.$t(`views.assistant.new_conversation`)},void 0,{bottom:!0}]])])):N(``,!0),C(`div`,{class:ne([`h-full w-full flex flex-col`,{"pt-2":F(b),"pt-[calc(40px+2rem)]":!F(b)}])},[F(Pe)||F(K)?(g(),w(`div`,De,[D(f,{class:`w-[30px] h-[30px] m-0`,"stroke-width":`5`})])):F(J)===`ready`?(g(),k(_,{ref_key:`conversationRef`,ref:B,key:F(V),"thread-id":F(V),"initial-messages":F(H),"initial-attachments":F(U),"initial-model-id":F(W),"initial-prompt":F(G),suggestions:F(ze),"approval-tools":F(Ie),tools:F(L)?.tools??[],class:`flex-1 min-h-0`,onFinished:Ke,onBranched:Ue,onEmptied:r[2]||=e=>He(F(V))},null,8,[`thread-id`,`initial-messages`,`initial-attachments`,`initial-model-id`,`initial-prompt`,`suggestions`,`approval-tools`,`tools`])):(g(),w(`div`,Oe,[C(`div`,ke,[D(p,{class:`w-8 h-8 text-muted`})]),C(`div`,Ae,[C(`div`,je,h(e.$t(F(J)===`disabled`?`views.assistant.disabled_title`:`views.assistant.unconfigured_title`)),1),C(`div`,Me,h(e.$t(F(Fe)?`views.assistant.setup_hint_admin`:`views.assistant.setup_hint_user`)),1)]),F(Fe)?(g(),k(s,{key:0,class:`cui-button-medium`,label:e.$t(`views.assistant.open_settings`),onClick:r[1]||=t=>e.$router.push(`/settings/assistant`)},null,8,[`label`])):N(``,!0)]))],2)])],4)])}}}),[[`__scopeId`,`data-v-681e7aa2`]]);export{q as default};
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./ConfigTriggerDetection-BRr6ixxQ.js","./vendor-cameraui-K1Nw4PvF.js","./rolldown-runtime-C0FnF6B9.js","./vendor-Df81FCJz.js","./eventLabels-idFWh3Y_.js","./vendor-primevue-DoA2Rwcb.js","./useCameraOptions-CI1baRmm.js","./api-D1iULsSy.js","./intercomService-BQYzjnAi.js","./vendor-zod-CBbC1rE7.js","./types-CeruGCb8.js","./alert-outline-B4ZZowEj.js","./vendor-core-CJdfpB0I.js","./vendor-dnd-C1kMh9_t.js","./close-Be7oB7d_.js","./vendor-draggabilly-Cw1oJ6qc.js","./api-By0v6EeA.css","./ConfigTriggerSensor-BwJ_cAqd.js","./ConfigTriggerSchedule-CYOt57qg.js","./ConfigTriggerWebhook-CccBmMCb.js","./information-outline-ChOM9qgI.js","./copy-DuY-M96E.js","./ConfigTriggerMqtt-pjHW4yOL.js","./mqtt-ChvXxMhR.js","./ConfigTriggerSystem-DBXIrjzU.js","./plugins-lsoAntRQ.js","./ConfigTriggerManual-aXD6k1qa.js","./ConfigTriggerGeofence-D-xRMGrT.js","./useUserOptions-BKteXnmU.js","./vendor-leaflet-OSZlONe5.js","./vendor-leaflet-vh-t_kPv.css","./ConfigActionSnapshot-hVHSfdtS.js","./ConfigActionSensor-DmImWFAo.js","./variable-Cp8o-q8t.js","./ConfigSensorValueInput-CTUdAA-R.js","./VariableInput-DQJle67Y.js","./flowSchema-Dp_-p9WA.js","./ConfigActionNotification-bhbb5AqU.js","./notifications-CbL-1oMs.js","./VariableSuggestions-D8V739dF.js","./upload-2WcHRjTq.js","./ConfigActionNotificationControl-BbvX8MFu.js","./ConfigActionAssistant-DCkJ_Iqq.js","./assistant-7hqP6OpA.js","./ConfigActionHttp-_kqgEuun.js","./delete-BWgOAzKl.js","./ConfigActionMqtt-z7UzccW5.js","./ConfigActionDelay-BAp1dr0N.js","./ConfigActionVariable-BIpruwsx.js","./ConfigActionPlugin-DGjZd1L0.js","./CuiSchema-DScmDQsh.js","./theme-BOppzzar.js","./CuiSchema-BYYeh269.css","./automations-CTTQlGCW.js","./ConfigActionImageInput-BgtACnCm.js","./ConfigActionOutput-DdgSg3FU.js","./ConfigActionCameraControl-2pzl59gR.js","./types-J1Drrxo1.js","./ConfigConditionIfElse-DRSpsoR4.js","./nodeDefinitions-Dp8cnne1.js","./clock-outline-BtWx4GaF.js","./source-branch-DVHuYlkZ.js","./webhook-DIjChTrs.js","./ConfigConditionSwitch-4SbQcU7N.js","./ConfigConditionSensorState-C2SNARH7.js","./ConfigConditionTime-ESX3shbg.js","./CuiAutomationRunsDialog-CfylVPLI.js","./chevron-down-CxK4Sfjs.js","./history-D-FlZdKD.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{J as e,Ot as t,Xt as n,Yt as r,at as i,hr as a,nn as o,pr as s}from"./vendor-cameraui-K1Nw4PvF.js";import{Bn as c,Br as l,Gt as u,H as d,In as f,Mn as p,Tn as m,Vn as h,dn as g,fn as _,h as v,mn as y}from"./api-D1iULsSy.js";import{$n as b,Cr as x,Dn as ee,Fn as S,Hn as C,Ht as w,In as T,Jn as te,Pn as ne,Rn as E,Sr as D,Tn as O,Xn as re,br as k,cn as A,dn as j,dr as M,er as N,gn as P,hn as F,ln as I,mr as L,nn as R,or as ie,pn as ae,rn as z,sn as B,sr as V,un as H,vn as U,vr as oe,yr as W,zn as se}from"./vendor-Df81FCJz.js";import{l as ce,p as le,s as ue,u as de}from"./vendor-core-CJdfpB0I.js";import{A as fe,D as G,N as K,O as q,V as pe,k as me,o as he,v as ge}from"./vendor-primevue-DoA2Rwcb.js";import{t as _e}from"./close-Be7oB7d_.js";import{t as J}from"./history-D-FlZdKD.js";import{t as ve}from"./automations-CTTQlGCW.js";import{n as Y,t as X}from"./nodeDefinitions-Dp8cnne1.js";import{a as ye,r as be}from"./flowSchema-Dp_-p9WA.js";import{t as xe}from"./useCameraOptions-CI1baRmm.js";import{r as Se}from"./types-J1Drrxo1.js";import{t as Ce}from"./CuiBottomSheet-DEVNeDqa.js";import{i as we}from"./automationBlueprint-D0F9AHk9.js";import{t as Te}from"./back-filled-CJoz7Gkl.js";import{i as Ee,n as De,r as Oe,t as ke}from"./undo-YRkBYCnf.js";import{t as Ae}from"./plus-BBUb8_uL.js";import{a as je,c as Me,i as Z,n as Ne,o as Pe,r as Fe,s as Ie,t as Le}from"./vendor-vueflow-DWU_IzGe.js";import{t as Re}from"./settings-DDOgc5BX.js";var ze={viewBox:`0 0 32 32`,width:`1.2em`,height:`1.2em`};function Be(e,t){return T(),j(`svg`,ze,[...t[0]||=[A(`path`,{fill:`currentColor`,d:`M23 20a5 5 0 0 0-3.89 1.89l-7.31-4.57a4.46 4.46 0 0 0 0-2.64l7.31-4.57A5 5 0 1 0 18 7a4.8 4.8 0 0 0 .2 1.32l-7.31 4.57a5 5 0 1 0 0 6.22l7.31 4.57A4.8 4.8 0 0 0 18 25a5 5 0 1 0 5-5m0-16a3 3 0 1 1-3 3a3 3 0 0 1 3-3M7 19a3 3 0 1 1 3-3a3 3 0 0 1-3 3m16 9a3 3 0 1 1 3-3a3 3 0 0 1-3 3`},null,-1)]])}var Ve=V({name:`carbon-share`,render:Be}),He={viewBox:`0 0 32 32`,width:`1.2em`,height:`1.2em`};function Ue(e,t){return T(),j(`svg`,He,[...t[0]||=[A(`path`,{fill:`currentColor`,d:`M12 12h2v12h-2zm6 0h2v12h-2z`},null,-1),A(`path`,{fill:`currentColor`,d:`M4 6v2h2v20a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V8h2V6Zm4 22V8h16v20Zm4-26h8v2h-8z`},null,-1)]])}var We=V({name:`carbon-trash-can`,render:Ue});function Ge(e){return`case-${encodeURIComponent(e)}`}var Ke=[`id`,`d`],qe=24,Je=U({__name:`DeletableEdge`,props:{id:{},sourceNode:{},targetNode:{},source:{},target:{},type:{},label:{type:[String,Object,Function]},style:{},selected:{type:Boolean},sourcePosition:{},targetPosition:{},sourceHandleId:{},targetHandleId:{},animated:{type:Boolean},updatable:{type:Boolean},markerStart:{},markerEnd:{},curvature:{},interactionWidth:{},data:{},events:{},labelStyle:{},labelShowBg:{type:Boolean},labelBgStyle:{},labelBgPadding:{},labelBgBorderRadius:{},sourceX:{},sourceY:{},targetX:{},targetY:{}},setup(e){let t=e,{removeEdges:n}=Me(),r=B(()=>Ie({sourceX:t.sourceX,sourceY:t.sourceY,sourcePosition:t.sourcePosition,targetX:t.targetX,targetY:t.targetY,targetPosition:t.targetPosition})),i=B(()=>r.value[0]),a=B(()=>r.value[1]),o=B(()=>r.value[2]),s=B(()=>{let e=document.createElementNS(`http://www.w3.org/2000/svg`,`path`);return e.setAttribute(`d`,i.value),e.getTotalLength()}),c=B(()=>{let e=s.value;if(e<=0)return{stroke:`var(--text-muted-color)`,strokeWidth:2,fill:`none`};let t=e/2,n=qe/2;return{stroke:`var(--text-muted-color)`,strokeWidth:2,fill:`none`,strokeDasharray:`${Math.max(0,t-n)} ${qe} ${Math.max(0,e-t-n)}`}});function l(){n([t.id])}return(t,n)=>{let r=_e;return T(),j(z,null,[A(`path`,{id:e.id,d:W(i),style:D(W(c)),class:`vue-flow__edge-path`},null,12,Ke),P(W(je),null,{default:b(()=>[A(`div`,{class:`automation-edge-button nodrag nopan`,style:D({pointerEvents:`all`,position:`absolute`,transform:`translate(-50%, -50%) translate(${W(a)}px, ${W(o)}px)`})},[A(`button`,{class:`automation-edge-delete`,onClick:R(l,[`stop`])},[P(r,{class:`w-3 h-3`})])],4)]),_:1})],64)}}}),Ye={"trigger-detection":[`cameraId`],"trigger-sensor":[`sensorId`],"trigger-schedule":[`cron`],"trigger-mqtt":[`topic`],"trigger-system":[`eventType`],"condition-switch":[`variable`],"condition-ifelse":[`leftOperand`,`operator`],"condition-sensorstate":[`sensorId`],"condition-time":[`startTime`,`endTime`],"action-snapshot":[`cameraId`],"action-sensor":[`sensorId`],"action-notification":[`title`],"action-assistant":[`user`,`prompt`],"action-http":[`url`],"action-mqtt":[`topic`],"action-variable":[`variableName`],"action-plugin":[`pluginName`,`method`],"action-camera-control":[`cameraId`],"action-image-input":[`source`]},Xe=new Set([`http`,`mqtt`,`webhook`,`sensor`,`system`,`repeat`,`previous`,`plugin`,`camera`,`geo`,`event`]),Ze=new Set([`time.now`,`flow.startMs`,`snapshot`,`snapshot.base64`,`output`]);function Qe(e){if(!e)return[];let t=[],n=e.nodes,r=e.edges,i=n.filter(e=>e.type?.startsWith(`trigger-`));i.length===0&&t.push({messageKey:`validation_no_trigger`});let a=new Set(i.map(e=>e.id)),o=!0;for(;o;){o=!1;for(let e of r)a.has(e.source)&&!a.has(e.target)&&(a.add(e.target),o=!0)}for(let r of n){if(!r.type)continue;let n=r.data??{};!r.type.startsWith(`trigger-`)&&!a.has(r.id)&&t.push({nodeId:r.id,messageKey:`validation_unreachable`});for(let e of Ye[r.type]??[]){let i=n[e];if(i==null||i===``){t.push({nodeId:r.id,messageKey:`validation_missing_fields`});break}}r.type===`condition-switch`&&(!Array.isArray(n.cases)||n.cases.length===0)&&t.push({nodeId:r.id,messageKey:`validation_no_cases`}),r.type===`trigger-schedule`&&typeof n.cron==`string`&&n.cron&&n.cron.trim().split(/\s+/).length!==5&&t.push({nodeId:r.id,messageKey:`validation_invalid_cron`}),r.type===`action-variable`&&typeof n.variableName==`string`&&n.variableName&&!/^\w+(?:\.\w+)*$/.test(n.variableName)&&t.push({nodeId:r.id,messageKey:`validation_invalid_variable_name`}),t.push(...$e(e,r))}return t}function $e(e,t){let n=[],r=new Set(be(e,t.id).map(e=>e.template.slice(2,-2))),i=new Set([...r].map(e=>e.split(`.`)[0])),a=et(e),o=[];tt(t.data??{},o);let s=new Set;for(let e of o)for(let o of e.matchAll(/\{\{(\w+(?:\.\w+)*)\}\}/g)){let e=o[1];if(r.has(e)||Ze.has(e)||a.has(e)||s.has(e))continue;let c=e.split(`.`)[0];Xe.has(c)&&i.has(c)||a.has(c)||(s.add(e),n.push({nodeId:t.id,messageKey:`validation_unknown_variable`,params:{name:e}}))}return n}function et(e){let t=new Set;for(let n of e.nodes){let e=n.data??{};n.type===`action-variable`&&typeof e.variableName==`string`&&e.variableName&&t.add(e.variableName),n.type===`action-image-input`&&t.add(typeof e.variableName==`string`&&e.variableName?e.variableName:`image`),typeof e.alias==`string`&&e.alias&&t.add(e.alias)}return t}function tt(e,t){if(typeof e==`string`){e.includes(`{{`)&&t.push(e);return}if(Array.isArray(e)){for(let n of e)tt(n,t);return}if(e&&typeof e==`object`)for(let n of Object.values(e))tt(n,t)}function nt(e){let t=ye(),{t:n}=a();return B(()=>{let r=t.validationIssues.filter(t=>t.nodeId===oe(e));if(r.length!==0)return r.map(e=>n(`components.automation_nodes.${e.messageKey}`,e.params??{})).join(`
|
|
3
|
+
`)})}var rt=[`cameraId`,`sensorId`,`sensorType`];function it(e,t){if(!e||!t)return null;let n={},r=e,i=t;for(let e of rt)r[e]&&e in i&&!i[e]&&(n[e]=r[e]);return Object.keys(n).length>0?n:null}function at(e){return e.type===`trigger-webhook`&&!e.webhookId?{...e,webhookId:s()}:e.type===`trigger-geofence`&&!e.geofenceId?{...e,geofenceId:s()}:e}function ot(e,t,n){if(!e)return;let r=e=>e?t?.(e)??e:void 0,i=(e,t)=>e?n?.(e)??t??e:void 0;switch(e.type){case`trigger-detection`:return r(e.cameraId);case`trigger-sensor`:return i(e.sensorId,e.sensorType);case`trigger-schedule`:return e.cron||void 0;case`trigger-webhook`:return e.webhookId?`...${e.webhookId.slice(-8)}`:void 0;case`trigger-system`:return e.eventType?`${e.category}: ${e.eventType.split(`:`).pop()}`:void 0;case`trigger-manual`:return;case`trigger-geofence`:return e.zoneName||void 0;case`trigger-mqtt`:return e.topic||void 0;case`condition-ifelse`:return e.leftOperand&&e.operator?`${e.leftOperand} ${e.operator} ${e.rightOperand}`:void 0;case`condition-switch`:return e.variable||void 0;case`condition-sensorstate`:return i(e.sensorId,e.sensorType);case`condition-time`:return e.startTime&&e.endTime?`${e.startTime} - ${e.endTime}`:void 0;case`action-snapshot`:return r(e.cameraId);case`action-camera-control`:return r(e.cameraId);case`action-sensor`:return i(e.sensorId,e.sensorType);case`action-notification`:return e.title||void 0;case`action-notification-control`:return`${e.mode} · ${e.scope}`;case`action-assistant`:return e.prompt?e.prompt.slice(0,40):void 0;case`action-http`:return e.url?`${e.method} ${e.url}`:void 0;case`action-mqtt`:return e.topic||void 0;case`action-delay`:return`${e.duration} ${e.unit}`;case`action-variable`:return e.variableName||void 0;case`action-plugin`:return[e.pluginName,e.method].filter(Boolean).join(`: `)||void 0;default:return}}var st={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function ct(e,t){return T(),j(`svg`,st,[...t[0]||=[A(`path`,{fill:`currentColor`,d:`M10 3h4v11h-4zm0 18v-4h4v4z`},null,-1)]])}var lt=V({name:`mdi-exclamation-thick`,render:ct}),ut={maxInputs:1/0},dt={key:0,class:`absolute -top-2 -right-2 z-10 flex items-center justify-center w-5 h-5 rounded-full bg-amber-500 text-white`},ft={class:`flex items-center gap-2 px-3 py-2.5`},pt={class:`flex-1 min-w-0`},mt={class:`text-xs font-semibold truncate text-color`},ht={key:0,class:`text-[10px] text-muted truncate mt-0.5`},gt=f(U({__name:`BaseNode`,props:O({icon:{},label:{},subtitle:{},color:{},selected:{type:Boolean},showInput:{type:Boolean},showOutput:{type:Boolean},maxInputs:{},warning:{}},ut),setup(e){let t={backgroundColor:`var(--text-muted-color)`,borderColor:`var(--card-background)`};return(n,r)=>{let i=lt,a=o;return T(),j(`div`,{class:k([`automation-node relative card-background rounded-lg border-2 shadow-lg min-w-[180px] max-w-[220px] select-none`,{"ring-2 ring-primary":e.selected}]),style:D({borderColor:e.color})},[e.warning?N((T(),j(`div`,dt,[P(i,{class:`w-3.5 h-3.5`})])),[[a,e.warning,void 0,{top:!0}]]):H(``,!0),A(`div`,ft,[A(`div`,{class:`flex items-center justify-center w-8 h-8 rounded-md shrink-0`,style:D({backgroundColor:`${e.color}20`,color:e.color})},[(T(),I(C(e.icon),{class:`w-4.5 h-4.5`}))],4),A(`div`,pt,[A(`div`,mt,x(e.label),1),e.subtitle?(T(),j(`div`,ht,x(e.subtitle),1)):H(``,!0)])]),e.showInput?(T(),I(W(Pe),{key:1,type:`target`,position:W(Fe).Top,connectable:e.maxInputs,class:`!w-5 !h-5 !border-2`,style:t},null,8,[`position`,`connectable`])):H(``,!0),se(n.$slots,`handles`,{},()=>[e.showOutput?(T(),I(W(Pe),{key:0,type:`source`,position:W(Fe).Bottom,class:`!w-5 !h-5 !border-2`,style:t},null,8,[`position`])):H(``,!0)],!0)],6)}}}),[[`__scopeId`,`data-v-13cfb248`]]),_t={class:`text-muted font-medium truncate`},vt={class:`text-color font-semibold text-right`},Q=U({__name:`ActionNode`,props:{id:{},type:{},selected:{type:Boolean},connectable:{type:[Boolean,Number,String,Function]},position:{},dimensions:{},label:{},isValidTargetPos:{type:Function},isValidSourcePos:{type:Function},parent:{},parentNodeId:{},dragging:{type:Boolean},resizing:{type:Boolean},zIndex:{},targetPosition:{},sourcePosition:{},dragHandle:{},data:{},events:{}},setup(e){let n=e,{t:r}=a(),o=ye(),{lastOutput:s}=le(o),c=nt(()=>n.id),l=B(()=>X(n.type)),u=B(()=>l.value?r(l.value.labelKey):n.type),{cameraName:d}=xe(),{sensors:f}=t(),p=B(()=>{let e=n.data,t=e.alias,r=ot(n.data,d,h);return e.type===`action-plugin`&&e.repeat&&e.repeat>1&&(r=r?`${r} (${e.repeat}x)`:`${e.repeat}x`),t&&r?`[${t}] ${r}`:t?`[${t}]`:r}),m=B(()=>n.type!==`action-output`||!s.value?[]:Object.entries(s.value));function h(e){let t=f.value.find(t=>t.id===e);return t?t.displayName.value||t.name:void 0}return(t,n)=>{let r=i;return T(),j(`div`,null,[P(gt,{icon:W(l).icon,label:W(u),subtitle:W(p),color:W(l)?.color??`#3b82f6`,selected:e.selected,warning:W(c),"show-input":!0,"show-output":!0},null,8,[`icon`,`label`,`subtitle`,`color`,`selected`,`warning`]),e.type===`action-output`&&W(m).length?(T(),I(r,{key:0,class:`cui-card mt-1`,pt:{body:{class:`p-0`}},style:{"min-width":`180px`}},{content:b(()=>[(T(!0),j(z,null,E(W(m),(e,t)=>(T(),j(`div`,{key:t,class:k([`flex justify-between gap-3 px-3 py-1.5 text-[11px]`,{"border-t border-surface-100 dark:border-surface-800":t>0}])},[A(`span`,_t,x(e[0]),1),A(`span`,vt,x(e[1]),1)],2))),128))]),_:1})):H(``,!0)])}}}),yt=U({__name:`ConditionNode`,props:{id:{},type:{},selected:{type:Boolean},connectable:{type:[Boolean,Number,String,Function]},position:{},dimensions:{},label:{},isValidTargetPos:{type:Function},isValidSourcePos:{type:Function},parent:{},parentNodeId:{},dragging:{type:Boolean},resizing:{type:Boolean},zIndex:{},targetPosition:{},sourcePosition:{},dragHandle:{},data:{},events:{}},setup(e){let n=e,{t:r}=a(),i={borderColor:`var(--card-background)`},o=nt(()=>n.id),s=B(()=>X(n.type)),c=B(()=>s.value?r(s.value.labelKey):n.type),{cameraName:l}=xe(),{sensors:u}=t(),d=B(()=>ot(n.data,l,f));function f(e){let t=u.value.find(t=>t.id===e);return t?t.displayName.value||t.name:void 0}return(t,n)=>(T(),I(gt,{icon:W(s).icon,label:W(c),subtitle:W(d),color:W(s)?.color??`#f59e0b`,selected:e.selected,warning:W(o),"show-input":!0,"show-output":!1,"max-inputs":1},{handles:b(()=>[P(W(Pe),{type:`source`,position:W(Fe).Bottom,id:`true`,class:`!w-5 !h-5 !border-2`,style:D({...i,backgroundColor:`var(--text-success-color)`,left:`30%`})},null,8,[`position`,`style`]),P(W(Pe),{type:`source`,position:W(Fe).Bottom,id:`false`,class:`!w-5 !h-5 !border-2`,style:D({...i,backgroundColor:`var(--text-danger-color)`,left:`70%`})},null,8,[`position`,`style`])]),_:1},8,[`icon`,`label`,`subtitle`,`color`,`selected`,`warning`]))}}),bt={class:`absolute top-5 left-1/2 -translate-x-1/2 text-[10px] text-muted whitespace-nowrap pointer-events-none`},xt=U({__name:`SwitchNode`,props:{id:{},type:{},selected:{type:Boolean},connectable:{type:[Boolean,Number,String,Function]},position:{},dimensions:{},label:{},isValidTargetPos:{type:Function},isValidSourcePos:{type:Function},parent:{},parentNodeId:{},dragging:{type:Boolean},resizing:{type:Boolean},zIndex:{},targetPosition:{},sourcePosition:{},dragHandle:{},data:{},events:{}},setup(e){let t=e,{t:n}=a(),r={backgroundColor:`#f59e0b`,borderColor:`var(--card-background)`},i=nt(()=>t.id),o=B(()=>X(t.type)),s=B(()=>o.value?n(o.value.labelKey):t.type),c=B(()=>t.data.type===`condition-switch`&&Array.isArray(t.data.cases)?t.data.cases:[]),l=B(()=>t.data.type===`condition-switch`&&t.data.variable?t.data.variable:void 0);return(t,n)=>(T(),I(gt,{icon:W(o).icon,label:W(s),subtitle:W(l),color:W(o)?.color??`#f59e0b`,selected:e.selected,warning:W(i),"show-input":!0,"show-output":!1,"max-inputs":1},{handles:b(()=>[(T(!0),j(z,null,E(W(c),(e,t)=>(T(),I(W(Pe),{id:W(Ge)(e),key:W(Ge)(e),type:`source`,position:W(Fe).Bottom,class:`!w-5 !h-5 !border-2`,style:D({...r,left:`${(t+1)/(W(c).length+1)*100}%`})},{default:b(()=>[A(`div`,bt,x(e),1)]),_:2},1032,[`id`,`position`,`style`]))),128))]),_:1},8,[`icon`,`label`,`subtitle`,`color`,`selected`,`warning`]))}}),$=U({__name:`TriggerNode`,props:{id:{},type:{},selected:{type:Boolean},connectable:{type:[Boolean,Number,String,Function]},position:{},dimensions:{},label:{},isValidTargetPos:{type:Function},isValidSourcePos:{type:Function},parent:{},parentNodeId:{},dragging:{type:Boolean},resizing:{type:Boolean},zIndex:{},targetPosition:{},sourcePosition:{},dragHandle:{},data:{},events:{}},setup(e){let n=e,{t:r}=a(),{cameraName:i}=xe(),{sensors:o}=t(),s=nt(()=>n.id),c=B(()=>X(n.type)),l=B(()=>c.value?r(c.value.labelKey):n.type),u=B(()=>ot(n.data,i,d));function d(e){let t=o.value.find(t=>t.id===e);return t?t.displayName.value||t.name:void 0}return(t,n)=>(T(),I(gt,{icon:W(c).icon,label:W(l),subtitle:W(u),color:W(c)?.color??`#22c55e`,selected:e.selected,warning:W(s),"show-input":!1,"show-output":!0},null,8,[`icon`,`label`,`subtitle`,`color`,`selected`,`warning`]))}}),St=50;function Ct(){let e=L([]),t=L([]);function n(e,t){return JSON.stringify({nodes:e,edges:t})}function r(e){return JSON.parse(e)}function i(r,i){let a=[...e.value,n(r,i)];a.length>St&&a.shift(),e.value=a,t.value=[]}function a(i,a){let o=[...e.value],s=o.pop();if(s)return e.value=o,t.value=[...t.value,n(i,a)],r(s)}function o(i,a){let o=[...t.value],s=o.pop();if(s)return t.value=o,e.value=[...e.value,n(i,a)],r(s)}function s(){e.value=[],t.value=[]}return{push:i,undo:a,redo:o,clear:s,canUndo:B(()=>e.value.length>0),canRedo:B(()=>t.value.length>0)}}var wt={class:`absolute inset-0 flex items-center justify-center pointer-events-none`},Tt={class:`text-muted text-sm`},Et=U({__name:`CuiAutomationCanvas`,props:{flow:{},mobile:{type:Boolean}},emits:[`node-select`,`change`],setup(e,{expose:t,emit:n}){let r=e,i=n,{t:o}=a(),{smBreakpoint:s}=c(),{screenToFlowCoordinate:l,getViewport:u,dimensions:d}=Me(),f=Ct(),p={"trigger-detection":V($),"trigger-sensor":V($),"trigger-schedule":V($),"trigger-webhook":V($),"trigger-system":V($),"trigger-manual":V($),"trigger-geofence":V($),"trigger-mqtt":V($),"condition-ifelse":V(yt),"condition-switch":V(xt),"condition-sensorstate":V(yt),"condition-time":V(yt),"action-snapshot":V(Q),"action-sensor":V(Q),"action-notification":V(Q),"action-notification-control":V(Q),"action-assistant":V(Q),"action-http":V(Q),"action-mqtt":V(Q),"action-delay":V(Q),"action-variable":V(Q),"action-plugin":V(Q),"action-camera-control":V(Q),"action-image-input":V(Q),"action-output":V(Q)},m={default:V(Je)},h=M([...r.flow.nodes]),g=M([...r.flow.edges]);function _(){f.push(h.value,g.value)}function y(){let e=f.undo(h.value,g.value);e&&(h.value=e.nodes,g.value=e.edges,i(`node-select`,null),i(`change`))}function ee(){let e=f.redo(h.value,g.value);e&&(h.value=e.nodes,g.value=e.edges,i(`node-select`,null),i(`change`))}function C(e){i(`node-select`,e.node.id)}function w(){i(`node-select`,null)}function te(e){let t=h.value.find(t=>t.id===e.source),n=h.value.find(t=>t.id===e.target);return!(!t||!n||e.source===e.target||n.type?.startsWith(`trigger-`))}function E(e){if(!te(e))return;_();let t=e.targetHandle??void 0,n=h.value.find(t=>t.id===e.target);if(n?.type?.startsWith(`condition-`)){let n=g.value.find(n=>n.target===e.target&&(n.targetHandle??void 0)===t);n&&(g.value=g.value.filter(e=>e.id!==n.id))}let r={id:`e-${e.source}-${e.sourceHandle??`out`}-${e.target}`,source:e.source,target:e.target,sourceHandle:e.sourceHandle??void 0,targetHandle:t};g.value.push(r);let a=it(h.value.find(t=>t.id===e.source)?.data,n?.data);a&&n?.data&&Object.assign(n.data,a),i(`change`)}function D(e){e.some(e=>e.type===`remove`)&&(_(),i(`node-select`,null),i(`change`))}function O(e){let t=e.dataTransfer?.getData(`application/automationnode`);if(!t)return;let n=X(t);if(!n)return;_();let r=l({x:e.clientX,y:e.clientY}),a={id:v(12),type:t,position:r,data:at({...n.defaults})};h.value=[...h.value,a],i(`change`)}function N(e){let t=X(e);if(!t)return;_();let{x:n,y:r,zoom:a}=u(),{width:o,height:s}=d.value,c=(-n+o/2)/a,l=(-r+s/2)/a,f=()=>(Math.random()-.5)*80,p={id:v(12),type:e,position:{x:c+f(),y:l+f()},data:at({...t.defaults})};return h.value=[...h.value,p],i(`change`),p}function F(e){_(),h.value=h.value.filter(t=>t.id!==e),g.value=g.value.filter(t=>t.source!==e&&t.target!==e),i(`change`)}function I(){_(),h.value=[],g.value=[],i(`change`)}function L(){return[...h.value]}function z(){return[...g.value]}function B(e,t){let n=h.value.find(t=>t.id===e);if(n&&(n.data=t,n.type===`condition-switch`&&Array.isArray(t.cases))){let n=new Set(t.cases.map(Ge));g.value=g.value.filter(t=>t.source!==e||!t.sourceHandle?.startsWith(`case-`)||n.has(t.sourceHandle))}}function H(e){let t=e.metaKey||e.ctrlKey;t&&e.key===`z`&&!e.shiftKey?(e.preventDefault(),y()):(t&&e.key===`z`&&e.shiftKey||t&&e.key===`y`)&&(e.preventDefault(),ee())}return re(()=>r.flow._id,()=>{h.value=[...r.flow.nodes],g.value=[...r.flow.edges],f.clear()}),ne(()=>window.addEventListener(`keydown`,H)),S(()=>window.removeEventListener(`keydown`,H)),t({removeNode:F,addNodeAtCenter:N,clearAll:I,getNodes:L,getEdges:z,updateNodeData:B,undo:y,redo:ee,canUndo:f.canUndo,canRedo:f.canRedo}),(t,n)=>(T(),j(`div`,{ref:`canvasRef`,class:k([`h-full w-full border-left-color border-bottom-color border-right-color rounded-b-xl overflow-hidden`,{"rounded-none! border-0!":W(s)}]),onDrop:O,onDragover:n[2]||=R(()=>{},[`prevent`]),onDragenter:n[3]||=R(()=>{},[`prevent`])},[P(W(Z),{nodes:W(h),"onUpdate:nodes":n[0]||=e=>ie(h)?h.value=e:null,edges:W(g),"onUpdate:edges":n[1]||=e=>ie(g)?g.value=e:null,"node-types":p,"edge-types":m,"default-viewport":{zoom:e.mobile?.7:.9,x:0,y:0},"snap-to-grid":!0,"snap-grid":[16,16],"is-valid-connection":te,class:`automation-canvas`,onNodeClick:C,onPaneClick:w,onConnect:E,onNodesChange:D},ae({default:b(()=>[P(W(Ne),{gap:16}),P(W(Le))]),_:2},[W(h).length?void 0:{name:`default`,fn:b(()=>[A(`div`,wt,[A(`span`,Tt,x(e.mobile?W(o)(`views.automation.no_nodes_mobile`):W(o)(`views.automation.no_nodes`)),1)])]),key:`0`}]),1032,[`nodes`,`edges`,`default-viewport`])],34))}}),Dt={"trigger-detection":_(()=>w(()=>import(`./ConfigTriggerDetection-BRr6ixxQ.js`),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16]),import.meta.url)),"trigger-sensor":_(()=>w(()=>import(`./ConfigTriggerSensor-BwJ_cAqd.js`),__vite__mapDeps([17,1,2,3,5,6,7,8,9,10,11,4,12,13,14,15,16]),import.meta.url)),"trigger-schedule":_(()=>w(()=>import(`./ConfigTriggerSchedule-CYOt57qg.js`),__vite__mapDeps([18,1,2,3,5]),import.meta.url)),"trigger-webhook":_(()=>w(()=>import(`./ConfigTriggerWebhook-CccBmMCb.js`),__vite__mapDeps([19,1,2,3,7,8,9,10,11,4,12,13,5,14,15,16,20,21]),import.meta.url)),"trigger-mqtt":_(()=>w(()=>import(`./ConfigTriggerMqtt-pjHW4yOL.js`),__vite__mapDeps([22,1,2,3,5,20,23,7,8,9,10,11,4,12,13,14,15,16]),import.meta.url)),"trigger-system":_(()=>w(()=>import(`./ConfigTriggerSystem-DBXIrjzU.js`),__vite__mapDeps([24,1,2,3,5,25,7,8,9,10,11,4,12,13,14,15,16,6]),import.meta.url)),"trigger-manual":_(()=>w(()=>import(`./ConfigTriggerManual-aXD6k1qa.js`),__vite__mapDeps([26,1,2,3]),import.meta.url)),"trigger-geofence":_(()=>w(()=>import(`./ConfigTriggerGeofence-D-xRMGrT.js`),__vite__mapDeps([27,2,1,3,7,8,9,10,11,4,12,13,5,14,15,16,20,28,29,30,21]),import.meta.url)),"action-snapshot":_(()=>w(()=>import(`./ConfigActionSnapshot-hVHSfdtS.js`),__vite__mapDeps([31,1,2,3,5,6,7,8,9,10,11,4,12,13,14,15,16]),import.meta.url)),"action-sensor":_(()=>w(()=>import(`./ConfigActionSensor-DmImWFAo.js`),__vite__mapDeps([32,1,2,3,10,9,5,33,6,7,8,11,4,12,13,14,15,16,34,35,36]),import.meta.url)),"action-notification":_(()=>w(()=>import(`./ConfigActionNotification-bhbb5AqU.js`),__vite__mapDeps([37,1,2,3,5,38,7,8,9,10,11,4,12,13,14,15,16,36,35,39,40]),import.meta.url)),"action-notification-control":_(()=>w(()=>import(`./ConfigActionNotificationControl-BbvX8MFu.js`),__vite__mapDeps([41,1,2,3,7,8,9,10,11,4,12,13,5,14,15,16,6]),import.meta.url)),"action-assistant":_(()=>w(()=>import(`./ConfigActionAssistant-DCkJ_Iqq.js`),__vite__mapDeps([42,1,2,3,5,43,7,8,9,10,11,4,12,13,14,15,16,36,28,35,39]),import.meta.url)),"action-http":_(()=>w(()=>import(`./ConfigActionHttp-_kqgEuun.js`),__vite__mapDeps([44,1,2,3,5,45,36,10,9,12,35,39]),import.meta.url)),"action-mqtt":_(()=>w(()=>import(`./ConfigActionMqtt-z7UzccW5.js`),__vite__mapDeps([46,1,2,3,5,36,10,9,12,35,39,23,7,8,11,4,13,14,15,16]),import.meta.url)),"action-delay":_(()=>w(()=>import(`./ConfigActionDelay-BAp1dr0N.js`),__vite__mapDeps([47,1,2,3,5]),import.meta.url)),"action-variable":_(()=>w(()=>import(`./ConfigActionVariable-BIpruwsx.js`),__vite__mapDeps([48,1,2,3,5,35,36,10,9,12]),import.meta.url)),"action-plugin":_(()=>w(()=>import(`./ConfigActionPlugin-DGjZd1L0.js`),__vite__mapDeps([49,1,2,3,5,50,7,8,9,10,11,4,12,13,14,15,16,51,52,25,53,35,36]),import.meta.url)),"action-image-input":_(()=>w(()=>import(`./ConfigActionImageInput-BgtACnCm.js`),__vite__mapDeps([54,1,2,3,5,35,36,10,9,12,40]),import.meta.url)),"action-output":_(()=>w(()=>import(`./ConfigActionOutput-DdgSg3FU.js`),__vite__mapDeps([55,1,2,3,5,14,35,36,10,9,12]),import.meta.url)),"action-camera-control":_(()=>w(()=>import(`./ConfigActionCameraControl-2pzl59gR.js`),__vite__mapDeps([56,1,2,3,5,6,7,8,9,10,11,4,12,13,14,15,16,57]),import.meta.url)),"condition-ifelse":_(()=>w(()=>import(`./ConfigConditionIfElse-DRSpsoR4.js`),__vite__mapDeps([58,1,2,3,11,5,20,59,60,61,62,33,36,10,9,12,35]),import.meta.url)),"condition-switch":_(()=>w(()=>import(`./ConfigConditionSwitch-4SbQcU7N.js`),__vite__mapDeps([63,1,2,3,10,9,11,5,20,59,60,61,62,33,36,12,35]),import.meta.url)),"condition-sensorstate":_(()=>w(()=>import(`./ConfigConditionSensorState-C2SNARH7.js`),__vite__mapDeps([64,1,2,3,5,14,33,6,7,8,9,10,11,4,12,13,15,16,34,35,36]),import.meta.url)),"condition-time":_(()=>w(()=>import(`./ConfigConditionTime-ESX3shbg.js`),__vite__mapDeps([65,1,2,3,5,20]),import.meta.url))},Ot={class:`h-full overflow-y-auto flex flex-col`},kt={class:`flex items-center gap-2 px-4 py-3 border-bottom-color`},At={class:`flex-1 min-w-0`},jt={class:`text-sm font-semibold truncate text-color`},Mt={class:`text-xs text-muted`},Nt={class:`flex-1 overflow-y-auto`},Pt={class:`text-color font-normal text-sm`},Ft={class:`flex flex-col field-gap`},It={class:`text-color font-normal text-sm`},Lt={class:`text-color font-normal text-sm`},Rt={class:`flex flex-col gap-3`},zt={class:`flex flex-col field-gap`},Bt={class:`cui-label`},Vt={key:0,class:`flex flex-col field-gap`},Ht={class:`cui-label`},Ut={key:1,class:`flex flex-col field-gap`},Wt={class:`cui-label`},Gt={class:`px-4 pt-4 pb-[max(1rem,var(--cui-bottom-gap))] border-top-color`},Kt=U({__name:`CuiAutomationNodeConfig`,props:{node:{}},emits:[`close`,`update:data`,`delete`],setup(t,{emit:r}){let i=t,o=r,{t:s}=a(),c=B(()=>i.node.type?X(i.node.type):void 0),l=B(()=>i.node.type?.startsWith(`action-`)),u=B(()=>{if(i.node.type)return Dt[i.node.type]}),d=B(()=>{let e=[`config`];return l.value&&i.node.data.alias&&e.push(`alias`),c.value?.supportsRepeat&&i.node.data.repeat>1&&e.push(`repeat`),e});function f(e){o(`update:data`,e)}return(r,i)=>{let a=_e,o=n,p=me,m=e,h=K,g=fe,_=q,v=ge,y=G;return T(),j(`div`,Ot,[A(`div`,kt,[A(`div`,{class:`flex items-center justify-center w-8 h-8 rounded-md shrink-0`,style:D({backgroundColor:`${W(c)?.color}20`,color:W(c)?.color})},[(T(),I(C(W(c)?.icon),{class:`w-4 h-4`}))],4),A(`div`,At,[A(`div`,jt,x(W(c)?W(s)(W(c).labelKey):t.node.type),1),A(`div`,Mt,x(W(s)(`views.automation.node_config`)),1)]),P(o,{severity:`secondary`,text:``,rounded:``,class:`shrink-0 cui-icon-sm`,onClick:i[0]||=e=>r.$emit(`close`)},{icon:b(()=>[P(a,{width:`100%`,height:`100%`})]),_:1})]),A(`div`,Nt,[P(y,{multiple:``,value:W(d),class:`w-[300px]`},{default:b(()=>[W(l)?(T(),I(_,{key:0,value:`alias`},{default:b(()=>[P(p,{class:`px-4 rounded-none!`},{default:b(()=>[A(`span`,Pt,x(W(s)(`components.automation_nodes.alias`)),1)]),_:1}),P(g,{pt:{content:{class:`px-4 w-[300px]`}}},{default:b(()=>[A(`div`,Ft,[P(m,{"model-value":t.node.data.alias??``,placeholder:W(s)(`components.automation_nodes.alias_placeholder`),"onUpdate:modelValue":i[1]||=e=>f({alias:e||void 0})},null,8,[`model-value`,`placeholder`]),P(h,{severity:`secondary`,variant:`simple`,size:`small`,class:`cui-input-hint`},{default:b(()=>[F(x(W(s)(`components.automation_nodes.alias_hint`)),1)]),_:1})])]),_:1})]),_:1})):H(``,!0),W(u)?(T(),I(_,{key:1,value:`config`},{default:b(()=>[P(p,{class:`px-4 rounded-none!`},{default:b(()=>[A(`span`,It,x(W(s)(`views.automation.node_config`)),1)]),_:1}),P(g,{pt:{content:{class:`px-4 w-[300px]`}}},{default:b(()=>[A(`div`,null,[(T(),I(C(W(u)),{data:t.node.data,"node-id":t.node.id,"onUpdate:data":f},null,40,[`data`,`node-id`]))])]),_:1})]),_:1})):H(``,!0),W(c)?.supportsRepeat?(T(),I(_,{key:2,value:`repeat`},{default:b(()=>[P(p,{class:`px-4 rounded-none!`},{default:b(()=>[A(`span`,Lt,x(W(s)(`components.automation_nodes.repeat`)),1)]),_:1}),P(g,{pt:{content:{class:`px-4 w-[300px]`}}},{default:b(()=>[A(`div`,Rt,[A(`div`,zt,[A(`label`,Bt,x(W(s)(`components.automation_nodes.repeat_count`)),1),P(v,{"model-value":t.node.data.repeat??1,min:1,max:1e5,class:`w-full`,"onUpdate:modelValue":i[2]||=e=>f({repeat:e})},null,8,[`model-value`])]),t.node.data.repeat>1?(T(),j(`div`,Vt,[A(`label`,Ht,x(W(s)(`components.automation_nodes.repeat_concurrency`)),1),P(v,{"model-value":t.node.data.repeatConcurrency??1,min:1,max:64,class:`w-full`,"onUpdate:modelValue":i[3]||=e=>f({repeatConcurrency:e})},null,8,[`model-value`]),P(h,{severity:`secondary`,variant:`simple`,size:`small`,class:`cui-input-hint`},{default:b(()=>[F(x(W(s)(`components.automation_nodes.repeat_concurrency_hint`)),1)]),_:1})])):H(``,!0),t.node.data.repeat>1?(T(),j(`div`,Ut,[A(`label`,Wt,x(W(s)(`components.automation_nodes.repeat_delay`)),1),P(v,{"model-value":t.node.data.repeatDelayMs??0,min:0,max:6e4,suffix:` ms`,class:`w-full`,"onUpdate:modelValue":i[4]||=e=>f({repeatDelayMs:e})},null,8,[`model-value`])])):H(``,!0)])]),_:1})]),_:1})):H(``,!0)]),_:1},8,[`value`])]),A(`div`,Gt,[P(o,{severity:`danger`,fluid:``,class:`w-full cui-button-medium`,label:W(s)(`views.automation.delete_node`),onClick:i[5]||=e=>r.$emit(`delete`)},null,8,[`label`])])])}}}),qt={key:0,class:`text-xs font-semibold text-muted uppercase tracking-wider mb-3`},Jt={class:`text-xs font-medium text-muted mb-2`},Yt={class:`flex flex-col gap-1.5`},Xt=[`draggable`,`onDragstart`,`onClick`],Zt={class:`flex items-center gap-2.5 flex-1 min-w-0 px-3 py-2.5`},Qt={class:`flex-1 min-w-0`},$t={class:`text-[13px] font-medium truncate text-color block leading-tight`},en={key:0,class:`text-[11px] text-muted block truncate mt-0.5 leading-tight`},tn=f(U({__name:`CuiAutomationNodePalette`,props:O({mode:{}},Se),emits:[`node-click`],setup(e){let{t}=a(),n=[{key:`trigger`,labelKey:`components.automation_nodes.category_triggers`,nodes:Y(`trigger`)},{key:`condition`,labelKey:`components.automation_nodes.category_conditions`,nodes:Y(`condition`)},{key:`utility`,labelKey:`components.automation_nodes.category_utilities`,nodes:Y(`utility`)},{key:`action`,labelKey:`components.automation_nodes.category_actions`,nodes:Y(`action`)}];function r(e,t){e.dataTransfer&&(e.dataTransfer.setData(`application/automationnode`,t),e.dataTransfer.effectAllowed=`move`)}return(i,a)=>(T(),j(`div`,{class:k([`overflow-y-auto p-3`,e.mode===`drag`?`h-full pb-[var(--cui-bottom-gap)]`:`pb-0`])},[e.mode===`drag`?(T(),j(`div`,qt,x(W(t)(`views.automation.node_palette`)),1)):H(``,!0),(T(),j(z,null,E(n,(a,o)=>A(`div`,{key:a.key,class:k({"mb-4":o!==n.length-1})},[A(`div`,Jt,x(W(t)(a.labelKey)),1),A(`div`,Yt,[(T(!0),j(z,null,E(a.nodes,n=>(T(),j(`div`,{key:n.type,class:k([`automation-palette-node`,e.mode===`drag`?`cursor-grab active:cursor-grabbing`:`cursor-pointer`]),draggable:e.mode===`drag`,onDragstart:t=>e.mode===`drag`?r(t,n.type):void 0,onClick:t=>e.mode===`click`?i.$emit(`node-click`,n.type):void 0},[A(`div`,{class:`automation-palette-node__accent`,style:D({backgroundColor:n.color})},null,4),A(`div`,Zt,[A(`div`,{class:`flex items-center justify-center w-8 h-8 rounded-lg shrink-0`,style:D({backgroundColor:`${n.color}15`,color:n.color})},[(T(),I(C(n.icon),{class:`w-4.5 h-4.5`}))],4),A(`div`,Qt,[A(`span`,$t,x(W(t)(n.labelKey)),1),e.mode===`click`?(T(),j(`span`,en,x(W(t)(n.descriptionKey)),1)):H(``,!0)])])],42,Xt))),128))])],2)),64))],2))}}),[[`__scopeId`,`data-v-218bcc30`]]),nn={class:`flex items-center gap-2 px-3 py-2 border-bottom-color card-background min-h-[48px]`},rn=U({__name:`CuiAutomationToolbar`,props:{flow:{},showHistory:{type:Boolean}},emits:[`update:name`,`toggle-enabled`,`toggle-suppress-duplicates`,`toggle-single-execution`,`show-history`],setup(t,{emit:r}){let i=t,s=r,{t:l}=a(),{smBreakpoint:u}=c(),d=te(`menuRef`),f=B(()=>[{key:`suppressDuplicates`,label:l(`views.automation.suppress_duplicates`),description:l(`views.automation.suppress_duplicates_hint`),toggle:!0,toggleState:i.flow.suppressDuplicates,onClick:()=>s(`toggle-suppress-duplicates`)},{key:`singleExecution`,label:l(`views.automation.single_execution`),description:l(`views.automation.single_execution_hint`),toggle:!0,toggleState:i.flow.singleExecution,onClick:()=>s(`toggle-single-execution`)}]);return(r,i)=>{let a=Te,s=n,c=e,p=pe,m=J,h=Re,g=y,_=o;return T(),j(`div`,nn,[W(u)?H(``,!0):(T(),I(s,{key:0,severity:`secondary`,text:``,rounded:``,class:`cui-icon-md shrink-0`,onClick:i[0]||=e=>r.$router.push(`/automations`)},{icon:b(()=>[P(a,{width:`100%`,height:`100%`})]),_:1})),P(c,{"model-value":t.flow.name,class:k([`font-medium text-sm min-w-0 flex-1`,{"max-w-[300px]":!W(u)}]),placeholder:W(l)(`views.automations.flow_name_placeholder`),"onUpdate:modelValue":i[1]||=e=>r.$emit(`update:name`,String(e??``))},null,8,[`model-value`,`class`,`placeholder`]),i[5]||=A(`div`,{class:`flex-1`},null,-1),P(p,{"model-value":t.flow.enabled,class:`shrink-0`,"onUpdate:modelValue":i[2]||=e=>r.$emit(`toggle-enabled`)},null,8,[`model-value`]),t.showHistory?N((T(),I(s,{key:1,severity:`secondary`,text:``,rounded:``,class:`cui-icon-md shrink-0`,onClick:i[3]||=e=>r.$emit(`show-history`)},{icon:b(()=>[P(m,{width:`100%`,height:`100%`})]),_:1})),[[_,{value:W(l)(`views.automations.run_history`)},void 0,{bottom:!0}]]):H(``,!0),P(s,{severity:`secondary`,text:``,rounded:``,class:`cui-icon-md shrink-0`,onClick:i[4]||=e=>W(d)?.toggleMenu(e)},{icon:b(()=>[P(h,{width:`100%`,height:`100%`})]),_:1}),P(g,{ref_key:`menuRef`,ref:d,items:W(f),"auto-hide":!1,popover:{pt:{root:{class:`w-[18rem]`},content:{class:`p-0! rounded-xl! overflow-hidden!`}}}},null,8,[`items`])])}}}),an={class:`flex flex-col gap-4 w-full`},on={key:1,class:`text-sm text-muted`},sn=U({__name:`CuiAutomationMobileNodeConfig`,props:{node:{}},setup(e,{expose:t}){let n=e,{t:r}=a(),i=ye(),o=B(()=>{if(n.node.type)return Dt[n.node.type]});function s(e){if(!i.draft)return;let t=i.draft.nodes.find(e=>e.id===n.node.id);t?.data&&(Object.assign(t.data,e),i.draftDirty=!0)}return t({onConfirm:async()=>{if(i.draft){let e=n.node.id;i.draft.nodes=i.draft.nodes.filter(t=>t.id!==e),i.draft.edges=i.draft.edges.filter(t=>t.source!==e&&t.target!==e)}}}),(t,n)=>(T(),j(`div`,an,[W(o)?(T(),I(C(W(o)),{key:0,data:e.node.data,"node-id":e.node.id,"onUpdate:data":s},null,40,[`data`,`node-id`])):(T(),j(`div`,on,x(W(r)(`views.automation.no_node_selected`)),1))]))}}),cn={class:`h-full w-full relative overflow-hidden flex flex-col`},ln={class:`flex flex-1 min-h-0`},un={class:`relative w-6 h-6`},dn={key:1,class:`flex flex-1 items-center justify-center`},fn={key:2,class:`flex flex-1 items-center justify-center`},pn={class:`text-muted`},mn=U({__name:`Automation`,setup(e){let t=_(()=>w(()=>import(`./CuiAutomationRunsDialog-CfylVPLI.js`),__vite__mapDeps([66,1,2,3,5,67,68,53,7,8,9,10,11,4,12,13,14,15,16,59,60,61,62,33]),import.meta.url)),i=new ve,s=ce(),f=de(),{t:y}=a(),{smBreakpoint:S}=c(),{bottombarHeight:ne}=h(),E=g(),O=l(),F=ye(),L=B(()=>s.params.id),R=B(()=>L.value===`new`),ae=B(()=>m(void 0,`admin`)),{data:V,isBusy:U}=i.getAutomationQuery(L),{mutateAsync:oe}=i.createAutomationQuery(),{mutateAsync:se}=i.patchAutomationQuery(),{mutateAsync:le}=i.deleteAutomationQuery(),{mutateAsync:fe}=i.triggerAutomationQuery(),G=te(`canvasRef`),K=M(!1),q=M(!1),pe=M(!1),me=M(!1),ge=!1,_e,J=B({get:()=>F.draft,set:e=>{F.draft=e}}),Y=B(()=>{if(J.value&&F.selectedNodeId)return J.value.nodes.find(e=>e.id===F.selectedNodeId)}),be=B(()=>{if(!S.value&&Y.value)return`calc(300px + 1.25rem + var(--safe-area-inset-right))`}),xe=B(()=>[...J.value?.nodes.some(e=>e.type===`trigger-manual`)??!1?[{label:y(`views.automation.run`),icon:u,buttonProps:{disabled:R.value||q.value},command:()=>Ge()}]:[],{label:y(`views.automation.undo`),icon:ke,buttonProps:{disabled:!pe.value},command:()=>{G.value?.undo(),Z()}},{label:y(`views.automation.redo`),icon:Oe,buttonProps:{disabled:!me.value},command:()=>{G.value?.redo(),Z()}},{label:y(`views.automation.export_blueprint`),icon:Ve,command:()=>Ke()},{label:y(`views.automation.clear`),icon:Ee,command:()=>qe()},{label:y(`views.automations.delete`),icon:We,buttonProps:{severity:`danger`},command:()=>Je()}]);function Se(){pe.value=G.value?.canUndo??!1,me.value=G.value?.canRedo??!1}function je(){J.value={_id:v(12),name:y(`views.automation.untitled`),enabled:!1,nodes:[],edges:[],suppressDuplicates:!1,singleExecution:!1,createdAt:Date.now(),updatedAt:Date.now()},F.selectedNodeId=null}function Me(){clearTimeout(_e),_e=setTimeout(()=>{ze(),F.validationIssues=Qe(J.value)},300)}function Z(){q.value=!0,Se(),Me()}function Ne(){E.openComponentDialog(t,{data:{title:y(`views.automations.run_history`),contentProps:{flowId:L.value},hideConfirmButton:!0}})}function Pe(){ze(),Z()}function Fe(e){J.value&&(J.value.name=e,Z())}function Ie(e,t){if(!J.value)return;let n=J.value.nodes.find(t=>t.id===e);if(n?.data){if(!Object.entries(t).some(([e,t])=>n.data[e]!==t))return;Object.assign(n.data,t),G.value?.updateNodeData(e,{...n.data}),Z()}}function Le(){if(!J.value)return{};let e=G.value?.getNodes?.()??J.value.nodes,t=G.value?.getEdges?.()??J.value.edges;return{name:J.value.name,enabled:J.value.enabled,suppressDuplicates:J.value.suppressDuplicates,singleExecution:J.value.singleExecution,nodes:e.map(e=>({id:e.id,type:e.type??``,position:e.position,data:e.data??{}})),edges:t.map(e=>({id:e.id,source:e.source,target:e.target,sourceHandle:e.sourceHandle??void 0,targetHandle:e.targetHandle??void 0}))}}async function Re(){if(!J.value)return;ze();let e=Le();try{if(R.value){let t=await oe({data:e});q.value=!1,f.replace(`/automations/${t._id}`)}else{let t=await se({id:J.value._id,data:e});if(q.value=!1,t?.nodes&&J.value)for(let e of t.nodes){let t=J.value.nodes.find(t=>t.id===e.id);t?.data&&e.data&&Object.assign(t.data,e.data)}O.add({severity:`success`,detail:y(`views.automation.saved`),life:3e3})}}catch{O.add({severity:`error`,detail:y(`views.automation.save_failed`),life:3e3})}}function ze(){if(!J.value)return;let e=G.value?.getNodes(),t=G.value?.getEdges();e&&(J.value.nodes=e),t&&(J.value.edges=t)}function Be(e){if(F.selectedNodeId=e,S.value&&e){ze();let t=J.value?.nodes.find(t=>t.id===e);if(!t)return;let n=t.type?X(t.type):void 0,r=n?y(n.labelKey):`Node`,i=t.id;E.openComponentDialog(sn,{data:{title:r,confirmText:y(`views.automation.delete_node`),confirmButtonProps:{severity:`danger`},contentProps:{node:{id:t.id,type:t.type,data:t.data}}},onSettled:()=>{J.value?.nodes.some(e=>e.id===i)||(G.value?.removeNode(i),Z())}})}}function He(e){K.value=!1,G.value?.addNodeAtCenter(e),Z()}function Ue(){F.selectedNodeId&&(G.value?.removeNode(F.selectedNodeId),J.value&&(J.value.nodes=J.value.nodes.filter(e=>e.id!==F.selectedNodeId),J.value.edges=J.value.edges.filter(e=>e.source!==F.selectedNodeId&&e.target!==F.selectedNodeId)),F.selectedNodeId=null,F.lastOutput=null,Z())}async function Ge(){if(J.value&&!R.value)try{F.lastOutput=null;let e=await fe({id:J.value._id});e?.output&&Object.keys(e.output).length>0&&(F.lastOutput=e.output),O.add({severity:`success`,detail:y(`views.automation.triggered`),life:3e3})}catch{O.add({severity:`error`,detail:y(`views.automation.trigger_failed`),life:3e3})}}function Ke(){if(!J.value)return;Re();let e={version:1,name:J.value.name,nodes:we(J.value.nodes),edges:J.value.edges},t=JSON.stringify(e,null,2),n=new Blob([t],{type:`application/json`});p({blob:n,filename:`${J.value.name.replace(/\s+/g,`_`).toLowerCase()}.blueprint.json`})}function qe(){E.openTextDialog({data:{title:y(`views.automation.clear`),contentText:y(`views.automation.clear_confirm`),confirmText:y(`views.automation.clear`)},onConfirm:async()=>{G.value?.clearAll(),J.value&&(J.value.nodes=[],J.value.edges=[]),F.selectedNodeId=null,Z()}})}function Je(){if(!J.value)return;let e=J.value._id;E.openTextDialog({data:{title:y(`views.automations.delete`),contentText:y(`views.automations.delete_confirm`),confirmText:y(`views.automations.delete`)},onConfirm:async()=>{await le({id:e}),f.push(`/automations`)}})}function Ye(){f.push(`/automations`)}return re(L,e=>{F.activeFlowId=e===`new`?null:e??null,F.selectedNodeId=null,F.lastOutput=null,q.value=!1,e===`new`?je():J.value=null},{immediate:!0}),re(V,e=>{e&&!q.value&&(J.value=JSON.parse(JSON.stringify(e)),F.validationIssues=Qe(J.value))},{immediate:!0}),re(()=>F.draftDirty,e=>{e&&(F.draftDirty=!1,Z())}),ue(e=>!q.value||ge?!0:(E.openTextDialog({data:{title:y(`views.automation.unsaved_title`),contentText:y(`views.automation.unsaved_message`),confirmText:y(`views.automation.discard`)},onConfirm:async()=>{ge=!0,f.push(e.fullPath)}}),!1)),(e,t)=>{let i=Te,a=n,s=d,c=he,l=Ce,u=r,f=o;return T(),j(`div`,cn,[P(s,{position:`left`},{default:b(()=>[P(a,{severity:`secondary`,text:``,class:`cui-button p-2 text-color non-draggable-region`,onClick:Ye},{icon:b(()=>[P(i,{class:`w-6 h-6`})]),_:1})]),_:1}),W(J)?(T(),j(z,{key:0},[P(rn,{flow:W(J),"show-history":!W(R)&&W(ae),onShowHistory:Ne,"onUpdate:name":Fe,onToggleEnabled:t[0]||=e=>{W(J).enabled=!W(J).enabled,Z()},onToggleSuppressDuplicates:t[1]||=e=>{W(J).suppressDuplicates=!W(J).suppressDuplicates,Z()},onToggleSingleExecution:t[2]||=e=>{W(J).singleExecution=!W(J).singleExecution,Z()}},null,8,[`flow`,`show-history`]),A(`div`,ln,[W(S)?H(``,!0):(T(),I(tn,{key:0,class:`w-[240px] shrink-0`})),P(Et,{ref_key:`canvasRef`,ref:G,flow:W(J),mobile:W(S),class:k([`flex-1 min-w-0`,{"mb-[var(--cui-bottom-gap)] h-auto!":!W(S)}]),onNodeSelect:Be,onChange:Pe},null,8,[`flow`,`mobile`,`class`]),W(S)?H(``,!0):(T(),j(`div`,{key:1,class:`shrink-0 overflow-hidden transition-[width] duration-200 ease-in-out`,style:D({width:W(Y)?`300px`:`0px`})},[W(Y)?(T(),I(Kt,{key:0,node:W(Y),class:`w-[300px]`,onClose:t[3]||=e=>W(F).selectedNodeId=null,"onUpdate:data":t[4]||=e=>Ie(W(F).selectedNodeId,e),onDelete:Ue},null,8,[`node`])):H(``,!0)],4))]),P(c,{model:W(xe),direction:`up`,"transition-delay":80,"tooltip-options":{position:`left`,event:void 0},style:D({position:`fixed`,zIndex:15,bottom:`calc(${W(ne)}px + ${W(q)?`4.25rem`:`1.25rem`} + var(--safe-area-inset-bottom))`,right:W(be)||`calc(1.25rem + var(--safe-area-inset-right))`,transition:`right 0.2s ease-in-out, bottom 0.2s ease-in-out`}),pt:{root:{style:`pointer-events: none`}}},{button:b(({visible:e,toggleCallback:t})=>[P(a,{rounded:``,severity:`secondary`,class:`pointer-events-auto`,onClick:t},{icon:b(()=>[A(`div`,un,[A(`div`,{class:k([`absolute top-0.5 left-1/2 -translate-x-1/2 w-1.5 h-1.5 rounded-full transform transition-all duration-100 origin-center`,{"w-4 h-[2px] rotate-45 top-1/2 -translate-y-1/2 rounded-none":e}]),style:{backgroundColor:`var(--text-color)`}},null,2),A(`div`,{class:k([`absolute top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2 w-1.5 h-1.5 rounded-full transition-all duration-100`,{"opacity-0 scale-0":e}]),style:{backgroundColor:`var(--text-color)`}},null,2),A(`div`,{class:k([`absolute bottom-0.5 left-1/2 -translate-x-1/2 w-1.5 h-1.5 rounded-full transform transition-all duration-100 origin-center`,{"w-4 h-[2px] -rotate-45 bottom-1/2 translate-y-1/2 rounded-none":e}]),style:{backgroundColor:`var(--text-color)`}},null,2)])]),_:2},1032,[`onClick`])]),item:b(({item:e,toggleCallback:t})=>[N((T(),I(a,ee({severity:`secondary`},e.buttonProps,{rounded:``,class:`pointer-events-auto`,onClick:t}),{icon:b(()=>[(T(),I(C(e.icon)))]),_:2},1040,[`onClick`])),[[f,{value:e.label}]])]),_:1},8,[`model`,`style`]),W(S)?N((T(),I(a,{key:0,rounded:``,class:`pointer-events-auto text-white`,style:D({position:`fixed`,zIndex:15,bottom:`calc(${W(ne)}px + 1.25rem + var(--safe-area-inset-bottom))`,right:`calc(4.75rem + var(--safe-area-inset-right))`}),onClick:t[5]||=e=>K.value=!0},{icon:b(()=>[P(W(Ae),{class:`w-5 h-5`})]),_:1},8,[`style`])),[[f,{value:W(y)(`views.automation.add_step`)}]]):H(``,!0),W(q)?N((T(),I(a,{key:1,rounded:``,severity:`success`,class:`pointer-events-auto text-white`,style:D({position:`fixed`,zIndex:15,bottom:`calc(${W(ne)}px + 1.25rem + var(--safe-area-inset-bottom))`,right:W(be)||`calc(1.25rem + var(--safe-area-inset-right))`,transition:`right 0.2s ease-in-out`}),onClick:Re},{icon:b(()=>[P(W(De),{class:`w-5 h-5`})]),_:1},8,[`style`])),[[f,{value:W(y)(`views.automation.save`)}]]):H(``,!0),P(l,{modelValue:W(K),"onUpdate:modelValue":t[6]||=e=>ie(K)?K.value=e:null,title:W(y)(`views.automation.add_step`),"max-height":`70vh`},{default:b(()=>[P(tn,{mode:`click`,onNodeClick:He})]),_:1},8,[`modelValue`,`title`])],64)):W(U)?(T(),j(`div`,dn,[P(u,{class:`!w-8 !h-8`,"stroke-width":`5`})])):(T(),j(`div`,fn,[A(`span`,pn,x(W(y)(`views.automations.no_automations`)),1)]))])}}});export{mn as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.automation-edge-delete{background:var(--text-danger-color);color:#fff;border:2px solid var(--card-background);cursor:pointer;opacity:.4;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;transition:opacity .15s,transform .1s;display:flex}.automation-edge-delete:hover{opacity:1;transform:scale(1.2)}@media (pointer:coarse){.automation-edge-delete{opacity:.7;width:24px;height:24px}}.automation-node[data-v-13cfb248]{transition:box-shadow .15s,border-color .15s}.automation-node[data-v-13cfb248]:hover{box-shadow:0 4px 12px #00000026, 0 0 0 1px var(--border-color)}.vue-flow{z-index:0;direction:ltr;width:100%;height:100%;position:relative;overflow:hidden}.vue-flow__container{width:100%;height:100%;position:absolute;top:0;left:0}.vue-flow__pane{z-index:1}.vue-flow__pane.draggable{cursor:grab}.vue-flow__pane.selection{cursor:pointer}.vue-flow__pane.dragging{cursor:grabbing}.vue-flow__transformationpane{transform-origin:0 0;z-index:2;pointer-events:none}.vue-flow__viewport{z-index:4;overflow:clip}.vue-flow__selection{z-index:6}.vue-flow__edge-labels{pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute}.vue-flow__nodesselection-rect:focus,.vue-flow__nodesselection-rect:focus-visible{outline:none}.vue-flow .vue-flow__edges{pointer-events:none;overflow:visible}.vue-flow__edge-path,.vue-flow__connection-path{stroke:#b1b1b7;stroke-width:1px;fill:none}.vue-flow__edge{pointer-events:visibleStroke;cursor:pointer}.vue-flow__edge.animated path{stroke-dasharray:5;animation:.5s linear infinite dashdraw}.vue-flow__edge.animated path.vue-flow__edge-interaction{stroke-dasharray:none;animation:none}.vue-flow__edge.inactive{pointer-events:none}.vue-flow__edge.selected,.vue-flow__edge:focus,.vue-flow__edge:focus-visible{outline:none}.vue-flow__edge.selected .vue-flow__edge-path,.vue-flow__edge:focus .vue-flow__edge-path,.vue-flow__edge:focus-visible .vue-flow__edge-path{stroke:#555}.vue-flow__edge-textwrapper{pointer-events:all}.vue-flow__edge-text{pointer-events:none;-webkit-user-select:none;user-select:none}.vue-flow__connection{pointer-events:none}.vue-flow__connection .animated{stroke-dasharray:5;animation:.5s linear infinite dashdraw}.vue-flow__connectionline{z-index:1001}.vue-flow__nodes{pointer-events:none;transform-origin:0 0}.vue-flow__node{-webkit-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default;position:absolute}.vue-flow__node.draggable{cursor:grab;pointer-events:all}.vue-flow__node.draggable.dragging{cursor:grabbing}.vue-flow__nodesselection{z-index:3;transform-origin:0 0;pointer-events:none}.vue-flow__nodesselection-rect{pointer-events:all;cursor:grab;position:absolute}.vue-flow__nodesselection-rect.dragging{cursor:grabbing}.vue-flow__handle{pointer-events:none;min-width:5px;min-height:5px;position:absolute}.vue-flow__handle.connectable{pointer-events:all;cursor:crosshair}.vue-flow__handle-bottom{bottom:0;left:50%;transform:translate(-50%,50%)}.vue-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.vue-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.vue-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.vue-flow__edgeupdater{cursor:move;pointer-events:all}.vue-flow__panel{z-index:5;margin:15px;position:absolute}.vue-flow__panel.top{top:0}.vue-flow__panel.bottom{bottom:0}.vue-flow__panel.left{left:0}.vue-flow__panel.right{right:0}.vue-flow__panel.center{left:50%;transform:translate(-50%)}@keyframes dashdraw{0%{stroke-dashoffset:10px}}:root{--vf-node-bg:#fff;--vf-node-text:#222;--vf-connection-path:#b1b1b7;--vf-handle:#555}.vue-flow__edge.updating .vue-flow__edge-path{stroke:#777}.vue-flow__edge-text{font-size:10px}.vue-flow__edge-textbg{fill:#fff}.vue-flow__connection-path{stroke:var(--vf-connection-path)}.vue-flow__node{cursor:grab}.vue-flow__node.selectable:focus,.vue-flow__node.selectable:focus-visible{outline:none}.vue-flow__node-default,.vue-flow__node-input,.vue-flow__node-output{text-align:center;width:150px;color:var(--vf-node-text);background-color:var(--vf-node-bg);border-style:solid;border-width:1px;border-color:var(--vf-node-color);border-radius:3px;padding:10px;font-size:12px}.vue-flow__node-default.selected,.vue-flow__node-default.selected:hover,.vue-flow__node-input.selected,.vue-flow__node-input.selected:hover,.vue-flow__node-output.selected,.vue-flow__node-output.selected:hover{box-shadow:0 0 0 .5px var(--vf-box-shadow)}.vue-flow__node-default.selected,.vue-flow__node-default:focus,.vue-flow__node-default:focus-visible,.vue-flow__node-input.selected,.vue-flow__node-input:focus,.vue-flow__node-input:focus-visible,.vue-flow__node-output.selected,.vue-flow__node-output:focus,.vue-flow__node-output:focus-visible{border:1px solid #555;outline:none}.vue-flow__node-default .vue-flow__handle,.vue-flow__node-input .vue-flow__handle,.vue-flow__node-output .vue-flow__handle{background:var(--vf-handle)}.vue-flow__node-default.selectable:hover,.vue-flow__node-input.selectable:hover,.vue-flow__node-output.selectable:hover{box-shadow:0 1px 4px 1px #00000014}.vue-flow__node-input{--vf-node-color:var(--vf-node-color,#0041d0);--vf-handle:var(--vf-node-color,#0041d0);--vf-box-shadow:var(--vf-node-color,#0041d0);background:var(--vf-node-bg);border-color:var(--vf-node-color,#0041d0)}.vue-flow__node-input.selected,.vue-flow__node-input:focus,.vue-flow__node-input:focus-visible{border:1px solid var(--vf-node-color,#0041d0);outline:none}.vue-flow__node-default{--vf-handle:var(--vf-node-color,#1a192b);--vf-box-shadow:var(--vf-node-color,#1a192b);background:var(--vf-node-bg);border-color:var(--vf-node-color,#1a192b)}.vue-flow__node-default.selected,.vue-flow__node-default:focus,.vue-flow__node-default:focus-visible{border:1px solid var(--vf-node-color,#1a192b);outline:none}.vue-flow__node-output{--vf-handle:var(--vf-node-color,#ff0072);--vf-box-shadow:var(--vf-node-color,#ff0072);background:var(--vf-node-bg);border-color:var(--vf-node-color,#ff0072)}.vue-flow__node-output.selected,.vue-flow__node-output:focus,.vue-flow__node-output:focus-visible{border:1px solid var(--vf-node-color,#ff0072);outline:none}.vue-flow__nodesselection-rect,.vue-flow__selection{background:#0059dc14;border:1px dotted #0059dccc}.vue-flow__nodesselection-rect:focus,.vue-flow__nodesselection-rect:focus-visible,.vue-flow__selection:focus,.vue-flow__selection:focus-visible{outline:none}.vue-flow__handle{background:var(--vf-handle);border:1px solid #fff;border-radius:100%;width:6px;height:6px}.vue-flow__minimap{background-color:#fff}.vue-flow__minimap.pannable{cursor:grab}.vue-flow__minimap.dragging{cursor:grabbing}.vue-flow__minimap-mask.pannable{cursor:grab}.vue-flow__controls{box-shadow:0 0 2px 1px #00000014}.vue-flow__controls-button{box-sizing:content-box;cursor:pointer;-webkit-user-select:none;user-select:none;background:#fefefe;border:none;border-bottom:1px solid #eee;justify-content:center;align-items:center;width:16px;height:16px;padding:5px;display:flex}.vue-flow__controls-button svg{width:100%;max-width:12px;max-height:12px}.vue-flow__controls-button:hover{background:#f4f4f4}.vue-flow__controls-button:disabled{pointer-events:none}.vue-flow__controls-button:disabled svg{fill-opacity:.4}.automation-canvas{--vf-node-bg:var(--card-background);--vf-node-text:var(--text-color);--vf-connection-path:var(--text-muted-color);--vf-handle:var(--text-muted-color);background:var(--content-background)}.automation-canvas .vue-flow__minimap-mask{fill:var(--mask-background)}.automation-canvas .vue-flow__controls-button{background:var(--card-background);border:1px solid var(--border-color);color:var(--text-color);fill:var(--text-color)}.automation-canvas .vue-flow__controls-button:hover{background:var(--card-background);border-color:var(--border-color-inner);color:var(--text-color);fill:var(--text-color)}.automation-palette-node[data-v-
|
|
1
|
+
.automation-edge-delete{background:var(--text-danger-color);color:#fff;border:2px solid var(--card-background);cursor:pointer;opacity:.4;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;transition:opacity .15s,transform .1s;display:flex}.automation-edge-delete:hover{opacity:1;transform:scale(1.2)}@media (pointer:coarse){.automation-edge-delete{opacity:.7;width:24px;height:24px}}.automation-node[data-v-13cfb248]{transition:box-shadow .15s,border-color .15s}.automation-node[data-v-13cfb248]:hover{box-shadow:0 4px 12px #00000026, 0 0 0 1px var(--border-color)}.vue-flow{z-index:0;direction:ltr;width:100%;height:100%;position:relative;overflow:hidden}.vue-flow__container{width:100%;height:100%;position:absolute;top:0;left:0}.vue-flow__pane{z-index:1}.vue-flow__pane.draggable{cursor:grab}.vue-flow__pane.selection{cursor:pointer}.vue-flow__pane.dragging{cursor:grabbing}.vue-flow__transformationpane{transform-origin:0 0;z-index:2;pointer-events:none}.vue-flow__viewport{z-index:4;overflow:clip}.vue-flow__selection{z-index:6}.vue-flow__edge-labels{pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute}.vue-flow__nodesselection-rect:focus,.vue-flow__nodesselection-rect:focus-visible{outline:none}.vue-flow .vue-flow__edges{pointer-events:none;overflow:visible}.vue-flow__edge-path,.vue-flow__connection-path{stroke:#b1b1b7;stroke-width:1px;fill:none}.vue-flow__edge{pointer-events:visibleStroke;cursor:pointer}.vue-flow__edge.animated path{stroke-dasharray:5;animation:.5s linear infinite dashdraw}.vue-flow__edge.animated path.vue-flow__edge-interaction{stroke-dasharray:none;animation:none}.vue-flow__edge.inactive{pointer-events:none}.vue-flow__edge.selected,.vue-flow__edge:focus,.vue-flow__edge:focus-visible{outline:none}.vue-flow__edge.selected .vue-flow__edge-path,.vue-flow__edge:focus .vue-flow__edge-path,.vue-flow__edge:focus-visible .vue-flow__edge-path{stroke:#555}.vue-flow__edge-textwrapper{pointer-events:all}.vue-flow__edge-text{pointer-events:none;-webkit-user-select:none;user-select:none}.vue-flow__connection{pointer-events:none}.vue-flow__connection .animated{stroke-dasharray:5;animation:.5s linear infinite dashdraw}.vue-flow__connectionline{z-index:1001}.vue-flow__nodes{pointer-events:none;transform-origin:0 0}.vue-flow__node{-webkit-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default;position:absolute}.vue-flow__node.draggable{cursor:grab;pointer-events:all}.vue-flow__node.draggable.dragging{cursor:grabbing}.vue-flow__nodesselection{z-index:3;transform-origin:0 0;pointer-events:none}.vue-flow__nodesselection-rect{pointer-events:all;cursor:grab;position:absolute}.vue-flow__nodesselection-rect.dragging{cursor:grabbing}.vue-flow__handle{pointer-events:none;min-width:5px;min-height:5px;position:absolute}.vue-flow__handle.connectable{pointer-events:all;cursor:crosshair}.vue-flow__handle-bottom{bottom:0;left:50%;transform:translate(-50%,50%)}.vue-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.vue-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.vue-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.vue-flow__edgeupdater{cursor:move;pointer-events:all}.vue-flow__panel{z-index:5;margin:15px;position:absolute}.vue-flow__panel.top{top:0}.vue-flow__panel.bottom{bottom:0}.vue-flow__panel.left{left:0}.vue-flow__panel.right{right:0}.vue-flow__panel.center{left:50%;transform:translate(-50%)}@keyframes dashdraw{0%{stroke-dashoffset:10px}}:root{--vf-node-bg:#fff;--vf-node-text:#222;--vf-connection-path:#b1b1b7;--vf-handle:#555}.vue-flow__edge.updating .vue-flow__edge-path{stroke:#777}.vue-flow__edge-text{font-size:10px}.vue-flow__edge-textbg{fill:#fff}.vue-flow__connection-path{stroke:var(--vf-connection-path)}.vue-flow__node{cursor:grab}.vue-flow__node.selectable:focus,.vue-flow__node.selectable:focus-visible{outline:none}.vue-flow__node-default,.vue-flow__node-input,.vue-flow__node-output{text-align:center;width:150px;color:var(--vf-node-text);background-color:var(--vf-node-bg);border-style:solid;border-width:1px;border-color:var(--vf-node-color);border-radius:3px;padding:10px;font-size:12px}.vue-flow__node-default.selected,.vue-flow__node-default.selected:hover,.vue-flow__node-input.selected,.vue-flow__node-input.selected:hover,.vue-flow__node-output.selected,.vue-flow__node-output.selected:hover{box-shadow:0 0 0 .5px var(--vf-box-shadow)}.vue-flow__node-default.selected,.vue-flow__node-default:focus,.vue-flow__node-default:focus-visible,.vue-flow__node-input.selected,.vue-flow__node-input:focus,.vue-flow__node-input:focus-visible,.vue-flow__node-output.selected,.vue-flow__node-output:focus,.vue-flow__node-output:focus-visible{border:1px solid #555;outline:none}.vue-flow__node-default .vue-flow__handle,.vue-flow__node-input .vue-flow__handle,.vue-flow__node-output .vue-flow__handle{background:var(--vf-handle)}.vue-flow__node-default.selectable:hover,.vue-flow__node-input.selectable:hover,.vue-flow__node-output.selectable:hover{box-shadow:0 1px 4px 1px #00000014}.vue-flow__node-input{--vf-node-color:var(--vf-node-color,#0041d0);--vf-handle:var(--vf-node-color,#0041d0);--vf-box-shadow:var(--vf-node-color,#0041d0);background:var(--vf-node-bg);border-color:var(--vf-node-color,#0041d0)}.vue-flow__node-input.selected,.vue-flow__node-input:focus,.vue-flow__node-input:focus-visible{border:1px solid var(--vf-node-color,#0041d0);outline:none}.vue-flow__node-default{--vf-handle:var(--vf-node-color,#1a192b);--vf-box-shadow:var(--vf-node-color,#1a192b);background:var(--vf-node-bg);border-color:var(--vf-node-color,#1a192b)}.vue-flow__node-default.selected,.vue-flow__node-default:focus,.vue-flow__node-default:focus-visible{border:1px solid var(--vf-node-color,#1a192b);outline:none}.vue-flow__node-output{--vf-handle:var(--vf-node-color,#ff0072);--vf-box-shadow:var(--vf-node-color,#ff0072);background:var(--vf-node-bg);border-color:var(--vf-node-color,#ff0072)}.vue-flow__node-output.selected,.vue-flow__node-output:focus,.vue-flow__node-output:focus-visible{border:1px solid var(--vf-node-color,#ff0072);outline:none}.vue-flow__nodesselection-rect,.vue-flow__selection{background:#0059dc14;border:1px dotted #0059dccc}.vue-flow__nodesselection-rect:focus,.vue-flow__nodesselection-rect:focus-visible,.vue-flow__selection:focus,.vue-flow__selection:focus-visible{outline:none}.vue-flow__handle{background:var(--vf-handle);border:1px solid #fff;border-radius:100%;width:6px;height:6px}.vue-flow__minimap{background-color:#fff}.vue-flow__minimap.pannable{cursor:grab}.vue-flow__minimap.dragging{cursor:grabbing}.vue-flow__minimap-mask.pannable{cursor:grab}.vue-flow__controls{box-shadow:0 0 2px 1px #00000014}.vue-flow__controls-button{box-sizing:content-box;cursor:pointer;-webkit-user-select:none;user-select:none;background:#fefefe;border:none;border-bottom:1px solid #eee;justify-content:center;align-items:center;width:16px;height:16px;padding:5px;display:flex}.vue-flow__controls-button svg{width:100%;max-width:12px;max-height:12px}.vue-flow__controls-button:hover{background:#f4f4f4}.vue-flow__controls-button:disabled{pointer-events:none}.vue-flow__controls-button:disabled svg{fill-opacity:.4}.automation-canvas{--vf-node-bg:var(--card-background);--vf-node-text:var(--text-color);--vf-connection-path:var(--text-muted-color);--vf-handle:var(--text-muted-color);background:var(--content-background)}.automation-canvas .vue-flow__minimap-mask{fill:var(--mask-background)}.automation-canvas .vue-flow__controls-button{background:var(--card-background);border:1px solid var(--border-color);color:var(--text-color);fill:var(--text-color)}.automation-canvas .vue-flow__controls-button:hover{background:var(--card-background);border-color:var(--border-color-inner);color:var(--text-color);fill:var(--text-color)}.automation-palette-node[data-v-218bcc30]{border:1px solid var(--border-color);background:var(--card-background);-webkit-user-select:none;user-select:none;border-radius:10px;align-items:stretch;transition:box-shadow .15s,border-color .15s;display:flex;position:relative;overflow:hidden}.automation-palette-node[data-v-218bcc30]:hover{box-shadow:0 2px 8px #0000001a}.automation-palette-node__accent[data-v-218bcc30]{flex-shrink:0;width:3px}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./PluginSearch-
|
|
2
|
-
import{
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./PluginSearch-BoBZLLbr.js","./PluginSearch-kGhweU1J.js","./vendor-cameraui-K1Nw4PvF.js","./rolldown-runtime-C0FnF6B9.js","./vendor-Df81FCJz.js","./api-D1iULsSy.js","./intercomService-BQYzjnAi.js","./vendor-zod-CBbC1rE7.js","./types-CeruGCb8.js","./alert-outline-B4ZZowEj.js","./eventLabels-idFWh3Y_.js","./vendor-core-CJdfpB0I.js","./vendor-dnd-C1kMh9_t.js","./vendor-primevue-DoA2Rwcb.js","./close-Be7oB7d_.js","./vendor-draggabilly-Cw1oJ6qc.js","./api-By0v6EeA.css","./clock-outline-BtWx4GaF.js","./plugins-lsoAntRQ.js","./CuiPluginTrustBadge-DyYDUWV6.js","./CuiPluginTrustBadge-QHTLaN1n.css","./CuiPluginCategoryChip-BKxJMid7.js","./brain-uZ03n3LW.js","./bell-ring-CBf0Yn3H.js","./cctv-VgKQ-dBV.js","./CuiPluginCategoryChip-CdGrTCxH.css","./download-C291Yq7I.js","./PluginSearch-Dlzc-aJ3.css"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{J as e,Xt as t,hr as n}from"./vendor-cameraui-K1Nw4PvF.js";import{dn as r,fn as i}from"./api-D1iULsSy.js";import{$n as a,Cn as o,Cr as s,Ht as c,In as l,Rn as u,Xn as d,cn as f,dn as p,gn as m,hn as h,ln as g,lr as _,rn as v,sn as y,un as b,vn as x,yr as S}from"./vendor-Df81FCJz.js";import{u as C}from"./vendor-core-CJdfpB0I.js";import{H as w,N as T,l as E}from"./vendor-primevue-DoA2Rwcb.js";import{t as D}from"./plugins-lsoAntRQ.js";import{t as O}from"./automations-CTTQlGCW.js";import{t as k}from"./useUserOptions-BKteXnmU.js";import{n as A}from"./useCameraOptions-CI1baRmm.js";import{n as j,r as M,t as N}from"./automationBlueprint-D0F9AHk9.js";var P={class:`flex flex-col field-gap`},F={class:`cui-label`},I=x({__name:`AutomationInputPicker`,props:{input:{},modelValue:{}},emits:[`update:modelValue`],setup(t,{emit:n}){let r=new D,i=t,o=n,{cameraOptions:c,useSensorOptions:u}=A(),{userOptions:d}=k(),{data:_}=r.getPluginsQuery({page:1,pageSize:-1}),{sensorOptions:x,sensorById:C,isLoading:O}=u(),j=y(()=>{let e=i.input.interface;return(_.value?.result??[]).filter(t=>e?(t.contract?.interfaces??[]).includes(e):(t.contract?.interfaces?.length??0)>0).map(e=>({label:e.displayName||e.pluginName,value:e.pluginName}))}),M=y(()=>i.modelValue?.sensorId??``);function N(e){let t=C(String(e??``));t&&o(`update:modelValue`,{sensorId:t.id,sensorType:String(t.type)})}return(n,r)=>{let i=w,u=T,_=E,y=e;return l(),p(`div`,P,[f(`label`,F,s(t.input.label||t.input.key),1),t.input.type===`camera`?(l(),g(i,{key:0,"model-value":t.modelValue,options:S(c),"option-label":`label`,"option-value":`value`,placeholder:n.$t(`components.automation_import.select_camera`),class:`w-full`,"onUpdate:modelValue":r[0]||=e=>o(`update:modelValue`,e)},null,8,[`model-value`,`options`,`placeholder`])):t.input.type===`plugin`?(l(),p(v,{key:1},[m(i,{"model-value":t.modelValue,options:S(j),"option-label":`label`,"option-value":`value`,placeholder:n.$t(`components.automation_import.select_plugin`),class:`w-full`,disabled:!S(j).length,"onUpdate:modelValue":r[1]||=e=>o(`update:modelValue`,e)},null,8,[`model-value`,`options`,`placeholder`,`disabled`]),S(j).length?b(``,!0):(l(),g(u,{key:0,severity:`warn`,variant:`simple`,size:`small`,class:`cui-input-hint`},{default:a(()=>[h(s(n.$t(`components.automation_import.no_plugin_for_interface`,{interface:t.input.interface})),1)]),_:1}))],64)):t.input.type===`notification-targets`?(l(),g(_,{key:2,"model-value":t.modelValue,options:S(d),"option-label":`label`,"option-value":`value`,placeholder:n.$t(`components.automation_import.select_targets`),class:`w-full`,"onUpdate:modelValue":r[2]||=e=>o(`update:modelValue`,e)},null,8,[`model-value`,`options`,`placeholder`])):t.input.type===`sensor`?(l(),g(i,{key:3,"model-value":S(M),options:S(x),"option-label":`label`,"option-value":`value`,placeholder:n.$t(`components.automation_import.select_sensor`),class:`w-full`,loading:S(O),filter:``,"onUpdate:modelValue":N},null,8,[`model-value`,`options`,`placeholder`,`loading`])):t.input.type===`system-target`?(l(),g(y,{key:4,"model-value":t.modelValue??``,placeholder:n.$t(`components.automation_import.enter_target_id`),class:`w-full`,"onUpdate:modelValue":r[3]||=e=>o(`update:modelValue`,e??``)},null,8,[`model-value`,`placeholder`])):t.input.type===`text`?(l(),g(y,{key:5,"model-value":t.modelValue??``,placeholder:t.input.placeholder,class:`w-full`,"onUpdate:modelValue":r[4]||=e=>o(`update:modelValue`,e??``)},null,8,[`model-value`,`placeholder`])):b(``,!0)])}}}),L={class:`flex flex-col gap-4`},R={class:`text-sm text-muted`},z={class:`flex flex-col gap-2`},B={key:1,class:`text-sm text-muted`},V=x({__name:`AutomationImport`,props:{blueprint:{}},setup(e,{expose:h}){let x=i(()=>c(()=>import(`./PluginSearch-BoBZLLbr.js`),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27]),import.meta.url)),w=new O,E=new D,k=e,A=C(),P=r(),{t:F}=n(),V=o(`dialogRefProps`),{data:H}=E.getPluginsQuery({page:1,pageSize:-1}),{mutateAsync:U,isPending:W}=w.importBlueprintQuery(),G=_({}),K=y(()=>M(k.blueprint)),q=y(()=>N(k.blueprint,K.value)),J=y(()=>{let e=new Set;for(let t of H.value?.result??[])for(let n of t.contract?.interfaces??[])e.add(n);return e}),Y=y(()=>q.value.filter(e=>!J.value.has(e))),X=y(()=>K.value.every(e=>Q(e,G[e.key]))),Z=y(()=>Y.value.length===0&&X.value);function Q(e,t){switch(e.type){case`notification-targets`:return Array.isArray(t)&&t.length>0;case`sensor`:return!!t?.sensorId;default:return typeof t==`string`&&t.length>0}}function $(e,t){G[e]=t}function ee(e){return e.replace(/([A-Z])/g,` $1`).trim()||e}function te(){P.openComponentDialog(x,{data:{title:F(`components.dialog.title.search_plugin`),contentProps:{},hideConfirmButton:!0,fullscreen:!0}})}async function ne(){if(!Z.value)return null;let e=j(k.blueprint,K.value,{...G}),t=await U({blueprint:e});A.push(`/automations/${t._id}`)}return d(K,e=>{for(let t of e)G[t.key]===void 0&&t.default!==void 0&&(G[t.key]=t.default)},{immediate:!0}),d(Z,e=>{V.disabled.value=!e},{immediate:!0}),h({isLoading:W,onConfirm:ne}),(e,n)=>{let r=t,i=T;return l(),p(`div`,L,[f(`p`,R,s(e.$t(`components.automation_import.intro`)),1),S(Y).length?(l(),g(i,{key:0,severity:`error`,class:`text-sm`},{default:a(()=>[f(`div`,z,[f(`span`,null,s(e.$t(`components.automation_import.missing_plugins`,{plugins:S(Y).map(ee).join(`, `)})),1),m(r,{size:`small`,severity:`contrast`,outlined:``,class:`self-start`,label:e.$t(`components.automation_import.open_plugin_store`),onClick:te},null,8,[`label`])])]),_:1})):b(``,!0),!S(K).length&&!S(Y).length?(l(),p(`div`,B,s(e.$t(`components.automation_import.no_inputs`)),1)):b(``,!0),(l(!0),p(v,null,u(S(K),e=>(l(),p(`div`,{key:e.key,class:`flex flex-col`},[m(I,{input:e,"model-value":S(G)[e.key],"onUpdate:modelValue":t=>$(e.key,t)},null,8,[`input`,`model-value`,`onUpdate:modelValue`])]))),128))])}}});export{V as default};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./AutomationStoreDetail-CiyIs8Iu.js","./vendor-cameraui-K1Nw4PvF.js","./rolldown-runtime-C0FnF6B9.js","./vendor-Df81FCJz.js","./api-D1iULsSy.js","./intercomService-BQYzjnAi.js","./vendor-zod-CBbC1rE7.js","./types-CeruGCb8.js","./alert-outline-B4ZZowEj.js","./eventLabels-idFWh3Y_.js","./vendor-core-CJdfpB0I.js","./vendor-dnd-C1kMh9_t.js","./vendor-primevue-DoA2Rwcb.js","./close-Be7oB7d_.js","./vendor-draggabilly-Cw1oJ6qc.js","./api-By0v6EeA.css","./check-circle-BU-KNgPB.js","./plugins-lsoAntRQ.js","./automations-CTTQlGCW.js","./CuiPluginTrustBadge-DyYDUWV6.js","./CuiPluginTrustBadge-QHTLaN1n.css","./account-DjBQulDn.js","./types-U4AuTNLR.js","./bell-ring-CBf0Yn3H.js","./webhook-DIjChTrs.js","./types-v-mK9gdq.css","./close-circle-D7Jmhp_7.js","./AutomationStoreDetail--egqUOqn.css"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{J as e,Qt as t,Xt as n,hr as r,nn as i,ot as a}from"./vendor-cameraui-K1Nw4PvF.js";import{An as o,In as s,_r as c,dn as l,fn as u}from"./api-D1iULsSy.js";import{$n as d,Cr as f,Ht as p,In as m,Rn as h,cn as g,dn as _,dr as v,er as y,gn as b,hn as x,ln as S,or as C,rn as w,sn as T,tn as E,un as D,vn as O,yr as k}from"./vendor-Df81FCJz.js";import{G as A,H as j,L as M,W as N,f as ee}from"./vendor-primevue-DoA2Rwcb.js";import{t as P}from"./automations-CTTQlGCW.js";import{i as F,t as I}from"./CuiPluginTrustBadge-DyYDUWV6.js";import{t as L}from"./account-DjBQulDn.js";import{a as R,i as z,n as B,r as V,t as H}from"./types-U4AuTNLR.js";import{t as U}from"./search-D75YW08B.js";var W={class:`automation-store-card-body`},G={class:`flex items-start gap-2 min-w-0`},K={class:`min-w-0 flex-1`},q={class:`flex items-center gap-2 min-w-0`},J={class:`font-medium text-base truncate`},Y={key:0,class:`automation-store-card-description`},X={class:`flex flex-wrap items-center gap-x-3 gap-y-1 mt-2`},Z={key:0,class:`automation-store-meta`},Q={key:1,class:`flex flex-wrap gap-1 mt-2`},$={key:2,class:`automation-store-inputs mt-auto pt-2`},te={class:`text-muted`},ne=s(O({__name:`CuiAutomationStoreCard`,props:{entry:{}},emits:[`open`],setup(e,{emit:t}){let n=e,a=t,{t:o}=r(),s=T(()=>H(n.entry.requiredInputs,o));function c(e){return e.replace(/([A-Z])/g,` $1`).trim()||e}return(t,n)=>{let r=I,o=B,l=V,u=L,d=F,p=i;return m(),_(`div`,{class:`automation-store-card shadow-sm transition-default card-background`,role:`button`,tabindex:`0`,onClick:n[0]||=t=>a(`open`,e.entry),onKeydown:n[1]||=E(t=>a(`open`,e.entry),[`enter`])},[g(`div`,W,[g(`div`,G,[g(`div`,K,[g(`div`,q,[g(`h4`,J,f(e.entry.title),1),b(r,{trust:`official`,"show-label":!1,class:`flex-shrink-0`})])]),e.entry.featured?y((m(),S(o,{key:0,class:`w-4 h-4 flex-shrink-0 text-primary`},null,512)),[[p,{value:t.$t(`components.automation_store.featured`)},void 0,{top:!0}]]):D(``,!0)]),e.entry.description?(m(),_(`p`,Y,f(e.entry.description),1)):D(``,!0),g(`div`,X,[b(l,{category:e.entry.category},null,8,[`category`]),e.entry.author?(m(),_(`span`,Z,[b(u,{class:`automation-store-meta-icon`}),x(` `+f(e.entry.author),1)])):D(``,!0)]),e.entry.requiredPlugins?.length?(m(),_(`div`,Q,[(m(!0),_(w,null,h(e.entry.requiredPlugins,e=>(m(),_(`span`,{key:e,class:`automation-store-plugin-chip`},[b(d,{class:`automation-store-meta-icon`}),x(` `+f(c(e)),1)]))),128))])):D(``,!0),k(s).length?(m(),_(`div`,$,[g(`span`,te,f(t.$t(`components.automation_store.needs`))+`:`,1),x(` `+f(k(s).join(`, `)),1)])):D(``,!0)])],32)}}}),[[`__scopeId`,`data-v-50879f29`]]),re={class:`flex flex-wrap gap-2 mt-4`},ie={key:0,class:`mt-6`},ae={class:`featured-row custom-scrollbar mt-3`},oe={class:`flex flex-row items-center justify-center w-full mt-8`},se={key:3,class:`w-full`},ce={key:4,class:`text-center py-10`},le={class:`text-muted mb-2`},ue={class:`text-muted`},de={key:5,class:`automation-store-list`},fe=s(O({__name:`AutomationStore`,setup(s,{expose:x}){let E=u(()=>p(()=>import(`./AutomationStoreDetail-CiyIs8Iu.js`),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27]),import.meta.url)),O=new P,F=l(),{t:I}=r(),L=v(!1),B=v(``),V=v(`all`),H=v(`featured`),{data:W,isBusy:G,refetch:K}=O.getAutomationStoreQuery(L),q=T(()=>[{label:I(`components.automation_store.filter_all_categories`),value:`all`},...R.map(e=>({label:I(z[e].labelKey),value:e}))]),J=T(()=>[{label:I(`components.automation_store.sort_featured`),value:`featured`},{label:I(`components.automation_store.sort_name`),value:`name`}]),Y=T(()=>{let e=(W.value??[]).slice(),t=B.value.toLowerCase().trim();return t&&(e=e.filter(e=>e.title.toLowerCase().includes(t)||(e.description??``).toLowerCase().includes(t)||(e.tags??[]).some(e=>e.toLowerCase().includes(t)))),V.value!==`all`&&(e=e.filter(e=>e.category===V.value)),e.sort((e,t)=>H.value===`featured`&&!!e.featured!=!!t.featured?e.featured?-1:1:e.title.localeCompare(t.title)),e}),X=T(()=>Y.value.filter(e=>e.featured)),Z=T(()=>Y.value.filter(e=>!e.featured));function Q(e){F.openComponentDialog(E,{data:{title:I(`components.dialog.title.details`),hideConfirmButton:!0,contentProps:{id:e.id}}})}function $(){L.value=!0,K().finally(()=>{L.value=!1})}return x({isLoading:G}),(r,s)=>{let l=U,u=N,p=e,v=A,x=j,T=ne,E=o,O=n,P=t,F=ee,I=M,L=a,R=c,z=i;return m(),_(`div`,null,[b(v,null,{default:d(()=>[b(u,null,{default:d(()=>[b(l,{class:`w-4 h-4`})]),_:1}),b(p,{modelValue:k(B),"onUpdate:modelValue":s[0]||=e=>C(B)?B.value=e:null,modelModifiers:{trim:!0},placeholder:r.$t(`components.automation_store.search`),class:`w-full`},null,8,[`modelValue`,`placeholder`])]),_:1}),g(`div`,re,[b(x,{modelValue:k(V),"onUpdate:modelValue":s[1]||=e=>C(V)?V.value=e:null,options:k(q),"option-label":`label`,"option-value":`value`,class:`flex-1 min-w-[140px]`,placeholder:r.$t(`components.automation_store.filter_category`)},null,8,[`modelValue`,`options`,`placeholder`]),b(x,{modelValue:k(H),"onUpdate:modelValue":s[2]||=e=>C(H)?H.value=e:null,options:k(J),"option-label":`label`,"option-value":`value`,class:`flex-1 min-w-[140px]`,placeholder:r.$t(`components.automation_store.sort_by`)},null,8,[`modelValue`,`options`,`placeholder`])]),!k(G)&&k(X).length?(m(),_(`div`,ie,[g(`h3`,null,f(r.$t(`components.automation_store.featured`)),1),g(`div`,ae,[(m(!0),_(w,null,h(k(X),e=>(m(),_(`div`,{key:e.id,class:`featured-item`},[b(T,{entry:e,onOpen:Q},null,8,[`entry`])]))),128))])])):D(``,!0),g(`div`,oe,[g(`h3`,null,f(r.$t(`components.automation_store.automations`)),1),y((m(),S(O,{text:``,rounded:``,severity:`secondary`,class:`cui-icon-md ml-auto`,onClick:$},{icon:d(()=>[b(E,{width:`100%`,height:`100%`})]),_:1})),[[z,{value:r.$t(`components.automation_store.refresh`)},void 0,{left:!0}]]),b(P,{size:`small`,class:`ml-2 rounded-full`,value:String(k(Z).length)},null,8,[`value`])]),k(G)?(m(),S(F,{key:1,mode:`indeterminate`,class:`my-3 !h-[1px]`})):(m(),S(I,{key:2,class:`m-0 py-3`})),k(G)?(m(),_(`div`,se,[(m(),_(w,null,h(4,e=>b(L,{key:e,class:`mb-2`,height:`120px`})),64))])):!k(Z).length&&!k(X).length?(m(),_(`div`,ce,[g(`div`,le,[b(R,{class:`w-12 h-12 mx-auto opacity-30`})]),g(`p`,ue,f(r.$t(`components.automation_store.empty`)),1)])):(m(),_(`div`,de,[(m(!0),_(w,null,h(k(Z),e=>(m(),S(T,{key:e.id,entry:e,onOpen:Q},null,8,[`entry`]))),128))]))])}}}),[[`__scopeId`,`data-v-316964e2`]]);export{fe as default};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./AutomationImport-
|
|
2
|
-
import{
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./AutomationImport-DKgg7atE.js","./vendor-cameraui-K1Nw4PvF.js","./rolldown-runtime-C0FnF6B9.js","./vendor-Df81FCJz.js","./api-D1iULsSy.js","./intercomService-BQYzjnAi.js","./vendor-zod-CBbC1rE7.js","./types-CeruGCb8.js","./alert-outline-B4ZZowEj.js","./eventLabels-idFWh3Y_.js","./vendor-core-CJdfpB0I.js","./vendor-dnd-C1kMh9_t.js","./vendor-primevue-DoA2Rwcb.js","./close-Be7oB7d_.js","./vendor-draggabilly-Cw1oJ6qc.js","./api-By0v6EeA.css","./plugins-lsoAntRQ.js","./automations-CTTQlGCW.js","./useUserOptions-BKteXnmU.js","./useCameraOptions-CI1baRmm.js","./automationBlueprint-D0F9AHk9.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{Yt as e,hr as t,nn as n}from"./vendor-cameraui-K1Nw4PvF.js";import{In as r,dn as i,fn as a}from"./api-D1iULsSy.js";import{$n as ee,Cn as o,Cr as s,Ht as c,In as l,Rn as u,Xn as d,cn as f,dn as p,er as te,gn as m,hn as h,ln as g,rn as _,sn as v,un as y,vn as b,yr as x}from"./vendor-Df81FCJz.js";import{L as S,N as C}from"./vendor-primevue-DoA2Rwcb.js";import{t as ne}from"./check-circle-BU-KNgPB.js";import{t as w}from"./plugins-lsoAntRQ.js";import{t as T}from"./automations-CTTQlGCW.js";import{t as re}from"./CuiPluginTrustBadge-DyYDUWV6.js";import{t as ie}from"./account-DjBQulDn.js";import{n as ae,r as oe,t as E}from"./types-U4AuTNLR.js";import{t as D}from"./close-circle-D7Jmhp_7.js";var O={class:`automation-store-detail`},k={key:0,class:`flex w-full items-center justify-center py-10`},A={class:`flex items-start gap-2 flex-wrap`},j={class:`text-xl font-semibold`},M={class:`flex flex-wrap items-center gap-2 mt-3`},N={key:0,class:`detail-meta`},P={key:0,class:`text-sm mt-4`},F={key:1,class:`flex flex-wrap gap-1 mt-3`},I={key:2},L={class:`text-base font-semibold mb-2`},R={class:`flex flex-col gap-1`},z={key:3,class:`mt-4`},B={class:`text-base font-semibold mb-2`},V={class:`flex flex-wrap gap-1`},se={key:2,class:`text-center py-10`},H={class:`text-muted`},U=r(b({__name:`AutomationStoreDetail`,props:{id:{}},setup(r,{expose:b}){let U=a(()=>c(()=>import(`./AutomationImport-DKgg7atE.js`),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]),import.meta.url)),W=new T,G=new w,K=r,ce=i(),{t:q}=t(),J=o(`dialogRefProps`),{data:Y,isBusy:X}=W.getAutomationStoreItemQuery(v(()=>K.id)),{data:le}=G.getPluginsQuery({page:1,pageSize:-1}),ue=v(()=>{let e=new Set;for(let t of le.value?.result??[])for(let n of t.contract?.interfaces??[])e.add(n);return e}),Z=v(()=>(Y.value?.requiredPlugins??[]).map(e=>({interface:e,label:e.replace(/([A-Z])/g,` $1`).trim()||e,installed:ue.value.has(e)}))),Q=v(()=>Z.value.some(e=>!e.installed)),$=v(()=>E(Y.value?.requiredInputs,q));function de(){Y.value&&ce.openComponentDialog(U,{data:{title:q(`components.automation_import.title`),confirmText:q(`components.automation_import.import`),contentProps:{blueprint:Y.value.blueprint}}})}return d(Y,e=>{e?(J.hideConfirmButton.value=!1,J.confirmText.value=q(`components.automation_store.import`)):J.hideConfirmButton.value=!0},{immediate:!0}),b({isLoading:X,onConfirm:de}),(t,r)=>{let i=e,a=re,o=ae,c=oe,d=ie,v=S,b=ne,w=D,T=C,E=n;return l(),p(`div`,O,[x(X)?(l(),p(`div`,k,[m(i,{class:`w-[30px] h-[30px] m-0`,"stroke-width":`5`})])):x(Y)?(l(),p(_,{key:1},[f(`div`,A,[f(`h2`,j,s(x(Y).title),1),m(a,{trust:`official`,"show-label":!1}),x(Y).featured?te((l(),g(o,{key:0,class:`w-5 h-5 text-primary`},null,512)),[[E,{value:t.$t(`components.automation_store.featured`)},void 0,{top:!0}]]):y(``,!0)]),f(`div`,M,[m(c,{category:x(Y).category},null,8,[`category`]),x(Y).author?(l(),p(`span`,N,[m(d,{class:`detail-meta-icon`}),h(` `+s(x(Y).author),1)])):y(``,!0)]),x(Y).description?(l(),p(`p`,P,s(x(Y).description),1)):y(``,!0),x(Y).tags?.length?(l(),p(`div`,F,[(l(!0),p(_,null,u(x(Y).tags,e=>(l(),p(`span`,{key:e,class:`detail-tag`},`#`+s(e),1))),128))])):y(``,!0),m(v),x(Z).length?(l(),p(`div`,I,[f(`h3`,L,s(t.$t(`components.automation_store.required_plugins`)),1),f(`div`,R,[(l(!0),p(_,null,u(x(Z),e=>(l(),p(`div`,{key:e.interface,class:`flex items-center gap-2 text-sm`},[e.installed?(l(),g(b,{key:0,class:`w-4 h-4 text-success`})):(l(),g(w,{key:1,class:`w-4 h-4 text-danger`})),f(`span`,null,s(e.label),1)]))),128))]),x(Q)?(l(),g(T,{key:0,severity:`warn`,variant:`simple`,size:`small`,class:`mt-2`},{default:ee(()=>[h(s(t.$t(`components.automation_store.missing_plugins_hint`)),1)]),_:1})):y(``,!0)])):y(``,!0),x($).length?(l(),p(`div`,z,[f(`h3`,B,s(t.$t(`components.automation_store.required_inputs`)),1),f(`div`,V,[(l(!0),p(_,null,u(x($),(e,t)=>(l(),p(`span`,{key:t,class:`detail-tag`},s(e),1))),128))])])):y(``,!0)],64)):(l(),p(`div`,se,[f(`p`,H,s(t.$t(`components.automation_store.not_found`)),1)]))])}}}),[[`__scopeId`,`data-v-49fb41b7`]]);export{U as default};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./AutomationStore-CU-m5VC8.js","./vendor-cameraui-K1Nw4PvF.js","./rolldown-runtime-C0FnF6B9.js","./vendor-Df81FCJz.js","./api-D1iULsSy.js","./intercomService-BQYzjnAi.js","./vendor-zod-CBbC1rE7.js","./types-CeruGCb8.js","./alert-outline-B4ZZowEj.js","./eventLabels-idFWh3Y_.js","./vendor-core-CJdfpB0I.js","./vendor-dnd-C1kMh9_t.js","./vendor-primevue-DoA2Rwcb.js","./close-Be7oB7d_.js","./vendor-draggabilly-Cw1oJ6qc.js","./api-By0v6EeA.css","./automations-CTTQlGCW.js","./CuiPluginTrustBadge-DyYDUWV6.js","./CuiPluginTrustBadge-QHTLaN1n.css","./account-DjBQulDn.js","./types-U4AuTNLR.js","./bell-ring-CBf0Yn3H.js","./webhook-DIjChTrs.js","./types-v-mK9gdq.css","./search-D75YW08B.js","./AutomationStore-Q25Okhz8.css","./AutomationImport-DKgg7atE.js","./plugins-lsoAntRQ.js","./useUserOptions-BKteXnmU.js","./useCameraOptions-CI1baRmm.js","./automationBlueprint-D0F9AHk9.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{J as e,Xt as t,at as n,hr as r,nn as ee,ot as i}from"./vendor-cameraui-K1Nw4PvF.js";import{Bn as a,Br as o,H as te,I as s,L as c,Ln as l,On as u,R as d,Rn as ne,Tn as f,V as p,Wn as m,_r as re,dn as h,fn as g}from"./api-D1iULsSy.js";import{$n as _,Cr as v,Hn as y,Ht as b,In as x,Jn as ie,Rn as ae,Sr as S,Xt as oe,br as C,cn as w,dn as T,dr as E,er as D,gn as O,hn as k,ln as A,nn as j,or as se,rn as M,sn as N,sr as P,un as F,vn as I,yr as L}from"./vendor-Df81FCJz.js";import{u as ce}from"./vendor-core-CJdfpB0I.js";import{G as le,V as R,W as ue}from"./vendor-primevue-DoA2Rwcb.js";import{t as de}from"./close-Be7oB7d_.js";import{t as z}from"./alert-circle-B-JCMbb9.js";import{t as fe}from"./automations-CTTQlGCW.js";import{t as pe}from"./nodeDefinitions-Dp8cnne1.js";import{n as me}from"./types-J1Drrxo1.js";import{t as he}from"./search-D75YW08B.js";import{t as ge}from"./pause-DHqHYA3V.js";import{t as _e}from"./back-filled-CJoz7Gkl.js";import{t as ve}from"./plus-BBUb8_uL.js";var ye={class:`flex items-center gap-3`},be={class:`flex-1 min-w-0`},B={class:`flex items-center gap-1.5`},V={class:`font-medium text-sm truncate text-color`},H={class:`block truncate`},xe=I({__name:`CuiAutomationFlowCard`,props:{flow:{},selectionMode:{type:Boolean},selected:{type:Boolean}},emits:[`click`,`toggle`],setup(e){let t=e,{t:i}=r(),a=N(()=>t.flow.nodes.find(e=>e.type?.startsWith(`trigger-`))),o=N(()=>{if(a.value?.type)return pe(a.value.type)}),te=N(()=>o.value?.icon),s=N(()=>o.value?.color??me.trigger),c=N(()=>t.flow.lastRun?.status===`error`),l=N(()=>{if(!t.flow.lastRun)return;let e=d(t.flow.lastRun.timestamp);return{value:c.value&&t.flow.lastRun.error?`${e}\n${t.flow.lastRun.error}`:e}});function d(e){return new Date(e).toLocaleString()}return(t,r)=>{let a=u,o=z,ne=R,f=n,p=ee;return x(),A(f,{class:`cui-card cursor-pointer select-none`,onClick:r[2]||=e=>t.$emit(`click`)},{content:_(()=>[w(`div`,ye,[e.selectionMode?(x(),T(`div`,{key:0,class:C([`w-6 h-6 rounded-full border-2 flex items-center justify-center transition-colors shrink-0`,e.selected?`bg-primary border-primary`:`border-color`])},[e.selected?(x(),A(a,{key:0,class:`w-4 h-4 text-white`})):F(``,!0)],2)):F(``,!0),w(`div`,{class:`flex items-center justify-center w-10 h-10 rounded-lg shrink-0`,style:S({backgroundColor:`${L(s)}20`,color:L(s)})},[(x(),A(y(L(te)),{class:`w-5 h-5`}))],4),w(`div`,be,[w(`div`,B,[w(`span`,V,v(e.flow.name),1),e.flow.requiresUpdate?D((x(),A(o,{key:0,class:`w-4 h-4 shrink-0 text-orange-500`},null,512)),[[p,L(i)(`views.automations.requires_update`)]]):F(``,!0)]),w(`div`,{class:C([`text-xs mt-0.5`,L(c)?`text-red-500`:`text-muted`])},[D((x(),T(`span`,H,[k(v(e.flow.lastRun?`${L(i)(`views.automations.last_run`)}: ${d(e.flow.lastRun.timestamp)}`:L(i)(`views.automations.never_run`)),1)])),[[p,L(l),void 0,{bottom:!0}]])],2)]),e.selectionMode?F(``,!0):(x(),A(ne,{key:1,"model-value":e.flow.enabled,class:`shrink-0`,onClick:r[0]||=j(()=>{},[`stop`]),"onUpdate:modelValue":r[1]||=e=>t.$emit(`toggle`,e)},null,8,[`model-value`]))])]),_:1})}}}),U={viewBox:`0 0 32 32`,width:`1.2em`,height:`1.2em`};function W(e,t){return x(),T(`svg`,U,[...t[0]||=[w(`path`,{fill:`currentColor`,d:`M26 24v4H6v-4H4v4a2 2 0 0 0 2 2h20a2 2 0 0 0 2-2v-4Zm0-10l-1.41-1.41L17 20.17V2h-2v18.17l-7.59-7.58L6 14l10 10z`},null,-1)]])}var Se=P({name:`carbon-download`,render:W}),G={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function K(e,t){return x(),T(`svg`,G,[...t[0]||=[w(`path`,{fill:`currentColor`,d:`M11.9 10.9a6.53 6.53 0 0 0-1.9 4.6V12H4v4h6v-.5c0 .85.17 1.7.5 2.5H2v-6H1v-2l1-5h16l.89 4.46a6.47 6.47 0 0 0-6.99 1.44M18 2H2v2h16zm5.39 19L22 22.39l-3.12-3.07c-.69.43-1.51.68-2.38.68c-2.5 0-4.5-2-4.5-4.5s2-4.5 4.5-4.5s4.5 2 4.5 4.5c0 .88-.25 1.71-.69 2.4zM19 15.5a2.5 2.5 0 0 0-5 0a2.5 2.5 0 0 0 5 0`},null,-1)]])}var Ce=P({name:`mdi-store-search`,render:K}),we={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function q(e,t){return x(),T(`svg`,we,[...t[0]||=[w(`path`,{fill:`currentColor`,d:`M8 5.14v14l11-7z`},null,-1)]])}var Te=P({name:`mdi-play`,render:q}),Ee={class:`flex flex-col`},De={key:0,class:`page-title`},Oe={class:`flex gap-2 mb-4`},ke={key:`empty`,class:`flex flex-1 min-h-0 flex-col items-center justify-center w-full gap-4 py-20`},Ae={class:`text-muted text-sm`},J=350,je=82,Y=I({__name:`Automations`,setup(n){let u=g(()=>b(()=>import(`./AutomationStore-CU-m5VC8.js`),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25]),import.meta.url)),y=g(()=>b(()=>import(`./AutomationImport-DKgg7atE.js`),__vite__mapDeps([26,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,27,16,28,29,30]),import.meta.url)),C=new fe,k=ce(),j=h(),P=o(),{t:I}=r(),{smBreakpoint:R}=a(),{width:z,height:pe}=m(),{data:me,isBusy:ye}=C.getAutomationsQuery(),{mutateAsync:be}=C.patchAutomationQuery(),{mutateAsync:B}=C.bulkPatchAutomationsQuery(),{mutateAsync:V,isPending:H}=C.bulkDeleteAutomationsQuery(),U=E(``),W=ie(`fileInputRef`),G=N(()=>f(void 0,`admin`)),K=N(()=>me.value??[]),we=N(()=>(R.value?1:Math.max(1,Math.floor(z.value/J)))*Math.max(1,Math.ceil(pe.value/90))),q=N(()=>{let e=U.value.toLowerCase().trim();return e?K.value.filter(t=>t.name.toLowerCase().includes(e)):K.value}),{selectionMode:Y,selectedIds:X,selectedItems:Z,allSelected:Me,bulkBusy:Q,enterSelectionMode:Ne,exitSelectionMode:Pe,toggleSelectAll:Fe,toggleSelection:Ie}=s(q,e=>e._id),$=N(()=>Z.value.length>0&&Z.value.every(e=>!e.enabled));function Le(e){Y.value?Ie(e):Be(e)}async function Re(){if(!Z.value.length||Q.value)return;let e=$.value,t=Z.value.filter(t=>t.enabled!==e).map(e=>e._id);if(t.length){Q.value=!0;try{await B({ids:t,data:{enabled:e}})}finally{Q.value=!1}}}function ze(){if(!Z.value.length||Q.value)return;let e=Z.value.map(e=>e._id);j.openTextDialog({data:{title:I(`views.automations.delete`),contentText:I(`views.automations.delete_selected_confirm`,{count:e.length}),confirmText:I(`views.automations.delete`),loading:H},onConfirm:async()=>{Q.value=!0;try{let{failed:t}=await V({ids:e});t.length&&P.add({severity:`error`,detail:I(`views.automations.delete_selected_failed`,{count:t.length}),life:5e3}),Pe()}finally{Q.value=!1}}})}function Be(e){k.push(`/automations/${e}`)}function Ve(){k.push(`/automations/new`)}function He(){j.openComponentDialog(u,{data:{title:I(`views.automations.browse_community`),contentProps:{},hideConfirmButton:!0,fullscreen:!0}})}function Ue(e){j.openComponentDialog(y,{data:{title:I(`components.automation_import.title`),confirmText:I(`components.automation_import.import`),contentProps:{blueprint:e}}})}function We(){W.value?.click()}async function Ge(e){let t=e.target.files?.[0];if(t){try{let e=await t.text(),n=JSON.parse(e);if(!n.version||!n.nodes||!n.edges){P.add({severity:`error`,detail:I(`views.automations.import_invalid`),life:3e3});return}Ue(n)}catch{P.add({severity:`error`,detail:I(`views.automations.import_invalid`),life:3e3})}W.value&&(W.value.value=``)}}return(n,r)=>{let a=_e,o=t,s=te,u=he,f=ue,m=e,h=le,g=Ce,y=Se,b=i,ie=xe,C=re,E=l,k=ne,j=ee;return x(),T(`div`,Ee,[L(R)?F(``,!0):(x(),T(`h1`,De,v(L(I)(`views.automations.title`)),1)),O(s,{position:`left`},{default:_(()=>[O(o,{severity:`secondary`,text:``,class:`cui-button p-2 text-color non-draggable-region`,onClick:r[0]||=e=>n.$router.push(`/menu`)},{icon:_(()=>[O(a,{class:`w-6 h-6`})]),_:1})]),_:1}),w(`div`,Oe,[O(h,{class:`flex-1`},{default:_(()=>[O(f,null,{default:_(()=>[O(u,{class:`w-4 h-4`})]),_:1}),O(m,{modelValue:L(U),"onUpdate:modelValue":r[1]||=e=>se(U)?U.value=e:null,placeholder:L(I)(`views.automations.search`),class:`w-full`},null,8,[`modelValue`,`placeholder`])]),_:1}),L(G)?D((x(),A(o,{key:0,severity:`secondary`,outlined:``,class:`cui-button shrink-0`,onClick:He},{icon:_(()=>[O(g,{class:`w-4.5 h-4.5`})]),_:1})),[[j,{value:L(I)(`views.automations.browse_community`)},void 0,{left:!0}]]):F(``,!0),D((x(),A(o,{severity:`secondary`,outlined:``,class:`cui-button shrink-0`,onClick:We},{icon:_(()=>[O(y,{class:`w-4.5 h-4.5`})]),_:1})),[[j,{value:L(I)(`views.automations.import_blueprint`)}]]),w(`input`,{ref_key:`fileInputRef`,ref:W,type:`file`,accept:`.json`,class:`hidden`,onChange:Ge},null,544)]),O(oe,{name:`fade-2`,mode:`out-in`},{default:_(()=>[L(ye)?(x(),T(`div`,{key:`loading`,class:`grid w-full gap-2`,style:S({gridTemplateColumns:`repeat(auto-fill, minmax(${L(R)?`100%`:`${J}px`}, 1fr))`})},[(x(!0),T(M,null,ae(L(we),e=>(x(),A(b,{key:e,height:`${je}px`,class:`cui-card`},null,8,[`height`]))),128))],4)):L(q).length?(x(),T(`div`,{key:`content`,class:`grid w-full gap-2`,style:S({gridTemplateColumns:`repeat(auto-fill, minmax(${L(R)?`100%`:`${J}px`}, 1fr))`})},[(x(!0),T(M,null,ae(L(q),e=>(x(),A(ie,{key:e._id,flow:e,"selection-mode":L(Y),selected:L(X).has(e._id),onClick:t=>Le(e._id),onToggle:t=>L(be)({id:e._id,data:{enabled:t}})},null,8,[`flow`,`selection-mode`,`selected`,`onClick`,`onToggle`]))),128))],4)):(x(),T(`div`,ke,[O(C,{class:`w-12 h-12 text-muted`}),w(`span`,Ae,v(L(I)(`views.automations.no_automations`)),1)]))]),_:1}),O(k,{"force-visible":L(Y)},{default:_(()=>[L(Y)?(x(),T(M,{key:1},[O(E,{grouped:``,"tooltip-props":{value:L(I)(`components.form.tooltip.cancel_selection`)},"button-props":{severity:`secondary`},icon:L(de),"icon-props":{width:`100%`,height:`100%`},onClick:L(Pe)},null,8,[`tooltip-props`,`icon`,`onClick`]),O(E,{grouped:``,"tooltip-props":{value:L(Me)?L(I)(`views.automations.deselect_all`):L(I)(`views.automations.select_all`)},"button-props":{severity:L(Me)?`primary`:`secondary`},icon:L(p),"icon-props":{width:`100%`,height:`100%`},onClick:L(Fe)},null,8,[`tooltip-props`,`button-props`,`icon`,`onClick`]),O(E,{grouped:``,"tooltip-props":{value:L($)?L(I)(`views.automations.enable_selected`):L(I)(`views.automations.disable_selected`)},"button-props":{severity:`secondary`,disabled:!L(X).size||L(Q)},icon:L($)?L(Te):L(ge),"icon-props":{width:`100%`,height:`100%`},onClick:Re},null,8,[`tooltip-props`,`button-props`,`icon`]),O(E,{grouped:``,"tooltip-props":{value:L(I)(`views.automations.delete_selected`)},"button-props":{severity:`danger`,disabled:!L(X).size||L(Q)},icon:L(d),"icon-props":{width:`100%`,height:`100%`},onClick:ze},null,8,[`tooltip-props`,`button-props`,`icon`])],64)):(x(),T(M,{key:0},[L(G)&&L(K).length?(x(),A(E,{key:0,grouped:``,"tooltip-props":{value:L(I)(`views.automations.select`)},"button-props":{severity:`secondary`},icon:L(c),"icon-props":{width:`100%`,height:`100%`},onClick:L(Ne)},null,8,[`tooltip-props`,`icon`,`onClick`])):F(``,!0),O(E,{grouped:``,"tooltip-props":{value:L(I)(`views.automations.create`)},"button-props":{class:`text-white`},icon:L(ve),"icon-props":{width:`30px`,height:`30px`},onClick:Ve},null,8,[`tooltip-props`,`icon`])],64))]),_:1},8,[`force-visible`])])}}});export{Y as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.camera-tab-panels[data-v-2923c44a] .p-tabpanel{scrollbar-width:none;height:100%;overflow:hidden auto}.camera-tab-panels[data-v-2923c44a] .p-tabpanel::-webkit-scrollbar{display:none}.mobile-sheet-panels[data-v-2923c44a] .p-tabpanel{scrollbar-width:none;height:100%}.mobile-sheet-panels[data-v-2923c44a] .p-tabpanel::-webkit-scrollbar{display:none}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./CuiCameraRecordings-CnorhPhf.js","./vendor-cameraui-K1Nw4PvF.js","./rolldown-runtime-C0FnF6B9.js","./vendor-Df81FCJz.js","./api-D1iULsSy.js","./intercomService-BQYzjnAi.js","./vendor-zod-CBbC1rE7.js","./types-CeruGCb8.js","./alert-outline-B4ZZowEj.js","./eventLabels-idFWh3Y_.js","./vendor-core-CJdfpB0I.js","./vendor-dnd-C1kMh9_t.js","./vendor-primevue-DoA2Rwcb.js","./close-Be7oB7d_.js","./vendor-draggabilly-Cw1oJ6qc.js","./api-By0v6EeA.css","./ungrouped-ING_JAuK.js","./utils-gctUU5q_.js","./CuiCameraRecordings-CkkHbNyY.css","./CuiCameraTable-MHfnZSyK.js","./CuiCameraTable-C3GB4Q2y.js","./useStreamStatus-l3Pfk1H4.js","./CuiDataTable-DfjXa0C1.js","./CuiDataTable-DPIbKnvU.css","./CuiCameraShares-BxUgedC_.js","./CuiBottomSheet-ACN23VLS.js","./CuiBottomSheet-DEVNeDqa.js","./CuiBottomSheet-_KXSb13N.css"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{E as e,F as t,Vt as n,Xt as ee,Yt as te,at as ne,fi as re,hr as ie,l as r,nn as ae,o as oe,vi as se}from"./vendor-cameraui-K1Nw4PvF.js";import{$ as i,Bn as ce,Br as le,In as ue,J as de,Kt as fe,Mn as pe,Tn as me,Vn as a,Y as he,_n as ge,at as _e,dn as ve,fn as o,nn as ye,qt as be,rn as xe,s as Se,wn as s}from"./api-D1iULsSy.js";import{$n as c,Cr as l,Ht as u,In as d,Jn as f,Ln as Ce,On as we,Pn as Te,Sr as Ee,Xn as p,an as De,br as m,cn as h,dn as g,dr as _,en as Oe,er as v,gn as y,hn as b,ln as x,mr as ke,or as S,pn as Ae,rn as je,sn as C,sr as w,un as T,vn as Me,yr as E}from"./vendor-Df81FCJz.js";import{a as Ne}from"./intercomService-BQYzjnAi.js";import{c as Pe,l as Fe,u as Ie}from"./vendor-core-CJdfpB0I.js";import{F as Le,I as Re,P as ze,R as Be,z as Ve}from"./vendor-primevue-DoA2Rwcb.js";import{t as He}from"./useAssistantActions-C13O5EHU.js";import{t as Ue}from"./delete-BWgOAzKl.js";import{t as We}from"./utils-gctUU5q_.js";import{n as Ge,t as Ke}from"./zoom-in-rMB152Uz.js";import{t as qe}from"./CuiCameraPipCard-rR_FW9zq.js";var Je={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function Ye(e,t){return d(),g(`svg`,Je,[...t[0]||=[h(`g`,{fill:`none`,stroke:`currentColor`,"stroke-linecap":`round`,"stroke-linejoin":`round`,"stroke-width":`2`},[h(`path`,{d:`M12 7v5l2 2m3 8l5-3l-5-3z`}),h(`path`,{d:`M13.017 20.943a9 9 0 1 1 7.831-7.292`})],-1)]])}var Xe=w({name:`tabler-clock-play`,render:Ye}),Ze={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function Qe(e,t){return d(),g(`svg`,Ze,[...t[0]||=[h(`path`,{fill:`currentColor`,d:`M18 18v2H6v-2zm3-7v2H3v-2zm-3-7v2H6V4z`},null,-1)]])}var $e=w({name:`ri-menu5-line`,render:Qe}),et={class:`w-full h-full flex flex-col lg:flex-row gap-0 lg:gap-2 relative`},tt={key:0,class:`h-full flex items-center justify-center`},nt=.6,rt=.2,it=160,at=ue(Me({__name:`Camera`,setup(ue){let w=o(()=>u(()=>import(`./CuiCameraRecordings-CnorhPhf.js`),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18]),import.meta.url)),Me=o(()=>u(()=>import(`./CuiCameraTable-MHfnZSyK.js`),__vite__mapDeps([19,20,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,21,22,23]),import.meta.url)),Je=o(()=>u(()=>import(`./CuiCameraShares-BxUgedC_.js`),__vite__mapDeps([24,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,22,23]),import.meta.url)),Ye=o(()=>u(()=>import(`./CuiBottomSheet-ACN23VLS.js`),__vite__mapDeps([25,26,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,27]),import.meta.url)),Ze=new xe,Qe=e(`@camera.ui/camera-ui-nvr`),at=Ne(),D=le(),ot=ve(),O=ie(),st=i(),k=Fe(),ct=Ie(),lt=He(),{openEventTrace:ut}=he(),{openSimilarSearch:dt,openOnCamera:ft,cameraSearch:pt,forgetCameraSearch:mt}=de(),{xmdBreakpoint:A,smBreakpoint:j,mdBreakpoint:ht}=ce(),{topbarOffset:gt}=a(),{plugin:M}=n(`@camera.ui/camera-ui-nvr`),_t=s(),N=C(()=>k.params.cameraname),{data:P}=Ze.getCameraQuery(N),F=[`Off`,`1m`,`2m`,`3m`,`5m`],I=f(`cameraCardRef`),L=f(`cuiTimelineRef`),vt=f(`timelineRef`),yt=f(`cameraColumnRef`),bt=f(`cameraPaneRef`),xt=se(`cui-camera-view-share`,nt),R=ke(pt()),z=_(!_t.isTransitioning),St=_(!1),B=_(!1),V=_(!1),H=_([]),Ct=_(),wt=_(),U=_(0),Tt=_(!1),Et=_(!1),W=_(!1),G=_(!1),K=_(),q=_(`0`),J,Dt=C(()=>me(void 0,`admin`)),Y=C(()=>P.value?._id),X=C(()=>!!I.value?.isFullscreen),Z=C(()=>A.value||X.value),Ot=C(()=>L.value?.currentEventDescription),kt=C(()=>{let e=L.value?.currentEvent?.id;return e?Qe.getEvent(e):void 0}),At=re(vt),jt=C(()=>P.value?.interfaceSettings?.playbackSource??`auto`),Q=r(C(()=>Y.value??``),{sourceRole:jt}),Mt=C(()=>{let e=k.query.startTs,t=Number(e);return e&&!isNaN(t)?t:void 0}),Nt=C(()=>typeof k.query.pip==`string`&&k.query.pip?k.query.pip:void 0),Pt=C(()=>{let e=L.value;return!e?.trimStartMs||!e?.trimEndMs?0:e.trimRecordingDurationMs??e.trimEndMs-e.trimStartMs}),$=C(()=>Pt.value<36e5);Ce(_e,{active:V,regions:H});function Ft(e){let t={pip:N.value};Q.mode.value!==`idle`&&(t.startTs=String(Math.floor(oe(Q)/1e3))),ct.push({path:`/cameras/${e}`,query:t,state:{pipFullscreen:X.value}})}function It(){let e=kt.value;if(!e||!P.value)return;let t=L.value?.currentTimeMs;ut(e,P.value,t?Math.floor(t):void 0)}function Lt(e){return We(e,H.value)}function Rt(){V.value=!V.value,V.value||(H.value=[])}if(!z.value){let e=p(()=>_t.isTransitioning,t=>{t||(z.value=!0,e())});setTimeout(()=>{z.value||(z.value=!0,e())},1e3)}function zt(){$.value||(U.value=(U.value+1)%F.length)}function Bt(e){try{I.value?.timelineScroll(e)}catch{}}function Vt(e){let t=bt.value;t&&(e.currentTarget.setPointerCapture(e.pointerId),J={y:e.clientY,height:t.offsetHeight})}function Ht(e){let t=yt.value?.clientHeight;if(!J||!t)return;let n=(J.height+e.clientY-J.y)/t;xt.value=Math.min(Math.max(n,rt),1-it/t)}function Ut(){J=void 0}function Wt(e){L.value?.scrollToEvent(e)}function Gt(e){R.value=e,K.value=void 0}function Kt(){R.value=void 0,K.value=void 0,mt()}function qt({event:e,camera:t,timestamp:n}){if(e.cameraId===Y.value){Wt(n);return}t&&R.value&&ft(t.name,n,R.value)}function Jt(){R.value&&dt(R.value)}async function Yt(){let e=L.value;if(!e)return;let t=e.trimStartMs,n=e.trimEndMs;if(!t||!n||!Y.value)return;let ee=M.value;if(!ee?.nvrExport)return;let te=F[U.value],ne=te===`Off`?0:parseInt(te)*60;Tt.value=!0;try{let e=await ee.nvrExport(Y.value,t*1e3,n*1e3,{timelapseIntervalSec:ne||void 0,sourceRole:Q.effectiveRole.value||void 0});await pe({url:e.url,filename:e.filename})}catch(e){at.error(`Export failed:`,e),D.add({severity:`error`,summary:O.t(`views.recordings.download_failed`),detail:Se(e),life:5e3})}finally{Tt.value=!1}}function Xt(){let e=L.value;e?.trimStartMs&&e?.trimEndMs&&Y.value&&ot.openTextDialog({data:{title:O.t(`components.dialog.title.confirm`),contentText:O.t(`components.player.delete_range_confirm`),confirmText:O.t(`components.form.button.remove`),confirmButtonProps:{severity:`danger`}},onConfirm:()=>Zt()})}async function Zt(){let e=L.value;if(!e?.trimStartMs||!e?.trimEndMs||!Y.value)return;let t=M.value;if(t?.nvrDeleteRange){Et.value=!0;try{let n=await t.nvrDeleteRange(Y.value,e.trimStartMs*1e3,e.trimEndMs*1e3);n?.endMs>n?.startMs?(D.add({severity:`success`,detail:O.t(`components.player.delete_range_done`),life:4e3}),G.value=!1):e.trimEndMs>Date.now()-18e4?D.add({severity:`info`,detail:O.t(`components.player.delete_range_too_recent`),life:5e3}):D.add({severity:`info`,detail:O.t(`components.player.delete_range_nothing`),life:4e3})}catch(e){at.error(`Range delete failed:`,e),D.add({severity:`error`,detail:Se(e),life:5e3})}finally{Et.value=!1}}}function Qt(){W.value=!W.value,W.value&&(G.value=!1)}function $t(){G.value=!G.value,G.value&&(W.value=!1)}return p(()=>I.value?.timelineState,e=>{e===!1&&(W.value=!1,G.value=!1)}),p(Mt,e=>{e&&(Q.mode.value=`play`)},{immediate:!0,flush:`sync`}),p([Y,Mt],([e,t])=>{e&&t&&wt.value!==t&&P.value?.name===N.value&&(wt.value=t,Q.play(t*1e3),L.value?.scrollToTime(t),ct.replace({query:{...k.query,startTs:void 0}}))},{immediate:!0}),p(N,()=>{R.value=pt(),R.value||(K.value=void 0)}),p(R,e=>{e&&(q.value=`0`,j.value&&(B.value=!0))},{immediate:!0}),p(N,(e,t)=>{t&&A.value&&St.value&&we(()=>{we(()=>{try{I.value?.toggleTimeline()}catch{}})})},{flush:`pre`}),p(()=>I.value?.timelineState,e=>{e!==void 0&&(St.value=e)}),p(W,e=>{e||(U.value=0)}),p(I,e=>{e&&window.history.state?.pipFullscreen&&(window.history.replaceState({...window.history.state,pipFullscreen:!1},``),e.isFullscreen||e.toggleFs())}),p(X,e=>{e&&(G.value=!1)}),p($,e=>{e&&(U.value=0)}),Pe((e,t)=>{e.params.cameraname!==t.params.cameraname&&Q.isActive.value&&Q.stop()}),Te(()=>{Ze.ensureCamerasList({page:1,pageSize:-1}).catch(()=>void 0),lt.register({name:`timeline.seek`,description:`Jump the recording of the open camera to a time. Args: { time: ISO 8601 with offset }.`,run:e=>{let t=Date.parse(String(e.time??``));if(Number.isNaN(t))throw Error(`time is not a valid ISO 8601 timestamp`);return Q.play(t*1e3),L.value?.scrollToTime(t),`timeline at ${new Date(t).toLocaleString()}`}}),lt.register({name:`timeline.zoom`,description:`Zoom the timeline of the open camera. Args: { direction: "in" | "out" }.`,run:e=>(e.direction===`in`?L.value?.zoomIn():L.value?.zoomOut(),`timeline zoomed ${e.direction===`in`?`in`:`out`}`)})}),(e,n)=>{let re=qe,ie=te,r=ze,oe=Le,se=ye,i=Re,ce=Be,le=Ve,ue=ne,de=fe,pe=be,a=ee,he=$e,_e=Xe,ve=ge,o=Ue,xe=Ke,Se=Ge,s=ae;return d(),g(`div`,{class:m({"pt-2":!E(j),"px-2":!E(j)})},[h(`div`,et,[h(`div`,{ref_key:`cameraColumnRef`,ref:yt,class:m([`w-full flex flex-col`,{"h-full":!E(j)}]),style:Ee({paddingRight:!E(j)&&!E(A)?`calc(${E(At).width.value||400}px + 0.5rem)`:`0px`})},[h(`div`,{ref_key:`cameraPaneRef`,ref:bt,class:m({flex:!E(j)}),style:Ee(E(j)?void 0:{maxHeight:`${E(xt)*100}%`})},[(d(),x(re,{ref_key:`cameraCardRef`,ref:I,key:E(N),"source-role":E(Ct),"onUpdate:sourceRole":n[0]||=e=>S(Ct)?Ct.value=e:null,"back-button":E(j),"camera-info":E(N),"flat-card":E(j),resizable:E(j),"control-microphone-button":!E(j),"toolbar-timeline-button":E(A),"fullscreen-timeline":``,"toolbar-description-button":!!E(M),"event-description":E(Ot),"current-event":E(kt),onOpenTrace:It,"pip-camera":E(Nt),"on-search-similar":E(M)?Gt:void 0,onOpenCamera:Ft,"camera-name-overlay":!1,"show-shortcuts":``,"view-transition":``,class:`flex-1 h-full min-w-0`},null,8,[`source-role`,`back-button`,`camera-info`,`flat-card`,`resizable`,`control-microphone-button`,`toolbar-timeline-button`,`toolbar-description-button`,`event-description`,`current-event`,`pip-camera`,`on-search-similar`]))],6),E(j)?T(``,!0):(d(),g(`div`,{key:0,class:`group relative z-10 h-3 -my-0.5 shrink-0 flex items-center justify-center cursor-ns-resize touch-none select-none`,onPointerdown:Vt,onPointermove:Ht,onPointerup:Ut,onPointercancel:Ut,onDblclick:n[1]||=e=>xt.value=nt},[...n[11]||=[h(`div`,{class:`w-9 h-1 rounded-full bg-surface-400/50 group-hover:bg-surface-400`},null,-1)]],32)),E(j)?T(``,!0):(d(),x(ue,{key:1,class:`cui-card flex-1 min-h-0`,pt:{content:{class:`overflow-hidden h-full flex flex-col`},body:{class:`h-full`}}},{content:c(()=>[E(z)?(d(),x(le,{key:1,value:E(q),"onUpdate:value":n[3]||=e=>S(q)?q.value=e:null,lazy:``,class:`h-full flex flex-col`},{default:c(()=>[y(oe,{class:`shrink-0`},{default:c(()=>[y(r,{value:`0`,class:`pt-0 text-sm`},{default:c(()=>[b(l(e.$t(`views.camera.recordings`)),1)]),_:1}),y(r,{value:`1`,class:`pt-0 text-sm`},{default:c(()=>[b(l(e.$t(`views.camera.cameras`)),1)]),_:1}),(`hasPermission`in e?e.hasPermission:E(me))(void 0,`admin`)?(d(),x(r,{key:0,value:`2`,class:`pt-0 text-sm`},{default:c(()=>[b(l(e.$t(`views.camera.shares`)),1)]),_:1})):T(``,!0)]),_:1}),y(ce,{class:`camera-tab-panels px-0 pb-0 flex-1 min-h-0`},{default:c(()=>[y(i,{value:`0`,class:`!overflow-hidden`},{default:c(()=>[E(R)?(d(),x(se,{key:0,request:E(R),class:`h-full`,onOpen:qt,onClose:Kt,onShowAll:Jt,onShown:n[2]||=e=>K.value=e},null,8,[`request`])):E(Y)?(d(),x(E(w),{key:1,"camera-id":E(Y),"camera-name":E(N),camera:E(P),onScrollToEvent:Wt},null,8,[`camera-id`,`camera-name`,`camera`])):T(``,!0)]),_:1}),y(i,{value:`1`},{default:c(()=>[y(E(Me),{"active-camera":E(N)},null,8,[`active-camera`])]),_:1}),(`hasPermission`in e?e.hasPermission:E(me))(void 0,`admin`)?(d(),x(i,{key:0,value:`2`},{default:c(()=>[E(Y)?(d(),x(E(Je),{key:0,"camera-id":E(Y),"camera-name":E(N)},null,8,[`camera-id`,`camera-name`])):T(``,!0)]),_:1})):T(``,!0)]),_:1})]),_:1},8,[`value`])):(d(),g(`div`,tt,[y(ie,{class:`w-[32px] h-[32px]`,"stroke-width":`4`})]))]),_:1}))],6),E(A)?T(``,!0):v((d(),g(`div`,{key:0,id:`camera-sidebar`,ref_key:`timelineRef`,ref:vt,class:m({"min-w-[300px]":E(j),"min-w-[400px]":!E(j),"border-t-[1px] border-color":E(j),"lg:fixed lg:right-safe-offset-2 lg:bottom-[var(--cui-bottom-gap)]":!E(j)&&!E(A)}),style:Ee({height:`calc(100% - ${E(gt)}px - var(--safe-area-inset-top) - 0.5rem - var(--cui-bottom-gap))`})},null,6)),[[Oe,!E(X)]])]),E(j)&&E(z)?(d(),x(E(Ye),{key:0,modelValue:E(B),"onUpdate:modelValue":n[6]||=e=>S(B)?B.value=e:null,height:`70vh`,"max-height":`85vh`},{default:c(()=>[(d(),x(le,{key:E(N),value:E(q),"onUpdate:value":n[5]||=e=>S(q)?q.value=e:null,lazy:``,class:`h-full flex flex-col`},{default:c(()=>[y(oe,{class:`shrink-0 w-full mt-5`},{default:c(()=>[y(r,{value:`0`,class:`pt-0 text-sm flex-1`},{default:c(()=>[b(l(e.$t(`views.camera.recordings`)),1)]),_:1}),y(r,{value:`1`,class:`pt-0 text-sm flex-1`},{default:c(()=>[b(l(e.$t(`views.camera.cameras`)),1)]),_:1}),y(r,{value:`2`,class:`pt-0 text-sm flex-1`},{default:c(()=>[b(l(e.$t(`views.camera.shares`)),1)]),_:1})]),_:1}),y(ce,{class:`mobile-sheet-panels px-0 pb-0 flex-1 min-h-0`},{default:c(()=>[y(i,{value:`0`,class:`h-full !overflow-hidden`},{default:c(()=>[E(R)?(d(),x(se,{key:0,request:E(R),class:`h-full`,onOpen:qt,onClose:Kt,onShowAll:Jt,onShown:n[4]||=e=>K.value=e},null,8,[`request`])):E(Y)?(d(),x(E(w),{key:1,"camera-id":E(Y),"camera-name":E(N),camera:E(P),compact:``,onScrollToEvent:Wt},null,8,[`camera-id`,`camera-name`,`camera`])):T(``,!0)]),_:1}),y(i,{value:`1`,class:`h-full overflow-auto`},{default:c(()=>[y(E(Me),{"active-camera":E(N)},null,8,[`active-camera`])]),_:1}),y(i,{value:`2`,class:`h-full overflow-auto`},{default:c(()=>[E(Y)?(d(),x(E(Je),{key:0,"camera-id":E(Y),"camera-name":E(N)},null,8,[`camera-id`,`camera-name`])):T(``,!0)]),_:1})]),_:1})]),_:1},8,[`value`]))]),_:1},8,[`modelValue`])):T(``,!0),(d(),x(De,{key:E(N),to:E(Z)?E(I)?.timelineTarget??`#timeline-container`:`#camera-sidebar`,defer:``},[(d(),x(E(t),{ref_key:`cuiTimelineRef`,ref:L,key:E(N),"camera-ids":E(Y)?[E(Y)]:[],loading:!E(z),"flat-card":E(j)||E(Z),type:E(Z)?`horizontal`:`vertical`,"show-segments":!E(j)&&!E(Z),"show-zoom":!0,"initial-timestamp":E(Mt),"only-events":E(R)?E(K):void 0,class:m({"absolute bottom-0 left-0 w-full h-[200px]":E(Z),"h-full":!E(Z)}),"card-class":{"h-[200px]":E(Z)},transparent:E(Z),"dark-mode":E(Z),"overlay-class":E(Z)?`timeline-overlay !z-0`:void 0,"locale-settings":E(st),"trim-mode":E(W)||E(G),"trim-variant":E(G)?`delete`:`export`,"export-available":!0,"delete-available":E(Dt)&&!E(X),"ignore-bottom-safe-area":!E(Z),"md-breakpoint":E(ht),"zone-filter-active":E(V),"zone-has-regions":E(H).length>0,"zone-box-matcher":Lt,onScrolling:Bt,onToggleZoneFilter:Rt,onToggleExportMode:Qt,onToggleDeleteMode:$t},{"bottom-right":c(()=>[h(`div`,{class:m([`flex gap-2 items-center`,E(Z)?`flex-row-reverse`:`flex-col-reverse`])},[E(j)&&!E(W)&&!E(G)?v((d(),x(a,{key:0,rounded:``,severity:`primary`,disabled:E(I)?.micButtonDisabled??!0,class:`shadow-md pointer-events-auto w-[46px] h-[46px]`,onClick:n[7]||=e=>E(I)?.toggleMicrophone(void 0,!0)},{icon:c(()=>[E(I)?.micActive?(d(),x(de,{key:0,width:`100%`,height:`100%`})):(d(),x(pe,{key:1,width:`100%`,height:`100%`}))]),_:1},8,[`disabled`])),[[s,{value:e.$t(`components.player.intercom`)},void 0,{left:!0}]]):T(``,!0),E(j)&&!E(X)&&!E(W)&&!E(G)?v((d(),x(a,{key:1,rounded:``,severity:`secondary`,class:`shadow-md pointer-events-auto w-[42px] h-[42px]`,onClick:n[8]||=e=>B.value=!0},{icon:c(()=>[y(he,{width:`100%`,height:`100%`})]),_:1})),[[s,{value:e.$t(`components.player.more`)},void 0,{left:!0}]]):T(``,!0),E(W)?(d(),g(je,{key:2},[v((d(),x(a,{rounded:``,severity:`secondary`,disabled:E($),label:E(U)>0?F[E(U)]:void 0,class:m([`shadow-md pointer-events-auto !text-xs !font-semibold`,E(Z)?`cui-button-small`:`w-[42px] h-[42px]`]),onClick:zt},Ae({_:2},[E(U)===0?{name:`icon`,fn:c(()=>[y(_e,{width:`100%`,height:`100%`,class:`opacity-40`})]),key:`0`}:void 0]),1032,[`disabled`,`label`,`class`])),[[s,{value:E($)?e.$t(`components.player.timelapse_min_duration`):E(U)>0?`${e.$t(`components.player.timelapse`)}: ${F[E(U)]}`:e.$t(`components.player.timelapse_off`)},void 0,{left:!0}]]),v((d(),x(a,{rounded:``,severity:`success`,loading:E(Tt),class:m([`shadow-md pointer-events-auto`,E(Z)?`cui-button-small`:`w-[42px] h-[42px]`]),onClick:Yt},{icon:c(()=>[y(ve,{width:`100%`,height:`100%`})]),_:1},8,[`loading`,`class`])),[[s,{value:e.$t(`components.player.export_selection`)},void 0,{left:!0}]])],64)):T(``,!0),E(G)?v((d(),x(a,{key:3,rounded:``,severity:`danger`,loading:E(Et),class:m([`shadow-md pointer-events-auto`,E(Z)?`cui-button-small`:`w-[42px] h-[42px]`]),onClick:Xt},{icon:c(()=>[y(o,{width:`100%`,height:`100%`})]),_:1},8,[`loading`,`class`])),[[s,{value:e.$t(`components.player.delete_selection`)},void 0,{left:!0}]]):T(``,!0),E(j)||E(Z)?(d(),g(je,{key:4},[v((d(),x(a,{rounded:``,severity:`secondary`,disabled:(E(L)?.zoomLevel??0)>=8,class:m([`shadow-md pointer-events-auto`,E(Z)?`cui-button-small`:`w-[42px] h-[42px]`]),onClick:n[9]||=e=>E(L)?.zoomIn()},{icon:c(()=>[y(xe,{width:`100%`,height:`100%`})]),_:1},8,[`disabled`,`class`])),[[s,{value:e.$t(`components.form.tooltip.zoom_in`)},void 0,{left:!0}]]),v((d(),x(a,{rounded:``,severity:`secondary`,disabled:(E(L)?.zoomLevel??0)<=0,class:m([`shadow-md pointer-events-auto`,E(Z)?`cui-button-small`:`w-[42px] h-[42px]`]),onClick:n[10]||=e=>E(L)?.zoomOut()},{icon:c(()=>[y(Se,{width:`100%`,height:`100%`})]),_:1},8,[`disabled`,`class`])),[[s,{value:e.$t(`components.form.tooltip.zoom_out`)},void 0,{left:!0}]])],64)):T(``,!0)],2)]),_:1},8,[`camera-ids`,`loading`,`flat-card`,`type`,`show-segments`,`initial-timestamp`,`only-events`,`class`,`card-class`,`transparent`,`dark-mode`,`overlay-class`,`locale-settings`,`trim-mode`,`trim-variant`,`delete-available`,`ignore-bottom-safe-area`,`md-breakpoint`,`zone-filter-active`,`zone-has-regions`]))],8,[`to`]))],2)}}}),[[`__scopeId`,`data-v-2923c44a`]]);export{at as default};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{Bn as e,Mn as t,rn as n}from"./api-D1iULsSy.js";import{Cn as r,Fn as i,In as a,Jn as o,Pn as s,_r as c,dn as l,gn as u,sn as d,vn as f,yr as p}from"./vendor-Df81FCJz.js";import{t as m}from"./CuiConsole-Cf5lOCE1.js";import{t as h}from"./useLogsSocket-Bf0BI8ET.js";var g=f({__name:`CameraConsole`,props:{cameraName:{}},setup(f,{expose:g}){let _=new n,v=f,{mdBreakpoint:y}=e(),b=r(`dialogRefProps`),{cameraName:x}=c(v),S=h({target:x.value,onStdout:e=>E.value?.writeTerminal(e),onDisconnect:()=>E.value?.writeTerminal(`\r
|
|
2
2
|
Websocket failed to connect! Is the server running?\r
|
|
3
3
|
\r
|
|
4
4
|
`),onClearLog:()=>E.value?.clearTerminal(),onReconnected:()=>{E.value?.clearTerminal(),E.value?.writeTerminal(`\r
|